1 |
- "use strict";const e=require("../../../../common/vendor.js"),a=e.defineComponent({name:"wd-transition",options:{addGlobalClass:!0,virtualHost:!0,styleIsolation:"shared"},props:e.transitionProps,emits:["click","before-enter","enter","before-leave","leave","after-leave","after-enter"],setup(a,{emit:t}){const l=e=>{let a=`${u.enterClass} ${u.enterActiveClass}`,t=`${u.enterToClass} ${u.enterActiveClass}`,l=`${u.leaveClass} ${u.leaveActiveClass}`,r=`${u.leaveToClass} ${u.leaveActiveClass}`;if(Array.isArray(e))for(let u=0;u<e.length;u++)a=`wd-${e[u]}-enter wd-${e[u]}-enter-active ${a}`,t=`wd-${e[u]}-enter-to wd-${e[u]}-enter-active ${t}`,l=`wd-${e[u]}-leave wd-${e[u]}-leave-active ${l}`,r=`wd-${e[u]}-leave-to wd-${e[u]}-leave-active ${r}`;else e&&(a=`wd-${e}-enter wd-${e}-enter-active ${a}`,t=`wd-${e}-enter-to wd-${e}-enter-active ${t}`,l=`wd-${e}-leave wd-${e}-leave-active ${l}`,r=`wd-${e}-leave-to wd-${e}-leave-active ${r}`);return{enter:a,"enter-to":t,leave:l,"leave-to":r}},u=a,r=t,n=e.ref(!1),v=e.ref(!1),o=e.ref(""),s=e.ref(!1),i=e.ref(300),c=e.ref(""),d=e.ref(null),$=e.ref(null),w=e.ref(null),f=e.computed((()=>`-webkit-transition-duration:${i.value}ms;transition-duration:${i.value}ms;${v.value||!u.destroy?"":"display: none;"}${u.customStyle}`)),m=e.computed((()=>`wd-transition ${u.customClass} ${c.value}`));function p(){r("click")}function b(){d.value=new e.AbortablePromise((async a=>{try{const t=l(u.name),d=e.isObj(u.duration)?u.duration.enter:u.duration;o.value="enter",r("before-enter"),$.value=e.pause(),await $.value,r("enter"),c.value=t.enter,i.value=d,$.value=e.pause(),await $.value,n.value=!0,v.value=!0,$.value=e.pause(),await $.value,$.value=null,s.value=!1,c.value=t["enter-to"],a()}catch(t){}}))}function y(){s.value||(s.value=!0,"leave"===o.value?r("after-leave"):"enter"===o.value&&r("after-enter"),!u.show&&v.value&&(v.value=!1))}return e.onBeforeMount((()=>{u.show&&b()})),e.watch((()=>u.show),(a=>{a?(e.isPromise(d.value)&&d.value.abort(),e.isPromise($.value)&&$.value.abort(),e.isPromise(w.value)&&w.value.abort(),d.value=null,$.value=null,w.value=null,b()):async function(){if(!d.value)return s.value=!1,y();try{if(await d.value,!v.value)return;const a=l(u.name),t=e.isObj(u.duration)?u.duration.leave:u.duration;o.value="leave",r("before-leave"),i.value=t,w.value=e.pause(),await w.value,r("leave"),c.value=a.leave,w.value=e.pause(),await w.value,s.value=!1,c.value=a["leave-to"],w.value=function(a){return new e.AbortablePromise((e=>{const t=setTimeout((()=>{clearTimeout(t),e()}),a)}))}(i.value),await w.value,w.value=null,y(),d.value=null}catch(a){}}()}),{deep:!0}),(a,t)=>e.e({a:!a.lazyRender||n.value},!a.lazyRender||n.value?{b:e.n(m.value),c:e.s(f.value),d:e.o(y),e:e.o(p)}:{})}}),t=e._export_sfc(a,[["__scopeId","data-v-1fc69211"]]);wx.createComponent(t);
|