vxe-table 4.12.0-beta.9 → 4.12.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/es/grid/src/grid.js +45 -36
- package/es/locale/lang/ar-EG.js +7 -1
- package/es/locale/lang/de-DE.js +7 -1
- package/es/locale/lang/en-US.js +7 -1
- package/es/locale/lang/es-ES.js +7 -1
- package/es/locale/lang/fr-FR.js +7 -1
- package/es/locale/lang/hu-HU.js +7 -1
- package/es/locale/lang/hy-AM.js +7 -1
- package/es/locale/lang/id-ID.js +7 -1
- package/es/locale/lang/it-IT.js +7 -1
- package/es/locale/lang/ja-JP.js +7 -1
- package/es/locale/lang/ko-KR.js +7 -1
- package/es/locale/lang/nb-NO.js +7 -1
- package/es/locale/lang/pt-BR.js +7 -1
- package/es/locale/lang/ru-RU.js +7 -1
- package/es/locale/lang/th-TH.js +7 -1
- package/es/locale/lang/ug-CN.js +7 -1
- package/es/locale/lang/uk-UA.js +7 -1
- package/es/locale/lang/vi-VN.js +7 -1
- package/es/locale/lang/zh-CHT.js +7 -1
- package/es/locale/lang/zh-CN.js +7 -1
- package/es/style.css +1 -1
- package/es/table/module/custom/hook.js +1 -1
- package/es/table/module/custom/panel.js +4 -2
- package/es/table/module/edit/hook.js +11 -12
- package/es/table/module/export/export-panel.js +3 -2
- package/es/table/module/export/import-panel.js +3 -2
- package/es/table/module/filter/panel.js +12 -2
- package/es/table/module/keyboard/hook.js +105 -30
- package/es/table/module/menu/hook.js +2 -1
- package/es/table/module/validator/hook.js +4 -3
- package/es/table/render/index.js +3 -3
- package/es/table/src/body.js +40 -21
- package/es/table/src/cell.js +43 -24
- package/es/table/src/columnInfo.js +2 -2
- package/es/table/src/footer.js +12 -7
- package/es/table/src/header.js +12 -7
- package/es/table/src/props.js +4 -0
- package/es/table/src/table.js +435 -420
- package/es/table/src/util.js +34 -6
- package/es/ui/index.js +2 -1
- package/es/ui/src/log.js +1 -1
- package/helper/vetur/attributes.json +1 -1
- package/helper/vetur/tags.json +1 -1
- package/lib/grid/src/grid.js +42 -40
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +500 -292
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/ar-EG.js +7 -1
- package/lib/locale/lang/ar-EG.min.js +1 -1
- package/lib/locale/lang/de-DE.js +7 -1
- package/lib/locale/lang/de-DE.min.js +1 -1
- package/lib/locale/lang/en-US.js +7 -1
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +7 -1
- package/lib/locale/lang/es-ES.js +7 -1
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +7 -1
- package/lib/locale/lang/fr-FR.js +7 -1
- package/lib/locale/lang/fr-FR.min.js +1 -1
- package/lib/locale/lang/hu-HU.js +7 -1
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/hu-HU.umd.js +7 -1
- package/lib/locale/lang/hy-AM.js +7 -1
- package/lib/locale/lang/hy-AM.min.js +1 -1
- package/lib/locale/lang/id-ID.js +7 -1
- package/lib/locale/lang/id-ID.min.js +1 -1
- package/lib/locale/lang/it-IT.js +7 -1
- package/lib/locale/lang/it-IT.min.js +1 -1
- package/lib/locale/lang/ja-JP.js +7 -1
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +7 -1
- package/lib/locale/lang/ko-KR.js +7 -1
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/ko-KR.umd.js +7 -1
- package/lib/locale/lang/nb-NO.js +7 -1
- package/lib/locale/lang/nb-NO.min.js +1 -1
- package/lib/locale/lang/pt-BR.js +7 -1
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +7 -1
- package/lib/locale/lang/ru-RU.js +7 -1
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/ru-RU.umd.js +7 -1
- package/lib/locale/lang/th-TH.js +7 -1
- package/lib/locale/lang/th-TH.min.js +1 -1
- package/lib/locale/lang/ug-CN.js +7 -1
- package/lib/locale/lang/ug-CN.min.js +1 -1
- package/lib/locale/lang/uk-UA.js +7 -1
- package/lib/locale/lang/uk-UA.min.js +1 -1
- package/lib/locale/lang/uk-UA.umd.js +7 -1
- package/lib/locale/lang/vi-VN.js +7 -1
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/zh-CHT.js +7 -1
- package/lib/locale/lang/zh-CHT.min.js +1 -1
- package/lib/locale/lang/zh-CN.js +7 -1
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +7 -1
- package/lib/style.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 +4 -2
- package/lib/table/module/custom/panel.min.js +1 -1
- package/lib/table/module/edit/hook.js +13 -13
- package/lib/table/module/edit/hook.min.js +1 -1
- package/lib/table/module/export/export-panel.js +3 -2
- package/lib/table/module/export/export-panel.min.js +1 -1
- package/lib/table/module/export/import-panel.js +3 -2
- package/lib/table/module/export/import-panel.min.js +1 -1
- package/lib/table/module/filter/panel.js +8 -2
- package/lib/table/module/filter/panel.min.js +1 -1
- package/lib/table/module/keyboard/hook.js +113 -31
- package/lib/table/module/keyboard/hook.min.js +1 -1
- package/lib/table/module/menu/hook.js +2 -1
- package/lib/table/module/menu/hook.min.js +1 -1
- package/lib/table/module/validator/hook.js +5 -4
- package/lib/table/module/validator/hook.min.js +1 -1
- package/lib/table/render/index.js +4 -3
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/body.js +48 -20
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/cell.js +49 -25
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/columnInfo.js +2 -4
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/footer.js +12 -5
- package/lib/table/src/footer.min.js +1 -1
- package/lib/table/src/header.js +12 -5
- package/lib/table/src/header.min.js +1 -1
- package/lib/table/src/props.js +4 -0
- package/lib/table/src/props.min.js +1 -1
- package/lib/table/src/table.js +523 -456
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +36 -6
- package/lib/table/src/util.min.js +1 -1
- package/lib/ui/index.js +2 -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 +49 -42
- package/packages/locale/lang/ar-EG.ts +7 -1
- package/packages/locale/lang/de-DE.ts +7 -1
- package/packages/locale/lang/en-US.ts +7 -1
- package/packages/locale/lang/es-ES.ts +7 -1
- package/packages/locale/lang/fr-FR.ts +7 -1
- package/packages/locale/lang/hu-HU.ts +7 -1
- package/packages/locale/lang/hy-AM.ts +7 -1
- package/packages/locale/lang/id-ID.ts +7 -1
- package/packages/locale/lang/it-IT.ts +7 -1
- package/packages/locale/lang/ja-JP.ts +7 -1
- package/packages/locale/lang/ko-KR.ts +7 -1
- package/packages/locale/lang/nb-NO.ts +7 -1
- package/packages/locale/lang/pt-BR.ts +7 -1
- package/packages/locale/lang/ru-RU.ts +7 -1
- package/packages/locale/lang/th-TH.ts +7 -1
- package/packages/locale/lang/ug-CN.ts +7 -1
- package/packages/locale/lang/uk-UA.ts +7 -1
- package/packages/locale/lang/vi-VN.ts +7 -1
- package/packages/locale/lang/zh-CHT.ts +7 -1
- package/packages/locale/lang/zh-CN.ts +7 -1
- package/packages/table/module/custom/hook.ts +1 -1
- package/packages/table/module/custom/panel.ts +6 -2
- package/packages/table/module/edit/hook.ts +12 -12
- package/packages/table/module/export/export-panel.ts +4 -2
- package/packages/table/module/export/import-panel.ts +4 -2
- package/packages/table/module/filter/panel.ts +12 -2
- package/packages/table/module/keyboard/hook.ts +106 -32
- package/packages/table/module/menu/hook.ts +3 -1
- package/packages/table/module/validator/hook.ts +5 -3
- package/packages/table/render/index.ts +3 -4
- package/packages/table/src/body.ts +41 -21
- package/packages/table/src/cell.ts +43 -24
- package/packages/table/src/columnInfo.ts +3 -2
- package/packages/table/src/footer.ts +13 -7
- package/packages/table/src/header.ts +13 -7
- package/packages/table/src/props.ts +4 -0
- package/packages/table/src/table.ts +441 -418
- package/packages/table/src/util.ts +39 -6
- package/packages/ui/index.ts +1 -0
- /package/es/{iconfont.1741337003908.ttf → iconfont.1742955995631.ttf} +0 -0
- /package/es/{iconfont.1741337003908.woff → iconfont.1742955995631.woff} +0 -0
- /package/es/{iconfont.1741337003908.woff2 → iconfont.1742955995631.woff2} +0 -0
- /package/lib/{iconfont.1741337003908.ttf → iconfont.1742955995631.ttf} +0 -0
- /package/lib/{iconfont.1741337003908.woff → iconfont.1742955995631.woff} +0 -0
- /package/lib/{iconfont.1741337003908.woff2 → iconfont.1742955995631.woff2} +0 -0
package/lib/index.umd.js
CHANGED
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
else if(typeof define === 'function' && define.amd)
|
|
5
5
|
define([, "@vxe-ui/core", "xe-utils"], factory);
|
|
6
6
|
else if(typeof exports === 'object')
|
|
7
|
-
exports["
|
|
7
|
+
exports["VxeUITable"] = factory(require("vue"), require("@vxe-ui/core"), require("xe-utils"));
|
|
8
8
|
else
|
|
9
|
-
root["
|
|
9
|
+
root["VxeUITable"] = factory(root["Vue"], root["VxeUI"], root["XEUtils"]);
|
|
10
10
|
})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__9274__, __WEBPACK_EXTERNAL_MODULE__4345__, __WEBPACK_EXTERNAL_MODULE__8871__) {
|
|
11
11
|
return /******/ (function() { // webpackBootstrap
|
|
12
12
|
/******/ "use strict";
|
|
@@ -3138,7 +3138,7 @@ function eqEmptyValue(cellValue) {
|
|
|
3138
3138
|
;// ./packages/ui/index.ts
|
|
3139
3139
|
|
|
3140
3140
|
|
|
3141
|
-
const version = "4.12.0
|
|
3141
|
+
const version = "4.12.0";
|
|
3142
3142
|
core_.VxeUI.version = version;
|
|
3143
3143
|
core_.VxeUI.tableVersion = version;
|
|
3144
3144
|
core_.VxeUI.setConfig({
|
|
@@ -3261,6 +3261,7 @@ core_.VxeUI.setConfig({
|
|
|
3261
3261
|
// remote: false,
|
|
3262
3262
|
// filterMethod: null,
|
|
3263
3263
|
// destroyOnClose: false,
|
|
3264
|
+
// isEvery: false,
|
|
3264
3265
|
showIcon: true
|
|
3265
3266
|
},
|
|
3266
3267
|
treeConfig: {
|
|
@@ -3586,7 +3587,7 @@ var esnext_iterator_some = __webpack_require__(7550);
|
|
|
3586
3587
|
const {
|
|
3587
3588
|
log: log_log
|
|
3588
3589
|
} = core_.VxeUI;
|
|
3589
|
-
const log_version = `table v${"4.12.0
|
|
3590
|
+
const log_version = `table v${"4.12.0"}`;
|
|
3590
3591
|
const warnLog = log_log.create('warn', log_version);
|
|
3591
3592
|
const errLog = log_log.create('error', log_version);
|
|
3592
3593
|
;// ./packages/table/src/columnInfo.ts
|
|
@@ -3607,12 +3608,10 @@ class ColumnInfo {
|
|
|
3607
3608
|
renderFooter,
|
|
3608
3609
|
renderData
|
|
3609
3610
|
} = {}) {
|
|
3610
|
-
const
|
|
3611
|
+
const tableProps = $xeTable.props;
|
|
3612
|
+
const $xeGrid = $xeTable.xeGrid;
|
|
3611
3613
|
const formatter = _vm.formatter;
|
|
3612
3614
|
const visible = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(_vm.visible) ? _vm.visible : true;
|
|
3613
|
-
const {
|
|
3614
|
-
props: tableProps
|
|
3615
|
-
} = $xeTable;
|
|
3616
3615
|
const types = ['seq', 'checkbox', 'radio', 'expand', 'html'];
|
|
3617
3616
|
if (_vm.type && types.indexOf(_vm.type) === -1) {
|
|
3618
3617
|
warnLog('vxe.error.errProp', [`type=${_vm.type}`, types.join(', ')]);
|
|
@@ -4058,23 +4057,51 @@ function getRowid($xeTable, row) {
|
|
|
4058
4057
|
const rowid = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, getRowkey($xeTable));
|
|
4059
4058
|
return encodeRowid(rowid);
|
|
4060
4059
|
}
|
|
4060
|
+
function createHandleUpdateRowId($xeTable) {
|
|
4061
|
+
const rowKey = getRowkey($xeTable);
|
|
4062
|
+
const isDeepKey = rowKey.indexOf('.') > -1;
|
|
4063
|
+
const updateRId = isDeepKey ? updateDeepRowKey : updateFastRowKey;
|
|
4064
|
+
return {
|
|
4065
|
+
rowKey,
|
|
4066
|
+
handleUpdateRowId(row) {
|
|
4067
|
+
return row ? updateRId(row, rowKey) : null;
|
|
4068
|
+
}
|
|
4069
|
+
};
|
|
4070
|
+
}
|
|
4071
|
+
function createHandleGetRowId($xeTable) {
|
|
4072
|
+
const rowKey = getRowkey($xeTable);
|
|
4073
|
+
const isDeepKey = rowKey.indexOf('.') > -1;
|
|
4074
|
+
const getRId = isDeepKey ? getDeepRowIdByKey : getFastRowIdByKey;
|
|
4075
|
+
return {
|
|
4076
|
+
rowKey,
|
|
4077
|
+
handleGetRowId(row) {
|
|
4078
|
+
return row ? getRId(row, rowKey) : null;
|
|
4079
|
+
}
|
|
4080
|
+
};
|
|
4081
|
+
}
|
|
4061
4082
|
// 编码行主键
|
|
4062
4083
|
function encodeRowid(rowVal) {
|
|
4063
4084
|
return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(rowVal) ? '' : encodeURIComponent(rowVal);
|
|
4064
4085
|
}
|
|
4065
|
-
function
|
|
4066
|
-
|
|
4086
|
+
function getDeepRowIdByKey(row, rowKey) {
|
|
4087
|
+
return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, rowKey);
|
|
4088
|
+
}
|
|
4089
|
+
function updateDeepRowKey(row, rowKey) {
|
|
4090
|
+
let rowid = getDeepRowIdByKey(row, rowKey);
|
|
4067
4091
|
if (eqEmptyValue(rowid)) {
|
|
4068
4092
|
rowid = getRowUniqueId();
|
|
4069
|
-
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,
|
|
4093
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row, rowKey, rowid);
|
|
4070
4094
|
}
|
|
4071
4095
|
return rowid;
|
|
4072
4096
|
}
|
|
4073
|
-
function
|
|
4074
|
-
|
|
4097
|
+
function getFastRowIdByKey(row, rowKey) {
|
|
4098
|
+
return row[rowKey];
|
|
4099
|
+
}
|
|
4100
|
+
function updateFastRowKey(row, rowKey) {
|
|
4101
|
+
let rowid = getFastRowIdByKey(row, rowKey);
|
|
4075
4102
|
if (eqEmptyValue(rowid)) {
|
|
4076
4103
|
rowid = getRowUniqueId();
|
|
4077
|
-
row[
|
|
4104
|
+
row[rowKey] = rowid;
|
|
4078
4105
|
}
|
|
4079
4106
|
return rowid;
|
|
4080
4107
|
}
|
|
@@ -4922,15 +4949,21 @@ function getFooterContent(params) {
|
|
|
4922
4949
|
});
|
|
4923
4950
|
if (footerFormatter) {
|
|
4924
4951
|
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(footerFormatter)) {
|
|
4925
|
-
return
|
|
4952
|
+
return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span', {
|
|
4953
|
+
class: 'vxe-cell--label'
|
|
4954
|
+
}, `${footerFormatter(footParams)}`)];
|
|
4926
4955
|
}
|
|
4927
4956
|
const isArr = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(footerFormatter);
|
|
4928
4957
|
const gFormatOpts = isArr ? cell_formats.get(footerFormatter[0]) : cell_formats.get(footerFormatter);
|
|
4929
4958
|
const footerFormatMethod = gFormatOpts ? gFormatOpts.tableFooterCellFormatMethod : null;
|
|
4930
4959
|
if (footerFormatMethod) {
|
|
4931
|
-
return
|
|
4960
|
+
return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span', {
|
|
4961
|
+
class: 'vxe-cell--label'
|
|
4962
|
+
}, `${isArr ? footerFormatMethod(footParams, ...footerFormatter.slice(1)) : footerFormatMethod(footParams)}`)];
|
|
4932
4963
|
}
|
|
4933
|
-
return ''
|
|
4964
|
+
return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span', {
|
|
4965
|
+
class: 'vxe-cell--label'
|
|
4966
|
+
}, '')];
|
|
4934
4967
|
}
|
|
4935
4968
|
if (renderOpts) {
|
|
4936
4969
|
const compConf = cell_renderer.get(renderOpts.name);
|
|
@@ -4941,7 +4974,9 @@ function getFooterContent(params) {
|
|
|
4941
4974
|
}
|
|
4942
4975
|
}
|
|
4943
4976
|
}
|
|
4944
|
-
return [
|
|
4977
|
+
return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span', {
|
|
4978
|
+
class: 'vxe-cell--label'
|
|
4979
|
+
}, formatText(itemValue, 1))];
|
|
4945
4980
|
}
|
|
4946
4981
|
function getDefaultCellLabel(params) {
|
|
4947
4982
|
const {
|
|
@@ -5140,11 +5175,12 @@ const Cell = {
|
|
|
5140
5175
|
computeTreeOpts
|
|
5141
5176
|
} = $table.getComputeMaps();
|
|
5142
5177
|
const {
|
|
5143
|
-
|
|
5144
|
-
treeExpandLazyLoadedMaps
|
|
5178
|
+
treeExpandedFlag
|
|
5145
5179
|
} = tableReactData;
|
|
5146
5180
|
const {
|
|
5147
|
-
fullAllDataRowIdData
|
|
5181
|
+
fullAllDataRowIdData,
|
|
5182
|
+
treeExpandedMaps,
|
|
5183
|
+
treeExpandLazyLoadedMaps
|
|
5148
5184
|
} = tableInternalData;
|
|
5149
5185
|
const treeOpts = computeTreeOpts.value;
|
|
5150
5186
|
const {
|
|
@@ -5179,7 +5215,7 @@ const Cell = {
|
|
|
5179
5215
|
}
|
|
5180
5216
|
if (!isHidden) {
|
|
5181
5217
|
const rowid = getRowid($table, row);
|
|
5182
|
-
isActive = !!treeExpandedMaps[rowid];
|
|
5218
|
+
isActive = !!treeExpandedFlag && !!treeExpandedMaps[rowid];
|
|
5183
5219
|
if (lazy) {
|
|
5184
5220
|
const rest = fullAllDataRowIdData[rowid];
|
|
5185
5221
|
isLazyLoading = !!treeExpandLazyLoadedMaps[rowid];
|
|
@@ -5371,7 +5407,12 @@ const Cell = {
|
|
|
5371
5407
|
const headerSlot = slots ? slots.header : null;
|
|
5372
5408
|
const titleSlot = slots ? slots.title : null;
|
|
5373
5409
|
const checkboxOpts = computeCheckboxOpts.value;
|
|
5374
|
-
const
|
|
5410
|
+
const {
|
|
5411
|
+
checkStrictly,
|
|
5412
|
+
showHeader,
|
|
5413
|
+
headerTitle
|
|
5414
|
+
} = checkboxOpts;
|
|
5415
|
+
const colTitle = column.getTitle();
|
|
5375
5416
|
const ons = {};
|
|
5376
5417
|
if (!isHidden) {
|
|
5377
5418
|
ons.onClick = evnt => {
|
|
@@ -5389,10 +5430,10 @@ const Cell = {
|
|
|
5389
5430
|
if (headerSlot) {
|
|
5390
5431
|
return renderHeaderCellBaseVNs(params, renderTitleContent(checkboxParams, $table.callSlot(headerSlot, checkboxParams)));
|
|
5391
5432
|
}
|
|
5392
|
-
if (
|
|
5433
|
+
if (checkStrictly ? !showHeader : showHeader === false) {
|
|
5393
5434
|
return renderHeaderCellBaseVNs(params, renderTitleContent(checkboxParams, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span', {
|
|
5394
5435
|
class: 'vxe-checkbox--label'
|
|
5395
|
-
}, titleSlot ? $table.callSlot(titleSlot, checkboxParams) :
|
|
5436
|
+
}, titleSlot ? $table.callSlot(titleSlot, checkboxParams) : colTitle)]));
|
|
5396
5437
|
}
|
|
5397
5438
|
return renderHeaderCellBaseVNs(params, renderTitleContent(checkboxParams, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span', {
|
|
5398
5439
|
class: ['vxe-cell--checkbox', {
|
|
@@ -5400,13 +5441,13 @@ const Cell = {
|
|
|
5400
5441
|
'is--disabled': isAllCheckboxDisabled,
|
|
5401
5442
|
'is--indeterminate': isAllCheckboxIndeterminate
|
|
5402
5443
|
}],
|
|
5403
|
-
title: cell_getI18n('vxe.table.allTitle')
|
|
5444
|
+
title: external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(headerTitle) ? cell_getI18n('vxe.table.allTitle') : `${headerTitle || ''}`,
|
|
5404
5445
|
...ons
|
|
5405
5446
|
}, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span', {
|
|
5406
5447
|
class: ['vxe-checkbox--icon', isAllCheckboxIndeterminate ? cell_getIcon().TABLE_CHECKBOX_INDETERMINATE : isAllCheckboxSelected ? cell_getIcon().TABLE_CHECKBOX_CHECKED : cell_getIcon().TABLE_CHECKBOX_UNCHECKED]
|
|
5407
|
-
})].concat(titleSlot ||
|
|
5448
|
+
})].concat(titleSlot || colTitle ? [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span', {
|
|
5408
5449
|
class: 'vxe-checkbox--label'
|
|
5409
|
-
}, titleSlot ? $table.callSlot(titleSlot, checkboxParams) :
|
|
5450
|
+
}, titleSlot ? $table.callSlot(titleSlot, checkboxParams) : colTitle)] : []))]));
|
|
5410
5451
|
},
|
|
5411
5452
|
renderCheckboxCell(params) {
|
|
5412
5453
|
const {
|
|
@@ -5417,13 +5458,17 @@ const Cell = {
|
|
|
5417
5458
|
} = params;
|
|
5418
5459
|
const tableProps = $table.props;
|
|
5419
5460
|
const tableReactData = $table.reactData;
|
|
5461
|
+
const tableInternalData = $table.internalData;
|
|
5420
5462
|
const {
|
|
5421
5463
|
treeConfig
|
|
5422
5464
|
} = tableProps;
|
|
5423
5465
|
const {
|
|
5424
|
-
|
|
5425
|
-
treeIndeterminateMaps
|
|
5466
|
+
updateCheckboxFlag
|
|
5426
5467
|
} = tableReactData;
|
|
5468
|
+
const {
|
|
5469
|
+
selectCheckboxMaps,
|
|
5470
|
+
treeIndeterminateRowMaps
|
|
5471
|
+
} = tableInternalData;
|
|
5427
5472
|
const {
|
|
5428
5473
|
computeCheckboxOpts
|
|
5429
5474
|
} = $table.getComputeMaps();
|
|
@@ -5447,7 +5492,7 @@ const Cell = {
|
|
|
5447
5492
|
const ons = {};
|
|
5448
5493
|
if (!isHidden) {
|
|
5449
5494
|
const rowid = getRowid($table, row);
|
|
5450
|
-
isChecked = !!selectCheckboxMaps[rowid];
|
|
5495
|
+
isChecked = !!updateCheckboxFlag && !!selectCheckboxMaps[rowid];
|
|
5451
5496
|
ons.onClick = evnt => {
|
|
5452
5497
|
if (!isDisabled && isVisible) {
|
|
5453
5498
|
$table.triggerCheckRowEvent(evnt, params, !isChecked);
|
|
@@ -5459,7 +5504,7 @@ const Cell = {
|
|
|
5459
5504
|
});
|
|
5460
5505
|
}
|
|
5461
5506
|
if (treeConfig) {
|
|
5462
|
-
indeterminate = !!
|
|
5507
|
+
indeterminate = !!treeIndeterminateRowMaps[rowid];
|
|
5463
5508
|
}
|
|
5464
5509
|
}
|
|
5465
5510
|
const checkboxParams = {
|
|
@@ -5505,12 +5550,16 @@ const Cell = {
|
|
|
5505
5550
|
} = params;
|
|
5506
5551
|
const tableProps = $table.props;
|
|
5507
5552
|
const tableReactData = $table.reactData;
|
|
5553
|
+
const tableInternalData = $table.internalData;
|
|
5508
5554
|
const {
|
|
5509
5555
|
treeConfig
|
|
5510
5556
|
} = tableProps;
|
|
5511
5557
|
const {
|
|
5512
|
-
|
|
5558
|
+
updateCheckboxFlag
|
|
5513
5559
|
} = tableReactData;
|
|
5560
|
+
const {
|
|
5561
|
+
treeIndeterminateRowMaps
|
|
5562
|
+
} = tableInternalData;
|
|
5514
5563
|
const {
|
|
5515
5564
|
computeCheckboxOpts
|
|
5516
5565
|
} = $table.getComputeMaps();
|
|
@@ -5536,7 +5585,7 @@ const Cell = {
|
|
|
5536
5585
|
const ons = {};
|
|
5537
5586
|
if (!isHidden) {
|
|
5538
5587
|
const rowid = getRowid($table, row);
|
|
5539
|
-
isChecked = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, checkField);
|
|
5588
|
+
isChecked = !!updateCheckboxFlag && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, checkField);
|
|
5540
5589
|
ons.onClick = evnt => {
|
|
5541
5590
|
if (!isDisabled && isVisible) {
|
|
5542
5591
|
$table.triggerCheckRowEvent(evnt, params, !isChecked);
|
|
@@ -5548,7 +5597,7 @@ const Cell = {
|
|
|
5548
5597
|
});
|
|
5549
5598
|
}
|
|
5550
5599
|
if (treeConfig) {
|
|
5551
|
-
isIndeterminate = !!
|
|
5600
|
+
isIndeterminate = !!treeIndeterminateRowMaps[rowid];
|
|
5552
5601
|
}
|
|
5553
5602
|
}
|
|
5554
5603
|
const checkboxParams = {
|
|
@@ -5595,11 +5644,11 @@ const Cell = {
|
|
|
5595
5644
|
row,
|
|
5596
5645
|
column
|
|
5597
5646
|
} = params;
|
|
5598
|
-
const
|
|
5647
|
+
const tableInternalData = $table.internalData;
|
|
5599
5648
|
const {
|
|
5600
5649
|
rowExpandedMaps,
|
|
5601
5650
|
rowExpandLazyLoadedMaps
|
|
5602
|
-
} =
|
|
5651
|
+
} = tableInternalData;
|
|
5603
5652
|
const {
|
|
5604
5653
|
computeExpandOpts
|
|
5605
5654
|
} = $table.getComputeMaps();
|
|
@@ -5717,6 +5766,8 @@ const Cell = {
|
|
|
5717
5766
|
const {
|
|
5718
5767
|
showIcon,
|
|
5719
5768
|
allowBtn,
|
|
5769
|
+
ascTitle,
|
|
5770
|
+
descTitle,
|
|
5720
5771
|
iconLayout,
|
|
5721
5772
|
iconAsc,
|
|
5722
5773
|
iconDesc,
|
|
@@ -5732,7 +5783,7 @@ const Cell = {
|
|
|
5732
5783
|
class: ['vxe-sort--asc-btn', iconAsc || cell_getIcon().TABLE_SORT_ASC, {
|
|
5733
5784
|
'sort--active': order === 'asc'
|
|
5734
5785
|
}],
|
|
5735
|
-
title: cell_getI18n('vxe.table.sortAsc')
|
|
5786
|
+
title: external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(ascTitle) ? cell_getI18n('vxe.table.sortAsc') : `${ascTitle || ''}`,
|
|
5736
5787
|
onClick: allowBtn ? evnt => {
|
|
5737
5788
|
evnt.stopPropagation();
|
|
5738
5789
|
$table.triggerSortEvent(evnt, column, 'asc');
|
|
@@ -5741,7 +5792,7 @@ const Cell = {
|
|
|
5741
5792
|
class: ['vxe-sort--desc-btn', iconDesc || cell_getIcon().TABLE_SORT_DESC, {
|
|
5742
5793
|
'sort--active': order === 'desc'
|
|
5743
5794
|
}],
|
|
5744
|
-
title: cell_getI18n('vxe.table.sortDesc')
|
|
5795
|
+
title: external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(descTitle) ? cell_getI18n('vxe.table.sortDesc') : `${descTitle || ''}`,
|
|
5745
5796
|
onClick: allowBtn ? evnt => {
|
|
5746
5797
|
evnt.stopPropagation();
|
|
5747
5798
|
$table.triggerSortEvent(evnt, column, 'desc');
|
|
@@ -6164,8 +6215,6 @@ const Colgroup = VxeColgroup;
|
|
|
6164
6215
|
var esnext_iterator_filter = __webpack_require__(4520);
|
|
6165
6216
|
// EXTERNAL MODULE: ./node_modules/core-js/modules/esnext.iterator.every.js
|
|
6166
6217
|
var esnext_iterator_every = __webpack_require__(3215);
|
|
6167
|
-
// EXTERNAL MODULE: ./node_modules/core-js/modules/esnext.iterator.find.js
|
|
6168
|
-
var esnext_iterator_find = __webpack_require__(2577);
|
|
6169
6218
|
// EXTERNAL MODULE: ./node_modules/core-js/modules/esnext.iterator.reduce.js
|
|
6170
6219
|
var esnext_iterator_reduce = __webpack_require__(8872);
|
|
6171
6220
|
// EXTERNAL MODULE: ./node_modules/core-js/modules/esnext.iterator.to-array.js
|
|
@@ -6211,6 +6260,7 @@ const renderType = 'body';
|
|
|
6211
6260
|
const {
|
|
6212
6261
|
computeEditOpts,
|
|
6213
6262
|
computeMouseOpts,
|
|
6263
|
+
computeCellOffsetWidth,
|
|
6214
6264
|
computeAreaOpts,
|
|
6215
6265
|
computeDefaultRowHeight,
|
|
6216
6266
|
computeEmptyOpts,
|
|
@@ -6246,7 +6296,7 @@ const renderType = 'body';
|
|
|
6246
6296
|
} = tableReactData;
|
|
6247
6297
|
return !!(isDragResize || lastScrollTime && Date.now() < lastScrollTime + delayHover);
|
|
6248
6298
|
};
|
|
6249
|
-
const renderLine = (params, cellHeight) => {
|
|
6299
|
+
const renderLine = (rowid, params, cellHeight) => {
|
|
6250
6300
|
const {
|
|
6251
6301
|
row,
|
|
6252
6302
|
column
|
|
@@ -6268,7 +6318,6 @@ const renderType = 'body';
|
|
|
6268
6318
|
if (slots && slots.line) {
|
|
6269
6319
|
return $xeTable.callSlot(slots.line, params);
|
|
6270
6320
|
}
|
|
6271
|
-
const rowid = getRowid($xeTable, row);
|
|
6272
6321
|
const rest = fullAllDataRowIdData[rowid];
|
|
6273
6322
|
let rLevel = 0;
|
|
6274
6323
|
let prevRow = null;
|
|
@@ -6296,8 +6345,11 @@ const renderType = 'body';
|
|
|
6296
6345
|
* 渲染列
|
|
6297
6346
|
*/
|
|
6298
6347
|
const renderTdColumn = (seq, rowid, fixedType, isOptimizeMode, rowLevel, row, rowIndex, $rowIndex, _rowIndex, column, $columnIndex, columns, items) => {
|
|
6348
|
+
const $xeGrid = $xeTable.xeGrid;
|
|
6299
6349
|
const {
|
|
6300
|
-
fullAllDataRowIdData
|
|
6350
|
+
fullAllDataRowIdData,
|
|
6351
|
+
fullColumnIdData,
|
|
6352
|
+
visibleColumn
|
|
6301
6353
|
} = tableInternalData;
|
|
6302
6354
|
const {
|
|
6303
6355
|
columnKey,
|
|
@@ -6324,6 +6376,7 @@ const renderType = 'body';
|
|
|
6324
6376
|
scrollYLoad,
|
|
6325
6377
|
calcCellHeightFlag,
|
|
6326
6378
|
resizeHeightFlag,
|
|
6379
|
+
resizeWidthFlag,
|
|
6327
6380
|
mergeList,
|
|
6328
6381
|
editStore,
|
|
6329
6382
|
isAllOverflow,
|
|
@@ -6356,6 +6409,7 @@ const renderType = 'body';
|
|
|
6356
6409
|
const columnOpts = computeColumnOpts.value;
|
|
6357
6410
|
const mouseOpts = computeMouseOpts.value;
|
|
6358
6411
|
const areaOpts = computeAreaOpts.value;
|
|
6412
|
+
const cellOffsetWidth = computeCellOffsetWidth.value;
|
|
6359
6413
|
const {
|
|
6360
6414
|
selectCellToRow
|
|
6361
6415
|
} = areaOpts;
|
|
@@ -6378,15 +6432,16 @@ const renderType = 'body';
|
|
|
6378
6432
|
const {
|
|
6379
6433
|
actived
|
|
6380
6434
|
} = editStore;
|
|
6381
|
-
const rowRest = fullAllDataRowIdData[rowid];
|
|
6435
|
+
const rowRest = fullAllDataRowIdData[rowid] || {};
|
|
6382
6436
|
const colid = column.id;
|
|
6437
|
+
const colRest = fullColumnIdData[colid] || {};
|
|
6383
6438
|
const renderOpts = editRender || cellRender;
|
|
6384
6439
|
const compConf = renderOpts ? body_renderer.get(renderOpts.name) : null;
|
|
6385
6440
|
const compCellClassName = compConf ? compConf.tableCellClassName || compConf.cellClassName : null;
|
|
6386
6441
|
const compCellStyle = compConf ? compConf.tableCellStyle || compConf.cellStyle : '';
|
|
6387
6442
|
const showAllTip = tooltipOpts.showAll;
|
|
6388
|
-
const columnIndex =
|
|
6389
|
-
const _columnIndex =
|
|
6443
|
+
const columnIndex = colRest.index;
|
|
6444
|
+
const _columnIndex = colRest._index;
|
|
6390
6445
|
const isEdit = isEnableConf(editRender);
|
|
6391
6446
|
const resizeHeight = resizeHeightFlag ? rowRest.resizeHeight : 0;
|
|
6392
6447
|
let fixedHiddenColumn = fixedType ? column.fixed !== fixedType : column.fixed && overflowX;
|
|
@@ -6410,7 +6465,7 @@ const renderType = 'body';
|
|
|
6410
6465
|
};
|
|
6411
6466
|
const cellParams = {
|
|
6412
6467
|
$table: $xeTable,
|
|
6413
|
-
$grid: $
|
|
6468
|
+
$grid: $xeGrid,
|
|
6414
6469
|
isEdit: false,
|
|
6415
6470
|
seq,
|
|
6416
6471
|
rowid,
|
|
@@ -6549,6 +6604,18 @@ const renderType = 'body';
|
|
|
6549
6604
|
}
|
|
6550
6605
|
}
|
|
6551
6606
|
const tcStyle = {};
|
|
6607
|
+
if (hasEllipsis && resizeWidthFlag) {
|
|
6608
|
+
let tsColspan = tdAttrs.colspan || 0;
|
|
6609
|
+
if (tsColspan > 1) {
|
|
6610
|
+
for (let index = 1; index < tsColspan; index++) {
|
|
6611
|
+
const nextColumn = visibleColumn[columnIndex + index];
|
|
6612
|
+
if (nextColumn) {
|
|
6613
|
+
tsColspan += nextColumn.renderWidth;
|
|
6614
|
+
}
|
|
6615
|
+
}
|
|
6616
|
+
}
|
|
6617
|
+
tcStyle.width = `${column.renderWidth - cellOffsetWidth * tsColspan}px`;
|
|
6618
|
+
}
|
|
6552
6619
|
if (scrollYLoad || hasEllipsis || isCsHeight || isRsHeight) {
|
|
6553
6620
|
tcStyle.height = `${cellHeight}px`;
|
|
6554
6621
|
} else {
|
|
@@ -6567,7 +6634,7 @@ const renderType = 'body';
|
|
|
6567
6634
|
}));
|
|
6568
6635
|
} else {
|
|
6569
6636
|
// 渲染单元格
|
|
6570
|
-
tdVNs.push(...renderLine(cellParams, cellHeight), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
6637
|
+
tdVNs.push(...renderLine(rowid, cellParams, cellHeight), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
6571
6638
|
key: 'tc',
|
|
6572
6639
|
class: ['vxe-cell', {
|
|
6573
6640
|
'c--title': showTitle,
|
|
@@ -6665,20 +6732,23 @@ const renderType = 'body';
|
|
|
6665
6732
|
} = tableProps;
|
|
6666
6733
|
const {
|
|
6667
6734
|
hasFixedColumn,
|
|
6668
|
-
|
|
6735
|
+
treeExpandedFlag,
|
|
6669
6736
|
isColLoading,
|
|
6670
6737
|
scrollXLoad,
|
|
6671
6738
|
scrollYLoad,
|
|
6672
6739
|
isAllOverflow,
|
|
6673
|
-
|
|
6740
|
+
rowExpandedFlag,
|
|
6674
6741
|
expandColumn,
|
|
6675
6742
|
selectRadioRow,
|
|
6676
|
-
|
|
6743
|
+
pendingRowFlag,
|
|
6677
6744
|
isDragColMove,
|
|
6678
6745
|
rowExpandHeightFlag
|
|
6679
6746
|
} = tableReactData;
|
|
6680
6747
|
const {
|
|
6681
|
-
fullAllDataRowIdData
|
|
6748
|
+
fullAllDataRowIdData,
|
|
6749
|
+
treeExpandedMaps,
|
|
6750
|
+
pendingRowMaps,
|
|
6751
|
+
rowExpandedMaps
|
|
6682
6752
|
} = tableInternalData;
|
|
6683
6753
|
const checkboxOpts = computeCheckboxOpts.value;
|
|
6684
6754
|
const radioOpts = computeRadioOpts.value;
|
|
@@ -6693,6 +6763,9 @@ const renderType = 'body';
|
|
|
6693
6763
|
} = treeOpts;
|
|
6694
6764
|
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
6695
6765
|
const rows = [];
|
|
6766
|
+
const {
|
|
6767
|
+
handleGetRowId
|
|
6768
|
+
} = createHandleGetRowId($xeTable);
|
|
6696
6769
|
tableData.forEach((row, $rowIndex) => {
|
|
6697
6770
|
const trOn = {};
|
|
6698
6771
|
let rowIndex = $rowIndex;
|
|
@@ -6716,8 +6789,8 @@ const renderType = 'body';
|
|
|
6716
6789
|
$xeTable.clearHoverRow();
|
|
6717
6790
|
};
|
|
6718
6791
|
}
|
|
6719
|
-
const rowid =
|
|
6720
|
-
const rowRest = fullAllDataRowIdData[rowid];
|
|
6792
|
+
const rowid = handleGetRowId(row);
|
|
6793
|
+
const rowRest = fullAllDataRowIdData[rowid] || {};
|
|
6721
6794
|
let rowLevel = 0;
|
|
6722
6795
|
let seq = -1;
|
|
6723
6796
|
let _rowIndex = 0;
|
|
@@ -6743,7 +6816,7 @@ const renderType = 'body';
|
|
|
6743
6816
|
_rowIndex
|
|
6744
6817
|
};
|
|
6745
6818
|
// 行是否被展开
|
|
6746
|
-
const isExpandRow = expandColumn && !!rowExpandedMaps[rowid];
|
|
6819
|
+
const isExpandRow = expandColumn && !!rowExpandedFlag && !!rowExpandedMaps[rowid];
|
|
6747
6820
|
// 树节点是否被展开
|
|
6748
6821
|
let isExpandTree = false;
|
|
6749
6822
|
let rowChildren = [];
|
|
@@ -6753,7 +6826,7 @@ const renderType = 'body';
|
|
|
6753
6826
|
}
|
|
6754
6827
|
if (treeConfig && !scrollYLoad && !transform) {
|
|
6755
6828
|
rowChildren = row[childrenField];
|
|
6756
|
-
isExpandTree = rowChildren && rowChildren.length > 0 && !!treeExpandedMaps[rowid];
|
|
6829
|
+
isExpandTree = !!treeExpandedFlag && rowChildren && rowChildren.length > 0 && !!treeExpandedMaps[rowid];
|
|
6757
6830
|
}
|
|
6758
6831
|
// 拖拽行事件
|
|
6759
6832
|
if (rowOpts.drag && (!treeConfig || transform)) {
|
|
@@ -6769,7 +6842,7 @@ const renderType = 'body';
|
|
|
6769
6842
|
'row--new': isNewRow && (editOpts.showStatus || editOpts.showInsertStatus),
|
|
6770
6843
|
'row--radio': radioOpts.highlight && $xeTable.eqRow(selectRadioRow, row),
|
|
6771
6844
|
'row--checked': checkboxOpts.highlight && $xeTable.isCheckedByCheckboxRow(row),
|
|
6772
|
-
'row--pending': !!pendingRowMaps[rowid]
|
|
6845
|
+
'row--pending': !!pendingRowFlag && !!pendingRowMaps[rowid]
|
|
6773
6846
|
}, getPropClass(rowClassName, params)];
|
|
6774
6847
|
const tdVNs = tableColumn.map((column, $columnIndex) => {
|
|
6775
6848
|
return renderTdColumn(seq, rowid, fixedType, isOptimizeMode, rowLevel, row, rowIndex, $rowIndex, _rowIndex, column, $columnIndex, tableColumn, tableData);
|
|
@@ -6901,6 +6974,7 @@ const renderType = 'body';
|
|
|
6901
6974
|
const {
|
|
6902
6975
|
slots
|
|
6903
6976
|
} = tableContext;
|
|
6977
|
+
const $xeGrid = $xeTable.xeGrid;
|
|
6904
6978
|
const {
|
|
6905
6979
|
fixedColumn,
|
|
6906
6980
|
fixedType,
|
|
@@ -6946,7 +7020,7 @@ const renderType = 'body';
|
|
|
6946
7020
|
isOptimizeMode = true;
|
|
6947
7021
|
}
|
|
6948
7022
|
}
|
|
6949
|
-
if (fixedType || !overflowX) {
|
|
7023
|
+
if (!isColLoading && (fixedType || !overflowX)) {
|
|
6950
7024
|
renderColumnList = visibleColumn;
|
|
6951
7025
|
}
|
|
6952
7026
|
if (fixedType) {
|
|
@@ -7005,7 +7079,7 @@ const renderType = 'body';
|
|
|
7005
7079
|
if (emptySlot) {
|
|
7006
7080
|
emptyContent = $xeTable.callSlot(emptySlot, {
|
|
7007
7081
|
$table: $xeTable,
|
|
7008
|
-
$grid: $
|
|
7082
|
+
$grid: $xeGrid
|
|
7009
7083
|
});
|
|
7010
7084
|
} else {
|
|
7011
7085
|
const compConf = emptyOpts.name ? body_renderer.get(emptyOpts.name) : null;
|
|
@@ -7053,7 +7127,10 @@ const renderType = 'body';
|
|
|
7053
7127
|
}, renderColumnList.map((column, $columnIndex) => {
|
|
7054
7128
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('col', {
|
|
7055
7129
|
name: column.id,
|
|
7056
|
-
key: $columnIndex
|
|
7130
|
+
key: $columnIndex,
|
|
7131
|
+
style: {
|
|
7132
|
+
width: `${column.renderWidth}px`
|
|
7133
|
+
}
|
|
7057
7134
|
});
|
|
7058
7135
|
})),
|
|
7059
7136
|
/**
|
|
@@ -7160,6 +7237,7 @@ const header_renderType = 'header';
|
|
|
7160
7237
|
headerColumn.value = isGroup ? convertHeaderColumnToRows(props.tableGroupColumn) : [];
|
|
7161
7238
|
};
|
|
7162
7239
|
const renderRows = (isGroup, isOptimizeMode, cols, $rowIndex) => {
|
|
7240
|
+
const $xeGrid = $xeTable.xeGrid;
|
|
7163
7241
|
const {
|
|
7164
7242
|
fixedType
|
|
7165
7243
|
} = props;
|
|
@@ -7181,6 +7259,7 @@ const header_renderType = 'header';
|
|
|
7181
7259
|
overflowX
|
|
7182
7260
|
} = tableReactData;
|
|
7183
7261
|
const {
|
|
7262
|
+
fullColumnIdData,
|
|
7184
7263
|
scrollXStore
|
|
7185
7264
|
} = tableInternalData;
|
|
7186
7265
|
const columnOpts = computeColumnOpts.value;
|
|
@@ -7206,6 +7285,7 @@ const header_renderType = 'header';
|
|
|
7206
7285
|
cellRender
|
|
7207
7286
|
} = column;
|
|
7208
7287
|
const colid = column.id;
|
|
7288
|
+
const colRest = fullColumnIdData[colid] || {};
|
|
7209
7289
|
const renderOpts = editRender || cellRender;
|
|
7210
7290
|
const compConf = renderOpts ? header_renderer.get(renderOpts.name) : null;
|
|
7211
7291
|
const isColGroup = column.children && column.children.length;
|
|
@@ -7223,11 +7303,11 @@ const header_renderType = 'header';
|
|
|
7223
7303
|
firstFilterOption = filters[0];
|
|
7224
7304
|
hasFilter = filters.some(item => item.checked);
|
|
7225
7305
|
}
|
|
7226
|
-
const columnIndex =
|
|
7227
|
-
const _columnIndex =
|
|
7306
|
+
const columnIndex = colRest.index;
|
|
7307
|
+
const _columnIndex = colRest._index;
|
|
7228
7308
|
const cellParams = {
|
|
7229
7309
|
$table: $xeTable,
|
|
7230
|
-
$grid: $
|
|
7310
|
+
$grid: $xeGrid,
|
|
7231
7311
|
$rowIndex,
|
|
7232
7312
|
column,
|
|
7233
7313
|
columnIndex,
|
|
@@ -7383,6 +7463,7 @@ const header_renderType = 'header';
|
|
|
7383
7463
|
} = tableProps;
|
|
7384
7464
|
const {
|
|
7385
7465
|
isGroup,
|
|
7466
|
+
isColLoading,
|
|
7386
7467
|
overflowX,
|
|
7387
7468
|
scrollXLoad,
|
|
7388
7469
|
scrollYLoad,
|
|
@@ -7407,7 +7488,7 @@ const header_renderType = 'header';
|
|
|
7407
7488
|
isOptimizeMode = true;
|
|
7408
7489
|
}
|
|
7409
7490
|
}
|
|
7410
|
-
if (fixedType || !overflowX) {
|
|
7491
|
+
if (!isColLoading && (fixedType || !overflowX)) {
|
|
7411
7492
|
renderColumnList = visibleColumn;
|
|
7412
7493
|
}
|
|
7413
7494
|
if (fixedType) {
|
|
@@ -7473,7 +7554,10 @@ const header_renderType = 'header';
|
|
|
7473
7554
|
}, renderColumnList.map((column, $columnIndex) => {
|
|
7474
7555
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('col', {
|
|
7475
7556
|
name: column.id,
|
|
7476
|
-
key: $columnIndex
|
|
7557
|
+
key: $columnIndex,
|
|
7558
|
+
style: {
|
|
7559
|
+
width: `${column.renderWidth}px`
|
|
7560
|
+
}
|
|
7477
7561
|
});
|
|
7478
7562
|
})),
|
|
7479
7563
|
/**
|
|
@@ -7622,6 +7706,7 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
|
|
|
7622
7706
|
const refFooterTFoot = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
|
|
7623
7707
|
const refFooterXSpace = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
|
|
7624
7708
|
const renderRows = (tableColumn, footerTableData, row, $rowIndex, _rowIndex) => {
|
|
7709
|
+
const $xeGrid = $xeTable.xeGrid;
|
|
7625
7710
|
const {
|
|
7626
7711
|
fixedType
|
|
7627
7712
|
} = props;
|
|
@@ -7644,6 +7729,7 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
|
|
|
7644
7729
|
mergeFooterList
|
|
7645
7730
|
} = tableReactData;
|
|
7646
7731
|
const {
|
|
7732
|
+
fullColumnIdData,
|
|
7647
7733
|
scrollXStore
|
|
7648
7734
|
} = tableInternalData;
|
|
7649
7735
|
const tooltipOpts = computeTooltipOpts.value;
|
|
@@ -7667,6 +7753,7 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
|
|
|
7667
7753
|
cellRender
|
|
7668
7754
|
} = column;
|
|
7669
7755
|
const colid = column.id;
|
|
7756
|
+
const colRest = fullColumnIdData[colid] || {};
|
|
7670
7757
|
const renderOpts = editRender || cellRender;
|
|
7671
7758
|
const compConf = renderOpts ? footer_renderer.get(renderOpts.name) : null;
|
|
7672
7759
|
const showAllTip = tooltipOpts.showAll;
|
|
@@ -7684,12 +7771,12 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
|
|
|
7684
7771
|
colid
|
|
7685
7772
|
};
|
|
7686
7773
|
const tfOns = {};
|
|
7687
|
-
const columnIndex =
|
|
7688
|
-
const _columnIndex =
|
|
7774
|
+
const columnIndex = colRest.index;
|
|
7775
|
+
const _columnIndex = colRest._index;
|
|
7689
7776
|
const itemIndex = _columnIndex;
|
|
7690
7777
|
const cellParams = {
|
|
7691
7778
|
$table: $xeTable,
|
|
7692
|
-
$grid: $
|
|
7779
|
+
$grid: $xeGrid,
|
|
7693
7780
|
row,
|
|
7694
7781
|
rowIndex: _rowIndex,
|
|
7695
7782
|
_rowIndex,
|
|
@@ -7883,6 +7970,7 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
|
|
|
7883
7970
|
} = tableInternalData;
|
|
7884
7971
|
const {
|
|
7885
7972
|
isGroup,
|
|
7973
|
+
isColLoading,
|
|
7886
7974
|
overflowX,
|
|
7887
7975
|
scrollXLoad,
|
|
7888
7976
|
scrollYLoad,
|
|
@@ -7898,7 +7986,7 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
|
|
|
7898
7986
|
isOptimizeMode = true;
|
|
7899
7987
|
}
|
|
7900
7988
|
}
|
|
7901
|
-
if (fixedType || !overflowX) {
|
|
7989
|
+
if (!isColLoading && (fixedType || !overflowX)) {
|
|
7902
7990
|
renderColumnList = visibleColumn;
|
|
7903
7991
|
}
|
|
7904
7992
|
if (fixedType) {
|
|
@@ -7959,7 +8047,10 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
|
|
|
7959
8047
|
}, renderColumnList.map((column, $columnIndex) => {
|
|
7960
8048
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('col', {
|
|
7961
8049
|
name: column.id,
|
|
7962
|
-
key: $columnIndex
|
|
8050
|
+
key: $columnIndex,
|
|
8051
|
+
style: {
|
|
8052
|
+
width: `${column.renderWidth}px`
|
|
8053
|
+
}
|
|
7963
8054
|
});
|
|
7964
8055
|
})),
|
|
7965
8056
|
/**
|
|
@@ -8191,6 +8282,8 @@ const {
|
|
|
8191
8282
|
resizeConfig: Object,
|
|
8192
8283
|
// 列配置信息
|
|
8193
8284
|
columnConfig: Object,
|
|
8285
|
+
// 当前列配置信息
|
|
8286
|
+
currentColumnConfig: Object,
|
|
8194
8287
|
// 单元格配置信息
|
|
8195
8288
|
cellConfig: Object,
|
|
8196
8289
|
// 表头单元格配置信息
|
|
@@ -8199,6 +8292,8 @@ const {
|
|
|
8199
8292
|
footerCellConfig: Object,
|
|
8200
8293
|
// 行配置信息
|
|
8201
8294
|
rowConfig: Object,
|
|
8295
|
+
// 当前行配置信息
|
|
8296
|
+
currentRowConfig: Object,
|
|
8202
8297
|
// 已废弃,被 rowDragConfig 替换
|
|
8203
8298
|
dragConfig: Object,
|
|
8204
8299
|
// 行拖拽排序配置项
|
|
@@ -8784,6 +8879,7 @@ const {
|
|
|
8784
8879
|
}, panel_getI18n('vxe.custom.cstmDragTarget', [dragCol && dragCol.type !== 'html' ? dragCol.getTitle() : '']))])])]);
|
|
8785
8880
|
};
|
|
8786
8881
|
const renderSimplePanel = () => {
|
|
8882
|
+
const $xeGrid = $xeTable.xeGrid;
|
|
8787
8883
|
const {
|
|
8788
8884
|
customStore
|
|
8789
8885
|
} = props;
|
|
@@ -8829,7 +8925,7 @@ const {
|
|
|
8829
8925
|
}
|
|
8830
8926
|
const params = {
|
|
8831
8927
|
$table: $xeTable,
|
|
8832
|
-
$grid: $
|
|
8928
|
+
$grid: $xeGrid,
|
|
8833
8929
|
columns: customColumnList,
|
|
8834
8930
|
isAllChecked,
|
|
8835
8931
|
isAllIndeterminate,
|
|
@@ -8986,6 +9082,7 @@ const {
|
|
|
8986
9082
|
}) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)()])]) : null] : []);
|
|
8987
9083
|
};
|
|
8988
9084
|
const renderPopupPanel = () => {
|
|
9085
|
+
const $xeGrid = $xeTable.xeGrid;
|
|
8989
9086
|
const {
|
|
8990
9087
|
customStore
|
|
8991
9088
|
} = props;
|
|
@@ -9038,7 +9135,7 @@ const {
|
|
|
9038
9135
|
const isAllIndeterminate = customStore.isIndeterminate;
|
|
9039
9136
|
const params = {
|
|
9040
9137
|
$table: $xeTable,
|
|
9041
|
-
$grid: $
|
|
9138
|
+
$grid: $xeGrid,
|
|
9042
9139
|
columns: customColumnList,
|
|
9043
9140
|
isAllChecked,
|
|
9044
9141
|
isAllIndeterminate,
|
|
@@ -9422,11 +9519,17 @@ const {
|
|
|
9422
9519
|
const rtFilter = compConf ? compConf.renderTableFilter || compConf.renderFilter : null;
|
|
9423
9520
|
if (filterSlot) {
|
|
9424
9521
|
return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
9425
|
-
class: 'vxe-table--filter-template'
|
|
9522
|
+
class: 'vxe-table--filter-template',
|
|
9523
|
+
style: maxHeight ? {
|
|
9524
|
+
maxHeight: `${maxHeight}px`
|
|
9525
|
+
} : {}
|
|
9426
9526
|
}, $xeTable.callSlot(filterSlot, params))];
|
|
9427
9527
|
} else if (rtFilter) {
|
|
9428
9528
|
return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
9429
|
-
class: 'vxe-table--filter-template'
|
|
9529
|
+
class: 'vxe-table--filter-template',
|
|
9530
|
+
style: maxHeight ? {
|
|
9531
|
+
maxHeight: `${maxHeight}px`
|
|
9532
|
+
} : {}
|
|
9430
9533
|
}, getSlotVNs(rtFilter(filterRender, params)))];
|
|
9431
9534
|
}
|
|
9432
9535
|
const isAllChecked = multiple ? filterStore.isAllSelected : !filterStore.options.some(item => item._checked);
|
|
@@ -9531,6 +9634,8 @@ const {
|
|
|
9531
9634
|
return renderVN;
|
|
9532
9635
|
}
|
|
9533
9636
|
}));
|
|
9637
|
+
// EXTERNAL MODULE: ./node_modules/core-js/modules/esnext.iterator.find.js
|
|
9638
|
+
var esnext_iterator_find = __webpack_require__(2577);
|
|
9534
9639
|
;// ./packages/table/module/export/import-panel.ts
|
|
9535
9640
|
|
|
9536
9641
|
|
|
@@ -9641,6 +9746,7 @@ const {
|
|
|
9641
9746
|
});
|
|
9642
9747
|
};
|
|
9643
9748
|
const renderVN = () => {
|
|
9749
|
+
const $xeGrid = $xeTable.xeGrid;
|
|
9644
9750
|
const {
|
|
9645
9751
|
defaultOptions,
|
|
9646
9752
|
storeData
|
|
@@ -9677,7 +9783,7 @@ const {
|
|
|
9677
9783
|
default: () => {
|
|
9678
9784
|
const params = {
|
|
9679
9785
|
$table: $xeTable,
|
|
9680
|
-
$grid: $
|
|
9786
|
+
$grid: $xeGrid,
|
|
9681
9787
|
options: defaultOptions,
|
|
9682
9788
|
params: defaultOptions.params
|
|
9683
9789
|
};
|
|
@@ -9715,7 +9821,7 @@ const {
|
|
|
9715
9821
|
footer() {
|
|
9716
9822
|
const params = {
|
|
9717
9823
|
$table: $xeTable,
|
|
9718
|
-
$grid: $
|
|
9824
|
+
$grid: $xeGrid,
|
|
9719
9825
|
options: defaultOptions,
|
|
9720
9826
|
params: defaultOptions.params
|
|
9721
9827
|
};
|
|
@@ -9936,6 +10042,7 @@ const {
|
|
|
9936
10042
|
}
|
|
9937
10043
|
};
|
|
9938
10044
|
const renderVN = () => {
|
|
10045
|
+
const $xeGrid = $xeTable.xeGrid;
|
|
9939
10046
|
const {
|
|
9940
10047
|
defaultOptions,
|
|
9941
10048
|
storeData
|
|
@@ -10021,7 +10128,7 @@ const {
|
|
|
10021
10128
|
default: () => {
|
|
10022
10129
|
const params = {
|
|
10023
10130
|
$table: $xeTable,
|
|
10024
|
-
$grid: $
|
|
10131
|
+
$grid: $xeGrid,
|
|
10025
10132
|
options: defaultOptions,
|
|
10026
10133
|
columns,
|
|
10027
10134
|
params: defaultOptions.params
|
|
@@ -10162,7 +10269,7 @@ const {
|
|
|
10162
10269
|
footer() {
|
|
10163
10270
|
const params = {
|
|
10164
10271
|
$table: $xeTable,
|
|
10165
|
-
$grid: $
|
|
10272
|
+
$grid: $xeGrid,
|
|
10166
10273
|
options: defaultOptions,
|
|
10167
10274
|
columns,
|
|
10168
10275
|
params: defaultOptions.params
|
|
@@ -10332,7 +10439,7 @@ const {
|
|
|
10332
10439
|
}
|
|
10333
10440
|
}));
|
|
10334
10441
|
;// ./packages/table/src/table.ts
|
|
10335
|
-
const{getConfig: table_getConfig,getIcon: table_getIcon,getI18n: table_getI18n,renderer: table_renderer,formats: table_formats,createEvent,globalResize: table_globalResize,interceptor: table_interceptor,hooks: table_hooks,globalEvents: table_globalEvents,GLOBAL_EVENT_KEYS,useFns,renderEmptyElement: table_renderEmptyElement}=core_.VxeUI;const customStorageKey='VXE_CUSTOM_STORE';const maxYHeight=5e6;const maxXWidth=5e6;/* harmony default export */ var table = ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.defineComponent)({name:'VxeTable',props:src_props,emits:emits,setup(props,context){const{slots,emit}=context;const xID=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();// 使用已安装的组件,如果未安装则不渲染
|
|
10442
|
+
const{getConfig: table_getConfig,getIcon: table_getIcon,getI18n: table_getI18n,renderer: table_renderer,formats: table_formats,createEvent,globalResize: table_globalResize,interceptor: table_interceptor,hooks: table_hooks,globalEvents: table_globalEvents,GLOBAL_EVENT_KEYS,useFns,renderEmptyElement: table_renderEmptyElement}=core_.VxeUI;const supportMaxRow=5e6;const customStorageKey='VXE_CUSTOM_STORE';const maxYHeight=5e6;const maxXWidth=5e6;/* harmony default export */ var table = ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.defineComponent)({name:'VxeTable',props:src_props,emits:emits,setup(props,context){const{slots,emit}=context;const xID=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();// 使用已安装的组件,如果未安装则不渲染
|
|
10336
10443
|
const VxeUILoadingComponent=core_.VxeUI.getComponent('VxeLoading');const VxeUITooltipComponent=core_.VxeUI.getComponent('VxeTooltip');const $xeTabs=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.inject)('$xeTabs',null);const{computeSize}=useFns.useSize(props);const reactData=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({// 低性能的静态列
|
|
10337
10444
|
staticColumns:[],// 渲染的列分组
|
|
10338
10445
|
tableGroupColumn:[],// 可视区渲染的列
|
|
@@ -10349,24 +10456,17 @@ rowHeight:0,// 表格父容器的高度
|
|
|
10349
10456
|
parentHeight:0,// 是否使用分组表头
|
|
10350
10457
|
isGroup:false,isAllOverflow:false,// 复选框属性,是否全选
|
|
10351
10458
|
isAllSelected:false,// 复选框属性,有选中且非全选状态
|
|
10352
|
-
isIndeterminate:false,//
|
|
10353
|
-
selectCheckboxMaps:{},// 当前行
|
|
10459
|
+
isIndeterminate:false,// 当前行
|
|
10354
10460
|
currentRow:null,// 单选框属性,选中列
|
|
10355
10461
|
currentColumn:null,// 单选框属性,选中行
|
|
10356
10462
|
selectRadioRow:null,// 表尾合计数据
|
|
10357
10463
|
footerTableData:[],// 展开列信息
|
|
10358
10464
|
expandColumn:null,// 树节点列信息
|
|
10359
|
-
treeNodeColumn:null,hasFixedColumn:false,//
|
|
10360
|
-
rowExpandedMaps:{},// 懒加载中的展开行的集合
|
|
10361
|
-
rowExpandLazyLoadedMaps:{},// 已展开树节点集合
|
|
10362
|
-
treeExpandedMaps:{},// 懒加载中的树节点的集合
|
|
10363
|
-
treeExpandLazyLoadedMaps:{},// 树节点不确定状态的集合
|
|
10364
|
-
treeIndeterminateMaps:{},// 合并单元格的对象集
|
|
10465
|
+
treeNodeColumn:null,hasFixedColumn:false,// 合并单元格的对象集
|
|
10365
10466
|
mergeList:[],// 合并表尾数据的对象集
|
|
10366
10467
|
mergeFooterList:[],// 刷新列标识,当列筛选被改变时,触发表格刷新数据
|
|
10367
10468
|
upDataFlag:0,// 刷新列标识,当列的特定属性被改变时,触发表格刷新列
|
|
10368
|
-
reColumnFlag:0,//
|
|
10369
|
-
pendingRowMaps:{},// 初始化标识
|
|
10469
|
+
reColumnFlag:0,// 初始化标识
|
|
10370
10470
|
initStore:{filter:false,import:false,export:false,custom:false},// 自定义列相关的信息
|
|
10371
10471
|
customStore:{btnEl:null,isAll:false,isIndeterminate:false,activeBtn:false,activeWrapper:false,visible:false,maxHeight:0,oldSortMaps:{},oldFixedMaps:{},oldVisibleMaps:{}},customColumnList:[],// 当前选中的筛选列
|
|
10372
10472
|
filterStore:{isAllSelected:false,isIndeterminate:false,style:null,options:[],column:null,multiple:false,visible:false,maxHeight:null},// 存放列相关的信息
|
|
@@ -10380,7 +10480,7 @@ focused:{row:null,column:null},insertMaps:{},removeMaps:{}},// 存放 tooltip
|
|
|
10380
10480
|
tooltipStore:{row:null,column:null,content:null,visible:false,currOpts:{}},// 存放数据校验相关信息
|
|
10381
10481
|
validStore:{visible:false},validErrorMaps:{},// 导入相关信息
|
|
10382
10482
|
importStore:{inited:false,file:null,type:'',modeList:[],typeList:[],filename:'',visible:false},importParams:{mode:'',types:null,message:true},// 导出相关信息
|
|
10383
|
-
exportStore:{inited:false,name:'',modeList:[],typeList:[],columns:[],isPrint:false,hasFooter:false,hasMerge:false,hasTree:false,hasColgroup:false,visible:false},exportParams:{filename:'',sheetName:'',mode:'',type:'',isColgroup:false,isMerge:false,isAllExpand:false,useStyle:false,original:false,message:true,isHeader:false,isFooter:false},rowHeightStore:{default:48,medium:44,small:40,mini:36},scrollVMLoading:false,scrollYHeight:0,scrollYTop:0,isScrollYBig:false,scrollXLeft:0,scrollXWidth:0,isScrollXBig:false,rowExpandHeightFlag:1,calcCellHeightFlag:1,resizeHeightFlag:1,isCustomStatus:false,isDragRowMove:false,dragRow:null,isDragColMove:false,dragCol:null,dragTipText:'',isDragResize:false,isRowLoading:false,isColLoading:false});const internalData={tZindex:0,elemStore:{},// 存放横向 X 虚拟滚动相关的信息
|
|
10483
|
+
exportStore:{inited:false,name:'',modeList:[],typeList:[],columns:[],isPrint:false,hasFooter:false,hasMerge:false,hasTree:false,hasColgroup:false,visible:false},exportParams:{filename:'',sheetName:'',mode:'',type:'',isColgroup:false,isMerge:false,isAllExpand:false,useStyle:false,original:false,message:true,isHeader:false,isFooter:false},rowExpandedFlag:1,treeExpandedFlag:1,updateCheckboxFlag:1,pendingRowFlag:1,rowHeightStore:{default:48,medium:44,small:40,mini:36},scrollVMLoading:false,scrollYHeight:0,scrollYTop:0,isScrollYBig:false,scrollXLeft:0,scrollXWidth:0,isScrollXBig:false,rowExpandHeightFlag:1,calcCellHeightFlag:1,resizeHeightFlag:1,resizeWidthFlag:1,isCustomStatus:false,isDragRowMove:false,dragRow:null,isDragColMove:false,dragCol:null,dragTipText:'',isDragResize:false,isRowLoading:false,isColLoading:false});const internalData={tZindex:0,elemStore:{},// 存放横向 X 虚拟滚动相关的信息
|
|
10384
10484
|
scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},// 存放纵向 Y 虚拟滚动相关信息
|
|
10385
10485
|
scrollYStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},// 表格宽度
|
|
10386
10486
|
tableWidth:0,// 表格高度
|
|
@@ -10402,15 +10502,21 @@ tableFullColumn:[],// 渲染所有列
|
|
|
10402
10502
|
visibleColumn:[],// 总的缓存数据集
|
|
10403
10503
|
fullAllDataRowIdData:{},// 渲染中缓存数据
|
|
10404
10504
|
sourceDataRowIdData:{},fullDataRowIdData:{},fullColumnIdData:{},fullColumnFieldData:{},// prevDragRow: null,
|
|
10405
|
-
|
|
10505
|
+
// 已展开的行集合
|
|
10506
|
+
rowExpandedMaps:{},// 懒加载中的展开行的集合
|
|
10507
|
+
rowExpandLazyLoadedMaps:{},// 已展开树节点集合
|
|
10508
|
+
treeExpandedMaps:{},// 懒加载中的树节点的集合
|
|
10509
|
+
treeExpandLazyLoadedMaps:{},// 复选框属性,已选中的行集合
|
|
10510
|
+
selectCheckboxMaps:{},// 已标记的对象集
|
|
10511
|
+
pendingRowMaps:{},inited:false,tooltipTimeout:null,initStatus:false,isActivated:false};let tableMethods={};let tablePrivateMethods={};const refElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refVarElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTooltip=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refCommTooltip=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refValidTooltip=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableMenu=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableFilter=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableCustom=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableViewportElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableHeader=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableBody=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableFooter=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableLeftHeader=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableLeftBody=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableLeftFooter=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableRightHeader=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableRightBody=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableRightFooter=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refLeftContainer=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refRightContainer=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refColResizeBar=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refRowResizeBar=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refEmptyPlaceholder=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refDragTipElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refDragRowLineElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refDragColLineElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refRowExpandElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refRowExpandYSpaceElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollXVirtualElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollYVirtualElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollXHandleElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollXLeftCornerElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollXRightCornerElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollYHandleElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollYTopCornerElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollXWrapperElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollYWrapperElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollYBottomCornerElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollXSpaceElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollYSpaceElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const $xeGrid=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.inject)('$xeGrid',null);let $xeToolbar;const computeTableId=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{id}=props;if(id){if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(id)){return`${id({$table:$xeTable,$grid:$xeGrid})||''}`;}return`${id}`;}return'';});const computeValidOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.validConfig,props.validConfig);});/**
|
|
10406
10512
|
* @deprecated
|
|
10407
10513
|
*/const computeSXOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const virtualXOpts=computeVirtualXOpts.value;return virtualXOpts;});const computeScrollXThreshold=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const sXOpts=computeSXOpts.value;const{threshold}=sXOpts;if(threshold){return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(threshold);}return 0;});/**
|
|
10408
10514
|
* @deprecated
|
|
10409
|
-
*/const computeSYOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const virtualYOpts=computeVirtualYOpts.value;return virtualYOpts;});const computeVirtualXOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.scrollX,table_getConfig().table.virtualXConfig,props.scrollX,props.virtualXConfig);});const computeVirtualYOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.scrollY,table_getConfig().table.virtualYConfig,props.scrollY,props.virtualYConfig);});const computeScrollbarOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.scrollbarConfig,props.scrollbarConfig);});const computeScrollbarXToTop=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const scrollbarOpts=computeScrollbarOpts.value;return!!(scrollbarOpts.x&&scrollbarOpts.x.position==='top');});const computeScrollbarYToLeft=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const scrollbarOpts=computeScrollbarOpts.value;return!!(scrollbarOpts.y&&scrollbarOpts.y.position==='left');});const computeScrollYThreshold=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const sYOpts=computeSYOpts.value;const{threshold}=sYOpts;if(threshold){return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(threshold);}return 0;});const computeRowHeightMaps=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return reactData.rowHeightStore;});const computeDefaultRowHeight=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const vSize=computeSize.value;const rowHeightMaps=computeRowHeightMaps.value;return rowHeightMaps[vSize||'default']||18;});const computeColumnOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.columnConfig,props.columnConfig);});const computeCellOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.cellConfig,props.cellConfig);});const computeHeaderCellOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.headerCellConfig,props.headerCellConfig);});const computeFooterCellOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.footerCellConfig,props.footerCellConfig);});const computeRowOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.rowConfig,props.rowConfig);});const computeRowDragOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.rowDragConfig,props.rowDragConfig);});const computeColumnDragOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.columnDragConfig,props.columnDragConfig);});const computeResizeOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.resizeConfig,props.resizeConfig);});const computeResizableOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.resizableConfig,props.resizableConfig);});const computeSeqOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({startIndex:0},table_getConfig().table.seqConfig,props.seqConfig);});const computeRadioOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.radioConfig,props.radioConfig);});const computeCheckboxOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.checkboxConfig,props.checkboxConfig);});const computeTooltipOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().tooltip,table_getConfig().table.tooltipConfig,props.tooltipConfig);});const computeTableTipConfig=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{tooltipStore}=reactData;const tooltipOpts=computeTooltipOpts.value;return Object.assign({},tooltipOpts,tooltipStore.currOpts);});const computeValidTipConfig=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const tooltipOpts=computeTooltipOpts.value;return Object.assign({},tooltipOpts);});const computeEditOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.editConfig,props.editConfig);});const computeSortOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({orders:['asc','desc',null]},table_getConfig().table.sortConfig,props.sortConfig);});const computeFilterOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.filterConfig,props.filterConfig);});const computeMouseOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.mouseConfig,props.mouseConfig);});const computeAreaOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.areaConfig,props.areaConfig);});const computeKeyboardOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.keyboardConfig,props.keyboardConfig);});const computeClipOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.clipConfig,props.clipConfig);});const computeFNROpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.fnrConfig,props.fnrConfig);});const computeMenuOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.menuConfig,props.menuConfig);});const computeLeftFixedWidth=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{columnStore}=reactData;const{leftList}=columnStore;let leftWidth=0;for(let i=0;i<leftList.length;i++){const column=leftList[i];leftWidth+=column.renderWidth;}return leftWidth;});const computeRightFixedWidth=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{columnStore}=reactData;const{rightList}=columnStore;let leftWidth=0;for(let i=0;i<rightList.length;i++){const column=rightList[i];leftWidth+=column.renderWidth;}return leftWidth;});const computeHeaderMenu=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const menuOpts=computeMenuOpts.value;const headerOpts=menuOpts.header;return headerOpts&&headerOpts.options?headerOpts.options:[];});const computeBodyMenu=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const menuOpts=computeMenuOpts.value;const bodyOpts=menuOpts.body;return bodyOpts&&bodyOpts.options?bodyOpts.options:[];});const computeFooterMenu=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const menuOpts=computeMenuOpts.value;const footerOpts=menuOpts.footer;return footerOpts&&footerOpts.options?footerOpts.options:[];});const computeIsMenu=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const menuOpts=computeMenuOpts.value;const headerMenu=computeHeaderMenu.value;const bodyMenu=computeBodyMenu.value;const footerMenu=computeFooterMenu.value;return!!(props.menuConfig&&isEnableConf(menuOpts)&&(headerMenu.length||bodyMenu.length||footerMenu.length));});const computeMenuList=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{ctxMenuStore}=reactData;const rest=[];ctxMenuStore.list.forEach(list=>{list.forEach(item=>{rest.push(item);});});return rest;});const computeExportOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.exportConfig,props.exportConfig);});const computeImportOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.importConfig,props.importConfig);});const computePrintOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.printConfig,props.printConfig);});const computeExpandOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.expandConfig,props.expandConfig);});const computeTreeOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.treeConfig,props.treeConfig);});const computeEmptyOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.emptyRender,props.emptyRender);});const computeLoadingOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.loadingConfig,props.loadingConfig);});const computeCellOffsetWidth=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return props.border?Math.max(2,Math.ceil(reactData.scrollbarWidth/reactData.tableColumn.length)):1;});const computeCustomOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.customConfig,props.customConfig);});const computeTableRowExpandedList=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{rowExpandedMaps,tableData,expandColumn}=reactData;const expandList=[];if(expandColumn){const rowKeys={};tableData.forEach(row=>{rowKeys[getRowid($xeTable,row)]=true;});external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(rowExpandedMaps,(row,rowid)=>{if(rowKeys[rowid]){expandList.push(row);}});}return expandList;});const computeAutoWidthColumnList=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{visibleColumn}=internalData;const{tableColumn}=reactData;return tableColumn.length||visibleColumn.length?visibleColumn.filter(column=>column.width==='auto'||column.minWidth==='auto'):[];});const computeFixedColumnSize=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{tableColumn}=reactData;const{collectColumn}=internalData;let fixedSize=0;// 只判断第一层
|
|
10515
|
+
*/const computeSYOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const virtualYOpts=computeVirtualYOpts.value;return virtualYOpts;});const computeVirtualXOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.scrollX,table_getConfig().table.virtualXConfig,props.scrollX,props.virtualXConfig);});const computeVirtualYOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.scrollY,table_getConfig().table.virtualYConfig,props.scrollY,props.virtualYConfig);});const computeScrollbarOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.scrollbarConfig,props.scrollbarConfig);});const computeScrollbarXToTop=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const scrollbarOpts=computeScrollbarOpts.value;return!!(scrollbarOpts.x&&scrollbarOpts.x.position==='top');});const computeScrollbarYToLeft=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const scrollbarOpts=computeScrollbarOpts.value;return!!(scrollbarOpts.y&&scrollbarOpts.y.position==='left');});const computeScrollYThreshold=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const sYOpts=computeSYOpts.value;const{threshold}=sYOpts;if(threshold){return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(threshold);}return 0;});const computeRowHeightMaps=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return reactData.rowHeightStore;});const computeDefaultRowHeight=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const vSize=computeSize.value;const rowHeightMaps=computeRowHeightMaps.value;return rowHeightMaps[vSize||'default']||18;});const computeColumnOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.columnConfig,props.columnConfig);});const computeCurrentColumnOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.currentColumnConfig,props.currentColumnConfig);});const computeCellOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const cellOpts=Object.assign({},table_getConfig().table.cellConfig,props.cellConfig);if(cellOpts.height){cellOpts.height=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(cellOpts.height);}return cellOpts;});const computeHeaderCellOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const headerCellOpts=Object.assign({},table_getConfig().table.headerCellConfig,props.headerCellConfig);if(headerCellOpts.height){headerCellOpts.height=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(headerCellOpts.height);}return headerCellOpts;});const computeFooterCellOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const footerCellOpts=Object.assign({},table_getConfig().table.footerCellConfig,props.footerCellConfig);if(footerCellOpts.height){footerCellOpts.height=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(footerCellOpts.height);}return footerCellOpts;});const computeRowOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.rowConfig,props.rowConfig);});const computeCurrentRowOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.currentRowConfig,props.currentRowConfig);});const computeRowDragOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.rowDragConfig,props.rowDragConfig);});const computeColumnDragOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.columnDragConfig,props.columnDragConfig);});const computeResizeOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.resizeConfig,props.resizeConfig);});const computeResizableOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.resizableConfig,props.resizableConfig);});const computeSeqOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({startIndex:0},table_getConfig().table.seqConfig,props.seqConfig);});const computeRadioOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.radioConfig,props.radioConfig);});const computeCheckboxOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.checkboxConfig,props.checkboxConfig);});const computeTooltipOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().tooltip,table_getConfig().table.tooltipConfig,props.tooltipConfig);});const computeTableTipConfig=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{tooltipStore}=reactData;const tooltipOpts=computeTooltipOpts.value;return Object.assign({},tooltipOpts,tooltipStore.currOpts);});const computeValidTipConfig=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const tooltipOpts=computeTooltipOpts.value;return Object.assign({},tooltipOpts);});const computeEditOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.editConfig,props.editConfig);});const computeSortOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({orders:['asc','desc',null]},table_getConfig().table.sortConfig,props.sortConfig);});const computeFilterOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.filterConfig,props.filterConfig);});const computeMouseOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.mouseConfig,props.mouseConfig);});const computeAreaOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.areaConfig,props.areaConfig);});const computeKeyboardOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.keyboardConfig,props.keyboardConfig);});const computeClipOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.clipConfig,props.clipConfig);});const computeFNROpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.fnrConfig,props.fnrConfig);});const computeMenuOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.menuConfig,props.menuConfig);});const computeLeftFixedWidth=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{columnStore}=reactData;const{leftList}=columnStore;let leftWidth=0;for(let i=0;i<leftList.length;i++){const column=leftList[i];leftWidth+=column.renderWidth;}return leftWidth;});const computeRightFixedWidth=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{columnStore}=reactData;const{rightList}=columnStore;let leftWidth=0;for(let i=0;i<rightList.length;i++){const column=rightList[i];leftWidth+=column.renderWidth;}return leftWidth;});const computeHeaderMenu=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const menuOpts=computeMenuOpts.value;const headerOpts=menuOpts.header;return headerOpts&&headerOpts.options?headerOpts.options:[];});const computeBodyMenu=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const menuOpts=computeMenuOpts.value;const bodyOpts=menuOpts.body;return bodyOpts&&bodyOpts.options?bodyOpts.options:[];});const computeFooterMenu=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const menuOpts=computeMenuOpts.value;const footerOpts=menuOpts.footer;return footerOpts&&footerOpts.options?footerOpts.options:[];});const computeIsMenu=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const menuOpts=computeMenuOpts.value;const headerMenu=computeHeaderMenu.value;const bodyMenu=computeBodyMenu.value;const footerMenu=computeFooterMenu.value;return!!(props.menuConfig&&isEnableConf(menuOpts)&&(headerMenu.length||bodyMenu.length||footerMenu.length));});const computeMenuList=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{ctxMenuStore}=reactData;const rest=[];ctxMenuStore.list.forEach(list=>{list.forEach(item=>{rest.push(item);});});return rest;});const computeExportOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.exportConfig,props.exportConfig);});const computeImportOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.importConfig,props.importConfig);});const computePrintOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.printConfig,props.printConfig);});const computeExpandOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.expandConfig,props.expandConfig);});const computeTreeOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.treeConfig,props.treeConfig);});const computeEmptyOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.emptyRender,props.emptyRender);});const computeLoadingOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.loadingConfig,props.loadingConfig);});const computeCellOffsetWidth=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return props.border?Math.max(2,Math.ceil(reactData.scrollbarWidth/reactData.tableColumn.length)):1;});const computeCustomOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.customConfig,props.customConfig);});const computeTableRowExpandedList=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{rowExpandedFlag,tableData,expandColumn}=reactData;const{rowExpandedMaps}=internalData;const{handleGetRowId}=createHandleGetRowId($xeTable);const expandList=[];if(expandColumn&&rowExpandedFlag){const rowKeys={};tableData.forEach(row=>{rowKeys[handleGetRowId(row)]=true;});external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(rowExpandedMaps,(row,rowid)=>{if(rowKeys[rowid]){expandList.push(row);}});}return expandList;});const computeAutoWidthColumnList=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{visibleColumn}=internalData;const{tableColumn}=reactData;return tableColumn.length||visibleColumn.length?visibleColumn.filter(column=>column.width==='auto'||column.minWidth==='auto'):[];});const computeFixedColumnSize=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{tableColumn}=reactData;const{collectColumn}=internalData;let fixedSize=0;// 只判断第一层
|
|
10410
10516
|
if(tableColumn.length&&collectColumn.length){collectColumn.forEach(column=>{if(column.renderFixed){fixedSize++;}});}return fixedSize;});const computeIsMaxFixedColumn=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const fixedColumnSize=computeFixedColumnSize.value;const columnOpts=computeColumnOpts.value;const{maxFixedSize}=columnOpts;if(maxFixedSize){return fixedColumnSize>=maxFixedSize;}return false;});const computeTableBorder=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{border}=props;if(border===true){return'full';}if(border){return border;}return'default';});const computeIsAllCheckboxDisabled=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{treeConfig}=props;const{tableData}=reactData;const{tableFullData}=internalData;const checkboxOpts=computeCheckboxOpts.value;const{strict,checkMethod}=checkboxOpts;if(strict){if(tableData.length||tableFullData.length){if(checkMethod){if(treeConfig){// 暂时不支持树形结构
|
|
10411
10517
|
}// 如果所有行都被禁用
|
|
10412
|
-
return tableFullData.every(row=>!checkMethod({row}));}return false;}return true;}return false;});const computeVirtualScrollBars=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{overflowX,scrollXLoad,overflowY,scrollYLoad}=reactData;return{x:overflowX&&scrollXLoad,y:overflowY&&scrollYLoad};});const refMaps={refElem,refTooltip,refValidTooltip,refTableFilter,refTableCustom,refTableMenu,refTableHeader,refTableBody,refTableFooter,refTableLeftHeader,refTableLeftBody,refTableLeftFooter,refTableRightHeader,refTableRightBody,refTableRightFooter,refLeftContainer,refRightContainer,refColResizeBar,refRowResizeBar,refScrollXVirtualElem,refScrollYVirtualElem,refScrollXHandleElem,refScrollYHandleElem,refScrollXSpaceElem,refScrollYSpaceElem};const computeMaps={computeSize,computeTableId,computeValidOpts,computeVirtualXOpts,computeVirtualYOpts,computeScrollbarOpts,computeScrollbarXToTop,computeScrollbarYToLeft,computeColumnOpts,computeScrollXThreshold,computeScrollYThreshold,computeDefaultRowHeight,computeCellOpts,computeHeaderCellOpts,computeFooterCellOpts,computeRowOpts,computeRowDragOpts,computeColumnDragOpts,computeResizeOpts,computeResizableOpts,computeSeqOpts,computeRadioOpts,computeCheckboxOpts,computeTooltipOpts,computeEditOpts,computeSortOpts,computeFilterOpts,computeMouseOpts,computeAreaOpts,computeKeyboardOpts,computeClipOpts,computeFNROpts,computeHeaderMenu,computeBodyMenu,computeFooterMenu,computeIsMenu,computeMenuOpts,computeExportOpts,computeImportOpts,computePrintOpts,computeExpandOpts,computeTreeOpts,computeEmptyOpts,computeLoadingOpts,computeCellOffsetWidth,computeCustomOpts,computeLeftFixedWidth,computeRightFixedWidth,computeFixedColumnSize,computeIsMaxFixedColumn,computeIsAllCheckboxDisabled,computeVirtualScrollBars,computeSXOpts,computeSYOpts};const $xeTable={xID,props:props,context,reactData,internalData,getRefMaps:()=>refMaps,getComputeMaps:()=>computeMaps,xegrid:$xeGrid};const eqCellValue=(row1,row2,field)=>{const val1=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row1,field);const val2=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row2,field);if(eqEmptyValue(val1)&&eqEmptyValue(val2)){return true;}if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(val1)||external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(val1)){return''+val1===''+val2;}return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isEqual(val1,val2);};const getNextSortOrder=column=>{const sortOpts=computeSortOpts.value;const{orders}=sortOpts;const currOrder=column.order||null;const oIndex=orders.indexOf(currOrder)+1;return orders[oIndex<orders.length?oIndex:0];};const getCustomStorageMap=id=>{const version=table_getConfig().version;const rest=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toStringJSON(localStorage.getItem(customStorageKey)||'');const maps=rest&&rest._v===version?rest:{_v:version};return(id?maps[id]:maps)||{};};const setCustomStorageMap=(id,data)=>{const version=table_getConfig().version;const maps=getCustomStorageMap();maps[id]=data||undefined;maps._v=version;localStorage.setItem(customStorageKey,external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toJSONString(maps));};const getRecoverRowMaps=keyMaps=>{const{fullAllDataRowIdData}=internalData;const restKeys={};external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(keyMaps,(row,rowid)=>{if(fullAllDataRowIdData[rowid]){restKeys[rowid]=row;}});return restKeys;};const handleReserveRow=reserveRowMap=>{const{fullDataRowIdData}=internalData;const reserveList=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(reserveRowMap,(item,rowid)=>{if(fullDataRowIdData[rowid]&&$xeTable.findRowIndexOf(reserveList,fullDataRowIdData[rowid].row)===-1){reserveList.push(fullDataRowIdData[rowid].row);}});return reserveList;};const handleVirtualXVisible=()=>{const{isScrollXBig,scrollXWidth}=reactData;const{elemStore,visibleColumn,fullColumnIdData}=internalData;const leftFixedWidth=computeLeftFixedWidth.value;const rightFixedWidth=computeRightFixedWidth.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);if(bodyScrollElem){const clientWidth=bodyScrollElem.clientWidth;let scrollLeft=bodyScrollElem.scrollLeft;if(isScrollXBig){scrollLeft=Math.ceil((scrollXWidth-clientWidth)*Math.min(1,scrollLeft/(maxXWidth-clientWidth)));}const startLeft=scrollLeft+leftFixedWidth;const endLeft=scrollLeft+clientWidth-rightFixedWidth;let leftIndex=0;let rightIndex=visibleColumn.length;while(leftIndex<rightIndex){const cIndex=Math.floor((leftIndex+rightIndex)/2);const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};if(colRest.oLeft<=startLeft){leftIndex=cIndex+1;}else{rightIndex=cIndex;}}let visibleSize=0;const toVisibleIndex=Math.max(0,leftIndex<visibleColumn.length?leftIndex-2:0);for(let cIndex=toVisibleIndex,cLen=visibleColumn.length;cIndex<cLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};visibleSize++;if(colRest.oLeft>endLeft||visibleSize>=60){break;}}return{toVisibleIndex:Math.max(0,toVisibleIndex),visibleSize:Math.max(1,visibleSize)};}return{toVisibleIndex:0,visibleSize:6};};const calcVarRowHeightConfig=(sizeKey,sizeEl)=>{const{rowHeightStore}=reactData;if(sizeEl&&sizeEl.clientHeight){rowHeightStore[sizeKey]=sizeEl.clientHeight;}};const computeRowHeight=()=>{const{isAllOverflow}=reactData;const tableHeader=refTableHeader.value;const tableBody=refTableBody.value;const tableBodyElem=tableBody?tableBody.$el:null;const defaultRowHeight=computeDefaultRowHeight.value;let rowHeight=0;if(isAllOverflow){if(tableBodyElem){const tableHeaderElem=tableHeader?tableHeader.$el:null;let firstTrElem;firstTrElem=tableBodyElem.querySelector('tr');if(!firstTrElem&&tableHeaderElem){firstTrElem=tableHeaderElem.querySelector('tr');}if(firstTrElem){rowHeight=firstTrElem.clientHeight;}}if(!rowHeight){rowHeight=defaultRowHeight;}}else{rowHeight=defaultRowHeight;}// 最低支持 18px 行高
|
|
10413
|
-
return Math.max(18,rowHeight);};const handleVirtualYVisible=()=>{const{isAllOverflow,expandColumn,isScrollYBig,scrollYHeight}=reactData;const{elemStore,isResizeCellHeight,afterFullData,fullAllDataRowIdData}=internalData;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);if(bodyScrollElem){const clientHeight=bodyScrollElem.clientHeight;let scrollTop=bodyScrollElem.scrollTop;if(isScrollYBig){scrollTop=Math.ceil((scrollYHeight-clientHeight)*Math.min(1,scrollTop/(maxYHeight-clientHeight)));}const startTop=scrollTop;const endTop=scrollTop+clientHeight;let toVisibleIndex=-1;let visibleSize=0;const isCustomCellHeight=isResizeCellHeight||cellOpts.height||rowOpts.height;if(!isCustomCellHeight&&!expandColumn&&isAllOverflow){toVisibleIndex=Math.floor(startTop/defaultRowHeight)-1;visibleSize=Math.ceil(clientHeight/defaultRowHeight)+1;}else{let leftIndex=0;let rightIndex=afterFullData.length;while(leftIndex<rightIndex){const rIndex=Math.floor((leftIndex+rightIndex)/2);const row=afterFullData[rIndex];const rowid=
|
|
10518
|
+
return tableFullData.every(row=>!checkMethod({row}));}return false;}return true;}return false;});const computeVirtualScrollBars=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{overflowX,scrollXLoad,overflowY,scrollYLoad}=reactData;return{x:overflowX&&scrollXLoad,y:overflowY&&scrollYLoad};});const refMaps={refElem,refTooltip,refValidTooltip,refTableFilter,refTableCustom,refTableMenu,refTableHeader,refTableBody,refTableFooter,refTableLeftHeader,refTableLeftBody,refTableLeftFooter,refTableRightHeader,refTableRightBody,refTableRightFooter,refLeftContainer,refRightContainer,refColResizeBar,refRowResizeBar,refScrollXVirtualElem,refScrollYVirtualElem,refScrollXHandleElem,refScrollYHandleElem,refScrollXSpaceElem,refScrollYSpaceElem};const computeMaps={computeSize,computeTableId,computeValidOpts,computeVirtualXOpts,computeVirtualYOpts,computeScrollbarOpts,computeScrollbarXToTop,computeScrollbarYToLeft,computeColumnOpts,computeCurrentColumnOpts,computeScrollXThreshold,computeScrollYThreshold,computeRowHeightMaps,computeDefaultRowHeight,computeCellOpts,computeHeaderCellOpts,computeFooterCellOpts,computeRowOpts,computeCurrentRowOpts,computeRowDragOpts,computeColumnDragOpts,computeResizeOpts,computeResizableOpts,computeSeqOpts,computeRadioOpts,computeCheckboxOpts,computeTooltipOpts,computeEditOpts,computeSortOpts,computeFilterOpts,computeMouseOpts,computeAreaOpts,computeKeyboardOpts,computeClipOpts,computeFNROpts,computeHeaderMenu,computeBodyMenu,computeFooterMenu,computeIsMenu,computeMenuOpts,computeExportOpts,computeImportOpts,computePrintOpts,computeExpandOpts,computeTreeOpts,computeEmptyOpts,computeLoadingOpts,computeCellOffsetWidth,computeCustomOpts,computeLeftFixedWidth,computeRightFixedWidth,computeFixedColumnSize,computeIsMaxFixedColumn,computeIsAllCheckboxDisabled,computeVirtualScrollBars,computeSXOpts,computeSYOpts};const $xeTable={xID,props:props,context,reactData,internalData,getRefMaps:()=>refMaps,getComputeMaps:()=>computeMaps,xeGrid:$xeGrid,xegrid:$xeGrid};const eqCellValue=(row1,row2,field)=>{const val1=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row1,field);const val2=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row2,field);if(eqEmptyValue(val1)&&eqEmptyValue(val2)){return true;}if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(val1)||external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(val1)){return''+val1===''+val2;}return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isEqual(val1,val2);};const getNextSortOrder=column=>{const sortOpts=computeSortOpts.value;const{orders}=sortOpts;const currOrder=column.order||null;const oIndex=orders.indexOf(currOrder)+1;return orders[oIndex<orders.length?oIndex:0];};const getCustomStorageMap=id=>{const version=table_getConfig().version;const rest=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toStringJSON(localStorage.getItem(customStorageKey)||'');const maps=rest&&rest._v===version?rest:{_v:version};return(id?maps[id]:maps)||{};};const setCustomStorageMap=(id,data)=>{const version=table_getConfig().version;const maps=getCustomStorageMap();maps[id]=data||undefined;maps._v=version;localStorage.setItem(customStorageKey,external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toJSONString(maps));};const getRecoverRowMaps=keyMaps=>{const{fullAllDataRowIdData}=internalData;const restKeys={};external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(keyMaps,(row,rowid)=>{if(fullAllDataRowIdData[rowid]){restKeys[rowid]=row;}});return restKeys;};const handleReserveRow=reserveRowMap=>{const{fullDataRowIdData}=internalData;const reserveList=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(reserveRowMap,(item,rowid)=>{if(fullDataRowIdData[rowid]&&$xeTable.findRowIndexOf(reserveList,fullDataRowIdData[rowid].row)===-1){reserveList.push(fullDataRowIdData[rowid].row);}});return reserveList;};const handleVirtualXVisible=()=>{const{isScrollXBig,scrollXWidth}=reactData;const{elemStore,visibleColumn,fullColumnIdData}=internalData;const leftFixedWidth=computeLeftFixedWidth.value;const rightFixedWidth=computeRightFixedWidth.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);if(bodyScrollElem){const clientWidth=bodyScrollElem.clientWidth;let scrollLeft=bodyScrollElem.scrollLeft;if(isScrollXBig){scrollLeft=Math.ceil((scrollXWidth-clientWidth)*Math.min(1,scrollLeft/(maxXWidth-clientWidth)));}const startLeft=scrollLeft+leftFixedWidth;const endLeft=scrollLeft+clientWidth-rightFixedWidth;let leftIndex=0;let rightIndex=visibleColumn.length;while(leftIndex<rightIndex){const cIndex=Math.floor((leftIndex+rightIndex)/2);const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};if(colRest.oLeft<=startLeft){leftIndex=cIndex+1;}else{rightIndex=cIndex;}}let visibleSize=0;const toVisibleIndex=Math.max(0,leftIndex<visibleColumn.length?leftIndex-2:0);for(let cIndex=toVisibleIndex,cLen=visibleColumn.length;cIndex<cLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};visibleSize++;if(colRest.oLeft>endLeft||visibleSize>=60){break;}}return{toVisibleIndex:Math.max(0,toVisibleIndex),visibleSize:Math.max(1,visibleSize)};}return{toVisibleIndex:0,visibleSize:6};};const calcVarRowHeightConfig=(sizeKey,sizeEl)=>{const{rowHeightStore}=reactData;if(sizeEl&&sizeEl.clientHeight){rowHeightStore[sizeKey]=sizeEl.clientHeight;}};const computeRowHeight=()=>{const{isAllOverflow}=reactData;const tableHeader=refTableHeader.value;const tableBody=refTableBody.value;const tableBodyElem=tableBody?tableBody.$el:null;const defaultRowHeight=computeDefaultRowHeight.value;let rowHeight=0;if(isAllOverflow){if(tableBodyElem){const tableHeaderElem=tableHeader?tableHeader.$el:null;let firstTrElem;firstTrElem=tableBodyElem.querySelector('tr');if(!firstTrElem&&tableHeaderElem){firstTrElem=tableHeaderElem.querySelector('tr');}if(firstTrElem){rowHeight=firstTrElem.clientHeight;}}if(!rowHeight){rowHeight=defaultRowHeight;}}else{rowHeight=defaultRowHeight;}// 最低支持 18px 行高
|
|
10519
|
+
return Math.max(18,rowHeight);};const handleVirtualYVisible=()=>{const{isAllOverflow,expandColumn,isScrollYBig,scrollYHeight}=reactData;const{elemStore,isResizeCellHeight,afterFullData,fullAllDataRowIdData}=internalData;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);if(bodyScrollElem){const clientHeight=bodyScrollElem.clientHeight;let scrollTop=bodyScrollElem.scrollTop;if(isScrollYBig){scrollTop=Math.ceil((scrollYHeight-clientHeight)*Math.min(1,scrollTop/(maxYHeight-clientHeight)));}const startTop=scrollTop;const endTop=scrollTop+clientHeight;let toVisibleIndex=-1;let visibleSize=0;const isCustomCellHeight=isResizeCellHeight||cellOpts.height||rowOpts.height;if(!isCustomCellHeight&&!expandColumn&&isAllOverflow){toVisibleIndex=Math.floor(startTop/defaultRowHeight)-1;visibleSize=Math.ceil(clientHeight/defaultRowHeight)+1;}else{const{handleGetRowId}=createHandleGetRowId($xeTable);let leftIndex=0;let rightIndex=afterFullData.length;while(leftIndex<rightIndex){const rIndex=Math.floor((leftIndex+rightIndex)/2);const row=afterFullData[rIndex];const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid]||{};if(rowRest.oTop<=startTop){leftIndex=rIndex+1;}else{rightIndex=rIndex;}}toVisibleIndex=Math.max(0,leftIndex<afterFullData.length?leftIndex-2:0);for(let rIndex=toVisibleIndex,rLen=afterFullData.length;rIndex<rLen;rIndex++){const row=afterFullData[rIndex];const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid]||{};visibleSize++;if(rowRest.oTop>endTop||visibleSize>=100){break;}}}return{toVisibleIndex:Math.max(0,toVisibleIndex),visibleSize:Math.max(6,visibleSize)};}return{toVisibleIndex:0,visibleSize:6};};const calculateMergerOffsetIndex=(list,offsetItem,type)=>{for(let mcIndex=0,len=list.length;mcIndex<len;mcIndex++){const mergeItem=list[mcIndex];const{startIndex,endIndex}=offsetItem;const mergeStartIndex=mergeItem[type];const mergeSpanNumber=mergeItem[type+'span'];const mergeEndIndex=mergeStartIndex+mergeSpanNumber;if(mergeStartIndex<startIndex&&startIndex<mergeEndIndex){offsetItem.startIndex=mergeStartIndex;}if(mergeStartIndex<endIndex&&endIndex<mergeEndIndex){offsetItem.endIndex=mergeEndIndex;}if(offsetItem.startIndex!==startIndex||offsetItem.endIndex!==endIndex){mcIndex=-1;}}};const setMerges=(merges,mList,rowList)=>{if(merges){const{treeConfig}=props;const{visibleColumn}=internalData;if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(merges)){merges=[merges];}if(treeConfig&&merges.length){errLog('vxe.error.noTree',['merge-cells | merge-footer-items']);}merges.forEach(item=>{let{row,col,rowspan,colspan}=item;if(rowList&&external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(row)){row=rowList[row];}if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(col)){col=visibleColumn[col];}if((rowList?row:external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(row))&&col&&(rowspan||colspan)){rowspan=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(rowspan)||1;colspan=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(colspan)||1;if(rowspan>1||colspan>1){const mcIndex=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findIndexOf(mList,item=>(item._row===row||getRowid($xeTable,item._row)===getRowid($xeTable,row))&&(item._col.id===col||item._col.id===col.id));const mergeItem=mList[mcIndex];if(mergeItem){mergeItem.rowspan=rowspan;mergeItem.colspan=colspan;mergeItem._rowspan=rowspan;mergeItem._colspan=colspan;}else{const mergeRowIndex=rowList?$xeTable.findRowIndexOf(rowList,row):row;const mergeColIndex=tableMethods.getVTColumnIndex(col);mList.push({row:mergeRowIndex,col:mergeColIndex,rowspan,colspan,_row:row,_col:col,_rowspan:rowspan,_colspan:colspan});}}}});}};const removeMerges=(merges,mList,rowList)=>{const rest=[];if(merges){const{treeConfig}=props;const{visibleColumn}=internalData;if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(merges)){merges=[merges];}if(treeConfig&&merges.length){errLog('vxe.error.noTree',['merge-cells | merge-footer-items']);}merges.forEach(item=>{let{row,col}=item;if(rowList&&external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(row)){row=rowList[row];}if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(col)){col=visibleColumn[col];}const mcIndex=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findIndexOf(mList,item=>(item._row===row||getRowid($xeTable,item._row)===getRowid($xeTable,row))&&(item._col.id===col||item._col.id===col.id));if(mcIndex>-1){const rItems=mList.splice(mcIndex,1);rest.push(rItems[0]);}});}return rest;};const clearAllSort=()=>{const{tableFullColumn}=internalData;tableFullColumn.forEach(column=>{column.order=null;});};const calcTableHeight=key=>{const{parentHeight}=reactData;const val=props[key];let num=0;if(val){if(val==='100%'||val==='auto'){num=parentHeight;}else{const excludeHeight=$xeTable.getExcludeHeight();if(isScale(val)){num=Math.floor((external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toInteger(val)||1)/100*parentHeight);}else{num=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(val);}num=Math.max(40,num-excludeHeight);}}return num;};const handleCustomRestore=storeData=>{let{collectColumn}=internalData;const{resizableData,sortData,visibleData,fixedData}=storeData;let hasCustomSort=false;// 处理还原
|
|
10414
10520
|
if(resizableData||sortData||visibleData||fixedData){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn,(column,index,items,path,parentColumn)=>{const colKey=column.getKey();// 支持一级
|
|
10415
10521
|
if(!parentColumn){if(fixedData&&fixedData[colKey]!==undefined){column.fixed=fixedData[colKey];}if(sortData&&external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(sortData[colKey])){hasCustomSort=true;column.renderSortNumber=sortData[colKey];}}if(resizableData&&external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(resizableData[colKey])){column.resizeWidth=resizableData[colKey];}if(visibleData&&external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(visibleData[colKey])){column.visible=visibleData[colKey];}});// 如果自定义了顺序
|
|
10416
10522
|
if(hasCustomSort){collectColumn=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().orderBy(collectColumn,'renderSortNumber');internalData.collectColumn=collectColumn;internalData.tableFullColumn=getColumnList(collectColumn);}reactData.isCustomStatus=true;}else{reactData.isCustomStatus=false;}};/**
|
|
@@ -10418,7 +10524,7 @@ if(hasCustomSort){collectColumn=external_root_XEUtils_commonjs_xe_utils_commonjs
|
|
|
10418
10524
|
*/const restoreCustomStorage=()=>{const{customConfig}=props;const tableId=computeTableId.value;const customOpts=computeCustomOpts.value;const{storage,restoreStore}=customOpts;const isAllCustom=storage===true;const storageOpts=isAllCustom?{}:Object.assign({},storage||{});const isCustomResizable=isAllCustom||storageOpts.resizable;const isCustomVisible=isAllCustom||storageOpts.visible;const isCustomFixed=isAllCustom||storageOpts.fixed;const isCustomSort=isAllCustom||storageOpts.sort;if((customConfig?isEnableConf(customOpts):customOpts.enabled)&&(isCustomResizable||isCustomVisible||isCustomFixed||isCustomSort)){if(!tableId){errLog('vxe.error.reqProp',['id']);return;}const storeData=getCustomStorageMap(tableId);if(restoreStore){return Promise.resolve(restoreStore({id:tableId,type:'restore',storeData})).then(storeData=>{if(!storeData){return;}return handleCustomRestore(storeData);}).catch(e=>e);}else{return handleCustomRestore(storeData);}}};/**
|
|
10419
10525
|
* 更新数据列的 Map
|
|
10420
10526
|
* 牺牲数据组装的耗时,用来换取使用过程中的流畅
|
|
10421
|
-
*/const cacheColumnMap=()=>{const{tableFullColumn,collectColumn}=internalData;const fullColumnIdData=internalData.fullColumnIdData={};const fullColumnFieldData=internalData.fullColumnFieldData={};const mouseOpts=computeMouseOpts.value;const expandOpts=computeExpandOpts.value;const columnOpts=computeColumnOpts.value;const columnDragOpts=computeColumnDragOpts.value;const{isCrossDrag,isSelfToChildDrag}=columnDragOpts;const customOpts=computeCustomOpts.value;const{storage}=customOpts;const rowOpts=computeRowOpts.value;const isGroup=collectColumn.some(hasChildrenList);let isAllOverflow=!!props.showOverflow;let expandColumn;let treeNodeColumn;let checkboxColumn;let radioColumn;let htmlColumn;let hasFixed;const handleFunc=(column,index,items,path,parentColumn)=>{const{id:colid,field,fixed,type,treeNode}=column;const rest={$index:-1,_index:-1,column,colid,index,items,parent:parentColumn||null,width:0,oLeft:0};if(field){if(fullColumnFieldData[field]){errLog('vxe.error.colRepet',['field',field]);}fullColumnFieldData[field]=rest;}else{if(storage&&!type||columnOpts.drag&&(isCrossDrag||isSelfToChildDrag)){errLog('vxe.error.reqProp',[`${column.getTitle()||type||''} -> column.field
|
|
10527
|
+
*/const cacheColumnMap=()=>{const{tableFullColumn,collectColumn}=internalData;const fullColumnIdData=internalData.fullColumnIdData={};const fullColumnFieldData=internalData.fullColumnFieldData={};const mouseOpts=computeMouseOpts.value;const expandOpts=computeExpandOpts.value;const columnOpts=computeColumnOpts.value;const columnDragOpts=computeColumnDragOpts.value;const{isCrossDrag,isSelfToChildDrag}=columnDragOpts;const customOpts=computeCustomOpts.value;const{storage}=customOpts;const rowOpts=computeRowOpts.value;const isGroup=collectColumn.some(hasChildrenList);let isAllOverflow=!!props.showOverflow;let expandColumn;let treeNodeColumn;let checkboxColumn;let radioColumn;let htmlColumn;let hasFixed;const handleFunc=(column,index,items,path,parentColumn)=>{const{id:colid,field,fixed,type,treeNode}=column;const rest={$index:-1,_index:-1,column,colid,index,items,parent:parentColumn||null,width:0,oLeft:0};if(field){if(fullColumnFieldData[field]){errLog('vxe.error.colRepet',['field',field]);}fullColumnFieldData[field]=rest;}else{if(storage&&!type||columnOpts.drag&&(isCrossDrag||isSelfToChildDrag)){errLog('vxe.error.reqProp',[`${column.getTitle()||type||''} -> column.field=?`]);}}if(!hasFixed&&fixed){hasFixed=fixed;}if(!htmlColumn&&type==='html'){htmlColumn=column;}if(treeNode){if(true){if(treeNodeColumn){warnLog('vxe.error.colRepet',['tree-node',treeNode]);}}if(!treeNodeColumn){treeNodeColumn=column;}}else if(type==='expand'){if(true){if(expandColumn){warnLog('vxe.error.colRepet',['type',type]);}}if(!expandColumn){expandColumn=column;}}if(true){if(type==='checkbox'){if(checkboxColumn){warnLog('vxe.error.colRepet',['type',type]);}if(!checkboxColumn){checkboxColumn=column;}}else if(type==='radio'){if(radioColumn){warnLog('vxe.error.colRepet',['type',type]);}if(!radioColumn){radioColumn=column;}}}if(isAllOverflow&&column.showOverflow===false){isAllOverflow=false;}if(fullColumnIdData[colid]){errLog('vxe.error.colRepet',['colId',colid]);}fullColumnIdData[colid]=rest;};if(isGroup){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn,(column,index,items,path,parentColumn,nodes)=>{column.level=nodes.length;handleFunc(column,index,items,path,parentColumn);});}else{tableFullColumn.forEach(handleFunc);}if(expandColumn&&expandOpts.mode!=='fixed'&&mouseOpts.area){errLog('vxe.error.errConflicts',['mouse-config.area','column.type=expand']);}if(htmlColumn){if(!columnOpts.useKey){errLog('vxe.error.reqProp',['column-config.useKey & column.type=html']);}if(!rowOpts.useKey){errLog('vxe.error.reqProp',['row-config.useKey & column.type=html']);}}reactData.isGroup=isGroup;reactData.treeNodeColumn=treeNodeColumn;reactData.expandColumn=expandColumn;reactData.isAllOverflow=isAllOverflow;};const updateHeight=()=>{internalData.customHeight=calcTableHeight('height');internalData.customMinHeight=calcTableHeight('minHeight');internalData.customMaxHeight=calcTableHeight('maxHeight');};const calcColumnAutoWidth=(column,wrapperEl)=>{const cellElemList=wrapperEl.querySelectorAll(`.vxe-cell--wrapper[colid="${column.id}"]`);let leftRightPadding=0;const firstCellEl=cellElemList[0];if(firstCellEl&&firstCellEl.parentElement){const cellStyle=getComputedStyle(firstCellEl.parentElement);leftRightPadding=Math.ceil(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(cellStyle.paddingLeft)+external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(cellStyle.paddingRight));}let colWidth=column.renderAutoWidth-leftRightPadding;for(let i=0;i<cellElemList.length;i++){const celEl=cellElemList[i];colWidth=Math.max(colWidth,celEl?Math.ceil(celEl.scrollWidth)+4:0);}return colWidth+leftRightPadding;};const calcCellWidth=()=>{const autoWidthColumnList=computeAutoWidthColumnList.value;const{fullColumnIdData}=internalData;const el=refElem.value;if(el){el.setAttribute('data-calc-col','Y');autoWidthColumnList.forEach(column=>{const colid=column.id;const colRest=fullColumnIdData[colid];const colWidth=calcColumnAutoWidth(column,el);if(colRest){colRest.width=Math.max(colWidth,colRest.width);}column.renderAutoWidth=colWidth;});$xeTable.analyColumnWidth();el.removeAttribute('data-calc-col');}};/**
|
|
10422
10528
|
* 列宽算法,计算单元格列宽,动态分配可用剩余空间
|
|
10423
10529
|
* 支持 px、%、固定 混合分配
|
|
10424
10530
|
* 支持动态列表调整分配
|
|
@@ -10436,25 +10542,25 @@ resizeList.forEach(column=>{const reWidth=external_root_XEUtils_commonjs_xe_util
|
|
|
10436
10542
|
remainList.forEach(column=>{const width=Math.max(meanWidth,minCellWidth);column.renderWidth=width;tWidth+=width;});if(fit){/**
|
|
10437
10543
|
* 偏移量算法
|
|
10438
10544
|
* 如果所有列足够放的情况下,从最后动态列开始分配
|
|
10439
|
-
*/const dynamicList=scaleList.concat(scaleMinList).concat(pxMinList).concat(autoMinList).concat(remainList);let dynamicSize=dynamicList.length-1;if(dynamicSize>0){let i=bodyWidth-tWidth;if(i>0){while(i>0&&dynamicSize>=0){i--;dynamicList[dynamicSize--].renderWidth++;}tWidth=bodyWidth;}}}const tableHeight=bodyElem.offsetHeight;const overflowY=yHandleEl.scrollHeight>yHandleEl.clientHeight;reactData.scrollbarWidth=Math.max(scrollbarOpts.width||0,yHandleEl.offsetWidth-yHandleEl.clientWidth);reactData.overflowY=overflowY;reactData.scrollXWidth=tWidth;internalData.tableHeight=tableHeight;const headerTableElem=getRefElem(elemStore['main-header-table']);const footerTableElem=getRefElem(elemStore['main-footer-table']);const headerHeight=headerTableElem?headerTableElem.clientHeight:0;const overflowX=tWidth>bodyWidth;const footerHeight=footerTableElem?footerTableElem.clientHeight:0;reactData.scrollbarHeight=Math.max(scrollbarOpts.height||0,xHandleEl.offsetHeight-xHandleEl.clientHeight);internalData.headerHeight=headerHeight;internalData.footerHeight=footerHeight;reactData.overflowX=overflowX;updateColumnOffsetLeft();updateHeight();reactData.parentHeight=Math.max(internalData.headerHeight+footerHeight+20,$xeTable.getParentHeight());if(overflowX){$xeTable.checkScrolling();}};const calcCellAutoHeight=(rowRest,wrapperEl)=>{const cellElemList=wrapperEl.querySelectorAll(`.vxe-cell--wrapper[rowid="${rowRest.rowid}"]`);let colHeight=rowRest.height;for(let i=0;i<cellElemList.length;i++){const cellElem=cellElemList[i];const tdEl=cellElem.parentElement;const topBottomPadding=Math.ceil(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(tdEl.style.paddingTop)+external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(tdEl.style.paddingBottom));const cellHeight=cellElem?cellElem.clientHeight:0;colHeight=Math.max(colHeight-topBottomPadding,Math.ceil(cellHeight));}return colHeight;};const calcCellHeight=()=>{const{tableData,isAllOverflow,scrollYLoad,scrollXLoad}=reactData;const{fullAllDataRowIdData}=internalData;const defaultRowHeight=computeDefaultRowHeight.value;const el=refElem.value;if(!isAllOverflow&&scrollYLoad&&el){el.setAttribute('data-calc-row','Y');tableData.forEach(row=>{const rowid=
|
|
10545
|
+
*/const dynamicList=scaleList.concat(scaleMinList).concat(pxMinList).concat(autoMinList).concat(remainList);let dynamicSize=dynamicList.length-1;if(dynamicSize>0){let i=bodyWidth-tWidth;if(i>0){while(i>0&&dynamicSize>=0){i--;dynamicList[dynamicSize--].renderWidth++;}tWidth=bodyWidth;}}}const tableHeight=bodyElem.offsetHeight;const overflowY=yHandleEl.scrollHeight>yHandleEl.clientHeight;reactData.scrollbarWidth=Math.max(scrollbarOpts.width||0,yHandleEl.offsetWidth-yHandleEl.clientWidth);reactData.overflowY=overflowY;reactData.scrollXWidth=tWidth;internalData.tableHeight=tableHeight;const headerTableElem=getRefElem(elemStore['main-header-table']);const footerTableElem=getRefElem(elemStore['main-footer-table']);const headerHeight=headerTableElem?headerTableElem.clientHeight:0;const overflowX=tWidth>bodyWidth;const footerHeight=footerTableElem?footerTableElem.clientHeight:0;reactData.scrollbarHeight=Math.max(scrollbarOpts.height||0,xHandleEl.offsetHeight-xHandleEl.clientHeight);internalData.headerHeight=headerHeight;internalData.footerHeight=footerHeight;reactData.overflowX=overflowX;reactData.resizeWidthFlag++;updateColumnOffsetLeft();updateHeight();reactData.parentHeight=Math.max(internalData.headerHeight+footerHeight+20,$xeTable.getParentHeight());if(overflowX){$xeTable.checkScrolling();}};const calcCellAutoHeight=(rowRest,wrapperEl)=>{const cellElemList=wrapperEl.querySelectorAll(`.vxe-cell--wrapper[rowid="${rowRest.rowid}"]`);let colHeight=rowRest.height;for(let i=0;i<cellElemList.length;i++){const cellElem=cellElemList[i];const tdEl=cellElem.parentElement;const topBottomPadding=Math.ceil(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(tdEl.style.paddingTop)+external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(tdEl.style.paddingBottom));const cellHeight=cellElem?cellElem.clientHeight:0;colHeight=Math.max(colHeight-topBottomPadding,Math.ceil(cellHeight));}return colHeight;};const calcCellHeight=()=>{const{tableData,isAllOverflow,scrollYLoad,scrollXLoad}=reactData;const{fullAllDataRowIdData}=internalData;const defaultRowHeight=computeDefaultRowHeight.value;const el=refElem.value;if(!isAllOverflow&&scrollYLoad&&el){const{handleGetRowId}=createHandleGetRowId($xeTable);el.setAttribute('data-calc-row','Y');tableData.forEach(row=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const reHeight=calcCellAutoHeight(rowRest,el);rowRest.height=Math.max(defaultRowHeight,scrollXLoad?Math.max(rowRest.height,reHeight):reHeight);}el.removeAttribute('data-calc-row');});reactData.calcCellHeightFlag++;}};const getOrderField=column=>{const{sortBy,sortType}=column;return row=>{let cellValue;if(sortBy){cellValue=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(sortBy)?sortBy({row,column}):external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,sortBy);}else{cellValue=tableMethods.getCellLabel(row,column);}if(!sortType||sortType==='auto'){return isNaN(cellValue)?cellValue:external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(cellValue);}else if(sortType==='number'){return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(cellValue);}else if(sortType==='string'){return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toValueString(cellValue);}return cellValue;};};const updateAfterListIndex=()=>{const{treeConfig}=props;const{afterFullData,fullDataRowIdData,fullAllDataRowIdData}=internalData;const{handleGetRowId}=createHandleGetRowId($xeTable);const fullMaps={};afterFullData.forEach((row,index)=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];const seq=index+1;if(rowRest){if(!treeConfig){rowRest.seq=seq;}rowRest._index=index;}else{const rest={row,rowid,seq,index:-1,$index:-1,_index:index,treeIndex:-1,items:[],parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};fullAllDataRowIdData[rowid]=rest;fullDataRowIdData[rowid]=rest;}fullMaps[rowid]=row;});internalData.afterFullRowMaps=fullMaps;};/**
|
|
10440
10546
|
* 预编译
|
|
10441
10547
|
* 对渲染中的数据提前解析序号及索引。牺牲提前编译耗时换取渲染中额外损耗,使运行时更加流畅
|
|
10442
|
-
*/const updateAfterDataIndex=()=>{const{treeConfig}=props;const{fullDataRowIdData,fullAllDataRowIdData,afterTreeFullData}=internalData;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const fullMaps={};if(treeConfig){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterTreeFullData,(row,index,items,path)=>{const rowid=
|
|
10548
|
+
*/const updateAfterDataIndex=()=>{const{treeConfig}=props;const{fullDataRowIdData,fullAllDataRowIdData,afterTreeFullData}=internalData;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const fullMaps={};if(treeConfig){const{handleGetRowId}=createHandleGetRowId($xeTable);external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterTreeFullData,(row,index,items,path)=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];const seq=path.map((num,i)=>i%2===0?Number(num)+1:'.').join('');if(rowRest){rowRest.seq=seq;rowRest.treeIndex=index;}else{const rest={row,rowid,seq,index:-1,$index:-1,_index:-1,treeIndex:-1,items:[],parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};fullAllDataRowIdData[rowid]=rest;fullDataRowIdData[rowid]=rest;}fullMaps[rowid]=row;},{children:transform?treeOpts.mapChildrenField:childrenField});internalData.afterFullRowMaps=fullMaps;updateAfterListIndex();}else{updateAfterListIndex();}};/**
|
|
10443
10549
|
* 如果为虚拟树,将树结构拍平
|
|
10444
10550
|
* @returns
|
|
10445
|
-
*/const handleVirtualTreeToList=()=>{const{treeConfig}=props;const{treeExpandedMaps}=
|
|
10551
|
+
*/const handleVirtualTreeToList=()=>{const{treeConfig}=props;const{fullAllDataRowIdData,treeExpandedMaps}=internalData;const treeOpts=computeTreeOpts.value;const childrenField=treeOpts.children||treeOpts.childrenField;if(treeConfig&&treeOpts.transform){const{handleGetRowId}=createHandleGetRowId($xeTable);const fullData=[];const expandMaps={};external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(internalData.afterTreeFullData,(row,index,items,path,parentRow)=>{const rowid=handleGetRowId(row);const parentRowid=handleGetRowId(parentRow);if(!parentRow||expandMaps[parentRowid]&&treeExpandedMaps[parentRowid]){const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rowRest._index=fullData.length;}expandMaps[rowid]=1;fullData.push(row);}},{children:childrenField});internalData.afterFullData=fullData;updateScrollYStatus(fullData);return fullData;}return internalData.afterFullData;};/**
|
|
10446
10552
|
* 获取处理后全量的表格数据
|
|
10447
10553
|
* 如果存在筛选条件,继续处理
|
|
10448
|
-
*/const updateAfterFullData=()=>{const{treeConfig}=props;const{tableFullColumn,tableFullData,tableFullTreeData}=internalData;const filterOpts=computeFilterOpts.value;const sortOpts=computeSortOpts.value;const treeOpts=computeTreeOpts.value;const childrenField=treeOpts.children||treeOpts.childrenField;const{transform,rowField,parentField,mapChildrenField}=treeOpts;const{remote:allRemoteFilter,filterMethod:allFilterMethod}=filterOpts;const{remote:allRemoteSort,sortMethod:allSortMethod,multiple:sortMultiple,chronological}=sortOpts;let tableData=[];let tableTree=[];// 处理数据
|
|
10554
|
+
*/const updateAfterFullData=()=>{const{treeConfig}=props;const{tableFullColumn,tableFullData,tableFullTreeData}=internalData;const filterOpts=computeFilterOpts.value;const sortOpts=computeSortOpts.value;const treeOpts=computeTreeOpts.value;const childrenField=treeOpts.children||treeOpts.childrenField;const{transform,rowField,parentField,mapChildrenField}=treeOpts;const{isEvery,remote:allRemoteFilter,filterMethod:allFilterMethod}=filterOpts;const{remote:allRemoteSort,sortMethod:allSortMethod,multiple:sortMultiple,chronological}=sortOpts;let tableData=[];let tableTree=[];// 处理数据
|
|
10449
10555
|
if(!allRemoteFilter||!allRemoteSort){const filterColumns=[];let orderColumns=[];tableFullColumn.forEach(column=>{const{field,sortable,order,filters}=column;if(!allRemoteFilter&&filters&&filters.length){const valueList=[];const itemList=[];filters.forEach(item=>{if(item.checked){itemList.push(item);valueList.push(item.value);}});if(itemList.length){filterColumns.push({column,valueList,itemList});}}if(!allRemoteSort&&sortable&&order){orderColumns.push({column,field,property:field,order:order,sortTime:column.sortTime});}});if(sortMultiple&&chronological&&orderColumns.length>1){orderColumns=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().orderBy(orderColumns,'sortTime');}// 处理筛选
|
|
10450
10556
|
// 支持单列、多列、组合筛选
|
|
10451
10557
|
if(!allRemoteFilter&&filterColumns.length){const handleFilter=row=>{return filterColumns.every(({column,valueList,itemList})=>{const{filterMethod,filterRender}=column;const compConf=isEnableConf(filterRender)?table_renderer.get(filterRender.name):null;const compFilterMethod=compConf?compConf.tableFilterMethod||compConf.filterMethod:null;const tdFilterMethod=compConf?compConf.tableFilterDefaultMethod||compConf.defaultTableFilterMethod||compConf.defaultFilterMethod:null;const cellValue=getCellValue(row,column);if(filterMethod){return itemList.some(item=>filterMethod({value:item.value,option:item,cellValue,row,column,$table:$xeTable}));}else if(compFilterMethod){return itemList.some(item=>compFilterMethod({value:item.value,option:item,cellValue,row,column,$table:$xeTable}));}else if(allFilterMethod){return allFilterMethod({options:itemList,values:valueList,cellValue,row,column});}else if(tdFilterMethod){return itemList.some(item=>tdFilterMethod({value:item.value,option:item,cellValue,row,column,$table:$xeTable}));}return valueList.indexOf(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,column.field))>-1;});};if(treeConfig&&transform){// 筛选虚拟树
|
|
10452
|
-
tableTree=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().searchTree(tableFullTreeData,handleFilter,{original:true,isEvery
|
|
10453
|
-
tableTree=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().searchTree(tableFullTreeData,()=>true,{original:true,isEvery
|
|
10558
|
+
tableTree=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().searchTree(tableFullTreeData,handleFilter,{original:true,isEvery,children:mapChildrenField,mapChildren:childrenField});tableData=tableTree;}else{tableData=treeConfig?tableFullTreeData.filter(handleFilter):tableFullData.filter(handleFilter);tableTree=tableData;}}else{if(treeConfig&&transform){// 还原虚拟树
|
|
10559
|
+
tableTree=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().searchTree(tableFullTreeData,()=>true,{original:true,isEvery,children:mapChildrenField,mapChildren:childrenField});tableData=tableTree;}else{tableData=treeConfig?tableFullTreeData.slice(0):tableFullData.slice(0);tableTree=tableData;}}// 处理排序(不能用于树形结构)
|
|
10454
10560
|
// 支持单列、多列、组合排序
|
|
10455
10561
|
if(!allRemoteSort&&orderColumns.length){if(treeConfig&&transform){// 虚拟树和列表一样,只能排序根级节点
|
|
10456
10562
|
if(allSortMethod){const sortRests=allSortMethod({data:tableTree,sortList:orderColumns,$table:$xeTable});tableTree=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(sortRests)?sortRests:tableTree;}else{const treeList=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toTreeArray(tableTree,{children:mapChildrenField});tableTree=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toArrayTree(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().orderBy(treeList,orderColumns.map(({column,order})=>[getOrderField(column),order])),{key:rowField,parentKey:parentField,children:childrenField,mapChildren:mapChildrenField});}tableData=tableTree;}else{if(allSortMethod){const sortRests=allSortMethod({data:tableData,sortList:orderColumns,$table:$xeTable});tableData=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(sortRests)?sortRests:tableData;}else{tableData=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().orderBy(tableData,orderColumns.map(({column,order})=>[getOrderField(column),order]));}tableTree=tableData;}}}else{if(treeConfig&&transform){// 还原虚拟树
|
|
10457
|
-
tableTree=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().searchTree(tableFullTreeData,()=>true,{original:true,isEvery
|
|
10563
|
+
tableTree=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().searchTree(tableFullTreeData,()=>true,{original:true,isEvery,children:treeOpts.mapChildrenField,mapChildren:childrenField});tableData=tableTree;}else{tableData=treeConfig?tableFullTreeData.slice(0):tableFullData.slice(0);tableTree=tableData;}}internalData.afterFullData=tableData;internalData.afterTreeFullData=tableTree;updateAfterDataIndex();};const updateStyle=()=>{const{border,showHeaderOverflow:allColumnHeaderOverflow,showFooterOverflow:allColumnFooterOverflow,mouseConfig,spanMethod,footerSpanMethod}=props;const{isGroup,currentRow,tableColumn,scrollXLoad,scrollYLoad,overflowX,scrollbarWidth,overflowY,scrollbarHeight,scrollXWidth,columnStore,editStore,isAllOverflow,expandColumn}=reactData;const{visibleColumn,tableHeight,headerHeight,footerHeight,elemStore,customHeight,customMinHeight,customMaxHeight}=internalData;const el=refElem.value;if(!el){return;}const containerList=['main','left','right'];const osbWidth=overflowY?scrollbarWidth:0;const osbHeight=overflowX?scrollbarHeight:0;const emptyPlaceholderElem=refEmptyPlaceholder.value;const mouseOpts=computeMouseOpts.value;const expandOpts=computeExpandOpts.value;const bodyWrapperElem=getRefElem(elemStore['main-body-wrapper']);const bodyTableElem=getRefElem(elemStore['main-body-table']);if(emptyPlaceholderElem){emptyPlaceholderElem.style.top=`${headerHeight}px`;emptyPlaceholderElem.style.height=bodyWrapperElem?`${bodyWrapperElem.offsetHeight-osbHeight}px`:'';}let bodyHeight=0;let bodyMaxHeight=0;const bodyMinHeight=customMinHeight-headerHeight-footerHeight-osbHeight;if(customMaxHeight){bodyMaxHeight=Math.max(bodyMinHeight,customMaxHeight-headerHeight-footerHeight-osbHeight);}if(customHeight){bodyHeight=customHeight-headerHeight-footerHeight-osbHeight;}if(!bodyHeight){if(bodyTableElem){bodyHeight=bodyTableElem.clientHeight;}}if(bodyHeight){if(bodyMaxHeight){bodyHeight=Math.min(bodyMaxHeight,bodyHeight);}bodyHeight=Math.max(bodyMinHeight,bodyHeight);}const scrollbarXToTop=computeScrollbarXToTop.value;const xLeftCornerEl=refScrollXLeftCornerElem.value;const xRightCornerEl=refScrollXRightCornerElem.value;const scrollXVirtualEl=refScrollXVirtualElem.value;if(scrollXVirtualEl){scrollXVirtualEl.style.height=`${osbHeight}px`;scrollXVirtualEl.style.visibility=overflowX?'visible':'hidden';}const xWrapperEl=refScrollXWrapperElem.value;if(xWrapperEl){xWrapperEl.style.left=scrollbarXToTop?`${osbWidth}px`:'';xWrapperEl.style.width=`${el.clientWidth-osbWidth}px`;}if(xLeftCornerEl){xLeftCornerEl.style.width=scrollbarXToTop?`${osbWidth}px`:'';xLeftCornerEl.style.display=scrollbarXToTop?osbWidth&&osbHeight?'block':'':'';}if(xRightCornerEl){xRightCornerEl.style.width=scrollbarXToTop?'':`${osbWidth}px`;xRightCornerEl.style.display=scrollbarXToTop?'':osbWidth&&osbHeight?'block':'';}const scrollYVirtualEl=refScrollYVirtualElem.value;if(scrollYVirtualEl){scrollYVirtualEl.style.width=`${osbWidth}px`;scrollYVirtualEl.style.height=`${bodyHeight+headerHeight+footerHeight}px`;scrollYVirtualEl.style.visibility=overflowY?'visible':'hidden';}const yTopCornerEl=refScrollYTopCornerElem.value;if(yTopCornerEl){yTopCornerEl.style.height=`${headerHeight}px`;yTopCornerEl.style.display=headerHeight?'block':'';}const yWrapperEl=refScrollYWrapperElem.value;if(yWrapperEl){yWrapperEl.style.height=`${bodyHeight}px`;yWrapperEl.style.top=`${headerHeight}px`;}const yBottomCornerEl=refScrollYBottomCornerElem.value;if(yBottomCornerEl){yBottomCornerEl.style.height=`${footerHeight}px`;yBottomCornerEl.style.top=`${headerHeight+bodyHeight}px`;yBottomCornerEl.style.display=footerHeight?'block':'';}const rowExpandEl=refRowExpandElem.value;if(rowExpandEl){rowExpandEl.style.height=`${bodyHeight}px`;rowExpandEl.style.top=`${headerHeight}px`;}containerList.forEach((name,index)=>{const fixedType=index>0?name:'';const layoutList=['header','body','footer'];const isFixedLeft=fixedType==='left';let fixedColumn=[];let fixedWrapperElem;if(fixedType){fixedColumn=isFixedLeft?columnStore.leftList:columnStore.rightList;fixedWrapperElem=isFixedLeft?refLeftContainer.value:refRightContainer.value;}layoutList.forEach(layout=>{const wrapperElem=getRefElem(elemStore[`${name}-${layout}-wrapper`]);const currScrollElem=getRefElem(elemStore[`${name}-${layout}-scroll`]);const tableElem=getRefElem(elemStore[`${name}-${layout}-table`]);if(layout==='header'){// 表头体样式处理
|
|
10458
10564
|
// 横向滚动渲染
|
|
10459
10565
|
let renderColumnList=tableColumn;let isOptimizeMode=false;if(isGroup){renderColumnList=visibleColumn;}else{// 如果是使用优化模式
|
|
10460
10566
|
if(scrollXLoad||scrollYLoad||allColumnHeaderOverflow){if(spanMethod||footerSpanMethod){// 如果不支持优化模式
|
|
@@ -10466,8 +10572,7 @@ if(scrollXLoad||scrollYLoad||isAllOverflow){if(expandColumn&&expandOpts.mode!=='
|
|
|
10466
10572
|
tableElem.style.paddingRight=osbWidth&&fixedType&&(browse['-moz']||browse.safari)?`${osbWidth}px`:'';}const emptyBlockElem=getRefElem(elemStore[`${name}-${layout}-emptyBlock`]);if(emptyBlockElem){emptyBlockElem.style.width=tWidth?`${tWidth}px`:'';}}else if(layout==='footer'){let renderColumnList=tableColumn;let isOptimizeMode=false;// 如果是使用优化模式
|
|
10467
10573
|
if(scrollXLoad||scrollYLoad||allColumnFooterOverflow){if(spanMethod||footerSpanMethod){// 如果不支持优化模式
|
|
10468
10574
|
}else{isOptimizeMode=true;}}if(fixedType){renderColumnList=visibleColumn;if(isOptimizeMode){renderColumnList=fixedColumn||[];}}const tWidth=renderColumnList.reduce((previous,column)=>previous+column.renderWidth,0);if(fixedType){if(isOptimizeMode){if(wrapperElem){wrapperElem.style.width=tWidth?`${tWidth}px`:'';}}else{if(wrapperElem){wrapperElem.style.width=scrollXWidth?`${scrollXWidth}px`:'';}}}if(currScrollElem){currScrollElem.style.height=`${footerHeight}px`;// 如果是固定列
|
|
10469
|
-
if(fixedWrapperElem){if(wrapperElem){wrapperElem.style.top=`${customHeight>0?customHeight-footerHeight-osbHeight:tableHeight+headerHeight}px`;}}}if(tableElem){tableElem.style.width=tWidth?`${tWidth}px`:'';}}
|
|
10470
|
-
if(scrollYLoad&&!hasEllipsis){hasEllipsis=true;}if(listElem){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(listElem.querySelectorAll(`.${column.id}`),elem=>{const colspan=parseInt(elem.getAttribute('colspan')||1);const cellElem=elem.querySelector('.vxe-cell');let colWidth=column.renderWidth;if(cellElem){if(colspan>1){const columnIndex=$xeTable.getColumnIndex(column);for(let index=1;index<colspan;index++){const nextColumn=$xeTable.getColumns(columnIndex+index);if(nextColumn){colWidth+=nextColumn.renderWidth;}}}cellElem.style.width=hasEllipsis?`${colWidth-cellOffsetWidth*colspan}px`:'';}});}}});}});});if(currentRow){$xeTable.setCurrentRow(currentRow);}if(mouseConfig&&mouseOpts.selected&&editStore.selected.row&&editStore.selected.column){$xeTable.addCellSelectedClass();}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};const checkValidate=type=>{if($xeTable.triggerValidate){return $xeTable.triggerValidate(type);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};/**
|
|
10575
|
+
if(fixedWrapperElem){if(wrapperElem){wrapperElem.style.top=`${customHeight>0?customHeight-footerHeight-osbHeight:tableHeight+headerHeight}px`;}}}if(tableElem){tableElem.style.width=tWidth?`${tWidth}px`:'';}}});});if(currentRow){$xeTable.setCurrentRow(currentRow);}if(mouseConfig&&mouseOpts.selected&&editStore.selected.row&&editStore.selected.column){$xeTable.addCellSelectedClass();}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};const checkValidate=type=>{if($xeTable.triggerValidate){return $xeTable.triggerValidate(type);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};/**
|
|
10471
10576
|
* 当单元格发生改变时
|
|
10472
10577
|
* 如果存在规则,则校验
|
|
10473
10578
|
*/const handleChangeCell=(evnt,params)=>{checkValidate('blur').catch(e=>e).then(()=>{$xeTable.handleEdit(params,evnt).then(()=>checkValidate('change')).catch(e=>e);});};const handleDefaultSort=()=>{const{sortConfig}=props;if(sortConfig){const sortOpts=computeSortOpts.value;let{defaultSort}=sortOpts;if(defaultSort){if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(defaultSort)){defaultSort=[defaultSort];}if(defaultSort.length){(sortConfig.multiple?defaultSort:defaultSort.slice(0,1)).forEach((item,index)=>{const{field,order}=item;if(field&&order){const column=tableMethods.getColumnByField(field);if(column&&column.sortable){column.order=order;column.sortTime=Date.now()+index;}}});if(!sortOpts.remote){tablePrivateMethods.handleTableData(true).then(updateStyle);}}}}};/**
|
|
@@ -10476,11 +10581,11 @@ if(scrollYLoad&&!hasEllipsis){hasEllipsis=true;}if(listElem){external_root_XEUti
|
|
|
10476
10581
|
* 处理单选框默认勾选
|
|
10477
10582
|
*/const handleDefaultRadioChecked=()=>{const{radioConfig}=props;if(radioConfig){const{fullDataRowIdData}=internalData;const radioOpts=computeRadioOpts.value;const{checkRowKey:rowid,reserve}=radioOpts;if(rowid){if(fullDataRowIdData[rowid]){handleCheckedRadioRow(fullDataRowIdData[rowid].row,true);}if(reserve){const rowkey=getRowkey($xeTable);internalData.radioReserveRow={[rowkey]:rowid};}}}};/**
|
|
10478
10583
|
* 处理默认展开行
|
|
10479
|
-
*/const handleDefaultRowExpand=()=>{const{expandConfig}=props;if(expandConfig){const{fullDataRowIdData}=internalData;const expandOpts=computeExpandOpts.value;const{expandAll,expandRowKeys}=expandOpts;if(expandAll){tableMethods.setAllRowExpand(true);}else if(expandRowKeys){const defExpandeds=[];expandRowKeys.forEach(rowid=>{if(fullDataRowIdData[rowid]){defExpandeds.push(fullDataRowIdData[rowid].row);}});tableMethods.setRowExpand(defExpandeds,true);}}};const handleRadioReserveRow=row=>{const radioOpts=computeRadioOpts.value;if(radioOpts.reserve){internalData.radioReserveRow=row;}};const handleCheckboxReserveRow=(row,checked)=>{const{checkboxReserveRowMap}=internalData;const checkboxOpts=computeCheckboxOpts.value;if(checkboxOpts.reserve){const rowid=getRowid($xeTable,row);if(checked){checkboxReserveRowMap[rowid]=row;}else if(checkboxReserveRowMap[rowid]){delete checkboxReserveRowMap[rowid];}}};const handleCheckedRadioRow=(row,isForce)=>{const radioOpts=computeRadioOpts.value;const{checkMethod}=radioOpts;if(row&&(isForce||!checkMethod||checkMethod({row}))){reactData.selectRadioRow=row;handleRadioReserveRow(row);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};const handleCheckedCheckboxRow=(rows,value,isForce)=>{if(rows&&!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){rows=[rows];}$xeTable.handleBatchSelectRows(rows,!!value,isForce);$xeTable.checkSelectionStatus();return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};const handleCheckedAllCheckboxRow=(checked,isForce)=>{const{treeConfig}=props;const{
|
|
10584
|
+
*/const handleDefaultRowExpand=()=>{const{expandConfig}=props;if(expandConfig){const{fullDataRowIdData}=internalData;const expandOpts=computeExpandOpts.value;const{expandAll,expandRowKeys}=expandOpts;if(expandAll){tableMethods.setAllRowExpand(true);}else if(expandRowKeys){const defExpandeds=[];expandRowKeys.forEach(rowid=>{if(fullDataRowIdData[rowid]){defExpandeds.push(fullDataRowIdData[rowid].row);}});tableMethods.setRowExpand(defExpandeds,true);}}};const handleRadioReserveRow=row=>{const radioOpts=computeRadioOpts.value;if(radioOpts.reserve){internalData.radioReserveRow=row;}};const handleCheckboxReserveRow=(row,checked)=>{const{checkboxReserveRowMap}=internalData;const checkboxOpts=computeCheckboxOpts.value;if(checkboxOpts.reserve){const rowid=getRowid($xeTable,row);if(checked){checkboxReserveRowMap[rowid]=row;}else if(checkboxReserveRowMap[rowid]){delete checkboxReserveRowMap[rowid];}}};const handleCheckedRadioRow=(row,isForce)=>{const radioOpts=computeRadioOpts.value;const{checkMethod}=radioOpts;if(row&&(isForce||!checkMethod||checkMethod({row}))){reactData.selectRadioRow=row;handleRadioReserveRow(row);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};const handleCheckedCheckboxRow=(rows,value,isForce)=>{if(rows&&!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){rows=[rows];}$xeTable.handleBatchSelectRows(rows,!!value,isForce);$xeTable.checkSelectionStatus();return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};const handleCheckedAllCheckboxRow=(checked,isForce)=>{const{treeConfig}=props;const{afterFullData,checkboxReserveRowMap,selectCheckboxMaps}=internalData;const treeOpts=computeTreeOpts.value;const childrenField=treeOpts.children||treeOpts.childrenField;const checkboxOpts=computeCheckboxOpts.value;const{checkField,reserve,checkMethod}=checkboxOpts;const{handleGetRowId}=createHandleGetRowId($xeTable);// indeterminateField 仅支持读取
|
|
10480
10585
|
const indeterminateField=checkboxOpts.indeterminateField||checkboxOpts.halfField;const selectRowMaps={};/**
|
|
10481
10586
|
* 绑定属性方式(高性能,有污染)
|
|
10482
10587
|
* 必须在行数据存在对应的属性,否则将不响应
|
|
10483
|
-
*/if(checkField){const checkValFn=row=>{if(isForce||!checkMethod||checkMethod({row})){if(checked){selectRowMaps[
|
|
10588
|
+
*/if(checkField){const checkValFn=row=>{if(isForce||!checkMethod||checkMethod({row})){if(checked){selectRowMaps[handleGetRowId(row)]=row;}external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,checkField,checked);}if(treeConfig&&indeterminateField){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,indeterminateField,false);}};// 如果存在选中方法
|
|
10484
10589
|
// 如果方法成立,则更新值,否则忽略该数据
|
|
10485
10590
|
if(treeConfig){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterFullData,checkValFn,{children:childrenField});}else{afterFullData.forEach(checkValFn);}}else{/**
|
|
10486
10591
|
* 默认方式(低性能,无污染)
|
|
@@ -10488,42 +10593,42 @@ if(treeConfig){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe
|
|
|
10488
10593
|
*/if(treeConfig){if(checked){/**
|
|
10489
10594
|
* 如果是树勾选
|
|
10490
10595
|
* 如果方法成立,则添加到临时集合中
|
|
10491
|
-
*/external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterFullData,row=>{if(isForce||!checkMethod||checkMethod({row})){
|
|
10596
|
+
*/external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterFullData,row=>{if(isForce||!checkMethod||checkMethod({row})){const rowid=handleGetRowId(row);selectRowMaps[rowid]=row;}},{children:childrenField});}else{/**
|
|
10492
10597
|
* 如果是树取消
|
|
10493
10598
|
* 如果方法成立,则不添加到临时集合中
|
|
10494
|
-
*/if(!isForce&&checkMethod){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterFullData,row=>{const rowid=
|
|
10599
|
+
*/if(!isForce&&checkMethod){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterFullData,row=>{const rowid=handleGetRowId(row);if(checkMethod({row})?0:selectCheckboxMaps[rowid]){selectRowMaps[rowid]=row;}},{children:childrenField});}}}else{if(checked){/**
|
|
10495
10600
|
* 如果是行勾选
|
|
10496
10601
|
* 如果存在选中方法且成立或者本身已勾选,则添加到临时集合中
|
|
10497
10602
|
* 如果不存在选中方法,则添加所有数据到临时集合中
|
|
10498
|
-
*/if(!isForce&&checkMethod){afterFullData.forEach(row=>{const rowid=
|
|
10603
|
+
*/if(!isForce&&checkMethod){afterFullData.forEach(row=>{const rowid=handleGetRowId(row);if(selectCheckboxMaps[rowid]||checkMethod({row})){selectRowMaps[rowid]=row;}});}else{afterFullData.forEach(row=>{const rowid=handleGetRowId(row);selectRowMaps[rowid]=row;});}}else{/**
|
|
10499
10604
|
* 如果是行取消
|
|
10500
10605
|
* 如果方法成立,则不添加到临时集合中;如果方法不成立则判断当前是否已勾选,如果已被勾选则添加到新集合中
|
|
10501
10606
|
* 如果不存在选中方法,无需处理,临时集合默认为空
|
|
10502
|
-
*/if(!isForce&&checkMethod){afterFullData.forEach(row=>{const rowid=
|
|
10503
|
-
const handleReserveStatus=()=>{const{treeConfig}=props;const{expandColumn,currentRow,
|
|
10607
|
+
*/if(!isForce&&checkMethod){afterFullData.forEach(row=>{const rowid=handleGetRowId(row);if(checkMethod({row})?0:selectCheckboxMaps[rowid]){selectRowMaps[rowid]=row;}});}}}}if(reserve){if(checked){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(selectRowMaps,(row,rowid)=>{checkboxReserveRowMap[rowid]=row;});}else{afterFullData.forEach(row=>handleCheckboxReserveRow(row,false));}}reactData.updateCheckboxFlag++;internalData.selectCheckboxMaps=checkField?{}:selectRowMaps;reactData.isAllSelected=checked;reactData.isIndeterminate=false;internalData.treeIndeterminateRowMaps={};$xeTable.checkSelectionStatus();return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};// 还原展开、选中等相关状态
|
|
10608
|
+
const handleReserveStatus=()=>{const{treeConfig}=props;const{expandColumn,currentRow,selectRadioRow}=reactData;const{fullDataRowIdData,fullAllDataRowIdData,radioReserveRow,selectCheckboxMaps,treeExpandedMaps,rowExpandedMaps}=internalData;const expandOpts=computeExpandOpts.value;const treeOpts=computeTreeOpts.value;const radioOpts=computeRadioOpts.value;const checkboxOpts=computeCheckboxOpts.value;// 单选框
|
|
10504
10609
|
if(selectRadioRow&&!fullAllDataRowIdData[getRowid($xeTable,selectRadioRow)]){reactData.selectRadioRow=null;// 刷新单选行状态
|
|
10505
10610
|
}// 还原保留选中状态
|
|
10506
10611
|
if(radioOpts.reserve&&radioReserveRow){const rowid=getRowid($xeTable,radioReserveRow);if(fullDataRowIdData[rowid]){handleCheckedRadioRow(fullDataRowIdData[rowid].row,true);}}// 复选框
|
|
10507
|
-
|
|
10508
|
-
|
|
10612
|
+
internalData.selectCheckboxMaps=getRecoverRowMaps(selectCheckboxMaps);// 刷新多选行状态
|
|
10613
|
+
reactData.updateCheckboxFlag++;// 还原保留选中状态
|
|
10509
10614
|
if(checkboxOpts.reserve){handleCheckedCheckboxRow(handleReserveRow(internalData.checkboxReserveRowMap),true,true);}if(currentRow&&!fullAllDataRowIdData[getRowid($xeTable,currentRow)]){reactData.currentRow=null;// 刷新当前行状态
|
|
10510
10615
|
}// 行展开
|
|
10511
|
-
|
|
10512
|
-
|
|
10616
|
+
internalData.rowExpandedMaps=expandColumn?getRecoverRowMaps(rowExpandedMaps):{};// 刷新行展开状态
|
|
10617
|
+
reactData.rowExpandedFlag++;// 还原保留状态
|
|
10513
10618
|
if(expandColumn&&expandOpts.reserve){$xeTable.setRowExpand(handleReserveRow(internalData.rowExpandedReserveRowMap),true);}// 树展开
|
|
10514
|
-
|
|
10515
|
-
if(treeConfig&&treeOpts.reserve){$xeTable.setTreeExpand(handleReserveRow(internalData.treeExpandedReserveRowMap),true);}};/**
|
|
10619
|
+
internalData.treeExpandedMaps=treeConfig?getRecoverRowMaps(treeExpandedMaps):{};// 刷新树展开状态
|
|
10620
|
+
reactData.treeExpandedFlag++;if(treeConfig&&treeOpts.reserve){$xeTable.setTreeExpand(handleReserveRow(internalData.treeExpandedReserveRowMap),true);}};/**
|
|
10516
10621
|
* 处理默认展开树节点
|
|
10517
|
-
*/const handleDefaultTreeExpand=()=>{const{treeConfig}=props;if(treeConfig){const{tableFullData}=internalData;const treeOpts=computeTreeOpts.value;const{expandAll,expandRowKeys}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;if(expandAll){
|
|
10518
|
-
if(!checkStrictly
|
|
10622
|
+
*/const handleDefaultTreeExpand=()=>{const{treeConfig}=props;if(treeConfig){const{tableFullData}=internalData;const treeOpts=computeTreeOpts.value;const{expandAll,expandRowKeys}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;if(expandAll){$xeTable.setAllTreeExpand(true);}else if(expandRowKeys){const defExpandeds=[];const rowkey=getRowkey($xeTable);expandRowKeys.forEach(rowid=>{const matchObj=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findTree(tableFullData,item=>rowid===external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(item,rowkey),{children:childrenField});if(matchObj){defExpandeds.push(matchObj.item);}});$xeTable.setTreeExpand(defExpandeds,true);}}};const handleAsyncTreeExpandChilds=row=>{const treeOpts=computeTreeOpts.value;const checkboxOpts=computeCheckboxOpts.value;const{transform,loadMethod}=treeOpts;const{checkStrictly}=checkboxOpts;return new Promise(resolve=>{if(loadMethod){const{fullAllDataRowIdData,treeExpandLazyLoadedMaps}=internalData;const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];treeExpandLazyLoadedMaps[rowid]=row;Promise.resolve(loadMethod({$table:$xeTable,row})).then(childRecords=>{if(rowRest){rowRest.treeLoaded=true;}if(treeExpandLazyLoadedMaps[rowid]){delete treeExpandLazyLoadedMaps[rowid];}if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(childRecords)){childRecords=[];}if(childRecords){return $xeTable.loadTreeChildren(row,childRecords).then(childRows=>{const{treeExpandedMaps}=internalData;if(childRows.length&&!treeExpandedMaps[rowid]){treeExpandedMaps[rowid]=row;}reactData.treeExpandedFlag++;// 如果当前节点已选中,则展开后子节点也被选中
|
|
10623
|
+
if(!checkStrictly&&$xeTable.isCheckedByCheckboxRow(row)){handleCheckedCheckboxRow(childRows,true);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{if(transform){$xeTable.handleTableData();updateAfterDataIndex();return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}});});}}).catch(()=>{const{treeExpandLazyLoadedMaps}=internalData;if(rowRest){rowRest.treeLoaded=false;}if(treeExpandLazyLoadedMaps[rowid]){delete treeExpandLazyLoadedMaps[rowid];}}).finally(()=>{reactData.treeExpandedFlag++;(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>$xeTable.recalculate()).then(()=>resolve());});}else{resolve();}});};const handleTreeExpandReserve=(row,expanded)=>{const{treeExpandedReserveRowMap}=internalData;const treeOpts=computeTreeOpts.value;if(treeOpts.reserve){const rowid=getRowid($xeTable,row);if(expanded){treeExpandedReserveRowMap[rowid]=row;}else if(treeExpandedReserveRowMap[rowid]){delete treeExpandedReserveRowMap[rowid];}}};const handleAsyncRowExpand=row=>{return new Promise(resolve=>{const expandOpts=computeExpandOpts.value;const{loadMethod}=expandOpts;if(loadMethod){const{fullAllDataRowIdData,rowExpandLazyLoadedMaps}=internalData;const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];rowExpandLazyLoadedMaps[rowid]=row;loadMethod({$table:$xeTable,row,rowIndex:$xeTable.getRowIndex(row),$rowIndex:$xeTable.getVMRowIndex(row)}).then(()=>{const{rowExpandedMaps}=internalData;if(rowRest){rowRest.expandLoaded=true;}rowExpandedMaps[rowid]=row;reactData.rowExpandedFlag++;}).catch(()=>{if(rowRest){rowRest.expandLoaded=false;}}).finally(()=>{const{rowExpandLazyLoadedMaps}=internalData;if(rowExpandLazyLoadedMaps[rowid]){delete rowExpandLazyLoadedMaps[rowid];}reactData.rowExpandedFlag++;(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>$xeTable.recalculate()).then(()=>$xeTable.updateCellAreas()).then(()=>resolve());});}else{resolve();}});};const handleRowExpandReserve=(row,expanded)=>{const{rowExpandedReserveRowMap}=internalData;const expandOpts=computeExpandOpts.value;if(expandOpts.reserve){const rowid=getRowid($xeTable,row);if(expanded){rowExpandedReserveRowMap[rowid]=row;}else if(rowExpandedReserveRowMap[rowid]){delete rowExpandedReserveRowMap[rowid];}}};const handleDefaultMergeCells=()=>{const{mergeCells}=props;if(mergeCells){tableMethods.setMergeCells(mergeCells);}};const handleDefaultMergeFooterItems=()=>{const{mergeFooterItems}=props;if(mergeFooterItems){tableMethods.setMergeFooterItems(mergeFooterItems);}};// 计算可视渲染相关数据
|
|
10519
10624
|
const computeScrollLoad=()=>{return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{const{scrollXLoad,scrollYLoad}=reactData;const{scrollXStore,scrollYStore}=internalData;const virtualYOpts=computeVirtualYOpts.value;const virtualXOpts=computeVirtualXOpts.value;// 计算 X 逻辑
|
|
10520
10625
|
if(scrollXLoad){const{toVisibleIndex:toXVisibleIndex,visibleSize:visibleXSize}=handleVirtualXVisible();const offsetXSize=Math.max(0,virtualXOpts.oSize?external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(virtualXOpts.oSize):0);scrollXStore.preloadSize=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(virtualXOpts.preSize);scrollXStore.offsetSize=offsetXSize;scrollXStore.visibleSize=visibleXSize;scrollXStore.endIndex=Math.max(scrollXStore.startIndex+scrollXStore.visibleSize+offsetXSize,scrollXStore.endIndex);scrollXStore.visibleStartIndex=Math.max(scrollXStore.startIndex,toXVisibleIndex);scrollXStore.visibleEndIndex=Math.min(scrollXStore.endIndex,toXVisibleIndex+visibleXSize);$xeTable.updateScrollXData().then(()=>{loadScrollXData();});}else{$xeTable.updateScrollXSpace();}// 计算 Y 逻辑
|
|
10521
|
-
const rowHeight=computeRowHeight();scrollYStore.rowHeight=rowHeight;reactData.rowHeight=rowHeight;const{toVisibleIndex:toYVisibleIndex,visibleSize:visibleYSize}=handleVirtualYVisible();if(scrollYLoad){const offsetYSize=Math.max(0,virtualYOpts.oSize?external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(virtualYOpts.oSize):0);scrollYStore.preloadSize=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(virtualYOpts.preSize);scrollYStore.offsetSize=offsetYSize;scrollYStore.visibleSize=visibleYSize;scrollYStore.endIndex=Math.max(scrollYStore.startIndex+visibleYSize+offsetYSize,scrollYStore.endIndex);scrollYStore.visibleStartIndex=Math.max(scrollYStore.startIndex,toYVisibleIndex);scrollYStore.visibleEndIndex=Math.min(scrollYStore.endIndex,toYVisibleIndex+visibleYSize);$xeTable.updateScrollYData().then(()=>{loadScrollYData();});}else{$xeTable.updateScrollYSpace();}(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(()=>{updateStyle();});});};const handleRecalculateLayout=reFull=>{const el=refElem.value;internalData.rceRunTime=Date.now();if(!el||!el.clientWidth){return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}const varEl=refVarElem.value;if(varEl){const[defEl,mediumEl,smallEl,miniEl]=varEl.children;calcVarRowHeightConfig('default',defEl);calcVarRowHeightConfig('medium',mediumEl);calcVarRowHeightConfig('small',smallEl);calcVarRowHeightConfig('mini',miniEl);}calcCellWidth();autoCellWidth();updateStyle();
|
|
10626
|
+
const rowHeight=computeRowHeight();scrollYStore.rowHeight=rowHeight;reactData.rowHeight=rowHeight;const{toVisibleIndex:toYVisibleIndex,visibleSize:visibleYSize}=handleVirtualYVisible();if(scrollYLoad){const offsetYSize=Math.max(0,virtualYOpts.oSize?external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(virtualYOpts.oSize):0);scrollYStore.preloadSize=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(virtualYOpts.preSize);scrollYStore.offsetSize=offsetYSize;scrollYStore.visibleSize=visibleYSize;scrollYStore.endIndex=Math.max(scrollYStore.startIndex+visibleYSize+offsetYSize,scrollYStore.endIndex);scrollYStore.visibleStartIndex=Math.max(scrollYStore.startIndex,toYVisibleIndex);scrollYStore.visibleEndIndex=Math.min(scrollYStore.endIndex,toYVisibleIndex+visibleYSize);$xeTable.updateScrollYData().then(()=>{loadScrollYData();});}else{$xeTable.updateScrollYSpace();}(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(()=>{updateStyle();});});};const handleRecalculateLayout=reFull=>{const el=refElem.value;internalData.rceRunTime=Date.now();if(!el||!el.clientWidth){return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}const varEl=refVarElem.value;if(varEl){const[defEl,mediumEl,smallEl,miniEl]=varEl.children;calcVarRowHeightConfig('default',defEl);calcVarRowHeightConfig('medium',mediumEl);calcVarRowHeightConfig('small',smallEl);calcVarRowHeightConfig('mini',miniEl);}calcCellWidth();autoCellWidth();updateStyle();updateRowExpandStyle();return computeScrollLoad().then(()=>{if(reFull===true){// 初始化时需要在列计算之后再执行优化运算,达到最优显示效果
|
|
10522
10627
|
calcCellWidth();autoCellWidth();updateStyle();if(reFull){updateRowOffsetTop();}updateRowExpandStyle();return computeScrollLoad();}});};/**
|
|
10523
10628
|
* 加载表格数据
|
|
10524
10629
|
* @param {Array} datas 数据
|
|
10525
10630
|
*/const loadTableData=(datas,isReset)=>{const{keepSource,treeConfig}=props;const{editStore,scrollYLoad:oldScrollYLoad}=reactData;const{scrollYStore,scrollXStore,lastScrollLeft,lastScrollTop}=internalData;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;let treeData=[];let fullData=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)(datas?datas.slice(0):[]);// 转为响应式数据
|
|
10526
|
-
if(treeConfig){if(transform){// 树结构自动转换
|
|
10631
|
+
if(fullData.length>supportMaxRow){errLog('vxe.error.errMaxRow',[supportMaxRow]);}if(treeConfig){if(transform){// 树结构自动转换
|
|
10527
10632
|
if(!treeOpts.rowField){errLog('vxe.error.reqProp',['tree-config.rowField']);}if(!treeOpts.parentField){errLog('vxe.error.reqProp',['tree-config.parentField']);}if(!childrenField){errLog('vxe.error.reqProp',['tree-config.childrenField']);}if(!treeOpts.mapChildrenField){errLog('vxe.error.reqProp',['tree-config.mapChildrenField']);}if(childrenField===treeOpts.mapChildrenField){errLog('vxe.error.errConflicts',['tree-config.childrenField','tree-config.mapChildrenField']);}// fullData.forEach(row => {
|
|
10528
10633
|
// if (row[treeOpts.children] && row[treeOpts.children].length) {
|
|
10529
10634
|
// warnLog('vxe.error.errConflicts', ['tree-config.transform', `row.${treeOpts.children}`])
|
|
@@ -10554,17 +10659,29 @@ if(oldScrollYLoad===sYLoad){restoreScrollLocation($xeTable,targetScrollLeft,targ
|
|
|
10554
10659
|
* 处理初始化的默认行为
|
|
10555
10660
|
* 只会执行一次
|
|
10556
10661
|
*/const handleInitDefaults=()=>{handleDefaultSort();};const handleTableColumn=()=>{const{scrollXLoad}=reactData;const{visibleColumn,scrollXStore,fullColumnIdData}=internalData;const tableColumn=scrollXLoad?visibleColumn.slice(scrollXStore.startIndex,scrollXStore.endIndex):visibleColumn.slice(0);tableColumn.forEach((column,$index)=>{const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest.$index=$index;}});reactData.tableColumn=tableColumn;};const handleUpdateColumn=()=>{const columnList=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().orderBy(internalData.collectColumn,'renderSortNumber');internalData.collectColumn=columnList;const tableFullColumn=getColumnList(columnList);internalData.tableFullColumn=tableFullColumn;cacheColumnMap();};const loadScrollXData=()=>{const{mergeList,mergeFooterList,isScrollXBig}=reactData;const{scrollXStore}=internalData;const{preloadSize,startIndex,endIndex,offsetSize}=scrollXStore;const{toVisibleIndex,visibleSize}=handleVirtualXVisible();const offsetItem={startIndex:Math.max(0,isScrollXBig?toVisibleIndex-1:toVisibleIndex-1-offsetSize-preloadSize),endIndex:isScrollXBig?toVisibleIndex+visibleSize:toVisibleIndex+visibleSize+offsetSize+preloadSize};scrollXStore.visibleStartIndex=toVisibleIndex-1;scrollXStore.visibleEndIndex=toVisibleIndex+visibleSize+1;calculateMergerOffsetIndex(mergeList.concat(mergeFooterList),offsetItem,'col');const{startIndex:offsetStartIndex,endIndex:offsetEndIndex}=offsetItem;if(toVisibleIndex<=startIndex||toVisibleIndex>=endIndex-visibleSize-1){if(startIndex!==offsetStartIndex||endIndex!==offsetEndIndex){scrollXStore.startIndex=offsetStartIndex;scrollXStore.endIndex=offsetEndIndex;$xeTable.updateScrollXData();}}$xeTable.closeTooltip();};// 获取所有的列,排除分组
|
|
10557
|
-
const getColumnList=columns=>{const result=[];columns.forEach(column=>{result.push(...(column.children&&column.children.length?getColumnList(column.children):[column]));});return result;};const parseColumns=isReset=>{
|
|
10662
|
+
const getColumnList=columns=>{const result=[];columns.forEach(column=>{result.push(...(column.children&&column.children.length?getColumnList(column.children):[column]));});return result;};const parseColumns=isReset=>{// const { showOverflow } = props
|
|
10663
|
+
// const rowOpts = computeRowOpts.value
|
|
10664
|
+
const leftList=[];const centerList=[];const rightList=[];const{isGroup,columnStore}=reactData;const sXOpts=computeSXOpts.value;const{collectColumn,tableFullColumn,scrollXStore,fullColumnIdData}=internalData;// 如果是分组表头,如果子列全部被隐藏,则根列也隐藏
|
|
10558
10665
|
if(isGroup){const leftGroupList=[];const centerGroupList=[];const rightGroupList=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn,(column,index,items,path,parentColumn)=>{const isColGroup=hasChildrenList(column);// 如果是分组,必须按组设置固定列,不允许给子列设置固定
|
|
10559
10666
|
if(parentColumn&&parentColumn.fixed){column.fixed=parentColumn.fixed;}if(parentColumn&&column.fixed!==parentColumn.fixed){errLog('vxe.error.groupFixed');}if(isColGroup){column.visible=!!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findTree(column.children,subColumn=>hasChildrenList(subColumn)?false:subColumn.visible);}else if(column.visible){if(column.fixed==='left'){leftList.push(column);}else if(column.fixed==='right'){rightList.push(column);}else{centerList.push(column);}}});collectColumn.forEach(column=>{if(column.visible){if(column.fixed==='left'){leftGroupList.push(column);}else if(column.fixed==='right'){rightGroupList.push(column);}else{centerGroupList.push(column);}}});reactData.tableGroupColumn=leftGroupList.concat(centerGroupList).concat(rightGroupList);}else{// 重新分配列
|
|
10560
10667
|
tableFullColumn.forEach(column=>{if(column.visible){if(column.fixed==='left'){leftList.push(column);}else if(column.fixed==='right'){rightList.push(column);}else{centerList.push(column);}}});}const visibleColumn=leftList.concat(centerList).concat(rightList);// 如果gt为0,则总是启用
|
|
10561
|
-
const scrollXLoad=!!sXOpts.enabled&&sXOpts.gt>-1&&(sXOpts.gt===0||sXOpts.gt<tableFullColumn.length);reactData.hasFixedColumn=leftList.length>0||rightList.length>0;Object.assign(columnStore,{leftList,centerList,rightList});if(scrollXLoad){
|
|
10668
|
+
const scrollXLoad=!!sXOpts.enabled&&sXOpts.gt>-1&&(sXOpts.gt===0||sXOpts.gt<tableFullColumn.length);reactData.hasFixedColumn=leftList.length>0||rightList.length>0;Object.assign(columnStore,{leftList,centerList,rightList});if(scrollXLoad){// if (showOverflow) {
|
|
10669
|
+
// if (!rowOpts.height) {
|
|
10670
|
+
// const errColumn = internalData.tableFullColumn.find(column => column.showOverflow === false)
|
|
10671
|
+
// if (errColumn) {
|
|
10672
|
+
// errLog('vxe.error.errProp', [`column[field="${errColumn.field}"].show-overflow=false`, 'show-overflow=true'])
|
|
10673
|
+
// }
|
|
10674
|
+
// }
|
|
10675
|
+
// }
|
|
10676
|
+
// if (process.env.VUE_APP_VXE_ENV === 'development') {
|
|
10677
|
+
// if (props.showHeader && !props.showHeaderOverflow) {
|
|
10562
10678
|
// warnLog('vxe.error.reqProp', ['show-header-overflow'])
|
|
10563
10679
|
// }
|
|
10564
10680
|
// if (props.showFooter && !props.showFooterOverflow) {
|
|
10565
10681
|
// warnLog('vxe.error.reqProp', ['show-footer-overflow'])
|
|
10566
10682
|
// }
|
|
10567
|
-
if(props.spanMethod){warnLog('vxe.error.scrollErrProp',['span-method']);}if(props.footerSpanMethod){warnLog('vxe.error.scrollErrProp',['footer-span-method']);}
|
|
10683
|
+
if(props.spanMethod){warnLog('vxe.error.scrollErrProp',['span-method']);}if(props.footerSpanMethod){warnLog('vxe.error.scrollErrProp',['footer-span-method']);}// }
|
|
10684
|
+
if(isReset){const{visibleSize}=handleVirtualXVisible();scrollXStore.startIndex=0;scrollXStore.endIndex=visibleSize;scrollXStore.visibleSize=visibleSize;scrollXStore.visibleStartIndex=0;scrollXStore.visibleEndIndex=visibleSize;}}// 如果列被显示/隐藏,则清除合并状态
|
|
10568
10685
|
// 如果列被设置为固定,则清除合并状态
|
|
10569
10686
|
if(visibleColumn.length!==internalData.visibleColumn.length||!internalData.visibleColumn.every((column,index)=>column===visibleColumn[index])){$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();}reactData.scrollXLoad=scrollXLoad;visibleColumn.forEach((column,index)=>{const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest._index=index;}});internalData.visibleColumn=visibleColumn;handleTableColumn();if(isReset){updateColumnOffsetLeft();return $xeTable.updateFooter().then(()=>{return $xeTable.recalculate();}).then(()=>{$xeTable.updateCellAreas();return $xeTable.recalculate();});}return $xeTable.updateFooter();};const initColumnSort=()=>{const{collectColumn}=internalData;collectColumn.forEach((column,index)=>{const sortIndex=index+1;column.sortNumber=sortIndex;column.renderSortNumber=sortIndex;});};const handleColumn=collectColumn=>{const expandOpts=computeExpandOpts.value;internalData.collectColumn=collectColumn;const tableFullColumn=getColumnList(collectColumn);internalData.tableFullColumn=tableFullColumn;reactData.isColLoading=true;reactData.isDragColMove=false;initColumnSort();return Promise.resolve(restoreCustomStorage()).then(()=>{const{scrollXLoad,scrollYLoad,expandColumn}=reactData;cacheColumnMap();parseColumns(true).then(()=>{if(reactData.scrollXLoad){loadScrollXData();}});$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();$xeTable.handleTableData(true);if((scrollXLoad||scrollYLoad)&&expandColumn&&expandOpts.mode!=='fixed'){warnLog('vxe.error.scrollErrProp',['column.type=expand']);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{if($xeToolbar){$xeToolbar.syncUpdate({collectColumn:internalData.collectColumn,$table:$xeTable});}if($xeTable.handleUpdateCustomColumn){$xeTable.handleUpdateCustomColumn();}reactData.isColLoading=false;return $xeTable.recalculate();});});};const updateScrollYStatus=fullData=>{const{treeConfig}=props;const sYOpts=computeSYOpts.value;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;const allList=fullData||internalData.tableFullData;// 如果gt为0,则总是启用
|
|
10570
10687
|
const scrollYLoad=(transform||!treeConfig)&&!!sYOpts.enabled&&sYOpts.gt>-1&&(sYOpts.gt===0||sYOpts.gt<allList.length);reactData.scrollYLoad=scrollYLoad;return scrollYLoad;};/**
|
|
@@ -10572,17 +10689,17 @@ const scrollYLoad=(transform||!treeConfig)&&!!sYOpts.enabled&&sYOpts.gt>-1&&(sYO
|
|
|
10572
10689
|
* @param rows
|
|
10573
10690
|
* @param expanded
|
|
10574
10691
|
* @returns
|
|
10575
|
-
*/const handleBaseTreeExpand=(rows,expanded)=>{const{
|
|
10576
|
-
const matchObj=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findTree(tableFullData,item=>item===validRows[0],{children:childrenField});if(matchObj){matchObj.items.forEach(item=>{const rowid=
|
|
10577
|
-
if(isLoad){result.push(handleAsyncTreeExpandChilds(row));}else{if(row[childrenField]&&row[childrenField].length){
|
|
10692
|
+
*/const handleBaseTreeExpand=(rows,expanded)=>{const{treeNodeColumn}=reactData;const{fullAllDataRowIdData,tableFullData,treeExpandedMaps,treeExpandLazyLoadedMaps}=internalData;const treeOpts=computeTreeOpts.value;const{reserve,lazy,accordion,toggleMethod}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const hasChildField=treeOpts.hasChild||treeOpts.hasChildField;const result=[];const columnIndex=tableMethods.getColumnIndex(treeNodeColumn);const $columnIndex=tableMethods.getVMColumnIndex(treeNodeColumn);const{handleGetRowId}=createHandleGetRowId($xeTable);let validRows=toggleMethod?rows.filter(row=>toggleMethod({$table:$xeTable,expanded,column:treeNodeColumn,columnIndex,$columnIndex,row})):rows;if(accordion){validRows=validRows.length?[validRows[validRows.length-1]]:[];// 同一级只能展开一个
|
|
10693
|
+
const matchObj=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findTree(tableFullData,item=>item===validRows[0],{children:childrenField});if(matchObj){matchObj.items.forEach(item=>{const rowid=handleGetRowId(item);if(treeExpandedMaps[rowid]){delete treeExpandedMaps[rowid];}});}}if(expanded){validRows.forEach(row=>{const rowid=handleGetRowId(row);if(!treeExpandedMaps[rowid]){const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const isLoad=lazy&&row[hasChildField]&&!rowRest.treeLoaded&&!treeExpandLazyLoadedMaps[rowid];// 是否使用懒加载
|
|
10694
|
+
if(isLoad){result.push(handleAsyncTreeExpandChilds(row));}else{if(row[childrenField]&&row[childrenField].length){treeExpandedMaps[rowid]=row;}}}}});}else{validRows.forEach(item=>{const rowid=handleGetRowId(item);if(treeExpandedMaps[rowid]){delete treeExpandedMaps[rowid];}});}if(reserve){validRows.forEach(row=>handleTreeExpandReserve(row,expanded));}reactData.treeExpandedFlag++;return Promise.all(result).then(()=>{return tableMethods.recalculate();});};/**
|
|
10578
10695
|
* 虚拟树的展开与收起
|
|
10579
10696
|
* @param rows
|
|
10580
10697
|
* @param expanded
|
|
10581
10698
|
* @returns
|
|
10582
|
-
*/const handleVirtualTreeExpand=(rows,expanded)=>{return handleBaseTreeExpand(rows,expanded).then(()=>{handleVirtualTreeToList();tablePrivateMethods.handleTableData();updateAfterDataIndex();return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}).then(()=>{return tableMethods.recalculate(true);}).then(()=>{setTimeout(()=>{tableMethods.updateCellAreas();},30);});};const handleCheckAllEvent=(evnt,value)=>{handleCheckedAllCheckboxRow(value);if(evnt){dispatchEvent('checkbox-all',{records
|
|
10699
|
+
*/const handleVirtualTreeExpand=(rows,expanded)=>{return handleBaseTreeExpand(rows,expanded).then(()=>{handleVirtualTreeToList();tablePrivateMethods.handleTableData();updateAfterDataIndex();return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}).then(()=>{return tableMethods.recalculate(true);}).then(()=>{setTimeout(()=>{tableMethods.updateCellAreas();},30);});};const handleCheckAllEvent=(evnt,value)=>{handleCheckedAllCheckboxRow(value);if(evnt){dispatchEvent('checkbox-all',{records:()=>$xeTable.getCheckboxRecords(),reserves:()=>$xeTable.getCheckboxReserveRecords(),indeterminates:()=>$xeTable.getCheckboxIndeterminateRecords(),checked:value},evnt);}};/**
|
|
10583
10700
|
* 纵向 Y 可视渲染处理
|
|
10584
|
-
*/const loadScrollYData=()=>{const{mergeList,isAllOverflow,isScrollYBig}=reactData;const{scrollYStore}=internalData;const{preloadSize,startIndex,endIndex,offsetSize}=scrollYStore;const autoOffsetYSize=isAllOverflow?offsetSize:offsetSize+1;const{toVisibleIndex,visibleSize}=handleVirtualYVisible();const offsetItem={startIndex:Math.max(0,isScrollYBig?toVisibleIndex-1:toVisibleIndex-1-offsetSize-preloadSize),endIndex:isScrollYBig?toVisibleIndex+visibleSize:toVisibleIndex+visibleSize+autoOffsetYSize+preloadSize};scrollYStore.visibleStartIndex=toVisibleIndex-1;scrollYStore.visibleEndIndex=toVisibleIndex+visibleSize+1;calculateMergerOffsetIndex(mergeList,offsetItem,'row');const{startIndex:offsetStartIndex,endIndex:offsetEndIndex}=offsetItem;if(toVisibleIndex<=startIndex||toVisibleIndex>=endIndex-visibleSize-1){if(startIndex!==offsetStartIndex||endIndex!==offsetEndIndex){scrollYStore.startIndex=offsetStartIndex;scrollYStore.endIndex=offsetEndIndex;$xeTable.updateScrollYData();}}};const createGetRowCacheProp=prop=>{return function(row){const{fullAllDataRowIdData}=internalData;if(row){const rowid=
|
|
10585
|
-
$xeTable.dispatchEvent('resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});};const handleUpdateRowResize=(evnt,params)=>{reactData.resizeHeightFlag++;$xeTable.recalculate(
|
|
10701
|
+
*/const loadScrollYData=()=>{const{mergeList,isAllOverflow,isScrollYBig}=reactData;const{scrollYStore}=internalData;const{preloadSize,startIndex,endIndex,offsetSize}=scrollYStore;const autoOffsetYSize=isAllOverflow?offsetSize:offsetSize+1;const{toVisibleIndex,visibleSize}=handleVirtualYVisible();const offsetItem={startIndex:Math.max(0,isScrollYBig?toVisibleIndex-1:toVisibleIndex-1-offsetSize-preloadSize),endIndex:isScrollYBig?toVisibleIndex+visibleSize:toVisibleIndex+visibleSize+autoOffsetYSize+preloadSize};scrollYStore.visibleStartIndex=toVisibleIndex-1;scrollYStore.visibleEndIndex=toVisibleIndex+visibleSize+1;calculateMergerOffsetIndex(mergeList,offsetItem,'row');const{startIndex:offsetStartIndex,endIndex:offsetEndIndex}=offsetItem;if(toVisibleIndex<=startIndex||toVisibleIndex>=endIndex-visibleSize-1){if(startIndex!==offsetStartIndex||endIndex!==offsetEndIndex){scrollYStore.startIndex=offsetStartIndex;scrollYStore.endIndex=offsetEndIndex;$xeTable.updateScrollYData();}}};const createGetRowCacheProp=prop=>{const{handleGetRowId}=createHandleGetRowId($xeTable);return function(row){const{fullAllDataRowIdData}=internalData;if(row){const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){return rowRest[prop];}}return-1;};};const createGetColumnCacheProp=prop=>{return function(column){const{fullColumnIdData}=internalData;if(column){const colRest=fullColumnIdData[column.id];if(colRest){return colRest[prop];}}return-1;};};const lazyScrollXData=()=>{const{lxTimeout,lxRunTime,scrollXStore}=internalData;const{visibleSize}=scrollXStore;const fpsTime=Math.max(5,Math.min(10,Math.floor(visibleSize/3)));if(lxTimeout){clearTimeout(lxTimeout);}if(!lxRunTime||lxRunTime+fpsTime<Date.now()){internalData.lxRunTime=Date.now();loadScrollXData();}internalData.lxTimeout=setTimeout(()=>{internalData.lxTimeout=undefined;internalData.lxRunTime=undefined;loadScrollXData();},fpsTime);};const lazyScrollYData=()=>{const{lyTimeout,lyRunTime,scrollYStore}=internalData;const{visibleSize}=scrollYStore;const fpsTime=Math.floor(Math.max(4,Math.min(10,visibleSize/3)));if(lyTimeout){clearTimeout(lyTimeout);}if(!lyRunTime||lyRunTime+fpsTime<Date.now()){internalData.lyRunTime=Date.now();loadScrollYData();}internalData.lyTimeout=setTimeout(()=>{internalData.lyTimeout=undefined;internalData.lyRunTime=undefined;loadScrollYData();},fpsTime);};const checkLastSyncScroll=(isRollX,isRollY)=>{const{scrollXLoad,scrollYLoad}=reactData;const{lcsTimeout}=internalData;if(lcsTimeout){clearTimeout(lcsTimeout);}internalData.lcsTimeout=setTimeout(()=>{internalData.lcsRunTime=Date.now();internalData.lcsTimeout=undefined;internalData.intoRunScroll=false;internalData.inVirtualScroll=false;internalData.inWheelScroll=false;internalData.inHeaderScroll=false;internalData.inBodyScroll=false;internalData.inFooterScroll=false;internalData.scrollRenderType='';calcCellHeight();if(isRollX&&scrollXLoad){$xeTable.updateScrollXData();}if(isRollY&&scrollYLoad){$xeTable.updateScrollYData().then(()=>{calcCellHeight();$xeTable.updateScrollYSpace();});}updateRowExpandStyle();$xeTable.updateCellAreas();},200);};const getWheelSpeed=lastScrollTime=>{let multiple=1;const currTime=Date.now();if(lastScrollTime+25>currTime){multiple=1.18;}else if(lastScrollTime+30>currTime){multiple=1.15;}else if(lastScrollTime+40>currTime){multiple=1.12;}else if(lastScrollTime+55>currTime){multiple=1.09;}else if(lastScrollTime+75>currTime){multiple=1.06;}else if(lastScrollTime+100>currTime){multiple=1.03;}return multiple;};const wheelScrollLeftTo=(scrollLeft,cb)=>{requestAnimationFrame(()=>{cb(scrollLeft);});};const wheelScrollTopTo=(diffNum,cb)=>{const duration=Math.abs(diffNum);const startTime=performance.now();let countTop=0;const step=timestamp=>{let progress=(timestamp-startTime)/duration;if(progress>1){progress=1;}const easedProgress=Math.pow(progress,2);const offsetTop=Math.floor(diffNum*easedProgress)-countTop;countTop+=offsetTop;cb(offsetTop);if(progress<1){requestAnimationFrame(step);}};requestAnimationFrame(step);};const dispatchEvent=(type,params,evnt)=>{emit(type,createEvent(evnt,{$table:$xeTable,$grid:$xeGrid},params));};const handleScrollToRowColumn=(fieldOrColumn,row)=>{const{fullColumnIdData}=internalData;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column&&fullColumnIdData[column.id]){return colToVisible($xeTable,column,row);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};const handleUpdateResize=()=>{const el=refElem.value;if(el&&el.clientWidth&&el.clientHeight){tableMethods.recalculate();}};const handleUpdateColResize=(evnt,params)=>{$xeTable.analyColumnWidth();$xeTable.recalculate().then(()=>{$xeTable.saveCustomStore('update:width');$xeTable.updateCellAreas();$xeTable.dispatchEvent('column-resizable-change',params,evnt);// 已废弃 resizable-change
|
|
10702
|
+
$xeTable.dispatchEvent('resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});};const handleUpdateRowResize=(evnt,params)=>{reactData.resizeHeightFlag++;$xeTable.recalculate().then(()=>{$xeTable.updateCellAreas();$xeTable.dispatchEvent('row-resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});};const updateColumnOffsetLeft=()=>{const{visibleColumn,fullColumnIdData}=internalData;let offsetLeft=0;for(let cIndex=0,rLen=visibleColumn.length;cIndex<rLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid];colRest.oLeft=offsetLeft;offsetLeft+=column.renderWidth;}};const updateRowOffsetTop=()=>{const{expandColumn}=reactData;const{afterFullData,fullAllDataRowIdData,rowExpandedMaps}=internalData;const expandOpts=computeExpandOpts.value;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const{handleGetRowId}=createHandleGetRowId($xeTable);let offsetTop=0;for(let rIndex=0,rLen=afterFullData.length;rIndex<rLen;rIndex++){const row=afterFullData[rIndex];const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid]||{};rowRest.oTop=offsetTop;offsetTop+=rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;// 是否展开行
|
|
10586
10703
|
if(expandColumn&&rowExpandedMaps[rowid]){offsetTop+=rowRest.expandHeight||expandOpts.height||0;}}};const updateRowExpandStyle=()=>{const{expandColumn,scrollYLoad,scrollYTop,isScrollYBig}=reactData;const expandOpts=computeExpandOpts.value;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const{mode}=expandOpts;if(expandColumn&&mode==='fixed'){const{elemStore,fullAllDataRowIdData}=internalData;const rowExpandEl=refRowExpandElem.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);if(rowExpandEl&&bodyScrollElem){let isUpdateHeight=false;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(rowExpandEl.children,reEl=>{const expandEl=reEl;const rowid=expandEl.getAttribute('rowid')||'';const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const expandHeight=expandEl.offsetHeight+1;const trEl=bodyScrollElem.querySelector(`.vxe-body--row[rowid="${rowid}"]`);let offsetTop=0;if(scrollYLoad){if(isScrollYBig&&trEl){offsetTop=trEl.offsetTop+trEl.offsetHeight;}else{offsetTop=rowRest.oTop+(rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight);}}else{if(trEl){offsetTop=trEl.offsetTop+trEl.offsetHeight;}}if(isScrollYBig){offsetTop+=scrollYTop;}expandEl.style.top=toCssUnit(offsetTop);if(!isUpdateHeight){if(rowRest.expandHeight!==expandHeight){isUpdateHeight=true;}}rowRest.expandHeight=expandHeight;}});if(isUpdateHeight){reactData.rowExpandHeightFlag++;(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(()=>{updateRowOffsetTop();});}}}};const handleRowExpandScroll=()=>{const{elemStore}=internalData;const rowExpandEl=refRowExpandElem.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);if(rowExpandEl&&bodyScrollElem){rowExpandEl.scrollTop=bodyScrollElem.scrollTop;}};tableMethods={dispatchEvent,getEl(){return refElem.value;},/**
|
|
10587
10704
|
* 重置表格的一切数据状态
|
|
10588
10705
|
*/clearAll(){return clearTableAllStatus($xeTable);},/**
|
|
@@ -10658,7 +10775,7 @@ setTimeout(()=>$xeTable.recalculate(),50);});},/**
|
|
|
10658
10775
|
* 如果传 row 则还原一行
|
|
10659
10776
|
* 如果传 rows 则还原多行
|
|
10660
10777
|
* 如果还额外传了 field 则还原指定的单元格数据
|
|
10661
|
-
*/revertData(rows,field){const{keepSource,treeConfig}=props;const{editStore}=reactData;const{fullAllDataRowIdData,fullDataRowIdData,tableSourceData,sourceDataRowIdData,tableFullData,afterFullData}=internalData;const removeTempMaps={...editStore.removeMaps};const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;if(!keepSource){if(true){errLog('vxe.error.reqProp',['keep-source']);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}let targetRows=rows;if(rows){if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){targetRows=[rows];}}else{targetRows=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toArray($xeTable.getUpdateRecords());}let reDelFlag=false;if(targetRows.length){targetRows.forEach(item=>{const rowid=
|
|
10778
|
+
*/revertData(rows,field){const{keepSource,treeConfig}=props;const{editStore}=reactData;const{fullAllDataRowIdData,fullDataRowIdData,tableSourceData,sourceDataRowIdData,tableFullData,afterFullData}=internalData;const removeTempMaps={...editStore.removeMaps};const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;const{handleGetRowId}=createHandleGetRowId($xeTable);if(!keepSource){if(true){errLog('vxe.error.reqProp',['keep-source']);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}let targetRows=rows;if(rows){if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){targetRows=[rows];}}else{targetRows=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toArray($xeTable.getUpdateRecords());}let reDelFlag=false;if(targetRows.length){targetRows.forEach(item=>{const rowid=handleGetRowId(item);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const row=rowRest.row;if(!$xeTable.isInsertByRow(row)){const oRow=sourceDataRowIdData[rowid];if(oRow&&row){if(field){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,field,external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(oRow,field),true));}else{external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().destructuring(row,external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(oRow,true));}if(!fullDataRowIdData[rowid]&&$xeTable.isRemoveByRow(row)){delete removeTempMaps[rowid];tableFullData.unshift(row);afterFullData.unshift(row);reDelFlag=true;}}}}});}if(rows){if(reDelFlag){editStore.removeMaps=removeTempMaps;$xeTable.updateFooter();$xeTable.cacheRowMap(false);$xeTable.handleTableData(treeConfig&&transform);if(!(treeConfig&&transform)){$xeTable.updateAfterDataIndex();}$xeTable.checkSelectionStatus();if(reactData.scrollYLoad){$xeTable.updateScrollYSpace();}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{$xeTable.updateCellAreas();return $xeTable.recalculate();});}return $xeTable.reloadData(tableSourceData);},/**
|
|
10662
10779
|
* 清空单元格内容
|
|
10663
10780
|
* 如果不创参数,则清空整个表格内容
|
|
10664
10781
|
* 如果传 row 则清空一行内容
|
|
@@ -10707,7 +10824,7 @@ if(!rowRest){return false;}const row=rowRest.row;const oRow=sourceDataRowIdData[
|
|
|
10707
10824
|
* 获取数据,和 data 的行为一致,也可以指定索引获取数据
|
|
10708
10825
|
*/getData(rowIndex){const tableSynchData=props.data||internalData.tableSynchData;return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isUndefined(rowIndex)?tableSynchData.slice(0):tableSynchData[rowIndex];},/**
|
|
10709
10826
|
* 用于多选行,获取已选中的数据
|
|
10710
|
-
*/getCheckboxRecords(isFull){const{treeConfig}=props;const{
|
|
10827
|
+
*/getCheckboxRecords(isFull){const{treeConfig}=props;const{tableFullData,afterFullData,afterTreeFullData,tableFullTreeData,fullDataRowIdData,afterFullRowMaps,selectCheckboxMaps}=internalData;const treeOpts=computeTreeOpts.value;const checkboxOpts=computeCheckboxOpts.value;const{transform,mapChildrenField}=treeOpts;const{checkField}=checkboxOpts;const childrenField=treeOpts.children||treeOpts.childrenField;let rowList=[];if(checkField){if(treeConfig){const currTableData=isFull?transform?tableFullTreeData:tableFullData:transform?afterTreeFullData:afterFullData;rowList=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().filterTree(currTableData,row=>external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,checkField),{children:transform?mapChildrenField:childrenField});}else{const currTableData=isFull?tableFullData:afterFullData;rowList=currTableData.filter(row=>external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,checkField));}}else{external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(selectCheckboxMaps,(row,rowid)=>{if(isFull){if(fullDataRowIdData[rowid]){rowList.push(fullDataRowIdData[rowid].row);}}else{if(afterFullRowMaps[rowid]){rowList.push(afterFullRowMaps[rowid]);}}});}return rowList;},/**
|
|
10711
10828
|
* 只对 tree-config 有效,获取行的子级
|
|
10712
10829
|
*/getTreeRowChildren(rowOrRowid){const{treeConfig}=props;const{fullAllDataRowIdData}=internalData;const treeOpts=computeTreeOpts.value;const{transform,mapChildrenField}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;if(rowOrRowid&&treeConfig){let rowid;if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(rowOrRowid)){rowid=rowOrRowid;}else{rowid=getRowid($xeTable,rowOrRowid);}if(rowid){const rest=fullAllDataRowIdData[rowid];const row=rest?rest.row:null;if(row){return row[transform?mapChildrenField:childrenField]||[];}}}return[];},/**
|
|
10713
10830
|
* 只对 tree-config 有效,获取行的父级
|
|
@@ -10740,7 +10857,7 @@ if(!targetColumn.fixed&&isMaxFixedColumn){if(core_.VxeUI.modal){core_.VxeUI.moda
|
|
|
10740
10857
|
* 刷新列信息
|
|
10741
10858
|
* 将固定的列左边、右边分别靠边
|
|
10742
10859
|
* 如果传 true 则会检查列顺序并排序
|
|
10743
|
-
*/refreshColumn(initSort){if(initSort){handleUpdateColumn();}return parseColumns(true).then(()=>{return tableMethods.refreshScroll();}).then(()=>{return tableMethods.recalculate();});},setRowHeightConf(heightConf){const{fullAllDataRowIdData}=internalData;let status=false;if(heightConf){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(heightConf,(height,rowid)=>{const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const rHeight=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toInteger(height);if(rHeight){rowRest.resizeHeight=rHeight;if(!status){status=true;}}}});if(status){internalData.isResizeCellHeight=true;reactData.resizeHeightFlag++;}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{updateRowOffsetTop();return{status};});},getRowHeightConf(isFull){const{fullAllDataRowIdData,afterFullData}=internalData;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const rest={};afterFullData.forEach(row=>{const rowid=
|
|
10860
|
+
*/refreshColumn(initSort){if(initSort){handleUpdateColumn();}return parseColumns(true).then(()=>{return tableMethods.refreshScroll();}).then(()=>{return tableMethods.recalculate();});},setRowHeightConf(heightConf){const{fullAllDataRowIdData}=internalData;let status=false;if(heightConf){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(heightConf,(height,rowid)=>{const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const rHeight=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toInteger(height);if(rHeight){rowRest.resizeHeight=rHeight;if(!status){status=true;}}}});if(status){internalData.isResizeCellHeight=true;reactData.resizeHeightFlag++;}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{updateRowOffsetTop();return{status};});},getRowHeightConf(isFull){const{fullAllDataRowIdData,afterFullData}=internalData;const{handleGetRowId}=createHandleGetRowId($xeTable);const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const rest={};afterFullData.forEach(row=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const resizeHeight=rowRest.resizeHeight;if(resizeHeight||isFull){const currCellHeight=resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;rest[rowid]=currCellHeight;}}});return rest;},setRowHeight(rowOrId,height){const{fullAllDataRowIdData}=internalData;let status=false;const rows=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rowOrId)?rowOrId:[rowOrId];let rHeight=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toInteger(height);if(isScale(height)){const tableBody=refTableBody.value;const bodyElem=tableBody?tableBody.$el:null;const bodyHeight=bodyElem?bodyElem.clientHeight-1:0;rHeight=Math.floor(rHeight*bodyHeight);}if(rHeight){const{handleGetRowId}=createHandleGetRowId($xeTable);rows.forEach(row=>{const rowid=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(row)||external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(row)?row:handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rowRest.resizeHeight=rHeight;if(!status){status=true;}}});if(status){internalData.isResizeCellHeight=true;reactData.resizeHeightFlag++;}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{return{status};});},getRowHeight(rowOrId){const{fullAllDataRowIdData}=internalData;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const rowid=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(rowOrId)||external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(rowOrId)?rowOrId:getRowid($xeTable,rowOrId);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){return rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;}return 0;},/**
|
|
10744
10861
|
* 刷新滚动操作,手动同步滚动相关位置(对于某些特殊的操作,比如滚动条错位、固定列不同步)
|
|
10745
10862
|
*/refreshScroll(){const{elemStore,lastScrollLeft,lastScrollTop}=internalData;const headerScrollElem=getRefElem(elemStore['main-header-scroll']);const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const footerScrollElem=getRefElem(elemStore['main-footer-scroll']);const leftScrollElem=getRefElem(elemStore['left-body-scroll']);const rightScrollElem=getRefElem(elemStore['right-body-scroll']);const xHandleEl=refScrollXHandleElem.value;const yHandleEl=refScrollYHandleElem.value;return new Promise(resolve=>{// 还原滚动条位置
|
|
10746
10863
|
if(lastScrollLeft||lastScrollTop){return restoreScrollLocation($xeTable,lastScrollLeft,lastScrollTop).then().then(()=>{// 存在滚动行为未结束情况
|
|
@@ -10757,26 +10874,26 @@ setTimeout(()=>{internalData.intoRunScroll=false;resolve();},10);});},/**
|
|
|
10757
10874
|
* 判断列头复选框是否被半选
|
|
10758
10875
|
*/isAllCheckboxIndeterminate(){return!reactData.isAllSelected&&reactData.isIndeterminate;},/**
|
|
10759
10876
|
* 获取复选框半选状态的行数据
|
|
10760
|
-
*/getCheckboxIndeterminateRecords(isFull){const{treeConfig}=props;const{fullDataRowIdData}=internalData;
|
|
10877
|
+
*/getCheckboxIndeterminateRecords(isFull){const{treeConfig}=props;const{fullDataRowIdData,treeIndeterminateRowMaps}=internalData;if(treeConfig){const fullRest=[];const defRest=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(treeIndeterminateRowMaps,(item,rowid)=>{if(item){fullRest.push(item);if(fullDataRowIdData[rowid]){defRest.push(item);}}});if(isFull){return fullRest;}return defRest;}return[];},/**
|
|
10761
10878
|
* 用于多选行,设置行为选中状态,第二个参数为选中与否
|
|
10762
10879
|
* @param {Array/Row} rows 行数据
|
|
10763
10880
|
* @param {Boolean} value 是否选中
|
|
10764
|
-
*/setCheckboxRow(rows,checked){if(rows&&!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){rows=[rows];}return handleCheckedCheckboxRow(rows,checked,true);},setCheckboxRowKey(keys,checked){const{fullAllDataRowIdData}=internalData;if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(keys)){keys=[keys];}const rows=[];keys.forEach(rowid=>{const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rows.push(rowRest.row);}});return handleCheckedCheckboxRow(rows,checked,true);},isCheckedByCheckboxRow(row){const{
|
|
10881
|
+
*/setCheckboxRow(rows,checked){if(rows&&!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){rows=[rows];}return handleCheckedCheckboxRow(rows,checked,true);},setCheckboxRowKey(keys,checked){const{fullAllDataRowIdData}=internalData;if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(keys)){keys=[keys];}const rows=[];keys.forEach(rowid=>{const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rows.push(rowRest.row);}});return handleCheckedCheckboxRow(rows,checked,true);},isCheckedByCheckboxRow(row){const{updateCheckboxFlag}=reactData;const{selectCheckboxMaps}=internalData;const checkboxOpts=computeCheckboxOpts.value;const{checkField}=checkboxOpts;if(checkField){return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,checkField);}return!!updateCheckboxFlag&&!!selectCheckboxMaps[getRowid($xeTable,row)];},isCheckedByCheckboxRowKey(rowid){const{updateCheckboxFlag}=reactData;const{fullAllDataRowIdData,selectCheckboxMaps}=internalData;const checkboxOpts=computeCheckboxOpts.value;const{checkField}=checkboxOpts;if(checkField){const rowRest=fullAllDataRowIdData[rowid];if(rowRest){return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rowRest.row,checkField);}return false;}return!!updateCheckboxFlag&&!!selectCheckboxMaps[rowid];},isIndeterminateByCheckboxRow(row){const{treeIndeterminateRowMaps}=internalData;return!!treeIndeterminateRowMaps[getRowid($xeTable,row)]&&!$xeTable.isCheckedByCheckboxRow(row);},isIndeterminateByCheckboxRowKey(rowid){const{treeIndeterminateRowMaps}=internalData;return!!treeIndeterminateRowMaps[rowid]&&!$xeTable.isCheckedByCheckboxRowKey(rowid);},/**
|
|
10765
10882
|
* 多选,切换某一行的选中状态
|
|
10766
|
-
*/toggleCheckboxRow(row){const{selectCheckboxMaps}=
|
|
10883
|
+
*/toggleCheckboxRow(row){const{selectCheckboxMaps}=internalData;const checkboxOpts=computeCheckboxOpts.value;const{checkField}=checkboxOpts;const checked=checkField?!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,checkField):!selectCheckboxMaps[getRowid($xeTable,row)];tablePrivateMethods.handleBatchSelectRows([row],checked,true);tablePrivateMethods.checkSelectionStatus();return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
10767
10884
|
* 用于多选行,设置所有行的选中状态
|
|
10768
10885
|
* @param {Boolean} value 是否选中
|
|
10769
10886
|
*/setAllCheckboxRow(value){return handleCheckedAllCheckboxRow(value,true);},/**
|
|
10770
10887
|
* 获取单选框保留选中的行
|
|
10771
10888
|
*/getRadioReserveRecord(isFull){const{treeConfig}=props;const{fullDataRowIdData,radioReserveRow,afterFullData}=internalData;const radioOpts=computeRadioOpts.value;const treeOpts=computeTreeOpts.value;const childrenField=treeOpts.children||treeOpts.childrenField;if(radioOpts.reserve&&radioReserveRow){const rowid=getRowid($xeTable,radioReserveRow);if(isFull){if(!fullDataRowIdData[rowid]){return radioReserveRow;}}else{const rowkey=getRowkey($xeTable);if(treeConfig){const matchObj=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findTree(afterFullData,row=>rowid===external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,rowkey),{children:childrenField});if(matchObj){return radioReserveRow;}}else{if(!afterFullData.some(row=>rowid===external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,rowkey))){return radioReserveRow;}}}}return null;},clearRadioReserve(){internalData.radioReserveRow=null;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
10772
10889
|
* 获取复选框保留选中的行
|
|
10773
|
-
*/getCheckboxReserveRecords(isFull){const{treeConfig}=props;const{afterFullData,fullDataRowIdData,checkboxReserveRowMap}=internalData;const checkboxOpts=computeCheckboxOpts.value;const treeOpts=computeTreeOpts.value;const childrenField=treeOpts.children||treeOpts.childrenField;const reserveSelection=[];if(checkboxOpts.reserve){const afterFullIdMaps={};if(treeConfig){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterFullData,row=>{afterFullIdMaps[
|
|
10890
|
+
*/getCheckboxReserveRecords(isFull){const{treeConfig}=props;const{afterFullData,fullDataRowIdData,checkboxReserveRowMap}=internalData;const checkboxOpts=computeCheckboxOpts.value;const treeOpts=computeTreeOpts.value;const childrenField=treeOpts.children||treeOpts.childrenField;const reserveSelection=[];if(checkboxOpts.reserve){const{handleGetRowId}=createHandleGetRowId($xeTable);const afterFullIdMaps={};if(treeConfig){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterFullData,row=>{afterFullIdMaps[handleGetRowId(row)]=1;},{children:childrenField});}else{afterFullData.forEach(row=>{afterFullIdMaps[handleGetRowId(row)]=1;});}external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(checkboxReserveRowMap,(oldRow,oldRowid)=>{if(oldRow){if(isFull){if(!fullDataRowIdData[oldRowid]){reserveSelection.push(oldRow);}}else{if(!afterFullIdMaps[oldRowid]){reserveSelection.push(oldRow);}}}});}return reserveSelection;},clearCheckboxReserve(){internalData.checkboxReserveRowMap={};return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
10774
10891
|
* 多选,切换所有行的选中状态
|
|
10775
10892
|
*/toggleAllCheckboxRow(){handleCheckAllEvent(null,!reactData.isAllSelected);return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
10776
10893
|
* 用于多选行,手动清空用户的选择
|
|
10777
10894
|
* 清空行为不管是否被禁用还是保留记录,都将彻底清空选中状态
|
|
10778
10895
|
*/clearCheckboxRow(){const{treeConfig}=props;const{tableFullData}=internalData;const treeOpts=computeTreeOpts.value;const childrenField=treeOpts.children||treeOpts.childrenField;const checkboxOpts=computeCheckboxOpts.value;const{checkField,reserve}=checkboxOpts;// indeterminateField 仅支持读取
|
|
10779
|
-
const indeterminateField=checkboxOpts.indeterminateField||checkboxOpts.halfField;if(checkField){const handleClearChecked=item=>{if(treeConfig&&indeterminateField){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(item,indeterminateField,false);}external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(item,checkField,false);};if(treeConfig){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(tableFullData,handleClearChecked,{children:childrenField});}else{tableFullData.forEach(handleClearChecked);}}if(reserve){tableFullData.forEach(row=>handleCheckboxReserveRow(row,false));}reactData.isAllSelected=false;reactData.isIndeterminate=false;
|
|
10896
|
+
const indeterminateField=checkboxOpts.indeterminateField||checkboxOpts.halfField;if(checkField){const handleClearChecked=item=>{if(treeConfig&&indeterminateField){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(item,indeterminateField,false);}external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(item,checkField,false);};if(treeConfig){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(tableFullData,handleClearChecked,{children:childrenField});}else{tableFullData.forEach(handleClearChecked);}}if(reserve){tableFullData.forEach(row=>handleCheckboxReserveRow(row,false));}reactData.isAllSelected=false;reactData.isIndeterminate=false;internalData.selectCheckboxMaps={};internalData.treeIndeterminateRowMaps={};reactData.updateCheckboxFlag++;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
10780
10897
|
* 用于当前行,设置某一行为高亮状态
|
|
10781
10898
|
* @param {Row} row 行对象
|
|
10782
10899
|
*/setCurrentRow(row){const rowOpts=computeRowOpts.value;const el=refElem.value;tableMethods.clearCurrentRow();// tableMethods.clearCurrentColumn()
|
|
@@ -10796,10 +10913,10 @@ reactData.currentRow=row;if(rowOpts.isCurrent||props.highlightCurrentRow){if(el)
|
|
|
10796
10913
|
* 用于单选行,获取当已选中的数据
|
|
10797
10914
|
*/getRadioRecord(isFull){const{fullDataRowIdData,afterFullRowMaps}=internalData;const{selectRadioRow}=reactData;if(selectRadioRow){const rowid=getRowid($xeTable,selectRadioRow);if(isFull){if(fullDataRowIdData[rowid]){return selectRadioRow;}}else{if(afterFullRowMaps[rowid]){return selectRadioRow;}}}return null;},getCurrentColumn(){const columnOpts=computeColumnOpts.value;return columnOpts.isCurrent||props.highlightCurrentColumn?reactData.currentColumn:null;},/**
|
|
10798
10915
|
* 用于当前列,设置某列行为高亮状态
|
|
10799
|
-
*/setCurrentColumn(fieldOrColumn){const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column){
|
|
10800
|
-
|
|
10916
|
+
*/setCurrentColumn(fieldOrColumn){const{mouseConfig}=props;const mouseOpts=computeMouseOpts.value;const isMouseSelected=mouseConfig&&mouseOpts.selected;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column){$xeTable.clearCurrentColumn();reactData.currentColumn=column;}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{// 更新状选中态
|
|
10917
|
+
if(isMouseSelected){$xeTable.addCellSelectedClass();}});},/**
|
|
10801
10918
|
* 用于当前列,手动清空当前高亮的状态
|
|
10802
|
-
*/clearCurrentColumn(){reactData.currentColumn=null;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},setPendingRow(rows,status){const
|
|
10919
|
+
*/clearCurrentColumn(){reactData.currentColumn=null;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},setPendingRow(rows,status){const{handleGetRowId}=createHandleGetRowId($xeTable);const{pendingRowMaps}=internalData;if(rows&&!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){rows=[rows];}if(status){rows.forEach(row=>{const rowid=handleGetRowId(row);if(rowid&&!pendingRowMaps[rowid]){pendingRowMaps[rowid]=row;}});}else{rows.forEach(row=>{const rowid=handleGetRowId(row);if(rowid&&pendingRowMaps[rowid]){delete pendingRowMaps[rowid];}});}reactData.pendingRowFlag++;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},togglePendingRow(rows){const{handleGetRowId}=createHandleGetRowId($xeTable);const{pendingRowMaps}=internalData;if(rows&&!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){rows=[rows];}rows.forEach(row=>{const rowid=handleGetRowId(row);if(rowid){if(pendingRowMaps[rowid]){delete pendingRowMaps[rowid];}else{pendingRowMaps[rowid]=row;}}});reactData.pendingRowFlag++;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},hasPendingByRow(row){return tableMethods.isPendingByRow(row);},isPendingByRow(row){const{pendingRowMaps}=internalData;const rowid=getRowid($xeTable,row);return!!pendingRowMaps[rowid];},getPendingRecords(){const{fullAllDataRowIdData,pendingRowMaps}=internalData;const insertRecords=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(pendingRowMaps,(row,rowid)=>{if(fullAllDataRowIdData[rowid]){insertRecords.push(row);}});return insertRecords;},clearPendingRow(){internalData.pendingRowMaps={};reactData.pendingRowFlag++;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},sort(sortConfs,sortOrder){const sortOpts=computeSortOpts.value;const{multiple,remote,orders}=sortOpts;if(sortConfs){if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(sortConfs)){sortConfs=[{field:sortConfs,order:sortOrder}];}}if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(sortConfs)){sortConfs=[sortConfs];}if(sortConfs.length){if(!multiple){clearAllSort();}(multiple?sortConfs:[sortConfs[0]]).forEach((confs,index)=>{let{field,order}=confs;let column=field;if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(field)){column=tableMethods.getColumnByField(field);}if(column&&column.sortable){if(orders.indexOf(order)===-1){order=getNextSortOrder(column);}if(column.order!==order){column.order=order;}column.sortTime=Date.now()+index;}});// 如果是服务端排序,则跳过本地排序处理
|
|
10803
10920
|
if(!remote){tablePrivateMethods.handleTableData(true);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{tableMethods.updateCellAreas();return updateStyle();});}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},setSort(sortConfs,isUpdate){const sortOpts=computeSortOpts.value;const{multiple,remote,orders}=sortOpts;if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(sortConfs)){sortConfs=[sortConfs];}if(sortConfs&&sortConfs.length){if(!multiple){sortConfs=[sortConfs[0]];clearAllSort();}let firstColumn=null;sortConfs.forEach((confs,index)=>{let{field,order}=confs;let column=field;if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(field)){column=tableMethods.getColumnByField(field);}if(!firstColumn){firstColumn=column;}if(column&&column.sortable){if(orders.indexOf(order)===-1){order=getNextSortOrder(column);}if(column.order!==order){column.order=order;}column.sortTime=Date.now()+index;}});if(isUpdate){if(!remote){tablePrivateMethods.handleTableData(true);}$xeTable.handleColumnSortEvent(new Event('click'),firstColumn);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{tableMethods.updateCellAreas();return updateStyle();});}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
10804
10921
|
* 清空指定列的排序条件
|
|
10805
10922
|
* 如果为空则清空所有列的排序条件
|
|
@@ -10807,19 +10924,19 @@ if(!remote){tablePrivateMethods.handleTableData(true);}return (0,external_common
|
|
|
10807
10924
|
*/clearSort(fieldOrColumn){const sortOpts=computeSortOpts.value;if(fieldOrColumn){const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column){column.order=null;}}else{clearAllSort();}if(!sortOpts.remote){tablePrivateMethods.handleTableData(true);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(updateStyle);},isSort(fieldOrColumn){if(fieldOrColumn){const column=handleFieldOrColumn($xeTable,fieldOrColumn);return column?column.sortable&&!!column.order:false;}return tableMethods.getSortColumns().length>0;},getSortColumns(){const sortOpts=computeSortOpts.value;const{multiple,chronological}=sortOpts;const sortList=[];const{tableFullColumn}=internalData;tableFullColumn.forEach(column=>{const{field,order}=column;if(column.sortable&&order){sortList.push({column,field,property:field,order:order,sortTime:column.sortTime});}});if(multiple&&chronological&&sortList.length>1){return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().orderBy(sortList,'sortTime');}return sortList;},/**
|
|
10808
10925
|
* 关闭筛选
|
|
10809
10926
|
* @param {Event} evnt 事件
|
|
10810
|
-
*/closeFilter(){const{filterStore}=reactData;const{column,visible}=filterStore;Object.assign(filterStore,{isAllSelected:false,isIndeterminate:false,options:[],visible:false});if(visible){dispatchEvent('filter-visible',{column,property:column.field,field:column.field,filterList
|
|
10927
|
+
*/closeFilter(){const{filterStore}=reactData;const{column,visible}=filterStore;Object.assign(filterStore,{isAllSelected:false,isIndeterminate:false,options:[],visible:false});if(visible){dispatchEvent('filter-visible',{column,property:column.field,field:column.field,filterList:()=>$xeTable.getCheckedFilters(),visible:false},null);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
10811
10928
|
* 判断指定列是否为筛选状态,如果为空则判断所有列
|
|
10812
10929
|
* @param {String} fieldOrColumn 字段名
|
|
10813
10930
|
*/isActiveFilterByColumn(fieldOrColumn){const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column){return column.filters&&column.filters.some(option=>option.checked);}return $xeTable.getCheckedFilters().length>0;},isFilter(fieldOrColumn){return tableMethods.isActiveFilterByColumn(fieldOrColumn);},/**
|
|
10814
10931
|
* 判断展开行是否懒加载完成
|
|
10815
10932
|
* @param {Row} row 行对象
|
|
10816
|
-
*/isRowExpandLoaded(row){const{fullAllDataRowIdData}=internalData;const rowRest=fullAllDataRowIdData[getRowid($xeTable,row)];return rowRest&&!!rowRest.expandLoaded;},clearRowExpandLoaded(row){const
|
|
10933
|
+
*/isRowExpandLoaded(row){const{fullAllDataRowIdData}=internalData;const rowRest=fullAllDataRowIdData[getRowid($xeTable,row)];return rowRest&&!!rowRest.expandLoaded;},clearRowExpandLoaded(row){const{fullAllDataRowIdData,rowExpandLazyLoadedMaps}=internalData;const expandOpts=computeExpandOpts.value;const{lazy}=expandOpts;const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(lazy&&rowRest){rowRest.expandLoaded=false;delete rowExpandLazyLoadedMaps[rowid];}reactData.rowExpandedFlag++;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
10817
10934
|
* 重新懒加载展开行,并展开内容
|
|
10818
10935
|
* @param {Row} row 行对象
|
|
10819
|
-
*/reloadRowExpand(row){const{rowExpandLazyLoadedMaps}=
|
|
10820
|
-
return
|
|
10936
|
+
*/reloadRowExpand(row){const{rowExpandLazyLoadedMaps}=internalData;const expandOpts=computeExpandOpts.value;const{lazy}=expandOpts;const rowid=getRowid($xeTable,row);if(lazy&&!rowExpandLazyLoadedMaps[rowid]){$xeTable.clearRowExpandLoaded(row).then(()=>handleAsyncRowExpand(row));}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},reloadExpandContent(row){if(true){warnLog('vxe.error.delFunc',['reloadExpandContent','reloadRowExpand']);}// 即将废弃
|
|
10937
|
+
return $xeTable.reloadRowExpand(row);},/**
|
|
10821
10938
|
* 切换展开行
|
|
10822
|
-
*/toggleRowExpand(row){return
|
|
10939
|
+
*/toggleRowExpand(row){return $xeTable.setRowExpand(row,!$xeTable.isRowExpandByRow(row));},/**
|
|
10823
10940
|
* 设置所有行的展开与否
|
|
10824
10941
|
* @param {Boolean} expanded 是否展开
|
|
10825
10942
|
*/setAllRowExpand(expanded){const treeOpts=computeTreeOpts.value;const{tableFullData,tableFullTreeData}=internalData;const childrenField=treeOpts.children||treeOpts.childrenField;let expandedRows=[];if(props.treeConfig){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(tableFullTreeData,row=>{expandedRows.push(row);},{children:childrenField});}else{expandedRows=tableFullData;}return tableMethods.setRowExpand(expandedRows,expanded);},/**
|
|
@@ -10828,20 +10945,20 @@ return tableMethods.reloadRowExpand(row);},/**
|
|
|
10828
10945
|
* 支持多行
|
|
10829
10946
|
* @param {Array/Row} rows 行数据
|
|
10830
10947
|
* @param {Boolean} expanded 是否展开
|
|
10831
|
-
*/setRowExpand(rows,expanded){const{
|
|
10832
|
-
|
|
10948
|
+
*/setRowExpand(rows,expanded){const{expandColumn}=reactData;let{fullAllDataRowIdData,rowExpandedMaps,rowExpandLazyLoadedMaps}=internalData;const{handleGetRowId}=createHandleGetRowId($xeTable);const expandOpts=computeExpandOpts.value;const{reserve,lazy,accordion,toggleMethod}=expandOpts;const lazyRests=[];const columnIndex=$xeTable.getColumnIndex(expandColumn);const $columnIndex=$xeTable.getVMColumnIndex(expandColumn);if(rows){if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){rows=[rows];}if(accordion){// 只能同时展开一个
|
|
10949
|
+
rowExpandedMaps={};internalData.rowExpandedMaps=rowExpandedMaps;rows=rows.slice(rows.length-1,rows.length);}const validRows=toggleMethod?rows.filter(row=>toggleMethod({$table:$xeTable,expanded,column:expandColumn,columnIndex,$columnIndex,row,rowIndex:tableMethods.getRowIndex(row),$rowIndex:tableMethods.getVMRowIndex(row)})):rows;if(expanded){validRows.forEach(row=>{const rowid=handleGetRowId(row);if(!rowExpandedMaps[rowid]){const rowRest=fullAllDataRowIdData[rowid];const isLoad=lazy&&!rowRest.expandLoaded&&!rowExpandLazyLoadedMaps[rowid];if(isLoad){lazyRests.push(handleAsyncRowExpand(row));}else{rowExpandedMaps[rowid]=row;}}});}else{validRows.forEach(item=>{const rowid=handleGetRowId(item);if(rowExpandedMaps[rowid]){delete rowExpandedMaps[rowid];}});}if(reserve){validRows.forEach(row=>handleRowExpandReserve(row,expanded));}}reactData.rowExpandedFlag++;return Promise.all(lazyRests).then(()=>(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)()).then(()=>$xeTable.recalculate(true)).then(()=>{updateRowOffsetTop();updateRowExpandStyle();handleRowExpandScroll();return $xeTable.updateCellAreas();});},/**
|
|
10833
10950
|
* 判断行是否为展开状态
|
|
10834
10951
|
* @param {Row} row 行对象
|
|
10835
|
-
*/isRowExpandByRow(row){const{
|
|
10952
|
+
*/isRowExpandByRow(row){const{rowExpandedFlag}=reactData;const{rowExpandedMaps}=internalData;const rowid=getRowid($xeTable,row);return!!rowExpandedFlag&&!!rowExpandedMaps[rowid];},isExpandByRow(row){// 已废弃
|
|
10836
10953
|
if(true){warnLog('vxe.error.delFunc',['isExpandByRow','isRowExpandByRow']);}return tableMethods.isRowExpandByRow(row);},/**
|
|
10837
10954
|
* 手动清空展开行状态,数据会恢复成未展开的状态
|
|
10838
|
-
*/clearRowExpand(){const{tableFullData}=internalData;const expandOpts=computeExpandOpts.value;const{reserve}=expandOpts;const expList=$xeTable.getRowExpandRecords();
|
|
10955
|
+
*/clearRowExpand(){const{tableFullData}=internalData;const expandOpts=computeExpandOpts.value;const{reserve}=expandOpts;const expList=$xeTable.getRowExpandRecords();internalData.rowExpandedMaps={};reactData.rowExpandedFlag++;if(reserve){tableFullData.forEach(row=>handleRowExpandReserve(row,false));}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{if(expList.length){return $xeTable.recalculate(true);}}).then(()=>{updateRowOffsetTop();updateRowExpandStyle();handleRowExpandScroll();return $xeTable.updateCellAreas();});},clearRowExpandReserve(){internalData.rowExpandedReserveRowMap={};return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},getRowExpandRecords(){const rest=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(internalData.rowExpandedMaps,item=>{if(item){rest.push(item);}});return rest;},getTreeExpandRecords(){const rest=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(internalData.treeExpandedMaps,item=>{if(item){rest.push(item);}});return rest;},/**
|
|
10839
10956
|
* 判断树节点是否懒加载完成
|
|
10840
10957
|
* @param {Row} row 行对象
|
|
10841
|
-
*/isTreeExpandLoaded(row){const{fullAllDataRowIdData}=internalData;const rowRest=fullAllDataRowIdData[getRowid($xeTable,row)];return rowRest&&!!rowRest.treeLoaded;},clearTreeExpandLoaded(rows){const{fullAllDataRowIdData}=internalData;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;
|
|
10958
|
+
*/isTreeExpandLoaded(row){const{fullAllDataRowIdData}=internalData;const rowRest=fullAllDataRowIdData[getRowid($xeTable,row)];return rowRest&&!!rowRest.treeLoaded;},clearTreeExpandLoaded(rows){const{fullAllDataRowIdData,treeExpandedMaps}=internalData;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;if(rows){if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){rows=[rows];}rows.forEach(row=>{const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rowRest.treeLoaded=false;if(treeExpandedMaps[rowid]){delete treeExpandedMaps[rowid];}}});}else{external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(fullAllDataRowIdData,rowRest=>{rowRest.treeLoaded=false;});}internalData.treeExpandedMaps={};reactData.treeExpandedFlag++;if(transform){handleVirtualTreeToList();return $xeTable.handleTableData();}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
10842
10959
|
* 重新懒加载树节点,并展开该节点
|
|
10843
10960
|
* @param {Row} row 行对象
|
|
10844
|
-
*/reloadTreeExpand(row){const{treeExpandLazyLoadedMaps}=
|
|
10961
|
+
*/reloadTreeExpand(row){const{treeExpandLazyLoadedMaps}=internalData;const treeOpts=computeTreeOpts.value;const hasChildField=treeOpts.hasChild||treeOpts.hasChildField;const{transform,lazy}=treeOpts;const rowid=getRowid($xeTable,row);if(lazy&&row[hasChildField]&&!treeExpandLazyLoadedMaps[rowid]){return tableMethods.clearTreeExpandLoaded(row).then(()=>{return handleAsyncTreeExpandChilds(row);}).then(()=>{if(transform){handleVirtualTreeToList();return tablePrivateMethods.handleTableData();}}).then(()=>{return tableMethods.recalculate();});}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},reloadTreeChilds(row){if(true){warnLog('vxe.error.delFunc',['reloadTreeChilds','reloadTreeExpand']);}// 即将废弃
|
|
10845
10962
|
return tableMethods.reloadTreeExpand(row);},/**
|
|
10846
10963
|
* 切换/展开树节点
|
|
10847
10964
|
*/toggleTreeExpand(row){return tableMethods.setTreeExpand(row,!tableMethods.isTreeExpandByRow(row));},/**
|
|
@@ -10857,9 +10974,9 @@ return tableMethods.reloadTreeExpand(row);},/**
|
|
|
10857
10974
|
if(transform){return handleVirtualTreeExpand(rows,expanded);}else{return handleBaseTreeExpand(rows,expanded);}}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
10858
10975
|
* 判断行是否为树形节点展开状态
|
|
10859
10976
|
* @param {Row} row 行对象
|
|
10860
|
-
*/isTreeExpandByRow(row){const{
|
|
10977
|
+
*/isTreeExpandByRow(row){const{treeExpandedFlag}=reactData;const{treeExpandedMaps}=internalData;return!!treeExpandedFlag&&!!treeExpandedMaps[getRowid($xeTable,row)];},/**
|
|
10861
10978
|
* 手动清空树形节点的展开状态,数据会恢复成未展开的状态
|
|
10862
|
-
*/clearTreeExpand(){const{tableFullTreeData}=internalData;const treeOpts=computeTreeOpts.value;const childrenField=treeOpts.children||treeOpts.childrenField;const{transform,reserve}=treeOpts;const expList
|
|
10979
|
+
*/clearTreeExpand(){const{tableFullTreeData}=internalData;const treeOpts=computeTreeOpts.value;const childrenField=treeOpts.children||treeOpts.childrenField;const{transform,reserve}=treeOpts;const expList=$xeTable.getTreeExpandRecords();internalData.treeExpandedMaps={};reactData.treeExpandedFlag++;if(reserve){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(tableFullTreeData,row=>handleTreeExpandReserve(row,false),{children:childrenField});}return $xeTable.handleTableData().then(()=>{if(transform){handleVirtualTreeToList();return $xeTable.handleTableData();}}).then(()=>{if(expList.length){return $xeTable.recalculate();}});},clearTreeExpandReserve(){internalData.treeExpandedReserveRowMap={};return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
10863
10980
|
* 获取表格的滚动状态
|
|
10864
10981
|
*/getScroll(){const{scrollXLoad,scrollYLoad}=reactData;const{elemStore}=internalData;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);return{virtualX:scrollXLoad,virtualY:scrollYLoad,scrollTop:bodyScrollElem?bodyScrollElem.scrollTop:0,scrollLeft:bodyScrollElem?bodyScrollElem.scrollLeft:0};},/**
|
|
10865
10982
|
* 如果有滚动条,则滚动到对应的位置
|
|
@@ -10893,8 +11010,8 @@ if(transform){return handleVirtualTreeExpand(rows,expanded);}else{return handleB
|
|
|
10893
11010
|
* 获取所有被合并的表尾
|
|
10894
11011
|
*/getMergeFooterItems(){return reactData.mergeFooterList.slice(0);},/**
|
|
10895
11012
|
* 清除所有表尾合并
|
|
10896
|
-
*/clearMergeFooterItems(){reactData.mergeFooterList=[];return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{return updateStyle();});},updateCellAreas(){const{mouseConfig}=props;const mouseOpts=computeMouseOpts.value;if(mouseConfig&&mouseOpts.area&&$xeTable.handleRecalculateCellAreaEvent){return $xeTable.handleRecalculateCellAreaEvent();}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},getCustomStoreData(){const{id}=props;const customOpts=computeCustomOpts.value;const{collectColumn}=internalData;const{checkMethod}=customOpts;const resizableData={};const sortData={};const visibleData={};const fixedData={};const storeData={resizableData:undefined,sortData:undefined,visibleData:undefined,fixedData:undefined};if(!id){errLog('vxe.error.reqProp',['id']);return storeData;}let hasResizable=0;let hasSort=0;let hasFixed=0;let hasVisible=0;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn,(column,index,items,path,parentColumn)=>{// 只支持一级
|
|
10897
|
-
if(!parentColumn){
|
|
11013
|
+
*/clearMergeFooterItems(){reactData.mergeFooterList=[];return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{return updateStyle();});},updateCellAreas(){const{mouseConfig}=props;const mouseOpts=computeMouseOpts.value;if(mouseConfig&&mouseOpts.area&&$xeTable.handleRecalculateCellAreaEvent){return $xeTable.handleRecalculateCellAreaEvent();}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},getCustomStoreData(){const{id}=props;const customOpts=computeCustomOpts.value;const{collectColumn}=internalData;const{storage,checkMethod}=customOpts;const isAllCustom=storage===true;const storageOpts=isAllCustom?{}:Object.assign({},storage||{});const isCustomResizable=isAllCustom||storageOpts.resizable;const isCustomVisible=isAllCustom||storageOpts.visible;const isCustomFixed=isAllCustom||storageOpts.fixed;const isCustomSort=isAllCustom||storageOpts.sort;const resizableData={};const sortData={};const visibleData={};const fixedData={};const storeData={resizableData:undefined,sortData:undefined,visibleData:undefined,fixedData:undefined};if(!id){errLog('vxe.error.reqProp',['id']);return storeData;}let hasResizable=0;let hasSort=0;let hasFixed=0;let hasVisible=0;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn,(column,index,items,path,parentColumn)=>{const colKey=column.getKey();if(!colKey){errLog('vxe.error.reqProp',[`${column.getTitle()||column.type||''} -> column.field=?`]);return;}// 只支持一级
|
|
11014
|
+
if(!parentColumn){if(isCustomSort){hasSort=1;sortData[colKey]=column.renderSortNumber;}if(isCustomFixed&&column.fixed!==column.defaultFixed){hasFixed=1;fixedData[colKey]=column.fixed;}}if(isCustomResizable&&column.resizeWidth){hasResizable=1;resizableData[colKey]=column.renderWidth;}if(isCustomVisible&&(!checkMethod||checkMethod({column}))){if(!column.visible&&column.defaultVisible){hasVisible=1;visibleData[colKey]=false;}else if(column.visible&&!column.defaultVisible){hasVisible=1;visibleData[colKey]=true;}}});if(hasResizable){storeData.resizableData=resizableData;}if(hasSort){storeData.sortData=sortData;}if(hasFixed){storeData.fixedData=fixedData;}if(hasVisible){storeData.visibleData=visibleData;}return storeData;},focus(){internalData.isActivated=true;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},blur(){internalData.isActivated=false;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
10898
11015
|
* 连接工具栏
|
|
10899
11016
|
* @param $toolbar
|
|
10900
11017
|
*/connect($toolbar){if($toolbar){$xeToolbar=$toolbar;$xeToolbar.syncUpdate({collectColumn:internalData.collectColumn,$table:$xeTable});}else{errLog('vxe.error.barUnableLink');}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}};/**
|
|
@@ -10943,11 +11060,10 @@ internalData._keyCtx=selected.row&&selected.column&&bodyMenu.length;clearTimeout
|
|
|
10943
11060
|
if(hasCtrlKey){// 如果是激活编辑状态,则取消编辑
|
|
10944
11061
|
if(actived.row){const params=actived.args;$xeTable.handleClearEdit(evnt);// 如果配置了选中功能,则为选中状态
|
|
10945
11062
|
if(mouseOpts.selected){(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(()=>{$xeTable.handleSelected(params,evnt);});}}}else{// 如果是激活状态,退则出到上一行/下一行
|
|
10946
|
-
if(selected.row||actived.row){const activeParams=selected.row?selected.args:actived.args;if(hasShiftKey){if(keyboardOpts.enterToTab){$xeTable.moveTabSelected(activeParams,hasShiftKey,evnt);}else{$xeTable.
|
|
10947
|
-
if(isLastEnterAppendRow){if(_rowIndex>=afterFullData.length-1){$xeTable.insertAt({},-1).then(({row:newRow})=>{$xeTable.scrollToRow(newRow,activeColumn);$xeTable.handleSelected({...activeParams,row:newRow},evnt);});$xeTable.dispatchEvent('enter-append-row',etrParams,evnt);return;}}$xeTable.
|
|
11063
|
+
if(selected.row||actived.row){const activeParams=selected.row?selected.args:actived.args;if(hasShiftKey){if(keyboardOpts.enterToTab){$xeTable.moveTabSelected(activeParams,hasShiftKey,evnt);}else{$xeTable.moveEnterSelected(activeParams,isLeftArrow,true,isRightArrow,false,evnt);}}else{if(keyboardOpts.enterToTab){$xeTable.moveTabSelected(activeParams,hasShiftKey,evnt);}else{const activeRow=selected.row||actived.row;const activeColumn=selected.column||actived.column;const _rowIndex=$xeTable.getVTRowIndex(activeRow);const etrParams={row:activeRow,rowIndex:$xeTable.getRowIndex(activeRow),$rowIndex:$xeTable.getVMRowIndex(activeRow),_rowIndex,column:activeColumn,columnIndex:$xeTable.getColumnIndex(activeColumn),$columnIndex:$xeTable.getVMColumnIndex(activeColumn),_columnIndex:$xeTable.getVTColumnIndex(activeColumn),$table:$xeTable};if(!beforeEnterMethod||beforeEnterMethod(etrParams)!==false){// 最后一行按下回车键,自动追加一行
|
|
11064
|
+
if(isLastEnterAppendRow){if(_rowIndex>=afterFullData.length-1){$xeTable.insertAt({},-1).then(({row:newRow})=>{$xeTable.scrollToRow(newRow,activeColumn);$xeTable.handleSelected({...activeParams,row:newRow},evnt);});$xeTable.dispatchEvent('enter-append-row',etrParams,evnt);return;}}$xeTable.moveEnterSelected(activeParams,isLeftArrow,false,isRightArrow,true,evnt);if(enterMethod){enterMethod(etrParams);}}}}}else if(treeConfig&&(rowOpts.isCurrent||highlightCurrentRow)&¤tRow){// 如果是树形表格当前行回车移动到子节点
|
|
10948
11065
|
const childrens=currentRow[childrenField];if(childrens&&childrens.length){evnt.preventDefault();const targetRow=childrens[0];const params={$table:$xeTable,row:targetRow,rowIndex:tableMethods.getRowIndex(targetRow),$rowIndex:tableMethods.getVMRowIndex(targetRow)};tableMethods.setTreeExpand(currentRow,true).then(()=>tableMethods.scrollToRow(targetRow)).then(()=>tablePrivateMethods.triggerCurrentRowEvent(evnt,params));}}}}else if(operArrow&&keyboardConfig&&keyboardOpts.isArrow){if(!isEditStatus){// 如果按下了方向键
|
|
10949
|
-
if(selected.row&&selected.column){$xeTable.
|
|
10950
|
-
$xeTable.moveCurrentRow(isUpArrow,isDwArrow,evnt);}}}else if(isTab&&keyboardConfig&&keyboardOpts.isTab){// 如果按下了 Tab 键切换
|
|
11066
|
+
if(selected.row&&selected.column){$xeTable.moveArrowSelected(selected.args,isLeftArrow,isUpArrow,isRightArrow,isDwArrow,evnt);}}}else if(isTab&&keyboardConfig&&keyboardOpts.isTab){// 如果按下了 Tab 键切换
|
|
10951
11067
|
if(selected.row||selected.column){$xeTable.moveTabSelected(selected.args,hasShiftKey,evnt);}else if(actived.row||actived.column){$xeTable.moveTabSelected(actived.args,hasShiftKey,evnt);}}else if(keyboardConfig&&keyboardOpts.isDel&&hasDeleteKey&&isEnableConf(editConfig)&&(selected.row||selected.column)){// 如果是删除键
|
|
10952
11068
|
if(!isEditStatus){const{delMethod}=keyboardOpts;const params={row:selected.row,rowIndex:tableMethods.getRowIndex(selected.row),column:selected.column,columnIndex:tableMethods.getColumnIndex(selected.column),$table:$xeTable,$grid:$xeGrid};// 是否被禁用
|
|
10953
11069
|
if(!beforeEditMethod||beforeEditMethod(params)){if(delMethod){delMethod(params);}else{setCellValue(selected.row,selected.column,null);}// 如果按下 del 键,更新表尾数据
|
|
@@ -10964,7 +11080,7 @@ if(editMode!=='insert'){setCellValue(selected.row,selected.column,null);}$xeTabl
|
|
|
10964
11080
|
* 处理显示 tooltip
|
|
10965
11081
|
* @param {Event} evnt 事件
|
|
10966
11082
|
* @param {Row} row 行对象
|
|
10967
|
-
*/const handleTooltip=(evnt,tdEl,overflowElem,
|
|
11083
|
+
*/const handleTooltip=(evnt,tdEl,overflowElem,params)=>{const tipOverEl=overflowElem||tdEl;if(!tipOverEl){return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}params.cell=tdEl;const{tooltipStore}=reactData;const tooltipOpts=computeTooltipOpts.value;const{column,row}=params;const{showAll,contentMethod}=tooltipOpts;const customContent=contentMethod?contentMethod(params):null;const useCustom=contentMethod&&!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(customContent);const content=useCustom?customContent:external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toString(column.type==='html'?tipOverEl.innerText:tipOverEl.textContent).trim();if(content&&(showAll||useCustom||tipOverEl.scrollWidth>tipOverEl.clientWidth)){Object.assign(tooltipStore,{row,column,visible:true,currOpts:{}});(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(()=>{const $tooltip=refTooltip.value;if($tooltip&&$tooltip.open){$tooltip.open(tipOverEl,formatText(content));}});}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};const callSlot=(slotFunc,params)=>{if(slotFunc){if($xeGrid){return $xeGrid.callSlot(slotFunc,params);}if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(slotFunc)){return getSlotVNs(slotFunc(params));}}return[];};/**
|
|
10968
11084
|
* 内部方法
|
|
10969
11085
|
*/tablePrivateMethods={getSetupOptions(){return table_getConfig();},updateAfterDataIndex,callSlot,/**
|
|
10970
11086
|
* 获取父容器元素
|
|
@@ -10983,9 +11099,9 @@ if(force){// 更新数据,处理筛选和排序
|
|
|
10983
11099
|
updateAfterFullData();// 如果为虚拟树,将树结构拍平
|
|
10984
11100
|
fullList=handleVirtualTreeToList();}const tableData=scrollYLoad?fullList.slice(scrollYStore.startIndex,scrollYStore.endIndex):fullList.slice(0);tableData.forEach((row,$index)=>{const rowid=getRowid($xeTable,row);const rest=fullDataRowIdData[rowid];if(rest){rest.$index=$index;}});reactData.tableData=tableData;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
10985
11101
|
* 更新数据行的 Map
|
|
10986
|
-
*/cacheRowMap(){const{treeConfig}=props;const{
|
|
10987
|
-
const fullDataRowIdMaps={};const
|
|
10988
|
-
if(treeConfig){const childrenField=treeOpts.children||treeOpts.childrenField;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(sourceData,handleSourceRow,{children:treeOpts.transform?treeOpts.mapChildrenField:childrenField});}else{sourceData.forEach(handleSourceRow);}internalData.tableSourceData=sourceData;},/**
|
|
11102
|
+
*/cacheRowMap(){const{treeConfig}=props;const{fullAllDataRowIdData,tableFullData,tableFullTreeData,treeExpandedMaps}=internalData;const treeOpts=computeTreeOpts.value;const childrenField=treeOpts.children||treeOpts.childrenField;const hasChildField=treeOpts.hasChild||treeOpts.hasChildField;const{lazy}=treeOpts;const fullAllDataRowIdMaps={...fullAllDataRowIdData};// 存在已删除数据
|
|
11103
|
+
const fullDataRowIdMaps={};const{handleUpdateRowId}=createHandleUpdateRowId($xeTable);const handleRowCache=(row,index,items,currIndex,parentRow,rowid,level,seq)=>{let rowRest=fullAllDataRowIdMaps[rowid];if(!rowRest){rowRest={row,rowid,seq,index:-1,_index:-1,$index:-1,treeIndex:index,items,parent:parentRow,level,height:0,resizeHeight:0,oTop:0,expandHeight:0};fullDataRowIdMaps[rowid]=rowRest;fullAllDataRowIdMaps[rowid]=rowRest;}rowRest.treeLoaded=false;rowRest.expandLoaded=false;rowRest.row=row;rowRest.items=items;rowRest.parent=parentRow;rowRest.level=level;rowRest.index=currIndex;rowRest.treeIndex=index;fullDataRowIdMaps[rowid]=rowRest;fullAllDataRowIdMaps[rowid]=rowRest;};if(treeConfig){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(tableFullTreeData,(row,index,items,path,parentRow,nodes)=>{const rowid=handleUpdateRowId(row);if(treeConfig&&lazy){if(row[hasChildField]&&row[childrenField]===undefined){row[childrenField]=null;}if(treeExpandedMaps[rowid]){if(!row[childrenField]||!row[childrenField].length){delete treeExpandedMaps[rowid];}}}handleRowCache(row,index,items,parentRow?-1:index,parentRow,rowid,nodes.length-1,toTreePathSeq(path));},{children:childrenField});}else{tableFullData.forEach((row,index,items)=>{handleRowCache(row,index,items,index,null,handleUpdateRowId(row),0,index+1);});}internalData.fullDataRowIdData=fullDataRowIdMaps;internalData.fullAllDataRowIdData=fullAllDataRowIdMaps;reactData.treeExpandedFlag++;},cacheSourceMap(fullData){const{treeConfig}=props;const treeOpts=computeTreeOpts.value;const sourceData=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(fullData,true);const{handleUpdateRowId}=createHandleUpdateRowId($xeTable);const sourceRowIdData={};const handleSourceRow=row=>{const rowid=handleUpdateRowId(row);sourceRowIdData[rowid]=row;};// 源数据缓存
|
|
11104
|
+
if(treeConfig){const childrenField=treeOpts.children||treeOpts.childrenField;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(sourceData,handleSourceRow,{children:treeOpts.transform?treeOpts.mapChildrenField:childrenField});}else{sourceData.forEach(handleSourceRow);}internalData.sourceDataRowIdData=sourceRowIdData;internalData.tableSourceData=sourceData;},/**
|
|
10989
11105
|
* 指定列宽的列进行拆分
|
|
10990
11106
|
*/analyColumnWidth(){const{tableFullColumn}=internalData;const columnOpts=computeColumnOpts.value;const{width:defaultWidth,minWidth:defaultMinWidth}=columnOpts;const resizeList=[];const pxList=[];const pxMinList=[];const autoMinList=[];const scaleList=[];const scaleMinList=[];const autoList=[];const remainList=[];tableFullColumn.forEach(column=>{if(defaultWidth&&!column.width){column.width=defaultWidth;}if(defaultMinWidth&&!column.minWidth){column.minWidth=defaultMinWidth;}if(column.visible){if(column.resizeWidth){resizeList.push(column);}else if(column.width==='auto'){autoList.push(column);}else if(isPx(column.width)){pxList.push(column);}else if(isScale(column.width)){scaleList.push(column);}else if(isPx(column.minWidth)){pxMinList.push(column);}else if(column.minWidth==='auto'){autoMinList.push(column);}else if(isScale(column.minWidth)){scaleMinList.push(column);}else{remainList.push(column);}}});Object.assign(reactData.columnStore,{resizeList,pxList,pxMinList,autoMinList,scaleList,scaleMinList,autoList,remainList});},handleColResizeMousedownEvent(evnt,fixedType,params){evnt.stopPropagation();evnt.preventDefault();const{column}=params;const{overflowX,scrollbarHeight}=reactData;const{elemStore,visibleColumn}=internalData;const resizableOpts=computeResizableOpts.value;const osbHeight=overflowX?scrollbarHeight:0;const tableEl=refElem.value;const leftContainerElem=refLeftContainer.value;const rightContainerElem=refRightContainer.value;const resizeBarElem=refColResizeBar.value;if(!resizeBarElem){return;}const resizeTipElem=resizeBarElem.firstElementChild;const scrollbarXToTop=computeScrollbarXToTop.value;const{clientX:dragClientX}=evnt;const wrapperElem=refElem.value;const dragBtnElem=evnt.target;let resizeColumn=column;if(column.children&&column.children.length){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(column.children,childColumn=>{resizeColumn=childColumn;});}const cell=dragBtnElem.parentNode;const cellParams=Object.assign(params,{cell});let dragLeft=0;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);if(!bodyScrollElem){return;}const pos=getOffsetPos(dragBtnElem,wrapperElem);const dragBtnWidth=dragBtnElem.clientWidth;const dragBtnOffsetWidth=Math.floor(dragBtnWidth/2);const minInterval=getColReMinWidth(cellParams)-dragBtnOffsetWidth;// 列之间的最小间距
|
|
10991
11107
|
let dragMinLeft=pos.left-cell.clientWidth+dragBtnWidth+minInterval;let dragPosLeft=pos.left+dragBtnOffsetWidth;const isLeftFixed=fixedType==='left';const isRightFixed=fixedType==='right';// 计算左右侧固定列偏移量
|
|
@@ -10997,61 +11113,62 @@ dragMinLeft=(leftContainerElem?leftContainerElem.clientWidth:0)+fixedOffsetWidth
|
|
|
10997
11113
|
const updateEvent=evnt=>{evnt.stopPropagation();evnt.preventDefault();const rtWidth=tableEl.clientWidth-osbWidth;const tableHeight=tableEl.clientHeight-osbHeight;let dragTop=evnt.clientY-tableRect.y-targetOffsetY;if(dragTop<minTop){dragTop=minTop;}else{resizeHeight=Math.max(cellMinHeight,currCellHeight+evnt.clientY-dragClientY);}resizeBarElem.style.left=`${scrollbarYToLeft?osbWidth:0}px`;resizeBarElem.style.top=`${dragTop}px`;resizeBarElem.style.width=`${rtWidth}px`;if(resizableOpts.showDragTip&&resizeTipElem){resizeTipElem.textContent=table_getI18n('vxe.table.resizeRowTip',[resizeHeight]);const resizeTipWidth=resizeTipElem.clientWidth;const resizeTipHeight=resizeTipElem.clientHeight;let resizeBarLeft=Math.max(2,evnt.clientX-tableRect.x);let resizeBarTop=0;if(resizeBarLeft+resizeTipWidth>=rtWidth-2){resizeBarLeft=rtWidth-resizeTipWidth-2;}if(dragTop+resizeTipHeight>=tableHeight){resizeBarTop=tableHeight-(dragTop+resizeTipHeight);}resizeTipElem.style.left=`${resizeBarLeft}px`;resizeTipElem.style.top=`${resizeBarTop}px`;}reactData.isDragResize=true;};reactData.isDragResize=true;addClass(tableEl,'row-drag--resize');resizeBarElem.style.display='block';document.onmousemove=updateEvent;document.onmouseup=function(evnt){document.onmousemove=null;document.onmouseup=null;resizeBarElem.style.display='none';internalData._lastResizeTime=Date.now();setTimeout(()=>{reactData.isDragResize=false;},50);if(resizeHeight!==currCellHeight){const resizeParams={...params,resizeHeight,resizeRow:row};internalData.isResizeCellHeight=true;if($xeTable.handleRowResizeCellAreaEvent){$xeTable.handleRowResizeCellAreaEvent(evnt,resizeParams);}else{rowRest.resizeHeight=resizeHeight;handleUpdateRowResize(evnt,resizeParams);updateRowOffsetTop();}}removeClass(tableEl,'row-drag--resize');};updateEvent(evnt);},handleRowResizeDblclickEvent(evnt,params){const resizableOpts=computeResizableOpts.value;const{isDblclickAutoHeight}=resizableOpts;const el=refElem.value;if(isDblclickAutoHeight&&el){evnt.stopPropagation();evnt.preventDefault();const{editStore}=reactData;const{fullAllDataRowIdData}=internalData;const{actived}=editStore;const{row}=params;const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(!rowRest){return;}const handleRsHeight=()=>{el.setAttribute('data-calc-row','Y');const resizeHeight=calcCellAutoHeight(rowRest,el);el.removeAttribute('data-calc-row');const resizeParams={...params,resizeHeight,resizeRow:row};reactData.isDragResize=false;internalData._lastResizeTime=Date.now();if($xeTable.handleRowResizeDblclickCellAreaEvent){$xeTable.handleRowResizeDblclickCellAreaEvent(evnt,resizeParams);}else{rowRest.resizeHeight=resizeHeight;handleUpdateRowResize(evnt,resizeParams);}};if(actived.row||actived.column){$xeTable.clearEdit().then(handleRsHeight);}else{handleRsHeight();}}},saveCustomStore(type){const{customConfig}=props;const tableId=computeTableId.value;const customOpts=computeCustomOpts.value;const{updateStore,storage}=customOpts;const isAllCustom=storage===true;const storageOpts=isAllCustom?{}:Object.assign({},storage||{});const isCustomResizable=isAllCustom||storageOpts.resizable;const isCustomVisible=isAllCustom||storageOpts.visible;const isCustomFixed=isAllCustom||storageOpts.fixed;const isCustomSort=isAllCustom||storageOpts.sort;if(type!=='reset'){// fix:修复拖动列宽,重置按钮无法点击的问题
|
|
10998
11114
|
reactData.isCustomStatus=true;}if((customConfig?isEnableConf(customOpts):customOpts.enabled)&&(isCustomResizable||isCustomVisible||isCustomFixed||isCustomSort)){if(!tableId){errLog('vxe.error.reqProp',['id']);return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}const storeData=type==='reset'?{resizableData:{},sortData:{},visibleData:{},fixedData:{}}:tableMethods.getCustomStoreData();if(updateStore){return updateStore({id:tableId,type,storeData});}else{setCustomStorageMap(tableId,type==='reset'?null:storeData);}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},handleCustom(){const{mouseConfig}=props;if(mouseConfig){if($xeTable.clearSelected){$xeTable.clearSelected();}if($xeTable.clearCellAreas){$xeTable.clearCellAreas();$xeTable.clearCopyCellArea();}}tablePrivateMethods.analyColumnWidth();return tableMethods.refreshColumn(true);},handleUpdateDataQueue(){reactData.upDataFlag++;},handleRefreshColumnQueue(){reactData.reColumnFlag++;},preventEvent(evnt,type,args,next,end){let evntList=table_interceptor.get(type);// 兼容老版本
|
|
10999
11115
|
if(!evntList.length&&type==='event.clearEdit'){evntList=table_interceptor.get('event.clearActived');if(true){if(evntList.length){warnLog('vxe.error.delEvent',['event.clearActived','event.clearEdit']);}}}// 兼容老版本
|
|
11000
|
-
let rest;
|
|
11001
|
-
if(treeConfig){const childRowMaps={};const childRowList=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterTreeFullData,row=>{const rowid=
|
|
11116
|
+
let rest=null;let isStop=false;for(let i=0;i<evntList.length;i++){const func=evntList[i];const fnRest=func(Object.assign({$grid:$xeGrid,$table:$xeTable,$event:evnt},args));if(fnRest===false){isStop=true;break;}else if(fnRest&&fnRest.status===false){rest=fnRest.result;isStop=true;break;}}if(!isStop){if(next){rest=next();}}if(end){end();}return rest;},updateCheckboxStatus(){const{treeConfig}=props;const{selectCheckboxMaps,treeIndeterminateRowMaps}=internalData;const treeOpts=computeTreeOpts.value;const{transform,mapChildrenField}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const checkboxOpts=computeCheckboxOpts.value;const{checkField,checkStrictly,checkMethod}=checkboxOpts;const{afterTreeFullData}=internalData;if(checkStrictly){return;}// 树结构
|
|
11117
|
+
if(treeConfig){const{handleGetRowId}=createHandleGetRowId($xeTable);const childRowMaps={};const childRowList=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterTreeFullData,row=>{const rowid=handleGetRowId(row);const childList=row[transform?mapChildrenField:childrenField];if(childList&&childList.length&&!childRowMaps[rowid]){childRowMaps[rowid]=1;childRowList.unshift([row,rowid,childList]);}},{children:transform?mapChildrenField:childrenField});childRowList.forEach(vals=>{const row=vals[0];const rowid=vals[1];const childList=vals[2];let sLen=0;// 已选
|
|
11002
11118
|
let hLen=0;// 半选
|
|
11003
11119
|
let vLen=0;// 有效行
|
|
11004
|
-
childList.forEach(checkMethod?item=>{const childRowid=
|
|
11120
|
+
childList.forEach(checkMethod?item=>{const childRowid=handleGetRowId(item);const isSelect=checkField?external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(item,checkField):selectCheckboxMaps[childRowid];if(checkMethod({row:item})){if(isSelect){sLen++;}else if(treeIndeterminateRowMaps[childRowid]){hLen++;}vLen++;}else{if(isSelect){sLen++;}else if(treeIndeterminateRowMaps[childRowid]){hLen++;}}}:item=>{const childRowid=handleGetRowId(item);const isSelect=checkField?external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(item,checkField):selectCheckboxMaps[childRowid];if(isSelect){sLen++;}else if(treeIndeterminateRowMaps[childRowid]){hLen++;}vLen++;});const isSelected=sLen>=vLen;const halfSelect=!isSelected&&(sLen>=1||hLen>=1);if(checkField){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,checkField,isSelected);}if(isSelected){if(!checkField){selectCheckboxMaps[rowid]=row;}if(treeIndeterminateRowMaps[rowid]){delete treeIndeterminateRowMaps[rowid];}}else{if(!checkField){if(selectCheckboxMaps[rowid]){delete selectCheckboxMaps[rowid];}}if(halfSelect){treeIndeterminateRowMaps[rowid]=row;}else{if(treeIndeterminateRowMaps[rowid]){delete treeIndeterminateRowMaps[rowid];}}}});}reactData.updateCheckboxFlag++;},updateAllCheckboxStatus(){const{treeConfig}=props;const{afterFullData,afterTreeFullData,checkboxReserveRowMap,selectCheckboxMaps,treeIndeterminateRowMaps}=internalData;const checkboxOpts=computeCheckboxOpts.value;const{checkField,checkMethod,showReserveStatus}=checkboxOpts;const{handleGetRowId}=createHandleGetRowId($xeTable);let sLen=0;// 已选
|
|
11005
11121
|
let hLen=0;// 半选
|
|
11006
11122
|
let vLen=0;// 有效行
|
|
11007
|
-
const rootList=treeConfig?afterTreeFullData:afterFullData;rootList.forEach(checkMethod?row=>{const childRowid=
|
|
11123
|
+
const rootList=treeConfig?afterTreeFullData:afterFullData;rootList.forEach(checkMethod?row=>{const childRowid=handleGetRowId(row);const selected=checkField?external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,checkField):selectCheckboxMaps[childRowid];if(checkMethod({row})){if(selected){sLen++;}else if(treeIndeterminateRowMaps[childRowid]){hLen++;}vLen++;}else{if(selected){sLen++;}else if(treeIndeterminateRowMaps[childRowid]){hLen++;}}}:row=>{const childRowid=handleGetRowId(row);const selected=checkField?external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,checkField):selectCheckboxMaps[childRowid];if(selected){sLen++;}else if(treeIndeterminateRowMaps[childRowid]){hLen++;}vLen++;});const isSelected=rootList.length>0?vLen>0?sLen>=vLen:sLen>=rootList.length:false;let halfSelect=!isSelected&&(sLen>=1||hLen>=1);// 如果复选框启用保留记录,当保留数据存在时显示半选
|
|
11008
11124
|
if(!isSelected&&!halfSelect&&showReserveStatus){halfSelect=!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isEmpty(checkboxReserveRowMap);}reactData.isAllSelected=isSelected;reactData.isIndeterminate=halfSelect;},checkSelectionStatus(){$xeTable.updateCheckboxStatus();$xeTable.updateAllCheckboxStatus();},/**
|
|
11009
11125
|
* 切换选中
|
|
11010
11126
|
* 多选,行选中事件
|
|
11011
|
-
*/handleBatchSelectRows(rows,checked,isForce){const{treeConfig}=props;const{selectCheckboxMaps}=
|
|
11127
|
+
*/handleBatchSelectRows(rows,checked,isForce){const{treeConfig}=props;const{selectCheckboxMaps}=internalData;const treeOpts=computeTreeOpts.value;const{transform,mapChildrenField}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const checkboxOpts=computeCheckboxOpts.value;const{checkField,checkStrictly,checkMethod}=checkboxOpts;const{handleGetRowId}=createHandleGetRowId($xeTable);// indeterminateField 仅支持读取
|
|
11012
11128
|
const indeterminateField=checkboxOpts.indeterminateField||checkboxOpts.halfField;if(checkField){// 树结构
|
|
11013
11129
|
if(treeConfig&&!checkStrictly){// 更新子节点状态
|
|
11014
|
-
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(rows,row=>{if(isForce||!checkMethod||checkMethod({row})){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,checkField,checked);if(indeterminateField){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,indeterminateField,false);}handleCheckboxReserveRow(row,checked);}},{children:transform?mapChildrenField:childrenField});reactData.
|
|
11015
|
-
rows.forEach(row=>{if(isForce||!checkMethod||checkMethod({row})){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,checkField,checked);handleCheckboxReserveRow(row,checked);}});
|
|
11130
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(rows,row=>{if(isForce||!checkMethod||checkMethod({row})){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,checkField,checked);if(indeterminateField){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,indeterminateField,false);}handleCheckboxReserveRow(row,checked);}},{children:transform?mapChildrenField:childrenField});reactData.updateCheckboxFlag++;return;}// 列表
|
|
11131
|
+
rows.forEach(row=>{if(isForce||!checkMethod||checkMethod({row})){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,checkField,checked);handleCheckboxReserveRow(row,checked);}});reactData.updateCheckboxFlag++;return;}// 树结构
|
|
11016
11132
|
if(treeConfig&&!checkStrictly){// 更新子节点状态
|
|
11017
|
-
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(rows,row=>{const rowid=
|
|
11018
|
-
rows.forEach(row=>{const rowid=
|
|
11133
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(rows,row=>{const rowid=handleGetRowId(row);if(isForce||!checkMethod||checkMethod({row})){if(checked){selectCheckboxMaps[rowid]=row;}else{if(selectCheckboxMaps[rowid]){delete selectCheckboxMaps[rowid];}}handleCheckboxReserveRow(row,checked);}},{children:transform?mapChildrenField:childrenField});reactData.updateCheckboxFlag++;return;}// 列表
|
|
11134
|
+
rows.forEach(row=>{const rowid=handleGetRowId(row);if(isForce||!checkMethod||checkMethod({row})){if(checked){if(!selectCheckboxMaps[rowid]){selectCheckboxMaps[rowid]=row;}}else{if(selectCheckboxMaps[rowid]){delete selectCheckboxMaps[rowid];}}handleCheckboxReserveRow(row,checked);reactData.updateCheckboxFlag++;}});},/**
|
|
11019
11135
|
* 即将移除
|
|
11020
11136
|
* @deprecated
|
|
11021
11137
|
*/handleSelectRow({row},checked,isForce){$xeTable.handleBatchSelectRows([row],checked,isForce);},triggerHeaderTitleEvent(evnt,iconParams,params){const tipContent=iconParams.content||iconParams.message;if(tipContent){const{tooltipStore}=reactData;const{column}=params;const content=getFuncText(tipContent);handleTargetEnterEvent(true);tooltipStore.row=null;tooltipStore.column=column;tooltipStore.visible=true;tooltipStore.currOpts=iconParams;(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(()=>{const $tooltip=refTooltip.value;if($tooltip&&$tooltip.open){$tooltip.open(evnt.currentTarget,content);}});}},/**
|
|
11022
11138
|
* 触发表头 tooltip 事件
|
|
11023
|
-
*/triggerHeaderTooltipEvent(evnt,params){const{tooltipStore}=reactData;const{column}=params;handleTargetEnterEvent(true);const titleElem=evnt.currentTarget;if(!titleElem){return;}const cellEl=titleElem.parentElement;if(!cellEl){return;}const thEl=cellEl.parentElement;if(!thEl){return;}if(tooltipStore.column!==column||!tooltipStore.visible){handleTooltip(evnt,thEl,cellEl,
|
|
11139
|
+
*/triggerHeaderTooltipEvent(evnt,params){const{tooltipStore}=reactData;const{column}=params;handleTargetEnterEvent(true);const titleElem=evnt.currentTarget;if(!titleElem){return;}const cellEl=titleElem.parentElement;if(!cellEl){return;}const thEl=cellEl.parentElement;if(!thEl){return;}if(tooltipStore.column!==column||!tooltipStore.visible){handleTooltip(evnt,thEl,thEl.querySelector('.vxe-cell--title')||cellEl,params);}},/**
|
|
11024
11140
|
* 触发单元格 tooltip 事件
|
|
11025
11141
|
*/triggerBodyTooltipEvent(evnt,params){const{editConfig}=props;const{editStore}=reactData;const{tooltipStore}=reactData;const editOpts=computeEditOpts.value;const{actived}=editStore;const{row,column}=params;const tdEl=evnt.currentTarget;handleTargetEnterEvent(tooltipStore.column!==column||tooltipStore.row!==row);// 单元格处于编辑状态时不触发提示框
|
|
11026
11142
|
if(column.editRender&&isEnableConf(editConfig)){// 如果是行编辑模式
|
|
11027
11143
|
if(editOpts.mode==='row'&&actived.row===row){return;}// 如果是单元格编辑模式
|
|
11028
|
-
if(actived.row===row&&actived.column===column){return;}}if(tooltipStore.column!==column||tooltipStore.row!==row||!tooltipStore.visible){handleTooltip(evnt,tdEl,tdEl.querySelector('.vxe-cell--wrapper'),
|
|
11144
|
+
if(actived.row===row&&actived.column===column){return;}}if(tooltipStore.column!==column||tooltipStore.row!==row||!tooltipStore.visible){handleTooltip(evnt,tdEl,tdEl.querySelector('.vxe-cell--label')||tdEl.querySelector('.vxe-cell--wrapper'),params);}},/**
|
|
11029
11145
|
* 触发表尾 tooltip 事件
|
|
11030
|
-
*/triggerFooterTooltipEvent(evnt,params){const{column}=params;const{tooltipStore}=reactData;const
|
|
11146
|
+
*/triggerFooterTooltipEvent(evnt,params){const{column}=params;const{tooltipStore}=reactData;const tdEl=evnt.currentTarget;handleTargetEnterEvent(tooltipStore.column!==column||!!tooltipStore.row);if(tooltipStore.column!==column||!tooltipStore.visible){handleTooltip(evnt,tdEl,tdEl.querySelector('.vxe-cell--label')||tdEl.querySelector('.vxe-cell--wrapper'),params);}},handleTargetLeaveEvent(){const tooltipOpts=computeTooltipOpts.value;let $tooltip=refTooltip.value;if($tooltip&&$tooltip.setActived){$tooltip.setActived(false);}if(tooltipOpts.enterable){internalData.tooltipTimeout=setTimeout(()=>{$tooltip=refTooltip.value;if($tooltip&&$tooltip.isActived&&!$tooltip.isActived()){$xeTable.closeTooltip();}},tooltipOpts.leaveDelay);}else{$xeTable.closeTooltip();}},triggerHeaderCellClickEvent(evnt,params){const{_lastResizeTime}=internalData;const sortOpts=computeSortOpts.value;const columnOpts=computeColumnOpts.value;const currentColumnOpts=computeCurrentColumnOpts.value;const{column}=params;const cell=evnt.currentTarget;const triggerResizable=_lastResizeTime&&_lastResizeTime>Date.now()-300;const triggerSort=getEventTargetNode(evnt,cell,'vxe-cell--sort').flag;const triggerFilter=getEventTargetNode(evnt,cell,'vxe-cell--filter').flag;if(sortOpts.trigger==='cell'&&!(triggerResizable||triggerSort||triggerFilter)){$xeTable.triggerSortEvent(evnt,column,getNextSortOrder(column));}dispatchEvent('header-cell-click',Object.assign({triggerResizable,triggerSort,triggerFilter,cell},params),evnt);if((columnOpts.isCurrent||props.highlightCurrentColumn)&&(!currentColumnOpts.trigger||['header','default'].includes(currentColumnOpts.trigger))){$xeTable.triggerCurrentColumnEvent(evnt,params);}},triggerHeaderCellDblclickEvent(evnt,params){dispatchEvent('header-cell-dblclick',Object.assign({cell:evnt.currentTarget},params),evnt);},/**
|
|
11031
11147
|
* 列点击事件
|
|
11032
11148
|
* 如果是单击模式,则激活为编辑状态
|
|
11033
11149
|
* 如果是双击模式,则单击后选中状态
|
|
11034
|
-
*/triggerCellClickEvent(evnt,params){const{highlightCurrentRow,editConfig}=props;const{editStore,isDragResize}=reactData;if(isDragResize){return;}const expandOpts=computeExpandOpts.value;const editOpts=computeEditOpts.value;const treeOpts=computeTreeOpts.value;const radioOpts=computeRadioOpts.value;const checkboxOpts=computeCheckboxOpts.value;const keyboardOpts=computeKeyboardOpts.value;const rowOpts=computeRowOpts.value;const{actived,focused}=editStore;const{row,column}=params;const{type,treeNode}=column;const isRadioType=type==='radio';const isCheckboxType=type==='checkbox';const isExpandType=type==='expand';const cell=evnt.currentTarget;const triggerRadio=isRadioType&&getEventTargetNode(evnt,cell,'vxe-cell--radio').flag;const triggerCheckbox=isCheckboxType&&getEventTargetNode(evnt,cell,'vxe-cell--checkbox').flag;const triggerTreeNode=treeNode&&getEventTargetNode(evnt,cell,'vxe-tree--btn-wrapper').flag;const triggerExpandNode=isExpandType&&getEventTargetNode(evnt,cell,'vxe-table--expanded').flag;params=Object.assign({cell,triggerRadio,triggerCheckbox,triggerTreeNode,triggerExpandNode},params);if(!triggerCheckbox&&!triggerRadio){// 如果是展开行
|
|
11035
|
-
if(!triggerExpandNode&&(expandOpts.trigger==='row'||isExpandType&&expandOpts.trigger==='cell')){
|
|
11036
|
-
if(treeOpts.trigger==='row'||treeNode&&treeOpts.trigger==='cell'){
|
|
11037
|
-
if(!triggerTreeNode){if(!triggerExpandNode){//
|
|
11038
|
-
if(rowOpts.isCurrent||highlightCurrentRow){if(!triggerCheckbox&&!triggerRadio){
|
|
11039
|
-
if(
|
|
11040
|
-
if(!
|
|
11150
|
+
*/triggerCellClickEvent(evnt,params){const{highlightCurrentRow,highlightCurrentColumn,editConfig}=props;const{editStore,isDragResize}=reactData;if(isDragResize){return;}const expandOpts=computeExpandOpts.value;const editOpts=computeEditOpts.value;const treeOpts=computeTreeOpts.value;const radioOpts=computeRadioOpts.value;const checkboxOpts=computeCheckboxOpts.value;const keyboardOpts=computeKeyboardOpts.value;const rowOpts=computeRowOpts.value;const columnOpts=computeColumnOpts.value;const currentColumnOpts=computeCurrentColumnOpts.value;const{actived,focused}=editStore;const{row,column}=params;const{type,treeNode}=column;const isRadioType=type==='radio';const isCheckboxType=type==='checkbox';const isExpandType=type==='expand';const cell=evnt.currentTarget;const triggerRadio=isRadioType&&getEventTargetNode(evnt,cell,'vxe-cell--radio').flag;const triggerCheckbox=isCheckboxType&&getEventTargetNode(evnt,cell,'vxe-cell--checkbox').flag;const triggerTreeNode=treeNode&&getEventTargetNode(evnt,cell,'vxe-tree--btn-wrapper').flag;const triggerExpandNode=isExpandType&&getEventTargetNode(evnt,cell,'vxe-table--expanded').flag;params=Object.assign({cell,triggerRadio,triggerCheckbox,triggerTreeNode,triggerExpandNode},params);if(!triggerCheckbox&&!triggerRadio){// 如果是展开行
|
|
11151
|
+
if(!triggerExpandNode&&(expandOpts.trigger==='row'||isExpandType&&expandOpts.trigger==='cell')){$xeTable.triggerRowExpandEvent(evnt,params);}// 如果是树形表格
|
|
11152
|
+
if(treeOpts.trigger==='row'||treeNode&&treeOpts.trigger==='cell'){$xeTable.triggerTreeExpandEvent(evnt,params);}}// 如果点击了树节点
|
|
11153
|
+
if(!triggerTreeNode){if(!triggerExpandNode){// 如果是当前行
|
|
11154
|
+
if(rowOpts.isCurrent||highlightCurrentRow){if(!triggerCheckbox&&!triggerRadio){$xeTable.triggerCurrentRowEvent(evnt,params);}}// 如果是当前列
|
|
11155
|
+
if((columnOpts.isCurrent||highlightCurrentColumn)&&(!currentColumnOpts.trigger||['cell','default'].includes(currentColumnOpts.trigger))){if(!triggerCheckbox&&!triggerRadio){$xeTable.triggerCurrentColumnEvent(evnt,params);}}// 如果是单选框
|
|
11156
|
+
if(!triggerRadio&&(radioOpts.trigger==='row'||isRadioType&&radioOpts.trigger==='cell')){$xeTable.triggerRadioRowEvent(evnt,params);}// 如果是复选框
|
|
11157
|
+
if(!triggerCheckbox&&(checkboxOpts.trigger==='row'||isCheckboxType&&checkboxOpts.trigger==='cell')){$xeTable.handleToggleCheckRowEvent(evnt,params);}}// 如果设置了单元格选中功能,则不会使用点击事件去处理(只能支持双击模式)
|
|
11041
11158
|
if(isEnableConf(editConfig)){// 记录点击输入框聚焦状态
|
|
11042
11159
|
if(keyboardOpts.arrowCursorLock&&evnt&&editOpts.mode==='cell'&&evnt.target&&/^input|textarea$/i.test(evnt.target.tagName)){focused.column=column;focused.row=row;}if(editOpts.trigger==='manual'){if(actived.args&&actived.row===row&&column!==actived.column){handleChangeCell(evnt,params);}}else if(!actived.args||row!==actived.row||column!==actived.column){if(editOpts.trigger==='click'){handleChangeCell(evnt,params);}else if(editOpts.trigger==='dblclick'){if(editOpts.mode==='row'&&actived.row===row){handleChangeCell(evnt,params);}}}}}// 如果是双击编辑模式
|
|
11043
11160
|
if(isEnableConf(editConfig)&&editOpts.trigger==='dblclick'){if(actived.row&&actived.column){if(editOpts.mode==='row'){if(!$xeTable.eqRow(actived.row,row)){$xeTable.handleClearEdit(evnt);}}else if(editOpts.mode==='cell'){if(!$xeTable.eqRow(actived.row,row)||actived.column.id!==column.id){$xeTable.handleClearEdit(evnt);}}}}dispatchEvent('cell-click',params,evnt);},/**
|
|
11044
11161
|
* 列双击点击事件
|
|
11045
11162
|
* 如果是双击模式,则激活为编辑状态
|
|
11046
|
-
*/triggerCellDblclickEvent(evnt,params){const{editConfig}=props;const{editStore,isDragResize}=reactData;if(isDragResize){return;}const editOpts=computeEditOpts.value;const{actived}=editStore;const cell=evnt.currentTarget;params=Object.assign({cell},params);if(isEnableConf(editConfig)&&editOpts.trigger==='dblclick'){if(!actived.args||evnt.currentTarget!==actived.args.cell){if(editOpts.mode==='row'){checkValidate('blur').catch(e=>e).then(()=>{$xeTable.handleEdit(params,evnt).then(()=>checkValidate('change')).catch(e=>e);});}else if(editOpts.mode==='cell'){$xeTable.handleEdit(params,evnt).then(()=>checkValidate('change')).catch(e=>e);}}}dispatchEvent('cell-dblclick',params,evnt);},handleToggleCheckRowEvent(evnt,params){const{selectCheckboxMaps}=
|
|
11163
|
+
*/triggerCellDblclickEvent(evnt,params){const{editConfig}=props;const{editStore,isDragResize}=reactData;if(isDragResize){return;}const editOpts=computeEditOpts.value;const{actived}=editStore;const cell=evnt.currentTarget;params=Object.assign({cell},params);if(isEnableConf(editConfig)&&editOpts.trigger==='dblclick'){if(!actived.args||evnt.currentTarget!==actived.args.cell){if(editOpts.mode==='row'){checkValidate('blur').catch(e=>e).then(()=>{$xeTable.handleEdit(params,evnt).then(()=>checkValidate('change')).catch(e=>e);});}else if(editOpts.mode==='cell'){$xeTable.handleEdit(params,evnt).then(()=>checkValidate('change')).catch(e=>e);}}}dispatchEvent('cell-dblclick',params,evnt);},handleToggleCheckRowEvent(evnt,params){const{selectCheckboxMaps}=internalData;const checkboxOpts=computeCheckboxOpts.value;const{checkField,trigger}=checkboxOpts;const{row}=params;if(trigger==='manual'){return;}let checked=false;if(checkField){checked=!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,checkField);}else{checked=!selectCheckboxMaps[getRowid($xeTable,row)];}if(evnt){$xeTable.triggerCheckRowEvent(evnt,params,checked);}else{$xeTable.handleBatchSelectRows([row],checked);$xeTable.checkSelectionStatus();}},triggerCheckRowEvent(evnt,params,checked){const{row}=params;const{afterFullData}=internalData;const checkboxOpts=computeCheckboxOpts.value;const{checkMethod,trigger}=checkboxOpts;if(trigger==='manual'){return;}evnt.stopPropagation();if(checkboxOpts.isShiftKey&&evnt.shiftKey&&!props.treeConfig){const checkboxRecords=$xeTable.getCheckboxRecords();if(checkboxRecords.length){const firstRow=checkboxRecords[0];const _rowIndex=$xeTable.getVTRowIndex(row);const _firstRowIndex=$xeTable.getVTRowIndex(firstRow);if(_rowIndex!==_firstRowIndex){$xeTable.setAllCheckboxRow(false);const rangeRows=_rowIndex<_firstRowIndex?afterFullData.slice(_rowIndex,_firstRowIndex+1):afterFullData.slice(_firstRowIndex,_rowIndex+1);(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(()=>{handleCheckedCheckboxRow(rangeRows,true,false);});dispatchEvent('checkbox-range-select',Object.assign({rangeRecords:rangeRows},params),evnt);return;}}}if(!checkMethod||checkMethod({row})){$xeTable.handleBatchSelectRows([row],checked);$xeTable.checkSelectionStatus();dispatchEvent('checkbox-change',Object.assign({records:()=>$xeTable.getCheckboxRecords(),reserves:()=>$xeTable.getCheckboxReserveRecords(),indeterminates:()=>$xeTable.getCheckboxIndeterminateRecords(),checked},params),evnt);}},/**
|
|
11047
11164
|
* 多选,选中所有事件
|
|
11048
11165
|
*/triggerCheckAllEvent(evnt,value){const checkboxOpts=computeCheckboxOpts.value;const{trigger}=checkboxOpts;if(trigger==='manual'){return;}if(evnt){evnt.stopPropagation();}handleCheckAllEvent(evnt,value);},/**
|
|
11049
11166
|
* 单选,行选中事件
|
|
11050
11167
|
*/triggerRadioRowEvent(evnt,params){const{selectRadioRow:oldValue}=reactData;const{row}=params;const radioOpts=computeRadioOpts.value;const{trigger}=radioOpts;if(trigger==='manual'){return;}evnt.stopPropagation();let newValue=row;let isChange=oldValue!==newValue;if(isChange){handleCheckedRadioRow(newValue);}else if(!radioOpts.strict){isChange=oldValue===newValue;if(isChange){newValue=null;tableMethods.clearRadioRow();}}if(isChange){dispatchEvent('radio-change',{oldValue,newValue,...params},evnt);}},triggerCurrentColumnEvent(evnt,params){const columnOpts=computeColumnOpts.value;const{currentMethod}=columnOpts;const{column}=params;if(!currentMethod||currentMethod({column})){tableMethods.setCurrentColumn(column);}},triggerCurrentRowEvent(evnt,params){const{currentRow:oldValue}=reactData;const rowOpts=computeRowOpts.value;const{currentMethod}=rowOpts;const{row:newValue}=params;const isChange=oldValue!==newValue;if(!currentMethod||currentMethod({row:newValue})){tableMethods.setCurrentRow(newValue);if(isChange){dispatchEvent('current-change',{oldValue,newValue,...params},evnt);}}},/**
|
|
11051
11168
|
* 展开行事件
|
|
11052
|
-
*/triggerRowExpandEvent(evnt,params){const{
|
|
11169
|
+
*/triggerRowExpandEvent(evnt,params){const{expandColumn:column}=reactData;const{rowExpandLazyLoadedMaps}=internalData;const expandOpts=computeExpandOpts.value;const{row}=params;const{lazy,trigger}=expandOpts;if(trigger==='manual'){return;}evnt.stopPropagation();const rowid=getRowid($xeTable,row);if(!lazy||!rowExpandLazyLoadedMaps[rowid]){const expanded=!$xeTable.isRowExpandByRow(row);const columnIndex=$xeTable.getColumnIndex(column);const $columnIndex=$xeTable.getVMColumnIndex(column);$xeTable.setRowExpand(row,expanded);dispatchEvent('toggle-row-expand',{expanded,column,columnIndex,$columnIndex,row,rowIndex:$xeTable.getRowIndex(row),$rowIndex:$xeTable.getVMRowIndex(row)},evnt);}},/**
|
|
11053
11170
|
* 展开树节点事件
|
|
11054
|
-
*/triggerTreeExpandEvent(evnt,params){const{treeExpandLazyLoadedMaps}=
|
|
11171
|
+
*/triggerTreeExpandEvent(evnt,params){const{treeExpandLazyLoadedMaps}=internalData;const treeOpts=computeTreeOpts.value;const{row,column}=params;const{lazy,trigger}=treeOpts;if(trigger==='manual'){return;}evnt.stopPropagation();const rowid=getRowid($xeTable,row);if(!lazy||!treeExpandLazyLoadedMaps[rowid]){const expanded=!$xeTable.isTreeExpandByRow(row);const columnIndex=$xeTable.getColumnIndex(column);const $columnIndex=$xeTable.getVMColumnIndex(column);$xeTable.setTreeExpand(row,expanded);dispatchEvent('toggle-tree-expand',{expanded,column,columnIndex,$columnIndex,row},evnt);}},handleColumnSortEvent(evnt,column){const{mouseConfig}=props;const mouseOpts=computeMouseOpts.value;const{field,sortable}=column;if(sortable){const params={$table:$xeTable,$event:evnt,column,field,property:field,order:column.order,sortList:tableMethods.getSortColumns(),sortTime:column.sortTime};if(mouseConfig&&mouseOpts.area&&$xeTable.handleSortEvent){$xeTable.handleSortEvent(evnt,params);}dispatchEvent('sort-change',params,evnt);}},/**
|
|
11055
11172
|
* 点击排序事件
|
|
11056
11173
|
*/triggerSortEvent(evnt,column,order){const sortOpts=computeSortOpts.value;const{multiple,allowClear}=sortOpts;const{field,sortable}=column;if(sortable){if(!order||column.order===order){if(allowClear){tableMethods.clearSort(multiple?column:null);}}else{tableMethods.sort({field,order});}$xeTable.handleColumnSortEvent(evnt,column);}},handleCellRuleUpdateStatus(type,cellParams,cellValue){const{validStore}=reactData;const{row,column}=cellParams;if($xeTable.hasCellRules){if($xeTable.hasCellRules(type,row,column)){const cell=$xeTable.getCellElement(row,column);if(cell){const customVal=!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isUndefined(cellValue);return $xeTable.validCellRules(type,row,column,cellValue).then(()=>{if(customVal&&validStore.visible){setCellValue(row,column,cellValue);}$xeTable.clearValidate(row,column);}).catch(({rule})=>{if(customVal){setCellValue(row,column,cellValue);}$xeTable.showValidTooltip({rule,row,column,cell});});}}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
11057
11174
|
* 表头单元格按下事件
|
|
@@ -11059,7 +11176,7 @@ if(isEnableConf(editConfig)&&editOpts.trigger==='dblclick'){if(actived.row&&acti
|
|
|
11059
11176
|
* 单元格按下事件
|
|
11060
11177
|
*/triggerCellMousedownEvent(evnt,params){const{column}=params;const{type,treeNode}=column;const isRadioType=type==='radio';const isCheckboxType=type==='checkbox';const isExpandType=type==='expand';const rowOpts=computeRowOpts.value;const rowDragOpts=computeRowDragOpts.value;const{trigger,isCrossDrag,isPeerDrag,disabledMethod}=rowDragOpts;const cell=evnt.currentTarget;params.cell=cell;const triggerInput=cell&&cell.tagName&&cell.tagName.toLowerCase()==='input';const triggerRadio=isRadioType&&getEventTargetNode(evnt,cell,'vxe-cell--radio').flag;const triggerCheckbox=isCheckboxType&&getEventTargetNode(evnt,cell,'vxe-cell--checkbox').flag;const triggerTreeNode=treeNode&&getEventTargetNode(evnt,cell,'vxe-tree--btn-wrapper').flag;const triggerExpandNode=isExpandType&&getEventTargetNode(evnt,cell,'vxe-table--expanded').flag;let isColDragCell=false;if(rowOpts.drag){isColDragCell=trigger==='row'||column.dragSort&&trigger==='cell';}let triggerDrag=false;if(!(triggerInput||triggerRadio||triggerCheckbox||triggerTreeNode||triggerExpandNode)){if(isColDragCell&&(isCrossDrag||isPeerDrag||!params.level)&&!(disabledMethod&&disabledMethod(params))){triggerDrag=true;$xeTable.handleCellDragMousedownEvent(evnt,params);}}if(!triggerDrag&&$xeTable.handleCellMousedownEvent){$xeTable.handleCellMousedownEvent(evnt,params);}$xeTable.focus();$xeTable.closeFilter();if($xeTable.closeMenu){$xeTable.closeMenu();}},triggerCellMouseupEvent(){clearDragStatus();},/**
|
|
11061
11178
|
* 行拖拽
|
|
11062
|
-
*/handleRowDragDragstartEvent(evnt){if(evnt.dataTransfer){evnt.dataTransfer.setDragImage(getTpImg(),0,0);}},handleRowDragSwapEvent(evnt,isSyncRow,dragRow,prevDragRow,prevDragPos,prevDragToChild){const{treeConfig,dragConfig}=props;const rowDragOpts=computeRowDragOpts.value;const{fullAllDataRowIdData}=internalData;const{isPeerDrag,isCrossDrag,isSelfToChildDrag,dragEndMethod,dragToChildMethod}=rowDragOpts;const treeOpts=computeTreeOpts.value;const{transform,rowField,mapChildrenField,parentField}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const
|
|
11179
|
+
*/handleRowDragDragstartEvent(evnt){if(evnt.dataTransfer){evnt.dataTransfer.setDragImage(getTpImg(),0,0);}},handleRowDragSwapEvent(evnt,isSyncRow,dragRow,prevDragRow,prevDragPos,prevDragToChild){const{treeConfig,dragConfig}=props;const rowDragOpts=computeRowDragOpts.value;const{afterFullData,tableFullData,fullAllDataRowIdData}=internalData;const{isPeerDrag,isCrossDrag,isSelfToChildDrag,dragEndMethod,dragToChildMethod}=rowDragOpts;const treeOpts=computeTreeOpts.value;const{transform,rowField,mapChildrenField,parentField}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const dEndMethod=dragEndMethod||(dragConfig?dragConfig.dragEndMethod:null);const dragOffsetIndex=prevDragPos==='bottom'?1:0;const errRest={status:false};if(prevDragRow&&dragRow){// 判断是否有拖动
|
|
11063
11180
|
if(prevDragRow!==dragRow){const dragParams={oldRow:dragRow,newRow:prevDragRow,dragRow,dragPos:prevDragPos,dragToChild:!!prevDragToChild,offsetIndex:dragOffsetIndex};const isDragToChildFlag=isSelfToChildDrag&&dragToChildMethod?dragToChildMethod(dragParams):prevDragToChild;return Promise.resolve(dEndMethod?dEndMethod(dragParams):true).then(status=>{if(!status){return errRest;}let oafIndex=-1;let nafIndex=-1;// 如果为树结构
|
|
11064
11181
|
if(treeConfig){if(transform){// 移出源位置
|
|
11065
11182
|
const oldRowid=getRowid($xeTable,dragRow);const oldRest=fullAllDataRowIdData[oldRowid];const newRowid=getRowid($xeTable,prevDragRow);const newRest=fullAllDataRowIdData[newRowid];if(oldRest&&newRest){const{level:oldLevel}=oldRest;const{level:newLevel}=newRest;const oldAllMaps={};external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree([dragRow],item=>{oldAllMaps[getRowid($xeTable,item)]=item;},{children:mapChildrenField});let isSelfToChildStatus=false;if(oldLevel&&newLevel){// 子到子
|
|
@@ -11088,7 +11205,7 @@ const el=refElem.value;if(!el){return;}const xHandleEl=refScrollXHandleElem.valu
|
|
|
11088
11205
|
* 横向 X 可视渲染事件处理
|
|
11089
11206
|
*/triggerScrollXEvent(){const sXOpts=computeSXOpts.value;if(sXOpts.immediate){loadScrollXData();}else{lazyScrollXData();}},/**
|
|
11090
11207
|
* 纵向 Y 可视渲染事件处理
|
|
11091
|
-
*/triggerScrollYEvent(){const sYOpts=computeSYOpts.value;if(sYOpts.immediate){loadScrollYData();}else{lazyScrollYData();}},triggerBodyScrollEvent(evnt,fixedType){const{scrollYLoad,scrollXLoad}=reactData;const{elemStore,intoRunScroll,lastScrollTop,lastScrollLeft,inWheelScroll,inVirtualScroll,inHeaderScroll,inBodyScroll,scrollRenderType,inFooterScroll}=internalData;if(inWheelScroll||inVirtualScroll||inHeaderScroll||inFooterScroll){return;}const xHandleEl=refScrollXHandleElem.value;const yHandleEl=refScrollYHandleElem.value;const leftScrollElem=getRefElem(elemStore['left-body-scroll']);const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const rightScrollElem=getRefElem(elemStore['right-body-scroll']);const headerScrollElem=getRefElem(elemStore['main-header-scroll']);const footerScrollElem=getRefElem(elemStore['main-footer-scroll']);const rowExpandEl=refRowExpandElem.value;if(intoRunScroll){return;}if(!bodyScrollElem){return;}if(!xHandleEl){return;}if(!yHandleEl){return;}if(inBodyScroll){if(scrollRenderType!==fixedType){return;}}let scrollTop=yHandleEl.scrollTop;let scrollLeft=xHandleEl.scrollLeft;if(leftScrollElem&&fixedType==='left'){scrollTop=leftScrollElem.scrollTop;}else if(rightScrollElem&&fixedType==='right'){scrollTop=rightScrollElem.scrollTop;}else{scrollTop=bodyScrollElem.scrollTop;scrollLeft=bodyScrollElem.scrollLeft;}const isRollX=scrollLeft!==lastScrollLeft;const isRollY=scrollTop!==lastScrollTop;internalData.inBodyScroll=true;internalData.scrollRenderType=fixedType;if(isRollY){if(fixedType==='left'){setScrollTop(bodyScrollElem,scrollTop);setScrollTop(rightScrollElem,scrollTop);}else if(fixedType==='right'){setScrollTop(bodyScrollElem,scrollTop);setScrollTop(leftScrollElem,scrollTop);}else{setScrollTop(leftScrollElem,scrollTop);setScrollTop(rightScrollElem,scrollTop);}setScrollTop(yHandleEl,scrollTop);setScrollTop(rowExpandEl,scrollTop);if(scrollYLoad){$xeTable.triggerScrollYEvent(evnt);}}if(isRollX){setScrollLeft(xHandleEl,scrollLeft);setScrollLeft(headerScrollElem,scrollLeft);setScrollLeft(footerScrollElem,scrollLeft);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'body',fixed:fixedType});},triggerHeaderScrollEvent(evnt,fixedType){const{scrollXLoad}=reactData;const{elemStore,intoRunScroll,inWheelScroll,inVirtualScroll,inBodyScroll,inFooterScroll}=internalData;if(inWheelScroll||inVirtualScroll||inBodyScroll||inFooterScroll){return;}const yHandleEl=refScrollYHandleElem.value;const xHandleEl=refScrollXHandleElem.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const headerScrollElem=getRefElem(elemStore['main-header-scroll']);const footerScrollElem=getRefElem(elemStore['main-footer-scroll']);if(intoRunScroll){return;}if(!headerScrollElem){return;}if(!xHandleEl){return;}if(!yHandleEl){return;}const scrollTop=yHandleEl.scrollTop;const scrollLeft=headerScrollElem.scrollLeft;const isRollX=true;const isRollY=false;internalData.inHeaderScroll=true;setScrollLeft(xHandleEl,scrollLeft);setScrollLeft(footerScrollElem,scrollLeft);setScrollLeft(bodyScrollElem,scrollLeft);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'header',fixed:fixedType});},triggerFooterScrollEvent(evnt,fixedType){const{scrollXLoad}=reactData;const{elemStore,intoRunScroll,inWheelScroll,inVirtualScroll,inHeaderScroll,inBodyScroll}=internalData;if(inWheelScroll||inVirtualScroll||inHeaderScroll||inBodyScroll){return;}const yHandleEl=refScrollYHandleElem.value;const xHandleEl=refScrollXHandleElem.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const headerScrollElem=getRefElem(elemStore['main-header-scroll']);const footerScrollElem=getRefElem(elemStore['main-footer-scroll']);if(intoRunScroll){return;}if(!footerScrollElem){return;}if(!xHandleEl){return;}if(!yHandleEl){return;}const scrollTop=yHandleEl.scrollTop;const scrollLeft=footerScrollElem.scrollLeft;const isRollX=true;const isRollY=false;internalData.inFooterScroll=true;setScrollLeft(xHandleEl,scrollLeft);setScrollLeft(headerScrollElem,scrollLeft);setScrollLeft(bodyScrollElem,scrollLeft);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'footer',fixed:fixedType});},triggerBodyWheelEvent(evnt){const{target,deltaY,deltaX,shiftKey}=evnt;if(target&&/^textarea$/i.test(target.tagName)){return;}const{highlightHoverRow}=src_props;const{scrollXLoad,scrollYLoad}=reactData;const leftFixedWidth=computeLeftFixedWidth.value;const rightFixedWidth=computeRightFixedWidth.value;if(!(
|
|
11208
|
+
*/triggerScrollYEvent(){const sYOpts=computeSYOpts.value;if(sYOpts.immediate){loadScrollYData();}else{lazyScrollYData();}},triggerBodyScrollEvent(evnt,fixedType){const{scrollYLoad,scrollXLoad}=reactData;const{elemStore,intoRunScroll,lastScrollTop,lastScrollLeft,inWheelScroll,inVirtualScroll,inHeaderScroll,inBodyScroll,scrollRenderType,inFooterScroll}=internalData;if(inWheelScroll||inVirtualScroll||inHeaderScroll||inFooterScroll){return;}const xHandleEl=refScrollXHandleElem.value;const yHandleEl=refScrollYHandleElem.value;const leftScrollElem=getRefElem(elemStore['left-body-scroll']);const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const rightScrollElem=getRefElem(elemStore['right-body-scroll']);const headerScrollElem=getRefElem(elemStore['main-header-scroll']);const footerScrollElem=getRefElem(elemStore['main-footer-scroll']);const rowExpandEl=refRowExpandElem.value;if(intoRunScroll){return;}if(!bodyScrollElem){return;}if(!xHandleEl){return;}if(!yHandleEl){return;}if(inBodyScroll){if(scrollRenderType!==fixedType){return;}}let scrollTop=yHandleEl.scrollTop;let scrollLeft=xHandleEl.scrollLeft;if(leftScrollElem&&fixedType==='left'){scrollTop=leftScrollElem.scrollTop;}else if(rightScrollElem&&fixedType==='right'){scrollTop=rightScrollElem.scrollTop;}else{scrollTop=bodyScrollElem.scrollTop;scrollLeft=bodyScrollElem.scrollLeft;}const isRollX=scrollLeft!==lastScrollLeft;const isRollY=scrollTop!==lastScrollTop;internalData.inBodyScroll=true;internalData.scrollRenderType=fixedType;if(isRollY){if(fixedType==='left'){setScrollTop(bodyScrollElem,scrollTop);setScrollTop(rightScrollElem,scrollTop);}else if(fixedType==='right'){setScrollTop(bodyScrollElem,scrollTop);setScrollTop(leftScrollElem,scrollTop);}else{setScrollTop(leftScrollElem,scrollTop);setScrollTop(rightScrollElem,scrollTop);}setScrollTop(yHandleEl,scrollTop);setScrollTop(rowExpandEl,scrollTop);if(scrollYLoad){$xeTable.triggerScrollYEvent(evnt);}}if(isRollX){setScrollLeft(xHandleEl,scrollLeft);setScrollLeft(headerScrollElem,scrollLeft);setScrollLeft(footerScrollElem,scrollLeft);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'body',fixed:fixedType});},triggerHeaderScrollEvent(evnt,fixedType){const{scrollXLoad}=reactData;const{elemStore,intoRunScroll,inWheelScroll,inVirtualScroll,inBodyScroll,inFooterScroll}=internalData;if(inWheelScroll||inVirtualScroll||inBodyScroll||inFooterScroll){return;}const yHandleEl=refScrollYHandleElem.value;const xHandleEl=refScrollXHandleElem.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const headerScrollElem=getRefElem(elemStore['main-header-scroll']);const footerScrollElem=getRefElem(elemStore['main-footer-scroll']);if(intoRunScroll){return;}if(!headerScrollElem){return;}if(!xHandleEl){return;}if(!yHandleEl){return;}const scrollTop=yHandleEl.scrollTop;const scrollLeft=headerScrollElem.scrollLeft;const isRollX=true;const isRollY=false;internalData.inHeaderScroll=true;setScrollLeft(xHandleEl,scrollLeft);setScrollLeft(footerScrollElem,scrollLeft);setScrollLeft(bodyScrollElem,scrollLeft);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'header',fixed:fixedType});},triggerFooterScrollEvent(evnt,fixedType){const{scrollXLoad}=reactData;const{elemStore,intoRunScroll,inWheelScroll,inVirtualScroll,inHeaderScroll,inBodyScroll}=internalData;if(inWheelScroll||inVirtualScroll||inHeaderScroll||inBodyScroll){return;}const yHandleEl=refScrollYHandleElem.value;const xHandleEl=refScrollXHandleElem.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const headerScrollElem=getRefElem(elemStore['main-header-scroll']);const footerScrollElem=getRefElem(elemStore['main-footer-scroll']);if(intoRunScroll){return;}if(!footerScrollElem){return;}if(!xHandleEl){return;}if(!yHandleEl){return;}const scrollTop=yHandleEl.scrollTop;const scrollLeft=footerScrollElem.scrollLeft;const isRollX=true;const isRollY=false;internalData.inFooterScroll=true;setScrollLeft(xHandleEl,scrollLeft);setScrollLeft(headerScrollElem,scrollLeft);setScrollLeft(bodyScrollElem,scrollLeft);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'footer',fixed:fixedType});},triggerBodyWheelEvent(evnt){const{target,deltaY,deltaX,shiftKey}=evnt;if(target&&/^textarea$/i.test(target.tagName)){return;}const{highlightHoverRow}=src_props;const{scrollXLoad,scrollYLoad,expandColumn}=reactData;const leftFixedWidth=computeLeftFixedWidth.value;const rightFixedWidth=computeRightFixedWidth.value;if(!(leftFixedWidth||rightFixedWidth||expandColumn)){return;}const{elemStore,lastScrollTop,lastScrollLeft}=internalData;const rowOpts=computeRowOpts.value;const xHandleEl=refScrollXHandleElem.value;const yHandleEl=refScrollYHandleElem.value;const leftScrollElem=getRefElem(elemStore['left-body-scroll']);const headerScrollElem=getRefElem(elemStore['main-header-scroll']);const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const footerScrollElem=getRefElem(elemStore['main-footer-scroll']);const rightScrollElem=getRefElem(elemStore['right-body-scroll']);const rowExpandEl=refRowExpandElem.value;if(!xHandleEl){return;}if(!yHandleEl){return;}if(!bodyScrollElem){return;}const wheelSpeed=getWheelSpeed(reactData.lastScrollTime);const deltaTop=Math.ceil((shiftKey?deltaX:deltaY)*wheelSpeed);const deltaLeft=Math.ceil((shiftKey?deltaY:deltaX)*wheelSpeed);const isTopWheel=deltaTop<0;const currScrollTop=bodyScrollElem.scrollTop;// 如果滚动位置已经是顶部或底部,则不需要触发
|
|
11092
11209
|
if(isTopWheel?currScrollTop<=0:currScrollTop>=bodyScrollElem.scrollHeight-bodyScrollElem.clientHeight){return;}const scrollTop=currScrollTop+deltaTop;const scrollLeft=bodyScrollElem.scrollLeft+deltaLeft;const isRollX=scrollLeft!==lastScrollLeft;const isRollY=scrollTop!==lastScrollTop;if(rowOpts.isHover||highlightHoverRow){$xeTable.clearHoverRow();}// 用于鼠标纵向滚轮处理
|
|
11093
11210
|
if(isRollX){evnt.preventDefault();internalData.inWheelScroll=true;wheelScrollLeftTo(scrollLeft,offsetLeft=>{const currLeftNum=offsetLeft;setScrollLeft(xHandleEl,currLeftNum);setScrollLeft(bodyScrollElem,currLeftNum);setScrollLeft(headerScrollElem,currLeftNum);setScrollLeft(footerScrollElem,currLeftNum);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,bodyScrollElem.scrollTop,currLeftNum,{type:'table',fixed:''});});}if(isRollY){evnt.preventDefault();wheelScrollTopTo(scrollTop-currScrollTop,offsetTop=>{const currTopNum=bodyScrollElem.scrollTop+offsetTop;internalData.inWheelScroll=true;setScrollTop(yHandleEl,currTopNum);setScrollTop(bodyScrollElem,currTopNum);setScrollTop(leftScrollElem,currTopNum);setScrollTop(rightScrollElem,currTopNum);setScrollTop(rowExpandEl,currTopNum);if(scrollYLoad){$xeTable.triggerScrollYEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,currTopNum,bodyScrollElem.scrollLeft,{type:'table',fixed:''});});}},triggerVirtualScrollXEvent(evnt){const{scrollXLoad}=reactData;const{elemStore,inWheelScroll,lastScrollTop,inHeaderScroll,inBodyScroll,inFooterScroll}=internalData;if(inHeaderScroll||inBodyScroll||inFooterScroll){return;}if(inWheelScroll){return;}const headerScrollElem=getRefElem(elemStore['main-header-scroll']);const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const footerScrollElem=getRefElem(elemStore['main-footer-scroll']);const yHandleEl=refScrollYHandleElem.value;const wrapperEl=evnt.currentTarget;const{scrollLeft}=wrapperEl;const yBodyEl=yHandleEl||bodyScrollElem;let scrollTop=0;if(yBodyEl){scrollTop=yBodyEl.scrollTop;}const isRollX=true;const isRollY=scrollTop!==lastScrollTop;internalData.inVirtualScroll=true;setScrollLeft(bodyScrollElem,scrollLeft);setScrollLeft(headerScrollElem,scrollLeft);setScrollLeft(footerScrollElem,scrollLeft);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'table',fixed:''});},triggerVirtualScrollYEvent(evnt){const{scrollYLoad}=reactData;const{elemStore,inWheelScroll,lastScrollLeft,inHeaderScroll,inBodyScroll,inFooterScroll}=internalData;if(inHeaderScroll||inBodyScroll||inFooterScroll){return;}if(inWheelScroll){return;}const leftScrollElem=getRefElem(elemStore['left-body-scroll']);const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const rightScrollElem=getRefElem(elemStore['right-body-scroll']);const rowExpandEl=refRowExpandElem.value;const xHandleEl=refScrollXHandleElem.value;const wrapperEl=evnt.currentTarget;const{scrollTop}=wrapperEl;const xBodyEl=xHandleEl||bodyScrollElem;let scrollLeft=0;if(xBodyEl){scrollLeft=xBodyEl.scrollLeft;}const isRollX=scrollLeft!==lastScrollLeft;const isRollY=true;internalData.inVirtualScroll=true;setScrollTop(bodyScrollElem,scrollTop);setScrollTop(leftScrollElem,scrollTop);setScrollTop(rightScrollElem,scrollTop);setScrollTop(rowExpandEl,scrollTop);if(scrollYLoad){$xeTable.triggerScrollYEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'table',fixed:''});},/**
|
|
11094
11211
|
* 对于树形结构中,可以直接滚动到指定深层节点中
|
|
@@ -11098,7 +11215,7 @@ if(isRollX){evnt.preventDefault();internalData.inWheelScroll=true;wheelScrollLef
|
|
|
11098
11215
|
updateScrollXSpace(){const{isGroup,scrollXLoad,overflowX,scrollXWidth}=reactData;const{visibleColumn,scrollXStore,elemStore,fullColumnIdData}=internalData;const tableBody=refTableBody.value;const tableBodyElem=tableBody?tableBody.$el:null;if(tableBodyElem){const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const bodyTableElem=getRefElem(elemStore['main-body-table']);const headerTableElem=getRefElem(elemStore['main-header-table']);const footerTableElem=getRefElem(elemStore['main-footer-table']);let xSpaceLeft=0;const firstColumn=visibleColumn[scrollXStore.startIndex];if(firstColumn){const colRest=fullColumnIdData[firstColumn.id]||{};xSpaceLeft=colRest.oLeft;}let clientWidth=0;if(bodyScrollElem){clientWidth=bodyScrollElem.clientWidth;}// 虚拟渲染
|
|
11099
11216
|
let isScrollXBig=false;let ySpaceWidth=scrollXWidth;if(scrollXWidth>maxXWidth){// 触右
|
|
11100
11217
|
if(bodyScrollElem&&bodyTableElem&&bodyScrollElem.scrollLeft+clientWidth>=maxXWidth){xSpaceLeft=maxXWidth-bodyTableElem.clientWidth;}else{xSpaceLeft=(maxXWidth-clientWidth)*(xSpaceLeft/(scrollXWidth-clientWidth));}ySpaceWidth=maxXWidth;isScrollXBig=true;}let marginLeft='';if(scrollXLoad&&overflowX){marginLeft=`${xSpaceLeft}px`;}if(headerTableElem){headerTableElem.style.marginLeft=isGroup?'':marginLeft;}if(bodyTableElem){bodyTableElem.style.marginLeft=marginLeft;}if(footerTableElem){footerTableElem.style.marginLeft=marginLeft;}reactData.isScrollXBig=isScrollXBig;const containerList=['main'];containerList.forEach(name=>{const layoutList=['header','body','footer'];layoutList.forEach(layout=>{const xSpaceElem=getRefElem(elemStore[`${name}-${layout}-xSpace`]);if(xSpaceElem){xSpaceElem.style.width=scrollXLoad?`${ySpaceWidth}px`:'';}});});const scrollXSpaceEl=refScrollXSpaceElem.value;if(scrollXSpaceEl){scrollXSpaceEl.style.width=`${ySpaceWidth}px`;}(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(()=>{updateStyle();});}},// 更新纵向 Y 可视渲染上下剩余空间大小
|
|
11101
|
-
updateScrollYSpace(){const{isAllOverflow,scrollYLoad,expandColumn
|
|
11218
|
+
updateScrollYSpace(){const{isAllOverflow,scrollYLoad,expandColumn}=reactData;const{scrollYStore,elemStore,isResizeCellHeight,afterFullData,fullAllDataRowIdData,rowExpandedMaps}=internalData;const{startIndex}=scrollYStore;const expandOpts=computeExpandOpts.value;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const bodyTableElem=getRefElem(elemStore['main-body-table']);const containerList=['main','left','right'];let ySpaceTop=0;let scrollYHeight=0;let isScrollYBig=false;if(scrollYLoad){const isCustomCellHeight=isResizeCellHeight||cellOpts.height||rowOpts.height;if(!isCustomCellHeight&&!expandColumn&&isAllOverflow){scrollYHeight=afterFullData.length*defaultRowHeight;if(scrollYHeight>maxYHeight){isScrollYBig=true;}ySpaceTop=Math.max(0,startIndex*defaultRowHeight);}else{const firstRow=afterFullData[startIndex];let rowid=getRowid($xeTable,firstRow);let rowRest=fullAllDataRowIdData[rowid]||{};ySpaceTop=rowRest.oTop;const lastRow=afterFullData[afterFullData.length-1];rowid=getRowid($xeTable,lastRow);rowRest=fullAllDataRowIdData[rowid]||{};scrollYHeight=rowRest.oTop+(rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight);// 是否展开行
|
|
11102
11219
|
if(expandColumn&&rowExpandedMaps[rowid]){scrollYHeight+=rowRest.expandHeight||expandOpts.height||0;}if(scrollYHeight>maxYHeight){isScrollYBig=true;}}}else{if(bodyTableElem){scrollYHeight=bodyTableElem.clientHeight;}}let clientHeight=0;if(bodyScrollElem){clientHeight=bodyScrollElem.clientHeight;}// 虚拟渲染
|
|
11103
11220
|
let ySpaceHeight=scrollYHeight;let scrollYTop=ySpaceTop;if(isScrollYBig){// 触底
|
|
11104
11221
|
if(bodyScrollElem&&bodyTableElem&&bodyScrollElem.scrollTop+clientHeight>=maxYHeight){scrollYTop=maxYHeight-bodyTableElem.clientHeight;}else{scrollYTop=(maxYHeight-clientHeight)*(ySpaceTop/(scrollYHeight-clientHeight));}ySpaceHeight=maxYHeight;}containerList.forEach(name=>{const layoutList=['header','body','footer'];const tableElem=getRefElem(elemStore[`${name}-body-table`]);if(tableElem){tableElem.style.marginTop=scrollYTop?`${scrollYTop}px`:'';}layoutList.forEach(layout=>{const ySpaceElem=getRefElem(elemStore[`${name}-${layout}-ySpace`]);if(ySpaceElem){ySpaceElem.style.height=ySpaceHeight?`${ySpaceHeight}px`:'';}});});const scrollYSpaceEl=refScrollYSpaceElem.value;if(scrollYSpaceEl){scrollYSpaceEl.style.height=ySpaceHeight?`${ySpaceHeight}px`:'';}const rowExpandYSpaceEl=refRowExpandYSpaceElem.value;if(rowExpandYSpaceEl){rowExpandYSpaceEl.style.height=ySpaceHeight?`${ySpaceHeight}px`:'';}reactData.scrollYTop=scrollYTop;reactData.scrollYHeight=scrollYHeight;reactData.isScrollYBig=isScrollYBig;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{updateStyle();});},updateScrollXData(){const{isAllOverflow}=reactData;handleTableColumn();$xeTable.updateScrollYSpace();return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{handleTableColumn();$xeTable.updateScrollXSpace();if(!isAllOverflow){$xeTable.updateScrollYSpace();}});},updateScrollYData(){$xeTable.handleTableData();$xeTable.updateScrollYSpace();return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{$xeTable.handleTableData();$xeTable.updateScrollYSpace();});},/**
|
|
@@ -11114,7 +11231,7 @@ if(bodyScrollElem&&bodyTableElem&&bodyScrollElem.scrollTop+clientHeight>=maxYHei
|
|
|
11114
11231
|
* 分别渲染左边固定列和右边固定列
|
|
11115
11232
|
* 如果宽度足够情况下,则不需要渲染固定列
|
|
11116
11233
|
* @param {String} fixedType 固定列类型
|
|
11117
|
-
*/const renderFixed=fixedType=>{const{showHeader,showFooter}=props;const{tableData,tableColumn,tableGroupColumn,columnStore,footerTableData}=reactData;const isFixedLeft=fixedType==='left';const fixedColumn=isFixedLeft?columnStore.leftList:columnStore.rightList;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:isFixedLeft?refLeftContainer:refRightContainer,class:`vxe-table--fixed-${fixedType}-wrapper`},[showHeader?(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(header,{ref:isFixedLeft?refTableLeftHeader:refTableRightHeader,fixedType,tableData,tableColumn,tableGroupColumn,fixedColumn}):table_renderEmptyElement($xeTable),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(body,{ref:isFixedLeft?refTableLeftBody:refTableRightBody,fixedType,tableData,tableColumn,fixedColumn}),showFooter?(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(footer,{ref:isFixedLeft?refTableLeftFooter:refTableRightFooter,footerTableData,tableColumn,fixedColumn,fixedType}):table_renderEmptyElement($xeTable)]);};const renderEmptyBody=()=>{const emptyOpts=computeEmptyOpts.value;const params={$table:$xeTable};if(slots.empty){return slots.empty(params);}else{const compConf=emptyOpts.name?table_renderer.get(emptyOpts.name):null;const rtEmptyView=compConf?compConf.renderTableEmpty||compConf.renderTableEmptyView||compConf.renderEmpty:null;if(rtEmptyView){return getSlotVNs(rtEmptyView(emptyOpts,params));}}return getFuncText(props.emptyText)||table_getI18n('vxe.table.emptyText');};const renderDragTipContents=()=>{const{dragConfig}=props;const{dragRow,dragCol,dragTipText}=reactData;const columnDragOpts=computeColumnDragOpts.value;const rowDragOpts=computeRowDragOpts.value;const rowDragSlots=rowDragOpts.slots||{};const rTipSlot=rowDragSlots.tip||(dragConfig&&dragConfig.slots?dragConfig.slots.rowTip:null);const columnDragSlots=columnDragOpts.slots||{};const cTipSlot=columnDragSlots.tip;if(dragRow&&rTipSlot){return callSlot(rTipSlot,{row:dragRow});}if(dragCol&&cTipSlot){return callSlot(cTipSlot,{column:dragCol});}return[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span',dragTipText)];};const renderDragTip=()=>{const{dragRow,dragCol}=reactData;const rowOpts=computeRowOpts.value;const columnOpts=computeColumnOpts.value;const rowDragOpts=computeRowDragOpts.value;const columnDragOpts=computeColumnDragOpts.value;if(rowOpts.drag||columnOpts.drag){return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table--drag-wrapper'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refDragRowLineElem,class:['vxe-table--drag-row-line',{'is--guides':rowDragOpts.showGuidesStatus}]}),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refDragColLineElem,class:['vxe-table--drag-col-line',{'is--guides':columnDragOpts.showGuidesStatus}]}),dragRow&&rowDragOpts.showDragTip||dragCol&&columnDragOpts.showDragTip?(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refDragTipElem,class:'vxe-table--drag-sort-tip'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table--drag-sort-tip-wrapper'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table--drag-sort-tip-status'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span',{class:['vxe-table--drag-sort-tip-normal-status',dragRow?table_getIcon().TABLE_DRAG_STATUS_ROW:table_getIcon().TABLE_DRAG_STATUS_COLUMN]}),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span',{class:['vxe-table--drag-sort-tip-sub-status',table_getIcon().TABLE_DRAG_STATUS_SUB_ROW]}),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span',{class:['vxe-table--drag-sort-tip-disabled-status',table_getIcon().TABLE_DRAG_DISABLED]})]),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table--drag-sort-tip-content'},renderDragTipContents())])]):table_renderEmptyElement($xeTable)]);}return table_renderEmptyElement($xeTable);};const renderRowExpandedVNs=()=>{const{treeConfig}=props;const{expandColumn}=reactData;const tableRowExpandedList=computeTableRowExpandedList.value;const expandOpts=computeExpandOpts.value;const{mode}=expandOpts;if(mode!=='fixed'){return table_renderEmptyElement($xeTable);}const expandVNs=[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{key:'repY',ref:refRowExpandYSpaceElem})];if(expandColumn){tableRowExpandedList.forEach(row=>{const expandOpts=computeExpandOpts.value;const{height:expandHeight,padding}=expandOpts;const{fullAllDataRowIdData}=internalData;const treeOpts=computeTreeOpts.value;const{transform,seqMode}=treeOpts;const cellStyle={};const rowid=
|
|
11234
|
+
*/const renderFixed=fixedType=>{const{showHeader,showFooter}=props;const{tableData,tableColumn,tableGroupColumn,columnStore,footerTableData}=reactData;const isFixedLeft=fixedType==='left';const fixedColumn=isFixedLeft?columnStore.leftList:columnStore.rightList;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:isFixedLeft?refLeftContainer:refRightContainer,class:`vxe-table--fixed-${fixedType}-wrapper`},[showHeader?(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(header,{ref:isFixedLeft?refTableLeftHeader:refTableRightHeader,fixedType,tableData,tableColumn,tableGroupColumn,fixedColumn}):table_renderEmptyElement($xeTable),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(body,{ref:isFixedLeft?refTableLeftBody:refTableRightBody,fixedType,tableData,tableColumn,fixedColumn}),showFooter?(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(footer,{ref:isFixedLeft?refTableLeftFooter:refTableRightFooter,footerTableData,tableColumn,fixedColumn,fixedType}):table_renderEmptyElement($xeTable)]);};const renderEmptyBody=()=>{const emptyOpts=computeEmptyOpts.value;const params={$table:$xeTable};if(slots.empty){return slots.empty(params);}else{const compConf=emptyOpts.name?table_renderer.get(emptyOpts.name):null;const rtEmptyView=compConf?compConf.renderTableEmpty||compConf.renderTableEmptyView||compConf.renderEmpty:null;if(rtEmptyView){return getSlotVNs(rtEmptyView(emptyOpts,params));}}return getFuncText(props.emptyText)||table_getI18n('vxe.table.emptyText');};const renderDragTipContents=()=>{const{dragConfig}=props;const{dragRow,dragCol,dragTipText}=reactData;const columnDragOpts=computeColumnDragOpts.value;const rowDragOpts=computeRowDragOpts.value;const rowDragSlots=rowDragOpts.slots||{};const rTipSlot=rowDragSlots.tip||(dragConfig&&dragConfig.slots?dragConfig.slots.rowTip:null);const columnDragSlots=columnDragOpts.slots||{};const cTipSlot=columnDragSlots.tip;if(dragRow&&rTipSlot){return callSlot(rTipSlot,{row:dragRow});}if(dragCol&&cTipSlot){return callSlot(cTipSlot,{column:dragCol});}return[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span',dragTipText)];};const renderDragTip=()=>{const{dragRow,dragCol}=reactData;const rowOpts=computeRowOpts.value;const columnOpts=computeColumnOpts.value;const rowDragOpts=computeRowDragOpts.value;const columnDragOpts=computeColumnDragOpts.value;if(rowOpts.drag||columnOpts.drag){return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table--drag-wrapper'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refDragRowLineElem,class:['vxe-table--drag-row-line',{'is--guides':rowDragOpts.showGuidesStatus}]}),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refDragColLineElem,class:['vxe-table--drag-col-line',{'is--guides':columnDragOpts.showGuidesStatus}]}),dragRow&&rowDragOpts.showDragTip||dragCol&&columnDragOpts.showDragTip?(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refDragTipElem,class:'vxe-table--drag-sort-tip'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table--drag-sort-tip-wrapper'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table--drag-sort-tip-status'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span',{class:['vxe-table--drag-sort-tip-normal-status',dragRow?table_getIcon().TABLE_DRAG_STATUS_ROW:table_getIcon().TABLE_DRAG_STATUS_COLUMN]}),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span',{class:['vxe-table--drag-sort-tip-sub-status',table_getIcon().TABLE_DRAG_STATUS_SUB_ROW]}),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span',{class:['vxe-table--drag-sort-tip-disabled-status',table_getIcon().TABLE_DRAG_DISABLED]})]),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table--drag-sort-tip-content'},renderDragTipContents())])]):table_renderEmptyElement($xeTable)]);}return table_renderEmptyElement($xeTable);};const renderRowExpandedVNs=()=>{const{treeConfig}=props;const{expandColumn}=reactData;const tableRowExpandedList=computeTableRowExpandedList.value;const expandOpts=computeExpandOpts.value;const{mode}=expandOpts;if(mode!=='fixed'){return table_renderEmptyElement($xeTable);}const expandVNs=[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{key:'repY',ref:refRowExpandYSpaceElem})];if(expandColumn){const{handleGetRowId}=createHandleGetRowId($xeTable);tableRowExpandedList.forEach(row=>{const expandOpts=computeExpandOpts.value;const{height:expandHeight,padding}=expandOpts;const{fullAllDataRowIdData}=internalData;const treeOpts=computeTreeOpts.value;const{transform,seqMode}=treeOpts;const cellStyle={};const rowid=handleGetRowId(row);const rest=fullAllDataRowIdData[rowid];let rowLevel=0;let seq=-1;let _rowIndex=0;const rowIndex=$xeTable.getRowIndex(row);const $rowIndex=$xeTable.getVMRowIndex(row);if(rest){rowLevel=rest.level;if(treeConfig&&transform&&seqMode==='increasing'){seq=rest._index+1;}else{seq=rest.seq;}_rowIndex=rest._index;}if(expandHeight){cellStyle.height=`${expandHeight}px`;}if(treeConfig){cellStyle.paddingLeft=`${rowLevel*treeOpts.indent+30}px`;}const expandParams={$table:$xeTable,seq,column:expandColumn,fixed:'',type:'body',level:rowLevel,row,rowIndex,$rowIndex,_rowIndex};expandVNs.push((0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{key:rowid,class:['vxe-body--row-expanded-cell',{'is--padding':padding,'is--ellipsis':expandHeight}],rowid,style:cellStyle},expandColumn.renderData(expandParams)));});}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refRowExpandElem,class:'vxe-table--row-expanded-wrapper'},expandVNs);};const renderScrollX=()=>{return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{key:'vsx',ref:refScrollXVirtualElem,class:'vxe-table--scroll-x-virtual'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refScrollXLeftCornerElem,class:'vxe-table--scroll-x-left-corner'}),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refScrollXWrapperElem,class:'vxe-table--scroll-x-wrapper'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refScrollXHandleElem,class:'vxe-table--scroll-x-handle',onScroll:$xeTable.triggerVirtualScrollXEvent},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refScrollXSpaceElem,class:'vxe-table--scroll-x-space'})])]),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refScrollXRightCornerElem,class:'vxe-table--scroll-x-right-corner'})]);};const renderScrollY=()=>{return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refScrollYVirtualElem,class:'vxe-table--scroll-y-virtual'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refScrollYTopCornerElem,class:'vxe-table--scroll-y-top-corner'}),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refScrollYWrapperElem,class:'vxe-table--scroll-y-wrapper'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refScrollYHandleElem,class:'vxe-table--scroll-y-handle',onScroll:$xeTable.triggerVirtualScrollYEvent},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refScrollYSpaceElem,class:'vxe-table--scroll-y-space'})])]),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refScrollYBottomCornerElem,class:'vxe-table--scroll-y-bottom-corner'})]);};const renderViewport=()=>{const{showHeader,showFooter}=props;const{overflowX,tableData,tableColumn,tableGroupColumn,footerTableData,columnStore}=reactData;const{leftList,rightList}=columnStore;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refTableViewportElem,class:'vxe-table--viewport-wrapper'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table--main-wrapper'},[/**
|
|
11118
11235
|
* 表头
|
|
11119
11236
|
*/showHeader?(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(header,{ref:refTableHeader,tableData,tableColumn,tableGroupColumn}):table_renderEmptyElement($xeTable),/**
|
|
11120
11237
|
* 表体
|
|
@@ -12013,13 +12130,14 @@ menu_hook_hooks.add('tableMenuModule', {
|
|
|
12013
12130
|
* 快捷菜单点击事件
|
|
12014
12131
|
*/
|
|
12015
12132
|
ctxMenuLinkEvent(evnt, menu) {
|
|
12133
|
+
const $xeGrid = $xeTable.xeGrid;
|
|
12016
12134
|
// 如果一级菜单有配置 code 则允许点击,否则不能点击
|
|
12017
12135
|
if (!menu.disabled && (menu.code || !menu.children || !menu.children.length)) {
|
|
12018
12136
|
const gMenuOpts = hook_menus.get(menu.code);
|
|
12019
12137
|
const params = Object.assign({}, internalData._currMenuParams, {
|
|
12020
12138
|
menu,
|
|
12021
12139
|
$table: $xeTable,
|
|
12022
|
-
$grid: $
|
|
12140
|
+
$grid: $xeGrid,
|
|
12023
12141
|
$event: evnt
|
|
12024
12142
|
});
|
|
12025
12143
|
const tmMethod = gMenuOpts ? gMenuOpts.tableMenuMethod || gMenuOpts.menuMethod : null;
|
|
@@ -12530,6 +12648,7 @@ edit_hook_hooks.add('tableEditModule', {
|
|
|
12530
12648
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(() => $xeTable.updateCellAreas());
|
|
12531
12649
|
};
|
|
12532
12650
|
const handleEditActive = (params, evnt, isFocus, isPos) => {
|
|
12651
|
+
const $xeGrid = $xeTable.xeGrid;
|
|
12533
12652
|
const {
|
|
12534
12653
|
editConfig,
|
|
12535
12654
|
mouseConfig
|
|
@@ -12565,7 +12684,7 @@ edit_hook_hooks.add('tableEditModule', {
|
|
|
12565
12684
|
if (!beforeEditMethod || beforeEditMethod({
|
|
12566
12685
|
...params,
|
|
12567
12686
|
$table: $xeTable,
|
|
12568
|
-
$grid: $
|
|
12687
|
+
$grid: $xeGrid
|
|
12569
12688
|
})) {
|
|
12570
12689
|
if (mouseConfig) {
|
|
12571
12690
|
$xeTable.clearSelected();
|
|
@@ -12597,7 +12716,7 @@ edit_hook_hooks.add('tableEditModule', {
|
|
|
12597
12716
|
afterEditMethod({
|
|
12598
12717
|
...params,
|
|
12599
12718
|
$table: $xeTable,
|
|
12600
|
-
$grid: $
|
|
12719
|
+
$grid: $xeGrid
|
|
12601
12720
|
});
|
|
12602
12721
|
}
|
|
12603
12722
|
});
|
|
@@ -12727,13 +12846,14 @@ edit_hook_hooks.add('tableEditModule', {
|
|
|
12727
12846
|
} = props;
|
|
12728
12847
|
const {
|
|
12729
12848
|
mergeList,
|
|
12730
|
-
editStore
|
|
12731
|
-
selectCheckboxMaps
|
|
12849
|
+
editStore
|
|
12732
12850
|
} = reactData;
|
|
12733
12851
|
const {
|
|
12734
12852
|
tableFullTreeData,
|
|
12853
|
+
selectCheckboxMaps,
|
|
12735
12854
|
afterFullData,
|
|
12736
|
-
tableFullData
|
|
12855
|
+
tableFullData,
|
|
12856
|
+
pendingRowMaps
|
|
12737
12857
|
} = internalData;
|
|
12738
12858
|
const checkboxOpts = computeCheckboxOpts.value;
|
|
12739
12859
|
const treeOpts = computeTreeOpts.value;
|
|
@@ -12747,7 +12867,6 @@ edit_hook_hooks.add('tableEditModule', {
|
|
|
12747
12867
|
removeMaps
|
|
12748
12868
|
} = editStore;
|
|
12749
12869
|
const insertDataRowMaps = Object.assign({}, editStore.insertMaps);
|
|
12750
|
-
const pendingDataRowMaps = Object.assign({}, reactData.pendingRowMaps);
|
|
12751
12870
|
const {
|
|
12752
12871
|
checkField
|
|
12753
12872
|
} = checkboxOpts;
|
|
@@ -12766,16 +12885,13 @@ edit_hook_hooks.add('tableEditModule', {
|
|
|
12766
12885
|
});
|
|
12767
12886
|
// 如果绑定了多选属性,则更新状态
|
|
12768
12887
|
if (!checkField) {
|
|
12769
|
-
const selectRowMaps = {
|
|
12770
|
-
...selectCheckboxMaps
|
|
12771
|
-
};
|
|
12772
12888
|
rows.forEach(row => {
|
|
12773
12889
|
const rowid = getRowid($xeTable, row);
|
|
12774
|
-
if (
|
|
12775
|
-
delete
|
|
12890
|
+
if (selectCheckboxMaps[rowid]) {
|
|
12891
|
+
delete selectCheckboxMaps[rowid];
|
|
12776
12892
|
}
|
|
12777
12893
|
});
|
|
12778
|
-
reactData.
|
|
12894
|
+
reactData.updateCheckboxFlag++;
|
|
12779
12895
|
}
|
|
12780
12896
|
// 从数据源中移除
|
|
12781
12897
|
if (tableFullData === rows) {
|
|
@@ -12842,12 +12958,12 @@ edit_hook_hooks.add('tableEditModule', {
|
|
|
12842
12958
|
if (insertDataRowMaps[rowid]) {
|
|
12843
12959
|
delete insertDataRowMaps[rowid];
|
|
12844
12960
|
}
|
|
12845
|
-
if (
|
|
12846
|
-
delete
|
|
12961
|
+
if (pendingRowMaps[rowid]) {
|
|
12962
|
+
delete pendingRowMaps[rowid];
|
|
12847
12963
|
}
|
|
12848
12964
|
});
|
|
12849
12965
|
editStore.insertMaps = insertDataRowMaps;
|
|
12850
|
-
reactData.
|
|
12966
|
+
reactData.pendingRowFlag++;
|
|
12851
12967
|
$xeTable.updateFooter();
|
|
12852
12968
|
$xeTable.cacheRowMap(false);
|
|
12853
12969
|
$xeTable.handleTableData(treeConfig && transform);
|
|
@@ -15167,8 +15283,11 @@ keyboard_hook_hooks.add('tableKeyboardModule', {
|
|
|
15167
15283
|
computeMouseOpts,
|
|
15168
15284
|
computeTreeOpts,
|
|
15169
15285
|
computeRowOpts,
|
|
15286
|
+
computeColumnOpts,
|
|
15170
15287
|
computeCellOpts,
|
|
15171
|
-
computeDefaultRowHeight
|
|
15288
|
+
computeDefaultRowHeight,
|
|
15289
|
+
computeCurrentRowOpts,
|
|
15290
|
+
computeCurrentColumnOpts
|
|
15172
15291
|
} = $xeTable.getComputeMaps();
|
|
15173
15292
|
function getCheckboxRangeRows(evnt, params, targetTrElem, trRect, offsetClientTop, moveRange) {
|
|
15174
15293
|
const {
|
|
@@ -15442,6 +15561,38 @@ keyboard_hook_hooks.add('tableKeyboardModule', {
|
|
|
15442
15561
|
}
|
|
15443
15562
|
}
|
|
15444
15563
|
};
|
|
15564
|
+
const handleMoveSelected = (evnt, args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow) => {
|
|
15565
|
+
const {
|
|
15566
|
+
afterFullData,
|
|
15567
|
+
visibleColumn
|
|
15568
|
+
} = internalData;
|
|
15569
|
+
const params = Object.assign({}, args);
|
|
15570
|
+
const _rowIndex = $xeTable.getVTRowIndex(params.row);
|
|
15571
|
+
const _columnIndex = $xeTable.getVTColumnIndex(params.column);
|
|
15572
|
+
evnt.preventDefault();
|
|
15573
|
+
if (isUpArrow && _rowIndex > 0) {
|
|
15574
|
+
// 移动到上一行
|
|
15575
|
+
params.rowIndex = _rowIndex - 1;
|
|
15576
|
+
params.row = afterFullData[params.rowIndex];
|
|
15577
|
+
} else if (isDwArrow && _rowIndex < afterFullData.length - 1) {
|
|
15578
|
+
// 移动到下一行
|
|
15579
|
+
params.rowIndex = _rowIndex + 1;
|
|
15580
|
+
params.row = afterFullData[params.rowIndex];
|
|
15581
|
+
} else if (isLeftArrow && _columnIndex) {
|
|
15582
|
+
// 移动到左侧单元格
|
|
15583
|
+
params.columnIndex = _columnIndex - 1;
|
|
15584
|
+
params.column = visibleColumn[params.columnIndex];
|
|
15585
|
+
} else if (isRightArrow && _columnIndex < visibleColumn.length - 1) {
|
|
15586
|
+
// 移动到右侧单元格
|
|
15587
|
+
params.columnIndex = _columnIndex + 1;
|
|
15588
|
+
params.column = visibleColumn[params.columnIndex];
|
|
15589
|
+
}
|
|
15590
|
+
$xeTable.scrollToRow(params.row, params.column).then(() => {
|
|
15591
|
+
params.cell = $xeTable.getCellElement(params.row, params.column);
|
|
15592
|
+
$xeTable.handleSelected(params, evnt);
|
|
15593
|
+
});
|
|
15594
|
+
return params;
|
|
15595
|
+
};
|
|
15445
15596
|
const keyboardMethods = {
|
|
15446
15597
|
// 处理 Tab 键移动
|
|
15447
15598
|
moveTabSelected(args, isLeft, evnt) {
|
|
@@ -15453,6 +15604,10 @@ keyboard_hook_hooks.add('tableKeyboardModule', {
|
|
|
15453
15604
|
visibleColumn
|
|
15454
15605
|
} = internalData;
|
|
15455
15606
|
const editOpts = computeEditOpts.value;
|
|
15607
|
+
const rowOpts = computeRowOpts.value;
|
|
15608
|
+
const currentRowOpts = computeCurrentRowOpts.value;
|
|
15609
|
+
const columnOpts = computeColumnOpts.value;
|
|
15610
|
+
const currentColumnOpts = computeCurrentColumnOpts.value;
|
|
15456
15611
|
let targetRow;
|
|
15457
15612
|
let targetRowIndex;
|
|
15458
15613
|
let targetColumnIndex;
|
|
@@ -15495,16 +15650,26 @@ keyboard_hook_hooks.add('tableKeyboardModule', {
|
|
|
15495
15650
|
params.columnIndex = targetColumnIndex;
|
|
15496
15651
|
params.column = targetColumn;
|
|
15497
15652
|
params.cell = $xeTable.getCellElement(params.row, params.column);
|
|
15653
|
+
if (rowOpts.isCurrent && currentRowOpts.isFollowSelected) {
|
|
15654
|
+
$xeTable.triggerCurrentRowEvent(evnt, params);
|
|
15655
|
+
}
|
|
15656
|
+
if (columnOpts.isCurrent && currentColumnOpts.isFollowSelected) {
|
|
15657
|
+
$xeTable.triggerCurrentColumnEvent(evnt, params);
|
|
15658
|
+
}
|
|
15498
15659
|
if (editConfig) {
|
|
15499
15660
|
if (editOpts.trigger === 'click' || editOpts.trigger === 'dblclick') {
|
|
15500
15661
|
if (editOpts.mode === 'row') {
|
|
15501
15662
|
$xeTable.handleEdit(params, evnt);
|
|
15502
15663
|
} else {
|
|
15503
|
-
$xeTable.scrollToRow(params.row, params.column).then(() =>
|
|
15664
|
+
$xeTable.scrollToRow(params.row, params.column).then(() => {
|
|
15665
|
+
$xeTable.handleSelected(params, evnt);
|
|
15666
|
+
});
|
|
15504
15667
|
}
|
|
15505
15668
|
}
|
|
15506
15669
|
} else {
|
|
15507
|
-
$xeTable.scrollToRow(params.row, params.column).then(() =>
|
|
15670
|
+
$xeTable.scrollToRow(params.row, params.column).then(() => {
|
|
15671
|
+
$xeTable.handleSelected(params, evnt);
|
|
15672
|
+
});
|
|
15508
15673
|
}
|
|
15509
15674
|
}
|
|
15510
15675
|
},
|
|
@@ -15522,7 +15687,6 @@ keyboard_hook_hooks.add('tableKeyboardModule', {
|
|
|
15522
15687
|
const treeOpts = computeTreeOpts.value;
|
|
15523
15688
|
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
15524
15689
|
let targetRow;
|
|
15525
|
-
evnt.preventDefault();
|
|
15526
15690
|
if (currentRow) {
|
|
15527
15691
|
if (treeConfig) {
|
|
15528
15692
|
const {
|
|
@@ -15548,6 +15712,7 @@ keyboard_hook_hooks.add('tableKeyboardModule', {
|
|
|
15548
15712
|
targetRow = afterFullData[0];
|
|
15549
15713
|
}
|
|
15550
15714
|
if (targetRow) {
|
|
15715
|
+
evnt.preventDefault();
|
|
15551
15716
|
const params = {
|
|
15552
15717
|
$table: $xeTable,
|
|
15553
15718
|
row: targetRow,
|
|
@@ -15557,37 +15722,70 @@ keyboard_hook_hooks.add('tableKeyboardModule', {
|
|
|
15557
15722
|
$xeTable.scrollToRow(targetRow).then(() => $xeTable.triggerCurrentRowEvent(evnt, params));
|
|
15558
15723
|
}
|
|
15559
15724
|
},
|
|
15560
|
-
//
|
|
15561
|
-
|
|
15725
|
+
// 处理当前列方向键移动
|
|
15726
|
+
moveCurrentColumn(isLeftArrow, isRightArrow, evnt) {
|
|
15727
|
+
const {
|
|
15728
|
+
currentColumn
|
|
15729
|
+
} = reactData;
|
|
15562
15730
|
const {
|
|
15563
|
-
afterFullData,
|
|
15564
15731
|
visibleColumn
|
|
15565
15732
|
} = internalData;
|
|
15566
|
-
|
|
15567
|
-
|
|
15568
|
-
|
|
15569
|
-
|
|
15570
|
-
|
|
15571
|
-
|
|
15572
|
-
|
|
15573
|
-
|
|
15574
|
-
} else
|
|
15575
|
-
|
|
15576
|
-
|
|
15577
|
-
|
|
15578
|
-
|
|
15579
|
-
|
|
15580
|
-
|
|
15581
|
-
|
|
15582
|
-
|
|
15583
|
-
|
|
15584
|
-
|
|
15585
|
-
|
|
15586
|
-
}
|
|
15587
|
-
|
|
15588
|
-
|
|
15589
|
-
|
|
15590
|
-
|
|
15733
|
+
let targetCol = null;
|
|
15734
|
+
if (currentColumn) {
|
|
15735
|
+
const _columnIndex = $xeTable.getVTColumnIndex(currentColumn);
|
|
15736
|
+
if (isLeftArrow && _columnIndex > 0) {
|
|
15737
|
+
targetCol = visibleColumn[_columnIndex - 1];
|
|
15738
|
+
} else if (isRightArrow && _columnIndex < visibleColumn.length - 1) {
|
|
15739
|
+
targetCol = visibleColumn[_columnIndex + 1];
|
|
15740
|
+
}
|
|
15741
|
+
} else {
|
|
15742
|
+
targetCol = visibleColumn[0];
|
|
15743
|
+
}
|
|
15744
|
+
if (targetCol) {
|
|
15745
|
+
evnt.preventDefault();
|
|
15746
|
+
const params = {
|
|
15747
|
+
$table: $xeTable,
|
|
15748
|
+
column: targetCol,
|
|
15749
|
+
columnIndex: $xeTable.getColumnIndex(targetCol),
|
|
15750
|
+
$columnIndex: $xeTable.getVMColumnIndex(targetCol)
|
|
15751
|
+
};
|
|
15752
|
+
$xeTable.scrollToColumn(targetCol).then(() => $xeTable.triggerCurrentColumnEvent(evnt, params));
|
|
15753
|
+
}
|
|
15754
|
+
},
|
|
15755
|
+
// 处理可编辑方向键移动
|
|
15756
|
+
moveArrowSelected(args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow, evnt) {
|
|
15757
|
+
const {
|
|
15758
|
+
highlightCurrentRow,
|
|
15759
|
+
highlightCurrentColumn
|
|
15760
|
+
} = props;
|
|
15761
|
+
const rowOpts = computeRowOpts.value;
|
|
15762
|
+
const columnOpts = computeColumnOpts.value;
|
|
15763
|
+
handleMoveSelected(evnt, args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow);
|
|
15764
|
+
// 当前行按键上下移动
|
|
15765
|
+
if ((isUpArrow || isDwArrow) && (rowOpts.isCurrent || highlightCurrentRow)) {
|
|
15766
|
+
$xeTable.moveCurrentRow(isUpArrow, isDwArrow, evnt);
|
|
15767
|
+
}
|
|
15768
|
+
// 当前行按键左右移动
|
|
15769
|
+
if ((isLeftArrow || isRightArrow) && (columnOpts.isCurrent || highlightCurrentColumn)) {
|
|
15770
|
+
$xeTable.moveCurrentColumn(isLeftArrow, isRightArrow, evnt);
|
|
15771
|
+
}
|
|
15772
|
+
},
|
|
15773
|
+
moveEnterSelected(args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow, evnt) {
|
|
15774
|
+
const rowOpts = computeRowOpts.value;
|
|
15775
|
+
const currentRowOpts = computeCurrentRowOpts.value;
|
|
15776
|
+
const columnOpts = computeColumnOpts.value;
|
|
15777
|
+
const currentColumnOpts = computeCurrentColumnOpts.value;
|
|
15778
|
+
const params = handleMoveSelected(evnt, args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow);
|
|
15779
|
+
if (rowOpts.isCurrent && currentRowOpts.isFollowSelected) {
|
|
15780
|
+
$xeTable.triggerCurrentRowEvent(evnt, params);
|
|
15781
|
+
}
|
|
15782
|
+
if (columnOpts.isCurrent && currentColumnOpts.isFollowSelected) {
|
|
15783
|
+
$xeTable.triggerCurrentColumnEvent(evnt, params);
|
|
15784
|
+
}
|
|
15785
|
+
},
|
|
15786
|
+
// 已废弃,待删除
|
|
15787
|
+
moveSelected(args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow, evnt) {
|
|
15788
|
+
handleMoveSelected(evnt, args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow);
|
|
15591
15789
|
},
|
|
15592
15790
|
handleCellMousedownEvent
|
|
15593
15791
|
};
|
|
@@ -15707,11 +15905,11 @@ validator_hook_hooks.add('tableValidatorModule', {
|
|
|
15707
15905
|
treeConfig
|
|
15708
15906
|
} = props;
|
|
15709
15907
|
const {
|
|
15710
|
-
editStore
|
|
15711
|
-
pendingRowMaps
|
|
15908
|
+
editStore
|
|
15712
15909
|
} = reactData;
|
|
15713
15910
|
const {
|
|
15714
|
-
afterFullData
|
|
15911
|
+
afterFullData,
|
|
15912
|
+
pendingRowMaps
|
|
15715
15913
|
} = internalData;
|
|
15716
15914
|
const {
|
|
15717
15915
|
removeMaps
|
|
@@ -15982,6 +16180,7 @@ validator_hook_hooks.add('tableValidatorModule', {
|
|
|
15982
16180
|
* trigger=blur|change 触发方式(除非特殊场景,否则默认为空就行)
|
|
15983
16181
|
*/
|
|
15984
16182
|
validCellRules(validType, row, column, val) {
|
|
16183
|
+
const $xeGrid = $xeTable.xeGrid;
|
|
15985
16184
|
const {
|
|
15986
16185
|
editRules
|
|
15987
16186
|
} = props;
|
|
@@ -16013,7 +16212,7 @@ validator_hook_hooks.add('tableValidatorModule', {
|
|
|
16013
16212
|
columnIndex: $xeTable.getColumnIndex(column),
|
|
16014
16213
|
field: column.field,
|
|
16015
16214
|
$table: $xeTable,
|
|
16016
|
-
$grid: $
|
|
16215
|
+
$grid: $xeGrid
|
|
16017
16216
|
};
|
|
16018
16217
|
let customValid;
|
|
16019
16218
|
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(validator)) {
|
|
@@ -16229,7 +16428,7 @@ core_.VxeUI.hooks.add('tableCustomModule', {
|
|
|
16229
16428
|
const {
|
|
16230
16429
|
refElem
|
|
16231
16430
|
} = $xeTable.getRefMaps();
|
|
16232
|
-
const $xeGrid = $xeTable.
|
|
16431
|
+
const $xeGrid = $xeTable.xeGrid;
|
|
16233
16432
|
const calcMaxHeight = () => {
|
|
16234
16433
|
const {
|
|
16235
16434
|
customStore
|
|
@@ -16564,7 +16763,8 @@ core_.VxeUI.hooks.add('tableCustomModule', {
|
|
|
16564
16763
|
const {
|
|
16565
16764
|
getConfig: render_getConfig,
|
|
16566
16765
|
renderer: render_renderer,
|
|
16567
|
-
getI18n: render_getI18n
|
|
16766
|
+
getI18n: render_getI18n,
|
|
16767
|
+
getComponent
|
|
16568
16768
|
} = core_.VxeUI;
|
|
16569
16769
|
const componentDefaultModelProp = 'modelValue';
|
|
16570
16770
|
const defaultCompProps = {};
|
|
@@ -16593,7 +16793,7 @@ function getOldComponentName(name) {
|
|
|
16593
16793
|
function getDefaultComponent({
|
|
16594
16794
|
name
|
|
16595
16795
|
}) {
|
|
16596
|
-
return (
|
|
16796
|
+
return getComponent(name);
|
|
16597
16797
|
}
|
|
16598
16798
|
/**
|
|
16599
16799
|
* 已废弃
|
|
@@ -16962,7 +17162,7 @@ function oldEditRender(renderOpts, params) {
|
|
|
16962
17162
|
* @deprecated
|
|
16963
17163
|
*/
|
|
16964
17164
|
function oldButtonEditRender(renderOpts, params) {
|
|
16965
|
-
return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)((
|
|
17165
|
+
return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(getComponent('vxe-button'), {
|
|
16966
17166
|
...getCellEditProps(renderOpts, params, null),
|
|
16967
17167
|
...getComponentOns(renderOpts, params)
|
|
16968
17168
|
})];
|
|
@@ -18534,7 +18734,7 @@ const {
|
|
|
18534
18734
|
renderEmptyElement: grid_renderEmptyElement
|
|
18535
18735
|
} = core_.VxeUI;
|
|
18536
18736
|
const tableComponentPropKeys = Object.keys(src_props);
|
|
18537
|
-
const tableComponentMethodKeys = ['clearAll', 'syncData', 'updateData', 'loadData', 'reloadData', 'reloadRow', 'loadColumn', 'reloadColumn', 'getRowNode', 'getColumnNode', 'getRowIndex', 'getVTRowIndex', 'getVMRowIndex', 'getColumnIndex', 'getVTColumnIndex', 'getVMColumnIndex', 'setRow', 'createData', 'createRow', 'revertData', 'clearData', 'isRemoveByRow', 'isInsertByRow', 'isUpdateByRow', 'getColumns', 'getColumnById', 'getColumnByField', 'getTableColumn', 'getFullColumns', 'getData', 'getCheckboxRecords', 'getParentRow', 'getTreeParentRow', 'getRowSeq', 'getRowById', 'getRowid', 'getTableData', 'getFullData', 'setColumnFixed', 'clearColumnFixed', 'setColumnWidth', 'getColumnWidth', 'setRowHeightConf', 'getRowHeightConf', 'setRowHeight', 'getRowHeight', 'hideColumn', 'showColumn', 'resetColumn', 'refreshColumn', 'refreshScroll', 'recalculate', 'closeTooltip', 'isAllCheckboxChecked', 'isAllCheckboxIndeterminate', 'getCheckboxIndeterminateRecords', 'setCheckboxRow', 'setCheckboxRowKey', 'isCheckedByCheckboxRow', 'isCheckedByCheckboxRowKey', 'isIndeterminateByCheckboxRow', 'isIndeterminateByCheckboxRowKey', 'toggleCheckboxRow', 'setAllCheckboxRow', 'getRadioReserveRecord', 'clearRadioReserve', 'getCheckboxReserveRecords', 'clearCheckboxReserve', 'toggleAllCheckboxRow', 'clearCheckboxRow', 'setCurrentRow', 'isCheckedByRadioRow', 'isCheckedByRadioRowKey', 'setRadioRow', 'setRadioRowKey', 'clearCurrentRow', 'clearRadioRow', 'getCurrentRecord', 'getRadioRecord', 'getCurrentColumn', 'setCurrentColumn', 'clearCurrentColumn', 'setPendingRow', 'togglePendingRow', 'getPendingRecords', 'clearPendingRow', 'sort', 'setSort', 'clearSort', 'isSort', 'getSortColumns', 'closeFilter', 'isFilter', 'isActiveFilterByColumn', 'isRowExpandLoaded', 'clearRowExpandLoaded', 'reloadRowExpand', 'reloadRowExpand', 'toggleRowExpand', 'setAllRowExpand', 'setRowExpand', 'isExpandByRow', 'isRowExpandByRow', 'clearRowExpand', 'clearRowExpandReserve', 'getRowExpandRecords', 'getTreeExpandRecords', 'isTreeExpandLoaded', 'clearTreeExpandLoaded', 'reloadTreeExpand', 'reloadTreeChilds', 'toggleTreeExpand', 'setAllTreeExpand', 'setTreeExpand', 'isTreeExpandByRow', 'clearTreeExpand', 'clearTreeExpandReserve', 'getScroll', 'scrollTo', 'scrollToRow', 'scrollToColumn', 'clearScroll', 'updateFooter', 'updateStatus', 'setMergeCells', 'removeInsertRow', 'removeMergeCells', 'getMergeCells', 'clearMergeCells', 'setMergeFooterItems', 'removeMergeFooterItems', 'getMergeFooterItems', 'clearMergeFooterItems', 'getCustomStoreData', 'openTooltip', 'moveColumnTo', 'moveRowTo', 'getCellLabel', 'getCellElement', 'focus', 'blur', 'connect'];
|
|
18737
|
+
const tableComponentMethodKeys = ['clearAll', 'syncData', 'updateData', 'loadData', 'reloadData', 'reloadRow', 'loadColumn', 'reloadColumn', 'getRowNode', 'getColumnNode', 'getRowIndex', 'getVTRowIndex', 'getVMRowIndex', 'getColumnIndex', 'getVTColumnIndex', 'getVMColumnIndex', 'setRow', 'createData', 'createRow', 'revertData', 'clearData', 'isRemoveByRow', 'isInsertByRow', 'isUpdateByRow', 'getColumns', 'getColumnById', 'getColumnByField', 'getTableColumn', 'getFullColumns', 'getData', 'getCheckboxRecords', 'getParentRow', 'getTreeParentRow', 'getRowSeq', 'getRowById', 'getRowid', 'getTableData', 'getFullData', 'setColumnFixed', 'clearColumnFixed', 'setColumnWidth', 'getColumnWidth', 'setRowHeightConf', 'getRowHeightConf', 'setRowHeight', 'getRowHeight', 'hideColumn', 'showColumn', 'resetColumn', 'refreshColumn', 'refreshScroll', 'recalculate', 'closeTooltip', 'isAllCheckboxChecked', 'isAllCheckboxIndeterminate', 'getCheckboxIndeterminateRecords', 'setCheckboxRow', 'setCheckboxRowKey', 'isCheckedByCheckboxRow', 'isCheckedByCheckboxRowKey', 'isIndeterminateByCheckboxRow', 'isIndeterminateByCheckboxRowKey', 'toggleCheckboxRow', 'setAllCheckboxRow', 'getRadioReserveRecord', 'clearRadioReserve', 'getCheckboxReserveRecords', 'clearCheckboxReserve', 'toggleAllCheckboxRow', 'clearCheckboxRow', 'setCurrentRow', 'isCheckedByRadioRow', 'isCheckedByRadioRowKey', 'setRadioRow', 'setRadioRowKey', 'clearCurrentRow', 'clearRadioRow', 'getCurrentRecord', 'getRadioRecord', 'getCurrentColumn', 'setCurrentColumn', 'clearCurrentColumn', 'setPendingRow', 'togglePendingRow', 'hasPendingByRow', 'isPendingByRow', 'getPendingRecords', 'clearPendingRow', 'sort', 'setSort', 'clearSort', 'isSort', 'getSortColumns', 'closeFilter', 'isFilter', 'isActiveFilterByColumn', 'isRowExpandLoaded', 'clearRowExpandLoaded', 'reloadRowExpand', 'reloadRowExpand', 'toggleRowExpand', 'setAllRowExpand', 'setRowExpand', 'isExpandByRow', 'isRowExpandByRow', 'clearRowExpand', 'clearRowExpandReserve', 'getRowExpandRecords', 'getTreeExpandRecords', 'isTreeExpandLoaded', 'clearTreeExpandLoaded', 'reloadTreeExpand', 'reloadTreeChilds', 'toggleTreeExpand', 'setAllTreeExpand', 'setTreeExpand', 'isTreeExpandByRow', 'clearTreeExpand', 'clearTreeExpandReserve', 'getScroll', 'scrollTo', 'scrollToRow', 'scrollToColumn', 'clearScroll', 'updateFooter', 'updateStatus', 'setMergeCells', 'removeInsertRow', 'removeMergeCells', 'getMergeCells', 'clearMergeCells', 'setMergeFooterItems', 'removeMergeFooterItems', 'getMergeFooterItems', 'clearMergeFooterItems', 'getCustomStoreData', 'openTooltip', 'moveColumnTo', 'moveRowTo', 'getCellLabel', 'getCellElement', 'focus', 'blur', 'connect'];
|
|
18538
18738
|
const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit-invalid', 'form-reset', 'form-collapse', 'form-toggle-collapse', 'proxy-query', 'proxy-delete', 'proxy-save', 'toolbar-button-click', 'toolbar-tool-click', 'zoom'];
|
|
18539
18739
|
/* harmony default export */ var grid = ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.defineComponent)({
|
|
18540
18740
|
name: 'VxeGrid',
|
|
@@ -18879,10 +19079,10 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
|
|
|
18879
19079
|
const proxyOpts = computeProxyOpts.value;
|
|
18880
19080
|
tablePage.currentPage = currentPage;
|
|
18881
19081
|
tablePage.pageSize = pageSize;
|
|
18882
|
-
|
|
19082
|
+
$xeGrid.dispatchEvent('page-change', params, $event);
|
|
18883
19083
|
if (proxyConfig && isEnableConf(proxyOpts)) {
|
|
18884
|
-
|
|
18885
|
-
|
|
19084
|
+
$xeGrid.commitProxy('query').then(rest => {
|
|
19085
|
+
$xeGrid.dispatchEvent('proxy-query', rest, $event);
|
|
18886
19086
|
});
|
|
18887
19087
|
}
|
|
18888
19088
|
};
|
|
@@ -18935,6 +19135,9 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
|
|
|
18935
19135
|
proxyConfig
|
|
18936
19136
|
} = props;
|
|
18937
19137
|
const proxyOpts = computeProxyOpts.value;
|
|
19138
|
+
if (reactData.tableLoading) {
|
|
19139
|
+
return;
|
|
19140
|
+
}
|
|
18938
19141
|
if (proxyConfig && isEnableConf(proxyOpts)) {
|
|
18939
19142
|
gridMethods.commitProxy('reload').then(rest => {
|
|
18940
19143
|
gridMethods.dispatchEvent('proxy-query', {
|
|
@@ -19006,6 +19209,23 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
|
|
|
19006
19209
|
}
|
|
19007
19210
|
return null;
|
|
19008
19211
|
};
|
|
19212
|
+
const getConfigSlot = slotConfigs => {
|
|
19213
|
+
const slotConf = {};
|
|
19214
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().objectMap(slotConfigs, (slotFunc, slotKey) => {
|
|
19215
|
+
if (slotFunc) {
|
|
19216
|
+
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(slotFunc)) {
|
|
19217
|
+
if (slots[slotFunc]) {
|
|
19218
|
+
slotConf[slotKey] = slots[slotFunc];
|
|
19219
|
+
} else {
|
|
19220
|
+
errLog('vxe.error.notSlot', [slotFunc]);
|
|
19221
|
+
}
|
|
19222
|
+
} else {
|
|
19223
|
+
slotConf[slotKey] = slotFunc;
|
|
19224
|
+
}
|
|
19225
|
+
}
|
|
19226
|
+
});
|
|
19227
|
+
return slotConf;
|
|
19228
|
+
};
|
|
19009
19229
|
/**
|
|
19010
19230
|
* 渲染表单
|
|
19011
19231
|
*/
|
|
@@ -19070,7 +19290,7 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
|
|
|
19070
19290
|
class: 'vxe-grid--form-wrapper'
|
|
19071
19291
|
}, slotVNs);
|
|
19072
19292
|
}
|
|
19073
|
-
return (
|
|
19293
|
+
return grid_renderEmptyElement($xeGrid);
|
|
19074
19294
|
};
|
|
19075
19295
|
/**
|
|
19076
19296
|
* 渲染工具栏
|
|
@@ -19112,7 +19332,7 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
|
|
|
19112
19332
|
class: 'vxe-grid--toolbar-wrapper'
|
|
19113
19333
|
}, slotVNs);
|
|
19114
19334
|
}
|
|
19115
|
-
return (
|
|
19335
|
+
return grid_renderEmptyElement($xeGrid);
|
|
19116
19336
|
};
|
|
19117
19337
|
/**
|
|
19118
19338
|
* 渲染表格顶部区域
|
|
@@ -19127,7 +19347,7 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
|
|
|
19127
19347
|
$grid: $xeGrid
|
|
19128
19348
|
}));
|
|
19129
19349
|
}
|
|
19130
|
-
return (
|
|
19350
|
+
return grid_renderEmptyElement($xeGrid);
|
|
19131
19351
|
};
|
|
19132
19352
|
const renderTableLeft = () => {
|
|
19133
19353
|
const leftSlot = slots.left;
|
|
@@ -19138,7 +19358,7 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
|
|
|
19138
19358
|
$grid: $xeGrid
|
|
19139
19359
|
}));
|
|
19140
19360
|
}
|
|
19141
|
-
return (
|
|
19361
|
+
return grid_renderEmptyElement($xeGrid);
|
|
19142
19362
|
};
|
|
19143
19363
|
const renderTableRight = () => {
|
|
19144
19364
|
const rightSlot = slots.right;
|
|
@@ -19149,7 +19369,7 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
|
|
|
19149
19369
|
$grid: $xeGrid
|
|
19150
19370
|
}));
|
|
19151
19371
|
}
|
|
19152
|
-
return (
|
|
19372
|
+
return grid_renderEmptyElement($xeGrid);
|
|
19153
19373
|
};
|
|
19154
19374
|
/**
|
|
19155
19375
|
* 渲染表格
|
|
@@ -19207,7 +19427,7 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
|
|
|
19207
19427
|
$grid: $xeGrid
|
|
19208
19428
|
}));
|
|
19209
19429
|
}
|
|
19210
|
-
return (
|
|
19430
|
+
return grid_renderEmptyElement($xeGrid);
|
|
19211
19431
|
};
|
|
19212
19432
|
/**
|
|
19213
19433
|
* 渲染分页
|
|
@@ -19219,43 +19439,22 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
|
|
|
19219
19439
|
} = props;
|
|
19220
19440
|
const proxyOpts = computeProxyOpts.value;
|
|
19221
19441
|
const pagerOpts = computePagerOpts.value;
|
|
19442
|
+
const pagerSlot = slots.pager;
|
|
19222
19443
|
if (pagerConfig && isEnableConf(pagerOpts) || slots.pager) {
|
|
19223
|
-
let slotVNs = [];
|
|
19224
|
-
if (slots.pager) {
|
|
19225
|
-
slotVNs = slots.pager({
|
|
19226
|
-
$grid: $xeGrid
|
|
19227
|
-
});
|
|
19228
|
-
} else {
|
|
19229
|
-
const pagerOptSlots = pagerOpts.slots;
|
|
19230
|
-
const pagerSlots = {};
|
|
19231
|
-
let leftSlot;
|
|
19232
|
-
let rightSlot;
|
|
19233
|
-
if (pagerOptSlots) {
|
|
19234
|
-
leftSlot = getFuncSlot(pagerOptSlots, 'left');
|
|
19235
|
-
rightSlot = getFuncSlot(pagerOptSlots, 'right');
|
|
19236
|
-
if (leftSlot) {
|
|
19237
|
-
pagerSlots.left = leftSlot;
|
|
19238
|
-
}
|
|
19239
|
-
if (rightSlot) {
|
|
19240
|
-
pagerSlots.right = rightSlot;
|
|
19241
|
-
}
|
|
19242
|
-
}
|
|
19243
|
-
if (VxeUIPagerComponent) {
|
|
19244
|
-
slotVNs.push((0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(VxeUIPagerComponent, {
|
|
19245
|
-
ref: refPager,
|
|
19246
|
-
...pagerOpts,
|
|
19247
|
-
...(proxyConfig && isEnableConf(proxyOpts) ? reactData.tablePage : {}),
|
|
19248
|
-
onPageChange: pageChangeEvent
|
|
19249
|
-
}, pagerSlots));
|
|
19250
|
-
}
|
|
19251
|
-
}
|
|
19252
19444
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
19253
19445
|
ref: refPagerWrapper,
|
|
19254
19446
|
key: 'pager',
|
|
19255
19447
|
class: 'vxe-grid--pager-wrapper'
|
|
19256
|
-
},
|
|
19257
|
-
|
|
19258
|
-
|
|
19448
|
+
}, pagerSlot ? pagerSlot({
|
|
19449
|
+
$grid: $xeGrid
|
|
19450
|
+
}) : [VxeUIPagerComponent ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(VxeUIPagerComponent, {
|
|
19451
|
+
ref: refPager,
|
|
19452
|
+
...pagerOpts,
|
|
19453
|
+
...(proxyConfig && isEnableConf(proxyOpts) ? reactData.tablePage : {}),
|
|
19454
|
+
onPageChange: pageChangeEvent
|
|
19455
|
+
}, getConfigSlot(pagerOpts.slots)) : grid_renderEmptyElement($xeGrid)]);
|
|
19456
|
+
}
|
|
19457
|
+
return grid_renderEmptyElement($xeGrid);
|
|
19259
19458
|
};
|
|
19260
19459
|
const renderChildLayout = layoutKeys => {
|
|
19261
19460
|
const childVNs = [];
|
|
@@ -19473,6 +19672,9 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
|
|
|
19473
19672
|
if (ajaxMethods) {
|
|
19474
19673
|
const isInited = code === '_init';
|
|
19475
19674
|
const isReload = code === 'reload';
|
|
19675
|
+
if (!isInited && reactData.tableLoading) {
|
|
19676
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
19677
|
+
}
|
|
19476
19678
|
let sortList = [];
|
|
19477
19679
|
let filterList = [];
|
|
19478
19680
|
let pageParams = {};
|
|
@@ -20143,7 +20345,8 @@ const Grid = VxeGrid;
|
|
|
20143
20345
|
treeNotImp: '树表格不支持导入',
|
|
20144
20346
|
treeCrossDrag: '只能拖拽第一层级',
|
|
20145
20347
|
treeDragChild: '父级不能拖拽到自己的子级中',
|
|
20146
|
-
reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
|
|
20348
|
+
reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install',
|
|
20349
|
+
errMaxRow: '超过支持的最大数据量 {0} 行,这可能会导致出现错误'
|
|
20147
20350
|
},
|
|
20148
20351
|
table: {
|
|
20149
20352
|
emptyText: '暂无数据',
|
|
@@ -20329,6 +20532,9 @@ const Grid = VxeGrid;
|
|
|
20329
20532
|
fixedRight: '冻结在右侧',
|
|
20330
20533
|
cancelFixed: '取消冻结列'
|
|
20331
20534
|
},
|
|
20535
|
+
datePicker: {
|
|
20536
|
+
yearTitle: '{0} 年'
|
|
20537
|
+
},
|
|
20332
20538
|
input: {
|
|
20333
20539
|
date: {
|
|
20334
20540
|
m1: '01 月',
|
|
@@ -20659,6 +20865,7 @@ const Grid = VxeGrid;
|
|
|
20659
20865
|
},
|
|
20660
20866
|
filterCombination: {
|
|
20661
20867
|
menus: {
|
|
20868
|
+
sort: '排序',
|
|
20662
20869
|
clearSort: '清除排序',
|
|
20663
20870
|
sortAsc: '升序',
|
|
20664
20871
|
sortDesc: '降序',
|
|
@@ -20763,6 +20970,7 @@ const Grid = VxeGrid;
|
|
|
20763
20970
|
},
|
|
20764
20971
|
combination: {
|
|
20765
20972
|
menus: {
|
|
20973
|
+
sort: '排序',
|
|
20766
20974
|
clearSort: '清除排序',
|
|
20767
20975
|
sortAsc: '升序',
|
|
20768
20976
|
sortDesc: '降序',
|
|
@@ -20822,8 +21030,8 @@ core_.VxeUI.setTheme('light');
|
|
|
20822
21030
|
|
|
20823
21031
|
|
|
20824
21032
|
if (typeof window !== 'undefined' && window.Vue) {
|
|
20825
|
-
if (!window.
|
|
20826
|
-
window.
|
|
21033
|
+
if (!window.VXETable) {
|
|
21034
|
+
window.VXETable = components_namespaceObject;
|
|
20827
21035
|
}
|
|
20828
21036
|
}
|
|
20829
21037
|
|