{"version":3,"file":"VTooltip.mjs","names":["VOverlay","makeVOverlayProps","forwardRefs","useProxiedModel","useScopeId","computed","mergeProps","ref","genericComponent","getUid","omit","propsFactory","useRender","makeVTooltipProps","id","String","text","closeOnBack","location","locationStrategy","eager","minWidth","offset","openOnClick","openOnHover","origin","scrim","scrollStrategy","transition","VTooltip","name","props","emits","value","setup","_ref","slots","isActive","scopeId","uid","overlay","split","length","activatorProps","overlayProps","filterProps","_createVNode","_mergeProps","class","style","$event","activator","default","_len","arguments","args","Array","_key"],"sources":["../../../src/components/VTooltip/VTooltip.tsx"],"sourcesContent":["// Styles\nimport './VTooltip.sass'\n\n// Components\nimport { VOverlay } from '@/components/VOverlay'\nimport { makeVOverlayProps } from '@/components/VOverlay/VOverlay'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\n\n// Utilities\nimport { computed, mergeProps, ref } from 'vue'\nimport { genericComponent, getUid, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { StrategyProps } from '@/components/VOverlay/locationStrategies'\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\n\nexport const makeVTooltipProps = propsFactory({\n id: String,\n text: String,\n\n ...omit(makeVOverlayProps({\n closeOnBack: false,\n location: 'end' as const,\n locationStrategy: 'connected' as const,\n eager: true,\n minWidth: 0,\n offset: 10,\n openOnClick: false,\n openOnHover: true,\n origin: 'auto' as const,\n scrim: false,\n scrollStrategy: 'reposition' as const,\n transition: false,\n }), [\n 'absolute',\n 'persistent',\n ]),\n}, 'VTooltip')\n\nexport const VTooltip = genericComponent()({\n name: 'VTooltip',\n\n props: makeVTooltipProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { scopeId } = useScopeId()\n\n const uid = getUid()\n const id = computed(() => props.id || `v-tooltip-${uid}`)\n\n const overlay = ref()\n\n const location = computed(() => {\n return props.location.split(' ').length > 1\n ? props.location\n : props.location + ' center' as StrategyProps['location']\n })\n\n const origin = computed(() => {\n return (\n props.origin === 'auto' ||\n props.origin === 'overlap' ||\n props.origin.split(' ').length > 1 ||\n props.location.split(' ').length > 1\n ) ? props.origin\n : props.origin + ' center' as StrategyProps['origin']\n })\n\n const transition = computed(() => {\n if (props.transition) return props.transition\n return isActive.value ? 'scale-transition' : 'fade-transition'\n })\n\n const activatorProps = computed(() =>\n mergeProps({\n 'aria-describedby': id.value,\n }, props.activatorProps)\n )\n\n useRender(() => {\n const overlayProps = VOverlay.filterProps(props)\n\n return (\n \n {{\n activator: slots.activator,\n default: (...args) => slots.default?.(...args) ?? props.text,\n }}\n \n )\n })\n\n return forwardRefs({}, overlay)\n },\n})\n\nexport type VTooltip = InstanceType\n"],"mappings":"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","ignoreList":[]}