{"version":3,"file":"Popover.mjs","sources":["../../../../../../packages/components/popover/src/Popover.tsx"],"sourcesContent":["import { classNames, devWarning, filterEmpty, initDefaultProps, omit } from '@antdv/utils';\nimport { getTransitionName } from '@antdv/vue-components';\nimport { computed, defineComponent, ref } from 'vue';\nimport useConfigInject from '../../config-provider/src/hooks/useConfigInject';\nimport Tooltip, { tooltipDefaultProps } from '../../tooltip';\nimport useStyle from '../style';\nimport { popoverProps } from './props';\n\nexport default defineComponent({\n  compatConfig: { MODE: 3 },\n  name: 'APopover',\n  inheritAttrs: false,\n  props: initDefaultProps(popoverProps(), {\n    ...tooltipDefaultProps(),\n    trigger: 'hover',\n    placement: 'top',\n    mouseEnterDelay: 0.1,\n    mouseLeaveDelay: 0.1,\n  }),\n  setup(props, { expose, slots, attrs }) {\n    const tooltipRef = ref();\n    devWarning(\n      props.visible === undefined,\n      'popover',\n      '`visible` will be removed in next major version, please use `open` instead.',\n    );\n    expose({\n      getPopupDomNode: () => {\n        return tooltipRef.value?.getPopupDomNode?.();\n      },\n    });\n    const { prefixCls, configProvider } = useConfigInject('popover', props);\n    const [wrapSSR, hashId] = useStyle(prefixCls);\n    const rootPrefixCls = computed(() => configProvider.getPrefixCls());\n    const getOverlay = () => {\n      const { title = filterEmpty(slots.title?.()), content = filterEmpty(slots.content?.()) }\n        = props;\n      const hasTitle = !!(Array.isArray(title) ? title.length : title);\n      const hasContent = !!(Array.isArray(content) ? content.length : title);\n      if (!hasTitle && !hasContent) return null;\n      return (\n        <>\n          {hasTitle && <div class={`${prefixCls.value}-title`}>{title}</div>}\n          <div class={`${prefixCls.value}-inner-content`}>{content}</div>\n        </>\n      );\n    };\n    return () => {\n      const overlayCls = classNames(props.overlayClassName, hashId.value);\n      return wrapSSR(\n        <Tooltip\n          {...omit(props, ['title', 'content'])}\n          {...attrs}\n          prefixCls={prefixCls.value}\n          ref={tooltipRef}\n          overlayClassName={overlayCls}\n          v-slots={{ title: getOverlay, default: slots.default }}\n          transitionName={getTransitionName(rootPrefixCls.value, 'zoom-big', props.transitionName)}\n          data-popover-inject\n        />,\n      );\n    };\n  },\n});\n"],"names":["compatConfig","MODE","name","inheritAttrs","props","initDefaultProps","popoverProps","tooltipDefaultProps","trigger","placement","mouseEnterDelay","mouseLeaveDelay","setup","expose","slots","attrs","tooltipRef","ref","devWarning","visible","undefined","getPopupDomNode","value","prefixCls","configProvider","useConfigInject","wrapSSR","hashId","useStyle","rootPrefixCls","computed","getPrefixCls","getOverlay","title","filterEmpty","content","hasTitle","Array","isArray","length","hasContent","_createVNode","_Fragment","overlayCls","classNames","overlayClassName","Tooltip","omit","getTransitionName","transitionName","default"],"mappings":"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"}