handsontable 0.0.0-next-af5139c-20230620 → 0.0.0-next-06a64be-20230621
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/walkontable/src/{selection/border/border.js → border.js} +12 -7
- package/3rdparty/walkontable/src/{selection/border/border.mjs → border.mjs} +12 -7
- package/3rdparty/walkontable/src/cell/coords.d.ts +1 -6
- package/3rdparty/walkontable/src/cell/coords.js +12 -61
- package/3rdparty/walkontable/src/cell/coords.mjs +12 -61
- package/3rdparty/walkontable/src/cell/range.d.ts +2 -9
- package/3rdparty/walkontable/src/cell/range.js +7 -44
- package/3rdparty/walkontable/src/cell/range.mjs +7 -44
- package/3rdparty/walkontable/src/core/_base.js +3 -9
- package/3rdparty/walkontable/src/core/_base.mjs +3 -9
- package/3rdparty/walkontable/src/core/clone.js +2 -2
- package/3rdparty/walkontable/src/core/clone.mjs +2 -2
- package/3rdparty/walkontable/src/core/core.js +2 -3
- package/3rdparty/walkontable/src/core/core.mjs +2 -3
- package/3rdparty/walkontable/src/event.js +7 -7
- package/3rdparty/walkontable/src/event.mjs +7 -7
- package/3rdparty/walkontable/src/facade/core.js +2 -2
- package/3rdparty/walkontable/src/facade/core.mjs +2 -2
- package/3rdparty/walkontable/src/index.js +2 -10
- package/3rdparty/walkontable/src/index.mjs +2 -2
- package/3rdparty/walkontable/src/overlay/_base.js +1 -1
- package/3rdparty/walkontable/src/overlay/_base.mjs +1 -1
- package/3rdparty/walkontable/src/overlay/inlineStart.js +4 -2
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +4 -2
- package/3rdparty/walkontable/src/overlay/top.js +4 -2
- package/3rdparty/walkontable/src/overlay/top.mjs +4 -2
- package/3rdparty/walkontable/src/selection.js +355 -0
- package/3rdparty/walkontable/src/selection.mjs +349 -0
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +0 -9
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +0 -9
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +0 -9
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +0 -9
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +0 -9
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +0 -9
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +0 -9
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +0 -9
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +0 -9
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +0 -9
- package/3rdparty/walkontable/src/table.js +79 -7
- package/3rdparty/walkontable/src/table.mjs +80 -8
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/core.d.ts +3 -5
- package/core.js +309 -127
- package/core.mjs +309 -127
- package/dataMap/metaManager/metaSchema.js +0 -19
- package/dataMap/metaManager/metaSchema.mjs +0 -19
- package/dist/handsontable.css +3 -8
- package/dist/handsontable.full.css +3 -8
- package/dist/handsontable.full.js +9241 -11943
- package/dist/handsontable.full.min.css +3 -3
- package/dist/handsontable.full.min.js +107 -107
- package/dist/handsontable.js +12628 -15330
- package/dist/handsontable.min.css +3 -3
- package/dist/handsontable.min.js +4 -4
- package/editorManager.js +94 -21
- package/editorManager.mjs +98 -26
- package/editors/textEditor/textEditor.js +11 -3
- package/editors/textEditor/textEditor.mjs +12 -4
- package/helpers/mixed.js +1 -1
- package/helpers/mixed.mjs +1 -1
- package/helpers/number.d.ts +0 -1
- package/helpers/number.js +0 -18
- package/helpers/number.mjs +0 -17
- package/package.json +1 -1
- package/pluginHooks.d.ts +1 -5
- package/pluginHooks.js +1 -89
- package/pluginHooks.mjs +1 -89
- package/plugins/collapsibleColumns/collapsibleColumns.js +24 -81
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +24 -81
- package/plugins/columnSorting/columnSorting.js +8 -50
- package/plugins/columnSorting/columnSorting.mjs +9 -49
- package/plugins/columnSorting/index.js +2 -4
- package/plugins/columnSorting/index.mjs +1 -1
- package/plugins/copyPaste/copyPaste.js +1 -5
- package/plugins/copyPaste/copyPaste.mjs +1 -5
- package/plugins/customBorders/customBorders.js +53 -18
- package/plugins/customBorders/customBorders.mjs +54 -19
- package/plugins/manualColumnResize/manualColumnResize.js +36 -5
- package/plugins/manualColumnResize/manualColumnResize.mjs +36 -5
- package/plugins/manualRowResize/manualRowResize.js +40 -9
- package/plugins/manualRowResize/manualRowResize.mjs +40 -9
- package/plugins/mergeCells/mergeCells.js +18 -5
- package/plugins/mergeCells/mergeCells.mjs +18 -5
- package/plugins/multiColumnSorting/multiColumnSorting.js +3 -42
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +3 -42
- package/plugins/nestedHeaders/nestedHeaders.js +10 -132
- package/plugins/nestedHeaders/nestedHeaders.mjs +10 -132
- package/plugins/nestedHeaders/stateManager/index.js +0 -37
- package/plugins/nestedHeaders/stateManager/index.mjs +0 -37
- package/plugins/nestedRows/nestedRows.js +7 -52
- package/plugins/nestedRows/nestedRows.mjs +7 -52
- package/renderers/checkboxRenderer/checkboxRenderer.js +2 -2
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +1 -1
- package/selection/highlight/constants.js +16 -0
- package/selection/highlight/constants.mjs +6 -0
- package/selection/highlight/highlight.js +89 -312
- package/selection/highlight/highlight.mjs +85 -302
- package/selection/highlight/types/activeHeader.js +9 -10
- package/selection/highlight/types/activeHeader.mjs +8 -10
- package/selection/highlight/types/area.js +27 -12
- package/selection/highlight/types/area.mjs +30 -16
- package/selection/highlight/types/{focus.js → cell.js} +8 -5
- package/selection/highlight/types/{focus.mjs → cell.mjs} +7 -5
- package/selection/highlight/types/customSelection.js +10 -7
- package/selection/highlight/types/customSelection.mjs +9 -7
- package/selection/highlight/types/fill.js +8 -5
- package/selection/highlight/types/fill.mjs +7 -5
- package/selection/highlight/types/header.js +20 -10
- package/selection/highlight/types/header.mjs +19 -10
- package/selection/highlight/types/{row.js → index.js} +31 -27
- package/selection/highlight/types/{row.mjs → index.mjs} +29 -24
- package/selection/highlight/visualSelection.js +27 -31
- package/selection/highlight/visualSelection.mjs +27 -31
- package/selection/index.js +7 -4
- package/selection/index.mjs +3 -2
- package/selection/mouseEventHandler.js +1 -1
- package/selection/mouseEventHandler.mjs +1 -1
- package/selection/range.js +8 -8
- package/selection/range.mjs +8 -8
- package/selection/selection.js +181 -315
- package/selection/selection.mjs +180 -310
- package/selection/transformation.js +96 -233
- package/selection/transformation.mjs +93 -230
- package/selection/utils.js +36 -12
- package/selection/utils.mjs +36 -13
- package/settings.d.ts +0 -1
- package/shortcuts/manager.js +0 -2
- package/shortcuts/manager.mjs +0 -2
- package/tableView.js +9 -58
- package/tableView.mjs +9 -58
- package/translations/indexMapper.js +9 -8
- package/translations/indexMapper.mjs +9 -8
- package/3rdparty/walkontable/src/selection/border/constants.js +0 -18
- package/3rdparty/walkontable/src/selection/border/constants.mjs +0 -13
- package/3rdparty/walkontable/src/selection/constants.js +0 -63
- package/3rdparty/walkontable/src/selection/constants.mjs +0 -51
- package/3rdparty/walkontable/src/selection/index.js +0 -30
- package/3rdparty/walkontable/src/selection/index.mjs +0 -5
- package/3rdparty/walkontable/src/selection/manager.js +0 -329
- package/3rdparty/walkontable/src/selection/manager.mjs +0 -323
- package/3rdparty/walkontable/src/selection/scanner.js +0 -364
- package/3rdparty/walkontable/src/selection/scanner.mjs +0 -360
- package/3rdparty/walkontable/src/selection/selection.js +0 -133
- package/3rdparty/walkontable/src/selection/selection.mjs +0 -127
- package/selection/highlight/types/areaLayered.js +0 -54
- package/selection/highlight/types/areaLayered.mjs +0 -49
- package/selection/highlight/types/column.js +0 -50
- package/selection/highlight/types/column.mjs +0 -45
- package/shortcutContexts/commands/editor/closeAndSave.js +0 -15
- package/shortcutContexts/commands/editor/closeAndSave.mjs +0 -10
- package/shortcutContexts/commands/editor/closeWithoutSaving.js +0 -13
- package/shortcutContexts/commands/editor/closeWithoutSaving.mjs +0 -8
- package/shortcutContexts/commands/editor/fastOpen.js +0 -16
- package/shortcutContexts/commands/editor/fastOpen.mjs +0 -11
- package/shortcutContexts/commands/editor/index.js +0 -16
- package/shortcutContexts/commands/editor/index.mjs +0 -12
- package/shortcutContexts/commands/editor/open.js +0 -29
- package/shortcutContexts/commands/editor/open.mjs +0 -24
- package/shortcutContexts/commands/emptySelectedCells.js +0 -12
- package/shortcutContexts/commands/emptySelectedCells.mjs +0 -7
- package/shortcutContexts/commands/extendCellsSelection/down.js +0 -15
- package/shortcutContexts/commands/extendCellsSelection/down.mjs +0 -10
- package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.js +0 -21
- package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.mjs +0 -16
- package/shortcutContexts/commands/extendCellsSelection/index.js +0 -26
- package/shortcutContexts/commands/extendCellsSelection/index.mjs +0 -22
- package/shortcutContexts/commands/extendCellsSelection/left.js +0 -15
- package/shortcutContexts/commands/extendCellsSelection/left.mjs +0 -10
- package/shortcutContexts/commands/extendCellsSelection/right.js +0 -15
- package/shortcutContexts/commands/extendCellsSelection/right.mjs +0 -10
- package/shortcutContexts/commands/extendCellsSelection/toColumns.js +0 -19
- package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +0 -14
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +0 -22
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +0 -17
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +0 -17
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +0 -12
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +0 -17
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +0 -12
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +0 -40
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +0 -35
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +0 -40
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +0 -35
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +0 -22
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +0 -17
- package/shortcutContexts/commands/extendCellsSelection/toRows.js +0 -19
- package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +0 -14
- package/shortcutContexts/commands/extendCellsSelection/up.js +0 -15
- package/shortcutContexts/commands/extendCellsSelection/up.mjs +0 -10
- package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.js +0 -21
- package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.mjs +0 -16
- package/shortcutContexts/commands/index.js +0 -52
- package/shortcutContexts/commands/index.mjs +0 -48
- package/shortcutContexts/commands/moveCellSelection/down.js +0 -12
- package/shortcutContexts/commands/moveCellSelection/down.mjs +0 -7
- package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.js +0 -29
- package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.mjs +0 -24
- package/shortcutContexts/commands/moveCellSelection/index.js +0 -28
- package/shortcutContexts/commands/moveCellSelection/index.mjs +0 -24
- package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +0 -13
- package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +0 -8
- package/shortcutContexts/commands/moveCellSelection/inlineStart.js +0 -13
- package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +0 -8
- package/shortcutContexts/commands/moveCellSelection/left.js +0 -11
- package/shortcutContexts/commands/moveCellSelection/left.mjs +0 -6
- package/shortcutContexts/commands/moveCellSelection/right.js +0 -11
- package/shortcutContexts/commands/moveCellSelection/right.mjs +0 -6
- package/shortcutContexts/commands/moveCellSelection/toMostBottom.js +0 -16
- package/shortcutContexts/commands/moveCellSelection/toMostBottom.mjs +0 -11
- package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.js +0 -17
- package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.mjs +0 -12
- package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.js +0 -13
- package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.mjs +0 -8
- package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.js +0 -16
- package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.mjs +0 -11
- package/shortcutContexts/commands/moveCellSelection/toMostLeft.js +0 -36
- package/shortcutContexts/commands/moveCellSelection/toMostLeft.mjs +0 -31
- package/shortcutContexts/commands/moveCellSelection/toMostRight.js +0 -36
- package/shortcutContexts/commands/moveCellSelection/toMostRight.mjs +0 -31
- package/shortcutContexts/commands/moveCellSelection/toMostTop.js +0 -16
- package/shortcutContexts/commands/moveCellSelection/toMostTop.mjs +0 -11
- package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.js +0 -18
- package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.mjs +0 -13
- package/shortcutContexts/commands/moveCellSelection/up.js +0 -12
- package/shortcutContexts/commands/moveCellSelection/up.mjs +0 -7
- package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.js +0 -29
- package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.mjs +0 -24
- package/shortcutContexts/commands/populateSelectedCellsData.js +0 -35
- package/shortcutContexts/commands/populateSelectedCellsData.mjs +0 -30
- package/shortcutContexts/commands/selectAll.js +0 -11
- package/shortcutContexts/commands/selectAll.mjs +0 -6
- package/shortcutContexts/constants.js +0 -19
- package/shortcutContexts/constants.mjs +0 -12
- package/shortcutContexts/editor.js +0 -29
- package/shortcutContexts/editor.mjs +0 -25
- package/shortcutContexts/grid.js +0 -244
- package/shortcutContexts/grid.mjs +0 -240
- package/shortcutContexts/index.js +0 -29
- package/shortcutContexts/index.mjs +0 -15
@@ -25,8 +25,8 @@ require("core-js/modules/es.weak-map.js");
|
|
25
25
|
require("core-js/modules/web.dom-collections.iterator.js");
|
26
26
|
var _element = require("../../helpers/dom/element");
|
27
27
|
var _number = require("../../helpers/number");
|
28
|
-
var _templateLiteralTag = require("../../helpers/templateLiteralTag");
|
29
28
|
var _event = require("../../helpers/dom/event");
|
29
|
+
var _templateLiteralTag = require("../../helpers/templateLiteralTag");
|
30
30
|
var _console = require("../../helpers/console");
|
31
31
|
var _selection = require("../../selection");
|
32
32
|
var _base = require("../base");
|
@@ -201,12 +201,6 @@ var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
201
201
|
this.addHook('beforeOnCellMouseOver', function () {
|
202
202
|
return _this2.onBeforeOnCellMouseOver.apply(_this2, arguments);
|
203
203
|
});
|
204
|
-
this.addHook('modifyTransformStart', function () {
|
205
|
-
return _this2.onModifyTransformStart.apply(_this2, arguments);
|
206
|
-
});
|
207
|
-
this.addHook('afterSelection', function () {
|
208
|
-
return _this2.updateFocusHighlightPosition();
|
209
|
-
});
|
210
204
|
this.addHook('afterGetColumnHeaderRenderers', function (array) {
|
211
205
|
return _this2.onAfterGetColumnHeaderRenderers(array);
|
212
206
|
});
|
@@ -222,18 +216,9 @@ var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
222
216
|
this.addHook('beforeCopy', function () {
|
223
217
|
return _this2.onBeforeCopy.apply(_this2, arguments);
|
224
218
|
});
|
225
|
-
this.addHook('beforeSelectColumns', function () {
|
226
|
-
return _this2.onBeforeSelectColumns.apply(_this2, arguments);
|
227
|
-
});
|
228
219
|
this.addHook('afterViewportColumnCalculatorOverride', function () {
|
229
220
|
return _this2.onAfterViewportColumnCalculatorOverride.apply(_this2, arguments);
|
230
221
|
});
|
231
|
-
this.hot.columnIndexMapper.addLocalHook('cacheUpdated', function () {
|
232
|
-
return _this2.updateFocusHighlightPosition();
|
233
|
-
});
|
234
|
-
this.hot.rowIndexMapper.addLocalHook('cacheUpdated', function () {
|
235
|
-
return _this2.updateFocusHighlightPosition();
|
236
|
-
});
|
237
222
|
_get(_getPrototypeOf(NestedHeaders.prototype), "enablePlugin", this).call(this);
|
238
223
|
this.updatePlugin(); // @TODO: Workaround for broken plugin initialization abstraction.
|
239
224
|
}
|
@@ -455,34 +440,6 @@ var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
455
440
|
return this.hot.getColHeader(visualColumnIndex, headerLevel);
|
456
441
|
}
|
457
442
|
|
458
|
-
/**
|
459
|
-
* Updates the selection focus highlight position to point to the nested header root element (TH)
|
460
|
-
* even when the logical coordinates point in-between the header.
|
461
|
-
*
|
462
|
-
* @private
|
463
|
-
*/
|
464
|
-
}, {
|
465
|
-
key: "updateFocusHighlightPosition",
|
466
|
-
value: function updateFocusHighlightPosition() {
|
467
|
-
var _this$hot;
|
468
|
-
var selection = (_this$hot = this.hot) === null || _this$hot === void 0 ? void 0 : _this$hot.getSelectedRangeLast();
|
469
|
-
if (!selection) {
|
470
|
-
return;
|
471
|
-
}
|
472
|
-
var highlight = selection.highlight;
|
473
|
-
var isNestedHeadersRange = highlight.isHeader() && highlight.col >= 0;
|
474
|
-
if (isNestedHeadersRange) {
|
475
|
-
var columnIndex = _classPrivateFieldGet(this, _stateManager).findLeftMostColumnIndex(highlight.row, highlight.col);
|
476
|
-
var focusHighlight = this.hot.selection.highlight.getFocus();
|
477
|
-
|
478
|
-
// Correct the highlight/focus selection to highlight the correct TH element
|
479
|
-
focusHighlight.visualCellRange.highlight.col = columnIndex;
|
480
|
-
focusHighlight.visualCellRange.from.col = columnIndex;
|
481
|
-
focusHighlight.visualCellRange.to.col = columnIndex;
|
482
|
-
focusHighlight.commit();
|
483
|
-
}
|
484
|
-
}
|
485
|
-
|
486
443
|
/**
|
487
444
|
* Allows to control which header DOM element will be used to highlight.
|
488
445
|
*
|
@@ -499,7 +456,8 @@ var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
499
456
|
if (!headerNodeData) {
|
500
457
|
return visualColumn;
|
501
458
|
}
|
502
|
-
var
|
459
|
+
var classNames = highlightMeta.classNames,
|
460
|
+
columnCursor = highlightMeta.columnCursor,
|
503
461
|
selectionType = highlightMeta.selectionType,
|
504
462
|
selectionWidth = highlightMeta.selectionWidth;
|
505
463
|
var _classPrivateFieldGet4 = _classPrivateFieldGet(this, _stateManager).getHeaderSettings(headerLevel, visualColumn),
|
@@ -511,8 +469,8 @@ var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
511
469
|
}
|
512
470
|
} else if (selectionType === _selection.ACTIVE_HEADER_TYPE) {
|
513
471
|
if (colspan > selectionWidth - columnCursor || !isRoot) {
|
514
|
-
//
|
515
|
-
|
472
|
+
// Reset the class names array so the generated TH element won't be modified.
|
473
|
+
classNames.length = 0;
|
516
474
|
}
|
517
475
|
}
|
518
476
|
return visualColumn;
|
@@ -643,7 +601,7 @@ var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
643
601
|
}, {
|
644
602
|
key: "onBeforeOnCellMouseOver",
|
645
603
|
value: function onBeforeOnCellMouseOver(event, coords, TD, controller) {
|
646
|
-
var _this$hot
|
604
|
+
var _this$hot;
|
647
605
|
if (!this.hot.view.isMouseDown()) {
|
648
606
|
return;
|
649
607
|
}
|
@@ -664,93 +622,13 @@ var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
664
622
|
controller.cell = true;
|
665
623
|
var columnsToSelect = [];
|
666
624
|
if (coords.col < from.col) {
|
667
|
-
columnsToSelect.push(bottomEndCoords.col, columnIndex
|
625
|
+
columnsToSelect.push(bottomEndCoords.col, columnIndex);
|
668
626
|
} else if (coords.col > from.col) {
|
669
|
-
columnsToSelect.push(topStartCoords.col, columnIndex + origColspan - 1
|
627
|
+
columnsToSelect.push(topStartCoords.col, columnIndex + origColspan - 1);
|
670
628
|
} else {
|
671
|
-
columnsToSelect.push(columnIndex, columnIndex + origColspan - 1
|
672
|
-
}
|
673
|
-
(_this$hot$selection = this.hot.selection).selectColumns.apply(_this$hot$selection, columnsToSelect);
|
674
|
-
}
|
675
|
-
|
676
|
-
/**
|
677
|
-
* `modifyTransformStart` hook is called every time the keyboard navigation is used.
|
678
|
-
*
|
679
|
-
* @private
|
680
|
-
* @param {object} delta The transformation delta.
|
681
|
-
*/
|
682
|
-
}, {
|
683
|
-
key: "onModifyTransformStart",
|
684
|
-
value: function onModifyTransformStart(delta) {
|
685
|
-
var _this$hot$getSelected = this.hot.getSelectedRangeLast(),
|
686
|
-
highlight = _this$hot$getSelected.highlight;
|
687
|
-
var nextCoords = this.hot._createCellCoords(highlight.row + delta.row, highlight.col + delta.col);
|
688
|
-
var isNestedHeadersRange = nextCoords.isHeader() && nextCoords.col >= 0;
|
689
|
-
if (!isNestedHeadersRange) {
|
690
|
-
return;
|
691
|
-
}
|
692
|
-
var visualColumnIndexStart = _classPrivateFieldGet(this, _stateManager).findLeftMostColumnIndex(nextCoords.row, nextCoords.col);
|
693
|
-
var visualColumnIndexEnd = _classPrivateFieldGet(this, _stateManager).findRightMostColumnIndex(nextCoords.row, nextCoords.col);
|
694
|
-
if (delta.col < 0) {
|
695
|
-
var nextColumn = highlight.col >= visualColumnIndexStart && highlight.col <= visualColumnIndexEnd ? visualColumnIndexStart - 1 : visualColumnIndexEnd;
|
696
|
-
var notHiddenColumnIndex = this.hot.columnIndexMapper.getNearestNotHiddenIndex(nextColumn, -1);
|
697
|
-
if (notHiddenColumnIndex === null) {
|
698
|
-
// There are no visible columns anymore, so move the selection out of the table edge. This will
|
699
|
-
// be processed by the selection Transformer class as a move selection to the previous row (if autoWrapRow is enabled).
|
700
|
-
delta.col = -this.hot.view.countRenderableColumnsInRange(0, highlight.col);
|
701
|
-
} else {
|
702
|
-
delta.col = -Math.max(this.hot.view.countRenderableColumnsInRange(notHiddenColumnIndex, highlight.col) - 1, 1);
|
703
|
-
}
|
704
|
-
} else if (delta.col > 0) {
|
705
|
-
var _nextColumn = highlight.col >= visualColumnIndexStart && highlight.col <= visualColumnIndexEnd ? visualColumnIndexEnd + 1 : visualColumnIndexStart;
|
706
|
-
var _notHiddenColumnIndex = this.hot.columnIndexMapper.getNearestNotHiddenIndex(_nextColumn, 1);
|
707
|
-
if (_notHiddenColumnIndex === null) {
|
708
|
-
// There are no visible columns anymore, so move the selection out of the table edge. This will
|
709
|
-
// be processed by the selection Transformer class as a move selection to the next row (if autoWrapRow is enabled).
|
710
|
-
delta.col = this.hot.view.countRenderableColumnsInRange(highlight.col, this.hot.countCols());
|
711
|
-
} else {
|
712
|
-
delta.col = Math.max(this.hot.view.countRenderableColumnsInRange(highlight.col, _notHiddenColumnIndex) - 1, 1);
|
713
|
-
}
|
714
|
-
}
|
715
|
-
}
|
716
|
-
|
717
|
-
/**
|
718
|
-
* The hook observes the column selection from the Selection API and modifies the column range to
|
719
|
-
* ensure that the whole nested column will be covered.
|
720
|
-
*
|
721
|
-
* @private
|
722
|
-
* @param {*} from The coords object where the selection starts.
|
723
|
-
* @param {*} to The coords object where the selection ends.
|
724
|
-
*/
|
725
|
-
}, {
|
726
|
-
key: "onBeforeSelectColumns",
|
727
|
-
value: function onBeforeSelectColumns(from, to) {
|
728
|
-
var headerLevel = from.row;
|
729
|
-
var startNodeData = this._getHeaderTreeNodeDataByCoords({
|
730
|
-
row: headerLevel,
|
731
|
-
col: from.col
|
732
|
-
});
|
733
|
-
var endNodeData = this._getHeaderTreeNodeDataByCoords({
|
734
|
-
row: headerLevel,
|
735
|
-
col: to.col
|
736
|
-
});
|
737
|
-
if (to.col < from.col) {
|
738
|
-
// Column selection from right to left
|
739
|
-
if (startNodeData) {
|
740
|
-
from.col = startNodeData.columnIndex + startNodeData.origColspan - 1;
|
741
|
-
}
|
742
|
-
if (endNodeData) {
|
743
|
-
to.col = endNodeData.columnIndex;
|
744
|
-
}
|
745
|
-
} else if (to.col >= from.col) {
|
746
|
-
// Column selection from left to right or a single column selection
|
747
|
-
if (startNodeData) {
|
748
|
-
from.col = startNodeData.columnIndex;
|
749
|
-
}
|
750
|
-
if (endNodeData) {
|
751
|
-
to.col = endNodeData.columnIndex + endNodeData.origColspan - 1;
|
752
|
-
}
|
629
|
+
columnsToSelect.push(columnIndex, columnIndex + origColspan - 1);
|
753
630
|
}
|
631
|
+
(_this$hot = this.hot).selectColumns.apply(_this$hot, columnsToSelect);
|
754
632
|
}
|
755
633
|
|
756
634
|
/**
|
@@ -45,8 +45,8 @@ function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!priva
|
|
45
45
|
function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
|
46
46
|
import { addClass, removeClass } from "../../helpers/dom/element.mjs";
|
47
47
|
import { isNumeric } from "../../helpers/number.mjs";
|
48
|
-
import { toSingleLine } from "../../helpers/templateLiteralTag.mjs";
|
49
48
|
import { isLeftClick, isRightClick } from "../../helpers/dom/event.mjs";
|
49
|
+
import { toSingleLine } from "../../helpers/templateLiteralTag.mjs";
|
50
50
|
import { warn } from "../../helpers/console.mjs";
|
51
51
|
import { ACTIVE_HEADER_TYPE, HEADER_TYPE } from "../../selection/index.mjs";
|
52
52
|
import { BasePlugin } from "../base/index.mjs";
|
@@ -194,12 +194,6 @@ export var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
194
194
|
this.addHook('beforeOnCellMouseOver', function () {
|
195
195
|
return _this2.onBeforeOnCellMouseOver.apply(_this2, arguments);
|
196
196
|
});
|
197
|
-
this.addHook('modifyTransformStart', function () {
|
198
|
-
return _this2.onModifyTransformStart.apply(_this2, arguments);
|
199
|
-
});
|
200
|
-
this.addHook('afterSelection', function () {
|
201
|
-
return _this2.updateFocusHighlightPosition();
|
202
|
-
});
|
203
197
|
this.addHook('afterGetColumnHeaderRenderers', function (array) {
|
204
198
|
return _this2.onAfterGetColumnHeaderRenderers(array);
|
205
199
|
});
|
@@ -215,18 +209,9 @@ export var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
215
209
|
this.addHook('beforeCopy', function () {
|
216
210
|
return _this2.onBeforeCopy.apply(_this2, arguments);
|
217
211
|
});
|
218
|
-
this.addHook('beforeSelectColumns', function () {
|
219
|
-
return _this2.onBeforeSelectColumns.apply(_this2, arguments);
|
220
|
-
});
|
221
212
|
this.addHook('afterViewportColumnCalculatorOverride', function () {
|
222
213
|
return _this2.onAfterViewportColumnCalculatorOverride.apply(_this2, arguments);
|
223
214
|
});
|
224
|
-
this.hot.columnIndexMapper.addLocalHook('cacheUpdated', function () {
|
225
|
-
return _this2.updateFocusHighlightPosition();
|
226
|
-
});
|
227
|
-
this.hot.rowIndexMapper.addLocalHook('cacheUpdated', function () {
|
228
|
-
return _this2.updateFocusHighlightPosition();
|
229
|
-
});
|
230
215
|
_get(_getPrototypeOf(NestedHeaders.prototype), "enablePlugin", this).call(this);
|
231
216
|
this.updatePlugin(); // @TODO: Workaround for broken plugin initialization abstraction.
|
232
217
|
}
|
@@ -448,34 +433,6 @@ export var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
448
433
|
return this.hot.getColHeader(visualColumnIndex, headerLevel);
|
449
434
|
}
|
450
435
|
|
451
|
-
/**
|
452
|
-
* Updates the selection focus highlight position to point to the nested header root element (TH)
|
453
|
-
* even when the logical coordinates point in-between the header.
|
454
|
-
*
|
455
|
-
* @private
|
456
|
-
*/
|
457
|
-
}, {
|
458
|
-
key: "updateFocusHighlightPosition",
|
459
|
-
value: function updateFocusHighlightPosition() {
|
460
|
-
var _this$hot;
|
461
|
-
var selection = (_this$hot = this.hot) === null || _this$hot === void 0 ? void 0 : _this$hot.getSelectedRangeLast();
|
462
|
-
if (!selection) {
|
463
|
-
return;
|
464
|
-
}
|
465
|
-
var highlight = selection.highlight;
|
466
|
-
var isNestedHeadersRange = highlight.isHeader() && highlight.col >= 0;
|
467
|
-
if (isNestedHeadersRange) {
|
468
|
-
var columnIndex = _classPrivateFieldGet(this, _stateManager).findLeftMostColumnIndex(highlight.row, highlight.col);
|
469
|
-
var focusHighlight = this.hot.selection.highlight.getFocus();
|
470
|
-
|
471
|
-
// Correct the highlight/focus selection to highlight the correct TH element
|
472
|
-
focusHighlight.visualCellRange.highlight.col = columnIndex;
|
473
|
-
focusHighlight.visualCellRange.from.col = columnIndex;
|
474
|
-
focusHighlight.visualCellRange.to.col = columnIndex;
|
475
|
-
focusHighlight.commit();
|
476
|
-
}
|
477
|
-
}
|
478
|
-
|
479
436
|
/**
|
480
437
|
* Allows to control which header DOM element will be used to highlight.
|
481
438
|
*
|
@@ -492,7 +449,8 @@ export var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
492
449
|
if (!headerNodeData) {
|
493
450
|
return visualColumn;
|
494
451
|
}
|
495
|
-
var
|
452
|
+
var classNames = highlightMeta.classNames,
|
453
|
+
columnCursor = highlightMeta.columnCursor,
|
496
454
|
selectionType = highlightMeta.selectionType,
|
497
455
|
selectionWidth = highlightMeta.selectionWidth;
|
498
456
|
var _classPrivateFieldGet4 = _classPrivateFieldGet(this, _stateManager).getHeaderSettings(headerLevel, visualColumn),
|
@@ -504,8 +462,8 @@ export var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
504
462
|
}
|
505
463
|
} else if (selectionType === ACTIVE_HEADER_TYPE) {
|
506
464
|
if (colspan > selectionWidth - columnCursor || !isRoot) {
|
507
|
-
//
|
508
|
-
|
465
|
+
// Reset the class names array so the generated TH element won't be modified.
|
466
|
+
classNames.length = 0;
|
509
467
|
}
|
510
468
|
}
|
511
469
|
return visualColumn;
|
@@ -636,7 +594,7 @@ export var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
636
594
|
}, {
|
637
595
|
key: "onBeforeOnCellMouseOver",
|
638
596
|
value: function onBeforeOnCellMouseOver(event, coords, TD, controller) {
|
639
|
-
var _this$hot
|
597
|
+
var _this$hot;
|
640
598
|
if (!this.hot.view.isMouseDown()) {
|
641
599
|
return;
|
642
600
|
}
|
@@ -657,93 +615,13 @@ export var NestedHeaders = /*#__PURE__*/function (_BasePlugin) {
|
|
657
615
|
controller.cell = true;
|
658
616
|
var columnsToSelect = [];
|
659
617
|
if (coords.col < from.col) {
|
660
|
-
columnsToSelect.push(bottomEndCoords.col, columnIndex
|
618
|
+
columnsToSelect.push(bottomEndCoords.col, columnIndex);
|
661
619
|
} else if (coords.col > from.col) {
|
662
|
-
columnsToSelect.push(topStartCoords.col, columnIndex + origColspan - 1
|
620
|
+
columnsToSelect.push(topStartCoords.col, columnIndex + origColspan - 1);
|
663
621
|
} else {
|
664
|
-
columnsToSelect.push(columnIndex, columnIndex + origColspan - 1
|
665
|
-
}
|
666
|
-
(_this$hot$selection = this.hot.selection).selectColumns.apply(_this$hot$selection, columnsToSelect);
|
667
|
-
}
|
668
|
-
|
669
|
-
/**
|
670
|
-
* `modifyTransformStart` hook is called every time the keyboard navigation is used.
|
671
|
-
*
|
672
|
-
* @private
|
673
|
-
* @param {object} delta The transformation delta.
|
674
|
-
*/
|
675
|
-
}, {
|
676
|
-
key: "onModifyTransformStart",
|
677
|
-
value: function onModifyTransformStart(delta) {
|
678
|
-
var _this$hot$getSelected = this.hot.getSelectedRangeLast(),
|
679
|
-
highlight = _this$hot$getSelected.highlight;
|
680
|
-
var nextCoords = this.hot._createCellCoords(highlight.row + delta.row, highlight.col + delta.col);
|
681
|
-
var isNestedHeadersRange = nextCoords.isHeader() && nextCoords.col >= 0;
|
682
|
-
if (!isNestedHeadersRange) {
|
683
|
-
return;
|
684
|
-
}
|
685
|
-
var visualColumnIndexStart = _classPrivateFieldGet(this, _stateManager).findLeftMostColumnIndex(nextCoords.row, nextCoords.col);
|
686
|
-
var visualColumnIndexEnd = _classPrivateFieldGet(this, _stateManager).findRightMostColumnIndex(nextCoords.row, nextCoords.col);
|
687
|
-
if (delta.col < 0) {
|
688
|
-
var nextColumn = highlight.col >= visualColumnIndexStart && highlight.col <= visualColumnIndexEnd ? visualColumnIndexStart - 1 : visualColumnIndexEnd;
|
689
|
-
var notHiddenColumnIndex = this.hot.columnIndexMapper.getNearestNotHiddenIndex(nextColumn, -1);
|
690
|
-
if (notHiddenColumnIndex === null) {
|
691
|
-
// There are no visible columns anymore, so move the selection out of the table edge. This will
|
692
|
-
// be processed by the selection Transformer class as a move selection to the previous row (if autoWrapRow is enabled).
|
693
|
-
delta.col = -this.hot.view.countRenderableColumnsInRange(0, highlight.col);
|
694
|
-
} else {
|
695
|
-
delta.col = -Math.max(this.hot.view.countRenderableColumnsInRange(notHiddenColumnIndex, highlight.col) - 1, 1);
|
696
|
-
}
|
697
|
-
} else if (delta.col > 0) {
|
698
|
-
var _nextColumn = highlight.col >= visualColumnIndexStart && highlight.col <= visualColumnIndexEnd ? visualColumnIndexEnd + 1 : visualColumnIndexStart;
|
699
|
-
var _notHiddenColumnIndex = this.hot.columnIndexMapper.getNearestNotHiddenIndex(_nextColumn, 1);
|
700
|
-
if (_notHiddenColumnIndex === null) {
|
701
|
-
// There are no visible columns anymore, so move the selection out of the table edge. This will
|
702
|
-
// be processed by the selection Transformer class as a move selection to the next row (if autoWrapRow is enabled).
|
703
|
-
delta.col = this.hot.view.countRenderableColumnsInRange(highlight.col, this.hot.countCols());
|
704
|
-
} else {
|
705
|
-
delta.col = Math.max(this.hot.view.countRenderableColumnsInRange(highlight.col, _notHiddenColumnIndex) - 1, 1);
|
706
|
-
}
|
707
|
-
}
|
708
|
-
}
|
709
|
-
|
710
|
-
/**
|
711
|
-
* The hook observes the column selection from the Selection API and modifies the column range to
|
712
|
-
* ensure that the whole nested column will be covered.
|
713
|
-
*
|
714
|
-
* @private
|
715
|
-
* @param {*} from The coords object where the selection starts.
|
716
|
-
* @param {*} to The coords object where the selection ends.
|
717
|
-
*/
|
718
|
-
}, {
|
719
|
-
key: "onBeforeSelectColumns",
|
720
|
-
value: function onBeforeSelectColumns(from, to) {
|
721
|
-
var headerLevel = from.row;
|
722
|
-
var startNodeData = this._getHeaderTreeNodeDataByCoords({
|
723
|
-
row: headerLevel,
|
724
|
-
col: from.col
|
725
|
-
});
|
726
|
-
var endNodeData = this._getHeaderTreeNodeDataByCoords({
|
727
|
-
row: headerLevel,
|
728
|
-
col: to.col
|
729
|
-
});
|
730
|
-
if (to.col < from.col) {
|
731
|
-
// Column selection from right to left
|
732
|
-
if (startNodeData) {
|
733
|
-
from.col = startNodeData.columnIndex + startNodeData.origColspan - 1;
|
734
|
-
}
|
735
|
-
if (endNodeData) {
|
736
|
-
to.col = endNodeData.columnIndex;
|
737
|
-
}
|
738
|
-
} else if (to.col >= from.col) {
|
739
|
-
// Column selection from left to right or a single column selection
|
740
|
-
if (startNodeData) {
|
741
|
-
from.col = startNodeData.columnIndex;
|
742
|
-
}
|
743
|
-
if (endNodeData) {
|
744
|
-
to.col = endNodeData.columnIndex + endNodeData.origColspan - 1;
|
745
|
-
}
|
622
|
+
columnsToSelect.push(columnIndex, columnIndex + origColspan - 1);
|
746
623
|
}
|
624
|
+
(_this$hot = this.hot).selectColumns.apply(_this$hot, columnsToSelect);
|
747
625
|
}
|
748
626
|
|
749
627
|
/**
|
@@ -416,43 +416,6 @@ var StateManager = /*#__PURE__*/function () {
|
|
416
416
|
return stepBackColumn;
|
417
417
|
}
|
418
418
|
|
419
|
-
/**
|
420
|
-
* The method is helpful in cases where the column index targets in-between currently
|
421
|
-
* collapsed column. In that case, the method returns the right-most column index
|
422
|
-
* where the nested header ends.
|
423
|
-
*
|
424
|
-
* @param {number} headerLevel Header level (there is support for negative and positive values).
|
425
|
-
* @param {number} columnIndex A visual column index.
|
426
|
-
* @returns {number}
|
427
|
-
*/
|
428
|
-
}, {
|
429
|
-
key: "findRightMostColumnIndex",
|
430
|
-
value: function findRightMostColumnIndex(headerLevel, columnIndex) {
|
431
|
-
var _this$getHeaderSettin3;
|
432
|
-
var _ref4 = (_this$getHeaderSettin3 = this.getHeaderSettings(headerLevel, columnIndex)) !== null && _this$getHeaderSettin3 !== void 0 ? _this$getHeaderSettin3 : {
|
433
|
-
isRoot: true,
|
434
|
-
origColspan: 1
|
435
|
-
},
|
436
|
-
isRoot = _ref4.isRoot,
|
437
|
-
origColspan = _ref4.origColspan;
|
438
|
-
if (isRoot) {
|
439
|
-
return columnIndex + origColspan - 1;
|
440
|
-
}
|
441
|
-
var stepForthColumn = columnIndex + 1;
|
442
|
-
while (stepForthColumn < this.getColumnsCount()) {
|
443
|
-
var _this$getHeaderSettin4;
|
444
|
-
var _ref5 = (_this$getHeaderSettin4 = this.getHeaderSettings(headerLevel, stepForthColumn)) !== null && _this$getHeaderSettin4 !== void 0 ? _this$getHeaderSettin4 : {
|
445
|
-
isRoot: true
|
446
|
-
},
|
447
|
-
isRootNode = _ref5.isRoot;
|
448
|
-
if (isRootNode) {
|
449
|
-
break;
|
450
|
-
}
|
451
|
-
stepForthColumn += 1;
|
452
|
-
}
|
453
|
-
return stepForthColumn - 1;
|
454
|
-
}
|
455
|
-
|
456
419
|
/**
|
457
420
|
* Gets a total number of headers levels.
|
458
421
|
*
|
@@ -411,43 +411,6 @@ var StateManager = /*#__PURE__*/function () {
|
|
411
411
|
return stepBackColumn;
|
412
412
|
}
|
413
413
|
|
414
|
-
/**
|
415
|
-
* The method is helpful in cases where the column index targets in-between currently
|
416
|
-
* collapsed column. In that case, the method returns the right-most column index
|
417
|
-
* where the nested header ends.
|
418
|
-
*
|
419
|
-
* @param {number} headerLevel Header level (there is support for negative and positive values).
|
420
|
-
* @param {number} columnIndex A visual column index.
|
421
|
-
* @returns {number}
|
422
|
-
*/
|
423
|
-
}, {
|
424
|
-
key: "findRightMostColumnIndex",
|
425
|
-
value: function findRightMostColumnIndex(headerLevel, columnIndex) {
|
426
|
-
var _this$getHeaderSettin3;
|
427
|
-
var _ref4 = (_this$getHeaderSettin3 = this.getHeaderSettings(headerLevel, columnIndex)) !== null && _this$getHeaderSettin3 !== void 0 ? _this$getHeaderSettin3 : {
|
428
|
-
isRoot: true,
|
429
|
-
origColspan: 1
|
430
|
-
},
|
431
|
-
isRoot = _ref4.isRoot,
|
432
|
-
origColspan = _ref4.origColspan;
|
433
|
-
if (isRoot) {
|
434
|
-
return columnIndex + origColspan - 1;
|
435
|
-
}
|
436
|
-
var stepForthColumn = columnIndex + 1;
|
437
|
-
while (stepForthColumn < this.getColumnsCount()) {
|
438
|
-
var _this$getHeaderSettin4;
|
439
|
-
var _ref5 = (_this$getHeaderSettin4 = this.getHeaderSettings(headerLevel, stepForthColumn)) !== null && _this$getHeaderSettin4 !== void 0 ? _this$getHeaderSettin4 : {
|
440
|
-
isRoot: true
|
441
|
-
},
|
442
|
-
isRootNode = _ref5.isRoot;
|
443
|
-
if (isRootNode) {
|
444
|
-
break;
|
445
|
-
}
|
446
|
-
stepForthColumn += 1;
|
447
|
-
}
|
448
|
-
return stepForthColumn - 1;
|
449
|
-
}
|
450
|
-
|
451
414
|
/**
|
452
415
|
* Gets a total number of headers levels.
|
453
416
|
*
|
@@ -62,7 +62,6 @@ var PLUGIN_KEY = 'nestedRows';
|
|
62
62
|
exports.PLUGIN_KEY = PLUGIN_KEY;
|
63
63
|
var PLUGIN_PRIORITY = 300;
|
64
64
|
exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
|
65
|
-
var SHORTCUTS_GROUP = PLUGIN_KEY;
|
66
65
|
var privatePool = new WeakMap();
|
67
66
|
|
68
67
|
/* eslint-disable jsdoc/require-description-complete-sentence */
|
@@ -204,7 +203,6 @@ var NestedRows = /*#__PURE__*/function (_BasePlugin) {
|
|
204
203
|
this.addHook('beforeUpdateData', function (data) {
|
205
204
|
return _this2.onBeforeLoadData(data);
|
206
205
|
});
|
207
|
-
this.registerShortcuts();
|
208
206
|
_get(_getPrototypeOf(NestedRows.prototype), "enablePlugin", this).call(this);
|
209
207
|
}
|
210
208
|
|
@@ -215,7 +213,6 @@ var NestedRows = /*#__PURE__*/function (_BasePlugin) {
|
|
215
213
|
key: "disablePlugin",
|
216
214
|
value: function disablePlugin() {
|
217
215
|
this.hot.rowIndexMapper.unregisterMap('nestedRows');
|
218
|
-
this.unregisterShortcuts();
|
219
216
|
_get(_getPrototypeOf(NestedRows.prototype), "disablePlugin", this).call(this);
|
220
217
|
}
|
221
218
|
|
@@ -239,48 +236,6 @@ var NestedRows = /*#__PURE__*/function (_BasePlugin) {
|
|
239
236
|
_get(_getPrototypeOf(NestedRows.prototype), "updatePlugin", this).call(this);
|
240
237
|
}
|
241
238
|
|
242
|
-
/**
|
243
|
-
* Register shortcuts responsible for toggling collapsible columns.
|
244
|
-
*
|
245
|
-
* @private
|
246
|
-
*/
|
247
|
-
}, {
|
248
|
-
key: "registerShortcuts",
|
249
|
-
value: function registerShortcuts() {
|
250
|
-
var _this3 = this;
|
251
|
-
this.hot.getShortcutManager().getContext('grid').addShortcut({
|
252
|
-
keys: [['Enter']],
|
253
|
-
callback: function callback() {
|
254
|
-
var _this3$hot$getSelecte = _this3.hot.getSelectedRangeLast(),
|
255
|
-
highlight = _this3$hot$getSelecte.highlight;
|
256
|
-
if (highlight.col === -1 && highlight.row >= 0) {
|
257
|
-
var row = _this3.collapsingUI.translateTrimmedRow(highlight.row);
|
258
|
-
if (_this3.collapsingUI.areChildrenCollapsed(row)) {
|
259
|
-
_this3.collapsingUI.expandChildren(row);
|
260
|
-
} else {
|
261
|
-
_this3.collapsingUI.collapseChildren(row);
|
262
|
-
}
|
263
|
-
}
|
264
|
-
},
|
265
|
-
runOnlyIf: function runOnlyIf() {
|
266
|
-
var _this3$hot$getSelecte2;
|
267
|
-
return (_this3$hot$getSelecte2 = _this3.hot.getSelectedRangeLast()) === null || _this3$hot$getSelecte2 === void 0 ? void 0 : _this3$hot$getSelecte2.highlight.isHeader();
|
268
|
-
},
|
269
|
-
group: SHORTCUTS_GROUP
|
270
|
-
});
|
271
|
-
}
|
272
|
-
|
273
|
-
/**
|
274
|
-
* Unregister shortcuts responsible for toggling collapsible columns.
|
275
|
-
*
|
276
|
-
* @private
|
277
|
-
*/
|
278
|
-
}, {
|
279
|
-
key: "unregisterShortcuts",
|
280
|
-
value: function unregisterShortcuts() {
|
281
|
-
this.hot.getShortcutManager().getContext('grid').removeShortcutsByGroup(SHORTCUTS_GROUP);
|
282
|
-
}
|
283
|
-
|
284
239
|
/**
|
285
240
|
* `beforeRowMove` hook callback.
|
286
241
|
*
|
@@ -460,15 +415,15 @@ var NestedRows = /*#__PURE__*/function (_BasePlugin) {
|
|
460
415
|
}, {
|
461
416
|
key: "onAfterRemoveRow",
|
462
417
|
value: function onAfterRemoveRow(index, amount, logicRows, source) {
|
463
|
-
var
|
418
|
+
var _this3 = this;
|
464
419
|
if (source === this.pluginName) {
|
465
420
|
return;
|
466
421
|
}
|
467
422
|
var priv = privatePool.get(this);
|
468
423
|
setTimeout(function () {
|
469
424
|
priv.skipRender = null;
|
470
|
-
|
471
|
-
|
425
|
+
_this3.headersUI.updateRowHeaderWidth();
|
426
|
+
_this3.collapsingUI.collapsedRowsStash.applyStash();
|
472
427
|
}, 0);
|
473
428
|
}
|
474
429
|
|
@@ -484,17 +439,17 @@ var NestedRows = /*#__PURE__*/function (_BasePlugin) {
|
|
484
439
|
}, {
|
485
440
|
key: "onBeforeRemoveRow",
|
486
441
|
value: function onBeforeRemoveRow(index, amount, physicalRows) {
|
487
|
-
var
|
442
|
+
var _this4 = this;
|
488
443
|
var modifiedPhysicalRows = Array.from(physicalRows.reduce(function (removedRows, physicalIndex) {
|
489
|
-
if (
|
490
|
-
var children =
|
444
|
+
if (_this4.dataManager.isParent(physicalIndex)) {
|
445
|
+
var children = _this4.dataManager.getDataObject(physicalIndex).__children;
|
491
446
|
|
492
447
|
// Preserve a parent in the list of removed rows.
|
493
448
|
removedRows.add(physicalIndex);
|
494
449
|
if (Array.isArray(children)) {
|
495
450
|
// Add a children to the list of removed rows.
|
496
451
|
children.forEach(function (child) {
|
497
|
-
return removedRows.add(
|
452
|
+
return removedRows.add(_this4.dataManager.getRowIndex(child));
|
498
453
|
});
|
499
454
|
}
|
500
455
|
return removedRows;
|