vue-devui 1.5.4-alpha.0 → 1.5.4

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.
@@ -0,0 +1,11 @@
1
+ import type { App } from 'vue';
2
+ import ActionTimeline from './src/action-timeline';
3
+ export * from './src/action-timeline-types';
4
+ export { ActionTimeline };
5
+ declare const _default: {
6
+ title: string;
7
+ category: string;
8
+ status: string;
9
+ install(app: App): void;
10
+ };
11
+ export default _default;
@@ -0,0 +1,46 @@
1
+ import type { ExtractPropTypes, PropType } from 'vue';
2
+ export interface ActionItem {
3
+ action?: string;
4
+ actionContent?: string;
5
+ createdAt?: string;
6
+ icon?: string;
7
+ status?: 'color-none' | 'color-danger' | 'color-info' | 'color-success';
8
+ [k: string]: unknown;
9
+ }
10
+ export interface ActionData {
11
+ time?: string;
12
+ actions?: ActionItem[];
13
+ }
14
+ export declare type TimelineLayout = 'horizontal' | 'vertical';
15
+ export interface LoadMoreConfig {
16
+ type?: string;
17
+ loadMore?: boolean;
18
+ isToTop?: boolean;
19
+ loadMoreText?: string;
20
+ toTopText?: string;
21
+ }
22
+ export declare const actionTimelineProps: {
23
+ data: {
24
+ type: PropType<ActionData[]>;
25
+ };
26
+ layout: {
27
+ type: PropType<TimelineLayout>;
28
+ default: string;
29
+ };
30
+ loadMoreConfig: {
31
+ type: PropType<LoadMoreConfig>;
32
+ };
33
+ showTailLine: {
34
+ type: BooleanConstructor;
35
+ default: boolean;
36
+ };
37
+ showStatusBgColor: {
38
+ type: BooleanConstructor;
39
+ default: boolean;
40
+ };
41
+ showStatusLineColor: {
42
+ type: BooleanConstructor;
43
+ default: boolean;
44
+ };
45
+ };
46
+ export declare type ActionTimelineProps = ExtractPropTypes<typeof actionTimelineProps>;
@@ -0,0 +1,55 @@
1
+ import type { ActionData } from './action-timeline-types';
2
+ import './action-timeline.scss';
3
+ declare const _default: import("vue").DefineComponent<{
4
+ data: {
5
+ type: import("vue").PropType<ActionData[]>;
6
+ };
7
+ layout: {
8
+ type: import("vue").PropType<import("./action-timeline-types").TimelineLayout>;
9
+ default: string;
10
+ };
11
+ loadMoreConfig: {
12
+ type: import("vue").PropType<import("./action-timeline-types").LoadMoreConfig>;
13
+ };
14
+ showTailLine: {
15
+ type: BooleanConstructor;
16
+ default: boolean;
17
+ };
18
+ showStatusBgColor: {
19
+ type: BooleanConstructor;
20
+ default: boolean;
21
+ };
22
+ showStatusLineColor: {
23
+ type: BooleanConstructor;
24
+ default: boolean;
25
+ };
26
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, "actionLoadMore", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
27
+ data: {
28
+ type: import("vue").PropType<ActionData[]>;
29
+ };
30
+ layout: {
31
+ type: import("vue").PropType<import("./action-timeline-types").TimelineLayout>;
32
+ default: string;
33
+ };
34
+ loadMoreConfig: {
35
+ type: import("vue").PropType<import("./action-timeline-types").LoadMoreConfig>;
36
+ };
37
+ showTailLine: {
38
+ type: BooleanConstructor;
39
+ default: boolean;
40
+ };
41
+ showStatusBgColor: {
42
+ type: BooleanConstructor;
43
+ default: boolean;
44
+ };
45
+ showStatusLineColor: {
46
+ type: BooleanConstructor;
47
+ default: boolean;
48
+ };
49
+ }>>, {
50
+ layout: import("./action-timeline-types").TimelineLayout;
51
+ showTailLine: boolean;
52
+ showStatusBgColor: boolean;
53
+ showStatusLineColor: boolean;
54
+ }>;
55
+ export default _default;
@@ -227,6 +227,7 @@ declare const _default: import("vue").DefineComponent<{
227
227
  readonly size: import("./auto-complete-types").AutoCompleteSize;
228
228
  readonly placeholder: string;
229
229
  readonly disabledKey: string;
230
+ readonly loadMore: () => void;
230
231
  readonly modelValue: string;
231
232
  readonly allowEmptyValueSearch: boolean;
232
233
  readonly appendToBody: boolean;
@@ -242,7 +243,6 @@ declare const _default: import("vue").DefineComponent<{
242
243
  readonly showAnimation: boolean;
243
244
  readonly transInputFocusEmit: () => void;
244
245
  readonly selectValue: (val: string) => string;
245
- readonly loadMore: () => void;
246
246
  readonly suffix: string;
247
247
  readonly clearable: boolean;
248
248
  }>;
@@ -1,8 +1,7 @@
1
1
  import type { App } from 'vue';
2
2
  import Carousel from './src/carousel';
3
3
  import CarouselItem from './src/item';
4
- export { Carousel };
5
- export { CarouselItem };
4
+ export { Carousel, CarouselItem };
6
5
  declare const _default: {
7
6
  title: string;
8
7
  category: string;
@@ -1,7 +1,10 @@
1
1
  import type { App } from 'vue';
2
2
  import Modal from './src/modal';
3
+ import ModalHeader from './src/components/header';
4
+ import ModalBody from './src/components/body';
5
+ import ModalFooter from './src/components/footer';
3
6
  export * from './src/modal-types';
4
- export { Modal };
7
+ export { Modal, ModalHeader, ModalBody, ModalFooter };
5
8
  declare const _default: {
6
9
  title: string;
7
10
  category: string;
@@ -1,7 +1,8 @@
1
1
  import type { App } from 'vue';
2
2
  import Splitter from './src/splitter';
3
+ import SplitterPane from './src/components/splitter-pane';
3
4
  export * from './src/splitter-types';
4
- export { Splitter };
5
+ export { Splitter, SplitterPane };
5
6
  declare const _default: {
6
7
  title: string;
7
8
  category: string;
@@ -1,7 +1,8 @@
1
1
  import type { App } from 'vue';
2
2
  import Upload from './src/upload';
3
+ import fileDropDirective from './src/file-drop-directive';
3
4
  export * from './src/upload-types';
4
- export { Upload };
5
+ export { Upload, fileDropDirective };
5
6
  declare const _default: {
6
7
  title: string;
7
8
  category: string;
@@ -1,5 +1,6 @@
1
1
  import type { App } from 'vue';
2
2
  import { Accordion } from './accordion';
3
+ import { ActionTimeline } from './action-timeline';
3
4
  import { Alert } from './alert';
4
5
  import { Anchor } from './anchor';
5
6
  import { AutoComplete } from './auto-complete';
@@ -38,7 +39,7 @@ import { LoadingService, LoadingDirective } from './loading';
38
39
  import { Mention } from './mention';
39
40
  import { Menu, SubMenu, MenuItem } from './menu';
40
41
  import { Message } from './message';
41
- import { Modal } from './modal';
42
+ import { Modal, ModalHeader, ModalBody, ModalFooter } from './modal';
42
43
  import { MultiAutoComplete } from './multi-auto-complete';
43
44
  import { NavSprite } from './nav-sprite';
44
45
  import { Notification, NotificationService } from './notification';
@@ -57,7 +58,7 @@ import { Search } from './search';
57
58
  import { Select, Option, OptionGroup } from './select';
58
59
  import { Skeleton, SkeletonItem } from './skeleton';
59
60
  import { Slider } from './slider';
60
- import { Splitter } from './splitter';
61
+ import { Splitter, SplitterPane } from './splitter';
61
62
  import { Statistic } from './statistic';
62
63
  import { Status } from './status';
63
64
  import { Steps, Step } from './steps';
@@ -76,10 +77,10 @@ import { Tooltip } from './tooltip';
76
77
  import { Transfer } from './transfer';
77
78
  import { Tree } from './tree';
78
79
  import { TreeSelect } from './tree-select';
79
- import { Upload } from './upload';
80
+ import { Upload, fileDropDirective } from './upload';
80
81
  import { VirtualList } from './virtual-list';
81
82
  import './style/devui.scss';
82
- export { Accordion, Alert, Anchor, AutoComplete, Avatar, BackTop, Badge, Breadcrumb, BreadcrumbItem, Button, ButtonGroup, Card, Carousel, CarouselItem, Cascader, Checkbox, CheckboxGroup, CheckboxButton, CodeEditor, Collapse, CollapseItem, ColorPicker, Comment, Countdown, DatePicker, StickSlider, DatePickerPro, DRangeDatePickerPro, DraggableDirective, DroppableDirective, SortableDirective, Drawer, DrawerService, Dropdown, DropdownMenu, EditableSelect, Form, FormItem, FormOperation, Fullscreen, Gantt, Row, Col, Icon, IconGroup, ImagePreviewDirective, ImagePreviewService, Input, InputIcon, InputNumber, Layout, Content, Header, Footer, Aside, List, ListItem, LoadingService, LoadingDirective, Mention, Menu, SubMenu, MenuItem, Message, Modal, MultiAutoComplete, NavSprite, Notification, NotificationService, FlexibleOverlay, FixedOverlay, Pagination, Panel, PanelHeader, PanelBody, PanelFooter, Popover, Progress, QuadrantDiagram, Radio, RadioGroup, RadioButton, Rate, ReadTip, Result, RippleDirective, Search, Select, Option, OptionGroup, Skeleton, SkeletonItem, Slider, Splitter, Statistic, Status, Steps, Step, StepsGuide, StepsGuideDirective, Sticky, Switch, Table, Column, Tabs, Tab, Tag, TagInput, Textarea, TimePicker, TimeSelect, Timeline, TimelineItem, Tooltip, Transfer, Tree, TreeSelect, Upload, VirtualList };
83
+ export { Accordion, ActionTimeline, Alert, Anchor, AutoComplete, Avatar, BackTop, Badge, Breadcrumb, BreadcrumbItem, Button, ButtonGroup, Card, Carousel, CarouselItem, Cascader, Checkbox, CheckboxGroup, CheckboxButton, CodeEditor, Collapse, CollapseItem, ColorPicker, Comment, Countdown, DatePicker, StickSlider, DatePickerPro, DRangeDatePickerPro, DraggableDirective, DroppableDirective, SortableDirective, Drawer, DrawerService, Dropdown, DropdownMenu, EditableSelect, Form, FormItem, FormOperation, Fullscreen, Gantt, Row, Col, Icon, IconGroup, ImagePreviewDirective, ImagePreviewService, Input, InputIcon, InputNumber, Layout, Content, Header, Footer, Aside, List, ListItem, LoadingService, LoadingDirective, Mention, Menu, SubMenu, MenuItem, Message, Modal, ModalHeader, ModalBody, ModalFooter, MultiAutoComplete, NavSprite, Notification, NotificationService, FlexibleOverlay, FixedOverlay, Pagination, Panel, PanelHeader, PanelBody, PanelFooter, Popover, Progress, QuadrantDiagram, Radio, RadioGroup, RadioButton, Rate, ReadTip, Result, RippleDirective, Search, Select, Option, OptionGroup, Skeleton, SkeletonItem, Slider, Splitter, SplitterPane, Statistic, Status, Steps, Step, StepsGuide, StepsGuideDirective, Sticky, Switch, Table, Column, Tabs, Tab, Tag, TagInput, Textarea, TimePicker, TimeSelect, Timeline, TimelineItem, Tooltip, Transfer, Tree, TreeSelect, Upload, fileDropDirective, VirtualList };
83
84
  declare const _default: {
84
85
  version: string;
85
86
  install(app: App): void;
@@ -1436,4 +1436,4 @@ var index = {
1436
1436
  app.component(Upload.name, Upload);
1437
1437
  }
1438
1438
  };
1439
- export { IFileOptions, IUploadOptions, Upload, UploadStatus, index as default, uploadProps };
1439
+ export { IFileOptions, IUploadOptions, Upload, UploadStatus, index as default, fileDropDirective, uploadProps };
@@ -1 +1 @@
1
- var at=Object.defineProperty,it=Object.defineProperties;var rt=Object.getOwnPropertyDescriptors;var se=Object.getOwnPropertySymbols;var ut=Object.prototype.hasOwnProperty,ct=Object.prototype.propertyIsEnumerable;var Z=(y,t,b)=>t in y?at(y,t,{enumerable:!0,configurable:!0,writable:!0,value:b}):y[t]=b,W=(y,t)=>{for(var b in t||(t={}))ut.call(t,b)&&Z(y,b,t[b]);if(se)for(var b of se(t))ct.call(t,b)&&Z(y,b,t[b]);return y},ae=(y,t)=>it(y,rt(t));var D=(y,t,b)=>(Z(y,typeof t!="symbol"?t+"":t,b),b);(function(y,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(y=typeof globalThis!="undefined"?globalThis:y||self,t(y.index={},y.Vue))})(this,function(y,t){"use strict";const b={modelValue:{type:Boolean,default:!1},title:{type:String,default:""},type:{type:String,default:"normal"},duration:{type:Number,default:3e3},onClose:{type:Function}},ie={name:{type:String,default:"",required:!0},size:{type:[Number,String],default:"inherit"},color:{type:String,default:"inherit"},component:{type:Object,default:null},classPrefix:{type:String,default:"icon"},operable:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},rotate:{type:[Number,String]}},re={name:{type:String,default:"",required:!0},color:{type:String,default:"inherit"},size:{type:[Number,String],default:"inherit"}};function L(e,n,o){let l=e;return n&&(l+=`__${n}`),o&&(l+=`--${o}`),l}function x(e,n=!1){const o=n?`.devui-${e}`:`devui-${e}`;return{b:()=>L(o),e:a=>a?L(o,a):"",m:a=>a?L(o,"",a):"",em:(a,p)=>a&&p?L(o,a,p):""}}var pt="",ue=t.defineComponent({name:"DSvgIcon",props:re,setup(e){const{name:n,color:o,size:l}=t.toRefs(e),s=x("svg-icon"),r=t.computed(()=>`#icon-${n.value}`),f=t.computed(()=>typeof l.value=="number"?`${l.value}px`:l.value),a={width:f.value,height:f.value};return()=>t.createVNode("svg",{class:s.b(),style:a},[t.createVNode("use",{"xlink:href":r.value,fill:o.value},null)])}});function ce(e){return/^((http|https):)?\/\//.test(e)}function de(e,n){const{component:o,name:l,size:s,color:r,classPrefix:f,rotate:a}=t.toRefs(e),p=x("icon"),V=t.computed(()=>typeof s.value=="number"?`${s.value}px`:s.value),m=o.value?t.resolveDynamicComponent(o.value):t.resolveDynamicComponent(ue),u=()=>t.createVNode("img",t.mergeProps({src:l.value,alt:l.value.split("/")[l.value.split("/").length-1],class:[(a==null?void 0:a.value)==="infinite"&&p.m("spin")],style:{width:V.value||"",transform:`rotate(${a==null?void 0:a.value}deg)`,verticalAlign:"middle"}},n.attrs),null),E=()=>t.createVNode(m,t.mergeProps({name:l.value,color:r.value,size:V.value,class:[(a==null?void 0:a.value)==="infinite"&&p.m("spin")],style:{transform:`rotate(${a==null?void 0:a.value}deg)`}},n.attrs),null),i=()=>{const c=/^icon-/.test(l.value)?l.value:`${f.value}-${l.value}`;return t.createVNode("i",t.mergeProps({class:[f.value,c,(a==null?void 0:a.value)==="infinite"&&p.m("spin")],style:{fontSize:V.value,color:r.value,transform:`rotate(${a==null?void 0:a.value}deg)`}},n.attrs),null)};return{iconDom:()=>o.value?E():ce(l.value)?u():i()}}var pe=t.defineComponent({name:"DIcon",props:ie,emits:["click"],setup(e,n){const{disabled:o,operable:l}=t.toRefs(e),{iconDom:s}=de(e,n),r=x("icon"),f=t.computed(()=>({[r.e("container")]:!0,[r.m("disabled")]:o.value,[r.m("operable")]:l.value,[r.m("no-slots")]:!Object.keys(n.slots).length})),a=p=>{o.value||n.emit("click",p)};return()=>{var p,V,m,u;return t.createVNode("div",{class:f.value,onClick:a},[(V=(p=n.slots).prefix)==null?void 0:V.call(p),s(),(u=(m=n.slots).suffix)==null?void 0:u.call(m)])}}}),ft="";t.defineComponent({name:"DIconGroup",setup(e,n){const o=x("icon-group");return()=>{var l,s;return t.createVNode("div",{class:o.b()},[(s=(l=n.slots).default)==null?void 0:s.call(l)])}}});var fe=t.defineComponent({emits:["click"],setup(e,{emit:n}){const o=x("notification");return()=>t.createVNode("div",{class:o.e("icon-close"),onClick:l=>n("click",l)},[t.createVNode(pe,{name:"close",size:"14px"},null)])}});const T=x("notification"),M={"xmlns:xlink":"http://www.w3.org/1999/xlink"},I={"xlink:href":"#path-s"};function me(){return t.createVNode("svg",t.mergeProps({width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},M),[t.createVNode("defs",null,[t.createVNode("polygon",{id:"path-s",points:"6.53553391 9.77817459 12.1923882 4.12132034 13.6066017 5.53553391 6.53553391 12.6066017 3 9.07106781 4.41421356 7.65685425 6.53553391 9.77817459"},null)]),t.createVNode("g",{id:"correct",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("mask",{id:"mask-2",fill:"white"},[t.createVNode("use",I,null)]),t.createVNode("use",t.mergeProps({id:"Mask",class:T.e("image-success-path")},I),null)])])}function he(){return t.createVNode("svg",t.mergeProps({width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},M),[t.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("path",{class:T.e("warning-outer"),d:"M8.96244623,0.57254229 L15.8714442,13.4101975 C16.1549662,13.9370117 15.9538562,14.5918482 15.4222523,14.8728158 C15.2642579,14.9563203 15.0879506, 15 14.9088903,15 L1.09089441,15 C0.488410063,15 0,14.5159904 0,13.9189343 C0,13.7414873 0.0440768395,13.5667684 0.128340519,13.4101975 L7.03733844,0.57254229 C7.32086049, 0.0457280838 7.98165058,-0.153569987 8.51325441,0.127397589 C8.70423071, 0.228333932 8.8605922,0.383286648 8.96244623,0.57254229 Z"},null),t.createVNode("path",{class:T.e("warning-inner"),"stroke-width":"0.3","fill-rule":"nonzero",d:"M8.87894737,13 L7.08947368,13 L7.08947368,11.2105263 L8.87894737,11.2105263 L8.87894737,13 Z M8.62102372,9.86842105 L7.32800539,9.86842105 L7,4.5 L8.96842105,4.5 L8.62102372,9.86842105 Z"},null)])])}function ge(){return t.createVNode("svg",t.mergeProps({width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},M),[t.createVNode("g",{id:"info",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("path",{class:T.e("image-info-path"),d:"M7,13 L7,6 L9,6 L9,13 L7,13 Z M7,5 L7,3 L9,3 L9,5 L7,5 Z",id:"info"},null)])])}function Fe(){return t.createVNode("svg",t.mergeProps({width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},M),[t.createVNode("defs",null,[t.createVNode("polygon",{id:"path-e",points:"8.07106781 6.65685425 10.8994949 3.82842712 12.3137085 5.24264069 9.48528137 8.07106781 12.3137085 10.8994949 10.8994949 12.3137085 8.07106781 9.48528137 5.24264069 12.3137085 3.82842712 10.8994949 6.65685425 8.07106781 3.82842712 5.24264069 5.24264069 3.82842712"},null)]),t.createVNode("g",{id:"error",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("mask",{id:"mask-2",fill:"white"},[t.createVNode("use",I,null)]),t.createVNode("use",t.mergeProps({id:"Mask",class:T.e("image-error-path")},I),null)])])}var ye=t.defineComponent({props:{type:{type:String,default:"normal"}},setup(e){const{type:n}=t.toRefs(e),o=x("notification"),l=t.computed(()=>({[o.e("image")]:!0,[o.em("image",n.value)]:!0}));return()=>t.createVNode("span",{class:l.value},[n.value&&n.value!=="normal"&&(n.value==="success"&&t.createVNode(me,null,null)||n.value==="info"&&t.createVNode(ge,null,null)||n.value==="warning"&&t.createVNode(he,null,null)||n.value==="error"&&t.createVNode(Fe,null,null))])}});function Ee(e){return{classes:t.computed(()=>({"devui-notification-item-container":!0,[`devui-notification-message-${e.type}`]:!0}))}}function ve(e,n){let o=null,l;const s=()=>{var p;o&&clearTimeout(o),o=null,(p=e.onClose)==null||p.call(e),n("update:modelValue",!1)},r=()=>{o&&e.duration&&(clearTimeout(o),o=null)},f=()=>{if(e.modelValue&&e.duration){const p=e.duration-(Date.now()-l);o=setTimeout(s,p)}},a=()=>{n("destroy")};return t.watch(()=>e.modelValue,p=>{p&&(l=Date.now(),e.duration&&(o=setTimeout(s,e.duration)))}),{interrupt:r,removeReset:f,close:s,handleDestroy:a}}var mt="",Ne=t.defineComponent({name:"DNotification",props:b,emits:["update:modelValue","destroy"],setup(e,{emit:n,slots:o}){const{modelValue:l,title:s,type:r}=t.toRefs(e),{classes:f}=Ee(e),{interrupt:a,removeReset:p,close:V,handleDestroy:m}=ve(e,n),u=x("notification");return()=>t.createVNode(t.Transition,{name:"notification-fade",onAfterLeave:m},{default:()=>{var E;return[l.value&&t.createVNode("div",{class:u.b(),onClick:t.withModifiers(()=>({}),["stop"]),onPointerup:t.withModifiers(()=>({}),["stop"])},[t.createVNode("div",{class:f.value,onMouseenter:a,onMouseleave:p},[t.createVNode("div",{class:u.e("item")},[t.createVNode(fe,{onClick:V},null),s.value&&t.createVNode(ye,{type:r.value},null),t.createVNode("div",{class:u.e("message")},[t.createVNode("span",{class:u.e("title")},[s.value]),t.createVNode("span",{class:u.e("content")},[(E=o.default)==null?void 0:E.call(o)])])])])])]}})}});function we(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const Ce={modelValue:!1,duration:3e3,type:"normal"};function De(e,n){const o=document.createElement("div");o.classList.add("notification__warpper");const l=document.body.lastElementChild;let s=50;if(l==null?void 0:l.classList.contains("notification__warpper")){const a=l.lastElementChild.getBoundingClientRect(),p=a.height,V=a.top;s=p+V}const r=t.createApp({setup(){return t.onUnmounted(()=>{document.body.removeChild(o)}),()=>t.createVNode(Ne,t.mergeProps(e,{onDestroy:r.unmount,style:[`top: ${s}px`]}),we(n)?n:{default:()=>[n]})}});return document.body.appendChild(o),r.mount(o),r}function Ve(e,n){e.modelValue=!1,n==null||n()}class ke{static open(n){const o=n.onClose||null,l=n.content;delete n.content;const s=t.reactive(ae(W(W({},Ce),n),{onClose:()=>{Ve(s,o)}}));De(s,l),s.modelValue=!0}}class be{constructor(){D(this,"uri");D(this,"method");D(this,"maximumSize");D(this,"headers");D(this,"authToken");D(this,"authTokenHeader");D(this,"additionalParameter");D(this,"fileFieldName");D(this,"checkSameName");D(this,"withCredentials");D(this,"responseType")}}class xe{constructor(){D(this,"accept");D(this,"multiple");D(this,"webkitdirectory")}}var N=(e=>(e[e.preLoad=0]="preLoad",e[e.uploading=1]="uploading",e[e.uploaded=2]="uploaded",e[e.failed=3]="failed",e))(N||{});const K={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:""},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},onError:{type:Function,default:void 0},onSuccess:{type:Function,default:void 0},onExceed:{type:Function,default:void 0},onProgress:{type:Function,default:void 0},onPreview:{type:Function,default:void 0},oneTimeUpload:{type:Boolean,default:!1},limit:{type:Number,default:0},httpRequest:{type:Function,default:void 0}},Ae=e=>{const n=t.ref(""),o=m=>{const u=document.createEvent("MouseEvents");u.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,0,null),m.dispatchEvent(u)},l=({multiple:m,accept:u,webkitdirectory:E})=>new Promise(i=>{const h=document.getElementById("d-upload-temp");h&&document.body.removeChild(h);const c=document.createElement("input");c.style.position="fixed",c.style.left="-2000px",c.style.top="-2000px",c.setAttribute("id","d-upload-temp"),c.setAttribute("type","file"),m&&c.setAttribute("multiple",""),u&&c.setAttribute("accept",u),E&&c.setAttribute("webkitdirectory",""),c.addEventListener("change",w=>{i(Array.prototype.slice.call(w.target.files))}),document.body.appendChild(c),o(c)}),s=(m,u)=>{if(m){const E=m.split(","),i=u.type.replace(/\/.*$/,"");return E.some(h=>{const c=h.trim();return c.startsWith(".")?u.name.toLowerCase().indexOf(c.toLowerCase(),u.name.toLowerCase().length-c.toLowerCase().length)>-1:/\/\*$/.test(c)?i===c.replace(/\/.*$/,""):u.type===c})}return!0},r=(m,u)=>u?m>1024*1024*u:!1;return{triggerSelectFiles:m=>{const{multiple:u,accept:E,webkitdirectory:i}=m;return l({multiple:u,accept:E,webkitdirectory:i})},_validateFiles:(m,u,E)=>s(u,m)?E&&r(m.size,E.maximumSize)?{checkError:!0,errorMsg:e("getBeyondMaximalFileSizeMsg")(m.name,E.maximumSize||0)}:{checkError:!1,errorMsg:void 0}:{checkError:!0,errorMsg:e("getNotAllowedFileTypeMsg")(m.name,u)},triggerDropFiles:m=>Promise.resolve(m),checkAllFilesSize:(m,u)=>{if(r(m,u))return n.value=e("getAllFilesBeyondMaximalFileSizeMsg")(u),{checkError:!0,errorMsg:n.value}}}};class Y{constructor(n,o){D(this,"xhr");D(this,"status");D(this,"response");D(this,"percentage",0);this.file=n,this.uploadOptions=o,this.file=n,this.uploadOptions=o,this.status=N.preLoad}send(n){return new Promise((o,l)=>{const{uri:s,method:r,headers:f,authToken:a,authTokenHeader:p,additionalParameter:V,fileFieldName:m,withCredentials:u,responseType:E}=this.uploadOptions||{},i=p||"Authorization",h=m||"file";this.xhr=new XMLHttpRequest,this.xhr.open(r||"POST",s||""),u&&(this.xhr.withCredentials=u),E&&(this.xhr.responseType=E),a&&this.xhr.setRequestHeader(i,a),f&&Object.keys(f).forEach(w=>{var v;(v=this.xhr)==null||v.setRequestHeader(w,f[w])}),this.xhr.upload.onprogress=w=>{this.percentage=Math.round(w.loaded*100/w.total)};const c=n&&n.length?this.oneTimeUploadFiles(h,V,n):this.parallelUploadFiles(h,V);this.xhr.send(c),this.status=N.uploading,this.xhr.onabort=()=>{this.status=N.preLoad,this.xhr=null},this.xhr.onerror=()=>{var w,v;this.response=(w=this.xhr)==null?void 0:w.response,this.status=N.failed,l({file:this.file,response:(v=this.xhr)==null?void 0:v.response})},this.xhr.onload=()=>{var w,v,A;((w=this.xhr)==null?void 0:w.readyState)===4&&this.xhr.status>=200&&this.xhr.status<300?(this.response=this.xhr.response,this.status=N.uploaded,o({file:this.file,response:this.xhr.response})):(this.response=(v=this.xhr)==null?void 0:v.response,this.status=N.failed,l({file:this.file,response:(A=this.xhr)==null?void 0:A.response}))}})}parallelUploadFiles(n,o){const l=new FormData;return l.append(n,this.file,this.file.name),o&&Object.keys(o).forEach(s=>{l.append(s,o[s])}),l}oneTimeUploadFiles(n,o,l){const s=new FormData;return l.forEach(r=>{s.append(n,r.file,r.file.name),o&&Object.keys(o).forEach(f=>{s.append(f,o[f])})}),s}cancel(){this.xhr&&this.xhr.abort()}}const Se=()=>{const e=t.ref([]),n=t.ref([]),o=i=>{let h=!0;for(let c=0;c<e.value.length;c++)if(i===e.value[c].file.name){h=!1,n.value.indexOf(i)===-1&&n.value.push(i);break}return h},l=(i,h)=>{h&&h.checkSameName?o(i.name)&&e.value.push(new Y(i,h)):e.value.push(new Y(i,h))},s=()=>e.value.map(i=>i.file),r=()=>e.value.map(i=>i),f=async i=>{if(!i||!i.length)return Promise.reject("no files");let h=[];return await i[0].send(i).finally(()=>h=i.map(c=>(c.status=i[0].status,c.percentage=i[0].percentage,{file:c.file,response:i[0].response}))),h};return{fileUploaders:e,getFiles:s,addFile:l,getFullFiles:r,deleteFile:i=>{const h=e.value.find(c=>c.file===i);h==null||h.cancel(),e.value=e.value.filter(c=>i!==c.file)},upload:async i=>{let h=[];if(i){i.percentage=0;const c=await i.send();h.push(c)}else{const c=e.value.filter(A=>A.status===N.preLoad),w=e.value.filter(A=>A.status===N.failed),v=c.length>0?c:w;h=await Promise.all(v.map(async A=>(A.percentage=0,await A.send())))}return h.length>0?Promise.resolve(h):Promise.reject("no files")},removeFiles:()=>{e.value=[],n.value=[]},getSameNameFiles:()=>n.value.join(),resetSameNameFiles:()=>{n.value=[]},_oneTimeUpload:()=>{const i=e.value.filter(h=>h.status!==N.uploaded);return f(i)}}};var ht="";function U(...e){const n=o=>o&&typeof o=="object";return e.reduce((o,l)=>(Object.keys(l).forEach(s=>{const r=o[s],f=l[s];Array.isArray(r)&&Array.isArray(f)?o[s]=Array.from(new Set([...f,...r])):n(r)&&n(f)?o[s]=U(r,f):o[s]=f}),o),{})}var Be={pagination:{totalItemText:"\u6240\u6709\u6761\u76EE",goToText:"\u8DF3\u81F3",perPage:"\u6761/\u9875"},accordion:{loading:"\u52A0\u8F7D\u4E2D",noData:"\u6CA1\u6709\u6570\u636E"},autoCompleteDropdown:{latestInput:"\u6700\u8FD1\u8F93\u5165"},cascaderList:{noData:"\u6CA1\u6709\u6570\u636E"},colorPicker:{foundationPanel:"\u57FA\u7840\u9762\u677F",advancedPanel:"\u9AD8\u7EA7\u9762\u677F"},datePickerPro:{ok:"\u786E\u5B9A",placeholder:"\u8BF7\u9009\u62E9\u65E5\u671F",month1:"1\u6708",month2:"2\u6708",month3:"3\u6708",month4:"4\u6708",month5:"5\u6708",month6:"6\u6708",month7:"7\u6708",month8:"8\u6708",month9:"9\u6708",month10:"10\u6708",month11:"11\u6708",month12:"12\u6708",year:"\u5E74",startPlaceholder:"\u8BF7\u9009\u62E9\u5F00\u59CB\u65E5\u671F",endPlaceholder:"\u8BF7\u9009\u62E9\u7ED3\u675F\u65E5\u671F",getWeekDays(){return["\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"]},getTimeArr(){return["\u65F6","\u5206","\u79D2"]},getYearMonthStr(e,n){return`${e}\u5E74${n}\u6708`}},editableSelect:{noRelatedRecords:"\u627E\u4E0D\u5230\u76F8\u5173\u8BB0\u5F55",noData:"\u6CA1\u6709\u6570\u636E"},input:{placeholder:"\u8BF7\u8F93\u5165"},splitterBar:{collapse:"\u6536\u8D77",expand:"\u5C55\u5F00"},stepsGuide:{previous:"\u4E0A\u4E00\u6B65",continue:"\u6211\u77E5\u9053\u5566\uFF0C\u7EE7\u7EED",ok:"\u6211\u77E5\u9053\u5566"},table:{selectAll:"\u5168\u9009",ok:"\u786E\u5B9A"},timePopup:{ok:"\u786E\u5B9A"},transfer:{unit:"\u9879",panelUnit:"\u9879",headerUnit:"\u9879",noData:"\u6682\u65E0\u6570\u636E",placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22"},tree:{loading:"\u52A0\u8F7D\u4E2D",newNode:"\u65B0\u8282\u70B9",selectPlaceholder:"\u8BF7\u9009\u62E9"},upload:{placeholder:"\u9009\u62E9\u6587\u4EF6",getExistSameNameFilesMsg(e){return`\u60A8\u4E0A\u4F20\u7684 "${e}" \u5B58\u5728\u91CD\u540D\u6587\u4EF6, \u8BF7\u91CD\u65B0\u9009\u62E9\u6587\u4EF6`},getAllFilesBeyondMaximalFileSizeMsg(e){return`\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`},getBeyondMaximalFileSizeMsg(e,n){return`\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`},getNotAllowedFileTypeMsg(e,n){return`\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`}},search:{placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u5B57"},select:{placeholder:"\u8BF7\u9009\u62E9",noDataText:"\u65E0\u6570\u636E",noMatchText:"\u627E\u4E0D\u5230\u76F8\u5173\u8BB0\u5F55",loadingText:"\u52A0\u8F7D\u4E2D..."},tagInput:{maxTagsText:"\u5DF2\u8FBE\u5230\u6700\u5927\u4E2A\u6570\uFF1A"},timeSelect:{placeholder:"\u8BF7\u9009\u62E9\u65F6\u95F4"}};const z=t.ref("zh-CN");let O=t.reactive({[z.value]:Be});const Pe={messages(){return O[z.value]},lang(){return z.value},use(e,n){z.value=e,this.add({[e]:n})},add(e={}){O=U(O,e)}},Te=e=>e.substring(1).replace(/^\S/,n=>n.toLocaleLowerCase());function J(e,n){const o=n.split(".");let l=e;return o.forEach(s=>{var r;l=(r=l[s])!=null?r:""}),l}function Le(e,n,o){const l=o||Te(e)+".";return s=>{var a;const r=((a=n==null?void 0:n.appContext.config.globalProperties.langMessages)==null?void 0:a.value)||Pe.messages();return J(r,l+s)||J(r,s)}}var $=t.defineComponent({name:"DUpload",props:K,emits:["fileDrop","fileOver","fileSelect","deleteUploadedFile","update:modelValue"],setup(e,n){const o=t.getCurrentInstance(),l=Le("DUpload",o),{uploadOptions:s,placeholder:r,autoUpload:f,disabled:a,beforeUpload:p,droppable:V,oneTimeUpload:m,modelValue:u,multiple:E,accept:i,webkitdirectory:h,limit:c,httpRequest:w}=t.toRefs(e),v=x("upload"),A=x("input-group"),j=x("form-control"),Re=x("input-group-addon"),{triggerSelectFiles:je,_validateFiles:He,triggerDropFiles:qe,checkAllFilesSize:Ge}=Ae(l),{fileUploaders:S,addFile:Xe,getFullFiles:Ze,deleteFile:ee,upload:We,resetSameNameFiles:Ke,removeFiles:H,_oneTimeUpload:Ye,getSameNameFiles:Ue}=Se(),q=t.ref(!1),G=t.ref([]),_=d=>{ke.open({type:"warning",content:d})},Je=()=>{var g;let d=0;if(S.value.forEach(C=>{d+=C.file.size;const k=He(C.file,(i==null?void 0:i.value)||"",C.uploadOptions);if(k&&k.checkError){ee(C.file),_(k.errorMsg);return}}),m.value){const C=Ge(d,((g=s==null?void 0:s.value)==null?void 0:g.maximumSize)||0);C&&C.checkError&&(H(),_(C.errorMsg))}},Qe=d=>{q.value=d,n.emit("fileOver",d)},te=d=>{const g=u.value.filter(C=>C.name!==d.name);n.emit("deleteUploadedFile",d),n.emit("update:modelValue",g)},ne=(d,g,C)=>{d==null||d.stopPropagation(),C===N.uploaded&&te(g),ee(g)},et=()=>{let d=Promise.resolve(!0);if(p==null?void 0:p.value){const g=p==null?void 0:p.value(Ze());typeof g!="undefined"&&(typeof g=="boolean"?d=Promise.resolve(g):d=g)}return d},X=(d,g)=>{d&&d.stopPropagation(),et().then(C=>{if(!C){H();return}if(typeof(w==null?void 0:w.value)=="function"){const F=S.value.map(B=>B.file);w.value(F);return}const k=m.value?Ye():We(g);e.onProgress&&e.onProgress(G.value,u.value),k==null||k.then(F=>{e.onSuccess&&e.onSuccess(F);const B=F.map(st=>st.file),P=[...B,...u.value];n.emit("update:modelValue",P),e.onChange&&e.onChange(B,P)}).catch(F=>{e.onError&&e.onError(F),e.onChange&&e.onChange([F.file],u.value)})})},oe=d=>{Ke(),d.then(g=>{if(c.value&&u.value.length+g.length>c.value){e.onExceed&&e.onExceed(g,u.value);return}e.onChange&&e.onChange(g,u.value),g.forEach(k=>{E.value||H(),Xe(k,s==null?void 0:s.value)}),Je();const C=Ue();(s==null?void 0:s.value)&&s.value.checkSameName&&C.length&&_(l("getExistSameNameFilesMsg")(C)),G.value=S.value.filter(k=>k.status===N.preLoad).map(k=>k.file),n.emit("fileSelect",G.value),f.value&&X()}).catch(g=>{_(g.message)})},le=()=>{a.value||oe(je({accept:i==null?void 0:i.value,multiple:E.value,webkitdirectory:h.value}))},tt=d=>{q.value=!1,oe(qe(d)),n.emit("fileDrop",d)},nt=(d,g)=>{X(d,g)},ot=d=>{S.value.forEach(g=>{ne(d,g.file,g.status)})},lt=(d,g)=>{d==null||d.stopPropagation(),e.onPreview&&e.onPreview(g)};return n.expose({submit:nt,clearFiles:ot}),()=>{var d,g,C,k;return t.createVNode("div",null,[t.withDirectives(t.createVNode("div",{class:v.b(),style:`border: ${q.value?"1px solid #15bf15":"0"}`},[((g=(d=n.slots).default)==null?void 0:g.call(d))?t.createVNode("div",{onClick:le},[n.slots.default()]):t.createVNode("div",{class:[A.b(),a.value?"disabled":""],onClick:le},[S.value.length===0&&t.createVNode("div",{class:[j.b(),v.e("placeholder")]},[r.value||l("placeholder")]),S.value.length>0&&t.createVNode("ul",{class:[j.b(),v.e("files-list")]},[S.value.map((F,B)=>t.createVNode("li",{key:B,class:[v.e("file-item"),v.e("file-tag")],style:"display: inline-block;",title:F.file.name,onClick:P=>lt(P,F.file)},[t.createVNode("span",{class:[v.e("filename"),F.status===N.failed?v.m("failed-color"):""]},[F.file.name]),t.createVNode(t.resolveComponent("d-icon"),{name:"close",class:[(F==null?void 0:F.status)===N.failed?v.e("delete-file-button"):"",(F==null?void 0:F.status)===N.uploading||(F==null?void 0:F.status)===N.uploaded?v.e("delete"):""],onClick:P=>ne(P,F.file,F.status)},null),F.status===N.uploading&&t.createVNode("div",{class:["icon",v.e("progress")]},[t.createVNode(t.resolveComponent("d-progress"),{isCircle:!0,percentage:F.percentage,barbgcolor:"#50D4AB",strokeWidth:8,showContent:!1},null)]),F.status===N.failed&&t.createVNode(t.resolveComponent("d-icon"),{name:"running",onClick:X},null),F.status===N.uploaded&&t.createVNode(t.resolveComponent("d-icon"),{name:"right",color:"#50d4ab"},null)]))]),t.createVNode("span",{class:Re.b()},[t.createVNode(t.resolveComponent("d-icon"),{name:"more-operate",color:"#252b3a"},null)])])]),[[t.resolveDirective("file-drop"),{droppable:V,isSingle:!E,onFileDrop:tt,onFileOver:Qe}]]),t.createVNode("div",null,[(k=(C=n.slots)["uploaded-files"])==null?void 0:k.call(C,{uploadedFiles:u.value,deleteFile:te})])])}}});const Q=e=>{var n;return e.dataTransfer?e.dataTransfer:(n=e.originalEvent)==null?void 0:n.dataTransfer},Me=e=>e?e.indexOf?e.indexOf("Files")!==-1:e.contains?e.contains("Files"):!1:!1,R=e=>{e.preventDefault(),e.stopPropagation()},Ie=(e,n)=>{const{onFileOver:o}=n.value;e.addEventListener("dragover",l=>{const s=Q(l);!Me(s.types)||(R(l),o&&o(!0))})},ze=(e,n)=>{const{onFileOver:o}=n.value;e.addEventListener("dragleave",l=>{l.currentTarget!==e&&(R(l),o&&o(!0))})},_e=(e,n)=>{const{onFileDrop:o,isSingle:l}=n.value;e.addEventListener("drop",s=>{const r=Q(s);!r||(R(s),l?o&&o([r.files[0]]):o&&o(Array.from(r.files)))})},Oe={mounted:(e,n)=>{const{droppable:o}=n.value;!o||(Ie(e,n),ze(e,n),_e(e,n))}};var $e={title:"Upload \u4E0A\u4F20",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(e){e.directive("file-drop",Oe),e.component($.name,$)}};y.IFileOptions=xe,y.IUploadOptions=be,y.Upload=$,y.UploadStatus=N,y.default=$e,y.uploadProps=K,Object.defineProperty(y,"__esModule",{value:!0}),y[Symbol.toStringTag]="Module"});
1
+ var at=Object.defineProperty,it=Object.defineProperties;var rt=Object.getOwnPropertyDescriptors;var ae=Object.getOwnPropertySymbols;var ut=Object.prototype.hasOwnProperty,ct=Object.prototype.propertyIsEnumerable;var Z=(y,t,b)=>t in y?at(y,t,{enumerable:!0,configurable:!0,writable:!0,value:b}):y[t]=b,W=(y,t)=>{for(var b in t||(t={}))ut.call(t,b)&&Z(y,b,t[b]);if(ae)for(var b of ae(t))ct.call(t,b)&&Z(y,b,t[b]);return y},ie=(y,t)=>it(y,rt(t));var D=(y,t,b)=>(Z(y,typeof t!="symbol"?t+"":t,b),b);(function(y,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(y=typeof globalThis!="undefined"?globalThis:y||self,t(y.index={},y.Vue))})(this,function(y,t){"use strict";const b={modelValue:{type:Boolean,default:!1},title:{type:String,default:""},type:{type:String,default:"normal"},duration:{type:Number,default:3e3},onClose:{type:Function}},re={name:{type:String,default:"",required:!0},size:{type:[Number,String],default:"inherit"},color:{type:String,default:"inherit"},component:{type:Object,default:null},classPrefix:{type:String,default:"icon"},operable:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},rotate:{type:[Number,String]}},ue={name:{type:String,default:"",required:!0},color:{type:String,default:"inherit"},size:{type:[Number,String],default:"inherit"}};function L(e,n,o){let l=e;return n&&(l+=`__${n}`),o&&(l+=`--${o}`),l}function x(e,n=!1){const o=n?`.devui-${e}`:`devui-${e}`;return{b:()=>L(o),e:a=>a?L(o,a):"",m:a=>a?L(o,"",a):"",em:(a,p)=>a&&p?L(o,a,p):""}}var pt="",ce=t.defineComponent({name:"DSvgIcon",props:ue,setup(e){const{name:n,color:o,size:l}=t.toRefs(e),s=x("svg-icon"),r=t.computed(()=>`#icon-${n.value}`),f=t.computed(()=>typeof l.value=="number"?`${l.value}px`:l.value),a={width:f.value,height:f.value};return()=>t.createVNode("svg",{class:s.b(),style:a},[t.createVNode("use",{"xlink:href":r.value,fill:o.value},null)])}});function de(e){return/^((http|https):)?\/\//.test(e)}function pe(e,n){const{component:o,name:l,size:s,color:r,classPrefix:f,rotate:a}=t.toRefs(e),p=x("icon"),V=t.computed(()=>typeof s.value=="number"?`${s.value}px`:s.value),m=o.value?t.resolveDynamicComponent(o.value):t.resolveDynamicComponent(ce),u=()=>t.createVNode("img",t.mergeProps({src:l.value,alt:l.value.split("/")[l.value.split("/").length-1],class:[(a==null?void 0:a.value)==="infinite"&&p.m("spin")],style:{width:V.value||"",transform:`rotate(${a==null?void 0:a.value}deg)`,verticalAlign:"middle"}},n.attrs),null),v=()=>t.createVNode(m,t.mergeProps({name:l.value,color:r.value,size:V.value,class:[(a==null?void 0:a.value)==="infinite"&&p.m("spin")],style:{transform:`rotate(${a==null?void 0:a.value}deg)`}},n.attrs),null),i=()=>{const c=/^icon-/.test(l.value)?l.value:`${f.value}-${l.value}`;return t.createVNode("i",t.mergeProps({class:[f.value,c,(a==null?void 0:a.value)==="infinite"&&p.m("spin")],style:{fontSize:V.value,color:r.value,transform:`rotate(${a==null?void 0:a.value}deg)`}},n.attrs),null)};return{iconDom:()=>o.value?v():de(l.value)?u():i()}}var fe=t.defineComponent({name:"DIcon",props:re,emits:["click"],setup(e,n){const{disabled:o,operable:l}=t.toRefs(e),{iconDom:s}=pe(e,n),r=x("icon"),f=t.computed(()=>({[r.e("container")]:!0,[r.m("disabled")]:o.value,[r.m("operable")]:l.value,[r.m("no-slots")]:!Object.keys(n.slots).length})),a=p=>{o.value||n.emit("click",p)};return()=>{var p,V,m,u;return t.createVNode("div",{class:f.value,onClick:a},[(V=(p=n.slots).prefix)==null?void 0:V.call(p),s(),(u=(m=n.slots).suffix)==null?void 0:u.call(m)])}}}),ft="";t.defineComponent({name:"DIconGroup",setup(e,n){const o=x("icon-group");return()=>{var l,s;return t.createVNode("div",{class:o.b()},[(s=(l=n.slots).default)==null?void 0:s.call(l)])}}});var me=t.defineComponent({emits:["click"],setup(e,{emit:n}){const o=x("notification");return()=>t.createVNode("div",{class:o.e("icon-close"),onClick:l=>n("click",l)},[t.createVNode(fe,{name:"close",size:"14px"},null)])}});const T=x("notification"),M={"xmlns:xlink":"http://www.w3.org/1999/xlink"},I={"xlink:href":"#path-s"};function he(){return t.createVNode("svg",t.mergeProps({width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},M),[t.createVNode("defs",null,[t.createVNode("polygon",{id:"path-s",points:"6.53553391 9.77817459 12.1923882 4.12132034 13.6066017 5.53553391 6.53553391 12.6066017 3 9.07106781 4.41421356 7.65685425 6.53553391 9.77817459"},null)]),t.createVNode("g",{id:"correct",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("mask",{id:"mask-2",fill:"white"},[t.createVNode("use",I,null)]),t.createVNode("use",t.mergeProps({id:"Mask",class:T.e("image-success-path")},I),null)])])}function ge(){return t.createVNode("svg",t.mergeProps({width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},M),[t.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("path",{class:T.e("warning-outer"),d:"M8.96244623,0.57254229 L15.8714442,13.4101975 C16.1549662,13.9370117 15.9538562,14.5918482 15.4222523,14.8728158 C15.2642579,14.9563203 15.0879506, 15 14.9088903,15 L1.09089441,15 C0.488410063,15 0,14.5159904 0,13.9189343 C0,13.7414873 0.0440768395,13.5667684 0.128340519,13.4101975 L7.03733844,0.57254229 C7.32086049, 0.0457280838 7.98165058,-0.153569987 8.51325441,0.127397589 C8.70423071, 0.228333932 8.8605922,0.383286648 8.96244623,0.57254229 Z"},null),t.createVNode("path",{class:T.e("warning-inner"),"stroke-width":"0.3","fill-rule":"nonzero",d:"M8.87894737,13 L7.08947368,13 L7.08947368,11.2105263 L8.87894737,11.2105263 L8.87894737,13 Z M8.62102372,9.86842105 L7.32800539,9.86842105 L7,4.5 L8.96842105,4.5 L8.62102372,9.86842105 Z"},null)])])}function Fe(){return t.createVNode("svg",t.mergeProps({width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},M),[t.createVNode("g",{id:"info",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("path",{class:T.e("image-info-path"),d:"M7,13 L7,6 L9,6 L9,13 L7,13 Z M7,5 L7,3 L9,3 L9,5 L7,5 Z",id:"info"},null)])])}function ye(){return t.createVNode("svg",t.mergeProps({width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},M),[t.createVNode("defs",null,[t.createVNode("polygon",{id:"path-e",points:"8.07106781 6.65685425 10.8994949 3.82842712 12.3137085 5.24264069 9.48528137 8.07106781 12.3137085 10.8994949 10.8994949 12.3137085 8.07106781 9.48528137 5.24264069 12.3137085 3.82842712 10.8994949 6.65685425 8.07106781 3.82842712 5.24264069 5.24264069 3.82842712"},null)]),t.createVNode("g",{id:"error",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("mask",{id:"mask-2",fill:"white"},[t.createVNode("use",I,null)]),t.createVNode("use",t.mergeProps({id:"Mask",class:T.e("image-error-path")},I),null)])])}var ve=t.defineComponent({props:{type:{type:String,default:"normal"}},setup(e){const{type:n}=t.toRefs(e),o=x("notification"),l=t.computed(()=>({[o.e("image")]:!0,[o.em("image",n.value)]:!0}));return()=>t.createVNode("span",{class:l.value},[n.value&&n.value!=="normal"&&(n.value==="success"&&t.createVNode(he,null,null)||n.value==="info"&&t.createVNode(Fe,null,null)||n.value==="warning"&&t.createVNode(ge,null,null)||n.value==="error"&&t.createVNode(ye,null,null))])}});function Ee(e){return{classes:t.computed(()=>({"devui-notification-item-container":!0,[`devui-notification-message-${e.type}`]:!0}))}}function Ne(e,n){let o=null,l;const s=()=>{var p;o&&clearTimeout(o),o=null,(p=e.onClose)==null||p.call(e),n("update:modelValue",!1)},r=()=>{o&&e.duration&&(clearTimeout(o),o=null)},f=()=>{if(e.modelValue&&e.duration){const p=e.duration-(Date.now()-l);o=setTimeout(s,p)}},a=()=>{n("destroy")};return t.watch(()=>e.modelValue,p=>{p&&(l=Date.now(),e.duration&&(o=setTimeout(s,e.duration)))}),{interrupt:r,removeReset:f,close:s,handleDestroy:a}}var mt="",we=t.defineComponent({name:"DNotification",props:b,emits:["update:modelValue","destroy"],setup(e,{emit:n,slots:o}){const{modelValue:l,title:s,type:r}=t.toRefs(e),{classes:f}=Ee(e),{interrupt:a,removeReset:p,close:V,handleDestroy:m}=Ne(e,n),u=x("notification");return()=>t.createVNode(t.Transition,{name:"notification-fade",onAfterLeave:m},{default:()=>{var v;return[l.value&&t.createVNode("div",{class:u.b(),onClick:t.withModifiers(()=>({}),["stop"]),onPointerup:t.withModifiers(()=>({}),["stop"])},[t.createVNode("div",{class:f.value,onMouseenter:a,onMouseleave:p},[t.createVNode("div",{class:u.e("item")},[t.createVNode(me,{onClick:V},null),s.value&&t.createVNode(ve,{type:r.value},null),t.createVNode("div",{class:u.e("message")},[t.createVNode("span",{class:u.e("title")},[s.value]),t.createVNode("span",{class:u.e("content")},[(v=o.default)==null?void 0:v.call(o)])])])])])]}})}});function Ce(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const De={modelValue:!1,duration:3e3,type:"normal"};function Ve(e,n){const o=document.createElement("div");o.classList.add("notification__warpper");const l=document.body.lastElementChild;let s=50;if(l==null?void 0:l.classList.contains("notification__warpper")){const a=l.lastElementChild.getBoundingClientRect(),p=a.height,V=a.top;s=p+V}const r=t.createApp({setup(){return t.onUnmounted(()=>{document.body.removeChild(o)}),()=>t.createVNode(we,t.mergeProps(e,{onDestroy:r.unmount,style:[`top: ${s}px`]}),Ce(n)?n:{default:()=>[n]})}});return document.body.appendChild(o),r.mount(o),r}function ke(e,n){e.modelValue=!1,n==null||n()}class be{static open(n){const o=n.onClose||null,l=n.content;delete n.content;const s=t.reactive(ie(W(W({},De),n),{onClose:()=>{ke(s,o)}}));Ve(s,l),s.modelValue=!0}}class xe{constructor(){D(this,"uri");D(this,"method");D(this,"maximumSize");D(this,"headers");D(this,"authToken");D(this,"authTokenHeader");D(this,"additionalParameter");D(this,"fileFieldName");D(this,"checkSameName");D(this,"withCredentials");D(this,"responseType")}}class Ae{constructor(){D(this,"accept");D(this,"multiple");D(this,"webkitdirectory")}}var N=(e=>(e[e.preLoad=0]="preLoad",e[e.uploading=1]="uploading",e[e.uploaded=2]="uploaded",e[e.failed=3]="failed",e))(N||{});const K={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:""},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},onError:{type:Function,default:void 0},onSuccess:{type:Function,default:void 0},onExceed:{type:Function,default:void 0},onProgress:{type:Function,default:void 0},onPreview:{type:Function,default:void 0},oneTimeUpload:{type:Boolean,default:!1},limit:{type:Number,default:0},httpRequest:{type:Function,default:void 0}},Se=e=>{const n=t.ref(""),o=m=>{const u=document.createEvent("MouseEvents");u.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,0,null),m.dispatchEvent(u)},l=({multiple:m,accept:u,webkitdirectory:v})=>new Promise(i=>{const h=document.getElementById("d-upload-temp");h&&document.body.removeChild(h);const c=document.createElement("input");c.style.position="fixed",c.style.left="-2000px",c.style.top="-2000px",c.setAttribute("id","d-upload-temp"),c.setAttribute("type","file"),m&&c.setAttribute("multiple",""),u&&c.setAttribute("accept",u),v&&c.setAttribute("webkitdirectory",""),c.addEventListener("change",w=>{i(Array.prototype.slice.call(w.target.files))}),document.body.appendChild(c),o(c)}),s=(m,u)=>{if(m){const v=m.split(","),i=u.type.replace(/\/.*$/,"");return v.some(h=>{const c=h.trim();return c.startsWith(".")?u.name.toLowerCase().indexOf(c.toLowerCase(),u.name.toLowerCase().length-c.toLowerCase().length)>-1:/\/\*$/.test(c)?i===c.replace(/\/.*$/,""):u.type===c})}return!0},r=(m,u)=>u?m>1024*1024*u:!1;return{triggerSelectFiles:m=>{const{multiple:u,accept:v,webkitdirectory:i}=m;return l({multiple:u,accept:v,webkitdirectory:i})},_validateFiles:(m,u,v)=>s(u,m)?v&&r(m.size,v.maximumSize)?{checkError:!0,errorMsg:e("getBeyondMaximalFileSizeMsg")(m.name,v.maximumSize||0)}:{checkError:!1,errorMsg:void 0}:{checkError:!0,errorMsg:e("getNotAllowedFileTypeMsg")(m.name,u)},triggerDropFiles:m=>Promise.resolve(m),checkAllFilesSize:(m,u)=>{if(r(m,u))return n.value=e("getAllFilesBeyondMaximalFileSizeMsg")(u),{checkError:!0,errorMsg:n.value}}}};class Y{constructor(n,o){D(this,"xhr");D(this,"status");D(this,"response");D(this,"percentage",0);this.file=n,this.uploadOptions=o,this.file=n,this.uploadOptions=o,this.status=N.preLoad}send(n){return new Promise((o,l)=>{const{uri:s,method:r,headers:f,authToken:a,authTokenHeader:p,additionalParameter:V,fileFieldName:m,withCredentials:u,responseType:v}=this.uploadOptions||{},i=p||"Authorization",h=m||"file";this.xhr=new XMLHttpRequest,this.xhr.open(r||"POST",s||""),u&&(this.xhr.withCredentials=u),v&&(this.xhr.responseType=v),a&&this.xhr.setRequestHeader(i,a),f&&Object.keys(f).forEach(w=>{var E;(E=this.xhr)==null||E.setRequestHeader(w,f[w])}),this.xhr.upload.onprogress=w=>{this.percentage=Math.round(w.loaded*100/w.total)};const c=n&&n.length?this.oneTimeUploadFiles(h,V,n):this.parallelUploadFiles(h,V);this.xhr.send(c),this.status=N.uploading,this.xhr.onabort=()=>{this.status=N.preLoad,this.xhr=null},this.xhr.onerror=()=>{var w,E;this.response=(w=this.xhr)==null?void 0:w.response,this.status=N.failed,l({file:this.file,response:(E=this.xhr)==null?void 0:E.response})},this.xhr.onload=()=>{var w,E,A;((w=this.xhr)==null?void 0:w.readyState)===4&&this.xhr.status>=200&&this.xhr.status<300?(this.response=this.xhr.response,this.status=N.uploaded,o({file:this.file,response:this.xhr.response})):(this.response=(E=this.xhr)==null?void 0:E.response,this.status=N.failed,l({file:this.file,response:(A=this.xhr)==null?void 0:A.response}))}})}parallelUploadFiles(n,o){const l=new FormData;return l.append(n,this.file,this.file.name),o&&Object.keys(o).forEach(s=>{l.append(s,o[s])}),l}oneTimeUploadFiles(n,o,l){const s=new FormData;return l.forEach(r=>{s.append(n,r.file,r.file.name),o&&Object.keys(o).forEach(f=>{s.append(f,o[f])})}),s}cancel(){this.xhr&&this.xhr.abort()}}const Be=()=>{const e=t.ref([]),n=t.ref([]),o=i=>{let h=!0;for(let c=0;c<e.value.length;c++)if(i===e.value[c].file.name){h=!1,n.value.indexOf(i)===-1&&n.value.push(i);break}return h},l=(i,h)=>{h&&h.checkSameName?o(i.name)&&e.value.push(new Y(i,h)):e.value.push(new Y(i,h))},s=()=>e.value.map(i=>i.file),r=()=>e.value.map(i=>i),f=async i=>{if(!i||!i.length)return Promise.reject("no files");let h=[];return await i[0].send(i).finally(()=>h=i.map(c=>(c.status=i[0].status,c.percentage=i[0].percentage,{file:c.file,response:i[0].response}))),h};return{fileUploaders:e,getFiles:s,addFile:l,getFullFiles:r,deleteFile:i=>{const h=e.value.find(c=>c.file===i);h==null||h.cancel(),e.value=e.value.filter(c=>i!==c.file)},upload:async i=>{let h=[];if(i){i.percentage=0;const c=await i.send();h.push(c)}else{const c=e.value.filter(A=>A.status===N.preLoad),w=e.value.filter(A=>A.status===N.failed),E=c.length>0?c:w;h=await Promise.all(E.map(async A=>(A.percentage=0,await A.send())))}return h.length>0?Promise.resolve(h):Promise.reject("no files")},removeFiles:()=>{e.value=[],n.value=[]},getSameNameFiles:()=>n.value.join(),resetSameNameFiles:()=>{n.value=[]},_oneTimeUpload:()=>{const i=e.value.filter(h=>h.status!==N.uploaded);return f(i)}}};var ht="";function U(...e){const n=o=>o&&typeof o=="object";return e.reduce((o,l)=>(Object.keys(l).forEach(s=>{const r=o[s],f=l[s];Array.isArray(r)&&Array.isArray(f)?o[s]=Array.from(new Set([...f,...r])):n(r)&&n(f)?o[s]=U(r,f):o[s]=f}),o),{})}var Pe={pagination:{totalItemText:"\u6240\u6709\u6761\u76EE",goToText:"\u8DF3\u81F3",perPage:"\u6761/\u9875"},accordion:{loading:"\u52A0\u8F7D\u4E2D",noData:"\u6CA1\u6709\u6570\u636E"},autoCompleteDropdown:{latestInput:"\u6700\u8FD1\u8F93\u5165"},cascaderList:{noData:"\u6CA1\u6709\u6570\u636E"},colorPicker:{foundationPanel:"\u57FA\u7840\u9762\u677F",advancedPanel:"\u9AD8\u7EA7\u9762\u677F"},datePickerPro:{ok:"\u786E\u5B9A",placeholder:"\u8BF7\u9009\u62E9\u65E5\u671F",month1:"1\u6708",month2:"2\u6708",month3:"3\u6708",month4:"4\u6708",month5:"5\u6708",month6:"6\u6708",month7:"7\u6708",month8:"8\u6708",month9:"9\u6708",month10:"10\u6708",month11:"11\u6708",month12:"12\u6708",year:"\u5E74",startPlaceholder:"\u8BF7\u9009\u62E9\u5F00\u59CB\u65E5\u671F",endPlaceholder:"\u8BF7\u9009\u62E9\u7ED3\u675F\u65E5\u671F",getWeekDays(){return["\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"]},getTimeArr(){return["\u65F6","\u5206","\u79D2"]},getYearMonthStr(e,n){return`${e}\u5E74${n}\u6708`}},editableSelect:{noRelatedRecords:"\u627E\u4E0D\u5230\u76F8\u5173\u8BB0\u5F55",noData:"\u6CA1\u6709\u6570\u636E"},input:{placeholder:"\u8BF7\u8F93\u5165"},splitterBar:{collapse:"\u6536\u8D77",expand:"\u5C55\u5F00"},stepsGuide:{previous:"\u4E0A\u4E00\u6B65",continue:"\u6211\u77E5\u9053\u5566\uFF0C\u7EE7\u7EED",ok:"\u6211\u77E5\u9053\u5566"},table:{selectAll:"\u5168\u9009",ok:"\u786E\u5B9A"},timePopup:{ok:"\u786E\u5B9A"},transfer:{unit:"\u9879",panelUnit:"\u9879",headerUnit:"\u9879",noData:"\u6682\u65E0\u6570\u636E",placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22"},tree:{loading:"\u52A0\u8F7D\u4E2D",newNode:"\u65B0\u8282\u70B9",selectPlaceholder:"\u8BF7\u9009\u62E9"},upload:{placeholder:"\u9009\u62E9\u6587\u4EF6",getExistSameNameFilesMsg(e){return`\u60A8\u4E0A\u4F20\u7684 "${e}" \u5B58\u5728\u91CD\u540D\u6587\u4EF6, \u8BF7\u91CD\u65B0\u9009\u62E9\u6587\u4EF6`},getAllFilesBeyondMaximalFileSizeMsg(e){return`\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`},getBeyondMaximalFileSizeMsg(e,n){return`\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`},getNotAllowedFileTypeMsg(e,n){return`\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`}},search:{placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u5B57"},select:{placeholder:"\u8BF7\u9009\u62E9",noDataText:"\u65E0\u6570\u636E",noMatchText:"\u627E\u4E0D\u5230\u76F8\u5173\u8BB0\u5F55",loadingText:"\u52A0\u8F7D\u4E2D..."},tagInput:{maxTagsText:"\u5DF2\u8FBE\u5230\u6700\u5927\u4E2A\u6570\uFF1A"},timeSelect:{placeholder:"\u8BF7\u9009\u62E9\u65F6\u95F4"}};const z=t.ref("zh-CN");let O=t.reactive({[z.value]:Pe});const Te={messages(){return O[z.value]},lang(){return z.value},use(e,n){z.value=e,this.add({[e]:n})},add(e={}){O=U(O,e)}},Le=e=>e.substring(1).replace(/^\S/,n=>n.toLocaleLowerCase());function J(e,n){const o=n.split(".");let l=e;return o.forEach(s=>{var r;l=(r=l[s])!=null?r:""}),l}function Me(e,n,o){const l=o||Le(e)+".";return s=>{var a;const r=((a=n==null?void 0:n.appContext.config.globalProperties.langMessages)==null?void 0:a.value)||Te.messages();return J(r,l+s)||J(r,s)}}var $=t.defineComponent({name:"DUpload",props:K,emits:["fileDrop","fileOver","fileSelect","deleteUploadedFile","update:modelValue"],setup(e,n){const o=t.getCurrentInstance(),l=Me("DUpload",o),{uploadOptions:s,placeholder:r,autoUpload:f,disabled:a,beforeUpload:p,droppable:V,oneTimeUpload:m,modelValue:u,multiple:v,accept:i,webkitdirectory:h,limit:c,httpRequest:w}=t.toRefs(e),E=x("upload"),A=x("input-group"),j=x("form-control"),Re=x("input-group-addon"),{triggerSelectFiles:je,_validateFiles:He,triggerDropFiles:qe,checkAllFilesSize:Ge}=Se(l),{fileUploaders:S,addFile:Xe,getFullFiles:Ze,deleteFile:te,upload:We,resetSameNameFiles:Ke,removeFiles:H,_oneTimeUpload:Ye,getSameNameFiles:Ue}=Be(),q=t.ref(!1),G=t.ref([]),_=d=>{be.open({type:"warning",content:d})},Je=()=>{var g;let d=0;if(S.value.forEach(C=>{d+=C.file.size;const k=He(C.file,(i==null?void 0:i.value)||"",C.uploadOptions);if(k&&k.checkError){te(C.file),_(k.errorMsg);return}}),m.value){const C=Ge(d,((g=s==null?void 0:s.value)==null?void 0:g.maximumSize)||0);C&&C.checkError&&(H(),_(C.errorMsg))}},Qe=d=>{q.value=d,n.emit("fileOver",d)},ne=d=>{const g=u.value.filter(C=>C.name!==d.name);n.emit("deleteUploadedFile",d),n.emit("update:modelValue",g)},oe=(d,g,C)=>{d==null||d.stopPropagation(),C===N.uploaded&&ne(g),te(g)},et=()=>{let d=Promise.resolve(!0);if(p==null?void 0:p.value){const g=p==null?void 0:p.value(Ze());typeof g!="undefined"&&(typeof g=="boolean"?d=Promise.resolve(g):d=g)}return d},X=(d,g)=>{d&&d.stopPropagation(),et().then(C=>{if(!C){H();return}if(typeof(w==null?void 0:w.value)=="function"){const F=S.value.map(B=>B.file);w.value(F);return}const k=m.value?Ye():We(g);e.onProgress&&e.onProgress(G.value,u.value),k==null||k.then(F=>{e.onSuccess&&e.onSuccess(F);const B=F.map(st=>st.file),P=[...B,...u.value];n.emit("update:modelValue",P),e.onChange&&e.onChange(B,P)}).catch(F=>{e.onError&&e.onError(F),e.onChange&&e.onChange([F.file],u.value)})})},le=d=>{Ke(),d.then(g=>{if(c.value&&u.value.length+g.length>c.value){e.onExceed&&e.onExceed(g,u.value);return}e.onChange&&e.onChange(g,u.value),g.forEach(k=>{v.value||H(),Xe(k,s==null?void 0:s.value)}),Je();const C=Ue();(s==null?void 0:s.value)&&s.value.checkSameName&&C.length&&_(l("getExistSameNameFilesMsg")(C)),G.value=S.value.filter(k=>k.status===N.preLoad).map(k=>k.file),n.emit("fileSelect",G.value),f.value&&X()}).catch(g=>{_(g.message)})},se=()=>{a.value||le(je({accept:i==null?void 0:i.value,multiple:v.value,webkitdirectory:h.value}))},tt=d=>{q.value=!1,le(qe(d)),n.emit("fileDrop",d)},nt=(d,g)=>{X(d,g)},ot=d=>{S.value.forEach(g=>{oe(d,g.file,g.status)})},lt=(d,g)=>{d==null||d.stopPropagation(),e.onPreview&&e.onPreview(g)};return n.expose({submit:nt,clearFiles:ot}),()=>{var d,g,C,k;return t.createVNode("div",null,[t.withDirectives(t.createVNode("div",{class:E.b(),style:`border: ${q.value?"1px solid #15bf15":"0"}`},[((g=(d=n.slots).default)==null?void 0:g.call(d))?t.createVNode("div",{onClick:se},[n.slots.default()]):t.createVNode("div",{class:[A.b(),a.value?"disabled":""],onClick:se},[S.value.length===0&&t.createVNode("div",{class:[j.b(),E.e("placeholder")]},[r.value||l("placeholder")]),S.value.length>0&&t.createVNode("ul",{class:[j.b(),E.e("files-list")]},[S.value.map((F,B)=>t.createVNode("li",{key:B,class:[E.e("file-item"),E.e("file-tag")],style:"display: inline-block;",title:F.file.name,onClick:P=>lt(P,F.file)},[t.createVNode("span",{class:[E.e("filename"),F.status===N.failed?E.m("failed-color"):""]},[F.file.name]),t.createVNode(t.resolveComponent("d-icon"),{name:"close",class:[(F==null?void 0:F.status)===N.failed?E.e("delete-file-button"):"",(F==null?void 0:F.status)===N.uploading||(F==null?void 0:F.status)===N.uploaded?E.e("delete"):""],onClick:P=>oe(P,F.file,F.status)},null),F.status===N.uploading&&t.createVNode("div",{class:["icon",E.e("progress")]},[t.createVNode(t.resolveComponent("d-progress"),{isCircle:!0,percentage:F.percentage,barbgcolor:"#50D4AB",strokeWidth:8,showContent:!1},null)]),F.status===N.failed&&t.createVNode(t.resolveComponent("d-icon"),{name:"running",onClick:X},null),F.status===N.uploaded&&t.createVNode(t.resolveComponent("d-icon"),{name:"right",color:"#50d4ab"},null)]))]),t.createVNode("span",{class:Re.b()},[t.createVNode(t.resolveComponent("d-icon"),{name:"more-operate",color:"#252b3a"},null)])])]),[[t.resolveDirective("file-drop"),{droppable:V,isSingle:!v,onFileDrop:tt,onFileOver:Qe}]]),t.createVNode("div",null,[(k=(C=n.slots)["uploaded-files"])==null?void 0:k.call(C,{uploadedFiles:u.value,deleteFile:ne})])])}}});const Q=e=>{var n;return e.dataTransfer?e.dataTransfer:(n=e.originalEvent)==null?void 0:n.dataTransfer},Ie=e=>e?e.indexOf?e.indexOf("Files")!==-1:e.contains?e.contains("Files"):!1:!1,R=e=>{e.preventDefault(),e.stopPropagation()},ze=(e,n)=>{const{onFileOver:o}=n.value;e.addEventListener("dragover",l=>{const s=Q(l);!Ie(s.types)||(R(l),o&&o(!0))})},_e=(e,n)=>{const{onFileOver:o}=n.value;e.addEventListener("dragleave",l=>{l.currentTarget!==e&&(R(l),o&&o(!0))})},Oe=(e,n)=>{const{onFileDrop:o,isSingle:l}=n.value;e.addEventListener("drop",s=>{const r=Q(s);!r||(R(s),l?o&&o([r.files[0]]):o&&o(Array.from(r.files)))})},ee={mounted:(e,n)=>{const{droppable:o}=n.value;!o||(ze(e,n),_e(e,n),Oe(e,n))}};var $e={title:"Upload \u4E0A\u4F20",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(e){e.directive("file-drop",ee),e.component($.name,$)}};y.IFileOptions=Ae,y.IUploadOptions=xe,y.Upload=$,y.UploadStatus=N,y.default=$e,y.fileDropDirective=ee,y.uploadProps=K,Object.defineProperty(y,"__esModule",{value:!0}),y[Symbol.toStringTag]="Module"});
package/vue-devui.es.js CHANGED
@@ -951,6 +951,165 @@ var AccordionInstall = {
951
951
  app.component(Accordion.name, Accordion);
952
952
  }
953
953
  };
954
+ const actionTimelineProps = {
955
+ data: {
956
+ type: Array
957
+ },
958
+ layout: {
959
+ type: String,
960
+ default: "horizontal"
961
+ },
962
+ loadMoreConfig: {
963
+ type: Object
964
+ },
965
+ showTailLine: {
966
+ type: Boolean,
967
+ default: true
968
+ },
969
+ showStatusBgColor: {
970
+ type: Boolean,
971
+ default: false
972
+ },
973
+ showStatusLineColor: {
974
+ type: Boolean,
975
+ default: false
976
+ }
977
+ };
978
+ var actionTimeline = "";
979
+ var ActionTimeline = defineComponent({
980
+ name: "DActionTimeline",
981
+ props: actionTimelineProps,
982
+ emits: ["actionLoadMore"],
983
+ setup(props, ctx2) {
984
+ const {
985
+ layout: layout2,
986
+ data,
987
+ showTailLine,
988
+ showStatusBgColor,
989
+ showStatusLineColor,
990
+ loadMoreConfig
991
+ } = toRefs(props);
992
+ const isVertical = computed(() => layout2.value === "vertical");
993
+ const containerClass = computed(() => ({
994
+ "dp-action-timeline": true,
995
+ "dp-action-timeline-status-bg": showStatusBgColor.value,
996
+ "dp-action-timeline-status-line": showStatusLineColor.value
997
+ }));
998
+ const timelineItemClass = (childIndex, parentIndex, actionData, item) => ({
999
+ "dp-action-timeline-item": true,
1000
+ "dp-action-timeline-item-info": showStatusLineColor.value && item.status === "color-info",
1001
+ "dp-action-timeline-item-danger": showStatusLineColor.value && item.status === "color-danger",
1002
+ "dp-action-timeline-item-success": showStatusLineColor.value && item.status === "color-info",
1003
+ "vertical-list-item": isVertical.value,
1004
+ "list-last-item": actionData.actions && (data == null ? void 0 : data.value) && childIndex === actionData.actions.length - 1 && parentIndex === data.value.length - 1 && showTailLine.value
1005
+ });
1006
+ const itemIconClass = (item, flag = false) => {
1007
+ var _a, _b;
1008
+ if (flag) {
1009
+ return {
1010
+ "dp-action-timeline-list-icon": true,
1011
+ "item-empty-icon": !item.icon,
1012
+ [(_a = item.status) != null ? _a : ""]: true
1013
+ };
1014
+ } else {
1015
+ return {
1016
+ icon: true,
1017
+ [(_b = item.icon) != null ? _b : ""]: true
1018
+ };
1019
+ }
1020
+ };
1021
+ const renderVerticalBody = (actionData, parentIndex) => {
1022
+ var _a;
1023
+ return (_a = actionData.actions) == null ? void 0 : _a.map((item, index2) => {
1024
+ var _a2, _b, _c, _d;
1025
+ return createVNode("div", {
1026
+ "class": timelineItemClass(index2, parentIndex, actionData, item)
1027
+ }, [createVNode("div", {
1028
+ "class": "vertical-list-item-top"
1029
+ }, [createVNode("div", {
1030
+ "class": "vertical-list-item-top-left"
1031
+ }, [createVNode("div", {
1032
+ "class": itemIconClass(item, true)
1033
+ }, [!item.icon && createVNode("div", {
1034
+ "class": "list-empty-icon-dot"
1035
+ }, null), createVNode("em", {
1036
+ "class": itemIconClass(item)
1037
+ }, null)]), createVNode("div", {
1038
+ "class": "vertical-list-item-top-left-title"
1039
+ }, [(_b = (_a2 = ctx2.slots).title) == null ? void 0 : _b.call(_a2, {
1040
+ option: item
1041
+ })])]), createVNode("div", {
1042
+ "class": "dp-action-timeline-item-data"
1043
+ }, [item.createdAt])]), createVNode("div", {
1044
+ "class": "vertical-list-item-bottom"
1045
+ }, [(_d = (_c = ctx2.slots).content) == null ? void 0 : _d.call(_c, {
1046
+ option: item
1047
+ })])]);
1048
+ });
1049
+ };
1050
+ const renderHorizontalBody = (actionData, parentIndex) => {
1051
+ var _a;
1052
+ return (_a = actionData.actions) == null ? void 0 : _a.map((item, index2) => {
1053
+ var _a2, _b, _c;
1054
+ return createVNode("div", {
1055
+ "class": timelineItemClass(index2, parentIndex, actionData, item)
1056
+ }, [createVNode("div", {
1057
+ "class": itemIconClass(item, true)
1058
+ }, [!item.icon && createVNode("div", {
1059
+ "class": "list-empty-icon-dot"
1060
+ }, null), createVNode("em", {
1061
+ "class": itemIconClass(item)
1062
+ }, null)]), createVNode("div", {
1063
+ "class": "dp-action-timeline-list-data"
1064
+ }, [(_b = (_a2 = ctx2.slots).content) == null ? void 0 : _b.call(_a2, {
1065
+ option: item
1066
+ })]), createVNode("div", {
1067
+ "class": "dp-action-timeline-item-date"
1068
+ }, [item.createdAt]), !(actionData.actions && (data == null ? void 0 : data.value) && index2 === actionData.actions.length - 1 && parentIndex === ((_c = data == null ? void 0 : data.value) == null ? void 0 : _c.length) - 1) && createVNode("div", {
1069
+ "class": "border-bottom"
1070
+ }, null)]);
1071
+ });
1072
+ };
1073
+ const handleLoadMoreClicked = () => {
1074
+ ctx2.emit("actionLoadMore");
1075
+ };
1076
+ const handleBackTopClicked = () => {
1077
+ window.scrollTo(0, 0);
1078
+ };
1079
+ const renderLoadMore = () => {
1080
+ var _a, _b;
1081
+ return createVNode("div", {
1082
+ "class": "dp-action-timeline-operation-container"
1083
+ }, [((_a = loadMoreConfig == null ? void 0 : loadMoreConfig.value) == null ? void 0 : _a.loadMore) && createVNode("div", {
1084
+ "class": "dp-action-timeline-operation",
1085
+ "onClick": handleLoadMoreClicked
1086
+ }, [loadMoreConfig.value.loadMoreText]), ((_b = loadMoreConfig == null ? void 0 : loadMoreConfig.value) == null ? void 0 : _b.isToTop) && createVNode("div", {
1087
+ "class": "dp-action-timeline-operation",
1088
+ "onClick": handleBackTopClicked
1089
+ }, [loadMoreConfig.value.toTopText])]);
1090
+ };
1091
+ return () => {
1092
+ var _a, _b;
1093
+ return createVNode(Fragment, null, [(_a = data == null ? void 0 : data.value) == null ? void 0 : _a.map((item, parentIndex) => createVNode("div", {
1094
+ "class": containerClass.value
1095
+ }, [createVNode("div", {
1096
+ "class": "dp-action-timeline-title"
1097
+ }, [createVNode("p", null, [item.time])]), createVNode("div", {
1098
+ "class": "dp-action-timeline-body"
1099
+ }, [isVertical.value ? renderVerticalBody(item, parentIndex) : renderHorizontalBody(item, parentIndex)]), createVNode("div", {
1100
+ "class": "border-left"
1101
+ }, null)])), Boolean((_b = data == null ? void 0 : data.value) == null ? void 0 : _b.length) && renderLoadMore()]);
1102
+ };
1103
+ }
1104
+ });
1105
+ var ActionTimelineInstall = {
1106
+ title: "ActionTimeline \u64CD\u4F5C\u65F6\u95F4\u8F74",
1107
+ category: "\u6F14\u8FDB\u4E2D",
1108
+ status: "100%",
1109
+ install(app) {
1110
+ app.component(ActionTimeline.name, ActionTimeline);
1111
+ }
1112
+ };
954
1113
  const AlertCloseIcon = () => createVNode("svg", {
955
1114
  "width": "10px",
956
1115
  "height": "10px",
@@ -13776,7 +13935,7 @@ var CodeEditor = defineComponent({
13776
13935
  });
13777
13936
  var CodeEditorInstall = {
13778
13937
  title: "Code Editor \u4EE3\u7801\u7F16\u8F91\u5668",
13779
- category: "\u6570\u636E\u5F55\u5165",
13938
+ category: "\u6F14\u8FDB\u4E2D",
13780
13939
  status: "100%",
13781
13940
  install(app) {
13782
13941
  app.component(CodeEditor.name, CodeEditor);
@@ -23512,7 +23671,7 @@ var Content = defineComponent({
23512
23671
  }
23513
23672
  });
23514
23673
  var header$1 = "";
23515
- var Header$1 = defineComponent({
23674
+ var Header = defineComponent({
23516
23675
  name: "DHeader",
23517
23676
  setup(props, {
23518
23677
  slots
@@ -23527,7 +23686,7 @@ var Header$1 = defineComponent({
23527
23686
  }
23528
23687
  });
23529
23688
  var footer = "";
23530
- var Footer$1 = defineComponent({
23689
+ var Footer = defineComponent({
23531
23690
  name: "DFooter",
23532
23691
  setup(props, {
23533
23692
  slots
@@ -23562,8 +23721,8 @@ var LayoutInstall = {
23562
23721
  install(app) {
23563
23722
  app.component(Layout.name, Layout);
23564
23723
  app.component(Content.name, Content);
23565
- app.component(Header$1.name, Header$1);
23566
- app.component(Footer$1.name, Footer$1);
23724
+ app.component(Header.name, Header);
23725
+ app.component(Footer.name, Footer);
23567
23726
  app.component(Aside.name, Aside);
23568
23727
  }
23569
23728
  };
@@ -25448,7 +25607,7 @@ const useDraggable = (targetRef, dragRef, draggable) => {
25448
25607
  modalPosition
25449
25608
  };
25450
25609
  };
25451
- var Header = defineComponent({
25610
+ var ModalHeader = defineComponent({
25452
25611
  name: "DModalHeader",
25453
25612
  setup(props, {
25454
25613
  slots
@@ -25462,7 +25621,7 @@ var Header = defineComponent({
25462
25621
  };
25463
25622
  }
25464
25623
  });
25465
- var Body = defineComponent({
25624
+ var ModalBody = defineComponent({
25466
25625
  name: "DModalBody",
25467
25626
  setup(props, {
25468
25627
  slots
@@ -25547,7 +25706,7 @@ var Modal = defineComponent({
25547
25706
  cursor: props.draggable ? "move" : "default"
25548
25707
  },
25549
25708
  "ref": headerRef
25550
- }, [createVNode(Header, null, {
25709
+ }, [createVNode(ModalHeader, null, {
25551
25710
  default: () => [createVNode("div", {
25552
25711
  "class": "type-content"
25553
25712
  }, [createVNode("div", {
@@ -25599,9 +25758,9 @@ var Modal = defineComponent({
25599
25758
  cursor: props.draggable ? "move" : "default"
25600
25759
  },
25601
25760
  "ref": headerRef
25602
- }, [slots.header ? slots.header() : title.value && createVNode(Header, null, {
25761
+ }, [slots.header ? slots.header() : title.value && createVNode(ModalHeader, null, {
25603
25762
  default: () => [title.value]
25604
- })]), createVNode(Body, null, {
25763
+ })]), createVNode(ModalBody, null, {
25605
25764
  default: () => {
25606
25765
  var _a2;
25607
25766
  return [(_a2 = slots.default) == null ? void 0 : _a2.call(slots)];
@@ -25612,7 +25771,7 @@ var Modal = defineComponent({
25612
25771
  });
25613
25772
  }
25614
25773
  });
25615
- var Footer = defineComponent({
25774
+ var ModalFooter = defineComponent({
25616
25775
  name: "DModalFooter",
25617
25776
  setup(props, {
25618
25777
  slots
@@ -25690,9 +25849,9 @@ var ModalInstall = {
25690
25849
  status: "100%",
25691
25850
  install(app) {
25692
25851
  app.component(Modal.name, Modal);
25693
- app.component(Header.name, Header);
25694
- app.component(Body.name, Body);
25695
- app.component(Footer.name, Footer);
25852
+ app.component(ModalHeader.name, ModalHeader);
25853
+ app.component(ModalBody.name, ModalBody);
25854
+ app.component(ModalFooter.name, ModalFooter);
25696
25855
  if (!inBrowser) {
25697
25856
  return;
25698
25857
  }
@@ -39420,6 +39579,7 @@ var UploadInstall = {
39420
39579
  var devui = "";
39421
39580
  const installs = [
39422
39581
  AccordionInstall,
39582
+ ActionTimelineInstall,
39423
39583
  AlertInstall,
39424
39584
  AnchorInstall,
39425
39585
  AutoCompleteInstall,
@@ -39500,9 +39660,9 @@ const installs = [
39500
39660
  VirtualListInstall
39501
39661
  ];
39502
39662
  var vueDevui = {
39503
- version: "1.5.4-alpha.0",
39663
+ version: "1.5.4",
39504
39664
  install(app) {
39505
39665
  installs.forEach((p) => app.use(p));
39506
39666
  }
39507
39667
  };
39508
- export { Accordion, Alert, Anchor, Aside, AutoComplete, Avatar, BackTop, Badge, Breadcrumb, BreadcrumbItem, DButton as Button, ButtonGroup, Card, Carousel, CarouselItem, Cascader, Checkbox, CheckboxButton, DCheckboxGroup as CheckboxGroup, CodeEditor, Col, Collapse, CollapseItem, ColorPicker, Column, Comment, Content, Countdown, DRangeDatePickerPro, DatePicker, DatePickerPro, DraggableDirective, Drawer, DrawerService, Dropdown$1 as Dropdown, DropdownMenu, DroppableDirective, EditableSelect, FixedOverlay, FlexibleOverlay, Footer$1 as Footer, Form, FormItem, FormOperation, Fullscreen, Gantt, Header$1 as Header, DIcon as Icon, IconGroup, ImagePreviewDirective, ImagePreviewService, DInput as Input, InputIcon, InputNumber, Layout, List, ListItem, LoadingDirective, loading as LoadingService, Mention, Menu, MenuItem, Message, Modal, MultiAutoComplete, NavSprite, Notification, NotificationService, Option, OptionGroup, Pagination, Panel, PanelBody, PanelFooter, PanelHeader, Popover, Progress, QuadrantDiagram, Radio, RadioButton, RadioGroup, Rate, ReadTip, Result, RippleDirective, Row, DSearch as Search, Select, Skeleton, SkeletonItem, Slider, SortableDirective, Splitter, Statistic, Status, Step, Steps, StepsGuide, StepsGuideDirective, StickSlider, Sticky, SubMenu, Switch, Tab, Table, Tabs, Tag, TagInput, Textarea, TimePicker, TimeSelect, Timeline, TimelineItem, Tooltip, Transfer, Tree, TreeSelect, Upload, VirtualList, vueDevui as default };
39668
+ export { Accordion, ActionTimeline, Alert, Anchor, Aside, AutoComplete, Avatar, BackTop, Badge, Breadcrumb, BreadcrumbItem, DButton as Button, ButtonGroup, Card, Carousel, CarouselItem, Cascader, Checkbox, CheckboxButton, DCheckboxGroup as CheckboxGroup, CodeEditor, Col, Collapse, CollapseItem, ColorPicker, Column, Comment, Content, Countdown, DRangeDatePickerPro, DatePicker, DatePickerPro, DraggableDirective, Drawer, DrawerService, Dropdown$1 as Dropdown, DropdownMenu, DroppableDirective, EditableSelect, FixedOverlay, FlexibleOverlay, Footer, Form, FormItem, FormOperation, Fullscreen, Gantt, Header, DIcon as Icon, IconGroup, ImagePreviewDirective, ImagePreviewService, DInput as Input, InputIcon, InputNumber, Layout, List, ListItem, LoadingDirective, loading as LoadingService, Mention, Menu, MenuItem, Message, Modal, ModalBody, ModalFooter, ModalHeader, MultiAutoComplete, NavSprite, Notification, NotificationService, Option, OptionGroup, Pagination, Panel, PanelBody, PanelFooter, PanelHeader, Popover, Progress, QuadrantDiagram, Radio, RadioButton, RadioGroup, Rate, ReadTip, Result, RippleDirective, Row, DSearch as Search, Select, Skeleton, SkeletonItem, Slider, SortableDirective, Splitter, SplitterPane, Statistic, Status, Step, Steps, StepsGuide, StepsGuideDirective, StickSlider, Sticky, SubMenu, Switch, Tab, Table, Tabs, Tag, TagInput, Textarea, TimePicker, TimeSelect, Timeline, TimelineItem, Tooltip, Transfer, Tree, TreeSelect, Upload, VirtualList, vueDevui as default, fileDropDirective };