vuux
Version:
Vue3 Nuxt3 Nuxt4 组件库
2 lines (1 loc) • 1.13 kB
JavaScript
;const e=require("vue"),m=require("./hook/useTooltip.cjs"),f={key:0,class:"tooltip-content"},y=e.defineComponent({name:"Tooltip",__name:"index",props:{content:{},placement:{default:"top"},delay:{default:200},always:{type:Boolean},className:{},trigger:{default:"hover"},disabled:{type:Boolean},shadow:{type:Boolean},theme:{default:"light"}},emits:["change"],setup(t,{expose:s,emit:a}){const i=t,r=a,o=e.useTemplateRef("tooltipEl"),{state:c,tooltipStyle:p,tooltipBoxClass:d,handleClose:u}=m.useTooltip(i,o,r);return s({close:u}),(l,n)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"tooltipEl",ref:o,class:"app-tooltip"},[e.renderSlot(l.$slots,"default"),e.createVNode(e.Transition,{name:"ease"},{default:e.withCtx(()=>[e.unref(c).visible?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(d)),style:e.normalizeStyle(e.unref(p)),onClick:n[0]||(n[0]=e.withModifiers(()=>{},["stop"]))},[t.content?(e.openBlock(),e.createElementBlock("span",f,e.toDisplayString(t.content),1)):e.renderSlot(l.$slots,"content",{key:1})],6)):e.createCommentVNode("",!0)]),_:3})],512))}});module.exports=y;