element-plus
Version:
A Component Library for Vue 3
1 lines • 6.08 kB
Source Map (JSON)
{"version":3,"file":"popover.vue2.mjs","sources":["../../../../../../packages/components/popover/src/popover.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"tooltipRef\"\n v-bind=\"$attrs\"\n :trigger=\"trigger\"\n :trigger-keys=\"triggerKeys\"\n :placement=\"placement\"\n :disabled=\"disabled\"\n :visible=\"visible\"\n :transition=\"transition\"\n :popper-options=\"popperOptions\"\n :tabindex=\"tabindex\"\n :content=\"content\"\n :offset=\"offset\"\n :show-after=\"showAfter\"\n :hide-after=\"hideAfter\"\n :auto-close=\"autoClose\"\n :show-arrow=\"showArrow\"\n :aria-label=\"title\"\n :effect=\"effect\"\n :enterable=\"enterable\"\n :popper-class=\"kls\"\n :popper-style=\"style\"\n :teleported=\"teleported\"\n :append-to=\"appendTo\"\n :persistent=\"persistent\"\n :gpu-acceleration=\"gpuAcceleration\"\n @update:visible=\"onUpdateVisible\"\n @before-show=\"beforeEnter\"\n @before-hide=\"beforeLeave\"\n @show=\"afterEnter\"\n @hide=\"afterLeave\"\n >\n <template v-if=\"$slots.reference\">\n <slot name=\"reference\" />\n </template>\n\n <template #content>\n <div v-if=\"title\" :class=\"ns.e('title')\" role=\"title\">\n {{ title }}\n </div>\n <slot>\n {{ content }}\n </slot>\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref, unref } from 'vue'\nimport { ElTooltip } from '@element-plus/components/tooltip'\nimport { addUnit } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { popoverEmits, popoverPropsDefaults } from './popover'\n\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type { PopoverProps } from './popover'\n\ndefineOptions({\n name: 'ElPopover',\n})\n\nconst props = withDefaults(defineProps<PopoverProps>(), popoverPropsDefaults)\nconst emit = defineEmits(popoverEmits)\n\nconst updateEventKeyRaw = `onUpdate:visible` as const\n\nconst onUpdateVisible = computed(() => {\n return props[updateEventKeyRaw]\n})\n\nconst ns = useNamespace('popover')\nconst tooltipRef = ref<TooltipInstance>()\nconst popperRef = computed(() => {\n return unref(tooltipRef)?.popperRef\n})\n\nconst style = computed(() => {\n return [\n {\n width: addUnit(props.width),\n },\n props.popperStyle!,\n ]\n})\n\nconst kls = computed(() => {\n return [ns.b(), props.popperClass!, { [ns.m('plain')]: !!props.content }]\n})\n\nconst gpuAcceleration = computed(() => {\n return props.transition === `${ns.namespace.value}-fade-in-linear`\n})\n\nconst hide = () => {\n tooltipRef.value?.hide()\n}\n\nconst beforeEnter = () => {\n emit('before-enter')\n}\nconst beforeLeave = () => {\n emit('before-leave')\n}\n\nconst afterEnter = () => {\n emit('after-enter')\n}\n\nconst afterLeave = () => {\n emit('update:visible', false)\n emit('after-leave')\n}\n\ndefineExpose({\n /** @description popper ref */\n popperRef,\n /** @description hide popover */\n hide,\n})\n</script>\n"],"names":["_openBlock","_createBlock","_unref","_mergeProps","$attrs","_createElementBlock","_normalizeClass","_renderSlot","$slots"],"mappings":"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"}