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
@@ -144,9 +144,55 @@ const AFTER_INDICATOR_CLASSNAME = 'afterHiddenColumnIndicator';
|
|
144
144
|
var _settings = /*#__PURE__*/new WeakMap();
|
145
145
|
var _hiddenColumnsMap = /*#__PURE__*/new WeakMap();
|
146
146
|
var _clearIndicatorElements = /*#__PURE__*/new WeakSet();
|
147
|
+
var _onModifyColWidth = /*#__PURE__*/new WeakSet();
|
148
|
+
var _onAfterGetCellMeta = /*#__PURE__*/new WeakSet();
|
149
|
+
var _onModifyCopyableRange = /*#__PURE__*/new WeakSet();
|
150
|
+
var _onAfterGetColHeader = /*#__PURE__*/new WeakSet();
|
151
|
+
var _onAfterContextMenuDefaultOptions = /*#__PURE__*/new WeakSet();
|
152
|
+
var _onMapInit = /*#__PURE__*/new WeakSet();
|
147
153
|
class HiddenColumns extends _base.BasePlugin {
|
148
154
|
constructor() {
|
149
155
|
super(...arguments);
|
156
|
+
/**
|
157
|
+
* On map initialized hook callback.
|
158
|
+
*/
|
159
|
+
_classPrivateMethodInitSpec(this, _onMapInit);
|
160
|
+
/**
|
161
|
+
* Add Show-hide columns to context menu.
|
162
|
+
*
|
163
|
+
* @param {object} options An array of objects containing information about the pre-defined Context Menu items.
|
164
|
+
*/
|
165
|
+
_classPrivateMethodInitSpec(this, _onAfterContextMenuDefaultOptions);
|
166
|
+
/**
|
167
|
+
* Adds the needed classes to the headers.
|
168
|
+
*
|
169
|
+
* @param {number} column Visual column index.
|
170
|
+
* @param {HTMLElement} TH Header's TH element.
|
171
|
+
*/
|
172
|
+
_classPrivateMethodInitSpec(this, _onAfterGetColHeader);
|
173
|
+
/**
|
174
|
+
* Modifies the copyable range, accordingly to the provided config.
|
175
|
+
*
|
176
|
+
* @param {Array} ranges An array of objects defining copyable cells.
|
177
|
+
* @returns {Array}
|
178
|
+
*/
|
179
|
+
_classPrivateMethodInitSpec(this, _onModifyCopyableRange);
|
180
|
+
/**
|
181
|
+
* Sets the copy-related cell meta.
|
182
|
+
*
|
183
|
+
* @param {number} row Visual row index.
|
184
|
+
* @param {number} column Visual column index.
|
185
|
+
* @param {object} cellProperties Object containing the cell properties.
|
186
|
+
*/
|
187
|
+
_classPrivateMethodInitSpec(this, _onAfterGetCellMeta);
|
188
|
+
/**
|
189
|
+
* Adds the additional column width for the hidden column indicators.
|
190
|
+
*
|
191
|
+
* @param {number|undefined} width Column width.
|
192
|
+
* @param {number} column Visual column index.
|
193
|
+
* @returns {number}
|
194
|
+
*/
|
195
|
+
_classPrivateMethodInitSpec(this, _onModifyColWidth);
|
150
196
|
/**
|
151
197
|
* Remove the indicator elements from the provided column header element.
|
152
198
|
*
|
@@ -206,17 +252,23 @@ class HiddenColumns extends _base.BasePlugin {
|
|
206
252
|
}
|
207
253
|
}
|
208
254
|
_classPrivateFieldSet(this, _hiddenColumnsMap, new _translations.HidingMap());
|
209
|
-
_classPrivateFieldGet(this, _hiddenColumnsMap).addLocalHook('init', () => this.
|
255
|
+
_classPrivateFieldGet(this, _hiddenColumnsMap).addLocalHook('init', () => _classPrivateMethodGet(this, _onMapInit, _onMapInit2).call(this));
|
210
256
|
this.hot.columnIndexMapper.registerMap(this.pluginName, _classPrivateFieldGet(this, _hiddenColumnsMap));
|
211
257
|
this.addHook('afterContextMenuDefaultOptions', function () {
|
212
|
-
|
258
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
259
|
+
args[_key] = arguments[_key];
|
260
|
+
}
|
261
|
+
return _classPrivateMethodGet(_this, _onAfterContextMenuDefaultOptions, _onAfterContextMenuDefaultOptions2).call(_this, ...args);
|
213
262
|
});
|
214
|
-
this.addHook('afterGetCellMeta', (row, col, cellProperties) => this.
|
215
|
-
this.addHook('modifyColWidth', (width, col) => this.
|
263
|
+
this.addHook('afterGetCellMeta', (row, col, cellProperties) => _classPrivateMethodGet(this, _onAfterGetCellMeta, _onAfterGetCellMeta2).call(this, row, col, cellProperties));
|
264
|
+
this.addHook('modifyColWidth', (width, col) => _classPrivateMethodGet(this, _onModifyColWidth, _onModifyColWidth2).call(this, width, col));
|
216
265
|
this.addHook('afterGetColHeader', function () {
|
217
|
-
|
266
|
+
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
267
|
+
args[_key2] = arguments[_key2];
|
268
|
+
}
|
269
|
+
return _classPrivateMethodGet(_this, _onAfterGetColHeader, _onAfterGetColHeader2).call(_this, ...args);
|
218
270
|
});
|
219
|
-
this.addHook('modifyCopyableRange', ranges => this.
|
271
|
+
this.addHook('modifyCopyableRange', ranges => _classPrivateMethodGet(this, _onModifyCopyableRange, _onModifyCopyableRange2).call(this, ranges));
|
220
272
|
super.enablePlugin();
|
221
273
|
}
|
222
274
|
|
@@ -295,8 +347,8 @@ class HiddenColumns extends _base.BasePlugin {
|
|
295
347
|
* @param {...number} column Visual column index.
|
296
348
|
*/
|
297
349
|
showColumn() {
|
298
|
-
for (var
|
299
|
-
column[
|
350
|
+
for (var _len3 = arguments.length, column = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
|
351
|
+
column[_key3] = arguments[_key3];
|
300
352
|
}
|
301
353
|
this.showColumns(column);
|
302
354
|
}
|
@@ -333,8 +385,8 @@ class HiddenColumns extends _base.BasePlugin {
|
|
333
385
|
* @param {...number} column Visual column index.
|
334
386
|
*/
|
335
387
|
hideColumn() {
|
336
|
-
for (var
|
337
|
-
column[
|
388
|
+
for (var _len4 = arguments.length, column = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
|
389
|
+
column[_key4] = arguments[_key4];
|
338
390
|
}
|
339
391
|
this.hideColumns(column);
|
340
392
|
}
|
@@ -387,178 +439,131 @@ class HiddenColumns extends _base.BasePlugin {
|
|
387
439
|
});
|
388
440
|
}
|
389
441
|
/**
|
390
|
-
*
|
391
|
-
*
|
392
|
-
* @private
|
393
|
-
* @param {number|undefined} width Column width.
|
394
|
-
* @param {number} column Visual column index.
|
395
|
-
* @returns {number}
|
442
|
+
* Destroys the plugin instance.
|
396
443
|
*/
|
397
|
-
|
398
|
-
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
444
|
+
destroy() {
|
445
|
+
_classPrivateFieldSet(this, _settings, null);
|
446
|
+
_classPrivateFieldSet(this, _hiddenColumnsMap, null);
|
447
|
+
super.destroy();
|
448
|
+
}
|
449
|
+
}
|
450
|
+
exports.HiddenColumns = HiddenColumns;
|
451
|
+
function _clearIndicatorElements2(TH) {
|
452
|
+
Array.from(TH.querySelectorAll(`.${AFTER_INDICATOR_CLASSNAME}, .${BEFORE_INDICATOR_CLASSNAME}`)).forEach(element => {
|
453
|
+
element.remove();
|
454
|
+
});
|
455
|
+
}
|
456
|
+
function _onModifyColWidth2(width, column) {
|
457
|
+
// Hook is triggered internally only for the visible columns. Conditional will be handled for the API
|
458
|
+
// calls of the `getColWidth` function on not visible indexes.
|
459
|
+
if (this.isHidden(column)) {
|
460
|
+
return 0;
|
461
|
+
}
|
462
|
+
if (_classPrivateFieldGet(this, _settings).indicators && (this.isHidden(column + 1) || this.isHidden(column - 1))) {
|
463
|
+
// Add additional space for hidden column indicator.
|
464
|
+
if (typeof width === 'number' && this.hot.hasColHeaders()) {
|
465
|
+
return width + 15;
|
408
466
|
}
|
409
467
|
}
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
if (_classPrivateFieldGet(this, _settings).copyPasteEnabled === false && this.isHidden(column)) {
|
421
|
-
// Cell property handled by the `Autofill` and the `CopyPaste` plugins.
|
422
|
-
cellProperties.skipColumnOnPaste = true;
|
468
|
+
}
|
469
|
+
function _onAfterGetCellMeta2(row, column, cellProperties) {
|
470
|
+
if (_classPrivateFieldGet(this, _settings).copyPasteEnabled === false && this.isHidden(column)) {
|
471
|
+
// Cell property handled by the `Autofill` and the `CopyPaste` plugins.
|
472
|
+
cellProperties.skipColumnOnPaste = true;
|
473
|
+
}
|
474
|
+
if (this.isHidden(column - 1)) {
|
475
|
+
cellProperties.className = cellProperties.className || '';
|
476
|
+
if (cellProperties.className.indexOf('afterHiddenColumn') === -1) {
|
477
|
+
cellProperties.className += ' afterHiddenColumn';
|
423
478
|
}
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
|
429
|
-
|
430
|
-
const classArr = cellProperties.className.split(' ');
|
431
|
-
if (classArr.length > 0) {
|
432
|
-
const containAfterHiddenColumn = classArr.indexOf('afterHiddenColumn');
|
433
|
-
if (containAfterHiddenColumn > -1) {
|
434
|
-
classArr.splice(containAfterHiddenColumn, 1);
|
435
|
-
}
|
436
|
-
cellProperties.className = classArr.join(' ');
|
479
|
+
} else if (cellProperties.className) {
|
480
|
+
const classArr = cellProperties.className.split(' ');
|
481
|
+
if (classArr.length > 0) {
|
482
|
+
const containAfterHiddenColumn = classArr.indexOf('afterHiddenColumn');
|
483
|
+
if (containAfterHiddenColumn > -1) {
|
484
|
+
classArr.splice(containAfterHiddenColumn, 1);
|
437
485
|
}
|
486
|
+
cellProperties.className = classArr.join(' ');
|
438
487
|
}
|
439
488
|
}
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
(0, _array.arrayEach)(ranges, range => {
|
463
|
-
let isHidden = true;
|
464
|
-
let rangeStart = 0;
|
465
|
-
(0, _number.rangeEach)(range.startCol, range.endCol, visualColumn => {
|
466
|
-
if (this.isHidden(visualColumn)) {
|
467
|
-
if (!isHidden) {
|
468
|
-
pushRange(range.startRow, range.endRow, rangeStart, visualColumn - 1);
|
469
|
-
}
|
470
|
-
isHidden = true;
|
471
|
-
} else {
|
472
|
-
if (isHidden) {
|
473
|
-
rangeStart = visualColumn;
|
474
|
-
}
|
475
|
-
if (visualColumn === range.endCol) {
|
476
|
-
pushRange(range.startRow, range.endRow, rangeStart, visualColumn);
|
477
|
-
}
|
478
|
-
isHidden = false;
|
489
|
+
}
|
490
|
+
function _onModifyCopyableRange2(ranges) {
|
491
|
+
// Ranges shouldn't be modified when `copyPasteEnabled` option is set to `true` (by default).
|
492
|
+
if (_classPrivateFieldGet(this, _settings).copyPasteEnabled) {
|
493
|
+
return ranges;
|
494
|
+
}
|
495
|
+
const newRanges = [];
|
496
|
+
const pushRange = (startRow, endRow, startCol, endCol) => {
|
497
|
+
newRanges.push({
|
498
|
+
startRow,
|
499
|
+
endRow,
|
500
|
+
startCol,
|
501
|
+
endCol
|
502
|
+
});
|
503
|
+
};
|
504
|
+
(0, _array.arrayEach)(ranges, range => {
|
505
|
+
let isHidden = true;
|
506
|
+
let rangeStart = 0;
|
507
|
+
(0, _number.rangeEach)(range.startCol, range.endCol, visualColumn => {
|
508
|
+
if (this.isHidden(visualColumn)) {
|
509
|
+
if (!isHidden) {
|
510
|
+
pushRange(range.startRow, range.endRow, rangeStart, visualColumn - 1);
|
479
511
|
}
|
480
|
-
|
512
|
+
isHidden = true;
|
513
|
+
} else {
|
514
|
+
if (isHidden) {
|
515
|
+
rangeStart = visualColumn;
|
516
|
+
}
|
517
|
+
if (visualColumn === range.endCol) {
|
518
|
+
pushRange(range.startRow, range.endRow, rangeStart, visualColumn);
|
519
|
+
}
|
520
|
+
isHidden = false;
|
521
|
+
}
|
481
522
|
});
|
482
|
-
|
523
|
+
});
|
524
|
+
return newRanges;
|
525
|
+
}
|
526
|
+
function _onAfterGetColHeader2(column, TH) {
|
527
|
+
const areAriaTagsEnabled = this.hot.getSettings().ariaTags;
|
528
|
+
const beforeHiddenColumnIndicatorElement = TH.querySelector('.beforeHiddenColumnIndicator');
|
529
|
+
const afterHiddenColumnIndicatorElement = TH.querySelector('.afterHiddenColumnIndicator');
|
530
|
+
if (!_classPrivateFieldGet(this, _settings).indicators || column < 0) {
|
531
|
+
beforeHiddenColumnIndicatorElement === null || beforeHiddenColumnIndicatorElement === void 0 || beforeHiddenColumnIndicatorElement.remove();
|
532
|
+
afterHiddenColumnIndicatorElement === null || afterHiddenColumnIndicatorElement === void 0 || afterHiddenColumnIndicatorElement.remove();
|
533
|
+
return;
|
483
534
|
}
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
const areAriaTagsEnabled = this.hot.getSettings().ariaTags;
|
494
|
-
const beforeHiddenColumnIndicatorElement = TH.querySelector('.beforeHiddenColumnIndicator');
|
495
|
-
const afterHiddenColumnIndicatorElement = TH.querySelector('.afterHiddenColumnIndicator');
|
496
|
-
if (!_classPrivateFieldGet(this, _settings).indicators || column < 0) {
|
497
|
-
beforeHiddenColumnIndicatorElement === null || beforeHiddenColumnIndicatorElement === void 0 || beforeHiddenColumnIndicatorElement.remove();
|
498
|
-
afterHiddenColumnIndicatorElement === null || afterHiddenColumnIndicatorElement === void 0 || afterHiddenColumnIndicatorElement.remove();
|
499
|
-
return;
|
500
|
-
}
|
501
|
-
const classList = [];
|
502
|
-
if (column >= 1 && this.isHidden(column - 1)) {
|
503
|
-
if (!afterHiddenColumnIndicatorElement) {
|
504
|
-
const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN))] : [];
|
505
|
-
(0, _element.appendElement)(TH, {
|
506
|
-
tagName: 'div',
|
507
|
-
attributes: attributesToAdd,
|
508
|
-
className: AFTER_INDICATOR_CLASSNAME
|
509
|
-
});
|
510
|
-
}
|
511
|
-
classList.push('afterHiddenColumn');
|
512
|
-
}
|
513
|
-
if (column < this.hot.countCols() - 1 && this.isHidden(column + 1)) {
|
514
|
-
if (!beforeHiddenColumnIndicatorElement) {
|
515
|
-
const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN))] : [];
|
516
|
-
(0, _element.appendElement)(TH, {
|
517
|
-
tagName: 'div',
|
518
|
-
attributes: attributesToAdd,
|
519
|
-
className: BEFORE_INDICATOR_CLASSNAME
|
520
|
-
});
|
521
|
-
}
|
522
|
-
classList.push('beforeHiddenColumn');
|
535
|
+
const classList = [];
|
536
|
+
if (column >= 1 && this.isHidden(column - 1)) {
|
537
|
+
if (!afterHiddenColumnIndicatorElement) {
|
538
|
+
const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN))] : [];
|
539
|
+
(0, _element.appendElement)(TH, {
|
540
|
+
tagName: 'div',
|
541
|
+
attributes: attributesToAdd,
|
542
|
+
className: AFTER_INDICATOR_CLASSNAME
|
543
|
+
});
|
523
544
|
}
|
524
|
-
|
525
|
-
}
|
526
|
-
|
527
|
-
/**
|
528
|
-
* Add Show-hide columns to context menu.
|
529
|
-
*
|
530
|
-
* @private
|
531
|
-
* @param {object} options An array of objects containing information about the pre-defined Context Menu items.
|
532
|
-
*/
|
533
|
-
onAfterContextMenuDefaultOptions(options) {
|
534
|
-
options.items.push({
|
535
|
-
name: _predefinedItems.SEPARATOR
|
536
|
-
}, (0, _hideColumn.default)(this), (0, _showColumn.default)(this));
|
545
|
+
classList.push('afterHiddenColumn');
|
537
546
|
}
|
538
|
-
|
539
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
|
546
|
-
this.hideColumns(_classPrivateFieldGet(this, _settings).columns);
|
547
|
+
if (column < this.hot.countCols() - 1 && this.isHidden(column + 1)) {
|
548
|
+
if (!beforeHiddenColumnIndicatorElement) {
|
549
|
+
const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN))] : [];
|
550
|
+
(0, _element.appendElement)(TH, {
|
551
|
+
tagName: 'div',
|
552
|
+
attributes: attributesToAdd,
|
553
|
+
className: BEFORE_INDICATOR_CLASSNAME
|
554
|
+
});
|
547
555
|
}
|
556
|
+
classList.push('beforeHiddenColumn');
|
548
557
|
}
|
549
|
-
|
550
|
-
/**
|
551
|
-
* Destroys the plugin instance.
|
552
|
-
*/
|
553
|
-
destroy() {
|
554
|
-
_classPrivateFieldSet(this, _settings, null);
|
555
|
-
_classPrivateFieldSet(this, _hiddenColumnsMap, null);
|
556
|
-
super.destroy();
|
557
|
-
}
|
558
|
+
(0, _element.addClass)(TH, classList);
|
558
559
|
}
|
559
|
-
|
560
|
-
|
561
|
-
|
562
|
-
|
563
|
-
|
560
|
+
function _onAfterContextMenuDefaultOptions2(options) {
|
561
|
+
options.items.push({
|
562
|
+
name: _predefinedItems.SEPARATOR
|
563
|
+
}, (0, _hideColumn.default)(this), (0, _showColumn.default)(this));
|
564
|
+
}
|
565
|
+
function _onMapInit2() {
|
566
|
+
if (Array.isArray(_classPrivateFieldGet(this, _settings).columns)) {
|
567
|
+
this.hideColumns(_classPrivateFieldGet(this, _settings).columns);
|
568
|
+
}
|
564
569
|
}
|