{"version":3,"file":"popper.mjs","sources":["../../../../packages/tokens/popper.ts"],"sourcesContent":["import type { ComputedRef, InjectionKey, Ref } from 'vue'\nimport type { Instance } from '@bigin/popperjs-es'\n\nexport type Measurable = {\n  getBoundingClientRect: () => DOMRect\n}\n\n/**\n * triggerRef indicates the element that triggers popper\n * contentRef indicates the element of popper content\n * referenceRef indicates the element that popper content relative with\n */\nexport type BPopperInjectionContext = {\n  triggerRef: Ref<Measurable | undefined>\n  contentRef: Ref<HTMLElement | undefined>\n  popperInstanceRef: Ref<Instance | undefined>\n  referenceRef: Ref<Measurable | undefined>\n  role: ComputedRef<string>\n}\n\nexport type BPopperContentInjectionContext = {\n  arrowRef: Ref<HTMLElement | undefined>\n  arrowOffset: Ref<number | undefined>\n}\n\nexport const POPPER_INJECTION_KEY: InjectionKey<BPopperInjectionContext> =\n  Symbol('popper')\n\nexport const POPPER_CONTENT_INJECTION_KEY: InjectionKey<BPopperContentInjectionContext> =\n  Symbol('popperContent')\n"],"names":[],"mappings":"AAyBa,MAAA,oBAAA,GACX,OAAO,QAAQ,EAAA;AAEJ,MAAA,4BAAA,GACX,OAAO,eAAe;;;;"}