handsontable 0.0.0-next-b7cca45-20230605 → 0.0.0-next-aa25cac-20230607
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/cell/coords.d.ts +6 -1
- package/3rdparty/walkontable/src/cell/coords.js +61 -12
- package/3rdparty/walkontable/src/cell/coords.mjs +61 -12
- package/3rdparty/walkontable/src/cell/range.d.ts +9 -2
- package/3rdparty/walkontable/src/cell/range.js +44 -7
- package/3rdparty/walkontable/src/cell/range.mjs +44 -7
- package/3rdparty/walkontable/src/core/_base.js +9 -3
- package/3rdparty/walkontable/src/core/_base.mjs +9 -3
- 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 +3 -2
- package/3rdparty/walkontable/src/core/core.mjs +3 -2
- 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 +10 -2
- 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 +2 -4
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +2 -4
- package/3rdparty/walkontable/src/overlay/top.js +2 -4
- package/3rdparty/walkontable/src/overlay/top.mjs +2 -4
- package/3rdparty/walkontable/src/{border.js → selection/border/border.js} +7 -12
- package/3rdparty/walkontable/src/{border.mjs → selection/border/border.mjs} +7 -12
- package/3rdparty/walkontable/src/selection/border/constants.js +18 -0
- package/3rdparty/walkontable/src/selection/border/constants.mjs +13 -0
- package/3rdparty/walkontable/src/selection/constants.js +63 -0
- package/3rdparty/walkontable/src/selection/constants.mjs +51 -0
- package/3rdparty/walkontable/src/selection/index.js +30 -0
- package/3rdparty/walkontable/src/selection/index.mjs +5 -0
- package/3rdparty/walkontable/src/selection/manager.js +328 -0
- package/3rdparty/walkontable/src/selection/manager.mjs +322 -0
- package/3rdparty/walkontable/src/selection/scanner.js +363 -0
- package/3rdparty/walkontable/src/selection/scanner.mjs +359 -0
- package/3rdparty/walkontable/src/selection/selection.js +133 -0
- package/3rdparty/walkontable/src/selection/selection.mjs +127 -0
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +9 -0
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +9 -0
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +9 -0
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +9 -0
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +9 -0
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +9 -0
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +9 -0
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +9 -0
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +9 -0
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +9 -0
- package/3rdparty/walkontable/src/table.js +7 -79
- package/3rdparty/walkontable/src/table.mjs +8 -80
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/core.d.ts +5 -3
- package/core.js +123 -308
- package/core.mjs +123 -308
- package/dataMap/metaManager/metaSchema.js +15 -0
- package/dataMap/metaManager/metaSchema.mjs +15 -0
- package/dist/handsontable.css +8 -3
- package/dist/handsontable.full.css +8 -3
- package/dist/handsontable.full.js +12578 -10028
- package/dist/handsontable.full.min.css +3 -3
- package/dist/handsontable.full.min.js +120 -120
- package/dist/handsontable.js +18881 -16331
- package/dist/handsontable.min.css +3 -3
- package/dist/handsontable.min.js +4 -4
- package/editorManager.js +21 -82
- package/editorManager.mjs +26 -86
- package/editors/textEditor/textEditor.js +3 -11
- package/editors/textEditor/textEditor.mjs +4 -12
- package/helpers/mixed.js +1 -1
- package/helpers/mixed.mjs +1 -1
- package/helpers/number.d.ts +1 -0
- package/helpers/number.js +18 -0
- package/helpers/number.mjs +17 -0
- package/package.json +1 -1
- package/pluginHooks.d.ts +5 -1
- package/pluginHooks.js +89 -1
- package/pluginHooks.mjs +89 -1
- package/plugins/copyPaste/copyPaste.js +5 -1
- package/plugins/copyPaste/copyPaste.mjs +5 -1
- package/plugins/customBorders/customBorders.js +18 -52
- package/plugins/customBorders/customBorders.mjs +19 -53
- package/plugins/mergeCells/mergeCells.js +5 -18
- package/plugins/mergeCells/mergeCells.mjs +5 -18
- package/plugins/nestedHeaders/nestedHeaders.js +132 -10
- package/plugins/nestedHeaders/nestedHeaders.mjs +132 -10
- package/plugins/nestedHeaders/stateManager/index.js +37 -0
- package/plugins/nestedHeaders/stateManager/index.mjs +37 -0
- package/renderers/checkboxRenderer/checkboxRenderer.js +2 -2
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +1 -1
- package/selection/highlight/highlight.js +311 -88
- package/selection/highlight/highlight.mjs +301 -84
- package/selection/highlight/types/activeHeader.js +10 -9
- package/selection/highlight/types/activeHeader.mjs +10 -8
- package/selection/highlight/types/area.js +12 -27
- package/selection/highlight/types/area.mjs +16 -30
- package/selection/highlight/types/areaLayered.js +54 -0
- package/selection/highlight/types/areaLayered.mjs +49 -0
- package/selection/highlight/types/column.js +50 -0
- package/selection/highlight/types/column.mjs +45 -0
- package/selection/highlight/types/customSelection.js +7 -10
- package/selection/highlight/types/customSelection.mjs +7 -9
- package/selection/highlight/types/fill.js +5 -8
- package/selection/highlight/types/fill.mjs +5 -7
- package/selection/highlight/types/{cell.js → focus.js} +5 -8
- package/selection/highlight/types/{cell.mjs → focus.mjs} +5 -7
- package/selection/highlight/types/header.js +10 -20
- package/selection/highlight/types/header.mjs +10 -19
- package/selection/highlight/types/{index.js → row.js} +27 -31
- package/selection/highlight/types/{index.mjs → row.mjs} +24 -29
- package/selection/highlight/visualSelection.js +31 -27
- package/selection/highlight/visualSelection.mjs +31 -27
- package/selection/index.js +4 -7
- package/selection/index.mjs +2 -3
- 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 +315 -180
- package/selection/selection.mjs +310 -179
- package/selection/transformation.js +233 -96
- package/selection/transformation.mjs +230 -93
- package/selection/utils.js +12 -35
- package/selection/utils.mjs +13 -35
- package/settings.d.ts +1 -0
- package/shortcutContexts/commands/editor/closeAndSave.js +15 -0
- package/shortcutContexts/commands/editor/closeAndSave.mjs +10 -0
- package/shortcutContexts/commands/editor/closeWithoutSaving.js +13 -0
- package/shortcutContexts/commands/editor/closeWithoutSaving.mjs +8 -0
- package/shortcutContexts/commands/editor/fastOpen.js +16 -0
- package/shortcutContexts/commands/editor/fastOpen.mjs +11 -0
- package/shortcutContexts/commands/editor/index.js +16 -0
- package/shortcutContexts/commands/editor/index.mjs +12 -0
- package/shortcutContexts/commands/editor/open.js +29 -0
- package/shortcutContexts/commands/editor/open.mjs +24 -0
- package/shortcutContexts/commands/emptySelectedCells.js +12 -0
- package/shortcutContexts/commands/emptySelectedCells.mjs +7 -0
- package/shortcutContexts/commands/extendCellsSelection/down.js +15 -0
- package/shortcutContexts/commands/extendCellsSelection/down.mjs +10 -0
- package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.js +21 -0
- package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.mjs +16 -0
- package/shortcutContexts/commands/extendCellsSelection/index.js +26 -0
- package/shortcutContexts/commands/extendCellsSelection/index.mjs +22 -0
- package/shortcutContexts/commands/extendCellsSelection/left.js +15 -0
- package/shortcutContexts/commands/extendCellsSelection/left.mjs +10 -0
- package/shortcutContexts/commands/extendCellsSelection/right.js +15 -0
- package/shortcutContexts/commands/extendCellsSelection/right.mjs +10 -0
- package/shortcutContexts/commands/extendCellsSelection/toColumns.js +19 -0
- package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +14 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +22 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +17 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +17 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +12 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +17 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +12 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +39 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +34 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +39 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +34 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +22 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +17 -0
- package/shortcutContexts/commands/extendCellsSelection/toRows.js +19 -0
- package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +14 -0
- package/shortcutContexts/commands/extendCellsSelection/up.js +15 -0
- package/shortcutContexts/commands/extendCellsSelection/up.mjs +10 -0
- package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.js +21 -0
- package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.mjs +16 -0
- package/shortcutContexts/commands/index.js +51 -0
- package/shortcutContexts/commands/index.mjs +47 -0
- package/shortcutContexts/commands/moveCellSelection/down.js +12 -0
- package/shortcutContexts/commands/moveCellSelection/down.mjs +7 -0
- package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.js +11 -0
- package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.mjs +6 -0
- package/shortcutContexts/commands/moveCellSelection/index.js +28 -0
- package/shortcutContexts/commands/moveCellSelection/index.mjs +24 -0
- package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +13 -0
- package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +8 -0
- package/shortcutContexts/commands/moveCellSelection/inlineStart.js +13 -0
- package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +8 -0
- package/shortcutContexts/commands/moveCellSelection/left.js +11 -0
- package/shortcutContexts/commands/moveCellSelection/left.mjs +6 -0
- package/shortcutContexts/commands/moveCellSelection/right.js +11 -0
- package/shortcutContexts/commands/moveCellSelection/right.mjs +6 -0
- package/shortcutContexts/commands/moveCellSelection/toMostBottom.js +16 -0
- package/shortcutContexts/commands/moveCellSelection/toMostBottom.mjs +11 -0
- package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.js +17 -0
- package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.mjs +12 -0
- package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.js +13 -0
- package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.mjs +8 -0
- package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.js +16 -0
- package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.mjs +11 -0
- package/shortcutContexts/commands/moveCellSelection/toMostLeft.js +35 -0
- package/shortcutContexts/commands/moveCellSelection/toMostLeft.mjs +30 -0
- package/shortcutContexts/commands/moveCellSelection/toMostRight.js +35 -0
- package/shortcutContexts/commands/moveCellSelection/toMostRight.mjs +30 -0
- package/shortcutContexts/commands/moveCellSelection/toMostTop.js +16 -0
- package/shortcutContexts/commands/moveCellSelection/toMostTop.mjs +11 -0
- package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.js +18 -0
- package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.mjs +13 -0
- package/shortcutContexts/commands/moveCellSelection/up.js +12 -0
- package/shortcutContexts/commands/moveCellSelection/up.mjs +7 -0
- package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.js +11 -0
- package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.mjs +6 -0
- package/shortcutContexts/commands/populateSelectedCellsData.js +35 -0
- package/shortcutContexts/commands/populateSelectedCellsData.mjs +30 -0
- package/shortcutContexts/commands/selectAll.js +11 -0
- package/shortcutContexts/commands/selectAll.mjs +6 -0
- package/shortcutContexts/constants.js +19 -0
- package/shortcutContexts/constants.mjs +12 -0
- package/shortcutContexts/editor.js +29 -0
- package/shortcutContexts/editor.mjs +25 -0
- package/shortcutContexts/grid.js +244 -0
- package/shortcutContexts/grid.mjs +240 -0
- package/shortcutContexts/index.js +29 -0
- package/shortcutContexts/index.mjs +15 -0
- package/shortcuts/manager.js +2 -0
- package/shortcuts/manager.mjs +2 -0
- package/tableView.js +58 -9
- package/tableView.mjs +58 -9
- package/3rdparty/walkontable/src/selection.js +0 -354
- package/3rdparty/walkontable/src/selection.mjs +0 -348
- package/selection/highlight/constants.js +0 -16
- package/selection/highlight/constants.mjs +0 -6
package/core.mjs
CHANGED
@@ -22,12 +22,12 @@ import "core-js/modules/es.set.js";
|
|
22
22
|
import "core-js/modules/es.string.iterator.js";
|
23
23
|
import "core-js/modules/web.dom-collections.iterator.js";
|
24
24
|
import "core-js/modules/es.array.includes.js";
|
25
|
+
import "core-js/modules/es.array.concat.js";
|
25
26
|
import "core-js/modules/es.array.sort.js";
|
26
27
|
import "core-js/modules/es.array.splice.js";
|
27
28
|
import "core-js/modules/es.number.is-integer.js";
|
28
29
|
import "core-js/modules/es.number.constructor.js";
|
29
30
|
import "core-js/modules/es.array.slice.js";
|
30
|
-
import "core-js/modules/es.array.concat.js";
|
31
31
|
import "core-js/modules/es.array.fill.js";
|
32
32
|
import "core-js/modules/es.array.map.js";
|
33
33
|
import "core-js/modules/es.regexp.exec.js";
|
@@ -38,7 +38,6 @@ import "core-js/modules/es.array.reverse.js";
|
|
38
38
|
import "core-js/modules/web.dom-collections.for-each.js";
|
39
39
|
import "core-js/modules/web.timers.js";
|
40
40
|
import "core-js/modules/web.immediate.js";
|
41
|
-
import "core-js/modules/es.map.js";
|
42
41
|
import { addClass, empty, observeVisibilityChangeOnce, removeClass } from "./helpers/dom/element.mjs";
|
43
42
|
import { isFunction } from "./helpers/function.mjs";
|
44
43
|
import { isDefined, isUndefined, isRegExp, _injectProductInfo, isEmpty } from "./helpers/mixed.mjs";
|
@@ -69,7 +68,7 @@ import { Selection } from "./selection/index.mjs";
|
|
69
68
|
import { MetaManager, DynamicCellMetaMod, ExtendMetaPropertiesMod, replaceData } from "./dataMap/index.mjs";
|
70
69
|
import { createUniqueMap } from "./utils/dataStructures/uniqueMap.mjs";
|
71
70
|
import { createShortcutManager } from "./shortcuts/index.mjs";
|
72
|
-
|
71
|
+
import { registerAllShortcutContexts } from "./shortcutContexts/index.mjs";
|
73
72
|
var activeGuid = null;
|
74
73
|
var deprecationWarns = new Set();
|
75
74
|
|
@@ -286,12 +285,8 @@ export default function Core(rootElement, userSettings) {
|
|
286
285
|
};
|
287
286
|
|
288
287
|
var selection = new Selection(tableMeta, {
|
289
|
-
rowIndexMapper:
|
290
|
-
|
291
|
-
},
|
292
|
-
columnIndexMapper: function columnIndexMapper() {
|
293
|
-
return instance.columnIndexMapper;
|
294
|
-
},
|
288
|
+
rowIndexMapper: instance.rowIndexMapper,
|
289
|
+
columnIndexMapper: instance.columnIndexMapper,
|
295
290
|
countCols: function countCols() {
|
296
291
|
return instance.countCols();
|
297
292
|
},
|
@@ -304,12 +299,18 @@ export default function Core(rootElement, userSettings) {
|
|
304
299
|
isEditorOpened: function isEditorOpened() {
|
305
300
|
return instance.getActiveEditor() ? instance.getActiveEditor().isOpened() : false;
|
306
301
|
},
|
307
|
-
|
302
|
+
countRenderableColumns: function countRenderableColumns() {
|
308
303
|
return _this.view.countRenderableColumns();
|
309
304
|
},
|
310
|
-
|
305
|
+
countRenderableRows: function countRenderableRows() {
|
311
306
|
return _this.view.countRenderableRows();
|
312
307
|
},
|
308
|
+
countRowHeaders: function countRowHeaders() {
|
309
|
+
return _this.countRowHeaders();
|
310
|
+
},
|
311
|
+
countColHeaders: function countColHeaders() {
|
312
|
+
return _this.countColHeaders();
|
313
|
+
},
|
313
314
|
getShortcutManager: function getShortcutManager() {
|
314
315
|
return instance.getShortcutManager();
|
315
316
|
},
|
@@ -342,12 +343,6 @@ export default function Core(rootElement, userSettings) {
|
|
342
343
|
});
|
343
344
|
this.selection.addLocalHook('beforeSetRangeEnd', function (cellCoords) {
|
344
345
|
_this.runHooks('beforeSetRangeEnd', cellCoords);
|
345
|
-
if (cellCoords.row < 0) {
|
346
|
-
cellCoords.row = _this.view._wt.wtTable.getFirstVisibleRow();
|
347
|
-
}
|
348
|
-
if (cellCoords.col < 0) {
|
349
|
-
cellCoords.col = _this.view._wt.wtTable.getFirstVisibleColumn();
|
350
|
-
}
|
351
346
|
});
|
352
347
|
this.selection.addLocalHook('afterSetRangeEnd', function (cellCoords) {
|
353
348
|
var preventScrolling = createObjectPropListener(false);
|
@@ -373,7 +368,14 @@ export default function Core(rootElement, userSettings) {
|
|
373
368
|
if (scrollToCell !== false) {
|
374
369
|
if (!isSelectedByAnyHeader) {
|
375
370
|
if (currentSelectedRange && !_this.selection.isMultiple()) {
|
376
|
-
|
371
|
+
var renderableCoords = visualToRenderableCoords(currentSelectedRange.from);
|
372
|
+
if (renderableCoords.row < 0 && renderableCoords.col >= 0) {
|
373
|
+
_this.view.scrollViewportHorizontally(renderableCoords.col);
|
374
|
+
} else if (renderableCoords.col < 0 && renderableCoords.row >= 0) {
|
375
|
+
_this.view.scrollViewportVertically(renderableCoords.row);
|
376
|
+
} else {
|
377
|
+
_this.view.scrollViewport(renderableCoords);
|
378
|
+
}
|
377
379
|
} else {
|
378
380
|
_this.view.scrollViewport(visualToRenderableCoords(cellCoords));
|
379
381
|
}
|
@@ -414,6 +416,30 @@ export default function Core(rootElement, userSettings) {
|
|
414
416
|
isMultiple.value = changedIsMultiple;
|
415
417
|
}
|
416
418
|
});
|
419
|
+
this.selection.addLocalHook('beforeSelectColumns', function () {
|
420
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
421
|
+
args[_key] = arguments[_key];
|
422
|
+
}
|
423
|
+
return _this.runHooks.apply(_this, ['beforeSelectColumns'].concat(args));
|
424
|
+
});
|
425
|
+
this.selection.addLocalHook('afterSelectColumns', function () {
|
426
|
+
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
427
|
+
args[_key2] = arguments[_key2];
|
428
|
+
}
|
429
|
+
return _this.runHooks.apply(_this, ['afterSelectColumns'].concat(args));
|
430
|
+
});
|
431
|
+
this.selection.addLocalHook('beforeSelectRows', function () {
|
432
|
+
for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
|
433
|
+
args[_key3] = arguments[_key3];
|
434
|
+
}
|
435
|
+
return _this.runHooks.apply(_this, ['beforeSelectRows'].concat(args));
|
436
|
+
});
|
437
|
+
this.selection.addLocalHook('afterSelectRows', function () {
|
438
|
+
for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
|
439
|
+
args[_key4] = arguments[_key4];
|
440
|
+
}
|
441
|
+
return _this.runHooks.apply(_this, ['afterSelectRows'].concat(args));
|
442
|
+
});
|
417
443
|
this.selection.addLocalHook('beforeModifyTransformStart', function (cellCoordsDelta) {
|
418
444
|
_this.runHooks('modifyTransformStart', cellCoordsDelta);
|
419
445
|
});
|
@@ -1598,8 +1624,8 @@ export default function Core(rootElement, userSettings) {
|
|
1598
1624
|
*/
|
1599
1625
|
this.spliceCol = function (column, index, amount) {
|
1600
1626
|
var _datamap;
|
1601
|
-
for (var
|
1602
|
-
elements[
|
1627
|
+
for (var _len5 = arguments.length, elements = new Array(_len5 > 3 ? _len5 - 3 : 0), _key5 = 3; _key5 < _len5; _key5++) {
|
1628
|
+
elements[_key5 - 3] = arguments[_key5];
|
1603
1629
|
}
|
1604
1630
|
return (_datamap = datamap).spliceCol.apply(_datamap, [column, index, amount].concat(elements));
|
1605
1631
|
};
|
@@ -1617,8 +1643,8 @@ export default function Core(rootElement, userSettings) {
|
|
1617
1643
|
*/
|
1618
1644
|
this.spliceRow = function (row, index, amount) {
|
1619
1645
|
var _datamap2;
|
1620
|
-
for (var
|
1621
|
-
elements[
|
1646
|
+
for (var _len6 = arguments.length, elements = new Array(_len6 > 3 ? _len6 - 3 : 0), _key6 = 3; _key6 < _len6; _key6++) {
|
1647
|
+
elements[_key6 - 3] = arguments[_key6];
|
1622
1648
|
}
|
1623
1649
|
return (_datamap2 = datamap).spliceRow.apply(_datamap2, [row, index, amount].concat(elements));
|
1624
1650
|
};
|
@@ -3032,8 +3058,8 @@ export default function Core(rootElement, userSettings) {
|
|
3032
3058
|
this.spliceCellsMeta = function (visualIndex) {
|
3033
3059
|
var _this5 = this;
|
3034
3060
|
var deleteAmount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
3035
|
-
for (var
|
3036
|
-
cellMetaRows[
|
3061
|
+
for (var _len7 = arguments.length, cellMetaRows = new Array(_len7 > 2 ? _len7 - 2 : 0), _key7 = 2; _key7 < _len7; _key7++) {
|
3062
|
+
cellMetaRows[_key7 - 2] = arguments[_key7];
|
3037
3063
|
}
|
3038
3064
|
if (cellMetaRows.length > 0 && !Array.isArray(cellMetaRows[0])) {
|
3039
3065
|
throw new Error('The 3rd argument (cellMetaRows) has to be passed as an array of cell meta objects array.');
|
@@ -3727,6 +3753,30 @@ export default function Core(rootElement, userSettings) {
|
|
3727
3753
|
return instance.view._wt.drawn ? instance.view._wt.wtTable.getVisibleColumnsCount() : -1;
|
3728
3754
|
};
|
3729
3755
|
|
3756
|
+
/**
|
3757
|
+
* Returns the number of rendered row headers.
|
3758
|
+
*
|
3759
|
+
* @since 13.0.0
|
3760
|
+
* @memberof Core#
|
3761
|
+
* @function countRowHeaders
|
3762
|
+
* @returns {number} Number of row headers.
|
3763
|
+
*/
|
3764
|
+
this.countRowHeaders = function () {
|
3765
|
+
return this.view.getRowHeadersCount();
|
3766
|
+
};
|
3767
|
+
|
3768
|
+
/**
|
3769
|
+
* Returns the number of rendered column headers.
|
3770
|
+
*
|
3771
|
+
* @since 13.0.0
|
3772
|
+
* @memberof Core#
|
3773
|
+
* @function countColHeaders
|
3774
|
+
* @returns {number} Number of column headers.
|
3775
|
+
*/
|
3776
|
+
this.countColHeaders = function () {
|
3777
|
+
return this.view.getColumnHeadersCount();
|
3778
|
+
};
|
3779
|
+
|
3730
3780
|
/**
|
3731
3781
|
* Returns the number of empty rows. If the optional ending parameter is `true`, returns the
|
3732
3782
|
* number of empty rows at the bottom of the table.
|
@@ -3931,6 +3981,10 @@ export default function Core(rootElement, userSettings) {
|
|
3931
3981
|
* hot.selectColumns('id');
|
3932
3982
|
* // Select range of columns using visual indexes.
|
3933
3983
|
* hot.selectColumns(1, 4);
|
3984
|
+
* // Select range of columns using visual indexes and mark the first header as highlighted.
|
3985
|
+
* hot.selectColumns(1, 2, -1);
|
3986
|
+
* // Select range of columns using visual indexes and mark the second cell as highlighted.
|
3987
|
+
* hot.selectColumns(2, 1, 1);
|
3934
3988
|
* // Select range of columns using column properties.
|
3935
3989
|
* hot.selectColumns('id', 'last_name');
|
3936
3990
|
* ```
|
@@ -3941,11 +3995,15 @@ export default function Core(rootElement, userSettings) {
|
|
3941
3995
|
* @param {number} startColumn The visual column index from which the selection starts.
|
3942
3996
|
* @param {number} [endColumn=startColumn] The visual column index to which the selection finishes. If `endColumn`
|
3943
3997
|
* is not defined the column defined by `startColumn` will be selected.
|
3998
|
+
* @param {number} [focusPosition=0] The argument allows changing the cell/header focus position.
|
3999
|
+
* The value can take visual row index from -N to N, where negative values
|
4000
|
+
* point to the headers and positive values point to the cell range.
|
3944
4001
|
* @returns {boolean} `true` if selection was successful, `false` otherwise.
|
3945
4002
|
*/
|
3946
4003
|
this.selectColumns = function (startColumn) {
|
3947
4004
|
var endColumn = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : startColumn;
|
3948
|
-
|
4005
|
+
var focusPosition = arguments.length > 2 ? arguments[2] : undefined;
|
4006
|
+
return selection.selectColumns(startColumn, endColumn, focusPosition);
|
3949
4007
|
};
|
3950
4008
|
|
3951
4009
|
/**
|
@@ -3957,6 +4015,10 @@ export default function Core(rootElement, userSettings) {
|
|
3957
4015
|
* hot.selectRows(1);
|
3958
4016
|
* // Select range of rows using visual indexes.
|
3959
4017
|
* hot.selectRows(1, 4);
|
4018
|
+
* // Select range of rows using visual indexes and mark the first header as highlighted.
|
4019
|
+
* hot.selectRows(1, 2, -1);
|
4020
|
+
* // Select range of rows using visual indexes and mark the second cell as highlighted.
|
4021
|
+
* hot.selectRows(2, 1, 1);
|
3960
4022
|
* ```
|
3961
4023
|
*
|
3962
4024
|
* @memberof Core#
|
@@ -3965,11 +4027,15 @@ export default function Core(rootElement, userSettings) {
|
|
3965
4027
|
* @param {number} startRow The visual row index from which the selection starts.
|
3966
4028
|
* @param {number} [endRow=startRow] The visual row index to which the selection finishes. If `endRow`
|
3967
4029
|
* is not defined the row defined by `startRow` will be selected.
|
4030
|
+
* @param {number} [focusPosition=0] The argument allows changing the cell/header focus position.
|
4031
|
+
* The value can take visual column index from -N to N, where negative values
|
4032
|
+
* point to the headers and positive values point to the cell range.
|
3968
4033
|
* @returns {boolean} `true` if selection was successful, `false` otherwise.
|
3969
4034
|
*/
|
3970
4035
|
this.selectRows = function (startRow) {
|
3971
4036
|
var endRow = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : startRow;
|
3972
|
-
|
4037
|
+
var focusPosition = arguments.length > 2 ? arguments[2] : undefined;
|
4038
|
+
return selection.selectRows(startRow, endRow, focusPosition);
|
3973
4039
|
};
|
3974
4040
|
|
3975
4041
|
/**
|
@@ -3988,9 +4054,16 @@ export default function Core(rootElement, userSettings) {
|
|
3988
4054
|
* The previous selection is overwritten.
|
3989
4055
|
*
|
3990
4056
|
* ```js
|
3991
|
-
* // select all cells in the table, including all headers
|
4057
|
+
* // select all cells in the table, including all headers with corner
|
3992
4058
|
* hot.selectAll();
|
3993
4059
|
*
|
4060
|
+
* // select all cells in the table, including row headers without corner
|
4061
|
+
* hot.selectAll(true, false);
|
4062
|
+
*
|
4063
|
+
* // select all cells in the table, including all headers with corner but move the focus
|
4064
|
+
* // highlight to position -2,-1
|
4065
|
+
* hot.selectAll(true, true, { row: -2, col: -1 });
|
4066
|
+
*
|
3994
4067
|
* // select all cells in the table, without headers
|
3995
4068
|
* hot.selectAll(false);
|
3996
4069
|
* ```
|
@@ -3998,15 +4071,20 @@ export default function Core(rootElement, userSettings) {
|
|
3998
4071
|
* @since 0.38.2
|
3999
4072
|
* @memberof Core#
|
4000
4073
|
* @function selectAll
|
4001
|
-
* @param {boolean} [
|
4002
|
-
* `false
|
4074
|
+
* @param {boolean} [includeRowHeaders=false] `true` If the selection should include the row headers,
|
4075
|
+
* `false` otherwise.
|
4076
|
+
* @param {boolean} [includeColumnHeaders=false] `true` If the selection should include the column
|
4077
|
+
* headers, `false` otherwise.
|
4078
|
+
* @param {{row: number, col: number}} [focusPosition] The argument allows changing the cell/header
|
4079
|
+
* focus position. The value takes an object with a `row` and `col` properties (visual indexes)
|
4080
|
+
* from -N to N, where negative values point to the headers and positive values point to the cell range.
|
4003
4081
|
*/
|
4004
4082
|
this.selectAll = function () {
|
4005
|
-
var
|
4006
|
-
var
|
4007
|
-
var
|
4083
|
+
var includeRowHeaders = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
4084
|
+
var includeColumnHeaders = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : includeRowHeaders;
|
4085
|
+
var focusPosition = arguments.length > 2 ? arguments[2] : undefined;
|
4008
4086
|
preventScrollingToCell = true;
|
4009
|
-
selection.selectAll(includeRowHeaders, includeColumnHeaders);
|
4087
|
+
selection.selectAll(includeRowHeaders, includeColumnHeaders, focusPosition);
|
4010
4088
|
preventScrollingToCell = false;
|
4011
4089
|
};
|
4012
4090
|
var getIndexToScroll = function getIndexToScroll(indexMapper, visualIndex) {
|
@@ -4410,6 +4488,16 @@ export default function Core(rootElement, userSettings) {
|
|
4410
4488
|
}
|
4411
4489
|
};
|
4412
4490
|
|
4491
|
+
/**
|
4492
|
+
* Gets the instance of the EditorManager.
|
4493
|
+
*
|
4494
|
+
* @private
|
4495
|
+
* @returns {EditorManager}
|
4496
|
+
*/
|
4497
|
+
this._getEditorManager = function () {
|
4498
|
+
return editorManager;
|
4499
|
+
};
|
4500
|
+
|
4413
4501
|
/**
|
4414
4502
|
* Check if currently it is RTL direction.
|
4415
4503
|
*
|
@@ -4482,284 +4570,11 @@ export default function Core(rootElement, userSettings) {
|
|
4482
4570
|
this.getShortcutManager = function () {
|
4483
4571
|
return shortcutManager;
|
4484
4572
|
};
|
4485
|
-
var gridContext = shortcutManager.addContext('grid');
|
4486
|
-
var gridConfig = {
|
4487
|
-
runOnlyIf: function runOnlyIf() {
|
4488
|
-
return isDefined(instance.getSelected()) && instance.countRenderedRows() > 0 && instance.countRenderedCols() > 0;
|
4489
|
-
},
|
4490
|
-
group: SHORTCUTS_GROUP
|
4491
|
-
};
|
4492
|
-
shortcutManager.setActiveContextName('grid');
|
4493
|
-
gridContext.addShortcuts([{
|
4494
|
-
keys: [['Control/Meta', 'A']],
|
4495
|
-
callback: function callback() {
|
4496
|
-
instance.selectAll();
|
4497
|
-
}
|
4498
|
-
}, {
|
4499
|
-
keys: [['Control/Meta', 'Enter']],
|
4500
|
-
callback: function callback() {
|
4501
|
-
var selectedRange = instance.getSelectedRange();
|
4502
|
-
var _selectedRange$highli = selectedRange[selectedRange.length - 1].highlight,
|
4503
|
-
highlightRow = _selectedRange$highli.row,
|
4504
|
-
highlightColumn = _selectedRange$highli.col;
|
4505
|
-
var valueToPopulate = instance.getDataAtCell(highlightRow, highlightColumn);
|
4506
|
-
var cellValues = new Map();
|
4507
|
-
for (var i = 0; i < selectedRange.length; i++) {
|
4508
|
-
selectedRange[i].forAll(function (row, column) {
|
4509
|
-
if (row >= 0 && column >= 0 && (row !== highlightRow || column !== highlightColumn)) {
|
4510
|
-
var _instance$getCellMeta = instance.getCellMeta(row, column),
|
4511
|
-
readOnly = _instance$getCellMeta.readOnly;
|
4512
|
-
if (!readOnly) {
|
4513
|
-
cellValues.set("".concat(row, "x").concat(column), [row, column, valueToPopulate]);
|
4514
|
-
}
|
4515
|
-
}
|
4516
|
-
});
|
4517
|
-
}
|
4518
|
-
instance.setDataAtCell(Array.from(cellValues.values()));
|
4519
|
-
},
|
4520
|
-
runOnlyIf: function runOnlyIf() {
|
4521
|
-
return instance.getSelectedRangeLast().getCellsCount() > 1;
|
4522
|
-
}
|
4523
|
-
}, {
|
4524
|
-
keys: [['ArrowUp']],
|
4525
|
-
callback: function callback() {
|
4526
|
-
selection.transformStart(-1, 0);
|
4527
|
-
}
|
4528
|
-
}, {
|
4529
|
-
keys: [['ArrowUp', 'Control/Meta']],
|
4530
|
-
captureCtrl: true,
|
4531
|
-
callback: function callback() {
|
4532
|
-
selection.setRangeStart(instance._createCellCoords(instance.rowIndexMapper.getNearestNotHiddenIndex(0, 1), instance.getSelectedRangeLast().highlight.col));
|
4533
|
-
}
|
4534
|
-
}, {
|
4535
|
-
keys: [['ArrowUp', 'Shift']],
|
4536
|
-
callback: function callback() {
|
4537
|
-
selection.transformEnd(-1, 0);
|
4538
|
-
}
|
4539
|
-
}, {
|
4540
|
-
keys: [['ArrowUp', 'Shift', 'Control/Meta']],
|
4541
|
-
captureCtrl: true,
|
4542
|
-
callback: function callback() {
|
4543
|
-
var _instance$getSelected = instance.getSelectedRangeLast(),
|
4544
|
-
from = _instance$getSelected.from,
|
4545
|
-
to = _instance$getSelected.to;
|
4546
|
-
var row = instance.rowIndexMapper.getNearestNotHiddenIndex(0, 1);
|
4547
|
-
selection.setRangeStart(from.clone());
|
4548
|
-
selection.setRangeEnd(instance._createCellCoords(row, to.col));
|
4549
|
-
},
|
4550
|
-
runOnlyIf: function runOnlyIf() {
|
4551
|
-
return !(instance.selection.isSelectedByCorner() || instance.selection.isSelectedByColumnHeader());
|
4552
|
-
}
|
4553
|
-
}, {
|
4554
|
-
keys: [['ArrowDown']],
|
4555
|
-
callback: function callback() {
|
4556
|
-
selection.transformStart(1, 0);
|
4557
|
-
}
|
4558
|
-
}, {
|
4559
|
-
keys: [['ArrowDown', 'Control/Meta']],
|
4560
|
-
captureCtrl: true,
|
4561
|
-
callback: function callback() {
|
4562
|
-
selection.setRangeStart(instance._createCellCoords(instance.rowIndexMapper.getNearestNotHiddenIndex(instance.countRows() - 1, -1), instance.getSelectedRangeLast().highlight.col));
|
4563
|
-
}
|
4564
|
-
}, {
|
4565
|
-
keys: [['ArrowDown', 'Shift']],
|
4566
|
-
callback: function callback() {
|
4567
|
-
selection.transformEnd(1, 0);
|
4568
|
-
}
|
4569
|
-
}, {
|
4570
|
-
keys: [['ArrowDown', 'Shift', 'Control/Meta']],
|
4571
|
-
captureCtrl: true,
|
4572
|
-
callback: function callback() {
|
4573
|
-
var _instance$getSelected2 = instance.getSelectedRangeLast(),
|
4574
|
-
from = _instance$getSelected2.from,
|
4575
|
-
to = _instance$getSelected2.to;
|
4576
|
-
var row = instance.rowIndexMapper.getNearestNotHiddenIndex(instance.countRows() - 1, -1);
|
4577
|
-
selection.setRangeStart(from.clone());
|
4578
|
-
selection.setRangeEnd(instance._createCellCoords(row, to.col));
|
4579
|
-
},
|
4580
|
-
runOnlyIf: function runOnlyIf() {
|
4581
|
-
return !(instance.selection.isSelectedByCorner() || instance.selection.isSelectedByColumnHeader());
|
4582
|
-
}
|
4583
|
-
}, {
|
4584
|
-
keys: [['ArrowLeft']],
|
4585
|
-
callback: function callback() {
|
4586
|
-
selection.transformStart(0, -1 * instance.getDirectionFactor());
|
4587
|
-
}
|
4588
|
-
}, {
|
4589
|
-
keys: [['ArrowLeft', 'Control/Meta']],
|
4590
|
-
captureCtrl: true,
|
4591
|
-
callback: function callback() {
|
4592
|
-
var _instance$columnIndex;
|
4593
|
-
var row = instance.getSelectedRangeLast().highlight.row;
|
4594
|
-
var column = (_instance$columnIndex = instance.columnIndexMapper).getNearestNotHiddenIndex.apply(_instance$columnIndex, _toConsumableArray(instance.isRtl() ? [instance.countCols() - 1, -1] : [0, 1]));
|
4595
|
-
selection.setRangeStart(instance._createCellCoords(row, column));
|
4596
|
-
}
|
4597
|
-
}, {
|
4598
|
-
keys: [['ArrowLeft', 'Shift']],
|
4599
|
-
callback: function callback() {
|
4600
|
-
selection.transformEnd(0, -1 * instance.getDirectionFactor());
|
4601
|
-
}
|
4602
|
-
}, {
|
4603
|
-
keys: [['ArrowLeft', 'Shift', 'Control/Meta']],
|
4604
|
-
captureCtrl: true,
|
4605
|
-
callback: function callback() {
|
4606
|
-
var _instance$columnIndex2;
|
4607
|
-
var _instance$getSelected3 = instance.getSelectedRangeLast(),
|
4608
|
-
from = _instance$getSelected3.from,
|
4609
|
-
to = _instance$getSelected3.to;
|
4610
|
-
var column = (_instance$columnIndex2 = instance.columnIndexMapper).getNearestNotHiddenIndex.apply(_instance$columnIndex2, _toConsumableArray(instance.isRtl() ? [instance.countCols() - 1, -1] : [0, 1]));
|
4611
|
-
selection.setRangeStart(from.clone());
|
4612
|
-
selection.setRangeEnd(instance._createCellCoords(to.row, column));
|
4613
|
-
},
|
4614
|
-
runOnlyIf: function runOnlyIf() {
|
4615
|
-
return !(instance.selection.isSelectedByCorner() || instance.selection.isSelectedByRowHeader());
|
4616
|
-
}
|
4617
|
-
}, {
|
4618
|
-
keys: [['ArrowRight']],
|
4619
|
-
callback: function callback() {
|
4620
|
-
selection.transformStart(0, instance.getDirectionFactor());
|
4621
|
-
}
|
4622
|
-
}, {
|
4623
|
-
keys: [['ArrowRight', 'Control/Meta']],
|
4624
|
-
captureCtrl: true,
|
4625
|
-
callback: function callback() {
|
4626
|
-
var _instance$columnIndex3;
|
4627
|
-
var row = instance.getSelectedRangeLast().highlight.row;
|
4628
|
-
var column = (_instance$columnIndex3 = instance.columnIndexMapper).getNearestNotHiddenIndex.apply(_instance$columnIndex3, _toConsumableArray(instance.isRtl() ? [0, 1] : [instance.countCols() - 1, -1]));
|
4629
|
-
selection.setRangeStart(instance._createCellCoords(row, column));
|
4630
|
-
}
|
4631
|
-
}, {
|
4632
|
-
keys: [['ArrowRight', 'Shift']],
|
4633
|
-
callback: function callback() {
|
4634
|
-
selection.transformEnd(0, instance.getDirectionFactor());
|
4635
|
-
}
|
4636
|
-
}, {
|
4637
|
-
keys: [['ArrowRight', 'Shift', 'Control/Meta']],
|
4638
|
-
captureCtrl: true,
|
4639
|
-
callback: function callback() {
|
4640
|
-
var _instance$columnIndex4;
|
4641
|
-
var _instance$getSelected4 = instance.getSelectedRangeLast(),
|
4642
|
-
from = _instance$getSelected4.from,
|
4643
|
-
to = _instance$getSelected4.to;
|
4644
|
-
var column = (_instance$columnIndex4 = instance.columnIndexMapper).getNearestNotHiddenIndex.apply(_instance$columnIndex4, _toConsumableArray(instance.isRtl() ? [0, 1] : [instance.countCols() - 1, -1]));
|
4645
|
-
selection.setRangeStart(from.clone());
|
4646
|
-
selection.setRangeEnd(instance._createCellCoords(to.row, column));
|
4647
|
-
},
|
4648
|
-
runOnlyIf: function runOnlyIf() {
|
4649
|
-
return !(instance.selection.isSelectedByCorner() || instance.selection.isSelectedByRowHeader());
|
4650
|
-
}
|
4651
|
-
}, {
|
4652
|
-
keys: [['Home']],
|
4653
|
-
captureCtrl: true,
|
4654
|
-
callback: function callback() {
|
4655
|
-
var fixedColumns = parseInt(instance.getSettings().fixedColumnsStart, 10);
|
4656
|
-
var row = instance.getSelectedRangeLast().highlight.row;
|
4657
|
-
var column = instance.columnIndexMapper.getNearestNotHiddenIndex(fixedColumns, 1);
|
4658
|
-
selection.setRangeStart(instance._createCellCoords(row, column));
|
4659
|
-
},
|
4660
|
-
runOnlyIf: function runOnlyIf() {
|
4661
|
-
return instance.view.isMainTableNotFullyCoveredByOverlays();
|
4662
|
-
}
|
4663
|
-
}, {
|
4664
|
-
keys: [['Home', 'Shift']],
|
4665
|
-
callback: function callback() {
|
4666
|
-
selection.setRangeEnd(instance._createCellCoords(selection.selectedRange.current().from.row, instance.columnIndexMapper.getNearestNotHiddenIndex(0, 1)));
|
4667
|
-
}
|
4668
|
-
}, {
|
4669
|
-
keys: [['Home', 'Control/Meta']],
|
4670
|
-
captureCtrl: true,
|
4671
|
-
callback: function callback() {
|
4672
|
-
var fixedRows = parseInt(instance.getSettings().fixedRowsTop, 10);
|
4673
|
-
var fixedColumns = parseInt(instance.getSettings().fixedColumnsStart, 10);
|
4674
|
-
var row = instance.rowIndexMapper.getNearestNotHiddenIndex(fixedRows, 1);
|
4675
|
-
var column = instance.columnIndexMapper.getNearestNotHiddenIndex(fixedColumns, 1);
|
4676
|
-
selection.setRangeStart(instance._createCellCoords(row, column));
|
4677
|
-
},
|
4678
|
-
runOnlyIf: function runOnlyIf() {
|
4679
|
-
return instance.view.isMainTableNotFullyCoveredByOverlays();
|
4680
|
-
}
|
4681
|
-
}, {
|
4682
|
-
keys: [['End']],
|
4683
|
-
captureCtrl: true,
|
4684
|
-
callback: function callback() {
|
4685
|
-
selection.setRangeStart(instance._createCellCoords(instance.getSelectedRangeLast().highlight.row, instance.columnIndexMapper.getNearestNotHiddenIndex(instance.countCols() - 1, -1)));
|
4686
|
-
},
|
4687
|
-
runOnlyIf: function runOnlyIf() {
|
4688
|
-
return instance.view.isMainTableNotFullyCoveredByOverlays();
|
4689
|
-
}
|
4690
|
-
}, {
|
4691
|
-
keys: [['End', 'Shift']],
|
4692
|
-
callback: function callback() {
|
4693
|
-
selection.setRangeEnd(instance._createCellCoords(selection.selectedRange.current().from.row, instance.columnIndexMapper.getNearestNotHiddenIndex(instance.countCols() - 1, -1)));
|
4694
|
-
}
|
4695
|
-
}, {
|
4696
|
-
keys: [['End', 'Control/Meta']],
|
4697
|
-
captureCtrl: true,
|
4698
|
-
callback: function callback() {
|
4699
|
-
var fixedRows = parseInt(instance.getSettings().fixedRowsBottom, 10);
|
4700
|
-
var row = instance.rowIndexMapper.getNearestNotHiddenIndex(instance.countRows() - fixedRows - 1, -1);
|
4701
|
-
var column = instance.columnIndexMapper.getNearestNotHiddenIndex(instance.countCols() - 1, -1);
|
4702
|
-
selection.setRangeStart(instance._createCellCoords(row, column));
|
4703
|
-
},
|
4704
|
-
runOnlyIf: function runOnlyIf() {
|
4705
|
-
return instance.view.isMainTableNotFullyCoveredByOverlays();
|
4706
|
-
}
|
4707
|
-
}, {
|
4708
|
-
keys: [['PageUp']],
|
4709
|
-
callback: function callback() {
|
4710
|
-
selection.transformStart(-instance.countVisibleRows(), 0);
|
4711
|
-
}
|
4712
|
-
}, {
|
4713
|
-
keys: [['PageUp', 'Shift']],
|
4714
|
-
callback: function callback() {
|
4715
|
-
var _instance$getSelected5 = instance.getSelectedRangeLast(),
|
4716
|
-
to = _instance$getSelected5.to;
|
4717
|
-
var nextRowIndexToSelect = Math.max(to.row - instance.countVisibleRows(), 0);
|
4718
|
-
var row = instance.rowIndexMapper.getNearestNotHiddenIndex(nextRowIndexToSelect, 1);
|
4719
|
-
if (row !== null) {
|
4720
|
-
var coords = instance._createCellCoords(row, to.col);
|
4721
|
-
var scrollPadding = to.row - instance.view.getFirstFullyVisibleRow();
|
4722
|
-
var nextVerticalScroll = Math.max(coords.row - scrollPadding, 0);
|
4723
|
-
selection.setRangeEnd(coords);
|
4724
|
-
instance.scrollViewportTo(nextVerticalScroll);
|
4725
|
-
}
|
4726
|
-
}
|
4727
|
-
}, {
|
4728
|
-
keys: [['PageDown']],
|
4729
|
-
callback: function callback() {
|
4730
|
-
selection.transformStart(instance.countVisibleRows(), 0);
|
4731
|
-
}
|
4732
|
-
}, {
|
4733
|
-
keys: [['PageDown', 'Shift']],
|
4734
|
-
callback: function callback() {
|
4735
|
-
var _instance$getSelected6 = instance.getSelectedRangeLast(),
|
4736
|
-
to = _instance$getSelected6.to;
|
4737
|
-
var nextRowIndexToSelect = Math.min(to.row + instance.countVisibleRows(), instance.countRows() - 1);
|
4738
|
-
var row = instance.rowIndexMapper.getNearestNotHiddenIndex(nextRowIndexToSelect, -1);
|
4739
|
-
if (row !== null) {
|
4740
|
-
var coords = instance._createCellCoords(row, to.col);
|
4741
|
-
var scrollPadding = to.row - instance.view.getFirstFullyVisibleRow();
|
4742
|
-
var nextVerticalScroll = Math.min(coords.row - scrollPadding, instance.countRows() - 1);
|
4743
|
-
selection.setRangeEnd(coords);
|
4744
|
-
instance.scrollViewportTo(nextVerticalScroll);
|
4745
|
-
}
|
4746
|
-
}
|
4747
|
-
}, {
|
4748
|
-
keys: [['Tab']],
|
4749
|
-
callback: function callback(event) {
|
4750
|
-
var tabMoves = typeof tableMeta.tabMoves === 'function' ? tableMeta.tabMoves(event) : tableMeta.tabMoves;
|
4751
|
-
selection.transformStart(tabMoves.row, tabMoves.col, true);
|
4752
|
-
}
|
4753
|
-
}, {
|
4754
|
-
keys: [['Shift', 'Tab']],
|
4755
|
-
callback: function callback(event) {
|
4756
|
-
var tabMoves = typeof tableMeta.tabMoves === 'function' ? tableMeta.tabMoves(event) : tableMeta.tabMoves;
|
4757
|
-
selection.transformStart(-tabMoves.row, -tabMoves.col);
|
4758
|
-
}
|
4759
|
-
}], gridConfig);
|
4760
4573
|
getPluginsNames().forEach(function (pluginName) {
|
4761
4574
|
var PluginClass = getPlugin(pluginName);
|
4762
4575
|
pluginsRegistry.addItem(pluginName, new PluginClass(_this));
|
4763
4576
|
});
|
4577
|
+
registerAllShortcutContexts(instance);
|
4578
|
+
shortcutManager.setActiveContextName('grid');
|
4764
4579
|
Hooks.getSingleton().run(instance, 'construct');
|
4765
4580
|
}
|
@@ -3112,6 +3112,21 @@ var _default = function _default() {
|
|
3112
3112
|
* ```
|
3113
3113
|
*/
|
3114
3114
|
multiColumnSorting: void 0,
|
3115
|
+
/**
|
3116
|
+
* The `navigableHeaders` option enables or disables the ability to navigate in headers.
|
3117
|
+
*
|
3118
|
+
* @since 13.0.0
|
3119
|
+
* @memberof Options#
|
3120
|
+
* @type {boolean}
|
3121
|
+
* @default false
|
3122
|
+
* @category Core
|
3123
|
+
*
|
3124
|
+
* @example
|
3125
|
+
* ```js
|
3126
|
+
* navigableHeaders: true,
|
3127
|
+
* ```
|
3128
|
+
*/
|
3129
|
+
navigableHeaders: false,
|
3115
3130
|
/**
|
3116
3131
|
* @description
|
3117
3132
|
* The `nestedHeaders` option configures the [`NestedHeaders`](@/api/nestedHeaders.md) plugin.
|
@@ -3108,6 +3108,21 @@ export default (function () {
|
|
3108
3108
|
* ```
|
3109
3109
|
*/
|
3110
3110
|
multiColumnSorting: void 0,
|
3111
|
+
/**
|
3112
|
+
* The `navigableHeaders` option enables or disables the ability to navigate in headers.
|
3113
|
+
*
|
3114
|
+
* @since 13.0.0
|
3115
|
+
* @memberof Options#
|
3116
|
+
* @type {boolean}
|
3117
|
+
* @default false
|
3118
|
+
* @category Core
|
3119
|
+
*
|
3120
|
+
* @example
|
3121
|
+
* ```js
|
3122
|
+
* navigableHeaders: true,
|
3123
|
+
* ```
|
3124
|
+
*/
|
3125
|
+
navigableHeaders: false,
|
3111
3126
|
/**
|
3112
3127
|
* @description
|
3113
3128
|
* The `nestedHeaders` option configures the [`NestedHeaders`](@/api/nestedHeaders.md) plugin.
|
package/dist/handsontable.css
CHANGED
@@ -25,8 +25,8 @@
|
|
25
25
|
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
26
26
|
* USE OR INABILITY TO USE THIS SOFTWARE.
|
27
27
|
*
|
28
|
-
* Version: 0.0.0-next-
|
29
|
-
* Release date: 23/05/2023 (built at
|
28
|
+
* Version: 0.0.0-next-aa25cac-20230607
|
29
|
+
* Release date: 23/05/2023 (built at 07/06/2023 08:16:57)
|
30
30
|
*/
|
31
31
|
/**
|
32
32
|
* Fix for bootstrap styles
|
@@ -607,6 +607,11 @@ innerBorderBottom - Property controlled by bottom overlay
|
|
607
607
|
opacity: 0.58;
|
608
608
|
}
|
609
609
|
|
610
|
+
.handsontable tbody th.current,
|
611
|
+
.handsontable thead th.current {
|
612
|
+
box-shadow: inset 0 0 0 2px #5292f7;
|
613
|
+
}
|
614
|
+
|
610
615
|
.handsontable tbody th.ht__highlight,
|
611
616
|
.handsontable thead th.ht__highlight {
|
612
617
|
background-color: #dcdcdc;
|
@@ -799,7 +804,7 @@ TextRenderer placeholder value
|
|
799
804
|
cursor: pointer;
|
800
805
|
-webkit-box-shadow: 0 0 0 6px rgb(238, 238, 238);
|
801
806
|
-moz-box-shadow: 0 0 0 6px rgb(238, 238, 238);
|
802
|
-
box-shadow: 0 0 0
|
807
|
+
box-shadow: 0 0 0 3px rgb(238, 238, 238);
|
803
808
|
background: #eee;
|
804
809
|
text-align: center;
|
805
810
|
}
|