{"version":3,"file":"PopperAnchor.cjs","sources":["../../src/Popper/PopperAnchor.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { ReferenceElement } from '@floating-ui/vue'\nimport type { PrimitiveProps } from '@/Primitive'\nimport { useForwardExpose } from '@/shared'\n\nexport interface PopperAnchorProps extends PrimitiveProps {\n  /**\n   *  The reference (or anchor) element that is being referred to for positioning.\n   *\n   *  If not provided will use the current component as anchor.\n   */\n  reference?: ReferenceElement\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { watchPostEffect } from 'vue'\nimport { injectPopperRootContext } from './PopperRoot.vue'\nimport {\n  Primitive,\n} from '@/Primitive'\n\nconst props = defineProps<PopperAnchorProps>()\n\nconst { forwardRef, currentElement } = useForwardExpose()\n\nconst rootContext = injectPopperRootContext()\n\nwatchPostEffect(() => {\n  rootContext.onAnchorChange(props.reference ?? currentElement.value)\n})\n</script>\n\n<template>\n  <Primitive\n    :ref=\"forwardRef\"\n    :as=\"as\"\n    :as-child=\"asChild\"\n  >\n    <slot />\n  </Primitive>\n</template>\n"],"names":["useForwardExpose","injectPopperRootContext","watchPostEffect"],"mappings":";;;;;;;;;;;;;;;AAsBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAEd,IAAA,MAAM,EAAE,UAAA,EAAY,cAAe,EAAA,GAAIA,wCAAiB,EAAA;AAExD,IAAA,MAAM,cAAcC,yCAAwB,EAAA;AAE5C,IAAAC,mBAAA,CAAgB,MAAM;AACpB,MAAA,WAAA,CAAY,cAAe,CAAA,KAAA,CAAM,SAAa,IAAA,cAAA,CAAe,KAAK,CAAA;AAAA,KACnE,CAAA;;;;;;;;;;;;;;;;;;"}