@visactor/vtable 1.22.11-alpha.9 → 1.22.11

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 (103) hide show
  1. package/cjs/ListTable.d.ts +7 -34
  2. package/cjs/ListTable.js +18 -138
  3. package/cjs/ListTable.js.map +1 -1
  4. package/cjs/PivotTable-all.js.map +1 -1
  5. package/cjs/components/index.js +1 -1
  6. package/cjs/core/BaseTable.d.ts +3 -0
  7. package/cjs/core/BaseTable.js +22 -6
  8. package/cjs/core/BaseTable.js.map +1 -1
  9. package/cjs/core/TABLE_EVENT_TYPE.d.ts +0 -1
  10. package/cjs/core/TABLE_EVENT_TYPE.js +0 -1
  11. package/cjs/core/TABLE_EVENT_TYPE.js.map +1 -1
  12. package/cjs/core/record-helper.d.ts +2 -4
  13. package/cjs/core/record-helper.js +47 -120
  14. package/cjs/core/record-helper.js.map +1 -1
  15. package/cjs/data/DataSource.d.ts +4 -13
  16. package/cjs/data/DataSource.js +60 -174
  17. package/cjs/data/DataSource.js.map +1 -1
  18. package/cjs/dataset/dataset.js +92 -84
  19. package/cjs/dataset/dataset.js.map +1 -1
  20. package/cjs/edit/edit-manager.js +10 -9
  21. package/cjs/edit/edit-manager.js.map +1 -1
  22. package/cjs/event/event.d.ts +1 -2
  23. package/cjs/event/event.js +9 -20
  24. package/cjs/event/event.js.map +1 -1
  25. package/cjs/index.d.ts +1 -1
  26. package/cjs/index.js +1 -1
  27. package/cjs/index.js.map +1 -1
  28. package/cjs/layout/pivot-header-layout.js +1 -1
  29. package/cjs/layout/pivot-header-layout.js.map +1 -1
  30. package/cjs/plugins/custom-cell-style.d.ts +5 -5
  31. package/cjs/plugins/custom-cell-style.js +64 -25
  32. package/cjs/plugins/custom-cell-style.js.map +1 -1
  33. package/cjs/scenegraph/group-creater/cell-type/progress-bar-cell.js.map +1 -1
  34. package/cjs/scenegraph/layout/update-row.js +16 -1
  35. package/cjs/scenegraph/layout/update-row.js.map +1 -1
  36. package/cjs/scenegraph/select/update-select-border.js.map +1 -1
  37. package/cjs/state/select/update-position.js +3 -3
  38. package/cjs/state/select/update-position.js.map +1 -1
  39. package/cjs/ts-types/base-table.d.ts +5 -2
  40. package/cjs/ts-types/base-table.js.map +1 -1
  41. package/cjs/ts-types/events.d.ts +0 -15
  42. package/cjs/ts-types/events.js.map +1 -1
  43. package/cjs/ts-types/new-data-set.d.ts +1 -0
  44. package/cjs/ts-types/new-data-set.js.map +1 -1
  45. package/cjs/ts-types/table-engine.d.ts +6 -33
  46. package/cjs/ts-types/table-engine.js.map +1 -1
  47. package/cjs/vrender.js.map +1 -1
  48. package/dist/vtable.js +332 -735
  49. package/dist/vtable.min.js +2 -2
  50. package/es/ListTable.d.ts +7 -34
  51. package/es/ListTable.js +18 -134
  52. package/es/ListTable.js.map +1 -1
  53. package/es/PivotTable-all.js.map +1 -1
  54. package/es/components/index.js +1 -1
  55. package/es/core/BaseTable.d.ts +3 -0
  56. package/es/core/BaseTable.js +22 -6
  57. package/es/core/BaseTable.js.map +1 -1
  58. package/es/core/TABLE_EVENT_TYPE.d.ts +0 -1
  59. package/es/core/TABLE_EVENT_TYPE.js +0 -1
  60. package/es/core/TABLE_EVENT_TYPE.js.map +1 -1
  61. package/es/core/record-helper.d.ts +2 -4
  62. package/es/core/record-helper.js +43 -114
  63. package/es/core/record-helper.js.map +1 -1
  64. package/es/data/DataSource.d.ts +4 -13
  65. package/es/data/DataSource.js +60 -174
  66. package/es/data/DataSource.js.map +1 -1
  67. package/es/dataset/dataset.js +92 -84
  68. package/es/dataset/dataset.js.map +1 -1
  69. package/es/edit/edit-manager.js +10 -9
  70. package/es/edit/edit-manager.js.map +1 -1
  71. package/es/event/event.d.ts +1 -2
  72. package/es/event/event.js +9 -20
  73. package/es/event/event.js.map +1 -1
  74. package/es/index.d.ts +1 -1
  75. package/es/index.js +1 -1
  76. package/es/index.js.map +1 -1
  77. package/es/layout/pivot-header-layout.js +1 -1
  78. package/es/layout/pivot-header-layout.js.map +1 -1
  79. package/es/plugins/custom-cell-style.d.ts +5 -5
  80. package/es/plugins/custom-cell-style.js +62 -25
  81. package/es/plugins/custom-cell-style.js.map +1 -1
  82. package/es/scenegraph/group-creater/cell-type/progress-bar-cell.js.map +1 -1
  83. package/es/scenegraph/layout/update-row.js +16 -1
  84. package/es/scenegraph/layout/update-row.js.map +1 -1
  85. package/es/scenegraph/select/update-select-border.js.map +1 -1
  86. package/es/state/select/update-position.js +4 -2
  87. package/es/state/select/update-position.js.map +1 -1
  88. package/es/ts-types/base-table.d.ts +5 -2
  89. package/es/ts-types/base-table.js.map +1 -1
  90. package/es/ts-types/events.d.ts +0 -15
  91. package/es/ts-types/events.js.map +1 -1
  92. package/es/ts-types/new-data-set.d.ts +1 -0
  93. package/es/ts-types/new-data-set.js.map +1 -1
  94. package/es/ts-types/table-engine.d.ts +6 -33
  95. package/es/ts-types/table-engine.js.map +1 -1
  96. package/es/vrender.js.map +1 -1
  97. package/package.json +3 -3
  98. package/cjs/core/index.d.ts +0 -1
  99. package/cjs/core/index.js +0 -30
  100. package/cjs/core/index.js.map +0 -1
  101. package/es/core/index.d.ts +0 -1
  102. package/es/core/index.js +0 -2
  103. package/es/core/index.js.map +0 -1
@@ -349,23 +349,6 @@ class DataSource extends EventTarget_1.EventTarget {
349
349
  }
350
350
  }
351
351
  }
352
- changeFieldValueByRecordIndex(value, recordIndex, field, table) {
353
- var _a, _b, _c, _d;
354
- if (null === field) return;
355
- if (null == recordIndex) return;
356
- const rawKey = recordIndex.toString();
357
- if (!this.beforeChangedRecordsMap.has(rawKey)) {
358
- const rawRecords = Array.isArray(null === (_a = this.dataSourceObj) || void 0 === _a ? void 0 : _a.records) ? this.dataSourceObj.records : null, originRecord = rawRecords ? Array.isArray(recordIndex) ? getValueFromDeepArray(rawRecords, recordIndex) : rawRecords[recordIndex] : void 0;
359
- this.beforeChangedRecordsMap.set(rawKey, null !== (_b = (0, vutils_1.cloneDeep)(originRecord, void 0, [ "vtable_gantt_linkedFrom", "vtable_gantt_linkedTo" ])) && void 0 !== _b ? _b : {});
360
- }
361
- if ("string" == typeof field || "number" == typeof field) {
362
- const beforeChangedValue = null === (_c = this.beforeChangedRecordsMap.get(rawKey)) || void 0 === _c ? void 0 : _c[field], rawRecords = Array.isArray(null === (_d = this.dataSourceObj) || void 0 === _d ? void 0 : _d.records) ? this.dataSourceObj.records : null, record = rawRecords ? Array.isArray(recordIndex) ? getValueFromDeepArray(rawRecords, recordIndex) : rawRecords[recordIndex] : void 0;
363
- let formatValue = value;
364
- "number" == typeof beforeChangedValue && (0, util_1.isAllDigits)(value) && (formatValue = parseFloat(value)),
365
- record ? record[field] = formatValue : rawRecords && "number" == typeof recordIndex && (rawRecords[recordIndex] = "Array" === this.addRecordRule ? [] : {},
366
- rawRecords[recordIndex][field] = formatValue);
367
- }
368
- }
369
352
  cacheBeforeChangedRecord(dataIndex, table) {
370
353
  var _a;
371
354
  if (!this.beforeChangedRecordsMap.has(dataIndex.toString())) {
@@ -382,89 +365,38 @@ class DataSource extends EventTarget_1.EventTarget {
382
365
  Array.isArray(indexed) || this.records.splice(indexed, 1, record);
383
366
  }
384
367
  }
385
- _getRawRecordsArray() {
368
+ addRecord(record, index) {
386
369
  var _a;
387
- const rawRecords = null === (_a = this.dataSourceObj) || void 0 === _a ? void 0 : _a.records;
388
- return Array.isArray(rawRecords) ? rawRecords : null;
389
- }
390
- _hasFilterInEffect() {
391
- var _a, _b, _c, _d, _e;
392
- return (null !== (_c = null === (_b = null === (_a = this.dataConfig) || void 0 === _a ? void 0 : _a.filterRules) || void 0 === _b ? void 0 : _b.length) && void 0 !== _c ? _c : 0) >= 1 || (null !== (_e = null === (_d = this.lastFilterRules) || void 0 === _d ? void 0 : _d.length) && void 0 !== _e ? _e : 0) >= 1;
393
- }
394
- _normalizeInsertIndex(index, length) {
395
- return null == index || index > length ? length : index < 0 ? 0 : index;
396
- }
397
- _mapViewInsertIndexToRawInsertIndex(rawRecords, viewIndex) {
398
- if (0 === this.records.length) return rawRecords.length;
399
- if (viewIndex <= 0) {
400
- const firstVisibleRecord = this.records[0], rawIndex = rawRecords.indexOf(firstVisibleRecord);
401
- return rawIndex >= 0 ? rawIndex : 0;
402
- }
403
- if (viewIndex >= this.records.length) {
404
- const lastVisibleRecord = this.records[this.records.length - 1], rawIndex = rawRecords.indexOf(lastVisibleRecord);
405
- return rawIndex >= 0 ? rawIndex + 1 : rawRecords.length;
406
- }
407
- const prevRecord = this.records[viewIndex - 1], rawIndex = rawRecords.indexOf(prevRecord);
408
- return rawIndex >= 0 ? rawIndex + 1 : rawRecords.length;
409
- }
410
- _resetIndexingFromViewRecords() {
411
- if (this._sourceLength = this.records.length, this.currentIndexedData = Array.from({
412
- length: this._sourceLength
413
- }, ((_, i) => i)), "tree" === this.rowHierarchyType && this.initTreeHierarchyState(),
414
- this.userPagination) return this.pagination.totalCount = this._sourceLength, void this.updatePagerData();
415
- this.pagination.perPageCount = this._sourceLength, this.pagination.totalCount = this._sourceLength,
416
- this.updatePagerData();
417
- }
418
- addRecord(record, index, syncToOriginalRecords = !1) {
419
- var _a, _b, _c;
420
- if (!syncToOriginalRecords) {
421
- if (Array.isArray(this.records)) {
422
- this.records.splice(index, 0, record), this.adjustBeforeChangedRecordsMap(index, 1),
423
- this.currentIndexedData.push(this.currentIndexedData.length), this._sourceLength += 1;
424
- for (let i = 0; i < this.fieldAggregators.length; i++) this.fieldAggregators[i].push(record);
425
- if ("tree" === this.rowHierarchyType && this.initTreeHierarchyState(), this.userPagination) {
426
- this.pagination.totalCount = this._sourceLength;
427
- const {perPageCount: perPageCount, currentPage: currentPage} = this.pagination;
428
- index < perPageCount * (currentPage || 0) + perPageCount && this.updatePagerData();
429
- } else this.pagination.perPageCount = this._sourceLength, this.pagination.totalCount = this._sourceLength,
430
- this.updatePagerData();
431
- (null === (_a = this.dataSourceObj) || void 0 === _a ? void 0 : _a.added) && this.dataSourceObj.added(index, 1);
432
- }
433
- return;
434
- }
435
- const rawRecords = this._getRawRecordsArray();
436
- if (!rawRecords) return;
437
- const viewInsertIndex = this._normalizeInsertIndex(index, this.records.length), rawInsertIndex = this._hasFilterInEffect() ? this._mapViewInsertIndexToRawInsertIndex(rawRecords, viewInsertIndex) : this._normalizeInsertIndex(viewInsertIndex, rawRecords.length);
438
- rawRecords.splice(rawInsertIndex, 0, record), syncToOriginalRecords && this._hasFilterInEffect() && this.markForceVisibleRecord(record),
439
- this.beforeChangedRecordsMap.clear(), this.sortedIndexMap.clear(), this.updateFilterRules(null === (_b = this.dataConfig) || void 0 === _b ? void 0 : _b.filterRules),
440
- (null === (_c = this.dataSourceObj) || void 0 === _c ? void 0 : _c.added) && this.dataSourceObj.added(rawInsertIndex, 1);
441
- }
442
- addRecords(recordArr, index, syncToOriginalRecords = !1) {
443
- var _a, _b, _c;
444
- if (!syncToOriginalRecords) {
445
- if (Array.isArray(this.records)) {
446
- if (Array.isArray(recordArr)) {
447
- this.records.splice(index, 0, ...recordArr), this.adjustBeforeChangedRecordsMap(index, recordArr.length);
448
- for (let i = 0; i < recordArr.length; i++) this.currentIndexedData.push(this.currentIndexedData.length);
449
- this._sourceLength += recordArr.length;
450
- for (let i = 0; i < this.fieldAggregators.length; i++) for (let j = 0; j < recordArr.length; j++) this.fieldAggregators[i].push(recordArr[j]);
451
- }
452
- if (this.userPagination) {
453
- this.pagination.totalCount = this._sourceLength;
454
- const {perPageCount: perPageCount, currentPage: currentPage} = this.pagination;
455
- index < perPageCount * (currentPage || 0) + perPageCount && this.updatePagerData();
456
- } else this.pagination.perPageCount = this._sourceLength, this.pagination.totalCount = this._sourceLength,
457
- this.updatePagerData();
458
- (null === (_a = this.dataSourceObj) || void 0 === _a ? void 0 : _a.added) && this.dataSourceObj.added(index, recordArr.length);
370
+ if (Array.isArray(this.records)) {
371
+ this.records.splice(index, 0, record), this.adjustBeforeChangedRecordsMap(index, 1),
372
+ this.currentIndexedData.push(this.currentIndexedData.length), this._sourceLength += 1;
373
+ for (let i = 0; i < this.fieldAggregators.length; i++) this.fieldAggregators[i].push(record);
374
+ if ("tree" === this.rowHierarchyType && this.initTreeHierarchyState(), this.userPagination) {
375
+ this.pagination.totalCount = this._sourceLength;
376
+ const {perPageCount: perPageCount, currentPage: currentPage} = this.pagination;
377
+ index < perPageCount * (currentPage || 0) + perPageCount && this.updatePagerData();
378
+ } else this.pagination.perPageCount = this._sourceLength, this.pagination.totalCount = this._sourceLength,
379
+ this.updatePagerData();
380
+ (null === (_a = this.dataSourceObj) || void 0 === _a ? void 0 : _a.added) && this.dataSourceObj.added(index, 1);
381
+ }
382
+ }
383
+ addRecords(recordArr, index) {
384
+ var _a;
385
+ if (Array.isArray(this.records)) {
386
+ if (Array.isArray(recordArr)) {
387
+ this.records.splice(index, 0, ...recordArr), this.adjustBeforeChangedRecordsMap(index, recordArr.length);
388
+ for (let i = 0; i < recordArr.length; i++) this.currentIndexedData.push(this.currentIndexedData.length);
389
+ this._sourceLength += recordArr.length;
390
+ for (let i = 0; i < this.fieldAggregators.length; i++) for (let j = 0; j < recordArr.length; j++) this.fieldAggregators[i].push(recordArr[j]);
459
391
  }
460
- return;
392
+ if (this.userPagination) {
393
+ this.pagination.totalCount = this._sourceLength;
394
+ const {perPageCount: perPageCount, currentPage: currentPage} = this.pagination;
395
+ index < perPageCount * (currentPage || 0) + perPageCount && this.updatePagerData();
396
+ } else this.pagination.perPageCount = this._sourceLength, this.pagination.totalCount = this._sourceLength,
397
+ this.updatePagerData();
398
+ (null === (_a = this.dataSourceObj) || void 0 === _a ? void 0 : _a.added) && this.dataSourceObj.added(index, recordArr.length);
461
399
  }
462
- const rawRecords = this._getRawRecordsArray();
463
- if (!rawRecords || !Array.isArray(recordArr) || 0 === recordArr.length) return;
464
- const viewInsertIndex = this._normalizeInsertIndex(index, this.records.length), rawInsertIndex = this._hasFilterInEffect() ? this._mapViewInsertIndexToRawInsertIndex(rawRecords, viewInsertIndex) : this._normalizeInsertIndex(viewInsertIndex, rawRecords.length);
465
- if (rawRecords.splice(rawInsertIndex, 0, ...recordArr), syncToOriginalRecords && this._hasFilterInEffect()) for (let i = 0; i < recordArr.length; i++) this.markForceVisibleRecord(recordArr[i]);
466
- this.beforeChangedRecordsMap.clear(), this.sortedIndexMap.clear(), this.updateFilterRules(null === (_b = this.dataConfig) || void 0 === _b ? void 0 : _b.filterRules),
467
- (null === (_c = this.dataSourceObj) || void 0 === _c ? void 0 : _c.added) && this.dataSourceObj.added(rawInsertIndex, recordArr.length);
468
400
  }
469
401
  addRecordForSorted(record) {
470
402
  Array.isArray(this.records) && (this.beforeChangedRecordsMap.clear(), this.records.push(record),
@@ -483,48 +415,28 @@ class DataSource extends EventTarget_1.EventTarget {
483
415
  }
484
416
  }
485
417
  adjustBeforeChangedRecordsMap(insertIndex, insertCount, type = "add") {
486
- const delta = "add" === type ? insertCount : -insertCount, numericKeys = [];
487
- this.beforeChangedRecordsMap.forEach(((_, key) => {
488
- const numKey = Number(key);
489
- Number.isInteger(numKey) && numKey.toString() === key && numKey >= insertIndex && numericKeys.push(numKey);
490
- })), numericKeys.sort(((a, b) => "add" === type ? b - a : a - b));
491
- for (let i = 0; i < numericKeys.length; i++) {
492
- const key = numericKeys[i], record = this.beforeChangedRecordsMap.get(key.toString());
493
- this.beforeChangedRecordsMap.delete(key.toString()), this.beforeChangedRecordsMap.set((key + delta).toString(), record);
418
+ for (let key = this.beforeChangedRecordsMap.size - 1; key >= insertIndex; key--) {
419
+ const record = this.beforeChangedRecordsMap.get(key.toString());
420
+ this.beforeChangedRecordsMap.delete(key.toString()), this.beforeChangedRecordsMap.set((key + ("add" === type ? insertCount : -insertCount)).toString(), record);
494
421
  }
495
422
  }
496
- deleteRecords(recordIndexs, syncToOriginalRecords = !1) {
497
- var _a, _b, _c;
498
- if (!syncToOriginalRecords) {
499
- if (Array.isArray(this.records)) {
500
- const realDeletedRecordIndexs = [], recordIndexsMaxToMin = recordIndexs.sort(((a, b) => b - a));
501
- for (let index = 0; index < recordIndexsMaxToMin.length; index++) {
502
- const recordIndex = recordIndexsMaxToMin[index];
503
- if (recordIndex >= this._sourceLength || recordIndex < 0) continue;
504
- this.adjustBeforeChangedRecordsMap(recordIndex, 1, "delete"), realDeletedRecordIndexs.push(recordIndex);
505
- const deletedRecord = this.records[recordIndex];
506
- for (let i = 0; i < this.fieldAggregators.length; i++) this.fieldAggregators[i].deleteRecord(deletedRecord);
507
- this.records.splice(recordIndex, 1), this.currentIndexedData.pop(), this._sourceLength -= 1;
508
- }
509
- return this.userPagination || (this.pagination.perPageCount = this._sourceLength,
510
- this.pagination.totalCount = this._sourceLength), this.updatePagerData(), (null === (_a = this.dataSourceObj) || void 0 === _a ? void 0 : _a.deleted) && this.dataSourceObj.deleted(realDeletedRecordIndexs),
511
- realDeletedRecordIndexs;
423
+ deleteRecords(recordIndexs) {
424
+ var _a;
425
+ if (Array.isArray(this.records)) {
426
+ const realDeletedRecordIndexs = [], recordIndexsMaxToMin = recordIndexs.sort(((a, b) => b - a));
427
+ for (let index = 0; index < recordIndexsMaxToMin.length; index++) {
428
+ const recordIndex = recordIndexsMaxToMin[index];
429
+ if (recordIndex >= this._sourceLength || recordIndex < 0) continue;
430
+ this.adjustBeforeChangedRecordsMap(recordIndex, 1, "delete"), realDeletedRecordIndexs.push(recordIndex);
431
+ const deletedRecord = this.records[recordIndex];
432
+ for (let i = 0; i < this.fieldAggregators.length; i++) this.fieldAggregators[i].deleteRecord(deletedRecord);
433
+ this.records.splice(recordIndex, 1), this.currentIndexedData.pop(), this._sourceLength -= 1;
512
434
  }
513
- return [];
435
+ return this.userPagination || (this.pagination.perPageCount = this._sourceLength,
436
+ this.pagination.totalCount = this._sourceLength), this.updatePagerData(), (null === (_a = this.dataSourceObj) || void 0 === _a ? void 0 : _a.deleted) && this.dataSourceObj.deleted(realDeletedRecordIndexs),
437
+ realDeletedRecordIndexs;
514
438
  }
515
- const rawRecords = this._getRawRecordsArray();
516
- if (!rawRecords || !Array.isArray(this.records)) return [];
517
- const realDeletedRecordIndexs = [], recordIndexsMaxToMin = recordIndexs.slice().sort(((a, b) => b - a)), rawDeletedIndexs = [];
518
- for (let index = 0; index < recordIndexsMaxToMin.length; index++) {
519
- const viewIndex = recordIndexsMaxToMin[index];
520
- if (viewIndex >= this.records.length || viewIndex < 0) continue;
521
- const deletedRecord = this.records[viewIndex], rawIndex = rawRecords.indexOf(deletedRecord);
522
- rawIndex >= 0 && (rawRecords.splice(rawIndex, 1), rawDeletedIndexs.push(rawIndex)),
523
- realDeletedRecordIndexs.push(viewIndex);
524
- }
525
- return this.beforeChangedRecordsMap.clear(), this.sortedIndexMap.clear(), this.updateFilterRules(null === (_b = this.dataConfig) || void 0 === _b ? void 0 : _b.filterRules),
526
- (null === (_c = this.dataSourceObj) || void 0 === _c ? void 0 : _c.deleted) && this.dataSourceObj.deleted(rawDeletedIndexs),
527
- realDeletedRecordIndexs;
439
+ return [];
528
440
  }
529
441
  deleteRecordsForSorted(recordIndexs) {
530
442
  if (Array.isArray(this.records)) {
@@ -539,38 +451,20 @@ class DataSource extends EventTarget_1.EventTarget {
539
451
  this.pagination.totalCount = this._sourceLength), this.beforeChangedRecordsMap.clear();
540
452
  }
541
453
  }
542
- updateRecords(records, recordIndexs, syncToOriginalRecords = !1) {
543
- var _a;
544
- if (!syncToOriginalRecords) {
545
- const realDeletedRecordIndexs = [];
546
- for (let index = 0; index < recordIndexs.length; index++) {
547
- const recordIndex = recordIndexs[index];
548
- if (Array.isArray(recordIndex)) this.beforeChangedRecordsMap.delete(recordIndex.toString()),
549
- realDeletedRecordIndexs.push(recordIndex), recordIndex.slice(0, -1).reduce(((acc, key) => (void 0 === acc[key] && (acc[key] = {}),
550
- acc[key].children)), this.records)[recordIndex[recordIndex.length - 1]] = records[index]; else {
551
- if (recordIndex >= this._sourceLength || recordIndex < 0) continue;
552
- this.beforeChangedRecordsMap.delete(recordIndex.toString()), realDeletedRecordIndexs.push(recordIndex);
553
- for (let i = 0; i < this.fieldAggregators.length; i++) this.fieldAggregators[i].updateRecord(this.records[recordIndex], records[index]);
554
- this.records[recordIndex] = records[index];
555
- }
556
- }
557
- return this.userPagination && this.updatePagerData(), realDeletedRecordIndexs;
558
- }
559
- const rawRecords = this._getRawRecordsArray();
560
- if (!rawRecords || !Array.isArray(this.records)) return [];
561
- const realUpdatedIndexs = [];
454
+ updateRecords(records, recordIndexs) {
455
+ const realDeletedRecordIndexs = [];
562
456
  for (let index = 0; index < recordIndexs.length; index++) {
563
457
  const recordIndex = recordIndexs[index];
564
458
  if (Array.isArray(recordIndex)) this.beforeChangedRecordsMap.delete(recordIndex.toString()),
565
- realUpdatedIndexs.push(recordIndex), recordIndex.slice(0, -1).reduce(((acc, key) => (void 0 === acc[key] && (acc[key] = {}),
566
- acc[key].children)), rawRecords)[recordIndex[recordIndex.length - 1]] = records[index]; else {
567
- if (recordIndex >= this.records.length || recordIndex < 0) continue;
568
- const oldRecord = this.records[recordIndex], rawIndex = rawRecords.indexOf(oldRecord);
569
- rawIndex >= 0 && (rawRecords[rawIndex] = records[index]), realUpdatedIndexs.push(recordIndex);
459
+ realDeletedRecordIndexs.push(recordIndex), recordIndex.slice(0, -1).reduce(((acc, key) => (void 0 === acc[key] && (acc[key] = {}),
460
+ acc[key].children)), this.records)[recordIndex[recordIndex.length - 1]] = records[index]; else {
461
+ if (recordIndex >= this._sourceLength || recordIndex < 0) continue;
462
+ this.beforeChangedRecordsMap.delete(recordIndex.toString()), realDeletedRecordIndexs.push(recordIndex);
463
+ for (let i = 0; i < this.fieldAggregators.length; i++) this.fieldAggregators[i].updateRecord(this.records[recordIndex], records[index]);
464
+ this.records[recordIndex] = records[index];
570
465
  }
571
466
  }
572
- return this.beforeChangedRecordsMap.clear(), this.sortedIndexMap.clear(), this.updateFilterRules(null === (_a = this.dataConfig) || void 0 === _a ? void 0 : _a.filterRules),
573
- realUpdatedIndexs;
467
+ return this.userPagination && this.updatePagerData(), realDeletedRecordIndexs;
574
468
  }
575
469
  updateRecordsForSorted(records, recordIndexs) {
576
470
  const realDeletedRecordIndexs = [];
@@ -636,31 +530,23 @@ class DataSource extends EventTarget_1.EventTarget {
636
530
  setSortedIndexMap(field, filedMap) {
637
531
  this.sortedIndexMap.set(field, filedMap);
638
532
  }
639
- markForceVisibleRecord(record) {
640
- !record || "object" != typeof record && "function" != typeof record || (this._forceVisibleRecords || (this._forceVisibleRecords = new WeakSet),
641
- this._forceVisibleRecords.add(record));
642
- }
643
- clearForceVisibleRecords() {
644
- this._forceVisibleRecords = void 0;
645
- }
646
533
  clearFilteredChildren(record) {
647
534
  var _a, _b;
648
535
  record.filteredChildren = void 0;
649
536
  for (let i = 0; i < (null !== (_b = null === (_a = record.children) || void 0 === _a ? void 0 : _a.length) && void 0 !== _b ? _b : 0); i++) this.clearFilteredChildren(record.children[i]);
650
537
  }
651
538
  filterRecord(record) {
652
- var _a, _b, _c, _d;
653
- if (null === (_a = this._forceVisibleRecords) || void 0 === _a ? void 0 : _a.has(record)) return !0;
539
+ var _a, _b, _c;
654
540
  let isReserved = !0;
655
- for (let i = 0; i < (null === (_b = this.dataConfig.filterRules) || void 0 === _b ? void 0 : _b.length); i++) {
656
- const filterRule = null === (_c = this.dataConfig) || void 0 === _c ? void 0 : _c.filterRules[i];
541
+ for (let i = 0; i < (null === (_a = this.dataConfig.filterRules) || void 0 === _a ? void 0 : _a.length); i++) {
542
+ const filterRule = null === (_b = this.dataConfig) || void 0 === _b ? void 0 : _b.filterRules[i];
657
543
  if (filterRule.filterKey) {
658
544
  const filterValue = record[filterRule.filterKey];
659
545
  if (-1 === filterRule.filteredValues.indexOf(filterValue)) {
660
546
  isReserved = !1;
661
547
  break;
662
548
  }
663
- } else if (!(null === (_d = filterRule.filterFunc) || void 0 === _d ? void 0 : _d.call(filterRule, record))) {
549
+ } else if (!(null === (_c = filterRule.filterFunc) || void 0 === _c ? void 0 : _c.call(filterRule, record))) {
664
550
  isReserved = !1;
665
551
  break;
666
552
  }