vxe-table 3.6.16 → 3.7.0-beta.0
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/lib/export/src/mixin.js +12 -7
- package/lib/export/src/mixin.min.js +1 -1
- package/lib/form/src/form.js +109 -89
- package/lib/form/src/form.min.js +1 -1
- package/lib/icon/style/{iconfont.1688167751253.ttf → iconfont.1688918886373.ttf} +0 -0
- package/lib/icon/style/iconfont.1688918886373.woff +0 -0
- package/lib/icon/style/iconfont.1688918886373.woff2 +0 -0
- package/lib/icon/style/style.css +25 -1
- package/lib/icon/style/style.min.css +25 -1
- package/lib/{iconfont.1688167751253.ttf → iconfont.1688918886373.ttf} +0 -0
- package/lib/iconfont.1688918886373.woff +0 -0
- package/lib/iconfont.1688918886373.woff2 +0 -0
- package/lib/index.css +1 -1
- package/lib/index.umd.js +271 -129
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/en-US.js +6 -2
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +6 -2
- package/lib/locale/lang/es-ES.js +9 -5
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +9 -5
- package/lib/locale/lang/ja-JP.js +6 -2
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +6 -2
- package/lib/locale/lang/zh-CN.js +6 -2
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +6 -2
- package/lib/locale/lang/zh-HK.min.js +1 -1
- package/lib/locale/lang/zh-HK.umd.js +6 -2
- package/lib/locale/lang/zh-MO.min.js +1 -1
- package/lib/locale/lang/zh-MO.umd.js +6 -2
- package/lib/locale/lang/zh-TC.js +6 -2
- package/lib/locale/lang/zh-TC.min.js +1 -1
- package/lib/locale/lang/zh-TC.umd.js +6 -2
- package/lib/locale/lang/zh-TW.min.js +1 -1
- package/lib/locale/lang/zh-TW.umd.js +6 -2
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/src/cell.js +7 -1
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/column.js +2 -0
- package/lib/table/src/column.min.js +1 -1
- package/lib/table/src/columnInfo.js +2 -0
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/methods.js +26 -11
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +17 -0
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +16 -0
- package/lib/table/src/util.min.js +1 -1
- package/lib/table/style/style.css +2 -2
- package/lib/table/style/style.min.css +1 -1
- package/lib/toolbar/src/toolbar.js +57 -12
- package/lib/toolbar/src/toolbar.min.js +1 -1
- package/lib/toolbar/style/style.css +44 -13
- package/lib/toolbar/style/style.min.css +1 -1
- package/lib/tools/log.js +1 -1
- package/lib/tools/log.min.js +1 -1
- package/lib/v-x-e-table/index.js +1 -1
- package/lib/v-x-e-table/index.min.js +1 -1
- package/lib/v-x-e-table/src/conf.js +12 -3
- package/lib/v-x-e-table/src/conf.min.js +1 -1
- package/lib/v-x-e-table/style/style.css +25 -1
- package/lib/v-x-e-table/style/style.min.css +1 -1
- package/package.json +1 -1
- package/packages/export/src/mixin.js +9 -7
- package/packages/form/src/form.js +91 -60
- package/packages/locale/lang/en-US.js +6 -2
- package/packages/locale/lang/es-ES.js +9 -5
- package/packages/locale/lang/ja-JP.js +6 -2
- package/packages/locale/lang/zh-CN.js +6 -2
- package/packages/locale/lang/zh-TC.js +6 -2
- package/packages/table/src/cell.js +9 -1
- package/packages/table/src/column.js +2 -0
- package/packages/table/src/columnInfo.js +2 -0
- package/packages/table/src/methods.js +25 -12
- package/packages/table/src/table.js +17 -0
- package/packages/table/src/util.js +16 -0
- package/packages/toolbar/src/toolbar.js +98 -45
- package/packages/v-x-e-table/src/conf.js +11 -3
- package/styles/icon/iconfont.ttf +0 -0
- package/styles/icon/iconfont.woff +0 -0
- package/styles/icon/iconfont.woff2 +0 -0
- package/styles/icon.scss +25 -1
- package/styles/table.scss +2 -2
- package/styles/toolbar.scss +35 -8
- package/types/column.d.ts +4 -1
- package/types/export.d.ts +5 -0
- package/types/form.d.ts +14 -8
- package/types/toolbar.d.ts +17 -6
- package/lib/icon/style/iconfont.1688167751253.woff +0 -0
- package/lib/icon/style/iconfont.1688167751253.woff2 +0 -0
- package/lib/iconfont.1688167751253.woff +0 -0
- package/lib/iconfont.1688167751253.woff2 +0 -0
package/lib/export/src/mixin.js
CHANGED
|
@@ -249,8 +249,12 @@ function getExportData($xetable, opts) {
|
|
|
249
249
|
function getBooleanValue(cellValue) {
|
|
250
250
|
return cellValue === 'TRUE' || cellValue === 'true' || cellValue === true;
|
|
251
251
|
}
|
|
252
|
-
function getHeaderTitle(opts, column) {
|
|
253
|
-
|
|
252
|
+
function getHeaderTitle($xetable, opts, column) {
|
|
253
|
+
var headerExportMethod = column.headerExportMethod;
|
|
254
|
+
return headerExportMethod ? headerExportMethod({
|
|
255
|
+
column: column,
|
|
256
|
+
$table: $xetable
|
|
257
|
+
}) : (opts.original ? column.property : column.getTitle()) || '';
|
|
254
258
|
}
|
|
255
259
|
function getFooterCellValue($xetable, opts, items, column) {
|
|
256
260
|
var renderOpts = column.editRender || column.cellRender;
|
|
@@ -313,7 +317,7 @@ function toCsv($xetable, opts, columns, datas) {
|
|
|
313
317
|
var content = csvBOM;
|
|
314
318
|
if (opts.isHeader) {
|
|
315
319
|
content += columns.map(function (column) {
|
|
316
|
-
return toTxtCellLabel(getHeaderTitle(opts, column));
|
|
320
|
+
return toTxtCellLabel(getHeaderTitle($xetable, opts, column));
|
|
317
321
|
}).join(',') + enterSymbol;
|
|
318
322
|
}
|
|
319
323
|
datas.forEach(function (row) {
|
|
@@ -336,7 +340,7 @@ function toTxt($xetable, opts, columns, datas) {
|
|
|
336
340
|
var content = '';
|
|
337
341
|
if (opts.isHeader) {
|
|
338
342
|
content += columns.map(function (column) {
|
|
339
|
-
return toTxtCellLabel(getHeaderTitle(opts, column));
|
|
343
|
+
return toTxtCellLabel(getHeaderTitle($xetable, opts, column));
|
|
340
344
|
}).join('\t') + enterSymbol;
|
|
341
345
|
}
|
|
342
346
|
datas.forEach(function (row) {
|
|
@@ -406,7 +410,7 @@ function toHtml($xetable, opts, columns, datas) {
|
|
|
406
410
|
tables.push("<tr>".concat(cols.map(function (column) {
|
|
407
411
|
var headAlign = column.headerAlign || column.align || allHeaderAlign || allAlign;
|
|
408
412
|
var classNames = hasEllipsis($xetable, column, 'showHeaderOverflow', allColumnHeaderOverflow) ? ['col--ellipsis'] : [];
|
|
409
|
-
var cellTitle = getHeaderTitle(opts, column);
|
|
413
|
+
var cellTitle = getHeaderTitle($xetable, opts, column);
|
|
410
414
|
var childWidth = 0;
|
|
411
415
|
var countChild = 0;
|
|
412
416
|
_xeUtils["default"].eachTree([column], function (item) {
|
|
@@ -431,7 +435,7 @@ function toHtml($xetable, opts, columns, datas) {
|
|
|
431
435
|
tables.push("<tr>".concat(columns.map(function (column) {
|
|
432
436
|
var headAlign = column.headerAlign || column.align || allHeaderAlign || allAlign;
|
|
433
437
|
var classNames = hasEllipsis($xetable, column, 'showHeaderOverflow', allColumnHeaderOverflow) ? ['col--ellipsis'] : [];
|
|
434
|
-
var cellTitle = getHeaderTitle(opts, column);
|
|
438
|
+
var cellTitle = getHeaderTitle($xetable, opts, column);
|
|
435
439
|
if (headAlign) {
|
|
436
440
|
classNames.push("col--".concat(headAlign));
|
|
437
441
|
}
|
|
@@ -545,7 +549,7 @@ function toXML($xetable, opts, columns, datas) {
|
|
|
545
549
|
}).join('')].join('');
|
|
546
550
|
if (opts.isHeader) {
|
|
547
551
|
xml += "<Row>".concat(columns.map(function (column) {
|
|
548
|
-
return "<Cell><Data ss:Type=\"String\">".concat(getHeaderTitle(opts, column), "</Data></Cell>");
|
|
552
|
+
return "<Cell><Data ss:Type=\"String\">".concat(getHeaderTitle($xetable, opts, column), "</Data></Cell>");
|
|
549
553
|
}).join(''), "</Row>");
|
|
550
554
|
}
|
|
551
555
|
datas.forEach(function (row) {
|
|
@@ -1372,6 +1376,7 @@ var _default = {
|
|
|
1372
1376
|
};
|
|
1373
1377
|
}
|
|
1374
1378
|
if (customCols) {
|
|
1379
|
+
opts._isCustomColumn = true;
|
|
1375
1380
|
groups = _xeUtils["default"].searchTree(_xeUtils["default"].mapTree(customCols, function (item) {
|
|
1376
1381
|
var targetColumn;
|
|
1377
1382
|
if (item) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.handlePrint=handlePrint,exports.readLocalFile=readLocalFile,exports.saveLocalFile=saveLocalFile;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_utils=_interopRequireDefault(require("../../tools/utils")),_util=require("../../table/src/util"),_dom=require("../../tools/dom"),_log=require("../../tools/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var o;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(o="Object"===(o=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:o)||"Set"===o?Array.from(e):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?_arrayLikeToArray(e,t):void 0}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,r=new Array(t);o<t;o++)r[o]=e[o];return r}var htmlCellElem,fileForm,fileInput,printFrame,formatText=_utils.default.formatText,defaultHtmlStyle='body{margin:0;color:#333333;font-size:14px;font-family:"Microsoft YaHei",微软雅黑,"MicrosoftJhengHei",华文细黑,STHeiti,MingLiu}body *{-webkit-box-sizing:border-box;box-sizing:border-box}.vxe-table{border-collapse:collapse;text-align:left;border-spacing:0}.vxe-table:not(.is--print){table-layout:fixed}.vxe-table,.vxe-table th,.vxe-table td,.vxe-table td{border-color:#D0D0D0;border-style:solid;border-width:0}.vxe-table.is--print{width:100%}.border--default,.border--full,.border--outer{border-top-width:1px}.border--default,.border--full,.border--outer{border-left-width:1px}.border--outer,.border--default th,.border--default td,.border--full th,.border--full td,.border--outer th,.border--inner th,.border--inner td{border-bottom-width:1px}.border--default,.border--outer,.border--full th,.border--full td{border-right-width:1px}.border--default th,.border--full th,.border--outer th{background-color:#f8f8f9}.vxe-table td>div,.vxe-table th>div{padding:.5em .4em}.col--center{text-align:center}.col--right{text-align:right}.vxe-table:not(.is--print) .col--ellipsis>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:break-all}.vxe-table--tree-node{text-align:left}.vxe-table--tree-node-wrapper{position:relative}.vxe-table--tree-icon-wrapper{position:absolute;top:50%;width:1em;height:1em;text-align:center;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer}.vxe-table--tree-unfold-icon,.vxe-table--tree-fold-icon{position:absolute;width:0;height:0;border-style:solid;border-width:.5em;border-right-color:transparent;border-bottom-color:transparent}.vxe-table--tree-unfold-icon{left:.3em;top:0;border-left-color:#939599;border-top-color:transparent}.vxe-table--tree-fold-icon{left:0;top:.3em;border-left-color:transparent;border-top-color:#939599}.vxe-table--tree-cell{display:block;padding-left:1.5em}.vxe-table input[type="checkbox"]{margin:0}.vxe-table input[type="checkbox"],.vxe-table input[type="radio"],.vxe-table input[type="checkbox"]+span,.vxe-table input[type="radio"]+span{vertical-align:middle;padding-left:0.4em}',csvBOM="\ufeff",enterSymbol="\r\n";function createFrame(){var e=document.createElement("iframe");return e.className="vxe-table--print-frame",e}function getExportBlobByContent(e,t){return window.Blob?new Blob([e],{type:"text/".concat(t.type,";charset=utf-8;")}):null}function hasTreeChildren(e,t){e=e.treeOpts;return t[e.children]&&0<t[e.children].length}function getSeq(e,t,o,r,n){var a=e.seqOpts.seqMethod||r.seqMethod;return a?a({row:t,rowIndex:e.getRowIndex(t),$rowIndex:o,column:r,columnIndex:e.getColumnIndex(r),$columnIndex:n}):e.getRowSeq(t)}function defaultFilterExportColumn(e){return e.property||-1<["seq","checkbox","radio"].indexOf(e.type)}function toTableBorder(e){return!0===e?"full":e||"default"}function toBooleanValue(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}function getLabelData(d,u,n,e){var a,p,f=u.isAllExpand,m=u.mode,t=d.treeConfig,o=d.treeOpts,h=d.radioOpts,b=d.checkboxOpts;return htmlCellElem=htmlCellElem||document.createElement("div"),t?(a=[],p=new Map,_xeUtils.default.eachTree(e,function(e,l,t,i,o,r){var c,s=e._row||e,e=o&&o._row?o._row:o;(f||!e||p.has(e)&&d.isTreeExpandByRow(e))&&(o=hasTreeChildren(d,s),c={_row:s,_level:r.length-1,_hasChild:o,_expand:o&&d.isTreeExpandByRow(s)},n.forEach(function(e,t){var o,r="",n=e.editRender||e.cellRender,a=e.exportMethod;if(a=!a&&n&&n.name&&(n=_vXETable.default.renderer.get(n.name))?n.exportMethod||n.cellExportMethod:a)r=a({$table:d,row:s,column:e,options:u});else switch(e.type){case"seq":r="all"===m?i.map(function(e,t){return t%2==0?Number(e)+1:"."}).join(""):getSeq(d,s,l,e,t);break;case"checkbox":r=toBooleanValue(d.isCheckedByCheckboxRow(s)),c._checkboxLabel=b.labelField?_xeUtils.default.get(s,b.labelField):"",c._checkboxDisabled=b.checkMethod&&!b.checkMethod({row:s});break;case"radio":r=toBooleanValue(d.isCheckedByRadioRow(s)),c._radioLabel=h.labelField?_xeUtils.default.get(s,h.labelField):"",c._radioDisabled=h.checkMethod&&!h.checkMethod({row:s});break;default:u.original?r=_utils.default.getCellValue(s,e):(r=d.getCellLabel(s,e),"html"===e.type?(htmlCellElem.innerHTML=r,r=htmlCellElem.innerText.trim()):(o=d.getCell(s,e))&&(r=o.innerText.trim()))}c[e.id]=_xeUtils.default.toValueString(r)}),p.set(s,1),a.push(Object.assign(c,s)))},o),a):e.map(function(l,i){var c={_row:l};return n.forEach(function(e,t){var o,r="",n=e.editRender||e.cellRender,a=e.exportMethod;if(a=!a&&n&&n.name&&(n=_vXETable.default.renderer.get(n.name))?n.exportMethod||n.cellExportMethod:a)r=a({$table:d,row:l,column:e,options:u});else switch(e.type){case"seq":r="all"===m?i+1:getSeq(d,l,i,e,t);break;case"checkbox":r=toBooleanValue(d.isCheckedByCheckboxRow(l)),c._checkboxLabel=b.labelField?_xeUtils.default.get(l,b.labelField):"",c._checkboxDisabled=b.checkMethod&&!b.checkMethod({row:l});break;case"radio":r=toBooleanValue(d.isCheckedByRadioRow(l)),c._radioLabel=h.labelField?_xeUtils.default.get(l,h.labelField):"",c._radioDisabled=h.checkMethod&&!h.checkMethod({row:l});break;default:u.original?r=_utils.default.getCellValue(l,e):(r=d.getCellLabel(l,e),"html"===e.type?(htmlCellElem.innerHTML=r,r=htmlCellElem.innerText.trim()):(o=d.getCell(l,e))&&(r=o.innerText.trim()))}c[e.id]=_xeUtils.default.toValueString(r)}),c})}function getExportData(e,t){var o=t.columns,r=t.dataFilterMethod,n=t.data;return getLabelData(e,t,o,n=r?n.filter(function(e,t){return r({row:e,$rowIndex:t})}):n)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t){return(e.original?t.property:t.getTitle())||""}function getFooterCellValue(e,t,o,r){var n=r.editRender||r.cellRender,a=r.footerExportMethod,n=(!a&&n&&n.name&&(n=_vXETable.default.renderer.get(n.name))&&(a=n.footerExportMethod||n.footerCellExportMethod),e.getVTColumnIndex(r));return a?a({$table:e,items:o,itemIndex:n,_columnIndex:n,column:r,options:t}):_xeUtils.default.toValueString(o[n])}function getFooterData(e,t){var o=e.footerFilterMethod;return o?t.filter(function(e,t){return o({items:e,$rowIndex:t})}):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return"\t".concat(t);switch(e.cellType){case"string":if(isNaN(t))break;return"\t".concat(t);case"number":break;default:if(12<=t.length&&!isNaN(t))return"\t".concat(t)}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?'"'.concat(e.replace(/"/g,'""'),'"'):e}function toCsv(o,r,e,t){var n=csvBOM;return r.isHeader&&(n+=e.map(function(e){return toTxtCellLabel(getHeaderTitle(r,e))}).join(",")+enterSymbol),t.forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))}).join(",")+enterSymbol}),r.isFooter&&(t=o.footerTableData,getFooterData(r,t).forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(getFooterCellValue(o,r,t,e))}).join(",")+enterSymbol})),n}function toTxt(o,r,e,t){var n="";return r.isHeader&&(n+=e.map(function(e){return toTxtCellLabel(getHeaderTitle(r,e))}).join("\t")+enterSymbol),t.forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(t[e.id])}).join("\t")+enterSymbol}),r.isFooter&&(t=o.footerTableData,getFooterData(r,t).forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(getFooterCellValue(o,r,t,e))}).join(",")+enterSymbol})),n}function hasEllipsis(e,t,o,r){t=t[o],o=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?r:t,r="title"===o||(!0===o||"tooltip"===o)||"ellipsis"===o;return r=e.scrollXLoad||e.scrollYLoad?r||!0:r}function createHtmlPage(e,t){var o=e.style;return["<!DOCTYPE html><html>","<head>",'<meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no,minimal-ui">',"<title>".concat(e.sheetName,"</title>"),"<style>".concat(defaultHtmlStyle,"</style>"),o?"<style>".concat(o,"</style>"):"","</head>","<body>".concat(t,"</body>"),"</html>"].join("")}function toHtml(s,i,e,t){var d=s.id,o=s.border,r=s.treeConfig,a=s.treeOpts,c=s.isAllSelected,n=s.isIndeterminate,u=s.headerAlign,p=s.align,l=s.footerAlign,f=s.showOverflow,m=s.showHeaderOverflow,h=s.mergeList,b=i.print,g=i.isHeader,x=i.isFooter,v=i.isColgroup,y=i.isMerge,_=i.colgroups,w=i.original,T="check-all",o=["vxe-table","border--".concat(toTableBorder(o)),b?"is--print":"",g?"is--header":""].filter(function(e){return e}),E=['<table class="'.concat(o.join(" "),'" border="0" cellspacing="0" cellpadding="0">'),"<colgroup>".concat(e.map(function(e){return'<col style="width:'.concat(e.renderWidth,'px">')}).join(""),"</colgroup>")],v=(g&&(E.push("<thead>"),v&&!w?_.forEach(function(e){E.push("<tr>".concat(e.map(function(t){var e=t.headerAlign||t.align||u||p,o=hasEllipsis(s,t,"showHeaderOverflow",m)?["col--ellipsis"]:[],r=getHeaderTitle(i,t),n=0,a=0,l=(_xeUtils.default.eachTree([t],function(e){e.childNodes&&t.childNodes.length||a++,n+=e.renderWidth},{children:"childNodes"}),n-a);return e&&o.push("col--".concat(e)),"checkbox"===t.type?'<th class="'.concat(o.join(" "),'" colspan="').concat(t._colSpan,'" rowspan="').concat(t._rowSpan,'"><div ').concat(b?"":'style="width: '.concat(l,'px"'),'><input type="checkbox" class="').concat(T,'" ').concat(c?"checked":"","><span>").concat(r,"</span></div></th>"):'<th class="'.concat(o.join(" "),'" colspan="').concat(t._colSpan,'" rowspan="').concat(t._rowSpan,'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(l,'px"'),"><span>").concat(formatText(r,!0),"</span></div></th>")}).join(""),"</tr>"))}):E.push("<tr>".concat(e.map(function(e){var t=e.headerAlign||e.align||u||p,o=hasEllipsis(s,e,"showHeaderOverflow",m)?["col--ellipsis"]:[],r=getHeaderTitle(i,e);return t&&o.push("col--".concat(t)),"checkbox"===e.type?'<th class="'.concat(o.join(" "),'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="checkbox" class="').concat(T,'" ').concat(c?"checked":"","><span>").concat(r,"</span></div></th>"):'<th class="'.concat(o.join(" "),'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),"><span>").concat(formatText(r,!0),"</span></div></th>")}).join(""),"</tr>")),E.push("</thead>")),t.length&&(E.push("<tbody>"),r?t.forEach(function(n){E.push("<tr>"+e.map(function(e){var t=e.align||p,o=hasEllipsis(s,e,"showOverflow",f)?["col--ellipsis"]:[],r=n[e.id];return t&&o.push("col--".concat(t)),e.treeNode?(t="",n._hasChild&&(t='<i class="'.concat(n._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon",'"></i>')),o.push("vxe-table--tree-node"),"radio"===e.type?'<td class="'.concat(o.join(" "),'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><div class="vxe-table--tree-node-wrapper" style="padding-left: ').concat(n._level*a.indent,'px"><div class="vxe-table--tree-icon-wrapper">').concat(t,'</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_').concat(d,'" ').concat(n._radioDisabled?"disabled ":"").concat(getBooleanValue(r)?"checked":"","><span>").concat(n._radioLabel,"</span></div></div></div></td>"):"checkbox"===e.type?'<td class="'.concat(o.join(" "),'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><div class="vxe-table--tree-node-wrapper" style="padding-left: ').concat(n._level*a.indent,'px"><div class="vxe-table--tree-icon-wrapper">').concat(t,'</div><div class="vxe-table--tree-cell"><input type="checkbox" ').concat(n._checkboxDisabled?"disabled ":"").concat(getBooleanValue(r)?"checked":"","><span>").concat(n._checkboxLabel,"</span></div></div></div></td>"):'<td class="'.concat(o.join(" "),'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><div class="vxe-table--tree-node-wrapper" style="padding-left: ').concat(n._level*a.indent,'px"><div class="vxe-table--tree-icon-wrapper">').concat(t,'</div><div class="vxe-table--tree-cell">').concat(r,"</div></div></div></td>")):"radio"===e.type?'<td class="'.concat(o.join(" "),'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="radio" name="radio_').concat(d,'" ').concat(n._radioDisabled?"disabled ":"").concat(getBooleanValue(r)?"checked":"","><span>").concat(n._radioLabel,"</span></div></td>"):"checkbox"===e.type?'<td class="'.concat(o.join(" "),'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="checkbox" ').concat(n._checkboxDisabled?"disabled ":"").concat(getBooleanValue(r)?"checked":"","><span>").concat(n._checkboxLabel,"</span></div></td>"):'<td class="'.concat(o.join(" "),'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),">").concat(formatText(r,!0),"</div></td>")}).join("")+"</tr>")}):t.forEach(function(c){E.push("<tr>"+e.map(function(e){var t=e.align||p,o=hasEllipsis(s,e,"showOverflow",f)?["col--ellipsis"]:[],r=c[e.id],n=1,a=1;if(y&&h.length){var l=s.getVTRowIndex(c._row),i=s.getVTColumnIndex(e),l=(0,_util.mergeBodyMethod)(h,l,i);if(l){i=l.rowspan,l=l.colspan;if(!i||!l)return"";1<i&&(n=i),1<l&&(a=l)}}return t&&o.push("col--".concat(t)),"radio"===e.type?'<td class="'.concat(o.join(" "),'" rowspan="').concat(n,'" colspan="').concat(a,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="radio" name="radio_').concat(d,'" ').concat(c._radioDisabled?"disabled ":"").concat(getBooleanValue(r)?"checked":"","><span>").concat(c._radioLabel,"</span></div></td>"):"checkbox"===e.type?'<td class="'.concat(o.join(" "),'" rowspan="').concat(n,'" colspan="').concat(a,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="checkbox" ').concat(c._checkboxDisabled?"disabled ":"").concat(getBooleanValue(r)?"checked":"","><span>").concat(c._checkboxLabel,"</span></div></td>"):'<td class="'.concat(o.join(" "),'" rowspan="').concat(n,'" colspan="').concat(a,'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),">").concat(formatText(r,!0),"</div></td>")}).join("")+"</tr>")}),E.push("</tbody>")),x&&(o=s.footerTableData,(g=getFooterData(i,o)).length)&&(E.push("<tfoot>"),g.forEach(function(n){E.push("<tr>".concat(e.map(function(e){var t=e.footerAlign||e.align||l||p,o=hasEllipsis(s,e,"showOverflow",f)?["col--ellipsis"]:[],r=getFooterCellValue(s,i,n,e);return t&&o.push("col--".concat(t)),'<td class="'.concat(o.join(" "),'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),">").concat(formatText(r,!0),"</div></td>")}).join(""),"</tr>"))}),E.push("</tfoot>")),!c&&n?'<script>(function(){var a=document.querySelector(".'.concat(T,'");if(a){a.indeterminate=true}})()<\/script>'):"");return E.push("</table>",v),b?E.join(""):createHtmlPage(i,E.join(""))}function toXML(o,r,e,t){var n=['<?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="'.concat(r.sheetName,'">'),"<Table>",e.map(function(e){return'<Column ss:Width="'.concat(e.renderWidth,'"/>')}).join("")].join("");return r.isHeader&&(n+="<Row>".concat(e.map(function(e){return'<Cell><Data ss:Type="String">'.concat(getHeaderTitle(r,e),"</Data></Cell>")}).join(""),"</Row>")),t.forEach(function(t){n+="<Row>"+e.map(function(e){return'<Cell><Data ss:Type="String">'.concat(t[e.id],"</Data></Cell>")}).join("")+"</Row>"}),r.isFooter&&(t=o.footerTableData,getFooterData(r,t).forEach(function(t){n+="<Row>".concat(e.map(function(e){return'<Cell><Data ss:Type="String">'.concat(getFooterCellValue(o,r,t,e),"</Data></Cell>")}).join(""),"</Row>")})),"".concat(n,"</Table></Worksheet></Workbook>")}function getContent(e,t,o,r){if(o.length)switch(t.type){case"csv":return toCsv(e,t,o,r);case"txt":return toTxt(e,t,o,r);case"html":return toHtml(e,t,o,r);case"xml":return toXML(e,t,o,r)}return""}function saveLocalFile(e){var t,o,r=e.filename,n=e.type,a=e.content,r="".concat(r,".").concat(n);return window.Blob?(n=a instanceof Blob?a:getExportBlobByContent(_xeUtils.default.toValueString(a),e),navigator.msSaveBlob?navigator.msSaveBlob(n,r):(t=URL.createObjectURL(n),(o=document.createElement("a")).target="_blank",o.download=r,o.href=t,document.body.appendChild(o),o.click(),document.body.removeChild(o),requestAnimationFrame(function(){o.parentNode&&o.parentNode.removeChild(o),URL.revokeObjectURL(t)})),Promise.resolve()):Promise.reject(new Error((0,_log.getLog)("vxe.error.notExp")))}function downloadFile(e,t,o){var r,n=t.filename,a=t.type;if(!t.download)return r=getExportBlobByContent(o,t),Promise.resolve({type:a,content:o,blob:r});saveLocalFile({filename:n,type:a,content:o}).then(function(){!1!==t.message&&("development"!==process.env.NODE_ENV||_vXETable.default.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.default.modal.message({content:_conf.default.i18n("vxe.table.expSuccess"),status:"success"}))})}function clearColumnConvert(e){_xeUtils.default.eachTree(e,function(e){delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function handleExport(r,n){var a=n.remote,l=n.columns,i=n.colgroups,c=n.exportMethod,t=n.afterExportMethod;return new Promise(function(e){var t,o;a?(t={options:n,$table:r,$grid:r.$xegrid},e(c?c(t):t)):(o=getExportData(r,n),e(r.preventEvent(null,"event.export",{options:n,columns:l,colgroups:i,datas:o},function(){return downloadFile(r,n,getContent(r,n,l,o))})))}).then(function(e){return clearColumnConvert(l),n.print||t&&t({status:!0,options:n,$table:r,$grid:r.$xegrid}),Object.assign({status:!0},e)}).catch(function(){clearColumnConvert(l),n.print||t&&t({status:!1,options:n,$table:r,$grid:r.$xegrid});return Promise.reject({status:!1})})}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return"#".concat(e,"@").concat(_xeUtils.default.uniqueId())}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,function(e){return _xeUtils.default.hasOwnProp(t,e)?t[e]:e})}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,function(e){return'"'.repeat(Math.ceil(e.length/2))})}function parseCsvAndTxt(e,t,r){var n,a,t=t.split(enterSymbol),l=[],i=[];return t.length&&(n={},a=Date.now(),t.forEach(function(e){var o;e&&(o={},e=(e=e.replace(/("")|(\n)/g,function(e,t){var o=getTxtCellKey(a);return n[o]=t?'"':"\n",o}).replace(/"(.*?)"/g,function(e,t){var o=getTxtCellKey(a);return n[o]=replaceTxtCell(t,n),o})).split(r),i.length?(e.forEach(function(e,t){t<i.length&&(o[i[t]]=getTxtCellValue(e,n))}),l.push(o)):i=e.map(function(e){return getTxtCellValue(e.trim(),n)}))})),{fields:i,rows:l}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(e,t){var o,t=getElementsByTagName((new DOMParser).parseFromString(t,"text/html"),"body"),r=[],n=[];return t.length&&(t=getElementsByTagName(t[0],"table")).length&&(o=getElementsByTagName(t[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(o[0],"tr"),function(e){_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),function(e){n.push(e.textContent)})}),(o=getElementsByTagName(t[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(o[0],"tr"),function(e){var o={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),function(e,t){n[t]&&(o[n[t]]=e.textContent||"")}),r.push(o)}),{fields:n,rows:r}}function parseXML(e,t){var t=getElementsByTagName((new DOMParser).parseFromString(t,"application/xml"),"Worksheet"),r=[],n=[];return t.length&&(t=getElementsByTagName(t[0],"Table")).length&&(t=getElementsByTagName(t[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(t[0],"Cell"),function(e){n.push(e.textContent)}),_xeUtils.default.arrayEach(t,function(e,t){var o;t&&(o={},t=getElementsByTagName(e,"Cell"),_xeUtils.default.arrayEach(t,function(e,t){n[t]&&(o[n[t]]=e.textContent)}),r.push(o))})),{fields:n,rows:r}}function checkImportData(e,t){var o=[];return e.forEach(function(e){e=e.property;e&&o.push(e)}),t.some(function(e){return-1<o.indexOf(e)})}function handleImport(t,e,o){var r=t.tableFullColumn,n=t._importResolve,a=t._importReject,l={fields:[],rows:[]};switch(o.type){case"csv":l=parseCsv(r,e);break;case"txt":l=parseTxt(r,e);break;case"html":l=parseHTML(r,e);break;case"xml":l=parseXML(r,e)}var i=l,c=i.fields,s=i.rows;checkImportData(r,c)?t.createData(s).then(function(e){e="insert"===o.mode?t.insert(e):t.reloadData(e);return!1!==o.message&&("development"!==process.env.NODE_ENV||_vXETable.default.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.default.modal.message({content:_conf.default.i18n("vxe.table.impSuccess",[s.length]),status:"success"})),e.then(function(){n&&n({status:!0})})}):!1!==o.message&&("development"!==process.env.NODE_ENV||_vXETable.default.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.default.modal.message({content:_conf.default.i18n("vxe.error.impFields"),status:"error"}),a)&&a({status:!1})}function handleFileImport(a,l,i){var c=i.importMethod,t=i.afterImportMethod,e=_utils.default.parseFile(l),s=e.type,d=e.filename;return c||_xeUtils.default.includes(_vXETable.default.config.importTypes,s)?new Promise(function(t,o){function e(e){t(e),a._importResolve=null,a._importReject=null}function r(e){o(e),a._importResolve=null,a._importReject=null}var n;a._importResolve=e,a._importReject=r,window.FileReader?(n=Object.assign({mode:"insert"},i,{type:s,filename:d})).remote?c?Promise.resolve(c({file:l,options:n,$table:a})).then(function(){e({status:!0})}).catch(function(){e({status:!0})}):e({status:!0}):a.preventEvent(null,"event.import",{file:l,options:n,columns:a.tableFullColumn},function(){var e=new FileReader;e.onerror=function(){(0,_log.errLog)("vxe.error.notType",[s]),r({status:!1})},e.onload=function(e){handleImport(a,e.target.result,n)},e.readAsText(l,n.encoding||"UTF-8")}):("development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notExp"),e({status:!0}))}).then(function(){t&&t({status:!0,options:i,$table:a})}).catch(function(e){return t&&t({status:!1,options:i,$table:a}),Promise.reject(e)}):(!1!==i.message&&("development"!==process.env.NODE_ENV||_vXETable.default.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.default.modal.message({content:_conf.default.i18n("vxe.error.notType",[s]),status:"error"})),Promise.reject({status:!1}))}function readLocalFile(){var s=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return fileForm||(fileForm=document.createElement("form"),fileInput=document.createElement("input"),fileForm.className="vxe-table--file-form",fileInput.name="file",fileInput.type="file",fileForm.appendChild(fileInput),document.body.appendChild(fileForm)),new Promise(function(a,l){var i=s.types||[],c=!i.length||i.some(function(e){return"*"===e});fileInput.multiple=!!s.multiple,fileInput.accept=c?"":".".concat(i.join(", .")),fileInput.onchange=function(e){var t,o=e.target.files,e=o[0];if(!c)for(var r=0;r<o.length;r++){var n=_utils.default.parseFile(o[r]).type;if(!_xeUtils.default.includes(i,n)){t=n;break}}t?(!1!==s.message&&("development"!==process.env.NODE_ENV||_vXETable.default.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.default.modal.message({content:_conf.default.i18n("vxe.error.notType",[t]),status:"error"})),l({status:!1,files:o,file:e})):a({status:!0,files:o,file:e})},fileForm.reset(),fileInput.click()})}function removePrintFrame(){if(printFrame){if(printFrame.parentNode){try{printFrame.contentDocument.write("")}catch(e){}printFrame.parentNode.removeChild(printFrame)}printFrame=null}}function appendPrintFrame(){printFrame.parentNode||document.body.appendChild(printFrame)}function afterPrintEvent(){requestAnimationFrame(removePrintFrame)}function handlePrint(e,t,o){var r=t.beforePrintMethod,r=getExportBlobByContent(o=createHtmlPage(t,o=r?r({content:o,options:t,$table:e})||"":o),t);_dom.browse.msie?(removePrintFrame(),printFrame=createFrame(),appendPrintFrame(),printFrame.contentDocument.write(o),printFrame.contentDocument.execCommand("print")):(printFrame||((printFrame=createFrame()).onload=function(e){e.target.src&&(e.target.contentWindow.onafterprint=afterPrintEvent,e.target.contentWindow.print())}),appendPrintFrame(),printFrame.src=URL.createObjectURL(r))}function handleExportAndPrint(e,t,o){var r=e.initStore,n=e.customOpts,a=e.collectColumn,l=e.footerTableData,i=e.treeConfig,c=e.mergeList,s=e.isGroup,d=e.exportParams,u=e.getCheckboxRecords(),l=!!l.length,c=!i&&c.length,t=Object.assign({message:!0,isHeader:!0},t),p=t.types||_vXETable.default.config.exportTypes,f=t.modes,m=n.checkMethod,n=a.slice(0),h=t.columns,a=p.map(function(e){return{value:e,label:"vxe.export.types.".concat(e)}}),b=f.map(function(e){return{value:e,label:"vxe.export.modes.".concat(e)}});return _xeUtils.default.eachTree(n,function(r,e,t,o,n){(r.children&&r.children.length||defaultFilterExportColumn(r))&&(r.checked=h?h.some(function(e){var t,o;return(0,_util.isColumnInfo)(e)?r===e:_xeUtils.default.isString(e)?r.field===e:(t=e.id||e.colId,o=e.type,e=e.property||e.field,t?r.id===t:e&&o?r.property===e&&r.type===o:e?r.property===e:!!o&&r.type===o)}):r.visible,r.halfChecked=!1,r.disabled=n&&n.disabled||!!m&&!m({column:r}))}),Object.assign(e.exportStore,{columns:n,typeList:a,modeList:b,hasFooter:l,hasMerge:c,hasTree:i,isPrint:o,hasColgroup:s,visible:!0}),Object.assign(d,{mode:u.length?"selected":"current"},t),-1===f.indexOf(d.mode)&&(d.mode=f[0]),-1===p.indexOf(d.type)&&(d.type=p[0]),r.export=!0,e.$nextTick()}var getConvertColumns=function t(e){var o=[];return e.forEach(function(e){e.childNodes&&e.childNodes.length?(o.push(e),o.push.apply(o,_toConsumableArray(t(e.childNodes)))):o.push(e)}),o},convertToRows=function(e){for(var n=1,t=function t(o,e){var r;e&&(o._level=e._level+1,n<o._level)&&(n=o._level),o.childNodes&&o.childNodes.length?(r=0,o.childNodes.forEach(function(e){t(e,o),r+=e._colSpan}),o._colSpan=r):o._colSpan=1},o=(e.forEach(function(e){e._level=1,t(e)}),[]),r=0;r<n;r++)o.push([]);return getConvertColumns(e).forEach(function(e){e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=n-e._level+1,o[e._level-1].push(e)}),o},_default={methods:{_exportData:function(e){var a=this,t=this.$xegrid,o=this.isGroup,r=this.tableGroupColumn,l=this.tableFullColumn,n=this.afterFullData,i=this.treeConfig,c=this.treeOpts,s=this.exportOpts,d=Object.assign({isHeader:!0,isFooter:!0,isColgroup:!0,isMerge:!1,isAllExpand:!1,download:!0,type:"csv",mode:"current"},s,{print:!1},e),s=d.type,e=d.mode,u=d.columns,p=d.original,f=d.beforeExportMethod,m=[],u=u&&u.length?u:null,h=d.columnFilterMethod,b=(u||(h=h||(p?function(e){return e.column.property}:function(e){return defaultFilterExportColumn(e.column)})),m=u?_xeUtils.default.searchTree(_xeUtils.default.mapTree(u,function(e){var t,o,r,n;if(e)return(0,_util.isColumnInfo)(e)?t=e:_xeUtils.default.isString(e)?t=a.getColumnByField(e):(o=e.id||e.colId,r=e.type,n=e.property||e.field,o?t=a.getColumnById(o):n&&r?t=l.find(function(e){return e.property===n&&e.type===r}):n?t=a.getColumnByField(n):r&&(t=l.find(function(e){return e.type===r}))),t||{}},{children:"childNodes",mapChildren:"_children"}),function(e,t){return(0,_util.isColumnInfo)(e)&&(!h||h({column:e,$columnIndex:t}))},{children:"_children",mapChildren:"childNodes",original:!0}):_xeUtils.default.searchTree(o?r:l,function(e,t){return e.visible&&(!h||h({column:e,$columnIndex:t}))},{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(m,function(e){e.children&&e.children.length||b.push(e)},{children:"childNodes"}),d.columns=b,d.colgroups=convertToRows(m),d.filename||(d.filename=_conf.default.i18n(d.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),d.sheetName||(d.sheetName=document.title),!d.exportMethod&&!_xeUtils.default.includes(_vXETable.default.config.exportTypes,s))return"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notType",[s]),Promise.reject({status:!1});if(d.print||f&&f({options:d,$table:this,$grid:t}),!d.data)if(d.data=n,"selected"===e){var g=this.getCheckboxRecords();-1<["html","pdf"].indexOf(s)&&i?d.data=_xeUtils.default.searchTree(this.getTableData().fullData,function(e){return-1<g.indexOf(e)},Object.assign({},c,{data:"_row"})):d.data=g}else if("all"===e&&("development"!==process.env.NODE_ENV||t||(0,_log.warnLog)("vxe.error.errProp",["all","mode=current,selected"]),t)&&!d.remote){var x,p=t.proxyOpts,u=p.beforeQueryAll,v=p.afterQueryAll,o=p.ajax,r=p.props,y=void 0===r?{}:r,m=(void 0===o?{}:o).queryAll;if("development"!==process.env.NODE_ENV||m||(0,_log.warnLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),m)return x={$table:this,$grid:t,sort:t.sortData,filters:t.filterData,form:t.formData,target:m,options:d},Promise.resolve((u||m)(x)).catch(function(e){return e}).then(function(e){return d.data=(y.list?_xeUtils.default.get(e,y.list):e)||[],v&&v(x),handleExport(a,d)})}return handleExport(this,d)},_importByFile:function(e,t){var t=Object.assign({},t),o=t.beforeImportMethod;return o&&o({options:t,$table:this}),handleFileImport(this,e,t)},_importData:function(e){var t=this,o=Object.assign({types:_vXETable.default.config.importTypes},this.importOpts,e),e=o.beforeImportMethod,r=o.afterImportMethod;return e&&e({options:o,$table:this}),readLocalFile(o).catch(function(e){return r&&r({status:!1,options:o,$table:t}),Promise.reject(e)}).then(function(e){e=e.file;return handleFileImport(t,e,o)})},_saveFile:function(e){return saveLocalFile(e)},_readFile:function(e){return readLocalFile(e)},_print:function(e){var t=this,o=Object.assign({original:!1},this.printOpts,e,{type:"html",download:!1,remote:!1,print:!0});return o.sheetName||(o.sheetName=document.title),new Promise(function(e){o.content?e(handlePrint(t,o,o.content)):e(t.exportData(o).then(function(e){e=e.content;return handlePrint(t,o,e)}))})},_openImport:function(e){var t,e=Object.assign({mode:"insert",message:!0,types:_vXETable.default.config.importTypes},e,this.importOpts),o=e.types;!this.getTreeStatus()?(this.importConfig||(0,_log.errLog)("vxe.error.reqProp",["import-config"]),o=o.map(function(e){return{value:e,label:"vxe.export.types.".concat(e)}}),t=e.modes.map(function(e){return{value:e,label:"vxe.import.modes.".concat(e)}}),Object.assign(this.importStore,{file:null,type:"",filename:"",modeList:t,typeList:o,visible:!0}),Object.assign(this.importParams,e),this.initStore.import=!0):e.message&&_vXETable.default.modal.message({content:_conf.default.i18n("vxe.error.treeNotImp"),status:"error"})},_openExport:function(e){var t=this.exportOpts;return"development"!==process.env.NODE_ENV||this.exportConfig||(0,_log.errLog)("vxe.error.reqProp",["export-config"]),handleExportAndPrint(this,Object.assign({},t,e))},_openPrint:function(e){var t=this.printOpts;return"development"!==process.env.NODE_ENV||this.printConfig||(0,_log.errLog)("vxe.error.reqProp",["print-config"]),handleExportAndPrint(this,Object.assign({},t,e),!0)}}};exports.default=_default;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.handlePrint=handlePrint,exports.readLocalFile=readLocalFile,exports.saveLocalFile=saveLocalFile;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_utils=_interopRequireDefault(require("../../tools/utils")),_util=require("../../table/src/util"),_dom=require("../../tools/dom"),_log=require("../../tools/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var o;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(o="Object"===(o=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:o)||"Set"===o?Array.from(e):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?_arrayLikeToArray(e,t):void 0}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,r=new Array(t);o<t;o++)r[o]=e[o];return r}var htmlCellElem,fileForm,fileInput,printFrame,formatText=_utils.default.formatText,defaultHtmlStyle='body{margin:0;color:#333333;font-size:14px;font-family:"Microsoft YaHei",微软雅黑,"MicrosoftJhengHei",华文细黑,STHeiti,MingLiu}body *{-webkit-box-sizing:border-box;box-sizing:border-box}.vxe-table{border-collapse:collapse;text-align:left;border-spacing:0}.vxe-table:not(.is--print){table-layout:fixed}.vxe-table,.vxe-table th,.vxe-table td,.vxe-table td{border-color:#D0D0D0;border-style:solid;border-width:0}.vxe-table.is--print{width:100%}.border--default,.border--full,.border--outer{border-top-width:1px}.border--default,.border--full,.border--outer{border-left-width:1px}.border--outer,.border--default th,.border--default td,.border--full th,.border--full td,.border--outer th,.border--inner th,.border--inner td{border-bottom-width:1px}.border--default,.border--outer,.border--full th,.border--full td{border-right-width:1px}.border--default th,.border--full th,.border--outer th{background-color:#f8f8f9}.vxe-table td>div,.vxe-table th>div{padding:.5em .4em}.col--center{text-align:center}.col--right{text-align:right}.vxe-table:not(.is--print) .col--ellipsis>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:break-all}.vxe-table--tree-node{text-align:left}.vxe-table--tree-node-wrapper{position:relative}.vxe-table--tree-icon-wrapper{position:absolute;top:50%;width:1em;height:1em;text-align:center;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer}.vxe-table--tree-unfold-icon,.vxe-table--tree-fold-icon{position:absolute;width:0;height:0;border-style:solid;border-width:.5em;border-right-color:transparent;border-bottom-color:transparent}.vxe-table--tree-unfold-icon{left:.3em;top:0;border-left-color:#939599;border-top-color:transparent}.vxe-table--tree-fold-icon{left:0;top:.3em;border-left-color:transparent;border-top-color:#939599}.vxe-table--tree-cell{display:block;padding-left:1.5em}.vxe-table input[type="checkbox"]{margin:0}.vxe-table input[type="checkbox"],.vxe-table input[type="radio"],.vxe-table input[type="checkbox"]+span,.vxe-table input[type="radio"]+span{vertical-align:middle;padding-left:0.4em}',csvBOM="\ufeff",enterSymbol="\r\n";function createFrame(){var e=document.createElement("iframe");return e.className="vxe-table--print-frame",e}function getExportBlobByContent(e,t){return window.Blob?new Blob([e],{type:"text/".concat(t.type,";charset=utf-8;")}):null}function hasTreeChildren(e,t){e=e.treeOpts;return t[e.children]&&0<t[e.children].length}function getSeq(e,t,o,r,n){var a=e.seqOpts.seqMethod||r.seqMethod;return a?a({row:t,rowIndex:e.getRowIndex(t),$rowIndex:o,column:r,columnIndex:e.getColumnIndex(r),$columnIndex:n}):e.getRowSeq(t)}function defaultFilterExportColumn(e){return e.property||-1<["seq","checkbox","radio"].indexOf(e.type)}function toTableBorder(e){return!0===e?"full":e||"default"}function toBooleanValue(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}function getLabelData(d,u,n,e){var a,p,f=u.isAllExpand,m=u.mode,t=d.treeConfig,o=d.treeOpts,h=d.radioOpts,b=d.checkboxOpts;return htmlCellElem=htmlCellElem||document.createElement("div"),t?(a=[],p=new Map,_xeUtils.default.eachTree(e,function(e,l,t,i,o,r){var c,s=e._row||e,e=o&&o._row?o._row:o;(f||!e||p.has(e)&&d.isTreeExpandByRow(e))&&(o=hasTreeChildren(d,s),c={_row:s,_level:r.length-1,_hasChild:o,_expand:o&&d.isTreeExpandByRow(s)},n.forEach(function(e,t){var o,r="",n=e.editRender||e.cellRender,a=e.exportMethod;if(a=!a&&n&&n.name&&(n=_vXETable.default.renderer.get(n.name))?n.exportMethod||n.cellExportMethod:a)r=a({$table:d,row:s,column:e,options:u});else switch(e.type){case"seq":r="all"===m?i.map(function(e,t){return t%2==0?Number(e)+1:"."}).join(""):getSeq(d,s,l,e,t);break;case"checkbox":r=toBooleanValue(d.isCheckedByCheckboxRow(s)),c._checkboxLabel=b.labelField?_xeUtils.default.get(s,b.labelField):"",c._checkboxDisabled=b.checkMethod&&!b.checkMethod({row:s});break;case"radio":r=toBooleanValue(d.isCheckedByRadioRow(s)),c._radioLabel=h.labelField?_xeUtils.default.get(s,h.labelField):"",c._radioDisabled=h.checkMethod&&!h.checkMethod({row:s});break;default:u.original?r=_utils.default.getCellValue(s,e):(r=d.getCellLabel(s,e),"html"===e.type?(htmlCellElem.innerHTML=r,r=htmlCellElem.innerText.trim()):(o=d.getCell(s,e))&&(r=o.innerText.trim()))}c[e.id]=_xeUtils.default.toValueString(r)}),p.set(s,1),a.push(Object.assign(c,s)))},o),a):e.map(function(l,i){var c={_row:l};return n.forEach(function(e,t){var o,r="",n=e.editRender||e.cellRender,a=e.exportMethod;if(a=!a&&n&&n.name&&(n=_vXETable.default.renderer.get(n.name))?n.exportMethod||n.cellExportMethod:a)r=a({$table:d,row:l,column:e,options:u});else switch(e.type){case"seq":r="all"===m?i+1:getSeq(d,l,i,e,t);break;case"checkbox":r=toBooleanValue(d.isCheckedByCheckboxRow(l)),c._checkboxLabel=b.labelField?_xeUtils.default.get(l,b.labelField):"",c._checkboxDisabled=b.checkMethod&&!b.checkMethod({row:l});break;case"radio":r=toBooleanValue(d.isCheckedByRadioRow(l)),c._radioLabel=h.labelField?_xeUtils.default.get(l,h.labelField):"",c._radioDisabled=h.checkMethod&&!h.checkMethod({row:l});break;default:u.original?r=_utils.default.getCellValue(l,e):(r=d.getCellLabel(l,e),"html"===e.type?(htmlCellElem.innerHTML=r,r=htmlCellElem.innerText.trim()):(o=d.getCell(l,e))&&(r=o.innerText.trim()))}c[e.id]=_xeUtils.default.toValueString(r)}),c})}function getExportData(e,t){var o=t.columns,r=t.dataFilterMethod,n=t.data;return getLabelData(e,t,o,n=r?n.filter(function(e,t){return r({row:e,$rowIndex:t})}):n)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t,o){var r=o.headerExportMethod;return r?r({column:o,$table:e}):(t.original?o.property:o.getTitle())||""}function getFooterCellValue(e,t,o,r){var n=r.editRender||r.cellRender,a=r.footerExportMethod,n=(!a&&n&&n.name&&(n=_vXETable.default.renderer.get(n.name))&&(a=n.footerExportMethod||n.footerCellExportMethod),e.getVTColumnIndex(r));return a?a({$table:e,items:o,itemIndex:n,_columnIndex:n,column:r,options:t}):_xeUtils.default.toValueString(o[n])}function getFooterData(e,t){var o=e.footerFilterMethod;return o?t.filter(function(e,t){return o({items:e,$rowIndex:t})}):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return"\t".concat(t);switch(e.cellType){case"string":if(isNaN(t))break;return"\t".concat(t);case"number":break;default:if(12<=t.length&&!isNaN(t))return"\t".concat(t)}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?'"'.concat(e.replace(/"/g,'""'),'"'):e}function toCsv(o,r,e,t){var n=csvBOM;return r.isHeader&&(n+=e.map(function(e){return toTxtCellLabel(getHeaderTitle(o,r,e))}).join(",")+enterSymbol),t.forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))}).join(",")+enterSymbol}),r.isFooter&&(t=o.footerTableData,getFooterData(r,t).forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(getFooterCellValue(o,r,t,e))}).join(",")+enterSymbol})),n}function toTxt(o,r,e,t){var n="";return r.isHeader&&(n+=e.map(function(e){return toTxtCellLabel(getHeaderTitle(o,r,e))}).join("\t")+enterSymbol),t.forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(t[e.id])}).join("\t")+enterSymbol}),r.isFooter&&(t=o.footerTableData,getFooterData(r,t).forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(getFooterCellValue(o,r,t,e))}).join(",")+enterSymbol})),n}function hasEllipsis(e,t,o,r){t=t[o],o=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?r:t,r="title"===o||(!0===o||"tooltip"===o)||"ellipsis"===o;return r=e.scrollXLoad||e.scrollYLoad?r||!0:r}function createHtmlPage(e,t){var o=e.style;return["<!DOCTYPE html><html>","<head>",'<meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no,minimal-ui">',"<title>".concat(e.sheetName,"</title>"),"<style>".concat(defaultHtmlStyle,"</style>"),o?"<style>".concat(o,"</style>"):"","</head>","<body>".concat(t,"</body>"),"</html>"].join("")}function toHtml(s,i,e,t){var d=s.id,o=s.border,r=s.treeConfig,a=s.treeOpts,c=s.isAllSelected,n=s.isIndeterminate,u=s.headerAlign,p=s.align,l=s.footerAlign,f=s.showOverflow,m=s.showHeaderOverflow,h=s.mergeList,b=i.print,g=i.isHeader,x=i.isFooter,v=i.isColgroup,y=i.isMerge,_=i.colgroups,w=i.original,T="check-all",o=["vxe-table","border--".concat(toTableBorder(o)),b?"is--print":"",g?"is--header":""].filter(function(e){return e}),E=['<table class="'.concat(o.join(" "),'" border="0" cellspacing="0" cellpadding="0">'),"<colgroup>".concat(e.map(function(e){return'<col style="width:'.concat(e.renderWidth,'px">')}).join(""),"</colgroup>")],v=(g&&(E.push("<thead>"),v&&!w?_.forEach(function(e){E.push("<tr>".concat(e.map(function(t){var e=t.headerAlign||t.align||u||p,o=hasEllipsis(s,t,"showHeaderOverflow",m)?["col--ellipsis"]:[],r=getHeaderTitle(s,i,t),n=0,a=0,l=(_xeUtils.default.eachTree([t],function(e){e.childNodes&&t.childNodes.length||a++,n+=e.renderWidth},{children:"childNodes"}),n-a);return e&&o.push("col--".concat(e)),"checkbox"===t.type?'<th class="'.concat(o.join(" "),'" colspan="').concat(t._colSpan,'" rowspan="').concat(t._rowSpan,'"><div ').concat(b?"":'style="width: '.concat(l,'px"'),'><input type="checkbox" class="').concat(T,'" ').concat(c?"checked":"","><span>").concat(r,"</span></div></th>"):'<th class="'.concat(o.join(" "),'" colspan="').concat(t._colSpan,'" rowspan="').concat(t._rowSpan,'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(l,'px"'),"><span>").concat(formatText(r,!0),"</span></div></th>")}).join(""),"</tr>"))}):E.push("<tr>".concat(e.map(function(e){var t=e.headerAlign||e.align||u||p,o=hasEllipsis(s,e,"showHeaderOverflow",m)?["col--ellipsis"]:[],r=getHeaderTitle(s,i,e);return t&&o.push("col--".concat(t)),"checkbox"===e.type?'<th class="'.concat(o.join(" "),'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="checkbox" class="').concat(T,'" ').concat(c?"checked":"","><span>").concat(r,"</span></div></th>"):'<th class="'.concat(o.join(" "),'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),"><span>").concat(formatText(r,!0),"</span></div></th>")}).join(""),"</tr>")),E.push("</thead>")),t.length&&(E.push("<tbody>"),r?t.forEach(function(n){E.push("<tr>"+e.map(function(e){var t=e.align||p,o=hasEllipsis(s,e,"showOverflow",f)?["col--ellipsis"]:[],r=n[e.id];return t&&o.push("col--".concat(t)),e.treeNode?(t="",n._hasChild&&(t='<i class="'.concat(n._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon",'"></i>')),o.push("vxe-table--tree-node"),"radio"===e.type?'<td class="'.concat(o.join(" "),'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><div class="vxe-table--tree-node-wrapper" style="padding-left: ').concat(n._level*a.indent,'px"><div class="vxe-table--tree-icon-wrapper">').concat(t,'</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_').concat(d,'" ').concat(n._radioDisabled?"disabled ":"").concat(getBooleanValue(r)?"checked":"","><span>").concat(n._radioLabel,"</span></div></div></div></td>"):"checkbox"===e.type?'<td class="'.concat(o.join(" "),'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><div class="vxe-table--tree-node-wrapper" style="padding-left: ').concat(n._level*a.indent,'px"><div class="vxe-table--tree-icon-wrapper">').concat(t,'</div><div class="vxe-table--tree-cell"><input type="checkbox" ').concat(n._checkboxDisabled?"disabled ":"").concat(getBooleanValue(r)?"checked":"","><span>").concat(n._checkboxLabel,"</span></div></div></div></td>"):'<td class="'.concat(o.join(" "),'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><div class="vxe-table--tree-node-wrapper" style="padding-left: ').concat(n._level*a.indent,'px"><div class="vxe-table--tree-icon-wrapper">').concat(t,'</div><div class="vxe-table--tree-cell">').concat(r,"</div></div></div></td>")):"radio"===e.type?'<td class="'.concat(o.join(" "),'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="radio" name="radio_').concat(d,'" ').concat(n._radioDisabled?"disabled ":"").concat(getBooleanValue(r)?"checked":"","><span>").concat(n._radioLabel,"</span></div></td>"):"checkbox"===e.type?'<td class="'.concat(o.join(" "),'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="checkbox" ').concat(n._checkboxDisabled?"disabled ":"").concat(getBooleanValue(r)?"checked":"","><span>").concat(n._checkboxLabel,"</span></div></td>"):'<td class="'.concat(o.join(" "),'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),">").concat(formatText(r,!0),"</div></td>")}).join("")+"</tr>")}):t.forEach(function(c){E.push("<tr>"+e.map(function(e){var t=e.align||p,o=hasEllipsis(s,e,"showOverflow",f)?["col--ellipsis"]:[],r=c[e.id],n=1,a=1;if(y&&h.length){var l=s.getVTRowIndex(c._row),i=s.getVTColumnIndex(e),l=(0,_util.mergeBodyMethod)(h,l,i);if(l){i=l.rowspan,l=l.colspan;if(!i||!l)return"";1<i&&(n=i),1<l&&(a=l)}}return t&&o.push("col--".concat(t)),"radio"===e.type?'<td class="'.concat(o.join(" "),'" rowspan="').concat(n,'" colspan="').concat(a,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="radio" name="radio_').concat(d,'" ').concat(c._radioDisabled?"disabled ":"").concat(getBooleanValue(r)?"checked":"","><span>").concat(c._radioLabel,"</span></div></td>"):"checkbox"===e.type?'<td class="'.concat(o.join(" "),'" rowspan="').concat(n,'" colspan="').concat(a,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="checkbox" ').concat(c._checkboxDisabled?"disabled ":"").concat(getBooleanValue(r)?"checked":"","><span>").concat(c._checkboxLabel,"</span></div></td>"):'<td class="'.concat(o.join(" "),'" rowspan="').concat(n,'" colspan="').concat(a,'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),">").concat(formatText(r,!0),"</div></td>")}).join("")+"</tr>")}),E.push("</tbody>")),x&&(o=s.footerTableData,(g=getFooterData(i,o)).length)&&(E.push("<tfoot>"),g.forEach(function(n){E.push("<tr>".concat(e.map(function(e){var t=e.footerAlign||e.align||l||p,o=hasEllipsis(s,e,"showOverflow",f)?["col--ellipsis"]:[],r=getFooterCellValue(s,i,n,e);return t&&o.push("col--".concat(t)),'<td class="'.concat(o.join(" "),'" title="').concat(r,'"><div ').concat(b?"":'style="width: '.concat(e.renderWidth,'px"'),">").concat(formatText(r,!0),"</div></td>")}).join(""),"</tr>"))}),E.push("</tfoot>")),!c&&n?'<script>(function(){var a=document.querySelector(".'.concat(T,'");if(a){a.indeterminate=true}})()<\/script>'):"");return E.push("</table>",v),b?E.join(""):createHtmlPage(i,E.join(""))}function toXML(o,r,e,t){var n=['<?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="'.concat(r.sheetName,'">'),"<Table>",e.map(function(e){return'<Column ss:Width="'.concat(e.renderWidth,'"/>')}).join("")].join("");return r.isHeader&&(n+="<Row>".concat(e.map(function(e){return'<Cell><Data ss:Type="String">'.concat(getHeaderTitle(o,r,e),"</Data></Cell>")}).join(""),"</Row>")),t.forEach(function(t){n+="<Row>"+e.map(function(e){return'<Cell><Data ss:Type="String">'.concat(t[e.id],"</Data></Cell>")}).join("")+"</Row>"}),r.isFooter&&(t=o.footerTableData,getFooterData(r,t).forEach(function(t){n+="<Row>".concat(e.map(function(e){return'<Cell><Data ss:Type="String">'.concat(getFooterCellValue(o,r,t,e),"</Data></Cell>")}).join(""),"</Row>")})),"".concat(n,"</Table></Worksheet></Workbook>")}function getContent(e,t,o,r){if(o.length)switch(t.type){case"csv":return toCsv(e,t,o,r);case"txt":return toTxt(e,t,o,r);case"html":return toHtml(e,t,o,r);case"xml":return toXML(e,t,o,r)}return""}function saveLocalFile(e){var t,o,r=e.filename,n=e.type,a=e.content,r="".concat(r,".").concat(n);return window.Blob?(n=a instanceof Blob?a:getExportBlobByContent(_xeUtils.default.toValueString(a),e),navigator.msSaveBlob?navigator.msSaveBlob(n,r):(t=URL.createObjectURL(n),(o=document.createElement("a")).target="_blank",o.download=r,o.href=t,document.body.appendChild(o),o.click(),document.body.removeChild(o),requestAnimationFrame(function(){o.parentNode&&o.parentNode.removeChild(o),URL.revokeObjectURL(t)})),Promise.resolve()):Promise.reject(new Error((0,_log.getLog)("vxe.error.notExp")))}function downloadFile(e,t,o){var r,n=t.filename,a=t.type;if(!t.download)return r=getExportBlobByContent(o,t),Promise.resolve({type:a,content:o,blob:r});saveLocalFile({filename:n,type:a,content:o}).then(function(){!1!==t.message&&("development"!==process.env.NODE_ENV||_vXETable.default.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.default.modal.message({content:_conf.default.i18n("vxe.table.expSuccess"),status:"success"}))})}function clearColumnConvert(e){_xeUtils.default.eachTree(e,function(e){delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function handleExport(r,n){var a=n.remote,l=n.columns,i=n.colgroups,c=n.exportMethod,t=n.afterExportMethod;return new Promise(function(e){var t,o;a?(t={options:n,$table:r,$grid:r.$xegrid},e(c?c(t):t)):(o=getExportData(r,n),e(r.preventEvent(null,"event.export",{options:n,columns:l,colgroups:i,datas:o},function(){return downloadFile(r,n,getContent(r,n,l,o))})))}).then(function(e){return clearColumnConvert(l),n.print||t&&t({status:!0,options:n,$table:r,$grid:r.$xegrid}),Object.assign({status:!0},e)}).catch(function(){clearColumnConvert(l),n.print||t&&t({status:!1,options:n,$table:r,$grid:r.$xegrid});return Promise.reject({status:!1})})}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return"#".concat(e,"@").concat(_xeUtils.default.uniqueId())}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,function(e){return _xeUtils.default.hasOwnProp(t,e)?t[e]:e})}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,function(e){return'"'.repeat(Math.ceil(e.length/2))})}function parseCsvAndTxt(e,t,r){var n,a,t=t.split(enterSymbol),l=[],i=[];return t.length&&(n={},a=Date.now(),t.forEach(function(e){var o;e&&(o={},e=(e=e.replace(/("")|(\n)/g,function(e,t){var o=getTxtCellKey(a);return n[o]=t?'"':"\n",o}).replace(/"(.*?)"/g,function(e,t){var o=getTxtCellKey(a);return n[o]=replaceTxtCell(t,n),o})).split(r),i.length?(e.forEach(function(e,t){t<i.length&&(o[i[t]]=getTxtCellValue(e,n))}),l.push(o)):i=e.map(function(e){return getTxtCellValue(e.trim(),n)}))})),{fields:i,rows:l}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(e,t){var o,t=getElementsByTagName((new DOMParser).parseFromString(t,"text/html"),"body"),r=[],n=[];return t.length&&(t=getElementsByTagName(t[0],"table")).length&&(o=getElementsByTagName(t[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(o[0],"tr"),function(e){_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),function(e){n.push(e.textContent)})}),(o=getElementsByTagName(t[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(o[0],"tr"),function(e){var o={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),function(e,t){n[t]&&(o[n[t]]=e.textContent||"")}),r.push(o)}),{fields:n,rows:r}}function parseXML(e,t){var t=getElementsByTagName((new DOMParser).parseFromString(t,"application/xml"),"Worksheet"),r=[],n=[];return t.length&&(t=getElementsByTagName(t[0],"Table")).length&&(t=getElementsByTagName(t[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(t[0],"Cell"),function(e){n.push(e.textContent)}),_xeUtils.default.arrayEach(t,function(e,t){var o;t&&(o={},t=getElementsByTagName(e,"Cell"),_xeUtils.default.arrayEach(t,function(e,t){n[t]&&(o[n[t]]=e.textContent)}),r.push(o))})),{fields:n,rows:r}}function checkImportData(e,t){var o=[];return e.forEach(function(e){e=e.property;e&&o.push(e)}),t.some(function(e){return-1<o.indexOf(e)})}function handleImport(t,e,o){var r=t.tableFullColumn,n=t._importResolve,a=t._importReject,l={fields:[],rows:[]};switch(o.type){case"csv":l=parseCsv(r,e);break;case"txt":l=parseTxt(r,e);break;case"html":l=parseHTML(r,e);break;case"xml":l=parseXML(r,e)}var i=l,c=i.fields,s=i.rows;checkImportData(r,c)?t.createData(s).then(function(e){e="insert"===o.mode?t.insert(e):t.reloadData(e);return!1!==o.message&&("development"!==process.env.NODE_ENV||_vXETable.default.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.default.modal.message({content:_conf.default.i18n("vxe.table.impSuccess",[s.length]),status:"success"})),e.then(function(){n&&n({status:!0})})}):!1!==o.message&&("development"!==process.env.NODE_ENV||_vXETable.default.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.default.modal.message({content:_conf.default.i18n("vxe.error.impFields"),status:"error"}),a)&&a({status:!1})}function handleFileImport(a,l,i){var c=i.importMethod,t=i.afterImportMethod,e=_utils.default.parseFile(l),s=e.type,d=e.filename;return c||_xeUtils.default.includes(_vXETable.default.config.importTypes,s)?new Promise(function(t,o){function e(e){t(e),a._importResolve=null,a._importReject=null}function r(e){o(e),a._importResolve=null,a._importReject=null}var n;a._importResolve=e,a._importReject=r,window.FileReader?(n=Object.assign({mode:"insert"},i,{type:s,filename:d})).remote?c?Promise.resolve(c({file:l,options:n,$table:a})).then(function(){e({status:!0})}).catch(function(){e({status:!0})}):e({status:!0}):a.preventEvent(null,"event.import",{file:l,options:n,columns:a.tableFullColumn},function(){var e=new FileReader;e.onerror=function(){(0,_log.errLog)("vxe.error.notType",[s]),r({status:!1})},e.onload=function(e){handleImport(a,e.target.result,n)},e.readAsText(l,n.encoding||"UTF-8")}):("development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notExp"),e({status:!0}))}).then(function(){t&&t({status:!0,options:i,$table:a})}).catch(function(e){return t&&t({status:!1,options:i,$table:a}),Promise.reject(e)}):(!1!==i.message&&("development"!==process.env.NODE_ENV||_vXETable.default.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.default.modal.message({content:_conf.default.i18n("vxe.error.notType",[s]),status:"error"})),Promise.reject({status:!1}))}function readLocalFile(){var s=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return fileForm||(fileForm=document.createElement("form"),fileInput=document.createElement("input"),fileForm.className="vxe-table--file-form",fileInput.name="file",fileInput.type="file",fileForm.appendChild(fileInput),document.body.appendChild(fileForm)),new Promise(function(a,l){var i=s.types||[],c=!i.length||i.some(function(e){return"*"===e});fileInput.multiple=!!s.multiple,fileInput.accept=c?"":".".concat(i.join(", .")),fileInput.onchange=function(e){var t,o=e.target.files,e=o[0];if(!c)for(var r=0;r<o.length;r++){var n=_utils.default.parseFile(o[r]).type;if(!_xeUtils.default.includes(i,n)){t=n;break}}t?(!1!==s.message&&("development"!==process.env.NODE_ENV||_vXETable.default.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.default.modal.message({content:_conf.default.i18n("vxe.error.notType",[t]),status:"error"})),l({status:!1,files:o,file:e})):a({status:!0,files:o,file:e})},fileForm.reset(),fileInput.click()})}function removePrintFrame(){if(printFrame){if(printFrame.parentNode){try{printFrame.contentDocument.write("")}catch(e){}printFrame.parentNode.removeChild(printFrame)}printFrame=null}}function appendPrintFrame(){printFrame.parentNode||document.body.appendChild(printFrame)}function afterPrintEvent(){requestAnimationFrame(removePrintFrame)}function handlePrint(e,t,o){var r=t.beforePrintMethod,r=getExportBlobByContent(o=createHtmlPage(t,o=r?r({content:o,options:t,$table:e})||"":o),t);_dom.browse.msie?(removePrintFrame(),printFrame=createFrame(),appendPrintFrame(),printFrame.contentDocument.write(o),printFrame.contentDocument.execCommand("print")):(printFrame||((printFrame=createFrame()).onload=function(e){e.target.src&&(e.target.contentWindow.onafterprint=afterPrintEvent,e.target.contentWindow.print())}),appendPrintFrame(),printFrame.src=URL.createObjectURL(r))}function handleExportAndPrint(e,t,o){var r=e.initStore,n=e.customOpts,a=e.collectColumn,l=e.footerTableData,i=e.treeConfig,c=e.mergeList,s=e.isGroup,d=e.exportParams,u=e.getCheckboxRecords(),l=!!l.length,c=!i&&c.length,t=Object.assign({message:!0,isHeader:!0},t),p=t.types||_vXETable.default.config.exportTypes,f=t.modes,m=n.checkMethod,n=a.slice(0),h=t.columns,a=p.map(function(e){return{value:e,label:"vxe.export.types.".concat(e)}}),b=f.map(function(e){return{value:e,label:"vxe.export.modes.".concat(e)}});return _xeUtils.default.eachTree(n,function(r,e,t,o,n){(r.children&&r.children.length||defaultFilterExportColumn(r))&&(r.checked=h?h.some(function(e){var t,o;return(0,_util.isColumnInfo)(e)?r===e:_xeUtils.default.isString(e)?r.field===e:(t=e.id||e.colId,o=e.type,e=e.property||e.field,t?r.id===t:e&&o?r.property===e&&r.type===o:e?r.property===e:!!o&&r.type===o)}):r.visible,r.halfChecked=!1,r.disabled=n&&n.disabled||!!m&&!m({column:r}))}),Object.assign(e.exportStore,{columns:n,typeList:a,modeList:b,hasFooter:l,hasMerge:c,hasTree:i,isPrint:o,hasColgroup:s,visible:!0}),Object.assign(d,{mode:u.length?"selected":"current"},t),-1===f.indexOf(d.mode)&&(d.mode=f[0]),-1===p.indexOf(d.type)&&(d.type=p[0]),r.export=!0,e.$nextTick()}var getConvertColumns=function t(e){var o=[];return e.forEach(function(e){e.childNodes&&e.childNodes.length?(o.push(e),o.push.apply(o,_toConsumableArray(t(e.childNodes)))):o.push(e)}),o},convertToRows=function(e){for(var n=1,t=function t(o,e){var r;e&&(o._level=e._level+1,n<o._level)&&(n=o._level),o.childNodes&&o.childNodes.length?(r=0,o.childNodes.forEach(function(e){t(e,o),r+=e._colSpan}),o._colSpan=r):o._colSpan=1},o=(e.forEach(function(e){e._level=1,t(e)}),[]),r=0;r<n;r++)o.push([]);return getConvertColumns(e).forEach(function(e){e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=n-e._level+1,o[e._level-1].push(e)}),o},_default={methods:{_exportData:function(e){var a=this,t=this.$xegrid,o=this.isGroup,r=this.tableGroupColumn,l=this.tableFullColumn,n=this.afterFullData,i=this.treeConfig,c=this.treeOpts,s=this.exportOpts,d=Object.assign({isHeader:!0,isFooter:!0,isColgroup:!0,isMerge:!1,isAllExpand:!1,download:!0,type:"csv",mode:"current"},s,{print:!1},e),s=d.type,e=d.mode,u=d.columns,p=d.original,f=d.beforeExportMethod,m=[],u=u&&u.length?u:null,h=d.columnFilterMethod,b=(u||(h=h||(p?function(e){return e.column.property}:function(e){return defaultFilterExportColumn(e.column)})),m=u?(d._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(u,function(e){var t,o,r,n;if(e)return(0,_util.isColumnInfo)(e)?t=e:_xeUtils.default.isString(e)?t=a.getColumnByField(e):(o=e.id||e.colId,r=e.type,n=e.property||e.field,o?t=a.getColumnById(o):n&&r?t=l.find(function(e){return e.property===n&&e.type===r}):n?t=a.getColumnByField(n):r&&(t=l.find(function(e){return e.type===r}))),t||{}},{children:"childNodes",mapChildren:"_children"}),function(e,t){return(0,_util.isColumnInfo)(e)&&(!h||h({column:e,$columnIndex:t}))},{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(o?r:l,function(e,t){return e.visible&&(!h||h({column:e,$columnIndex:t}))},{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(m,function(e){e.children&&e.children.length||b.push(e)},{children:"childNodes"}),d.columns=b,d.colgroups=convertToRows(m),d.filename||(d.filename=_conf.default.i18n(d.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),d.sheetName||(d.sheetName=document.title),!d.exportMethod&&!_xeUtils.default.includes(_vXETable.default.config.exportTypes,s))return"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notType",[s]),Promise.reject({status:!1});if(d.print||f&&f({options:d,$table:this,$grid:t}),!d.data)if(d.data=n,"selected"===e){var g=this.getCheckboxRecords();-1<["html","pdf"].indexOf(s)&&i?d.data=_xeUtils.default.searchTree(this.getTableData().fullData,function(e){return-1<g.indexOf(e)},Object.assign({},c,{data:"_row"})):d.data=g}else if("all"===e&&("development"!==process.env.NODE_ENV||t||(0,_log.warnLog)("vxe.error.errProp",["all","mode=current,selected"]),t)&&!d.remote){var x,p=t.proxyOpts,u=p.beforeQueryAll,v=p.afterQueryAll,o=p.ajax,r=p.props,y=void 0===r?{}:r,m=(void 0===o?{}:o).queryAll;if("development"!==process.env.NODE_ENV||m||(0,_log.warnLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),m)return x={$table:this,$grid:t,sort:t.sortData,filters:t.filterData,form:t.formData,target:m,options:d},Promise.resolve((u||m)(x)).catch(function(e){return e}).then(function(e){return d.data=(y.list?_xeUtils.default.get(e,y.list):e)||[],v&&v(x),handleExport(a,d)})}return handleExport(this,d)},_importByFile:function(e,t){var t=Object.assign({},t),o=t.beforeImportMethod;return o&&o({options:t,$table:this}),handleFileImport(this,e,t)},_importData:function(e){var t=this,o=Object.assign({types:_vXETable.default.config.importTypes},this.importOpts,e),e=o.beforeImportMethod,r=o.afterImportMethod;return e&&e({options:o,$table:this}),readLocalFile(o).catch(function(e){return r&&r({status:!1,options:o,$table:t}),Promise.reject(e)}).then(function(e){e=e.file;return handleFileImport(t,e,o)})},_saveFile:function(e){return saveLocalFile(e)},_readFile:function(e){return readLocalFile(e)},_print:function(e){var t=this,o=Object.assign({original:!1},this.printOpts,e,{type:"html",download:!1,remote:!1,print:!0});return o.sheetName||(o.sheetName=document.title),new Promise(function(e){o.content?e(handlePrint(t,o,o.content)):e(t.exportData(o).then(function(e){e=e.content;return handlePrint(t,o,e)}))})},_openImport:function(e){var t,e=Object.assign({mode:"insert",message:!0,types:_vXETable.default.config.importTypes},e,this.importOpts),o=e.types;!this.getTreeStatus()?(this.importConfig||(0,_log.errLog)("vxe.error.reqProp",["import-config"]),o=o.map(function(e){return{value:e,label:"vxe.export.types.".concat(e)}}),t=e.modes.map(function(e){return{value:e,label:"vxe.import.modes.".concat(e)}}),Object.assign(this.importStore,{file:null,type:"",filename:"",modeList:t,typeList:o,visible:!0}),Object.assign(this.importParams,e),this.initStore.import=!0):e.message&&_vXETable.default.modal.message({content:_conf.default.i18n("vxe.error.treeNotImp"),status:"error"})},_openExport:function(e){var t=this.exportOpts;return"development"!==process.env.NODE_ENV||this.exportConfig||(0,_log.errLog)("vxe.error.reqProp",["export-config"]),handleExportAndPrint(this,Object.assign({},t,e))},_openPrint:function(e){var t=this.printOpts;return"development"!==process.env.NODE_ENV||this.printConfig||(0,_log.errLog)("vxe.error.reqProp",["print-config"]),handleExportAndPrint(this,Object.assign({},t,e),!0)}}};exports.default=_default;
|
package/lib/form/src/form.js
CHANGED
|
@@ -458,11 +458,20 @@ var _default2 = {
|
|
|
458
458
|
}
|
|
459
459
|
},
|
|
460
460
|
clearValidate: function clearValidate(fieldOrItem) {
|
|
461
|
+
var _this6 = this;
|
|
461
462
|
if (fieldOrItem) {
|
|
462
|
-
var
|
|
463
|
-
if (
|
|
464
|
-
|
|
463
|
+
var fields = fieldOrItem;
|
|
464
|
+
if (!_xeUtils["default"].isArray(fieldOrItem)) {
|
|
465
|
+
fields = [fieldOrItem];
|
|
465
466
|
}
|
|
467
|
+
fields.forEach(function (field) {
|
|
468
|
+
if (field) {
|
|
469
|
+
var item = (0, _util.handleFieldOrItem)(_this6, field);
|
|
470
|
+
if (item) {
|
|
471
|
+
item.showError = false;
|
|
472
|
+
}
|
|
473
|
+
}
|
|
474
|
+
});
|
|
466
475
|
} else {
|
|
467
476
|
this.getItems().forEach(function (item) {
|
|
468
477
|
item.showError = false;
|
|
@@ -475,11 +484,17 @@ var _default2 = {
|
|
|
475
484
|
return this.beginValidate(this.getItems(), '', callback);
|
|
476
485
|
},
|
|
477
486
|
validateField: function validateField(fieldOrItem, callback) {
|
|
478
|
-
var
|
|
479
|
-
|
|
487
|
+
var _this7 = this;
|
|
488
|
+
var fields = [];
|
|
489
|
+
if (!_xeUtils["default"].isArray(fieldOrItem)) {
|
|
490
|
+
fields = [fieldOrItem];
|
|
491
|
+
}
|
|
492
|
+
return this.beginValidate(fields.map(function (field) {
|
|
493
|
+
return (0, _util.handleFieldOrItem)(_this7, field);
|
|
494
|
+
}), '', callback);
|
|
480
495
|
},
|
|
481
496
|
beginValidate: function beginValidate(itemList, type, callback) {
|
|
482
|
-
var
|
|
497
|
+
var _this8 = this;
|
|
483
498
|
var data = this.data,
|
|
484
499
|
formRules = this.rules,
|
|
485
500
|
validOpts = this.validOpts;
|
|
@@ -490,26 +505,17 @@ var _default2 = {
|
|
|
490
505
|
if (data && formRules) {
|
|
491
506
|
itemList.forEach(function (item) {
|
|
492
507
|
var field = item.field;
|
|
493
|
-
if (field && !(0, _util.isHiddenItem)(
|
|
494
|
-
itemValids.push(
|
|
508
|
+
if (field && !(0, _util.isHiddenItem)(_this8, item) && (0, _util.isActivetem)(_this8, item)) {
|
|
509
|
+
itemValids.push(_this8.validItemRules(type || 'all', field).then(function () {
|
|
495
510
|
item.errRule = null;
|
|
496
|
-
})["catch"](function (
|
|
497
|
-
var
|
|
498
|
-
rules = _ref2.rules;
|
|
499
|
-
var rest = {
|
|
500
|
-
rule: rule,
|
|
501
|
-
rules: rules,
|
|
502
|
-
data: data,
|
|
503
|
-
field: field,
|
|
504
|
-
property: field,
|
|
505
|
-
$form: _this6
|
|
506
|
-
};
|
|
511
|
+
})["catch"](function (errorMaps) {
|
|
512
|
+
var rest = errorMaps[field];
|
|
507
513
|
if (!validRest[field]) {
|
|
508
514
|
validRest[field] = [];
|
|
509
515
|
}
|
|
510
516
|
validRest[field].push(rest);
|
|
511
517
|
validFields.push(field);
|
|
512
|
-
item.errRule = rule;
|
|
518
|
+
item.errRule = rest[0].rule;
|
|
513
519
|
return Promise.reject(rest);
|
|
514
520
|
}));
|
|
515
521
|
}
|
|
@@ -520,7 +526,7 @@ var _default2 = {
|
|
|
520
526
|
}
|
|
521
527
|
})["catch"](function () {
|
|
522
528
|
return new Promise(function (resolve) {
|
|
523
|
-
|
|
529
|
+
_this8.showErrTime = setTimeout(function () {
|
|
524
530
|
itemList.forEach(function (item) {
|
|
525
531
|
if (item.errRule) {
|
|
526
532
|
item.showError = true;
|
|
@@ -528,8 +534,8 @@ var _default2 = {
|
|
|
528
534
|
});
|
|
529
535
|
}, 20);
|
|
530
536
|
if (validOpts.autoPos) {
|
|
531
|
-
|
|
532
|
-
|
|
537
|
+
_this8.$nextTick(function () {
|
|
538
|
+
_this8.handleFocus(validFields);
|
|
533
539
|
});
|
|
534
540
|
}
|
|
535
541
|
if (callback) {
|
|
@@ -560,77 +566,91 @@ var _default2 = {
|
|
|
560
566
|
* validator=Function({ itemValue, rule, rules, data, property }) 自定义校验,接收一个 Promise
|
|
561
567
|
* trigger=change 触发方式
|
|
562
568
|
*/
|
|
563
|
-
validItemRules: function validItemRules(validType,
|
|
564
|
-
var
|
|
569
|
+
validItemRules: function validItemRules(validType, fields, val) {
|
|
570
|
+
var _this9 = this;
|
|
565
571
|
var data = this.data,
|
|
566
572
|
formRules = this.rules;
|
|
567
|
-
var
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
}));
|
|
596
|
-
} else if (customValid["catch"]) {
|
|
597
|
-
// 如果为异步校验(注:异步校验是并发无序的)
|
|
598
|
-
syncVailds.push(customValid["catch"](function (e) {
|
|
573
|
+
var errorMaps = {};
|
|
574
|
+
if (!_xeUtils["default"].isArray(fields)) {
|
|
575
|
+
fields = [fields];
|
|
576
|
+
}
|
|
577
|
+
return Promise.all(fields.map(function (property) {
|
|
578
|
+
var syncVailds = [];
|
|
579
|
+
var errorRules = [];
|
|
580
|
+
if (property && formRules) {
|
|
581
|
+
var rules = _xeUtils["default"].get(formRules, property);
|
|
582
|
+
if (rules) {
|
|
583
|
+
var itemValue = _xeUtils["default"].isUndefined(val) ? _xeUtils["default"].get(data, property) : val;
|
|
584
|
+
rules.forEach(function (rule) {
|
|
585
|
+
var type = rule.type,
|
|
586
|
+
trigger = rule.trigger,
|
|
587
|
+
required = rule.required;
|
|
588
|
+
if (validType === 'all' || !trigger || validType === rule.trigger) {
|
|
589
|
+
if (_xeUtils["default"].isFunction(rule.validator)) {
|
|
590
|
+
var customValid = rule.validator({
|
|
591
|
+
itemValue: itemValue,
|
|
592
|
+
rule: rule,
|
|
593
|
+
rules: rules,
|
|
594
|
+
data: data,
|
|
595
|
+
field: property,
|
|
596
|
+
property: property,
|
|
597
|
+
$form: _this9
|
|
598
|
+
});
|
|
599
|
+
if (customValid) {
|
|
600
|
+
if (_xeUtils["default"].isError(customValid)) {
|
|
599
601
|
errorRules.push(new Rule({
|
|
600
602
|
type: 'custom',
|
|
601
603
|
trigger: trigger,
|
|
602
|
-
content:
|
|
604
|
+
content: customValid.message,
|
|
603
605
|
rule: new Rule(rule)
|
|
604
606
|
}));
|
|
605
|
-
})
|
|
607
|
+
} else if (customValid["catch"]) {
|
|
608
|
+
// 如果为异步校验(注:异步校验是并发无序的)
|
|
609
|
+
syncVailds.push(customValid["catch"](function (e) {
|
|
610
|
+
errorRules.push(new Rule({
|
|
611
|
+
type: 'custom',
|
|
612
|
+
trigger: trigger,
|
|
613
|
+
content: e ? e.message : rule.content || rule.message,
|
|
614
|
+
rule: new Rule(rule)
|
|
615
|
+
}));
|
|
616
|
+
}));
|
|
617
|
+
}
|
|
606
618
|
}
|
|
607
|
-
}
|
|
608
|
-
} else {
|
|
609
|
-
var isArrType = type === 'array';
|
|
610
|
-
var isArrVal = _xeUtils["default"].isArray(itemValue);
|
|
611
|
-
var hasEmpty = true;
|
|
612
|
-
if (isArrType || isArrVal) {
|
|
613
|
-
hasEmpty = !isArrVal || !itemValue.length;
|
|
614
|
-
} else if (_xeUtils["default"].isString(itemValue)) {
|
|
615
|
-
hasEmpty = (0, _utils.eqEmptyValue)(itemValue.trim());
|
|
616
619
|
} else {
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
620
|
+
var isArrType = type === 'array';
|
|
621
|
+
var isArrVal = _xeUtils["default"].isArray(itemValue);
|
|
622
|
+
var hasEmpty = true;
|
|
623
|
+
if (isArrType || isArrVal) {
|
|
624
|
+
hasEmpty = !isArrVal || !itemValue.length;
|
|
625
|
+
} else if (_xeUtils["default"].isString(itemValue)) {
|
|
626
|
+
hasEmpty = (0, _utils.eqEmptyValue)(itemValue.trim());
|
|
627
|
+
} else {
|
|
628
|
+
hasEmpty = (0, _utils.eqEmptyValue)(itemValue);
|
|
629
|
+
}
|
|
630
|
+
if (required ? hasEmpty || validErrorRuleValue(rule, itemValue) : !hasEmpty && validErrorRuleValue(rule, itemValue)) {
|
|
631
|
+
errorRules.push(new Rule(rule));
|
|
632
|
+
}
|
|
621
633
|
}
|
|
622
634
|
}
|
|
623
|
-
}
|
|
624
|
-
}
|
|
635
|
+
});
|
|
636
|
+
}
|
|
625
637
|
}
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
638
|
+
return Promise.all(syncVailds).then(function () {
|
|
639
|
+
if (errorRules.length) {
|
|
640
|
+
errorMaps[property] = errorRules.map(function (rule) {
|
|
641
|
+
return {
|
|
642
|
+
$form: _this9,
|
|
643
|
+
rule: rule,
|
|
644
|
+
data: data,
|
|
645
|
+
field: property,
|
|
646
|
+
property: property
|
|
647
|
+
};
|
|
648
|
+
});
|
|
649
|
+
}
|
|
650
|
+
});
|
|
651
|
+
})).then(function () {
|
|
652
|
+
if (!_xeUtils["default"].isEmpty(errorMaps)) {
|
|
653
|
+
return Promise.reject(errorMaps);
|
|
634
654
|
}
|
|
635
655
|
});
|
|
636
656
|
},
|
|
@@ -669,16 +689,16 @@ var _default2 = {
|
|
|
669
689
|
}
|
|
670
690
|
},
|
|
671
691
|
triggerItemEvent: function triggerItemEvent(evnt, field, itemValue) {
|
|
672
|
-
var
|
|
692
|
+
var _this10 = this;
|
|
673
693
|
if (field) {
|
|
674
694
|
return this.validItemRules(evnt ? ['blur'].includes(evnt.type) ? 'blur' : 'change' : 'all', field, itemValue).then(function () {
|
|
675
|
-
|
|
676
|
-
})["catch"](function (
|
|
677
|
-
var
|
|
678
|
-
var item =
|
|
679
|
-
if (item) {
|
|
695
|
+
_this10.clearValidate(field);
|
|
696
|
+
})["catch"](function (errorMaps) {
|
|
697
|
+
var rest = errorMaps[field];
|
|
698
|
+
var item = _this10.getItemByField(field);
|
|
699
|
+
if (item && rest) {
|
|
680
700
|
item.showError = true;
|
|
681
|
-
item.errRule = rule;
|
|
701
|
+
item.errRule = rest[0].rule;
|
|
682
702
|
}
|
|
683
703
|
});
|
|
684
704
|
}
|
package/lib/form/src/form.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_size=_interopRequireDefault(require("../../mixins/size")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_utils=require("../../tools/utils"),_dom=_interopRequireWildcard(require("../../tools/dom")),_util=require("./util"),_log=require("../../tools/log"),_formConfigItem=_interopRequireDefault(require("./form-config-item")),_index=_interopRequireDefault(require("../../loading/index")),_vn=require("../../tools/vn");function _getRequireWildcardCache(e){var t,i;return"function"!=typeof WeakMap?null:(t=new WeakMap,i=new WeakMap,(_getRequireWildcardCache=function(e){return e?i:t})(e))}function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==_typeof(e)&&"function"!=typeof e)return{default:e};t=_getRequireWildcardCache(t);if(t&&t.has(e))return t.get(e);var i,r,n={},l=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(i in e)"default"!==i&&Object.prototype.hasOwnProperty.call(e,i)&&((r=l?Object.getOwnPropertyDescriptor(e,i):null)&&(r.get||r.set)?Object.defineProperty(n,i,r):n[i]=e[i]);return n.default=e,t&&t.set(e,n),n}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function _createClass(e,t,i){return t&&_defineProperties(e.prototype,t),i&&_defineProperties(e,i),Object.defineProperty(e,"prototype",{writable:!1}),e}var Rule=function(){function t(e){_classCallCheck(this,t),Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.min,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}return _createClass(t,[{key:"content",get:function(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}},{key:"message",get:function(){return this.content}}]),t}();function validErrorRuleValue(e,t){var i=e.type,r=e.min,n=e.max,e=e.pattern,i="number"===i,l=i?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!i||!isNaN(t))||!_xeUtils.default.eqNull(r)&&l<_xeUtils.default.toNumber(r)||!_xeUtils.default.eqNull(n)&&l>_xeUtils.default.toNumber(n)||!(!e||(_xeUtils.default.isRegExp(e)?e:new RegExp(e)).test(t))}function getResetValue(e,t){return t=_xeUtils.default.isArray(e)?[]:t}var _default2={name:"VxeForm",mixins:[_size.default],props:{collapseStatus:{type:Boolean,default:!0},loading:Boolean,data:Object,size:{type:String,default:function(){return _conf.default.form.size||_conf.default.size}},span:{type:[String,Number],default:function(){return _conf.default.form.span}},align:{type:String,default:function(){return _conf.default.form.align}},titleAlign:{type:String,default:function(){return _conf.default.form.titleAlign}},titleWidth:{type:[String,Number],default:function(){return _conf.default.form.titleWidth}},titleColon:{type:Boolean,default:function(){return _conf.default.form.titleColon}},titleAsterisk:{type:Boolean,default:function(){return _conf.default.form.titleAsterisk}},titleOverflow:{type:[Boolean,String],default:null},className:[String,Function],readonly:Boolean,items:Array,rules:Object,preventSubmit:{type:Boolean,default:function(){return _conf.default.form.preventSubmit}},validConfig:Object,tooltipConfig:Object,customLayout:{type:Boolean,default:function(){return _conf.default.form.customLayout}}},inject:{$xegrid:{default:null}},data:function(){return{collapseAll:this.collapseStatus,staticItems:[],formItems:[],tooltipTimeout:null,tooltipStore:{item:null,visible:!1}}},provide:function(){return{$xeform:this,$xeformgather:null,$xeformitem:null,$xeformiteminfo:null}},computed:{xegrid:function(){return this.$xegrid},validOpts:function(){return Object.assign({},_conf.default.form.validConfig,this.validConfig)},tooltipOpts:function(){return Object.assign({},_conf.default.tooltip,_conf.default.form.tooltipConfig,this.tooltipConfig)}},watch:{staticItems:function(e){this.formItems=e},items:function(e){this.loadItem(e)},collapseStatus:function(e){this.collapseAll=!!e}},created:function(){var t=this;this.$nextTick(function(){var e=t.items;"development"===process.env.NODE_ENV&&t.customLayout&&t.items&&(0,_log.errLog)("vxe.error.errConflicts",["custom-layout","items"]),e&&t.loadItem(e)})},render:function(i){var e=this._e,t=this.loading,r=this.className,n=this.data,l=this.vSize,o=this.tooltipOpts,a=this.formItems,s=this.customLayout,u=_vXETable.default._tooltip,c=this.$scopedSlots.default;return i("form",{class:["vxe-form",r?_xeUtils.default.isFunction(r)?r({items:a,data:n,$form:this}):r:"",(_defineProperty(n={},"size--".concat(l),l),_defineProperty(n,"is--loading",t),n)],on:{submit:this.submitEvent,reset:this.resetEvent}},[i("div",{class:"vxe-form--wrapper vxe-row"},s?c?c.call(this,i,{}):[]:a.map(function(e,t){return i(_formConfigItem.default,{key:t,props:{itemConfig:e}})})),i("div",{class:"vxe-form-slots",ref:"hideItem"},!s&&c?c.call(this,i,{}):[]),i(_index.default,{class:"vxe-form--loading",props:{value:t}}),u?i("vxe-tooltip",{ref:"tooltip",props:o}):e()])},methods:{dispatchEvent:function(e,t,i){this.$emit(e,Object.assign({$form:this,$grid:this.xegrid,$event:i},t))},callSlot:function(e,t,i){if(e){var r=this.$scopedSlots;if(_xeUtils.default.isString(e)&&(e=r[e]||null),_xeUtils.default.isFunction(e))return(0,_vn.getSlotVNs)(e.call(this,t,i))}return[]},loadItem:function(e){var t,i=this;return"development"===process.env.NODE_ENV&&(t=this.$scopedSlots,e.forEach(function(e){e.slots&&_xeUtils.default.each(e.slots,function(e){_xeUtils.default.isFunction(e)||t[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})})),this.staticItems=_xeUtils.default.mapTree(e,function(e){return(0,_util.createItem)(i,e)},{children:"children"}),this.$nextTick()},getItems:function(){var t=[];return _xeUtils.default.eachTree(this.formItems,function(e){t.push(e)},{children:"children"}),t},getItemByField:function(t){var e=_xeUtils.default.findTree(this.formItems,function(e){return e.field===t},{children:"children"});return e?e.item:null},toggleCollapse:function(){var e=!this.collapseAll;return this.collapseAll=e,this.$emit("update:collapseStatus",e),this.$nextTick()},toggleCollapseEvent:function(e){this.toggleCollapse();var t=this.collapseAll;this.dispatchEvent("toggle-collapse",{status:t,collapse:t,data:this.data},e),this.dispatchEvent("collapse",{status:t,collapse:t,data:this.data},e)},submitEvent:function(t){var i=this;t.preventDefault(),this.preventSubmit||(this.clearValidate(),this.beginValidate(this.getItems()).then(function(e){e?i.dispatchEvent("submit-invalid",{data:i.data,errMap:e},t):i.dispatchEvent("submit",{data:i.data},t)}))},reset:function(){var n=this,l=this.data;return l&&this.getItems().forEach(function(e){var t=e.field,i=e.resetValue,r=e.itemRender;(0,_utils.isEnableConf)(r)&&((r=_vXETable.default.renderer.get(r.name))&&r.itemResetMethod?r.itemResetMethod({data:l,field:t,property:t,item:e,$form:n,$grid:n.xegrid}):t&&_xeUtils.default.set(l,t,null===i?getResetValue(_xeUtils.default.get(l,t),void 0):_xeUtils.default.clone(i,!0)))}),this.clearValidate()},resetEvent:function(e){e.preventDefault(),this.reset(),this.dispatchEvent("reset",{data:this.data},e)},closeTooltip:function(){var e=this.tooltipStore,t=this.$refs.tooltip;return e.visible&&(Object.assign(e,{item:null,visible:!1}),t)&&t.close(),this.$nextTick()},triggerTitleTipEvent:function(e,t){var t=t.item,i=this.tooltipStore,r=this.$refs.tooltip,e=e.currentTarget.children[0],n=(e.textContent||"").trim(),l=e.scrollWidth>e.clientWidth;clearTimeout(this.tooltipTimeout),i.item!==t&&this.closeTooltip(),n&&l&&(Object.assign(i,{item:t,visible:!0}),r)&&r.open(e,n)},handleTitleTipLeaveEvent:function(){var e=this,t=this.tooltipOpts,i=this.$refs.tooltip;i&&i.setActived(!1),t.enterable?this.tooltipTimeout=setTimeout(function(){(i=e.$refs.tooltip)&&!i.isActived()&&e.closeTooltip()},t.leaveDelay):this.closeTooltip()},clearValidate:function(e){return e?(e=(0,_util.handleFieldOrItem)(this,e))&&(e.showError=!1):this.getItems().forEach(function(e){e.showError=!1}),this.$nextTick()},validate:function(e){return this.clearValidate(),this.beginValidate(this.getItems(),"",e)},validateField:function(e,t){e=(0,_util.handleFieldOrItem)(this,e);return this.beginValidate(e?[e]:[],"",t)},beginValidate:function(t,e,i){var n=this,l=this.data,r=this.rules,o=this.validOpts,a={},s=[],u=[];return clearTimeout(this.showErrTime),l&&r?(t.forEach(function(i){var r=i.field;r&&!(0,_util.isHiddenItem)(n,i)&&(0,_util.isActivetem)(n,i)&&u.push(n.validItemRules(e||"all",r).then(function(){i.errRule=null}).catch(function(e){var t=e.rule,e={rule:t,rules:e.rules,data:l,field:r,property:r,$form:n};return a[r]||(a[r]=[]),a[r].push(e),s.push(r),i.errRule=t,Promise.reject(e)}))}),Promise.all(u).then(function(){i&&i()}).catch(function(){return new Promise(function(e){n.showErrTime=setTimeout(function(){t.forEach(function(e){e.errRule&&(e.showError=!0)})},20),o.autoPos&&n.$nextTick(function(){n.handleFocus(s)}),i?(i(a),e()):e(a)})})):(i&&i(),Promise.resolve())},validItemRules:function(o,a,e){var s,u,c=this,f=this.data,t=this.rules,d=[],p=[];return a&&t&&(s=_xeUtils.default.get(t,a))&&(u=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(f,a):e,s.forEach(function(t){var e,i,r=t.type,n=t.trigger,l=t.required;"all"!==o&&n&&o!==t.trigger||(_xeUtils.default.isFunction(t.validator)?(e=t.validator({itemValue:u,rule:t,rules:s,data:f,field:a,property:a,$form:c}))&&(_xeUtils.default.isError(e)?d.push(new Rule({type:"custom",trigger:n,content:e.message,rule:new Rule(t)})):e.catch&&p.push(e.catch(function(e){d.push(new Rule({type:"custom",trigger:n,content:e?e.message:t.content||t.message,rule:new Rule(t)}))}))):(e="array"===r,r=_xeUtils.default.isArray(u),i=!0,i=e||r?!r||!u.length:_xeUtils.default.isString(u)?(0,_utils.eqEmptyValue)(u.trim()):(0,_utils.eqEmptyValue)(u),(l?i||validErrorRuleValue(t,u):!i&&validErrorRuleValue(t,u))&&d.push(new Rule(t))))})),Promise.all(p).then(function(){if(d.length)return Promise.reject({rules:d,rule:d[0]})})},handleFocus:function(e){for(var t=this.$el,i=0;i<e.length;i++){var r=e[i],r=this.getItemByField(r);if(r&&(0,_utils.isEnableConf)(r.itemRender)){var n=r.itemRender,l=_vXETable.default.renderer.get(n.name),o=void 0;if(i||_dom.default.scrollToView(t.querySelector(".".concat(r.id))),o=!(o=n.autofocus?t.querySelector(".".concat(r.id," ").concat(n.autofocus)):o)&&l&&l.autofocus?t.querySelector(".".concat(r.id," ").concat(l.autofocus)):o){o.focus(),_dom.browse.msie&&((n=o.createTextRange()).collapse(!1),n.select());break}}}},triggerItemEvent:function(e,i,t){var r=this;return i?this.validItemRules(e?["blur"].includes(e.type)?"blur":"change":"all",i,t).then(function(){r.clearValidate(i)}).catch(function(e){var e=e.rule,t=r.getItemByField(i);t&&(t.showError=!0,t.errRule=e)}):this.$nextTick()},updateStatus:function(e,t){e=e.field;return this.triggerItemEvent(new Event("change"),e,t)}}};exports.default=_default2;
|
|
1
|
+
"use strict";function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_size=_interopRequireDefault(require("../../mixins/size")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_utils=require("../../tools/utils"),_dom=_interopRequireWildcard(require("../../tools/dom")),_util=require("./util"),_log=require("../../tools/log"),_formConfigItem=_interopRequireDefault(require("./form-config-item")),_index=_interopRequireDefault(require("../../loading/index")),_vn=require("../../tools/vn");function _getRequireWildcardCache(t){var e,i;return"function"!=typeof WeakMap?null:(e=new WeakMap,i=new WeakMap,(_getRequireWildcardCache=function(t){return t?i:e})(t))}function _interopRequireWildcard(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!==_typeof(t)&&"function"!=typeof t)return{default:t};e=_getRequireWildcardCache(e);if(e&&e.has(t))return e.get(t);var i,r,n={},l=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(i in t)"default"!==i&&Object.prototype.hasOwnProperty.call(t,i)&&((r=l?Object.getOwnPropertyDescriptor(t,i):null)&&(r.get||r.set)?Object.defineProperty(n,i,r):n[i]=t[i]);return n.default=t,e&&e.set(t,n),n}function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _defineProperty(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var i=0;i<e.length;i++){var r=e[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function _createClass(t,e,i){return e&&_defineProperties(t.prototype,e),i&&_defineProperties(t,i),Object.defineProperty(t,"prototype",{writable:!1}),t}var Rule=function(){function e(t){_classCallCheck(this,e),Object.assign(this,{$options:t,required:t.required,min:t.min,max:t.min,type:t.type,pattern:t.pattern,validator:t.validator,trigger:t.trigger,maxWidth:t.maxWidth})}return _createClass(e,[{key:"content",get:function(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}},{key:"message",get:function(){return this.content}}]),e}();function validErrorRuleValue(t,e){var i=t.type,r=t.min,n=t.max,t=t.pattern,i="number"===i,l=i?_xeUtils.default.toNumber(e):_xeUtils.default.getSize(e);return!(!i||!isNaN(e))||!_xeUtils.default.eqNull(r)&&l<_xeUtils.default.toNumber(r)||!_xeUtils.default.eqNull(n)&&l>_xeUtils.default.toNumber(n)||!(!t||(_xeUtils.default.isRegExp(t)?t:new RegExp(t)).test(e))}function getResetValue(t,e){return e=_xeUtils.default.isArray(t)?[]:e}var _default2={name:"VxeForm",mixins:[_size.default],props:{collapseStatus:{type:Boolean,default:!0},loading:Boolean,data:Object,size:{type:String,default:function(){return _conf.default.form.size||_conf.default.size}},span:{type:[String,Number],default:function(){return _conf.default.form.span}},align:{type:String,default:function(){return _conf.default.form.align}},titleAlign:{type:String,default:function(){return _conf.default.form.titleAlign}},titleWidth:{type:[String,Number],default:function(){return _conf.default.form.titleWidth}},titleColon:{type:Boolean,default:function(){return _conf.default.form.titleColon}},titleAsterisk:{type:Boolean,default:function(){return _conf.default.form.titleAsterisk}},titleOverflow:{type:[Boolean,String],default:null},className:[String,Function],readonly:Boolean,items:Array,rules:Object,preventSubmit:{type:Boolean,default:function(){return _conf.default.form.preventSubmit}},validConfig:Object,tooltipConfig:Object,customLayout:{type:Boolean,default:function(){return _conf.default.form.customLayout}}},inject:{$xegrid:{default:null}},data:function(){return{collapseAll:this.collapseStatus,staticItems:[],formItems:[],tooltipTimeout:null,tooltipStore:{item:null,visible:!1}}},provide:function(){return{$xeform:this,$xeformgather:null,$xeformitem:null,$xeformiteminfo:null}},computed:{xegrid:function(){return this.$xegrid},validOpts:function(){return Object.assign({},_conf.default.form.validConfig,this.validConfig)},tooltipOpts:function(){return Object.assign({},_conf.default.tooltip,_conf.default.form.tooltipConfig,this.tooltipConfig)}},watch:{staticItems:function(t){this.formItems=t},items:function(t){this.loadItem(t)},collapseStatus:function(t){this.collapseAll=!!t}},created:function(){var e=this;this.$nextTick(function(){var t=e.items;"development"===process.env.NODE_ENV&&e.customLayout&&e.items&&(0,_log.errLog)("vxe.error.errConflicts",["custom-layout","items"]),t&&e.loadItem(t)})},render:function(i){var t=this._e,e=this.loading,r=this.className,n=this.data,l=this.vSize,o=this.tooltipOpts,a=this.formItems,s=this.customLayout,u=_vXETable.default._tooltip,c=this.$scopedSlots.default;return i("form",{class:["vxe-form",r?_xeUtils.default.isFunction(r)?r({items:a,data:n,$form:this}):r:"",(_defineProperty(n={},"size--".concat(l),l),_defineProperty(n,"is--loading",e),n)],on:{submit:this.submitEvent,reset:this.resetEvent}},[i("div",{class:"vxe-form--wrapper vxe-row"},s?c?c.call(this,i,{}):[]:a.map(function(t,e){return i(_formConfigItem.default,{key:e,props:{itemConfig:t}})})),i("div",{class:"vxe-form-slots",ref:"hideItem"},!s&&c?c.call(this,i,{}):[]),i(_index.default,{class:"vxe-form--loading",props:{value:e}}),u?i("vxe-tooltip",{ref:"tooltip",props:o}):t()])},methods:{dispatchEvent:function(t,e,i){this.$emit(t,Object.assign({$form:this,$grid:this.xegrid,$event:i},e))},callSlot:function(t,e,i){if(t){var r=this.$scopedSlots;if(_xeUtils.default.isString(t)&&(t=r[t]||null),_xeUtils.default.isFunction(t))return(0,_vn.getSlotVNs)(t.call(this,e,i))}return[]},loadItem:function(t){var e,i=this;return"development"===process.env.NODE_ENV&&(e=this.$scopedSlots,t.forEach(function(t){t.slots&&_xeUtils.default.each(t.slots,function(t){_xeUtils.default.isFunction(t)||e[t]||(0,_log.errLog)("vxe.error.notSlot",[t])})})),this.staticItems=_xeUtils.default.mapTree(t,function(t){return(0,_util.createItem)(i,t)},{children:"children"}),this.$nextTick()},getItems:function(){var e=[];return _xeUtils.default.eachTree(this.formItems,function(t){e.push(t)},{children:"children"}),e},getItemByField:function(e){var t=_xeUtils.default.findTree(this.formItems,function(t){return t.field===e},{children:"children"});return t?t.item:null},toggleCollapse:function(){var t=!this.collapseAll;return this.collapseAll=t,this.$emit("update:collapseStatus",t),this.$nextTick()},toggleCollapseEvent:function(t){this.toggleCollapse();var e=this.collapseAll;this.dispatchEvent("toggle-collapse",{status:e,collapse:e,data:this.data},t),this.dispatchEvent("collapse",{status:e,collapse:e,data:this.data},t)},submitEvent:function(e){var i=this;e.preventDefault(),this.preventSubmit||(this.clearValidate(),this.beginValidate(this.getItems()).then(function(t){t?i.dispatchEvent("submit-invalid",{data:i.data,errMap:t},e):i.dispatchEvent("submit",{data:i.data},e)}))},reset:function(){var n=this,l=this.data;return l&&this.getItems().forEach(function(t){var e=t.field,i=t.resetValue,r=t.itemRender;(0,_utils.isEnableConf)(r)&&((r=_vXETable.default.renderer.get(r.name))&&r.itemResetMethod?r.itemResetMethod({data:l,field:e,property:e,item:t,$form:n,$grid:n.xegrid}):e&&_xeUtils.default.set(l,e,null===i?getResetValue(_xeUtils.default.get(l,e),void 0):_xeUtils.default.clone(i,!0)))}),this.clearValidate()},resetEvent:function(t){t.preventDefault(),this.reset(),this.dispatchEvent("reset",{data:this.data},t)},closeTooltip:function(){var t=this.tooltipStore,e=this.$refs.tooltip;return t.visible&&(Object.assign(t,{item:null,visible:!1}),e)&&e.close(),this.$nextTick()},triggerTitleTipEvent:function(t,e){var e=e.item,i=this.tooltipStore,r=this.$refs.tooltip,t=t.currentTarget.children[0],n=(t.textContent||"").trim(),l=t.scrollWidth>t.clientWidth;clearTimeout(this.tooltipTimeout),i.item!==e&&this.closeTooltip(),n&&l&&(Object.assign(i,{item:e,visible:!0}),r)&&r.open(t,n)},handleTitleTipLeaveEvent:function(){var t=this,e=this.tooltipOpts,i=this.$refs.tooltip;i&&i.setActived(!1),e.enterable?this.tooltipTimeout=setTimeout(function(){(i=t.$refs.tooltip)&&!i.isActived()&&t.closeTooltip()},e.leaveDelay):this.closeTooltip()},clearValidate:function(t){var e,i=this;return t?(e=_xeUtils.default.isArray(e=t)?e:[t]).forEach(function(t){t&&(t=(0,_util.handleFieldOrItem)(i,t))&&(t.showError=!1)}):this.getItems().forEach(function(t){t.showError=!1}),this.$nextTick()},validate:function(t){return this.clearValidate(),this.beginValidate(this.getItems(),"",t)},validateField:function(t,e){var i=this,r=[];return _xeUtils.default.isArray(t)||(r=[t]),this.beginValidate(r.map(function(t){return(0,_util.handleFieldOrItem)(i,t)}),"",e)},beginValidate:function(e,t,i){var r=this,n=this.data,l=this.rules,o=this.validOpts,a={},s=[],u=[];return clearTimeout(this.showErrTime),n&&l?(e.forEach(function(e){var i=e.field;i&&!(0,_util.isHiddenItem)(r,e)&&(0,_util.isActivetem)(r,e)&&u.push(r.validItemRules(t||"all",i).then(function(){e.errRule=null}).catch(function(t){t=t[i];return a[i]||(a[i]=[]),a[i].push(t),s.push(i),e.errRule=t[0].rule,Promise.reject(t)}))}),Promise.all(u).then(function(){i&&i()}).catch(function(){return new Promise(function(t){r.showErrTime=setTimeout(function(){e.forEach(function(t){t.errRule&&(t.showError=!0)})},20),o.autoPos&&r.$nextTick(function(){r.handleFocus(s)}),i?(i(a),t()):t(a)})})):(i&&i(),Promise.resolve())},validItemRules:function(f,t,e){var d=this,p=this.data,i=this.rules,r={};return _xeUtils.default.isArray(t)||(t=[t]),Promise.all(t.map(function(o){var a,s,u=[],c=[];return o&&i&&(a=_xeUtils.default.get(i,o))&&(s=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(p,o):e,a.forEach(function(e){var t,i,r=e.type,n=e.trigger,l=e.required;"all"!==f&&n&&f!==e.trigger||(_xeUtils.default.isFunction(e.validator)?(t=e.validator({itemValue:s,rule:e,rules:a,data:p,field:o,property:o,$form:d}))&&(_xeUtils.default.isError(t)?c.push(new Rule({type:"custom",trigger:n,content:t.message,rule:new Rule(e)})):t.catch&&u.push(t.catch(function(t){c.push(new Rule({type:"custom",trigger:n,content:t?t.message:e.content||e.message,rule:new Rule(e)}))}))):(t="array"===r,r=_xeUtils.default.isArray(s),i=!0,i=t||r?!r||!s.length:_xeUtils.default.isString(s)?(0,_utils.eqEmptyValue)(s.trim()):(0,_utils.eqEmptyValue)(s),(l?i||validErrorRuleValue(e,s):!i&&validErrorRuleValue(e,s))&&c.push(new Rule(e))))})),Promise.all(u).then(function(){c.length&&(r[o]=c.map(function(t){return{$form:d,rule:t,data:p,field:o,property:o}}))})})).then(function(){if(!_xeUtils.default.isEmpty(r))return Promise.reject(r)})},handleFocus:function(t){for(var e=this.$el,i=0;i<t.length;i++){var r=t[i],r=this.getItemByField(r);if(r&&(0,_utils.isEnableConf)(r.itemRender)){var n=r.itemRender,l=_vXETable.default.renderer.get(n.name),o=void 0;if(i||_dom.default.scrollToView(e.querySelector(".".concat(r.id))),o=!(o=n.autofocus?e.querySelector(".".concat(r.id," ").concat(n.autofocus)):o)&&l&&l.autofocus?e.querySelector(".".concat(r.id," ").concat(l.autofocus)):o){o.focus(),_dom.browse.msie&&((n=o.createTextRange()).collapse(!1),n.select());break}}}},triggerItemEvent:function(t,i,e){var r=this;return i?this.validItemRules(t?["blur"].includes(t.type)?"blur":"change":"all",i,e).then(function(){r.clearValidate(i)}).catch(function(t){var t=t[i],e=r.getItemByField(i);e&&t&&(e.showError=!0,e.errRule=t[0].rule)}):this.$nextTick()},updateStatus:function(t,e){t=t.field;return this.triggerItemEvent(new Event("change"),t,e)}}};exports.default=_default2;
|
|
Binary file
|
|
Binary file
|
|
Binary file
|