function-call-17d6ed33.js 2.8 KB

1
  1. import{m as I,u as B}from"./mount-component-6050520d.js";import{c as T,p as z,d as k,n as v,V as M,b as w,I as N,r as L,e as b,k as j,i as U}from"./index-9c6666b7.js";import{P as V}from"./index-5cb3ebbf.js";import{L as q}from"./index-81336658.js";import{d as D,w as p,o as H,J,c as s,m as O,r as _,g as A}from"./index-ba19c87a.js";let d=0;function E(e){e?(d||document.body.classList.add("van-toast--unclickable"),d++):d&&(d--,d||document.body.classList.remove("van-toast--unclickable"))}const[F,i]=T("toast"),G=["show","overlay","teleport","transition","overlayClass","overlayStyle","closeOnClickOverlay","zIndex"],K={icon:String,show:Boolean,type:k("text"),overlay:Boolean,message:v,iconSize:v,duration:M(2e3),position:k("middle"),teleport:[String,Object],wordBreak:String,className:w,iconPrefix:String,transition:k("van-fade"),loadingType:String,forbidClick:Boolean,overlayClass:w,overlayStyle:Object,closeOnClick:Boolean,closeOnClickOverlay:Boolean,zIndex:v};var Q=D({name:F,props:K,emits:["update:show"],setup(e,{emit:l,slots:o}){let u,a=!1;const c=()=>{const n=e.show&&e.forbidClick;a!==n&&(a=n,E(a))},r=n=>l("update:show",n),y=()=>{e.closeOnClick&&r(!1)},f=()=>clearTimeout(u),m=()=>{const{icon:n,type:t,iconSize:C,iconPrefix:P,loadingType:x}=e;if(n||t==="success"||t==="fail")return s(N,{name:n||t,size:C,class:i("icon"),classPrefix:P},null);if(t==="loading")return s(q,{class:i("loading"),size:C,type:x},null)},S=()=>{const{type:n,message:t}=e;if(o.message)return s("div",{class:i("text")},[o.message()]);if(L(t)&&t!=="")return n==="html"?s("div",{key:0,class:i("text"),innerHTML:String(t)},null):s("div",{class:i("text")},[t])};return p(()=>[e.show,e.forbidClick],c),p(()=>[e.show,e.type,e.message,e.duration],()=>{f(),e.show&&e.duration>0&&(u=setTimeout(()=>{r(!1)},e.duration))}),H(c),J(c),()=>s(V,O({class:[i([e.position,e.wordBreak==="normal"?"break-normal":e.wordBreak,{[e.type]:!e.icon}]),e.className],lockScroll:!1,onClick:y,onClosed:f,"onUpdate:show":r},z(e,G)),{default:()=>[m(),S()]})}});const R={icon:"",type:"text",message:"",className:"",overlay:!1,onClose:void 0,onOpened:void 0,duration:2e3,teleport:"body",iconSize:void 0,iconPrefix:void 0,position:"middle",transition:"van-fade",forbidClick:!1,loadingType:void 0,overlayClass:"",overlayStyle:void 0,closeOnClick:!1,closeOnClickOverlay:!1};let g=[],W=!1,h=b({},R);const X=new Map;function Y(e){return U(e)?e:{message:e}}function Z(){const{instance:e,unmount:l}=I({setup(){const o=_(""),{open:u,state:a,close:c,toggle:r}=B(),y=()=>{},f=()=>s(Q,O(a,{onClosed:y,"onUpdate:show":r}),null);return p(o,m=>{a.message=m}),A().render=f,{open:u,close:c,message:o}}});return e}function $(){if(!g.length||W){const e=Z();g.push(e)}return g[g.length-1]}function ie(e={}){if(!j)return{};const l=$(),o=Y(e);return l.open(b({},h,X.get(o.type||h.type),o)),l}export{ie as s};