vxe-table 4.7.0 → 4.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/components.js +3 -1
- package/es/grid/src/grid.js +3 -2
- package/es/index.esm.js +2 -2
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/custom/hook.js +2 -2
- package/es/table/module/custom/panel.js +2 -1
- package/es/table/module/edit/hook.js +2 -1
- package/es/table/module/export/export-panel.js +2 -1
- package/es/table/module/export/hook.js +2 -1
- package/es/table/module/export/import-panel.js +2 -1
- package/es/table/module/filter/hook.js +2 -1
- package/es/table/module/filter/panel.js +2 -1
- package/es/table/module/keyboard/hook.js +2 -1
- package/es/table/module/menu/hook.js +2 -1
- package/es/table/module/validator/hook.js +2 -1
- package/es/table/render/index.js +2 -1
- package/es/table/src/body.js +2 -1
- package/es/table/src/cell.js +2 -1
- package/es/table/src/columnInfo.js +2 -1
- package/es/table/src/props.js +2 -1
- package/es/table/src/table.js +16 -2
- package/es/table/style.css +4 -2
- package/es/table/style.min.css +1 -1
- package/es/toolbar/src/toolbar.js +3 -2
- package/es/ui/index.js +4 -2
- package/es/ui/src/utils.js +3 -3
- package/es/v-x-e-table/index.js +3 -0
- package/es/v-x-e-table/style.css +0 -0
- package/es/v-x-e-table/style.min.css +0 -0
- package/es/vxe-table/style.css +4 -2
- package/es/vxe-table/style.min.css +1 -1
- package/es/vxe-v-x-e-table/index.js +3 -0
- package/es/vxe-v-x-e-table/style.css +0 -0
- package/es/vxe-v-x-e-table/style.min.css +0 -0
- package/lib/components.js +10 -2
- package/lib/components.min.js +1 -1
- package/lib/grid/src/grid.js +40 -29
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.common.js +5 -5
- package/lib/index.umd.js +570 -437
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/custom/hook.js +1 -1
- package/lib/table/module/custom/hook.min.js +1 -1
- package/lib/table/module/custom/panel.js +27 -23
- package/lib/table/module/custom/panel.min.js +1 -1
- package/lib/table/module/edit/hook.js +20 -13
- package/lib/table/module/edit/hook.min.js +1 -1
- package/lib/table/module/export/export-panel.js +35 -31
- package/lib/table/module/export/export-panel.min.js +1 -1
- package/lib/table/module/export/hook.js +24 -18
- package/lib/table/module/export/hook.min.js +1 -1
- package/lib/table/module/export/import-panel.js +12 -8
- package/lib/table/module/export/import-panel.min.js +1 -1
- package/lib/table/module/filter/hook.js +7 -3
- package/lib/table/module/filter/hook.min.js +1 -1
- package/lib/table/module/filter/panel.js +13 -8
- package/lib/table/module/filter/panel.min.js +1 -1
- package/lib/table/module/keyboard/hook.js +4 -1
- package/lib/table/module/keyboard/hook.min.js +1 -1
- package/lib/table/module/menu/hook.js +11 -5
- package/lib/table/module/menu/hook.min.js +1 -1
- package/lib/table/module/validator/hook.js +13 -7
- package/lib/table/module/validator/hook.min.js +1 -1
- package/lib/table/render/index.js +11 -5
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/body.js +7 -3
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/cell.js +26 -21
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/columnInfo.js +15 -10
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/props.js +27 -24
- package/lib/table/src/props.min.js +1 -1
- package/lib/table/src/table.js +173 -146
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/style/style.css +4 -2
- package/lib/table/style/style.min.css +1 -1
- package/lib/toolbar/src/toolbar.js +48 -38
- package/lib/toolbar/src/toolbar.min.js +1 -1
- package/lib/ui/index.js +5 -3
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/utils.js +2 -2
- package/lib/ui/src/utils.min.js +1 -1
- package/lib/v-x-e-table/index.js +22 -0
- package/lib/v-x-e-table/index.min.js +1 -0
- package/lib/v-x-e-table/style/index.js +1 -0
- package/lib/v-x-e-table/style/style.css +0 -0
- package/lib/v-x-e-table/style/style.min.css +0 -0
- package/lib/vxe-table/style/style.css +4 -2
- package/lib/vxe-table/style/style.min.css +1 -1
- package/lib/vxe-v-x-e-table/index.js +22 -0
- package/lib/vxe-v-x-e-table/index.min.js +1 -0
- package/lib/vxe-v-x-e-table/style/index.js +1 -0
- package/lib/vxe-v-x-e-table/style/style.css +0 -0
- package/lib/vxe-v-x-e-table/style/style.min.css +0 -0
- package/package.json +2 -2
- package/packages/components.ts +4 -1
- package/packages/grid/src/grid.ts +5 -4
- package/packages/index.ts +2 -2
- package/packages/table/module/custom/hook.ts +2 -2
- package/packages/table/module/custom/panel.ts +4 -3
- package/packages/table/module/edit/hook.ts +3 -1
- package/packages/table/module/export/export-panel.ts +4 -3
- package/packages/table/module/export/hook.ts +3 -1
- package/packages/table/module/export/import-panel.ts +4 -3
- package/packages/table/module/filter/hook.ts +3 -1
- package/packages/table/module/filter/panel.ts +3 -1
- package/packages/table/module/keyboard/hook.ts +3 -1
- package/packages/table/module/menu/hook.ts +3 -1
- package/packages/table/module/validator/hook.ts +3 -1
- package/packages/table/render/index.ts +4 -3
- package/packages/table/src/body.ts +4 -2
- package/packages/table/src/cell.ts +4 -2
- package/packages/table/src/columnInfo.ts +2 -1
- package/packages/table/src/props.ts +3 -1
- package/packages/table/src/table.ts +18 -4
- package/packages/toolbar/src/toolbar.ts +5 -4
- package/packages/ui/index.ts +3 -0
- package/packages/ui/src/utils.ts +3 -3
- package/packages/ui/src/vn.ts +2 -1
- package/packages/v-x-e-table/index.d.ts +4 -0
- package/packages/v-x-e-table/index.ts +4 -0
- package/styles/components/table.scss +5 -2
- package/styles/components/v-x-e-table.scss +0 -0
- package/styles/theme/base.scss +1 -0
- package/types/all.d.ts +0 -22
|
@@ -7,8 +7,15 @@ var _utils = require("../../../ui/src/utils");
|
|
|
7
7
|
var _util = require("../../src/util");
|
|
8
8
|
var _dom = require("../../../ui/src/dom");
|
|
9
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
+
const {
|
|
11
|
+
getConfig,
|
|
12
|
+
renderer,
|
|
13
|
+
hooks,
|
|
14
|
+
log,
|
|
15
|
+
getI18n
|
|
16
|
+
} = _vxePcUi.VxeUI;
|
|
10
17
|
const tableEditMethodKeys = ['insert', 'insertAt', 'insertNextAt', 'remove', 'removeCheckboxRow', 'removeRadioRow', 'removeCurrentRow', 'getRecordset', 'getInsertRecords', 'getRemoveRecords', 'getUpdateRecords', 'getEditRecord', 'getActiveRecord', 'getSelectedCell', 'clearEdit', 'clearActived', 'clearSelected', 'isEditByRow', 'isActiveByRow', 'setEditRow', 'setActiveRow', 'setEditCell', 'setActiveCell', 'setSelectCell'];
|
|
11
|
-
|
|
18
|
+
hooks.add('tableEditModule', {
|
|
12
19
|
setupTable($xeTable) {
|
|
13
20
|
const {
|
|
14
21
|
props,
|
|
@@ -130,7 +137,7 @@ _vxePcUi.hooks.add('tableEditModule', {
|
|
|
130
137
|
} else {
|
|
131
138
|
if (process.env.NODE_ENV === 'development') {
|
|
132
139
|
if (parentRowId) {
|
|
133
|
-
|
|
140
|
+
log.warn('vxe.error.unableInsert');
|
|
134
141
|
}
|
|
135
142
|
}
|
|
136
143
|
afterFullData[funcName](item);
|
|
@@ -234,7 +241,7 @@ _vxePcUi.hooks.add('tableEditModule', {
|
|
|
234
241
|
if (process.env.NODE_ENV === 'development') {
|
|
235
242
|
if (item[treeOpts.parentField]) {
|
|
236
243
|
if (parentRow && item[treeOpts.parentField] !== parentRow[rowField]) {
|
|
237
|
-
|
|
244
|
+
log.err('vxe.error.errProp', [`${treeOpts.parentField}=${item[treeOpts.parentField]}`, `${treeOpts.parentField}=${parentRow[rowField]}`]);
|
|
238
245
|
}
|
|
239
246
|
}
|
|
240
247
|
}
|
|
@@ -276,13 +283,13 @@ _vxePcUi.hooks.add('tableEditModule', {
|
|
|
276
283
|
}
|
|
277
284
|
} else {
|
|
278
285
|
if (process.env.NODE_ENV === 'development') {
|
|
279
|
-
|
|
286
|
+
log.warn('vxe.error.unableInsert');
|
|
280
287
|
}
|
|
281
288
|
insertTreeRow(newRecords, true);
|
|
282
289
|
}
|
|
283
290
|
} else {
|
|
284
291
|
if (treeConfig) {
|
|
285
|
-
throw new Error(
|
|
292
|
+
throw new Error(getI18n('vxe.error.noTree', ['insert']));
|
|
286
293
|
}
|
|
287
294
|
let afIndex = -1;
|
|
288
295
|
// 如果是可视索引
|
|
@@ -298,7 +305,7 @@ _vxePcUi.hooks.add('tableEditModule', {
|
|
|
298
305
|
afIndex = Math.min(afterFullData.length, afIndex + 1);
|
|
299
306
|
}
|
|
300
307
|
if (afIndex === -1) {
|
|
301
|
-
throw new Error(
|
|
308
|
+
throw new Error(log.err('vxe.error.unableInsert'));
|
|
302
309
|
}
|
|
303
310
|
afterFullData.splice(afIndex, 0, ...newRecords);
|
|
304
311
|
tableFullData.splice($xeTable.findRowIndexOf(tableFullData, row), 0, ...newRecords);
|
|
@@ -615,7 +622,7 @@ _vxePcUi.hooks.add('tableEditModule', {
|
|
|
615
622
|
},
|
|
616
623
|
getActiveRecord() {
|
|
617
624
|
if (process.env.NODE_ENV === 'development') {
|
|
618
|
-
|
|
625
|
+
log.warn('vxe.error.delFunc', ['getActiveRecord', 'getEditRecord']);
|
|
619
626
|
}
|
|
620
627
|
return this.getEditRecord();
|
|
621
628
|
},
|
|
@@ -655,7 +662,7 @@ _vxePcUi.hooks.add('tableEditModule', {
|
|
|
655
662
|
clearActived(evnt) {
|
|
656
663
|
// 即将废弃
|
|
657
664
|
if (process.env.NODE_ENV === 'development') {
|
|
658
|
-
|
|
665
|
+
log.warn('vxe.error.delFunc', ['clearActived', 'clearEdit']);
|
|
659
666
|
}
|
|
660
667
|
return this.clearEdit(evnt);
|
|
661
668
|
},
|
|
@@ -689,7 +696,7 @@ _vxePcUi.hooks.add('tableEditModule', {
|
|
|
689
696
|
$columnIndex: $xeTable.getVMColumnIndex(column)
|
|
690
697
|
}, evnt || null);
|
|
691
698
|
}
|
|
692
|
-
if (
|
|
699
|
+
if (getConfig().cellVaildMode === 'obsolete') {
|
|
693
700
|
if ($xeTable.clearValidate) {
|
|
694
701
|
return $xeTable.clearValidate();
|
|
695
702
|
}
|
|
@@ -715,7 +722,7 @@ _vxePcUi.hooks.add('tableEditModule', {
|
|
|
715
722
|
},
|
|
716
723
|
isActiveByRow(row) {
|
|
717
724
|
if (process.env.NODE_ENV === 'development') {
|
|
718
|
-
|
|
725
|
+
log.warn('vxe.error.delFunc', ['isActiveByRow', 'isEditByRow']);
|
|
719
726
|
}
|
|
720
727
|
// 即将废弃
|
|
721
728
|
return this.isEditByRow(row);
|
|
@@ -732,7 +739,7 @@ _vxePcUi.hooks.add('tableEditModule', {
|
|
|
732
739
|
},
|
|
733
740
|
setActiveRow(row) {
|
|
734
741
|
if (process.env.NODE_ENV === 'development') {
|
|
735
|
-
|
|
742
|
+
log.warn('vxe.error.delFunc', ['setActiveRow', 'setEditRow']);
|
|
736
743
|
}
|
|
737
744
|
// 即将废弃
|
|
738
745
|
return editMethods.setEditRow(row);
|
|
@@ -752,7 +759,7 @@ _vxePcUi.hooks.add('tableEditModule', {
|
|
|
752
759
|
},
|
|
753
760
|
setActiveCell(row, fieldOrColumn) {
|
|
754
761
|
if (process.env.NODE_ENV === 'development') {
|
|
755
|
-
|
|
762
|
+
log.warn('vxe.error.delFunc', ['setActiveCell', 'setEditCell']);
|
|
756
763
|
}
|
|
757
764
|
// 即将废弃
|
|
758
765
|
return editMethods.setEditCell(row, fieldOrColumn);
|
|
@@ -951,7 +958,7 @@ _vxePcUi.hooks.add('tableEditModule', {
|
|
|
951
958
|
editRender
|
|
952
959
|
} = column;
|
|
953
960
|
if ((0, _utils.isEnableConf)(editRender)) {
|
|
954
|
-
const compRender =
|
|
961
|
+
const compRender = renderer.get(editRender.name);
|
|
955
962
|
let {
|
|
956
963
|
autofocus,
|
|
957
964
|
autoselect
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_vxePcUi=require("vxe-pc-ui"),_utils=require("../../../ui/src/utils"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const tableEditMethodKeys=["insert","insertAt","insertNextAt","remove","removeCheckboxRow","removeRadioRow","removeCurrentRow","getRecordset","getInsertRecords","getRemoveRecords","getUpdateRecords","getEditRecord","getActiveRecord","getSelectedCell","clearEdit","clearActived","clearSelected","isEditByRow","isActiveByRow","setEditRow","setActiveRow","setEditCell","setActiveCell","setSelectCell"];_vxePcUi.hooks.add("tableEditModule",{setupTable(E){const{props:I,reactData:b,internalData:F}=E,o=E.getRefMaps()["refElem"],{computeMouseOpts:u,computeEditOpts:f,computeCheckboxOpts:p,computeTreeOpts:S}=E.getComputeMaps();let R={},x={};const m=(e,t)=>{var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)},a=(e,t)=>{var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)},l=()=>{var e=o.value;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")};function n(){var{editStore:e,tableColumn:t}=b,l=f.value,e=e["actived"];const{row:r,column:o}=e;(r||o)&&("row"===l.mode?t.forEach(e=>a(r,e)):a(r,o))}function A(e,t){const{tableFullTreeData:n,afterFullData:i,fullDataRowIdData:d,fullAllDataRowIdData:c}=F;var l=S.value;const{rowField:s,parentField:u,mapChildrenField:v}=l,w=l.children||l.childrenField,g=t?"push":"unshift";e.forEach(l=>{const t=l[u];var r=(0,_util.getRowid)(E,l),o=t?_xeUtils.default.findTree(n,e=>t===e[s],{children:v}):null;if(o){var o=o["item"],a=c[(0,_util.getRowid)(E,o)],a=a?a.level:0;let e=o[w],t=o[v];_xeUtils.default.isArray(e)||(e=o[w]=[]),_xeUtils.default.isArray(t)||(t=o[w]=[]),e[g](l),t[g](l);o={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,items:e,parent:o,level:a+1};d[r]=o,c[r]=o}else{"development"===process.env.NODE_ENV&&t&&_vxePcUi.log.warn("vxe.error.unableInsert"),i[g](l),n[g](l);a={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,items:n,parent:null,level:0};d[r]=a,c[r]=a}})}const r=(t,l,o)=>{const a=I["treeConfig"];var{mergeList:e,editStore:r}=b;const{tableFullTreeData:n,afterFullData:i,tableFullData:d,fullDataRowIdData:c,fullAllDataRowIdData:s}=F,u=S.value,{transform:v,rowField:w,mapChildrenField:g}=u,f=u.children||u.childrenField,x=(_xeUtils.default.isArray(t)||(t=[t]),(0,_vue.reactive)(E.defineField(t.map(e=>Object.assign(a&&v?{[g]:[],[f]:[]}:{},e)))));if(_xeUtils.default.eqNull(l))a&&v?A(x,!1):(i.unshift(...x),d.unshift(...x),e.forEach(e=>{var t=e["row"];0<t&&(e.row=t+x.length)}));else if(-1===l)a&&v?A(x,!0):(i.push(...x),d.push(...x),e.forEach(e=>{var{row:t,rowspan:l}=e;t+l>i.length&&(e.rowspan=l+x.length)}));else if(a&&v){const R=_xeUtils.default.findTree(n,e=>l[w]===e[w],{children:g});if(R){const h=R["parent"],_=h?h[g]:n;t=s[(0,_util.getRowid)(E,h)];const C=t?t.level:0;if(x.forEach((e,t)=>{var l=(0,_util.getRowid)(E,e);"development"===process.env.NODE_ENV&&e[u.parentField]&&h&&e[u.parentField]!==h[w]&&_vxePcUi.log.err("vxe.error.errProp",[u.parentField+"="+e[u.parentField],u.parentField+"="+h[w]]),h&&(e[u.parentField]=h[w]);let r=R.index+t;o&&(r+=1),_.splice(r,0,e);t={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,items:_,parent:h,level:C+1};c[l]=t,s[l]=t}),h){t=_xeUtils.default.findTree(n,e=>l[w]===e[w],{children:f});if(t){var m=t.items;let e=t.index;o&&(e+=1),m.splice(e,0,...x)}}}else"development"===process.env.NODE_ENV&&_vxePcUi.log.warn("vxe.error.unableInsert"),A(x,!0)}else{if(a)throw new Error((0,_vxePcUi.getI18n)("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(l)?l<i.length&&(r=l):r=E.findRowIndexOf(i,l),-1===(r=o?Math.min(i.length,r+1):r))throw new Error(_vxePcUi.log.err("vxe.error.unableInsert"));i.splice(r,0,...x),d.splice(E.findRowIndexOf(d,l),0,...x),e.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t+x.length:t+l>r&&(e.rowspan=l+x.length)})}const p=r["insertMaps"];return x.forEach(e=>{var t=(0,_util.getRowid)(E,e);p[t]=e}),E.cacheRowMap(),E.updateScrollYStatus(),E.handleTableData(a&&v),a&&v||E.updateAfterDataIndex(),E.updateFooter(),E.checkSelectionStatus(),b.scrollYLoad&&E.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(E.updateCellAreas(),E.recalculate())).then(()=>({row:x.length?x[x.length-1]:null,rows:x}))};return R={insert(e){return r(e,null)},insertAt(e,t){return r(e,t)},insertNextAt(e,t){return r(e,t,!0)},remove(e){var t=I["treeConfig"];const{mergeList:l,editStore:r,selectCheckboxMaps:o}=b,{tableFullTreeData:a,afterFullData:n,tableFullData:i}=F;var d=p.value,c=S.value;const{transform:s,mapChildrenField:u}=c,v=c.children||c.childrenField,{actived:w,removeMaps:g,insertMaps:f}=r;c=d.checkField;let x=[];if(e?_xeUtils.default.isArray(e)||(e=[e]):e=i,e.forEach(e=>{var t;E.isInsertByRow(e)||(t=(0,_util.getRowid)(E,e),g[t]=e)}),!c){const m=Object.assign({},o);e.forEach(e=>{e=(0,_util.getRowid)(E,e);m[e]&&delete m[e]}),b.selectCheckboxMaps=m}return i===e?(e=x=i.slice(0),F.tableFullData=[],F.afterFullData=[],E.clearMergeCells()):t&&s?e.forEach(e=>{const t=(0,_util.getRowid)(E,e);var l=_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(E,e),{children:u}),l=(l&&(l=l.items.splice(l.index,1),x.push(l[0])),_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(E,e),{children:v})),l=(l&&l.items.splice(l.index,1),E.findRowIndexOf(n,e));-1<l&&n.splice(l,1)}):e.forEach(e=>{var t=E.findRowIndexOf(i,e);-1<t&&(t=i.splice(t,1),x.push(t[0]));const r=E.findRowIndexOf(n,e);-1<r&&(l.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),n.splice(r,1))}),w.row&&-1<E.findRowIndexOf(e,w.row)&&R.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(E,e);f[e]&&delete f[e]}),E.updateFooter(),E.cacheRowMap(),E.handleTableData(t&&s),t&&s||E.updateAfterDataIndex(),E.checkSelectionStatus(),b.scrollYLoad&&E.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(E.updateCellAreas(),E.recalculate())).then(()=>({row:x.length?x[x.length-1]:null,rows:x}))},removeCheckboxRow(){return R.remove(E.getCheckboxRecords()).then(e=>(E.clearCheckboxRow(),e))},removeRadioRow(){var e=E.getRadioRecord();return R.remove(e||[]).then(e=>(E.clearRadioRow(),e))},removeCurrentRow(){var e=E.getCurrentRecord();return R.remove(e||[]).then(e=>(E.clearCurrentRow(),e))},getRecordset(){return{insertRecords:R.getInsertRecords(),removeRecords:R.getRemoveRecords(),updateRecords:R.getUpdateRecords(),pendingRecords:E.getPendingRecords()}},getInsertRecords(){var e=b["editStore"];const l=F["fullAllDataRowIdData"];e=e.insertMaps;const r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},getRemoveRecords(){var e=b["editStore"],e=e["removeMaps"];const t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},getUpdateRecords(){var{keepSource:e,treeConfig:t}=I,l=F["tableFullData"],r=S.value;return e?(n(),t?_xeUtils.default.filterTree(l,e=>E.isUpdateByRow(e),r):l.filter(e=>E.isUpdateByRow(e))):[]},getActiveRecord(){return"development"===process.env.NODE_ENV&&_vxePcUi.log.warn("vxe.error.delFunc",["getActiveRecord","getEditRecord"]),this.getEditRecord()},getEditRecord(){var e=b["editStore"],t=F["afterFullData"],l=o.value,{args:e,row:r}=e.actived;return e&&-1<E.findRowIndexOf(t,r)&&l.querySelectorAll(".vxe-body--column.col--active").length?Object.assign({},e):null},getSelectedCell(){var e=b["editStore"],{args:e,column:t}=e.selected;return e&&t?Object.assign({},e):null},clearActived(e){return"development"===process.env.NODE_ENV&&_vxePcUi.log.warn("vxe.error.delFunc",["clearActived","clearEdit"]),this.clearEdit(e)},clearEdit(e){var t=b["editStore"],{actived:t,focused:l}=t,{row:r,column:o}=t;return(r||o)&&(n(),t.args=null,t.row=null,t.column=null,E.updateFooter(),E.dispatchEvent("edit-closed",{row:r,rowIndex:E.getRowIndex(r),$rowIndex:E.getVMRowIndex(r),column:o,columnIndex:E.getColumnIndex(o),$columnIndex:E.getVMColumnIndex(o)},e||null)),"obsolete"===(0,_vxePcUi.getConfig)().cellVaildMode&&E.clearValidate?E.clearValidate():(l.row=null,(l.column=null,_vue.nextTick)())},clearSelected(){var e=b["editStore"],e=e["selected"];return e.row=null,e.column=null,l(),(0,_vue.nextTick)()},isActiveByRow(e){return"development"===process.env.NODE_ENV&&_vxePcUi.log.warn("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},isEditByRow(e){var t=b["editStore"];return t.actived.row===e},setActiveRow(e){return"development"===process.env.NODE_ENV&&_vxePcUi.log.warn("vxe.error.delFunc",["setActiveRow","setEditRow"]),R.setEditRow(e)},setEditRow(e,t){var l=F["visibleColumn"];let r=_xeUtils.default.find(l,e=>(0,_utils.isEnableConf)(e.editRender));return t&&(r=_xeUtils.default.isString(t)?E.getColumnByField(t):t),E.setEditCell(e,r)},setActiveCell(e,t){return"development"===process.env.NODE_ENV&&_vxePcUi.log.warn("vxe.error.delFunc",["setActiveCell","setEditCell"]),R.setEditCell(e,t)},setEditCell(t,e){var l=I["editConfig"];const r=_xeUtils.default.isString(e)?E.getColumnByField(e):e;return t&&r&&(0,_utils.isEnableConf)(l)&&(0,_utils.isEnableConf)(r.editRender)?E.scrollToRow(t,r).then(()=>{var e=E.getCell(t,r);return e&&(x.handleActived({row:t,rowIndex:E.getRowIndex(t),column:r,columnIndex:E.getColumnIndex(r),cell:e,$table:E}),F._lastCallTime=Date.now()),(0,_vue.nextTick)()}):(0,_vue.nextTick)()},setSelectCell(e,t){var l=b["tableData"],r=f.value,t=_xeUtils.default.isString(t)?E.getColumnByField(t):t;return e&&t&&"manual"!==r.trigger&&-1<(r=E.findRowIndexOf(l,e))&&t&&(l=E.getCell(e,t),e={row:e,rowIndex:r,column:t,columnIndex:E.getColumnIndex(t),cell:l},E.handleSelected(e,{})),(0,_vue.nextTick)()}},x={handleActived(t,l){var{editConfig:e,mouseConfig:r}=I,{editStore:o,tableColumn:a}=b,n=f.value,i=n["mode"],{actived:o,focused:d}=o;const{row:c,column:s}=t;var u=s["editRender"],v=t.cell||E.getCell(c,s),w=n.beforeEditMethod||n.activeMethod;if((t.cell=v)&&(0,_utils.isEnableConf)(e)&&(0,_utils.isEnableConf)(u)&&!E.hasPendingByRow(c)){if(o.row!==c||"cell"===i&&o.column!==s){let e="edit-disabled";if(!w||w(Object.assign(Object.assign({},t),{$table:E,$grid:E.xegrid}))){r&&(R.clearSelected(),E.clearCellAreas)&&(E.clearCellAreas(),E.clearCopyCellArea()),E.closeTooltip(),o.column&&R.clearEdit(l),e="edit-activated",s.renderHeight=v.offsetHeight,o.args=t,o.row=c,o.column=s,"row"===i?a.forEach(e=>m(c,e)):m(c,s);const g=n.afterEditMethod;(0,_vue.nextTick)(()=>{x.handleFocus(t,l),g&&g(Object.assign(Object.assign({},t),{$table:E,$grid:E.xegrid}))})}E.dispatchEvent(e,{row:c,rowIndex:E.getRowIndex(c),$rowIndex:E.getVMRowIndex(c),column:s,columnIndex:E.getColumnIndex(s),$columnIndex:E.getVMColumnIndex(s)},l),"edit-activated"===e&&E.dispatchEvent("edit-actived",{row:c,rowIndex:E.getRowIndex(c),$rowIndex:E.getVMRowIndex(c),column:s,columnIndex:E.getColumnIndex(s),$columnIndex:E.getVMColumnIndex(s)},l)}else{e=o["column"];r&&(R.clearSelected(),E.clearCellAreas)&&(E.clearCellAreas(),E.clearCopyCellArea()),e!==s&&(u=e["model"],u.update&&(0,_util.setCellValue)(c,e,u.value),E.clearValidate)&&E.clearValidate(c,s),s.renderHeight=v.offsetHeight,o.args=t,o.column=s,setTimeout(()=>{x.handleFocus(t,l)})}d.column=null,d.row=null,E.focus()}return(0,_vue.nextTick)()},handleFocus(r){var{row:o,column:a,cell:n}=r,i=a["editRender"];if((0,_utils.isEnableConf)(i)){var d=_vxePcUi.renderer.get(i.name);let{autofocus:e,autoselect:t}=i,l;!e&&d&&(e=d.autofocus),!t&&d&&(t=d.autoselect),_xeUtils.default.isFunction(e)?l=e.call(this,r):e&&(l=n.querySelector(e))&&l.focus(),l?t?l.select():_dom.browse.msie&&((i=l.createTextRange()).collapse(!1),i.select()):E.scrollToRow(o,a)}},handleSelected(e,t){var l=I["mouseConfig"],r=b["editStore"],o=u.value;const a=f.value,{actived:n,selected:i}=r,{row:d,column:c}=e,s=l&&o.selected;return!s||i.row===d&&i.column===c||(n.row!==d||"cell"===a.mode&&n.column!==c)&&(R.clearEdit(t),R.clearSelected(),E.clearCellAreas&&(E.clearCellAreas(),E.clearCopyCellArea()),i.args=e,i.row=d,i.column=c,s&&x.addCellSelectedClass(),E.focus(),t)&&E.dispatchEvent("cell-selected",e,t),(0,_vue.nextTick)()},addCellSelectedClass(){var e=b["editStore"],e=e["selected"],{row:e,column:t}=e;l(),e&&t&&(e=E.getCell(e,t))&&(0,_dom.addClass)(e,"col--selected")}},Object.assign(Object.assign({},R),x)},setupGrid(e){return e.extendTableMethods(tableEditMethodKeys)}});
|
|
1
|
+
"use strict";var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_vxePcUi=require("vxe-pc-ui"),_utils=require("../../../ui/src/utils"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getConfig,renderer,hooks,log,getI18n}=_vxePcUi.VxeUI,tableEditMethodKeys=["insert","insertAt","insertNextAt","remove","removeCheckboxRow","removeRadioRow","removeCurrentRow","getRecordset","getInsertRecords","getRemoveRecords","getUpdateRecords","getEditRecord","getActiveRecord","getSelectedCell","clearEdit","clearActived","clearSelected","isEditByRow","isActiveByRow","setEditRow","setActiveRow","setEditCell","setActiveCell","setSelectCell"];hooks.add("tableEditModule",{setupTable(E){const{props:I,reactData:b,internalData:F}=E,o=E.getRefMaps()["refElem"],{computeMouseOpts:u,computeEditOpts:f,computeCheckboxOpts:x,computeTreeOpts:S}=E.getComputeMaps();let h={},m={};const p=(e,t)=>{var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)},n=(e,t)=>{var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)},l=()=>{var e=o.value;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")};function a(){var{editStore:e,tableColumn:t}=b,l=f.value,e=e["actived"];const{row:r,column:o}=e;(r||o)&&("row"===l.mode?t.forEach(e=>n(r,e)):n(r,o))}function A(e,t){const{tableFullTreeData:a,afterFullData:i,fullDataRowIdData:d,fullAllDataRowIdData:c}=F;var l=S.value;const{rowField:s,parentField:u,mapChildrenField:v}=l,w=l.children||l.childrenField,g=t?"push":"unshift";e.forEach(l=>{const t=l[u];var r=(0,_util.getRowid)(E,l),o=t?_xeUtils.default.findTree(a,e=>t===e[s],{children:v}):null;if(o){var o=o["item"],n=c[(0,_util.getRowid)(E,o)],n=n?n.level:0;let e=o[w],t=o[v];_xeUtils.default.isArray(e)||(e=o[w]=[]),_xeUtils.default.isArray(t)||(t=o[w]=[]),e[g](l),t[g](l);o={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,items:e,parent:o,level:n+1};d[r]=o,c[r]=o}else{"development"===process.env.NODE_ENV&&t&&log.warn("vxe.error.unableInsert"),i[g](l),a[g](l);n={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,items:a,parent:null,level:0};d[r]=n,c[r]=n}})}const r=(t,l,o)=>{const n=I["treeConfig"];var{mergeList:e,editStore:r}=b;const{tableFullTreeData:a,afterFullData:i,tableFullData:d,fullDataRowIdData:c,fullAllDataRowIdData:s}=F,u=S.value,{transform:v,rowField:w,mapChildrenField:g}=u,f=u.children||u.childrenField,m=(_xeUtils.default.isArray(t)||(t=[t]),(0,_vue.reactive)(E.defineField(t.map(e=>Object.assign(n&&v?{[g]:[],[f]:[]}:{},e)))));if(_xeUtils.default.eqNull(l))n&&v?A(m,!1):(i.unshift(...m),d.unshift(...m),e.forEach(e=>{var t=e["row"];0<t&&(e.row=t+m.length)}));else if(-1===l)n&&v?A(m,!0):(i.push(...m),d.push(...m),e.forEach(e=>{var{row:t,rowspan:l}=e;t+l>i.length&&(e.rowspan=l+m.length)}));else if(n&&v){const h=_xeUtils.default.findTree(a,e=>l[w]===e[w],{children:g});if(h){const R=h["parent"],C=R?R[g]:a;t=s[(0,_util.getRowid)(E,R)];const _=t?t.level:0;if(m.forEach((e,t)=>{var l=(0,_util.getRowid)(E,e);"development"===process.env.NODE_ENV&&e[u.parentField]&&R&&e[u.parentField]!==R[w]&&log.err("vxe.error.errProp",[u.parentField+"="+e[u.parentField],u.parentField+"="+R[w]]),R&&(e[u.parentField]=R[w]);let r=h.index+t;o&&(r+=1),C.splice(r,0,e);t={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,items:C,parent:R,level:_+1};c[l]=t,s[l]=t}),R){t=_xeUtils.default.findTree(a,e=>l[w]===e[w],{children:f});if(t){var p=t.items;let e=t.index;o&&(e+=1),p.splice(e,0,...m)}}}else"development"===process.env.NODE_ENV&&log.warn("vxe.error.unableInsert"),A(m,!0)}else{if(n)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(l)?l<i.length&&(r=l):r=E.findRowIndexOf(i,l),-1===(r=o?Math.min(i.length,r+1):r))throw new Error(log.err("vxe.error.unableInsert"));i.splice(r,0,...m),d.splice(E.findRowIndexOf(d,l),0,...m),e.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t+m.length:t+l>r&&(e.rowspan=l+m.length)})}const x=r["insertMaps"];return m.forEach(e=>{var t=(0,_util.getRowid)(E,e);x[t]=e}),E.cacheRowMap(),E.updateScrollYStatus(),E.handleTableData(n&&v),n&&v||E.updateAfterDataIndex(),E.updateFooter(),E.checkSelectionStatus(),b.scrollYLoad&&E.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(E.updateCellAreas(),E.recalculate())).then(()=>({row:m.length?m[m.length-1]:null,rows:m}))};return h={insert(e){return r(e,null)},insertAt(e,t){return r(e,t)},insertNextAt(e,t){return r(e,t,!0)},remove(e){var t=I["treeConfig"];const{mergeList:l,editStore:r,selectCheckboxMaps:o}=b,{tableFullTreeData:n,afterFullData:a,tableFullData:i}=F;var d=x.value,c=S.value;const{transform:s,mapChildrenField:u}=c,v=c.children||c.childrenField,{actived:w,removeMaps:g,insertMaps:f}=r;c=d.checkField;let m=[];if(e?_xeUtils.default.isArray(e)||(e=[e]):e=i,e.forEach(e=>{var t;E.isInsertByRow(e)||(t=(0,_util.getRowid)(E,e),g[t]=e)}),!c){const p=Object.assign({},o);e.forEach(e=>{e=(0,_util.getRowid)(E,e);p[e]&&delete p[e]}),b.selectCheckboxMaps=p}return i===e?(e=m=i.slice(0),F.tableFullData=[],F.afterFullData=[],E.clearMergeCells()):t&&s?e.forEach(e=>{const t=(0,_util.getRowid)(E,e);var l=_xeUtils.default.findTree(n,e=>t===(0,_util.getRowid)(E,e),{children:u}),l=(l&&(l=l.items.splice(l.index,1),m.push(l[0])),_xeUtils.default.findTree(n,e=>t===(0,_util.getRowid)(E,e),{children:v})),l=(l&&l.items.splice(l.index,1),E.findRowIndexOf(a,e));-1<l&&a.splice(l,1)}):e.forEach(e=>{var t=E.findRowIndexOf(i,e);-1<t&&(t=i.splice(t,1),m.push(t[0]));const r=E.findRowIndexOf(a,e);-1<r&&(l.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),a.splice(r,1))}),w.row&&-1<E.findRowIndexOf(e,w.row)&&h.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(E,e);f[e]&&delete f[e]}),E.updateFooter(),E.cacheRowMap(),E.handleTableData(t&&s),t&&s||E.updateAfterDataIndex(),E.checkSelectionStatus(),b.scrollYLoad&&E.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(E.updateCellAreas(),E.recalculate())).then(()=>({row:m.length?m[m.length-1]:null,rows:m}))},removeCheckboxRow(){return h.remove(E.getCheckboxRecords()).then(e=>(E.clearCheckboxRow(),e))},removeRadioRow(){var e=E.getRadioRecord();return h.remove(e||[]).then(e=>(E.clearRadioRow(),e))},removeCurrentRow(){var e=E.getCurrentRecord();return h.remove(e||[]).then(e=>(E.clearCurrentRow(),e))},getRecordset(){return{insertRecords:h.getInsertRecords(),removeRecords:h.getRemoveRecords(),updateRecords:h.getUpdateRecords(),pendingRecords:E.getPendingRecords()}},getInsertRecords(){var e=b["editStore"];const l=F["fullAllDataRowIdData"];e=e.insertMaps;const r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},getRemoveRecords(){var e=b["editStore"],e=e["removeMaps"];const t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},getUpdateRecords(){var{keepSource:e,treeConfig:t}=I,l=F["tableFullData"],r=S.value;return e?(a(),t?_xeUtils.default.filterTree(l,e=>E.isUpdateByRow(e),r):l.filter(e=>E.isUpdateByRow(e))):[]},getActiveRecord(){return"development"===process.env.NODE_ENV&&log.warn("vxe.error.delFunc",["getActiveRecord","getEditRecord"]),this.getEditRecord()},getEditRecord(){var e=b["editStore"],t=F["afterFullData"],l=o.value,{args:e,row:r}=e.actived;return e&&-1<E.findRowIndexOf(t,r)&&l.querySelectorAll(".vxe-body--column.col--active").length?Object.assign({},e):null},getSelectedCell(){var e=b["editStore"],{args:e,column:t}=e.selected;return e&&t?Object.assign({},e):null},clearActived(e){return"development"===process.env.NODE_ENV&&log.warn("vxe.error.delFunc",["clearActived","clearEdit"]),this.clearEdit(e)},clearEdit(e){var t=b["editStore"],{actived:t,focused:l}=t,{row:r,column:o}=t;return(r||o)&&(a(),t.args=null,t.row=null,t.column=null,E.updateFooter(),E.dispatchEvent("edit-closed",{row:r,rowIndex:E.getRowIndex(r),$rowIndex:E.getVMRowIndex(r),column:o,columnIndex:E.getColumnIndex(o),$columnIndex:E.getVMColumnIndex(o)},e||null)),"obsolete"===getConfig().cellVaildMode&&E.clearValidate?E.clearValidate():(l.row=null,(l.column=null,_vue.nextTick)())},clearSelected(){var e=b["editStore"],e=e["selected"];return e.row=null,e.column=null,l(),(0,_vue.nextTick)()},isActiveByRow(e){return"development"===process.env.NODE_ENV&&log.warn("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},isEditByRow(e){var t=b["editStore"];return t.actived.row===e},setActiveRow(e){return"development"===process.env.NODE_ENV&&log.warn("vxe.error.delFunc",["setActiveRow","setEditRow"]),h.setEditRow(e)},setEditRow(e,t){var l=F["visibleColumn"];let r=_xeUtils.default.find(l,e=>(0,_utils.isEnableConf)(e.editRender));return t&&(r=_xeUtils.default.isString(t)?E.getColumnByField(t):t),E.setEditCell(e,r)},setActiveCell(e,t){return"development"===process.env.NODE_ENV&&log.warn("vxe.error.delFunc",["setActiveCell","setEditCell"]),h.setEditCell(e,t)},setEditCell(t,e){var l=I["editConfig"];const r=_xeUtils.default.isString(e)?E.getColumnByField(e):e;return t&&r&&(0,_utils.isEnableConf)(l)&&(0,_utils.isEnableConf)(r.editRender)?E.scrollToRow(t,r).then(()=>{var e=E.getCell(t,r);return e&&(m.handleActived({row:t,rowIndex:E.getRowIndex(t),column:r,columnIndex:E.getColumnIndex(r),cell:e,$table:E}),F._lastCallTime=Date.now()),(0,_vue.nextTick)()}):(0,_vue.nextTick)()},setSelectCell(e,t){var l=b["tableData"],r=f.value,t=_xeUtils.default.isString(t)?E.getColumnByField(t):t;return e&&t&&"manual"!==r.trigger&&-1<(r=E.findRowIndexOf(l,e))&&t&&(l=E.getCell(e,t),e={row:e,rowIndex:r,column:t,columnIndex:E.getColumnIndex(t),cell:l},E.handleSelected(e,{})),(0,_vue.nextTick)()}},m={handleActived(t,l){var{editConfig:e,mouseConfig:r}=I,{editStore:o,tableColumn:n}=b,a=f.value,i=a["mode"],{actived:o,focused:d}=o;const{row:c,column:s}=t;var u=s["editRender"],v=t.cell||E.getCell(c,s),w=a.beforeEditMethod||a.activeMethod;if((t.cell=v)&&(0,_utils.isEnableConf)(e)&&(0,_utils.isEnableConf)(u)&&!E.hasPendingByRow(c)){if(o.row!==c||"cell"===i&&o.column!==s){let e="edit-disabled";if(!w||w(Object.assign(Object.assign({},t),{$table:E,$grid:E.xegrid}))){r&&(h.clearSelected(),E.clearCellAreas)&&(E.clearCellAreas(),E.clearCopyCellArea()),E.closeTooltip(),o.column&&h.clearEdit(l),e="edit-activated",s.renderHeight=v.offsetHeight,o.args=t,o.row=c,o.column=s,"row"===i?n.forEach(e=>p(c,e)):p(c,s);const g=a.afterEditMethod;(0,_vue.nextTick)(()=>{m.handleFocus(t,l),g&&g(Object.assign(Object.assign({},t),{$table:E,$grid:E.xegrid}))})}E.dispatchEvent(e,{row:c,rowIndex:E.getRowIndex(c),$rowIndex:E.getVMRowIndex(c),column:s,columnIndex:E.getColumnIndex(s),$columnIndex:E.getVMColumnIndex(s)},l),"edit-activated"===e&&E.dispatchEvent("edit-actived",{row:c,rowIndex:E.getRowIndex(c),$rowIndex:E.getVMRowIndex(c),column:s,columnIndex:E.getColumnIndex(s),$columnIndex:E.getVMColumnIndex(s)},l)}else{e=o["column"];r&&(h.clearSelected(),E.clearCellAreas)&&(E.clearCellAreas(),E.clearCopyCellArea()),e!==s&&(u=e["model"],u.update&&(0,_util.setCellValue)(c,e,u.value),E.clearValidate)&&E.clearValidate(c,s),s.renderHeight=v.offsetHeight,o.args=t,o.column=s,setTimeout(()=>{m.handleFocus(t,l)})}d.column=null,d.row=null,E.focus()}return(0,_vue.nextTick)()},handleFocus(r){var{row:o,column:n,cell:a}=r,i=n["editRender"];if((0,_utils.isEnableConf)(i)){var d=renderer.get(i.name);let{autofocus:e,autoselect:t}=i,l;!e&&d&&(e=d.autofocus),!t&&d&&(t=d.autoselect),_xeUtils.default.isFunction(e)?l=e.call(this,r):e&&(l=a.querySelector(e))&&l.focus(),l?t?l.select():_dom.browse.msie&&((i=l.createTextRange()).collapse(!1),i.select()):E.scrollToRow(o,n)}},handleSelected(e,t){var l=I["mouseConfig"],r=b["editStore"],o=u.value;const n=f.value,{actived:a,selected:i}=r,{row:d,column:c}=e,s=l&&o.selected;return!s||i.row===d&&i.column===c||(a.row!==d||"cell"===n.mode&&a.column!==c)&&(h.clearEdit(t),h.clearSelected(),E.clearCellAreas&&(E.clearCellAreas(),E.clearCopyCellArea()),i.args=e,i.row=d,i.column=c,s&&m.addCellSelectedClass(),E.focus(),t)&&E.dispatchEvent("cell-selected",e,t),(0,_vue.nextTick)()},addCellSelectedClass(){var e=b["editStore"],e=e["selected"],{row:e,column:t}=e;l(),e&&t&&(e=E.getCell(e,t))&&(0,_dom.addClass)(e,"col--selected")}},Object.assign(Object.assign({},h),m)},setupGrid(e){return e.extendTableMethods(tableEditMethodKeys)}});
|
|
@@ -9,6 +9,10 @@ var _vxePcUi = require("vxe-pc-ui");
|
|
|
9
9
|
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
10
10
|
var _utils = require("../../../ui/src/utils");
|
|
11
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
|
+
const {
|
|
13
|
+
getI18n,
|
|
14
|
+
getIcon
|
|
15
|
+
} = _vxePcUi.VxeUI;
|
|
12
16
|
var _default = exports.default = (0, _vue.defineComponent)({
|
|
13
17
|
name: 'VxeTableExportPanel',
|
|
14
18
|
props: {
|
|
@@ -213,14 +217,14 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
213
217
|
}
|
|
214
218
|
}
|
|
215
219
|
}, [(0, _vue.h)('span', {
|
|
216
|
-
class: ['vxe-checkbox--icon', indeterminate ?
|
|
220
|
+
class: ['vxe-checkbox--icon', indeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : isChecked ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED]
|
|
217
221
|
}), (0, _vue.h)('span', {
|
|
218
222
|
class: 'vxe-checkbox--label'
|
|
219
223
|
}, colTitle)]));
|
|
220
224
|
});
|
|
221
225
|
return (0, _vue.h)((0, _vue.resolveComponent)('vxe-modal'), {
|
|
222
226
|
modelValue: storeData.visible,
|
|
223
|
-
title:
|
|
227
|
+
title: getI18n(isPrint ? 'vxe.export.printTitle' : 'vxe.export.expTitle'),
|
|
224
228
|
className: 'vxe-table-export-popup-wrapper',
|
|
225
229
|
width: 660,
|
|
226
230
|
mask: true,
|
|
@@ -241,47 +245,47 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
241
245
|
cellspacing: 0,
|
|
242
246
|
cellpadding: 0,
|
|
243
247
|
border: 0
|
|
244
|
-
}, [(0, _vue.h)('tbody', [[isPrint ? (0, _vue.createCommentVNode)() : (0, _vue.h)('tr', [(0, _vue.h)('td',
|
|
248
|
+
}, [(0, _vue.h)('tbody', [[isPrint ? (0, _vue.createCommentVNode)() : (0, _vue.h)('tr', [(0, _vue.h)('td', getI18n('vxe.export.expName')), (0, _vue.h)('td', [(0, _vue.h)((0, _vue.resolveComponent)('vxe-input'), {
|
|
245
249
|
ref: xInputFilename,
|
|
246
250
|
modelValue: defaultOptions.filename,
|
|
247
251
|
type: 'text',
|
|
248
252
|
clearable: true,
|
|
249
|
-
placeholder:
|
|
253
|
+
placeholder: getI18n('vxe.export.expNamePlaceholder'),
|
|
250
254
|
'onUpdate:modelValue'(value) {
|
|
251
255
|
defaultOptions.filename = value;
|
|
252
256
|
}
|
|
253
|
-
})])]), isPrint ? (0, _vue.createCommentVNode)() : (0, _vue.h)('tr', [(0, _vue.h)('td',
|
|
257
|
+
})])]), isPrint ? (0, _vue.createCommentVNode)() : (0, _vue.h)('tr', [(0, _vue.h)('td', getI18n('vxe.export.expType')), (0, _vue.h)('td', [(0, _vue.h)((0, _vue.resolveComponent)('vxe-select'), {
|
|
254
258
|
modelValue: defaultOptions.type,
|
|
255
259
|
options: storeData.typeList.map(item => {
|
|
256
260
|
return {
|
|
257
261
|
value: item.value,
|
|
258
|
-
label:
|
|
262
|
+
label: getI18n(item.label)
|
|
259
263
|
};
|
|
260
264
|
}),
|
|
261
265
|
'onUpdate:modelValue'(value) {
|
|
262
266
|
defaultOptions.type = value;
|
|
263
267
|
}
|
|
264
|
-
})])]), isPrint || showSheet ? (0, _vue.h)('tr', [(0, _vue.h)('td',
|
|
268
|
+
})])]), isPrint || showSheet ? (0, _vue.h)('tr', [(0, _vue.h)('td', getI18n('vxe.export.expSheetName')), (0, _vue.h)('td', [(0, _vue.h)((0, _vue.resolveComponent)('vxe-input'), {
|
|
265
269
|
ref: xInputSheetname,
|
|
266
270
|
modelValue: defaultOptions.sheetName,
|
|
267
271
|
type: 'text',
|
|
268
272
|
clearable: true,
|
|
269
|
-
placeholder:
|
|
273
|
+
placeholder: getI18n('vxe.export.expSheetNamePlaceholder'),
|
|
270
274
|
'onUpdate:modelValue'(value) {
|
|
271
275
|
defaultOptions.sheetName = value;
|
|
272
276
|
}
|
|
273
|
-
})])]) : (0, _vue.createCommentVNode)(), (0, _vue.h)('tr', [(0, _vue.h)('td',
|
|
277
|
+
})])]) : (0, _vue.createCommentVNode)(), (0, _vue.h)('tr', [(0, _vue.h)('td', getI18n('vxe.export.expMode')), (0, _vue.h)('td', [(0, _vue.h)((0, _vue.resolveComponent)('vxe-select'), {
|
|
274
278
|
modelValue: defaultOptions.mode,
|
|
275
279
|
options: storeData.modeList.map(item => {
|
|
276
280
|
return {
|
|
277
281
|
value: item.value,
|
|
278
|
-
label:
|
|
282
|
+
label: getI18n(item.label)
|
|
279
283
|
};
|
|
280
284
|
}),
|
|
281
285
|
'onUpdate:modelValue'(value) {
|
|
282
286
|
defaultOptions.mode = value;
|
|
283
287
|
}
|
|
284
|
-
})])]), (0, _vue.h)('tr', [(0, _vue.h)('td', [
|
|
288
|
+
})])]), (0, _vue.h)('tr', [(0, _vue.h)('td', [getI18n('vxe.export.expColumn')]), (0, _vue.h)('td', [(0, _vue.h)('div', {
|
|
285
289
|
class: 'vxe-export--panel-column'
|
|
286
290
|
}, [(0, _vue.h)('ul', {
|
|
287
291
|
class: 'vxe-export--panel-column-header'
|
|
@@ -290,35 +294,35 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
290
294
|
'is--checked': isAllChecked,
|
|
291
295
|
'is--indeterminate': isAllIndeterminate
|
|
292
296
|
}],
|
|
293
|
-
title:
|
|
297
|
+
title: getI18n('vxe.table.allTitle'),
|
|
294
298
|
onClick: allColumnEvent
|
|
295
299
|
}, [(0, _vue.h)('span', {
|
|
296
|
-
class: ['vxe-checkbox--icon', isAllIndeterminate ?
|
|
300
|
+
class: ['vxe-checkbox--icon', isAllIndeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : isAllChecked ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED]
|
|
297
301
|
}), (0, _vue.h)('span', {
|
|
298
302
|
class: 'vxe-checkbox--label'
|
|
299
|
-
},
|
|
303
|
+
}, getI18n('vxe.export.expCurrentColumn'))])]), (0, _vue.h)('ul', {
|
|
300
304
|
class: 'vxe-export--panel-column-body'
|
|
301
|
-
}, cols)])])]), (0, _vue.h)('tr', [(0, _vue.h)('td',
|
|
305
|
+
}, cols)])])]), (0, _vue.h)('tr', [(0, _vue.h)('td', getI18n('vxe.export.expOpts')), (0, _vue.h)('td', [(0, _vue.h)('div', {
|
|
302
306
|
class: 'vxe-export--panel-option-row'
|
|
303
307
|
}, [(0, _vue.h)((0, _vue.resolveComponent)('vxe-checkbox'), {
|
|
304
308
|
modelValue: defaultOptions.isHeader,
|
|
305
|
-
title:
|
|
306
|
-
content:
|
|
309
|
+
title: getI18n('vxe.export.expHeaderTitle'),
|
|
310
|
+
content: getI18n('vxe.export.expOptHeader'),
|
|
307
311
|
'onUpdate:modelValue'(value) {
|
|
308
312
|
defaultOptions.isHeader = value;
|
|
309
313
|
}
|
|
310
314
|
}), (0, _vue.h)((0, _vue.resolveComponent)('vxe-checkbox'), {
|
|
311
315
|
modelValue: defaultOptions.isFooter,
|
|
312
316
|
disabled: !storeData.hasFooter,
|
|
313
|
-
title:
|
|
314
|
-
content:
|
|
317
|
+
title: getI18n('vxe.export.expFooterTitle'),
|
|
318
|
+
content: getI18n('vxe.export.expOptFooter'),
|
|
315
319
|
'onUpdate:modelValue'(value) {
|
|
316
320
|
defaultOptions.isFooter = value;
|
|
317
321
|
}
|
|
318
322
|
}), (0, _vue.h)((0, _vue.resolveComponent)('vxe-checkbox'), {
|
|
319
323
|
modelValue: defaultOptions.original,
|
|
320
|
-
title:
|
|
321
|
-
content:
|
|
324
|
+
title: getI18n('vxe.export.expOriginalTitle'),
|
|
325
|
+
content: getI18n('vxe.export.expOptOriginal'),
|
|
322
326
|
'onUpdate:modelValue'(value) {
|
|
323
327
|
defaultOptions.original = value;
|
|
324
328
|
}
|
|
@@ -326,45 +330,45 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
326
330
|
class: 'vxe-export--panel-option-row'
|
|
327
331
|
}, [(0, _vue.h)((0, _vue.resolveComponent)('vxe-checkbox'), {
|
|
328
332
|
modelValue: isHeader && hasColgroup && supportMerge ? defaultOptions.isColgroup : false,
|
|
329
|
-
title:
|
|
333
|
+
title: getI18n('vxe.export.expColgroupTitle'),
|
|
330
334
|
disabled: !isHeader || !hasColgroup || !supportMerge,
|
|
331
|
-
content:
|
|
335
|
+
content: getI18n('vxe.export.expOptColgroup'),
|
|
332
336
|
'onUpdate:modelValue'(value) {
|
|
333
337
|
defaultOptions.isColgroup = value;
|
|
334
338
|
}
|
|
335
339
|
}), (0, _vue.h)((0, _vue.resolveComponent)('vxe-checkbox'), {
|
|
336
340
|
modelValue: hasMerge && supportMerge && checkedAll ? defaultOptions.isMerge : false,
|
|
337
|
-
title:
|
|
341
|
+
title: getI18n('vxe.export.expMergeTitle'),
|
|
338
342
|
disabled: !hasMerge || !supportMerge || !checkedAll,
|
|
339
|
-
content:
|
|
343
|
+
content: getI18n('vxe.export.expOptMerge'),
|
|
340
344
|
'onUpdate:modelValue'(value) {
|
|
341
345
|
defaultOptions.isMerge = value;
|
|
342
346
|
}
|
|
343
347
|
}), isPrint ? (0, _vue.createCommentVNode)() : (0, _vue.h)((0, _vue.resolveComponent)('vxe-checkbox'), {
|
|
344
348
|
modelValue: supportStyle ? defaultOptions.useStyle : false,
|
|
345
349
|
disabled: !supportStyle,
|
|
346
|
-
title:
|
|
347
|
-
content:
|
|
350
|
+
title: getI18n('vxe.export.expUseStyleTitle'),
|
|
351
|
+
content: getI18n('vxe.export.expOptUseStyle'),
|
|
348
352
|
'onUpdate:modelValue'(value) {
|
|
349
353
|
defaultOptions.useStyle = value;
|
|
350
354
|
}
|
|
351
355
|
}), (0, _vue.h)((0, _vue.resolveComponent)('vxe-checkbox'), {
|
|
352
356
|
modelValue: hasTree ? defaultOptions.isAllExpand : false,
|
|
353
357
|
disabled: !hasTree,
|
|
354
|
-
title:
|
|
355
|
-
content:
|
|
358
|
+
title: getI18n('vxe.export.expAllExpandTitle'),
|
|
359
|
+
content: getI18n('vxe.export.expOptAllExpand'),
|
|
356
360
|
'onUpdate:modelValue'(value) {
|
|
357
361
|
defaultOptions.isAllExpand = value;
|
|
358
362
|
}
|
|
359
363
|
})])])])]])]), (0, _vue.h)('div', {
|
|
360
364
|
class: 'vxe-export--panel-btns'
|
|
361
365
|
}, [(0, _vue.h)((0, _vue.resolveComponent)('vxe-button'), {
|
|
362
|
-
content:
|
|
366
|
+
content: getI18n('vxe.export.expCancel'),
|
|
363
367
|
onClick: cancelEvent
|
|
364
368
|
}), (0, _vue.h)((0, _vue.resolveComponent)('vxe-button'), {
|
|
365
369
|
ref: xButtonConfirm,
|
|
366
370
|
status: 'primary',
|
|
367
|
-
content:
|
|
371
|
+
content: getI18n(isPrint ? 'vxe.export.expPrint' : 'vxe.export.expConfirm'),
|
|
368
372
|
onClick: confirmEvent
|
|
369
373
|
})])]);
|
|
370
374
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_vxePcUi=require("vxe-pc-ui"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableExportPanel",props:{defaultOptions:Object,storeData:Object},setup(
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_vxePcUi=require("vxe-pc-ui"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,getIcon}=_vxePcUi.VxeUI;var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableExportPanel",props:{defaultOptions:Object,storeData:Object},setup(c){const l=(0,_vue.inject)("$xeTable",{}),{computeExportOpts:o,computePrintOpts:a}=l.getComputeMaps(),h=(0,_vue.reactive)({isAll:!1,isIndeterminate:!1,loading:!1}),_=(0,_vue.ref)(),m=(0,_vue.ref)(),g=(0,_vue.ref)(),C=(0,_vue.computed)(()=>{var e=c["storeData"];return e.columns.every(e=>e.checked)}),b=(0,_vue.computed)(()=>{var e=c["defaultOptions"];return-1<["html","xml","xlsx","pdf"].indexOf(e.type)}),I=(0,_vue.computed)(()=>{var{storeData:e,defaultOptions:t}=c;return!t.original&&"current"===t.mode&&(e.isPrint||-1<["html","xlsx"].indexOf(t.type))}),f=(0,_vue.computed)(()=>{var e=c["defaultOptions"];return!e.original&&-1<["xlsx"].indexOf(e.type)}),k=t=>{var e=c["storeData"],e=_xeUtils.default.findTree(e.columns,e=>e===t);e&&e.parent&&(e=e["parent"],e.children)&&e.children.length&&(e.checked=e.children.every(e=>e.checked),e.halfChecked=!e.checked&&e.children.some(e=>e.checked||e.halfChecked),k(e))},O=()=>{var e=c["storeData"],e=e.columns;h.isAll=e.every(e=>e.disabled||e.checked),h.isIndeterminate=!h.isAll&&e.some(e=>!e.disabled&&(e.checked||e.halfChecked))},E=()=>{var e=c["storeData"];const t=!h.isAll;_xeUtils.default.eachTree(e.columns,e=>{e.disabled||(e.checked=t,e.halfChecked=!1)}),h.isAll=t,O()},T=()=>{(0,_vue.nextTick)(()=>{var e=m.value,t=g.value,l=_.value,e=e||t||l;e&&e.focus()}),O()},n=()=>{var{storeData:e,defaultOptions:t}=c,{hasMerge:e,columns:l}=e,o=C.value,a=I.value,l=_xeUtils.default.searchTree(l,e=>e.checked,{children:"children",mapChildren:"childNodes",original:!0});return Object.assign({},t,{columns:l,isMerge:!!(e&&a&&o)&&t.isMerge})},t=()=>{var e=c["storeData"],t=a.value;e.visible=!1,l.print(Object.assign({},t,n()))},r=()=>{const e=c["storeData"];var t=o.value;h.loading=!0,l.exportData(Object.assign({},t,n())).then(()=>{h.loading=!1,e.visible=!1}).catch(()=>{h.loading=!1})},V=()=>{var e=c["storeData"];e.visible=!1},U=()=>{var e=c["storeData"];(e.isPrint?t:r)()};return()=>{const{defaultOptions:t,storeData:l}=c,{isAll:e,isIndeterminate:o}=h,{hasTree:a,hasMerge:n,isPrint:r,hasColgroup:u}=l,v=t["isHeader"],i=[],s=C.value,p=b.value,d=I.value,x=f.value;return _xeUtils.default.eachTree(l.columns,l=>{var e=(0,_utils.formatText)(l.getTitle(),1),t=l.children&&l.children.length,o=l.checked,a=l.halfChecked;i.push((0,_vue.h)("li",{class:["vxe-export--panel-column-option","level--"+l.level,{"is--group":t,"is--checked":o,"is--indeterminate":a,"is--disabled":l.disabled}],title:e,onClick:()=>{if(!l.disabled){var e=l;const t=!e.checked;_xeUtils.default.eachTree([e],e=>{e.checked=t,e.halfChecked=!1}),k(e),O()}}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",a?getIcon().TABLE_CHECKBOX_INDETERMINATE:o?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),(0,_vue.h)("span",{class:"vxe-checkbox--label"},e)]))}),(0,_vue.h)((0,_vue.resolveComponent)("vxe-modal"),{modelValue:l.visible,title:getI18n(r?"vxe.export.printTitle":"vxe.export.expTitle"),className:"vxe-table-export-popup-wrapper",width:660,mask:!0,lockView:!0,showFooter:!1,escClosable:!0,maskClosable:!0,loading:h.loading,"onUpdate:modelValue"(e){l.visible=e},onShow:T},{default:()=>(0,_vue.h)("div",{class:"vxe-export--panel"},[(0,_vue.h)("table",{cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("tbody",[[r?(0,_vue.createCommentVNode)():(0,_vue.h)("tr",[(0,_vue.h)("td",getI18n("vxe.export.expName")),(0,_vue.h)("td",[(0,_vue.h)((0,_vue.resolveComponent)("vxe-input"),{ref:m,modelValue:t.filename,type:"text",clearable:!0,placeholder:getI18n("vxe.export.expNamePlaceholder"),"onUpdate:modelValue"(e){t.filename=e}})])]),r?(0,_vue.createCommentVNode)():(0,_vue.h)("tr",[(0,_vue.h)("td",getI18n("vxe.export.expType")),(0,_vue.h)("td",[(0,_vue.h)((0,_vue.resolveComponent)("vxe-select"),{modelValue:t.type,options:l.typeList.map(e=>({value:e.value,label:getI18n(e.label)})),"onUpdate:modelValue"(e){t.type=e}})])]),r||p?(0,_vue.h)("tr",[(0,_vue.h)("td",getI18n("vxe.export.expSheetName")),(0,_vue.h)("td",[(0,_vue.h)((0,_vue.resolveComponent)("vxe-input"),{ref:g,modelValue:t.sheetName,type:"text",clearable:!0,placeholder:getI18n("vxe.export.expSheetNamePlaceholder"),"onUpdate:modelValue"(e){t.sheetName=e}})])]):(0,_vue.createCommentVNode)(),(0,_vue.h)("tr",[(0,_vue.h)("td",getI18n("vxe.export.expMode")),(0,_vue.h)("td",[(0,_vue.h)((0,_vue.resolveComponent)("vxe-select"),{modelValue:t.mode,options:l.modeList.map(e=>({value:e.value,label:getI18n(e.label)})),"onUpdate:modelValue"(e){t.mode=e}})])]),(0,_vue.h)("tr",[(0,_vue.h)("td",[getI18n("vxe.export.expColumn")]),(0,_vue.h)("td",[(0,_vue.h)("div",{class:"vxe-export--panel-column"},[(0,_vue.h)("ul",{class:"vxe-export--panel-column-header"},[(0,_vue.h)("li",{class:["vxe-export--panel-column-option",{"is--checked":e,"is--indeterminate":o}],title:getI18n("vxe.table.allTitle"),onClick:E},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",o?getIcon().TABLE_CHECKBOX_INDETERMINATE:e?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),(0,_vue.h)("span",{class:"vxe-checkbox--label"},getI18n("vxe.export.expCurrentColumn"))])]),(0,_vue.h)("ul",{class:"vxe-export--panel-column-body"},i)])])]),(0,_vue.h)("tr",[(0,_vue.h)("td",getI18n("vxe.export.expOpts")),(0,_vue.h)("td",[(0,_vue.h)("div",{class:"vxe-export--panel-option-row"},[(0,_vue.h)((0,_vue.resolveComponent)("vxe-checkbox"),{modelValue:t.isHeader,title:getI18n("vxe.export.expHeaderTitle"),content:getI18n("vxe.export.expOptHeader"),"onUpdate:modelValue"(e){t.isHeader=e}}),(0,_vue.h)((0,_vue.resolveComponent)("vxe-checkbox"),{modelValue:t.isFooter,disabled:!l.hasFooter,title:getI18n("vxe.export.expFooterTitle"),content:getI18n("vxe.export.expOptFooter"),"onUpdate:modelValue"(e){t.isFooter=e}}),(0,_vue.h)((0,_vue.resolveComponent)("vxe-checkbox"),{modelValue:t.original,title:getI18n("vxe.export.expOriginalTitle"),content:getI18n("vxe.export.expOptOriginal"),"onUpdate:modelValue"(e){t.original=e}})]),(0,_vue.h)("div",{class:"vxe-export--panel-option-row"},[(0,_vue.h)((0,_vue.resolveComponent)("vxe-checkbox"),{modelValue:!!(v&&u&&d)&&t.isColgroup,title:getI18n("vxe.export.expColgroupTitle"),disabled:!v||!u||!d,content:getI18n("vxe.export.expOptColgroup"),"onUpdate:modelValue"(e){t.isColgroup=e}}),(0,_vue.h)((0,_vue.resolveComponent)("vxe-checkbox"),{modelValue:!!(n&&d&&s)&&t.isMerge,title:getI18n("vxe.export.expMergeTitle"),disabled:!n||!d||!s,content:getI18n("vxe.export.expOptMerge"),"onUpdate:modelValue"(e){t.isMerge=e}}),r?(0,_vue.createCommentVNode)():(0,_vue.h)((0,_vue.resolveComponent)("vxe-checkbox"),{modelValue:!!x&&t.useStyle,disabled:!x,title:getI18n("vxe.export.expUseStyleTitle"),content:getI18n("vxe.export.expOptUseStyle"),"onUpdate:modelValue"(e){t.useStyle=e}}),(0,_vue.h)((0,_vue.resolveComponent)("vxe-checkbox"),{modelValue:!!a&&t.isAllExpand,disabled:!a,title:getI18n("vxe.export.expAllExpandTitle"),content:getI18n("vxe.export.expOptAllExpand"),"onUpdate:modelValue"(e){t.isAllExpand=e}})])])])]])]),(0,_vue.h)("div",{class:"vxe-export--panel-btns"},[(0,_vue.h)((0,_vue.resolveComponent)("vxe-button"),{content:getI18n("vxe.export.expCancel"),onClick:V}),(0,_vue.h)((0,_vue.resolveComponent)("vxe-button"),{ref:_,status:"primary",content:getI18n(r?"vxe.export.expPrint":"vxe.export.expConfirm"),onClick:U})])])})}}});
|
|
@@ -7,6 +7,12 @@ var _util = require("../../src/util");
|
|
|
7
7
|
var _utils = require("../../../ui/src/utils");
|
|
8
8
|
var _util2 = require("./util");
|
|
9
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
+
const {
|
|
11
|
+
getI18n,
|
|
12
|
+
hooks,
|
|
13
|
+
renderer,
|
|
14
|
+
log
|
|
15
|
+
} = _vxePcUi.VxeUI;
|
|
10
16
|
let htmlCellElem;
|
|
11
17
|
const csvBOM = '\ufeff';
|
|
12
18
|
const enterSymbol = '\r\n';
|
|
@@ -267,7 +273,7 @@ function checkImportData(columns, fields) {
|
|
|
267
273
|
return fields.some(field => tableFields.indexOf(field) > -1);
|
|
268
274
|
}
|
|
269
275
|
const tableExportMethodKeys = ['exportData', 'importByFile', 'importData', 'saveFile', 'readFile', 'print', 'openImport', 'openExport', 'openPrint'];
|
|
270
|
-
|
|
276
|
+
hooks.add('tableExportModule', {
|
|
271
277
|
setupTable($xeTable) {
|
|
272
278
|
const {
|
|
273
279
|
props,
|
|
@@ -354,7 +360,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
354
360
|
const renderOpts = column.editRender || column.cellRender;
|
|
355
361
|
let bodyExportMethod = column.exportMethod;
|
|
356
362
|
if (!bodyExportMethod && renderOpts && renderOpts.name) {
|
|
357
|
-
const compConf =
|
|
363
|
+
const compConf = renderer.get(renderOpts.name);
|
|
358
364
|
if (compConf) {
|
|
359
365
|
bodyExportMethod = compConf.exportMethod;
|
|
360
366
|
}
|
|
@@ -424,7 +430,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
424
430
|
const renderOpts = column.editRender || column.cellRender;
|
|
425
431
|
let exportLabelMethod = column.exportMethod;
|
|
426
432
|
if (!exportLabelMethod && renderOpts && renderOpts.name) {
|
|
427
|
-
const compConf =
|
|
433
|
+
const compConf = renderer.get(renderOpts.name);
|
|
428
434
|
if (compConf) {
|
|
429
435
|
exportLabelMethod = compConf.exportMethod;
|
|
430
436
|
}
|
|
@@ -496,7 +502,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
496
502
|
const renderOpts = column.editRender || column.cellRender;
|
|
497
503
|
let footLabelMethod = column.footerExportMethod;
|
|
498
504
|
if (!footLabelMethod && renderOpts && renderOpts.name) {
|
|
499
|
-
const compConf =
|
|
505
|
+
const compConf = renderer.get(renderOpts.name);
|
|
500
506
|
if (compConf) {
|
|
501
507
|
footLabelMethod = compConf.footerExportMethod;
|
|
502
508
|
}
|
|
@@ -801,7 +807,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
801
807
|
if (opts.message !== false) {
|
|
802
808
|
if (_vxePcUi.VxeUI.modal) {
|
|
803
809
|
_vxePcUi.VxeUI.modal.message({
|
|
804
|
-
content:
|
|
810
|
+
content: getI18n('vxe.table.expSuccess'),
|
|
805
811
|
status: 'success'
|
|
806
812
|
});
|
|
807
813
|
}
|
|
@@ -909,7 +915,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
909
915
|
if (opts.message !== false) {
|
|
910
916
|
if (_vxePcUi.VxeUI.modal) {
|
|
911
917
|
_vxePcUi.VxeUI.modal.message({
|
|
912
|
-
content:
|
|
918
|
+
content: getI18n('vxe.table.impSuccess', [rows.length]),
|
|
913
919
|
status: 'success'
|
|
914
920
|
});
|
|
915
921
|
}
|
|
@@ -925,7 +931,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
925
931
|
} else if (opts.message !== false) {
|
|
926
932
|
if (_vxePcUi.VxeUI.modal) {
|
|
927
933
|
_vxePcUi.VxeUI.modal.message({
|
|
928
|
-
content:
|
|
934
|
+
content: getI18n('vxe.error.impFields'),
|
|
929
935
|
status: 'error'
|
|
930
936
|
});
|
|
931
937
|
}
|
|
@@ -951,7 +957,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
951
957
|
if (opts.message !== false) {
|
|
952
958
|
if (_vxePcUi.VxeUI.modal) {
|
|
953
959
|
_vxePcUi.VxeUI.modal.message({
|
|
954
|
-
content:
|
|
960
|
+
content: getI18n('vxe.error.notType', [type]),
|
|
955
961
|
status: 'error'
|
|
956
962
|
});
|
|
957
963
|
}
|
|
@@ -1012,7 +1018,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
1012
1018
|
}, () => {
|
|
1013
1019
|
const reader = new FileReader();
|
|
1014
1020
|
reader.onerror = () => {
|
|
1015
|
-
|
|
1021
|
+
log.err('vxe.error.notType', [type]);
|
|
1016
1022
|
_importReject({
|
|
1017
1023
|
status: false
|
|
1018
1024
|
});
|
|
@@ -1026,7 +1032,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
1026
1032
|
} else {
|
|
1027
1033
|
// 不支持的浏览器
|
|
1028
1034
|
if (process.env.NODE_ENV === 'development') {
|
|
1029
|
-
|
|
1035
|
+
log.err('vxe.error.notExp');
|
|
1030
1036
|
}
|
|
1031
1037
|
_importResolve({
|
|
1032
1038
|
status: true
|
|
@@ -1279,7 +1285,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
1279
1285
|
opts.columns = cols;
|
|
1280
1286
|
opts.colgroups = convertToRows(groups);
|
|
1281
1287
|
if (!opts.filename) {
|
|
1282
|
-
opts.filename =
|
|
1288
|
+
opts.filename = getI18n(opts.original ? 'vxe.table.expOriginFilename' : 'vxe.table.expFilename', [_xeUtils.default.toDateString(Date.now(), 'yyyyMMddHHmmss')]);
|
|
1283
1289
|
}
|
|
1284
1290
|
if (!opts.sheetName) {
|
|
1285
1291
|
opts.sheetName = document.title;
|
|
@@ -1287,7 +1293,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
1287
1293
|
// 检查类型,如果为自定义导出,则不需要校验类型
|
|
1288
1294
|
if (!opts.exportMethod && !_xeUtils.default.includes(_xeUtils.default.keys(exportOpts._typeMaps), type)) {
|
|
1289
1295
|
if (process.env.NODE_ENV === 'development') {
|
|
1290
|
-
|
|
1296
|
+
log.err('vxe.error.notType', [type]);
|
|
1291
1297
|
}
|
|
1292
1298
|
const params = {
|
|
1293
1299
|
status: false
|
|
@@ -1317,7 +1323,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
1317
1323
|
} else if (mode === 'all') {
|
|
1318
1324
|
if (process.env.NODE_ENV === 'development') {
|
|
1319
1325
|
if (!$xeGrid) {
|
|
1320
|
-
|
|
1326
|
+
log.warn('vxe.error.errProp', ['all', 'mode=current,selected']);
|
|
1321
1327
|
}
|
|
1322
1328
|
}
|
|
1323
1329
|
if ($xeGrid && !opts.remote) {
|
|
@@ -1337,7 +1343,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
1337
1343
|
const ajaxMethods = ajax.queryAll;
|
|
1338
1344
|
if (process.env.NODE_ENV === 'development') {
|
|
1339
1345
|
if (!ajaxMethods) {
|
|
1340
|
-
|
|
1346
|
+
log.warn('vxe.error.notFunc', ['proxy-config.ajax.queryAll']);
|
|
1341
1347
|
}
|
|
1342
1348
|
}
|
|
1343
1349
|
if (ajaxMethods) {
|
|
@@ -1476,7 +1482,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
1476
1482
|
if (defOpts.message) {
|
|
1477
1483
|
if (_vxePcUi.VxeUI.modal) {
|
|
1478
1484
|
_vxePcUi.VxeUI.modal.message({
|
|
1479
|
-
content:
|
|
1485
|
+
content: getI18n('vxe.error.treeNotImp'),
|
|
1480
1486
|
status: 'error'
|
|
1481
1487
|
});
|
|
1482
1488
|
}
|
|
@@ -1484,7 +1490,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
1484
1490
|
return;
|
|
1485
1491
|
}
|
|
1486
1492
|
if (!importConfig) {
|
|
1487
|
-
|
|
1493
|
+
log.err('vxe.error.reqProp', ['import-config']);
|
|
1488
1494
|
}
|
|
1489
1495
|
// 处理类型
|
|
1490
1496
|
const typeList = types.map(value => {
|
|
@@ -1514,7 +1520,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
1514
1520
|
const exportOpts = computeExportOpts.value;
|
|
1515
1521
|
if (process.env.NODE_ENV === 'development') {
|
|
1516
1522
|
if (!props.exportConfig) {
|
|
1517
|
-
|
|
1523
|
+
log.err('vxe.error.reqProp', ['export-config']);
|
|
1518
1524
|
}
|
|
1519
1525
|
}
|
|
1520
1526
|
handleExportAndPrint(Object.assign({}, exportOpts, options));
|
|
@@ -1523,7 +1529,7 @@ _vxePcUi.hooks.add('tableExportModule', {
|
|
|
1523
1529
|
const printOpts = computePrintOpts.value;
|
|
1524
1530
|
if (process.env.NODE_ENV === 'development') {
|
|
1525
1531
|
if (!props.printConfig) {
|
|
1526
|
-
|
|
1532
|
+
log.err('vxe.error.reqProp', ['print-config']);
|
|
1527
1533
|
}
|
|
1528
1534
|
}
|
|
1529
1535
|
handleExportAndPrint(Object.assign({}, printOpts, options), true);
|