2 lines
4.9 KiB
JavaScript
2 lines
4.9 KiB
JavaScript
var e=Object.defineProperty,a=Object.defineProperties,s=Object.getOwnPropertyDescriptors,t=Object.getOwnPropertySymbols,l=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable,r=(a,s,t)=>s in a?e(a,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[s]=t,i=(e,a)=>{for(var s in a||(a={}))l.call(a,s)&&r(e,s,a[s]);if(t)for(var s of t(a))o.call(a,s)&&r(e,s,a[s]);return e},d=(e,t)=>a(e,s(t));import{a8 as n,d3 as u,c,d4 as f,r as v,A as p,cY as b,l as y,cB as m,a0 as h,d as g,bs as w,bz as k,a1 as z,bK as C,h as A,e as R,w as E,g as O,a3 as j,p as x,N as F,cG as L,cn as _,f as P,a2 as $,O as B,b as S,i as T,q as I,s as H,v as q,ai as D,be as X,m as Y,aj as N,az as G}from"./index-BoIUJTA2.js";import{E as K}from"./index-COyGylbk.js";import{c as M,e as U,u as W}from"./use-dialog-FwJ-QdmW.js";const J=n(d(i({},U),{direction:{type:String,default:"rtl",values:["ltr","rtl","ttb","btt"]},resizable:Boolean,size:{type:[String,Number],default:"30%"},withHeader:{type:Boolean,default:!0},modalFade:{type:Boolean,default:!0},headerAriaLevel:{type:String,default:"2"}})),Q=M;function V(e,a){const{width:s,height:t}=u(),l=c(()=>["ltr","rtl"].includes(e.direction)),o=c(()=>["ltr","ttb"].includes(e.direction)?1:-1),r=c(()=>l.value?s.value:t.value),i=c(()=>f(d.value+o.value*n.value,4,r.value)),d=v(0),n=v(0),h=v(!1),g=v(!1);let w=[],k=[];p(()=>[e.size,e.resizable],()=>{g.value=!1,d.value=0,n.value=0,C()});const z=e=>{const{pageX:a,pageY:s}=e,t=a-w[0],o=s-w[1];n.value=l.value?t:o},C=()=>{w=[],d.value=i.value,n.value=0,h.value=!1,k.forEach(e=>null==e?void 0:e()),k=[]},A=b(a,"mousedown",s=>{e.resizable&&(g.value||(d.value=(()=>{var e;const s=null==(e=a.value)?void 0:e.closest('[aria-modal="true"]');return s?l.value?s.offsetWidth:s.offsetHeight:100})(),g.value=!0),w=[s.pageX,s.pageY],h.value=!0,k.push(b(window,"mouseup",C),b(window,"mousemove",z)))});return y(()=>{A(),C()}),{size:c(()=>g.value?`${i.value}px`:m(e.size)),isResizing:h,isHorizontal:l}}const Z=g({name:"ElDrawer",inheritAttrs:!1});const ee=G(h(g(d(i({},Z),{props:J,emits:Q,setup(e,{expose:a}){const s=e,t=w();k({scope:"el-drawer",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/drawer.html#slots"},c(()=>!!t.title));const l=v(),o=v(),r=v(),i=z("drawer"),{t:d}=C(),{afterEnter:n,afterLeave:u,beforeLeave:f,visible:p,rendered:b,titleId:y,bodyId:m,zIndex:h,onModalClick:g,onOpenAutoFocus:G,onCloseAutoFocus:M,onFocusoutPrevented:U,onCloseRequested:J,handleClose:Q}=W(s,l),{isHorizontal:Z,size:ee,isResizing:ae}=V(s,r);return a({handleClose:Q,afterEnter:n,afterLeave:u}),(e,a)=>(R(),A(x(K),{to:e.appendTo,disabled:"body"===e.appendTo&&!e.appendToBody},{default:E(()=>[O(j,{name:x(i).b("fade"),onAfterEnter:x(n),onAfterLeave:x(u),onBeforeLeave:x(f),persisted:""},{default:E(()=>{var a;return[F(O(x(L),{mask:e.modal,"overlay-class":[x(i).is("drawer"),null!=(a=e.modalClass)?a:""],"z-index":x(h),onClick:x(g)},{default:E(()=>[O(x(_),{loop:"",trapped:x(p),"focus-trap-el":l.value,"focus-start-el":o.value,onFocusAfterTrapped:x(G),onFocusAfterReleased:x(M),onFocusoutPrevented:x(U),onReleaseRequested:x(J)},{default:E(()=>[P("div",$({ref_key:"drawerRef",ref:l,"aria-modal":"true","aria-label":e.title||void 0,"aria-labelledby":e.title?void 0:x(y),"aria-describedby":x(m)},e.$attrs,{class:[x(i).b(),e.direction,x(p)&&"open",x(i).is("dragging",x(ae))],style:{[x(Z)?"width":"height"]:x(ee)},role:"dialog",onClick:B(()=>{},["stop"])}),[P("span",{ref_key:"focusStartRef",ref:o,class:I(x(i).e("sr-focus")),tabindex:"-1"},null,2),e.withHeader?(R(),S("header",{key:0,class:I([x(i).e("header"),e.headerClass])},[e.$slots.title?H(e.$slots,"title",{key:1},()=>[T(" DEPRECATED SLOT ")]):H(e.$slots,"header",{key:0,close:x(Q),titleId:x(y),titleClass:x(i).e("title")},()=>[P("span",{id:x(y),role:"heading","aria-level":e.headerAriaLevel,class:I(x(i).e("title"))},q(e.title),11,["id","aria-level"])]),e.showClose?(R(),S("button",{key:2,"aria-label":x(d)("el.drawer.close"),class:I(x(i).e("close-btn")),type:"button",onClick:x(Q)},[O(x(D),{class:I(x(i).e("close"))},{default:E(()=>[O(x(X))]),_:1},8,["class"])],10,["aria-label","onClick"])):T("v-if",!0)],2)):T("v-if",!0),x(b)?(R(),S("div",{key:1,id:x(m),class:I([x(i).e("body"),e.bodyClass])},[H(e.$slots,"default")],10,["id"])):T("v-if",!0),e.$slots.footer?(R(),S("div",{key:2,class:I([x(i).e("footer"),e.footerClass])},[H(e.$slots,"footer")],2)):T("v-if",!0),e.resizable?(R(),S("div",{key:3,ref_key:"draggerRef",ref:r,style:Y({zIndex:x(h)}),class:I(x(i).e("dragger"))},null,6)):T("v-if",!0)],16,["aria-label","aria-labelledby","aria-describedby","onClick"])]),_:3},8,["trapped","focus-trap-el","focus-start-el","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])]),_:3},8,["mask","overlay-class","z-index","onClick"]),[[N,x(p)]])]}),_:3},8,["name","onAfterEnter","onAfterLeave","onBeforeLeave"])]),_:3},8,["to","disabled"]))}})),[["__file","drawer.vue"]]));export{ee as E};
|