vxe-table 3.14.0-beta.0 → 3.14.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/grid/src/grid.js +60 -75
- package/es/style.css +1 -1
- package/es/table/module/custom/panel.js +25 -27
- package/es/table/module/edit/mixin.js +1 -1
- package/es/table/module/export/export-panel.js +22 -24
- package/es/table/module/export/import-panel.js +14 -16
- package/es/table/module/export/mixin.js +15 -31
- package/es/table/module/keyboard/mixin.js +3 -2
- package/es/table/module/validator/mixin.js +1 -3
- package/es/table/render/index.js +2 -4
- package/es/table/src/body.js +2 -2
- package/es/table/src/column.js +2 -2
- package/es/table/src/columnInfo.js +30 -32
- package/es/table/src/group.js +2 -2
- package/es/table/src/methods.js +128 -97
- package/es/table/src/table.js +17 -19
- package/es/table/src/util.js +5 -7
- package/es/toolbar/src/toolbar.js +20 -28
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/grid/src/grid.js +61 -88
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +372 -380
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/custom/panel.js +31 -33
- package/lib/table/module/custom/panel.min.js +1 -1
- package/lib/table/module/edit/mixin.js +1 -1
- package/lib/table/module/edit/mixin.min.js +1 -1
- package/lib/table/module/export/export-panel.js +22 -24
- package/lib/table/module/export/export-panel.min.js +1 -1
- package/lib/table/module/export/import-panel.js +14 -16
- package/lib/table/module/export/import-panel.min.js +1 -1
- package/lib/table/module/export/mixin.js +15 -31
- package/lib/table/module/export/mixin.min.js +1 -1
- package/lib/table/module/keyboard/mixin.js +3 -2
- package/lib/table/module/keyboard/mixin.min.js +1 -1
- package/lib/table/module/validator/mixin.js +1 -3
- package/lib/table/module/validator/mixin.min.js +1 -1
- package/lib/table/render/index.js +2 -4
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/body.js +2 -1
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/column.js +3 -2
- package/lib/table/src/columnInfo.js +32 -34
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/group.js +3 -2
- package/lib/table/src/methods.js +138 -94
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +14 -16
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +4 -6
- package/lib/table/src/util.min.js +1 -1
- package/lib/toolbar/src/toolbar.js +21 -28
- package/lib/toolbar/src/toolbar.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/grid/src/grid.ts +62 -75
- package/packages/table/module/custom/panel.ts +25 -27
- package/packages/table/module/edit/mixin.ts +1 -1
- package/packages/table/module/export/export-panel.ts +22 -24
- package/packages/table/module/export/import-panel.ts +14 -16
- package/packages/table/module/export/mixin.ts +15 -31
- package/packages/table/module/keyboard/mixin.ts +6 -2
- package/packages/table/module/validator/mixin.ts +1 -3
- package/packages/table/render/index.ts +2 -4
- package/packages/table/src/body.ts +2 -2
- package/packages/table/src/column.ts +2 -2
- package/packages/table/src/columnInfo.ts +30 -32
- package/packages/table/src/group.ts +2 -2
- package/packages/table/src/methods.ts +140 -104
- package/packages/table/src/table.ts +14 -16
- package/packages/table/src/util.ts +4 -6
- package/packages/toolbar/src/toolbar.ts +20 -28
- /package/es/{iconfont.1740732119954.ttf → iconfont.1741079977180.ttf} +0 -0
- /package/es/{iconfont.1740732119954.woff → iconfont.1741079977180.woff} +0 -0
- /package/es/{iconfont.1740732119954.woff2 → iconfont.1741079977180.woff2} +0 -0
- /package/lib/{iconfont.1740732119954.ttf → iconfont.1741079977180.ttf} +0 -0
- /package/lib/{iconfont.1740732119954.woff → iconfont.1741079977180.woff} +0 -0
- /package/lib/{iconfont.1740732119954.woff2 → iconfont.1741079977180.woff2} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,formats}=_ui.VxeUI;class ColumnInfo{constructor(e,r,{renderHeader:t,renderCell:o,renderFooter:l,renderData:i}={}){var d
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,formats}=_ui.VxeUI;class ColumnInfo{constructor(e,r,{renderHeader:t,renderCell:o,renderFooter:l,renderData:i}={}){var d=e.$xegrid,n=d?d.proxyOpts:null,s=r.formatter,a=!_xeUtils.default.isBoolean(r.visible)||r.visible,f=e,u=["seq","checkbox","radio","expand","html"];r.type&&-1===u.indexOf(r.type)&&(0,_log.warnLog)("vxe.error.errProp",["type="+r.type,u.join(", ")]),(_xeUtils.default.isBoolean(r.cellRender)||r.cellRender&&!_xeUtils.default.isObject(r.cellRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.cell-render="+r.cellRender,"column.cell-render={}"]),(_xeUtils.default.isBoolean(r.editRender)||r.editRender&&!_xeUtils.default.isObject(r.editRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.edit-render="+r.editRender,"column.edit-render={}"]),"expand"===r.type&&(u=f.treeConfig,u)&&(e.treeOpts.showLine||e.treeOpts.line)&&(0,_log.errLog)("vxe.error.errConflicts",["tree-config.line","column.type=expand"]),r.remoteSort&&(0,_log.warnLog)("vxe.error.delProp",["column.remote-sort","sort-config.remote"]),r.sortMethod&&(0,_log.warnLog)("vxe.error.delProp",["column.sort-method","sort-config.sortMethod"]),s&&(_xeUtils.default.isString(s)?(f=formats.get(s)||_xeUtils.default[s])&&_xeUtils.default.isFunction(f.tableCellFormatMethod||f.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[s]):!_xeUtils.default.isArray(s)||(u=formats.get(s[0])||_xeUtils.default[s[0]])&&_xeUtils.default.isFunction(u.tableCellFormatMethod||u.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[s[0]])),Object.assign(this,{type:r.type,property:r.field,field:r.field,title:r.title,width:r.width,minWidth:r.minWidth,maxWidth:r.maxWidth,resizable:r.resizable,fixed:r.fixed,align:r.align,headerAlign:r.headerAlign,footerAlign:r.footerAlign,showOverflow:r.showOverflow,showHeaderOverflow:r.showHeaderOverflow,showFooterOverflow:r.showFooterOverflow,className:r.className,headerClassName:r.headerClassName,footerClassName:r.footerClassName,formatter:s,footerFormatter:r.footerFormatter,padding:r.padding,verticalAlign:r.verticalAlign,sortable:r.sortable,sortBy:r.sortBy,sortType:r.sortType,sortMethod:r.sortMethod,remoteSort:r.remoteSort,filters:(0,_util.toFilters)(r.filters),filterMultiple:!_xeUtils.default.isBoolean(r.filterMultiple)||r.filterMultiple,filterMethod:r.filterMethod,filterResetMethod:r.filterResetMethod,filterRecoverMethod:r.filterRecoverMethod,filterRender:r.filterRender,treeNode:r.treeNode,dragSort:r.dragSort,rowResize:r.rowResize,cellType:r.cellType,cellRender:r.cellRender,editRender:r.editRender,contentRender:r.contentRender,headerExportMethod:r.headerExportMethod,exportMethod:r.exportMethod,footerExportMethod:r.footerExportMethod,titleHelp:r.titleHelp,titlePrefix:r.titlePrefix,titleSuffix:r.titleSuffix,params:r.params,id:r.colId||_xeUtils.default.uniqueId("col_"),parentId:null,visible:a,halfVisible:!1,defaultVisible:a,defaultFixed:r.fixed,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,sortTime:0,sortNumber:0,renderSortNumber:0,renderFixed:"",renderVisible:!1,renderWidth:0,renderHeight:0,renderResizeWidth:0,renderAutoWidth:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:t||r.renderHeader,renderCell:o||r.renderCell,renderFooter:l||r.renderFooter,renderData:i,slots:r.slots}),n&&n.beforeColumn&&n.beforeColumn({$grid:d,column:this})}getTitle(){return(0,_utils.getFuncText)(this.title||("seq"===this.type?getI18n("vxe.table.seqTitle"):""))}getKey(){var e=this.type;return this.field||(e?"type="+e:null)}update(e,r){"filters"!==e&&("field"===e&&(this.property=r),this[e]=r)}}exports.ColumnInfo=ColumnInfo;
|
package/lib/table/src/group.js
CHANGED
|
@@ -9,7 +9,7 @@ var _comp = require("../../ui/src/comp");
|
|
|
9
9
|
var _util = require("./util");
|
|
10
10
|
var _column = require("./column");
|
|
11
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
-
var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
12
|
+
var _default = exports.default = /* define-vxe-component start */(0, _comp.defineVxeComponent)({
|
|
13
13
|
name: 'VxeColgroup',
|
|
14
14
|
props: _column.columnProps,
|
|
15
15
|
provide() {
|
|
@@ -48,4 +48,5 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
48
48
|
return h('div', this.$slots.default);
|
|
49
49
|
},
|
|
50
50
|
methods: _cell.default
|
|
51
|
-
});
|
|
51
|
+
});
|
|
52
|
+
/* define-vxe-component end */
|
package/lib/table/src/methods.js
CHANGED
|
@@ -351,14 +351,12 @@ function cacheColumnMap($xeTable) {
|
|
|
351
351
|
if (expandColumn && expandOpts.mode !== 'fixed' && mouseOpts.area) {
|
|
352
352
|
(0, _log.errLog)('vxe.error.errConflicts', ['mouse-config.area', 'column.type=expand']);
|
|
353
353
|
}
|
|
354
|
-
if (
|
|
355
|
-
if (
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
(0, _log.errLog)('vxe.error.reqProp', ['row-config.useKey & column.type=html']);
|
|
361
|
-
}
|
|
354
|
+
if (htmlColumn) {
|
|
355
|
+
if (!columnOpts.useKey) {
|
|
356
|
+
(0, _log.errLog)('vxe.error.reqProp', ['column-config.useKey & column.type=html']);
|
|
357
|
+
}
|
|
358
|
+
if (!rowOpts.useKey) {
|
|
359
|
+
(0, _log.errLog)('vxe.error.reqProp', ['row-config.useKey & column.type=html']);
|
|
362
360
|
}
|
|
363
361
|
}
|
|
364
362
|
reactData.isGroup = isGroup;
|
|
@@ -2767,28 +2765,26 @@ const Methods = {
|
|
|
2767
2765
|
if (treeConfig) {
|
|
2768
2766
|
// 树结构自动转换
|
|
2769
2767
|
if (treeOpts.transform) {
|
|
2770
|
-
if (
|
|
2771
|
-
|
|
2772
|
-
|
|
2773
|
-
|
|
2774
|
-
|
|
2775
|
-
|
|
2776
|
-
|
|
2777
|
-
|
|
2778
|
-
|
|
2779
|
-
|
|
2780
|
-
|
|
2781
|
-
(0, _log.errLog)('vxe.error.reqProp', ['tree-config.mapChildrenField']);
|
|
2782
|
-
}
|
|
2783
|
-
if (childrenField === treeOpts.mapChildrenField) {
|
|
2784
|
-
(0, _log.errLog)('vxe.error.errConflicts', ['tree-config.childrenField', 'tree-config.mapChildrenField']);
|
|
2785
|
-
}
|
|
2786
|
-
// fullData.forEach(row => {
|
|
2787
|
-
// if (row[childrenField] && row[childrenField].length) {
|
|
2788
|
-
// warnLog('vxe.error.errConflicts', ['tree-config.transform', `row.${childrenField}`])
|
|
2789
|
-
// }
|
|
2790
|
-
// })
|
|
2768
|
+
if (!treeOpts.rowField) {
|
|
2769
|
+
(0, _log.errLog)('vxe.error.reqProp', ['table.tree-config.rowField']);
|
|
2770
|
+
}
|
|
2771
|
+
if (!treeOpts.parentField) {
|
|
2772
|
+
(0, _log.errLog)('vxe.error.reqProp', ['table.tree-config.parentField']);
|
|
2773
|
+
}
|
|
2774
|
+
if (!childrenField) {
|
|
2775
|
+
(0, _log.errLog)('vxe.error.reqProp', ['tree-config.childrenField']);
|
|
2776
|
+
}
|
|
2777
|
+
if (!treeOpts.mapChildrenField) {
|
|
2778
|
+
(0, _log.errLog)('vxe.error.reqProp', ['tree-config.mapChildrenField']);
|
|
2791
2779
|
}
|
|
2780
|
+
if (childrenField === treeOpts.mapChildrenField) {
|
|
2781
|
+
(0, _log.errLog)('vxe.error.errConflicts', ['tree-config.childrenField', 'tree-config.mapChildrenField']);
|
|
2782
|
+
}
|
|
2783
|
+
// fullData.forEach(row => {
|
|
2784
|
+
// if (row[childrenField] && row[childrenField].length) {
|
|
2785
|
+
// warnLog('vxe.error.errConflicts', ['tree-config.transform', `row.${childrenField}`])
|
|
2786
|
+
// }
|
|
2787
|
+
// })
|
|
2792
2788
|
treeData = _xeUtils.default.toArrayTree(fullData, {
|
|
2793
2789
|
key: treeOpts.rowField,
|
|
2794
2790
|
parentKey: treeOpts.parentField,
|
|
@@ -2852,16 +2848,14 @@ const Methods = {
|
|
|
2852
2848
|
// }
|
|
2853
2849
|
// }
|
|
2854
2850
|
// }
|
|
2855
|
-
if (
|
|
2856
|
-
|
|
2857
|
-
|
|
2858
|
-
|
|
2859
|
-
|
|
2860
|
-
|
|
2861
|
-
|
|
2862
|
-
|
|
2863
|
-
(0, _log.warnLog)('vxe.error.scrollErrProp', ['table.span-method']);
|
|
2864
|
-
}
|
|
2851
|
+
if (!(this.height || this.maxHeight)) {
|
|
2852
|
+
(0, _log.errLog)('vxe.error.reqProp', ['table.height | table.max-height | table.scroll-y={enabled: false}']);
|
|
2853
|
+
}
|
|
2854
|
+
// if (!this.showOverflow) {
|
|
2855
|
+
// warnLog('vxe.error.reqProp', ['table.show-overflow'])
|
|
2856
|
+
// }
|
|
2857
|
+
if (this.spanMethod) {
|
|
2858
|
+
(0, _log.warnLog)('vxe.error.scrollErrProp', ['table.span-method']);
|
|
2865
2859
|
}
|
|
2866
2860
|
}
|
|
2867
2861
|
handleReserveStatus($xeTable);
|
|
@@ -3005,22 +2999,26 @@ const Methods = {
|
|
|
3005
2999
|
cacheRowMap() {
|
|
3006
3000
|
const $xeTable = this;
|
|
3007
3001
|
const props = $xeTable;
|
|
3002
|
+
const reactData = $xeTable;
|
|
3008
3003
|
const internalData = $xeTable;
|
|
3009
3004
|
const {
|
|
3010
3005
|
treeConfig
|
|
3011
3006
|
} = props;
|
|
3012
|
-
const
|
|
3007
|
+
const {
|
|
3008
|
+
treeExpandedMaps
|
|
3009
|
+
} = reactData;
|
|
3013
3010
|
const {
|
|
3014
3011
|
fullAllDataRowIdData,
|
|
3015
3012
|
tableFullData,
|
|
3016
3013
|
tableFullTreeData
|
|
3017
3014
|
} = internalData;
|
|
3015
|
+
const treeOpts = $xeTable.computeTreeOpts;
|
|
3018
3016
|
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
3019
3017
|
const hasChildField = treeOpts.hasChild || treeOpts.hasChildField;
|
|
3020
3018
|
const rowkey = (0, _util.getRowkey)($xeTable);
|
|
3021
|
-
const
|
|
3022
|
-
const fullAllDataRowIdMaps = {};
|
|
3019
|
+
const fullAllDataRowIdMaps = Object.assign({}, fullAllDataRowIdData); // 存在已删除数据
|
|
3023
3020
|
const fullDataRowIdMaps = {};
|
|
3021
|
+
const treeTempExpandedMaps = Object.assign({}, treeExpandedMaps);
|
|
3024
3022
|
const handleRow = (row, index, items, path, parentRow, nodes) => {
|
|
3025
3023
|
let rowid = (0, _util.getRowid)($xeTable, row);
|
|
3026
3024
|
const seq = treeConfig && path ? (0, _util.toTreePathSeq)(path) : index + 1;
|
|
@@ -3029,8 +3027,16 @@ const Methods = {
|
|
|
3029
3027
|
rowid = (0, _util.getRowUniqueId)();
|
|
3030
3028
|
_xeUtils.default.set(row, rowkey, rowid);
|
|
3031
3029
|
}
|
|
3032
|
-
if (
|
|
3033
|
-
|
|
3030
|
+
if (treeConfig && treeOpts.lazy) {
|
|
3031
|
+
const treeExpRest = treeExpandedMaps[rowid];
|
|
3032
|
+
if (row[hasChildField] && _xeUtils.default.isUndefined(row[childrenField])) {
|
|
3033
|
+
row[childrenField] = null;
|
|
3034
|
+
}
|
|
3035
|
+
if (treeExpRest) {
|
|
3036
|
+
if (!row[childrenField] || !row[childrenField].length) {
|
|
3037
|
+
delete treeTempExpandedMaps[rowid];
|
|
3038
|
+
}
|
|
3039
|
+
}
|
|
3034
3040
|
}
|
|
3035
3041
|
let rowRest = fullAllDataRowIdData[rowid];
|
|
3036
3042
|
if (!rowRest) {
|
|
@@ -3051,6 +3057,8 @@ const Methods = {
|
|
|
3051
3057
|
expandHeight: 0
|
|
3052
3058
|
};
|
|
3053
3059
|
}
|
|
3060
|
+
rowRest.treeLoaded = false;
|
|
3061
|
+
rowRest.expandLoaded = false;
|
|
3054
3062
|
rowRest.row = row;
|
|
3055
3063
|
rowRest.items = items;
|
|
3056
3064
|
rowRest.parent = parentRow;
|
|
@@ -3059,8 +3067,6 @@ const Methods = {
|
|
|
3059
3067
|
fullDataRowIdMaps[rowid] = rowRest;
|
|
3060
3068
|
fullAllDataRowIdMaps[rowid] = rowRest;
|
|
3061
3069
|
};
|
|
3062
|
-
internalData.fullDataRowIdData = fullDataRowIdMaps;
|
|
3063
|
-
internalData.fullAllDataRowIdData = fullAllDataRowIdMaps;
|
|
3064
3070
|
if (treeConfig) {
|
|
3065
3071
|
_xeUtils.default.eachTree(tableFullTreeData, handleRow, {
|
|
3066
3072
|
children: childrenField
|
|
@@ -3068,6 +3074,9 @@ const Methods = {
|
|
|
3068
3074
|
} else {
|
|
3069
3075
|
tableFullData.forEach(handleRow);
|
|
3070
3076
|
}
|
|
3077
|
+
internalData.fullDataRowIdData = fullDataRowIdMaps;
|
|
3078
|
+
internalData.fullAllDataRowIdData = fullAllDataRowIdMaps;
|
|
3079
|
+
reactData.treeExpandedMaps = treeTempExpandedMaps;
|
|
3071
3080
|
},
|
|
3072
3081
|
cacheSourceMap(fullData) {
|
|
3073
3082
|
let {
|
|
@@ -3443,23 +3452,6 @@ const Methods = {
|
|
|
3443
3452
|
}
|
|
3444
3453
|
return this.createData(records).then(rows => isArr ? rows : rows[0]);
|
|
3445
3454
|
},
|
|
3446
|
-
// toOriginalRecords (rows: any[]) {
|
|
3447
|
-
// const { treeConfig } = props
|
|
3448
|
-
// const treeOpts = computeTreeOpts.value
|
|
3449
|
-
// const { transform, mapChildrenField } = treeOpts
|
|
3450
|
-
// const rowkey = getRowkey($xeTable)
|
|
3451
|
-
// if (treeConfig) {
|
|
3452
|
-
// if (transform) {
|
|
3453
|
-
// return []
|
|
3454
|
-
// }
|
|
3455
|
-
// return []
|
|
3456
|
-
// }
|
|
3457
|
-
// return rows.map(item => {
|
|
3458
|
-
// const obj = Object.assign({}, item)
|
|
3459
|
-
// delete obj.rowkey
|
|
3460
|
-
// return obj
|
|
3461
|
-
// })
|
|
3462
|
-
// },
|
|
3463
3455
|
/**
|
|
3464
3456
|
* 还原数据
|
|
3465
3457
|
* 如果不传任何参数,则还原整个表格
|
|
@@ -3468,16 +3460,30 @@ const Methods = {
|
|
|
3468
3460
|
* 如果还额外传了 field 则还原指定的单元格数据
|
|
3469
3461
|
*/
|
|
3470
3462
|
revertData(rows, field) {
|
|
3463
|
+
const $xeTable = this;
|
|
3464
|
+
const props = $xeTable;
|
|
3465
|
+
const reactData = $xeTable;
|
|
3466
|
+
const internalData = $xeTable;
|
|
3471
3467
|
const {
|
|
3472
3468
|
keepSource,
|
|
3473
|
-
tableSourceData,
|
|
3474
3469
|
treeConfig
|
|
3475
|
-
} =
|
|
3470
|
+
} = props;
|
|
3471
|
+
const {
|
|
3472
|
+
fullAllDataRowIdData,
|
|
3473
|
+
tableSourceData,
|
|
3474
|
+
sourceDataRowIdData,
|
|
3475
|
+
tableFullData,
|
|
3476
|
+
afterFullData
|
|
3477
|
+
} = internalData;
|
|
3478
|
+
const treeOpts = $xeTable.computeTreeOpts;
|
|
3479
|
+
const {
|
|
3480
|
+
transform
|
|
3481
|
+
} = treeOpts;
|
|
3476
3482
|
if (!keepSource) {
|
|
3477
3483
|
if (process.env.NODE_ENV === 'development') {
|
|
3478
3484
|
(0, _log.warnLog)('vxe.error.reqProp', ['keep-source']);
|
|
3479
3485
|
}
|
|
3480
|
-
return
|
|
3486
|
+
return $xeTable.$nextTick();
|
|
3481
3487
|
}
|
|
3482
3488
|
let targetRows = rows;
|
|
3483
3489
|
if (rows) {
|
|
@@ -3485,30 +3491,52 @@ const Methods = {
|
|
|
3485
3491
|
targetRows = [rows];
|
|
3486
3492
|
}
|
|
3487
3493
|
} else {
|
|
3488
|
-
targetRows = _xeUtils.default.toArray(
|
|
3494
|
+
targetRows = _xeUtils.default.toArray($xeTable.getUpdateRecords());
|
|
3489
3495
|
}
|
|
3496
|
+
let reDelFlag = false;
|
|
3490
3497
|
if (targetRows.length) {
|
|
3491
3498
|
targetRows.forEach(row => {
|
|
3492
|
-
if (
|
|
3493
|
-
const
|
|
3494
|
-
|
|
3495
|
-
(0, _log.errLog)('vxe.error.noTree', ['revertData']);
|
|
3496
|
-
}
|
|
3497
|
-
const oRow = tableSourceData[rowIndex];
|
|
3499
|
+
if (!$xeTable.isInsertByRow(row)) {
|
|
3500
|
+
const rowid = (0, _util.getRowid)($xeTable, row);
|
|
3501
|
+
const oRow = sourceDataRowIdData[rowid];
|
|
3498
3502
|
if (oRow && row) {
|
|
3499
3503
|
if (field) {
|
|
3500
3504
|
_xeUtils.default.set(row, field, _xeUtils.default.clone(_xeUtils.default.get(oRow, field), true));
|
|
3501
3505
|
} else {
|
|
3502
3506
|
_xeUtils.default.destructuring(row, _xeUtils.default.clone(oRow, true));
|
|
3503
3507
|
}
|
|
3508
|
+
if ($xeTable.isRemoveByRow(row)) {
|
|
3509
|
+
const rowRest = fullAllDataRowIdData[rowid];
|
|
3510
|
+
if (rowRest) {
|
|
3511
|
+
const reRow = rowRest.row;
|
|
3512
|
+
tableFullData.unshift(reRow);
|
|
3513
|
+
afterFullData.unshift(reRow);
|
|
3514
|
+
reDelFlag = true;
|
|
3515
|
+
}
|
|
3516
|
+
}
|
|
3504
3517
|
}
|
|
3505
3518
|
}
|
|
3506
3519
|
});
|
|
3507
3520
|
}
|
|
3508
3521
|
if (rows) {
|
|
3509
|
-
|
|
3522
|
+
if (reDelFlag) {
|
|
3523
|
+
$xeTable.updateFooter();
|
|
3524
|
+
$xeTable.cacheRowMap(false);
|
|
3525
|
+
$xeTable.handleTableData(treeConfig && transform);
|
|
3526
|
+
if (!(treeConfig && transform)) {
|
|
3527
|
+
$xeTable.updateAfterDataIndex();
|
|
3528
|
+
}
|
|
3529
|
+
$xeTable.checkSelectionStatus();
|
|
3530
|
+
if (reactData.scrollYLoad) {
|
|
3531
|
+
$xeTable.updateScrollYSpace();
|
|
3532
|
+
}
|
|
3533
|
+
}
|
|
3534
|
+
return $xeTable.$nextTick().then(() => {
|
|
3535
|
+
$xeTable.updateCellAreas();
|
|
3536
|
+
return $xeTable.recalculate();
|
|
3537
|
+
});
|
|
3510
3538
|
}
|
|
3511
|
-
return
|
|
3539
|
+
return $xeTable.reloadData(tableSourceData);
|
|
3512
3540
|
},
|
|
3513
3541
|
/**
|
|
3514
3542
|
* 清空单元格内容
|
|
@@ -3580,6 +3608,7 @@ const Methods = {
|
|
|
3580
3608
|
},
|
|
3581
3609
|
getCellLabel(row, fieldOrColumn) {
|
|
3582
3610
|
const $xeTable = this;
|
|
3611
|
+
const internalData = $xeTable;
|
|
3583
3612
|
const column = (0, _util.handleFieldOrColumn)(this, fieldOrColumn);
|
|
3584
3613
|
if (!column) {
|
|
3585
3614
|
return null;
|
|
@@ -3591,7 +3620,7 @@ const Methods = {
|
|
|
3591
3620
|
let formatData;
|
|
3592
3621
|
const {
|
|
3593
3622
|
fullAllDataRowIdData
|
|
3594
|
-
} =
|
|
3623
|
+
} = internalData;
|
|
3595
3624
|
const rowid = (0, _util.getRowid)($xeTable, row);
|
|
3596
3625
|
const colid = column.id;
|
|
3597
3626
|
const rowRest = fullAllDataRowIdData[rowid];
|
|
@@ -3638,12 +3667,23 @@ const Methods = {
|
|
|
3638
3667
|
* @param {Row} row 行对象
|
|
3639
3668
|
*/
|
|
3640
3669
|
isInsertByRow(row) {
|
|
3670
|
+
const $xeTable = this;
|
|
3671
|
+
const reactData = $xeTable;
|
|
3641
3672
|
const {
|
|
3642
3673
|
editStore
|
|
3643
|
-
} =
|
|
3644
|
-
const rowid = (0, _util.getRowid)(
|
|
3674
|
+
} = reactData;
|
|
3675
|
+
const rowid = (0, _util.getRowid)($xeTable, row);
|
|
3645
3676
|
return !!editStore.insertMaps[rowid];
|
|
3646
3677
|
},
|
|
3678
|
+
isRemoveByRow(row) {
|
|
3679
|
+
const $xeTable = this;
|
|
3680
|
+
const reactData = $xeTable;
|
|
3681
|
+
const {
|
|
3682
|
+
editStore
|
|
3683
|
+
} = reactData;
|
|
3684
|
+
const rowid = (0, _util.getRowid)($xeTable, row);
|
|
3685
|
+
return !!editStore.removeMaps[rowid];
|
|
3686
|
+
},
|
|
3647
3687
|
/**
|
|
3648
3688
|
* 删除所有新增的临时数据
|
|
3649
3689
|
* @returns
|
|
@@ -6583,11 +6623,13 @@ const Methods = {
|
|
|
6583
6623
|
const checkboxOpts = $xeTable.computeCheckboxOpts;
|
|
6584
6624
|
const {
|
|
6585
6625
|
checkField,
|
|
6586
|
-
checkMethod
|
|
6626
|
+
checkMethod,
|
|
6627
|
+
showReserveStatus
|
|
6587
6628
|
} = checkboxOpts;
|
|
6588
6629
|
const {
|
|
6589
6630
|
afterFullData,
|
|
6590
|
-
afterTreeFullData
|
|
6631
|
+
afterTreeFullData,
|
|
6632
|
+
checkboxReserveRowMap
|
|
6591
6633
|
} = internalData;
|
|
6592
6634
|
let sLen = 0; // 已选
|
|
6593
6635
|
let hLen = 0; // 半选
|
|
@@ -6623,7 +6665,11 @@ const Methods = {
|
|
|
6623
6665
|
vLen++;
|
|
6624
6666
|
});
|
|
6625
6667
|
const isSelected = rootList.length > 0 ? vLen > 0 ? sLen >= vLen : sLen >= rootList.length : false;
|
|
6626
|
-
|
|
6668
|
+
let halfSelect = !isSelected && (sLen >= 1 || hLen >= 1);
|
|
6669
|
+
// 如果复选框启用保留记录,当保留数据存在时显示半选
|
|
6670
|
+
if (!isSelected && !halfSelect && showReserveStatus) {
|
|
6671
|
+
halfSelect = !_xeUtils.default.isEmpty(checkboxReserveRowMap);
|
|
6672
|
+
}
|
|
6627
6673
|
reactData.isAllSelected = isSelected;
|
|
6628
6674
|
reactData.isIndeterminate = halfSelect;
|
|
6629
6675
|
},
|
|
@@ -10454,19 +10500,17 @@ const Methods = {
|
|
|
10454
10500
|
const funcs = 'setFilter,openFilter,clearFilter,saveFilterPanel,resetFilterPanel,getCheckedFilters,updateFilterOptionStatus,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,getCopyCellAreas,clearCopyCellArea,setCellAreas,openFNR,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,insertNextAt,insertChild,insertChildAt,insertChildNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearEdit,clearActived,getEditRecord,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,fullValidateField,validateField,openExport,closeExport,openPrint,closePrint,getPrintHtml,exportData,openImport,closeImport,importData,saveFile,readFile,importByFile,print,openCustom,closeCustom,saveCustom,cancelCustom,resetCustom,toggleCustomAllCheckbox,setCustomAllCheckbox'.split(',');
|
|
10455
10501
|
funcs.forEach(name => {
|
|
10456
10502
|
Methods[name] = function (...args) {
|
|
10457
|
-
if (
|
|
10458
|
-
if (
|
|
10459
|
-
|
|
10460
|
-
|
|
10461
|
-
|
|
10462
|
-
|
|
10463
|
-
|
|
10464
|
-
|
|
10465
|
-
|
|
10466
|
-
|
|
10467
|
-
|
|
10468
|
-
(0, _log.errLog)('vxe.error.reqModule', ['VxeTableCustomModule']);
|
|
10469
|
-
}
|
|
10503
|
+
if (!this[`_${name}`]) {
|
|
10504
|
+
if ('openExport,openPrint,exportData,openImport,importData,saveFile,readFile,importByFile,print'.split(',').includes(name)) {
|
|
10505
|
+
(0, _log.errLog)('vxe.error.reqModule', ['VxeTableExportModule']);
|
|
10506
|
+
} else if ('fullValidate,validate'.split(',').includes(name)) {
|
|
10507
|
+
(0, _log.errLog)('vxe.error.reqModule', ['VxeTableValidatorModule']);
|
|
10508
|
+
} else if ('setFilter,openFilter,clearFilter,getCheckedFilters'.split(',').includes(name)) {
|
|
10509
|
+
(0, _log.errLog)('vxe.error.reqModule', ['VxeTableFilterModule']);
|
|
10510
|
+
} else if ('insert,insertAt,insertNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,getEditRecord,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell'.split(',').includes(name)) {
|
|
10511
|
+
(0, _log.errLog)('vxe.error.reqModule', ['VxeTableEditModule']);
|
|
10512
|
+
} else if ('openCustom'.split(',').includes(name)) {
|
|
10513
|
+
(0, _log.errLog)('vxe.error.reqModule', ['VxeTableCustomModule']);
|
|
10470
10514
|
}
|
|
10471
10515
|
}
|
|
10472
10516
|
return this[`_${name}`] ? this[`_${name}`](...args) : null;
|