{"version":3,"file":"use-collapse-item.mjs","sources":["../../../../../../packages/components/collapse/src/use-collapse-item.ts"],"sourcesContent":["import { computed, inject, ref, unref } from 'vue'\nimport { useIdInjection, useNamespace } from '@hongluan-ui/hooks'\nimport { collapseContextKey } from '@hongluan-ui/tokens'\n\nimport type { CollapseItemProps } from './collapse-item'\n\nexport const useCollapseItem = (props: CollapseItemProps) => {\n  const collapse = inject(collapseContextKey)\n\n  const { namespace } = useNamespace('collapse')\n  const focusing = ref(false)\n  const isClick = ref(false)\n  const idInjection = useIdInjection()\n  const id = computed(() => idInjection.current++)\n  const name = computed(() => {\n    return (\n      props.name ?? `${namespace.value}-id-${idInjection.prefix}-${unref(id)}`\n    )\n  })\n\n  const isActive = computed(() =>\n    collapse?.activeNames.value.includes(unref(name)),\n  )\n\n  const handleFocus = () => {\n    setTimeout(() => {\n      if (!isClick.value) {\n        focusing.value = true\n      } else {\n        isClick.value = false\n      }\n    }, 50)\n  }\n\n  const handleHeaderClick = () => {\n    if (props.disabled) return\n    collapse?.handleItemClick(unref(name))\n    focusing.value = false\n    isClick.value = true\n  }\n\n  const handleEnterClick = () => {\n    collapse?.handleItemClick(unref(name))\n  }\n\n  return {\n    focusing,\n    id,\n    isActive,\n    handleFocus,\n    handleHeaderClick,\n    handleEnterClick,\n  }\n}\n"],"names":[],"mappings":";;;;;;;AAGY,MAAC,eAAe,GAAG,CAAC,KAAK,KAAK;AAC1C,EAAE,MAAM,QAAQ,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAC9C,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AACjD,EAAE,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAC9B,EAAE,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAC7B,EAAE,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;AACvC,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;AACnD,EAAE,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM;AAC9B,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,OAAO,CAAC,EAAE,GAAG,KAAK,CAAC,IAAI,KAAK,IAAI,GAAG,EAAE,GAAG,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACvG,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,QAAQ,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAChH,EAAE,MAAM,WAAW,GAAG,MAAM;AAC5B,IAAI,UAAU,CAAC,MAAM;AACrB,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;AAC1B,QAAQ,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC;AAC9B,OAAO,MAAM;AACb,QAAQ,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;AAC9B,OAAO;AACP,KAAK,EAAE,EAAE,CAAC,CAAC;AACX,GAAG,CAAC;AACJ,EAAE,MAAM,iBAAiB,GAAG,MAAM;AAClC,IAAI,IAAI,KAAK,CAAC,QAAQ;AACtB,MAAM,OAAO;AACb,IAAI,QAAQ,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACtE,IAAI,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;AAC3B,IAAI,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;AACzB,GAAG,CAAC;AACJ,EAAE,MAAM,gBAAgB,GAAG,MAAM;AACjC,IAAI,QAAQ,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACtE,GAAG,CAAC;AACJ,EAAE,OAAO;AACT,IAAI,QAAQ;AACZ,IAAI,EAAE;AACN,IAAI,QAAQ;AACZ,IAAI,WAAW;AACf,IAAI,iBAAiB;AACrB,IAAI,gBAAgB;AACpB,GAAG,CAAC;AACJ;;;;"}