vue-devui 1.0.0-beta.10 → 1.0.0-beta.14

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 (82) hide show
  1. package/README.md +62 -45
  2. package/accordion/index.es.js +309 -38
  3. package/accordion/index.umd.js +1 -1
  4. package/accordion/style.css +1 -1
  5. package/alert/index.es.js +5 -2
  6. package/alert/index.umd.js +1 -1
  7. package/auto-complete/index.d.ts +7 -0
  8. package/auto-complete/index.es.js +1121 -0
  9. package/auto-complete/index.umd.js +1 -0
  10. package/auto-complete/package.json +7 -0
  11. package/auto-complete/style.css +1 -0
  12. package/button/index.es.js +213 -8
  13. package/button/index.umd.js +1 -1
  14. package/button/style.css +1 -1
  15. package/color-picker/index.d.ts +7 -0
  16. package/color-picker/index.es.js +2960 -0
  17. package/color-picker/index.umd.js +1 -0
  18. package/color-picker/package.json +7 -0
  19. package/color-picker/style.css +1 -0
  20. package/dragdrop/index.es.js +135 -10
  21. package/dragdrop/index.umd.js +1 -1
  22. package/drawer/index.es.js +38 -6
  23. package/drawer/index.umd.js +1 -1
  24. package/dropdown/index.es.js +30 -22
  25. package/dropdown/index.umd.js +1 -1
  26. package/dropdown/style.css +1 -1
  27. package/editable-select/index.es.js +67 -3
  28. package/editable-select/index.umd.js +11 -11
  29. package/form/index.es.js +59 -17
  30. package/form/index.umd.js +1 -1
  31. package/gantt/index.es.js +3 -3
  32. package/gantt/index.umd.js +1 -1
  33. package/image-preview/index.es.js +33 -15
  34. package/image-preview/index.umd.js +1 -1
  35. package/modal/index.es.js +214 -13
  36. package/modal/index.umd.js +1 -1
  37. package/modal/style.css +1 -1
  38. package/nuxt/components/AutoComplete.js +3 -0
  39. package/nuxt/components/ColorPicker.js +3 -0
  40. package/nuxt/components/DrawerService.js +3 -0
  41. package/overlay/index.es.js +1 -1
  42. package/overlay/index.umd.js +1 -1
  43. package/package.json +1 -16
  44. package/popover/index.es.js +13 -4
  45. package/popover/index.umd.js +1 -1
  46. package/progress/index.es.js +8 -8
  47. package/progress/index.umd.js +3 -3
  48. package/radio/index.es.js +5 -5
  49. package/radio/index.umd.js +1 -1
  50. package/slider/index.es.js +2 -5
  51. package/slider/index.umd.js +1 -1
  52. package/slider/style.css +1 -1
  53. package/splitter/index.es.js +191 -14
  54. package/splitter/index.umd.js +1 -1
  55. package/splitter/style.css +1 -1
  56. package/statistic/index.es.js +4 -4
  57. package/statistic/index.umd.js +1 -1
  58. package/statistic/style.css +1 -1
  59. package/style.css +1 -1
  60. package/table/index.es.js +236 -26
  61. package/table/index.umd.js +1 -1
  62. package/table/style.css +1 -1
  63. package/time-picker/index.es.js +221 -11
  64. package/time-picker/index.umd.js +1 -1
  65. package/time-picker/style.css +1 -1
  66. package/toast/index.es.js +8 -5
  67. package/toast/index.umd.js +1 -1
  68. package/toast/style.css +1 -1
  69. package/transfer/index.es.js +503 -59
  70. package/transfer/index.umd.js +1 -1
  71. package/transfer/style.css +1 -1
  72. package/tree/index.es.js +6 -5
  73. package/tree/index.umd.js +1 -1
  74. package/tree-select/index.es.js +129 -34
  75. package/tree-select/index.umd.js +1 -1
  76. package/tree-select/style.css +1 -1
  77. package/upload/index.es.js +165 -507
  78. package/upload/index.umd.js +1 -1
  79. package/upload/style.css +1 -1
  80. package/vue-devui.es.js +16501 -13904
  81. package/vue-devui.umd.js +19 -19
  82. package/nuxt/components/MultiUpload.js +0 -3
@@ -0,0 +1 @@
1
+ var Ue=Object.defineProperty;var re=Object.getOwnPropertySymbols;var qe=Object.prototype.hasOwnProperty,Ge=Object.prototype.propertyIsEnumerable;var j=(m,t,w)=>t in m?Ue(m,t,{enumerable:!0,configurable:!0,writable:!0,value:w}):m[t]=w,D=(m,t)=>{for(var w in t||(t={}))qe.call(t,w)&&j(m,w,t[w]);if(re)for(var w of re(t))Ge.call(t,w)&&j(m,w,t[w]);return m};var S=(m,t,w)=>(j(m,typeof t!="symbol"?t+"":t,w),w);(function(m,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(m=typeof globalThis!="undefined"?globalThis:m||self,t(m.index={},m.Vue))})(this,function(m,t){"use strict";const se={modelValue:{type:String,default:""},source:{type:Array,default:null},allowEmptyValueSearch:{type:Boolean,default:!1},appendToBody:{type:Boolean,default:!1},appendToBodyDirections:{type:Object,default:()=>({originX:"left",originY:"bottom",overlayX:"left",overlayY:"top"})},disabled:{type:Boolean,default:!1},delay:{type:Number,default:300},disabledKey:{type:String,default:null},formatter:{type:Function,default:e=>e?e.label||e.toString():""},isSearching:{type:Boolean,default:!1},sceneType:{type:String,default:null},searchFn:{type:Function,default:null},tipsText:{type:String,default:"\u6700\u8FD1\u8F93\u5165"},latestSource:{type:Array,default:null},valueParser:{type:Function,default:e=>e},enableLazyLoad:{type:Boolean,default:!1},dAutoCompleteWidth:{type:Number,default:null},showAnimation:{type:Boolean,default:!0},maxHeight:{type:Number,default:300},transInputFocusEmit:{type:Function,default:null},selectValue:{type:Function,default:null},loadMore:{type:Function,default:null}},M=Symbol("DropdownPropsKey");function ie(e,n){const o=(a,c)=>{const i={item:a,index:c};return e.slots.itemTemplate?e.slots.itemTemplate(i):null},l=()=>e.slots.noResultItemTemplate?e.slots.noResultItemTemplate(n.value):null,r=()=>e.slots.searchingTemplate?e.slots.searchingTemplate(n.value):null;return{customRenderSolts:()=>{const a={};return e.slots.itemTemplate&&(a.itemTemplate=o),e.slots.noResultItemTemplate&&(a.noResultItemTemplate=l),e.slots.searchingTemplate&&(a.searchingTemplate=r),a}}}function ue(e,n,o,l,r){const s=t.ref([]),a=t.ref(!1);return{handleSearch:async(u,f)=>{if(u==""&&!n.value){s.value=[],a.value=!1;return}let y=[];u=u.toLowerCase(),f?y=o.value:l.value?y=await l.value(u):o.value.forEach(d=>{let p=r.value(d);p=p.toLowerCase(),p.startsWith(u)&&y.push(d)}),s.value=y,s.value.length==0?a.value=!0:a.value=!1},recentlyFocus:u=>{u&&(s.value=u)},searchList:s,showNoResultItemTemplate:a}}function ce(e,n,o,l,r,s,a,c,i,u){const f=t.ref(!1),y=t.ref(),d=t.ref(!1),g=((k,O)=>{let b;return(...V)=>{b&&clearTimeout(b),b=setTimeout(async()=>{d.value=!0,await k(...V),d.value=!1},O)}})(async k=>{await a(k),f.value=!0},s.value),T=k=>{const O=k.target;d.value=!1,o.value=!1,e.emit("update:modelValue",O.value),g(O.value)},C=()=>{a(l.value),i(u.value),c.value&&c.value()},h=()=>{f.value=!1,d.value=!1,o.value=!1};return{handleClose:h,toggleMenu:()=>{r.value||(f.value?h():(f.value=!0,e.slots.noResultItemTemplate&&n.value.length==0&&l.value.trim()!=""&&(o.value=!0)))},onInput:T,onFocus:C,inputRef:y,visible:f,searchStatus:d}}function de(e,n,o,l,r,s){const a=t.ref(0),c=u=>{if(n.value.length==0)return 0;const f=n.value.indexOf(u);return f==-1?0:f};return{selectedIndex:a,selectOptionClick:async u=>{const f=r.value(u);e.emit("update:modelValue",f),s(),await l(f),a.value=c(f),o.value&&o.value()}}}function fe(e,n,o){const l=t.ref(!1),r=t.ref(),s=()=>{if(!e.enableLazyLoad&&l)return;const c=r.value,i=c.scrollHeight,u=c.clientHeight+c.scrollTop;u>=i&&u>=e.maxHeight&&(e.loadMore(),l.value=!0)};n.expose({loadFinish:a});async function a(){await o(e.modelValue,e.enableLazyLoad),l.value=!1}return{showLoading:l,dropDownRef:r,loadMore:s}}function pe(e,n,o,l,r,s,a,c){var y;const i=t.ref((y=l.value)!=null?y:0),u=d=>{const p=e.value,v=p.children[d];t.nextTick(()=>{if(v.scrollIntoViewIfNeeded)v.scrollIntoViewIfNeeded(!1);else{const g=p.getBoundingClientRect(),T=v.getBoundingClientRect();(T.bottom>g.bottom||T.top<g.top)&&v.scrollIntoView(!1)}})};return{hoverIndex:i,handlekeyDown:d=>{var g;const p=d.key||d.code;if(p==="Escape"&&(n.value&&o.value.length||r.value||s.value)){c();return}const v=n.value&&o.value.length&&!r.value&&!s.value;if(p==="ArrowDown"&&v){if(i.value===o.value.length-1){i.value=0,u(i.value);return}i.value=i.value+1,u(i.value)}else if(p==="ArrowUp"&&v){if(i.value===0){i.value=o.value.length-1,u(i.value);return}i.value=i.value-1,u(i.value)}if(p==="Enter"&&v){a(o.value[i.value]),i.value=(g=l.value)!=null?g:0;return}}}}var Qe="";class P{constructor(){S(this,"top","50%");S(this,"left","50%")}}const ve={message:String,backdrop:Boolean,view:{type:Object,default:()=>new P},zIndex:Number,isFull:{type:Boolean,default:!1}};class ye{constructor(){S(this,"target");S(this,"message");S(this,"loadingTemplateRef");S(this,"backdrop",!0);S(this,"positionType","relative");S(this,"view",new P);S(this,"zIndex")}}var Ze="",me=t.defineComponent({name:"DLoading",inheritAttrs:!1,props:ve,setup(e){const n={top:e.view.top,left:e.view.left,zIndex:e.zIndex};e.message||(n.background="none");const o=t.ref(!1);return{style:n,isShow:o,open:()=>{o.value=!0},close:()=>{o.value=!1}}},render(){var a;const{isShow:e,isFull:n,backdrop:o,style:l,message:r,$slots:s}=this;return e&&t.createVNode("div",{class:["devui-loading-contanier",n?"devui-loading--full":""]},[((a=s.default)==null?void 0:a.call(s))||t.createVNode("div",{class:"devui-loading-wrapper"},[o?t.createVNode("div",{class:"devui-loading-mask"},null):null,t.createVNode("div",{style:l,class:"devui-loading-area"},[t.createVNode("div",{class:"devui-busy-default-spinner"},[t.createVNode("div",{class:"devui-loading-bar1"},null),t.createVNode("div",{class:"devui-loading-bar2"},null),t.createVNode("div",{class:"devui-loading-bar3"},null),t.createVNode("div",{class:"devui-loading-bar4"},null)]),r?t.createVNode("span",{class:"devui-loading-text"},[r]):null])])])}});const z=Symbol("dev_component_container");function ge(e,n,o=null){const l=t.h(e,D({},n),o),r=document.createElement("div");return l[z]=r,t.render(l,r),l.component}function he(e){t.render(null,e==null?void 0:e.vnode[z])}const be=t.defineComponent(me),I=new WeakSet,E=e=>{if(!e)return!0;if(Array.isArray(e))return e.length===0;if(e instanceof Set||e instanceof Map)return e.size===0;if(e instanceof Promise)return!1;if(typeof e=="object")try{return Object.keys(e).length===0}catch{return!1}return!1},_=e=>Object.prototype.toString.call(e).slice(8,-1).toLowerCase(),we=e=>{switch(_(e)){case"promise":return[e];case"array":return e.some(o=>_(o)!=="promise")?(console.error(new TypeError("Binding values should all be of type Promise")),"error"):e;default:return!1}},H=e=>{I.delete(e),e.instance.proxy.close(),he(e.instance)},Y=(e,n)=>{if(n.value){const o=we(n.value);if(o==="error")return;e.instance.proxy.open(),e.appendChild(e.mask),I.add(e),o&&Promise.all(o).catch(l=>{console.error(new Error("Promise handling errors"),l)}).finally(()=>{H(e)})}else H(e)},X=e=>{e.removeAttribute("zindex"),e.removeAttribute("positiontype"),e.removeAttribute("backdrop"),e.removeAttribute("message"),e.removeAttribute("view"),e.removeAttribute("loadingtemplateref")},$=(e,n)=>{const o=D(D({},new ye),n),l=o.loadingTemplateRef,r=ge(be,D({},o),l?()=>l:null);e.style.position=o.positionType,e.options=o,e.instance=r,e.mask=r.proxy.$el},Ce={mounted:function(e,n,o){$(e,o.props),X(e),!E(n.value)&&Y(e,n)},updated:function(e,n,o){!E(n.value)&&I.has(e)||E(n.value)&&!I.has(e)||(!I.has(e)&&$(e,o.props),X(e),Y(e,n))}};var K=t.defineComponent({name:"DAutoCompleteDropdown",directives:{dLoading:Ce},setup(e,n){const o=t.inject(M),{visible:l,selectedIndex:r,selectOptionClick:s,searchList:a,searchStatus:c,dropDownRef:i,loadMore:u,showLoading:f,showNoResultItemTemplate:y,latestSource:d,modelValue:p,hoverIndex:v}=o,{disabled:g,maxHeight:T,appendToBody:C,formatter:h,disabledKey:N,isSearching:k}=o.props,O=b=>{b[N]||s(b)};return()=>t.withDirectives(t.createVNode("div",{class:["devui-dropdown-menu",C&&"devui-dropdown-menu-cdk",g&&"disabled",d.value&&"devui-dropdown-latestSource"]},[t.createVNode("ul",{ref:i,class:"devui-list-unstyled scroll-height",style:{maxHeight:`${T}px`},onScroll:u},[k&&n.slots.searchingTemplate&&c.value&&t.createVNode("li",{class:"devui-is-searching-template"},[t.createVNode("div",{class:"devui-no-data-tip"},[n.slots.searchingTemplate()])]),d.value&&!p.value&&t.createVNode("li",{class:"devui-popup-tips"},[t.createTextVNode("\u6700\u8FD1\u8F93\u5165")]),!y.value&&!c.value&&a!=null&&a.value.length>0&&a.value.map((b,V)=>t.createVNode("li",{onClick:()=>O(b),class:["devui-dropdown-item",r.value==V&&"selected",{disabled:N&&b[N]},{"devui-dropdown-bg":v.value==V}],title:h(b),key:h(b)},[n.slots.itemTemplate?n.slots.itemTemplate(b,V):h(b)])),!c.value&&a.value.length==0&&n.slots.noResultItemTemplate&&y.value&&t.createVNode("li",{class:"devui-no-result-template"},[t.createVNode("div",{class:"devui-no-data-tip"},[n.slots.noResultItemTemplate()])])])]),[[t.resolveDirective("dLoading"),f.value],[t.vShow,l.value&&a.value.length>0||n.slots.noResultItemTemplate&&y.value||k&&n.slots.searchingTemplate&&c.value]])}});const ke=typeof window!="undefined";function W(e,n,o){document.addEventListener?e&&n&&o&&e.addEventListener(n,o,!1):e&&n&&o&&e.attachEvent("on"+n,o)}const B=Symbol("@@clickoutside"),L=new Map;let U,A=0,q=!0;function G(e,n,o){return ke&&q&&(q=!1,W(document,"mousedown",l=>{U=l}),W(document,"mouseup",l=>{for(const[r,s]of L)s[B].documentHandler(l,U)})),function(l,r){!o||!n.instance||!l.target||!r.target||e.contains(l.target)||e.contains(r.target)||e===l.target||e[B].bindingFn&&e[B].bindingFn()}}const Te={beforeMount:function(e,n,o){A++,L.set(A,e),e[B]={nid:A,documentHandler:G(e,n,o),bindingFn:n.value}},updated:function(e,n,o){e[B].documentHandler=G(e,n,o),e[B].bindingFn=n.value},unmounted:function(e){L.delete(e[B].nid),delete e[B]}};var et="";function Ve(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const Se=t.defineComponent({setup(e,n){return()=>{let o;return t.createVNode(t.Teleport,{to:"#d-overlay-anchor"},{default:()=>[t.createVNode(t.Transition,{name:"devui-overlay-fade"},Ve(o=t.renderSlot(n.slots,"default"))?o:{default:()=>[o]})]})}}}),Be={visible:{type:Boolean},backgroundBlock:{type:Boolean,default:!1},backgroundClass:{type:String,default:""},backgroundStyle:{type:[String,Object]},onBackdropClick:{type:Function},backdropClose:{type:Boolean,default:!0},hasBackdrop:{type:Boolean,default:!0}},Ne=["update:visible","backdropClick"],Oe=D({origin:{type:Object,require:!0},position:{type:Object,default:()=>({originX:"left",originY:"top",overlayX:"left",overlayY:"top"})}},Be);function Re(e,n){const o=t.computed(()=>["devui-overlay-background",e.backgroundClass,e.hasBackdrop?"devui-overlay-background__color":"devui-overlay-background__disabled"]),l=t.computed(()=>"devui-overlay"),r=a=>{var c;a.preventDefault(),(c=e.onBackdropClick)==null||c.call(e),e.backdropClose&&n.emit("update:visible",!1)},s=a=>a.cancelBubble=!0;return t.onMounted(()=>{const a=document.body,c=a.style.overflow,i=a.style.position;t.watch([()=>e.visible,()=>e.backgroundBlock],([u,f])=>{if(f){const y=a.getBoundingClientRect().y;u?(a.style.overflowY="scroll",a.style.position=u?"fixed":"",a.style.top=`${y}px`):(a.style.overflowY=c,a.style.position=i,a.style.top="",window.scrollTo(0,-y))}}),t.onUnmounted(()=>{document.body.style.overflow=c})}),{backgroundClass:o,overlayClass:l,handleBackdropClick:r,handleOverlayBubbleCancel:s}}function De(e){return!!(e==null?void 0:e.$el)}function J(e){return e instanceof Element?e:e&&typeof e=="object"&&e.$el instanceof Element?e.$el:null}const Ie=t.defineComponent({name:"DFlexibleOverlay",props:Oe,emits:Ne,setup(e,n){const o=t.ref(null),l=t.reactive({position:"absolute"});t.onMounted(async()=>{const i=(d,p,v)=>{const g=Ee(d,p,v);l.left=`${g.x}px`,l.top=`${g.y}px`},u=t.computed(()=>{const d=o.value,p=Fe(e.origin);if(!(!d||!p))return{origin:p,overlay:d}}),f=t.toRef(e,"visible"),y=t.toRef(e,"position");t.watch([u,f,y],async([d,p,v],g,T)=>{if(!p||!d)return;const{origin:C,overlay:h}=d;i(v,h.getBoundingClientRect(),C);const N=[je(()=>i(v,h.getBoundingClientRect(),C)),Me(h,k=>i(v,k[0].contentRect,C)),Pe(C,()=>i(v,h.getBoundingClientRect(),C))];T(()=>{N.forEach(k=>k())})})});const{backgroundClass:r,overlayClass:s,handleBackdropClick:a,handleOverlayBubbleCancel:c}=Re(e,n);return()=>t.createVNode(Se,null,{default:()=>[t.withDirectives(t.createVNode("div",{style:e.backgroundStyle,class:r.value,onClick:a},[t.createVNode("div",{ref:o,class:s.value,style:l,onClick:c},[t.renderSlot(n.slots,"default")])]),[[t.vShow,e.visible]])]})}});function Fe(e){return e instanceof Element?e:t.isRef(e)?J(e.value):De(e)?J(e):e}function Ee(e,n,o){const l=Le(o),r=xe(l,e);return Ae(r,n,e)}function Le(e){if(e instanceof Element)return e.getBoundingClientRect();const n=e.width||0,o=e.height||0;return{top:e.y,bottom:e.y+o,left:e.x,right:e.x+n,height:o,width:n}}function Ae(e,n,o){let l;const{width:r,height:s}=n;o.overlayX=="center"?l=e.x-r/2:l=o.overlayX=="left"?e.x:e.x-r;let a;return o.overlayY=="center"?a=e.y-s/2:a=o.overlayY=="top"?e.y:e.y-s,{x:l,y:a}}function xe(e,n){let o;if(n.originX=="center")o=e.left+e.width/2;else{const r=e.left,s=e.right;o=n.originX=="left"?r:s}let l;return n.originY=="center"?l=e.top+e.height/2:l=n.originY=="top"?e.top:e.bottom,{x:o,y:l}}function je(e){return window.addEventListener("scroll",e,!0),window.addEventListener("resize",e),window.addEventListener("orientationchange",e),()=>{window.removeEventListener("scroll",e,!0),window.removeEventListener("resize",e),window.removeEventListener("orientationchange",e)}}function Me(e,n){if(e instanceof Element){const o=new ResizeObserver(n);return o.observe(e),()=>o.disconnect()}return()=>{}}function Pe(e,n){if(e instanceof Element){const o=new MutationObserver(n);return o.observe(e,{attributeFilter:["style"]}),()=>o.disconnect()}return()=>{}}function Q(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}var F=t.defineComponent({name:"DAutoComplete",directives:{ClickOutside:Te},props:se,emits:["update:modelValue"],setup(e,n){const{disabled:o,modelValue:l,appendToBody:r,dAutoCompleteWidth:s,delay:a,allowEmptyValueSearch:c,formatter:i,transInputFocusEmit:u,selectValue:f,source:y,searchFn:d,appendToBodyDirections:p,latestSource:v,showAnimation:g}=t.toRefs(e),{handleSearch:T,searchList:C,showNoResultItemTemplate:h,recentlyFocus:N}=ue(n,c,y,d,i),{onInput:k,onFocus:O,inputRef:b,visible:V,searchStatus:Z,handleClose:x,toggleMenu:_e}=ce(n,C,h,l,o,a,T,u,N,v),{selectedIndex:ee,selectOptionClick:te}=de(n,C,f,T,i,x),{showLoading:He,dropDownRef:oe,loadMore:Ye}=fe(e,n,T),{customRenderSolts:ne}=ie(n,l),{hoverIndex:Xe,handlekeyDown:$e}=pe(oe,V,C,ee,Z,h,te,x);t.provide(M,{props:e,visible:V,term:"",searchList:C,selectedIndex:ee,searchStatus:Z,selectOptionClick:te,dropDownRef:oe,showLoading:He,loadMore:Ye,latestSource:v,modelValue:l,showNoResultItemTemplate:h,hoverIndex:Xe});const le=t.ref(),ae=t.reactive({appendToBodyDirections:{}});ae.appendToBodyDirections=p;const Ke=()=>{if(r.value){let R;return t.createVNode(Ie,{hasBackdrop:!1,origin:le,position:ae.appendToBodyDirections,visible:V.value,"onUpdate:visible":We=>V.value=We},{default:()=>[t.createVNode("div",{class:"devui-dropdown devui-auto-complete-menu",style:{width:s.value>0&&s.value+"px"}},[t.createVNode(K,null,Q(R=ne())?R:{default:()=>[R]})])]})}else{let R;return t.createVNode("div",{class:"devui-dropdown",style:{width:s.value>0&&s.value+"px"}},[t.createVNode(t.Transition,{name:g?"fade":""},{default:()=>[t.createVNode(K,null,Q(R=ne())?R:{default:()=>[R]})]})])}};return()=>t.withDirectives(t.createVNode("div",{class:["devui-auto-complete","devui-form-group","devui-has-feedback",V.value&&"devui-select-open"],ref:le,style:{width:s.value>0&&s.value+"px"}},[t.createVNode("input",{disabled:o.value,type:"text",onClick:_e,class:["devui-form-control","devui-dropdown-origin","devui-dropdown-origin-open",o.value&&"disabled"],placeholder:"Search",onInput:k,onFocus:O,value:l.value,ref:b,onKeydown:$e},null),Ke()]),[[t.resolveDirective("click-outside"),x]])}});F.install=function(e){e.component(F.name,F)};var ze={title:"AutoComplete \u81EA\u52A8\u8865\u5168",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(e){e.use(F)}};m.AutoComplete=F,m.default=ze,Object.defineProperty(m,"__esModule",{value:!0}),m[Symbol.toStringTag]="Module"});
@@ -0,0 +1,7 @@
1
+ {
2
+ "name": "auto-complete",
3
+ "version": "0.0.0",
4
+ "main": "index.umd.js",
5
+ "module": "index.es.js",
6
+ "style": "style.css"
7
+ }
@@ -0,0 +1 @@
1
+ @charset "UTF-8";.devui-auto-complete .devui-dropdown-menu,.devui-auto-complete-menu .devui-dropdown-menu{left:0!important;top:0!important}.active{background:var(--devui-list-item-hover-bg, #f2f5fc)}.devui-dropdown-menu{width:100%;display:block}.devui-dropdown-menu-cdk{position:static}.devui-dropdown-item{cursor:pointer;display:block;width:100%;padding:8px 12px;clear:both;border:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:14px}.devui-dropdown-menu .devui-dropdown-item:not(.disabled).selected{color:var(--devui-list-item-active-text, #ffffff);background-color:var(--devui-list-item-active-bg, #5e7ce0)}.devui-no-result-template,.devui-is-searching-template{display:block;width:100%;padding:8px 12px;clear:both;border:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:not-allowed;background-color:var(--devui-disabled-bg, #f5f5f6);color:var(--devui-disabled-text, #adb0b8);line-height:14px}.devui-no-result-template:hover,.devui-no-result-template:active,.devui-no-result-template:hover:active,.devui-is-searching-template:hover,.devui-is-searching-template:active,.devui-is-searching-template:hover:active{background-color:var(--devui-unavailable, #f5f5f6)}.devui-dropdown-item.disabled,.devui-dropdown-item.disabled:hover{cursor:not-allowed;color:var(--devui-disabled-text, #adb0b8)}ul.devui-list-unstyled{margin:0;overflow-y:auto}.devui-dropdown-bg{background:var(--devui-list-item-hover-bg, #f2f5fc);color:var(--devui-list-item-hover-text, #526ecc)}.devui-popup-tips{color:var(--devui-text-weak, #575d6c);padding:4px 12px}.devui-dropdown-latestSource ul{line-height:initial!important}@keyframes devui-busy-spinner-anim{0%{transform:rotate(0) scale(1)}50%{transform:rotate(135deg) scale(1.5)}to{transform:rotate(270deg) scale(1)}}.devui-loading-mask{position:absolute;left:0;right:0;bottom:0;top:0;background-color:var(--devui-line, #adb0b8);opacity:.3}.devui-loading-wrapper{text-align:center}.devui-loading--full{position:fixed;left:0;right:0;bottom:0;top:0;z-index:9999}.devui-loading--hidden{overflow:hidden}.devui-loading-text{margin-left:10px}.devui-loading-area{position:absolute;transform:translate(-50%,-50%);padding:12px 14px;background:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px)}.devui-busy-default-spinner{position:relative;display:inline-block;width:15px;height:15px;animation:devui-busy-spinner-anim 1s linear infinite}.devui-busy-default-spinner div{position:absolute;left:44.5%;top:37%;width:6px;height:6px;border-radius:50%}.devui-busy-default-spinner .devui-loading-bar1{top:0;left:0;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-busy-default-spinner .devui-loading-bar2{top:0;left:9px;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-busy-default-spinner .devui-loading-bar3{top:9px;left:0;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-busy-default-spinner .devui-loading-bar4{top:9px;left:9px;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-overlay-background{position:fixed;top:0;left:0;height:100vh;width:100vw;display:flex}.devui-overlay-background__color{background:rgba(0,0,0,.4)}.devui-overlay-background .devui-overlay{position:relative;z-index:1000;pointer-events:auto}.devui-overlay-background__disabled{pointer-events:none}@keyframes d-overlay-fade{0%{opacity:0}to{opacity:1}}.devui-overlay-fade-enter{opacity:0}.devui-overlay-fade-enter-active{animation-name:d-overlay-fade;animation-duration:.3s}.devui-overlay-fade-leave{opacity:1}.devui-overlay-fade-leave-active{animation-name:d-overlay-fade;animation-duration:.3s;animation-direction:reverse}
@@ -14,7 +14,11 @@ var __spreadValues = (a, b) => {
14
14
  }
15
15
  return a;
16
16
  };
17
- import { defineComponent, createVNode, ref, computed, withDirectives, mergeProps, resolveDirective } from "vue";
17
+ var __publicField = (obj, key, value) => {
18
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
19
+ return value;
20
+ };
21
+ import { defineComponent, createVNode, ref, h, render, computed, mergeProps, withDirectives, resolveDirective } from "vue";
18
22
  var Icon = defineComponent({
19
23
  name: "DIcon",
20
24
  props: {
@@ -64,12 +68,208 @@ var Icon = defineComponent({
64
68
  Icon.install = function(app) {
65
69
  app.component(Icon.name, Icon);
66
70
  };
71
+ class View {
72
+ constructor() {
73
+ __publicField(this, "top", "50%");
74
+ __publicField(this, "left", "50%");
75
+ }
76
+ }
77
+ const componentProps = {
78
+ message: String,
79
+ backdrop: Boolean,
80
+ view: {
81
+ type: Object,
82
+ default: () => new View()
83
+ },
84
+ zIndex: Number,
85
+ isFull: {
86
+ type: Boolean,
87
+ default: false
88
+ }
89
+ };
90
+ class LoadingProps {
91
+ constructor() {
92
+ __publicField(this, "target");
93
+ __publicField(this, "message");
94
+ __publicField(this, "loadingTemplateRef");
95
+ __publicField(this, "backdrop", true);
96
+ __publicField(this, "positionType", "relative");
97
+ __publicField(this, "view", new View());
98
+ __publicField(this, "zIndex");
99
+ }
100
+ }
101
+ var loading = "";
102
+ var Loading = defineComponent({
103
+ name: "DLoading",
104
+ inheritAttrs: false,
105
+ props: componentProps,
106
+ setup(props) {
107
+ const style = {
108
+ top: props.view.top,
109
+ left: props.view.left,
110
+ zIndex: props.zIndex
111
+ };
112
+ if (!props.message) {
113
+ style.background = "none";
114
+ }
115
+ const isShow = ref(false);
116
+ const open = () => {
117
+ isShow.value = true;
118
+ };
119
+ const close = () => {
120
+ isShow.value = false;
121
+ };
122
+ return {
123
+ style,
124
+ isShow,
125
+ open,
126
+ close
127
+ };
128
+ },
129
+ render() {
130
+ var _a;
131
+ const {
132
+ isShow,
133
+ isFull,
134
+ backdrop,
135
+ style,
136
+ message,
137
+ $slots
138
+ } = this;
139
+ return isShow && createVNode("div", {
140
+ "class": ["devui-loading-contanier", isFull ? "devui-loading--full" : ""]
141
+ }, [((_a = $slots.default) == null ? void 0 : _a.call($slots)) || createVNode("div", {
142
+ "class": "devui-loading-wrapper"
143
+ }, [backdrop ? createVNode("div", {
144
+ "class": "devui-loading-mask"
145
+ }, null) : null, createVNode("div", {
146
+ "style": style,
147
+ "class": "devui-loading-area"
148
+ }, [createVNode("div", {
149
+ "class": "devui-busy-default-spinner"
150
+ }, [createVNode("div", {
151
+ "class": "devui-loading-bar1"
152
+ }, null), createVNode("div", {
153
+ "class": "devui-loading-bar2"
154
+ }, null), createVNode("div", {
155
+ "class": "devui-loading-bar3"
156
+ }, null), createVNode("div", {
157
+ "class": "devui-loading-bar4"
158
+ }, null)]), message ? createVNode("span", {
159
+ "class": "devui-loading-text"
160
+ }, [message]) : null])])]);
161
+ }
162
+ });
163
+ const COMPONENT_CONTAINER_SYMBOL = Symbol("dev_component_container");
164
+ function createComponent(Component, props, children = null) {
165
+ const vnode = h(Component, __spreadValues({}, props), children);
166
+ const container = document.createElement("div");
167
+ vnode[COMPONENT_CONTAINER_SYMBOL] = container;
168
+ render(vnode, container);
169
+ return vnode.component;
170
+ }
171
+ function unmountComponent(ComponnetInstance) {
172
+ render(null, ComponnetInstance == null ? void 0 : ComponnetInstance.vnode[COMPONENT_CONTAINER_SYMBOL]);
173
+ }
174
+ const loadingConstructor = defineComponent(Loading);
175
+ const cacheInstance = new WeakSet();
176
+ const isEmpty = (val) => {
177
+ if (!val)
178
+ return true;
179
+ if (Array.isArray(val))
180
+ return val.length === 0;
181
+ if (val instanceof Set || val instanceof Map)
182
+ return val.size === 0;
183
+ if (val instanceof Promise)
184
+ return false;
185
+ if (typeof val === "object") {
186
+ try {
187
+ return Object.keys(val).length === 0;
188
+ } catch (e) {
189
+ return false;
190
+ }
191
+ }
192
+ return false;
193
+ };
194
+ const getType = (vari) => {
195
+ return Object.prototype.toString.call(vari).slice(8, -1).toLowerCase();
196
+ };
197
+ const isPromise = (value) => {
198
+ const type = getType(value);
199
+ switch (type) {
200
+ case "promise":
201
+ return [value];
202
+ case "array":
203
+ if (value.some((val) => getType(val) !== "promise")) {
204
+ console.error(new TypeError("Binding values should all be of type Promise"));
205
+ return "error";
206
+ }
207
+ return value;
208
+ default:
209
+ return false;
210
+ }
211
+ };
212
+ const unmount = (el) => {
213
+ cacheInstance.delete(el);
214
+ el.instance.proxy.close();
215
+ unmountComponent(el.instance);
216
+ };
217
+ const toggleLoading = (el, binding) => {
218
+ if (binding.value) {
219
+ const vals = isPromise(binding.value);
220
+ if (vals === "error")
221
+ return;
222
+ el.instance.proxy.open();
223
+ el.appendChild(el.mask);
224
+ cacheInstance.add(el);
225
+ if (vals) {
226
+ Promise.all(vals).catch((err) => {
227
+ console.error(new Error("Promise handling errors"), err);
228
+ }).finally(() => {
229
+ unmount(el);
230
+ });
231
+ }
232
+ } else {
233
+ unmount(el);
234
+ }
235
+ };
236
+ const removeAttribute = (el) => {
237
+ el.removeAttribute("zindex");
238
+ el.removeAttribute("positiontype");
239
+ el.removeAttribute("backdrop");
240
+ el.removeAttribute("message");
241
+ el.removeAttribute("view");
242
+ el.removeAttribute("loadingtemplateref");
243
+ };
244
+ const handleProps = (el, vprops) => {
245
+ const props = __spreadValues(__spreadValues({}, new LoadingProps()), vprops);
246
+ const loadingTemplateRef = props.loadingTemplateRef;
247
+ const loadingInstance = createComponent(loadingConstructor, __spreadValues({}, props), loadingTemplateRef ? () => loadingTemplateRef : null);
248
+ el.style.position = props.positionType;
249
+ el.options = props;
250
+ el.instance = loadingInstance;
251
+ el.mask = loadingInstance.proxy.$el;
252
+ };
253
+ const loadingDirective = {
254
+ mounted: function(el, binding, vnode) {
255
+ handleProps(el, vnode.props);
256
+ removeAttribute(el);
257
+ !isEmpty(binding.value) && toggleLoading(el, binding);
258
+ },
259
+ updated: function(el, binding, vnode) {
260
+ if (!isEmpty(binding.value) && cacheInstance.has(el) || isEmpty(binding.value) && !cacheInstance.has(el))
261
+ return;
262
+ !cacheInstance.has(el) && handleProps(el, vnode.props);
263
+ removeAttribute(el);
264
+ toggleLoading(el, binding);
265
+ }
266
+ };
67
267
  const buttonProps = {
68
268
  type: {
69
269
  type: String,
70
270
  default: "button"
71
271
  },
72
- btnStyle: {
272
+ variant: {
73
273
  type: String,
74
274
  default: "primary"
75
275
  },
@@ -111,6 +311,9 @@ const buttonProps = {
111
311
  var button = "";
112
312
  var Button = defineComponent({
113
313
  name: "DButton",
314
+ directives: {
315
+ devLoading: loadingDirective
316
+ },
114
317
  props: buttonProps,
115
318
  setup(props, ctx) {
116
319
  const buttonContent = ref(null);
@@ -124,15 +327,15 @@ var Button = defineComponent({
124
327
  const hasContent = computed(() => ctx.slots.default);
125
328
  const btnClass = computed(() => {
126
329
  const {
127
- btnStyle,
330
+ variant,
128
331
  size,
129
332
  position,
130
333
  bordered,
131
334
  icon
132
335
  } = props;
133
- const origin = `devui-btn devui-btn-${btnStyle} devui-btn-${size} devui-btn-${position}`;
336
+ const origin = `devui-btn devui-btn-${variant} devui-btn-${size} devui-btn-${position}`;
134
337
  const borderedClass = bordered ? "bordered" : "";
135
- const btnIcon = !!icon && !hasContent.value && btnStyle !== "primary" ? "d-btn-icon" : "";
338
+ const btnIcon = !!icon && !hasContent.value && variant !== "primary" ? "d-btn-icon" : "";
136
339
  const btnIconWrap = !!icon ? "d-btn-icon-wrap" : "";
137
340
  return `${origin} ${borderedClass} ${btnIcon} ${btnIconWrap}`;
138
341
  });
@@ -156,9 +359,9 @@ var Button = defineComponent({
156
359
  showLoading,
157
360
  width
158
361
  } = props;
159
- return withDirectives(createVNode("div", mergeProps({
362
+ return createVNode("div", mergeProps({
160
363
  "class": "devui-btn-host"
161
- }, ctx.attrs), [createVNode("button", {
364
+ }, ctx.attrs), [withDirectives(createVNode("button", {
162
365
  "class": btnClass.value,
163
366
  "type": type,
164
367
  "disabled": disabled,
@@ -172,11 +375,13 @@ var Button = defineComponent({
172
375
  }, null) : null, createVNode("span", {
173
376
  "class": "button-content",
174
377
  "ref": buttonContent
175
- }, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a)])])]), [[resolveDirective("dLoading"), showLoading]]);
378
+ }, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a)])]), [[resolveDirective("devLoading"), showLoading]])]);
176
379
  };
177
380
  }
178
381
  });
382
+ defineComponent(Loading);
179
383
  Button.install = function(app) {
384
+ app.directive("dLoading", loadingDirective);
180
385
  app.component(Button.name, Button);
181
386
  };
182
387
  var index = {
@@ -1 +1 @@
1
- var B=Object.defineProperty;var m=Object.getOwnPropertySymbols;var V=Object.prototype.hasOwnProperty,N=Object.prototype.propertyIsEnumerable;var h=(n,t,o)=>t in n?B(n,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):n[t]=o,S=(n,t)=>{for(var o in t||(t={}))V.call(t,o)&&h(n,o,t[o]);if(m)for(var o of m(t))N.call(t,o)&&h(n,o,t[o]);return n};(function(n,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(n=typeof globalThis!="undefined"?globalThis:n||self,t(n.index={},n.Vue))})(this,function(n,t){"use strict";var o=t.defineComponent({name:"DIcon",props:{name:{type:String,required:!0},size:{type:String,default:"inherit"},color:{type:String,default:"inherit"},classPrefix:{type:String,default:"icon"}},setup(e){return S({},e)},render(){const{name:e,size:l,color:f,classPrefix:r}=this;return/^((https?):)?\/\//.test(e)?t.createVNode("img",{src:e,alt:e.split("/")[e.split("/").length-1],style:{width:l,verticalAlign:"text-bottom"}},null):t.createVNode("i",{class:`${r} ${r}-${e}`,style:{fontSize:l,color:f}},null)}});o.install=function(e){e.component(o.name,o)};const y={type:{type:String,default:"button"},btnStyle:{type:String,default:"primary"},size:{type:String,default:"md"},position:{type:String,default:"default"},bordered:{type:Boolean,default:!1},icon:{type:String,default:""},showLoading:{type:Boolean,default:!1},width:{type:String},disabled:{type:Boolean,default:!1},autofocus:{type:Boolean,default:!1},onClick:{type:Function}};var P="",a=t.defineComponent({name:"DButton",props:y,setup(e,l){const f=t.ref(null),r=i=>{var s;e.showLoading||(s=e.onClick)==null||s.call(e,i)},g=t.computed(()=>l.slots.default),$=t.computed(()=>{const{btnStyle:i,size:s,position:p,bordered:b,icon:d}=e,u=`devui-btn devui-btn-${i} devui-btn-${s} devui-btn-${p}`,c=b?"bordered":"",w=!!d&&!g.value&&i!=="primary"?"d-btn-icon":"";return`${u} ${c} ${w} ${d?"d-btn-icon-wrap":""}`}),v=t.computed(()=>{if(!e.icon)return;const i="devui-icon-fix icon";return g.value?`${i} clear-right-5`:i});return()=>{var u,c;const{icon:i,type:s,disabled:p,showLoading:b,width:d}=e;return t.withDirectives(t.createVNode("div",t.mergeProps({class:"devui-btn-host"},l.attrs),[t.createVNode("button",{class:$.value,type:s,disabled:p,style:{width:d},onClick:r},[i?t.createVNode(o,{name:i,class:v.value},null):null,t.createVNode("span",{class:"button-content",ref:f},[(c=(u=l.slots).default)==null?void 0:c.call(u)])])]),[[t.resolveDirective("dLoading"),b]])}}});a.install=function(e){e.component(a.name,a)};var C={title:"Button \u6309\u94AE",category:"\u901A\u7528",status:"100%",install(e){e.use(a)}};n.Button=a,n.buttonProps=y,n.default=C,Object.defineProperty(n,"__esModule",{value:!0}),n[Symbol.toStringTag]="Module"});
1
+ var F=Object.defineProperty;var $=Object.getOwnPropertySymbols;var W=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable;var S=(i,t,r)=>t in i?F(i,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):i[t]=r,u=(i,t)=>{for(var r in t||(t={}))W.call(t,r)&&S(i,r,t[r]);if($)for(var r of $(t))q.call(t,r)&&S(i,r,t[r]);return i};var l=(i,t,r)=>(S(i,typeof t!="symbol"?t+"":t,r),r);(function(i,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(i=typeof globalThis!="undefined"?globalThis:i||self,t(i.index={},i.Vue))})(this,function(i,t){"use strict";var r=t.defineComponent({name:"DIcon",props:{name:{type:String,required:!0},size:{type:String,default:"inherit"},color:{type:String,default:"inherit"},classPrefix:{type:String,default:"icon"}},setup(e){return u({},e)},render(){const{name:e,size:n,color:o,classPrefix:s}=this;return/^((https?):)?\/\//.test(e)?t.createVNode("img",{src:e,alt:e.split("/")[e.split("/").length-1],style:{width:n,verticalAlign:"text-bottom"}},null):t.createVNode("i",{class:`${s} ${s}-${e}`,style:{fontSize:n,color:o}},null)}});r.install=function(e){e.component(r.name,r)};class V{constructor(){l(this,"top","50%");l(this,"left","50%")}}const I={message:String,backdrop:Boolean,view:{type:Object,default:()=>new V},zIndex:Number,isFull:{type:Boolean,default:!1}};class O{constructor(){l(this,"target");l(this,"message");l(this,"loadingTemplateRef");l(this,"backdrop",!0);l(this,"positionType","relative");l(this,"view",new V);l(this,"zIndex")}}var Y="",C=t.defineComponent({name:"DLoading",inheritAttrs:!1,props:I,setup(e){const n={top:e.view.top,left:e.view.left,zIndex:e.zIndex};e.message||(n.background="none");const o=t.ref(!1);return{style:n,isShow:o,open:()=>{o.value=!0},close:()=>{o.value=!1}}},render(){var g;const{isShow:e,isFull:n,backdrop:o,style:s,message:a,$slots:m}=this;return e&&t.createVNode("div",{class:["devui-loading-contanier",n?"devui-loading--full":""]},[((g=m.default)==null?void 0:g.call(m))||t.createVNode("div",{class:"devui-loading-wrapper"},[o?t.createVNode("div",{class:"devui-loading-mask"},null):null,t.createVNode("div",{style:s,class:"devui-loading-area"},[t.createVNode("div",{class:"devui-busy-default-spinner"},[t.createVNode("div",{class:"devui-loading-bar1"},null),t.createVNode("div",{class:"devui-loading-bar2"},null),t.createVNode("div",{class:"devui-loading-bar3"},null),t.createVNode("div",{class:"devui-loading-bar4"},null)]),a?t.createVNode("span",{class:"devui-loading-text"},[a]):null])])])}});const P=Symbol("dev_component_container");function E(e,n,o=null){const s=t.h(e,u({},n),o),a=document.createElement("div");return s[P]=a,t.render(s,a),s.component}function j(e){t.render(null,e==null?void 0:e.vnode[P])}const D=t.defineComponent(C),f=new WeakSet,v=e=>{if(!e)return!0;if(Array.isArray(e))return e.length===0;if(e instanceof Set||e instanceof Map)return e.size===0;if(e instanceof Promise)return!1;if(typeof e=="object")try{return Object.keys(e).length===0}catch{return!1}return!1},k=e=>Object.prototype.toString.call(e).slice(8,-1).toLowerCase(),_=e=>{switch(k(e)){case"promise":return[e];case"array":return e.some(o=>k(o)!=="promise")?(console.error(new TypeError("Binding values should all be of type Promise")),"error"):e;default:return!1}},A=e=>{f.delete(e),e.instance.proxy.close(),j(e.instance)},x=(e,n)=>{if(n.value){const o=_(n.value);if(o==="error")return;e.instance.proxy.open(),e.appendChild(e.mask),f.add(e),o&&Promise.all(o).catch(s=>{console.error(new Error("Promise handling errors"),s)}).finally(()=>{A(e)})}else A(e)},B=e=>{e.removeAttribute("zindex"),e.removeAttribute("positiontype"),e.removeAttribute("backdrop"),e.removeAttribute("message"),e.removeAttribute("view"),e.removeAttribute("loadingtemplateref")},L=(e,n)=>{const o=u(u({},new O),n),s=o.loadingTemplateRef,a=E(D,u({},o),s?()=>s:null);e.style.position=o.positionType,e.options=o,e.instance=a,e.mask=a.proxy.$el},T={mounted:function(e,n,o){L(e,o.props),B(e),!v(n.value)&&x(e,n)},updated:function(e,n,o){!v(n.value)&&f.has(e)||v(n.value)&&!f.has(e)||(!f.has(e)&&L(e,o.props),B(e),x(e,n))}},z={type:{type:String,default:"button"},variant:{type:String,default:"primary"},size:{type:String,default:"md"},position:{type:String,default:"default"},bordered:{type:Boolean,default:!1},icon:{type:String,default:""},showLoading:{type:Boolean,default:!1},width:{type:String},disabled:{type:Boolean,default:!1},autofocus:{type:Boolean,default:!1},onClick:{type:Function}};var G="",p=t.defineComponent({name:"DButton",directives:{devLoading:T},props:z,setup(e,n){const o=t.ref(null),s=d=>{var c;e.showLoading||(c=e.onClick)==null||c.call(e,d)},a=t.computed(()=>n.slots.default),m=t.computed(()=>{const{variant:d,size:c,position:w,bordered:N,icon:y}=e,b=`devui-btn devui-btn-${d} devui-btn-${c} devui-btn-${w}`,h=N?"bordered":"",R=!!y&&!a.value&&d!=="primary"?"d-btn-icon":"";return`${b} ${h} ${R} ${y?"d-btn-icon-wrap":""}`}),g=t.computed(()=>{if(!e.icon)return;const d="devui-icon-fix icon";return a.value?`${d} clear-right-5`:d});return()=>{var b,h;const{icon:d,type:c,disabled:w,showLoading:N,width:y}=e;return t.createVNode("div",t.mergeProps({class:"devui-btn-host"},n.attrs),[t.withDirectives(t.createVNode("button",{class:m.value,type:c,disabled:w,style:{width:y},onClick:s},[d?t.createVNode(r,{name:d,class:g.value},null):null,t.createVNode("span",{class:"button-content",ref:o},[(h=(b=n.slots).default)==null?void 0:h.call(b)])]),[[t.resolveDirective("devLoading"),N]])])}}});t.defineComponent(C),p.install=function(e){e.directive("dLoading",T),e.component(p.name,p)};var M={title:"Button \u6309\u94AE",category:"\u901A\u7528",status:"100%",install(e){e.use(p)}};i.Button=p,i.buttonProps=z,i.default=M,Object.defineProperty(i,"__esModule",{value:!0}),i[Symbol.toStringTag]="Module"});
package/button/style.css CHANGED
@@ -1 +1 @@
1
- .devui-font-size-base{font-size:var(--devui-font-size, 12px)}.devui-font-base{font-size:var(--devui-font-size, 12px);font-weight:normal;line-height:1.5}.devui-font-size-modal-title{font-size:var(--devui-font-size-modal-title, 18px)}.devui-font-modal-title{font-size:var(--devui-font-size-modal-title, 18px);font-weight:bold;line-height:1.5}.devui-font-size-page-title{font-size:var(--devui-font-size-page-title, 16px)}.devui-font-page-title{font-size:var(--devui-font-size-page-title, 16px);font-weight:bold;line-height:1.5}.devui-font-size-secondary-title{font-size:var(--devui-font-size-card-title, 14px)}.devui-font-secondary-title{font-size:var(--devui-font-size-card-title, 14px);font-weight:bold;line-height:1.5}.devui-btn{padding:3px 20px;font-size:var(--devui-font-size-md, 12px);height:28px;line-height:1.5;border-radius:var(--devui-border-radius, 2px);border-width:1px;border-color:transparent;background-color:transparent}.devui-btn.devui-btn-text{color:var(--devui-brand-active, #526ecc);padding:0}.devui-btn.devui-btn-text-dark{color:var(--devui-brand-active, #526ecc);padding:0}.devui-btn.devui-btn-common{color:var(--devui-text, #252b3a);min-width:64px;background-color:var(--devui-block, #ffffff);border-color:var(--devui-line, #adb0b8)}.devui-btn.devui-btn-stress{color:var(--devui-light-text, #ffffff);min-width:64px;background-color:var(--devui-primary, #5e7ce0)}.devui-btn.devui-btn-primary{color:var(--devui-light-text, #ffffff);min-width:64px;background-color:var(--devui-primary, #5e7ce0)}.devui-btn.devui-btn-danger{color:var(--devui-light-text, #ffffff);min-width:64px;background-color:var(--devui-contrast, #f66f6a)}.devui-btn.devui-btn-left{border-radius:var(--devui-border-radius, 2px) 0 0 var(--devui-border-radius, 2px)}.devui-btn.devui-btn-right{border-radius:0 var(--devui-border-radius, 2px) var(--devui-border-radius, 2px) 0}.devui-btn.devui-btn-xs{padding:1px 5px;height:24px;font-size:var(--devui-font-size-sm, 12px);min-width:48px}.devui-btn.devui-btn-sm{padding:1px 15px;height:24px;font-size:var(--devui-font-size-sm, 12px);min-width:56px}.devui-btn.devui-btn-lg{padding:5px 23px;height:32px;font-size:var(--devui-font-size-lg, 14px);min-width:72px}.devui-btn.devui-btn-text:hover{background-color:transparent;color:var(--devui-brand-active-focus, #344899)}.devui-btn.devui-btn-text:focus{background-color:transparent;color:var(--devui-brand-active-focus, #344899)}.devui-btn.devui-btn-text:active{background-color:transparent;color:var(--devui-brand-active-focus, #344899)}.devui-btn.devui-btn-text-dark:hover{background-color:transparent;color:var(--devui-brand-active-focus, #344899)}.devui-btn.devui-btn-text-dark:focus{background-color:transparent;color:var(--devui-brand-active-focus, #344899)}.devui-btn.devui-btn-text-dark:active{background-color:transparent;color:var(--devui-brand-active-focus, #344899)}.devui-btn.devui-btn-common:hover{border-color:var(--devui-form-control-line-active, #5e7ce0);color:var(--devui-brand-active, #526ecc)}.devui-btn.devui-btn-common:focus{border-color:var(--devui-form-control-line-active, #5e7ce0);color:var(--devui-brand-active, #526ecc)}.devui-btn.devui-btn-common:active{border-color:var(--devui-form-control-line-active, #5e7ce0);color:var(--devui-brand-active, #526ecc)}.devui-btn.devui-btn-stress:hover{background-color:var(--devui-primary-hover, #7693f5)}.devui-btn.devui-btn-stress:focus{background-color:var(--devui-primary-hover, #7693f5)}.devui-btn.devui-btn-stress:active{background-color:var(--devui-primary-active, #344899)}.devui-btn.devui-btn-primary:hover{background-color:var(--devui-primary-hover, #7693f5)}.devui-btn.devui-btn-primary:focus{background-color:var(--devui-primary-hover, #7693f5)}.devui-btn.devui-btn-primary:active{background-color:var(--devui-primary-active, #344899)}.devui-btn.devui-btn-danger:hover{background-color:var(--devui-contrast-hover, #ff8b87)}.devui-btn.devui-btn-danger:focus{background-color:var(--devui-contrast-hover, #ff8b87)}.devui-btn.devui-btn-danger:active{background-color:var(--devui-contrast-active, #de504e)}.devui-btn.devui-btn-common:disabled{color:var(--devui-disabled-text, #adb0b8);background:var(--devui-disabled-bg, #f5f5f6);border:1px solid var(--devui-disabled-line, #dfe1e6)}.devui-btn.devui-btn-primary:disabled{color:var(--devui-light-text, #ffffff);background:var(--devui-primary-disabled, #beccfa);border:none}.devui-btn.devui-btn-danger:disabled{color:var(--devui-disabled-text, #adb0b8);background:var(--devui-disabled-bg, #f5f5f6);border:1px solid var(--devui-disabled-line, #dfe1e6)}.devui-btn.devui-btn-text-dark:disabled{color:var(--devui-disabled-text, #adb0b8)}.devui-btn.devui-btn-text:disabled{color:var(--devui-disabled-text, #adb0b8)}.devui-btn.bordered.devui-btn-common{color:var(--devui-text, #252b3a);border-color:transparent}.devui-btn.bordered.devui-btn-common:hover,.devui-btn.bordered.devui-btn-common:focus{border-color:var(--devui-primary-hover, #7693f5)}.devui-btn.bordered.devui-btn-common:active{border-color:var(--devui-primary-active, #344899)}.devui-btn.bordered.devui-btn-stress,.devui-btn.bordered.devui-btn-primary{border-color:var(--devui-brand, #5e7ce0);color:var(--devui-brand, #5e7ce0);background-color:var(--devui-block, #ffffff)}.devui-btn.bordered.devui-btn-success{border-color:var(--devui-success, #50d4ab);color:var(--devui-success, #50d4ab);background-color:var(--devui-block, #ffffff)}.devui-btn.bordered.devui-btn-warning{border-color:var(--devui-warning, #fac20a);color:var(--devui-warning, #fac20a);background-color:var(--devui-block, #ffffff)}.devui-btn.bordered.devui-btn-danger{border-color:var(--devui-danger, #f66f6a);color:var(--devui-danger, #f66f6a);background-color:var(--devui-block, #ffffff)}.devui-btn.d-btn-icon:hover,.devui-btn.d-btn-icon:focus{border:1px solid var(--devui-list-item-hover-bg, #f2f5fc);background-color:var(--devui-list-item-hover-bg, #f2f5fc)}.devui-btn.d-btn-icon:disabled{background-color:var(--devui-disabled-bg, #f5f5f6)}.devui-btn:not(:disabled).devui-btn-text.d-btn-icon-wrap,.devui-btn:not(:disabled).devui-btn-text-dark.d-btn-icon-wrap{color:var(--devui-text, #252b3a)}.devui-btn:not(:disabled).devui-btn-text.d-btn-icon-wrap .devui-icon-fix,.devui-btn:not(:disabled).devui-btn-text-dark.d-btn-icon-wrap .devui-icon-fix{color:var(--devui-text-weak, #575d6c)}.devui-btn:not(:disabled).devui-btn-text.d-btn-icon-wrap:hover,.devui-btn:not(:disabled).devui-btn-text-dark.d-btn-icon-wrap:hover{color:var(--devui-list-item-hover-text, #526ecc)}.devui-btn:not(:disabled).devui-btn-text.d-btn-icon-wrap:hover .devui-icon-fix,.devui-btn:not(:disabled).devui-btn-text-dark.d-btn-icon-wrap:hover .devui-icon-fix{color:var(--devui-icon-fill-active, #5e7ce0)}.devui-loading .devui-loading-default-spinner div{background-color:var(--devui-text, #252b3a)}.devui-btn-host{display:inline-block}.devui-btn{transition:background-color .2s;border-style:solid;white-space:nowrap;display:flex;align-items:center;justify-content:center}.devui-btn:disabled,.devui-btn[disabled]{cursor:not-allowed}.devui-btn.d-btn-icon{padding:7px 8px;line-height:1em;border:1px solid transparent}.devui-btn.d-btn-icon.devui-btn-xs,.devui-btn.d-btn-icon.devui-btn-sm{padding:5px}.devui-btn.d-btn-icon.devui-btn-xs{min-width:24px}.devui-btn.d-btn-icon.devui-btn-sm{min-width:24px}.devui-btn.d-btn-icon.devui-btn-lg{min-width:32px}.devui-btn.d-btn-icon.devui-btn-lg .icon{font-size:var(--devui-font-size-icon, 16px)}.devui-btn:not(.d-btn-icon) .icon-fix{font-size:var(--devui-font-size-icon, 16px)}.devui-icon-fix{position:relative;font-size:var(--devui-font-size, 12px)}.devui-btn.devui-btn-common:not(:disabled) .devui-icon-fix{color:var(--devui-text-weak, #575d6c)}.devui-btn.devui-btn-common:not(:disabled):hover .devui-icon-fix,.devui-btn.devui-btn-common:not(:disabled):active .devui-icon-fix,.devui-btn.devui-btn-common:not(:disabled):focus .devui-icon-fix{color:var(--devui-icon-fill-active, #5e7ce0)}.button-content{display:inline-block;position:relative}.clear-right-5{margin-right:5px}
1
+ @keyframes devui-busy-spinner-anim{0%{transform:rotate(0) scale(1)}50%{transform:rotate(135deg) scale(1.5)}to{transform:rotate(270deg) scale(1)}}.devui-loading-mask{position:absolute;left:0;right:0;bottom:0;top:0;background-color:var(--devui-line, #adb0b8);opacity:.3}.devui-loading-wrapper{text-align:center}.devui-loading--full{position:fixed;left:0;right:0;bottom:0;top:0;z-index:9999}.devui-loading--hidden{overflow:hidden}.devui-loading-text{margin-left:10px}.devui-loading-area{position:absolute;transform:translate(-50%,-50%);padding:12px 14px;background:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px)}.devui-busy-default-spinner{position:relative;display:inline-block;width:15px;height:15px;animation:devui-busy-spinner-anim 1s linear infinite}.devui-busy-default-spinner div{position:absolute;left:44.5%;top:37%;width:6px;height:6px;border-radius:50%}.devui-busy-default-spinner .devui-loading-bar1{top:0;left:0;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-busy-default-spinner .devui-loading-bar2{top:0;left:9px;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-busy-default-spinner .devui-loading-bar3{top:9px;left:0;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-busy-default-spinner .devui-loading-bar4{top:9px;left:9px;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-font-size-base{font-size:var(--devui-font-size, 12px)}.devui-font-base{font-size:var(--devui-font-size, 12px);font-weight:normal;line-height:1.5}.devui-font-size-modal-title{font-size:var(--devui-font-size-modal-title, 18px)}.devui-font-modal-title{font-size:var(--devui-font-size-modal-title, 18px);font-weight:bold;line-height:1.5}.devui-font-size-page-title{font-size:var(--devui-font-size-page-title, 16px)}.devui-font-page-title{font-size:var(--devui-font-size-page-title, 16px);font-weight:bold;line-height:1.5}.devui-font-size-secondary-title{font-size:var(--devui-font-size-card-title, 14px)}.devui-font-secondary-title{font-size:var(--devui-font-size-card-title, 14px);font-weight:bold;line-height:1.5}.devui-btn{padding:3px 20px;font-size:var(--devui-font-size-md, 12px);height:28px;line-height:1.5;border-radius:var(--devui-border-radius, 2px);border-width:1px;border-color:transparent;background-color:transparent}.devui-btn.devui-btn-text{color:var(--devui-brand-active, #526ecc);padding:0}.devui-btn.devui-btn-text-dark{color:var(--devui-brand-active, #526ecc);padding:0}.devui-btn.devui-btn-common{color:var(--devui-text, #252b3a);min-width:64px;background-color:var(--devui-block, #ffffff);border-color:var(--devui-line, #adb0b8)}.devui-btn.devui-btn-stress{color:var(--devui-light-text, #ffffff);min-width:64px;background-color:var(--devui-primary, #5e7ce0)}.devui-btn.devui-btn-primary{color:var(--devui-light-text, #ffffff);min-width:64px;background-color:var(--devui-primary, #5e7ce0)}.devui-btn.devui-btn-danger{color:var(--devui-light-text, #ffffff);min-width:64px;background-color:var(--devui-contrast, #f66f6a)}.devui-btn.devui-btn-success{color:var(--devui-dark-text, #252b3a);min-width:64px;background-color:var(--devui-success, #50d4ab)}.devui-btn.devui-btn-warning{color:var(--devui-dark-text, #252b3a);min-width:64px;background-color:var(--devui-warning, #fac20a)}.devui-btn.devui-btn-left{border-radius:var(--devui-border-radius, 2px) 0 0 var(--devui-border-radius, 2px)}.devui-btn.devui-btn-right{border-radius:0 var(--devui-border-radius, 2px) var(--devui-border-radius, 2px) 0}.devui-btn.devui-btn-xs{padding:1px 5px;height:24px;font-size:var(--devui-font-size-sm, 12px);min-width:48px}.devui-btn.devui-btn-sm{padding:1px 15px;height:24px;font-size:var(--devui-font-size-sm, 12px);min-width:56px}.devui-btn.devui-btn-lg{padding:5px 23px;height:32px;font-size:var(--devui-font-size-lg, 14px);min-width:72px}.devui-btn.devui-btn-text:hover{background-color:transparent;color:var(--devui-brand-active-focus, #344899)}.devui-btn.devui-btn-text:focus{background-color:transparent;color:var(--devui-brand-active-focus, #344899)}.devui-btn.devui-btn-text:active{background-color:transparent;color:var(--devui-brand-active-focus, #344899)}.devui-btn.devui-btn-text-dark:hover{background-color:transparent;color:var(--devui-brand-active-focus, #344899)}.devui-btn.devui-btn-text-dark:focus{background-color:transparent;color:var(--devui-brand-active-focus, #344899)}.devui-btn.devui-btn-text-dark:active{background-color:transparent;color:var(--devui-brand-active-focus, #344899)}.devui-btn.devui-btn-common:hover{border-color:var(--devui-form-control-line-active, #5e7ce0);color:var(--devui-brand-active, #526ecc)}.devui-btn.devui-btn-common:focus{border-color:var(--devui-form-control-line-active, #5e7ce0);color:var(--devui-brand-active, #526ecc)}.devui-btn.devui-btn-common:active{border-color:var(--devui-form-control-line-active, #5e7ce0);color:var(--devui-brand-active, #526ecc)}.devui-btn.devui-btn-stress:hover{background-color:var(--devui-primary-hover, #7693f5)}.devui-btn.devui-btn-stress:focus{background-color:var(--devui-primary-hover, #7693f5)}.devui-btn.devui-btn-stress:active{background-color:var(--devui-primary-active, #344899)}.devui-btn.devui-btn-primary:hover{background-color:var(--devui-primary-hover, #7693f5)}.devui-btn.devui-btn-primary:focus{background-color:var(--devui-primary-hover, #7693f5)}.devui-btn.devui-btn-primary:active{background-color:var(--devui-primary-active, #344899)}.devui-btn.devui-btn-danger:hover{background-color:var(--devui-contrast-hover, #ff8b87)}.devui-btn.devui-btn-danger:focus{background-color:var(--devui-contrast-hover, #ff8b87)}.devui-btn.devui-btn-danger:active{background-color:var(--devui-contrast-active, #de504e)}.devui-btn.devui-btn-success:hover{background-color:var(--devui-success, #50d4ab)}.devui-btn.devui-btn-success:focus{background-color:var(--devui-success, #50d4ab)}.devui-btn.devui-btn-success:active{background-color:var(--devui-success, #50d4ab)}.devui-btn.devui-btn-warning:hover{background-color:var(--devui-warning, #fac20a)}.devui-btn.devui-btn-warning:focus{background-color:var(--devui-warning, #fac20a)}.devui-btn.devui-btn-warning:active{background-color:var(--devui-warning, #fac20a)}.devui-btn.devui-btn-common:disabled{color:var(--devui-disabled-text, #adb0b8);background:var(--devui-disabled-bg, #f5f5f6);border:1px solid var(--devui-disabled-line, #dfe1e6)}.devui-btn.devui-btn-primary:disabled{color:var(--devui-light-text, #ffffff);background:var(--devui-primary-disabled, #beccfa);border:none}.devui-btn.devui-btn-danger:disabled{color:var(--devui-disabled-text, #adb0b8);background:var(--devui-disabled-bg, #f5f5f6);border:1px solid var(--devui-disabled-line, #dfe1e6)}.devui-btn.devui-btn-text-dark:disabled{color:var(--devui-disabled-text, #adb0b8)}.devui-btn.devui-btn-text:disabled{color:var(--devui-disabled-text, #adb0b8)}.devui-btn.bordered.devui-btn-common{color:var(--devui-text, #252b3a);border-color:transparent}.devui-btn.bordered.devui-btn-common:hover,.devui-btn.bordered.devui-btn-common:focus{border-color:var(--devui-primary-hover, #7693f5)}.devui-btn.bordered.devui-btn-common:active{border-color:var(--devui-primary-active, #344899)}.devui-btn.bordered.devui-btn-stress,.devui-btn.bordered.devui-btn-primary{border-color:var(--devui-brand, #5e7ce0);color:var(--devui-brand, #5e7ce0);background-color:var(--devui-block, #ffffff)}.devui-btn.bordered.devui-btn-success{border-color:var(--devui-success, #50d4ab);color:var(--devui-success, #50d4ab);background-color:var(--devui-block, #ffffff)}.devui-btn.bordered.devui-btn-warning{border-color:var(--devui-warning, #fac20a);color:var(--devui-warning, #fac20a);background-color:var(--devui-block, #ffffff)}.devui-btn.bordered.devui-btn-danger{border-color:var(--devui-danger, #f66f6a);color:var(--devui-danger, #f66f6a);background-color:var(--devui-block, #ffffff)}.devui-btn.d-btn-icon:hover,.devui-btn.d-btn-icon:focus{border:1px solid var(--devui-list-item-hover-bg, #f2f5fc);background-color:var(--devui-list-item-hover-bg, #f2f5fc)}.devui-btn.d-btn-icon:disabled{background-color:var(--devui-disabled-bg, #f5f5f6)}.devui-btn:not(:disabled).devui-btn-text.d-btn-icon-wrap,.devui-btn:not(:disabled).devui-btn-text-dark.d-btn-icon-wrap{color:var(--devui-text, #252b3a)}.devui-btn:not(:disabled).devui-btn-text.d-btn-icon-wrap .devui-icon-fix,.devui-btn:not(:disabled).devui-btn-text-dark.d-btn-icon-wrap .devui-icon-fix{color:var(--devui-text-weak, #575d6c)}.devui-btn:not(:disabled).devui-btn-text.d-btn-icon-wrap:hover,.devui-btn:not(:disabled).devui-btn-text-dark.d-btn-icon-wrap:hover{color:var(--devui-list-item-hover-text, #526ecc)}.devui-btn:not(:disabled).devui-btn-text.d-btn-icon-wrap:hover .devui-icon-fix,.devui-btn:not(:disabled).devui-btn-text-dark.d-btn-icon-wrap:hover .devui-icon-fix{color:var(--devui-icon-fill-active, #5e7ce0)}.devui-loading .devui-loading-default-spinner div{background-color:var(--devui-text, #252b3a)}.devui-btn-host{display:inline-block}.devui-btn{transition:background-color .2s;border-style:solid;white-space:nowrap;display:flex;align-items:center;justify-content:center}.devui-btn:disabled,.devui-btn[disabled]{cursor:not-allowed}.devui-btn.d-btn-icon{padding:7px 8px;line-height:1em;border:1px solid transparent}.devui-btn.d-btn-icon.devui-btn-xs,.devui-btn.d-btn-icon.devui-btn-sm{padding:5px}.devui-btn.d-btn-icon.devui-btn-xs{min-width:24px}.devui-btn.d-btn-icon.devui-btn-sm{min-width:24px}.devui-btn.d-btn-icon.devui-btn-lg{min-width:32px}.devui-btn.d-btn-icon.devui-btn-lg .icon{font-size:var(--devui-font-size-icon, 16px)}.devui-btn:not(.d-btn-icon) .icon-fix{font-size:var(--devui-font-size-icon, 16px)}.devui-icon-fix{position:relative;font-size:var(--devui-font-size, 12px)}.devui-btn.devui-btn-common:not(:disabled) .devui-icon-fix{color:var(--devui-text-weak, #575d6c)}.devui-btn.devui-btn-common:not(:disabled):hover .devui-icon-fix,.devui-btn.devui-btn-common:not(:disabled):active .devui-icon-fix,.devui-btn.devui-btn-common:not(:disabled):focus .devui-icon-fix{color:var(--devui-icon-fill-active, #5e7ce0)}.button-content{display:inline-block;position:relative}.clear-right-5{margin-right:5px}
@@ -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;