You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2 lines
1.6 KiB
2 lines
1.6 KiB
import{q as v,D,r as l,f as P,u as n,K as c,H as h,C as m,a4 as q,a6 as b,G as E,aj as R,J as y}from"./index-f4658ae7.js";const u=v({}),d=v({});function L(){if(!D())throw new Error("useDrawer() can only be used inside setup() or functional components!");const t=l(null),o=l(!1),s=l("");function i(e,r){m(()=>{t.value=null,o.value=null,u[n(s)]=null}),!(n(o)&&q()&&e===n(t))&&(s.value=r,t.value=e,o.value=!0,e.emitVisible=(w,p)=>{d[p]=w})}const a=()=>{const e=n(t);return e||b("useDrawer instance is undefined!"),e},f={setDrawerProps:e=>{var r;(r=a())==null||r.setDrawerProps(e)},getVisible:P(()=>d[~~n(s)]),openDrawer:(e=!0,r,w=!0)=>{var g;if((g=a())==null||g.setDrawerProps({visible:e}),!r)return;if(w){u[n(s)]=null,u[n(s)]=c(r);return}h(c(u[n(s)]),c(r))||(u[n(s)]=c(r))},closeDrawer:()=>{var e;(e=a())==null||e.setDrawerProps({visible:!1})}};return[i,f]}const V=t=>{const o=l(null),s=D(),i=l("");if(!D())throw new Error("useDrawerInner() can only be used inside setup() or functional components!");const a=()=>{const e=n(o);if(!e){b("useDrawerInner instance is undefined!");return}return e},f=(e,r)=>{m(()=>{o.value=null}),i.value=r,o.value=e,s==null||s.emit("register",e,r)};return E(()=>{const e=u[n(i)];e&&(!t||!R(t)||y(()=>{t(e)}))}),[f,{changeLoading:(e=!0)=>{var r;(r=a())==null||r.setDrawerProps({loading:e})},changeOkLoading:(e=!0)=>{var r;(r=a())==null||r.setDrawerProps({confirmLoading:e})},getVisible:P(()=>d[~~n(i)]),closeDrawer:()=>{var e;(e=a())==null||e.setDrawerProps({visible:!1})},setDrawerProps:e=>{var r;(r=a())==null||r.setDrawerProps(e)}}]};export{L as useDrawer,V as useDrawerInner};
|