2023-05-31 11:51:07 +08:00

2 lines
3.0 KiB
JavaScript

import{e as d,u as a,E as R}from"./index-8bcaafa6.js";import{b as U,c as T,u as $,e as D,_ as V,aP as O,w as H}from"./base-962c0c23.js";import{x as f}from"./index-f1b9f75f.js";import{d as g,c as n,r as I,u as p,b as u,m as L,p as c,e as z,n as F,x as v,C as b,g as m,v as K,y as j}from"./runtime-core.esm-bundler-dc7a07d7.js";const q=U({trigger:d.trigger,placement:f.placement,disabled:d.disabled,visible:a.visible,transition:a.transition,popperOptions:f.popperOptions,tabindex:f.tabindex,content:a.content,popperStyle:a.popperStyle,popperClass:a.popperClass,enterable:{...a.enterable,default:!0},effect:{...a.effect,default:"light"},teleported:a.teleported,title:String,width:{type:[String,Number],default:150},offset:{type:Number,default:void 0},showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0},showArrow:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},"onUpdate:visible":{type:Function}}),G={"update:visible":t=>T(t),"before-enter":()=>!0,"before-leave":()=>!0,"after-enter":()=>!0,"after-leave":()=>!0},J="onUpdate:visible",M=g({name:"ElPopover"}),Q=g({...M,props:q,emits:G,setup(t,{expose:r,emit:s}){const o=t,w=n(()=>o[J]),l=$("popover"),i=I(),y=n(()=>{var e;return(e=p(i))==null?void 0:e.popperRef}),P=n(()=>[{width:D(o.width)},o.popperStyle]),C=n(()=>[l.b(),o.popperClass,{[l.m("plain")]:!!o.content}]),E=n(()=>o.transition===`${l.namespace.value}-fade-in-linear`),k=()=>{var e;(e=i.value)==null||e.hide()},S=()=>{s("before-enter")},B=()=>{s("before-leave")},N=()=>{s("after-enter")},A=()=>{s("update:visible",!1),s("after-leave")};return r({popperRef:y,hide:k}),(e,_)=>(u(),L(p(R),j({ref_key:"tooltipRef",ref:i},e.$attrs,{trigger:e.trigger,placement:e.placement,disabled:e.disabled,visible:e.visible,transition:e.transition,"popper-options":e.popperOptions,tabindex:e.tabindex,content:e.content,offset:e.offset,"show-after":e.showAfter,"hide-after":e.hideAfter,"auto-close":e.autoClose,"show-arrow":e.showArrow,"aria-label":e.title,effect:e.effect,enterable:e.enterable,"popper-class":p(C),"popper-style":p(P),teleported:e.teleported,persistent:e.persistent,"gpu-acceleration":p(E),"onUpdate:visible":p(w),onBeforeShow:S,onBeforeHide:B,onShow:N,onHide:A}),{content:c(()=>[e.title?(u(),z("div",{key:0,class:F(p(l).e("title")),role:"title"},v(e.title),3)):b("v-if",!0),m(e.$slots,"default",{},()=>[K(v(e.content),1)])]),default:c(()=>[e.$slots.reference?m(e.$slots,"reference",{key:0}):b("v-if",!0)]),_:3},16,["trigger","placement","disabled","visible","transition","popper-options","tabindex","content","offset","show-after","hide-after","auto-close","show-arrow","aria-label","effect","enterable","popper-class","popper-style","teleported","persistent","gpu-acceleration","onUpdate:visible"]))}});var W=V(Q,[["__file","/home/runner/work/element-plus/element-plus/packages/components/popover/src/popover.vue"]]);const h=(t,r)=>{const s=r.arg||r.value,o=s==null?void 0:s.popperRef;o&&(o.triggerRef=t)};var X={mounted(t,r){h(t,r)},updated(t,r){h(t,r)}};const Y="popover",Z=O(X,Y),re=H(W,{directive:Z});export{re as E,Z as a};