vxe-table 4.7.5 → 4.7.7
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/es/grid/src/grid.js +10 -9
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/custom/hook.js +8 -15
- package/es/table/module/custom/panel.js +166 -102
- package/es/table/module/edit/hook.js +11 -10
- package/es/table/module/export/hook.js +31 -11
- package/es/table/module/validator/hook.js +6 -5
- package/es/table/render/index.js +3 -2
- package/es/table/src/columnInfo.js +10 -8
- package/es/table/src/table.js +143 -85
- package/es/table/style.css +49 -12
- package/es/table/style.min.css +1 -1
- package/es/toolbar/src/toolbar.js +12 -11
- package/es/ui/index.js +6 -3
- package/es/ui/src/log.js +5 -0
- package/es/vxe-table/style.css +49 -12
- package/es/vxe-table/style.min.css +1 -1
- package/lib/grid/src/grid.js +9 -9
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +348 -206
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/custom/hook.js +8 -17
- package/lib/table/module/custom/hook.min.js +1 -1
- package/lib/table/module/custom/panel.js +96 -42
- package/lib/table/module/custom/panel.min.js +1 -1
- package/lib/table/module/edit/hook.js +10 -10
- package/lib/table/module/edit/hook.min.js +1 -1
- package/lib/table/module/export/hook.js +33 -12
- package/lib/table/module/export/hook.min.js +1 -1
- package/lib/table/module/validator/hook.js +6 -6
- package/lib/table/module/validator/hook.min.js +1 -1
- package/lib/table/render/index.js +3 -3
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/columnInfo.js +10 -9
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/table.js +149 -85
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/style/style.css +49 -12
- package/lib/table/style/style.min.css +1 -1
- package/lib/toolbar/src/toolbar.js +11 -11
- package/lib/toolbar/src/toolbar.min.js +1 -1
- package/lib/ui/index.js +6 -3
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +13 -0
- package/lib/ui/src/log.min.js +1 -0
- package/lib/vxe-table/style/style.css +49 -12
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/grid/src/grid.ts +10 -9
- package/packages/table/module/custom/hook.ts +10 -17
- package/packages/table/module/custom/panel.ts +166 -104
- package/packages/table/module/edit/hook.ts +11 -10
- package/packages/table/module/export/hook.ts +35 -13
- package/packages/table/module/validator/hook.ts +6 -5
- package/packages/table/render/index.ts +3 -2
- package/packages/table/src/columnInfo.ts +11 -8
- package/packages/table/src/table.ts +142 -85
- package/packages/toolbar/src/toolbar.ts +12 -11
- package/packages/ui/index.ts +4 -1
- package/packages/ui/src/log.ts +8 -0
- package/styles/components/table-module/custom.scss +45 -9
- package/styles/components/table.scss +1 -0
|
@@ -6,12 +6,12 @@ var _ui = require("../../../ui");
|
|
|
6
6
|
var _util = require("../../src/util");
|
|
7
7
|
var _utils = require("../../../ui/src/utils");
|
|
8
8
|
var _util2 = require("./util");
|
|
9
|
+
var _log = require("../../../ui/src/log");
|
|
9
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
11
|
const {
|
|
11
12
|
getI18n,
|
|
12
13
|
hooks,
|
|
13
|
-
renderer
|
|
14
|
-
log
|
|
14
|
+
renderer
|
|
15
15
|
} = _ui.VxeUI;
|
|
16
16
|
let htmlCellElem;
|
|
17
17
|
const csvBOM = '\ufeff';
|
|
@@ -1018,7 +1018,7 @@ hooks.add('tableExportModule', {
|
|
|
1018
1018
|
}, () => {
|
|
1019
1019
|
const reader = new FileReader();
|
|
1020
1020
|
reader.onerror = () => {
|
|
1021
|
-
|
|
1021
|
+
(0, _log.errLog)('vxe.error.notType', [type]);
|
|
1022
1022
|
_importReject({
|
|
1023
1023
|
status: false
|
|
1024
1024
|
});
|
|
@@ -1032,7 +1032,7 @@ hooks.add('tableExportModule', {
|
|
|
1032
1032
|
} else {
|
|
1033
1033
|
// 不支持的浏览器
|
|
1034
1034
|
if (process.env.NODE_ENV === 'development') {
|
|
1035
|
-
|
|
1035
|
+
(0, _log.errLog)('vxe.error.notExp');
|
|
1036
1036
|
}
|
|
1037
1037
|
_importResolve({
|
|
1038
1038
|
status: true
|
|
@@ -1293,7 +1293,7 @@ hooks.add('tableExportModule', {
|
|
|
1293
1293
|
// 检查类型,如果为自定义导出,则不需要校验类型
|
|
1294
1294
|
if (!opts.exportMethod && !_xeUtils.default.includes(_xeUtils.default.keys(exportOpts._typeMaps), type)) {
|
|
1295
1295
|
if (process.env.NODE_ENV === 'development') {
|
|
1296
|
-
|
|
1296
|
+
(0, _log.errLog)('vxe.error.notType', [type]);
|
|
1297
1297
|
}
|
|
1298
1298
|
const params = {
|
|
1299
1299
|
status: false
|
|
@@ -1323,7 +1323,7 @@ hooks.add('tableExportModule', {
|
|
|
1323
1323
|
} else if (mode === 'all') {
|
|
1324
1324
|
if (process.env.NODE_ENV === 'development') {
|
|
1325
1325
|
if (!$xeGrid) {
|
|
1326
|
-
|
|
1326
|
+
(0, _log.warnLog)('vxe.error.errProp', ['all', 'mode=current,selected']);
|
|
1327
1327
|
}
|
|
1328
1328
|
}
|
|
1329
1329
|
if ($xeGrid && !opts.remote) {
|
|
@@ -1343,7 +1343,7 @@ hooks.add('tableExportModule', {
|
|
|
1343
1343
|
const ajaxMethods = ajax.queryAll;
|
|
1344
1344
|
if (process.env.NODE_ENV === 'development') {
|
|
1345
1345
|
if (!ajaxMethods) {
|
|
1346
|
-
|
|
1346
|
+
(0, _log.warnLog)('vxe.error.notFunc', ['proxy-config.ajax.queryAll']);
|
|
1347
1347
|
}
|
|
1348
1348
|
}
|
|
1349
1349
|
if (ajaxMethods) {
|
|
@@ -1439,14 +1439,16 @@ hooks.add('tableExportModule', {
|
|
|
1439
1439
|
if (_ui.VxeUI.print) {
|
|
1440
1440
|
if (opts.content) {
|
|
1441
1441
|
resolve(_ui.VxeUI.print({
|
|
1442
|
-
|
|
1442
|
+
title: opts.sheetName,
|
|
1443
|
+
html: opts.content
|
|
1443
1444
|
}));
|
|
1444
1445
|
} else {
|
|
1445
1446
|
resolve(exportMethods.exportData(opts).then(({
|
|
1446
1447
|
content
|
|
1447
1448
|
}) => {
|
|
1448
1449
|
return _ui.VxeUI.print({
|
|
1449
|
-
|
|
1450
|
+
title: opts.sheetName,
|
|
1451
|
+
html: content
|
|
1450
1452
|
});
|
|
1451
1453
|
}));
|
|
1452
1454
|
}
|
|
@@ -1458,6 +1460,25 @@ hooks.add('tableExportModule', {
|
|
|
1458
1460
|
}
|
|
1459
1461
|
});
|
|
1460
1462
|
},
|
|
1463
|
+
getPrintHtml(options) {
|
|
1464
|
+
const printOpts = computePrintOpts.value;
|
|
1465
|
+
const opts = Object.assign({
|
|
1466
|
+
original: false
|
|
1467
|
+
// beforePrintMethod
|
|
1468
|
+
}, printOpts, options, {
|
|
1469
|
+
type: 'html',
|
|
1470
|
+
download: false,
|
|
1471
|
+
remote: false,
|
|
1472
|
+
print: true
|
|
1473
|
+
});
|
|
1474
|
+
return exportMethods.exportData(opts).then(({
|
|
1475
|
+
content
|
|
1476
|
+
}) => {
|
|
1477
|
+
return {
|
|
1478
|
+
html: content
|
|
1479
|
+
};
|
|
1480
|
+
});
|
|
1481
|
+
},
|
|
1461
1482
|
openImport(options) {
|
|
1462
1483
|
const {
|
|
1463
1484
|
treeConfig,
|
|
@@ -1490,7 +1511,7 @@ hooks.add('tableExportModule', {
|
|
|
1490
1511
|
return;
|
|
1491
1512
|
}
|
|
1492
1513
|
if (!importConfig) {
|
|
1493
|
-
|
|
1514
|
+
(0, _log.errLog)('vxe.error.reqProp', ['import-config']);
|
|
1494
1515
|
}
|
|
1495
1516
|
// 处理类型
|
|
1496
1517
|
const typeList = types.map(value => {
|
|
@@ -1520,7 +1541,7 @@ hooks.add('tableExportModule', {
|
|
|
1520
1541
|
const exportOpts = computeExportOpts.value;
|
|
1521
1542
|
if (process.env.NODE_ENV === 'development') {
|
|
1522
1543
|
if (!props.exportConfig) {
|
|
1523
|
-
|
|
1544
|
+
(0, _log.errLog)('vxe.error.reqProp', ['export-config']);
|
|
1524
1545
|
}
|
|
1525
1546
|
}
|
|
1526
1547
|
handleExportAndPrint(Object.assign({}, exportOpts, options));
|
|
@@ -1529,7 +1550,7 @@ hooks.add('tableExportModule', {
|
|
|
1529
1550
|
const printOpts = computePrintOpts.value;
|
|
1530
1551
|
if (process.env.NODE_ENV === 'development') {
|
|
1531
1552
|
if (!props.printConfig) {
|
|
1532
|
-
|
|
1553
|
+
(0, _log.errLog)('vxe.error.reqProp', ['print-config']);
|
|
1533
1554
|
}
|
|
1534
1555
|
}
|
|
1535
1556
|
handleExportAndPrint(Object.assign({}, printOpts, options), true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_util2=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,hooks,renderer,log}=_ui.VxeUI;let htmlCellElem;const csvBOM="\ufeff",enterSymbol="\r\n";function defaultFilterExportColumn(e){return e.property||-1<["seq","checkbox","radio"].indexOf(e.type)}const getConvertColumns=e=>{const t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1;const r=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{r(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,r(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};function toTableBorder(e){return!0===e?"full":e||"default"}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getFooterData(e,t){const l=e["footerFilterMethod"];return l?t.filter((e,t)=>l({items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function parseCsvAndTxt(e,t,r){t=t.split(enterSymbol);const o=[];let a=[];if(t.length){const n={},s=Date.now();t.forEach(e=>{if(e){const l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(s);return n[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(s);return n[l]=replaceTxtCell(t,n),l})).split(r);a.length?(e.forEach((e,t)=>{t<a.length&&(l[a[t]]=getTxtCellValue(e.trim(),n))}),o.push(l)):a=e.map(e=>getTxtCellValue(e.trim(),n))}})}return{fields:a,rows:o}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(e,t){var l,t=getElementsByTagName((new DOMParser).parseFromString(t,"text/html"),"body");const r=[],o=[];return t.length&&(t=getElementsByTagName(t[0],"table")).length&&(l=getElementsByTagName(t[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),e=>{o.push(e.textContent)})}),(l=getElementsByTagName(t[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{const l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{o[t]&&(l[o[t]]=e.textContent||"")}),r.push(l)}),{fields:o,rows:r}}function parseXML(e,t){var t=getElementsByTagName((new DOMParser).parseFromString(t,"application/xml"),"Worksheet");const r=[],o=[];return t.length&&(t=getElementsByTagName(t[0],"Table")).length&&(t=getElementsByTagName(t[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(t[0],"Cell"),e=>{o.push(e.textContent)}),_xeUtils.default.arrayEach(t,(e,t)=>{if(t){const l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{o[t]&&(l[o[t]]=e.textContent)}),r.push(l)}})),{fields:o,rows:r}}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function checkImportData(e,t){const l=[];return e.forEach(e=>{e=e.property;e&&l.push(e)}),t.some(e=>-1<l.indexOf(e))}const tableExportMethodKeys=["exportData","importByFile","importData","saveFile","readFile","print","openImport","openExport","openPrint"];hooks.add("tableExportModule",{setupTable(C){const{props:T,reactData:E,internalData:y}=C,{computeTreeOpts:k,computePrintOpts:r,computeExportOpts:$,computeImportOpts:d,computeCustomOpts:f,computeSeqOpts:a,computeRadioOpts:n,computeCheckboxOpts:s,computeColumnOpts:i}=C.getComputeMaps(),w=(0,_vue.inject)("$xeGrid",null),v=(e,t,l,r)=>{var o=a.value.seqMethod||l.seqMethod;return o?o({row:e,rowIndex:C.getRowIndex(e),$rowIndex:t,column:l,columnIndex:C.getColumnIndex(l),$columnIndex:r}):C.getRowSeq(e)};function j(e,t){var l=i.value,l=t.headerExportMethod||l.headerExportMethod;return l?l({column:t,options:e,$table:C}):(e.original?t.property:t.getTitle())||""}const b=e=>_xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e,c=(c,o,e)=>{const{isAllExpand:a,mode:p}=c;var t=T["treeConfig"];const u=n.value,h=s.value;var l=k.value;const m=i.value;if(htmlCellElem=htmlCellElem||document.createElement("div"),t){t=l.children||l.childrenField;const x=[],g=new Map;return _xeUtils.default.eachTree(e,(n,s,e,i,t,l)=>{const d=n._row||n;var r,n=t&&t._row?t._row:t;if(a||!n||g.has(n)&&C.isTreeExpandByRow(n)){t=d,r=(r=k.value).children||r.childrenField;t=t[r]&&t[r].length;const n={_row:d,_level:l.length-1,_hasChild:t,_expand:t&&C.isTreeExpandByRow(d)};o.forEach((e,t)=>{let l="";var r,o=e.editRender||e.cellRender;let a=e.exportMethod;if(a=(a=!a&&o&&o.name&&(o=renderer.get(o.name))?o.exportMethod:a)||m.exportMethod)l=a({$table:C,row:d,column:e,options:c});else switch(e.type){case"seq":l="all"===p?i.map((e,t)=>t%2==0?Number(e)+1:".").join(""):v(d,s,e,t);break;case"checkbox":l=b(C.isCheckedByCheckboxRow(d)),n._checkboxLabel=h.labelField?_xeUtils.default.get(d,h.labelField):"",n._checkboxDisabled=h.checkMethod&&!h.checkMethod({row:d});break;case"radio":l=b(C.isCheckedByRadioRow(d)),n._radioLabel=u.labelField?_xeUtils.default.get(d,u.labelField):"",n._radioDisabled=u.checkMethod&&!u.checkMethod({row:d});break;default:c.original?l=(0,_util.getCellValue)(d,e):(l=C.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(r=C.getCell(d,e))&&(l=r.innerText.trim()))}n[e.id]=_xeUtils.default.toValueString(l)}),g.set(d,1),x.push(Object.assign(n,d))}},{children:t}),x}return e.map((n,s)=>{const i={_row:n};return o.forEach((e,t)=>{let l="";var r,o=e.editRender||e.cellRender;let a=e.exportMethod;if(a=!a&&o&&o.name&&(o=renderer.get(o.name))?o.exportMethod:a)l=a({$table:C,row:n,column:e,options:c});else switch(e.type){case"seq":l="all"===p?s+1:v(n,s,e,t);break;case"checkbox":l=b(C.isCheckedByCheckboxRow(n)),i._checkboxLabel=h.labelField?_xeUtils.default.get(n,h.labelField):"",i._checkboxDisabled=h.checkMethod&&!h.checkMethod({row:n});break;case"radio":l=b(C.isCheckedByRadioRow(n)),i._radioLabel=u.labelField?_xeUtils.default.get(n,u.labelField):"",i._radioDisabled=u.checkMethod&&!u.checkMethod({row:n});break;default:c.original?l=(0,_util.getCellValue)(n,e):(l=C.getCellLabel(n,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(r=C.getCell(n,e))&&(l=r.innerText.trim()))}i[e.id]=_xeUtils.default.toValueString(l)}),i})},U=(e,t,l)=>{var r=i.value,o=l.editRender||l.cellRender;let a=l.footerExportMethod;a=(a=!a&&o&&o.name&&(o=renderer.get(o.name))?o.footerExportMethod:a)||r.footerExportMethod;o=C.getVTColumnIndex(l);return a?a({$table:C,items:t,itemIndex:o,row:t,_columnIndex:o,column:l,options:e}):_xeUtils.default.toValueString(t[o])},p=(l,e,t)=>{let r=csvBOM;return l.isHeader&&(r+=e.map(e=>toTxtCellLabel(j(l,e))).join(",")+enterSymbol),t.forEach(t=>{r+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),l.isFooter&&(t=E["footerTableData"],getFooterData(l,t).forEach(t=>{r+=e.map(e=>toTxtCellLabel(U(l,t,e))).join(",")+enterSymbol})),r},u=(l,e,t)=>{let r="";return l.isHeader&&(r+=e.map(e=>toTxtCellLabel(j(l,e))).join("\t")+enterSymbol),t.forEach(t=>{r+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),l.isFooter&&(t=E["footerTableData"],getFooterData(l,t).forEach(t=>{r+=e.map(e=>toTxtCellLabel(U(l,t,e))).join(",")+enterSymbol})),r},M=(e,t,l)=>{e=e[t],t=_xeUtils.default.isUndefined(e)||_xeUtils.default.isNull(e)?l:e;let r="title"===t||(!0===t||"tooltip"===t)||"ellipsis"===t;var{scrollXLoad:l,scrollYLoad:e}=E;return r=l||e?r||!0:r},h=(s,e,t)=>{const{id:d,border:l,treeConfig:r,headerAlign:i,align:c,footerAlign:a,showOverflow:p,showHeaderOverflow:u}=T,{isAllSelected:h,isIndeterminate:o,mergeList:m}=E,n=k.value,{print:x,isHeader:g,isFooter:f,isColgroup:v,isMerge:b,colgroups:_,original:y}=s,$="check-all";const w=[`<table class="${["vxe-table","border--"+toTableBorder(l),x?"is--print":"",g?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>`<col style="width:${e.renderWidth}px">`).join("")}</colgroup>`];g&&(w.push("<thead>"),v&&!y?_.forEach(e=>{w.push(`<tr>${e.map(t=>{var e=t.headerAlign||t.align||i||c,l=M(t,"showHeaderOverflow",u)?["col--ellipsis"]:[],r=j(s,t);let o=0,a=0;_xeUtils.default.eachTree([t],e=>{e.childNodes&&t.childNodes.length||a++,o+=e.renderWidth},{children:"childNodes"});var n=o-a;return e&&l.push("col--"+e),"checkbox"===t.type?`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}"><div ${x?"":`style="width: ${n}px"`}><input type="checkbox" class="${$}" ${h?"checked":""}><span>${r}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}" title="${r}"><div ${x?"":`style="width: ${n}px"`}><span>${(0,_utils.formatText)(r,!0)}</span></div></th>`}).join("")}</tr>`)}):w.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||i||c,l=M(e,"showHeaderOverflow",u)?["col--ellipsis"]:[],r=j(s,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" class="${$}" ${h?"checked":""}><span>${r}</span></div></th>`:`<th class="${l.join(" ")}" title="${r}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><span>${(0,_utils.formatText)(r,!0)}</span></div></th>`}).join("")}</tr>`),w.push("</thead>")),t.length&&(w.push("<tbody>"),r?t.forEach(o=>{w.push("<tr>"+e.map(t=>{var e=t.align||c,l=M(t,"showOverflow",p)?["col--ellipsis"]:[],r=o[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return o._hasChild&&(e=`<i class="${o._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${r}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*n.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${d}" ${o._radioDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${r}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*n.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${o._checkboxDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${r}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*n.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${r}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><input type="radio" name="radio_${d}" ${o._radioDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><input type="checkbox" ${o._checkboxDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${r}"><div ${x?"":`style="width: ${t.renderWidth}px"`}>${(0,_utils.formatText)(r,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(i=>{w.push("<tr>"+e.map(e=>{var t=e.align||c,l=M(e,"showOverflow",p)?["col--ellipsis"]:[],r=i[e.id];let o=1,a=1;if(b&&m.length){var n=C.getVTRowIndex(i._row),s=C.getVTColumnIndex(e),n=(0,_util.mergeBodyMethod)(m,n,s);if(n){var{rowspan:s,colspan:n}=n;if(!s||!n)return"";1<s&&(o=s),1<n&&(a=n)}}return t&&l.push("col--"+t),"radio"===e.type?`<td class="${l.join(" ")}" rowspan="${o}" colspan="${a}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="radio" name="radio_${d}" ${i._radioDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${i._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${l.join(" ")}" rowspan="${o}" colspan="${a}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" ${i._checkboxDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${i._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" rowspan="${o}" colspan="${a}" title="${r}"><div ${x?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(r,!0)}</div></td>`}).join("")+"</tr>")}),w.push("</tbody>")),f&&(t=E["footerTableData"],(t=getFooterData(s,t)).length)&&(w.push("<tfoot>"),t.forEach(o=>{w.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||a||c,l=M(e,"showOverflow",p)?["col--ellipsis"]:[],r=U(s,o,e);return t&&l.push("col--"+t),`<td class="${l.join(" ")}" title="${r}"><div ${x?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(r,!0)}</div></td>`}).join("")}</tr>`)}),w.push("</tfoot>"));t=!h&&o?`<script>(function(){var a=document.querySelector(".${$}");if(a){a.indeterminate=true}})()</script>`:"";return w.push("</table>",t),x?w.join(""):(0,_util2.createHtmlPage)(s,w.join(""))},m=(l,e,t)=>{let r=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",`<Worksheet ss:Name="${l.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return l.isHeader&&(r+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${j(l,e)}</Data></Cell>`).join("")}</Row>`),t.forEach(t=>{r+="<Row>"+e.map(e=>`<Cell><Data ss:Type="String">${t[e.id]}</Data></Cell>`).join("")+"</Row>"}),l.isFooter&&(t=E["footerTableData"],getFooterData(l,t).forEach(t=>{r+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${U(l,t,e)}</Data></Cell>`).join("")}</Row>`})),r+"</Table></Worksheet></Workbook>"},I=n=>{const{remote:l,columns:s,colgroups:r,exportMethod:o,afterExportMethod:t}=n;return new Promise(e=>{if(l){var t={options:n,$table:C,$grid:w};e(o?o(t):t)}else{const a=(e=>{const{columns:t,dataFilterMethod:l}=e;let r=e.data;return l&&(r=r.filter((e,t)=>l({row:e,$rowIndex:t}))),c(e,t,r)})(n);e(C.preventEvent(null,"event.export",{options:n,columns:s,colgroups:r,datas:a},()=>{var e=n,t=((e,t,l)=>{if(t.length)switch(e.type){case"csv":return p(e,t,l);case"txt":return u(e,t,l);case"html":return h(e,t,l);case"xml":return m(e,t,l)}return""})(n,s,a),{filename:l,type:r,download:o}=e;if(!o)return o=(0,_util2.getExportBlobByContent)(t,e),Promise.resolve({type:r,content:t,blob:o});_ui.VxeUI.saveFile&&_ui.VxeUI.saveFile({filename:l,type:r,content:t}).then(()=>{!1!==e.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"})})}))}}).then(e=>(clearColumnConvert(s),n.print||t&&t({status:!0,options:n,$table:C,$grid:w}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(s),n.print||t&&t({status:!1,options:n,$table:C,$grid:w});return Promise.reject({status:!1})})},x=(a,n)=>{const{importMethod:s,afterImportMethod:t}=n,{type:i,filename:c}=(0,_utils.parseFile)(a);var e=d.value;return s||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),i)?new Promise((t,l)=>{const e=e=>{t(e),y._importResolve=null,y._importReject=null},r=e=>{l(e),y._importResolve=null,y._importReject=null};if(y._importResolve=e,y._importReject=r,window.FileReader){const d=Object.assign({mode:"insert"},n,{type:i,filename:c});var o;d.remote?s?Promise.resolve(s({file:a,options:d,$table:C})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(o=y["tableFullColumn"],C.preventEvent(null,"event.import",{file:a,options:d,columns:o},()=>{var e=new FileReader;e.onerror=()=>{log.err("vxe.error.notType",[i]),r({status:!1})},e.onload=t=>{{var l=t.target.result,r=d;const{tableFullColumn:o,_importResolve:a,_importReject:n}=y;let e={fields:[],rows:[]};switch(r.type){case"csv":e=parseCsv(o,l);break;case"txt":e=parseTxt(o,l);break;case"html":e=parseHTML(o,l);break;case"xml":e=parseXML(o,l)}const{fields:s,rows:i}=e;checkImportData(o,s)?C.createData(i).then(e=>{let t;return t="insert"===r.mode?C.insert(e):C.reloadData(e),!1!==r.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[i.length]),status:"success"}),t.then(()=>{a&&a({status:!0})})}):!1!==r.message&&(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),n)&&n({status:!1})}},e.readAsText(a,d.encoding||"UTF-8")}))}else"development"===process.env.NODE_ENV&&log.err("vxe.error.notExp"),e({status:!0})}).then(()=>{t&&t({status:!0,options:n,$table:C})}).catch(e=>(t&&t({status:!1,options:n,$table:C}),Promise.reject(e))):(!1!==n.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[i]),status:"error"}),Promise.reject({status:!1}))},l=(e,t)=>{var{treeConfig:l,showHeader:r,showFooter:o}=T,{initStore:a,mergeList:n,isGroup:s,footerTableData:i,exportStore:d,exportParams:c}=E,p=y["collectColumn"],u=$.value,h=f.value,m=C.getCheckboxRecords(),i=!!i.length,n=!l&&n.length,r=Object.assign({message:!0,isHeader:r,isFooter:o},e),o=r.types||_xeUtils.default.keys(u._typeMaps),e=r.modes;const x=h.checkMethod;u=p.slice(0);const g=r["columns"];h=o.map(e=>({value:e,label:"vxe.export.types."+e})),p=e.map(e=>({value:e,label:"vxe.export.modes."+e}));return _xeUtils.default.eachTree(u,(r,e,t,l,o)=>{(r.children&&r.children.length||defaultFilterExportColumn(r))&&(r.checked=g?g.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?r===e:_xeUtils.default.isString(e)?r.field===e:(t=e.id||e.colId,l=e.type,e=e.property||e.field,t?r.id===t:e&&l?r.property===e&&r.type===l:e?r.property===e:!!l&&r.type===l)}):r.visible,r.halfChecked=!1,r.disabled=o&&o.disabled||!!x&&!x({column:r}))}),Object.assign(d,{columns:u,typeList:h,modeList:p,hasFooter:i,hasMerge:n,hasTree:l,isPrint:t,hasColgroup:s,visible:!0}),Object.assign(c,{mode:m.length?"selected":"current"},r),-1===e.indexOf(c.mode)&&(c.mode=e[0]),-1===o.indexOf(c.type)&&(c.type=o[0]),a.export=!0,(0,_vue.nextTick)()},o={exportData(e){var t=T["treeConfig"],{isGroup:l,tableGroupColumn:r}=E;const{tableFullColumn:a,afterFullData:o}=y;var n=$.value,s=k.value;const i=Object.assign({isHeader:!0,isFooter:!0,isColgroup:!0,download:!0,type:"csv",mode:"current"},n,{print:!1},e);var{type:e,mode:d,columns:c,original:p,beforeExportMethod:u}=i;let h=[];c=c&&c.length?c:null;let m=i.columnFilterMethod;c||(m=m||(p?({column:e})=>e.property:({column:e})=>defaultFilterExportColumn(e))),h=c?(i._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(c,e=>{let t;if(e){if((0,_util.isColumnInfo)(e))t=e;else if(_xeUtils.default.isString(e))t=C.getColumnByField(e);else{var l=e.id||e.colId;const r=e.type,o=e.property||e.field;l?t=C.getColumnById(l):o&&r?t=a.find(e=>e.property===o&&e.type===r):o?t=C.getColumnByField(o):r&&(t=a.find(e=>e.type===r))}return t||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!m||m({column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(l?r:a,(e,t)=>e.visible&&(!m||m({column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0});const x=[];if(_xeUtils.default.eachTree(h,e=>{e.children&&e.children.length||x.push(e)},{children:"childNodes"}),i.columns=x,i.colgroups=convertToRows(h),i.filename||(i.filename=getI18n(i.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),i.sheetName||(i.sheetName=document.title),!i.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(n._typeMaps),e))return"development"===process.env.NODE_ENV&&log.err("vxe.error.notType",[e]),Promise.reject({status:!1});if(i.print||u&&u({options:i,$table:C,$grid:w}),!i.data)if(i.data=o,"selected"===d){const g=C.getCheckboxRecords();-1<["html","pdf"].indexOf(e)&&t?i.data=_xeUtils.default.searchTree(C.getTableData().fullData,e=>-1<C.findRowIndexOf(g,e),Object.assign({},s,{data:"_row"})):i.data=g}else if("all"===d&&("development"!==process.env.NODE_ENV||w||log.warn("vxe.error.errProp",["all","mode=current,selected"]),w)&&!i.remote){p=w["reactData"],c=w.getComputeMaps()["computeProxyOpts"];const{beforeQueryAll:f,afterQueryAll:v,ajax:b={},props:T={}}=c.value;l=b.queryAll;if("development"!==process.env.NODE_ENV||l||log.warn("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),l){const _={$table:C,$grid:w,sort:p.sortData,filters:p.filterData,form:p.formData,target:l,options:i};return Promise.resolve((f||l)(_)).catch(e=>e).then(e=>(i.data=(T.list?_xeUtils.default.get(e,T.list):e)||[],v&&v(_),I(i)))}}return I(i)},importByFile(e,t){var t=Object.assign({},t),l=t["beforeImportMethod"];return l&&l({options:t,$table:C}),x(e,t)},importData(e){var t=d.value;const l=Object.assign({types:_xeUtils.default.keys(t._typeMaps)},t,e),{beforeImportMethod:r,afterImportMethod:o}=l;return r&&r({options:l,$table:C}),_ui.VxeUI.readFile(l).catch(e=>(o&&o({status:!1,options:l,$table:C}),Promise.reject(e))).then(e=>{e=e.file;return x(e,l)})},saveFile(e){return _ui.VxeUI.saveFile(e)},readFile(e){return _ui.VxeUI.readFile(e)},print(e){var t=r.value;const l=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return l.sheetName||(l.sheetName=document.title),new Promise((e,t)=>{_ui.VxeUI.print?l.content?e(_ui.VxeUI.print({content:l.content})):e(o.exportData(l).then(({content:e})=>_ui.VxeUI.print({content:e}))):t({status:!1})})},openImport(e){var{treeConfig:t,importConfig:l}=T,{initStore:r,importStore:o,importParams:a}=E,n=d.value,e=Object.assign({mode:"insert",message:!0,types:_xeUtils.default.keys(n._typeMaps)},e,n),n=e["types"];!t?(l||log.err("vxe.error.reqProp",["import-config"]),t=n.map(e=>({value:e,label:"vxe.export.types."+e})),l=e.modes.map(e=>({value:e,label:"vxe.import.modes."+e})),Object.assign(o,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(a,e),r.import=!0):e.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},openExport(e){var t=$.value;"development"!==process.env.NODE_ENV||T.exportConfig||log.err("vxe.error.reqProp",["export-config"]),l(Object.assign({},t,e))},openPrint(e){var t=r.value;"development"!==process.env.NODE_ENV||T.printConfig||log.err("vxe.error.reqProp",["print-config"]),l(Object.assign({},t,e),!0)}};return o},setupGrid(e){return e.extendTableMethods(tableExportMethodKeys)}});
|
|
1
|
+
"use strict";var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_util2=require("./util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,hooks,renderer}=_ui.VxeUI;let htmlCellElem;const csvBOM="\ufeff",enterSymbol="\r\n";function defaultFilterExportColumn(e){return e.property||-1<["seq","checkbox","radio"].indexOf(e.type)}const getConvertColumns=e=>{const t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1;const o=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{o(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,o(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};function toTableBorder(e){return!0===e?"full":e||"default"}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getFooterData(e,t){const l=e["footerFilterMethod"];return l?t.filter((e,t)=>l({items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function parseCsvAndTxt(e,t,o){t=t.split(enterSymbol);const r=[];let a=[];if(t.length){const n={},i=Date.now();t.forEach(e=>{if(e){const l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(i);return n[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(i);return n[l]=replaceTxtCell(t,n),l})).split(o);a.length?(e.forEach((e,t)=>{t<a.length&&(l[a[t]]=getTxtCellValue(e.trim(),n))}),r.push(l)):a=e.map(e=>getTxtCellValue(e.trim(),n))}})}return{fields:a,rows:r}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(e,t){var l,t=getElementsByTagName((new DOMParser).parseFromString(t,"text/html"),"body");const o=[],r=[];return t.length&&(t=getElementsByTagName(t[0],"table")).length&&(l=getElementsByTagName(t[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),e=>{r.push(e.textContent)})}),(l=getElementsByTagName(t[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{const l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{r[t]&&(l[r[t]]=e.textContent||"")}),o.push(l)}),{fields:r,rows:o}}function parseXML(e,t){var t=getElementsByTagName((new DOMParser).parseFromString(t,"application/xml"),"Worksheet");const o=[],r=[];return t.length&&(t=getElementsByTagName(t[0],"Table")).length&&(t=getElementsByTagName(t[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(t[0],"Cell"),e=>{r.push(e.textContent)}),_xeUtils.default.arrayEach(t,(e,t)=>{if(t){const l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{r[t]&&(l[r[t]]=e.textContent)}),o.push(l)}})),{fields:r,rows:o}}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function checkImportData(e,t){const l=[];return e.forEach(e=>{e=e.property;e&&l.push(e)}),t.some(e=>-1<l.indexOf(e))}const tableExportMethodKeys=["exportData","importByFile","importData","saveFile","readFile","print","openImport","openExport","openPrint"];hooks.add("tableExportModule",{setupTable(C){const{props:T,reactData:E,internalData:y}=C,{computeTreeOpts:k,computePrintOpts:o,computeExportOpts:$,computeImportOpts:d,computeCustomOpts:f,computeSeqOpts:a,computeRadioOpts:n,computeCheckboxOpts:i,computeColumnOpts:s}=C.getComputeMaps(),w=(0,_vue.inject)("$xeGrid",null),v=(e,t,l,o)=>{var r=a.value.seqMethod||l.seqMethod;return r?r({row:e,rowIndex:C.getRowIndex(e),$rowIndex:t,column:l,columnIndex:C.getColumnIndex(l),$columnIndex:o}):C.getRowSeq(e)};function j(e,t){var l=s.value,l=t.headerExportMethod||l.headerExportMethod;return l?l({column:t,options:e,$table:C}):(e.original?t.property:t.getTitle())||""}const b=e=>_xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e,c=(c,r,e)=>{const{isAllExpand:a,mode:p}=c;var t=T["treeConfig"];const u=n.value,h=i.value;var l=k.value;const m=s.value;if(htmlCellElem=htmlCellElem||document.createElement("div"),t){t=l.children||l.childrenField;const x=[],g=new Map;return _xeUtils.default.eachTree(e,(n,i,e,s,t,l)=>{const d=n._row||n;var o,n=t&&t._row?t._row:t;if(a||!n||g.has(n)&&C.isTreeExpandByRow(n)){t=d,o=(o=k.value).children||o.childrenField;t=t[o]&&t[o].length;const n={_row:d,_level:l.length-1,_hasChild:t,_expand:t&&C.isTreeExpandByRow(d)};r.forEach((e,t)=>{let l="";var o,r=e.editRender||e.cellRender;let a=e.exportMethod;if(a=(a=!a&&r&&r.name&&(r=renderer.get(r.name))?r.exportMethod:a)||m.exportMethod)l=a({$table:C,row:d,column:e,options:c});else switch(e.type){case"seq":l="all"===p?s.map((e,t)=>t%2==0?Number(e)+1:".").join(""):v(d,i,e,t);break;case"checkbox":l=b(C.isCheckedByCheckboxRow(d)),n._checkboxLabel=h.labelField?_xeUtils.default.get(d,h.labelField):"",n._checkboxDisabled=h.checkMethod&&!h.checkMethod({row:d});break;case"radio":l=b(C.isCheckedByRadioRow(d)),n._radioLabel=u.labelField?_xeUtils.default.get(d,u.labelField):"",n._radioDisabled=u.checkMethod&&!u.checkMethod({row:d});break;default:c.original?l=(0,_util.getCellValue)(d,e):(l=C.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(o=C.getCell(d,e))&&(l=o.innerText.trim()))}n[e.id]=_xeUtils.default.toValueString(l)}),g.set(d,1),x.push(Object.assign(n,d))}},{children:t}),x}return e.map((n,i)=>{const s={_row:n};return r.forEach((e,t)=>{let l="";var o,r=e.editRender||e.cellRender;let a=e.exportMethod;if(a=!a&&r&&r.name&&(r=renderer.get(r.name))?r.exportMethod:a)l=a({$table:C,row:n,column:e,options:c});else switch(e.type){case"seq":l="all"===p?i+1:v(n,i,e,t);break;case"checkbox":l=b(C.isCheckedByCheckboxRow(n)),s._checkboxLabel=h.labelField?_xeUtils.default.get(n,h.labelField):"",s._checkboxDisabled=h.checkMethod&&!h.checkMethod({row:n});break;case"radio":l=b(C.isCheckedByRadioRow(n)),s._radioLabel=u.labelField?_xeUtils.default.get(n,u.labelField):"",s._radioDisabled=u.checkMethod&&!u.checkMethod({row:n});break;default:c.original?l=(0,_util.getCellValue)(n,e):(l=C.getCellLabel(n,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(o=C.getCell(n,e))&&(l=o.innerText.trim()))}s[e.id]=_xeUtils.default.toValueString(l)}),s})},U=(e,t,l)=>{var o=s.value,r=l.editRender||l.cellRender;let a=l.footerExportMethod;a=(a=!a&&r&&r.name&&(r=renderer.get(r.name))?r.footerExportMethod:a)||o.footerExportMethod;r=C.getVTColumnIndex(l);return a?a({$table:C,items:t,itemIndex:r,row:t,_columnIndex:r,column:l,options:e}):_xeUtils.default.toValueString(t[r])},p=(l,e,t)=>{let o=csvBOM;return l.isHeader&&(o+=e.map(e=>toTxtCellLabel(j(l,e))).join(",")+enterSymbol),t.forEach(t=>{o+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),l.isFooter&&(t=E["footerTableData"],getFooterData(l,t).forEach(t=>{o+=e.map(e=>toTxtCellLabel(U(l,t,e))).join(",")+enterSymbol})),o},u=(l,e,t)=>{let o="";return l.isHeader&&(o+=e.map(e=>toTxtCellLabel(j(l,e))).join("\t")+enterSymbol),t.forEach(t=>{o+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),l.isFooter&&(t=E["footerTableData"],getFooterData(l,t).forEach(t=>{o+=e.map(e=>toTxtCellLabel(U(l,t,e))).join(",")+enterSymbol})),o},M=(e,t,l)=>{e=e[t],t=_xeUtils.default.isUndefined(e)||_xeUtils.default.isNull(e)?l:e;let o="title"===t||(!0===t||"tooltip"===t)||"ellipsis"===t;var{scrollXLoad:l,scrollYLoad:e}=E;return o=l||e?o||!0:o},h=(i,e,t)=>{const{id:d,border:l,treeConfig:o,headerAlign:s,align:c,footerAlign:a,showOverflow:p,showHeaderOverflow:u}=T,{isAllSelected:h,isIndeterminate:r,mergeList:m}=E,n=k.value,{print:x,isHeader:g,isFooter:f,isColgroup:v,isMerge:b,colgroups:_,original:y}=i,$="check-all";const w=[`<table class="${["vxe-table","border--"+toTableBorder(l),x?"is--print":"",g?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>`<col style="width:${e.renderWidth}px">`).join("")}</colgroup>`];g&&(w.push("<thead>"),v&&!y?_.forEach(e=>{w.push(`<tr>${e.map(t=>{var e=t.headerAlign||t.align||s||c,l=M(t,"showHeaderOverflow",u)?["col--ellipsis"]:[],o=j(i,t);let r=0,a=0;_xeUtils.default.eachTree([t],e=>{e.childNodes&&t.childNodes.length||a++,r+=e.renderWidth},{children:"childNodes"});var n=r-a;return e&&l.push("col--"+e),"checkbox"===t.type?`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}"><div ${x?"":`style="width: ${n}px"`}><input type="checkbox" class="${$}" ${h?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}" title="${o}"><div ${x?"":`style="width: ${n}px"`}><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`)}):w.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||s||c,l=M(e,"showHeaderOverflow",u)?["col--ellipsis"]:[],o=j(i,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" class="${$}" ${h?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`),w.push("</thead>")),t.length&&(w.push("<tbody>"),o?t.forEach(r=>{w.push("<tr>"+e.map(t=>{var e=t.align||c,l=M(t,"showOverflow",p)?["col--ellipsis"]:[],o=r[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return r._hasChild&&(e=`<i class="${r._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*n.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*n.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*n.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${o}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(s=>{w.push("<tr>"+e.map(e=>{var t=e.align||c,l=M(e,"showOverflow",p)?["col--ellipsis"]:[],o=s[e.id];let r=1,a=1;if(b&&m.length){var n=C.getVTRowIndex(s._row),i=C.getVTColumnIndex(e),n=(0,_util.mergeBodyMethod)(m,n,i);if(n){var{rowspan:i,colspan:n}=n;if(!i||!n)return"";1<i&&(r=i),1<n&&(a=n)}}return t&&l.push("col--"+t),"radio"===e.type?`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="radio" name="radio_${d}" ${s._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${s._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" ${s._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${s._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}),w.push("</tbody>")),f&&(t=E["footerTableData"],(t=getFooterData(i,t)).length)&&(w.push("<tfoot>"),t.forEach(r=>{w.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||a||c,l=M(e,"showOverflow",p)?["col--ellipsis"]:[],o=U(i,r,e);return t&&l.push("col--"+t),`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")}</tr>`)}),w.push("</tfoot>"));t=!h&&r?`<script>(function(){var a=document.querySelector(".${$}");if(a){a.indeterminate=true}})()</script>`:"";return w.push("</table>",t),x?w.join(""):(0,_util2.createHtmlPage)(i,w.join(""))},m=(l,e,t)=>{let o=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",`<Worksheet ss:Name="${l.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return l.isHeader&&(o+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${j(l,e)}</Data></Cell>`).join("")}</Row>`),t.forEach(t=>{o+="<Row>"+e.map(e=>`<Cell><Data ss:Type="String">${t[e.id]}</Data></Cell>`).join("")+"</Row>"}),l.isFooter&&(t=E["footerTableData"],getFooterData(l,t).forEach(t=>{o+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${U(l,t,e)}</Data></Cell>`).join("")}</Row>`})),o+"</Table></Worksheet></Workbook>"},D=n=>{const{remote:l,columns:i,colgroups:o,exportMethod:r,afterExportMethod:t}=n;return new Promise(e=>{if(l){var t={options:n,$table:C,$grid:w};e(r?r(t):t)}else{const a=(e=>{const{columns:t,dataFilterMethod:l}=e;let o=e.data;return l&&(o=o.filter((e,t)=>l({row:e,$rowIndex:t}))),c(e,t,o)})(n);e(C.preventEvent(null,"event.export",{options:n,columns:i,colgroups:o,datas:a},()=>{var e=n,t=((e,t,l)=>{if(t.length)switch(e.type){case"csv":return p(e,t,l);case"txt":return u(e,t,l);case"html":return h(e,t,l);case"xml":return m(e,t,l)}return""})(n,i,a),{filename:l,type:o,download:r}=e;if(!r)return r=(0,_util2.getExportBlobByContent)(t,e),Promise.resolve({type:o,content:t,blob:r});_ui.VxeUI.saveFile&&_ui.VxeUI.saveFile({filename:l,type:o,content:t}).then(()=>{!1!==e.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"})})}))}}).then(e=>(clearColumnConvert(i),n.print||t&&t({status:!0,options:n,$table:C,$grid:w}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(i),n.print||t&&t({status:!1,options:n,$table:C,$grid:w});return Promise.reject({status:!1})})},x=(a,n)=>{const{importMethod:i,afterImportMethod:t}=n,{type:s,filename:c}=(0,_utils.parseFile)(a);var e=d.value;return i||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),s)?new Promise((t,l)=>{const e=e=>{t(e),y._importResolve=null,y._importReject=null},o=e=>{l(e),y._importResolve=null,y._importReject=null};if(y._importResolve=e,y._importReject=o,window.FileReader){const d=Object.assign({mode:"insert"},n,{type:s,filename:c});var r;d.remote?i?Promise.resolve(i({file:a,options:d,$table:C})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(r=y["tableFullColumn"],C.preventEvent(null,"event.import",{file:a,options:d,columns:r},()=>{var e=new FileReader;e.onerror=()=>{(0,_log.errLog)("vxe.error.notType",[s]),o({status:!1})},e.onload=t=>{{var l=t.target.result,o=d;const{tableFullColumn:r,_importResolve:a,_importReject:n}=y;let e={fields:[],rows:[]};switch(o.type){case"csv":e=parseCsv(r,l);break;case"txt":e=parseTxt(r,l);break;case"html":e=parseHTML(r,l);break;case"xml":e=parseXML(r,l)}const{fields:i,rows:s}=e;checkImportData(r,i)?C.createData(s).then(e=>{let t;return t="insert"===o.mode?C.insert(e):C.reloadData(e),!1!==o.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[s.length]),status:"success"}),t.then(()=>{a&&a({status:!0})})}):!1!==o.message&&(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),n)&&n({status:!1})}},e.readAsText(a,d.encoding||"UTF-8")}))}else"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notExp"),e({status:!0})}).then(()=>{t&&t({status:!0,options:n,$table:C})}).catch(e=>(t&&t({status:!1,options:n,$table:C}),Promise.reject(e))):(!1!==n.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[s]),status:"error"}),Promise.reject({status:!1}))},l=(e,t)=>{var{treeConfig:l,showHeader:o,showFooter:r}=T,{initStore:a,mergeList:n,isGroup:i,footerTableData:s,exportStore:d,exportParams:c}=E,p=y["collectColumn"],u=$.value,h=f.value,m=C.getCheckboxRecords(),s=!!s.length,n=!l&&n.length,o=Object.assign({message:!0,isHeader:o,isFooter:r},e),r=o.types||_xeUtils.default.keys(u._typeMaps),e=o.modes;const x=h.checkMethod;u=p.slice(0);const g=o["columns"];h=r.map(e=>({value:e,label:"vxe.export.types."+e})),p=e.map(e=>({value:e,label:"vxe.export.modes."+e}));return _xeUtils.default.eachTree(u,(o,e,t,l,r)=>{(o.children&&o.children.length||defaultFilterExportColumn(o))&&(o.checked=g?g.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?o===e:_xeUtils.default.isString(e)?o.field===e:(t=e.id||e.colId,l=e.type,e=e.property||e.field,t?o.id===t:e&&l?o.property===e&&o.type===l:e?o.property===e:!!l&&o.type===l)}):o.visible,o.halfChecked=!1,o.disabled=r&&r.disabled||!!x&&!x({column:o}))}),Object.assign(d,{columns:u,typeList:h,modeList:p,hasFooter:s,hasMerge:n,hasTree:l,isPrint:t,hasColgroup:i,visible:!0}),Object.assign(c,{mode:m.length?"selected":"current"},o),-1===e.indexOf(c.mode)&&(c.mode=e[0]),-1===r.indexOf(c.type)&&(c.type=r[0]),a.export=!0,(0,_vue.nextTick)()},r={exportData(e){var t=T["treeConfig"],{isGroup:l,tableGroupColumn:o}=E;const{tableFullColumn:a,afterFullData:r}=y;var n=$.value,i=k.value;const s=Object.assign({isHeader:!0,isFooter:!0,isColgroup:!0,download:!0,type:"csv",mode:"current"},n,{print:!1},e);var{type:e,mode:d,columns:c,original:p,beforeExportMethod:u}=s;let h=[];c=c&&c.length?c:null;let m=s.columnFilterMethod;c||(m=m||(p?({column:e})=>e.property:({column:e})=>defaultFilterExportColumn(e))),h=c?(s._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(c,e=>{let t;if(e){if((0,_util.isColumnInfo)(e))t=e;else if(_xeUtils.default.isString(e))t=C.getColumnByField(e);else{var l=e.id||e.colId;const o=e.type,r=e.property||e.field;l?t=C.getColumnById(l):r&&o?t=a.find(e=>e.property===r&&e.type===o):r?t=C.getColumnByField(r):o&&(t=a.find(e=>e.type===o))}return t||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!m||m({column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(l?o:a,(e,t)=>e.visible&&(!m||m({column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0});const x=[];if(_xeUtils.default.eachTree(h,e=>{e.children&&e.children.length||x.push(e)},{children:"childNodes"}),s.columns=x,s.colgroups=convertToRows(h),s.filename||(s.filename=getI18n(s.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),s.sheetName||(s.sheetName=document.title),!s.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(n._typeMaps),e))return"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notType",[e]),Promise.reject({status:!1});if(s.print||u&&u({options:s,$table:C,$grid:w}),!s.data)if(s.data=r,"selected"===d){const g=C.getCheckboxRecords();-1<["html","pdf"].indexOf(e)&&t?s.data=_xeUtils.default.searchTree(C.getTableData().fullData,e=>-1<C.findRowIndexOf(g,e),Object.assign({},i,{data:"_row"})):s.data=g}else if("all"===d&&("development"!==process.env.NODE_ENV||w||(0,_log.warnLog)("vxe.error.errProp",["all","mode=current,selected"]),w)&&!s.remote){p=w["reactData"],c=w.getComputeMaps()["computeProxyOpts"];const{beforeQueryAll:f,afterQueryAll:v,ajax:b={},props:T={}}=c.value;l=b.queryAll;if("development"!==process.env.NODE_ENV||l||(0,_log.warnLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),l){const _={$table:C,$grid:w,sort:p.sortData,filters:p.filterData,form:p.formData,target:l,options:s};return Promise.resolve((f||l)(_)).catch(e=>e).then(e=>(s.data=(T.list?_xeUtils.default.get(e,T.list):e)||[],v&&v(_),D(s)))}}return D(s)},importByFile(e,t){var t=Object.assign({},t),l=t["beforeImportMethod"];return l&&l({options:t,$table:C}),x(e,t)},importData(e){var t=d.value;const l=Object.assign({types:_xeUtils.default.keys(t._typeMaps)},t,e),{beforeImportMethod:o,afterImportMethod:r}=l;return o&&o({options:l,$table:C}),_ui.VxeUI.readFile(l).catch(e=>(r&&r({status:!1,options:l,$table:C}),Promise.reject(e))).then(e=>{e=e.file;return x(e,l)})},saveFile(e){return _ui.VxeUI.saveFile(e)},readFile(e){return _ui.VxeUI.readFile(e)},print(e){var t=o.value;const l=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return l.sheetName||(l.sheetName=document.title),new Promise((e,t)=>{_ui.VxeUI.print?l.content?e(_ui.VxeUI.print({title:l.sheetName,html:l.content})):e(r.exportData(l).then(({content:e})=>_ui.VxeUI.print({title:l.sheetName,html:e}))):t({status:!1})})},getPrintHtml(e){var t=o.value,t=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return r.exportData(t).then(({content:e})=>({html:e}))},openImport(e){var{treeConfig:t,importConfig:l}=T,{initStore:o,importStore:r,importParams:a}=E,n=d.value,e=Object.assign({mode:"insert",message:!0,types:_xeUtils.default.keys(n._typeMaps)},e,n),n=e["types"];!t?(l||(0,_log.errLog)("vxe.error.reqProp",["import-config"]),t=n.map(e=>({value:e,label:"vxe.export.types."+e})),l=e.modes.map(e=>({value:e,label:"vxe.import.modes."+e})),Object.assign(r,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(a,e),o.import=!0):e.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},openExport(e){var t=$.value;"development"!==process.env.NODE_ENV||T.exportConfig||(0,_log.errLog)("vxe.error.reqProp",["export-config"]),l(Object.assign({},t,e))},openPrint(e){var t=o.value;"development"!==process.env.NODE_ENV||T.printConfig||(0,_log.errLog)("vxe.error.reqProp",["print-config"]),l(Object.assign({},t,e),!0)}};return r},setupGrid(e){return e.extendTableMethods(tableExportMethodKeys)}});
|
|
@@ -6,12 +6,12 @@ var _ui = require("../../../ui");
|
|
|
6
6
|
var _utils = require("../../../ui/src/utils");
|
|
7
7
|
var _dom = require("../../../ui/src/dom");
|
|
8
8
|
var _util = require("../../src/util");
|
|
9
|
+
var _log = require("../../../ui/src/log");
|
|
9
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
11
|
const {
|
|
11
12
|
getConfig,
|
|
12
13
|
validators,
|
|
13
|
-
hooks
|
|
14
|
-
log
|
|
14
|
+
hooks
|
|
15
15
|
} = _ui.VxeUI;
|
|
16
16
|
/**
|
|
17
17
|
* 校验规则
|
|
@@ -251,7 +251,7 @@ hooks.add('tableValidatorModule', {
|
|
|
251
251
|
fullValidate(rows, cb) {
|
|
252
252
|
if (process.env.NODE_ENV === 'development') {
|
|
253
253
|
if (_xeUtils.default.isFunction(cb)) {
|
|
254
|
-
|
|
254
|
+
(0, _log.warnLog)('vxe.error.notValidators', ['fullValidate(rows, callback)', 'fullValidate(rows)']);
|
|
255
255
|
}
|
|
256
256
|
}
|
|
257
257
|
return beginValidate(rows, cb, true);
|
|
@@ -262,7 +262,7 @@ hooks.add('tableValidatorModule', {
|
|
|
262
262
|
validate(rows, cb) {
|
|
263
263
|
if (process.env.NODE_ENV === 'development') {
|
|
264
264
|
if (_xeUtils.default.isFunction(cb)) {
|
|
265
|
-
|
|
265
|
+
(0, _log.warnLog)('vxe.error.notValidators', ['validate(rows, callback)', 'validate(rows)']);
|
|
266
266
|
}
|
|
267
267
|
}
|
|
268
268
|
return beginValidate(rows, cb);
|
|
@@ -397,12 +397,12 @@ hooks.add('tableValidatorModule', {
|
|
|
397
397
|
customValid = gvItem.cellValidatorMethod(validParams);
|
|
398
398
|
} else {
|
|
399
399
|
if (process.env.NODE_ENV === 'development') {
|
|
400
|
-
|
|
400
|
+
(0, _log.warnLog)('vxe.error.notValidators', [validator]);
|
|
401
401
|
}
|
|
402
402
|
}
|
|
403
403
|
} else {
|
|
404
404
|
if (process.env.NODE_ENV === 'development') {
|
|
405
|
-
|
|
405
|
+
(0, _log.errLog)('vxe.error.notValidators', [validator]);
|
|
406
406
|
}
|
|
407
407
|
}
|
|
408
408
|
} else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_util=require("../../src/util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getConfig,validators,hooks
|
|
1
|
+
"use strict";var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_util=require("../../src/util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getConfig,validators,hooks}=_ui.VxeUI;class Rule{constructor(e){Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.max,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}get content(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}get message(){return this.content}}const tableValidatorMethodKeys=["fullValidate","validate","clearValidate"];hooks.add("tableValidatorModule",{setupTable(v){const{props:f,reactData:m,internalData:h}=v,g=v.getRefMaps()["refValidTooltip"],{computeValidOpts:_,computeTreeOpts:x,computeEditOpts:u}=v.getComputeMaps();let w={},R={},V;const l=(e,u,i)=>{const d={},{editRules:t,treeConfig:l}=f,{afterFullData:c,visibleColumn:g}=h;var r=x.value,r=r.children||r.childrenField;const p=_.value;let a;!0===e?a=c:e&&(_xeUtils.default.isFunction(e)?u=e:a=_xeUtils.default.isArray(e)?e:[e]),a=a||(v.getInsertRecords?v.getInsertRecords().concat(v.getUpdateRecords()):[]);const o=[],s=(h._lastCallTime=Date.now(),V=!1,w.clearValidate(),{});if(t){const n=v.getColumns();e=r=>{if(i||!V){const e=[];n.forEach(l=>{!i&&V||!_xeUtils.default.has(t,l.property)||e.push(R.validCellRules("all",r,l).catch(({rule:e,rules:t})=>{t={rule:e,rules:t,rowIndex:v.getRowIndex(r),row:r,columnIndex:v.getColumnIndex(l),column:l,field:l.property,$table:v};if(d[l.property]||(d[l.property]=[]),s[(0,_util.getRowid)(v,r)+":"+l.id]={column:l,row:r,rule:e,content:e.content},d[l.property].push(t),!i)return V=!0,Promise.reject(t)}))}),o.push(Promise.all(e))}};return l?_xeUtils.default.eachTree(a,e,{children:r}):a.forEach(e),Promise.all(o).then(()=>{const e=Object.keys(d);var t,l,r;return m.validErrorMaps=(t=s,"single"===_.value.msgMode?(l=t,(r=Object.keys(t)).length&&(l[r=r[0]]=t[r]),l):t),(0,_vue.nextTick)().then(()=>{if(e.length)return Promise.reject(d[e[0]][0]);u&&u()})}).catch(n=>new Promise((e,t)=>{const l=()=>{(0,_vue.nextTick)(()=>{u?(u(d),e()):("obsolete"===getConfig().validToReject?t:e)(d)})};var r,i,a,o,s=()=>{var t;n.cell=v.getCell(n.row,n.column),(0,_dom.scrollToView)(n.cell),t=n,new Promise(e=>{!1===_.value.autoPos?(v.dispatchEvent("valid-error",t,null),e()):v.handleActived(t,{type:"valid-error",trigger:"call"}).then(()=>{e(R.showValidTooltip(t))})}).then(l)};!1===p.autoPos?l():(o=n.row,r=n.column,a=c.indexOf(o),i=g.indexOf(r),a=0<a?c[a-1]:o,o=0<i?g[i-1]:r,v.scrollToRow(a,o).then(s))}))}return m.validErrorMaps={},(0,_vue.nextTick)().then(()=>{u&&u()})},E=(w={fullValidate(e,t){return"development"===process.env.NODE_ENV&&_xeUtils.default.isFunction(t)&&(0,_log.warnLog)("vxe.error.notValidators",["fullValidate(rows, callback)","fullValidate(rows)"]),l(e,t,!0)},validate(e,t){return"development"===process.env.NODE_ENV&&_xeUtils.default.isFunction(t)&&(0,_log.warnLog)("vxe.error.notValidators",["validate(rows, callback)","validate(rows)"]),l(e,t)},clearValidate(e,t){var l=m["validErrorMaps"],r=g.value,i=_.value,e=_xeUtils.default.isArray(e)?e:e?[e]:[];const a=_xeUtils.default.isArray(t)?t:(t?[t]:[]).map(e=>(0,_util.handleFieldOrColumn)(v,e));let o={};if(r&&r.reactData.visible&&r.close(),"single"===i.msgMode)m.validErrorMaps={};else{if(e.length&&a.length)o=Object.assign({},l),e.forEach(t=>{a.forEach(e=>{e=(0,_util.getRowid)(v,t)+":"+e.id;o[e]&&delete o[e]})});else if(e.length){const s=e.map(e=>""+(0,_util.getRowid)(v,e));_xeUtils.default.each(l,(e,t)=>{-1<s.indexOf(t.split(":")[0])&&(o[t]=e)})}else if(a.length){const n=a.map(e=>""+e.id);_xeUtils.default.each(l,(e,t)=>{-1<n.indexOf(t.split(":")[1])&&(o[t]=e)})}m.validErrorMaps=o}return(0,_vue.nextTick)()}},(e,t)=>{var{type:e,min:l,max:r,pattern:i}=e,e="number"===e,a=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||!_xeUtils.default.eqNull(l)&&a<_xeUtils.default.toNumber(l)||!_xeUtils.default.eqNull(r)&&a>_xeUtils.default.toNumber(r)||!(!i||(_xeUtils.default.isRegExp(i)?i:new RegExp(i)).test(t))});return R={validCellRules(e,n,u,t){var l=f["editRules"],r=u["field"];const d=[],c=[];if(r&&l){const g=_xeUtils.default.get(l,r);if(g){const p=_xeUtils.default.isUndefined(t)?_xeUtils.default.get(n,r):t;g.forEach(t=>{const{type:l,trigger:r,required:i,validator:a}=t;if("all"===e||!r||e===r)if(a){var o={cellValue:p,rule:t,rules:g,row:n,rowIndex:v.getRowIndex(n),column:u,columnIndex:v.getColumnIndex(u),field:u.field,$table:v,$grid:v.xegrid};let e;_xeUtils.default.isString(a)?(s=validators.get(a))?s.cellValidatorMethod?e=s.cellValidatorMethod(o):"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.notValidators",[a]):"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notValidators",[a]):e=a(o),e&&(_xeUtils.default.isError(e)?(V=!0,d.push(new Rule({type:"custom",trigger:r,content:e.message,rule:new Rule(t)}))):e.catch&&c.push(e.catch(e=>{V=!0,d.push(new Rule({type:"custom",trigger:r,content:e&&e.message?e.message:t.content||t.message,rule:new Rule(t)}))})))}else{var s="array"===l,o=_xeUtils.default.isArray(p);let e=!0;e=s||o?!o||!p.length:_xeUtils.default.isString(p)?(0,_utils.eqEmptyValue)(p.trim()):(0,_utils.eqEmptyValue)(p),(i?e||E(t,p):!e&&E(t,p))&&(V=!0,d.push(new Rule(t)))}})}}return Promise.all(c).then(()=>{var e;if(d.length)return e={rules:d,rule:d[0]},Promise.reject(e)})},hasCellRules(t,e,l){var r=f["editRules"],l=l["field"];return!(!l||!r)&&(r=_xeUtils.default.get(r,l))&&!!_xeUtils.default.find(r,e=>"all"===t||!e.trigger||t===e.trigger)},triggerValidate(t){var{editConfig:e,editRules:l}=f,r=m["editStore"],r=r["actived"];const i=u.value;var a=_.value;if(l&&"single"===a.msgMode&&(m.validErrorMaps={}),e&&l&&r.row){const{row:o,column:s,cell:n}=r.args;if(R.hasCellRules(t,o,s))return R.validCellRules(t,o,s).then(()=>{"row"===i.mode&&w.clearValidate(o,s)}).catch(({rule:e})=>{return e.trigger&&t!==e.trigger?Promise.resolve():(e={rule:e,row:o,column:s,cell:n},R.showValidTooltip(e),Promise.reject(e))})}return Promise.resolve()},showValidTooltip(e){var t=f["height"],{tableData:l,validStore:r,validErrorMaps:i}=m,{rule:a,row:o,column:s,cell:n}=e,u=_.value,d=g.value,c=a.content;return r.visible=!0,"single"===u.msgMode?m.validErrorMaps={[(0,_util.getRowid)(v,o)+":"+s.id]:{column:s,row:o,rule:a,content:c}}:m.validErrorMaps=Object.assign({},i,{[(0,_util.getRowid)(v,o)+":"+s.id]:{column:s,row:o,rule:a,content:c}}),v.dispatchEvent("valid-error",e,null),d&&("tooltip"===u.message||"default"===u.message&&!t&&l.length<2)?d.open(n,c):(0,_vue.nextTick)()}},Object.assign(Object.assign({},w),R)},setupGrid(e){return e.extendTableMethods(tableValidatorMethodKeys)}});
|
|
@@ -6,12 +6,12 @@ var _ui = require("../../ui");
|
|
|
6
6
|
var _util = require("../../table/src/util");
|
|
7
7
|
var _utils = require("../../ui/src/utils");
|
|
8
8
|
var _vn = require("../../ui/src/vn");
|
|
9
|
+
var _log = require("../../ui/src/log");
|
|
9
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
11
|
const {
|
|
11
12
|
getConfig,
|
|
12
13
|
renderer,
|
|
13
|
-
getI18n
|
|
14
|
-
log
|
|
14
|
+
getI18n
|
|
15
15
|
} = _ui.VxeUI;
|
|
16
16
|
const componentDefaultModelProp = 'modelValue';
|
|
17
17
|
const defaultCompProps = {
|
|
@@ -194,7 +194,7 @@ function getComponentOns(renderOpts, params, modelFunc, changeFunc) {
|
|
|
194
194
|
ons[(0, _vn.getOnName)(key)] = function (...args) {
|
|
195
195
|
if (process.env.NODE_ENV === 'development') {
|
|
196
196
|
if (!_xeUtils.default.isFunction(func)) {
|
|
197
|
-
|
|
197
|
+
(0, _log.errLog)('vxe.error.errFunc', [func]);
|
|
198
198
|
}
|
|
199
199
|
}
|
|
200
200
|
func(params, ...args);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("../../table/src/util"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getConfig,renderer,getI18n,log}=_ui.VxeUI,componentDefaultModelProp="modelValue",defaultCompProps={transfer:!0};function getModelEvent(e){switch(e.name){case"input":case"textarea":return"input"}return"update:modelValue"}function getChangeEvent(e){switch(e.name){case"input":case"textarea":case"VxeInput":case"VxeTextarea":case"$input":case"$textarea":return"input"}return"change"}function parseDate(e,t){return e&&t.valueFormat?_xeUtils.default.toStringDate(e,t.valueFormat):e}function getFormatDate(e,t,n){var{dateConfig:r={}}=t;return _xeUtils.default.toDateString(parseDate(e,t),r.labelFormat||n)}function getLabelFormatDate(e,t){return getFormatDate(e,t,getI18n("vxe.input.date.labelFormat."+t.type))}function getOldComponentName(e){return"vxe-"+e.replace("$","")}function getDefaultComponent({name:e}){return(0,_vue.resolveComponent)(e)}function getOldComponent({name:e}){return(0,_vue.resolveComponent)(getOldComponentName(e))}function handleConfirmFilter(e,t,n){e=e.$panel;e.changeOption({},t,n)}function getNativeAttrs(e){let{name:t,attrs:n}=e;return n="input"===t?Object.assign({type:"text"},n):n}function getInputImmediateModel(e){var{name:e,immediate:t,props:n}=e;return t||("VxeInput"===e||"$input"===e?(t=(n||{})["type"],!(!t||"text"===t||"number"===t||"integer"===t||"float"===t)):"input"!==e&&"textarea"!==e&&"$textarea"!==e)}function getCellEditProps(e,t,n,r){return _xeUtils.default.assign({immediate:getInputImmediateModel(e)},defaultCompProps,r,e.props,{[componentDefaultModelProp]:n})}function getCellEditFilterProps(e,t,n,r){return _xeUtils.default.assign({},defaultCompProps,r,e.props,{[componentDefaultModelProp]:n})}function isImmediateCell(e,t){return"cell"===t.$type||getInputImmediateModel(e)}function getCellLabelVNs(e,t,n){e=e.placeholder;return[(0,_vue.h)("span",{class:"vxe-cell--label"},e&&(0,_utils.isEmptyValue)(n)?[(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(e),1))]:(0,_utils.formatText)(n,1))]}function getElementOns(e,n,t,r){const o=e["events"],l=getModelEvent(e),i=getChangeEvent(e),a=i===l,u={};return o&&_xeUtils.default.objectEach(o,(t,e)=>{u[(0,_vn.getOnName)(e)]=function(...e){t(n,...e)}}),t&&(u[(0,_vn.getOnName)(l)]=function(e){t(e),a&&r&&r(e),o&&o[l]&&o[l](n,e)}),!a&&r&&(u[(0,_vn.getOnName)(i)]=function(...e){r(...e),o&&o[i]&&o[i](n,...e)}),u}function getComponentOns(e,n,t,r){const o=e["events"],l=getModelEvent(e),i=getChangeEvent(e),a={};return _xeUtils.default.objectEach(o,(t,e)=>{a[(0,_vn.getOnName)(e)]=function(...e){"development"!==process.env.NODE_ENV||_xeUtils.default.isFunction(t)||log.err("vxe.error.errFunc",[t]),t(n,...e)}}),t&&(a[(0,_vn.getOnName)(l)]=function(e){t(e),o&&o[l]&&o[l](n,e)}),r&&(a[(0,_vn.getOnName)(i)]=function(...e){r(...e),o&&o[i]&&o[i](n,...e)}),a}function getEditOns(e,t){const{$table:n,row:r,column:o}=t,l=e["name"],i=o["model"],a=isImmediateCell(e,t);return getComponentOns(e,t,e=>{a?(0,_util.setCellValue)(r,o,e):(i.update=!0,i.value=e)},e=>{!a&&["VxeInput","VxeTextarea","$input","$textarea"].includes(l)?(e=e.value,i.update=!0,i.value=e,n.updateStatus(t,e)):n.updateStatus(t)})}function getFilterOns(e,t,n){return getComponentOns(e,t,e=>{n.data=e},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(n.data),n)})}function getNativeEditOns(t,n){const{$table:r,row:o,column:l}=n,i=l["model"];return getElementOns(t,n,e=>{e=e.target.value;isImmediateCell(t,n)?(0,_util.setCellValue)(o,l,e):(i.update=!0,i.value=e)},e=>{e=e.target.value;r.updateStatus(n,e)})}function getNativeFilterOns(e,t,n){return getElementOns(e,t,e=>{n.data=e.target.value},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(n.data),n)})}function nativeEditRender(e,t){var{row:n,column:r}=t,o=e["name"],n=isImmediateCell(e,t)?(0,_util.getCellValue)(n,r):r.model.value;return[(0,_vue.h)(o,Object.assign(Object.assign(Object.assign({class:"vxe-default-"+o},getNativeAttrs(e)),{value:n}),getNativeEditOns(e,t)))]}function defaultCellRender(e,t){return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function defaultEditRender(e,t){var{row:n,column:r}=t,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n)),getEditOns(e,t)))]}function oldEditRender(e,t){var{row:n,column:r}=t,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n)),getEditOns(e,t)))]}function oldButtonEditRender(e,t){return[(0,_vue.h)((0,_vue.resolveComponent)("vxe-button"),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function oldButtonsEditRender(e,t){return e.children.map(e=>oldButtonEditRender(e,t)[0])}function renderNativeOptgroups(n,r,o){var{optionGroups:e,optionGroupProps:t={}}=n;const l=t.options||"options",i=t.label||"label";return e.map((e,t)=>(0,_vue.h)("optgroup",{key:t,label:e[i]},o(e[l],n,r)))}function renderNativeOptions(e,t,n){var{optionProps:r={}}=t,{row:o,column:l}=n;const i=r.label||"label",a=r.value||"value",u=r.disabled||"disabled",s=isImmediateCell(t,n)?(0,_util.getCellValue)(o,l):l.model.value;return e.map((e,t)=>(0,_vue.h)("option",{key:t,value:e[a],disabled:e[u],selected:e[a]==s},e[i]))}function nativeFilterRender(n,r){var e=r["column"];const o=n["name"],l=getNativeAttrs(n);return e.filters.map((e,t)=>(0,_vue.h)(o,Object.assign(Object.assign(Object.assign({key:t,class:"vxe-default-"+o},l),{value:e.data}),getNativeFilterOns(n,r,e))))}function defaultFilterRender(r,o){var e=o["column"];return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getDefaultComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,r,n)),getFilterOns(r,o,e)))})}function oldFilterRender(r,o){var e=o["column"];return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getOldComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,r,n)),getFilterOns(r,o,e)))})}function handleFilterMethod({option:e,row:t,column:n}){e=e.data;return _xeUtils.default.get(t,n.property)==e}function nativeSelectEditRender(e,t){return[(0,_vue.h)("select",Object.assign(Object.assign({class:"vxe-default-select"},getNativeAttrs(e)),getNativeEditOns(e,t)),e.optionGroups?renderNativeOptgroups(e,t,renderNativeOptions):renderNativeOptions(e.options,e,t))]}function defaultSelectEditRender(e,t){var{row:n,column:r}=t,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a}=e,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a})),getEditOns(e,t)))]}function oldSelectEditRender(e,t){var{row:n,column:r}=t,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a}=e,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a})),getEditOns(e,t)))]}function getSelectCellValue(e,{row:t,column:n}){const{props:r={},options:o,optionGroups:l,optionProps:i={},optionGroupProps:a={}}=e;e=_xeUtils.default.get(t,n.property);let u;const s=i.label||"label",d=i.value||"value";return(0,_utils.isEmptyValue)(e)?"":_xeUtils.default.map(r.multiple?e:[e],l?t=>{var n=a.options||"options";for(let e=0;e<l.length&&!(u=_xeUtils.default.find(l[e][n],e=>e[d]==t));e++);return u?u[s]:t}:t=>(u=_xeUtils.default.find(o,e=>e[d]==t))?u[s]:t).join(", ")}function handleExportSelectMethod(e){var{row:t,column:n,options:r}=e;return r.original?(0,_util.getCellValue)(t,n):getSelectCellValue(n.editRender||n.cellRender,e)}renderer.mixin({input:{autofocus:"input",renderEdit:nativeEditRender,renderDefault:nativeEditRender,renderFilter:nativeFilterRender,defaultFilterMethod:handleFilterMethod},textarea:{autofocus:"textarea",renderEdit:nativeEditRender},select:{renderEdit:nativeSelectEditRender,renderDefault:nativeSelectEditRender,renderCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderFilter(n,r){var e=r["column"];return e.filters.map((e,t)=>(0,_vue.h)("select",Object.assign(Object.assign({key:t,class:"vxe-default-select"},getNativeAttrs(n)),getNativeFilterOns(n,r,e)),n.optionGroups?renderNativeOptgroups(n,r,renderNativeOptions):renderNativeOptions(n.options,n,r)))},defaultFilterMethod:handleFilterMethod,exportMethod:handleExportSelectMethod},VxeInput:{autofocus:".vxe-input--inner",renderEdit:defaultEditRender,renderCell(e,t){var n,{props:r={}}=e,{row:o,column:l}=t,i=r.digits||(null==(n=getConfig().input)?void 0:n.digits)||2;let a=_xeUtils.default.get(o,l.property);if(a)switch(r.type){case"date":case"week":case"month":case"year":a=getLabelFormatDate(a,r);break;case"float":a=_xeUtils.default.toFixed(_xeUtils.default.floor(a,i),i)}return getCellLabelVNs(e,t,a)},renderDefault:defaultEditRender,renderFilter:defaultFilterRender,defaultFilterMethod:handleFilterMethod},VxeTextarea:{autofocus:".vxe-textarea--inner"},VxeButton:{renderDefault:defaultCellRender},VxeButtonGroup:{renderDefault:defaultCellRender},VxeSelect:{autofocus:".vxe-input--inner",renderEdit:defaultSelectEditRender,renderDefault:defaultSelectEditRender,renderCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderFilter(r,o){var e=o["column"];const{options:l,optionProps:i,optionGroups:a,optionGroupProps:u}=r;return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getDefaultComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,o,n,{options:l,optionProps:i,optionGroups:a,optionGroupProps:u})),getFilterOns(r,o,e)))})},defaultFilterMethod:handleFilterMethod,exportMethod:handleExportSelectMethod},VxeRadio:{autofocus:".vxe-radio--input"},VxeRadioGroup:{autofocus:".vxe-radio--input"},VxeCheckbox:{autofocus:".vxe-checkbox--input"},VxeCheckboxGroup:{autofocus:".vxe-checkbox--input"},VxeSwitch:{autofocus:".vxe-switch--button",renderEdit:defaultEditRender,renderDefault:defaultEditRender},$input:{autofocus:".vxe-input--inner",renderEdit:oldEditRender,renderCell(e,t){var n,{props:r={}}=e,{row:o,column:l}=t,i=r.digits||(null==(n=getConfig().input)?void 0:n.digits)||2;let a=_xeUtils.default.get(o,l.property);if(a)switch(r.type){case"date":case"week":case"month":case"year":a=getLabelFormatDate(a,r);break;case"float":a=_xeUtils.default.toFixed(_xeUtils.default.floor(a,i),i)}return getCellLabelVNs(e,t,a)},renderDefault:oldEditRender,renderFilter:oldFilterRender,defaultFilterMethod:handleFilterMethod},$textarea:{autofocus:".vxe-textarea--inner"},$button:{renderDefault:oldButtonEditRender},$buttons:{renderDefault:oldButtonsEditRender},$select:{autofocus:".vxe-input--inner",renderEdit:oldSelectEditRender,renderDefault:oldSelectEditRender,renderCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderFilter(r,o){var e=o["column"];const{options:l,optionProps:i,optionGroups:a,optionGroupProps:u}=r;return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getOldComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,o,n,{options:l,optionProps:i,optionGroups:a,optionGroupProps:u})),getFilterOns(r,o,e)))})},defaultFilterMethod:handleFilterMethod,exportMethod:handleExportSelectMethod},$radio:{autofocus:".vxe-radio--input"},$checkbox:{autofocus:".vxe-checkbox--input"},$switch:{autofocus:".vxe-switch--button",renderEdit:oldEditRender,renderDefault:oldEditRender}});
|
|
1
|
+
"use strict";var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("../../table/src/util"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getConfig,renderer,getI18n}=_ui.VxeUI,componentDefaultModelProp="modelValue",defaultCompProps={transfer:!0};function getModelEvent(e){switch(e.name){case"input":case"textarea":return"input"}return"update:modelValue"}function getChangeEvent(e){switch(e.name){case"input":case"textarea":case"VxeInput":case"VxeTextarea":case"$input":case"$textarea":return"input"}return"change"}function parseDate(e,t){return e&&t.valueFormat?_xeUtils.default.toStringDate(e,t.valueFormat):e}function getFormatDate(e,t,n){var{dateConfig:r={}}=t;return _xeUtils.default.toDateString(parseDate(e,t),r.labelFormat||n)}function getLabelFormatDate(e,t){return getFormatDate(e,t,getI18n("vxe.input.date.labelFormat."+t.type))}function getOldComponentName(e){return"vxe-"+e.replace("$","")}function getDefaultComponent({name:e}){return(0,_vue.resolveComponent)(e)}function getOldComponent({name:e}){return(0,_vue.resolveComponent)(getOldComponentName(e))}function handleConfirmFilter(e,t,n){e=e.$panel;e.changeOption({},t,n)}function getNativeAttrs(e){let{name:t,attrs:n}=e;return n="input"===t?Object.assign({type:"text"},n):n}function getInputImmediateModel(e){var{name:e,immediate:t,props:n}=e;return t||("VxeInput"===e||"$input"===e?(t=(n||{})["type"],!(!t||"text"===t||"number"===t||"integer"===t||"float"===t)):"input"!==e&&"textarea"!==e&&"$textarea"!==e)}function getCellEditProps(e,t,n,r){return _xeUtils.default.assign({immediate:getInputImmediateModel(e)},defaultCompProps,r,e.props,{[componentDefaultModelProp]:n})}function getCellEditFilterProps(e,t,n,r){return _xeUtils.default.assign({},defaultCompProps,r,e.props,{[componentDefaultModelProp]:n})}function isImmediateCell(e,t){return"cell"===t.$type||getInputImmediateModel(e)}function getCellLabelVNs(e,t,n){e=e.placeholder;return[(0,_vue.h)("span",{class:"vxe-cell--label"},e&&(0,_utils.isEmptyValue)(n)?[(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(e),1))]:(0,_utils.formatText)(n,1))]}function getElementOns(e,n,t,r){const o=e["events"],l=getModelEvent(e),i=getChangeEvent(e),a=i===l,u={};return o&&_xeUtils.default.objectEach(o,(t,e)=>{u[(0,_vn.getOnName)(e)]=function(...e){t(n,...e)}}),t&&(u[(0,_vn.getOnName)(l)]=function(e){t(e),a&&r&&r(e),o&&o[l]&&o[l](n,e)}),!a&&r&&(u[(0,_vn.getOnName)(i)]=function(...e){r(...e),o&&o[i]&&o[i](n,...e)}),u}function getComponentOns(e,n,t,r){const o=e["events"],l=getModelEvent(e),i=getChangeEvent(e),a={};return _xeUtils.default.objectEach(o,(t,e)=>{a[(0,_vn.getOnName)(e)]=function(...e){"development"!==process.env.NODE_ENV||_xeUtils.default.isFunction(t)||(0,_log.errLog)("vxe.error.errFunc",[t]),t(n,...e)}}),t&&(a[(0,_vn.getOnName)(l)]=function(e){t(e),o&&o[l]&&o[l](n,e)}),r&&(a[(0,_vn.getOnName)(i)]=function(...e){r(...e),o&&o[i]&&o[i](n,...e)}),a}function getEditOns(e,t){const{$table:n,row:r,column:o}=t,l=e["name"],i=o["model"],a=isImmediateCell(e,t);return getComponentOns(e,t,e=>{a?(0,_util.setCellValue)(r,o,e):(i.update=!0,i.value=e)},e=>{!a&&["VxeInput","VxeTextarea","$input","$textarea"].includes(l)?(e=e.value,i.update=!0,i.value=e,n.updateStatus(t,e)):n.updateStatus(t)})}function getFilterOns(e,t,n){return getComponentOns(e,t,e=>{n.data=e},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(n.data),n)})}function getNativeEditOns(t,n){const{$table:r,row:o,column:l}=n,i=l["model"];return getElementOns(t,n,e=>{e=e.target.value;isImmediateCell(t,n)?(0,_util.setCellValue)(o,l,e):(i.update=!0,i.value=e)},e=>{e=e.target.value;r.updateStatus(n,e)})}function getNativeFilterOns(e,t,n){return getElementOns(e,t,e=>{n.data=e.target.value},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(n.data),n)})}function nativeEditRender(e,t){var{row:n,column:r}=t,o=e["name"],n=isImmediateCell(e,t)?(0,_util.getCellValue)(n,r):r.model.value;return[(0,_vue.h)(o,Object.assign(Object.assign(Object.assign({class:"vxe-default-"+o},getNativeAttrs(e)),{value:n}),getNativeEditOns(e,t)))]}function defaultCellRender(e,t){return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function defaultEditRender(e,t){var{row:n,column:r}=t,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n)),getEditOns(e,t)))]}function oldEditRender(e,t){var{row:n,column:r}=t,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n)),getEditOns(e,t)))]}function oldButtonEditRender(e,t){return[(0,_vue.h)((0,_vue.resolveComponent)("vxe-button"),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function oldButtonsEditRender(e,t){return e.children.map(e=>oldButtonEditRender(e,t)[0])}function renderNativeOptgroups(n,r,o){var{optionGroups:e,optionGroupProps:t={}}=n;const l=t.options||"options",i=t.label||"label";return e.map((e,t)=>(0,_vue.h)("optgroup",{key:t,label:e[i]},o(e[l],n,r)))}function renderNativeOptions(e,t,n){var{optionProps:r={}}=t,{row:o,column:l}=n;const i=r.label||"label",a=r.value||"value",u=r.disabled||"disabled",s=isImmediateCell(t,n)?(0,_util.getCellValue)(o,l):l.model.value;return e.map((e,t)=>(0,_vue.h)("option",{key:t,value:e[a],disabled:e[u],selected:e[a]==s},e[i]))}function nativeFilterRender(n,r){var e=r["column"];const o=n["name"],l=getNativeAttrs(n);return e.filters.map((e,t)=>(0,_vue.h)(o,Object.assign(Object.assign(Object.assign({key:t,class:"vxe-default-"+o},l),{value:e.data}),getNativeFilterOns(n,r,e))))}function defaultFilterRender(r,o){var e=o["column"];return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getDefaultComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,r,n)),getFilterOns(r,o,e)))})}function oldFilterRender(r,o){var e=o["column"];return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getOldComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,r,n)),getFilterOns(r,o,e)))})}function handleFilterMethod({option:e,row:t,column:n}){e=e.data;return _xeUtils.default.get(t,n.property)==e}function nativeSelectEditRender(e,t){return[(0,_vue.h)("select",Object.assign(Object.assign({class:"vxe-default-select"},getNativeAttrs(e)),getNativeEditOns(e,t)),e.optionGroups?renderNativeOptgroups(e,t,renderNativeOptions):renderNativeOptions(e.options,e,t))]}function defaultSelectEditRender(e,t){var{row:n,column:r}=t,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a}=e,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a})),getEditOns(e,t)))]}function oldSelectEditRender(e,t){var{row:n,column:r}=t,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a}=e,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a})),getEditOns(e,t)))]}function getSelectCellValue(e,{row:t,column:n}){const{props:r={},options:o,optionGroups:l,optionProps:i={},optionGroupProps:a={}}=e;e=_xeUtils.default.get(t,n.property);let u;const s=i.label||"label",d=i.value||"value";return(0,_utils.isEmptyValue)(e)?"":_xeUtils.default.map(r.multiple?e:[e],l?t=>{var n=a.options||"options";for(let e=0;e<l.length&&!(u=_xeUtils.default.find(l[e][n],e=>e[d]==t));e++);return u?u[s]:t}:t=>(u=_xeUtils.default.find(o,e=>e[d]==t))?u[s]:t).join(", ")}function handleExportSelectMethod(e){var{row:t,column:n,options:r}=e;return r.original?(0,_util.getCellValue)(t,n):getSelectCellValue(n.editRender||n.cellRender,e)}renderer.mixin({input:{autofocus:"input",renderEdit:nativeEditRender,renderDefault:nativeEditRender,renderFilter:nativeFilterRender,defaultFilterMethod:handleFilterMethod},textarea:{autofocus:"textarea",renderEdit:nativeEditRender},select:{renderEdit:nativeSelectEditRender,renderDefault:nativeSelectEditRender,renderCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderFilter(n,r){var e=r["column"];return e.filters.map((e,t)=>(0,_vue.h)("select",Object.assign(Object.assign({key:t,class:"vxe-default-select"},getNativeAttrs(n)),getNativeFilterOns(n,r,e)),n.optionGroups?renderNativeOptgroups(n,r,renderNativeOptions):renderNativeOptions(n.options,n,r)))},defaultFilterMethod:handleFilterMethod,exportMethod:handleExportSelectMethod},VxeInput:{autofocus:".vxe-input--inner",renderEdit:defaultEditRender,renderCell(e,t){var n,{props:r={}}=e,{row:o,column:l}=t,i=r.digits||(null==(n=getConfig().input)?void 0:n.digits)||2;let a=_xeUtils.default.get(o,l.property);if(a)switch(r.type){case"date":case"week":case"month":case"year":a=getLabelFormatDate(a,r);break;case"float":a=_xeUtils.default.toFixed(_xeUtils.default.floor(a,i),i)}return getCellLabelVNs(e,t,a)},renderDefault:defaultEditRender,renderFilter:defaultFilterRender,defaultFilterMethod:handleFilterMethod},VxeTextarea:{autofocus:".vxe-textarea--inner"},VxeButton:{renderDefault:defaultCellRender},VxeButtonGroup:{renderDefault:defaultCellRender},VxeSelect:{autofocus:".vxe-input--inner",renderEdit:defaultSelectEditRender,renderDefault:defaultSelectEditRender,renderCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderFilter(r,o){var e=o["column"];const{options:l,optionProps:i,optionGroups:a,optionGroupProps:u}=r;return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getDefaultComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,o,n,{options:l,optionProps:i,optionGroups:a,optionGroupProps:u})),getFilterOns(r,o,e)))})},defaultFilterMethod:handleFilterMethod,exportMethod:handleExportSelectMethod},VxeRadio:{autofocus:".vxe-radio--input"},VxeRadioGroup:{autofocus:".vxe-radio--input"},VxeCheckbox:{autofocus:".vxe-checkbox--input"},VxeCheckboxGroup:{autofocus:".vxe-checkbox--input"},VxeSwitch:{autofocus:".vxe-switch--button",renderEdit:defaultEditRender,renderDefault:defaultEditRender},$input:{autofocus:".vxe-input--inner",renderEdit:oldEditRender,renderCell(e,t){var n,{props:r={}}=e,{row:o,column:l}=t,i=r.digits||(null==(n=getConfig().input)?void 0:n.digits)||2;let a=_xeUtils.default.get(o,l.property);if(a)switch(r.type){case"date":case"week":case"month":case"year":a=getLabelFormatDate(a,r);break;case"float":a=_xeUtils.default.toFixed(_xeUtils.default.floor(a,i),i)}return getCellLabelVNs(e,t,a)},renderDefault:oldEditRender,renderFilter:oldFilterRender,defaultFilterMethod:handleFilterMethod},$textarea:{autofocus:".vxe-textarea--inner"},$button:{renderDefault:oldButtonEditRender},$buttons:{renderDefault:oldButtonsEditRender},$select:{autofocus:".vxe-input--inner",renderEdit:oldSelectEditRender,renderDefault:oldSelectEditRender,renderCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderFilter(r,o){var e=o["column"];const{options:l,optionProps:i,optionGroups:a,optionGroupProps:u}=r;return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getOldComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,o,n,{options:l,optionProps:i,optionGroups:a,optionGroupProps:u})),getFilterOns(r,o,e)))})},defaultFilterMethod:handleFilterMethod,exportMethod:handleExportSelectMethod},$radio:{autofocus:".vxe-radio--input"},$checkbox:{autofocus:".vxe-checkbox--input"},$switch:{autofocus:".vxe-switch--button",renderEdit:oldEditRender,renderDefault:oldEditRender}});
|
|
@@ -8,11 +8,11 @@ var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
|
8
8
|
var _ui = require("../../ui");
|
|
9
9
|
var _util = require("./util");
|
|
10
10
|
var _utils = require("../../ui/src/utils");
|
|
11
|
+
var _log = require("../../ui/src/log");
|
|
11
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
13
|
const {
|
|
13
14
|
getI18n,
|
|
14
|
-
formats
|
|
15
|
-
log
|
|
15
|
+
formats
|
|
16
16
|
} = _ui.VxeUI;
|
|
17
17
|
class ColumnInfo {
|
|
18
18
|
/* eslint-disable @typescript-eslint/no-use-before-define */
|
|
@@ -28,16 +28,16 @@ class ColumnInfo {
|
|
|
28
28
|
if (process.env.NODE_ENV === 'development') {
|
|
29
29
|
const types = ['seq', 'checkbox', 'radio', 'expand', 'html'];
|
|
30
30
|
if (_vm.type && types.indexOf(_vm.type) === -1) {
|
|
31
|
-
|
|
31
|
+
(0, _log.warnLog)('vxe.error.errProp', [`type=${_vm.type}`, types.join(', ')]);
|
|
32
32
|
}
|
|
33
33
|
if (_xeUtils.default.isBoolean(_vm.cellRender) || _vm.cellRender && !_xeUtils.default.isObject(_vm.cellRender)) {
|
|
34
|
-
|
|
34
|
+
(0, _log.warnLog)('vxe.error.errProp', [`column.cell-render=${_vm.cellRender}`, 'column.cell-render={}']);
|
|
35
35
|
}
|
|
36
36
|
if (_xeUtils.default.isBoolean(_vm.editRender) || _vm.editRender && !_xeUtils.default.isObject(_vm.editRender)) {
|
|
37
|
-
|
|
37
|
+
(0, _log.warnLog)('vxe.error.errProp', [`column.edit-render=${_vm.editRender}`, 'column.edit-render={}']);
|
|
38
38
|
}
|
|
39
39
|
if (_vm.cellRender && _vm.editRender) {
|
|
40
|
-
|
|
40
|
+
(0, _log.warnLog)('vxe.error.errConflicts', ['column.cell-render', 'column.edit-render']);
|
|
41
41
|
}
|
|
42
42
|
if (_vm.type === 'expand') {
|
|
43
43
|
const {
|
|
@@ -51,19 +51,19 @@ class ColumnInfo {
|
|
|
51
51
|
} = $xeTable.getComputeMaps();
|
|
52
52
|
const treeOpts = computeTreeOpts.value;
|
|
53
53
|
if (treeConfig && (treeOpts.showLine || treeOpts.line)) {
|
|
54
|
-
|
|
54
|
+
(0, _log.errLog)('vxe.error.errConflicts', ['tree-config.showLine', 'column.type=expand']);
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
if (formatter) {
|
|
58
58
|
if (_xeUtils.default.isString(formatter)) {
|
|
59
59
|
const gFormatOpts = formats.get(formatter) || _xeUtils.default[formatter];
|
|
60
60
|
if (!gFormatOpts || !_xeUtils.default.isFunction(gFormatOpts.cellFormatMethod)) {
|
|
61
|
-
|
|
61
|
+
(0, _log.errLog)('vxe.error.notFormats', [formatter]);
|
|
62
62
|
}
|
|
63
63
|
} else if (_xeUtils.default.isArray(formatter)) {
|
|
64
64
|
const gFormatOpts = formats.get(formatter[0]) || _xeUtils.default[formatter[0]];
|
|
65
65
|
if (!gFormatOpts || !_xeUtils.default.isFunction(gFormatOpts.cellFormatMethod)) {
|
|
66
|
-
|
|
66
|
+
(0, _log.errLog)('vxe.error.notFormats', [formatter[0]]);
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
}
|
|
@@ -138,6 +138,7 @@ class ColumnInfo {
|
|
|
138
138
|
renderVisible: false,
|
|
139
139
|
renderWidth: 0,
|
|
140
140
|
renderHeight: 0,
|
|
141
|
+
renderResizeWidth: 0,
|
|
141
142
|
resizeWidth: 0,
|
|
142
143
|
renderLeft: 0,
|
|
143
144
|
renderArgs: [],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_utils=require("../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,formats
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,formats}=_ui.VxeUI;class ColumnInfo{constructor(e,r,{renderHeader:t,renderCell:l,renderFooter:o,renderData:i}={}){var d,n=e.xegrid,s=r.formatter,a=!_xeUtils.default.isBoolean(r.visible)||r.visible;"development"===process.env.NODE_ENV&&(d=["seq","checkbox","radio","expand","html"],r.type&&-1===d.indexOf(r.type)&&(0,_log.warnLog)("vxe.error.errProp",["type="+r.type,d.join(", ")]),(_xeUtils.default.isBoolean(r.cellRender)||r.cellRender&&!_xeUtils.default.isObject(r.cellRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.cell-render="+r.cellRender,"column.cell-render={}"]),(_xeUtils.default.isBoolean(r.editRender)||r.editRender&&!_xeUtils.default.isObject(r.editRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.edit-render="+r.editRender,"column.edit-render={}"]),r.cellRender&&r.editRender&&(0,_log.warnLog)("vxe.error.errConflicts",["column.cell-render","column.edit-render"]),"expand"===r.type&&(d=e["props"],d=d["treeConfig"],e=e.getComputeMaps()["computeTreeOpts"],e=e.value,d)&&(e.showLine||e.line)&&(0,_log.errLog)("vxe.error.errConflicts",["tree-config.showLine","column.type=expand"]),s)&&(_xeUtils.default.isString(s)?(d=formats.get(s)||_xeUtils.default[s])&&_xeUtils.default.isFunction(d.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[s]):!_xeUtils.default.isArray(s)||(e=formats.get(s[0])||_xeUtils.default[s[0]])&&_xeUtils.default.isFunction(e.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[s[0]])),Object.assign(this,{type:r.type,property:r.field,field:r.field,title:r.title,width:r.width,minWidth:r.minWidth,maxWidth:r.maxWidth,resizable:r.resizable,fixed:r.fixed,align:r.align,headerAlign:r.headerAlign,footerAlign:r.footerAlign,showOverflow:r.showOverflow,showHeaderOverflow:r.showHeaderOverflow,showFooterOverflow:r.showFooterOverflow,className:r.className,headerClassName:r.headerClassName,footerClassName:r.footerClassName,formatter:s,sortable:r.sortable,sortBy:r.sortBy,sortType:r.sortType,filters:(0,_util.toFilters)(r.filters),filterMultiple:!_xeUtils.default.isBoolean(r.filterMultiple)||r.filterMultiple,filterMethod:r.filterMethod,filterResetMethod:r.filterResetMethod,filterRecoverMethod:r.filterRecoverMethod,filterRender:r.filterRender,treeNode:r.treeNode,cellType:r.cellType,cellRender:r.cellRender,editRender:r.editRender,contentRender:r.contentRender,headerExportMethod:r.headerExportMethod,exportMethod:r.exportMethod,footerExportMethod:r.footerExportMethod,titleHelp:r.titleHelp,titlePrefix:r.titlePrefix,titleSuffix:r.titleSuffix,params:r.params,id:r.colId||_xeUtils.default.uniqueId("col_"),parentId:null,visible:a,halfVisible:!1,defaultVisible:a,defaultFixed:r.fixed,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,sortTime:0,sortNumber:0,renderSortNumber:0,renderFixed:"",renderVisible:!1,renderWidth:0,renderHeight:0,renderResizeWidth:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:t||r.renderHeader,renderCell:l||r.renderCell,renderFooter:o||r.renderFooter,renderData:i,slots:r.slots}),n&&(d=n.getComputeMaps()["computeProxyOpts"],(e=d.value).beforeColumn)&&e.beforeColumn({$grid:n,column:this})}getTitle(){return(0,_utils.getFuncText)(this.title||("seq"===this.type?getI18n("vxe.table.seqTitle"):""))}getKey(){return this.field||(this.type?"type="+this.type:null)}update(e,r){"filters"!==e&&("field"===e&&(this.property=r),this[e]=r)}}exports.ColumnInfo=ColumnInfo;
|