vxe-table 3.4.2 → 3.4.5
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/README.en.md +3 -3
- package/README.md +2 -2
- package/README.zh-TW.md +2 -2
- package/lib/edit/src/mixin.js +267 -88
- package/lib/edit/src/mixin.min.js +1 -1
- package/lib/header/src/header.js +1 -1
- package/lib/header/src/header.min.js +1 -1
- package/lib/index.umd.js +1098 -140
- package/lib/index.umd.min.js +2 -1
- package/lib/input/src/input.js +10 -2
- package/lib/input/src/input.min.js +1 -1
- package/lib/table/src/body.js +10 -7
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/methods.js +40 -36
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +5 -3
- package/lib/table/src/table.min.js +1 -1
- package/lib/v-x-e-table/src/conf.js +1 -1
- package/lib/v-x-e-table/src/conf.min.js +1 -1
- package/lib/validator/src/mixin.js +3 -3
- package/lib/validator/src/mixin.min.js +1 -1
- package/package.json +2 -23
- package/packages/edit/src/mixin.js +174 -62
- package/packages/header/src/header.js +1 -1
- package/packages/input/src/input.js +9 -2
- package/packages/table/src/body.js +8 -7
- package/packages/table/src/methods.js +33 -31
- package/packages/table/src/table.js +5 -3
- package/packages/v-x-e-table/src/conf.js +1 -1
- package/packages/validator/src/mixin.js +3 -3
- package/types/index.d.ts +1 -1
- package/types/table.d.ts +13 -10
- package/types/v-x-e-table/renderer.d.ts +3 -1
package/README.en.md
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
[](https://github.com/x-extends/vxe-table/pulls?q=is%3Apr+is%3Aclosed)
|
|
13
13
|
[](LICENSE)
|
|
14
14
|
|
|
15
|
-
A [vue](https://www.npmjs.com/package/vue) based PC form component, support add, delete, change, virtual
|
|
15
|
+
A [vue](https://www.npmjs.com/package/vue) based PC form component, support add, delete, change, virtual list, virtual tree, lazy load, shortcut menu, data validation, print export, form rendering, data paging, modal window, custom template, renderer, flexible configuration items, extension interface, etc...
|
|
16
16
|
|
|
17
17
|
* Design concept
|
|
18
18
|
* Efficient and concise API design for modern browsers
|
|
@@ -60,9 +60,9 @@ A [vue](https://www.npmjs.com/package/vue) based PC form component, support add,
|
|
|
60
60
|
* [x] Form
|
|
61
61
|
* [x] Toolbar
|
|
62
62
|
* [x] Pulldown
|
|
63
|
-
* [x]
|
|
63
|
+
* [x] Virtual list
|
|
64
|
+
* [x] Virtual tree
|
|
64
65
|
* [x] Editable CRUD
|
|
65
|
-
* [x] Tree table
|
|
66
66
|
* [x] Validate
|
|
67
67
|
* [x] Data Proxy
|
|
68
68
|
* [x] Keyboard navigation
|
package/README.md
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
[](https://github.com/x-extends/vxe-table/pulls?q=is%3Apr+is%3Aclosed)
|
|
13
13
|
[](LICENSE)
|
|
14
14
|
|
|
15
|
-
一个基于 [vue](https://www.npmjs.com/package/vue) 的 PC
|
|
15
|
+
一个基于 [vue](https://www.npmjs.com/package/vue) 的 PC 端表格组件,支持增删改查、虚拟列表、虚拟树、懒加载、快捷菜单、数据校验、打印导出、表单渲染、数据分页、弹窗、自定义模板、渲染器、贼灵活的配置项、扩展接口等...
|
|
16
16
|
|
|
17
17
|
* 设计理念
|
|
18
18
|
* 面向现代浏览器,高效的简洁 API 设计
|
|
@@ -65,8 +65,8 @@
|
|
|
65
65
|
* [x] 工具栏
|
|
66
66
|
* [x] 下拉容器
|
|
67
67
|
* [x] 虚拟列表
|
|
68
|
+
* [x] 虚拟树
|
|
68
69
|
* [x] 增删改查
|
|
69
|
-
* [x] 树表格
|
|
70
70
|
* [x] 数据校验
|
|
71
71
|
* [x] 数据代理
|
|
72
72
|
* [x] 键盘导航
|
package/README.zh-TW.md
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
[](https://github.com/x-extends/vxe-table/pulls?q=is%3Apr+is%3Aclosed)
|
|
13
13
|
[](LICENSE)
|
|
14
14
|
|
|
15
|
-
一個基於 [vue](https://www.npmjs.com/package/vue) 的PC
|
|
15
|
+
一個基於 [vue](https://www.npmjs.com/package/vue) 的PC端表格組件,支持增删改查、虛擬清單、虛擬樹、懶加載、快捷選單、數據校驗、列印匯出、表單渲染、數據分頁、彈窗、自定義範本、渲染器、賊靈活的配寘項、擴展接口等…
|
|
16
16
|
|
|
17
17
|
* 設計理念
|
|
18
18
|
* 面向現代瀏覽器,高效的簡潔 API 設計
|
|
@@ -65,8 +65,8 @@
|
|
|
65
65
|
* [x] 工具列
|
|
66
66
|
* [x] 下拉容器
|
|
67
67
|
* [x] 虛擬清單
|
|
68
|
+
* [x] 虛擬樹
|
|
68
69
|
* [x] 增删改查
|
|
69
|
-
* [x] 樹表格
|
|
70
70
|
* [x] 數據校驗
|
|
71
71
|
* [x] 數據代理
|
|
72
72
|
* [x] 鍵盤導航
|
package/lib/edit/src/mixin.js
CHANGED
|
@@ -27,6 +27,72 @@ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToAr
|
|
|
27
27
|
|
|
28
28
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
29
29
|
|
|
30
|
+
var getRowid = _tools.UtilTools.getRowid;
|
|
31
|
+
|
|
32
|
+
function insertTreeRow(_vm, newRecords, isAppend) {
|
|
33
|
+
var treeFullData = _vm.treeFullData,
|
|
34
|
+
afterFullData = _vm.afterFullData,
|
|
35
|
+
fullDataRowIdData = _vm.fullDataRowIdData,
|
|
36
|
+
fullAllDataRowIdData = _vm.fullAllDataRowIdData,
|
|
37
|
+
treeOpts = _vm.treeOpts;
|
|
38
|
+
var funcName = isAppend ? 'push' : 'unshift';
|
|
39
|
+
newRecords.forEach(function (item) {
|
|
40
|
+
var parentRowId = item[treeOpts.parentField];
|
|
41
|
+
var rowid = getRowid(_vm, item);
|
|
42
|
+
var matchObj = parentRowId ? _xeUtils.default.findTree(treeFullData, function (item) {
|
|
43
|
+
return parentRowId === item[treeOpts.rowField];
|
|
44
|
+
}, treeOpts) : null;
|
|
45
|
+
|
|
46
|
+
if (matchObj) {
|
|
47
|
+
var parentRow = matchObj.item;
|
|
48
|
+
var parentRest = fullAllDataRowIdData[getRowid(_vm, parentRow)];
|
|
49
|
+
var parentLevel = parentRest ? parentRest.level : 0;
|
|
50
|
+
var parentChilds = parentRow[treeOpts.children];
|
|
51
|
+
|
|
52
|
+
if (!_xeUtils.default.isArray(parentChilds)) {
|
|
53
|
+
parentChilds = parentRow[treeOpts.children] = [];
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
parentChilds[funcName](item);
|
|
57
|
+
var rest = {
|
|
58
|
+
row: item,
|
|
59
|
+
rowid: rowid,
|
|
60
|
+
index: -1,
|
|
61
|
+
_index: -1,
|
|
62
|
+
$index: -1,
|
|
63
|
+
items: parentChilds,
|
|
64
|
+
parent: parent,
|
|
65
|
+
level: parentLevel + 1
|
|
66
|
+
};
|
|
67
|
+
fullDataRowIdData[rowid] = rest;
|
|
68
|
+
fullAllDataRowIdData[rowid] = rest;
|
|
69
|
+
} else {
|
|
70
|
+
if (process.env.NODE_ENV === 'development') {
|
|
71
|
+
if (parentRowId) {
|
|
72
|
+
_tools.UtilTools.warn('vxe.error.unableInsert');
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
afterFullData[funcName](item);
|
|
77
|
+
treeFullData[funcName](item);
|
|
78
|
+
var _rest = {
|
|
79
|
+
row: item,
|
|
80
|
+
rowid: rowid,
|
|
81
|
+
index: -1,
|
|
82
|
+
_index: -1,
|
|
83
|
+
$index: -1,
|
|
84
|
+
items: treeFullData,
|
|
85
|
+
parent: null,
|
|
86
|
+
level: 0
|
|
87
|
+
};
|
|
88
|
+
fullDataRowIdData[rowid] = _rest;
|
|
89
|
+
fullAllDataRowIdData[rowid] = _rest;
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
|
|
93
|
+
_vm.updateVirtualTreeData();
|
|
94
|
+
}
|
|
95
|
+
|
|
30
96
|
var _default = {
|
|
31
97
|
methods: {
|
|
32
98
|
/**
|
|
@@ -50,13 +116,18 @@ var _default = {
|
|
|
50
116
|
var _this = this,
|
|
51
117
|
_editStore$insertList;
|
|
52
118
|
|
|
53
|
-
var
|
|
119
|
+
var treeFullData = this.treeFullData,
|
|
120
|
+
mergeList = this.mergeList,
|
|
54
121
|
afterFullData = this.afterFullData,
|
|
55
122
|
editStore = this.editStore,
|
|
56
123
|
sYOpts = this.sYOpts,
|
|
57
124
|
scrollYLoad = this.scrollYLoad,
|
|
58
125
|
tableFullData = this.tableFullData,
|
|
59
|
-
treeConfig = this.treeConfig
|
|
126
|
+
treeConfig = this.treeConfig,
|
|
127
|
+
fullDataRowIdData = this.fullDataRowIdData,
|
|
128
|
+
fullAllDataRowIdData = this.fullAllDataRowIdData,
|
|
129
|
+
treeOpts = this.treeOpts;
|
|
130
|
+
var transform = treeOpts.transform;
|
|
60
131
|
|
|
61
132
|
if (!_xeUtils.default.isArray(records)) {
|
|
62
133
|
records = [records];
|
|
@@ -67,60 +138,120 @@ var _default = {
|
|
|
67
138
|
});
|
|
68
139
|
|
|
69
140
|
if (!row) {
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
if (mergeRowIndex > 0) {
|
|
77
|
-
mergeItem.row = mergeRowIndex + newRecords.length;
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
} else {
|
|
81
|
-
if (row === -1) {
|
|
82
|
-
afterFullData.push.apply(afterFullData, _toConsumableArray(newRecords));
|
|
83
|
-
tableFullData.push.apply(tableFullData, _toConsumableArray(newRecords)); // 刷新单元格合并
|
|
141
|
+
// 如果为虚拟树
|
|
142
|
+
if (treeConfig && transform) {
|
|
143
|
+
insertTreeRow(this, newRecords, false);
|
|
144
|
+
} else {
|
|
145
|
+
afterFullData.unshift.apply(afterFullData, _toConsumableArray(newRecords));
|
|
146
|
+
tableFullData.unshift.apply(tableFullData, _toConsumableArray(newRecords)); // 刷新单元格合并
|
|
84
147
|
|
|
85
148
|
mergeList.forEach(function (mergeItem) {
|
|
86
|
-
var mergeRowIndex = mergeItem.row
|
|
87
|
-
mergeRowspan = mergeItem.rowspan;
|
|
149
|
+
var mergeRowIndex = mergeItem.row;
|
|
88
150
|
|
|
89
|
-
if (mergeRowIndex
|
|
90
|
-
mergeItem.
|
|
151
|
+
if (mergeRowIndex > 0) {
|
|
152
|
+
mergeItem.row = mergeRowIndex + newRecords.length;
|
|
91
153
|
}
|
|
92
154
|
});
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
155
|
+
}
|
|
156
|
+
} else {
|
|
157
|
+
if (row === -1) {
|
|
158
|
+
// 如果为虚拟树
|
|
159
|
+
if (treeConfig && transform) {
|
|
160
|
+
insertTreeRow(this, newRecords, true);
|
|
161
|
+
} else {
|
|
162
|
+
afterFullData.push.apply(afterFullData, _toConsumableArray(newRecords));
|
|
163
|
+
tableFullData.push.apply(tableFullData, _toConsumableArray(newRecords)); // 刷新单元格合并
|
|
97
164
|
|
|
98
|
-
|
|
165
|
+
mergeList.forEach(function (mergeItem) {
|
|
166
|
+
var mergeRowIndex = mergeItem.row,
|
|
167
|
+
mergeRowspan = mergeItem.rowspan;
|
|
99
168
|
|
|
100
|
-
|
|
101
|
-
|
|
169
|
+
if (mergeRowIndex + mergeRowspan > afterFullData.length) {
|
|
170
|
+
mergeItem.rowspan = mergeRowspan + newRecords.length;
|
|
171
|
+
}
|
|
172
|
+
});
|
|
102
173
|
}
|
|
174
|
+
} else {
|
|
175
|
+
// 如果为虚拟树
|
|
176
|
+
if (treeConfig && transform) {
|
|
177
|
+
var matchObj = _xeUtils.default.findTree(treeFullData, function (item) {
|
|
178
|
+
return row[treeOpts.rowField] === item[treeOpts.rowField];
|
|
179
|
+
}, treeOpts);
|
|
180
|
+
|
|
181
|
+
if (matchObj) {
|
|
182
|
+
var parentRow = matchObj.parent;
|
|
183
|
+
var parentChilds = matchObj.items;
|
|
184
|
+
var parentRest = fullAllDataRowIdData[getRowid(this, parentRow)];
|
|
185
|
+
var parentLevel = parentRest ? parentRest.level : 0;
|
|
186
|
+
newRecords.forEach(function (item, i) {
|
|
187
|
+
var rowid = getRowid(_this, item);
|
|
188
|
+
|
|
189
|
+
if (process.env.NODE_ENV === 'development') {
|
|
190
|
+
if (item[treeOpts.parentField]) {
|
|
191
|
+
if (parentRow && item[treeOpts.parentField] !== parentRow[treeOpts.rowField]) {
|
|
192
|
+
_tools.UtilTools.error('vxe.error.errProp', ["".concat(treeOpts.parentField, "=").concat(item[treeOpts.parentField]), "".concat(treeOpts.parentField, "=").concat(parentRow[treeOpts.rowField])]);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
if (parentRow) {
|
|
198
|
+
item[treeOpts.parentField] = parentRow[treeOpts.rowField];
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
parentChilds.splice(matchObj.index + i, 0, item);
|
|
202
|
+
var rest = {
|
|
203
|
+
row: item,
|
|
204
|
+
rowid: rowid,
|
|
205
|
+
index: -1,
|
|
206
|
+
_index: -1,
|
|
207
|
+
$index: -1,
|
|
208
|
+
items: parentChilds,
|
|
209
|
+
parent: parentRow,
|
|
210
|
+
level: parentLevel + 1
|
|
211
|
+
};
|
|
212
|
+
fullDataRowIdData[rowid] = rest;
|
|
213
|
+
fullAllDataRowIdData[rowid] = rest;
|
|
214
|
+
});
|
|
215
|
+
this.updateVirtualTreeData();
|
|
216
|
+
} else {
|
|
217
|
+
if (process.env.NODE_ENV === 'development') {
|
|
218
|
+
_tools.UtilTools.warn('vxe.error.unableInsert');
|
|
219
|
+
}
|
|
103
220
|
|
|
104
|
-
|
|
105
|
-
|
|
221
|
+
insertTreeRow(this, newRecords, true);
|
|
222
|
+
}
|
|
223
|
+
} else {
|
|
224
|
+
if (treeConfig) {
|
|
225
|
+
throw new Error(_tools.UtilTools.getLog('vxe.error.noTree', ['insert']));
|
|
226
|
+
}
|
|
106
227
|
|
|
107
|
-
|
|
108
|
-
var mergeRowIndex = mergeItem.row,
|
|
109
|
-
mergeRowspan = mergeItem.rowspan;
|
|
228
|
+
var afIndex = afterFullData.indexOf(row);
|
|
110
229
|
|
|
111
|
-
if (
|
|
112
|
-
|
|
113
|
-
} else if (mergeRowIndex + mergeRowspan > afIndex) {
|
|
114
|
-
mergeItem.rowspan = mergeRowspan + newRecords.length;
|
|
230
|
+
if (afIndex === -1) {
|
|
231
|
+
throw new Error(_tools.UtilTools.error('vxe.error.unableInsert'));
|
|
115
232
|
}
|
|
116
|
-
|
|
233
|
+
|
|
234
|
+
afterFullData.splice.apply(afterFullData, [afIndex, 0].concat(_toConsumableArray(newRecords)));
|
|
235
|
+
tableFullData.splice.apply(tableFullData, [tableFullData.indexOf(row), 0].concat(_toConsumableArray(newRecords))); // 刷新单元格合并
|
|
236
|
+
|
|
237
|
+
mergeList.forEach(function (mergeItem) {
|
|
238
|
+
var mergeRowIndex = mergeItem.row,
|
|
239
|
+
mergeRowspan = mergeItem.rowspan;
|
|
240
|
+
|
|
241
|
+
if (mergeRowIndex > afIndex) {
|
|
242
|
+
mergeItem.row = mergeRowIndex + newRecords.length;
|
|
243
|
+
} else if (mergeRowIndex + mergeRowspan > afIndex) {
|
|
244
|
+
mergeItem.rowspan = mergeRowspan + newRecords.length;
|
|
245
|
+
}
|
|
246
|
+
});
|
|
247
|
+
}
|
|
117
248
|
}
|
|
118
249
|
}
|
|
119
250
|
|
|
120
251
|
(_editStore$insertList = editStore.insertList).unshift.apply(_editStore$insertList, _toConsumableArray(newRecords));
|
|
121
252
|
|
|
122
253
|
this.scrollYLoad = !treeConfig && sYOpts.gt > -1 && sYOpts.gt < tableFullData.length;
|
|
123
|
-
this.handleTableData();
|
|
254
|
+
this.handleTableData(transform);
|
|
124
255
|
this.updateFooter();
|
|
125
256
|
this.cacheRowMap();
|
|
126
257
|
this.checkSelectionStatus();
|
|
@@ -152,6 +283,7 @@ var _default = {
|
|
|
152
283
|
|
|
153
284
|
var afterFullData = this.afterFullData,
|
|
154
285
|
tableFullData = this.tableFullData,
|
|
286
|
+
treeFullData = this.treeFullData,
|
|
155
287
|
treeConfig = this.treeConfig,
|
|
156
288
|
mergeList = this.mergeList,
|
|
157
289
|
editStore = this.editStore,
|
|
@@ -159,7 +291,9 @@ var _default = {
|
|
|
159
291
|
selection = this.selection,
|
|
160
292
|
isInsertByRow = this.isInsertByRow,
|
|
161
293
|
sYOpts = this.sYOpts,
|
|
162
|
-
scrollYLoad = this.scrollYLoad
|
|
294
|
+
scrollYLoad = this.scrollYLoad,
|
|
295
|
+
treeOpts = this.treeOpts;
|
|
296
|
+
var transform = treeOpts.transform;
|
|
163
297
|
var actived = editStore.actived,
|
|
164
298
|
removeList = editStore.removeList,
|
|
165
299
|
insertList = editStore.insertList;
|
|
@@ -196,31 +330,55 @@ var _default = {
|
|
|
196
330
|
this.afterFullData = [];
|
|
197
331
|
this.clearMergeCells();
|
|
198
332
|
} else {
|
|
199
|
-
|
|
200
|
-
|
|
333
|
+
// 如果为虚拟树
|
|
334
|
+
if (treeConfig && transform) {
|
|
335
|
+
rows.forEach(function (row) {
|
|
336
|
+
var rowid = getRowid(_this2, row);
|
|
337
|
+
|
|
338
|
+
var matchObj = _xeUtils.default.findTree(treeFullData, function (item) {
|
|
339
|
+
return rowid === getRowid(_this2, item);
|
|
340
|
+
}, treeOpts);
|
|
341
|
+
|
|
342
|
+
if (matchObj) {
|
|
343
|
+
var rItems = matchObj.items.splice(matchObj.index, 1);
|
|
344
|
+
rest.push(rItems[0]);
|
|
345
|
+
}
|
|
201
346
|
|
|
202
|
-
|
|
203
|
-
var rItems = tableFullData.splice(tfIndex, 1);
|
|
204
|
-
rest.push(rItems[0]);
|
|
205
|
-
}
|
|
347
|
+
var afIndex = afterFullData.indexOf(row);
|
|
206
348
|
|
|
207
|
-
|
|
349
|
+
if (afIndex > -1) {
|
|
350
|
+
afterFullData.splice(afIndex, 1);
|
|
351
|
+
}
|
|
208
352
|
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
353
|
+
_this2.updateVirtualTreeData();
|
|
354
|
+
});
|
|
355
|
+
} else {
|
|
356
|
+
rows.forEach(function (row) {
|
|
357
|
+
var tfIndex = tableFullData.indexOf(row);
|
|
214
358
|
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
359
|
+
if (tfIndex > -1) {
|
|
360
|
+
var rItems = tableFullData.splice(tfIndex, 1);
|
|
361
|
+
rest.push(rItems[0]);
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
var afIndex = afterFullData.indexOf(row);
|
|
365
|
+
|
|
366
|
+
if (afIndex > -1) {
|
|
367
|
+
// 刷新单元格合并
|
|
368
|
+
mergeList.forEach(function (mergeItem) {
|
|
369
|
+
var mergeRowIndex = mergeItem.row,
|
|
370
|
+
mergeRowspan = mergeItem.rowspan;
|
|
371
|
+
|
|
372
|
+
if (mergeRowIndex > afIndex) {
|
|
373
|
+
mergeItem.row = mergeRowIndex - 1;
|
|
374
|
+
} else if (mergeRowIndex + mergeRowspan > afIndex) {
|
|
375
|
+
mergeItem.rowspan = mergeRowspan - 1;
|
|
376
|
+
}
|
|
377
|
+
});
|
|
378
|
+
afterFullData.splice(afIndex, 1);
|
|
379
|
+
}
|
|
380
|
+
});
|
|
381
|
+
}
|
|
224
382
|
} // 如果当前行被激活编辑,则清除激活状态
|
|
225
383
|
|
|
226
384
|
|
|
@@ -237,7 +395,7 @@ var _default = {
|
|
|
237
395
|
}
|
|
238
396
|
});
|
|
239
397
|
this.scrollYLoad = !treeConfig && sYOpts.gt > -1 && sYOpts.gt < tableFullData.length;
|
|
240
|
-
this.handleTableData();
|
|
398
|
+
this.handleTableData(transform);
|
|
241
399
|
this.updateFooter();
|
|
242
400
|
this.cacheRowMap();
|
|
243
401
|
this.checkSelectionStatus();
|
|
@@ -314,15 +472,36 @@ var _default = {
|
|
|
314
472
|
* 获取新增的临时数据
|
|
315
473
|
*/
|
|
316
474
|
_getInsertRecords: function _getInsertRecords() {
|
|
475
|
+
var _this6 = this;
|
|
476
|
+
|
|
477
|
+
var treeConfig = this.treeConfig,
|
|
478
|
+
treeFullData = this.treeFullData,
|
|
479
|
+
tableFullData = this.tableFullData,
|
|
480
|
+
treeOpts = this.treeOpts;
|
|
317
481
|
var insertList = this.editStore.insertList;
|
|
318
482
|
var insertRecords = [];
|
|
319
483
|
|
|
320
484
|
if (insertList.length) {
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
485
|
+
// 如果为虚拟树
|
|
486
|
+
if (treeConfig && treeOpts.transform) {
|
|
487
|
+
insertList.forEach(function (row) {
|
|
488
|
+
var rowid = getRowid(_this6, row);
|
|
489
|
+
|
|
490
|
+
var matchObj = _xeUtils.default.findTree(treeFullData, function (item) {
|
|
491
|
+
return rowid === getRowid(_this6, item);
|
|
492
|
+
}, treeOpts);
|
|
493
|
+
|
|
494
|
+
if (matchObj) {
|
|
495
|
+
insertRecords.push(row);
|
|
496
|
+
}
|
|
497
|
+
});
|
|
498
|
+
} else {
|
|
499
|
+
insertList.forEach(function (row) {
|
|
500
|
+
if (tableFullData.indexOf(row) > -1) {
|
|
501
|
+
insertRecords.push(row);
|
|
502
|
+
}
|
|
503
|
+
});
|
|
504
|
+
}
|
|
326
505
|
}
|
|
327
506
|
|
|
328
507
|
return insertRecords;
|
|
@@ -375,7 +554,7 @@ var _default = {
|
|
|
375
554
|
* 处理激活编辑
|
|
376
555
|
*/
|
|
377
556
|
handleActived: function handleActived(params, evnt) {
|
|
378
|
-
var
|
|
557
|
+
var _this7 = this;
|
|
379
558
|
|
|
380
559
|
var editStore = this.editStore,
|
|
381
560
|
editOpts = this.editOpts,
|
|
@@ -412,14 +591,14 @@ var _default = {
|
|
|
412
591
|
|
|
413
592
|
if (mode === 'row') {
|
|
414
593
|
tableColumn.forEach(function (column) {
|
|
415
|
-
return
|
|
594
|
+
return _this7._getColumnModel(row, column);
|
|
416
595
|
});
|
|
417
596
|
} else {
|
|
418
597
|
this._getColumnModel(row, column);
|
|
419
598
|
}
|
|
420
599
|
|
|
421
600
|
this.$nextTick(function () {
|
|
422
|
-
|
|
601
|
+
_this7.handleFocus(params, evnt);
|
|
423
602
|
});
|
|
424
603
|
}
|
|
425
604
|
|
|
@@ -454,7 +633,7 @@ var _default = {
|
|
|
454
633
|
actived.args = params;
|
|
455
634
|
actived.column = column;
|
|
456
635
|
setTimeout(function () {
|
|
457
|
-
|
|
636
|
+
_this7.handleFocus(params, evnt);
|
|
458
637
|
});
|
|
459
638
|
}
|
|
460
639
|
|
|
@@ -484,7 +663,7 @@ var _default = {
|
|
|
484
663
|
}
|
|
485
664
|
},
|
|
486
665
|
_syncActivedCell: function _syncActivedCell() {
|
|
487
|
-
var
|
|
666
|
+
var _this8 = this;
|
|
488
667
|
|
|
489
668
|
var tableColumn = this.tableColumn,
|
|
490
669
|
editStore = this.editStore,
|
|
@@ -496,7 +675,7 @@ var _default = {
|
|
|
496
675
|
if (row || column) {
|
|
497
676
|
if (editOpts.mode === 'row') {
|
|
498
677
|
tableColumn.forEach(function (column) {
|
|
499
|
-
return
|
|
678
|
+
return _this8._setColumnModel(row, column);
|
|
500
679
|
});
|
|
501
680
|
} else {
|
|
502
681
|
this._setColumnModel(row, column);
|
|
@@ -613,26 +792,26 @@ var _default = {
|
|
|
613
792
|
* 激活单元格编辑
|
|
614
793
|
*/
|
|
615
794
|
_setActiveCell: function _setActiveCell(row, fieldOrColumn) {
|
|
616
|
-
var
|
|
795
|
+
var _this9 = this;
|
|
617
796
|
|
|
618
797
|
var editConfig = this.editConfig;
|
|
619
798
|
var column = _xeUtils.default.isString(fieldOrColumn) ? this.getColumnByField(fieldOrColumn) : fieldOrColumn;
|
|
620
799
|
|
|
621
800
|
if (row && column && (0, _tools.isEnableConf)(editConfig) && (0, _tools.isEnableConf)(column.editRender)) {
|
|
622
801
|
return this.scrollToRow(row, true).then(function () {
|
|
623
|
-
var cell =
|
|
802
|
+
var cell = _this9.getCell(row, column);
|
|
624
803
|
|
|
625
804
|
if (cell) {
|
|
626
|
-
|
|
805
|
+
_this9.handleActived({
|
|
627
806
|
row: row,
|
|
628
|
-
rowIndex:
|
|
807
|
+
rowIndex: _this9.getRowIndex(row),
|
|
629
808
|
column: column,
|
|
630
|
-
columnIndex:
|
|
809
|
+
columnIndex: _this9.getColumnIndex(column),
|
|
631
810
|
cell: cell,
|
|
632
|
-
$table:
|
|
811
|
+
$table: _this9
|
|
633
812
|
});
|
|
634
813
|
|
|
635
|
-
|
|
814
|
+
_this9.lastCallTime = Date.now();
|
|
636
815
|
}
|
|
637
816
|
});
|
|
638
817
|
}
|
|
@@ -672,7 +851,7 @@ var _default = {
|
|
|
672
851
|
* 处理选中源
|
|
673
852
|
*/
|
|
674
853
|
handleSelected: function handleSelected(params, evnt) {
|
|
675
|
-
var
|
|
854
|
+
var _this10 = this;
|
|
676
855
|
|
|
677
856
|
var mouseConfig = this.mouseConfig,
|
|
678
857
|
mouseOpts = this.mouseOpts,
|
|
@@ -687,31 +866,31 @@ var _default = {
|
|
|
687
866
|
var selectMethod = function selectMethod() {
|
|
688
867
|
if (isMouseSelected && (selected.row !== row || selected.column !== column)) {
|
|
689
868
|
if (actived.row !== row || (editOpts.mode === 'cell' ? actived.column !== column : false)) {
|
|
690
|
-
|
|
869
|
+
_this10.clearActived(evnt);
|
|
691
870
|
|
|
692
|
-
|
|
871
|
+
_this10.clearSelected(evnt);
|
|
693
872
|
|
|
694
|
-
|
|
873
|
+
_this10.clearCellAreas(evnt);
|
|
695
874
|
|
|
696
|
-
|
|
875
|
+
_this10.clearCopyCellArea(evnt);
|
|
697
876
|
|
|
698
877
|
selected.args = params;
|
|
699
878
|
selected.row = row;
|
|
700
879
|
selected.column = column;
|
|
701
880
|
|
|
702
881
|
if (isMouseSelected) {
|
|
703
|
-
|
|
882
|
+
_this10.addColSdCls();
|
|
704
883
|
}
|
|
705
884
|
|
|
706
|
-
|
|
885
|
+
_this10.focus();
|
|
707
886
|
|
|
708
887
|
if (evnt) {
|
|
709
|
-
|
|
888
|
+
_this10.emitEvent('cell-selected', params, evnt);
|
|
710
889
|
}
|
|
711
890
|
}
|
|
712
891
|
}
|
|
713
892
|
|
|
714
|
-
return
|
|
893
|
+
return _this10.$nextTick();
|
|
715
894
|
};
|
|
716
895
|
|
|
717
896
|
return selectMethod();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_tools=require("../../tools"),_dom=require("../../tools/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Map"===(r="Object"===r&&e.constructor?e.constructor.name:r)||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=new Array(t);r<t;r++)o[r]=e[r];return o}var _default={methods:{_insert:function(e){return this.insertAt(e)},_insertAt:function(e,t){var r=this,o=this.mergeList,l=this.afterFullData,i=this.editStore,n=this.sYOpts,s=this.scrollYLoad,a=this.tableFullData,c=this.treeConfig,u=(e=!_xeUtils.default.isArray(e)?[e]:e).map(function(e){return r.defineField(Object.assign({},e))});if(t)if(-1===t)l.push.apply(l,_toConsumableArray(u)),a.push.apply(a,_toConsumableArray(u)),o.forEach(function(e){var t=e.row,r=e.rowspan;t+r>l.length&&(e.rowspan=r+u.length)});else{if(c)throw new Error(_tools.UtilTools.getLog("vxe.error.noTree",["insert"]));var d=l.indexOf(t);if(-1===d)throw new Error(_tools.UtilTools.error("vxe.error.unableInsert"));l.splice.apply(l,[d,0].concat(_toConsumableArray(u))),a.splice.apply(a,[a.indexOf(t),0].concat(_toConsumableArray(u))),o.forEach(function(e){var t=e.row,r=e.rowspan;d<t?e.row=t+u.length:d<t+r&&(e.rowspan=r+u.length)})}else l.unshift.apply(l,_toConsumableArray(u)),a.unshift.apply(a,_toConsumableArray(u)),o.forEach(function(e){var t=e.row;0<t&&(e.row=t+u.length)});return(i=i.insertList).unshift.apply(i,_toConsumableArray(u)),this.scrollYLoad=!c&&-1<n.gt&&n.gt<a.length,this.handleTableData(),this.updateFooter(),this.cacheRowMap(),this.checkSelectionStatus(),s&&this.updateScrollYSpace(),this.$nextTick().then(function(){return r.updateCellAreas(),r.recalculate()}).then(function(){return{row:u.length?u[u.length-1]:null,rows:u}})},_remove:function(e){var t=this,r=this.afterFullData,l=this.tableFullData,o=this.treeConfig,i=this.mergeList,n=this.editStore,s=this.checkboxOpts,a=this.selection,c=this.isInsertByRow,u=this.sYOpts,d=this.scrollYLoad,h=n.actived,f=n.removeList,m=n.insertList,s=s.checkField,v=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=l,e.forEach(function(e){c(e)||f.push(e)}),s||e.forEach(function(e){e=a.indexOf(e);-1<e&&a.splice(e,1)}),l===e?(e=v=l.slice(0),this.tableFullData=[],this.afterFullData=[],this.clearMergeCells()):e.forEach(function(e){var t=l.indexOf(e);-1<t&&(t=l.splice(t,1),v.push(t[0]));var o=r.indexOf(e);-1<o&&(i.forEach(function(e){var t=e.row,r=e.rowspan;o<t?e.row=t-1:o<t+r&&(e.rowspan=r-1)}),r.splice(o,1))}),h.row&&-1<e.indexOf(h.row)&&this.clearActived(),e.forEach(function(e){e=m.indexOf(e);-1<e&&m.splice(e,1)}),this.scrollYLoad=!o&&-1<u.gt&&u.gt<l.length,this.handleTableData(),this.updateFooter(),this.cacheRowMap(),this.checkSelectionStatus(),d&&this.updateScrollYSpace(),this.$nextTick().then(function(){return t.updateCellAreas(),t.recalculate()}).then(function(){return{row:v.length?v[v.length-1]:null,rows:v}})},_removeCheckboxRow:function(){var t=this;return this.remove(this.getCheckboxRecords()).then(function(e){return t.clearCheckboxRow(),e})},_removeRadioRow:function(){var t=this,e=this.getRadioRecord();return this.remove(e||[]).then(function(e){return t.clearRadioRow(),e})},_removeCurrentRow:function(){var t=this,e=this.getCurrentRecord();return this.remove(e||[]).then(function(e){return t.clearCurrentRow(),e})},_getRecordset:function(){return{insertRecords:this.getInsertRecords(),removeRecords:this.getRemoveRecords(),updateRecords:this.getUpdateRecords()}},_getInsertRecords:function(){var t=this.editStore.insertList,r=[];return t.length&&this.tableFullData.forEach(function(e){-1<t.indexOf(e)&&r.push(e)}),r},_getRemoveRecords:function(){return this.editStore.removeList},_getUpdateRecords:function(){var e=this.keepSource,t=this.tableFullData,r=this.isUpdateByRow,o=this.treeConfig,l=this.treeOpts,i=this.editStore;if(e){e=i.actived,i=e.row,e=e.column;return(i||e)&&this._syncActivedCell(),o?_xeUtils.default.filterTree(t,function(e){return r(e)},l):t.filter(function(e){return r(e)})}return[]},handleActived:function(e,t){var r,o=this,l=this.editStore,i=this.editOpts,n=this.tableColumn,s=this.editConfig,a=this.mouseConfig,c=i.mode,u=i.activeMethod,d=l.actived,h=e.row,f=e.column,i=f.editRender,l=e.cell=e.cell||this.getCell(h,f);return(0,_tools.isEnableConf)(s)&&(0,_tools.isEnableConf)(i)&&l&&(d.row!==h||"cell"===c&&d.column!==f?(r="edit-disabled",u&&!u(e)||(a&&(this.clearSelected(t),this.clearCellAreas(t),this.clearCopyCellArea(t)),this.closeTooltip(),this.clearActived(t),r="edit-actived",f.renderHeight=l.offsetHeight,d.args=e,d.row=h,d.column=f,"row"===c?n.forEach(function(e){return o._getColumnModel(h,e)}):this._getColumnModel(h,f),this.$nextTick(function(){o.handleFocus(e,t)})),this.emitEvent(r,{row:h,rowIndex:this.getRowIndex(h),$rowIndex:this.getVMRowIndex(h),column:f,columnIndex:this.getColumnIndex(f),$columnIndex:this.getVMColumnIndex(f)},t)):(r=d.column,a&&(this.clearSelected(t),this.clearCellAreas(t),this.clearCopyCellArea(t)),r!==f&&((a=r.model).update&&_tools.UtilTools.setCellValue(h,r,a.value),this.clearValidate()),f.renderHeight=l.offsetHeight,d.args=e,d.column=f,setTimeout(function(){o.handleFocus(e,t)})),this.focus()),this.$nextTick()},_getColumnModel:function(e,t){var r=t.model;t.editRender&&(r.value=_tools.UtilTools.getCellValue(e,t),r.update=!1)},_setColumnModel:function(e,t){var r=t.model;t.editRender&&r.update&&(_tools.UtilTools.setCellValue(e,t,r.value),r.update=!1,r.value=null)},_syncActivedCell:function(){var t=this,e=this.tableColumn,r=this.editStore,o=this.editOpts,r=r.actived,l=r.row,r=r.column;(l||r)&&("row"===o.mode?e.forEach(function(e){return t._setColumnModel(l,e)}):this._setColumnModel(l,r))},_clearActived:function(e){var t=this.editStore.actived,r=t.row,o=t.column;return(r||o)&&(this._syncActivedCell(),t.args=null,t.row=null,t.column=null,this.updateFooter(),this.emitEvent("edit-closed",{row:r,rowIndex:this.getRowIndex(r),$rowIndex:this.getVMRowIndex(r),column:o,columnIndex:this.getColumnIndex(o),$columnIndex:this.getVMColumnIndex(o)},e)),(_vXETable.default._valid?this.clearValidate():this.$nextTick()).then(this.recalculate)},_getActiveRecord:function(){var e=this.$el,t=this.editStore,r=this.afterFullData,o=t.actived,t=o.args,o=o.row;return t&&-1<r.indexOf(o)&&e.querySelectorAll(".vxe-body--column.col--actived").length?Object.assign({},t):null},_isActiveByRow:function(e){return this.editStore.actived.row===e},handleFocus:function(e){var t,r,o=e.row,l=e.column,i=e.cell,n=l.editRender;(0,_tools.isEnableConf)(n)&&(t=_vXETable.default.renderer.get(n.name),e=n.autofocus,n=n.autoselect,(r=!(r=e?i.querySelector(e):r)&&t&&t.autofocus?i.querySelector(t.autofocus):r)?(r.focus(),n?r.select():_dom.browse.msie&&((r=r.createTextRange()).collapse(!1),r.select())):this.scrollToRow(o,l))},_setActiveRow:function(e){return this.setActiveCell(e,_xeUtils.default.find(this.visibleColumn,function(e){return(0,_tools.isEnableConf)(e.editRender)}))},_setActiveCell:function(t,e){var r=this,o=this.editConfig,l=_xeUtils.default.isString(e)?this.getColumnByField(e):e;return t&&l&&(0,_tools.isEnableConf)(o)&&(0,_tools.isEnableConf)(l.editRender)?this.scrollToRow(t,!0).then(function(){var e=r.getCell(t,l);e&&(r.handleActived({row:t,rowIndex:r.getRowIndex(t),column:l,columnIndex:r.getColumnIndex(l),cell:e,$table:r}),r.lastCallTime=Date.now())}):this.$nextTick()},_setSelectCell:function(e,t){var r=this.tableData,o=this.editOpts,l=this.visibleColumn,t=_xeUtils.default.isString(t)?this.getColumnByField(t):t;return e&&t&&"manual"!==o.trigger&&(-1<(o=r.indexOf(e))&&(r=this.getCell(e,t),r={row:e,rowIndex:o,column:t,columnIndex:l.indexOf(t),cell:r},this.handleSelected(r,{}))),this.$nextTick()},handleSelected:function(e,t){var r=this,o=this.mouseConfig,l=this.mouseOpts,i=this.editOpts,n=this.editStore,s=n.actived,a=n.selected,c=e.row,u=e.column,d=o&&l.selected;return!d||a.row===c&&a.column===u||(s.row!==c||"cell"===i.mode&&s.column!==u)&&(r.clearActived(t),r.clearSelected(t),r.clearCellAreas(t),r.clearCopyCellArea(t),a.args=e,a.row=c,a.column=u,d&&r.addColSdCls(),r.focus(),t&&r.emitEvent("cell-selected",e,t)),r.$nextTick()},_getSelectedCell:function(){var e=this.editStore.selected,t=e.args,e=e.column;return t&&e?Object.assign({},t):null},_clearSelected:function(){var e=this.editStore.selected;return e.row=null,e.column=null,this.reColTitleSdCls(),this.reColSdCls(),this.$nextTick()},reColTitleSdCls:function(){var e=this.elemStore["main-header-list"];e&&_xeUtils.default.arrayEach(e.querySelectorAll(".col--title-selected"),function(e){return _tools.DomTools.removeClass(e,"col--title-selected")})},reColSdCls:function(){var e=this.$el.querySelector(".col--selected");e&&_tools.DomTools.removeClass(e,"col--selected")},addColSdCls:function(){var e=this.editStore.selected,t=e.row,e=e.column;this.reColSdCls(),t&&e&&((e=this.getCell(t,e))&&_tools.DomTools.addClass(e,"col--selected"))}}};exports.default=_default;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_tools=require("../../tools"),_dom=require("../../tools/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Map"===(r="Object"===r&&e.constructor?e.constructor.name:r)||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=new Array(t);r<t;r++)o[r]=e[r];return o}var getRowid=_tools.UtilTools.getRowid;function insertTreeRow(n,e,t){var s=n.treeFullData,a=n.afterFullData,u=n.fullDataRowIdData,c=n.fullAllDataRowIdData,d=n.treeOpts,h=t?"push":"unshift";e.forEach(function(e){var t,r,o=e[d.parentField],l=getRowid(n,e),i=o?_xeUtils.default.findTree(s,function(e){return o===e[d.rowField]},d):null;i?(t=i.item,i=(r=c[getRowid(n,t)])?r.level:0,r=t[d.children],(r=!_xeUtils.default.isArray(r)?t[d.children]=[]:r)[h](e),i={row:e,rowid:l,index:-1,_index:-1,$index:-1,items:r,parent:parent,level:i+1},u[l]=i,c[l]=i):("development"===process.env.NODE_ENV&&o&&_tools.UtilTools.warn("vxe.error.unableInsert"),a[h](e),s[h](e),e={row:e,rowid:l,index:-1,_index:-1,$index:-1,items:s,parent:null,level:0},u[l]=e,c[l]=e)}),n.updateVirtualTreeData()}var _default={methods:{_insert:function(e){return this.insertAt(e)},_insertAt:function(e,t){var o=this,r=this.treeFullData,l=this.mergeList,i=this.afterFullData,n=this.editStore,s=this.sYOpts,a=this.scrollYLoad,u=this.tableFullData,c=this.treeConfig,d=this.fullDataRowIdData,h=this.fullAllDataRowIdData,f=this.treeOpts,p=f.transform,m=(e=!_xeUtils.default.isArray(e)?[e]:e).map(function(e){return o.defineField(Object.assign({},e))});if(t)if(-1===t)c&&p?insertTreeRow(this,m,!0):(i.push.apply(i,_toConsumableArray(m)),u.push.apply(u,_toConsumableArray(m)),l.forEach(function(e){var t=e.row,r=e.rowspan;t+r>i.length&&(e.rowspan=r+m.length)}));else if(c&&p){var v,w,_,g=_xeUtils.default.findTree(r,function(e){return t[f.rowField]===e[f.rowField]},f);g?(v=g.parent,w=g.items,r=h[getRowid(this,v)],_=r?r.level:0,m.forEach(function(e,t){var r=getRowid(o,e);"development"===process.env.NODE_ENV&&e[f.parentField]&&v&&e[f.parentField]!==v[f.rowField]&&_tools.UtilTools.error("vxe.error.errProp",["".concat(f.parentField,"=").concat(e[f.parentField]),"".concat(f.parentField,"=").concat(v[f.rowField])]),v&&(e[f.parentField]=v[f.rowField]),w.splice(g.index+t,0,e);e={row:e,rowid:r,index:-1,_index:-1,$index:-1,items:w,parent:v,level:_+1};d[r]=e,h[r]=e}),this.updateVirtualTreeData()):("development"===process.env.NODE_ENV&&_tools.UtilTools.warn("vxe.error.unableInsert"),insertTreeRow(this,m,!0))}else{if(c)throw new Error(_tools.UtilTools.getLog("vxe.error.noTree",["insert"]));var C=i.indexOf(t);if(-1===C)throw new Error(_tools.UtilTools.error("vxe.error.unableInsert"));i.splice.apply(i,[C,0].concat(_toConsumableArray(m))),u.splice.apply(u,[u.indexOf(t),0].concat(_toConsumableArray(m))),l.forEach(function(e){var t=e.row,r=e.rowspan;C<t?e.row=t+m.length:C<t+r&&(e.rowspan=r+m.length)})}else c&&p?insertTreeRow(this,m,!1):(i.unshift.apply(i,_toConsumableArray(m)),u.unshift.apply(u,_toConsumableArray(m)),l.forEach(function(e){var t=e.row;0<t&&(e.row=t+m.length)}));return(n=n.insertList).unshift.apply(n,_toConsumableArray(m)),this.scrollYLoad=!c&&-1<s.gt&&s.gt<u.length,this.handleTableData(p),this.updateFooter(),this.cacheRowMap(),this.checkSelectionStatus(),a&&this.updateScrollYSpace(),this.$nextTick().then(function(){return o.updateCellAreas(),o.recalculate()}).then(function(){return{row:m.length?m[m.length-1]:null,rows:m}})},_remove:function(e){var o=this,l=this.afterFullData,r=this.tableFullData,i=this.treeFullData,t=this.treeConfig,n=this.mergeList,s=this.editStore,a=this.checkboxOpts,u=this.selection,c=this.isInsertByRow,d=this.sYOpts,h=this.scrollYLoad,f=this.treeOpts,p=f.transform,m=s.actived,v=s.removeList,w=s.insertList,a=a.checkField,_=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=r,e.forEach(function(e){c(e)||v.push(e)}),a||e.forEach(function(e){e=u.indexOf(e);-1<e&&u.splice(e,1)}),r===e?(e=_=r.slice(0),this.tableFullData=[],this.afterFullData=[],this.clearMergeCells()):t&&p?e.forEach(function(e){var t=getRowid(o,e),r=_xeUtils.default.findTree(i,function(e){return t===getRowid(o,e)},f);r&&(r=r.items.splice(r.index,1),_.push(r[0]));e=l.indexOf(e);-1<e&&l.splice(e,1),o.updateVirtualTreeData()}):e.forEach(function(e){var t=r.indexOf(e);-1<t&&(t=r.splice(t,1),_.push(t[0]));var o=l.indexOf(e);-1<o&&(n.forEach(function(e){var t=e.row,r=e.rowspan;o<t?e.row=t-1:o<t+r&&(e.rowspan=r-1)}),l.splice(o,1))}),m.row&&-1<e.indexOf(m.row)&&this.clearActived(),e.forEach(function(e){e=w.indexOf(e);-1<e&&w.splice(e,1)}),this.scrollYLoad=!t&&-1<d.gt&&d.gt<r.length,this.handleTableData(p),this.updateFooter(),this.cacheRowMap(),this.checkSelectionStatus(),h&&this.updateScrollYSpace(),this.$nextTick().then(function(){return o.updateCellAreas(),o.recalculate()}).then(function(){return{row:_.length?_[_.length-1]:null,rows:_}})},_removeCheckboxRow:function(){var t=this;return this.remove(this.getCheckboxRecords()).then(function(e){return t.clearCheckboxRow(),e})},_removeRadioRow:function(){var t=this,e=this.getRadioRecord();return this.remove(e||[]).then(function(e){return t.clearRadioRow(),e})},_removeCurrentRow:function(){var t=this,e=this.getCurrentRecord();return this.remove(e||[]).then(function(e){return t.clearCurrentRow(),e})},_getRecordset:function(){return{insertRecords:this.getInsertRecords(),removeRecords:this.getRemoveRecords(),updateRecords:this.getUpdateRecords()}},_getInsertRecords:function(){var r=this,e=this.treeConfig,o=this.treeFullData,t=this.tableFullData,l=this.treeOpts,i=this.editStore.insertList,n=[];return i.length&&(e&&l.transform?i.forEach(function(e){var t=getRowid(r,e);_xeUtils.default.findTree(o,function(e){return t===getRowid(r,e)},l)&&n.push(e)}):i.forEach(function(e){-1<t.indexOf(e)&&n.push(e)})),n},_getRemoveRecords:function(){return this.editStore.removeList},_getUpdateRecords:function(){var e=this.keepSource,t=this.tableFullData,r=this.isUpdateByRow,o=this.treeConfig,l=this.treeOpts,i=this.editStore;if(e){e=i.actived,i=e.row,e=e.column;return(i||e)&&this._syncActivedCell(),o?_xeUtils.default.filterTree(t,function(e){return r(e)},l):t.filter(function(e){return r(e)})}return[]},handleActived:function(e,t){var r,o=this,l=this.editStore,i=this.editOpts,n=this.tableColumn,s=this.editConfig,a=this.mouseConfig,u=i.mode,c=i.activeMethod,d=l.actived,h=e.row,f=e.column,i=f.editRender,l=e.cell=e.cell||this.getCell(h,f);return(0,_tools.isEnableConf)(s)&&(0,_tools.isEnableConf)(i)&&l&&(d.row!==h||"cell"===u&&d.column!==f?(r="edit-disabled",c&&!c(e)||(a&&(this.clearSelected(t),this.clearCellAreas(t),this.clearCopyCellArea(t)),this.closeTooltip(),this.clearActived(t),r="edit-actived",f.renderHeight=l.offsetHeight,d.args=e,d.row=h,d.column=f,"row"===u?n.forEach(function(e){return o._getColumnModel(h,e)}):this._getColumnModel(h,f),this.$nextTick(function(){o.handleFocus(e,t)})),this.emitEvent(r,{row:h,rowIndex:this.getRowIndex(h),$rowIndex:this.getVMRowIndex(h),column:f,columnIndex:this.getColumnIndex(f),$columnIndex:this.getVMColumnIndex(f)},t)):(r=d.column,a&&(this.clearSelected(t),this.clearCellAreas(t),this.clearCopyCellArea(t)),r!==f&&((a=r.model).update&&_tools.UtilTools.setCellValue(h,r,a.value),this.clearValidate()),f.renderHeight=l.offsetHeight,d.args=e,d.column=f,setTimeout(function(){o.handleFocus(e,t)})),this.focus()),this.$nextTick()},_getColumnModel:function(e,t){var r=t.model;t.editRender&&(r.value=_tools.UtilTools.getCellValue(e,t),r.update=!1)},_setColumnModel:function(e,t){var r=t.model;t.editRender&&r.update&&(_tools.UtilTools.setCellValue(e,t,r.value),r.update=!1,r.value=null)},_syncActivedCell:function(){var t=this,e=this.tableColumn,r=this.editStore,o=this.editOpts,r=r.actived,l=r.row,r=r.column;(l||r)&&("row"===o.mode?e.forEach(function(e){return t._setColumnModel(l,e)}):this._setColumnModel(l,r))},_clearActived:function(e){var t=this.editStore.actived,r=t.row,o=t.column;return(r||o)&&(this._syncActivedCell(),t.args=null,t.row=null,t.column=null,this.updateFooter(),this.emitEvent("edit-closed",{row:r,rowIndex:this.getRowIndex(r),$rowIndex:this.getVMRowIndex(r),column:o,columnIndex:this.getColumnIndex(o),$columnIndex:this.getVMColumnIndex(o)},e)),(_vXETable.default._valid?this.clearValidate():this.$nextTick()).then(this.recalculate)},_getActiveRecord:function(){var e=this.$el,t=this.editStore,r=this.afterFullData,o=t.actived,t=o.args,o=o.row;return t&&-1<r.indexOf(o)&&e.querySelectorAll(".vxe-body--column.col--actived").length?Object.assign({},t):null},_isActiveByRow:function(e){return this.editStore.actived.row===e},handleFocus:function(e){var t,r,o=e.row,l=e.column,i=e.cell,n=l.editRender;(0,_tools.isEnableConf)(n)&&(t=_vXETable.default.renderer.get(n.name),e=n.autofocus,n=n.autoselect,(r=!(r=e?i.querySelector(e):r)&&t&&t.autofocus?i.querySelector(t.autofocus):r)?(r.focus(),n?r.select():_dom.browse.msie&&((r=r.createTextRange()).collapse(!1),r.select())):this.scrollToRow(o,l))},_setActiveRow:function(e){return this.setActiveCell(e,_xeUtils.default.find(this.visibleColumn,function(e){return(0,_tools.isEnableConf)(e.editRender)}))},_setActiveCell:function(t,e){var r=this,o=this.editConfig,l=_xeUtils.default.isString(e)?this.getColumnByField(e):e;return t&&l&&(0,_tools.isEnableConf)(o)&&(0,_tools.isEnableConf)(l.editRender)?this.scrollToRow(t,!0).then(function(){var e=r.getCell(t,l);e&&(r.handleActived({row:t,rowIndex:r.getRowIndex(t),column:l,columnIndex:r.getColumnIndex(l),cell:e,$table:r}),r.lastCallTime=Date.now())}):this.$nextTick()},_setSelectCell:function(e,t){var r=this.tableData,o=this.editOpts,l=this.visibleColumn,t=_xeUtils.default.isString(t)?this.getColumnByField(t):t;return e&&t&&"manual"!==o.trigger&&(-1<(o=r.indexOf(e))&&(r=this.getCell(e,t),r={row:e,rowIndex:o,column:t,columnIndex:l.indexOf(t),cell:r},this.handleSelected(r,{}))),this.$nextTick()},handleSelected:function(e,t){var r=this,o=this.mouseConfig,l=this.mouseOpts,i=this.editOpts,n=this.editStore,s=n.actived,a=n.selected,u=e.row,c=e.column,d=o&&l.selected;return!d||a.row===u&&a.column===c||(s.row!==u||"cell"===i.mode&&s.column!==c)&&(r.clearActived(t),r.clearSelected(t),r.clearCellAreas(t),r.clearCopyCellArea(t),a.args=e,a.row=u,a.column=c,d&&r.addColSdCls(),r.focus(),t&&r.emitEvent("cell-selected",e,t)),r.$nextTick()},_getSelectedCell:function(){var e=this.editStore.selected,t=e.args,e=e.column;return t&&e?Object.assign({},t):null},_clearSelected:function(){var e=this.editStore.selected;return e.row=null,e.column=null,this.reColTitleSdCls(),this.reColSdCls(),this.$nextTick()},reColTitleSdCls:function(){var e=this.elemStore["main-header-list"];e&&_xeUtils.default.arrayEach(e.querySelectorAll(".col--title-selected"),function(e){return _tools.DomTools.removeClass(e,"col--title-selected")})},reColSdCls:function(){var e=this.$el.querySelector(".col--selected");e&&_tools.DomTools.removeClass(e,"col--selected")},addColSdCls:function(){var e=this.editStore.selected,t=e.row,e=e.column;this.reColSdCls(),t&&e&&((e=this.getCell(t,e))&&_tools.DomTools.addClass(e,"col--selected"))}}};exports.default=_default;
|
package/lib/header/src/header.js
CHANGED
|
@@ -193,7 +193,7 @@ var _default = {
|
|
|
193
193
|
showEllipsis = hasEllipsis = true;
|
|
194
194
|
}
|
|
195
195
|
|
|
196
|
-
if (highlightCurrentColumn || tableListeners['header-cell-click'] || sortOpts.trigger === 'cell') {
|
|
196
|
+
if (columnOpts.isCurrent || highlightCurrentColumn || tableListeners['header-cell-click'] || sortOpts.trigger === 'cell') {
|
|
197
197
|
thOns.click = function (evnt) {
|
|
198
198
|
return $xetable.triggerHeaderCellClickEvent(evnt, params);
|
|
199
199
|
};
|