{"version":3,"file":"use-content-dom.mjs","sources":["../../../../../../../../packages/components/popper/src/composables/use-content-dom.ts"],"sourcesContent":["import { computed, ref, unref } from 'vue'\nimport { useNamespace, useZIndex } from '@hd-front-end/hooks'\nimport { isNumber } from '@hd-front-end/utils'\n\nimport type { CSSProperties, StyleValue } from 'vue'\nimport type { UsePopperReturn } from '@hd-front-end/hooks'\nimport type { UsePopperContentReturn } from './use-content'\nimport type { PopperContentProps } from '../content'\n\nexport const usePopperContentDOM = (\n  props: PopperContentProps,\n  {\n    attributes,\n    styles,\n    role,\n  }: Pick<UsePopperReturn, 'attributes' | 'styles'> &\n    Pick<UsePopperContentReturn, 'role'>\n) => {\n  const { nextZIndex } = useZIndex()\n  const ns = useNamespace('popper')\n\n  const contentAttrs = computed(() => unref(attributes).popper)\n  const contentZIndex = ref<number>(\n    isNumber(props.zIndex) ? props.zIndex : nextZIndex()\n  )\n  const contentClass = computed(() => [\n    ns.b(),\n    ns.is('pure', props.pure),\n    ns.is(props.effect),\n    props.popperClass,\n  ])\n  const contentStyle = computed<StyleValue[]>(() => {\n    return [\n      { zIndex: unref(contentZIndex) } as CSSProperties,\n      unref(styles).popper as CSSProperties,\n      props.popperStyle || {},\n    ]\n  })\n  const ariaModal = computed<string | undefined>(() =>\n    role.value === 'dialog' ? 'false' : undefined\n  )\n  const arrowStyle = computed(\n    () => (unref(styles).arrow || {}) as CSSProperties\n  )\n\n  const updateZIndex = () => {\n    contentZIndex.value = isNumber(props.zIndex) ? props.zIndex : nextZIndex()\n  }\n\n  return {\n    ariaModal,\n    arrowStyle,\n    contentAttrs,\n    contentClass,\n    contentStyle,\n    contentZIndex,\n\n    updateZIndex,\n  }\n}\n\nexport type UsePopperContentDOMReturn = ReturnType<typeof usePopperContentDOM>\n"],"names":[],"mappings":";;;;;AASa,MAAA,mBAAA,GAAsB,CACjC,KACA,EAAA;AAAA,EACE,UAAA;AAAA,EACA,MAAA;AAAA,EACA,IAAA;AACF,CAEG,KAAA;AACH,EAAM,MAAA,EAAE,UAAW,EAAA,GAAI,SAAU,EAAA,CAAA;AACjC,EAAM,MAAA,EAAA,GAAK,aAAa,QAAQ,CAAA,CAAA;AAEhC,EAAA,MAAM,eAAe,QAAS,CAAA,MAAM,KAAM,CAAA,UAAU,EAAE,MAAM,CAAA,CAAA;AAC5D,EAAA,MAAM,aAAgB,GAAA,GAAA;AAAA,IACpB,SAAS,KAAM,CAAA,MAAM,CAAI,GAAA,KAAA,CAAM,SAAS,UAAW,EAAA;AAAA,GACrD,CAAA;AACA,EAAM,MAAA,YAAA,GAAe,SAAS,MAAM;AAAA,IAClC,GAAG,CAAE,EAAA;AAAA,IACL,EAAG,CAAA,EAAA,CAAG,MAAQ,EAAA,KAAA,CAAM,IAAI,CAAA;AAAA,IACxB,EAAA,CAAG,EAAG,CAAA,KAAA,CAAM,MAAM,CAAA;AAAA,IAClB,KAAM,CAAA,WAAA;AAAA,GACP,CAAA,CAAA;AACD,EAAM,MAAA,YAAA,GAAe,SAAuB,MAAM;AAChD,IAAO,OAAA;AAAA,MACL,EAAE,MAAA,EAAQ,KAAM,CAAA,aAAa,CAAE,EAAA;AAAA,MAC/B,KAAA,CAAM,MAAM,CAAE,CAAA,MAAA;AAAA,MACd,KAAA,CAAM,eAAe,EAAC;AAAA,KACxB,CAAA;AAAA,GACD,CAAA,CAAA;AACD,EAAA,MAAM,SAAY,GAAA,QAAA;AAAA,IAA6B,MAC7C,IAAA,CAAK,KAAU,KAAA,QAAA,GAAW,OAAU,GAAA,KAAA,CAAA;AAAA,GACtC,CAAA;AACA,EAAA,MAAM,UAAa,GAAA,QAAA;AAAA,IACjB,MAAO,KAAA,CAAM,MAAM,CAAA,CAAE,SAAS,EAAC;AAAA,GACjC,CAAA;AAEA,EAAA,MAAM,eAAe,MAAM;AACzB,IAAA,aAAA,CAAc,QAAQ,QAAS,CAAA,KAAA,CAAM,MAAM,CAAI,GAAA,KAAA,CAAM,SAAS,UAAW,EAAA,CAAA;AAAA,GAC3E,CAAA;AAEA,EAAO,OAAA;AAAA,IACL,SAAA;AAAA,IACA,UAAA;AAAA,IACA,YAAA;AAAA,IACA,YAAA;AAAA,IACA,YAAA;AAAA,IACA,aAAA;AAAA,IAEA,YAAA;AAAA,GACF,CAAA;AACF;;;;"}