vue-devui 1.0.0-beta.17 → 1.0.0-beta.18

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/table/index.es.js CHANGED
@@ -155,7 +155,7 @@ const createColumnGenerator = () => {
155
155
  const _columns = ref([]);
156
156
  const insertColumn = (column) => {
157
157
  _columns.value.push(column);
158
- _columns.value.sort((a, b) => a.order > b.order ? 1 : -1);
158
+ _columns.value.sort((a, b) => a.order - b.order);
159
159
  };
160
160
  const sortColumn = () => {
161
161
  _columns.value.sort((a, b) => a.order > b.order ? 1 : -1);
@@ -209,7 +209,7 @@ const createSelection = (dataSource, _data) => {
209
209
  };
210
210
  };
211
211
  const createSorter = (dataSource, _data) => {
212
- const sortData = (field, direction, compareFn = (field2, a, b) => a[field2] > b[field2]) => {
212
+ const sortData = (field, direction, compareFn = (fieldKey, a, b) => a[fieldKey] > b[fieldKey]) => {
213
213
  if (direction === "ASC") {
214
214
  _data.value = _data.value.sort((a, b) => compareFn(field, a, b) ? 1 : -1);
215
215
  } else if (direction === "DESC") {
@@ -226,8 +226,8 @@ const createFilter = (dataSource, _data) => {
226
226
  fieldSet.add(field);
227
227
  const fields = [...fieldSet];
228
228
  _data.value = dataSource.value.filter((item) => {
229
- return fields.reduce((prev, field2) => {
230
- return prev && results.indexOf(item[field2]) !== -1;
229
+ return fields.reduce((prev, fieldKey) => {
230
+ return prev && results.indexOf(item[fieldKey]) !== -1;
231
231
  }, true);
232
232
  });
233
233
  };
@@ -1424,48 +1424,74 @@ const TD = defineComponent({
1424
1424
  }, [column.value.renderCell(props.row, props.index)]);
1425
1425
  }
1426
1426
  });
1427
- var table = "";
1428
- var Table = defineComponent({
1429
- name: "DTable",
1430
- props: TableProps,
1431
- setup(props, ctx) {
1432
- const table2 = getCurrentInstance();
1433
- const store = createStore(toRef(props, "data"));
1434
- table2.store = store;
1435
- provide(TABLE_TOKEN, table2);
1436
- const {
1437
- classes,
1438
- style
1439
- } = useTable(props);
1440
- const isEmpty2 = computed(() => props.data.length === 0);
1441
- const fixHeaderCompo = computed(() => {
1427
+ var FixHeader = defineComponent({
1428
+ props: {
1429
+ classes: {
1430
+ type: Object,
1431
+ default: () => ({})
1432
+ },
1433
+ isEmpty: {
1434
+ type: Boolean
1435
+ }
1436
+ },
1437
+ setup(props) {
1438
+ return () => {
1442
1439
  return createVNode("div", {
1443
1440
  "class": "devui-table-view"
1444
1441
  }, [createVNode("div", {
1445
- "style": "overflow: hidden scroll;"
1442
+ "style": "overflow:hidden scroll;"
1446
1443
  }, [createVNode("table", {
1447
- "class": classes.value,
1444
+ "class": props.classes,
1448
1445
  "cellpadding": "0",
1449
1446
  "cellspacing": "0"
1450
1447
  }, [createVNode(ColGroup, null, null), createVNode(TableHeader, null, null)])]), createVNode("div", {
1451
1448
  "class": "scroll-view"
1452
1449
  }, [createVNode("table", {
1453
- "class": classes.value,
1450
+ "class": props.classes,
1454
1451
  "cellpadding": "0",
1455
1452
  "cellspacing": "0"
1456
- }, [createVNode(ColGroup, null, null), !isEmpty2.value && createVNode(TableBody, {
1453
+ }, [createVNode(ColGroup, null, null), !props.isEmpty && createVNode(TableBody, {
1457
1454
  "style": "flex: 1"
1458
1455
  }, null)])])]);
1459
- });
1460
- const normalHeaderCompo = computed(() => {
1456
+ };
1457
+ }
1458
+ });
1459
+ var NormalHeader = defineComponent({
1460
+ props: {
1461
+ classes: {
1462
+ type: Object,
1463
+ default: () => ({})
1464
+ },
1465
+ isEmpty: {
1466
+ type: Boolean
1467
+ }
1468
+ },
1469
+ setup(props) {
1470
+ return () => {
1461
1471
  return createVNode("table", {
1462
- "class": classes.value,
1472
+ "class": props.classes,
1463
1473
  "cellpadding": "0",
1464
1474
  "cellspacing": "0"
1465
1475
  }, [createVNode(ColGroup, null, null), createVNode(TableHeader, {
1466
- "style": "position: relative"
1467
- }, null), !isEmpty2.value && createVNode(TableBody, null, null)]);
1468
- });
1476
+ "style": "position:relative"
1477
+ }, null), !props.isEmpty && createVNode(TableBody, null, null)]);
1478
+ };
1479
+ }
1480
+ });
1481
+ var table = "";
1482
+ var Table = defineComponent({
1483
+ name: "DTable",
1484
+ props: TableProps,
1485
+ setup(props, ctx) {
1486
+ const table2 = getCurrentInstance();
1487
+ const store = createStore(toRef(props, "data"));
1488
+ table2.store = store;
1489
+ provide(TABLE_TOKEN, table2);
1490
+ const {
1491
+ classes,
1492
+ style
1493
+ } = useTable(props);
1494
+ const isEmpty2 = computed(() => props.data.length === 0);
1469
1495
  ctx.expose({
1470
1496
  getCheckedRows() {
1471
1497
  return store.getCheckedRows();
@@ -1474,7 +1500,13 @@ var Table = defineComponent({
1474
1500
  return () => withDirectives(createVNode("div", {
1475
1501
  "class": "devui-table-wrapper",
1476
1502
  "style": style.value
1477
- }, [ctx.slots.default(), props.fixHeader ? fixHeaderCompo.value : normalHeaderCompo.value, isEmpty2.value && createVNode("div", {
1503
+ }, [ctx.slots.default(), props.fixHeader ? createVNode(FixHeader, {
1504
+ "classes": classes.value,
1505
+ "is-empty": isEmpty2.value
1506
+ }, null) : createVNode(NormalHeader, {
1507
+ "classes": classes.value,
1508
+ "is-empty": isEmpty2.value
1509
+ }, null), isEmpty2.value && createVNode("div", {
1478
1510
  "class": "devui-table-empty"
1479
1511
  }, [createTextVNode("No Data")])]), [[resolveDirective("dLoading"), props.showLoading]]);
1480
1512
  }
@@ -1539,6 +1571,9 @@ function formatWidth(width) {
1539
1571
  function formatMinWidth(minWidth) {
1540
1572
  return formatWidth(minWidth) || 80;
1541
1573
  }
1574
+ function defaultRenderHeader() {
1575
+ return h("span", { class: "title" }, this.header);
1576
+ }
1542
1577
  function createColumn(props, templates) {
1543
1578
  const {
1544
1579
  field,
@@ -1556,31 +1591,38 @@ function createColumn(props, templates) {
1556
1591
  fixedRight
1557
1592
  } = props;
1558
1593
  const column = reactive({});
1559
- watch([field, header2, order], ([field2, header22, order2]) => {
1560
- column.field = field2;
1561
- column.header = header22;
1562
- column.order = order2;
1594
+ function defaultRenderCell(rowData, index2) {
1595
+ var _a, _b;
1596
+ const value = rowData[this.field];
1597
+ if (templates.default) {
1598
+ return templates.default(rowData);
1599
+ }
1600
+ if (this.formatter) {
1601
+ return this.formatter(rowData, value, index2);
1602
+ }
1603
+ return (_b = (_a = value == null ? void 0 : value.toString) == null ? void 0 : _a.call(value)) != null ? _b : "";
1604
+ }
1605
+ watch([field, header2, order], ([fieldVal, headerVal, orderVal]) => {
1606
+ column.field = fieldVal;
1607
+ column.header = headerVal;
1608
+ column.order = orderVal;
1563
1609
  }, { immediate: true });
1564
- watch([sortable, compareFn], ([sortable2, compareFn2]) => {
1565
- column.sortable = sortable2;
1566
- column.compareFn = compareFn2;
1610
+ watch([sortable, compareFn], ([sortableVal, compareFnVal]) => {
1611
+ column.sortable = sortableVal;
1612
+ column.compareFn = compareFnVal;
1567
1613
  });
1568
- watch([
1569
- filterable,
1570
- filterList,
1571
- filterMultiple
1572
- ], ([filterable2, filterList2, filterMultiple2]) => {
1573
- column.filterable = filterable2;
1574
- column.filterMultiple = filterMultiple2;
1575
- column.filterList = filterList2;
1614
+ watch([filterable, filterList, filterMultiple], ([filterableVal, filterListVal, filterMultipleVal]) => {
1615
+ column.filterable = filterableVal;
1616
+ column.filterMultiple = filterMultipleVal;
1617
+ column.filterList = filterListVal;
1576
1618
  }, { immediate: true });
1577
1619
  watch([fixedLeft, fixedRight], ([left, right]) => {
1578
1620
  column.fixedLeft = left;
1579
1621
  column.fixedRight = right;
1580
1622
  }, { immediate: true });
1581
- watch([width, minWidth], ([width2, minWidth2]) => {
1582
- column.width = formatWidth(width2);
1583
- column.minWidth = formatMinWidth(minWidth2);
1623
+ watch([width, minWidth], ([widthVal, minWidthVal]) => {
1624
+ column.width = formatWidth(widthVal);
1625
+ column.minWidth = formatMinWidth(minWidthVal);
1584
1626
  column.realWidth = column.width || column.minWidth;
1585
1627
  });
1586
1628
  onBeforeMount(() => {
@@ -1592,17 +1634,6 @@ function createColumn(props, templates) {
1592
1634
  });
1593
1635
  return column;
1594
1636
  }
1595
- function defaultRenderHeader() {
1596
- return h("span", { class: "title" }, this.header);
1597
- }
1598
- function defaultRenderCell(rowData, index2) {
1599
- var _a, _b;
1600
- const value = rowData[this.field];
1601
- if (this.formatter) {
1602
- return this.formatter(rowData, value, index2);
1603
- }
1604
- return (_b = (_a = value == null ? void 0 : value.toString) == null ? void 0 : _a.call(value)) != null ? _b : "";
1605
- }
1606
1637
  var Column = defineComponent({
1607
1638
  name: "DColumn",
1608
1639
  props: TableColumnProps,
@@ -1 +1 @@
1
- var Ge=Object.defineProperty,et=Object.defineProperties;var tt=Object.getOwnPropertyDescriptors;var ie=Object.getOwnPropertySymbols;var nt=Object.prototype.hasOwnProperty,lt=Object.prototype.propertyIsEnumerable;var M=(g,t,V)=>t in g?Ge(g,t,{enumerable:!0,configurable:!0,writable:!0,value:V}):g[t]=V,k=(g,t)=>{for(var V in t||(t={}))nt.call(t,V)&&M(g,V,t[V]);if(ie)for(var V of ie(t))lt.call(t,V)&&M(g,V,t[V]);return g},R=(g,t)=>et(g,tt(t));var C=(g,t,V)=>(M(g,typeof t!="symbol"?t+"":t,V),V);(function(g,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(g=typeof globalThis!="undefined"?globalThis:g||self,t(g.index={},g.Vue))})(this,function(g,t){"use strict";const V={data:{type:Array,default:[]},striped:{type:Boolean,default:!1},scrollable:{type:Boolean,default:!1},maxWidth:{type:String},maxHeight:{type:String},tableWidth:{type:String},tableHeight:{type:String},size:{type:String,validator(e){return e==="sm"||e==="md"||e==="lg"}},rowHoveredHighlight:{type:Boolean,default:!0},fixHeader:{type:Boolean,default:!1},checkable:{type:Boolean,default:!0},tableLayout:{type:String,default:"auto",validator(e){return e==="fixed"||e==="auto"}},showLoading:{type:Boolean,default:!1},headerBg:{type:Boolean,default:!1}},S=Symbol();function ce(e){const l=t.computed(()=>({"devui-table":!0,"devui-table-striped":e.striped,"header-bg":e.headerBg,"table-layout-auto":e.tableLayout==="auto"})),n=t.computed(()=>({maxHeight:e.maxHeight,maxWidth:e.maxWidth,height:e.tableHeight,width:e.tableWidth}));return{classes:l,style:n}}const H=e=>{const l=t.computed(()=>{const o=e.value;if(o.fixedLeft)return"devui-sticky-cell left";if(o.fixedRight)return"devui-sticky-cell right"}),n=t.computed(()=>{const o=e.value;if(o.fixedLeft)return`left:${o.fixedLeft}`;if(o.fixedRight)return`right:${o.fixedRight}`});return{stickyCell:l,offsetStyle:n}};function se(e){const l=t.ref([]);t.watch(e,d=>{l.value=[...d]},{deep:!0,immediate:!0});const{_columns:n,insertColumn:o,removeColumn:i,sortColumn:c}=de(),{_checkAll:a,_checkList:r,_halfChecked:s,getCheckedRows:f}=ue(e,l),{sortData:h}=fe(e,l),{filterData:b,resetFilterData:m}=me(e,l),{isFixedLeft:p}=he(n);return{states:{_data:l,_columns:n,_checkList:r,_checkAll:a,_halfChecked:s,isFixedLeft:p},insertColumn:o,sortColumn:c,removeColumn:i,getCheckedRows:f,sortData:h,filterData:b,resetFilterData:m}}const de=()=>{const e=t.ref([]);return{_columns:e,insertColumn:i=>{e.value.push(i),e.value.sort((c,a)=>c.order>a.order?1:-1)},removeColumn:i=>{const c=e.value.findIndex(a=>a===i);c!==-1&&e.value.splice(c,1)},sortColumn:()=>{e.value.sort((i,c)=>i.order>c.order?1:-1)}}},ue=(e,l)=>{const n=t.ref([]),o=t.ref(!1),i=t.computed({get:()=>o.value,set:r=>{o.value=r;for(let s=0;s<n.value.length;s++)n.value[s]=r}}),c=t.ref(!1);return t.watch(e,r=>{n.value=new Array(r.length).fill(!1)},{deep:!0,immediate:!0}),t.watch(n,r=>{if(r.length===0)return;let s=!0,f=!0;for(let h=0;h<r.length;h++)s&&(s=r[h]),f&&(f=!r[h]);o.value=s,c.value=!(f||s)},{immediate:!0,deep:!0}),{_checkList:n,_checkAll:i,_halfChecked:c,getCheckedRows:()=>l.value.filter((r,s)=>n.value[s])}},fe=(e,l)=>({sortData:(o,i,c=(a,r,s)=>r[a]>s[a])=>{i==="ASC"?l.value=l.value.sort((a,r)=>c(o,a,r)?1:-1):i==="DESC"?l.value=l.value.sort((a,r)=>c(o,a,r)?-1:1):l.value=[...e.value]}}),me=(e,l)=>{const n=new Set;return{filterData:(c,a)=>{n.add(c);const r=[...n];l.value=e.value.filter(s=>r.reduce((f,h)=>f&&a.indexOf(s[h])!==-1,!0))},resetFilterData:()=>{n.clear(),l.value=[...e.value]}}},he=e=>({isFixedLeft:t.computed(()=>e.value.reduce((n,o)=>n||!!o.fixedLeft,!1))});var D=t.defineComponent({name:"DColGroup",setup(){const e=t.inject(S),l=e.store.states._columns;return()=>e.props.tableLayout==="fixed"?t.createVNode("colgroup",null,[e.props.checkable?t.createVNode("col",{width:36},null):null,l.value.map((n,o)=>t.createVNode("col",{key:o,width:n.realWidth},null))]):null}}),ot="";const U={name:{type:String,default:void 0},halfchecked:{type:Boolean,default:!1},isShowTitle:{type:Boolean,default:!0},title:{type:String},color:{type:String,default:void 0},showAnimation:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},beforeChange:{type:Function,default:void 0}},pe=R(k({},U),{halfchecked:{type:Boolean,default:!1},checked:{type:Boolean,default:!1},value:{type:String},label:{type:String,default:void 0},title:{type:String,default:void 0},"onUpdate:checked":{type:Function,default:void 0},onChange:{type:Function,default:void 0},modelValue:{type:Boolean},"onUpdate:modelValue":{type:Function}}),ye=R(k({},U),{modelValue:{type:Array,required:!0},direction:{type:String,default:"column"},itemWidth:{type:Number,default:void 0},options:{type:Array,default:()=>[]},onChange:{type:Function,default:void 0},"onUpdate:modelValue":{type:Function,default:void 0}}),z=Symbol("d-checkbox-group");var x=t.defineComponent({name:"DCheckbox",props:pe,emits:["change","update:checked","update:modelValue"],setup(e,l){const n=t.inject(z,null),o=t.computed(()=>e.checked||e.modelValue),i=t.computed(()=>(n==null?void 0:n.disabled.value)||e.disabled),c=t.computed(()=>{var d,u;return(u=(d=n==null?void 0:n.isItemChecked)==null?void 0:d.call(n,e.value))!=null?u:o.value}),a=t.computed(()=>{var d;return(d=n==null?void 0:n.isShowTitle.value)!=null?d:e.isShowTitle}),r=t.computed(()=>{var d;return(d=n==null?void 0:n.showAnimation.value)!=null?d:e.showAnimation}),s=t.computed(()=>{var d;return(d=n==null?void 0:n.color.value)!=null?d:e.color}),f=n==null?void 0:n.itemWidth.value,h=n==null?void 0:n.direction.value,b=(d,u)=>{var y;if(i.value)return Promise.resolve(!1);const w=(y=e.beforeChange)!=null?y:n==null?void 0:n.beforeChange;if(w){const v=w(d,u);return typeof v=="boolean"?Promise.resolve(v):v}return Promise.resolve(!0)},m=()=>{const d=!o.value;n==null||n.toggleGroupVal(e.value),l.emit("update:checked",d),l.emit("update:modelValue",d),l.emit("change",d)};return{itemWidth:f,direction:h,mergedColor:s,mergedDisabled:i,mergedIsShowTitle:a,mergedChecked:c,mergedShowAnimation:r,handleClick:()=>{b(!o.value,e.label).then(d=>d&&m())}}},render(){var re;const{itemWidth:e,direction:l,mergedChecked:n,mergedDisabled:o,mergedIsShowTitle:i,mergedShowAnimation:c,halfchecked:a,title:r,label:s,handleClick:f,name:h,value:b,mergedColor:m,$slots:p}=this,d={"devui-checkbox-column-margin":l==="column","devui-checkbox-wrap":typeof e!="undefined"},u=e?[`width: ${e}px`]:[],w={"devui-checkbox":!0,active:n,halfchecked:a,disabled:o,unchecked:!n},y=i?r||s:"",v=m&&a||m?`linear-gradient(${m}, ${m})`:"",W=[`border-color:${(n||a)&&m?m:""}`,`background-image:${v}`,`background-color:${m&&a?m:""}`],L={"devui-checkbox-material":!0,"custom-color":m,"devui-checkbox-no-label":!s&&!p.default,"devui-no-animation":!c,"devui-checkbox-default-background":!a},Je={"devui-tick":!0,"devui-no-animation":!c},ae=Ze=>Ze.stopPropagation(),Qe={indeterminate:a};return t.createVNode("div",{class:d,style:u},[t.createVNode("div",{class:w},[t.createVNode("label",{title:y,onClick:f},[t.createVNode("input",t.mergeProps({name:h||b,class:"devui-checkbox-input",type:"checkbox"},Qe,{checked:n,disabled:o,onClick:ae,onChange:ae}),null),t.createVNode("span",{style:W,class:L},[t.createVNode("span",{class:"devui-checkbox-halfchecked-bg"},null),t.createVNode("svg",{viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg",class:"devui-checkbox-tick"},[t.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("polygon",{"fill-rule":"nonzero",points:"5.17391304 6.56521739 7.7173913 9.10869565 11.826087 5 13 6.17391304 7.7173913 11.4565217 4 7.73913043",class:Je},null)])])]),s||((re=p.default)==null?void 0:re.call(p))])])])}}),at="",F=t.defineComponent({name:"DCheckboxGroup",props:ye,emits:["change","update:modelValue"],setup(e,l){const n=t.toRef(e,"modelValue"),o={checked:!1,isShowTitle:!0,halfchecked:!1,showAnimation:!0,disabled:!1},i=a=>{let r=-1;if(typeof n.value[0]=="string"?r=n.value.findIndex(s=>s===a):typeof n.value[0]=="object"&&(r=n.value.findIndex(s=>s.value===a)),r===-1){if(typeof e.options[0]=="object"){const f=e.options.find(b=>b.value===a),h=[...n.value,f];l.emit("update:modelValue",h),l.emit("change",h);return}const s=[...n.value,a];l.emit("update:modelValue",s),l.emit("change",s);return}n.value.splice(r,1),l.emit("update:modelValue",n.value),l.emit("change",n.value)},c=a=>{if(typeof n.value[0]=="string")return n.value.includes(a);if(typeof n.value[0]=="object")return n.value.some(r=>r.value===a)};return t.provide(z,{disabled:t.toRef(e,"disabled"),isShowTitle:t.toRef(e,"isShowTitle"),color:t.toRef(e,"color"),showAnimation:t.toRef(e,"showAnimation"),beforeChange:e.beforeChange,isItemChecked:c,toggleGroupVal:i,itemWidth:t.toRef(e,"itemWidth"),direction:t.toRef(e,"direction")}),{defaultOpt:o}},render(){var c;const{direction:e,$slots:l,defaultOpt:n,options:o}=this;let i=(c=l.default)==null?void 0:c.call(l);return(o==null?void 0:o.length)>0&&(i=o.map(a=>{let r=null;return typeof a=="string"?r=Object.assign({},n,{label:a,value:a}):typeof a=="object"&&(r=Object.assign({},n,R(k({},a),{label:a.name}))),t.createVNode(x,r,null)})),t.createVNode("div",{class:"devui-checkbox-group"},[t.createVNode("div",{class:{"devui-checkbox-list-inline":e==="row"}},[i])])}});x.install=function(e){e.component(x.name,x)},F.install=function(e){e.component(F.name,F)};var rt="";const ge=t.defineComponent({props:{modelValue:{type:String,default:""},"onUpdate:modelValue":{type:Function}},emits:["update:modelValue"],setup(e,l){const n=()=>{let o="";e.modelValue==="ASC"?o="DESC":e.modelValue==="DESC"?o="":o="ASC",l.emit("update:modelValue",o)};return()=>t.createVNode("span",{onClick:n,class:"sort-clickable"},[t.createVNode("i",{class:["datatable-svg",{"sort-icon-default":!e.modelValue,"sort-icon-asc":e.modelValue==="ASC","sort-icon-desc":e.modelValue==="DESC"}]},[t.createVNode("svg",{width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},[t.createVNode("defs",null,[t.createVNode("circle",{id:"sort-svg-path-1",cx:"8",cy:"8",r:"8"},null),t.createVNode("filter",{x:"-34.4%",y:"-21.9%",width:"168.8%",height:"168.8%",filterUnits:"objectBoundingBox",id:"filter-2"},[t.createVNode("feOffset",{dx:"0",dy:"2",in:"SourceAlpha",result:"shadowOffsetOuter1"},null),t.createVNode("feGaussianBlur",{stdDeviation:"1.5",in:"shadowOffsetOuter1",result:"shadowBlurOuter1"},null),t.createVNode("feColorMatrix",{values:"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.085309222 0",type:"matrix",in:"shadowBlurOuter1"},null)])]),t.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("use",{"fill-rule":"evenodd","xlink:href":"#sort-svg-path-1"},null),t.createVNode("polygon",{points:"8 4 11 7 5 7"},null),t.createVNode("polygon",{points:"8 12 5 9 11 9"},null)])])])])}}),be={origin:{type:Object},isOpen:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},trigger:{type:String,default:"click"},closeScope:{type:String,default:"all"},closeOnMouseLeaveMenu:{type:Boolean,default:!1},showAnimation:{type:Boolean,default:!0},width:{type:[Number,String],default:"102px"}};function we(e){return!!(e==null?void 0:e.$el)}function E(e){return e instanceof Element?e:e&&typeof e=="object"&&e.$el instanceof Element?e.$el:null}function N(e,l,n){return e==null||e.addEventListener(l,n),()=>{e==null||e.removeEventListener(l,n)}}const ve=({visible:e,trigger:l,origin:n,closeScope:o,closeOnMouseLeaveMenu:i})=>{const c=t.ref(),a=()=>{o.value!=="none"&&(e.value=!1)};return t.watch([l,n,c],([r,s,f],h,b)=>{const m=E(s);if(!m||!f)return;const p=[N(f,"click",()=>{o.value==="all"&&(e.value=!1)})];if(r==="click")p.push(N(m,"click",()=>e.value=!e.value),N(document,"click",d=>{if(!e.value)return;const u=d.target;m.contains(u)||f.contains(u)||a()}),N(f,"mouseleave",()=>{i.value&&(e.value=!1)}));else if(r==="hover"){let d=!1,u=!1;const w=async y=>{await new Promise(v=>setTimeout(v,50)),!(y==="origin"&&d||y==="dropdown"&&u)&&a()};p.push(N(m,"mouseenter",()=>{u=!0,e.value=!0}),N(m,"mouseleave",()=>{u=!1,i.value||w("origin")}),N(f,"mouseenter",()=>{d=!0,e.value=!0}),N(f,"mouseleave",()=>{d=!1,w("dropdown")}))}b(()=>p.forEach(d=>d()))}),{dropdownEl:c}};var it="";function Ve(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const I=t.defineComponent({setup(e,l){return()=>{let n;return t.createVNode(t.Teleport,{to:"#d-overlay-anchor"},{default:()=>[t.createVNode(t.Transition,{name:"devui-overlay-fade"},Ve(n=t.renderSlot(l.slots,"default"))?n:{default:()=>[n]})]})}}}),$={visible:{type:Boolean},backgroundBlock:{type:Boolean,default:!1},backgroundClass:{type:String,default:""},backgroundStyle:{type:[String,Object]},onBackdropClick:{type:Function},backdropClose:{type:Boolean,default:!0},hasBackdrop:{type:Boolean,default:!0}},Y=["update:visible","backdropClick"],ke=R(k({},$),{overlayStyle:{type:[String,Object],default:void 0}}),Ce=k({origin:{type:Object,require:!0},position:{type:Object,default:()=>({originX:"left",originY:"top",overlayX:"left",overlayY:"top"})}},$);function X(e,l){const n=t.computed(()=>["devui-overlay-background",e.backgroundClass,e.hasBackdrop?"devui-overlay-background__color":"devui-overlay-background__disabled"]),o=t.computed(()=>"devui-overlay"),i=a=>{var r;a.preventDefault(),(r=e.onBackdropClick)==null||r.call(e),e.backdropClose&&l.emit("update:visible",!1)},c=a=>a.cancelBubble=!0;return t.onMounted(()=>{const a=document.body,r=a.style.overflow,s=a.style.position;t.watch([()=>e.visible,()=>e.backgroundBlock],([f,h])=>{if(h){const b=a.getBoundingClientRect().y;f?(a.style.overflowY="scroll",a.style.position=f?"fixed":"",a.style.top=`${b}px`):(a.style.overflowY=r,a.style.position=s,a.style.top="",window.scrollTo(0,-b))}}),t.onUnmounted(()=>{document.body.style.overflow=r})}),{backgroundClass:n,overlayClass:o,handleBackdropClick:i,handleOverlayBubbleCancel:c}}const j=t.defineComponent({name:"DFixedOverlay",props:ke,emits:Y,setup(e,l){const{backgroundClass:n,overlayClass:o,handleBackdropClick:i,handleOverlayBubbleCancel:c}=X(e,l);return()=>t.createVNode(I,null,{default:()=>[t.withDirectives(t.createVNode("div",{class:n.value,style:e.backgroundStyle,onClick:i},[t.createVNode("div",{class:o.value,style:e.overlayStyle,onClick:c},[t.renderSlot(l.slots,"default")])]),[[t.vShow,e.visible]])]})}}),T=t.defineComponent({name:"DFlexibleOverlay",props:Ce,emits:Y,setup(e,l){const n=t.ref(null),o=t.reactive({position:"absolute"});t.onMounted(async()=>{const s=(m,p,d)=>{const u=xe(m,p,d);o.left=`${u.x}px`,o.top=`${u.y}px`},f=t.computed(()=>{const m=n.value,p=Ne(e.origin);if(!(!m||!p))return{origin:p,overlay:m}}),h=t.toRef(e,"visible"),b=t.toRef(e,"position");t.watch([f,h,b],async([m,p,d],u,w)=>{if(!p||!m)return;const{origin:y,overlay:v}=m;s(d,v.getBoundingClientRect(),y);const W=[Le(()=>s(d,v.getBoundingClientRect(),y)),Re(v,L=>s(d,L[0].contentRect,y)),Te(y,()=>s(d,v.getBoundingClientRect(),y))];w(()=>{W.forEach(L=>L())})})});const{backgroundClass:i,overlayClass:c,handleBackdropClick:a,handleOverlayBubbleCancel:r}=X(e,l);return()=>t.createVNode(I,null,{default:()=>[t.withDirectives(t.createVNode("div",{style:e.backgroundStyle,class:i.value,onClick:a},[t.createVNode("div",{ref:n,class:c.value,style:o,onClick:r},[t.renderSlot(l.slots,"default")])]),[[t.vShow,e.visible]])]})}});function Ne(e){return e instanceof Element?e:t.isRef(e)?E(e.value):we(e)?E(e):e}function xe(e,l,n){const o=Se(n),i=Oe(o,e);return Be(i,l,e)}function Se(e){if(e instanceof Element)return e.getBoundingClientRect();const l=e.width||0,n=e.height||0;return{top:e.y,bottom:e.y+n,left:e.x,right:e.x+l,height:n,width:l}}function Be(e,l,n){let o;const{width:i,height:c}=l;n.overlayX=="center"?o=e.x-i/2:o=n.overlayX=="left"?e.x:e.x-i;let a;return n.overlayY=="center"?a=e.y-c/2:a=n.overlayY=="top"?e.y:e.y-c,{x:o,y:a}}function Oe(e,l){let n;if(l.originX=="center")n=e.left+e.width/2;else{const i=e.left,c=e.right;n=l.originX=="left"?i:c}let o;return l.originY=="center"?o=e.top+e.height/2:o=l.originY=="top"?e.top:e.bottom,{x:n,y:o}}function Le(e){return window.addEventListener("scroll",e,!0),window.addEventListener("resize",e),window.addEventListener("orientationchange",e),()=>{window.removeEventListener("scroll",e,!0),window.removeEventListener("resize",e),window.removeEventListener("orientationchange",e)}}function Re(e,l){if(e instanceof Element){const n=new ResizeObserver(l);return n.observe(e),()=>n.disconnect()}return()=>{}}function Te(e,l){if(e instanceof Element){const n=new MutationObserver(l);return n.observe(e,{attributeFilter:["style"]}),()=>n.disconnect()}return()=>{}}T.install=function(e){e.component(T.name,T)},j.install=function(e){e.component(j.name,j)};var ct="",A=t.defineComponent({name:"DDropdown",props:be,emits:[],setup(e,l){const{isOpen:n,origin:o,trigger:i,closeScope:c,closeOnMouseLeaveMenu:a}=t.toRefs(e),r=t.ref(!1);t.watch(n,m=>{r.value=m},{immediate:!0});const s={originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},{dropdownEl:f}=ve({visible:r,origin:o,trigger:i,closeScope:c,closeOnMouseLeaveMenu:a}),h=t.computed(()=>e.showAnimation?r.value:!0),b=t.computed(()=>typeof e.width=="string"?{width:e.width}:{width:`${e.width}px`});return()=>t.createVNode(T,{origin:e.origin,visible:r.value,"onUpdate:visible":m=>r.value=m,position:s,hasBackdrop:!1},{default:()=>[t.createVNode(t.Transition,{name:"devui-dropdown-fade"},{default:()=>{var m,p;return[t.withDirectives(t.createVNode("div",{ref:f,class:"devui-dropdown-menu-wrap",style:b.value},[(p=(m=l.slots).default)==null?void 0:p.call(m)]),[[t.vShow,h.value]])]}})]})}});A.install=function(e){e.component(A.name,A)};var st="";const Ae=t.defineComponent({props:{modelValue:{type:Array,default:[]},"onUpdate:modelValue":{type:Function},customTemplate:{type:Function},filterList:{type:Array,required:!0},filterMultiple:{type:Boolean,default:!0}},emits:["update:modelValue"],setup(e){const l=t.ref(null),n=(c,a)=>{const r=e.modelValue,s=e["onUpdate:modelValue"],f=!!r.find(h=>h===c.value);a&&!f?s==null||s([...r,c.value]):!a&&f&&(s==null||s(r.filter(h=>c.value!==h)))},o=c=>{var a;(a=e["onUpdate:modelValue"])==null||a.call(e,[c.value])},i=t.computed(()=>{const c=e.modelValue,a=r=>!!c.find(s=>s===r.value);return()=>t.createVNode("ul",{class:"devui-dropdown-menu data-table-column-filter-content",style:"padding:10px"},[e.filterList.map((r,s)=>t.createVNode("li",{style:s>0?"margin-top:10px":""},[e.filterMultiple?t.createVNode(x,{modelValue:a(r),"onUpdate:modelValue":f=>n(r,f)},{default:()=>[r.name]}):t.createVNode("span",{onClick:()=>o(r)},[r.name])]))])});return()=>t.createVNode(t.Fragment,null,[t.createVNode("span",{ref:l},[t.createVNode("i",{class:["filter-icon",{"filter-icon-active":!0}]},[t.createVNode("svg",{width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},[t.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("g",null,[t.createVNode("polygon",{points:"10.0085775 7 10.0085775 15 6 13 6 7 2 3 2 1 14 1 14 3"},null)])])])])]),t.createVNode(A,{origin:l.value,closeScope:"blank"},{default:()=>{var c,a;return[(a=(c=e.customTemplate)==null?void 0:c.call(e,{value:e.modelValue,onChange:e["onUpdate:modelValue"]}))!=null?a:i.value()]}})])}});var dt="",ut="";const De=(e,l)=>{const n=t.ref("DESC");return t.watch([n,l],([o,i])=>{i.sortable&&e.sortData(i.field,o,i.compareFn)},{immediate:!0}),n},Fe=(e,l)=>{const n=t.shallowRef();return t.watch(n,o=>{e.filterData(l.value.field,o)}),n};var q=t.defineComponent({name:"DTableHeader",setup(){const e=t.inject(S),{_checkAll:l,_halfChecked:n,_columns:o,isFixedLeft:i}=e.store.states,c=t.computed(()=>i.value?{class:"devui-sticky-cell left",style:"left:0;"}:null),a=t.computed(()=>e.props.checkable?t.createVNode("th",c.value,[t.createVNode(x,{style:"padding:10px;",modelValue:l.value,"onUpdate:modelValue":r=>l.value=r,halfchecked:n.value},null)]):null);return()=>t.createVNode("thead",{class:"devui-thead"},[t.createVNode("tr",null,[a.value,o.value.map((r,s)=>t.createVNode(Ee,{key:s,column:r},null))])])}});const Ee=t.defineComponent({props:{column:{type:Object,required:!0}},setup(e){const l=t.inject(S),{column:n}=t.toRefs(e),o=De(l.store,n),i=Fe(l.store,n),{stickyCell:c,offsetStyle:a}=H(n);return()=>t.createVNode("th",{class:c.value,style:a.value},[t.createVNode("div",{class:"header-container"},[e.column.renderHeader(),e.column.filterable&&t.createVNode(Ae,{modelValue:i.value,"onUpdate:modelValue":r=>i.value=r,filterList:e.column.filterList,customTemplate:e.column.customFilterTemplate},null)]),e.column.sortable&&t.createVNode(ge,{modelValue:o.value,"onUpdate:modelValue":r=>o.value=r},null)])}});var K=t.defineComponent({name:"DTableBody",setup(){const e=t.inject(S),{_data:l,_columns:n,_checkList:o,isFixedLeft:i}=e.store.states,c=t.computed(()=>e.props.rowHoveredHighlight),a=t.computed(()=>i.value?{class:"devui-sticky-cell left",style:"left:0;"}:null),r=s=>e.props.checkable?t.createVNode("td",a.value,[t.createVNode(x,{modelValue:o.value[s],"onUpdate:modelValue":f=>o.value[s]=f},null)]):null;return()=>t.createVNode("tbody",{class:"devui-tbody"},[l.value.map((s,f)=>t.createVNode("tr",{key:f,class:{"hover-enabled":c.value}},[r(f),n.value.map((h,b)=>t.createVNode(je,{column:h,index:b,row:s},null))]))])}});const je=t.defineComponent({props:{column:{type:Object},row:{type:Object},index:{type:Number}},setup(e){const l=t.toRef(e,"column"),{stickyCell:n,offsetStyle:o}=H(l);return()=>t.createVNode("td",{class:n.value,style:o.value},[l.value.renderCell(e.row,e.index)])}});var ft="",B=t.defineComponent({name:"DTable",props:V,setup(e,l){const n=t.getCurrentInstance(),o=se(t.toRef(e,"data"));n.store=o,t.provide(S,n);const{classes:i,style:c}=ce(e),a=t.computed(()=>e.data.length===0),r=t.computed(()=>t.createVNode("div",{class:"devui-table-view"},[t.createVNode("div",{style:"overflow: hidden scroll;"},[t.createVNode("table",{class:i.value,cellpadding:"0",cellspacing:"0"},[t.createVNode(D,null,null),t.createVNode(q,null,null)])]),t.createVNode("div",{class:"scroll-view"},[t.createVNode("table",{class:i.value,cellpadding:"0",cellspacing:"0"},[t.createVNode(D,null,null),!a.value&&t.createVNode(K,{style:"flex: 1"},null)])])])),s=t.computed(()=>t.createVNode("table",{class:i.value,cellpadding:"0",cellspacing:"0"},[t.createVNode(D,null,null),t.createVNode(q,{style:"position: relative"},null),!a.value&&t.createVNode(K,null,null)]));return l.expose({getCheckedRows(){return o.getCheckedRows()}}),()=>t.withDirectives(t.createVNode("div",{class:"devui-table-wrapper",style:c.value},[l.slots.default(),e.fixHeader?r.value:s.value,a.value&&t.createVNode("div",{class:"devui-table-empty"},[t.createTextVNode("No Data")])]),[[t.resolveDirective("dLoading"),e.showLoading]])}});const Pe={header:{type:String,default:""},field:{type:String,default:""},width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:80},formatter:{type:Function},order:{type:Number,default:0},sortable:{type:Boolean,default:!1},compareFn:{type:Function,default:(e,l,n)=>l[e]<n[e]},filterable:{type:Boolean,default:!1},filterMultiple:{type:Boolean,default:!1},filterList:{type:Array,default:[]},fixedLeft:{type:String},fixedRight:{type:String}};function J(e){return typeof e=="number"?e:parseInt(e,10)||0}function _e(e){return J(e)||80}function We(e,l){const{field:n,header:o,sortable:i,width:c,minWidth:a,formatter:r,compareFn:s,filterable:f,filterList:h,filterMultiple:b,order:m,fixedLeft:p,fixedRight:d}=e,u=t.reactive({});return t.watch([n,o,m],([w,y,v])=>{u.field=w,u.header=y,u.order=v},{immediate:!0}),t.watch([i,s],([w,y])=>{u.sortable=w,u.compareFn=y}),t.watch([f,h,b],([w,y,v])=>{u.filterable=w,u.filterMultiple=v,u.filterList=y},{immediate:!0}),t.watch([p,d],([w,y])=>{u.fixedLeft=w,u.fixedRight=y},{immediate:!0}),t.watch([c,a],([w,y])=>{u.width=J(w),u.minWidth=_e(y),u.realWidth=u.width||u.minWidth}),t.onBeforeMount(()=>{u.renderHeader=Me,u.renderCell=He,u.formatter=r.value,u.customFilterTemplate=l.customFilterTemplate,u.subColumns=l.subColumns}),u}function Me(){return t.h("span",{class:"title"},this.header)}function He(e,l){var o,i;const n=e[this.field];return this.formatter?this.formatter(e,n,l):(i=(o=n==null?void 0:n.toString)==null?void 0:o.call(n))!=null?i:""}var P=t.defineComponent({name:"DColumn",props:Pe,setup(e,l){const n=We(t.toRefs(e),l.slots),o=t.inject(S);t.onMounted(()=>{o.store.insertColumn(n),t.watch(()=>n.order,()=>{o.store.sortColumn()})}),t.onBeforeUnmount(()=>{o.store.removeColumn(n)})},render(){return null}});class Q{constructor(){C(this,"top","50%");C(this,"left","50%")}}const Ue={message:String,backdrop:Boolean,view:{type:Object,default:()=>new Q},zIndex:Number,isFull:{type:Boolean,default:!1}};class ze{constructor(){C(this,"target");C(this,"message");C(this,"loadingTemplateRef");C(this,"backdrop",!0);C(this,"positionType","relative");C(this,"view",new Q);C(this,"zIndex")}}var mt="",Z=t.defineComponent({name:"DLoading",inheritAttrs:!1,props:Ue,setup(e){const l={top:e.view.top,left:e.view.left,zIndex:e.zIndex};e.message||(l.background="none");const n=t.ref(!1);return{style:l,isShow:n,open:()=>{n.value=!0},close:()=>{n.value=!1}}},render(){var a;const{isShow:e,isFull:l,backdrop:n,style:o,message:i,$slots:c}=this;return e&&t.createVNode("div",{class:["devui-loading-contanier",l?"devui-loading--full":""]},[((a=c.default)==null?void 0:a.call(c))||t.createVNode("div",{class:"devui-loading-wrapper"},[n?t.createVNode("div",{class:"devui-loading-mask"},null):null,t.createVNode("div",{style:o,class:"devui-loading-area"},[t.createVNode("div",{class:"devui-busy-default-spinner"},[t.createVNode("div",{class:"devui-loading-bar1"},null),t.createVNode("div",{class:"devui-loading-bar2"},null),t.createVNode("div",{class:"devui-loading-bar3"},null),t.createVNode("div",{class:"devui-loading-bar4"},null)]),i?t.createVNode("span",{class:"devui-loading-text"},[i]):null])])])}});const G=Symbol("dev_component_container");function Ie(e,l,n=null){const o=t.h(e,k({},l),n),i=document.createElement("div");return o[G]=i,t.render(o,i),o.component}function $e(e){t.render(null,e==null?void 0:e.vnode[G])}const Ye=t.defineComponent(Z),O=new WeakSet,_=e=>{if(!e)return!0;if(Array.isArray(e))return e.length===0;if(e instanceof Set||e instanceof Map)return e.size===0;if(e instanceof Promise)return!1;if(typeof e=="object")try{return Object.keys(e).length===0}catch{return!1}return!1},ee=e=>Object.prototype.toString.call(e).slice(8,-1).toLowerCase(),Xe=e=>{switch(ee(e)){case"promise":return[e];case"array":return e.some(n=>ee(n)!=="promise")?(console.error(new TypeError("Binding values should all be of type Promise")),"error"):e;default:return!1}},te=e=>{O.delete(e),e.instance.proxy.close(),$e(e.instance)},ne=(e,l)=>{if(l.value){const n=Xe(l.value);if(n==="error")return;e.instance.proxy.open(),e.appendChild(e.mask),O.add(e),n&&Promise.all(n).catch(o=>{console.error(new Error("Promise handling errors"),o)}).finally(()=>{te(e)})}else te(e)},le=e=>{e.removeAttribute("zindex"),e.removeAttribute("positiontype"),e.removeAttribute("backdrop"),e.removeAttribute("message"),e.removeAttribute("view"),e.removeAttribute("loadingtemplateref")},oe=(e,l)=>{const n=k(k({},new ze),l),o=n.loadingTemplateRef,i=Ie(Ye,k({},n),o?()=>o:null);e.style.position=n.positionType,e.options=n,e.instance=i,e.mask=i.proxy.$el},qe={mounted:function(e,l,n){oe(e,n.props),le(e),!_(l.value)&&ne(e,l)},updated:function(e,l,n){!_(l.value)&&O.has(e)||_(l.value)&&!O.has(e)||(!O.has(e)&&oe(e,n.props),le(e),ne(e,l))}};t.defineComponent(Z),B.install=function(e){e.directive("dLoading",qe),e.component(B.name,B),e.component(P.name,P)};var Ke={title:"Table \u8868\u683C",category:"\u6570\u636E\u5C55\u793A",status:"10%",install(e){e.use(B)}};g.Column=P,g.Table=B,g.default=Ke,Object.defineProperty(g,"__esModule",{value:!0}),g[Symbol.toStringTag]="Module"});
1
+ var et=Object.defineProperty,tt=Object.defineProperties;var nt=Object.getOwnPropertyDescriptors;var se=Object.getOwnPropertySymbols;var lt=Object.prototype.hasOwnProperty,ot=Object.prototype.propertyIsEnumerable;var H=(b,t,v)=>t in b?et(b,t,{enumerable:!0,configurable:!0,writable:!0,value:v}):b[t]=v,C=(b,t)=>{for(var v in t||(t={}))lt.call(t,v)&&H(b,v,t[v]);if(se)for(var v of se(t))ot.call(t,v)&&H(b,v,t[v]);return b},T=(b,t)=>tt(b,nt(t));var N=(b,t,v)=>(H(b,typeof t!="symbol"?t+"":t,v),v);(function(b,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(b=typeof globalThis!="undefined"?globalThis:b||self,t(b.index={},b.Vue))})(this,function(b,t){"use strict";const v={data:{type:Array,default:[]},striped:{type:Boolean,default:!1},scrollable:{type:Boolean,default:!1},maxWidth:{type:String},maxHeight:{type:String},tableWidth:{type:String},tableHeight:{type:String},size:{type:String,validator(e){return e==="sm"||e==="md"||e==="lg"}},rowHoveredHighlight:{type:Boolean,default:!0},fixHeader:{type:Boolean,default:!1},checkable:{type:Boolean,default:!0},tableLayout:{type:String,default:"auto",validator(e){return e==="fixed"||e==="auto"}},showLoading:{type:Boolean,default:!1},headerBg:{type:Boolean,default:!1}},O=Symbol();function ce(e){const l=t.computed(()=>({"devui-table":!0,"devui-table-striped":e.striped,"header-bg":e.headerBg,"table-layout-auto":e.tableLayout==="auto"})),n=t.computed(()=>({maxHeight:e.maxHeight,maxWidth:e.maxWidth,height:e.tableHeight,width:e.tableWidth}));return{classes:l,style:n}}const U=e=>{const l=t.computed(()=>{const o=e.value;if(o.fixedLeft)return"devui-sticky-cell left";if(o.fixedRight)return"devui-sticky-cell right"}),n=t.computed(()=>{const o=e.value;if(o.fixedLeft)return`left:${o.fixedLeft}`;if(o.fixedRight)return`right:${o.fixedRight}`});return{stickyCell:l,offsetStyle:n}};function de(e){const l=t.ref([]);t.watch(e,d=>{l.value=[...d]},{deep:!0,immediate:!0});const{_columns:n,insertColumn:o,removeColumn:i,sortColumn:s}=ue(),{_checkAll:a,_checkList:r,_halfChecked:c,getCheckedRows:f}=fe(e,l),{sortData:h}=me(e,l),{filterData:w,resetFilterData:m}=he(e,l),{isFixedLeft:g}=pe(n);return{states:{_data:l,_columns:n,_checkList:r,_checkAll:a,_halfChecked:c,isFixedLeft:g},insertColumn:o,sortColumn:s,removeColumn:i,getCheckedRows:f,sortData:h,filterData:w,resetFilterData:m}}const ue=()=>{const e=t.ref([]);return{_columns:e,insertColumn:i=>{e.value.push(i),e.value.sort((s,a)=>s.order-a.order)},removeColumn:i=>{const s=e.value.findIndex(a=>a===i);s!==-1&&e.value.splice(s,1)},sortColumn:()=>{e.value.sort((i,s)=>i.order>s.order?1:-1)}}},fe=(e,l)=>{const n=t.ref([]),o=t.ref(!1),i=t.computed({get:()=>o.value,set:r=>{o.value=r;for(let c=0;c<n.value.length;c++)n.value[c]=r}}),s=t.ref(!1);return t.watch(e,r=>{n.value=new Array(r.length).fill(!1)},{deep:!0,immediate:!0}),t.watch(n,r=>{if(r.length===0)return;let c=!0,f=!0;for(let h=0;h<r.length;h++)c&&(c=r[h]),f&&(f=!r[h]);o.value=c,s.value=!(f||c)},{immediate:!0,deep:!0}),{_checkList:n,_checkAll:i,_halfChecked:s,getCheckedRows:()=>l.value.filter((r,c)=>n.value[c])}},me=(e,l)=>({sortData:(o,i,s=(a,r,c)=>r[a]>c[a])=>{i==="ASC"?l.value=l.value.sort((a,r)=>s(o,a,r)?1:-1):i==="DESC"?l.value=l.value.sort((a,r)=>s(o,a,r)?-1:1):l.value=[...e.value]}}),he=(e,l)=>{const n=new Set;return{filterData:(s,a)=>{n.add(s);const r=[...n];l.value=e.value.filter(c=>r.reduce((f,h)=>f&&a.indexOf(c[h])!==-1,!0))},resetFilterData:()=>{n.clear(),l.value=[...e.value]}}},pe=e=>({isFixedLeft:t.computed(()=>e.value.reduce((n,o)=>n||!!o.fixedLeft,!1))});var F=t.defineComponent({name:"DColGroup",setup(){const e=t.inject(O),l=e.store.states._columns;return()=>e.props.tableLayout==="fixed"?t.createVNode("colgroup",null,[e.props.checkable?t.createVNode("col",{width:36},null):null,l.value.map((n,o)=>t.createVNode("col",{key:o,width:n.realWidth},null))]):null}}),at="";const z={name:{type:String,default:void 0},halfchecked:{type:Boolean,default:!1},isShowTitle:{type:Boolean,default:!0},title:{type:String},color:{type:String,default:void 0},showAnimation:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},beforeChange:{type:Function,default:void 0}},ye=T(C({},z),{halfchecked:{type:Boolean,default:!1},checked:{type:Boolean,default:!1},value:{type:String},label:{type:String,default:void 0},title:{type:String,default:void 0},"onUpdate:checked":{type:Function,default:void 0},onChange:{type:Function,default:void 0},modelValue:{type:Boolean},"onUpdate:modelValue":{type:Function}}),ge=T(C({},z),{modelValue:{type:Array,required:!0},direction:{type:String,default:"column"},itemWidth:{type:Number,default:void 0},options:{type:Array,default:()=>[]},onChange:{type:Function,default:void 0},"onUpdate:modelValue":{type:Function,default:void 0}}),I=Symbol("d-checkbox-group");var B=t.defineComponent({name:"DCheckbox",props:ye,emits:["change","update:checked","update:modelValue"],setup(e,l){const n=t.inject(I,null),o=t.computed(()=>e.checked||e.modelValue),i=t.computed(()=>(n==null?void 0:n.disabled.value)||e.disabled),s=t.computed(()=>{var d,u;return(u=(d=n==null?void 0:n.isItemChecked)==null?void 0:d.call(n,e.value))!=null?u:o.value}),a=t.computed(()=>{var d;return(d=n==null?void 0:n.isShowTitle.value)!=null?d:e.isShowTitle}),r=t.computed(()=>{var d;return(d=n==null?void 0:n.showAnimation.value)!=null?d:e.showAnimation}),c=t.computed(()=>{var d;return(d=n==null?void 0:n.color.value)!=null?d:e.color}),f=n==null?void 0:n.itemWidth.value,h=n==null?void 0:n.direction.value,w=(d,u)=>{var p;if(i.value)return Promise.resolve(!1);const k=(p=e.beforeChange)!=null?p:n==null?void 0:n.beforeChange;if(k){const y=k(d,u);return typeof y=="boolean"?Promise.resolve(y):y}return Promise.resolve(!0)},m=()=>{const d=!o.value;n==null||n.toggleGroupVal(e.value),l.emit("update:checked",d),l.emit("update:modelValue",d),l.emit("change",d)};return{itemWidth:f,direction:h,mergedColor:c,mergedDisabled:i,mergedIsShowTitle:a,mergedChecked:s,mergedShowAnimation:r,handleClick:()=>{w(!o.value,e.label).then(d=>d&&m())}}},render(){var ie;const{itemWidth:e,direction:l,mergedChecked:n,mergedDisabled:o,mergedIsShowTitle:i,mergedShowAnimation:s,halfchecked:a,title:r,label:c,handleClick:f,name:h,value:w,mergedColor:m,$slots:g}=this,d={"devui-checkbox-column-margin":l==="column","devui-checkbox-wrap":typeof e!="undefined"},u=e?[`width: ${e}px`]:[],k={"devui-checkbox":!0,active:n,halfchecked:a,disabled:o,unchecked:!n},p=i?r||c:"",y=m&&a||m?`linear-gradient(${m}, ${m})`:"",V=[`border-color:${(n||a)&&m?m:""}`,`background-image:${y}`,`background-color:${m&&a?m:""}`],S={"devui-checkbox-material":!0,"custom-color":m,"devui-checkbox-no-label":!c&&!g.default,"devui-no-animation":!s,"devui-checkbox-default-background":!a},E={"devui-tick":!0,"devui-no-animation":!s},re=Ge=>Ge.stopPropagation(),Ze={indeterminate:a};return t.createVNode("div",{class:d,style:u},[t.createVNode("div",{class:k},[t.createVNode("label",{title:p,onClick:f},[t.createVNode("input",t.mergeProps({name:h||w,class:"devui-checkbox-input",type:"checkbox"},Ze,{checked:n,disabled:o,onClick:re,onChange:re}),null),t.createVNode("span",{style:V,class:S},[t.createVNode("span",{class:"devui-checkbox-halfchecked-bg"},null),t.createVNode("svg",{viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg",class:"devui-checkbox-tick"},[t.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("polygon",{"fill-rule":"nonzero",points:"5.17391304 6.56521739 7.7173913 9.10869565 11.826087 5 13 6.17391304 7.7173913 11.4565217 4 7.73913043",class:E},null)])])]),c||((ie=g.default)==null?void 0:ie.call(g))])])])}}),rt="",j=t.defineComponent({name:"DCheckboxGroup",props:ge,emits:["change","update:modelValue"],setup(e,l){const n=t.toRef(e,"modelValue"),o={checked:!1,isShowTitle:!0,halfchecked:!1,showAnimation:!0,disabled:!1},i=a=>{let r=-1;if(typeof n.value[0]=="string"?r=n.value.findIndex(c=>c===a):typeof n.value[0]=="object"&&(r=n.value.findIndex(c=>c.value===a)),r===-1){if(typeof e.options[0]=="object"){const f=e.options.find(w=>w.value===a),h=[...n.value,f];l.emit("update:modelValue",h),l.emit("change",h);return}const c=[...n.value,a];l.emit("update:modelValue",c),l.emit("change",c);return}n.value.splice(r,1),l.emit("update:modelValue",n.value),l.emit("change",n.value)},s=a=>{if(typeof n.value[0]=="string")return n.value.includes(a);if(typeof n.value[0]=="object")return n.value.some(r=>r.value===a)};return t.provide(I,{disabled:t.toRef(e,"disabled"),isShowTitle:t.toRef(e,"isShowTitle"),color:t.toRef(e,"color"),showAnimation:t.toRef(e,"showAnimation"),beforeChange:e.beforeChange,isItemChecked:s,toggleGroupVal:i,itemWidth:t.toRef(e,"itemWidth"),direction:t.toRef(e,"direction")}),{defaultOpt:o}},render(){var s;const{direction:e,$slots:l,defaultOpt:n,options:o}=this;let i=(s=l.default)==null?void 0:s.call(l);return(o==null?void 0:o.length)>0&&(i=o.map(a=>{let r=null;return typeof a=="string"?r=Object.assign({},n,{label:a,value:a}):typeof a=="object"&&(r=Object.assign({},n,T(C({},a),{label:a.name}))),t.createVNode(B,r,null)})),t.createVNode("div",{class:"devui-checkbox-group"},[t.createVNode("div",{class:{"devui-checkbox-list-inline":e==="row"}},[i])])}});B.install=function(e){e.component(B.name,B)},j.install=function(e){e.component(j.name,j)};var it="";const be=t.defineComponent({props:{modelValue:{type:String,default:""},"onUpdate:modelValue":{type:Function}},emits:["update:modelValue"],setup(e,l){const n=()=>{let o="";e.modelValue==="ASC"?o="DESC":e.modelValue==="DESC"?o="":o="ASC",l.emit("update:modelValue",o)};return()=>t.createVNode("span",{onClick:n,class:"sort-clickable"},[t.createVNode("i",{class:["datatable-svg",{"sort-icon-default":!e.modelValue,"sort-icon-asc":e.modelValue==="ASC","sort-icon-desc":e.modelValue==="DESC"}]},[t.createVNode("svg",{width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},[t.createVNode("defs",null,[t.createVNode("circle",{id:"sort-svg-path-1",cx:"8",cy:"8",r:"8"},null),t.createVNode("filter",{x:"-34.4%",y:"-21.9%",width:"168.8%",height:"168.8%",filterUnits:"objectBoundingBox",id:"filter-2"},[t.createVNode("feOffset",{dx:"0",dy:"2",in:"SourceAlpha",result:"shadowOffsetOuter1"},null),t.createVNode("feGaussianBlur",{stdDeviation:"1.5",in:"shadowOffsetOuter1",result:"shadowBlurOuter1"},null),t.createVNode("feColorMatrix",{values:"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.085309222 0",type:"matrix",in:"shadowBlurOuter1"},null)])]),t.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("use",{"fill-rule":"evenodd","xlink:href":"#sort-svg-path-1"},null),t.createVNode("polygon",{points:"8 4 11 7 5 7"},null),t.createVNode("polygon",{points:"8 12 5 9 11 9"},null)])])])])}}),we={origin:{type:Object},isOpen:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},trigger:{type:String,default:"click"},closeScope:{type:String,default:"all"},closeOnMouseLeaveMenu:{type:Boolean,default:!1},showAnimation:{type:Boolean,default:!0},width:{type:[Number,String],default:"102px"}};function ve(e){return!!(e==null?void 0:e.$el)}function P(e){return e instanceof Element?e:e&&typeof e=="object"&&e.$el instanceof Element?e.$el:null}function x(e,l,n){return e==null||e.addEventListener(l,n),()=>{e==null||e.removeEventListener(l,n)}}const Ve=({visible:e,trigger:l,origin:n,closeScope:o,closeOnMouseLeaveMenu:i})=>{const s=t.ref(),a=()=>{o.value!=="none"&&(e.value=!1)};return t.watch([l,n,s],([r,c,f],h,w)=>{const m=P(c);if(!m||!f)return;const g=[x(f,"click",()=>{o.value==="all"&&(e.value=!1)})];if(r==="click")g.push(x(m,"click",()=>e.value=!e.value),x(document,"click",d=>{if(!e.value)return;const u=d.target;m.contains(u)||f.contains(u)||a()}),x(f,"mouseleave",()=>{i.value&&(e.value=!1)}));else if(r==="hover"){let d=!1,u=!1;const k=async p=>{await new Promise(y=>setTimeout(y,50)),!(p==="origin"&&d||p==="dropdown"&&u)&&a()};g.push(x(m,"mouseenter",()=>{u=!0,e.value=!0}),x(m,"mouseleave",()=>{u=!1,i.value||k("origin")}),x(f,"mouseenter",()=>{d=!0,e.value=!0}),x(f,"mouseleave",()=>{d=!1,k("dropdown")}))}w(()=>g.forEach(d=>d()))}),{dropdownEl:s}};var st="";function ke(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const $=t.defineComponent({setup(e,l){return()=>{let n;return t.createVNode(t.Teleport,{to:"#d-overlay-anchor"},{default:()=>[t.createVNode(t.Transition,{name:"devui-overlay-fade"},ke(n=t.renderSlot(l.slots,"default"))?n:{default:()=>[n]})]})}}}),Y={visible:{type:Boolean},backgroundBlock:{type:Boolean,default:!1},backgroundClass:{type:String,default:""},backgroundStyle:{type:[String,Object]},onBackdropClick:{type:Function},backdropClose:{type:Boolean,default:!0},hasBackdrop:{type:Boolean,default:!0}},X=["update:visible","backdropClick"],Ce=T(C({},Y),{overlayStyle:{type:[String,Object],default:void 0}}),Ne=C({origin:{type:Object,require:!0},position:{type:Object,default:()=>({originX:"left",originY:"top",overlayX:"left",overlayY:"top"})}},Y);function q(e,l){const n=t.computed(()=>["devui-overlay-background",e.backgroundClass,e.hasBackdrop?"devui-overlay-background__color":"devui-overlay-background__disabled"]),o=t.computed(()=>"devui-overlay"),i=a=>{var r;a.preventDefault(),(r=e.onBackdropClick)==null||r.call(e),e.backdropClose&&l.emit("update:visible",!1)},s=a=>a.cancelBubble=!0;return t.onMounted(()=>{const a=document.body,r=a.style.overflow,c=a.style.position;t.watch([()=>e.visible,()=>e.backgroundBlock],([f,h])=>{if(h){const w=a.getBoundingClientRect().y;f?(a.style.overflowY="scroll",a.style.position=f?"fixed":"",a.style.top=`${w}px`):(a.style.overflowY=r,a.style.position=c,a.style.top="",window.scrollTo(0,-w))}}),t.onUnmounted(()=>{document.body.style.overflow=r})}),{backgroundClass:n,overlayClass:o,handleBackdropClick:i,handleOverlayBubbleCancel:s}}const _=t.defineComponent({name:"DFixedOverlay",props:Ce,emits:X,setup(e,l){const{backgroundClass:n,overlayClass:o,handleBackdropClick:i,handleOverlayBubbleCancel:s}=q(e,l);return()=>t.createVNode($,null,{default:()=>[t.withDirectives(t.createVNode("div",{class:n.value,style:e.backgroundStyle,onClick:i},[t.createVNode("div",{class:o.value,style:e.overlayStyle,onClick:s},[t.renderSlot(l.slots,"default")])]),[[t.vShow,e.visible]])]})}}),A=t.defineComponent({name:"DFlexibleOverlay",props:Ne,emits:X,setup(e,l){const n=t.ref(null),o=t.reactive({position:"absolute"});t.onMounted(async()=>{const c=(m,g,d)=>{const u=Se(m,g,d);o.left=`${u.x}px`,o.top=`${u.y}px`},f=t.computed(()=>{const m=n.value,g=xe(e.origin);if(!(!m||!g))return{origin:g,overlay:m}}),h=t.toRef(e,"visible"),w=t.toRef(e,"position");t.watch([f,h,w],async([m,g,d],u,k)=>{if(!g||!m)return;const{origin:p,overlay:y}=m;c(d,y.getBoundingClientRect(),p);const V=[Re(()=>c(d,y.getBoundingClientRect(),p)),Te(y,S=>c(d,S[0].contentRect,p)),Ae(p,()=>c(d,y.getBoundingClientRect(),p))];k(()=>{V.forEach(S=>S())})})});const{backgroundClass:i,overlayClass:s,handleBackdropClick:a,handleOverlayBubbleCancel:r}=q(e,l);return()=>t.createVNode($,null,{default:()=>[t.withDirectives(t.createVNode("div",{style:e.backgroundStyle,class:i.value,onClick:a},[t.createVNode("div",{ref:n,class:s.value,style:o,onClick:r},[t.renderSlot(l.slots,"default")])]),[[t.vShow,e.visible]])]})}});function xe(e){return e instanceof Element?e:t.isRef(e)?P(e.value):ve(e)?P(e):e}function Se(e,l,n){const o=Be(n),i=Le(o,e);return Oe(i,l,e)}function Be(e){if(e instanceof Element)return e.getBoundingClientRect();const l=e.width||0,n=e.height||0;return{top:e.y,bottom:e.y+n,left:e.x,right:e.x+l,height:n,width:l}}function Oe(e,l,n){let o;const{width:i,height:s}=l;n.overlayX=="center"?o=e.x-i/2:o=n.overlayX=="left"?e.x:e.x-i;let a;return n.overlayY=="center"?a=e.y-s/2:a=n.overlayY=="top"?e.y:e.y-s,{x:o,y:a}}function Le(e,l){let n;if(l.originX=="center")n=e.left+e.width/2;else{const i=e.left,s=e.right;n=l.originX=="left"?i:s}let o;return l.originY=="center"?o=e.top+e.height/2:o=l.originY=="top"?e.top:e.bottom,{x:n,y:o}}function Re(e){return window.addEventListener("scroll",e,!0),window.addEventListener("resize",e),window.addEventListener("orientationchange",e),()=>{window.removeEventListener("scroll",e,!0),window.removeEventListener("resize",e),window.removeEventListener("orientationchange",e)}}function Te(e,l){if(e instanceof Element){const n=new ResizeObserver(l);return n.observe(e),()=>n.disconnect()}return()=>{}}function Ae(e,l){if(e instanceof Element){const n=new MutationObserver(l);return n.observe(e,{attributeFilter:["style"]}),()=>n.disconnect()}return()=>{}}A.install=function(e){e.component(A.name,A)},_.install=function(e){e.component(_.name,_)};var ct="",D=t.defineComponent({name:"DDropdown",props:we,emits:[],setup(e,l){const{isOpen:n,origin:o,trigger:i,closeScope:s,closeOnMouseLeaveMenu:a}=t.toRefs(e),r=t.ref(!1);t.watch(n,m=>{r.value=m},{immediate:!0});const c={originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},{dropdownEl:f}=Ve({visible:r,origin:o,trigger:i,closeScope:s,closeOnMouseLeaveMenu:a}),h=t.computed(()=>e.showAnimation?r.value:!0),w=t.computed(()=>typeof e.width=="string"?{width:e.width}:{width:`${e.width}px`});return()=>t.createVNode(A,{origin:e.origin,visible:r.value,"onUpdate:visible":m=>r.value=m,position:c,hasBackdrop:!1},{default:()=>[t.createVNode(t.Transition,{name:"devui-dropdown-fade"},{default:()=>{var m,g;return[t.withDirectives(t.createVNode("div",{ref:f,class:"devui-dropdown-menu-wrap",style:w.value},[(g=(m=l.slots).default)==null?void 0:g.call(m)]),[[t.vShow,h.value]])]}})]})}});D.install=function(e){e.component(D.name,D)};var dt="";const De=t.defineComponent({props:{modelValue:{type:Array,default:[]},"onUpdate:modelValue":{type:Function},customTemplate:{type:Function},filterList:{type:Array,required:!0},filterMultiple:{type:Boolean,default:!0}},emits:["update:modelValue"],setup(e){const l=t.ref(null),n=(s,a)=>{const r=e.modelValue,c=e["onUpdate:modelValue"],f=!!r.find(h=>h===s.value);a&&!f?c==null||c([...r,s.value]):!a&&f&&(c==null||c(r.filter(h=>s.value!==h)))},o=s=>{var a;(a=e["onUpdate:modelValue"])==null||a.call(e,[s.value])},i=t.computed(()=>{const s=e.modelValue,a=r=>!!s.find(c=>c===r.value);return()=>t.createVNode("ul",{class:"devui-dropdown-menu data-table-column-filter-content",style:"padding:10px"},[e.filterList.map((r,c)=>t.createVNode("li",{style:c>0?"margin-top:10px":""},[e.filterMultiple?t.createVNode(B,{modelValue:a(r),"onUpdate:modelValue":f=>n(r,f)},{default:()=>[r.name]}):t.createVNode("span",{onClick:()=>o(r)},[r.name])]))])});return()=>t.createVNode(t.Fragment,null,[t.createVNode("span",{ref:l},[t.createVNode("i",{class:["filter-icon",{"filter-icon-active":!0}]},[t.createVNode("svg",{width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},[t.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("g",null,[t.createVNode("polygon",{points:"10.0085775 7 10.0085775 15 6 13 6 7 2 3 2 1 14 1 14 3"},null)])])])])]),t.createVNode(D,{origin:l.value,closeScope:"blank"},{default:()=>{var s,a;return[(a=(s=e.customTemplate)==null?void 0:s.call(e,{value:e.modelValue,onChange:e["onUpdate:modelValue"]}))!=null?a:i.value()]}})])}});var ut="",ft="";const Ee=(e,l)=>{const n=t.ref("DESC");return t.watch([n,l],([o,i])=>{i.sortable&&e.sortData(i.field,o,i.compareFn)},{immediate:!0}),n},Fe=(e,l)=>{const n=t.shallowRef();return t.watch(n,o=>{e.filterData(l.value.field,o)}),n};var K=t.defineComponent({name:"DTableHeader",setup(){const e=t.inject(O),{_checkAll:l,_halfChecked:n,_columns:o,isFixedLeft:i}=e.store.states,s=t.computed(()=>i.value?{class:"devui-sticky-cell left",style:"left:0;"}:null),a=t.computed(()=>e.props.checkable?t.createVNode("th",s.value,[t.createVNode(B,{style:"padding:10px;",modelValue:l.value,"onUpdate:modelValue":r=>l.value=r,halfchecked:n.value},null)]):null);return()=>t.createVNode("thead",{class:"devui-thead"},[t.createVNode("tr",null,[a.value,o.value.map((r,c)=>t.createVNode(je,{key:c,column:r},null))])])}});const je=t.defineComponent({props:{column:{type:Object,required:!0}},setup(e){const l=t.inject(O),{column:n}=t.toRefs(e),o=Ee(l.store,n),i=Fe(l.store,n),{stickyCell:s,offsetStyle:a}=U(n);return()=>t.createVNode("th",{class:s.value,style:a.value},[t.createVNode("div",{class:"header-container"},[e.column.renderHeader(),e.column.filterable&&t.createVNode(De,{modelValue:i.value,"onUpdate:modelValue":r=>i.value=r,filterList:e.column.filterList,customTemplate:e.column.customFilterTemplate},null)]),e.column.sortable&&t.createVNode(be,{modelValue:o.value,"onUpdate:modelValue":r=>o.value=r},null)])}});var J=t.defineComponent({name:"DTableBody",setup(){const e=t.inject(O),{_data:l,_columns:n,_checkList:o,isFixedLeft:i}=e.store.states,s=t.computed(()=>e.props.rowHoveredHighlight),a=t.computed(()=>i.value?{class:"devui-sticky-cell left",style:"left:0;"}:null),r=c=>e.props.checkable?t.createVNode("td",a.value,[t.createVNode(B,{modelValue:o.value[c],"onUpdate:modelValue":f=>o.value[c]=f},null)]):null;return()=>t.createVNode("tbody",{class:"devui-tbody"},[l.value.map((c,f)=>t.createVNode("tr",{key:f,class:{"hover-enabled":s.value}},[r(f),n.value.map((h,w)=>t.createVNode(Pe,{column:h,index:w,row:c},null))]))])}});const Pe=t.defineComponent({props:{column:{type:Object},row:{type:Object},index:{type:Number}},setup(e){const l=t.toRef(e,"column"),{stickyCell:n,offsetStyle:o}=U(l);return()=>t.createVNode("td",{class:n.value,style:o.value},[l.value.renderCell(e.row,e.index)])}});var _e=t.defineComponent({props:{classes:{type:Object,default:()=>({})},isEmpty:{type:Boolean}},setup(e){return()=>t.createVNode("div",{class:"devui-table-view"},[t.createVNode("div",{style:"overflow:hidden scroll;"},[t.createVNode("table",{class:e.classes,cellpadding:"0",cellspacing:"0"},[t.createVNode(F,null,null),t.createVNode(K,null,null)])]),t.createVNode("div",{class:"scroll-view"},[t.createVNode("table",{class:e.classes,cellpadding:"0",cellspacing:"0"},[t.createVNode(F,null,null),!e.isEmpty&&t.createVNode(J,{style:"flex: 1"},null)])])])}}),We=t.defineComponent({props:{classes:{type:Object,default:()=>({})},isEmpty:{type:Boolean}},setup(e){return()=>t.createVNode("table",{class:e.classes,cellpadding:"0",cellspacing:"0"},[t.createVNode(F,null,null),t.createVNode(K,{style:"position:relative"},null),!e.isEmpty&&t.createVNode(J,null,null)])}}),mt="",L=t.defineComponent({name:"DTable",props:v,setup(e,l){const n=t.getCurrentInstance(),o=de(t.toRef(e,"data"));n.store=o,t.provide(O,n);const{classes:i,style:s}=ce(e),a=t.computed(()=>e.data.length===0);return l.expose({getCheckedRows(){return o.getCheckedRows()}}),()=>t.withDirectives(t.createVNode("div",{class:"devui-table-wrapper",style:s.value},[l.slots.default(),e.fixHeader?t.createVNode(_e,{classes:i.value,"is-empty":a.value},null):t.createVNode(We,{classes:i.value,"is-empty":a.value},null),a.value&&t.createVNode("div",{class:"devui-table-empty"},[t.createTextVNode("No Data")])]),[[t.resolveDirective("dLoading"),e.showLoading]])}});const Me={header:{type:String,default:""},field:{type:String,default:""},width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:80},formatter:{type:Function},order:{type:Number,default:0},sortable:{type:Boolean,default:!1},compareFn:{type:Function,default:(e,l,n)=>l[e]<n[e]},filterable:{type:Boolean,default:!1},filterMultiple:{type:Boolean,default:!1},filterList:{type:Array,default:[]},fixedLeft:{type:String},fixedRight:{type:String}};function Q(e){return typeof e=="number"?e:parseInt(e,10)||0}function He(e){return Q(e)||80}function Ue(){return t.h("span",{class:"title"},this.header)}function ze(e,l){const{field:n,header:o,sortable:i,width:s,minWidth:a,formatter:r,compareFn:c,filterable:f,filterList:h,filterMultiple:w,order:m,fixedLeft:g,fixedRight:d}=e,u=t.reactive({});function k(p,y){var S,E;const V=p[this.field];return l.default?l.default(p):this.formatter?this.formatter(p,V,y):(E=(S=V==null?void 0:V.toString)==null?void 0:S.call(V))!=null?E:""}return t.watch([n,o,m],([p,y,V])=>{u.field=p,u.header=y,u.order=V},{immediate:!0}),t.watch([i,c],([p,y])=>{u.sortable=p,u.compareFn=y}),t.watch([f,h,w],([p,y,V])=>{u.filterable=p,u.filterMultiple=V,u.filterList=y},{immediate:!0}),t.watch([g,d],([p,y])=>{u.fixedLeft=p,u.fixedRight=y},{immediate:!0}),t.watch([s,a],([p,y])=>{u.width=Q(p),u.minWidth=He(y),u.realWidth=u.width||u.minWidth}),t.onBeforeMount(()=>{u.renderHeader=Ue,u.renderCell=k,u.formatter=r.value,u.customFilterTemplate=l.customFilterTemplate,u.subColumns=l.subColumns}),u}var W=t.defineComponent({name:"DColumn",props:Me,setup(e,l){const n=ze(t.toRefs(e),l.slots),o=t.inject(O);t.onMounted(()=>{o.store.insertColumn(n),t.watch(()=>n.order,()=>{o.store.sortColumn()})}),t.onBeforeUnmount(()=>{o.store.removeColumn(n)})},render(){return null}});class Z{constructor(){N(this,"top","50%");N(this,"left","50%")}}const Ie={message:String,backdrop:Boolean,view:{type:Object,default:()=>new Z},zIndex:Number,isFull:{type:Boolean,default:!1}};class $e{constructor(){N(this,"target");N(this,"message");N(this,"loadingTemplateRef");N(this,"backdrop",!0);N(this,"positionType","relative");N(this,"view",new Z);N(this,"zIndex")}}var ht="",G=t.defineComponent({name:"DLoading",inheritAttrs:!1,props:Ie,setup(e){const l={top:e.view.top,left:e.view.left,zIndex:e.zIndex};e.message||(l.background="none");const n=t.ref(!1);return{style:l,isShow:n,open:()=>{n.value=!0},close:()=>{n.value=!1}}},render(){var a;const{isShow:e,isFull:l,backdrop:n,style:o,message:i,$slots:s}=this;return e&&t.createVNode("div",{class:["devui-loading-contanier",l?"devui-loading--full":""]},[((a=s.default)==null?void 0:a.call(s))||t.createVNode("div",{class:"devui-loading-wrapper"},[n?t.createVNode("div",{class:"devui-loading-mask"},null):null,t.createVNode("div",{style:o,class:"devui-loading-area"},[t.createVNode("div",{class:"devui-busy-default-spinner"},[t.createVNode("div",{class:"devui-loading-bar1"},null),t.createVNode("div",{class:"devui-loading-bar2"},null),t.createVNode("div",{class:"devui-loading-bar3"},null),t.createVNode("div",{class:"devui-loading-bar4"},null)]),i?t.createVNode("span",{class:"devui-loading-text"},[i]):null])])])}});const ee=Symbol("dev_component_container");function Ye(e,l,n=null){const o=t.h(e,C({},l),n),i=document.createElement("div");return o[ee]=i,t.render(o,i),o.component}function Xe(e){t.render(null,e==null?void 0:e.vnode[ee])}const qe=t.defineComponent(G),R=new WeakSet,M=e=>{if(!e)return!0;if(Array.isArray(e))return e.length===0;if(e instanceof Set||e instanceof Map)return e.size===0;if(e instanceof Promise)return!1;if(typeof e=="object")try{return Object.keys(e).length===0}catch{return!1}return!1},te=e=>Object.prototype.toString.call(e).slice(8,-1).toLowerCase(),Ke=e=>{switch(te(e)){case"promise":return[e];case"array":return e.some(n=>te(n)!=="promise")?(console.error(new TypeError("Binding values should all be of type Promise")),"error"):e;default:return!1}},ne=e=>{R.delete(e),e.instance.proxy.close(),Xe(e.instance)},le=(e,l)=>{if(l.value){const n=Ke(l.value);if(n==="error")return;e.instance.proxy.open(),e.appendChild(e.mask),R.add(e),n&&Promise.all(n).catch(o=>{console.error(new Error("Promise handling errors"),o)}).finally(()=>{ne(e)})}else ne(e)},oe=e=>{e.removeAttribute("zindex"),e.removeAttribute("positiontype"),e.removeAttribute("backdrop"),e.removeAttribute("message"),e.removeAttribute("view"),e.removeAttribute("loadingtemplateref")},ae=(e,l)=>{const n=C(C({},new $e),l),o=n.loadingTemplateRef,i=Ye(qe,C({},n),o?()=>o:null);e.style.position=n.positionType,e.options=n,e.instance=i,e.mask=i.proxy.$el},Je={mounted:function(e,l,n){ae(e,n.props),oe(e),!M(l.value)&&le(e,l)},updated:function(e,l,n){!M(l.value)&&R.has(e)||M(l.value)&&!R.has(e)||(!R.has(e)&&ae(e,n.props),oe(e),le(e,l))}};t.defineComponent(G),L.install=function(e){e.directive("dLoading",Je),e.component(L.name,L),e.component(W.name,W)};var Qe={title:"Table \u8868\u683C",category:"\u6570\u636E\u5C55\u793A",status:"10%",install(e){e.use(L)}};b.Column=W,b.Table=L,b.default=Qe,Object.defineProperty(b,"__esModule",{value:!0}),b[Symbol.toStringTag]="Module"});
@@ -18,7 +18,7 @@ var __publicField = (obj, key, value) => {
18
18
  __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
19
19
  return value;
20
20
  };
21
- import { defineComponent, createVNode, reactive, ref, onMounted, onBeforeUnmount, onUnmounted, Fragment, h, render, computed, mergeProps, withDirectives, resolveDirective, watch, createTextVNode } from "vue";
21
+ import { defineComponent, createVNode, reactive, ref, onMounted, onBeforeUnmount, onUnmounted, Fragment, h, render, computed, toRefs, withDirectives, resolveDirective, watch, createTextVNode } from "vue";
22
22
  const timePickerProps = {
23
23
  modelValue: {
24
24
  type: String,
@@ -925,49 +925,59 @@ const loadingDirective = {
925
925
  }
926
926
  };
927
927
  const buttonProps = {
928
- type: {
929
- type: String,
930
- default: "button"
931
- },
932
928
  variant: {
933
929
  type: String,
934
- default: "primary"
930
+ default: "outline"
935
931
  },
936
932
  size: {
937
933
  type: String,
938
934
  default: "md"
939
935
  },
940
- position: {
941
- type: String,
942
- default: "default"
943
- },
944
- bordered: {
945
- type: Boolean,
946
- default: false
936
+ color: {
937
+ type: String
947
938
  },
948
939
  icon: {
949
940
  type: String,
950
941
  default: ""
951
942
  },
952
- showLoading: {
943
+ loading: {
953
944
  type: Boolean,
954
945
  default: false
955
946
  },
956
- width: {
957
- type: String
958
- },
959
947
  disabled: {
960
948
  type: Boolean,
961
949
  default: false
962
- },
963
- autofocus: {
964
- type: Boolean,
965
- default: false
966
- },
967
- onClick: {
968
- type: Function
969
950
  }
970
951
  };
952
+ function useButton(props, ctx) {
953
+ const hasContent = computed(() => ctx.slots.default);
954
+ const colorMap = {
955
+ solid: "primary",
956
+ outline: "secondary",
957
+ text: "secondary"
958
+ };
959
+ const defaultColor = colorMap[props.variant];
960
+ const classes = computed(() => ({
961
+ "devui-btn": true,
962
+ [`devui-btn-${props.variant}`]: true,
963
+ [`devui-btn-${props.variant}-${props.color || defaultColor}`]: true,
964
+ [`devui-btn-${props.size}`]: true,
965
+ "devui-btn-icon-wrap": props.icon,
966
+ "devui-btn-icon": props.icon && !hasContent.value && props.variant !== "solid"
967
+ }));
968
+ const iconClass = computed(() => {
969
+ if (!props.icon) {
970
+ return;
971
+ }
972
+ const origin = "devui-icon-fix icon";
973
+ if (hasContent.value) {
974
+ return `${origin} clear-right-5`;
975
+ } else {
976
+ return origin;
977
+ }
978
+ });
979
+ return { classes, iconClass };
980
+ }
971
981
  var button = "";
972
982
  var Button = defineComponent({
973
983
  name: "DButton",
@@ -975,75 +985,39 @@ var Button = defineComponent({
975
985
  devLoading: loadingDirective
976
986
  },
977
987
  props: buttonProps,
988
+ emits: ["click"],
978
989
  setup(props, ctx) {
979
- const buttonContent = ref(null);
990
+ const {
991
+ icon,
992
+ disabled,
993
+ loading: loading2
994
+ } = toRefs(props);
995
+ const {
996
+ classes,
997
+ iconClass
998
+ } = useButton(props, ctx);
980
999
  const onClick = (e) => {
981
- var _a;
982
- if (props.showLoading) {
1000
+ if (loading2.value) {
983
1001
  return;
984
1002
  }
985
- (_a = props.onClick) == null ? void 0 : _a.call(props, e);
1003
+ ctx.emit("click", e);
986
1004
  };
987
- const hasContent = computed(() => ctx.slots.default);
988
- const btnClass = computed(() => {
989
- const {
990
- variant,
991
- size,
992
- position,
993
- bordered,
994
- icon
995
- } = props;
996
- const origin = `devui-btn devui-btn-${variant} devui-btn-${size} devui-btn-${position}`;
997
- const borderedClass = bordered ? "bordered" : "";
998
- const btnIcon = !!icon && !hasContent.value && variant !== "primary" ? "d-btn-icon" : "";
999
- const btnIconWrap = !!icon ? "d-btn-icon-wrap" : "";
1000
- return `${origin} ${borderedClass} ${btnIcon} ${btnIconWrap}`;
1001
- });
1002
- const iconClass = computed(() => {
1003
- if (!props.icon) {
1004
- return;
1005
- }
1006
- const origin = "devui-icon-fix icon";
1007
- if (hasContent.value) {
1008
- return `${origin} clear-right-5`;
1009
- } else {
1010
- return origin;
1011
- }
1012
- });
1013
1005
  return () => {
1014
1006
  var _a, _b;
1015
- const {
1016
- icon,
1017
- type,
1018
- disabled,
1019
- showLoading,
1020
- width
1021
- } = props;
1022
- return createVNode("div", mergeProps({
1023
- "class": "devui-btn-host"
1024
- }, ctx.attrs), [withDirectives(createVNode("button", {
1025
- "class": btnClass.value,
1026
- "type": type,
1027
- "disabled": disabled,
1028
- "style": {
1029
- width
1030
- },
1007
+ return withDirectives(createVNode("button", {
1008
+ "class": classes.value,
1009
+ "disabled": disabled.value,
1031
1010
  "onClick": onClick
1032
- }, [!!icon ? createVNode(Icon, {
1033
- "name": icon,
1011
+ }, [icon.value && createVNode(Icon, {
1012
+ "name": icon.value,
1013
+ "size": "12px",
1034
1014
  "class": iconClass.value
1035
- }, null) : null, createVNode("span", {
1036
- "class": "button-content",
1037
- "ref": buttonContent
1038
- }, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a)])]), [[resolveDirective("devLoading"), showLoading]])]);
1015
+ }, null), createVNode("span", {
1016
+ "class": "button-content"
1017
+ }, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a)])]), [[resolveDirective("dLoading"), loading2.value]]);
1039
1018
  };
1040
1019
  }
1041
1020
  });
1042
- defineComponent(Loading);
1043
- Button.install = function(app) {
1044
- app.directive("dLoading", loadingDirective);
1045
- app.component(Button.name, Button);
1046
- };
1047
1021
  var index$1 = "";
1048
1022
  var TimePopup = defineComponent({
1049
1023
  name: "DTimePopup",