全栈小学生 b4d1350cf3 update admin
2023-07-01 16:28:06 +08:00

2 lines
4.4 KiB
JavaScript

import{c as G,v as z,d as K,T as U,r as x}from"./event-4977bef7.js";import{b as W,ak as J,d as N,g as A,h as Q,r as R,j as C,bK as H,o as X,m,D as E,E as S,a1 as P,q as h,v,u as i,x as D,G as F,am as Y,T as I,L as $,t as ee,n as O,I as te,F as Z,_ as oe,bZ as ne,aO as se,i as ie,aI as w,bM as V,z as ae,bN as le}from"./base-45eb5090.js";import{E as _,b as re}from"./focus-trap-318ae2e0.js";const j=["success","info","warning","error"],ce=W({customClass:{type:String,default:""},dangerouslyUseHTMLString:{type:Boolean,default:!1},duration:{type:Number,default:4500},icon:{type:J},id:{type:String,default:""},message:{type:N([String,Object]),default:""},offset:{type:Number,default:0},onClick:{type:N(Function),default:()=>{}},onClose:{type:N(Function),required:!0},position:{type:String,values:["top-right","top-left","bottom-right","bottom-left"],default:"top-right"},showClose:{type:Boolean,default:!0},title:{type:String,default:""},type:{type:String,values:[...j,""],default:""},zIndex:{type:Number,default:0}}),ue={destroy:()=>!0},fe=["id"],de=["textContent"],pe={key:0},me=["innerHTML"],ve=A({name:"ElNotification"}),ye=A({...ve,props:ce,emits:ue,setup(e,{expose:s}){const o=e,n=Q("notification"),{Close:u}=ne,a=R(!1);let d;const p=C(()=>{const t=o.type;return t&&H[o.type]?n.m(t):""}),r=C(()=>o.type&&H[o.type]||o.icon),c=C(()=>o.position.endsWith("right")?"right":"left"),l=C(()=>o.position.startsWith("top")?"top":"bottom"),g=C(()=>({[l.value]:`${o.offset}px`,zIndex:o.zIndex}));function f(){o.duration>0&&({stop:d}=se(()=>{a.value&&b()},o.duration))}function B(){d==null||d()}function b(){a.value=!1}function q({code:t}){t===_.delete||t===_.backspace?B():t===_.esc?a.value&&b():f()}return X(()=>{f(),a.value=!0}),G(document,"keydown",q),s({visible:a,close:b}),(t,T)=>(m(),E(U,{name:i(n).b("fade"),onBeforeLeave:t.onClose,onAfterLeave:T[1]||(T[1]=L=>t.$emit("destroy")),persisted:""},{default:S(()=>[P(h("div",{id:t.id,class:v([i(n).b(),t.customClass,i(c)]),style:D(i(g)),role:"alert",onMouseenter:B,onMouseleave:f,onClick:T[0]||(T[0]=(...L)=>t.onClick&&t.onClick(...L))},[i(r)?(m(),E(i(F),{key:0,class:v([i(n).e("icon"),i(p)])},{default:S(()=>[(m(),E(Y(i(r))))]),_:1},8,["class"])):I("v-if",!0),h("div",{class:v(i(n).e("group"))},[h("h2",{class:v(i(n).e("title")),textContent:$(t.title)},null,10,de),P(h("div",{class:v(i(n).e("content")),style:D(t.title?void 0:{margin:0})},[ee(t.$slots,"default",{},()=>[t.dangerouslyUseHTMLString?(m(),O(te,{key:1},[I(" Caution here, message could've been compromised, never use user's input as message "),h("p",{innerHTML:t.message},null,8,me)],2112)):(m(),O("p",pe,$(t.message),1))])],6),[[z,t.message]]),t.showClose?(m(),E(i(F),{key:0,class:v(i(n).e("closeBtn")),onClick:K(b,["stop"])},{default:S(()=>[Z(i(u))]),_:1},8,["class","onClick"])):I("v-if",!0)],2)],46,fe),[[z,a.value]])]),_:3},8,["name","onBeforeLeave"]))}});var ge=oe(ye,[["__file","/home/runner/work/element-plus/element-plus/packages/components/notification/src/notification.vue"]]);const k={"top-left":[],"top-right":[],"bottom-left":[],"bottom-right":[]},M=16;let Ce=1;const y=function(e={},s=null){if(!ie)return{close:()=>{}};(typeof e=="string"||w(e))&&(e={message:e});const o=e.position||"top-right";let n=e.offset||0;k[o].forEach(({vm:g})=>{var f;n+=(((f=g.el)==null?void 0:f.offsetHeight)||0)+M}),n+=M;const{nextZIndex:u}=re(),a=`notification_${Ce++}`,d=e.onClose,p={zIndex:u(),...e,offset:n,id:a,onClose:()=>{he(a,o,d)}};let r=document.body;V(e.appendTo)?r=e.appendTo:ae(e.appendTo)&&(r=document.querySelector(e.appendTo)),V(r)||(r=document.body);const c=document.createElement("div"),l=Z(ge,p,w(p.message)?{default:()=>p.message}:null);return l.appContext=s??y._context,l.props.onDestroy=()=>{x(null,c)},x(l,c),k[o].push({vm:l}),r.appendChild(c.firstElementChild),{close:()=>{l.component.exposed.visible.value=!1}}};j.forEach(e=>{y[e]=(s={})=>((typeof s=="string"||w(s))&&(s={message:s}),y({...s,type:e}))});function he(e,s,o){const n=k[s],u=n.findIndex(({vm:c})=>{var l;return((l=c.component)==null?void 0:l.props.id)===e});if(u===-1)return;const{vm:a}=n[u];if(!a)return;o==null||o(a);const d=a.el.offsetHeight,p=s.split("-")[0];n.splice(u,1);const r=n.length;if(!(r<1))for(let c=u;c<r;c++){const{el:l,component:g}=n[c].vm,f=Number.parseInt(l.style[p],10)-d-M;g.props.offset=f}}function be(){for(const e of Object.values(k))e.forEach(({vm:s})=>{s.component.exposed.visible.value=!1})}y.closeAll=be;y._context=null;const Ne=le(y,"$notify");export{Ne as E};