vue-devui 1.0.0-rc.14 → 1.0.0-rc.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/README.md +3 -0
  2. package/alert/index.umd.js +1 -1
  3. package/auto-complete/index.es.js +92 -81
  4. package/auto-complete/index.umd.js +24 -13
  5. package/auto-complete/style.css +1 -1
  6. package/avatar/index.umd.js +1 -1
  7. package/badge/index.umd.js +1 -1
  8. package/button/index.es.js +21 -42
  9. package/button/index.umd.js +9 -9
  10. package/button/style.css +1 -1
  11. package/card/index.umd.js +1 -1
  12. package/checkbox/index.es.js +96 -77
  13. package/checkbox/index.umd.js +26 -15
  14. package/collapse/index.es.js +3 -21
  15. package/collapse/index.umd.js +1 -1
  16. package/countdown/index.umd.js +1 -1
  17. package/date-picker-pro/index.es.js +133 -114
  18. package/date-picker-pro/index.umd.js +23 -12
  19. package/date-picker-pro/style.css +1 -1
  20. package/drawer/index.es.js +5 -18
  21. package/drawer/index.umd.js +1 -1
  22. package/dropdown/index.es.js +6 -31
  23. package/dropdown/index.umd.js +1 -1
  24. package/editable-select/index.es.js +104 -99
  25. package/editable-select/index.umd.js +1 -1
  26. package/editable-select/style.css +1 -1
  27. package/form/index.es.js +87 -71
  28. package/form/index.umd.js +22 -11
  29. package/fullscreen/index.umd.js +1 -1
  30. package/grid/index.es.js +7 -20
  31. package/grid/index.umd.js +1 -1
  32. package/icon/index.umd.js +1 -1
  33. package/image-preview/index.es.js +12 -23
  34. package/image-preview/index.umd.js +1 -1
  35. package/input/index.es.js +88 -72
  36. package/input/index.umd.js +24 -13
  37. package/input-number/index.es.js +1 -16
  38. package/input-number/index.umd.js +1 -1
  39. package/layout/index.umd.js +1 -1
  40. package/loading/index.es.js +15 -38
  41. package/loading/index.umd.js +1 -1
  42. package/loading/style.css +1 -1
  43. package/mention/index.d.ts +7 -0
  44. package/mention/index.es.js +8326 -0
  45. package/mention/index.umd.js +47 -0
  46. package/mention/package.json +7 -0
  47. package/mention/style.css +1 -0
  48. package/menu/index.d.ts +7 -0
  49. package/menu/index.es.js +927 -0
  50. package/menu/index.umd.js +1 -0
  51. package/menu/package.json +7 -0
  52. package/menu/style.css +1 -0
  53. package/message/index.d.ts +7 -0
  54. package/message/index.es.js +533 -0
  55. package/message/index.umd.js +1 -0
  56. package/message/package.json +7 -0
  57. package/message/style.css +1 -0
  58. package/modal/index.es.js +14 -44
  59. package/modal/index.umd.js +1 -1
  60. package/notification/index.es.js +16 -22
  61. package/notification/index.umd.js +1 -1
  62. package/nuxt/components/Mention.js +3 -0
  63. package/nuxt/components/Menu.js +3 -0
  64. package/nuxt/components/MenuItem.js +3 -0
  65. package/nuxt/components/Message.js +3 -0
  66. package/nuxt/components/SubMenu.js +3 -0
  67. package/nuxt/components/animationInjectionKey.js +3 -0
  68. package/nuxt/components/mentionProps.js +3 -0
  69. package/nuxt/components/messageProps.js +3 -0
  70. package/nuxt/components/roundInjectionKey.js +3 -0
  71. package/nuxt/components/skeletonItemProps.js +3 -0
  72. package/nuxt/components/treeNodeProps.js +3 -0
  73. package/overlay/index.es.js +1 -1
  74. package/overlay/index.umd.js +1 -1
  75. package/package.json +5 -3
  76. package/pagination/index.umd.js +1 -1
  77. package/panel/index.umd.js +1 -1
  78. package/popover/index.es.js +3 -1
  79. package/popover/index.umd.js +6 -6
  80. package/progress/index.umd.js +3 -3
  81. package/radio/index.es.js +93 -75
  82. package/radio/index.umd.js +27 -16
  83. package/radio/style.css +1 -1
  84. package/rate/index.umd.js +1 -1
  85. package/result/index.umd.js +1 -1
  86. package/ripple/index.es.js +5 -18
  87. package/ripple/index.umd.js +1 -1
  88. package/search/index.es.js +104 -75
  89. package/search/index.umd.js +26 -15
  90. package/search/style.css +1 -1
  91. package/select/index.es.js +132 -111
  92. package/select/index.umd.js +26 -15
  93. package/select/style.css +1 -1
  94. package/skeleton/index.es.js +87 -261
  95. package/skeleton/index.umd.js +1 -1
  96. package/skeleton/style.css +1 -1
  97. package/slider/index.umd.js +1 -1
  98. package/splitter/index.es.js +22 -29
  99. package/splitter/index.umd.js +9 -9
  100. package/statistic/index.es.js +0 -21
  101. package/statistic/index.umd.js +1 -1
  102. package/status/index.umd.js +1 -1
  103. package/steps/index.umd.js +1 -1
  104. package/style.css +1 -1
  105. package/switch/index.es.js +87 -71
  106. package/switch/index.umd.js +25 -14
  107. package/switch/style.css +1 -1
  108. package/table/index.es.js +153 -102
  109. package/table/index.umd.js +22 -11
  110. package/table/style.css +1 -1
  111. package/tabs/index.umd.js +1 -1
  112. package/tag/index.umd.js +1 -1
  113. package/textarea/index.es.js +91 -73
  114. package/textarea/index.umd.js +26 -15
  115. package/time-picker/index.es.js +99 -88
  116. package/time-picker/index.umd.js +25 -14
  117. package/time-picker/style.css +1 -1
  118. package/time-select/index.es.js +132 -111
  119. package/time-select/index.umd.js +25 -14
  120. package/time-select/style.css +1 -1
  121. package/timeline/index.umd.js +1 -1
  122. package/tooltip/index.es.js +1 -1
  123. package/tooltip/index.umd.js +4 -4
  124. package/tree/index.es.js +11148 -9855
  125. package/tree/index.umd.js +29 -18
  126. package/tree/style.css +1 -1
  127. package/upload/index.es.js +17 -48
  128. package/upload/index.umd.js +1 -1
  129. package/vue-devui.es.js +11421 -8832
  130. package/vue-devui.umd.js +34 -22
@@ -0,0 +1 @@
1
+ (function($,n){typeof exports=="object"&&typeof module!="undefined"?n(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],n):($=typeof globalThis!="undefined"?globalThis:$||self,n($.index={},$.Vue))})(this,function($,n){"use strict";function B(e,l,t){let s=e;return l&&(s+=`__${l}`),t&&(s+=`--${t}`),s}function N(e,l=!1){const t=l?`.devui-${e}`:`devui-${e}`;return{b:()=>B(t),e:u=>u?B(t,u):"",m:u=>u?B(t,"",u):"",em:(u,f)=>u&&f?B(t,u,f):""}}const Q=[];let U=[];const W=n.ref(24),T=N("menu"),re=N("submenu"),R=T.b(),X=`${T.b()}-item-horizontal-wrapper`,Y=`${T.b()}-item-select`,Z=`${T.b()}-active-parent`;function ce(e){W.value=e}function de(e){Q.push(e)}function ue(){U=[],Q.forEach(t=>{U.push(t.el.parentElement)});const e=[...U],l=t=>{var s;return(s=/layer_(\d*)/gim.exec(t))==null?void 0:s[1]};for(;e.length;){const t=e.shift();if(t!=null&&t.classList.contains(R)){const s=t.children;e.unshift(...Array.from(s));continue}else{if(t.tagName==="DIV")if(t.classList.contains(`${T.b()}-item-vertical-wrapper`)||t.classList.contains(`${re.b()}-menu-item-vertical-wrapper`)){const s=t.parentElement;if(e.unshift(...Array.from(t.children)),s!=null&&s.classList.contains(R))t.classList.add("layer_1");else{let a=l((s==null?void 0:s.classList.value)||"");a=Number(a),t.classList.add(`layer_${a}`)}}else{const s=t.parentElement;let a=l((s==null?void 0:s.classList.value)||"");a=Number(a),t.classList.add(`layer_${a}`),t.style.paddingLeft=`${(a===2?1:a-1)*W.value}px`}if(t.tagName==="UL"){const s=t.parentElement,a=t.children;for(let u=0;u<a.length;u++)e.unshift(a[u]);const c=(s==null?void 0:s.classList.value)||"";let i=l(c);s!=null&&s.classList.contains(R)?(i=1,t.classList.add(`layer_${2}`)):(t.classList.add(`layer_${Number(i)+1}`),i=Number(i)+1)}if(t.tagName==="LI"){const s=t.parentElement,a=(s==null?void 0:s.classList.value)||"";let c=l(a);l(a),c=Number(c),t.style.padding=`0 ${c*W.value}px`}}}}function fe(e){var s;const l=e;let t=null;for(let a=0;a<l.length;a++){const c=l[a];(s=c==null?void 0:c.classList)!=null&&s.contains(`${T.b()}-horizontal`)&&(t=c)}return t}function me(e,l){let t=l.target,s=[];const{path:a}=l,c=fe(a);for(s=[...Array.from(c.children)],t.tagName==="SPAN"&&(t=t.parentElement);s.length;){const i=s.shift();if((i==null?void 0:i.tagName)==="UL"||(i==null?void 0:i.classList.contains(X))){const u=i==null?void 0:i.children;s.unshift(...Array.from(u))}i!==t&&(i==null||i.classList.remove(Y),i==null||i.classList.remove(Z))}}function pe(e,l){const t=[],s=l.path||l.composedPath&&l.composedPath();for(let a=0;a<s.length;a++){const c=s[a];if(!c.classList.contains(R))t.push(...Array.from(c.children));else{t.push(...Array.from(c.children));break}}for(;t.length;){const a=t.shift();((a==null?void 0:a.tagName)==="UL"||(a==null?void 0:a.classList.contains(X)))&&t.push(...Array.from(a==null?void 0:a.children)),a!==e&&((a==null?void 0:a.tagName)==="DIV"&&t.unshift(...Array.from(a==null?void 0:a.children)),a==null||a.classList.remove(Y),a==null||a.classList.remove(Z))}}function ee(e,l,t=!1){t?me(e,l):pe(e,l)}function he(e){var s;const l=/layer_(\d{1,})/gim,t=e.className;return(s=l.exec(t))==null?void 0:s[1]}const ge={disabled:{type:Boolean,default:!1},href:{type:String,default:""},route:{type:[String,Object]}},te=N("menu");function ne(e,l,t,s){const a=n.ref(!1);return t?e.includes(l)?a.value=!0:a.value=!1:e[0]===l&&!s.value?a.value=!0:a.value=!1,a.value}function ye(e){var t,s;let l=e.parentElement;for(;!l.classList.contains(te.b());)((t=l.firstElementChild)==null?void 0:t.tagName)==="DIV"&&((s=l==null?void 0:l.firstElementChild)==null||s.classList.add(`${te.b()}-active-parent`)),l=l.parentElement;return l}function be(e,l,t,s){if(t&&l){const a=e.route||s,c=l.push(a).then(i=>i);return{route:a,routerResult:c}}}const q=N("menu");function se(e){const l=e.path;for(let t=0;t<l.length;t++){const s=l[t];if(s.classList.contains(`${q.b()}-horizontal`))break;if(s.classList.contains(`${q.b()}-item-horizontal-wrapper`))continue;s.tagName!=="SPAN"&&s.classList.add(`${q.b()}-item-select`)}}const V=N("menu"),k=`${V.b()}-item-select`,ve=`${V.b()}-item-disabled`;var F=n.defineComponent({name:"DMenuItem",props:ge,setup(e,l){var d,h;const t=n.getCurrentInstance(),s=String(t==null?void 0:t.vnode.key),a=n.inject("menuStore"),c=n.inject("mode"),i=n.inject("multiple"),u=n.inject("defaultIndent"),f=n.inject("isCollapsed"),g=n.inject("defaultSelectKey"),{disabled:M}=n.toRefs(e),y=n.ref(ne(g,s,i,M)),C=n.ref(!0),A=n.inject("rootMenuEmit"),x=n.inject("useRouter"),b=t==null?void 0:t.appContext.config.globalProperties.$router,p=n.computed(()=>({[`${V.b()}-item`]:!0,[`${V.b()}-item-isCollapsed`]:f.value,[k]:y.value,[ve]:M.value}));a.on("menuItem:clear:select",()=>{y.value=!1});const v=r=>{var z;r.stopPropagation();const o=r.currentTarget;let m;if(e.disabled&&r.preventDefault(),!e.disabled){if(!i)a.emit("menuItem:clear:select"),ee(o,r,c.value==="horizontal"),c.value==="horizontal"&&se(r),y.value=!0,m=be(e,b,x,s);else if(o.classList.contains(k)){A("deselect",{type:"deselect",key:s,el:o,e:r}),y.value=!1;return}else y.value=!0,o.classList.add(k);m===void 0?A("select",{type:"select",key:s,el:o,e:r}):A("select",{type:"select",key:s,el:o,e:r,route:m})}if(c.value==="vertical"){const E=r.currentTarget;ye(E)}if(c.value==="horizontal"){const E=(z=o.parentElement)==null?void 0:z.parentElement;E==null||E.classList.add(`${V.b()}-active-parent`)}},L=n.createVNode("span",{class:`${V.b()}-icon`},[(h=(d=l.slots).icon)==null?void 0:h.call(d)]),w=n.ref(null);return n.watch(M,()=>{i||(p.value[k]=!1)}),n.watch(()=>g,r=>{y.value=ne(r,s,i,M),p.value[k]=y.value}),n.onMounted(()=>{var m,z;let r="";const o=w.value;c.value==="vertical"&&((z=(m=o.parentElement)==null?void 0:m.parentElement)!=null&&z.classList.contains(V.b())?(C.value=!0,C.value&&(o.style.paddingRight="",o.style.paddingLeft=`${u}px`),n.watch(f,E=>{E?(o.style.padding!=="0"&&(r=o.style.padding),setTimeout(()=>{o.style.padding="0",o.style.width="",o.style.textAlign="center"},300),o.style.display="block"):(o.style.padding=`${r}`,o.style.textAlign="",o.style.display="flex")})):C.value=!1)}),()=>c.value==="vertical"?n.createVNode("div",{class:`${V.b()}-item-vertical-wrapper`},[n.createVNode("li",{class:p.value,onClick:v,ref:w},[l.slots.icon!==void 0&&L,e.href===""?n.createVNode(n.Transition,{name:"fade"},{default:()=>{var r,o;return[n.withDirectives(n.createVNode("span",null,[(o=(r=l.slots).default)==null?void 0:o.call(r)]),[[n.vShow,!f.value]])]}}):n.createVNode("a",{href:e.href},[n.createVNode(n.Transition,{name:"fade"},{default:()=>{var r,o;return[(o=(r=l.slots).default)==null?void 0:o.call(r)]}})])])]):n.createVNode("li",{class:p.value,onClick:v,ref:w},[l.slots.icon!==void 0&&L,e.href===""?n.createVNode(n.Transition,{name:"fade"},{default:()=>{var r,o;return[n.withDirectives(n.createVNode("span",null,[(o=(r=l.slots).default)==null?void 0:o.call(r)]),[[n.vShow,!f.value]])]}}):n.createVNode("a",{href:e.href},[n.createVNode(n.Transition,{name:"fade"},{default:()=>{var r,o;return[(o=(r=l.slots).default)==null?void 0:o.call(r)]}})])])}});function ae(e=8){const l="abcdefghijklmnopqrstuvwxyz0123456789";let t="";for(let s=0;s<e;s++)t+=l[parseInt((Math.random()*l.length).toString())];return t}function le(e){for(;e&&e.tagName!=="LI"&&e.tagName!=="UL";)e=e.parentElement;return e}const oe="0.3s height ease-in-out, 0.3s padding-top ease-in-out, 0.3s padding-bottom ease-in-out",D={"before-enter"(e){e.style.transition=oe,e.setAttribute("data-oldPadding",e.style.padding),e.setAttribute("data-oldMargin",e.style.margin),e.style.height="0",e.style.padding="0",e.style.margin="0"},enter(e){e.dataset.oldOverflow=e.style.overflow,e.scrollHeight!==0?e.style.height=e.scrollHeight+"px":e.style.height="",e.style.padding=e.getAttribute("data-oldPadding"),e.style.margin=e.getAttribute("data-oldMargin"),e.style.overflow="hidden"},"after-enter"(e){e.style.transition="",e.style.transition="",e.style.height="",e.style.overflow=e.getAttribute("data-overflow")},"before-leave"(e){e.dataset||(e.dataset={}),e.dataset.oldPaddingTop=e.style.paddingTop,e.dataset.oldPaddingBottom=e.style.paddingBottom,e.dataset.oldOverflow=e.style.overflow,e.style.height=e.scrollHeight+"px",e.style.overflow="hidden"},leave(e){e.scrollHeight!==0&&(e.style.transition=oe,e.style.height="0",e.style.paddingTop="0",e.style.paddingBottom="0")},"after-leave"(e){e.style.transition="",e.style.height="",e.style.overflow=e.dataset.oldOverflow,e.style.paddingTop=e.dataset.oldPaddingTop,e.style.paddingBottom=e.dataset.oldPaddingBottom}};var Le=n.defineComponent({name:"DMenuTransition",setup(e,l){return()=>n.createVNode(n.Transition,{onBeforeEnter:t=>D["before-enter"](t),onBeforeLeave:t=>D["before-leave"](t),onEnter:t=>D.enter(t),onAfterEnter:t=>D["after-enter"](t),onLeave:t=>D.leave(t),onAfterLeave:t=>D["after-leave"](t)},{default:()=>{var t,s;return[(s=(t=l.slots).default)==null?void 0:s.call(t)]}})}});const we={title:{type:String,default:""},disabled:{type:Boolean,default:!1}},O=N("menu"),$e=N("submenu"),I=`${O.b()}-item-horizontal-wrapper-hidden`,H=`${O.b()}-item-horizontal-wrapper-show`;function j(e,l,t){const s=l.currentTarget,a=s.parentElement,c=t.children;if(t.style.padding="0 20px !important",e==="mouseenter"){if((a==null?void 0:a.tagName)==="DIV"){t.classList.add(`${O.b()}-item-horizontal-wrapper-level`);const{width:i}=s.getClientRects()[0];t.style.top="0px",t.style.left=`${i}px`}else t.style.top="26px",t.style.left="0px";t.classList.remove(I),t.classList.add(H);for(let i=0;i<c.length;i++){const u=c[i];if(u.tagName==="UL"&&u.classList.contains($e.b())){const f=u.getElementsByClassName(`${O.b()}-item-horizontal-wrapper`)[0];u.addEventListener("mouseenter",g=>{g.stopPropagation(),j("mouseenter",g,f),f.classList.remove(I),f.classList.add(H)}),u.addEventListener("mouseleave",g=>{g.stopPropagation(),j("mouseleave",g,f),f.classList.remove(H),f.classList.add(I)})}}}e==="mouseleave"&&(t.classList.remove(H),t.classList.add(I))}const G=N("menu"),P=N("submenu").b();var K=n.defineComponent({name:"DSubMenu",props:we,setup(e,l){const t=n.ref(!0),{vnode:{key:s}}=n.getCurrentInstance();let a=String(s);const c=n.inject("openKeys"),i=n.ref(c.value.includes(a)),u=n.inject("defaultIndent"),f=n.inject("isCollapsed"),g=n.inject("mode"),M=n.ref(null),y=n.inject("rootMenuEmit"),C=g.value==="horizontal";a==="null"&&(console.warn("[devui][menu]: Key can not be null"),a=`randomKey-${ae(16)}`);const A=d=>{d.stopPropagation();const h=le(d.target);if(!(h.classList.contains(P)&&C)&&(C&&(ee(h,d,!0),se(d)),!e.disabled&&g.value!=="horizontal")){const r=le(d.target),o=c.value.indexOf(a);o>=0&&r.tagName==="UL"?c.value.splice(o,1):r.tagName==="UL"&&c.value.push(a),i.value=c.value.indexOf(a)>=0,y("submenu-change",{type:"submenu-change",state:i.value,key:a,el:h})}},x=n.ref(null);let b;const p=n.ref(null),v=n.ref(null);let L="";const w=n.ref("");return n.watchEffect(()=>{b=x.value,de({el:p.value})},{flush:"post"}),n.watch(()=>c,d=>{d.value.includes(a)?i.value=!0:i.value=!1},{deep:!0}),n.onMounted(()=>{var r;const d=v.value,h=p.value;ue(),w.value=`layer_${(r=Array.from(h.classList).at(-1))==null?void 0:r.replace("layer_","")}`,C&&!e.disabled&&(p.value.addEventListener("mouseenter",o=>{o.stopPropagation(),j("mouseenter",o,b)}),p.value.addEventListener("mouseleave",o=>{o.stopPropagation(),j("mouseleave",o,b)})),n.watch(f,o=>{const m=Number(he(h));Number.isNaN(m)||m>2&&(t.value=!f.value),o?(d.style.padding!=="0"&&(L=d.style.padding),setTimeout(()=>{d.style.padding="0",d.style.width="",d.style.textAlign="center"},300),d.style.display="block"):(d.style.padding=`${L}`,d.style.textAlign="",d.style.display="flex")})}),()=>{var d,h,r,o;return n.withDirectives(n.createVNode("ul",{onClick:A,class:[P,w.value,e.disabled&&`${P}-disabled`],ref:p},[n.createVNode("div",{class:[`${P}-title`],style:`padding: 0 ${u}px`,ref:v},[n.createVNode("span",{class:`${G.b()}-icon`},[(h=(d=l.slots)==null?void 0:d.icon)==null?void 0:h.call(d)]),n.withDirectives(n.createVNode("span",{class:`${P}-title-content`},[e.title]),[[n.vShow,!f.value]]),n.withDirectives(n.createVNode("i",{class:{"icon icon-chevron-up":w.value!==`layer_${P}`,"icon icon-chevron-right":w.value===`layer_${P}`,"is-opened":i.value}},null),[[n.vShow,!f.value&&s!=="overflowContainer"]])]),C?n.withDirectives(n.createVNode("div",{class:`${G.b()}-item-horizontal-wrapper ${G.b()}-item-horizontal-wrapper-hidden`,ref:x},[(o=(r=l.slots).default)==null?void 0:o.call(r)]),[[n.vShow,!e.disabled]]):n.createVNode(Le,null,{default:()=>{var m,z;return[n.withDirectives(n.createVNode("div",{class:[`${P}-menu-item-vertical-wrapper`],ref:M},[(z=(m=l.slots).default)==null?void 0:z.call(m)]),[[n.vShow,i.value]])]}})]),[[n.vShow,t.value]])}}});const Ne={width:{type:String,default:""},collapsed:{type:Boolean,default:!1},collapsedIndent:{type:Number,default:24},indentSize:{type:Number,default:24},multiple:{type:Boolean,default:!1},openKeys:{type:Array,default:[]},defaultSelectKeys:{type:Array,default:[]},mode:{type:String,default:"vertical"},router:{type:Boolean,default:!1}};var Ae="";const S={};class Se{constructor(l){this.rootMenuName=l}on(l,t){var s;(s=S==null?void 0:S[this.rootMenuName])!=null&&s[l]||Reflect.set(S[this.rootMenuName],l,[]),S[this.rootMenuName][l].push(t)}emit(l,...t){S[this.rootMenuName][l].forEach(s=>s(...t))}off(l,t){const s=S[this.rootMenuName][l].indexOf(t);s>=0&&S[this.rootMenuName][l].splice(s,1)}}function Ce(e){return S[e]||Reflect.set(S,e,{}),new Se(e)}var J=n.defineComponent({name:"DMenu",props:Ne,emits:["select","deselect","submenu-change"],setup(e,l){const t=N("menu"),{openKeys:s,mode:a,collapsed:c}=n.toRefs(e),i=ae(16),u=Ce(i);n.provide("menuStore",u),n.provide("isCollapsed",c),n.provide("defaultIndent",e.indentSize),n.provide("multiple",e.multiple),n.provide("openKeys",s),n.provide("defaultSelectKey",e.defaultSelectKeys),n.provide("mode",a),n.provide("collapsedIndent",e.collapsedIndent),n.provide("rootMenuEmit",l.emit),n.provide("useRouter",e.router),ce(e.indentSize);const f=n.ref(null),g=n.ref(0),M=n.ref(null),y=`${t.b()}-item-select`,C=n.computed(()=>({[`${t.b()}`]:!0,[`${t.b()}-vertical`]:a.value==="vertical",[`${t.b()}-horizontal`]:a.value==="horizontal",[`${t.b()}-collapsed`]:c.value})),A=n.reactive({[y]:!1,[`${t.b()}-overflow-container`]:!0}),x=b=>{const p=Array.from(b.children);for(const v of p)if(v.classList.contains(y)){A[y]=!0;break}else A[y]=!1};return n.onMounted(()=>{var b;if(e.mode==="horizontal"){let p=!1;const v=(b=M.value)==null?void 0:b.$el,L=f.value,w=L.children,d=v.children[1],h=new IntersectionObserver(r=>{r.forEach(o=>{if(o.isIntersecting){if(!o.target.classList.contains(`${t.b()}-overflow-container`)&&o.target.style.visibility==="hidden"){h.unobserve(o.target),L.insertBefore(o.target,v),o.target.style.visibility="";const m=v.previousElementSibling;if(m&&o.boundingClientRect.width%o.target.getBoundingClientRect().width===0&&h.observe(m),m!=null&&m.classList.contains("devui-submenu")){const E=m,ie=m.children[1];E.addEventListener("mouseenter",_=>{_.stopPropagation(),j("mouseenter",_,ie)}),E.addEventListener("mouseleave",_=>{_.stopPropagation(),j("mouseleave",_,ie)})}g.value-=1,h.observe(o.target),d.lastChild&&d.removeChild(d.lastChild),x(d)}}else{const m=o.target.cloneNode(!0);o.target.classList.contains(`${t.b()}-overflow-container`)?p&&o.target.previousElementSibling&&d.children.length?L.appendChild(o.target.previousElementSibling):p=!0:(g.value+=1,o.target.style.visibility="hidden",v.nextSibling?L.insertBefore(o.target,v.nextSibling):L.appendChild(o.target),d.appendChild(m),x(d))}})},{root:L,threshold:1,rootMargin:"8px"});for(let r=0;r<w.length;r++)h.observe(w[r])}}),()=>{var b,p;return n.createVNode("ul",{ref:f,class:C.value,style:[e.collapsed?`width:${e.collapsedIndent*2}px`:`width: ${e.width}`]},[(p=(b=l.slots).default)==null?void 0:p.call(b),n.withDirectives(n.createVNode(K,{ref:M,key:"overflowContainer",title:"...",class:A},null),[[n.vShow,g.value>0&&a.value==="horizontal"]])])}}}),Ee={title:"Menu \u83DC\u5355",category:"\u5BFC\u822A",status:"100%",install(e){e.component(J.name,J),e.component(F.name,F),e.component(K.name,K)}};$.Menu=J,$.MenuItem=F,$.SubMenu=K,$.default=Ee,Object.defineProperties($,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
@@ -0,0 +1,7 @@
1
+ {
2
+ "name": "menu",
3
+ "version": "0.0.0",
4
+ "main": "index.umd.js",
5
+ "module": "index.es.js",
6
+ "style": "style.css"
7
+ }
package/menu/style.css ADDED
@@ -0,0 +1 @@
1
+ .devui-menu-vertical a,.devui-menu-vertical a:hover,.devui-menu-vertical a:active,.devui-menu-vertical a:visited,.devui-menu-horizontal a,.devui-menu-horizontal a:hover,.devui-menu-horizontal a:active,.devui-menu-horizontal a:visited{text-decoration:none}.devui-menu-vertical ul,.devui-menu-vertical li,.devui-menu-horizontal ul,.devui-menu-horizontal li{list-style:none;white-space:nowrap}.devui-menu-horizontal{display:flex;box-sizing:border-box;line-height:var(--devui-line-height-base, 1.5);background:var(--devui-global-bg-normal);padding:14px 20px}.devui-menu-horizontal .devui-menu-item{display:flex;position:relative;box-sizing:content-box;padding:0 20px!important;line-height:24px;cursor:pointer}.devui-menu-horizontal .devui-menu-item:after{content:"";display:block;position:absolute;left:20px;right:20px;bottom:0;width:auto;height:2px}.devui-menu-horizontal :after{transition:all var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1));background:transparent}.devui-menu-horizontal .devui-menu-item-select .devui-submenu-title-content,.devui-menu-horizontal .devui-menu-active-parent .devui-submenu-title-content{color:var(--devui-menu-item-hover)}.devui-menu-horizontal .devui-menu-item-select:after,.devui-menu-horizontal .devui-menu-active-parent:after{display:block;position:absolute;left:20px;right:20px;bottom:0;width:auto;height:2px;content:"";opacity:1;background:var(--devui-brand, #5e7ce0)}.devui-menu-horizontal .devui-menu-item span,.devui-menu-horizontal .devui-menu-item a{color:var(--devui-text, #252b3a)}.devui-menu-horizontal .devui-menu-item:hover span,.devui-menu-horizontal .devui-menu-item:hover a{color:var(--devui-brand, #5e7ce0)}.devui-menu-horizontal .devui-menu-item:hover:after{background:var(--devui-brand, #5e7ce0)}.devui-menu-horizontal .devui-submenu{margin:0;padding:0;position:relative}.devui-menu-horizontal .devui-submenu div.devui-submenu-title{padding:0 20px}.devui-menu-horizontal .devui-submenu div.devui-submenu-title span{margin:0}.devui-menu-horizontal .devui-submenu div.devui-submenu-title .icon-chevron-up,.devui-menu-horizontal .devui-submenu div.devui-submenu-title .icon-chevron-right{transition:transform var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-menu-horizontal .devui-submenu:after{content:"";display:block;position:absolute;left:20px;right:20px;bottom:0;width:auto;height:2px}.devui-menu-horizontal .devui-submenu:hover{cursor:pointer}.devui-menu-horizontal .devui-submenu:hover:after{background:var(--devui-brand, #5e7ce0)}.devui-menu-horizontal .devui-submenu:hover>div>i.icon-chevron-up{transform:rotate(180deg)}.devui-menu-horizontal .devui-submenu:hover>div>i.icon-chevron-right{transform:rotate(180deg)}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper{transition:all var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1)),left 0 linear;background:var(--devui-global-bg-normal);z-index:var(--devui-z-index-modal, 1050)}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-show{transition:all var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1));opacity:1;visibility:visible;max-height:100vh;padding:10px 0!important;border-radius:8px;position:absolute}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-show .devui-menu-item{margin-top:5px}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-show .devui-submenu{margin:5px 0;padding:0 20px!important}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-show .devui-submenu div.devui-submenu-title{padding:0!important}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-show .devui-menu-item-horizontal-wrapper-level .devui-submenu{padding:0 20px!important}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-hidden{transition:all var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1));visibility:hidden;position:absolute;padding:0!important;max-height:0;overflow:hidden;opacity:0}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-hidden .devui-menu-item{margin-top:5px}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-hidden .devui-submenu{margin:5px 0;padding:0 20px!important}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-hidden .devui-submenu div.devui-submenu-title{padding:0!important}.devui-menu-horizontal .devui-menu-item-disabled span,.devui-menu-horizontal .devui-menu-item-disabled a,.devui-menu-horizontal .devui-submenu-disabled span,.devui-menu-horizontal .devui-submenu-disabled a{color:var(--devui-menu-disabled)!important;cursor:not-allowed}.devui-menu-horizontal .devui-menu-item-disabled:after,.devui-menu-horizontal .devui-submenu-disabled:after{content:unset!important}.devui-menu-horizontal .devui-menu-item-disabled+.devui-menu-item-horizontal-wrapper,.devui-menu-horizontal .devui-submenu-disabled+.devui-menu-item-horizontal-wrapper{display:none}.devui-submenu-menu-item-vertical-wrapper{overflow:hidden}.devui-submenu-menu-item{color:var(--devui-menu-item)}.devui-menu-vertical{padding:0;transition:width var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1)),padding var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1));border-right:var(--devui-line, #d7d8da) 1px solid;background:var(--devui-area, #f8f8f8)!important}.devui-menu-vertical :after{transition:all var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1));background:transparent}.devui-menu-vertical .layer_1{margin:0!important}.devui-menu-vertical .layer_2>div.devui-submenu-title{margin:0!important;background:var(--devui-block, #ffffff)}.devui-menu-vertical.devui-menu-collapsed .devui-menu-icon{margin:auto}.devui-menu-vertical.devui-menu-collapsed ul li{display:none!important}.devui-menu-vertical.devui-menu-collapsed .devui-submenu div.devui-submenu-title .devui-menu-icon{margin:auto}.devui-menu-vertical .devui-menu-item-vertical-wrapper{padding-left:0!important}.devui-menu-vertical .devui-menu-item{width:100%;height:40px;flex-grow:1;line-height:40px;cursor:pointer;color:var(--devui-menu-item);background:var(--devui-block, #ffffff);display:flex}.devui-menu-vertical .devui-menu-item span:nth-child(2){text-align:left}.devui-menu-vertical div:not(.devui-submenu-menu-item-vertical-wrapper){display:flex;flex:auto}.devui-menu-vertical .devui-menu-item:after{display:block;position:absolute;right:0;top:0;transform:scaleX(0);content:"";opacity:1;background:var(--devui-primary-hover, #5e7ce0)}.devui-menu-vertical ul.devui-submenu{margin:0;padding:0}.devui-menu-vertical ul.devui-submenu .devui-menu-item{display:flex;background:var(--devui-area, #f8f8f8)}.devui-menu-vertical ul.devui-submenu .devui-menu-item>span{flex:auto;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;transition:all var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1));color:var(--devui-menu-item)}.devui-menu-vertical ul.devui-submenu div.devui-submenu-title{display:flex;cursor:pointer;width:100%;height:40px;margin:4px 0;line-height:40px;padding-left:18px;align-items:center;color:var(--devui-menu-item)}.devui-menu-vertical ul.devui-submenu div.devui-submenu-title:nth-child(1){font-size:var(--devui-font-size-lg, 14px)}.devui-menu-vertical ul.devui-submenu div.devui-submenu-title span.devui-submenu-title-content{font-size:var(--devui-font-size-lg, 14px);flex:auto;color:var(--devui-menu-item)}.devui-menu-vertical ul.devui-submenu div.devui-submenu-title span.devui-menu-icon{text-align:center}.devui-menu-vertical ul.devui-submenu div.devui-submenu-title .icon-chevron-up{transition:transform var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-menu-vertical ul.devui-submenu div.devui-submenu-title i.icon-chevron-up.is-opened{transform:rotate(180deg)}.devui-menu-vertical ul.devui-submenu .devui-submenu-title:hover span{color:var(--devui-menu-item-hover)!important}.devui-menu-vertical ul.devui-submenu .devui-menu-item:hover span{color:var(--devui-menu-item-hover)}.devui-menu-vertical ul.devui-submenu .devui-menu-item-select *{color:var(--devui-menu-item-hover)!important}.devui-menu-vertical .devui-menu-item-select{background:var(--devui-primary-bg, #f2f5fc)!important;position:relative}.devui-menu-vertical .devui-menu-item-select span,.devui-menu-vertical .devui-menu-item-select a{color:var(--devui-menu-item-hover)}.devui-menu-vertical .devui-menu-item-select:after{display:block;position:absolute;right:0;top:0;height:100%;width:4px;content:"";opacity:1;background:var(--devui-brand, #5e7ce0);transform:scaleX(1)}.devui-menu-vertical .devui-menu-item:hover{color:var(--devui-menu-item-hover)}.devui-menu-vertical li.devui-menu-item,.devui-menu-vertical div.devui-submenu-title{white-space:nowrap;overflow:hidden}.devui-menu-vertical li.devui-menu-item span:nth-child(2),.devui-menu-vertical div.devui-submenu-title span:nth-child(2){overflow:hidden;text-overflow:ellipsis}.devui-menu-vertical li.devui-menu-item span:nth-child(2) span,.devui-menu-vertical div.devui-submenu-title span:nth-child(2) span{overflow:hidden;text-overflow:ellipsis}.devui-menu-vertical .devui-menu-item-isCollapsed{width:fit-content}.devui-menu-vertical .devui-menu-item-isCollapsed .devui-menu-icon{margin:auto}.devui-menu-vertical ul li~ul>div{margin-top:0!important}.devui-menu-vertical .devui-menu-item-disabled *,.devui-menu-vertical .devui-submenu-disabled *{color:var(--devui-menu-disabled)!important;cursor:not-allowed!important;background:var(--devui-block, #ffffff)!important}.devui-menu-vertical .devui-menu-item-disabled:after,.devui-menu-vertical .devui-submenu-disabled:after{content:unset}.devui-menu-icon+span{margin-left:10px}.devui-menu-item-disabled:hover,.devui-submenu-disabled:hover{color:var(--devui-menu-disabled)!important;cursor:not-allowed!important}.devui-submenu-disabled:hover span{color:var(--devui-menu-disabled)!important}.fade-enter-active,.fade-leave-active{transition:opacity var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1))}.fade-leave-to{display:none}.fade-enter-from,.fade-leave-to{opacity:0}.devui-menu-item-disabled,.devui-menu-item-disabled.devui-menu-vertical .devui-menu-item-disabled.devui-menu-item-select .devui-submenu-disabled,.devui-submenu-disabled.devui-menu-vertical,.devui-submenu-disabled.devui-menu-item-select{color:var(--devui-menu-disabled)!important;cursor:not-allowed!important}
@@ -0,0 +1,7 @@
1
+ import { App } from 'vue';
2
+ declare function install(app: App): void
3
+ declare const _default: {
4
+ install: typeof install;
5
+ version: string;
6
+ };
7
+ export default _default;
@@ -0,0 +1,533 @@
1
+ import { defineComponent, toRefs, computed, createVNode, resolveDynamicComponent, mergeProps, watch, Transition, shallowReactive, createApp, onUnmounted, isVNode, reactive } from "vue";
2
+ const isString = (val) => typeof val === "string";
3
+ const DEFAULT_PREFIX = "icon";
4
+ const iconProps = {
5
+ name: {
6
+ type: String,
7
+ default: "",
8
+ required: true
9
+ },
10
+ size: {
11
+ type: [Number, String],
12
+ default: "inherit"
13
+ },
14
+ color: {
15
+ type: String,
16
+ default: "inherit"
17
+ },
18
+ component: {
19
+ type: Object,
20
+ default: null
21
+ },
22
+ classPrefix: {
23
+ type: String,
24
+ default: DEFAULT_PREFIX
25
+ },
26
+ operable: {
27
+ type: Boolean,
28
+ default: false
29
+ },
30
+ disabled: {
31
+ type: Boolean,
32
+ default: false
33
+ },
34
+ rotate: {
35
+ type: [Number, String]
36
+ }
37
+ };
38
+ const svgIconProps = {
39
+ name: {
40
+ type: String,
41
+ default: "",
42
+ required: true
43
+ },
44
+ color: {
45
+ type: String,
46
+ default: "inherit"
47
+ },
48
+ size: {
49
+ type: [Number, String],
50
+ default: "inherit"
51
+ }
52
+ };
53
+ function createBem(namespace, element, modifier) {
54
+ let cls = namespace;
55
+ if (element) {
56
+ cls += `__${element}`;
57
+ }
58
+ if (modifier) {
59
+ cls += `--${modifier}`;
60
+ }
61
+ return cls;
62
+ }
63
+ function useNamespace(block, needDot = false) {
64
+ const namespace = needDot ? `.devui-${block}` : `devui-${block}`;
65
+ const b = () => createBem(namespace);
66
+ const e = (element) => element ? createBem(namespace, element) : "";
67
+ const m = (modifier) => modifier ? createBem(namespace, "", modifier) : "";
68
+ const em = (element, modifier) => element && modifier ? createBem(namespace, element, modifier) : "";
69
+ return {
70
+ b,
71
+ e,
72
+ m,
73
+ em
74
+ };
75
+ }
76
+ var icon = "";
77
+ var svgIcon = defineComponent({
78
+ name: "DSvgIcon",
79
+ props: svgIconProps,
80
+ setup(props) {
81
+ const {
82
+ name,
83
+ color,
84
+ size
85
+ } = toRefs(props);
86
+ const ns2 = useNamespace("svg-icon");
87
+ const iconName = computed(() => `#icon-${name.value}`);
88
+ const iconSize = computed(() => {
89
+ return typeof size.value === "number" ? `${size.value}px` : size.value;
90
+ });
91
+ const styles = {
92
+ width: iconSize.value,
93
+ height: iconSize.value
94
+ };
95
+ return () => {
96
+ return createVNode("svg", {
97
+ "class": ns2.b(),
98
+ "style": styles
99
+ }, [createVNode("use", {
100
+ "xlink:href": iconName.value,
101
+ "fill": color.value
102
+ }, null)]);
103
+ };
104
+ }
105
+ });
106
+ function isUrl(value) {
107
+ return /^((http|https):)?\/\//.test(value);
108
+ }
109
+ function useIconDom(props, ctx) {
110
+ const {
111
+ component,
112
+ name,
113
+ size,
114
+ color,
115
+ classPrefix,
116
+ rotate
117
+ } = toRefs(props);
118
+ const ns2 = useNamespace("icon");
119
+ const iconSize = computed(() => {
120
+ return typeof size.value === "number" ? `${size.value}px` : size.value;
121
+ });
122
+ const IconComponent = component.value ? resolveDynamicComponent(component.value) : resolveDynamicComponent(svgIcon);
123
+ const imgIconDom = () => {
124
+ return createVNode("img", mergeProps({
125
+ "src": name.value,
126
+ "alt": name.value.split("/")[name.value.split("/").length - 1],
127
+ "class": [(rotate == null ? void 0 : rotate.value) === "infinite" && ns2.m("spin")],
128
+ "style": {
129
+ width: iconSize.value || "",
130
+ transform: `rotate(${rotate == null ? void 0 : rotate.value}deg)`,
131
+ verticalAlign: "middle"
132
+ }
133
+ }, ctx.attrs), null);
134
+ };
135
+ const svgIconDom = () => {
136
+ return createVNode(IconComponent, mergeProps({
137
+ "name": name.value,
138
+ "color": color.value,
139
+ "size": iconSize.value,
140
+ "class": [(rotate == null ? void 0 : rotate.value) === "infinite" && ns2.m("spin")],
141
+ "style": {
142
+ transform: `rotate(${rotate == null ? void 0 : rotate.value}deg)`
143
+ }
144
+ }, ctx.attrs), null);
145
+ };
146
+ const fontIconDom = () => {
147
+ const fontIconClass = /^icon-/.test(name.value) ? name.value : `${classPrefix.value}-${name.value}`;
148
+ return createVNode("i", mergeProps({
149
+ "class": [classPrefix.value, fontIconClass, (rotate == null ? void 0 : rotate.value) === "infinite" && ns2.m("spin")],
150
+ "style": {
151
+ fontSize: iconSize.value,
152
+ color: color.value,
153
+ transform: `rotate(${rotate == null ? void 0 : rotate.value}deg)`
154
+ }
155
+ }, ctx.attrs), null);
156
+ };
157
+ const iconDom = () => {
158
+ return component.value ? svgIconDom() : isUrl(name.value) ? imgIconDom() : fontIconDom();
159
+ };
160
+ return {
161
+ iconDom
162
+ };
163
+ }
164
+ var Icon = defineComponent({
165
+ name: "DIcon",
166
+ props: iconProps,
167
+ emits: ["click"],
168
+ setup(props, ctx) {
169
+ const {
170
+ disabled,
171
+ operable
172
+ } = toRefs(props);
173
+ const {
174
+ iconDom
175
+ } = useIconDom(props, ctx);
176
+ const ns2 = useNamespace("icon");
177
+ const wrapClassed = computed(() => ({
178
+ [ns2.e("container")]: true,
179
+ [ns2.m("disabled")]: disabled.value,
180
+ [ns2.m("operable")]: operable.value
181
+ }));
182
+ const onClick = (e) => {
183
+ if (disabled.value) {
184
+ return;
185
+ }
186
+ ctx.emit("click", e);
187
+ };
188
+ return () => {
189
+ var _a, _b, _c, _d;
190
+ return createVNode("div", {
191
+ "class": wrapClassed.value,
192
+ "onClick": onClick
193
+ }, [(_b = (_a = ctx.slots).prefix) == null ? void 0 : _b.call(_a), iconDom(), (_d = (_c = ctx.slots).suffix) == null ? void 0 : _d.call(_c)]);
194
+ };
195
+ }
196
+ });
197
+ var iconGroup = "";
198
+ defineComponent({
199
+ name: "DIconGroup",
200
+ setup(_, ctx) {
201
+ const ns2 = useNamespace("icon-group");
202
+ return () => {
203
+ var _a, _b;
204
+ return createVNode("div", {
205
+ "class": ns2.b()
206
+ }, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a)]);
207
+ };
208
+ }
209
+ });
210
+ var Close = defineComponent({
211
+ emits: ["click"],
212
+ setup(props, {
213
+ emit
214
+ }) {
215
+ const ns2 = useNamespace("message");
216
+ return () => createVNode("div", {
217
+ "class": ns2.e("icon-close"),
218
+ "onClick": (e) => emit("click", e)
219
+ }, [createVNode(Icon, {
220
+ "name": "close",
221
+ "size": "14px"
222
+ }, null)]);
223
+ }
224
+ });
225
+ const messageProps = {
226
+ id: {
227
+ type: String,
228
+ default: ""
229
+ },
230
+ visible: {
231
+ type: Boolean,
232
+ default: false
233
+ },
234
+ message: {
235
+ type: String,
236
+ default: ""
237
+ },
238
+ type: {
239
+ type: String,
240
+ default: "normal"
241
+ },
242
+ bordered: {
243
+ type: Boolean,
244
+ default: true
245
+ },
246
+ shadow: {
247
+ type: Boolean,
248
+ default: true
249
+ },
250
+ duration: {
251
+ type: Number,
252
+ default: 3e3
253
+ },
254
+ showClose: {
255
+ type: Boolean,
256
+ default: false
257
+ },
258
+ onClose: {
259
+ type: Function
260
+ }
261
+ };
262
+ const ns = useNamespace("message");
263
+ function SuccessIcon() {
264
+ return createVNode("svg", {
265
+ "viewBox": "0 0 1024 1024",
266
+ "xmlns": "http://www.w3.org/2000/svg",
267
+ "class": ns.e("icon")
268
+ }, [createVNode("path", {
269
+ "fill": "currentColor",
270
+ "d": "M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.272 38.272 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336L456.192 600.384z"
271
+ }, null)]);
272
+ }
273
+ function WarningIcon() {
274
+ return createVNode("svg", {
275
+ "viewBox": "0 0 1024 1024",
276
+ "xmlns": "http://www.w3.org/2000/svg",
277
+ "class": ns.e("icon")
278
+ }, [createVNode("path", {
279
+ "fill": "currentColor",
280
+ "d": "M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 192a58.432 58.432 0 0 0-58.24 63.744l23.36 256.384a35.072 35.072 0 0 0 69.76 0l23.296-256.384A58.432 58.432 0 0 0 512 256zm0 512a51.2 51.2 0 1 0 0-102.4 51.2 51.2 0 0 0 0 102.4z"
281
+ }, null)]);
282
+ }
283
+ function InfoIcon() {
284
+ return createVNode("svg", {
285
+ "viewBox": "0 0 1024 1024",
286
+ "xmlns": "http://www.w3.org/2000/svg",
287
+ "class": ns.e("icon")
288
+ }, [createVNode("path", {
289
+ "fill": "currentColor",
290
+ "d": "M512 64a448 448 0 1 1 0 896.064A448 448 0 0 1 512 64zm67.2 275.072c33.28 0 60.288-23.104 60.288-57.344s-27.072-57.344-60.288-57.344c-33.28 0-60.16 23.104-60.16 57.344s26.88 57.344 60.16 57.344zM590.912 699.2c0-6.848 2.368-24.64 1.024-34.752l-52.608 60.544c-10.88 11.456-24.512 19.392-30.912 17.28a12.992 12.992 0 0 1-8.256-14.72l87.68-276.992c7.168-35.136-12.544-67.2-54.336-71.296-44.096 0-108.992 44.736-148.48 101.504 0 6.784-1.28 23.68.064 33.792l52.544-60.608c10.88-11.328 23.552-19.328 29.952-17.152a12.8 12.8 0 0 1 7.808 16.128L388.48 728.576c-10.048 32.256 8.96 63.872 55.04 71.04 67.84 0 107.904-43.648 147.456-100.416z"
291
+ }, null)]);
292
+ }
293
+ function ErrorIcon() {
294
+ return createVNode("svg", {
295
+ "viewBox": "0 0 1024 1024",
296
+ "xmlns": "http://www.w3.org/2000/svg",
297
+ "class": ns.e("icon")
298
+ }, [createVNode("path", {
299
+ "fill": "currentColor",
300
+ "d": "M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336L512 457.664z"
301
+ }, null)]);
302
+ }
303
+ var message$1 = "";
304
+ var Message$1 = defineComponent({
305
+ name: "DMessage",
306
+ props: messageProps,
307
+ emits: ["destroy", "close"],
308
+ setup(props, {
309
+ emit,
310
+ slots
311
+ }) {
312
+ const {
313
+ visible,
314
+ message: message2,
315
+ type,
316
+ bordered,
317
+ shadow,
318
+ showClose
319
+ } = toRefs(props);
320
+ const ns2 = useNamespace("message");
321
+ let timer = null;
322
+ let timestamp;
323
+ const handleDestroy = () => {
324
+ emit("destroy");
325
+ };
326
+ const close = () => {
327
+ var _a;
328
+ timer && clearTimeout(timer);
329
+ timer = null;
330
+ (_a = props.onClose) == null ? void 0 : _a.call(props);
331
+ };
332
+ const interrupt = () => {
333
+ if (timer) {
334
+ clearTimeout(timer);
335
+ timer = null;
336
+ }
337
+ };
338
+ const removeReset = () => {
339
+ if (props.visible) {
340
+ const remainTime = props.duration - (Date.now() - timestamp);
341
+ timer = setTimeout(close, remainTime);
342
+ }
343
+ };
344
+ watch(() => props.visible, (val) => {
345
+ if (val) {
346
+ timestamp = Date.now();
347
+ if (props.duration) {
348
+ timer = setTimeout(close, props.duration);
349
+ }
350
+ }
351
+ });
352
+ const classes = computed(() => ({
353
+ [ns2.b()]: true,
354
+ [ns2.m(type.value)]: true
355
+ }));
356
+ const lastOffset = computed(() => getLastOffset(props.id));
357
+ const styles = computed(() => {
358
+ const messageStyles = {};
359
+ if (!bordered.value) {
360
+ messageStyles["border"] = "none";
361
+ }
362
+ if (!shadow.value) {
363
+ messageStyles["box-shadow"] = "none";
364
+ }
365
+ return {
366
+ ...messageStyles,
367
+ top: `${lastOffset.value}px`
368
+ };
369
+ });
370
+ const renderIcon = computed(() => {
371
+ const iconClasses = computed(() => ({
372
+ [ns2.e("image")]: true,
373
+ [ns2.em("image", type.value)]: true
374
+ }));
375
+ return !(!type.value || type.value === "normal") && createVNode("span", {
376
+ "class": iconClasses.value
377
+ }, [type.value && (type.value === "success" && createVNode(SuccessIcon, null, null) || type.value === "info" && createVNode(InfoIcon, null, null) || type.value === "warning" && createVNode(WarningIcon, null, null) || type.value === "error" && createVNode(ErrorIcon, null, null))]);
378
+ });
379
+ const renderText = computed(() => {
380
+ var _a;
381
+ const textClasses = computed(() => ({
382
+ [ns2.e("content")]: true,
383
+ [ns2.em("content", type.value)]: true
384
+ }));
385
+ return createVNode("span", {
386
+ "class": textClasses.value
387
+ }, [message2.value ? message2.value : (_a = slots.default) == null ? void 0 : _a.call(slots)]);
388
+ });
389
+ const renderClose = computed(() => {
390
+ return showClose.value && createVNode("span", {
391
+ "class": [ns2.e("close")],
392
+ "onClick": close
393
+ }, [createVNode(Close, null, null)]);
394
+ });
395
+ return () => {
396
+ return createVNode(Transition, {
397
+ "name": "message-fade",
398
+ "onAfterLeave": handleDestroy
399
+ }, {
400
+ default: () => [visible.value && createVNode("div", {
401
+ "class": classes.value,
402
+ "style": {
403
+ ...styles.value
404
+ },
405
+ "onMouseenter": interrupt,
406
+ "onMouseleave": removeReset
407
+ }, [renderIcon.value, renderText.value, renderClose.value])]
408
+ });
409
+ };
410
+ }
411
+ });
412
+ function _isSlot(s) {
413
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
414
+ }
415
+ const instances = shallowReactive([]);
416
+ const getLastOffset = (id) => {
417
+ const idx = instances.findIndex((instance) => instance.id === id);
418
+ return idx * 65 + 80;
419
+ };
420
+ const deleteInstance = (id) => {
421
+ const idx = instances.findIndex((instance) => instance.id === id);
422
+ if (idx !== -1) {
423
+ instances.splice(idx, 1);
424
+ }
425
+ return idx;
426
+ };
427
+ const initInstance = (id, props, message2) => {
428
+ const container = document.createElement("div");
429
+ container.id = id;
430
+ const app = createApp({
431
+ setup() {
432
+ onUnmounted(() => {
433
+ document.body.removeChild(container);
434
+ });
435
+ return () => createVNode(Message$1, mergeProps(props, {
436
+ "id": id,
437
+ "onDestroy": app.unmount
438
+ }), _isSlot(message2) ? message2 : {
439
+ default: () => [message2]
440
+ });
441
+ }
442
+ });
443
+ document.body.appendChild(container);
444
+ app.mount(container);
445
+ return {
446
+ id,
447
+ props
448
+ };
449
+ };
450
+ const defaultOptions = {
451
+ duration: 3e3,
452
+ type: "normal"
453
+ };
454
+ const normalizeOptions = (params) => {
455
+ const options = !params || isString(params) ? {
456
+ message: params
457
+ } : params;
458
+ const normalized = {
459
+ ...defaultOptions,
460
+ ...options
461
+ };
462
+ return normalized;
463
+ };
464
+ let seed = 0;
465
+ function open(options) {
466
+ const originOnClose = options.onClose || null;
467
+ const messageContent = options.message;
468
+ delete options.message;
469
+ const props = reactive({
470
+ ...defaultOptions,
471
+ ...options,
472
+ onClose: () => {
473
+ props.visible = false;
474
+ deleteInstance(props.id);
475
+ originOnClose == null ? void 0 : originOnClose();
476
+ }
477
+ });
478
+ seed++;
479
+ const id = `message_${seed}`;
480
+ props.id = id;
481
+ const messageContext = initInstance(id, props, messageContent);
482
+ instances.push(messageContext);
483
+ props.visible = true;
484
+ }
485
+ function message(params) {
486
+ const options = normalizeOptions(params);
487
+ open({
488
+ ...options
489
+ });
490
+ }
491
+ function success(params) {
492
+ const options = normalizeOptions(params);
493
+ open({
494
+ ...options,
495
+ type: "success"
496
+ });
497
+ }
498
+ function error(params) {
499
+ const options = normalizeOptions(params);
500
+ open({
501
+ ...options,
502
+ type: "error"
503
+ });
504
+ }
505
+ function warning(params) {
506
+ const options = normalizeOptions(params);
507
+ open({
508
+ ...options,
509
+ type: "warning"
510
+ });
511
+ }
512
+ function info(params) {
513
+ const options = normalizeOptions(params);
514
+ open({
515
+ ...options,
516
+ type: "info"
517
+ });
518
+ }
519
+ const Message = Object.assign(message, {
520
+ success,
521
+ error,
522
+ warning,
523
+ info
524
+ });
525
+ var index = {
526
+ title: "Message \u5168\u5C40\u63D0\u793A",
527
+ category: "\u53CD\u9988",
528
+ status: "100%",
529
+ install(app) {
530
+ app.config.globalProperties.$message = Message;
531
+ }
532
+ };
533
+ export { Message, index as default, messageProps };
@@ -0,0 +1 @@
1
+ (function(f,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(f=typeof globalThis!="undefined"?globalThis:f||self,e(f.index={},f.Vue))})(this,function(f,e){"use strict";const M=n=>typeof n=="string",P={name:{type:String,default:"",required:!0},size:{type:[Number,String],default:"inherit"},color:{type:String,default:"inherit"},component:{type:Object,default:null},classPrefix:{type:String,default:"icon"},operable:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},rotate:{type:[Number,String]}},T={name:{type:String,default:"",required:!0},color:{type:String,default:"inherit"},size:{type:[Number,String],default:"inherit"}};function w(n,t,s){let o=n;return t&&(o+=`__${t}`),s&&(o+=`--${s}`),o}function p(n,t=!1){const s=t?`.devui-${n}`:`devui-${n}`;return{b:()=>w(s),e:l=>l?w(s,l):"",m:l=>l?w(s,"",l):"",em:(l,u)=>l&&u?w(s,l,u):""}}var ae="",B=e.defineComponent({name:"DSvgIcon",props:T,setup(n){const{name:t,color:s,size:o}=e.toRefs(n),c=p("svg-icon"),a=e.computed(()=>`#icon-${t.value}`),m=e.computed(()=>typeof o.value=="number"?`${o.value}px`:o.value),l={width:m.value,height:m.value};return()=>e.createVNode("svg",{class:c.b(),style:l},[e.createVNode("use",{"xlink:href":a.value,fill:s.value},null)])}});function L(n){return/^((http|https):)?\/\//.test(n)}function _(n,t){const{component:s,name:o,size:c,color:a,classPrefix:m,rotate:l}=e.toRefs(n),u=p("icon"),r=e.computed(()=>typeof c.value=="number"?`${c.value}px`:c.value),d=s.value?e.resolveDynamicComponent(s.value):e.resolveDynamicComponent(B),g=()=>e.createVNode("img",e.mergeProps({src:o.value,alt:o.value.split("/")[o.value.split("/").length-1],class:[(l==null?void 0:l.value)==="infinite"&&u.m("spin")],style:{width:r.value||"",transform:`rotate(${l==null?void 0:l.value}deg)`,verticalAlign:"middle"}},t.attrs),null),C=()=>e.createVNode(d,e.mergeProps({name:o.value,color:a.value,size:r.value,class:[(l==null?void 0:l.value)==="infinite"&&u.m("spin")],style:{transform:`rotate(${l==null?void 0:l.value}deg)`}},t.attrs),null),b=()=>{const V=/^icon-/.test(o.value)?o.value:`${m.value}-${o.value}`;return e.createVNode("i",e.mergeProps({class:[m.value,V,(l==null?void 0:l.value)==="infinite"&&u.m("spin")],style:{fontSize:r.value,color:a.value,transform:`rotate(${l==null?void 0:l.value}deg)`}},t.attrs),null)};return{iconDom:()=>s.value?C():L(o.value)?g():b()}}var k=e.defineComponent({name:"DIcon",props:P,emits:["click"],setup(n,t){const{disabled:s,operable:o}=e.toRefs(n),{iconDom:c}=_(n,t),a=p("icon"),m=e.computed(()=>({[a.e("container")]:!0,[a.m("disabled")]:s.value,[a.m("operable")]:o.value})),l=u=>{s.value||t.emit("click",u)};return()=>{var u,r,d,g;return e.createVNode("div",{class:m.value,onClick:l},[(r=(u=t.slots).prefix)==null?void 0:r.call(u),c(),(g=(d=t.slots).suffix)==null?void 0:g.call(d)])}}}),ce="";e.defineComponent({name:"DIconGroup",setup(n,t){const s=p("icon-group");return()=>{var o,c;return e.createVNode("div",{class:s.b()},[(c=(o=t.slots).default)==null?void 0:c.call(o)])}}});var A=e.defineComponent({emits:["click"],setup(n,{emit:t}){const s=p("message");return()=>e.createVNode("div",{class:s.e("icon-close"),onClick:o=>t("click",o)},[e.createVNode(k,{name:"close",size:"14px"},null)])}});const I={id:{type:String,default:""},visible:{type:Boolean,default:!1},message:{type:String,default:""},type:{type:String,default:"normal"},bordered:{type:Boolean,default:!0},shadow:{type:Boolean,default:!0},duration:{type:Number,default:3e3},showClose:{type:Boolean,default:!1},onClose:{type:Function}},N=p("message");function O(){return e.createVNode("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",class:N.e("icon")},[e.createVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.272 38.272 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336L456.192 600.384z"},null)])}function R(){return e.createVNode("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",class:N.e("icon")},[e.createVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 192a58.432 58.432 0 0 0-58.24 63.744l23.36 256.384a35.072 35.072 0 0 0 69.76 0l23.296-256.384A58.432 58.432 0 0 0 512 256zm0 512a51.2 51.2 0 1 0 0-102.4 51.2 51.2 0 0 0 0 102.4z"},null)])}function j(){return e.createVNode("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",class:N.e("icon")},[e.createVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896.064A448 448 0 0 1 512 64zm67.2 275.072c33.28 0 60.288-23.104 60.288-57.344s-27.072-57.344-60.288-57.344c-33.28 0-60.16 23.104-60.16 57.344s26.88 57.344 60.16 57.344zM590.912 699.2c0-6.848 2.368-24.64 1.024-34.752l-52.608 60.544c-10.88 11.456-24.512 19.392-30.912 17.28a12.992 12.992 0 0 1-8.256-14.72l87.68-276.992c7.168-35.136-12.544-67.2-54.336-71.296-44.096 0-108.992 44.736-148.48 101.504 0 6.784-1.28 23.68.064 33.792l52.544-60.608c10.88-11.328 23.552-19.328 29.952-17.152a12.8 12.8 0 0 1 7.808 16.128L388.48 728.576c-10.048 32.256 8.96 63.872 55.04 71.04 67.84 0 107.904-43.648 147.456-100.416z"},null)])}function E(){return e.createVNode("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",class:N.e("icon")},[e.createVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336L512 457.664z"},null)])}var re="",F=e.defineComponent({name:"DMessage",props:I,emits:["destroy","close"],setup(n,{emit:t,slots:s}){const{visible:o,message:c,type:a,bordered:m,shadow:l,showClose:u}=e.toRefs(n),r=p("message");let d=null,g;const C=()=>{t("destroy")},b=()=>{var i;d&&clearTimeout(d),d=null,(i=n.onClose)==null||i.call(n)},D=()=>{d&&(clearTimeout(d),d=null)},V=()=>{if(n.visible){const i=n.duration-(Date.now()-g);d=setTimeout(b,i)}};e.watch(()=>n.visible,i=>{i&&(g=Date.now(),n.duration&&(d=setTimeout(b,n.duration)))});const Z=e.computed(()=>({[r.b()]:!0,[r.m(a.value)]:!0})),ee=e.computed(()=>q(n.id)),ne=e.computed(()=>{const i={};return m.value||(i.border="none"),l.value||(i["box-shadow"]="none"),{...i,top:`${ee.value}px`}}),te=e.computed(()=>{const i=e.computed(()=>({[r.e("image")]:!0,[r.em("image",a.value)]:!0}));return!(!a.value||a.value==="normal")&&e.createVNode("span",{class:i.value},[a.value&&(a.value==="success"&&e.createVNode(O,null,null)||a.value==="info"&&e.createVNode(j,null,null)||a.value==="warning"&&e.createVNode(R,null,null)||a.value==="error"&&e.createVNode(E,null,null))])}),oe=e.computed(()=>{var $;const i=e.computed(()=>({[r.e("content")]:!0,[r.em("content",a.value)]:!0}));return e.createVNode("span",{class:i.value},[c.value?c.value:($=s.default)==null?void 0:$.call(s)])}),se=e.computed(()=>u.value&&e.createVNode("span",{class:[r.e("close")],onClick:b},[e.createVNode(A,null,null)]));return()=>e.createVNode(e.Transition,{name:"message-fade",onAfterLeave:C},{default:()=>[o.value&&e.createVNode("div",{class:Z.value,style:{...ne.value},onMouseenter:D,onMouseleave:V},[te.value,oe.value,se.value])]})}});function U(n){return typeof n=="function"||Object.prototype.toString.call(n)==="[object Object]"&&!e.isVNode(n)}const h=e.shallowReactive([]),q=n=>h.findIndex(s=>s.id===n)*65+80,G=n=>{const t=h.findIndex(s=>s.id===n);return t!==-1&&h.splice(t,1),t},X=(n,t,s)=>{const o=document.createElement("div");o.id=n;const c=e.createApp({setup(){return e.onUnmounted(()=>{document.body.removeChild(o)}),()=>e.createVNode(F,e.mergeProps(t,{id:n,onDestroy:c.unmount}),U(s)?s:{default:()=>[s]})}});return document.body.appendChild(o),c.mount(o),{id:n,props:t}},x={duration:3e3,type:"normal"},v=n=>{const t=!n||M(n)?{message:n}:n;return{...x,...t}};let z=0;function y(n){const t=n.onClose||null,s=n.message;delete n.message;const o=e.reactive({...x,...n,onClose:()=>{o.visible=!1,G(o.id),t==null||t()}});z++;const c=`message_${z}`;o.id=c;const a=X(c,o,s);h.push(a),o.visible=!0}function W(n){const t=v(n);y({...t})}function H(n){const t=v(n);y({...t,type:"success"})}function J(n){const t=v(n);y({...t,type:"error"})}function K(n){const t=v(n);y({...t,type:"warning"})}function Q(n){const t=v(n);y({...t,type:"info"})}const S=Object.assign(W,{success:H,error:J,warning:K,info:Q});var Y={title:"Message \u5168\u5C40\u63D0\u793A",category:"\u53CD\u9988",status:"100%",install(n){n.config.globalProperties.$message=S}};f.Message=S,f.default=Y,f.messageProps=I,Object.defineProperties(f,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
@@ -0,0 +1,7 @@
1
+ {
2
+ "name": "message",
3
+ "version": "0.0.0",
4
+ "main": "index.umd.js",
5
+ "module": "index.es.js",
6
+ "style": "style.css"
7
+ }
@@ -0,0 +1 @@
1
+ .devui-icon__container{display:inline-block;color:var(--devui-icon-fill, #71757f)}.devui-icon__container>*:not(:last-child){vertical-align:middle;margin-right:8px}.devui-icon__container i{vertical-align:middle;transition:all var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-icon--disabled{color:var(--devui-disabled-text, #adb0b8);cursor:not-allowed}.devui-icon--disabled i{color:var(--devui-disabled-text, #adb0b8)}.devui-icon--operable:not(.devui-icon--disabled){cursor:pointer;transition:color var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-icon--operable:not(.devui-icon--disabled) i{cursor:pointer}.devui-icon--operable:hover:not(.devui-icon--disabled){color:var(--devui-icon-fill-hover, #252b3a)}.devui-icon--operable:hover:not(.devui-icon--disabled).devui-icon__container{background-color:var(--devui-icon-background-hover, var(--devui-list-item-hover-bg, #f2f2f3))}.devui-icon--operable:hover:not(.devui-icon--disabled) i{color:var(--devui-icon-fill-hover, #252b3a)}.devui-icon--operable:active:not(.devui-icon--disabled){color:var(--devui-icon-active-color, var(--devui-icon-fill-active, #252b3a))}.devui-icon--operable:active:not(.devui-icon--disabled).devui-icon__container{background-color:var(--devui-icon-background-active, var(--devui-list-item-active-bg, #f2f5fc))}.devui-icon--operable:active:not(.devui-icon--disabled) i{color:var(--devui-icon-active-color, var(--devui-icon-fill-active, #252b3a))}.devui-icon--operable.devui-icon__container{height:32px;line-height:32px;padding:0 8px;margin-left:-8px;border-radius:var(--devui-border-radius, 4px);transition:all var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-icon--spin{animation:iconSpin 2.5s linear infinite}.devui-svg-icon{vertical-align:middle}@keyframes iconSpin{0%{transform:rotate(0)}50%{transform:rotate(180deg)}to{transform:rotate(360deg)}}.devui-icon-group{display:inline-flex;align-items:center}.devui-icon-group>.devui-icon__container:not(.devui-icon--operable){padding:8px;margin-left:0}.devui-icon-group>.devui-icon__container:not(.devui-icon--operable):first-child{margin-left:-8px}.devui-icon-group>*:not(:first-child){margin-left:0}.devui-message{position:fixed;z-index:var(--devui-z-index-modal, 1079);padding:10px 15px;border-radius:var(--devui-border-radius-feedback, 4px);left:50%;transform:translate(-50%);top:80px;display:flex;align-items:center;border-width:1px;border-style:solid;border-color:var(--devui-line, #d7d8da);box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;background-color:var(--devui-base-bg, #ffffff);transition:top .5s ease}.devui-message--success{background-color:var(--devui-success-bg, #edfff9);border-color:var(--devui-success-line, #50d4ab)}.devui-message--info{background-color:var(--devui-info-bg, #f2f5fc);border-color:var(--devui-info-line, #5e7ce0)}.devui-message--warning{background-color:var(--devui-warning-bg, #fff3e8);border-color:var(--devui-warning-line, #fa9841)}.devui-message--error{background-color:var(--devui-danger-bg, #ffeeed);border-color:var(--devui-danger-line, #f66f6a)}.devui-message__close{margin-left:auto;padding-left:10px;margin-top:-2px}.devui-message__image{margin-top:1px;display:inline-block;width:var(--devui-font-size-icon, 16px);min-width:var(--devui-font-size-icon, 16px);min-height:var(--devui-font-size-icon, 16px);height:var(--devui-font-size-icon, 16px);padding:0;line-height:1;margin-right:10px}.devui-message__image--success{color:var(--devui-success, #50d4ab)}.devui-message__image--info{color:var(--devui-info, #5e7ce0)}.devui-message__image--warning{color:var(--devui-warning, #fac20a)}.devui-message__image--error{color:var(--devui-danger, #f66f6a)}.devui-message__content{font-size:var(--devui-font-size-page-title, 16px);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.devui-message__content--success{color:var(--devui-success, #50d4ab)}.devui-message__content--info{color:var(--devui-info, #5e7ce0)}.devui-message__content--warning{color:var(--devui-warning, #fac20a)}.devui-message__content--error{color:var(--devui-danger, #f66f6a)}.message-fade-enter-active,.message-fade-leave-active{transform:translate(-50%);transition:all .5s ease}.message-fade-enter-from,.message-fade-leave-to{opacity:0;transform:translate(-50%,-200%)}