handsontable 0.0.0-next-7026906-20231107 → 0.0.0-next-7b93b7d-20231107
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of handsontable might be problematic. Click here for more details.
- 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/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 +7244 -6347
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +120 -120
- package/dist/handsontable.js +7243 -6346
- 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.js +97 -102
- package/plugins/autofill/autofill.mjs +96 -101
- package/plugins/base/base.js +57 -22
- package/plugins/base/base.mjs +56 -22
- 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 +105 -98
- package/plugins/columnSorting/columnSorting.mjs +104 -97
- 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 +91 -101
- package/plugins/contextMenu/contextMenu.mjs +90 -100
- 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/copyPaste/copyPaste.js +74 -75
- package/plugins/copyPaste/copyPaste.mjs +74 -75
- package/plugins/customBorders/customBorders.js +49 -48
- package/plugins/customBorders/customBorders.mjs +48 -47
- package/plugins/dragToScroll/dragToScroll.js +50 -54
- package/plugins/dragToScroll/dragToScroll.mjs +49 -52
- package/plugins/dropdownMenu/dropdownMenu.js +132 -129
- package/plugins/dropdownMenu/dropdownMenu.mjs +132 -129
- 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 +67 -54
- 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 +13 -10
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +13 -10
- 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 +326 -278
- package/plugins/nestedRows/nestedRows.mjs +325 -277
- 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 +3 -3
- package/selection/selection.mjs +3 -3
- 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
@@ -35,7 +35,7 @@ function arrayDiff(baseArray, newArray) {
|
|
35
35
|
changes.push({
|
36
36
|
op: 'insert',
|
37
37
|
index: i,
|
38
|
-
oldValue:
|
38
|
+
oldValue: undefined,
|
39
39
|
newValue: newArray[i]
|
40
40
|
});
|
41
41
|
}
|
@@ -44,7 +44,7 @@ function arrayDiff(baseArray, newArray) {
|
|
44
44
|
op: 'remove',
|
45
45
|
index: j,
|
46
46
|
oldValue: baseArray[j],
|
47
|
-
newValue:
|
47
|
+
newValue: undefined
|
48
48
|
});
|
49
49
|
}
|
50
50
|
return changes;
|
@@ -31,7 +31,7 @@ export function arrayDiff(baseArray, newArray) {
|
|
31
31
|
changes.push({
|
32
32
|
op: 'insert',
|
33
33
|
index: i,
|
34
|
-
oldValue:
|
34
|
+
oldValue: undefined,
|
35
35
|
newValue: newArray[i]
|
36
36
|
});
|
37
37
|
}
|
@@ -40,7 +40,7 @@ export function arrayDiff(baseArray, newArray) {
|
|
40
40
|
op: 'remove',
|
41
41
|
index: j,
|
42
42
|
oldValue: baseArray[j],
|
43
|
-
newValue:
|
43
|
+
newValue: undefined
|
44
44
|
});
|
45
45
|
}
|
46
46
|
return changes;
|
@@ -10,6 +10,9 @@ var _object = require("../helpers/object");
|
|
10
10
|
var _mixed = require("../helpers/mixed");
|
11
11
|
var _observable = require("./changesObservable/observable");
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
13
|
+
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; }
|
14
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
15
|
+
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); }
|
13
16
|
/**
|
14
17
|
* A set of deprecated feature names.
|
15
18
|
*
|
@@ -46,7 +49,7 @@ class IndexMapper {
|
|
46
49
|
* @private
|
47
50
|
* @type {IndexesSequence}
|
48
51
|
*/
|
49
|
-
this
|
52
|
+
_defineProperty(this, "indexesSequence", new _maps.IndexesSequence());
|
50
53
|
/**
|
51
54
|
* Collection for different trimming maps. Indexes marked as trimmed in any map WILL NOT be included in
|
52
55
|
* the {@link DataMap} and won't be rendered.
|
@@ -54,7 +57,7 @@ class IndexMapper {
|
|
54
57
|
* @private
|
55
58
|
* @type {MapCollection}
|
56
59
|
*/
|
57
|
-
this
|
60
|
+
_defineProperty(this, "trimmingMapsCollection", new _mapCollections.AggregatedCollection(valuesForIndex => valuesForIndex.some(value => value === true), false));
|
58
61
|
/**
|
59
62
|
* Collection for different hiding maps. Indexes marked as hidden in any map WILL be included in the {@link DataMap},
|
60
63
|
* but won't be rendered.
|
@@ -62,14 +65,14 @@ class IndexMapper {
|
|
62
65
|
* @private
|
63
66
|
* @type {MapCollection}
|
64
67
|
*/
|
65
|
-
this
|
68
|
+
_defineProperty(this, "hidingMapsCollection", new _mapCollections.AggregatedCollection(valuesForIndex => valuesForIndex.some(value => value === true), false));
|
66
69
|
/**
|
67
70
|
* Collection for another kind of maps. There are stored mappings from indexes (visual or physical) to values.
|
68
71
|
*
|
69
72
|
* @private
|
70
73
|
* @type {MapCollection}
|
71
74
|
*/
|
72
|
-
this
|
75
|
+
_defineProperty(this, "variousMapsCollection", new _mapCollections.MapCollection());
|
73
76
|
/**
|
74
77
|
* The class instance collects row and column index changes that happen while the Handsontable
|
75
78
|
* is running. The object allows creating observers that you can subscribe. Each event represents
|
@@ -79,9 +82,9 @@ class IndexMapper {
|
|
79
82
|
* @private
|
80
83
|
* @type {ChangesObservable}
|
81
84
|
*/
|
82
|
-
this
|
85
|
+
_defineProperty(this, "hidingChangesObservable", new _observable.ChangesObservable({
|
83
86
|
initialIndexValue: false
|
84
|
-
});
|
87
|
+
}));
|
85
88
|
/**
|
86
89
|
* Cache for list of not trimmed indexes, respecting the indexes sequence (physical indexes).
|
87
90
|
*
|
@@ -90,7 +93,7 @@ class IndexMapper {
|
|
90
93
|
* @private
|
91
94
|
* @type {Array}
|
92
95
|
*/
|
93
|
-
this
|
96
|
+
_defineProperty(this, "notTrimmedIndexesCache", []);
|
94
97
|
/**
|
95
98
|
* Cache for list of not hidden indexes, respecting the indexes sequence (physical indexes).
|
96
99
|
*
|
@@ -99,62 +102,62 @@ class IndexMapper {
|
|
99
102
|
* @private
|
100
103
|
* @type {Array}
|
101
104
|
*/
|
102
|
-
this
|
105
|
+
_defineProperty(this, "notHiddenIndexesCache", []);
|
103
106
|
/**
|
104
107
|
* Flag determining whether actions performed on index mapper have been batched. It's used for cache management.
|
105
108
|
*
|
106
109
|
* @private
|
107
110
|
* @type {boolean}
|
108
111
|
*/
|
109
|
-
this
|
112
|
+
_defineProperty(this, "isBatched", false);
|
110
113
|
/**
|
111
114
|
* Flag determining whether any action on indexes sequence has been performed. It's used for cache management.
|
112
115
|
*
|
113
116
|
* @private
|
114
117
|
* @type {boolean}
|
115
118
|
*/
|
116
|
-
this
|
119
|
+
_defineProperty(this, "indexesSequenceChanged", false);
|
117
120
|
/**
|
118
121
|
* Flag informing about source of the change.
|
119
122
|
*
|
120
123
|
* @type {undefined|string}
|
121
124
|
*/
|
122
|
-
this
|
125
|
+
_defineProperty(this, "indexesChangeSource", undefined);
|
123
126
|
/**
|
124
127
|
* Flag determining whether any action on trimmed indexes has been performed. It's used for cache management.
|
125
128
|
*
|
126
129
|
* @private
|
127
130
|
* @type {boolean}
|
128
131
|
*/
|
129
|
-
this
|
132
|
+
_defineProperty(this, "trimmedIndexesChanged", false);
|
130
133
|
/**
|
131
134
|
* Flag determining whether any action on hidden indexes has been performed. It's used for cache management.
|
132
135
|
*
|
133
136
|
* @private
|
134
137
|
* @type {boolean}
|
135
138
|
*/
|
136
|
-
this
|
139
|
+
_defineProperty(this, "hiddenIndexesChanged", false);
|
137
140
|
/**
|
138
141
|
* Physical indexes (respecting the sequence of indexes) which may be rendered (when they are in a viewport).
|
139
142
|
*
|
140
143
|
* @private
|
141
144
|
* @type {Array}
|
142
145
|
*/
|
143
|
-
this
|
146
|
+
_defineProperty(this, "renderablePhysicalIndexesCache", []);
|
144
147
|
/**
|
145
148
|
* Visual indexes (native map's value) corresponding to physical indexes (native map's index).
|
146
149
|
*
|
147
150
|
* @private
|
148
151
|
* @type {Map}
|
149
152
|
*/
|
150
|
-
this
|
153
|
+
_defineProperty(this, "fromPhysicalToVisualIndexesCache", new Map());
|
151
154
|
/**
|
152
155
|
* Visual indexes (native map's value) corresponding to physical indexes (native map's index).
|
153
156
|
*
|
154
157
|
* @private
|
155
158
|
* @type {Map}
|
156
159
|
*/
|
157
|
-
this
|
160
|
+
_defineProperty(this, "fromVisualToRenderableIndexesCache", new Map());
|
158
161
|
this.indexesSequence.addLocalHook('change', () => {
|
159
162
|
this.indexesSequenceChanged = true;
|
160
163
|
|
@@ -402,7 +405,7 @@ class IndexMapper {
|
|
402
405
|
this.suspendOperations();
|
403
406
|
this.indexesChangeSource = 'init';
|
404
407
|
this.indexesSequence.init(length);
|
405
|
-
this.indexesChangeSource =
|
408
|
+
this.indexesChangeSource = undefined;
|
406
409
|
this.trimmingMapsCollection.initEvery(length);
|
407
410
|
this.resumeOperations();
|
408
411
|
|
@@ -446,12 +449,12 @@ class IndexMapper {
|
|
446
449
|
* @param {Array} indexes Physical indexes.
|
447
450
|
*/
|
448
451
|
setIndexesSequence(indexes) {
|
449
|
-
if (this.indexesChangeSource ===
|
452
|
+
if (this.indexesChangeSource === undefined) {
|
450
453
|
this.indexesChangeSource = 'update';
|
451
454
|
}
|
452
455
|
this.indexesSequence.setValues(indexes);
|
453
456
|
if (this.indexesChangeSource === 'update') {
|
454
|
-
this.indexesChangeSource =
|
457
|
+
this.indexesChangeSource = undefined;
|
455
458
|
}
|
456
459
|
}
|
457
460
|
|
@@ -577,7 +580,7 @@ class IndexMapper {
|
|
577
580
|
|
578
581
|
// Adding indexes without re-indexing.
|
579
582
|
this.setIndexesSequence((0, _maps.getListWithInsertedItems)(notMovedIndexes, destinationPosition, physicalMovedIndexes));
|
580
|
-
this.indexesChangeSource =
|
583
|
+
this.indexesChangeSource = undefined;
|
581
584
|
}
|
582
585
|
|
583
586
|
/**
|
@@ -615,7 +618,7 @@ class IndexMapper {
|
|
615
618
|
this.suspendOperations();
|
616
619
|
this.indexesChangeSource = 'insert';
|
617
620
|
this.indexesSequence.insert(insertionIndex, insertedIndexes);
|
618
|
-
this.indexesChangeSource =
|
621
|
+
this.indexesChangeSource = undefined;
|
619
622
|
this.trimmingMapsCollection.insertToEvery(insertionIndex, insertedIndexes);
|
620
623
|
this.hidingMapsCollection.insertToEvery(insertionIndex, insertedIndexes);
|
621
624
|
this.variousMapsCollection.insertToEvery(insertionIndex, insertedIndexes);
|
@@ -632,7 +635,7 @@ class IndexMapper {
|
|
632
635
|
this.suspendOperations();
|
633
636
|
this.indexesChangeSource = 'remove';
|
634
637
|
this.indexesSequence.remove(removedIndexes);
|
635
|
-
this.indexesChangeSource =
|
638
|
+
this.indexesChangeSource = undefined;
|
636
639
|
this.trimmingMapsCollection.removeFromEvery(removedIndexes);
|
637
640
|
this.hidingMapsCollection.removeFromEvery(removedIndexes);
|
638
641
|
this.variousMapsCollection.removeFromEvery(removedIndexes);
|
@@ -1,4 +1,7 @@
|
|
1
1
|
import "core-js/modules/es.error.cause.js";
|
2
|
+
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; }
|
3
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
4
|
+
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
5
|
import { arrayMap } from "../helpers/array.mjs";
|
3
6
|
import { createIndexMap, getListWithInsertedItems, getListWithRemovedItems, HidingMap, IndexesSequence, TrimmingMap } from "./maps/index.mjs";
|
4
7
|
import { AggregatedCollection, MapCollection } from "./mapCollections/index.mjs";
|
@@ -43,7 +46,7 @@ export class IndexMapper {
|
|
43
46
|
* @private
|
44
47
|
* @type {IndexesSequence}
|
45
48
|
*/
|
46
|
-
this
|
49
|
+
_defineProperty(this, "indexesSequence", new IndexesSequence());
|
47
50
|
/**
|
48
51
|
* Collection for different trimming maps. Indexes marked as trimmed in any map WILL NOT be included in
|
49
52
|
* the {@link DataMap} and won't be rendered.
|
@@ -51,7 +54,7 @@ export class IndexMapper {
|
|
51
54
|
* @private
|
52
55
|
* @type {MapCollection}
|
53
56
|
*/
|
54
|
-
this
|
57
|
+
_defineProperty(this, "trimmingMapsCollection", new AggregatedCollection(valuesForIndex => valuesForIndex.some(value => value === true), false));
|
55
58
|
/**
|
56
59
|
* Collection for different hiding maps. Indexes marked as hidden in any map WILL be included in the {@link DataMap},
|
57
60
|
* but won't be rendered.
|
@@ -59,14 +62,14 @@ export class IndexMapper {
|
|
59
62
|
* @private
|
60
63
|
* @type {MapCollection}
|
61
64
|
*/
|
62
|
-
this
|
65
|
+
_defineProperty(this, "hidingMapsCollection", new AggregatedCollection(valuesForIndex => valuesForIndex.some(value => value === true), false));
|
63
66
|
/**
|
64
67
|
* Collection for another kind of maps. There are stored mappings from indexes (visual or physical) to values.
|
65
68
|
*
|
66
69
|
* @private
|
67
70
|
* @type {MapCollection}
|
68
71
|
*/
|
69
|
-
this
|
72
|
+
_defineProperty(this, "variousMapsCollection", new MapCollection());
|
70
73
|
/**
|
71
74
|
* The class instance collects row and column index changes that happen while the Handsontable
|
72
75
|
* is running. The object allows creating observers that you can subscribe. Each event represents
|
@@ -76,9 +79,9 @@ export class IndexMapper {
|
|
76
79
|
* @private
|
77
80
|
* @type {ChangesObservable}
|
78
81
|
*/
|
79
|
-
this
|
82
|
+
_defineProperty(this, "hidingChangesObservable", new ChangesObservable({
|
80
83
|
initialIndexValue: false
|
81
|
-
});
|
84
|
+
}));
|
82
85
|
/**
|
83
86
|
* Cache for list of not trimmed indexes, respecting the indexes sequence (physical indexes).
|
84
87
|
*
|
@@ -87,7 +90,7 @@ export class IndexMapper {
|
|
87
90
|
* @private
|
88
91
|
* @type {Array}
|
89
92
|
*/
|
90
|
-
this
|
93
|
+
_defineProperty(this, "notTrimmedIndexesCache", []);
|
91
94
|
/**
|
92
95
|
* Cache for list of not hidden indexes, respecting the indexes sequence (physical indexes).
|
93
96
|
*
|
@@ -96,62 +99,62 @@ export class IndexMapper {
|
|
96
99
|
* @private
|
97
100
|
* @type {Array}
|
98
101
|
*/
|
99
|
-
this
|
102
|
+
_defineProperty(this, "notHiddenIndexesCache", []);
|
100
103
|
/**
|
101
104
|
* Flag determining whether actions performed on index mapper have been batched. It's used for cache management.
|
102
105
|
*
|
103
106
|
* @private
|
104
107
|
* @type {boolean}
|
105
108
|
*/
|
106
|
-
this
|
109
|
+
_defineProperty(this, "isBatched", false);
|
107
110
|
/**
|
108
111
|
* Flag determining whether any action on indexes sequence has been performed. It's used for cache management.
|
109
112
|
*
|
110
113
|
* @private
|
111
114
|
* @type {boolean}
|
112
115
|
*/
|
113
|
-
this
|
116
|
+
_defineProperty(this, "indexesSequenceChanged", false);
|
114
117
|
/**
|
115
118
|
* Flag informing about source of the change.
|
116
119
|
*
|
117
120
|
* @type {undefined|string}
|
118
121
|
*/
|
119
|
-
this
|
122
|
+
_defineProperty(this, "indexesChangeSource", undefined);
|
120
123
|
/**
|
121
124
|
* Flag determining whether any action on trimmed indexes has been performed. It's used for cache management.
|
122
125
|
*
|
123
126
|
* @private
|
124
127
|
* @type {boolean}
|
125
128
|
*/
|
126
|
-
this
|
129
|
+
_defineProperty(this, "trimmedIndexesChanged", false);
|
127
130
|
/**
|
128
131
|
* Flag determining whether any action on hidden indexes has been performed. It's used for cache management.
|
129
132
|
*
|
130
133
|
* @private
|
131
134
|
* @type {boolean}
|
132
135
|
*/
|
133
|
-
this
|
136
|
+
_defineProperty(this, "hiddenIndexesChanged", false);
|
134
137
|
/**
|
135
138
|
* Physical indexes (respecting the sequence of indexes) which may be rendered (when they are in a viewport).
|
136
139
|
*
|
137
140
|
* @private
|
138
141
|
* @type {Array}
|
139
142
|
*/
|
140
|
-
this
|
143
|
+
_defineProperty(this, "renderablePhysicalIndexesCache", []);
|
141
144
|
/**
|
142
145
|
* Visual indexes (native map's value) corresponding to physical indexes (native map's index).
|
143
146
|
*
|
144
147
|
* @private
|
145
148
|
* @type {Map}
|
146
149
|
*/
|
147
|
-
this
|
150
|
+
_defineProperty(this, "fromPhysicalToVisualIndexesCache", new Map());
|
148
151
|
/**
|
149
152
|
* Visual indexes (native map's value) corresponding to physical indexes (native map's index).
|
150
153
|
*
|
151
154
|
* @private
|
152
155
|
* @type {Map}
|
153
156
|
*/
|
154
|
-
this
|
157
|
+
_defineProperty(this, "fromVisualToRenderableIndexesCache", new Map());
|
155
158
|
this.indexesSequence.addLocalHook('change', () => {
|
156
159
|
this.indexesSequenceChanged = true;
|
157
160
|
|
@@ -399,7 +402,7 @@ export class IndexMapper {
|
|
399
402
|
this.suspendOperations();
|
400
403
|
this.indexesChangeSource = 'init';
|
401
404
|
this.indexesSequence.init(length);
|
402
|
-
this.indexesChangeSource =
|
405
|
+
this.indexesChangeSource = undefined;
|
403
406
|
this.trimmingMapsCollection.initEvery(length);
|
404
407
|
this.resumeOperations();
|
405
408
|
|
@@ -443,12 +446,12 @@ export class IndexMapper {
|
|
443
446
|
* @param {Array} indexes Physical indexes.
|
444
447
|
*/
|
445
448
|
setIndexesSequence(indexes) {
|
446
|
-
if (this.indexesChangeSource ===
|
449
|
+
if (this.indexesChangeSource === undefined) {
|
447
450
|
this.indexesChangeSource = 'update';
|
448
451
|
}
|
449
452
|
this.indexesSequence.setValues(indexes);
|
450
453
|
if (this.indexesChangeSource === 'update') {
|
451
|
-
this.indexesChangeSource =
|
454
|
+
this.indexesChangeSource = undefined;
|
452
455
|
}
|
453
456
|
}
|
454
457
|
|
@@ -574,7 +577,7 @@ export class IndexMapper {
|
|
574
577
|
|
575
578
|
// Adding indexes without re-indexing.
|
576
579
|
this.setIndexesSequence(getListWithInsertedItems(notMovedIndexes, destinationPosition, physicalMovedIndexes));
|
577
|
-
this.indexesChangeSource =
|
580
|
+
this.indexesChangeSource = undefined;
|
578
581
|
}
|
579
582
|
|
580
583
|
/**
|
@@ -612,7 +615,7 @@ export class IndexMapper {
|
|
612
615
|
this.suspendOperations();
|
613
616
|
this.indexesChangeSource = 'insert';
|
614
617
|
this.indexesSequence.insert(insertionIndex, insertedIndexes);
|
615
|
-
this.indexesChangeSource =
|
618
|
+
this.indexesChangeSource = undefined;
|
616
619
|
this.trimmingMapsCollection.insertToEvery(insertionIndex, insertedIndexes);
|
617
620
|
this.hidingMapsCollection.insertToEvery(insertionIndex, insertedIndexes);
|
618
621
|
this.variousMapsCollection.insertToEvery(insertionIndex, insertedIndexes);
|
@@ -629,7 +632,7 @@ export class IndexMapper {
|
|
629
632
|
this.suspendOperations();
|
630
633
|
this.indexesChangeSource = 'remove';
|
631
634
|
this.indexesSequence.remove(removedIndexes);
|
632
|
-
this.indexesChangeSource =
|
635
|
+
this.indexesChangeSource = undefined;
|
633
636
|
this.trimmingMapsCollection.removeFromEvery(removedIndexes);
|
634
637
|
this.hidingMapsCollection.removeFromEvery(removedIndexes);
|
635
638
|
this.variousMapsCollection.removeFromEvery(removedIndexes);
|
@@ -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 _mapCollection = require("./mapCollection");
|
6
7
|
var _array = require("../../helpers/array");
|
7
8
|
var _mixed = require("../../helpers/mixed");
|
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
|
* Collection of maps. This collection aggregate maps with the same type of values. Values from the registered maps
|
10
14
|
* can be used to calculate a single result for particular index.
|
@@ -17,14 +21,16 @@ class AggregatedCollection extends _mapCollection.MapCollection {
|
|
17
21
|
*
|
18
22
|
* @type {Array}
|
19
23
|
*/
|
20
|
-
this
|
24
|
+
_defineProperty(this, "mergedValuesCache", []);
|
21
25
|
/**
|
22
26
|
* Function which do aggregation on the values for particular index.
|
23
27
|
*/
|
24
|
-
this
|
28
|
+
_defineProperty(this, "aggregationFunction", void 0);
|
25
29
|
/**
|
26
30
|
* Fallback value when there is no calculated value for particular index.
|
27
31
|
*/
|
32
|
+
_defineProperty(this, "fallbackValue", void 0);
|
33
|
+
this.aggregationFunction = aggregationFunction;
|
28
34
|
this.fallbackValue = fallbackValue;
|
29
35
|
}
|
30
36
|
|
@@ -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 { MapCollection } from "./mapCollection.mjs";
|
3
7
|
import { arrayMap } from "../../helpers/array.mjs";
|
4
8
|
import { isDefined } from "../../helpers/mixed.mjs";
|
@@ -14,14 +18,16 @@ export class AggregatedCollection extends MapCollection {
|
|
14
18
|
*
|
15
19
|
* @type {Array}
|
16
20
|
*/
|
17
|
-
this
|
21
|
+
_defineProperty(this, "mergedValuesCache", []);
|
18
22
|
/**
|
19
23
|
* Function which do aggregation on the values for particular index.
|
20
24
|
*/
|
21
|
-
this
|
25
|
+
_defineProperty(this, "aggregationFunction", void 0);
|
22
26
|
/**
|
23
27
|
* Fallback value when there is no calculated value for particular index.
|
24
28
|
*/
|
29
|
+
_defineProperty(this, "fallbackValue", void 0);
|
30
|
+
this.aggregationFunction = aggregationFunction;
|
25
31
|
this.fallbackValue = fallbackValue;
|
26
32
|
}
|
27
33
|
|
@@ -2,10 +2,14 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.getRegisteredMapsCounter = getRegisteredMapsCounter;
|
5
|
+
require("core-js/modules/es.error.cause.js");
|
5
6
|
var _mixed = require("../../helpers/mixed");
|
6
7
|
var _object = require("../../helpers/object");
|
7
8
|
var _localHooks = _interopRequireDefault(require("../../mixins/localHooks"));
|
8
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
10
|
+
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; }
|
11
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
12
|
+
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); }
|
9
13
|
// Counter for checking if there is a memory leak.
|
10
14
|
let registeredMaps = 0;
|
11
15
|
|
@@ -19,9 +23,8 @@ class MapCollection {
|
|
19
23
|
*
|
20
24
|
* @type {Map<string, IndexMap>}
|
21
25
|
*/
|
22
|
-
this
|
26
|
+
_defineProperty(this, "collection", new Map());
|
23
27
|
}
|
24
|
-
|
25
28
|
/**
|
26
29
|
* Register custom index map.
|
27
30
|
*
|
@@ -1,3 +1,7 @@
|
|
1
|
+
import "core-js/modules/es.error.cause.js";
|
2
|
+
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; }
|
3
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
4
|
+
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); }
|
1
5
|
import { isUndefined, isDefined } from "../../helpers/mixed.mjs";
|
2
6
|
import { mixin } from "../../helpers/object.mjs";
|
3
7
|
import localHooks from "../../mixins/localHooks.mjs"; // Counter for checking if there is a memory leak.
|
@@ -13,9 +17,8 @@ export class MapCollection {
|
|
13
17
|
*
|
14
18
|
* @type {Map<string, IndexMap>}
|
15
19
|
*/
|
16
|
-
this
|
20
|
+
_defineProperty(this, "collection", new Map());
|
17
21
|
}
|
18
|
-
|
19
22
|
/**
|
20
23
|
* Register custom index map.
|
21
24
|
*
|
@@ -2,11 +2,15 @@
|
|
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 _function = require("../../helpers/function");
|
8
9
|
var _localHooks = _interopRequireDefault(require("../../mixins/localHooks"));
|
9
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
11
|
+
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; }
|
12
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
13
|
+
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); }
|
10
14
|
/**
|
11
15
|
* Map for storing mappings from an index to a value.
|
12
16
|
*
|
@@ -21,13 +25,14 @@ class IndexMap {
|
|
21
25
|
* @private
|
22
26
|
* @type {Array}
|
23
27
|
*/
|
24
|
-
this
|
28
|
+
_defineProperty(this, "indexedValues", []);
|
25
29
|
/**
|
26
30
|
* Initial value or function for each existing index.
|
27
31
|
*
|
28
32
|
* @private
|
29
33
|
* @type {*}
|
30
34
|
*/
|
35
|
+
_defineProperty(this, "initValueOrFn", void 0);
|
31
36
|
this.initValueOrFn = initValueOrFn;
|
32
37
|
}
|
33
38
|
|
@@ -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 { mixin } from "../../helpers/object.mjs";
|
4
8
|
import { isFunction } from "../../helpers/function.mjs";
|
@@ -17,13 +21,14 @@ export class IndexMap {
|
|
17
21
|
* @private
|
18
22
|
* @type {Array}
|
19
23
|
*/
|
20
|
-
this
|
24
|
+
_defineProperty(this, "indexedValues", []);
|
21
25
|
/**
|
22
26
|
* Initial value or function for each existing index.
|
23
27
|
*
|
24
28
|
* @private
|
25
29
|
* @type {*}
|
26
30
|
*/
|
31
|
+
_defineProperty(this, "initValueOrFn", void 0);
|
27
32
|
this.initValueOrFn = initValueOrFn;
|
28
33
|
}
|
29
34
|
|
@@ -16,13 +16,13 @@ var _array = require("../../../helpers/array");
|
|
16
16
|
* @returns {Array} List with new mappings.
|
17
17
|
*/
|
18
18
|
function getListWithInsertedItems(indexedValues, insertionIndex, insertedIndexes, insertedValuesMapping) {
|
19
|
-
const firstInsertedIndex = insertedIndexes.length ? insertedIndexes[0] :
|
19
|
+
const firstInsertedIndex = insertedIndexes.length ? insertedIndexes[0] : undefined;
|
20
20
|
return [...indexedValues.slice(0, firstInsertedIndex), ...insertedIndexes.map((insertedIndex, ordinalNumber) => {
|
21
21
|
if ((0, _function.isFunction)(insertedValuesMapping)) {
|
22
22
|
return insertedValuesMapping(insertedIndex, ordinalNumber);
|
23
23
|
}
|
24
24
|
return insertedValuesMapping;
|
25
|
-
}), ...(firstInsertedIndex ===
|
25
|
+
}), ...(firstInsertedIndex === undefined ? [] : indexedValues.slice(firstInsertedIndex))];
|
26
26
|
}
|
27
27
|
|
28
28
|
/**
|
@@ -11,13 +11,13 @@ import { arrayFilter } from "../../../helpers/array.mjs";
|
|
11
11
|
* @returns {Array} List with new mappings.
|
12
12
|
*/
|
13
13
|
export function getListWithInsertedItems(indexedValues, insertionIndex, insertedIndexes, insertedValuesMapping) {
|
14
|
-
const firstInsertedIndex = insertedIndexes.length ? insertedIndexes[0] :
|
14
|
+
const firstInsertedIndex = insertedIndexes.length ? insertedIndexes[0] : undefined;
|
15
15
|
return [...indexedValues.slice(0, firstInsertedIndex), ...insertedIndexes.map((insertedIndex, ordinalNumber) => {
|
16
16
|
if (isFunction(insertedValuesMapping)) {
|
17
17
|
return insertedValuesMapping(insertedIndex, ordinalNumber);
|
18
18
|
}
|
19
19
|
return insertedValuesMapping;
|
20
|
-
}), ...(firstInsertedIndex ===
|
20
|
+
}), ...(firstInsertedIndex === undefined ? [] : indexedValues.slice(firstInsertedIndex))];
|
21
21
|
}
|
22
22
|
|
23
23
|
/**
|
@@ -1,6 +1,10 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
|
+
require("core-js/modules/es.error.cause.js");
|
5
|
+
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; }
|
6
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
7
|
+
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); }
|
4
8
|
/**
|
5
9
|
* Refactored implementation of LinkedList (part of javascript-algorithms project) by Github users:
|
6
10
|
* mgechev, AndriiHeonia, Microfed and Jakeh (part of javascript-algorithms project - all project contributors
|
@@ -22,19 +26,20 @@ class NodeStructure {
|
|
22
26
|
*
|
23
27
|
* @member {object}
|
24
28
|
*/
|
25
|
-
this
|
29
|
+
_defineProperty(this, "data", void 0);
|
26
30
|
/**
|
27
31
|
* Next node.
|
28
32
|
*
|
29
33
|
* @member {NodeStructure}
|
30
34
|
*/
|
31
|
-
this
|
35
|
+
_defineProperty(this, "next", null);
|
32
36
|
/**
|
33
37
|
* Previous node.
|
34
38
|
*
|
35
39
|
* @member {NodeStructure}
|
36
40
|
*/
|
37
|
-
this
|
41
|
+
_defineProperty(this, "prev", null);
|
42
|
+
this.data = data;
|
38
43
|
}
|
39
44
|
}
|
40
45
|
|
@@ -47,10 +52,9 @@ class NodeStructure {
|
|
47
52
|
exports.NodeStructure = NodeStructure;
|
48
53
|
class LinkedList {
|
49
54
|
constructor() {
|
50
|
-
this
|
51
|
-
this
|
55
|
+
_defineProperty(this, "first", null);
|
56
|
+
_defineProperty(this, "last", null);
|
52
57
|
}
|
53
|
-
|
54
58
|
/**
|
55
59
|
* Add data to the end of linked list.
|
56
60
|
*
|