@visactor/vtable 1.26.7 → 1.26.8

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 (183) hide show
  1. package/cjs/ListTable.d.ts +1 -1
  2. package/cjs/ListTable.js +21 -13
  3. package/cjs/ListTable.js.map +1 -1
  4. package/cjs/PivotChart.js +16 -16
  5. package/cjs/PivotChart.js.map +1 -1
  6. package/cjs/PivotTable.d.ts +1 -1
  7. package/cjs/PivotTable.js +65 -63
  8. package/cjs/PivotTable.js.map +1 -1
  9. package/cjs/body-helper/body-helper.js +2 -1
  10. package/cjs/components/index.js +1 -2
  11. package/cjs/core/BaseTable.js +2 -2
  12. package/cjs/core/BaseTable.js.map +1 -1
  13. package/cjs/core/record-helper.d.ts +1 -1
  14. package/cjs/core/record-helper.js +60 -12
  15. package/cjs/core/record-helper.js.map +1 -1
  16. package/cjs/core/tableHelper.js +2 -1
  17. package/cjs/data/DataSource.d.ts +3 -1
  18. package/cjs/data/DataSource.js +71 -23
  19. package/cjs/data/DataSource.js.map +1 -1
  20. package/cjs/dataset/dataset.d.ts +9 -1
  21. package/cjs/dataset/dataset.js +344 -187
  22. package/cjs/dataset/dataset.js.map +1 -1
  23. package/cjs/event/event.d.ts +94 -8
  24. package/cjs/event/event.js +698 -191
  25. package/cjs/event/event.js.map +1 -1
  26. package/cjs/event/helper.js +1 -1
  27. package/cjs/event/media-click.js +4 -1
  28. package/cjs/event/media-click.js.map +1 -1
  29. package/cjs/event/scroll.js +1 -1
  30. package/cjs/event/sparkline-event.js +1 -2
  31. package/cjs/event/util.js +2 -2
  32. package/cjs/event/util.js.map +1 -1
  33. package/cjs/index.d.ts +1 -1
  34. package/cjs/index.js +1 -1
  35. package/cjs/index.js.map +1 -1
  36. package/cjs/layout/pivot-header-layout.js +33 -17
  37. package/cjs/layout/pivot-header-layout.js.map +1 -1
  38. package/cjs/plugins/custom-cell-style.js +1 -1
  39. package/cjs/plugins/index.js +2 -1
  40. package/cjs/plugins/interface.js +1 -1
  41. package/cjs/plugins/invert-highlight.js +1 -1
  42. package/cjs/plugins/list-tree-stick-cell.js +1 -1
  43. package/cjs/plugins/plugin-manager.js +1 -1
  44. package/cjs/scenegraph/group-creater/cell-helper.js +27 -10
  45. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  46. package/cjs/scenegraph/group-creater/cell-type/text-cell.d.ts +1 -1
  47. package/cjs/scenegraph/group-creater/cell-type/text-cell.js +14 -10
  48. package/cjs/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
  49. package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.js +17 -4
  50. package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.js.map +1 -1
  51. package/cjs/scenegraph/layout/compute-col-width.js +6 -1
  52. package/cjs/scenegraph/layout/compute-col-width.js.map +1 -1
  53. package/cjs/scenegraph/layout/compute-row-height.js +11 -3
  54. package/cjs/scenegraph/layout/compute-row-height.js.map +1 -1
  55. package/cjs/scenegraph/layout/update-height.d.ts +4 -3
  56. package/cjs/scenegraph/layout/update-height.js +43 -29
  57. package/cjs/scenegraph/layout/update-height.js.map +1 -1
  58. package/cjs/scenegraph/layout/update-width.d.ts +2 -1
  59. package/cjs/scenegraph/layout/update-width.js +49 -37
  60. package/cjs/scenegraph/layout/update-width.js.map +1 -1
  61. package/cjs/scenegraph/scenegraph.d.ts +2 -2
  62. package/cjs/scenegraph/scenegraph.js +6 -5
  63. package/cjs/scenegraph/scenegraph.js.map +1 -1
  64. package/cjs/scenegraph/utils/corner-custom-merge.d.ts +10 -0
  65. package/cjs/scenegraph/utils/corner-custom-merge.js +68 -0
  66. package/cjs/scenegraph/utils/corner-custom-merge.js.map +1 -0
  67. package/cjs/state/resize/update-resize-column.js +25 -13
  68. package/cjs/state/resize/update-resize-column.js.map +1 -1
  69. package/cjs/state/resize/update-resize-row.js +24 -12
  70. package/cjs/state/resize/update-resize-row.js.map +1 -1
  71. package/cjs/themes.d.ts +4 -2
  72. package/cjs/themes.js +12 -4
  73. package/cjs/themes.js.map +1 -1
  74. package/cjs/tools/get-data-path/create-dataset.js +4 -4
  75. package/cjs/tools/get-data-path/create-dataset.js.map +1 -1
  76. package/cjs/tools/get-data-path/index.js +4 -4
  77. package/cjs/tools/get-data-path/index.js.map +1 -1
  78. package/cjs/tools/style.d.ts +3 -1
  79. package/cjs/tools/style.js +2 -2
  80. package/cjs/tools/style.js.map +1 -1
  81. package/cjs/ts-types/common.d.ts +1 -0
  82. package/cjs/ts-types/common.js.map +1 -1
  83. package/cjs/ts-types/dataset/aggregation.d.ts +1 -0
  84. package/cjs/ts-types/dataset/aggregation.js +21 -3
  85. package/cjs/ts-types/dataset/aggregation.js.map +1 -1
  86. package/cjs/ts-types/new-data-set.d.ts +1 -0
  87. package/cjs/ts-types/new-data-set.js.map +1 -1
  88. package/cjs/ts-types/table-engine.d.ts +3 -2
  89. package/cjs/ts-types/table-engine.js.map +1 -1
  90. package/cjs/vrender.js.map +1 -1
  91. package/dist/vtable.js +2224 -779
  92. package/dist/vtable.min.js +1 -1
  93. package/es/ListTable.d.ts +1 -1
  94. package/es/ListTable.js +21 -15
  95. package/es/ListTable.js.map +1 -1
  96. package/es/PivotChart.js +16 -16
  97. package/es/PivotChart.js.map +1 -1
  98. package/es/PivotTable.d.ts +1 -1
  99. package/es/PivotTable.js +65 -63
  100. package/es/PivotTable.js.map +1 -1
  101. package/es/body-helper/body-helper.js +2 -1
  102. package/es/components/index.js +1 -2
  103. package/es/core/BaseTable.js +2 -2
  104. package/es/core/BaseTable.js.map +1 -1
  105. package/es/core/record-helper.d.ts +1 -1
  106. package/es/core/record-helper.js +60 -12
  107. package/es/core/record-helper.js.map +1 -1
  108. package/es/core/tableHelper.js +2 -1
  109. package/es/data/DataSource.d.ts +3 -1
  110. package/es/data/DataSource.js +70 -23
  111. package/es/data/DataSource.js.map +1 -1
  112. package/es/dataset/dataset.d.ts +9 -1
  113. package/es/dataset/dataset.js +341 -187
  114. package/es/dataset/dataset.js.map +1 -1
  115. package/es/event/event.d.ts +94 -8
  116. package/es/event/event.js +696 -191
  117. package/es/event/event.js.map +1 -1
  118. package/es/event/helper.js +1 -1
  119. package/es/event/media-click.js +4 -1
  120. package/es/event/media-click.js.map +1 -1
  121. package/es/event/scroll.js +1 -1
  122. package/es/event/sparkline-event.js +1 -2
  123. package/es/event/util.js +2 -2
  124. package/es/event/util.js.map +1 -1
  125. package/es/index.d.ts +1 -1
  126. package/es/index.js +1 -1
  127. package/es/index.js.map +1 -1
  128. package/es/layout/pivot-header-layout.js +29 -17
  129. package/es/layout/pivot-header-layout.js.map +1 -1
  130. package/es/plugins/custom-cell-style.js +1 -1
  131. package/es/plugins/index.js +2 -1
  132. package/es/plugins/interface.js +1 -1
  133. package/es/plugins/invert-highlight.js +1 -1
  134. package/es/plugins/list-tree-stick-cell.js +1 -1
  135. package/es/plugins/plugin-manager.js +1 -1
  136. package/es/scenegraph/group-creater/cell-helper.js +23 -9
  137. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  138. package/es/scenegraph/group-creater/cell-type/text-cell.d.ts +1 -1
  139. package/es/scenegraph/group-creater/cell-type/text-cell.js +13 -8
  140. package/es/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
  141. package/es/scenegraph/group-creater/progress/create-group-for-first-screen.js +17 -5
  142. package/es/scenegraph/group-creater/progress/create-group-for-first-screen.js.map +1 -1
  143. package/es/scenegraph/layout/compute-col-width.js +6 -1
  144. package/es/scenegraph/layout/compute-col-width.js.map +1 -1
  145. package/es/scenegraph/layout/compute-row-height.js +11 -3
  146. package/es/scenegraph/layout/compute-row-height.js.map +1 -1
  147. package/es/scenegraph/layout/update-height.d.ts +4 -3
  148. package/es/scenegraph/layout/update-height.js +40 -26
  149. package/es/scenegraph/layout/update-height.js.map +1 -1
  150. package/es/scenegraph/layout/update-width.d.ts +2 -1
  151. package/es/scenegraph/layout/update-width.js +46 -34
  152. package/es/scenegraph/layout/update-width.js.map +1 -1
  153. package/es/scenegraph/scenegraph.d.ts +2 -2
  154. package/es/scenegraph/scenegraph.js +7 -5
  155. package/es/scenegraph/scenegraph.js.map +1 -1
  156. package/es/scenegraph/utils/corner-custom-merge.d.ts +10 -0
  157. package/es/scenegraph/utils/corner-custom-merge.js +59 -0
  158. package/es/scenegraph/utils/corner-custom-merge.js.map +1 -0
  159. package/es/state/resize/update-resize-column.js +19 -10
  160. package/es/state/resize/update-resize-column.js.map +1 -1
  161. package/es/state/resize/update-resize-row.js +19 -9
  162. package/es/state/resize/update-resize-row.js.map +1 -1
  163. package/es/themes.d.ts +4 -2
  164. package/es/themes.js +11 -3
  165. package/es/themes.js.map +1 -1
  166. package/es/tools/get-data-path/create-dataset.js +4 -4
  167. package/es/tools/get-data-path/create-dataset.js.map +1 -1
  168. package/es/tools/get-data-path/index.js +4 -4
  169. package/es/tools/get-data-path/index.js.map +1 -1
  170. package/es/tools/style.d.ts +3 -1
  171. package/es/tools/style.js +2 -2
  172. package/es/tools/style.js.map +1 -1
  173. package/es/ts-types/common.d.ts +1 -0
  174. package/es/ts-types/common.js.map +1 -1
  175. package/es/ts-types/dataset/aggregation.d.ts +1 -0
  176. package/es/ts-types/dataset/aggregation.js +21 -3
  177. package/es/ts-types/dataset/aggregation.js.map +1 -1
  178. package/es/ts-types/new-data-set.d.ts +1 -0
  179. package/es/ts-types/new-data-set.js.map +1 -1
  180. package/es/ts-types/table-engine.d.ts +3 -2
  181. package/es/ts-types/table-engine.js.map +1 -1
  182. package/es/vrender.js.map +1 -1
  183. package/package.json +9 -9
@@ -99,7 +99,7 @@ export declare class ListTable extends BaseTable implements ListTableAPI {
99
99
  getEditor(col: number, row: number): IEditor<any, any>;
100
100
  isHasEditorDefine(col: number, row: number): boolean;
101
101
  changeCellValue(col: number, row: number, value: string | number | null, workOnEditableCell?: boolean, triggerEvent?: boolean, noTriggerChangeCellValuesEvent?: boolean): void;
102
- changeCellValues(startCol: number, startRow: number, values: (string | number)[][], workOnEditableCell?: boolean, triggerEvent?: boolean, noTriggerChangeCellValuesEvent?: boolean): Promise<boolean[][]>;
102
+ changeCellValues(startCol: number, startRow: number, values: (string | number)[][], workOnEditableCell?: boolean, triggerEvent?: boolean, noTriggerChangeCellValuesEvent?: boolean, shouldCancel?: () => boolean): Promise<boolean[][]>;
103
103
  changeCellValuesByRanges(ranges: CellRange[], value: string | number | null, workOnEditableCell?: boolean, triggerEvent?: boolean, noTriggerChangeCellValuesEvent?: boolean): Promise<void>;
104
104
  changeSourceCellValue(recordIndex: number | number[], field: FieldDef, value: string | number | null): void;
105
105
  changeCellValueByRecord(recordIndex: number | number[], field: FieldDef, value: string | number | null, options?: {
package/cjs/ListTable.js CHANGED
@@ -40,6 +40,10 @@ function clearLayoutColumnState(columns) {
40
40
  }));
41
41
  }
42
42
 
43
+ function isSameField(left, right) {
44
+ return left === right || Array.isArray(left) && Array.isArray(right) && (0, vutils_1.arrayEqual)(left, right);
45
+ }
46
+
43
47
  class ListTable extends core_1.BaseTable {
44
48
  constructor(container, options) {
45
49
  var _a, _b, _c, _d, _e, _f, _g, _h;
@@ -343,7 +347,7 @@ class ListTable extends core_1.BaseTable {
343
347
  return this.transpose ? this.dataSource.getTableIndex(recordIndex) + this.rowHeaderLevelCount : this.dataSource.getTableIndex(recordIndex) + this.columnHeaderLevelCount;
344
348
  }
345
349
  getTableIndexByField(field) {
346
- const colObj = this.internalProps.layoutMap.columnObjects.find((col => col.field === field));
350
+ const colObj = this.internalProps.layoutMap.columnObjects.find((col => isSameField(col.field, field)));
347
351
  if (!colObj) return -1;
348
352
  const layoutRange = this.internalProps.layoutMap.getBodyLayoutRangeById(colObj.id);
349
353
  return this.transpose ? layoutRange.start.row : layoutRange.start.col;
@@ -508,7 +512,7 @@ class ListTable extends core_1.BaseTable {
508
512
  };
509
513
  }
510
514
  getCellRangeByField(field, index) {
511
- const {layoutMap: layoutMap} = this.internalProps, colObj = layoutMap.columnObjects.find((col => col.field === field));
515
+ const {layoutMap: layoutMap} = this.internalProps, colObj = layoutMap.columnObjects.find((col => isSameField(col.field, field)));
512
516
  if (colObj) {
513
517
  const layoutRange = layoutMap.getBodyLayoutRangeById(colObj.id);
514
518
  let startRow;
@@ -623,7 +627,7 @@ class ListTable extends core_1.BaseTable {
623
627
  _getSortFuncFromHeaderOption(columns, field, fieldKey) {
624
628
  if (columns || (columns = this.internalProps.columns), field && columns && columns.length > 0) for (let i = 0; i < columns.length; i++) {
625
629
  const header = columns[i];
626
- if ((fieldKey && fieldKey === header.fieldKey || !fieldKey && header.field === field) && header.sort && "function" == typeof header.sort) return header.sort;
630
+ if ((fieldKey && fieldKey === header.fieldKey || !fieldKey && isSameField(header.field, field)) && header.sort && "function" == typeof header.sort) return header.sort;
627
631
  if (header.columns) {
628
632
  const sort = this._getSortFuncFromHeaderOption(header.columns, field, fieldKey);
629
633
  if (sort) return sort;
@@ -636,7 +640,7 @@ class ListTable extends core_1.BaseTable {
636
640
  if (normalizedSortState.length ? this.internalProps.sortState = sortState : this.internalProps.sortState = null,
637
641
  executeSort) if (normalizedSortState.length) this.internalProps.layoutMap.headerObjects.some((item => !1 !== item.define.sort)) && (this.dataSource.sort(normalizedSortState.map((item => {
638
642
  const sortFunc = this._getSortFuncFromHeaderOption(this.internalProps.columns, item.field);
639
- this.internalProps.layoutMap.headerObjects.find((col => col && col.field === item.field));
643
+ this.internalProps.layoutMap.headerObjects.find((col => col && isSameField(col.field, item.field)));
640
644
  return {
641
645
  field: item.field,
642
646
  order: item.order,
@@ -741,7 +745,7 @@ class ListTable extends core_1.BaseTable {
741
745
  const sortState = Array.isArray(this.sortState) ? this.sortState : [ this.sortState ];
742
746
  sortState.some((item => item.order && item.field && "normal" !== item.order)) && this.internalProps.layoutMap.headerObjectsIncludeHided.some((item => !1 !== item.define.sort)) && this.dataSource.sort(sortState.map((item => {
743
747
  const sortFunc = this._getSortFuncFromHeaderOption(void 0, item.field);
744
- this.internalProps.layoutMap.headerObjectsIncludeHided.find((col => col && col.field === item.field));
748
+ this.internalProps.layoutMap.headerObjectsIncludeHided.find((col => col && isSameField(col.field, item.field)));
745
749
  return {
746
750
  field: item.field,
747
751
  order: item.order || "asc",
@@ -829,8 +833,8 @@ class ListTable extends core_1.BaseTable {
829
833
  changeCellValue(col, row, value, workOnEditableCell = !1, triggerEvent = !0, noTriggerChangeCellValuesEvent) {
830
834
  return (0, record_helper_1.listTableChangeCellValue)(col, row, value, workOnEditableCell, triggerEvent, this, noTriggerChangeCellValuesEvent);
831
835
  }
832
- changeCellValues(startCol, startRow, values, workOnEditableCell = !1, triggerEvent = !0, noTriggerChangeCellValuesEvent) {
833
- return (0, record_helper_1.listTableChangeCellValues)(startCol, startRow, values, workOnEditableCell, triggerEvent, this, noTriggerChangeCellValuesEvent);
836
+ changeCellValues(startCol, startRow, values, workOnEditableCell = !1, triggerEvent = !0, noTriggerChangeCellValuesEvent, shouldCancel) {
837
+ return (0, record_helper_1.listTableChangeCellValues)(startCol, startRow, values, workOnEditableCell, triggerEvent, this, noTriggerChangeCellValuesEvent, shouldCancel);
834
838
  }
835
839
  changeCellValuesByRanges(ranges, value, workOnEditableCell = !1, triggerEvent = !0, noTriggerChangeCellValuesEvent) {
836
840
  return (0, record_helper_1.listTableChangeCellValuesByRanges)(ranges, value, workOnEditableCell, triggerEvent, this, noTriggerChangeCellValuesEvent);
@@ -860,11 +864,13 @@ class ListTable extends core_1.BaseTable {
860
864
  var _a, _b, _c, _d, _e;
861
865
  const triggerEvent = null === (_a = null == options ? void 0 : options.triggerEvent) || void 0 === _a || _a, noTriggerChangeCellValuesEvent = null == options ? void 0 : options.noTriggerChangeCellValuesEvent, autoRefresh = null === (_b = null == options ? void 0 : options.autoRefresh) || void 0 === _b || _b, records = null === (_c = this.dataSource.dataSourceObj) || void 0 === _c ? void 0 : _c.records;
862
866
  let record, oldValue;
863
- if (!Array.isArray(records) || "string" != typeof field && "number" != typeof field || (record = Array.isArray(recordIndex) ? (0,
867
+ if (Array.isArray(records) && ("string" == typeof field || "number" == typeof field || Array.isArray(field)) && (record = Array.isArray(recordIndex) ? (0,
864
868
  DataSource_1.getValueFromDeepArray)(records, recordIndex) : records[recordIndex],
865
- oldValue = null == record ? void 0 : record[field]), this.dataSource.changeFieldValueByRecordIndex(value, recordIndex, field, this),
869
+ oldValue = (0, DataSource_1.getRecordFieldValue)(record, field)), this.dataSource.changeFieldValueByRecordIndex(value, recordIndex, field, this),
870
+ Array.isArray(records) && (record = Array.isArray(recordIndex) ? (0, DataSource_1.getValueFromDeepArray)(records, recordIndex) : records[recordIndex]),
866
871
  !triggerEvent) return;
867
- const changedValue = !record || "string" != typeof field && "number" != typeof field ? value : null == record ? void 0 : record[field];
872
+ const changedValue = record && ("string" == typeof field || "number" == typeof field || Array.isArray(field)) ? (0,
873
+ DataSource_1.getRecordFieldValue)(record, field) : value;
868
874
  if (oldValue !== changedValue) {
869
875
  const cellAddr = this.getCellAddrByFieldRecord(field, recordIndex), changeValue = {
870
876
  col: null !== (_d = null == cellAddr ? void 0 : cellAddr.col) && void 0 !== _d ? _d : -1,
@@ -895,11 +901,13 @@ class ListTable extends core_1.BaseTable {
895
901
  for (let i = 0; i < changeValues.length; i++) {
896
902
  const {recordIndex: recordIndex, field: field, value: value} = changeValues[i], records = null === (_c = this.dataSource.dataSourceObj) || void 0 === _c ? void 0 : _c.records;
897
903
  let record, oldValue;
898
- if (!Array.isArray(records) || "string" != typeof field && "number" != typeof field || (record = Array.isArray(recordIndex) ? (0,
904
+ if (Array.isArray(records) && ("string" == typeof field || "number" == typeof field || Array.isArray(field)) && (record = Array.isArray(recordIndex) ? (0,
899
905
  DataSource_1.getValueFromDeepArray)(records, recordIndex) : records[recordIndex],
900
- oldValue = null == record ? void 0 : record[field]), this.dataSource.changeFieldValueByRecordIndex(value, recordIndex, field, this),
906
+ oldValue = (0, DataSource_1.getRecordFieldValue)(record, field)), this.dataSource.changeFieldValueByRecordIndex(value, recordIndex, field, this),
907
+ Array.isArray(records) && (record = Array.isArray(recordIndex) ? (0, DataSource_1.getValueFromDeepArray)(records, recordIndex) : records[recordIndex]),
901
908
  triggerEvent) {
902
- const changedValue = !record || "string" != typeof field && "number" != typeof field ? value : null == record ? void 0 : record[field];
909
+ const changedValue = record && ("string" == typeof field || "number" == typeof field || Array.isArray(field)) ? (0,
910
+ DataSource_1.getRecordFieldValue)(record, field) : value;
903
911
  if (oldValue !== changedValue) {
904
912
  const changeValue = {
905
913
  col: null !== (_e = null === (_d = this.getCellAddrByFieldRecord(field, recordIndex)) || void 0 === _d ? void 0 : _d.col) && void 0 !== _e ? _e : -1,