UNPKG

ll-package

Version:

2 lines (1 loc) 3.18 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const q=require("../../../@babel/runtime/helpers/esm/extends.js"),s=require("vue"),T=require("../vc-notification/Notification.js"),k=require("../../../@ant-design/icons-vue/es/icons/CheckCircleOutlined.js"),H=require("../../../@ant-design/icons-vue/es/icons/InfoCircleOutlined.js"),_=require("../../../@ant-design/icons-vue/es/icons/CloseCircleOutlined.js"),E=require("../../../@ant-design/icons-vue/es/icons/ExclamationCircleOutlined.js"),S=require("../../../@ant-design/icons-vue/es/icons/CloseOutlined.js"),C=require("../_util/util.js"),j=require("../config-provider/index.js"),R=require("../_util/classNames.js"),M=require("./style/index.js"),z=require("./useNotification.js"),B=require("./util.js"),a={};let I=4.5,b="24px",v="24px",y="",w="topRight",g=()=>document.body,V=null,N=!1,O;function D(e){const{duration:n,placement:o,bottom:i,top:r,getContainer:c,closeIcon:u,prefixCls:d}=e;d!==void 0&&(y=d),n!==void 0&&(I=n),o!==void 0&&(w=o),i!==void 0&&(v=typeof i=="number"?`${i}px`:i),r!==void 0&&(b=typeof r=="number"?`${r}px`:r),c!==void 0&&(g=c),u!==void 0&&(V=u),e.rtl!==void 0&&(N=e.rtl),e.maxCount!==void 0&&(O=e.maxCount)}function G(e,n){let{prefixCls:o,placement:i=w,getContainer:r=g,top:c,bottom:u,closeIcon:d=V,appContext:x}=e;const{getPrefixCls:$}=j.globalConfig(),t=$("notification",o||y),l=`${t}-${i}-${N}`,m=a[l];if(m){Promise.resolve(m).then(f=>{n(f)});return}const P=R.default(`${t}-${i}`,{[`${t}-rtl`]:N===!0});T.default.newInstance({name:"notification",prefixCls:o||y,useStyle:M.default,class:P,style:B.getPlacementStyle(i,c??b,u??v),appContext:x,getContainer:r,closeIcon:f=>{let{prefixCls:h}=f;return s.createVNode("span",{class:`${h}-close-x`},[C.renderHelper(d,{},s.createVNode(S.default,{class:`${h}-close-icon`},null))])},maxCount:O,hasTransitionName:!0},f=>{a[l]=f,n(f)})}const A={success:k.default,info:H.default,error:_.default,warning:E.default};function F(e){const{icon:n,type:o,description:i,message:r,btn:c}=e,u=e.duration===void 0?I:e.duration;G(e,d=>{d.notice({content:x=>{let{prefixCls:$}=x;const t=`${$}-notice`;let l=null;if(n)l=()=>s.createVNode("span",{class:`${t}-icon`},[C.renderHelper(n)]);else if(o){const m=A[o];l=()=>s.createVNode(m,{class:`${t}-icon ${t}-icon-${o}`},null)}return s.createVNode("div",{class:l?`${t}-with-icon`:""},[l&&l(),s.createVNode("div",{class:`${t}-message`},[!i&&l?s.createVNode("span",{class:`${t}-message-single-line-auto-margin`},null):null,C.renderHelper(r)]),s.createVNode("div",{class:`${t}-description`},[C.renderHelper(i)]),c?s.createVNode("span",{class:`${t}-btn`},[C.renderHelper(c)]):null])},duration:u,closable:!0,onClose:e.onClose,onClick:e.onClick,key:e.key,style:e.style||{},class:e.class})})}const p={open:F,close(e){Object.keys(a).forEach(n=>Promise.resolve(a[n]).then(o=>{o.removeNotice(e)}))},config:D,destroy(){Object.keys(a).forEach(e=>{Promise.resolve(a[e]).then(n=>{n.destroy()}),delete a[e]})}},J=["success","info","warning","error"];J.forEach(e=>{p[e]=n=>p.open(q.default(q.default({},n),{type:e}))});p.warn=p.warning;p.useNotification=z.default;const K=p;exports.default=K;