vue-devui 1.0.0-rc.2 → 1.0.0-rc.3
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.
- package/README.md +129 -126
- package/auto-complete/index.es.js +98 -43
- package/auto-complete/index.umd.js +5 -3
- package/auto-complete/style.css +1 -1
- package/avatar/index.es.js +77 -81
- package/avatar/index.umd.js +1 -1
- package/button/index.es.js +4 -3
- package/button/index.umd.js +1 -1
- package/card/index.es.js +3 -6
- package/card/index.umd.js +1 -1
- package/checkbox/index.es.js +5 -11
- package/checkbox/index.umd.js +1 -1
- package/comment/index.es.js +2 -5
- package/comment/index.umd.js +1 -1
- package/countdown/index.es.js +3 -6
- package/countdown/index.umd.js +1 -1
- package/editable-select/index.es.js +2 -5
- package/editable-select/index.umd.js +1 -1
- package/grid/index.es.js +30 -36
- package/grid/index.umd.js +1 -1
- package/image-preview/index.es.js +19 -19
- package/image-preview/index.umd.js +1 -1
- package/input/index.es.js +2 -5
- package/input/index.umd.js +1 -1
- package/layout/index.es.js +6 -21
- package/layout/index.umd.js +1 -1
- package/loading/index.es.js +20 -12
- package/loading/index.umd.js +1 -1
- package/modal/index.es.js +54 -46
- package/modal/index.umd.js +1 -1
- package/nuxt/components/DropdownPropsKey.js +3 -0
- package/nuxt/components/autoCompleteProps.js +3 -0
- package/nuxt/components/avatarProps.js +3 -0
- package/nuxt/components/cardProps.js +3 -0
- package/nuxt/components/checkboxGroupInjectionKey.js +3 -0
- package/nuxt/components/checkboxGroupProps.js +3 -0
- package/nuxt/components/checkboxProps.js +3 -0
- package/nuxt/components/colProps.js +3 -0
- package/nuxt/components/colPropsBaseClass.js +3 -0
- package/nuxt/components/colPropsBaseStyle.js +3 -0
- package/nuxt/components/commentProps.js +3 -0
- package/nuxt/components/countdownProps.js +3 -0
- package/nuxt/components/editableSelectProps.js +3 -0
- package/nuxt/components/imagePreviewProps.js +3 -0
- package/nuxt/components/inputProps.js +3 -0
- package/nuxt/components/progressProps.js +3 -0
- package/nuxt/components/rateProps.js +3 -0
- package/nuxt/components/readTipProps.js +3 -0
- package/nuxt/components/resultProps.js +3 -0
- package/nuxt/components/rowProps.js +3 -0
- package/nuxt/components/screenSizes.js +3 -0
- package/nuxt/components/skeletonProps.js +3 -0
- package/nuxt/components/splitterProps.js +3 -0
- package/nuxt/components/statisticProps.js +3 -0
- package/nuxt/components/switchProps.js +3 -0
- package/nuxt/components/tagInputProps.js +3 -0
- package/nuxt/components/textareaProps.js +3 -0
- package/nuxt/components/timeAxisProps.js +3 -0
- package/overlay/index.es.js +5 -5
- package/overlay/index.umd.js +1 -1
- package/package.json +1 -1
- package/pagination/index.es.js +14 -13
- package/pagination/index.umd.js +1 -1
- package/popover/index.es.js +5 -5
- package/popover/index.umd.js +12 -12
- package/progress/index.es.js +33 -35
- package/progress/index.umd.js +3 -3
- package/rate/index.es.js +4 -7
- package/rate/index.umd.js +1 -1
- package/read-tip/index.es.js +2 -5
- package/read-tip/index.umd.js +1 -1
- package/result/index.es.js +2 -5
- package/result/index.umd.js +1 -1
- package/search/index.es.js +11 -11
- package/search/index.umd.js +8 -8
- package/skeleton/index.es.js +3 -6
- package/skeleton/index.umd.js +1 -1
- package/splitter/index.es.js +8 -11
- package/splitter/index.umd.js +15 -15
- package/statistic/index.es.js +7 -18
- package/statistic/index.umd.js +1 -1
- package/style.css +1 -1
- package/switch/index.es.js +3 -6
- package/switch/index.umd.js +1 -1
- package/tag-input/index.es.js +3 -6
- package/tag-input/index.umd.js +1 -1
- package/textarea/index.es.js +2 -5
- package/textarea/index.umd.js +1 -1
- package/timeline/index.es.js +8 -14
- package/timeline/index.umd.js +1 -1
- package/upload/index.es.js +60 -57
- package/upload/index.umd.js +1 -1
- package/vue-devui.es.js +11986 -24782
- package/vue-devui.umd.js +24 -22
package/switch/index.es.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { defineComponent, renderSlot, useSlots, createVNode } from "vue";
|
|
2
|
-
var _switch = "";
|
|
3
2
|
const switchProps = {
|
|
4
3
|
size: {
|
|
5
4
|
type: String,
|
|
@@ -30,6 +29,7 @@ const switchProps = {
|
|
|
30
29
|
default: void 0
|
|
31
30
|
}
|
|
32
31
|
};
|
|
32
|
+
var _switch = "";
|
|
33
33
|
var Switch = defineComponent({
|
|
34
34
|
name: "DSwitch",
|
|
35
35
|
props: switchProps,
|
|
@@ -86,15 +86,12 @@ var Switch = defineComponent({
|
|
|
86
86
|
}, [checked ? checkedContent : uncheckedContent])]), createVNode("small", null, null)]);
|
|
87
87
|
}
|
|
88
88
|
});
|
|
89
|
-
Switch.install = function(app) {
|
|
90
|
-
app.component(Switch.name, Switch);
|
|
91
|
-
};
|
|
92
89
|
var index = {
|
|
93
90
|
title: "Switch \u5F00\u5173",
|
|
94
91
|
category: "\u6570\u636E\u5F55\u5165",
|
|
95
92
|
status: "100%",
|
|
96
93
|
install(app) {
|
|
97
|
-
app.
|
|
94
|
+
app.component(Switch.name, Switch);
|
|
98
95
|
}
|
|
99
96
|
};
|
|
100
|
-
export { Switch, index as default };
|
|
97
|
+
export { Switch, index as default, switchProps };
|
package/switch/index.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(n,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(n=typeof globalThis!="undefined"?globalThis:n||self,e(n.index={},n.Vue))})(this,function(n,e){"use strict";
|
|
1
|
+
(function(n,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(n=typeof globalThis!="undefined"?globalThis:n||self,e(n.index={},n.Vue))})(this,function(n,e){"use strict";const r={size:{type:String,default:"middle"},color:{type:String,default:void 0},checked:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},beforeChange:{type:Function,default:void 0},change:{type:Function,default:void 0},"onUpdate:checked":{type:Function,default:void 0}};var g="",i=e.defineComponent({name:"DSwitch",props:r,emits:["change","update:checked"],setup(t,o){const d=()=>{if(t.disabled)return Promise.resolve(!1);if(t.beforeChange){const c=t.beforeChange(!t.checked);return typeof c=="boolean"?Promise.resolve(c):c}return Promise.resolve(!0)};return{toggle:()=>{d().then(c=>{!c||(o.emit("update:checked",!t.checked),o.emit("change",!t.checked))})}}},render(){const{size:t,checked:o,disabled:d,color:s,toggle:c}=this,u={"devui-switch":!0,[`devui-switch-${t}`]:t!=="","devui-checked":o,"devui-disabled":d},a=[`background: ${o&&!d?s:""}`,`border-color: ${o&&!d?s:""}`],h=e.renderSlot(e.useSlots(),"checkedContent"),f=e.renderSlot(e.useSlots(),"uncheckedContent");return e.createVNode("span",{class:u,style:a,onClick:c},[e.createVNode("span",{class:"devui-switch-inner-wrapper"},[e.createVNode("div",{class:"devui-switch-inner"},[o?h:f])]),e.createVNode("small",null,null)])}}),l={title:"Switch \u5F00\u5173",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(t){t.component(i.name,i)}};n.Switch=i,n.default=l,n.switchProps=r,Object.defineProperty(n,"__esModule",{value:!0}),n[Symbol.toStringTag]="Module"});
|
package/tag-input/index.es.js
CHANGED
|
@@ -32,7 +32,6 @@ var removeBtnSvg = createVNode("svg", mergeProps({
|
|
|
32
32
|
"d": "M8.86785321,3.13214679 C9.02624037,3.29053395 9.02624037,3.54733027 8.86785321,3.70571743 L6.573,6 L8.86785321,8.29428257 C9.02624037,8.45266973 9.02624037,8.70946605 8.86785321,8.86785321 C8.70946605,9.02624037 8.45266973,9.02624037 8.29428257,8.86785321 L6,6.573 L3.70571743,8.86785321 C3.54733027,9.02624037 3.29053395,9.02624037 3.13214679,8.86785321 C2.97375963,8.70946605 2.97375963,8.45266973 3.13214679,8.29428257 L5.427,6 L3.13214679,3.70571743 C2.97375963,3.54733027 2.97375963,3.29053395 3.13214679,3.13214679 C3.29053395,2.97375963 3.54733027,2.97375963 3.70571743,3.13214679 L6,5.427 L8.29428257,3.13214679 C8.45266973,2.97375963 8.70946605,2.97375963 8.86785321,3.13214679 Z",
|
|
33
33
|
"fill-rule": "nonzero"
|
|
34
34
|
}, null)])]);
|
|
35
|
-
var tagInput = "";
|
|
36
35
|
const tagInputProps = {
|
|
37
36
|
tags: {
|
|
38
37
|
type: Array,
|
|
@@ -91,6 +90,7 @@ const tagInputProps = {
|
|
|
91
90
|
default: false
|
|
92
91
|
}
|
|
93
92
|
};
|
|
93
|
+
var tagInput = "";
|
|
94
94
|
const KEYS_MAP = {
|
|
95
95
|
tab: "Tab",
|
|
96
96
|
down: "ArrowDown",
|
|
@@ -317,15 +317,12 @@ var TagInput = defineComponent({
|
|
|
317
317
|
})])])]);
|
|
318
318
|
}
|
|
319
319
|
});
|
|
320
|
-
TagInput.install = function(app) {
|
|
321
|
-
app.component(TagInput.name, TagInput);
|
|
322
|
-
};
|
|
323
320
|
var index = {
|
|
324
321
|
title: "TagInput \u6807\u7B7E\u8F93\u5165\u6846",
|
|
325
322
|
category: "\u6570\u636E\u5F55\u5165",
|
|
326
323
|
status: "100%",
|
|
327
324
|
install(app) {
|
|
328
|
-
app.
|
|
325
|
+
app.component(TagInput.name, TagInput);
|
|
329
326
|
}
|
|
330
327
|
};
|
|
331
|
-
export { TagInput, index as default };
|
|
328
|
+
export { TagInput, index as default, tagInputProps };
|
package/tag-input/index.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var K=Object.defineProperty;var
|
|
1
|
+
var K=Object.defineProperty;var E=Object.getOwnPropertySymbols;var O=Object.prototype.hasOwnProperty,R=Object.prototype.propertyIsEnumerable;var F=(u,e,o)=>e in u?K(u,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):u[e]=o,P=(u,e)=>{for(var o in e||(e={}))O.call(e,o)&&F(u,o,e[o]);if(E)for(var o of E(e))R.call(e,o)&&F(u,o,e[o]);return u};(function(u,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(u=typeof globalThis!="undefined"?globalThis:u||self,e(u.index={},u.Vue))})(this,function(u,e){"use strict";var o=e.createVNode("svg",e.mergeProps({width:"12px",height:"12px",viewBox:"0 0 12 12",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},{"xmlns:xlink":"http://www.w3.org/1999/xlink"}),[e.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[e.createVNode("path",{d:"M8.86785321,3.13214679 C9.02624037,3.29053395 9.02624037,3.54733027 8.86785321,3.70571743 L6.573,6 L8.86785321,8.29428257 C9.02624037,8.45266973 9.02624037,8.70946605 8.86785321,8.86785321 C8.70946605,9.02624037 8.45266973,9.02624037 8.29428257,8.86785321 L6,6.573 L3.70571743,8.86785321 C3.54733027,9.02624037 3.29053395,9.02624037 3.13214679,8.86785321 C2.97375963,8.70946605 2.97375963,8.45266973 3.13214679,8.29428257 L5.427,6 L3.13214679,3.70571743 C2.97375963,3.54733027 2.97375963,3.29053395 3.13214679,3.13214679 C3.29053395,2.97375963 3.54733027,2.97375963 3.70571743,3.13214679 L6,5.427 L8.29428257,3.13214679 C8.45266973,2.97375963 8.70946605,2.97375963 8.86785321,3.13214679 Z","fill-rule":"nonzero"},null)])]);const A={tags:{type:Array,default:()=>[]},displayProperty:{type:String,default:"name"},placeholder:{type:String,default:""},minLength:{type:Number,default:3},maxLength:{type:Number,default:Number.MAX_SAFE_INTEGER},maxTags:{type:Number,default:Number.MAX_SAFE_INTEGER},maxTagsText:{type:String,default:"\u5DF2\u8FBE\u5230\u6700\u5927\u4E2A\u6570\uFF1A"},spellcheck:{type:Boolean,default:!0},suggestionList:{type:Array,default:()=>[]},disabled:{type:Boolean,default:!1},isAddBySpace:{type:Boolean,default:!0},disabledText:{type:String,default:""},noData:{type:String,default:""},caseSensitivity:{type:Boolean,default:!1}};var j="";const p={tab:"Tab",down:"ArrowDown",up:"ArrowUp",enter:"Enter",space:" "};var b=e.defineComponent({name:"DTagInput",props:A,emits:["update:tags","update:suggestionList","valueChange"],setup(t,d){const g=(n,a)=>{const s=Object.assign({},a);return delete s.__index,n.concat(s)},m=(n,a)=>{const s=n.slice();return s.splice(a,1),s},l=e.ref(""),x=n=>{const a=n.target.value||"";l.value=a.trim()},i=e.computed(()=>{let n=t.suggestionList.map((a,s)=>P({__index:s},a));return l.value===""?n:n=t.caseSensitivity?n.filter(a=>a[t.displayProperty].indexOf(l.value)!==-1):n.filter(a=>a[t.displayProperty].toLowerCase().indexOf(l.value.toLowerCase())!==-1)}),r=e.ref(0);e.watch(i,()=>{r.value=0});const y=(n=!1)=>{if(n){r.value<i.value.length-1?r.value++:r.value=0;return}r.value>0?r.value--:r.value=i.value.length-1},h=e.ref(null),f=e.ref(!1),S=()=>{f.value=!0},L=()=>{f.value=!1},N=()=>{let n={[t.displayProperty]:l.value};if(l.value===""&&i.value.length===0)return!1;if(t.tags.findIndex(s=>s[t.displayProperty]===l.value)>-1||i.value.length===0&&(l.value.length<t.minLength||l.value.length>t.maxLength))return l.value="",!1;if(i.value.length){const s=i.value[r.value];n=s,d.emit("update:suggestionList",m(t.suggestionList,s.__index))}const a=g(t.tags,n);d.emit("valueChange",t.tags,a),d.emit("update:tags",a),i.value.length===0&&(l.value="")},C=n=>{switch(n.key){case p.tab:case p.enter:case p.space:if(!t.isAddBySpace&&p.space)return;N();break;case p.down:y(!0);break;case p.up:y();break}},V=(n,a)=>{n.preventDefault(),d.emit("update:suggestionList",g(t.suggestionList,t.tags[a]));const s=m(t.tags,a);d.emit("valueChange",t.tags,s),d.emit("update:tags",s),e.nextTick(()=>{var c;(c=h.value)==null||c.focus()})},B=(n,a)=>{n.preventDefault();const s=i.value[a],c=g(t.tags,s),k=m(t.suggestionList,s.__index);d.emit("valueChange",t.tags,c),d.emit("update:tags",c),d.emit("update:suggestionList",k)},w=e.computed(()=>t.maxTags<=t.tags.length),I=e.computed(()=>!t.disabled&&!w.value&&f.value);return{tagInputRef:h,tagInputVal:l,isInputBoxFocus:f,onInput:x,onInputFocus:S,onInputBlur:L,removeTag:V,onSuggestionItemClick:B,onInputKeydown:C,isShowSuggestion:I,mergedSuggestions:i,selectIndex:r,isTagsLimit:w}},render(){const{tagInputVal:t,isInputBoxFocus:d,disabled:g,disabledText:m,isTagsLimit:l,maxTagsText:x,displayProperty:i,tags:r,onInputKeydown:y,onInputFocus:h,onInputBlur:f,onInput:S,onSuggestionItemClick:L,removeTag:N,placeholder:C,spellcheck:V,isShowSuggestion:B,noData:w,mergedSuggestions:I,selectIndex:n,maxTags:a}=this,s={"devui-tags":!0,"devui-form-control":!0,"devui-dropdown-origin":!0,"devui-dropdown-origin-open":d,"devui-disabled":g},c={input:!0,"devui-input":!0,"invalid-tag":!1},k=[`display:${g?"none":"block"};`],M=e.createVNode("li",{class:"devui-suggestion-item devui-disabled"},[w]);return e.createVNode("div",{class:"devui-tags-host",tabindex:"-1"},[e.createVNode("div",{class:s,style:["box-shadow: none;"]},[e.createVNode("ul",{class:"devui-tag-list",title:g?m:""},[r.map((v,T)=>e.createVNode("li",{class:"devui-tag-item"},[e.createVNode("span",null,[v[i]]),!g&&e.createVNode("a",{class:"remove-button",onMousedown:_=>N(_,T)},[o])]))]),e.createVNode("input",{type:"text",ref:"tagInputRef",value:t,class:c,style:k,onKeydown:y,onFocus:h,onBlur:f,onInput:v=>S(v),placeholder:l?`${x} ${a}`:C,spellcheck:V,disabled:l},null)]),B?e.createVNode("div",{class:"devui-tags-autocomplete devui-dropdown-menu"},[e.createVNode("ul",{class:"devui-suggestion-list"},[I.length===0?M:I.map((v,T)=>e.createVNode("li",{class:{"devui-suggestion-item":!0,selected:T===n},onMousedown:_=>{L(_,T)}},[v[i]]))])]):""])}}),D={title:"TagInput \u6807\u7B7E\u8F93\u5165\u6846",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(t){t.component(b.name,b)}};u.TagInput=b,u.default=D,u.tagInputProps=A,Object.defineProperty(u,"__esModule",{value:!0}),u[Symbol.toStringTag]="Module"});
|
package/textarea/index.es.js
CHANGED
|
@@ -118,15 +118,12 @@ var Textarea = defineComponent({
|
|
|
118
118
|
}, [curValueRef.length, !(maxLength != null ? maxLength : false) ? "" : " / " + maxLength])]);
|
|
119
119
|
}
|
|
120
120
|
});
|
|
121
|
-
Textarea.install = function(app) {
|
|
122
|
-
app.component(Textarea.name, Textarea);
|
|
123
|
-
};
|
|
124
121
|
var index = {
|
|
125
122
|
title: "Textarea \u591A\u884C\u6587\u672C\u6846",
|
|
126
123
|
category: "\u6570\u636E\u5F55\u5165",
|
|
127
124
|
status: "100%",
|
|
128
125
|
install(app) {
|
|
129
|
-
app.
|
|
126
|
+
app.component(Textarea.name, Textarea);
|
|
130
127
|
}
|
|
131
128
|
};
|
|
132
|
-
export { Textarea, index as default };
|
|
129
|
+
export { Textarea, index as default, textareaProps };
|
package/textarea/index.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(t,a){typeof exports=="object"&&typeof module!="undefined"?a(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],a):(t=typeof globalThis!="undefined"?globalThis:t||self,a(t.index={},t.Vue))})(this,function(t,a){"use strict";const d={id:{type:String,default:void 0},autofocus:{type:Boolean,default:!1},showCount:{type:Boolean,default:!1},placeholder:{type:String,default:void 0},value:{type:String,default:""},maxLength:{type:[String,Number],default:void 0},disabled:{type:Boolean,default:!1},error:{type:Boolean,default:!1},cssClass:{type:String,default:""},resize:{type:String,default:"none"}};var C="",l=a.defineComponent({name:"DTextarea",props:d,emits:["update:value","focus","blur","change","keydown"],setup(o,u){const s={error:o.error,[o.cssClass]:!0},n=a.ref(o.value);return{textareaCls:s,onInput:e=>{const r=e.target.value;n.value=r,u.emit("update:value",r)},onFocus:e=>{u.emit("focus",e)},onBlur:e=>{u.emit("blur",e)},onChange:e=>{u.emit("change",e.target.value)},onKeydown:e=>{u.emit("keydown",e)},curValueRef:n,autofocus:o.autofocus}},render(){const{id:o,placeholder:u,disabled:s,maxLength:n,resize:i,textareaCls:f,onInput:c,onFocus:p,onBlur:y,onChange:e,onKeydown:r,showCount:m,autofocus:v,curValueRef:g}=this;return a.createVNode("div",{class:"devui-textarea-wrap"},[a.createVNode("textarea",a.mergeProps({DTextarea:!0},{id:o,value:g,autofocus:v,placeholder:u,disabled:s,maxlength:n,style:{resize:i},class:f,onInput:c,onFocus:p,onBlur:y,onChange:e,onKeydown:r}),null),m&&a.createVNode("div",{class:"devui-textarea-show-count"},[g.length,(n!=null?n:!1)?" / "+n:""])])}}),h={title:"Textarea \u591A\u884C\u6587\u672C\u6846",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(o){o.component(l.name,l)}};t.Textarea=l,t.default=h,t.textareaProps=d,Object.defineProperty(t,"__esModule",{value:!0}),t[Symbol.toStringTag]="Module"});
|
package/timeline/index.es.js
CHANGED
|
@@ -193,11 +193,11 @@ var Timeline = defineComponent({
|
|
|
193
193
|
if (props.direction === "horizontal") {
|
|
194
194
|
nextTick(() => {
|
|
195
195
|
var _a;
|
|
196
|
-
const
|
|
196
|
+
const element = timeAxis.value;
|
|
197
197
|
if (props.center) {
|
|
198
|
-
style.marginLeft = (((_a =
|
|
198
|
+
style.marginLeft = (((_a = element == null ? void 0 : element.firstElementChild) == null ? void 0 : _a.clientWidth) || 0) / 2 + "px";
|
|
199
199
|
}
|
|
200
|
-
style.height = Math.max(...Array.from(
|
|
200
|
+
style.height = Math.max(...Array.from(element == null ? void 0 : element.querySelectorAll(".devui-timeline-item-data-top")).map((el) => el.clientHeight), ...Array.from(element == null ? void 0 : element.querySelectorAll(".devui-timeline-item-data-bottom")).map((el) => el.clientHeight)) * 2 + Math.max(...Array.from(element == null ? void 0 : element.querySelectorAll(".devui-timeline-item-axis")).map((el) => el.clientHeight)) + "px";
|
|
201
201
|
});
|
|
202
202
|
}
|
|
203
203
|
};
|
|
@@ -241,7 +241,7 @@ var Timeline = defineComponent({
|
|
|
241
241
|
return item;
|
|
242
242
|
}
|
|
243
243
|
if (props.mode === "alternative") {
|
|
244
|
-
return renderItemPosition(item, index2 % 2
|
|
244
|
+
return renderItemPosition(item, index2 % 2 === 0 ? "bottom" : "top");
|
|
245
245
|
} else {
|
|
246
246
|
return renderItemPosition(item, "bottom");
|
|
247
247
|
}
|
|
@@ -250,7 +250,7 @@ var Timeline = defineComponent({
|
|
|
250
250
|
return item;
|
|
251
251
|
}
|
|
252
252
|
if (props.mode === "alternative") {
|
|
253
|
-
return renderItemPosition(item, index2 % 2
|
|
253
|
+
return renderItemPosition(item, index2 % 2 === 0 ? "left" : "right");
|
|
254
254
|
} else {
|
|
255
255
|
return renderItemPosition(item, "right");
|
|
256
256
|
}
|
|
@@ -268,19 +268,13 @@ var Timeline = defineComponent({
|
|
|
268
268
|
};
|
|
269
269
|
}
|
|
270
270
|
});
|
|
271
|
-
Timeline.install = function(app) {
|
|
272
|
-
app.component(Timeline.name, Timeline);
|
|
273
|
-
};
|
|
274
|
-
TimelineItem.install = function(app) {
|
|
275
|
-
app.component(TimelineItem.name, TimelineItem);
|
|
276
|
-
};
|
|
277
271
|
var index = {
|
|
278
272
|
title: "Timeline \u65F6\u95F4\u8F74",
|
|
279
273
|
category: "\u6570\u636E\u5C55\u793A",
|
|
280
274
|
status: "100%",
|
|
281
275
|
install(app) {
|
|
282
|
-
app.
|
|
283
|
-
app.
|
|
276
|
+
app.component(Timeline.name, Timeline);
|
|
277
|
+
app.component(TimelineItem.name, TimelineItem);
|
|
284
278
|
}
|
|
285
279
|
};
|
|
286
|
-
export { Timeline, TimelineItem, index as default };
|
|
280
|
+
export { Timeline, TimelineItem, index as default, timeAxisProps };
|
package/timeline/index.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(s,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(s=typeof globalThis!="undefined"?globalThis:s||self,e(s.index={},s.Vue))})(this,function(s,e){"use strict";const h={direction:{type:String,default:"vertical"},center:{type:Boolean,default:!1},mode:{type:String,default:"normal"},timePosition:{type:String,default:"left"}},b={name:{type:String,default:"",required:!0},size:{type:String,default:"inherit"},color:{type:String,default:"inherit"},classPrefix:{type:String,default:"icon"}};var I=e.defineComponent({name:"DIcon",props:b,setup(t){const{name:l,size:u,color:i,classPrefix:c}=e.toRefs(t);return()=>/^((https?):)?\/\//.test(l.value)?e.createVNode("img",{src:l.value,alt:l.value.split("/")[l.value.split("/").length-1],style:{width:u.value,verticalAlign:"text-bottom"}},null):e.createVNode("i",{class:`${c.value} ${c.value}-${l.value}`,style:{fontSize:u.value,color:i.value}},null)}});const z={time:{type:String},dotColor:{type:String},lineStyle:{type:String,default:"solid"},lineColor:{type:String},position:{type:String},timePosition:{type:String,default:"left"},type:{type:String,default:"primary"}};var p=e.defineComponent({name:"DTimelineItem",components:{DIcon:I},props:z,emits:[],setup(t,l){const u=e.inject("timeAxis"),i="devui-timeline-item",c=()=>{var o,a;return e.createVNode("div",{class:`${i}-time`},[l.slots.time?(a=(o=l.slots).time)==null?void 0:a.call(o):t.time])},n=()=>{var o,a;return e.createVNode("div",{class:`${i}-content`},[(a=(o=l.slots).default)==null?void 0:a.call(o,t)])},f=o=>o.includes(t.position)?n():u.props.direction==="horizontal"||t.timePosition==="left"?c():"",d=o=>o==="primary"?"":e.createVNode("i",{class:`icon-${o==="success"?"right":o}-o`},null),m=()=>{var o,a;return l.slots.dot?e.createVNode("div",{style:{color:t.dotColor},class:`${i}-dot`},[e.createTextVNode(" "),(a=(o=l.slots).dot)==null?void 0:a.call(o)]):e.createVNode("div",{class:`${i}-dot ${i}-type-${t.type}`,style:{borderColor:t.dotColor}},[d(t.type)])};return()=>e.createVNode("div",{class:i},[e.createVNode("div",{class:`${i}-data-left ${i}-data-top`},[f(["top","left"])]),e.createVNode("div",{class:`${i}-axis`},[m(),u.props.direction==="vertical"&&t.timePosition==="bottom"?c():"",e.createVNode("div",{class:`${i}-line ${i}-line-style-${t.lineStyle}`,style:{borderColor:t.lineColor}},[l.slots.extra?e.createVNode("div",{class:`${i}-line-extra`},[l.slots.extra()]):""])]),e.createVNode("div",{class:`${i}-data-right ${i}-data-bottom`},[f(["right","bottom"])])])}}),q="",y=e.defineComponent({name:"DTimeline",components:{TimelineItem:p},props:h,emits:[],setup(t,l){e.provide("timeAxis",{ctx:l,props:t});const u=e.ref(),i=e.reactive({marginLeft:"0px",height:"auto"}),c=()=>{i.height="auto",i.marginLeft="0px",t.direction==="horizontal"&&e.nextTick(()=>{var f;const n=u.value;t.center&&(i.marginLeft=(((f=n==null?void 0:n.firstElementChild)==null?void 0:f.clientWidth)||0)/2+"px"),i.height=Math.max(...Array.from(n==null?void 0:n.querySelectorAll(".devui-timeline-item-data-top")).map(d=>d.clientHeight),...Array.from(n==null?void 0:n.querySelectorAll(".devui-timeline-item-data-bottom")).map(d=>d.clientHeight))*2+Math.max(...Array.from(n==null?void 0:n.querySelectorAll(".devui-timeline-item-axis")).map(d=>d.clientHeight))+"px"})};return e.onMounted(()=>{c()}),e.watch(e.toRef(t,"direction"),()=>{c()}),()=>{const n=(m,o)=>o?e.createVNode(m,{position:o},null):e.createVNode(m,null,null),f=()=>{var a,S,$;const m=($=(S=(a=l.slots).default)==null?void 0:S.call(a))!=null?$:[];let o;return m.length===1&&m[0].type===e.Fragment?o=m[0].children||[]:o=m,o.map((r,g)=>{var V,N,P,A,v,x,C,T;return g+1===o.length&&!((V=r.props)==null?void 0:V.lineStyle)&&!((N=r.props)==null?void 0:N["line-style"])&&(r=e.createVNode(r,{"line-style":"none"},null)),!((P=r.props)==null?void 0:P.timePosition)&&!((A=r.props)==null?void 0:A["time-position"])&&(r=e.createVNode(r,{"time-position":t.timePosition?t.timePosition:"left"},null)),t.direction==="horizontal"?((v=r.props)==null?void 0:v.position)==="top"||((x=r.props)==null?void 0:x.position)==="bottom"?r:t.mode==="alternative"?n(r,g%2===0?"bottom":"top"):n(r,"bottom"):((C=r.props)==null?void 0:C.position)==="left"||((T=r.props)==null?void 0:T.position)==="right"?r:t.mode==="alternative"?n(r,g%2===0?"left":"right"):n(r,"right")})},d=()=>t.direction==="horizontal"?"horizontal":"vertical";return e.createVNode("div",{class:`devui-timeline devui-timeline-${d()} ${t.center?"devui-timeline-"+d()+"-center":""} `,ref:u,style:i},[f()])}}}),D={title:"Timeline \u65F6\u95F4\u8F74",category:"\u6570\u636E\u5C55\u793A",status:"100%",install(t){t.component(y.name,y),t.component(p.name,p)}};s.Timeline=y,s.TimelineItem=p,s.default=D,s.timeAxisProps=h,Object.defineProperty(s,"__esModule",{value:!0}),s[Symbol.toStringTag]="Module"});
|
package/upload/index.es.js
CHANGED
|
@@ -455,7 +455,7 @@ const useSelectFiles = () => {
|
|
|
455
455
|
if (uploadOptions && beyondMaximalSize(file.size, uploadOptions.maximumSize)) {
|
|
456
456
|
return {
|
|
457
457
|
checkError: true,
|
|
458
|
-
errorMsg: getBeyondMaximalFileSizeMsg(file.name, uploadOptions.maximumSize)
|
|
458
|
+
errorMsg: getBeyondMaximalFileSizeMsg(file.name, uploadOptions.maximumSize || 0)
|
|
459
459
|
};
|
|
460
460
|
}
|
|
461
461
|
return { checkError: false, errorMsg: void 0 };
|
|
@@ -494,11 +494,11 @@ class FileUploader {
|
|
|
494
494
|
}
|
|
495
495
|
send(uploadFiles) {
|
|
496
496
|
return new Promise((resolve, reject) => {
|
|
497
|
-
const { uri, method, headers, authToken, authTokenHeader, additionalParameter, fileFieldName, withCredentials, responseType } = this.uploadOptions;
|
|
497
|
+
const { uri, method, headers, authToken, authTokenHeader, additionalParameter, fileFieldName, withCredentials, responseType } = this.uploadOptions || {};
|
|
498
498
|
const authTokenHeader_ = authTokenHeader || "Authorization";
|
|
499
499
|
const fileFieldName_ = fileFieldName || "file";
|
|
500
500
|
this.xhr = new XMLHttpRequest();
|
|
501
|
-
this.xhr.open(method || "POST", uri);
|
|
501
|
+
this.xhr.open(method || "POST", uri || "");
|
|
502
502
|
if (withCredentials) {
|
|
503
503
|
this.xhr.withCredentials = withCredentials;
|
|
504
504
|
}
|
|
@@ -510,7 +510,8 @@ class FileUploader {
|
|
|
510
510
|
}
|
|
511
511
|
if (headers) {
|
|
512
512
|
Object.keys(headers).forEach((key) => {
|
|
513
|
-
|
|
513
|
+
var _a;
|
|
514
|
+
(_a = this.xhr) == null ? void 0 : _a.setRequestHeader(key, headers[key]);
|
|
514
515
|
});
|
|
515
516
|
}
|
|
516
517
|
this.xhr.upload.onprogress = (e) => {
|
|
@@ -524,19 +525,21 @@ class FileUploader {
|
|
|
524
525
|
this.xhr = null;
|
|
525
526
|
};
|
|
526
527
|
this.xhr.onerror = () => {
|
|
527
|
-
|
|
528
|
+
var _a, _b;
|
|
529
|
+
this.response = (_a = this.xhr) == null ? void 0 : _a.response;
|
|
528
530
|
this.status = UploadStatus.failed;
|
|
529
|
-
reject({ file: this.file, response: this.xhr.response });
|
|
531
|
+
reject({ file: this.file, response: (_b = this.xhr) == null ? void 0 : _b.response });
|
|
530
532
|
};
|
|
531
533
|
this.xhr.onload = () => {
|
|
532
|
-
|
|
534
|
+
var _a, _b, _c;
|
|
535
|
+
if (((_a = this.xhr) == null ? void 0 : _a.readyState) === 4 && this.xhr.status >= 200 && this.xhr.status < 300) {
|
|
533
536
|
this.response = this.xhr.response;
|
|
534
537
|
this.status = UploadStatus.uploaded;
|
|
535
538
|
resolve({ file: this.file, response: this.xhr.response });
|
|
536
539
|
} else {
|
|
537
|
-
this.response = this.xhr.response;
|
|
540
|
+
this.response = (_b = this.xhr) == null ? void 0 : _b.response;
|
|
538
541
|
this.status = UploadStatus.failed;
|
|
539
|
-
reject({ file: this.file, response: this.xhr.response });
|
|
542
|
+
reject({ file: this.file, response: (_c = this.xhr) == null ? void 0 : _c.response });
|
|
540
543
|
}
|
|
541
544
|
};
|
|
542
545
|
});
|
|
@@ -643,7 +646,7 @@ const useUpload = () => {
|
|
|
643
646
|
};
|
|
644
647
|
const deleteFile = (file) => {
|
|
645
648
|
const deleteUploadFile = fileUploaders.value.find((fileUploader) => fileUploader.file === file);
|
|
646
|
-
deleteUploadFile.cancel();
|
|
649
|
+
deleteUploadFile == null ? void 0 : deleteUploadFile.cancel();
|
|
647
650
|
fileUploaders.value = fileUploaders.value.filter((fileUploader) => {
|
|
648
651
|
return file !== fileUploader.file;
|
|
649
652
|
});
|
|
@@ -708,7 +711,6 @@ var Upload = defineComponent({
|
|
|
708
711
|
getSameNameFiles
|
|
709
712
|
} = useUpload();
|
|
710
713
|
const isDropOVer = ref(false);
|
|
711
|
-
ref("");
|
|
712
714
|
const alertMsg = (errorMsg) => {
|
|
713
715
|
NotificationService.open({
|
|
714
716
|
type: "warning",
|
|
@@ -716,10 +718,11 @@ var Upload = defineComponent({
|
|
|
716
718
|
});
|
|
717
719
|
};
|
|
718
720
|
const checkValid = () => {
|
|
721
|
+
var _a;
|
|
719
722
|
let totalFileSize = 0;
|
|
720
723
|
fileUploaders.value.forEach((fileUploader) => {
|
|
721
724
|
totalFileSize += fileUploader.file.size;
|
|
722
|
-
const checkResult = _validateFiles(fileUploader.file, accept.value, fileUploader.uploadOptions);
|
|
725
|
+
const checkResult = _validateFiles(fileUploader.file, (accept == null ? void 0 : accept.value) || "", fileUploader.uploadOptions);
|
|
723
726
|
if (checkResult && checkResult.checkError) {
|
|
724
727
|
deleteFile(fileUploader.file);
|
|
725
728
|
alertMsg(checkResult.errorMsg);
|
|
@@ -727,51 +730,13 @@ var Upload = defineComponent({
|
|
|
727
730
|
}
|
|
728
731
|
});
|
|
729
732
|
if (oneTimeUpload.value) {
|
|
730
|
-
const checkResult = checkAllFilesSize(totalFileSize, uploadOptions.value.maximumSize);
|
|
733
|
+
const checkResult = checkAllFilesSize(totalFileSize, ((_a = uploadOptions == null ? void 0 : uploadOptions.value) == null ? void 0 : _a.maximumSize) || 0);
|
|
731
734
|
if (checkResult && checkResult.checkError) {
|
|
732
735
|
removeFiles();
|
|
733
736
|
alertMsg(checkResult.errorMsg);
|
|
734
737
|
}
|
|
735
738
|
}
|
|
736
739
|
};
|
|
737
|
-
const _dealFiles = (promise) => {
|
|
738
|
-
resetSameNameFiles();
|
|
739
|
-
promise.then((files) => {
|
|
740
|
-
files.forEach((file) => {
|
|
741
|
-
if (!multiple.value) {
|
|
742
|
-
removeFiles();
|
|
743
|
-
}
|
|
744
|
-
addFile(file, uploadOptions.value);
|
|
745
|
-
});
|
|
746
|
-
checkValid();
|
|
747
|
-
const sameNameFiles = getSameNameFiles();
|
|
748
|
-
if (uploadOptions.value && uploadOptions.value.checkSameName && sameNameFiles.length) {
|
|
749
|
-
alertMsg(getExistSameNameFilesMsg(sameNameFiles));
|
|
750
|
-
}
|
|
751
|
-
const selectedFiles = fileUploaders.value.filter((fileUploader) => fileUploader.status === UploadStatus.preLoad).map((fileUploader) => fileUploader.file);
|
|
752
|
-
ctx.emit("fileSelect", selectedFiles);
|
|
753
|
-
if (autoUpload.value) {
|
|
754
|
-
fileUpload();
|
|
755
|
-
}
|
|
756
|
-
}).catch((error) => {
|
|
757
|
-
alertMsg(error.message);
|
|
758
|
-
});
|
|
759
|
-
};
|
|
760
|
-
const handleClick = () => {
|
|
761
|
-
if (disabled.value) {
|
|
762
|
-
return;
|
|
763
|
-
}
|
|
764
|
-
_dealFiles(triggerSelectFiles({
|
|
765
|
-
accept: accept.value,
|
|
766
|
-
multiple: multiple.value,
|
|
767
|
-
webkitdirectory: webkitdirectory.value
|
|
768
|
-
}));
|
|
769
|
-
};
|
|
770
|
-
const onFileDrop = (files) => {
|
|
771
|
-
isDropOVer.value = false;
|
|
772
|
-
_dealFiles(triggerDropFiles(files));
|
|
773
|
-
ctx.emit("fileDrop", files);
|
|
774
|
-
};
|
|
775
740
|
const onFileOver = (event) => {
|
|
776
741
|
isDropOVer.value = event;
|
|
777
742
|
ctx.emit("fileOver", event);
|
|
@@ -792,13 +757,13 @@ var Upload = defineComponent({
|
|
|
792
757
|
};
|
|
793
758
|
const canUpload = () => {
|
|
794
759
|
let uploadResult = Promise.resolve(true);
|
|
795
|
-
if (beforeUpload.value) {
|
|
796
|
-
const result = beforeUpload.value(getFullFiles());
|
|
760
|
+
if (beforeUpload == null ? void 0 : beforeUpload.value) {
|
|
761
|
+
const result = beforeUpload == null ? void 0 : beforeUpload.value(getFullFiles());
|
|
797
762
|
if (typeof result !== "undefined") {
|
|
798
|
-
if (result
|
|
799
|
-
uploadResult = result;
|
|
800
|
-
} else {
|
|
763
|
+
if (typeof result === "boolean") {
|
|
801
764
|
uploadResult = Promise.resolve(result);
|
|
765
|
+
} else {
|
|
766
|
+
uploadResult = result;
|
|
802
767
|
}
|
|
803
768
|
}
|
|
804
769
|
}
|
|
@@ -814,7 +779,7 @@ var Upload = defineComponent({
|
|
|
814
779
|
return;
|
|
815
780
|
}
|
|
816
781
|
const uploadObservable = oneTimeUpload.value ? _oneTimeUpload() : upload2(fileUploader);
|
|
817
|
-
uploadObservable.then((results) => {
|
|
782
|
+
uploadObservable == null ? void 0 : uploadObservable.then((results) => {
|
|
818
783
|
props["on-success"] && props["on-success"](results);
|
|
819
784
|
const newFiles = results.map((result) => result.file);
|
|
820
785
|
const newUploadedFiles = [...newFiles, ...modelValue.value];
|
|
@@ -824,6 +789,44 @@ var Upload = defineComponent({
|
|
|
824
789
|
});
|
|
825
790
|
});
|
|
826
791
|
};
|
|
792
|
+
const _dealFiles = (promise) => {
|
|
793
|
+
resetSameNameFiles();
|
|
794
|
+
promise.then((files) => {
|
|
795
|
+
files.forEach((file) => {
|
|
796
|
+
if (!multiple.value) {
|
|
797
|
+
removeFiles();
|
|
798
|
+
}
|
|
799
|
+
addFile(file, uploadOptions == null ? void 0 : uploadOptions.value);
|
|
800
|
+
});
|
|
801
|
+
checkValid();
|
|
802
|
+
const sameNameFiles = getSameNameFiles();
|
|
803
|
+
if ((uploadOptions == null ? void 0 : uploadOptions.value) && uploadOptions.value.checkSameName && sameNameFiles.length) {
|
|
804
|
+
alertMsg(getExistSameNameFilesMsg(sameNameFiles));
|
|
805
|
+
}
|
|
806
|
+
const selectedFiles = fileUploaders.value.filter((fileUploader) => fileUploader.status === UploadStatus.preLoad).map((fileUploader) => fileUploader.file);
|
|
807
|
+
ctx.emit("fileSelect", selectedFiles);
|
|
808
|
+
if (autoUpload.value) {
|
|
809
|
+
fileUpload();
|
|
810
|
+
}
|
|
811
|
+
}).catch((error) => {
|
|
812
|
+
alertMsg(error.message);
|
|
813
|
+
});
|
|
814
|
+
};
|
|
815
|
+
const handleClick = () => {
|
|
816
|
+
if (disabled.value) {
|
|
817
|
+
return;
|
|
818
|
+
}
|
|
819
|
+
_dealFiles(triggerSelectFiles({
|
|
820
|
+
accept: accept == null ? void 0 : accept.value,
|
|
821
|
+
multiple: multiple.value,
|
|
822
|
+
webkitdirectory: webkitdirectory.value
|
|
823
|
+
}));
|
|
824
|
+
};
|
|
825
|
+
const onFileDrop = (files) => {
|
|
826
|
+
isDropOVer.value = false;
|
|
827
|
+
_dealFiles(triggerDropFiles(files));
|
|
828
|
+
ctx.emit("fileDrop", files);
|
|
829
|
+
};
|
|
827
830
|
return () => {
|
|
828
831
|
var _a, _b, _c, _d;
|
|
829
832
|
return createVNode("div", null, [withDirectives(createVNode("div", {
|
package/upload/index.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var xe=Object.defineProperty,Oe=Object.defineProperties;var Me=Object.getOwnPropertyDescriptors;var G=Object.getOwnPropertySymbols;var Be=Object.prototype.hasOwnProperty,Le=Object.prototype.propertyIsEnumerable;var L=(f,t,E)=>t in f?xe(f,t,{enumerable:!0,configurable:!0,writable:!0,value:E}):f[t]=E,P=(f,t)=>{for(var E in t||(t={}))Be.call(t,E)&&L(f,E,t[E]);if(G)for(var E of G(t))Le.call(t,E)&&L(f,E,t[E]);return f},Y=(f,t)=>Oe(f,Me(t));var g=(f,t,E)=>(L(f,typeof t!="symbol"?t+"":t,E),E);(function(f,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(f=typeof globalThis!="undefined"?globalThis:f||self,t(f.index={},f.Vue))})(this,function(f,t){"use strict";const E={modelValue:{type:Boolean,default:!1},title:{type:String,default:""},type:{type:String,default:"normal"},duration:{type:Number,default:3e3},onClose:{type:Function}},Z={name:{type:String,default:"",required:!0},size:{type:String,default:"inherit"},color:{type:String,default:"inherit"},classPrefix:{type:String,default:"icon"}};var $=t.defineComponent({name:"DIcon",props:Z,setup(e){const{name:o,size:n,color:a,classPrefix:s}=t.toRefs(e);return()=>/^((https?):)?\/\//.test(o.value)?t.createVNode("img",{src:o.value,alt:o.value.split("/")[o.value.split("/").length-1],style:{width:n.value,verticalAlign:"text-bottom"}},null):t.createVNode("i",{class:`${s.value} ${s.value}-${o.value}`,style:{fontSize:n.value,color:a.value}},null)}}),J=t.defineComponent({emits:["click"],setup(e,{emit:o}){return()=>t.createVNode("div",{class:"devui-notification-icon-close",onClick:n=>o("click",n)},[t.createVNode($,{name:"close",size:"14px"},null)])}}),K=t.defineComponent({props:{type:{type:String,default:"normal"}},setup(e){const{type:o}=t.toRefs(e),n=t.computed(()=>({"devui-notification-image":!0,[`devui-notification-image-${o.value}`]:!0})),a={info:"info-o",success:"right-o",warning:"warning-o",error:"error-o"};return()=>t.createVNode("span",{class:n.value},[o.value!=="normal"&&t.createVNode($,{name:a[o.value],size:"16px"},null)])}});function Q(e){return{classes:t.computed(()=>({"devui-notification-item-container":!0,[`devui-notification-message-${e.type}`]:!0}))}}function ee(e,o){let n=null,a;const s=()=>{var N;clearTimeout(n),n=null,(N=e.onClose)==null||N.call(e),o("update:modelValue",!1)},m=()=>{n&&(clearTimeout(n),n=null)},y=()=>{if(!e.modelValue){const N=e.duration-(Date.now()-a);n=setTimeout(s,N)}},C=()=>{o("destroy")};return t.watch(()=>e.modelValue,N=>{N&&(a=Date.now(),e.duration&&(n=setTimeout(s,e.duration)))}),{interrupt:m,removeReset:y,close:s,handleDestroy:C}}var Pe="",te=t.defineComponent({name:"DNotification",props:E,emits:["update:modelValue","destroy"],setup(e,{emit:o,slots:n}){const{modelValue:a,title:s,type:m}=t.toRefs(e),{classes:y}=Q(e),{interrupt:C,removeReset:N,close:u,handleDestroy:r}=ee(e,o);return()=>t.createVNode(t.Transition,{name:"notification-fade",onAfterLeave:r},{default:()=>{var v;return[a.value&&t.createVNode("div",{class:"devui-notification"},[t.createVNode("div",{class:y.value,onMouseenter:C,onMouseleave:N},[t.createVNode("div",{class:"devui-notification-item"},[t.createVNode(J,{onClick:u},null),s.value&&t.createVNode(K,{type:m.value},null),t.createVNode("div",{class:"devui-notification-message"},[t.createVNode("span",{class:"devui-notification-title"},[s.value]),t.createVNode("span",{class:"devui-notification-content"},[(v=n.default)==null?void 0:v.call(n)])])])])])]}})}});function oe(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const ne={modelValue:!1,duration:3e3,type:"normal"};function ie(e,o){const n=document.createElement("div"),a=t.createApp({setup(){return t.onUnmounted(()=>{document.body.removeChild(n)}),()=>t.createVNode(te,t.mergeProps(e,{onDestroy:a.unmount}),oe(o)?o:{default:()=>[o]})}});return document.body.appendChild(n),a.mount(n),a}function le(e,o){e.modelValue=!1,o==null||o()}class ae{static open(o){const n=o.onClose||null,a=o.content;let s;delete o.content;const m=t.reactive(Y(P(P({},ne),o),{onClose:()=>{le(m,n)}}));ie(m,a),m.modelValue=!0,clearTimeout(s),o.duration&&(s=setTimeout(m.onClose,o.duration))}}class se{constructor(){g(this,"uri");g(this,"method");g(this,"maximumSize");g(this,"headers");g(this,"authToken");g(this,"authTokenHeader");g(this,"additionalParameter");g(this,"fileFieldName");g(this,"checkSameName");g(this,"withCredentials");g(this,"responseType")}}class re{constructor(){g(this,"accept");g(this,"multiple");g(this,"webkitdirectory")}}var F=(e=>(e[e.preLoad=0]="preLoad",e[e.uploading=1]="uploading",e[e.uploaded=2]="uploaded",e[e.failed=3]="failed",e))(F||{});const z={accept:{type:String},webkitdirectory:{type:Boolean,default:!1},uploadOptions:{type:Object},multiple:{type:Boolean,default:!1},autoUpload:{type:Boolean,default:!0},placeholder:{type:String,default:"\u9009\u62E9\u6587\u4EF6"},modelValue:{type:Array,default:()=>[]},droppable:{type:Boolean,default:!1},beforeUpload:{type:Function},dynamicUploadOptionsFn:{type:Function},disabled:{type:Boolean,default:!1},onChange:{type:Function},fileDrop:{type:Function,default:void 0},fileOver:{type:Function,default:void 0},fileSelect:{type:Function,default:void 0},deleteUploadedFile:{type:Function,default:void 0},"on-error":{type:Function,default:void 0},"on-success":{type:Function,default:void 0},oneTimeUpload:{type:Boolean,default:!1}},ue=e=>`\u6700\u5927\u652F\u6301\u4E0A\u4F20${e}MB\u7684\u6587\u4EF6, \u60A8\u672C\u6B21\u4E0A\u4F20\u7684\u6240\u6709\u6587\u4EF6\u8D85\u8FC7\u53EF\u4E0A\u4F20\u6587\u4EF6\u5927\u5C0F`,ce=(e,o)=>`\u6700\u5927\u652F\u6301\u4E0A\u4F20${o}MB\u7684\u6587\u4EF6, \u60A8\u4E0A\u4F20\u7684\u6587\u4EF6"${e}"\u8D85\u8FC7\u53EF\u4E0A\u4F20\u6587\u4EF6\u5927\u5C0F`,de=(e,o)=>`\u652F\u6301\u7684\u6587\u4EF6\u7C7B\u578B: "${o}", \u60A8\u4E0A\u4F20\u7684\u6587\u4EF6"${e}"\u4E0D\u5728\u5141\u8BB8\u8303\u56F4\u5185\uFF0C\u8BF7\u91CD\u65B0\u9009\u62E9\u6587\u4EF6`,pe=e=>`\u60A8\u4E0A\u4F20\u7684 "${e}" \u5B58\u5728\u91CD\u540D\u6587\u4EF6, \u8BF7\u91CD\u65B0\u9009\u62E9\u6587\u4EF6`,fe=()=>{const e=t.ref(""),o=u=>{const r=document.createEvent("MouseEvents");r.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,0,null),u.dispatchEvent(r)},n=({multiple:u,accept:r,webkitdirectory:v})=>new Promise(b=>{const l=document.getElementById("d-upload-temp");l&&document.body.removeChild(l);const i=document.createElement("input");i.style.position="fixed",i.style.left="-2000px",i.style.top="-2000px",i.setAttribute("id","d-upload-temp"),i.setAttribute("type","file"),u&&i.setAttribute("multiple",""),r&&i.setAttribute("accept",r),v&&i.setAttribute("webkitdirectory",""),i.addEventListener("change",h=>{b(Array.prototype.slice.call(h.target.files))}),document.body.appendChild(i),o(i)}),a=(u,r)=>{if(u){const v=u.split(","),b=r.type.replace(/\/.*$/,"");return v.some(l=>{const i=l.trim();return i.startsWith(".")?r.name.toLowerCase().indexOf(i.toLowerCase(),r.name.toLowerCase().length-i.toLowerCase().length)>-1:/\/\*$/.test(i)?b===i.replace(/\/.*$/,""):r.type===i})}return!0},s=(u,r)=>r?u>1024*1024*r:!1;return{triggerSelectFiles:u=>{const{multiple:r,accept:v,webkitdirectory:b}=u;return n({multiple:r,accept:v,webkitdirectory:b})},_validateFiles:(u,r,v)=>a(r,u)?v&&s(u.size,v.maximumSize)?{checkError:!0,errorMsg:ce(u.name,v.maximumSize)}:{checkError:!1,errorMsg:void 0}:{checkError:!0,errorMsg:de(u.name,r)},triggerDropFiles:u=>Promise.resolve(u),checkAllFilesSize:(u,r)=>{if(s(u,r))return e.value=ue(r),{checkError:!0,errorMsg:e.value}}}};class _{constructor(o,n){g(this,"xhr");g(this,"status");g(this,"response");g(this,"percentage",0);this.file=o,this.uploadOptions=n,this.file=o,this.uploadOptions=n,this.status=F.preLoad}send(o){return new Promise((n,a)=>{const{uri:s,method:m,headers:y,authToken:C,authTokenHeader:N,additionalParameter:u,fileFieldName:r,withCredentials:v,responseType:b}=this.uploadOptions,l=N||"Authorization",i=r||"file";this.xhr=new XMLHttpRequest,this.xhr.open(m||"POST",s),v&&(this.xhr.withCredentials=v),b&&(this.xhr.responseType=b),C&&this.xhr.setRequestHeader(l,C),y&&Object.keys(y).forEach(S=>{this.xhr.setRequestHeader(S,y[S])}),this.xhr.upload.onprogress=S=>{this.percentage=Math.round(S.loaded*100/S.total)};const h=o&&o.length?this.oneTimeUploadFiles(i,u,o):this.parallelUploadFiles(i,u);this.xhr.send(h),this.status=F.uploading,this.xhr.onabort=()=>{this.status=F.preLoad,this.xhr=null},this.xhr.onerror=()=>{this.response=this.xhr.response,this.status=F.failed,a({file:this.file,response:this.xhr.response})},this.xhr.onload=()=>{this.xhr.readyState===4&&this.xhr.status>=200&&this.xhr.status<300?(this.response=this.xhr.response,this.status=F.uploaded,n({file:this.file,response:this.xhr.response})):(this.response=this.xhr.response,this.status=F.failed,a({file:this.file,response:this.xhr.response}))}})}parallelUploadFiles(o,n){const a=new FormData;return a.append(o,this.file,this.file.name),n&&Object.keys(n).forEach(s=>{a.append(s,n[s])}),a}oneTimeUploadFiles(o,n,a){const s=new FormData;return a.forEach(m=>{s.append(o,m.file,m.file.name),n&&Object.keys(n).forEach(y=>{s.append(y,n[y])})}),s}cancel(){this.xhr&&this.xhr.abort()}}const me=()=>{const e=t.ref([]),o=t.ref([]),n=l=>{let i=!0;for(let h=0;h<e.value.length;h++)if(l===e.value[h].file.name){i=!1,o.value.indexOf(l)===-1&&o.value.push(l);break}return i},a=(l,i)=>{i&&i.checkSameName?n(l.name)&&e.value.push(new _(l,i)):e.value.push(new _(l,i))},s=()=>e.value.map(l=>l.file),m=()=>e.value.map(l=>l),y=async l=>{if(!l||!l.length)return Promise.reject("no files");let i=[];return await l[0].send(l).finally(()=>i=l.map(h=>(h.status=l[0].status,h.percentage=l[0].percentage,{file:h.file,response:l[0].response}))),i};return{fileUploaders:e,getFiles:s,addFile:a,getFullFiles:m,deleteFile:l=>{e.value.find(h=>h.file===l).cancel(),e.value=e.value.filter(h=>l!==h.file)},upload:async l=>{let i=[];if(l){l.percentage=0;const h=await l.send();i.push(h)}else{const h=e.value.filter(k=>k.status===F.preLoad),S=e.value.filter(k=>k.status===F.failed),w=h.length>0?h:S;i=await Promise.all(w.map(async k=>(k.percentage=0,await k.send())))}return i.length>0?Promise.resolve(i):Promise.reject("no files")},removeFiles:()=>{e.value=[],o.value=[]},getSameNameFiles:()=>o.value.join(),resetSameNameFiles:()=>{o.value=[]},_oneTimeUpload:()=>{const l=e.value.filter(i=>i.status!==F.uploaded);return y(l)}}};var $e="",A=t.defineComponent({name:"DUpload",props:z,emits:["fileDrop","fileOver","fileSelect","deleteUploadedFile","update:modelValue"],setup(e,o){const{uploadOptions:n,placeholder:a,autoUpload:s,disabled:m,beforeUpload:y,droppable:C,oneTimeUpload:N,modelValue:u,multiple:r,accept:v,webkitdirectory:b}=t.toRefs(e),{triggerSelectFiles:l,_validateFiles:i,triggerDropFiles:h,checkAllFilesSize:S}=fe(),{fileUploaders:w,addFile:k,getFullFiles:R,deleteFile:j,upload:Ne,resetSameNameFiles:Ve,removeFiles:O,_oneTimeUpload:be,getSameNameFiles:Ce}=me(),M=t.ref(!1);t.ref("");const T=d=>{ae.open({type:"warning",content:d})},Se=()=>{let d=0;if(w.value.forEach(p=>{d+=p.file.size;const V=i(p.file,v.value,p.uploadOptions);if(V&&V.checkError){j(p.file),T(V.errorMsg);return}}),N.value){const p=S(d,n.value.maximumSize);p&&p.checkError&&(O(),T(p.errorMsg))}},H=d=>{Ve(),d.then(p=>{p.forEach(c=>{r.value||O(),k(c,n.value)}),Se();const V=Ce();n.value&&n.value.checkSameName&&V.length&&T(pe(V));const D=w.value.filter(c=>c.status===F.preLoad).map(c=>c.file);o.emit("fileSelect",D),s.value&&W()}).catch(p=>{T(p.message)})},q=()=>{m.value||H(l({accept:v.value,multiple:r.value,webkitdirectory:b.value}))},ke=d=>{M.value=!1,H(h(d)),o.emit("fileDrop",d)},we=d=>{M.value=d,o.emit("fileOver",d)},U=d=>{const p=u.value.filter(V=>V.name!==d.name);o.emit("deleteUploadedFile",d),o.emit("update:modelValue",p)},De=(d,p,V)=>{d.stopPropagation(),V===F.uploaded&&U(p),j(p)},Te=()=>{let d=Promise.resolve(!0);if(y.value){const p=y.value(R());typeof p!="undefined"&&(p.then?d=p:d=Promise.resolve(p))}return d},W=(d,p)=>{d&&d.stopPropagation(),Te().then(V=>{if(!V){O();return}(N.value?be():Ne(p)).then(c=>{e["on-success"]&&e["on-success"](c);const B=[...c.map(Ae=>Ae.file),...u.value];o.emit("update:modelValue",B)}).catch(c=>{e["on-error"]&&e["on-error"](c)})})};return()=>{var d,p,V,D;return t.createVNode("div",null,[t.withDirectives(t.createVNode("div",{class:"devui-upload",style:`border: ${M.value?"1px solid #15bf15":"0"}`},[((p=(d=o.slots).default)==null?void 0:p.call(d))?t.createVNode("div",{onClick:q},[o.slots.default()]):t.createVNode("div",{class:`devui-input-group ${m.value?"disabled":""}`,onClick:q},[w.value.length===0&&t.createVNode("div",{class:"devui-form-control devui-upload-placeholder"},[a.value]),w.value.length>0&&t.createVNode("ul",{class:"devui-form-control devui-files-list"},[w.value.map((c,X)=>t.createVNode("li",{key:X,class:"devui-file-item devui-file-tag",style:"display: inline-block; margin: 0 2px 2px 0",title:c.file.name},[t.createVNode("span",{class:`devui-filename ${c.status===F.failed?"devui-failed-color":""}`},[c.file.name]),t.createVNode(t.resolveComponent("d-icon"),{name:"close",class:`${(c==null?void 0:c.status)===F.failed?"devui-upload-delete-file-button":""} ${(c==null?void 0:c.status)===F.uploading||(c==null?void 0:c.status)===F.uploaded?"devui-uploading-delete":""}`,onClick:B=>De(B,c.file,c.status)},null),c.status===F.uploading&&t.createVNode("div",{class:"icon devui-upload-progress"},[t.createVNode(t.resolveComponent("d-progress"),{isCircle:!0,percentage:c.percentage,barbgcolor:"#50D4AB",strokeWidth:8,showContent:!1},null)]),c.status===F.failed&&t.createVNode(t.resolveComponent("d-icon"),{name:"running",onClick:W},null),c.status===F.uploaded&&t.createVNode(t.resolveComponent("d-icon"),{name:"right",color:"#50d4ab"},null)]))]),t.createVNode("span",{class:"devui-input-group-addon"},[t.createVNode(t.resolveComponent("d-icon"),{name:"more-operate",color:"#252b3a"},null)])])]),[[t.resolveDirective("file-drop"),{droppable:C,isSingle:!r,onFileDrop:ke,onFileOver:we}]]),t.createVNode("div",null,[(D=(V=o.slots)["uploaded-files"])==null?void 0:D.call(V,{uploadedFiles:u.value,deleteFile:U})])])}}});const I=e=>{var o;return e.dataTransfer?e.dataTransfer:(o=e.originalEvent)==null?void 0:o.dataTransfer},he=e=>e?e.indexOf?e.indexOf("Files")!==-1:e.contains?e.contains("Files"):!1:!1,x=e=>{e.preventDefault(),e.stopPropagation()},Fe=(e,o)=>{const{onFileOver:n}=o.value;e.addEventListener("dragover",a=>{const s=I(a);!he(s.types)||(x(a),n&&n(!0))})},ve=(e,o)=>{const{onFileOver:n}=o.value;e.addEventListener("dragleave",a=>{a.currentTarget!==e&&(x(a),n&&n(!0))})},ge=(e,o)=>{const{onFileDrop:n,isSingle:a}=o.value;e.addEventListener("drop",s=>{const m=I(s);!m||(x(s),a?n&&n([m.files[0]]):n&&n(Array.from(m.files)))})},ye={mounted:(e,o)=>{const{droppable:n}=o.value;!n||(Fe(e,o),ve(e,o),ge(e,o))}};var Ee={title:"Upload \u4E0A\u4F20",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(e){e.directive("file-drop",ye),e.component(A.name,A)}};f.IFileOptions=re,f.IUploadOptions=se,f.Upload=A,f.UploadStatus=F,f.default=Ee,f.uploadProps=z,Object.defineProperty(f,"__esModule",{value:!0}),f[Symbol.toStringTag]="Module"});
|
|
1
|
+
var xe=Object.defineProperty,Me=Object.defineProperties;var Be=Object.getOwnPropertyDescriptors;var Y=Object.getOwnPropertySymbols;var Oe=Object.prototype.hasOwnProperty,Le=Object.prototype.propertyIsEnumerable;var L=(f,t,V)=>t in f?xe(f,t,{enumerable:!0,configurable:!0,writable:!0,value:V}):f[t]=V,P=(f,t)=>{for(var V in t||(t={}))Oe.call(t,V)&&L(f,V,t[V]);if(Y)for(var V of Y(t))Le.call(t,V)&&L(f,V,t[V]);return f},Z=(f,t)=>Me(f,Be(t));var E=(f,t,V)=>(L(f,typeof t!="symbol"?t+"":t,V),V);(function(f,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(f=typeof globalThis!="undefined"?globalThis:f||self,t(f.index={},f.Vue))})(this,function(f,t){"use strict";const V={modelValue:{type:Boolean,default:!1},title:{type:String,default:""},type:{type:String,default:"normal"},duration:{type:Number,default:3e3},onClose:{type:Function}},J={name:{type:String,default:"",required:!0},size:{type:String,default:"inherit"},color:{type:String,default:"inherit"},classPrefix:{type:String,default:"icon"}};var $=t.defineComponent({name:"DIcon",props:J,setup(e){const{name:n,size:o,color:s,classPrefix:a}=t.toRefs(e);return()=>/^((https?):)?\/\//.test(n.value)?t.createVNode("img",{src:n.value,alt:n.value.split("/")[n.value.split("/").length-1],style:{width:o.value,verticalAlign:"text-bottom"}},null):t.createVNode("i",{class:`${a.value} ${a.value}-${n.value}`,style:{fontSize:o.value,color:s.value}},null)}}),K=t.defineComponent({emits:["click"],setup(e,{emit:n}){return()=>t.createVNode("div",{class:"devui-notification-icon-close",onClick:o=>n("click",o)},[t.createVNode($,{name:"close",size:"14px"},null)])}}),Q=t.defineComponent({props:{type:{type:String,default:"normal"}},setup(e){const{type:n}=t.toRefs(e),o=t.computed(()=>({"devui-notification-image":!0,[`devui-notification-image-${n.value}`]:!0})),s={info:"info-o",success:"right-o",warning:"warning-o",error:"error-o"};return()=>t.createVNode("span",{class:o.value},[n.value!=="normal"&&t.createVNode($,{name:s[n.value],size:"16px"},null)])}});function U(e){return{classes:t.computed(()=>({"devui-notification-item-container":!0,[`devui-notification-message-${e.type}`]:!0}))}}function ee(e,n){let o=null,s;const a=()=>{var C;clearTimeout(o),o=null,(C=e.onClose)==null||C.call(e),n("update:modelValue",!1)},p=()=>{o&&(clearTimeout(o),o=null)},g=()=>{if(!e.modelValue){const C=e.duration-(Date.now()-s);o=setTimeout(a,C)}},b=()=>{n("destroy")};return t.watch(()=>e.modelValue,C=>{C&&(s=Date.now(),e.duration&&(o=setTimeout(a,e.duration)))}),{interrupt:p,removeReset:g,close:a,handleDestroy:b}}var Pe="",te=t.defineComponent({name:"DNotification",props:V,emits:["update:modelValue","destroy"],setup(e,{emit:n,slots:o}){const{modelValue:s,title:a,type:p}=t.toRefs(e),{classes:g}=U(e),{interrupt:b,removeReset:C,close:u,handleDestroy:r}=ee(e,n);return()=>t.createVNode(t.Transition,{name:"notification-fade",onAfterLeave:r},{default:()=>{var m;return[s.value&&t.createVNode("div",{class:"devui-notification"},[t.createVNode("div",{class:g.value,onMouseenter:b,onMouseleave:C},[t.createVNode("div",{class:"devui-notification-item"},[t.createVNode(K,{onClick:u},null),a.value&&t.createVNode(Q,{type:p.value},null),t.createVNode("div",{class:"devui-notification-message"},[t.createVNode("span",{class:"devui-notification-title"},[a.value]),t.createVNode("span",{class:"devui-notification-content"},[(m=o.default)==null?void 0:m.call(o)])])])])])]}})}});function ne(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const oe={modelValue:!1,duration:3e3,type:"normal"};function ie(e,n){const o=document.createElement("div"),s=t.createApp({setup(){return t.onUnmounted(()=>{document.body.removeChild(o)}),()=>t.createVNode(te,t.mergeProps(e,{onDestroy:s.unmount}),ne(n)?n:{default:()=>[n]})}});return document.body.appendChild(o),s.mount(o),s}function le(e,n){e.modelValue=!1,n==null||n()}class se{static open(n){const o=n.onClose||null,s=n.content;let a;delete n.content;const p=t.reactive(Z(P(P({},oe),n),{onClose:()=>{le(p,o)}}));ie(p,s),p.modelValue=!0,clearTimeout(a),n.duration&&(a=setTimeout(p.onClose,n.duration))}}class ae{constructor(){E(this,"uri");E(this,"method");E(this,"maximumSize");E(this,"headers");E(this,"authToken");E(this,"authTokenHeader");E(this,"additionalParameter");E(this,"fileFieldName");E(this,"checkSameName");E(this,"withCredentials");E(this,"responseType")}}class re{constructor(){E(this,"accept");E(this,"multiple");E(this,"webkitdirectory")}}var v=(e=>(e[e.preLoad=0]="preLoad",e[e.uploading=1]="uploading",e[e.uploaded=2]="uploaded",e[e.failed=3]="failed",e))(v||{});const z={accept:{type:String},webkitdirectory:{type:Boolean,default:!1},uploadOptions:{type:Object},multiple:{type:Boolean,default:!1},autoUpload:{type:Boolean,default:!0},placeholder:{type:String,default:"\u9009\u62E9\u6587\u4EF6"},modelValue:{type:Array,default:()=>[]},droppable:{type:Boolean,default:!1},beforeUpload:{type:Function},dynamicUploadOptionsFn:{type:Function},disabled:{type:Boolean,default:!1},onChange:{type:Function},fileDrop:{type:Function,default:void 0},fileOver:{type:Function,default:void 0},fileSelect:{type:Function,default:void 0},deleteUploadedFile:{type:Function,default:void 0},"on-error":{type:Function,default:void 0},"on-success":{type:Function,default:void 0},oneTimeUpload:{type:Boolean,default:!1}},ue=e=>`\u6700\u5927\u652F\u6301\u4E0A\u4F20${e}MB\u7684\u6587\u4EF6, \u60A8\u672C\u6B21\u4E0A\u4F20\u7684\u6240\u6709\u6587\u4EF6\u8D85\u8FC7\u53EF\u4E0A\u4F20\u6587\u4EF6\u5927\u5C0F`,ce=(e,n)=>`\u6700\u5927\u652F\u6301\u4E0A\u4F20${n}MB\u7684\u6587\u4EF6, \u60A8\u4E0A\u4F20\u7684\u6587\u4EF6"${e}"\u8D85\u8FC7\u53EF\u4E0A\u4F20\u6587\u4EF6\u5927\u5C0F`,de=(e,n)=>`\u652F\u6301\u7684\u6587\u4EF6\u7C7B\u578B: "${n}", \u60A8\u4E0A\u4F20\u7684\u6587\u4EF6"${e}"\u4E0D\u5728\u5141\u8BB8\u8303\u56F4\u5185\uFF0C\u8BF7\u91CD\u65B0\u9009\u62E9\u6587\u4EF6`,fe=e=>`\u60A8\u4E0A\u4F20\u7684 "${e}" \u5B58\u5728\u91CD\u540D\u6587\u4EF6, \u8BF7\u91CD\u65B0\u9009\u62E9\u6587\u4EF6`,pe=()=>{const e=t.ref(""),n=u=>{const r=document.createEvent("MouseEvents");r.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,0,null),u.dispatchEvent(r)},o=({multiple:u,accept:r,webkitdirectory:m})=>new Promise(w=>{const l=document.getElementById("d-upload-temp");l&&document.body.removeChild(l);const i=document.createElement("input");i.style.position="fixed",i.style.left="-2000px",i.style.top="-2000px",i.setAttribute("id","d-upload-temp"),i.setAttribute("type","file"),u&&i.setAttribute("multiple",""),r&&i.setAttribute("accept",r),m&&i.setAttribute("webkitdirectory",""),i.addEventListener("change",h=>{w(Array.prototype.slice.call(h.target.files))}),document.body.appendChild(i),n(i)}),s=(u,r)=>{if(u){const m=u.split(","),w=r.type.replace(/\/.*$/,"");return m.some(l=>{const i=l.trim();return i.startsWith(".")?r.name.toLowerCase().indexOf(i.toLowerCase(),r.name.toLowerCase().length-i.toLowerCase().length)>-1:/\/\*$/.test(i)?w===i.replace(/\/.*$/,""):r.type===i})}return!0},a=(u,r)=>r?u>1024*1024*r:!1;return{triggerSelectFiles:u=>{const{multiple:r,accept:m,webkitdirectory:w}=u;return o({multiple:r,accept:m,webkitdirectory:w})},_validateFiles:(u,r,m)=>s(r,u)?m&&a(u.size,m.maximumSize)?{checkError:!0,errorMsg:ce(u.name,m.maximumSize||0)}:{checkError:!1,errorMsg:void 0}:{checkError:!0,errorMsg:de(u.name,r)},triggerDropFiles:u=>Promise.resolve(u),checkAllFilesSize:(u,r)=>{if(a(u,r))return e.value=ue(r),{checkError:!0,errorMsg:e.value}}}};class _{constructor(n,o){E(this,"xhr");E(this,"status");E(this,"response");E(this,"percentage",0);this.file=n,this.uploadOptions=o,this.file=n,this.uploadOptions=o,this.status=v.preLoad}send(n){return new Promise((o,s)=>{const{uri:a,method:p,headers:g,authToken:b,authTokenHeader:C,additionalParameter:u,fileFieldName:r,withCredentials:m,responseType:w}=this.uploadOptions||{},l=C||"Authorization",i=r||"file";this.xhr=new XMLHttpRequest,this.xhr.open(p||"POST",a||""),m&&(this.xhr.withCredentials=m),w&&(this.xhr.responseType=w),b&&this.xhr.setRequestHeader(l,b),g&&Object.keys(g).forEach(S=>{var N;(N=this.xhr)==null||N.setRequestHeader(S,g[S])}),this.xhr.upload.onprogress=S=>{this.percentage=Math.round(S.loaded*100/S.total)};const h=n&&n.length?this.oneTimeUploadFiles(i,u,n):this.parallelUploadFiles(i,u);this.xhr.send(h),this.status=v.uploading,this.xhr.onabort=()=>{this.status=v.preLoad,this.xhr=null},this.xhr.onerror=()=>{var S,N;this.response=(S=this.xhr)==null?void 0:S.response,this.status=v.failed,s({file:this.file,response:(N=this.xhr)==null?void 0:N.response})},this.xhr.onload=()=>{var S,N,D;((S=this.xhr)==null?void 0:S.readyState)===4&&this.xhr.status>=200&&this.xhr.status<300?(this.response=this.xhr.response,this.status=v.uploaded,o({file:this.file,response:this.xhr.response})):(this.response=(N=this.xhr)==null?void 0:N.response,this.status=v.failed,s({file:this.file,response:(D=this.xhr)==null?void 0:D.response}))}})}parallelUploadFiles(n,o){const s=new FormData;return s.append(n,this.file,this.file.name),o&&Object.keys(o).forEach(a=>{s.append(a,o[a])}),s}oneTimeUploadFiles(n,o,s){const a=new FormData;return s.forEach(p=>{a.append(n,p.file,p.file.name),o&&Object.keys(o).forEach(g=>{a.append(g,o[g])})}),a}cancel(){this.xhr&&this.xhr.abort()}}const me=()=>{const e=t.ref([]),n=t.ref([]),o=l=>{let i=!0;for(let h=0;h<e.value.length;h++)if(l===e.value[h].file.name){i=!1,n.value.indexOf(l)===-1&&n.value.push(l);break}return i},s=(l,i)=>{i&&i.checkSameName?o(l.name)&&e.value.push(new _(l,i)):e.value.push(new _(l,i))},a=()=>e.value.map(l=>l.file),p=()=>e.value.map(l=>l),g=async l=>{if(!l||!l.length)return Promise.reject("no files");let i=[];return await l[0].send(l).finally(()=>i=l.map(h=>(h.status=l[0].status,h.percentage=l[0].percentage,{file:h.file,response:l[0].response}))),i};return{fileUploaders:e,getFiles:a,addFile:s,getFullFiles:p,deleteFile:l=>{const i=e.value.find(h=>h.file===l);i==null||i.cancel(),e.value=e.value.filter(h=>l!==h.file)},upload:async l=>{let i=[];if(l){l.percentage=0;const h=await l.send();i.push(h)}else{const h=e.value.filter(D=>D.status===v.preLoad),S=e.value.filter(D=>D.status===v.failed),N=h.length>0?h:S;i=await Promise.all(N.map(async D=>(D.percentage=0,await D.send())))}return i.length>0?Promise.resolve(i):Promise.reject("no files")},removeFiles:()=>{e.value=[],n.value=[]},getSameNameFiles:()=>n.value.join(),resetSameNameFiles:()=>{n.value=[]},_oneTimeUpload:()=>{const l=e.value.filter(i=>i.status!==v.uploaded);return g(l)}}};var $e="",A=t.defineComponent({name:"DUpload",props:z,emits:["fileDrop","fileOver","fileSelect","deleteUploadedFile","update:modelValue"],setup(e,n){const{uploadOptions:o,placeholder:s,autoUpload:a,disabled:p,beforeUpload:g,droppable:b,oneTimeUpload:C,modelValue:u,multiple:r,accept:m,webkitdirectory:w}=t.toRefs(e),{triggerSelectFiles:l,_validateFiles:i,triggerDropFiles:h,checkAllFilesSize:S}=pe(),{fileUploaders:N,addFile:D,getFullFiles:R,deleteFile:j,upload:Ne,resetSameNameFiles:Ve,removeFiles:M,_oneTimeUpload:Ce,getSameNameFiles:Se}=me(),B=t.ref(!1),T=d=>{se.open({type:"warning",content:d})},ke=()=>{var F;let d=0;if(N.value.forEach(y=>{d+=y.file.size;const k=i(y.file,(m==null?void 0:m.value)||"",y.uploadOptions);if(k&&k.checkError){j(y.file),T(k.errorMsg);return}}),C.value){const y=S(d,((F=o==null?void 0:o.value)==null?void 0:F.maximumSize)||0);y&&y.checkError&&(M(),T(y.errorMsg))}},we=d=>{B.value=d,n.emit("fileOver",d)},H=d=>{const F=u.value.filter(y=>y.name!==d.name);n.emit("deleteUploadedFile",d),n.emit("update:modelValue",F)},De=(d,F,y)=>{d.stopPropagation(),y===v.uploaded&&H(F),j(F)},be=()=>{let d=Promise.resolve(!0);if(g==null?void 0:g.value){const F=g==null?void 0:g.value(R());typeof F!="undefined"&&(typeof F=="boolean"?d=Promise.resolve(F):d=F)}return d},q=(d,F)=>{d&&d.stopPropagation(),be().then(y=>{if(!y){M();return}const k=C.value?Ce():Ne(F);k==null||k.then(c=>{e["on-success"]&&e["on-success"](c);const O=[...c.map(Ae=>Ae.file),...u.value];n.emit("update:modelValue",O)}).catch(c=>{e["on-error"]&&e["on-error"](c)})})},W=d=>{Ve(),d.then(F=>{F.forEach(c=>{r.value||M(),D(c,o==null?void 0:o.value)}),ke();const y=Se();(o==null?void 0:o.value)&&o.value.checkSameName&&y.length&&T(fe(y));const k=N.value.filter(c=>c.status===v.preLoad).map(c=>c.file);n.emit("fileSelect",k),a.value&&q()}).catch(F=>{T(F.message)})},X=()=>{p.value||W(l({accept:m==null?void 0:m.value,multiple:r.value,webkitdirectory:w.value}))},Te=d=>{B.value=!1,W(h(d)),n.emit("fileDrop",d)};return()=>{var d,F,y,k;return t.createVNode("div",null,[t.withDirectives(t.createVNode("div",{class:"devui-upload",style:`border: ${B.value?"1px solid #15bf15":"0"}`},[((F=(d=n.slots).default)==null?void 0:F.call(d))?t.createVNode("div",{onClick:X},[n.slots.default()]):t.createVNode("div",{class:`devui-input-group ${p.value?"disabled":""}`,onClick:X},[N.value.length===0&&t.createVNode("div",{class:"devui-form-control devui-upload-placeholder"},[s.value]),N.value.length>0&&t.createVNode("ul",{class:"devui-form-control devui-files-list"},[N.value.map((c,G)=>t.createVNode("li",{key:G,class:"devui-file-item devui-file-tag",style:"display: inline-block; margin: 0 2px 2px 0",title:c.file.name},[t.createVNode("span",{class:`devui-filename ${c.status===v.failed?"devui-failed-color":""}`},[c.file.name]),t.createVNode(t.resolveComponent("d-icon"),{name:"close",class:`${(c==null?void 0:c.status)===v.failed?"devui-upload-delete-file-button":""} ${(c==null?void 0:c.status)===v.uploading||(c==null?void 0:c.status)===v.uploaded?"devui-uploading-delete":""}`,onClick:O=>De(O,c.file,c.status)},null),c.status===v.uploading&&t.createVNode("div",{class:"icon devui-upload-progress"},[t.createVNode(t.resolveComponent("d-progress"),{isCircle:!0,percentage:c.percentage,barbgcolor:"#50D4AB",strokeWidth:8,showContent:!1},null)]),c.status===v.failed&&t.createVNode(t.resolveComponent("d-icon"),{name:"running",onClick:q},null),c.status===v.uploaded&&t.createVNode(t.resolveComponent("d-icon"),{name:"right",color:"#50d4ab"},null)]))]),t.createVNode("span",{class:"devui-input-group-addon"},[t.createVNode(t.resolveComponent("d-icon"),{name:"more-operate",color:"#252b3a"},null)])])]),[[t.resolveDirective("file-drop"),{droppable:b,isSingle:!r,onFileDrop:Te,onFileOver:we}]]),t.createVNode("div",null,[(k=(y=n.slots)["uploaded-files"])==null?void 0:k.call(y,{uploadedFiles:u.value,deleteFile:H})])])}}});const I=e=>{var n;return e.dataTransfer?e.dataTransfer:(n=e.originalEvent)==null?void 0:n.dataTransfer},he=e=>e?e.indexOf?e.indexOf("Files")!==-1:e.contains?e.contains("Files"):!1:!1,x=e=>{e.preventDefault(),e.stopPropagation()},Fe=(e,n)=>{const{onFileOver:o}=n.value;e.addEventListener("dragover",s=>{const a=I(s);!he(a.types)||(x(s),o&&o(!0))})},ve=(e,n)=>{const{onFileOver:o}=n.value;e.addEventListener("dragleave",s=>{s.currentTarget!==e&&(x(s),o&&o(!0))})},ge=(e,n)=>{const{onFileDrop:o,isSingle:s}=n.value;e.addEventListener("drop",a=>{const p=I(a);!p||(x(a),s?o&&o([p.files[0]]):o&&o(Array.from(p.files)))})},ye={mounted:(e,n)=>{const{droppable:o}=n.value;!o||(Fe(e,n),ve(e,n),ge(e,n))}};var Ee={title:"Upload \u4E0A\u4F20",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(e){e.directive("file-drop",ye),e.component(A.name,A)}};f.IFileOptions=re,f.IUploadOptions=ae,f.Upload=A,f.UploadStatus=v,f.default=Ee,f.uploadProps=z,Object.defineProperty(f,"__esModule",{value:!0}),f[Symbol.toStringTag]="Module"});
|