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
@@ -1,10 +1,17 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
|
+
require("core-js/modules/es.error.cause.js");
|
4
5
|
var _base = require("../base");
|
5
6
|
var _looseBindsMap = _interopRequireDefault(require("./maps/looseBindsMap"));
|
6
7
|
var _strictBindsMap = _interopRequireDefault(require("./maps/strictBindsMap"));
|
7
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
9
|
+
function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
|
10
|
+
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
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); }
|
14
|
+
function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
|
8
15
|
const PLUGIN_KEY = 'bindRowsWithHeaders';
|
9
16
|
exports.PLUGIN_KEY = PLUGIN_KEY;
|
10
17
|
const PLUGIN_PRIORITY = 210;
|
@@ -44,24 +51,31 @@ const bindTypeToMapStrategy = new Map([['loose', _looseBindsMap.default], ['stri
|
|
44
51
|
* ```
|
45
52
|
* :::
|
46
53
|
*/
|
54
|
+
var _onModifyRowHeader = /*#__PURE__*/new WeakSet();
|
47
55
|
class BindRowsWithHeaders extends _base.BasePlugin {
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
+
constructor() {
|
57
|
+
super(...arguments);
|
58
|
+
/**
|
59
|
+
* On modify row header listener.
|
60
|
+
*
|
61
|
+
* @param {number} row Row index.
|
62
|
+
* @returns {number}
|
63
|
+
*/
|
64
|
+
_classPrivateMethodInitSpec(this, _onModifyRowHeader);
|
56
65
|
/**
|
57
66
|
* Plugin indexes cache.
|
58
67
|
*
|
59
68
|
* @private
|
60
69
|
* @type {null|IndexMap}
|
61
70
|
*/
|
62
|
-
this
|
71
|
+
_defineProperty(this, "headerIndexes", null);
|
72
|
+
}
|
73
|
+
static get PLUGIN_KEY() {
|
74
|
+
return PLUGIN_KEY;
|
75
|
+
}
|
76
|
+
static get PLUGIN_PRIORITY() {
|
77
|
+
return PLUGIN_PRIORITY;
|
63
78
|
}
|
64
|
-
|
65
79
|
/**
|
66
80
|
* Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
|
67
81
|
* hook and if it returns `true` then the {@link BindRowsWithHeaders#enablePlugin} method is called.
|
@@ -85,7 +99,7 @@ class BindRowsWithHeaders extends _base.BasePlugin {
|
|
85
99
|
}
|
86
100
|
const MapStrategy = bindTypeToMapStrategy.get(bindType);
|
87
101
|
this.headerIndexes = this.hot.rowIndexMapper.registerMap('bindRowsWithHeaders', new MapStrategy());
|
88
|
-
this.addHook('modifyRowHeader', row => this.
|
102
|
+
this.addHook('modifyRowHeader', row => _classPrivateMethodGet(this, _onModifyRowHeader, _onModifyRowHeader2).call(this, row));
|
89
103
|
super.enablePlugin();
|
90
104
|
}
|
91
105
|
|
@@ -96,18 +110,6 @@ class BindRowsWithHeaders extends _base.BasePlugin {
|
|
96
110
|
this.hot.rowIndexMapper.unregisterMap('bindRowsWithHeaders');
|
97
111
|
super.disablePlugin();
|
98
112
|
}
|
99
|
-
|
100
|
-
/**
|
101
|
-
* On modify row header listener.
|
102
|
-
*
|
103
|
-
* @private
|
104
|
-
* @param {number} row Row index.
|
105
|
-
* @returns {number}
|
106
|
-
*/
|
107
|
-
onModifyRowHeader(row) {
|
108
|
-
return this.headerIndexes.getValueAtIndex(this.hot.toPhysicalRow(row));
|
109
|
-
}
|
110
|
-
|
111
113
|
/**
|
112
114
|
* Destroys the plugin instance.
|
113
115
|
*/
|
@@ -115,4 +117,7 @@ class BindRowsWithHeaders extends _base.BasePlugin {
|
|
115
117
|
super.destroy();
|
116
118
|
}
|
117
119
|
}
|
118
|
-
exports.BindRowsWithHeaders = BindRowsWithHeaders;
|
120
|
+
exports.BindRowsWithHeaders = BindRowsWithHeaders;
|
121
|
+
function _onModifyRowHeader2(row) {
|
122
|
+
return this.headerIndexes.getValueAtIndex(this.hot.toPhysicalRow(row));
|
123
|
+
}
|
@@ -1,3 +1,10 @@
|
|
1
|
+
import "core-js/modules/es.error.cause.js";
|
2
|
+
function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
|
3
|
+
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
4
|
+
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; }
|
5
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
6
|
+
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); }
|
7
|
+
function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
|
1
8
|
import { BasePlugin } from "../base/index.mjs";
|
2
9
|
import LooseBindsMap from "./maps/looseBindsMap.mjs";
|
3
10
|
import StrictBindsMap from "./maps/strictBindsMap.mjs";
|
@@ -38,24 +45,31 @@ const bindTypeToMapStrategy = new Map([['loose', LooseBindsMap], ['strict', Stri
|
|
38
45
|
* ```
|
39
46
|
* :::
|
40
47
|
*/
|
48
|
+
var _onModifyRowHeader = /*#__PURE__*/new WeakSet();
|
41
49
|
export class BindRowsWithHeaders extends BasePlugin {
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
+
constructor() {
|
51
|
+
super(...arguments);
|
52
|
+
/**
|
53
|
+
* On modify row header listener.
|
54
|
+
*
|
55
|
+
* @param {number} row Row index.
|
56
|
+
* @returns {number}
|
57
|
+
*/
|
58
|
+
_classPrivateMethodInitSpec(this, _onModifyRowHeader);
|
50
59
|
/**
|
51
60
|
* Plugin indexes cache.
|
52
61
|
*
|
53
62
|
* @private
|
54
63
|
* @type {null|IndexMap}
|
55
64
|
*/
|
56
|
-
this
|
65
|
+
_defineProperty(this, "headerIndexes", null);
|
66
|
+
}
|
67
|
+
static get PLUGIN_KEY() {
|
68
|
+
return PLUGIN_KEY;
|
69
|
+
}
|
70
|
+
static get PLUGIN_PRIORITY() {
|
71
|
+
return PLUGIN_PRIORITY;
|
57
72
|
}
|
58
|
-
|
59
73
|
/**
|
60
74
|
* Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
|
61
75
|
* hook and if it returns `true` then the {@link BindRowsWithHeaders#enablePlugin} method is called.
|
@@ -79,7 +93,7 @@ export class BindRowsWithHeaders extends BasePlugin {
|
|
79
93
|
}
|
80
94
|
const MapStrategy = bindTypeToMapStrategy.get(bindType);
|
81
95
|
this.headerIndexes = this.hot.rowIndexMapper.registerMap('bindRowsWithHeaders', new MapStrategy());
|
82
|
-
this.addHook('modifyRowHeader', row => this.
|
96
|
+
this.addHook('modifyRowHeader', row => _classPrivateMethodGet(this, _onModifyRowHeader, _onModifyRowHeader2).call(this, row));
|
83
97
|
super.enablePlugin();
|
84
98
|
}
|
85
99
|
|
@@ -90,22 +104,13 @@ export class BindRowsWithHeaders extends BasePlugin {
|
|
90
104
|
this.hot.rowIndexMapper.unregisterMap('bindRowsWithHeaders');
|
91
105
|
super.disablePlugin();
|
92
106
|
}
|
93
|
-
|
94
|
-
/**
|
95
|
-
* On modify row header listener.
|
96
|
-
*
|
97
|
-
* @private
|
98
|
-
* @param {number} row Row index.
|
99
|
-
* @returns {number}
|
100
|
-
*/
|
101
|
-
onModifyRowHeader(row) {
|
102
|
-
return this.headerIndexes.getValueAtIndex(this.hot.toPhysicalRow(row));
|
103
|
-
}
|
104
|
-
|
105
107
|
/**
|
106
108
|
* Destroys the plugin instance.
|
107
109
|
*/
|
108
110
|
destroy() {
|
109
111
|
super.destroy();
|
110
112
|
}
|
113
|
+
}
|
114
|
+
function _onModifyRowHeader2(row) {
|
115
|
+
return this.headerIndexes.getValueAtIndex(this.hot.toPhysicalRow(row));
|
111
116
|
}
|
@@ -8,11 +8,10 @@ var _array = require("../../helpers/array");
|
|
8
8
|
var _number = require("../../helpers/number");
|
9
9
|
var _console = require("../../helpers/console");
|
10
10
|
var _element = require("../../helpers/dom/element");
|
11
|
-
var _eventManager = _interopRequireDefault(require("../../eventManager"));
|
12
11
|
var _event = require("../../helpers/dom/event");
|
13
12
|
var _a11y = require("../../helpers/a11y");
|
14
13
|
var _constants = require("../../i18n/constants");
|
15
|
-
function
|
14
|
+
function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
|
16
15
|
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
17
16
|
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
18
17
|
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; }
|
@@ -20,6 +19,7 @@ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typ
|
|
20
19
|
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); }
|
21
20
|
function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
|
22
21
|
function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
|
22
|
+
function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
|
23
23
|
function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
|
24
24
|
function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
|
25
25
|
function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } }
|
@@ -112,23 +112,48 @@ const actionDictionary = new Map([['collapse', {
|
|
112
112
|
* :::
|
113
113
|
*/
|
114
114
|
var _collapsedColumnsMap = /*#__PURE__*/new WeakMap();
|
115
|
+
var _onAfterGetColHeader = /*#__PURE__*/new WeakSet();
|
116
|
+
var _onBeforeOnCellMouseDown = /*#__PURE__*/new WeakSet();
|
117
|
+
var _onInit = /*#__PURE__*/new WeakSet();
|
118
|
+
var _onAfterLoadData = /*#__PURE__*/new WeakSet();
|
115
119
|
class CollapsibleColumns extends _base.BasePlugin {
|
116
120
|
constructor() {
|
117
121
|
super(...arguments);
|
118
122
|
/**
|
119
|
-
*
|
123
|
+
* Updates the plugin state after new dataset load.
|
120
124
|
*
|
121
|
-
* @
|
122
|
-
* @
|
125
|
+
* @param {Array[]} sourceData Array of arrays or array of objects containing data.
|
126
|
+
* @param {boolean} initialLoad Flag that determines whether the data has been loaded
|
127
|
+
* during the initialization.
|
123
128
|
*/
|
124
|
-
|
129
|
+
_classPrivateMethodInitSpec(this, _onAfterLoadData);
|
130
|
+
/**
|
131
|
+
* Updates the plugin state after HoT initialization.
|
132
|
+
*/
|
133
|
+
_classPrivateMethodInitSpec(this, _onInit);
|
134
|
+
/**
|
135
|
+
* Indicator mouse event callback.
|
136
|
+
*
|
137
|
+
* @param {object} event Mouse event.
|
138
|
+
* @param {object} coords Event coordinates.
|
139
|
+
*/
|
140
|
+
_classPrivateMethodInitSpec(this, _onBeforeOnCellMouseDown);
|
125
141
|
/**
|
126
|
-
*
|
142
|
+
* Adds the indicator to the headers.
|
143
|
+
*
|
144
|
+
* @param {number} column Column index.
|
145
|
+
* @param {HTMLElement} TH TH element.
|
146
|
+
* @param {number} headerLevel The index of header level counting from the top (positive
|
147
|
+
* values counting from 0 to N).
|
148
|
+
*/
|
149
|
+
_classPrivateMethodInitSpec(this, _onAfterGetColHeader);
|
150
|
+
/**
|
151
|
+
* Cached reference to the NestedHeaders plugin.
|
127
152
|
*
|
128
153
|
* @private
|
129
|
-
* @type {
|
154
|
+
* @type {NestedHeaders}
|
130
155
|
*/
|
131
|
-
_defineProperty(this, "
|
156
|
+
_defineProperty(this, "nestedHeadersPlugin", null);
|
132
157
|
/**
|
133
158
|
* The NestedHeaders plugin StateManager instance.
|
134
159
|
*
|
@@ -186,14 +211,20 @@ class CollapsibleColumns extends _base.BasePlugin {
|
|
186
211
|
_classPrivateFieldSet(this, _collapsedColumnsMap, this.hot.columnIndexMapper.createAndRegisterIndexMap(this.pluginName, 'hiding'));
|
187
212
|
this.nestedHeadersPlugin = this.hot.getPlugin('nestedHeaders');
|
188
213
|
this.headerStateManager = this.nestedHeadersPlugin.getStateManager();
|
189
|
-
this.addHook('init', () => this.
|
214
|
+
this.addHook('init', () => _classPrivateMethodGet(this, _onInit, _onInit2).call(this));
|
190
215
|
this.addHook('afterLoadData', function () {
|
191
|
-
|
216
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
217
|
+
args[_key] = arguments[_key];
|
218
|
+
}
|
219
|
+
return _classPrivateMethodGet(_this, _onAfterLoadData, _onAfterLoadData2).call(_this, ...args);
|
192
220
|
});
|
193
221
|
this.addHook('afterGetColHeader', function () {
|
194
|
-
|
222
|
+
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
223
|
+
args[_key2] = arguments[_key2];
|
224
|
+
}
|
225
|
+
return _classPrivateMethodGet(_this, _onAfterGetColHeader, _onAfterGetColHeader2).call(_this, ...args);
|
195
226
|
});
|
196
|
-
this.addHook('beforeOnCellMouseDown', (event, coords, TD) => this.
|
227
|
+
this.addHook('beforeOnCellMouseDown', (event, coords, TD) => _classPrivateMethodGet(this, _onBeforeOnCellMouseDown, _onBeforeOnCellMouseDown2).call(this, event, coords, TD));
|
197
228
|
this.registerShortcuts();
|
198
229
|
super.enablePlugin();
|
199
230
|
// @TODO: Workaround for broken plugin initialization abstraction (#6806).
|
@@ -487,110 +518,76 @@ class CollapsibleColumns extends _base.BasePlugin {
|
|
487
518
|
getCollapsedColumns() {
|
488
519
|
return _classPrivateFieldGet(this, _collapsedColumnsMap).getHiddenIndexes();
|
489
520
|
}
|
490
|
-
|
491
521
|
/**
|
492
|
-
*
|
493
|
-
*
|
494
|
-
* @private
|
495
|
-
* @param {number} column Column index.
|
496
|
-
* @param {HTMLElement} TH TH element.
|
497
|
-
* @param {number} headerLevel The index of header level counting from the top (positive
|
498
|
-
* values counting from 0 to N).
|
522
|
+
* Destroys the plugin instance.
|
499
523
|
*/
|
500
|
-
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
|
509
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
514
|
-
|
515
|
-
|
516
|
-
|
517
|
-
|
518
|
-
|
519
|
-
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
(0, _element.addClass)(collapsibleElement, 'expanded');
|
528
|
-
(0, _element.fastInnerText)(collapsibleElement, '-');
|
524
|
+
destroy() {
|
525
|
+
_classPrivateFieldSet(this, _collapsedColumnsMap, null);
|
526
|
+
super.destroy();
|
527
|
+
}
|
528
|
+
}
|
529
|
+
exports.CollapsibleColumns = CollapsibleColumns;
|
530
|
+
function _onAfterGetColHeader2(column, TH, headerLevel) {
|
531
|
+
var _this$headerStateMana3;
|
532
|
+
const {
|
533
|
+
collapsible,
|
534
|
+
origColspan,
|
535
|
+
isCollapsed
|
536
|
+
} = (_this$headerStateMana3 = this.headerStateManager.getHeaderSettings(headerLevel, column)) !== null && _this$headerStateMana3 !== void 0 ? _this$headerStateMana3 : {};
|
537
|
+
const isNodeCollapsible = collapsible && origColspan > 1 && column >= this.hot.getSettings().fixedColumnsStart;
|
538
|
+
const isAriaTagsEnabled = this.hot.getSettings().ariaTags;
|
539
|
+
let collapsibleElement = TH.querySelector(`.${COLLAPSIBLE_ELEMENT_CLASS}`);
|
540
|
+
(0, _element.removeAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)('')[0]]);
|
541
|
+
if (isNodeCollapsible) {
|
542
|
+
if (!collapsibleElement) {
|
543
|
+
collapsibleElement = this.hot.rootDocument.createElement('div');
|
544
|
+
(0, _element.addClass)(collapsibleElement, COLLAPSIBLE_ELEMENT_CLASS);
|
545
|
+
TH.querySelector('div:first-child').appendChild(collapsibleElement);
|
546
|
+
}
|
547
|
+
(0, _element.removeClass)(collapsibleElement, ['collapsed', 'expanded']);
|
548
|
+
if (isCollapsed) {
|
549
|
+
(0, _element.addClass)(collapsibleElement, 'collapsed');
|
550
|
+
(0, _element.fastInnerText)(collapsibleElement, '+');
|
529
551
|
|
530
|
-
|
531
|
-
if (isAriaTagsEnabled) {
|
532
|
-
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(true), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN))]);
|
533
|
-
}
|
534
|
-
}
|
552
|
+
// Add ARIA tags
|
535
553
|
if (isAriaTagsEnabled) {
|
536
|
-
(0, _element.setAttribute)(
|
554
|
+
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(false), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN))]);
|
537
555
|
}
|
538
556
|
} else {
|
539
|
-
|
540
|
-
(
|
541
|
-
}
|
542
|
-
}
|
557
|
+
(0, _element.addClass)(collapsibleElement, 'expanded');
|
558
|
+
(0, _element.fastInnerText)(collapsibleElement, '-');
|
543
559
|
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
* @private
|
548
|
-
* @param {object} event Mouse event.
|
549
|
-
* @param {object} coords Event coordinates.
|
550
|
-
*/
|
551
|
-
onBeforeOnCellMouseDown(event, coords) {
|
552
|
-
if ((0, _element.hasClass)(event.target, COLLAPSIBLE_ELEMENT_CLASS)) {
|
553
|
-
if ((0, _element.hasClass)(event.target, 'expanded')) {
|
554
|
-
this.eventManager.fireEvent(event.target, 'mouseup');
|
555
|
-
this.toggleCollapsibleSection([coords], 'collapse');
|
556
|
-
} else if ((0, _element.hasClass)(event.target, 'collapsed')) {
|
557
|
-
this.eventManager.fireEvent(event.target, 'mouseup');
|
558
|
-
this.toggleCollapsibleSection([coords], 'expand');
|
560
|
+
// Add ARIA tags
|
561
|
+
if (isAriaTagsEnabled) {
|
562
|
+
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(true), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN))]);
|
559
563
|
}
|
560
|
-
(0, _event.stopImmediatePropagation)(event);
|
561
564
|
}
|
562
|
-
|
563
|
-
|
564
|
-
/**
|
565
|
-
* Updates the plugin state after HoT initialization.
|
566
|
-
*
|
567
|
-
* @private
|
568
|
-
*/
|
569
|
-
onInit() {
|
570
|
-
// @TODO: Workaround for broken plugin initialization abstraction (#6806).
|
571
|
-
this.updatePlugin();
|
572
|
-
}
|
573
|
-
|
574
|
-
/**
|
575
|
-
* Updates the plugin state after new dataset load.
|
576
|
-
*
|
577
|
-
* @private
|
578
|
-
* @param {Array[]} sourceData Array of arrays or array of objects containing data.
|
579
|
-
* @param {boolean} initialLoad Flag that determines whether the data has been loaded
|
580
|
-
* during the initialization.
|
581
|
-
*/
|
582
|
-
onAfterLoadData(sourceData, initialLoad) {
|
583
|
-
if (!initialLoad) {
|
584
|
-
this.updatePlugin();
|
565
|
+
if (isAriaTagsEnabled) {
|
566
|
+
(0, _element.setAttribute)(collapsibleElement, ...(0, _a11y.A11Y_HIDDEN)());
|
585
567
|
}
|
568
|
+
} else {
|
569
|
+
var _collapsibleElement;
|
570
|
+
(_collapsibleElement = collapsibleElement) === null || _collapsibleElement === void 0 || _collapsibleElement.remove();
|
586
571
|
}
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
572
|
+
}
|
573
|
+
function _onBeforeOnCellMouseDown2(event, coords) {
|
574
|
+
if ((0, _element.hasClass)(event.target, COLLAPSIBLE_ELEMENT_CLASS)) {
|
575
|
+
if ((0, _element.hasClass)(event.target, 'expanded')) {
|
576
|
+
this.eventManager.fireEvent(event.target, 'mouseup');
|
577
|
+
this.toggleCollapsibleSection([coords], 'collapse');
|
578
|
+
} else if ((0, _element.hasClass)(event.target, 'collapsed')) {
|
579
|
+
this.eventManager.fireEvent(event.target, 'mouseup');
|
580
|
+
this.toggleCollapsibleSection([coords], 'expand');
|
581
|
+
}
|
582
|
+
(0, _event.stopImmediatePropagation)(event);
|
594
583
|
}
|
595
584
|
}
|
596
|
-
|
585
|
+
function _onInit2() {
|
586
|
+
// @TODO: Workaround for broken plugin initialization abstraction (#6806).
|
587
|
+
this.updatePlugin();
|
588
|
+
}
|
589
|
+
function _onAfterLoadData2(sourceData, initialLoad) {
|
590
|
+
if (!initialLoad) {
|
591
|
+
this.updatePlugin();
|
592
|
+
}
|
593
|
+
}
|