{"version":3,"file":"accordionItem-_9xx7V-u.js","sources":["../../src/composables/accordionItem.ts"],"sourcesContent":["import { computed, inject, onMounted, ref, useTemplateRef } from 'vue';\n\nimport { scrollToElement } from '@/utils/smoothScroll';\n\nexport const useAccordionItem = (props: any, emits: any) => {\n  const generateAccordionId: any = inject('generateAccordionId');\n  const isAccordionOpen: any = inject('isAccordionOpen');\n  const toggleAccordionPanelById: any = inject('toggleAccordionPanelById');\n\n  const accordionId = ref(null);\n  const fallbackOpen = ref(false);\n\n  const accordionItemHeader = useTemplateRef<HTMLDivElement | undefined>('accordionItemHeader');\n\n  onMounted(() => {\n    if (!generateAccordionId) {\n      return;\n    }\n    accordionId.value = generateAccordionId();\n  });\n\n  const isOpen = computed(() => {\n    if (!props.ignoreOthers && isAccordionOpen) {\n      return isAccordionOpen(accordionId.value);\n    }\n    return fallbackOpen.value;\n  });\n\n  const toggleAccordion = (behavior: ScrollBehavior = 'smooth') => {\n    if (!props.ignoreOthers && toggleAccordionPanelById) {\n      toggleAccordionPanelById(accordionId.value);\n    } else {\n      fallbackOpen.value = !fallbackOpen.value;\n    }\n\n    if (props.scrollTo && isOpen.value && accordionItemHeader.value) {\n      if (!props.ignoreOthers) {\n        setTimeout(() => {\n          // @ts-ignore\n          scrollToElement(accordionItemHeader.value, behavior);\n        }, 700);\n      } else {\n        // @ts-ignore\n        scrollToElement(accordionItemHeader.value, behavior);\n      }\n    }\n\n    emits('accordion-item-toggle', isOpen.value);\n  };\n\n  return {\n    isOpen,\n    toggleAccordion,\n  };\n};\n"],"names":["useAccordionItem","props","emits","generateAccordionId","inject","isAccordionOpen","toggleAccordionPanelById","accordionId","ref","fallbackOpen","accordionItemHeader","useTemplateRef","onMounted","isOpen","computed","behavior","scrollToElement"],"mappings":"0EAIa,MAAAA,EAAmB,CAACC,EAAYC,IAAe,CACpD,MAAAC,EAA2BC,EAAO,qBAAqB,EACvDC,EAAuBD,EAAO,iBAAiB,EAC/CE,EAAgCF,EAAO,0BAA0B,EAEjEG,EAAcC,EAAI,IAAI,EACtBC,EAAeD,EAAI,EAAK,EAExBE,EAAsBC,EAA2C,qBAAqB,EAE5FC,EAAU,IAAM,CACTT,IAGLI,EAAY,MAAQJ,IAAoB,CACzC,EAEK,MAAAU,EAASC,EAAS,IAClB,CAACb,EAAM,cAAgBI,EAClBA,EAAgBE,EAAY,KAAK,EAEnCE,EAAa,KACrB,EAwBM,MAAA,CACL,OAAAI,EACA,gBAxBsB,CAACE,EAA2B,WAAa,CAC3D,CAACd,EAAM,cAAgBK,EACzBA,EAAyBC,EAAY,KAAK,EAE7BE,EAAA,MAAQ,CAACA,EAAa,MAGjCR,EAAM,UAAYY,EAAO,OAASH,EAAoB,QACnDT,EAAM,aAOOe,EAAAN,EAAoB,MAAOK,CAAQ,EANnD,WAAW,IAAM,CAECC,EAAAN,EAAoB,MAAOK,CAAQ,GAClD,GAAG,GAOJb,EAAA,wBAAyBW,EAAO,KAAK,CAAA,CAK3C,CAEJ"}