handsontable 14.0.0-next-c080457-20231107 → 14.0.0-next-bfad250-20231108
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/3rdparty/SheetClip/SheetClip.js +2 -2
- package/3rdparty/SheetClip/SheetClip.mjs +2 -2
- package/3rdparty/autoResize/autoResize.js +2 -2
- package/3rdparty/autoResize/autoResize.mjs +2 -2
- package/3rdparty/walkontable/src/calculator/viewportColumns.js +108 -85
- package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +108 -85
- package/3rdparty/walkontable/src/calculator/viewportRows.js +60 -52
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +60 -52
- package/3rdparty/walkontable/src/cell/coords.js +7 -5
- package/3rdparty/walkontable/src/cell/coords.mjs +7 -5
- package/3rdparty/walkontable/src/core/clone.js +6 -0
- package/3rdparty/walkontable/src/core/clone.mjs +6 -0
- package/3rdparty/walkontable/src/event.js +125 -74
- package/3rdparty/walkontable/src/event.mjs +125 -74
- package/3rdparty/walkontable/src/filter/column.js +16 -0
- package/3rdparty/walkontable/src/filter/column.mjs +16 -0
- package/3rdparty/walkontable/src/filter/row.js +16 -0
- package/3rdparty/walkontable/src/filter/row.mjs +16 -0
- package/3rdparty/walkontable/src/overlay/bottom.js +1 -1
- package/3rdparty/walkontable/src/overlay/bottom.mjs +1 -1
- package/3rdparty/walkontable/src/overlay/top.js +1 -1
- package/3rdparty/walkontable/src/overlay/top.mjs +1 -1
- package/3rdparty/walkontable/src/renderer/_base.js +12 -5
- package/3rdparty/walkontable/src/renderer/_base.mjs +12 -5
- package/3rdparty/walkontable/src/renderer/cells.js +6 -2
- package/3rdparty/walkontable/src/renderer/cells.mjs +6 -2
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +6 -2
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +6 -2
- package/3rdparty/walkontable/src/renderer/rows.js +5 -0
- package/3rdparty/walkontable/src/renderer/rows.mjs +5 -0
- package/3rdparty/walkontable/src/renderer/table.js +24 -17
- package/3rdparty/walkontable/src/renderer/table.mjs +24 -17
- package/3rdparty/walkontable/src/scroll.js +2 -2
- package/3rdparty/walkontable/src/scroll.mjs +2 -2
- package/3rdparty/walkontable/src/selection/border/border.js +1 -1
- package/3rdparty/walkontable/src/selection/border/border.mjs +1 -1
- package/3rdparty/walkontable/src/settings.js +10 -10
- package/3rdparty/walkontable/src/settings.mjs +10 -10
- package/3rdparty/walkontable/src/table.js +3 -3
- package/3rdparty/walkontable/src/table.mjs +3 -3
- package/3rdparty/walkontable/src/utils/column.js +19 -4
- package/3rdparty/walkontable/src/utils/column.mjs +19 -4
- package/3rdparty/walkontable/src/utils/nodesPool.js +5 -0
- package/3rdparty/walkontable/src/utils/nodesPool.mjs +5 -0
- package/3rdparty/walkontable/src/utils/orderView/view.js +13 -6
- package/3rdparty/walkontable/src/utils/orderView/view.mjs +13 -6
- package/3rdparty/walkontable/src/utils/orderView/viewSize.js +9 -6
- package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +9 -6
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +7 -4
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +7 -4
- package/3rdparty/walkontable/src/utils/row.js +14 -2
- package/3rdparty/walkontable/src/utils/row.mjs +14 -2
- package/3rdparty/walkontable/src/viewport.js +9 -9
- package/3rdparty/walkontable/src/viewport.mjs +9 -9
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/core.js +25 -25
- package/core.mjs +25 -25
- package/dataMap/dataMap.js +99 -90
- package/dataMap/dataMap.mjs +99 -90
- package/dataMap/dataSource.js +14 -8
- package/dataMap/dataSource.mjs +14 -8
- package/dataMap/metaManager/lazyFactoryMap.js +19 -7
- package/dataMap/metaManager/lazyFactoryMap.mjs +19 -7
- package/dataMap/metaManager/metaLayers/cellMeta.js +8 -3
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +8 -3
- package/dataMap/metaManager/metaLayers/columnMeta.js +7 -1
- package/dataMap/metaManager/metaLayers/columnMeta.mjs +7 -1
- package/dataMap/metaManager/metaLayers/globalMeta.js +6 -1
- package/dataMap/metaManager/metaLayers/globalMeta.mjs +6 -1
- package/dataMap/metaManager/metaLayers/tableMeta.js +6 -2
- package/dataMap/metaManager/metaLayers/tableMeta.mjs +6 -2
- package/dataMap/metaManager/metaSchema.js +55 -55
- package/dataMap/metaManager/metaSchema.mjs +55 -55
- package/dataMap/metaManager/mods/dynamicCellMeta.js +7 -2
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +7 -2
- package/dataMap/metaManager/mods/extendMetaProperties.js +8 -4
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +8 -4
- package/dataMap/metaManager/utils.js +2 -2
- package/dataMap/metaManager/utils.mjs +2 -2
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +2 -2
- package/dist/handsontable.full.js +7337 -6389
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +154 -154
- package/dist/handsontable.js +7336 -6388
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +28 -28
- package/editorManager.js +105 -95
- package/editorManager.mjs +105 -95
- package/editors/autocompleteEditor/autocompleteEditor.js +47 -46
- package/editors/autocompleteEditor/autocompleteEditor.mjs +46 -45
- package/editors/baseEditor/baseEditor.js +23 -26
- package/editors/baseEditor/baseEditor.mjs +23 -26
- package/editors/dateEditor/dateEditor.js +24 -15
- package/editors/dateEditor/dateEditor.mjs +24 -15
- package/editors/dropdownEditor/dropdownEditor.js +1 -1
- package/editors/dropdownEditor/dropdownEditor.mjs +1 -1
- package/editors/handsontableEditor/handsontableEditor.js +4 -4
- package/editors/handsontableEditor/handsontableEditor.mjs +4 -4
- package/editors/textEditor/textEditor.js +23 -17
- package/editors/textEditor/textEditor.mjs +24 -18
- package/eventManager.js +8 -0
- package/eventManager.mjs +8 -0
- package/helpers/array.js +2 -2
- package/helpers/array.mjs +2 -2
- package/helpers/dom/element.js +7 -7
- package/helpers/dom/element.mjs +7 -7
- package/helpers/function.js +1 -1
- package/helpers/function.mjs +1 -1
- package/helpers/mixed.js +1 -1
- package/helpers/mixed.mjs +1 -1
- package/helpers/object.js +4 -4
- package/helpers/object.mjs +4 -4
- package/helpers/string.js +1 -1
- package/helpers/string.mjs +1 -1
- package/package.json +1 -1
- package/pluginHooks.d.ts +0 -2
- package/pluginHooks.js +12 -3
- package/pluginHooks.mjs +12 -3
- package/plugins/autoColumnSize/autoColumnSize.js +141 -130
- package/plugins/autoColumnSize/autoColumnSize.mjs +140 -129
- package/plugins/autoRowSize/autoRowSize.js +112 -125
- package/plugins/autoRowSize/autoRowSize.mjs +110 -123
- package/plugins/autofill/autofill.d.ts +0 -1
- package/plugins/autofill/autofill.js +98 -102
- package/plugins/autofill/autofill.mjs +97 -101
- package/plugins/base/base.js +61 -28
- package/plugins/base/base.mjs +60 -28
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +29 -24
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +28 -23
- package/plugins/collapsibleColumns/collapsibleColumns.js +104 -107
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +102 -104
- package/plugins/columnSorting/columnSorting.js +107 -99
- package/plugins/columnSorting/columnSorting.mjs +106 -98
- package/plugins/columnSorting/columnStatesManager.js +12 -6
- package/plugins/columnSorting/columnStatesManager.mjs +12 -6
- package/plugins/columnSummary/columnSummary.js +71 -58
- package/plugins/columnSummary/columnSummary.mjs +70 -57
- package/plugins/columnSummary/endpoints.js +20 -14
- package/plugins/columnSummary/endpoints.mjs +20 -14
- package/plugins/comments/commentEditor.js +30 -2
- package/plugins/comments/commentEditor.mjs +30 -2
- package/plugins/comments/comments.js +158 -169
- package/plugins/comments/comments.mjs +157 -168
- package/plugins/comments/displaySwitch.js +7 -3
- package/plugins/comments/displaySwitch.mjs +7 -3
- package/plugins/contextMenu/commandExecutor.js +15 -2
- package/plugins/contextMenu/commandExecutor.mjs +15 -2
- package/plugins/contextMenu/contextMenu.js +96 -102
- package/plugins/contextMenu/contextMenu.mjs +95 -101
- package/plugins/contextMenu/itemsFactory.js +19 -4
- package/plugins/contextMenu/itemsFactory.mjs +19 -4
- package/plugins/contextMenu/menu/cursor.js +36 -0
- package/plugins/contextMenu/menu/cursor.mjs +36 -0
- package/plugins/contextMenu/menu/menu.js +57 -5
- package/plugins/contextMenu/menu/menu.mjs +57 -5
- package/plugins/contextMenu/predefinedItems/removeColumn.js +1 -1
- package/plugins/contextMenu/predefinedItems/removeColumn.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/removeRow.js +1 -1
- package/plugins/contextMenu/predefinedItems/removeRow.mjs +1 -1
- package/plugins/copyPaste/copyPaste.js +74 -75
- package/plugins/copyPaste/copyPaste.mjs +74 -75
- package/plugins/customBorders/customBorders.js +57 -50
- package/plugins/customBorders/customBorders.mjs +56 -49
- package/plugins/dragToScroll/dragToScroll.js +50 -54
- package/plugins/dragToScroll/dragToScroll.mjs +49 -52
- package/plugins/dropdownMenu/dropdownMenu.js +136 -131
- package/plugins/dropdownMenu/dropdownMenu.mjs +136 -131
- package/plugins/exportFile/dataProvider.js +7 -2
- package/plugins/exportFile/dataProvider.mjs +7 -2
- package/plugins/exportFile/exportFile.js +1 -1
- package/plugins/exportFile/exportFile.mjs +1 -1
- package/plugins/exportFile/types/_base.js +14 -6
- package/plugins/exportFile/types/_base.mjs +14 -6
- package/plugins/filters/component/actionBar.js +9 -0
- package/plugins/filters/component/actionBar.mjs +9 -0
- package/plugins/filters/component/condition.js +13 -0
- package/plugins/filters/component/condition.mjs +13 -0
- package/plugins/filters/component/operators.js +9 -0
- package/plugins/filters/component/operators.mjs +9 -0
- package/plugins/filters/component/value.js +9 -0
- package/plugins/filters/component/value.mjs +9 -0
- package/plugins/filters/conditionCollection.js +9 -4
- package/plugins/filters/conditionCollection.mjs +9 -4
- package/plugins/filters/conditionUpdateObserver.js +53 -42
- package/plugins/filters/conditionUpdateObserver.mjs +53 -42
- package/plugins/filters/dataFilter.js +9 -3
- package/plugins/filters/dataFilter.mjs +9 -3
- package/plugins/filters/filters.js +184 -189
- package/plugins/filters/filters.mjs +182 -187
- package/plugins/filters/ui/_base.js +1 -1
- package/plugins/filters/ui/_base.mjs +1 -1
- package/plugins/filters/utils.js +1 -1
- package/plugins/filters/utils.mjs +1 -1
- package/plugins/formulas/engine/settings.js +1 -1
- package/plugins/formulas/engine/settings.mjs +1 -1
- package/plugins/formulas/formulas.js +684 -602
- package/plugins/formulas/formulas.mjs +682 -600
- package/plugins/hiddenColumns/hiddenColumns.js +174 -169
- package/plugins/hiddenColumns/hiddenColumns.mjs +173 -168
- package/plugins/hiddenRows/hiddenRows.js +170 -165
- package/plugins/hiddenRows/hiddenRows.mjs +169 -164
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +66 -53
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +64 -51
- package/plugins/manualColumnMove/manualColumnMove.js +287 -232
- package/plugins/manualColumnMove/manualColumnMove.mjs +286 -231
- package/plugins/manualColumnMove/ui/_base.js +9 -3
- package/plugins/manualColumnMove/ui/_base.mjs +9 -3
- package/plugins/manualColumnResize/manualColumnResize.js +291 -246
- package/plugins/manualColumnResize/manualColumnResize.mjs +290 -244
- package/plugins/manualRowMove/manualRowMove.js +223 -208
- package/plugins/manualRowMove/manualRowMove.mjs +222 -207
- package/plugins/manualRowMove/ui/_base.js +10 -5
- package/plugins/manualRowMove/ui/_base.mjs +10 -5
- package/plugins/manualRowResize/manualRowResize.js +254 -209
- package/plugins/manualRowResize/manualRowResize.mjs +253 -207
- package/plugins/mergeCells/calculations/autofill.js +9 -3
- package/plugins/mergeCells/calculations/autofill.mjs +9 -3
- package/plugins/mergeCells/calculations/selection.js +10 -4
- package/plugins/mergeCells/calculations/selection.mjs +10 -4
- package/plugins/mergeCells/cellCoords.js +16 -6
- package/plugins/mergeCells/cellCoords.mjs +16 -6
- package/plugins/mergeCells/cellsCollection.js +10 -4
- package/plugins/mergeCells/cellsCollection.mjs +10 -4
- package/plugins/mergeCells/mergeCells.js +582 -502
- package/plugins/mergeCells/mergeCells.mjs +580 -500
- package/plugins/multiColumnSorting/multiColumnSorting.js +15 -11
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +15 -11
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +16 -28
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +16 -27
- package/plugins/nestedHeaders/nestedHeaders.js +542 -499
- package/plugins/nestedHeaders/nestedHeaders.mjs +554 -511
- package/plugins/nestedHeaders/stateManager/index.js +1 -1
- package/plugins/nestedHeaders/stateManager/index.mjs +1 -1
- package/plugins/nestedRows/data/dataManager.js +21 -15
- package/plugins/nestedRows/data/dataManager.mjs +21 -15
- package/plugins/nestedRows/nestedRows.js +335 -279
- package/plugins/nestedRows/nestedRows.mjs +334 -278
- package/plugins/nestedRows/ui/_base.js +7 -1
- package/plugins/nestedRows/ui/_base.mjs +7 -1
- package/plugins/nestedRows/ui/collapsing.js +2 -2
- package/plugins/nestedRows/ui/collapsing.mjs +2 -2
- package/plugins/nestedRows/ui/contextMenu.js +28 -18
- package/plugins/nestedRows/ui/contextMenu.mjs +28 -18
- package/plugins/nestedRows/utils/rowMoveController.js +12 -4
- package/plugins/nestedRows/utils/rowMoveController.mjs +12 -4
- package/plugins/persistentState/persistentState.js +14 -11
- package/plugins/persistentState/persistentState.mjs +14 -11
- package/plugins/persistentState/storage.js +11 -6
- package/plugins/persistentState/storage.mjs +11 -6
- package/plugins/registry.js +2 -2
- package/plugins/registry.mjs +2 -2
- package/plugins/search/search.js +57 -46
- package/plugins/search/search.mjs +56 -45
- package/plugins/touchScroll/touchScroll.js +102 -100
- package/plugins/touchScroll/touchScroll.mjs +100 -98
- package/plugins/trimRows/trimRows.js +33 -28
- package/plugins/trimRows/trimRows.mjs +32 -27
- package/plugins/undoRedo/undoRedo.js +2 -2
- package/plugins/undoRedo/undoRedo.mjs +2 -2
- package/renderers/autocompleteRenderer/autocompleteRenderer.js +11 -11
- package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +11 -11
- package/renderers/baseRenderer/baseRenderer.js +2 -2
- package/renderers/baseRenderer/baseRenderer.mjs +2 -2
- package/renderers/checkboxRenderer/checkboxRenderer.js +23 -23
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +23 -23
- package/renderers/dateRenderer/dateRenderer.js +4 -4
- package/renderers/dateRenderer/dateRenderer.mjs +4 -4
- package/renderers/handsontableRenderer/handsontableRenderer.js +4 -4
- package/renderers/handsontableRenderer/handsontableRenderer.mjs +4 -4
- package/renderers/htmlRenderer/htmlRenderer.js +4 -4
- package/renderers/htmlRenderer/htmlRenderer.mjs +4 -4
- package/renderers/numericRenderer/numericRenderer.js +3 -3
- package/renderers/numericRenderer/numericRenderer.mjs +3 -3
- package/renderers/passwordRenderer/passwordRenderer.js +3 -3
- package/renderers/passwordRenderer/passwordRenderer.mjs +3 -3
- package/renderers/selectRenderer/selectRenderer.js +4 -4
- package/renderers/selectRenderer/selectRenderer.mjs +4 -4
- package/renderers/textRenderer/textRenderer.js +5 -5
- package/renderers/textRenderer/textRenderer.mjs +5 -5
- package/renderers/timeRenderer/timeRenderer.js +3 -3
- package/renderers/timeRenderer/timeRenderer.mjs +3 -3
- package/selection/range.js +12 -2
- package/selection/range.mjs +12 -2
- package/selection/selection.js +28 -10
- package/selection/selection.mjs +28 -10
- package/selection/utils.js +24 -14
- package/selection/utils.mjs +25 -15
- package/shortcuts/manager.js +1 -1
- package/shortcuts/manager.mjs +1 -1
- package/tableView.js +208 -200
- package/tableView.mjs +208 -200
- package/translations/changesObservable/utils.js +2 -2
- package/translations/changesObservable/utils.mjs +2 -2
- package/translations/indexMapper.js +25 -22
- package/translations/indexMapper.mjs +25 -22
- package/translations/mapCollections/aggregatedCollection.js +8 -2
- package/translations/mapCollections/aggregatedCollection.mjs +8 -2
- package/translations/mapCollections/mapCollection.js +5 -2
- package/translations/mapCollections/mapCollection.mjs +5 -2
- package/translations/maps/indexMap.js +6 -1
- package/translations/maps/indexMap.mjs +6 -1
- package/translations/maps/utils/physicallyIndexed.js +2 -2
- package/translations/maps/utils/physicallyIndexed.mjs +2 -2
- package/utils/dataStructures/linkedList.js +10 -6
- package/utils/dataStructures/linkedList.mjs +10 -6
- package/utils/dataStructures/queue.js +1 -1
- package/utils/dataStructures/queue.mjs +1 -1
- package/utils/dataStructures/stack.js +1 -1
- package/utils/dataStructures/stack.mjs +1 -1
- package/utils/ghostTable.js +2 -2
- package/utils/ghostTable.mjs +2 -2
- package/utils/interval.js +73 -36
- package/utils/interval.mjs +73 -36
- package/utils/parseTable.js +1 -1
- package/utils/parseTable.mjs +1 -1
- package/validators/autocompleteValidator/autocompleteValidator.js +1 -1
- package/validators/autocompleteValidator/autocompleteValidator.mjs +1 -1
- package/validators/dateValidator/dateValidator.js +1 -1
- package/validators/dateValidator/dateValidator.mjs +1 -1
- package/validators/numericValidator/numericValidator.js +1 -1
- package/validators/numericValidator/numericValidator.mjs +1 -1
@@ -168,7 +168,7 @@ class StateManager {
|
|
168
168
|
return (0, _array.arrayReduce)(_classPrivateFieldGet(this, _headersTree).getRoots(), (acc, rootNode) => {
|
169
169
|
rootNode.walkDown(node => {
|
170
170
|
const result = callback(node.data);
|
171
|
-
if (result !==
|
171
|
+
if (result !== undefined) {
|
172
172
|
acc.push(result);
|
173
173
|
}
|
174
174
|
});
|
@@ -164,7 +164,7 @@ export default class StateManager {
|
|
164
164
|
return arrayReduce(_classPrivateFieldGet(this, _headersTree).getRoots(), (acc, rootNode) => {
|
165
165
|
rootNode.walkDown(node => {
|
166
166
|
const result = callback(node.data);
|
167
|
-
if (result !==
|
167
|
+
if (result !== undefined) {
|
168
168
|
acc.push(result);
|
169
169
|
}
|
170
170
|
});
|
@@ -2,9 +2,13 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
require("core-js/modules/es.array.push.js");
|
5
|
+
require("core-js/modules/es.error.cause.js");
|
5
6
|
var _number = require("../../../helpers/number");
|
6
7
|
var _object = require("../../../helpers/object");
|
7
8
|
var _array = require("../../../helpers/array");
|
9
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
10
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
11
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
8
12
|
/**
|
9
13
|
* Class responsible for making data operations.
|
10
14
|
*
|
@@ -17,36 +21,38 @@ class DataManager {
|
|
17
21
|
*
|
18
22
|
* @type {object}
|
19
23
|
*/
|
20
|
-
this
|
24
|
+
_defineProperty(this, "hot", void 0);
|
21
25
|
/**
|
22
26
|
* Reference to the source data object.
|
23
27
|
*
|
24
28
|
* @type {Handsontable.CellValue[][]|Handsontable.RowObject[]}
|
25
29
|
*/
|
26
|
-
this
|
30
|
+
_defineProperty(this, "data", null);
|
27
31
|
/**
|
28
32
|
* Reference to the NestedRows plugin.
|
29
33
|
*
|
30
34
|
* @type {object}
|
31
35
|
*/
|
32
|
-
this
|
36
|
+
_defineProperty(this, "plugin", void 0);
|
33
37
|
/**
|
34
38
|
* Map of row object parents.
|
35
39
|
*
|
36
40
|
* @type {WeakMap}
|
37
41
|
*/
|
38
|
-
this
|
42
|
+
_defineProperty(this, "parentReference", new WeakMap());
|
39
43
|
/**
|
40
44
|
* Nested structure cache.
|
41
45
|
*
|
42
46
|
* @type {object}
|
43
47
|
*/
|
44
|
-
this
|
48
|
+
_defineProperty(this, "cache", {
|
45
49
|
levels: [],
|
46
50
|
levelCount: 0,
|
47
51
|
rows: [],
|
48
52
|
nodeInfo: new WeakMap()
|
49
|
-
};
|
53
|
+
});
|
54
|
+
this.hot = hotInstance;
|
55
|
+
this.plugin = nestedRowsPlugin;
|
50
56
|
}
|
51
57
|
|
52
58
|
/**
|
@@ -141,7 +147,7 @@ class DataManager {
|
|
141
147
|
* @returns {object}
|
142
148
|
*/
|
143
149
|
getDataObject(row) {
|
144
|
-
return row === null || row ===
|
150
|
+
return row === null || row === undefined ? null : this.cache.rows[row];
|
145
151
|
}
|
146
152
|
|
147
153
|
/**
|
@@ -168,13 +174,13 @@ class DataManager {
|
|
168
174
|
rootLevel = true;
|
169
175
|
readNodesCount -= 1;
|
170
176
|
}
|
171
|
-
if (neededIndex !== null && neededIndex !==
|
177
|
+
if (neededIndex !== null && neededIndex !== undefined && readNodesCount === neededIndex) {
|
172
178
|
return {
|
173
179
|
result: parentObj,
|
174
180
|
end: true
|
175
181
|
};
|
176
182
|
}
|
177
|
-
if (neededObject !== null && neededObject !==
|
183
|
+
if (neededObject !== null && neededObject !== undefined && parentObj === neededObject) {
|
178
184
|
return {
|
179
185
|
result: readNodesCount,
|
180
186
|
end: true
|
@@ -226,7 +232,7 @@ class DataManager {
|
|
226
232
|
* @returns {number} Row index.
|
227
233
|
*/
|
228
234
|
getRowIndex(rowObj) {
|
229
|
-
return rowObj === null || rowObj ===
|
235
|
+
return rowObj === null || rowObj === undefined ? null : this.cache.nodeInfo.get(rowObj).row;
|
230
236
|
}
|
231
237
|
|
232
238
|
/**
|
@@ -243,7 +249,7 @@ class DataManager {
|
|
243
249
|
rowObj = this.getDataObject(row);
|
244
250
|
}
|
245
251
|
const parent = this.getRowParent(row);
|
246
|
-
if (parent === null || parent ===
|
252
|
+
if (parent === null || parent === undefined) {
|
247
253
|
return this.data.indexOf(rowObj);
|
248
254
|
}
|
249
255
|
return parent.__children.indexOf(rowObj);
|
@@ -339,7 +345,7 @@ class DataManager {
|
|
339
345
|
* @returns {number} Row level.
|
340
346
|
*/
|
341
347
|
getRowObjectLevel(rowObject) {
|
342
|
-
return rowObject === null || rowObject ===
|
348
|
+
return rowObject === null || rowObject === undefined ? null : this.cache.nodeInfo.get(rowObject).level;
|
343
349
|
}
|
344
350
|
|
345
351
|
/**
|
@@ -526,7 +532,7 @@ class DataManager {
|
|
526
532
|
const grandparentRowIndex = this.getRowIndex(grandparent);
|
527
533
|
let movedElementRowIndex = null;
|
528
534
|
this.hot.runHooks('beforeDetachChild', parent, element);
|
529
|
-
if (indexWithinParent !== null && indexWithinParent !==
|
535
|
+
if (indexWithinParent !== null && indexWithinParent !== undefined) {
|
530
536
|
const removedRowIndexes = Array.from(new Array(childRowIndex + childCount + 1).keys()).splice(-1 * (childCount + 1));
|
531
537
|
this.hot.runHooks('beforeRemoveRow', childRowIndex, childCount + 1, removedRowIndexes, this.plugin.pluginName);
|
532
538
|
parent.__children.splice(indexWithinParent, 1);
|
@@ -651,10 +657,10 @@ class DataManager {
|
|
651
657
|
const elemToMove = fromParent.__children.slice(indexInFromParent, indexInFromParent + 1);
|
652
658
|
const movingUp = fromIndex > toIndex;
|
653
659
|
let toParent = moveToLastRow ? this.getRowParent(toIndex - 1) : this.getRowParent(toIndex);
|
654
|
-
if (toParent === null || toParent ===
|
660
|
+
if (toParent === null || toParent === undefined) {
|
655
661
|
toParent = this.getRowParent(toIndex - 1);
|
656
662
|
}
|
657
|
-
if (toParent === null || toParent ===
|
663
|
+
if (toParent === null || toParent === undefined) {
|
658
664
|
toParent = this.getDataObject(toIndex - 1);
|
659
665
|
}
|
660
666
|
if (!toParent) {
|
@@ -1,4 +1,8 @@
|
|
1
1
|
import "core-js/modules/es.array.push.js";
|
2
|
+
import "core-js/modules/es.error.cause.js";
|
3
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
4
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
5
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
2
6
|
import { rangeEach } from "../../../helpers/number.mjs";
|
3
7
|
import { objectEach } from "../../../helpers/object.mjs";
|
4
8
|
import { arrayEach } from "../../../helpers/array.mjs";
|
@@ -14,36 +18,38 @@ class DataManager {
|
|
14
18
|
*
|
15
19
|
* @type {object}
|
16
20
|
*/
|
17
|
-
this
|
21
|
+
_defineProperty(this, "hot", void 0);
|
18
22
|
/**
|
19
23
|
* Reference to the source data object.
|
20
24
|
*
|
21
25
|
* @type {Handsontable.CellValue[][]|Handsontable.RowObject[]}
|
22
26
|
*/
|
23
|
-
this
|
27
|
+
_defineProperty(this, "data", null);
|
24
28
|
/**
|
25
29
|
* Reference to the NestedRows plugin.
|
26
30
|
*
|
27
31
|
* @type {object}
|
28
32
|
*/
|
29
|
-
this
|
33
|
+
_defineProperty(this, "plugin", void 0);
|
30
34
|
/**
|
31
35
|
* Map of row object parents.
|
32
36
|
*
|
33
37
|
* @type {WeakMap}
|
34
38
|
*/
|
35
|
-
this
|
39
|
+
_defineProperty(this, "parentReference", new WeakMap());
|
36
40
|
/**
|
37
41
|
* Nested structure cache.
|
38
42
|
*
|
39
43
|
* @type {object}
|
40
44
|
*/
|
41
|
-
this
|
45
|
+
_defineProperty(this, "cache", {
|
42
46
|
levels: [],
|
43
47
|
levelCount: 0,
|
44
48
|
rows: [],
|
45
49
|
nodeInfo: new WeakMap()
|
46
|
-
};
|
50
|
+
});
|
51
|
+
this.hot = hotInstance;
|
52
|
+
this.plugin = nestedRowsPlugin;
|
47
53
|
}
|
48
54
|
|
49
55
|
/**
|
@@ -138,7 +144,7 @@ class DataManager {
|
|
138
144
|
* @returns {object}
|
139
145
|
*/
|
140
146
|
getDataObject(row) {
|
141
|
-
return row === null || row ===
|
147
|
+
return row === null || row === undefined ? null : this.cache.rows[row];
|
142
148
|
}
|
143
149
|
|
144
150
|
/**
|
@@ -165,13 +171,13 @@ class DataManager {
|
|
165
171
|
rootLevel = true;
|
166
172
|
readNodesCount -= 1;
|
167
173
|
}
|
168
|
-
if (neededIndex !== null && neededIndex !==
|
174
|
+
if (neededIndex !== null && neededIndex !== undefined && readNodesCount === neededIndex) {
|
169
175
|
return {
|
170
176
|
result: parentObj,
|
171
177
|
end: true
|
172
178
|
};
|
173
179
|
}
|
174
|
-
if (neededObject !== null && neededObject !==
|
180
|
+
if (neededObject !== null && neededObject !== undefined && parentObj === neededObject) {
|
175
181
|
return {
|
176
182
|
result: readNodesCount,
|
177
183
|
end: true
|
@@ -223,7 +229,7 @@ class DataManager {
|
|
223
229
|
* @returns {number} Row index.
|
224
230
|
*/
|
225
231
|
getRowIndex(rowObj) {
|
226
|
-
return rowObj === null || rowObj ===
|
232
|
+
return rowObj === null || rowObj === undefined ? null : this.cache.nodeInfo.get(rowObj).row;
|
227
233
|
}
|
228
234
|
|
229
235
|
/**
|
@@ -240,7 +246,7 @@ class DataManager {
|
|
240
246
|
rowObj = this.getDataObject(row);
|
241
247
|
}
|
242
248
|
const parent = this.getRowParent(row);
|
243
|
-
if (parent === null || parent ===
|
249
|
+
if (parent === null || parent === undefined) {
|
244
250
|
return this.data.indexOf(rowObj);
|
245
251
|
}
|
246
252
|
return parent.__children.indexOf(rowObj);
|
@@ -336,7 +342,7 @@ class DataManager {
|
|
336
342
|
* @returns {number} Row level.
|
337
343
|
*/
|
338
344
|
getRowObjectLevel(rowObject) {
|
339
|
-
return rowObject === null || rowObject ===
|
345
|
+
return rowObject === null || rowObject === undefined ? null : this.cache.nodeInfo.get(rowObject).level;
|
340
346
|
}
|
341
347
|
|
342
348
|
/**
|
@@ -523,7 +529,7 @@ class DataManager {
|
|
523
529
|
const grandparentRowIndex = this.getRowIndex(grandparent);
|
524
530
|
let movedElementRowIndex = null;
|
525
531
|
this.hot.runHooks('beforeDetachChild', parent, element);
|
526
|
-
if (indexWithinParent !== null && indexWithinParent !==
|
532
|
+
if (indexWithinParent !== null && indexWithinParent !== undefined) {
|
527
533
|
const removedRowIndexes = Array.from(new Array(childRowIndex + childCount + 1).keys()).splice(-1 * (childCount + 1));
|
528
534
|
this.hot.runHooks('beforeRemoveRow', childRowIndex, childCount + 1, removedRowIndexes, this.plugin.pluginName);
|
529
535
|
parent.__children.splice(indexWithinParent, 1);
|
@@ -648,10 +654,10 @@ class DataManager {
|
|
648
654
|
const elemToMove = fromParent.__children.slice(indexInFromParent, indexInFromParent + 1);
|
649
655
|
const movingUp = fromIndex > toIndex;
|
650
656
|
let toParent = moveToLastRow ? this.getRowParent(toIndex - 1) : this.getRowParent(toIndex);
|
651
|
-
if (toParent === null || toParent ===
|
657
|
+
if (toParent === null || toParent === undefined) {
|
652
658
|
toParent = this.getRowParent(toIndex - 1);
|
653
659
|
}
|
654
|
-
if (toParent === null || toParent ===
|
660
|
+
if (toParent === null || toParent === undefined) {
|
655
661
|
toParent = this.getDataObject(toIndex - 1);
|
656
662
|
}
|
657
663
|
if (!toParent) {
|