{"version":3,"file":"index.vue.mjs","sources":["../../../../../packages/components/popover/src/index.vue"],"sourcesContent":["<template>\n  <el-tooltip\n    ref=\"tooltipRef\"\n    v-bind=\"$attrs\"\n    :trigger=\"trigger\"\n    :placement=\"placement\"\n    :disabled=\"disabled\"\n    :visible=\"visible\"\n    :transition=\"transition\"\n    :popper-options=\"popperOptions\"\n    :tabindex=\"tabindex\"\n    :append-to-body=\"appendToBody\"\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=\"compatTeleported\"\n    :persistent=\"persistent\"\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<script lang=\"ts\">\nimport { defineComponent, computed, ref, unref } from 'vue'\nimport ElTooltip from '@element-ultra/components/tooltip'\nimport { useDeprecateAppendToBody } from '@element-ultra/components/popper'\nimport { isString } from '@element-ultra/utils'\nimport { useNamespace } from '@element-ultra/hooks'\nimport { usePopoverProps } from './popover'\n\nimport type { StyleValue } from 'vue'\n\nconst emits = [\n  'update:visible',\n  'before-enter',\n  'before-leave',\n  'after-enter',\n  'after-leave',\n]\n\nconst COMPONENT_NAME = 'ElPopover'\n\nexport default defineComponent({\n  name: COMPONENT_NAME,\n  components: {\n    ElTooltip,\n  },\n  props: usePopoverProps,\n  emits,\n  setup(props, { emit }) {\n    const ns = useNamespace('popover')\n    const tooltipRef = ref<InstanceType<typeof ElTooltip> | null>(null)\n    const popperRef = computed(() => {\n      return unref(tooltipRef)?.popperRef\n    })\n    const width = computed(() => {\n      if (isString(props.width)) {\n        return props.width as string\n      }\n      return `${props.width}px`\n    })\n\n    const style = computed(() => {\n      return [\n        {\n          width: width.value,\n        },\n        props.popperStyle,\n      ] as StyleValue\n    })\n\n    const kls = computed(() => {\n      return [ns.b(), props.popperClass, { [ns.m('plain')]: !!props.content }]\n    })\n\n    const { compatTeleported } = useDeprecateAppendToBody(\n      COMPONENT_NAME,\n      'appendToBody'\n    )\n\n    const hide = () => {\n      tooltipRef.value?.hide()\n    }\n\n    const beforeEnter = () => {\n      emit('before-enter')\n    }\n    const beforeLeave = () => {\n      emit('before-leave')\n    }\n\n    const afterEnter = () => {\n      emit('after-enter')\n    }\n\n    const afterLeave = () => {\n      emit('after-leave')\n    }\n\n    return {\n      compatTeleported,\n      ns,\n      kls,\n      style,\n      tooltipRef,\n      popperRef,\n      hide,\n      beforeEnter,\n      beforeLeave,\n      afterEnter,\n      afterLeave,\n    }\n  },\n})\n</script>\n"],"names":["_resolveComponent","_openBlock","_createBlock","_mergeProps","_withCtx","_createElementBlock","_normalizeClass","_toDisplayString","_createCommentVNode","_renderSlot"],"mappings":";;;;;AACE,EAAA,MAAA,qBAAA,GAAAA,iBAyCa,YAzCb,CAAA,CAAA;AAIG,EAAA,OAAAC,SAAA,EAAoB,EAAAC,WAAA,CAAA,qBAAA,EAAAC,UAAA,CAAA,EAAA,GAAA,EAAA,YAAA,EAAA,EAAA,IAAA,CAAA,MAAA,EAAA;AAAA,IACpB,SAAQ,IAAE,CAAA,OAAA;AAAA,IACV,WAAS,IAAA,CAAA,SAAA;AAAA,IACT,UAAU,IAAE,CAAA,QAAA;AAAA,IACZ,SAAA,IAAA,CAAA,OAAA;AAAA,IACA,YAAU,IAAA,CAAA,UAAA;AAAA,IACV,kBAAgB,IAAA,CAAA,aAAA;AAAA,IAChB,UAAS,IAAA,CAAA,QAAA;AAAA,IACT,kBAAQ,IAAM,CAAA,YAAA;AAAA,IACd,SAAY,IAAA,CAAA,OAAA;AAAA,IACZ,QAAU,IAAA,CAAA,MAAA;AAAA,IACV,cAAY,IAAA,CAAA,SAAA;AAAA,IACZ,cAAY,IAAA,CAAA,SAAA;AAAA,IACZ,cAAY,IAAA,CAAA,SAAA;AAAA,IACZ,cAAQ,IAAM,CAAA,SAAA;AAAA,IACd,cAAW,IAAA,CAAA,KAAA;AAAA,IACX,QAAA,IAAA,CAAA,MAAA;AAAA,IACA,WAAc,IAAA,CAAA,SAAA;AAAA,IACd,gBAAY,IAAA,CAAA,GAAA;AAAA,IACZ,gBAAY,IAAA,CAAA,KAAA;AAAA,IACZ,YAAW,IAAE,CAAA,gBAAA;AAAA,IACb,YAAW,IAAE,CAAA,UAAA;AAAA,IACb,cAAM,IAAA,CAAA,WAAA;AAAA,IACN,cAAM,IAAA,CAAA,WAAA;AAAA,IAAA,QAAA,IAAA,CAAA,UAAA;AAAA,IAMI,QAAO,IAAA,CAAA,UAAA;AAAA,GAAA,CAAA,EAAA;AAAA,IAChB,OAAA,EAAAC,QAAA,MAAA;AAAA,MAAwB,IAAA,CAAA,KAAA,IAAAH,SAAA,EAAA,EAAAI,kBAAA;AAAA,QAAM,KAAA;AAAA,QAAA;AAAA,UAAW,GAAI,EAAA,CAAA;AAAA,UAAA,OAAAC,cACxC,CAAA,IAAA,CAAK,EAAA,CAAA,CAAA,CAAA,OAAA,CAAA,CAAA;AAAA,UAAA,IAAA,EAAA,OAAA;AAAA,SAEV;AAAA,QAEOC,eAAA,CAAA,KAAA,KAAA,CAAA;AAAA,QAAA,CAAA;AAAA;AAAA,OADF,IAAAC,kBAAA,CAAA,MAAA,EAAA,IAAA,CAAA;AAAA,MAAAC,WAAA,IAAA,CAAA,MAAA,EAAA,SAAA,EAAA,IAAA,MAAA;AAAA;;;;;;;aARLL,QAAyB,MAAA;AAAA,MAAA,IAAA,CAAA,MAAA,CAAA,SAAA,GAAAK,UAAA,CAAA,KAAA,MAAA,EAAA,WAAA,EAAA,EAAA,GAAA,EAAA,CAAA,EAAA,CAAA,GAAAD,kBAAA,CAAA,QAAA,IAAA,CAAA;AAAA;;;;;;;;;"}