vxe-table 4.1.4 → 4.1.7

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.
Files changed (39) hide show
  1. package/es/edit/src/hook.js +189 -69
  2. package/es/form/src/form.js +2 -2
  3. package/es/input/src/input.js +8 -2
  4. package/es/table/src/body.js +6 -3
  5. package/es/table/src/props.js +6 -6
  6. package/es/table/src/table.js +53 -42
  7. package/es/v-x-e-table/src/conf.js +4 -1
  8. package/es/validator/src/hook.js +3 -3
  9. package/lib/edit/src/hook.js +243 -70
  10. package/lib/edit/src/hook.min.js +1 -1
  11. package/lib/form/src/form.js +2 -2
  12. package/lib/form/src/form.min.js +1 -1
  13. package/lib/index.umd.js +340 -224
  14. package/lib/index.umd.min.js +2 -1
  15. package/lib/input/src/input.js +10 -2
  16. package/lib/input/src/input.min.js +1 -1
  17. package/lib/table/src/body.js +6 -3
  18. package/lib/table/src/body.min.js +1 -1
  19. package/lib/table/src/props.js +6 -6
  20. package/lib/table/src/table.js +57 -45
  21. package/lib/table/src/table.min.js +1 -1
  22. package/lib/v-x-e-table/src/conf.js +4 -1
  23. package/lib/v-x-e-table/src/conf.min.js +1 -1
  24. package/lib/validator/src/hook.js +3 -3
  25. package/lib/validator/src/hook.min.js +1 -1
  26. package/package.json +3 -26
  27. package/packages/edit/src/hook.ts +183 -69
  28. package/packages/form/src/form.ts +2 -2
  29. package/packages/input/src/input.ts +9 -2
  30. package/packages/table/src/body.ts +6 -3
  31. package/packages/table/src/props.ts +6 -6
  32. package/packages/table/src/table.ts +52 -40
  33. package/packages/v-x-e-table/src/conf.ts +4 -1
  34. package/packages/v-x-e-table/src/renderer.ts +1 -1
  35. package/packages/validator/src/hook.ts +3 -3
  36. package/types/edit.d.ts +6 -3
  37. package/types/plugins/pro.d.ts +6 -6
  38. package/types/table.d.ts +9 -0
  39. package/types/v-x-e-table/renderer.d.ts +4 -2
@@ -113,6 +113,69 @@ var editHook = {
113
113
  }
114
114
  }
115
115
 
116
+ function insertTreeRow(newRecords, isAppend) {
117
+ var treeFullData = internalData.treeFullData,
118
+ afterFullData = internalData.afterFullData,
119
+ fullDataRowIdData = internalData.fullDataRowIdData,
120
+ fullAllDataRowIdData = internalData.fullAllDataRowIdData;
121
+ var treeOpts = computeTreeOpts.value;
122
+ var funcName = isAppend ? 'push' : 'unshift';
123
+ newRecords.forEach(function (item) {
124
+ var parentRowId = item[treeOpts.parentField];
125
+ var rowid = (0, _util.getRowid)($xetable, item);
126
+ var matchObj = parentRowId ? _xeUtils.default.findTree(treeFullData, function (item) {
127
+ return parentRowId === item[treeOpts.rowField];
128
+ }, treeOpts) : null;
129
+
130
+ if (matchObj) {
131
+ var parentRow = matchObj.item;
132
+ var parentRest = fullAllDataRowIdData[(0, _util.getRowid)($xetable, parentRow)];
133
+ var parentLevel = parentRest ? parentRest.level : 0;
134
+ var parentChilds = parentRow[treeOpts.children];
135
+
136
+ if (!_xeUtils.default.isArray(parentChilds)) {
137
+ parentChilds = parentRow[treeOpts.children] = [];
138
+ }
139
+
140
+ parentChilds[funcName](item);
141
+ var rest = {
142
+ row: item,
143
+ rowid: rowid,
144
+ index: -1,
145
+ _index: -1,
146
+ $index: -1,
147
+ items: parentChilds,
148
+ parent: parent,
149
+ level: parentLevel + 1
150
+ };
151
+ fullDataRowIdData[rowid] = rest;
152
+ fullAllDataRowIdData[rowid] = rest;
153
+ } else {
154
+ if (process.env.NODE_ENV === 'development') {
155
+ if (parentRowId) {
156
+ (0, _utils.warnLog)('vxe.error.unableInsert');
157
+ }
158
+ }
159
+
160
+ afterFullData[funcName](item);
161
+ treeFullData[funcName](item);
162
+ var rest = {
163
+ row: item,
164
+ rowid: rowid,
165
+ index: -1,
166
+ _index: -1,
167
+ $index: -1,
168
+ items: treeFullData,
169
+ parent: null,
170
+ level: 0
171
+ };
172
+ fullDataRowIdData[rowid] = rest;
173
+ fullAllDataRowIdData[rowid] = rest;
174
+ }
175
+ });
176
+ $xetable.updateVirtualTreeData();
177
+ }
178
+
116
179
  editMethods = {
117
180
  /**
118
181
  * 往表格中插入临时数据
@@ -125,9 +188,9 @@ var editHook = {
125
188
 
126
189
  /**
127
190
  * 往表格指定行中插入临时数据
128
- * 如果 row 为空则从插入到顶部
129
- * 如果 row 为 -1 则从插入到底部
130
- * 如果 row 为有效行则插入到该行的位置
191
+ * 如果 row 为空则从插入到顶部,如果为树结构,则插入到目标节点顶部
192
+ * 如果 row 为 -1 则从插入到底部,如果为树结构,则插入到目标节点底部
193
+ * 如果 row 为有效行则插入到该行的位置,如果为树结构,则有插入到效的目标节点该行的位置
131
194
  * @param {Object/Array} records 新的数据
132
195
  * @param {Row} row 指定行
133
196
  */
@@ -138,9 +201,14 @@ var editHook = {
138
201
  var mergeList = reactData.mergeList,
139
202
  editStore = reactData.editStore,
140
203
  scrollYLoad = reactData.scrollYLoad;
141
- var afterFullData = internalData.afterFullData,
142
- tableFullData = internalData.tableFullData;
204
+ var treeFullData = internalData.treeFullData,
205
+ afterFullData = internalData.afterFullData,
206
+ tableFullData = internalData.tableFullData,
207
+ fullDataRowIdData = internalData.fullDataRowIdData,
208
+ fullAllDataRowIdData = internalData.fullAllDataRowIdData;
143
209
  var sYOpts = computeSYOpts.value;
210
+ var treeOpts = computeTreeOpts.value;
211
+ var transform = treeOpts.transform;
144
212
 
145
213
  if (!_xeUtils.default.isArray(records)) {
146
214
  records = [records];
@@ -151,53 +219,113 @@ var editHook = {
151
219
  });
152
220
 
153
221
  if (!row) {
154
- afterFullData.unshift.apply(afterFullData, newRecords);
155
- tableFullData.unshift.apply(tableFullData, newRecords); // 刷新单元格合并
156
-
157
- mergeList.forEach(function (mergeItem) {
158
- var mergeRowIndex = mergeItem.row;
159
-
160
- if (mergeRowIndex > 0) {
161
- mergeItem.row = mergeRowIndex + newRecords.length;
162
- }
163
- });
164
- } else {
165
- if (row === -1) {
166
- afterFullData.push.apply(afterFullData, newRecords);
167
- tableFullData.push.apply(tableFullData, newRecords); // 刷新单元格合并
222
+ // 如果为虚拟树
223
+ if (treeConfig && transform) {
224
+ insertTreeRow(newRecords, false);
225
+ } else {
226
+ afterFullData.unshift.apply(afterFullData, newRecords);
227
+ tableFullData.unshift.apply(tableFullData, newRecords); // 刷新单元格合并
168
228
 
169
229
  mergeList.forEach(function (mergeItem) {
170
- var mergeRowIndex = mergeItem.row,
171
- mergeRowspan = mergeItem.rowspan;
230
+ var mergeRowIndex = mergeItem.row;
172
231
 
173
- if (mergeRowIndex + mergeRowspan > afterFullData.length) {
174
- mergeItem.rowspan = mergeRowspan + newRecords.length;
232
+ if (mergeRowIndex > 0) {
233
+ mergeItem.row = mergeRowIndex + newRecords.length;
175
234
  }
176
235
  });
177
- } else {
178
- if (treeConfig) {
179
- throw new Error((0, _utils.getLog)('vxe.error.noTree', ['insert']));
180
- }
236
+ }
237
+ } else {
238
+ if (row === -1) {
239
+ // 如果为虚拟树
240
+ if (treeConfig && transform) {
241
+ insertTreeRow(newRecords, true);
242
+ } else {
243
+ afterFullData.push.apply(afterFullData, newRecords);
244
+ tableFullData.push.apply(tableFullData, newRecords); // 刷新单元格合并
181
245
 
182
- var afIndex_1 = $xetable.findRowIndexOf(afterFullData, row);
246
+ mergeList.forEach(function (mergeItem) {
247
+ var mergeRowIndex = mergeItem.row,
248
+ mergeRowspan = mergeItem.rowspan;
183
249
 
184
- if (afIndex_1 === -1) {
185
- throw new Error((0, _utils.errLog)('vxe.error.unableInsert'));
250
+ if (mergeRowIndex + mergeRowspan > afterFullData.length) {
251
+ mergeItem.rowspan = mergeRowspan + newRecords.length;
252
+ }
253
+ });
186
254
  }
255
+ } else {
256
+ // 如果为虚拟树
257
+ if (treeConfig && transform) {
258
+ var matchObj_1 = _xeUtils.default.findTree(treeFullData, function (item) {
259
+ return row[treeOpts.rowField] === item[treeOpts.rowField];
260
+ }, treeOpts);
261
+
262
+ if (matchObj_1) {
263
+ var parentRow_1 = matchObj_1.parent;
264
+ var parentChilds_1 = matchObj_1.items;
265
+ var parentRest = fullAllDataRowIdData[(0, _util.getRowid)($xetable, parentRow_1)];
266
+ var parentLevel_1 = parentRest ? parentRest.level : 0;
267
+ newRecords.forEach(function (item, i) {
268
+ var rowid = (0, _util.getRowid)($xetable, item);
269
+
270
+ if (process.env.NODE_ENV === 'development') {
271
+ if (item[treeOpts.parentField]) {
272
+ if (parentRow_1 && item[treeOpts.parentField] !== parentRow_1[treeOpts.rowField]) {
273
+ (0, _utils.errLog)('vxe.error.errProp', [treeOpts.parentField + "=" + item[treeOpts.parentField], treeOpts.parentField + "=" + parentRow_1[treeOpts.rowField]]);
274
+ }
275
+ }
276
+ }
277
+
278
+ if (parentRow_1) {
279
+ item[treeOpts.parentField] = parentRow_1[treeOpts.rowField];
280
+ }
281
+
282
+ parentChilds_1.splice(matchObj_1.index + i, 0, item);
283
+ var rest = {
284
+ row: item,
285
+ rowid: rowid,
286
+ index: -1,
287
+ _index: -1,
288
+ $index: -1,
289
+ items: parentChilds_1,
290
+ parent: parentRow_1,
291
+ level: parentLevel_1 + 1
292
+ };
293
+ fullDataRowIdData[rowid] = rest;
294
+ fullAllDataRowIdData[rowid] = rest;
295
+ });
296
+ $xetable.updateVirtualTreeData();
297
+ } else {
298
+ if (process.env.NODE_ENV === 'development') {
299
+ (0, _utils.warnLog)('vxe.error.unableInsert');
300
+ }
187
301
 
188
- afterFullData.splice.apply(afterFullData, __spreadArray([afIndex_1, 0], newRecords));
189
- tableFullData.splice.apply(tableFullData, __spreadArray([$xetable.findRowIndexOf(tableFullData, row), 0], newRecords)); // 刷新单元格合并
302
+ insertTreeRow(newRecords, true);
303
+ }
304
+ } else {
305
+ if (treeConfig) {
306
+ throw new Error((0, _utils.getLog)('vxe.error.noTree', ['insert']));
307
+ }
190
308
 
191
- mergeList.forEach(function (mergeItem) {
192
- var mergeRowIndex = mergeItem.row,
193
- mergeRowspan = mergeItem.rowspan;
309
+ var afIndex_1 = $xetable.findRowIndexOf(afterFullData, row);
194
310
 
195
- if (mergeRowIndex > afIndex_1) {
196
- mergeItem.row = mergeRowIndex + newRecords.length;
197
- } else if (mergeRowIndex + mergeRowspan > afIndex_1) {
198
- mergeItem.rowspan = mergeRowspan + newRecords.length;
311
+ if (afIndex_1 === -1) {
312
+ throw new Error((0, _utils.errLog)('vxe.error.unableInsert'));
199
313
  }
200
- });
314
+
315
+ afterFullData.splice.apply(afterFullData, __spreadArray([afIndex_1, 0], newRecords));
316
+ tableFullData.splice.apply(tableFullData, __spreadArray([$xetable.findRowIndexOf(tableFullData, row), 0], newRecords)); // 刷新单元格合并
317
+
318
+ mergeList.forEach(function (mergeItem) {
319
+ var mergeRowIndex = mergeItem.row,
320
+ mergeRowspan = mergeItem.rowspan;
321
+
322
+ if (mergeRowIndex > afIndex_1) {
323
+ mergeItem.row = mergeRowIndex + newRecords.length;
324
+ } else if (mergeRowIndex + mergeRowspan > afIndex_1) {
325
+ mergeItem.rowspan = mergeRowspan + newRecords.length;
326
+ }
327
+ });
328
+ }
201
329
  }
202
330
  }
203
331
 
@@ -206,7 +334,7 @@ var editHook = {
206
334
  reactData.scrollYLoad = !treeConfig && sYOpts.gt > -1 && sYOpts.gt < tableFullData.length;
207
335
  $xetable.updateFooter();
208
336
  $xetable.cacheRowMap();
209
- $xetable.handleTableData();
337
+ $xetable.handleTableData(transform);
210
338
  $xetable.updateAfterDataIndex();
211
339
  $xetable.checkSelectionStatus();
212
340
 
@@ -237,10 +365,13 @@ var editHook = {
237
365
  editStore = reactData.editStore,
238
366
  selection = reactData.selection,
239
367
  scrollYLoad = reactData.scrollYLoad;
240
- var afterFullData = internalData.afterFullData,
368
+ var treeFullData = internalData.treeFullData,
369
+ afterFullData = internalData.afterFullData,
241
370
  tableFullData = internalData.tableFullData;
242
371
  var checkboxOpts = computeCheckboxOpts.value;
243
372
  var sYOpts = computeSYOpts.value;
373
+ var treeOpts = computeTreeOpts.value;
374
+ var transform = treeOpts.transform;
244
375
  var actived = editStore.actived,
245
376
  removeList = editStore.removeList,
246
377
  insertList = editStore.insertList;
@@ -277,31 +408,55 @@ var editHook = {
277
408
  internalData.afterFullData = [];
278
409
  $xetable.clearMergeCells();
279
410
  } else {
280
- rows.forEach(function (row) {
281
- var tfIndex = $xetable.findRowIndexOf(tableFullData, row);
411
+ // 如果为虚拟树
412
+ if (treeConfig && transform) {
413
+ rows.forEach(function (row) {
414
+ var rowid = (0, _util.getRowid)($xetable, row);
415
+
416
+ var matchObj = _xeUtils.default.findTree(treeFullData, function (item) {
417
+ return rowid === (0, _util.getRowid)($xetable, item);
418
+ }, treeOpts);
419
+
420
+ if (matchObj) {
421
+ var rItems = matchObj.items.splice(matchObj.index, 1);
422
+ rest.push(rItems[0]);
423
+ }
282
424
 
283
- if (tfIndex > -1) {
284
- var rItems = tableFullData.splice(tfIndex, 1);
285
- rest.push(rItems[0]);
286
- }
425
+ var afIndex = $xetable.findRowIndexOf(afterFullData, row);
287
426
 
288
- var afIndex = $xetable.findRowIndexOf(afterFullData, row);
427
+ if (afIndex > -1) {
428
+ afterFullData.splice(afIndex, 1);
429
+ }
289
430
 
290
- if (afIndex > -1) {
291
- // 刷新单元格合并
292
- mergeList.forEach(function (mergeItem) {
293
- var mergeRowIndex = mergeItem.row,
294
- mergeRowspan = mergeItem.rowspan;
431
+ $xetable.updateVirtualTreeData();
432
+ });
433
+ } else {
434
+ rows.forEach(function (row) {
435
+ var tfIndex = $xetable.findRowIndexOf(tableFullData, row);
295
436
 
296
- if (mergeRowIndex > afIndex) {
297
- mergeItem.row = mergeRowIndex - 1;
298
- } else if (mergeRowIndex + mergeRowspan > afIndex) {
299
- mergeItem.rowspan = mergeRowspan - 1;
300
- }
301
- });
302
- afterFullData.splice(afIndex, 1);
303
- }
304
- });
437
+ if (tfIndex > -1) {
438
+ var rItems = tableFullData.splice(tfIndex, 1);
439
+ rest.push(rItems[0]);
440
+ }
441
+
442
+ var afIndex = $xetable.findRowIndexOf(afterFullData, row);
443
+
444
+ if (afIndex > -1) {
445
+ // 刷新单元格合并
446
+ mergeList.forEach(function (mergeItem) {
447
+ var mergeRowIndex = mergeItem.row,
448
+ mergeRowspan = mergeItem.rowspan;
449
+
450
+ if (mergeRowIndex > afIndex) {
451
+ mergeItem.row = mergeRowIndex - 1;
452
+ } else if (mergeRowIndex + mergeRowspan > afIndex) {
453
+ mergeItem.rowspan = mergeRowspan - 1;
454
+ }
455
+ });
456
+ afterFullData.splice(afIndex, 1);
457
+ }
458
+ });
459
+ }
305
460
  } // 如果当前行被激活编辑,则清除激活状态
306
461
 
307
462
 
@@ -320,7 +475,7 @@ var editHook = {
320
475
  reactData.scrollYLoad = !treeConfig && sYOpts.gt > -1 && sYOpts.gt < tableFullData.length;
321
476
  $xetable.updateFooter();
322
477
  $xetable.cacheRowMap();
323
- $xetable.handleTableData();
478
+ $xetable.handleTableData(transform);
324
479
  $xetable.updateAfterDataIndex();
325
480
  $xetable.checkSelectionStatus();
326
481
 
@@ -386,17 +541,35 @@ var editHook = {
386
541
  * 获取新增的临时数据
387
542
  */
388
543
  getInsertRecords: function getInsertRecords() {
544
+ var treeConfig = props.treeConfig;
389
545
  var editStore = reactData.editStore;
390
- var tableFullData = internalData.tableFullData;
546
+ var treeFullData = internalData.treeFullData,
547
+ tableFullData = internalData.tableFullData;
548
+ var treeOpts = computeTreeOpts.value;
391
549
  var insertList = editStore.insertList;
392
550
  var insertRecords = [];
393
551
 
394
552
  if (insertList.length) {
395
- tableFullData.forEach(function (row) {
396
- if ($xetable.findRowIndexOf(insertList, row) > -1) {
397
- insertRecords.push(row);
398
- }
399
- });
553
+ // 如果为虚拟树
554
+ if (treeConfig && treeOpts.transform) {
555
+ insertList.forEach(function (row) {
556
+ var rowid = (0, _util.getRowid)($xetable, row);
557
+
558
+ var matchObj = _xeUtils.default.findTree(treeFullData, function (item) {
559
+ return rowid === (0, _util.getRowid)($xetable, item);
560
+ }, treeOpts);
561
+
562
+ if (matchObj) {
563
+ insertRecords.push(row);
564
+ }
565
+ });
566
+ } else {
567
+ insertList.forEach(function (row) {
568
+ if ($xetable.findRowIndexOf(tableFullData, row) > -1) {
569
+ insertRecords.push(row);
570
+ }
571
+ });
572
+ }
400
573
  }
401
574
 
402
575
  return insertRecords;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_vXETable=require("../../v-x-e-table"),_utils=require("../../tools/utils"),_util=require("../../table/src/util"),_dom=require("../../tools/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,r=1,l=arguments.length;r<l;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},__spreadArray=function(e,t){for(var r=0,l=t.length,n=e.length;r<l;r++,n++)e[n]=t[r];return e},tableEditMethodKeys=["insert","insertAt","remove","removeCheckboxRow","removeRadioRow","removeCurrentRow","getRecordset","getInsertRecords","getRemoveRecords","getUpdateRecords","getActiveRecord","getSelectedCell","clearActived","clearSelected","isActiveByRow","setActiveRow","setActiveCell","setSelectCell"],editHook={setupTable:function(g){function v(e,t){var r=t.model;t.editRender&&(r.value=(0,_util.getCellValue)(e,t),r.update=!1)}function n(e,t){var r=t.model;t.editRender&&r.update&&((0,_util.setCellValue)(e,t,r.value),r.update=!1,r.value=null)}function r(){var e=o.value;!e||(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")}var p=g.props,w=g.reactData,m=g.internalData,o=g.getRefMaps().refElem,e=g.getComputeMaps(),s=e.computeMouseOpts,h=e.computeEditOpts,R=e.computeCheckboxOpts,C=e.computeSYOpts,a=e.computeTreeOpts,x={},_={};function u(){var e=w.editStore,t=w.tableColumn,r=h.value,e=e.actived,l=e.row,e=e.column;(l||e)&&("row"===r.mode?t.forEach(function(e){return n(l,e)}):n(l,e))}return x={insert:function(e){return x.insertAt(e,null)},insertAt:function(e,t){var r=p.treeConfig,l=w.mergeList,n=w.editStore,o=w.scrollYLoad,a=m.afterFullData,u=m.tableFullData,c=C.value,i=(e=!_xeUtils.default.isArray(e)?[e]:e).map(function(e){return g.defineField(Object.assign({},e))});if(t)if(-1===t)a.push.apply(a,i),u.push.apply(u,i),l.forEach(function(e){var t=e.row,r=e.rowspan;t+r>a.length&&(e.rowspan=r+i.length)});else{if(r)throw new Error((0,_utils.getLog)("vxe.error.noTree",["insert"]));var d=g.findRowIndexOf(a,t);if(-1===d)throw new Error((0,_utils.errLog)("vxe.error.unableInsert"));a.splice.apply(a,__spreadArray([d,0],i)),u.splice.apply(u,__spreadArray([g.findRowIndexOf(u,t),0],i)),l.forEach(function(e){var t=e.row,r=e.rowspan;d<t?e.row=t+i.length:d<t+r&&(e.rowspan=r+i.length)})}else a.unshift.apply(a,i),u.unshift.apply(u,i),l.forEach(function(e){var t=e.row;0<t&&(e.row=t+i.length)});return(n=n.insertList).unshift.apply(n,i),w.scrollYLoad=!r&&-1<c.gt&&c.gt<u.length,g.updateFooter(),g.cacheRowMap(),g.handleTableData(),g.updateAfterDataIndex(),g.checkSelectionStatus(),o&&g.updateScrollYSpace(),(0,_vue.nextTick)().then(function(){return g.updateCellAreas(),g.recalculate()}).then(function(){return{row:i.length?i[i.length-1]:null,rows:i}})},remove:function(e){var t=p.treeConfig,r=w.mergeList,l=w.editStore,n=w.selection,o=w.scrollYLoad,a=m.afterFullData,u=m.tableFullData,c=R.value,i=C.value,d=l.actived,s=l.removeList,f=l.insertList,c=c.checkField,v=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=u,e.forEach(function(e){g.isInsertByRow(e)||s.push(e)}),c||e.forEach(function(e){e=g.findRowIndexOf(n,e);-1<e&&n.splice(e,1)}),u===e?(e=v=u.slice(0),m.tableFullData=[],m.afterFullData=[],g.clearMergeCells()):e.forEach(function(e){var t=g.findRowIndexOf(u,e);-1<t&&(t=u.splice(t,1),v.push(t[0]));var l=g.findRowIndexOf(a,e);-1<l&&(r.forEach(function(e){var t=e.row,r=e.rowspan;l<t?e.row=t-1:l<t+r&&(e.rowspan=r-1)}),a.splice(l,1))}),d.row&&-1<g.findRowIndexOf(e,d.row)&&x.clearActived(),e.forEach(function(e){e=g.findRowIndexOf(f,e);-1<e&&f.splice(e,1)}),w.scrollYLoad=!t&&-1<i.gt&&i.gt<u.length,g.updateFooter(),g.cacheRowMap(),g.handleTableData(),g.updateAfterDataIndex(),g.checkSelectionStatus(),o&&g.updateScrollYSpace(),(0,_vue.nextTick)().then(function(){return g.updateCellAreas(),g.recalculate()}).then(function(){return{row:v.length?v[v.length-1]:null,rows:v}})},removeCheckboxRow:function(){return x.remove(g.getCheckboxRecords()).then(function(e){return g.clearCheckboxRow(),e})},removeRadioRow:function(){var e=g.getRadioRecord();return x.remove(e||[]).then(function(e){return g.clearRadioRow(),e})},removeCurrentRow:function(){var e=g.getCurrentRecord();return x.remove(e||[]).then(function(e){return g.clearCurrentRow(),e})},getRecordset:function(){return{insertRecords:x.getInsertRecords(),removeRecords:x.getRemoveRecords(),updateRecords:x.getUpdateRecords()}},getInsertRecords:function(){var e=w.editStore,t=m.tableFullData,r=e.insertList,l=[];return r.length&&t.forEach(function(e){-1<g.findRowIndexOf(r,e)&&l.push(e)}),l},getRemoveRecords:function(){return w.editStore.removeList},getUpdateRecords:function(){var e=p.keepSource,t=p.treeConfig,r=m.tableFullData,l=a.value;return e?(u(),t?_xeUtils.default.filterTree(r,function(e){return g.isUpdateByRow(e)},l):r.filter(function(e){return g.isUpdateByRow(e)})):[]},getActiveRecord:function(){var e=w.editStore,t=m.afterFullData,r=o.value,l=e.actived,e=l.args,l=l.row;return e&&-1<g.findRowIndexOf(t,l)&&r.querySelectorAll(".vxe-body--column.col--actived").length?Object.assign({},e):null},getSelectedCell:function(){var e=w.editStore.selected,t=e.args,e=e.column;return t&&e?Object.assign({},t):null},clearActived:function(e){var t=w.editStore.actived,r=t.row,l=t.column;return(r||l)&&(u(),t.args=null,t.row=null,t.column=null,g.updateFooter(),g.dispatchEvent("edit-closed",{row:r,rowIndex:g.getRowIndex(r),$rowIndex:g.getVMRowIndex(r),column:l,columnIndex:g.getColumnIndex(l),$columnIndex:g.getVMColumnIndex(l)},e||null)),(g.clearValidate?g.clearValidate():(0,_vue.nextTick)()).then(function(){return g.recalculate()})},clearSelected:function(){var e=w.editStore.selected;return e.row=null,e.column=null,r(),(0,_vue.nextTick)()},isActiveByRow:function(e){return w.editStore.actived.row===e},setActiveRow:function(e){var t=m.visibleColumn;return g.setActiveCell(e,_xeUtils.default.find(t,function(e){return(0,_utils.isEnableConf)(e.editRender)}))},setActiveCell:function(t,e){var r=p.editConfig,l=_xeUtils.default.isString(e)?g.getColumnByField(e):e;return t&&l&&(0,_utils.isEnableConf)(r)&&(0,_utils.isEnableConf)(l.editRender)?g.scrollToRow(t,l).then(function(){var e=g.getCell(t,l);return e&&(_.handleActived({row:t,rowIndex:g.getRowIndex(t),column:l,columnIndex:g.getColumnIndex(l),cell:e,$table:g}),m._lastCallTime=Date.now()),(0,_vue.nextTick)()}):(0,_vue.nextTick)()},setSelectCell:function(e,t){var r=w.tableData,l=m.visibleColumn,n=h.value,t=_xeUtils.default.isString(t)?g.getColumnByField(t):t;return e&&t&&"manual"!==n.trigger&&(-1<(n=g.findRowIndexOf(r,e))&&t&&(r=g.getCell(e,t),r={row:e,rowIndex:n,column:t,columnIndex:l.indexOf(t),cell:r},g.handleSelected(r,{}))),(0,_vue.nextTick)()}},_={handleActived:function(e,t){var r,l=p.editConfig,n=p.mouseConfig,o=w.editStore,a=w.tableColumn,u=h.value,c=u.mode,i=u.activeMethod,d=o.actived,s=e.row,f=e.column,u=f.editRender,o=e.cell=e.cell||g.getCell(s,f);return(0,_utils.isEnableConf)(l)&&(0,_utils.isEnableConf)(u)&&o&&(d.row!==s||"cell"===c&&d.column!==f?(r="edit-disabled",i&&!i(e)||(n&&(x.clearSelected(),g.clearCellAreas&&(g.clearCellAreas(),g.clearCopyCellArea())),g.closeTooltip(),x.clearActived(t),r="edit-actived",f.renderHeight=o.offsetHeight,d.args=e,d.row=s,d.column=f,"row"===c?a.forEach(function(e){return v(s,e)}):v(s,f),(0,_vue.nextTick)(function(){_.handleFocus(e,t)})),g.dispatchEvent(r,{row:s,rowIndex:g.getRowIndex(s),$rowIndex:g.getVMRowIndex(s),column:f,columnIndex:g.getColumnIndex(f),$columnIndex:g.getVMColumnIndex(f)},t)):(r=d.column,n&&(x.clearSelected(),g.clearCellAreas&&(g.clearCellAreas(),g.clearCopyCellArea())),r!==f&&((n=r.model).update&&(0,_util.setCellValue)(s,r,n.value),g.clearValidate&&g.clearValidate()),f.renderHeight=o.offsetHeight,d.args=e,d.column=f,setTimeout(function(){_.handleFocus(e,t)})),g.focus()),(0,_vue.nextTick)()},handleFocus:function(e){var t,r,l=e.row,n=e.column,o=e.cell,a=n.editRender;(0,_utils.isEnableConf)(a)&&(t=_vXETable.renderer.get(a.name),r=a.autofocus,e=a.autoselect,a=void 0,(a=!(a=r?o.querySelector(r):a)&&t&&t.autofocus?o.querySelector(t.autofocus):a)?(a.focus(),e?a.select():_dom.browse.msie&&((a=a.createTextRange()).collapse(!1),a.select())):g.scrollToRow(l,n))},handleSelected:function(e,t){var r=p.mouseConfig,l=w.editStore,n=s.value,o=h.value,a=l.actived,u=l.selected,c=e.row,i=e.column,d=r&&n.selected;return!d||u.row===c&&u.column===i||(a.row!==c||"cell"===o.mode&&a.column!==i)&&(x.clearActived(t),x.clearSelected(),g.clearCellAreas&&(g.clearCellAreas(),g.clearCopyCellArea()),u.args=e,u.row=c,u.column=i,d&&_.addCellSelectedClass(),g.focus()),(0,_vue.nextTick)()},addCellSelectedClass:function(){var e=w.editStore.selected,t=e.row,e=e.column;r(),t&&e&&((e=g.getCell(t,e))&&(0,_dom.addClass)(e,"col--selected"))}},__assign(__assign({},x),_)},setupGrid:function(e){return e.extendTableMethods(tableEditMethodKeys)}},_default=editHook;exports.default=_default;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_vXETable=require("../../v-x-e-table"),_utils=require("../../tools/utils"),_util=require("../../table/src/util"),_dom=require("../../tools/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,r=1,l=arguments.length;r<l;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},__spreadArray=function(e,t){for(var r=0,l=t.length,n=e.length;r<l;r++,n++)e[n]=t[r];return e},tableEditMethodKeys=["insert","insertAt","remove","removeCheckboxRow","removeRadioRow","removeCurrentRow","getRecordset","getInsertRecords","getRemoveRecords","getUpdateRecords","getActiveRecord","getSelectedCell","clearActived","clearSelected","isActiveByRow","setActiveRow","setActiveCell","setSelectCell"],editHook={setupTable:function(R){function v(e,t){var r=t.model;t.editRender&&(r.value=(0,_util.getCellValue)(e,t),r.update=!1)}function n(e,t){var r=t.model;t.editRender&&r.update&&((0,_util.setCellValue)(e,t,r.value),r.update=!1,r.value=null)}function r(){var e=o.value;!e||(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")}var _=R.props,C=R.reactData,I=R.internalData,o=R.getRefMaps().refElem,e=R.getComputeMaps(),s=e.computeMouseOpts,p=e.computeEditOpts,m=e.computeCheckboxOpts,b=e.computeSYOpts,S=e.computeTreeOpts,h={},w={};function a(){var e=C.editStore,t=C.tableColumn,r=p.value,e=e.actived,l=e.row,e=e.column;(l||e)&&("row"===r.mode?t.forEach(function(e){return n(l,e)}):n(l,e))}function A(e,t){var a=I.treeFullData,i=I.afterFullData,u=I.fullDataRowIdData,c=I.fullAllDataRowIdData,d=S.value,s=t?"push":"unshift";e.forEach(function(e){var t,r,l=e[d.parentField],n=(0,_util.getRowid)(R,e),o=l?_xeUtils.default.findTree(a,function(e){return l===e[d.rowField]},d):null;e=o?(t=o.item,o=(r=c[(0,_util.getRowid)(R,t)])?r.level:0,r=t[d.children],(r=!_xeUtils.default.isArray(r)?t[d.children]=[]:r)[s](e),{row:e,rowid:n,index:-1,_index:-1,$index:-1,items:r,parent:parent,level:o+1}):("development"===process.env.NODE_ENV&&l&&(0,_utils.warnLog)("vxe.error.unableInsert"),i[s](e),a[s](e),{row:e,rowid:n,index:-1,_index:-1,$index:-1,items:a,parent:null,level:0}),u[n]=e,c[n]=e}),R.updateVirtualTreeData()}return h={insert:function(e){return h.insertAt(e,null)},insertAt:function(e,t){var r=_.treeConfig,l=C.mergeList,n=C.editStore,o=C.scrollYLoad,a=I.treeFullData,i=I.afterFullData,u=I.tableFullData,c=I.fullDataRowIdData,d=I.fullAllDataRowIdData,s=b.value,f=S.value,v=f.transform,p=(e=!_xeUtils.default.isArray(e)?[e]:e).map(function(e){return R.defineField(Object.assign({},e))});if(t)if(-1===t)r&&v?A(p,!0):(i.push.apply(i,p),u.push.apply(u,p),l.forEach(function(e){var t=e.row,r=e.rowspan;t+r>i.length&&(e.rowspan=r+p.length)}));else if(r&&v){var w,g,m,h=_xeUtils.default.findTree(a,function(e){return t[f.rowField]===e[f.rowField]},f);h?(w=h.parent,g=h.items,a=d[(0,_util.getRowid)(R,w)],m=a?a.level:0,p.forEach(function(e,t){var r=(0,_util.getRowid)(R,e);"development"===process.env.NODE_ENV&&e[f.parentField]&&w&&e[f.parentField]!==w[f.rowField]&&(0,_utils.errLog)("vxe.error.errProp",[f.parentField+"="+e[f.parentField],f.parentField+"="+w[f.rowField]]),w&&(e[f.parentField]=w[f.rowField]),g.splice(h.index+t,0,e);e={row:e,rowid:r,index:-1,_index:-1,$index:-1,items:g,parent:w,level:m+1};c[r]=e,d[r]=e}),R.updateVirtualTreeData()):("development"===process.env.NODE_ENV&&(0,_utils.warnLog)("vxe.error.unableInsert"),A(p,!0))}else{if(r)throw new Error((0,_utils.getLog)("vxe.error.noTree",["insert"]));var x=R.findRowIndexOf(i,t);if(-1===x)throw new Error((0,_utils.errLog)("vxe.error.unableInsert"));i.splice.apply(i,__spreadArray([x,0],p)),u.splice.apply(u,__spreadArray([R.findRowIndexOf(u,t),0],p)),l.forEach(function(e){var t=e.row,r=e.rowspan;x<t?e.row=t+p.length:x<t+r&&(e.rowspan=r+p.length)})}else r&&v?A(p,!1):(i.unshift.apply(i,p),u.unshift.apply(u,p),l.forEach(function(e){var t=e.row;0<t&&(e.row=t+p.length)}));return(n=n.insertList).unshift.apply(n,p),C.scrollYLoad=!r&&-1<s.gt&&s.gt<u.length,R.updateFooter(),R.cacheRowMap(),R.handleTableData(v),R.updateAfterDataIndex(),R.checkSelectionStatus(),o&&R.updateScrollYSpace(),(0,_vue.nextTick)().then(function(){return R.updateCellAreas(),R.recalculate()}).then(function(){return{row:p.length?p[p.length-1]:null,rows:p}})},remove:function(e){var t=_.treeConfig,r=C.mergeList,l=C.editStore,n=C.selection,o=C.scrollYLoad,a=I.treeFullData,i=I.afterFullData,u=I.tableFullData,c=m.value,d=b.value,s=S.value,f=s.transform,v=l.actived,p=l.removeList,w=l.insertList,c=c.checkField,g=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=u,e.forEach(function(e){R.isInsertByRow(e)||p.push(e)}),c||e.forEach(function(e){e=R.findRowIndexOf(n,e);-1<e&&n.splice(e,1)}),u===e?(e=g=u.slice(0),I.tableFullData=[],I.afterFullData=[],R.clearMergeCells()):t&&f?e.forEach(function(e){var t=(0,_util.getRowid)(R,e),r=_xeUtils.default.findTree(a,function(e){return t===(0,_util.getRowid)(R,e)},s);r&&(r=r.items.splice(r.index,1),g.push(r[0]));e=R.findRowIndexOf(i,e);-1<e&&i.splice(e,1),R.updateVirtualTreeData()}):e.forEach(function(e){var t=R.findRowIndexOf(u,e);-1<t&&(t=u.splice(t,1),g.push(t[0]));var l=R.findRowIndexOf(i,e);-1<l&&(r.forEach(function(e){var t=e.row,r=e.rowspan;l<t?e.row=t-1:l<t+r&&(e.rowspan=r-1)}),i.splice(l,1))}),v.row&&-1<R.findRowIndexOf(e,v.row)&&h.clearActived(),e.forEach(function(e){e=R.findRowIndexOf(w,e);-1<e&&w.splice(e,1)}),C.scrollYLoad=!t&&-1<d.gt&&d.gt<u.length,R.updateFooter(),R.cacheRowMap(),R.handleTableData(f),R.updateAfterDataIndex(),R.checkSelectionStatus(),o&&R.updateScrollYSpace(),(0,_vue.nextTick)().then(function(){return R.updateCellAreas(),R.recalculate()}).then(function(){return{row:g.length?g[g.length-1]:null,rows:g}})},removeCheckboxRow:function(){return h.remove(R.getCheckboxRecords()).then(function(e){return R.clearCheckboxRow(),e})},removeRadioRow:function(){var e=R.getRadioRecord();return h.remove(e||[]).then(function(e){return R.clearRadioRow(),e})},removeCurrentRow:function(){var e=R.getCurrentRecord();return h.remove(e||[]).then(function(e){return R.clearCurrentRow(),e})},getRecordset:function(){return{insertRecords:h.getInsertRecords(),removeRecords:h.getRemoveRecords(),updateRecords:h.getUpdateRecords()}},getInsertRecords:function(){var e=_.treeConfig,t=C.editStore,r=I.treeFullData,l=I.tableFullData,n=S.value,t=t.insertList,o=[];return t.length&&(e&&n.transform?t.forEach(function(e){var t=(0,_util.getRowid)(R,e);_xeUtils.default.findTree(r,function(e){return t===(0,_util.getRowid)(R,e)},n)&&o.push(e)}):t.forEach(function(e){-1<R.findRowIndexOf(l,e)&&o.push(e)})),o},getRemoveRecords:function(){return C.editStore.removeList},getUpdateRecords:function(){var e=_.keepSource,t=_.treeConfig,r=I.tableFullData,l=S.value;return e?(a(),t?_xeUtils.default.filterTree(r,function(e){return R.isUpdateByRow(e)},l):r.filter(function(e){return R.isUpdateByRow(e)})):[]},getActiveRecord:function(){var e=C.editStore,t=I.afterFullData,r=o.value,l=e.actived,e=l.args,l=l.row;return e&&-1<R.findRowIndexOf(t,l)&&r.querySelectorAll(".vxe-body--column.col--actived").length?Object.assign({},e):null},getSelectedCell:function(){var e=C.editStore.selected,t=e.args,e=e.column;return t&&e?Object.assign({},t):null},clearActived:function(e){var t=C.editStore.actived,r=t.row,l=t.column;return(r||l)&&(a(),t.args=null,t.row=null,t.column=null,R.updateFooter(),R.dispatchEvent("edit-closed",{row:r,rowIndex:R.getRowIndex(r),$rowIndex:R.getVMRowIndex(r),column:l,columnIndex:R.getColumnIndex(l),$columnIndex:R.getVMColumnIndex(l)},e||null)),(R.clearValidate?R.clearValidate():(0,_vue.nextTick)()).then(function(){return R.recalculate()})},clearSelected:function(){var e=C.editStore.selected;return e.row=null,e.column=null,r(),(0,_vue.nextTick)()},isActiveByRow:function(e){return C.editStore.actived.row===e},setActiveRow:function(e){var t=I.visibleColumn;return R.setActiveCell(e,_xeUtils.default.find(t,function(e){return(0,_utils.isEnableConf)(e.editRender)}))},setActiveCell:function(t,e){var r=_.editConfig,l=_xeUtils.default.isString(e)?R.getColumnByField(e):e;return t&&l&&(0,_utils.isEnableConf)(r)&&(0,_utils.isEnableConf)(l.editRender)?R.scrollToRow(t,l).then(function(){var e=R.getCell(t,l);return e&&(w.handleActived({row:t,rowIndex:R.getRowIndex(t),column:l,columnIndex:R.getColumnIndex(l),cell:e,$table:R}),I._lastCallTime=Date.now()),(0,_vue.nextTick)()}):(0,_vue.nextTick)()},setSelectCell:function(e,t){var r=C.tableData,l=I.visibleColumn,n=p.value,t=_xeUtils.default.isString(t)?R.getColumnByField(t):t;return e&&t&&"manual"!==n.trigger&&(-1<(n=R.findRowIndexOf(r,e))&&t&&(r=R.getCell(e,t),r={row:e,rowIndex:n,column:t,columnIndex:l.indexOf(t),cell:r},R.handleSelected(r,{}))),(0,_vue.nextTick)()}},w={handleActived:function(e,t){var r,l=_.editConfig,n=_.mouseConfig,o=C.editStore,a=C.tableColumn,i=p.value,u=i.mode,c=i.activeMethod,d=o.actived,s=e.row,f=e.column,i=f.editRender,o=e.cell=e.cell||R.getCell(s,f);return(0,_utils.isEnableConf)(l)&&(0,_utils.isEnableConf)(i)&&o&&(d.row!==s||"cell"===u&&d.column!==f?(r="edit-disabled",c&&!c(e)||(n&&(h.clearSelected(),R.clearCellAreas&&(R.clearCellAreas(),R.clearCopyCellArea())),R.closeTooltip(),h.clearActived(t),r="edit-actived",f.renderHeight=o.offsetHeight,d.args=e,d.row=s,d.column=f,"row"===u?a.forEach(function(e){return v(s,e)}):v(s,f),(0,_vue.nextTick)(function(){w.handleFocus(e,t)})),R.dispatchEvent(r,{row:s,rowIndex:R.getRowIndex(s),$rowIndex:R.getVMRowIndex(s),column:f,columnIndex:R.getColumnIndex(f),$columnIndex:R.getVMColumnIndex(f)},t)):(r=d.column,n&&(h.clearSelected(),R.clearCellAreas&&(R.clearCellAreas(),R.clearCopyCellArea())),r!==f&&((n=r.model).update&&(0,_util.setCellValue)(s,r,n.value),R.clearValidate&&R.clearValidate()),f.renderHeight=o.offsetHeight,d.args=e,d.column=f,setTimeout(function(){w.handleFocus(e,t)})),R.focus()),(0,_vue.nextTick)()},handleFocus:function(e){var t,r,l=e.row,n=e.column,o=e.cell,a=n.editRender;(0,_utils.isEnableConf)(a)&&(t=_vXETable.renderer.get(a.name),r=a.autofocus,e=a.autoselect,a=void 0,(a=!(a=r?o.querySelector(r):a)&&t&&t.autofocus?o.querySelector(t.autofocus):a)?(a.focus(),e?a.select():_dom.browse.msie&&((a=a.createTextRange()).collapse(!1),a.select())):R.scrollToRow(l,n))},handleSelected:function(e,t){var r=_.mouseConfig,l=C.editStore,n=s.value,o=p.value,a=l.actived,i=l.selected,u=e.row,c=e.column,d=r&&n.selected;return!d||i.row===u&&i.column===c||(a.row!==u||"cell"===o.mode&&a.column!==c)&&(h.clearActived(t),h.clearSelected(),R.clearCellAreas&&(R.clearCellAreas(),R.clearCopyCellArea()),i.args=e,i.row=u,i.column=c,d&&w.addCellSelectedClass(),R.focus()),(0,_vue.nextTick)()},addCellSelectedClass:function(){var e=C.editStore.selected,t=e.row,e=e.column;r(),t&&e&&((e=R.getCell(t,e))&&(0,_dom.addClass)(e,"col--selected"))}},__assign(__assign({},h),w)},setupGrid:function(e){return e.extendTableMethods(tableEditMethodKeys)}},_default=editHook;exports.default=_default;
@@ -563,7 +563,7 @@ var _default2 = (0, _vue.defineComponent)({
563
563
  callback();
564
564
  }
565
565
  }).catch(function () {
566
- return new Promise(function (resolve, reject) {
566
+ return new Promise(function (resolve) {
567
567
  showErrTime = window.setTimeout(function () {
568
568
  itemList.forEach(function (item) {
569
569
  if (item.errRule) {
@@ -582,7 +582,7 @@ var _default2 = (0, _vue.defineComponent)({
582
582
  callback(validRest);
583
583
  resolve();
584
584
  } else {
585
- reject(validRest);
585
+ resolve(validRest);
586
586
  }
587
587
  });
588
588
  });
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_utils=require("../../tools/utils"),_dom=require("../../tools/dom"),_util=require("./util"),_render=require("./render"),_size=require("../../hooks/size");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,i=1,n=arguments.length;i<n;i++)for(var r in t=arguments[i])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)},Rule=function(){function e(e){Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.min,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}return Object.defineProperty(e.prototype,"content",{get:function(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"message",{get:function(){return this.content},enumerable:!1,configurable:!0}),e}(),validErrorRuleValue=function(e,t){var i=e.type,n=e.min,r=e.max,l=e.pattern,e="number"===i,i=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||(!_xeUtils.default.eqNull(n)&&i<_xeUtils.default.toNumber(n)||(!_xeUtils.default.eqNull(r)&&i>_xeUtils.default.toNumber(r)||!(!l||(_xeUtils.default.isRegExp(l)?l:new RegExp(l)).test(t))))};function getResetValue(e,t){return t=_xeUtils.default.isArray(e)?[]:t}var _default2=(0,_vue.defineComponent)({name:"VxeForm",props:{collapseStatus:{type:Boolean,default:!0},loading:Boolean,data:Object,size:{type:String,default:function(){return _conf.default.form.size||_conf.default.size}},span:{type:[String,Number],default:function(){return _conf.default.form.span}},align:{type:String,default:function(){return _conf.default.form.align}},titleAlign:{type:String,default:function(){return _conf.default.form.titleAlign}},titleWidth:{type:[String,Number],default:function(){return _conf.default.form.titleWidth}},titleColon:{type:Boolean,default:function(){return _conf.default.form.titleColon}},titleAsterisk:{type:Boolean,default:function(){return _conf.default.form.titleAsterisk}},titleOverflow:{type:[Boolean,String],default:null},className:[String,Function],items:Array,rules:Object,preventSubmit:{type:Boolean,default:function(){return _conf.default.form.preventSubmit}},validConfig:Object,tooltipConfig:Object,customLayout:{type:Boolean,default:function(){return _conf.default.form.customLayout}}},emits:["update:collapseStatus","collapse","toggle-collapse","submit","submit-invalid","reset"],setup:function(V,e){function t(){var e=b.value;return setTimeout(function(){a.tooltipActive||h.closeTooltip()},e.leaveDelay),!1}function i(e){return e.length&&("development"===process.env.NODE_ENV&&e.forEach(function(e){e.slots&&_xeUtils.default.each(e.slots,function(e){_xeUtils.default.isFunction(e)||v[e]||(0,_utils.errLog)("vxe.error.notSlot",[e])})}),p.staticItems=_xeUtils.default.mapTree(e,function(e){return(0,_util.createItem)(A,e)},{children:"children"})),(0,_vue.nextTick)()}function n(){return p.collapseAll}function r(){var e=!n();return p.collapseAll=e,l("update:collapseStatus",e),(0,_vue.nextTick)()}function c(e){e.preventDefault(),R(),h.dispatchEvent("reset",{data:V.data},e)}function f(t){t.preventDefault(),V.preventSubmit||N(T()).then(function(){h.dispatchEvent("submit",{data:V.data},t)}).catch(function(e){h.dispatchEvent("submit-invalid",{data:V.data,errMap:e},t)})}function o(){var e=a.tooltipStore,t=g.value;return e.visible&&(Object.assign(e,{item:null,visible:!1}),t&&t.close()),(0,_vue.nextTick)()}function q(e){var S=V.data,w=V.rules,N=V.titleOverflow,O=p.collapseAll,C=x.value;return e.map(function(e,t){var i=e.slots,n=e.title,r=e.visible,l=e.folding,o=e.visibleMethod,u=e.field,a=e.collapseNode,s=e.itemRender,c=e.showError,f=e.errRule,d=e.className,v=e.titleOverflow,m=e.children,p=(0,_utils.isEnableConf)(s)?_vXETable.VXETable.renderer.get(s.name):null,_=i?i.default:null,g=i?i.title:null,h=e.span||V.span,x=e.align||V.align,b=e.titleAlign||V.titleAlign,y=e.titleWidth||V.titleWidth,E=_xeUtils.default.isUndefined(v)||_xeUtils.default.isNull(v)?N:v,T="title"===E,i=!0===E||"tooltip"===E,v=T||i||"ellipsis"===E,E=o,U={data:S,property:u,item:e,$form:A};if(!1===r)return(0,_vue.createCommentVNode)();o=!1;if(!w||(r=w[u])&&(o=r.some(function(e){return e.required})),m&&0<m.length){var R=q(e.children);return R.length?(0,_vue.h)("div",{class:["vxe-form--gather vxe-row",e.id,h?"vxe-col--"+h+" is--span":"",d?_xeUtils.default.isFunction(d)?d(U):d:""]},R):(0,_vue.createCommentVNode)()}!E&&p&&p.itemVisibleMethod&&(E=p.itemVisibleMethod);R=[];_?R=j(_,U):p&&p.renderItemContent?R=p.renderItemContent(s,U):u&&(R=[""+_xeUtils.default.get(S,u)]),a&&R.push((0,_vue.h)("div",{class:"vxe-form--item-trigger-node",onClick:M},[(0,_vue.h)("span",{class:"vxe-form--item-trigger-text"},O?_conf.default.i18n("vxe.form.unfolding"):_conf.default.i18n("vxe.form.folding")),(0,_vue.h)("i",{class:["vxe-form--item-trigger-icon",O?_conf.default.icon.FORM_FOLDING:_conf.default.icon.FORM_UNFOLDING]})])),f&&C.showMessage&&R.push((0,_vue.h)("div",{class:"vxe-form--item-valid",style:f.maxWidth?{width:f.maxWidth+"px"}:null},f.content));i=i?{onMouseenter:function(e){I(e,U)},onMouseleave:D}:{};return(0,_vue.h)("div",{class:["vxe-form--item",e.id,h?"vxe-col--"+h+" is--span":"",d?_xeUtils.default.isFunction(d)?d(U):d:"",{"is--title":n,"is--required":o,"is--hidden":l&&O,"is--active":!E||E(U),"is--error":c}],key:t},[(0,_vue.h)("div",{class:"vxe-form--item-inner"},[n||g?(0,_vue.h)("div",__assign({class:["vxe-form--item-title",b?"align--"+b:null,{"is--ellipsis":v}],style:y?{width:isNaN(y)?y:y+"px"}:null,title:T?(0,_utils.getFuncText)(n):null},i),(0,_render.renderTitle)(A,e)):null,(0,_vue.h)("div",{class:["vxe-form--item-content",x?"align--"+x:null]},R)])])})}var s,d=_vXETable.VXETable.tooltip,v=e.slots,l=e.emit,u=_xeUtils.default.uniqueId(),m=(0,_size.useSize)(V),p=(0,_vue.reactive)({collapseAll:V.collapseStatus,staticItems:[],formItems:[]}),a=(0,_vue.reactive)({tooltipTimeout:null,tooltipActive:!1,tooltipStore:{item:null,visible:!1}}),_=(0,_vue.ref)(),g=(0,_vue.ref)(),h={},x=(0,_vue.computed)(function(){return Object.assign({},_conf.default.form.validConfig,V.validConfig)}),b=(0,_vue.ref)(),b=(0,_vue.computed)(function(){var e=Object.assign({leaveDelay:300},_conf.default.form.tooltipConfig,V.tooltipConfig);return e.enterable&&(e.leaveMethod=t),e}),y={refElem:_},E={computeSize:m,computeValidOpts:x,computeTooltipOpts:b},A={xID:u,props:V,context:e,reactData:p,getRefMaps:function(){return y},getComputeMaps:function(){return E}},j=function(e,t){return e&&(_xeUtils.default.isString(e)&&(e=v[e]||null),_xeUtils.default.isFunction(e))?e(t):[]},T=function(){var t=[];return _xeUtils.default.eachTree(p.formItems,function(e){t.push(e)},{children:"children"}),t},M=function(e){r();var t=n();h.dispatchEvent("toggle-collapse",{status:t,collapse:t,data:V.data},e),h.dispatchEvent("collapse",{status:t,collapse:t,data:V.data},e)},U=function(t){var e,i=T();return t?(e=i.find(function(e){return e.field===t}))&&(e.showError=!1):i.forEach(function(e){e.showError=!1}),(0,_vue.nextTick)()},R=function(){var r=V.data,e=T();return r&&e.forEach(function(e){var t=e.field,i=e.resetValue,n=e.itemRender;(0,_utils.isEnableConf)(n)&&((n=_vXETable.VXETable.renderer.get(n.name))&&n.itemResetMethod?n.itemResetMethod({data:r,property:t,item:e,$form:A}):t&&_xeUtils.default.set(r,t,null===i?getResetValue(_xeUtils.default.get(r,t),void 0):i))}),U()},S=function(e){var o=T(),u=_.value;e.some(function(t,e){var i=o.find(function(e){return e.field===t});if(i&&(0,_utils.isEnableConf)(i.itemRender)){var n=i.itemRender,r=_vXETable.VXETable.renderer.get(n.name),l=null;if(e||(0,_dom.scrollToView)(u.querySelector("."+i.id)),l=!(l=n.autofocus?u.querySelector("."+i.id+" "+n.autofocus):l)&&r&&r.autofocus?u.querySelector("."+i.id+" "+r.autofocus):l)return l.focus(),!0}})},w=function(l,o,e){var u,a,s=V.data,t=V.rules,c=[],f=[];return o&&t&&((u=_xeUtils.default.get(t,o))&&(a=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(s,o):e,u.forEach(function(t){var e,i=t.type,n=t.trigger,r=t.required;"all"!==l&&n&&l!==n||(_xeUtils.default.isFunction(t.validator)?(e=t.validator({itemValue:a,rule:t,rules:u,data:s,property:o,$form:A}))&&(_xeUtils.default.isError(e)?c.push(new Rule({type:"custom",trigger:n,content:e.message,rule:new Rule(t)})):e.catch&&f.push(e.catch(function(e){c.push(new Rule({type:"custom",trigger:n,content:e?e.message:t.content||t.message,rule:new Rule(t)}))}))):(i="array"===i?!_xeUtils.default.isArray(a)||!a.length:(0,_utils.eqEmptyValue)(a),(r?i||validErrorRuleValue(t,a):!i&&validErrorRuleValue(t,a))&&c.push(new Rule(t))))}))),Promise.all(f).then(function(){if(c.length){var e={rules:c,rule:c[0]};return Promise.reject(e)}})},N=function(i,e,n){var r=V.data,t=V.rules,l=x.value,o={},u=[],a=[];return U(),clearTimeout(s),r&&t?(i.forEach(function(i){var n=i.field;n&&a.push(w(e||"all",n).then(function(){i.errRule=null}).catch(function(e){var t=e.rule,e={rule:t,rules:e.rules,data:r,property:n,$form:A};return o[n]||(o[n]=[]),o[n].push(e),u.push(n),i.errRule=t,Promise.reject(e)}))}),Promise.all(a).then(function(){n&&n()}).catch(function(){return new Promise(function(e,t){s=window.setTimeout(function(){i.forEach(function(e){e.errRule&&(e.showError=!0)})},20),!1!==l.autoPos&&(0,_vue.nextTick)(function(){S(u)}),n?(n(o),e()):t(o)})})):(n&&n(),Promise.resolve())},I=function(e,t){var i=t.item,n=a.tooltipStore,r=g.value,l=e.currentTarget.children[0],t=(l.textContent||"").trim(),e=l.scrollWidth>l.clientWidth;clearTimeout(a.tooltipTimeout),a.tooltipActive=!0,o(),t&&e&&(Object.assign(n,{item:i,visible:!0}),r&&r.open(l,t))},D=function(){var e=b.value;a.tooltipActive=!1,e.enterable?a.tooltipTimeout=setTimeout(function(){var e=g.value;e&&!e.reactData.isHover&&o()},e.leaveDelay):o()},h={dispatchEvent:function(e,t,i){l(e,Object.assign({$form:A,$event:i},t))},reset:R,validate:function(e){return N(T(),"",e)},validateField:function(t,e){return N(T().filter(function(e){return e.field===t}),"",e)},clearValidate:U,updateStatus:function(e,t){var i=e.property;i&&w("change",i,t).then(function(){U(i)}).catch(function(e){var t=e.rule,e=T().find(function(e){return e.field===i});e&&(e.showError=!0,e.errRule=t)})},toggleCollapse:r,getItems:T,closeTooltip:o};Object.assign(A,h,{callSlot:j,toggleCollapseEvent:M,triggerHeaderHelpEvent:I,handleTargetLeaveEvent:D}),(0,_vue.watch)(function(){return p.staticItems},function(e){p.formItems=e}),(0,_vue.watch)(function(){return V.items},function(e){i(e||[])}),(0,_vue.watch)(function(){return V.collapseStatus},function(e){p.collapseAll=!!e}),(0,_vue.onMounted)(function(){(0,_vue.nextTick)(function(){"development"===process.env.NODE_ENV&&V.customLayout&&V.items&&(0,_utils.errLog)("vxe.error.errConflicts",["custom-layout","items"]),i(V.items||[])})});return A.renderVN=function(){var e=V.loading,t=V.className,i=V.data,n=V.titleColon,r=V.titleAsterisk,l=V.customLayout,o=p.formItems,u=m.value,a=b.value,s=v.default;return(0,_vue.h)("form",{ref:_,class:["vxe-form",t?_xeUtils.default.isFunction(t)?t({items:o,data:i,$form:A}):t:"",((t={})["size--"+u]=u,t["is--colon"]=n,t["is--asterisk"]=r,t["is--loading"]=e,t)],onSubmit:f,onReset:c},[(0,_vue.h)("div",{class:"vxe-form--wrapper vxe-row"},l?s?s({}):[]:q(o)),(0,_vue.h)("div",{class:"vxe-form-slots",ref:"hideItem"},!l&&s?s({}):[]),(0,_vue.h)("div",{class:["vxe-loading",{"is--visible":e}]},[(0,_vue.h)("div",{class:"vxe-loading--spinner"})]),d?(0,_vue.h)((0,_vue.resolveComponent)("vxe-tooltip"),__assign({ref:g},a)):(0,_vue.createCommentVNode)()])},(0,_vue.provide)("$xeform",A),A},render:function(){return this.renderVN()}});exports.default=_default2;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_utils=require("../../tools/utils"),_dom=require("../../tools/dom"),_util=require("./util"),_render=require("./render"),_size=require("../../hooks/size");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,i=1,n=arguments.length;i<n;i++)for(var r in t=arguments[i])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)},Rule=function(){function e(e){Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.min,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}return Object.defineProperty(e.prototype,"content",{get:function(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"message",{get:function(){return this.content},enumerable:!1,configurable:!0}),e}(),validErrorRuleValue=function(e,t){var i=e.type,n=e.min,r=e.max,l=e.pattern,e="number"===i,i=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||(!_xeUtils.default.eqNull(n)&&i<_xeUtils.default.toNumber(n)||(!_xeUtils.default.eqNull(r)&&i>_xeUtils.default.toNumber(r)||!(!l||(_xeUtils.default.isRegExp(l)?l:new RegExp(l)).test(t))))};function getResetValue(e,t){return t=_xeUtils.default.isArray(e)?[]:t}var _default2=(0,_vue.defineComponent)({name:"VxeForm",props:{collapseStatus:{type:Boolean,default:!0},loading:Boolean,data:Object,size:{type:String,default:function(){return _conf.default.form.size||_conf.default.size}},span:{type:[String,Number],default:function(){return _conf.default.form.span}},align:{type:String,default:function(){return _conf.default.form.align}},titleAlign:{type:String,default:function(){return _conf.default.form.titleAlign}},titleWidth:{type:[String,Number],default:function(){return _conf.default.form.titleWidth}},titleColon:{type:Boolean,default:function(){return _conf.default.form.titleColon}},titleAsterisk:{type:Boolean,default:function(){return _conf.default.form.titleAsterisk}},titleOverflow:{type:[Boolean,String],default:null},className:[String,Function],items:Array,rules:Object,preventSubmit:{type:Boolean,default:function(){return _conf.default.form.preventSubmit}},validConfig:Object,tooltipConfig:Object,customLayout:{type:Boolean,default:function(){return _conf.default.form.customLayout}}},emits:["update:collapseStatus","collapse","toggle-collapse","submit","submit-invalid","reset"],setup:function(V,e){function t(){var e=b.value;return setTimeout(function(){a.tooltipActive||h.closeTooltip()},e.leaveDelay),!1}function i(e){return e.length&&("development"===process.env.NODE_ENV&&e.forEach(function(e){e.slots&&_xeUtils.default.each(e.slots,function(e){_xeUtils.default.isFunction(e)||v[e]||(0,_utils.errLog)("vxe.error.notSlot",[e])})}),p.staticItems=_xeUtils.default.mapTree(e,function(e){return(0,_util.createItem)(A,e)},{children:"children"})),(0,_vue.nextTick)()}function n(){return p.collapseAll}function r(){var e=!n();return p.collapseAll=e,l("update:collapseStatus",e),(0,_vue.nextTick)()}function c(e){e.preventDefault(),R(),h.dispatchEvent("reset",{data:V.data},e)}function f(t){t.preventDefault(),V.preventSubmit||N(T()).then(function(){h.dispatchEvent("submit",{data:V.data},t)}).catch(function(e){h.dispatchEvent("submit-invalid",{data:V.data,errMap:e},t)})}function o(){var e=a.tooltipStore,t=g.value;return e.visible&&(Object.assign(e,{item:null,visible:!1}),t&&t.close()),(0,_vue.nextTick)()}function q(e){var S=V.data,w=V.rules,N=V.titleOverflow,O=p.collapseAll,C=x.value;return e.map(function(e,t){var i=e.slots,n=e.title,r=e.visible,l=e.folding,o=e.visibleMethod,u=e.field,a=e.collapseNode,s=e.itemRender,c=e.showError,f=e.errRule,d=e.className,v=e.titleOverflow,m=e.children,p=(0,_utils.isEnableConf)(s)?_vXETable.VXETable.renderer.get(s.name):null,_=i?i.default:null,g=i?i.title:null,h=e.span||V.span,x=e.align||V.align,b=e.titleAlign||V.titleAlign,y=e.titleWidth||V.titleWidth,E=_xeUtils.default.isUndefined(v)||_xeUtils.default.isNull(v)?N:v,T="title"===E,i=!0===E||"tooltip"===E,v=T||i||"ellipsis"===E,E=o,U={data:S,property:u,item:e,$form:A};if(!1===r)return(0,_vue.createCommentVNode)();o=!1;if(!w||(r=w[u])&&(o=r.some(function(e){return e.required})),m&&0<m.length){var R=q(e.children);return R.length?(0,_vue.h)("div",{class:["vxe-form--gather vxe-row",e.id,h?"vxe-col--"+h+" is--span":"",d?_xeUtils.default.isFunction(d)?d(U):d:""]},R):(0,_vue.createCommentVNode)()}!E&&p&&p.itemVisibleMethod&&(E=p.itemVisibleMethod);R=[];_?R=j(_,U):p&&p.renderItemContent?R=p.renderItemContent(s,U):u&&(R=[""+_xeUtils.default.get(S,u)]),a&&R.push((0,_vue.h)("div",{class:"vxe-form--item-trigger-node",onClick:M},[(0,_vue.h)("span",{class:"vxe-form--item-trigger-text"},O?_conf.default.i18n("vxe.form.unfolding"):_conf.default.i18n("vxe.form.folding")),(0,_vue.h)("i",{class:["vxe-form--item-trigger-icon",O?_conf.default.icon.FORM_FOLDING:_conf.default.icon.FORM_UNFOLDING]})])),f&&C.showMessage&&R.push((0,_vue.h)("div",{class:"vxe-form--item-valid",style:f.maxWidth?{width:f.maxWidth+"px"}:null},f.content));i=i?{onMouseenter:function(e){I(e,U)},onMouseleave:D}:{};return(0,_vue.h)("div",{class:["vxe-form--item",e.id,h?"vxe-col--"+h+" is--span":"",d?_xeUtils.default.isFunction(d)?d(U):d:"",{"is--title":n,"is--required":o,"is--hidden":l&&O,"is--active":!E||E(U),"is--error":c}],key:t},[(0,_vue.h)("div",{class:"vxe-form--item-inner"},[n||g?(0,_vue.h)("div",__assign({class:["vxe-form--item-title",b?"align--"+b:null,{"is--ellipsis":v}],style:y?{width:isNaN(y)?y:y+"px"}:null,title:T?(0,_utils.getFuncText)(n):null},i),(0,_render.renderTitle)(A,e)):null,(0,_vue.h)("div",{class:["vxe-form--item-content",x?"align--"+x:null]},R)])])})}var s,d=_vXETable.VXETable.tooltip,v=e.slots,l=e.emit,u=_xeUtils.default.uniqueId(),m=(0,_size.useSize)(V),p=(0,_vue.reactive)({collapseAll:V.collapseStatus,staticItems:[],formItems:[]}),a=(0,_vue.reactive)({tooltipTimeout:null,tooltipActive:!1,tooltipStore:{item:null,visible:!1}}),_=(0,_vue.ref)(),g=(0,_vue.ref)(),h={},x=(0,_vue.computed)(function(){return Object.assign({},_conf.default.form.validConfig,V.validConfig)}),b=(0,_vue.ref)(),b=(0,_vue.computed)(function(){var e=Object.assign({leaveDelay:300},_conf.default.form.tooltipConfig,V.tooltipConfig);return e.enterable&&(e.leaveMethod=t),e}),y={refElem:_},E={computeSize:m,computeValidOpts:x,computeTooltipOpts:b},A={xID:u,props:V,context:e,reactData:p,getRefMaps:function(){return y},getComputeMaps:function(){return E}},j=function(e,t){return e&&(_xeUtils.default.isString(e)&&(e=v[e]||null),_xeUtils.default.isFunction(e))?e(t):[]},T=function(){var t=[];return _xeUtils.default.eachTree(p.formItems,function(e){t.push(e)},{children:"children"}),t},M=function(e){r();var t=n();h.dispatchEvent("toggle-collapse",{status:t,collapse:t,data:V.data},e),h.dispatchEvent("collapse",{status:t,collapse:t,data:V.data},e)},U=function(t){var e,i=T();return t?(e=i.find(function(e){return e.field===t}))&&(e.showError=!1):i.forEach(function(e){e.showError=!1}),(0,_vue.nextTick)()},R=function(){var r=V.data,e=T();return r&&e.forEach(function(e){var t=e.field,i=e.resetValue,n=e.itemRender;(0,_utils.isEnableConf)(n)&&((n=_vXETable.VXETable.renderer.get(n.name))&&n.itemResetMethod?n.itemResetMethod({data:r,property:t,item:e,$form:A}):t&&_xeUtils.default.set(r,t,null===i?getResetValue(_xeUtils.default.get(r,t),void 0):i))}),U()},S=function(e){var o=T(),u=_.value;e.some(function(t,e){var i=o.find(function(e){return e.field===t});if(i&&(0,_utils.isEnableConf)(i.itemRender)){var n=i.itemRender,r=_vXETable.VXETable.renderer.get(n.name),l=null;if(e||(0,_dom.scrollToView)(u.querySelector("."+i.id)),l=!(l=n.autofocus?u.querySelector("."+i.id+" "+n.autofocus):l)&&r&&r.autofocus?u.querySelector("."+i.id+" "+r.autofocus):l)return l.focus(),!0}})},w=function(l,o,e){var u,a,s=V.data,t=V.rules,c=[],f=[];return o&&t&&((u=_xeUtils.default.get(t,o))&&(a=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(s,o):e,u.forEach(function(t){var e,i=t.type,n=t.trigger,r=t.required;"all"!==l&&n&&l!==n||(_xeUtils.default.isFunction(t.validator)?(e=t.validator({itemValue:a,rule:t,rules:u,data:s,property:o,$form:A}))&&(_xeUtils.default.isError(e)?c.push(new Rule({type:"custom",trigger:n,content:e.message,rule:new Rule(t)})):e.catch&&f.push(e.catch(function(e){c.push(new Rule({type:"custom",trigger:n,content:e?e.message:t.content||t.message,rule:new Rule(t)}))}))):(i="array"===i?!_xeUtils.default.isArray(a)||!a.length:(0,_utils.eqEmptyValue)(a),(r?i||validErrorRuleValue(t,a):!i&&validErrorRuleValue(t,a))&&c.push(new Rule(t))))}))),Promise.all(f).then(function(){if(c.length){var e={rules:c,rule:c[0]};return Promise.reject(e)}})},N=function(t,e,i){var r=V.data,n=V.rules,l=x.value,o={},u=[],a=[];return U(),clearTimeout(s),r&&n?(t.forEach(function(i){var n=i.field;n&&a.push(w(e||"all",n).then(function(){i.errRule=null}).catch(function(e){var t=e.rule,e={rule:t,rules:e.rules,data:r,property:n,$form:A};return o[n]||(o[n]=[]),o[n].push(e),u.push(n),i.errRule=t,Promise.reject(e)}))}),Promise.all(a).then(function(){i&&i()}).catch(function(){return new Promise(function(e){s=window.setTimeout(function(){t.forEach(function(e){e.errRule&&(e.showError=!0)})},20),!1!==l.autoPos&&(0,_vue.nextTick)(function(){S(u)}),i?(i(o),e()):e(o)})})):(i&&i(),Promise.resolve())},I=function(e,t){var i=t.item,n=a.tooltipStore,r=g.value,l=e.currentTarget.children[0],t=(l.textContent||"").trim(),e=l.scrollWidth>l.clientWidth;clearTimeout(a.tooltipTimeout),a.tooltipActive=!0,o(),t&&e&&(Object.assign(n,{item:i,visible:!0}),r&&r.open(l,t))},D=function(){var e=b.value;a.tooltipActive=!1,e.enterable?a.tooltipTimeout=setTimeout(function(){var e=g.value;e&&!e.reactData.isHover&&o()},e.leaveDelay):o()},h={dispatchEvent:function(e,t,i){l(e,Object.assign({$form:A,$event:i},t))},reset:R,validate:function(e){return N(T(),"",e)},validateField:function(t,e){return N(T().filter(function(e){return e.field===t}),"",e)},clearValidate:U,updateStatus:function(e,t){var i=e.property;i&&w("change",i,t).then(function(){U(i)}).catch(function(e){var t=e.rule,e=T().find(function(e){return e.field===i});e&&(e.showError=!0,e.errRule=t)})},toggleCollapse:r,getItems:T,closeTooltip:o};Object.assign(A,h,{callSlot:j,toggleCollapseEvent:M,triggerHeaderHelpEvent:I,handleTargetLeaveEvent:D}),(0,_vue.watch)(function(){return p.staticItems},function(e){p.formItems=e}),(0,_vue.watch)(function(){return V.items},function(e){i(e||[])}),(0,_vue.watch)(function(){return V.collapseStatus},function(e){p.collapseAll=!!e}),(0,_vue.onMounted)(function(){(0,_vue.nextTick)(function(){"development"===process.env.NODE_ENV&&V.customLayout&&V.items&&(0,_utils.errLog)("vxe.error.errConflicts",["custom-layout","items"]),i(V.items||[])})});return A.renderVN=function(){var e=V.loading,t=V.className,i=V.data,n=V.titleColon,r=V.titleAsterisk,l=V.customLayout,o=p.formItems,u=m.value,a=b.value,s=v.default;return(0,_vue.h)("form",{ref:_,class:["vxe-form",t?_xeUtils.default.isFunction(t)?t({items:o,data:i,$form:A}):t:"",((t={})["size--"+u]=u,t["is--colon"]=n,t["is--asterisk"]=r,t["is--loading"]=e,t)],onSubmit:f,onReset:c},[(0,_vue.h)("div",{class:"vxe-form--wrapper vxe-row"},l?s?s({}):[]:q(o)),(0,_vue.h)("div",{class:"vxe-form-slots",ref:"hideItem"},!l&&s?s({}):[]),(0,_vue.h)("div",{class:["vxe-loading",{"is--visible":e}]},[(0,_vue.h)("div",{class:"vxe-loading--spinner"})]),d?(0,_vue.h)((0,_vue.resolveComponent)("vxe-tooltip"),__assign({ref:g},a)):(0,_vue.createCommentVNode)()])},(0,_vue.provide)("$xeform",A),A},render:function(){return this.renderVN()}});exports.default=_default2;