handsontable 0.0.0-next-08765b9-20230714 → 0.0.0-next-f8ea07b-20230714
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 +11 -50
- package/3rdparty/walkontable/src/cell/coords.mjs +11 -50
- package/3rdparty/walkontable/src/cell/range.d.ts +2 -9
- package/3rdparty/walkontable/src/cell/range.js +7 -38
- package/3rdparty/walkontable/src/cell/range.mjs +7 -38
- 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 +6 -2
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +6 -2
- package/3rdparty/walkontable/src/overlay/top.js +6 -2
- package/3rdparty/walkontable/src/overlay/top.mjs +6 -2
- package/3rdparty/walkontable/src/selection.js +295 -0
- package/3rdparty/walkontable/src/selection.mjs +290 -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 +78 -6
- package/3rdparty/walkontable/src/table.mjs +79 -7
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/core.d.ts +3 -6
- package/core.js +290 -173
- package/core.mjs +290 -173
- package/dataMap/metaManager/metaSchema.js +0 -41
- package/dataMap/metaManager/metaSchema.mjs +0 -41
- package/dist/handsontable.css +3 -19
- package/dist/handsontable.full.css +3 -19
- package/dist/handsontable.full.js +5369 -8671
- package/dist/handsontable.full.min.css +3 -3
- package/dist/handsontable.full.min.js +25 -25
- package/dist/handsontable.js +8117 -11419
- package/dist/handsontable.min.css +3 -3
- package/dist/handsontable.min.js +19 -19
- package/editorManager.js +75 -11
- package/editorManager.mjs +74 -11
- 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 -7
- package/pluginHooks.js +1 -106
- package/pluginHooks.mjs +1 -106
- package/plugins/collapsibleColumns/collapsibleColumns.js +4 -58
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +4 -58
- package/plugins/columnSorting/columnSorting.js +0 -38
- package/plugins/columnSorting/columnSorting.mjs +2 -38
- package/plugins/columnSorting/index.js +1 -3
- package/plugins/columnSorting/index.mjs +1 -1
- package/plugins/comments/commentEditor.js +0 -1
- package/plugins/comments/commentEditor.mjs +0 -1
- package/plugins/comments/comments.js +189 -251
- package/plugins/comments/comments.mjs +190 -250
- package/plugins/contextMenu/contextMenu.d.ts +1 -1
- package/plugins/contextMenu/contextMenu.js +30 -72
- package/plugins/contextMenu/contextMenu.mjs +31 -73
- package/plugins/contextMenu/predefinedItems/alignment.js +0 -7
- package/plugins/contextMenu/predefinedItems/alignment.mjs +0 -7
- package/plugins/contextMenu/predefinedItems/clearColumn.js +3 -5
- package/plugins/contextMenu/predefinedItems/clearColumn.mjs +3 -5
- package/plugins/contextMenu/predefinedItems/columnLeft.js +3 -5
- package/plugins/contextMenu/predefinedItems/columnLeft.mjs +3 -5
- package/plugins/contextMenu/predefinedItems/columnRight.js +3 -5
- package/plugins/contextMenu/predefinedItems/columnRight.mjs +3 -5
- package/plugins/contextMenu/predefinedItems/readOnly.js +0 -7
- package/plugins/contextMenu/predefinedItems/readOnly.mjs +0 -7
- package/plugins/contextMenu/predefinedItems/removeColumn.js +5 -7
- package/plugins/contextMenu/predefinedItems/removeColumn.mjs +3 -5
- package/plugins/contextMenu/predefinedItems/removeRow.js +5 -7
- package/plugins/contextMenu/predefinedItems/removeRow.mjs +3 -5
- package/plugins/contextMenu/predefinedItems/rowAbove.js +3 -5
- package/plugins/contextMenu/predefinedItems/rowAbove.mjs +3 -5
- package/plugins/contextMenu/predefinedItems/rowBelow.js +3 -5
- package/plugins/contextMenu/predefinedItems/rowBelow.mjs +3 -5
- package/plugins/contextMenu/utils.js +16 -28
- package/plugins/contextMenu/utils.mjs +15 -27
- package/plugins/copyPaste/contextMenuItem/copy.js +0 -7
- package/plugins/copyPaste/contextMenuItem/copy.mjs +0 -7
- package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.js +1 -9
- package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.mjs +1 -9
- package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.js +1 -9
- package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.mjs +1 -9
- package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.js +1 -9
- package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.mjs +1 -9
- package/plugins/copyPaste/contextMenuItem/cut.js +0 -7
- package/plugins/copyPaste/contextMenuItem/cut.mjs +0 -7
- package/plugins/copyPaste/copyPaste.js +2 -6
- package/plugins/copyPaste/copyPaste.mjs +2 -6
- package/plugins/customBorders/customBorders.js +20 -23
- package/plugins/customBorders/customBorders.mjs +21 -24
- package/plugins/dropdownMenu/dropdownMenu.d.ts +1 -1
- package/plugins/dropdownMenu/dropdownMenu.js +32 -89
- package/plugins/dropdownMenu/dropdownMenu.mjs +32 -89
- package/plugins/filters/filters.js +14 -31
- package/plugins/filters/filters.mjs +13 -30
- package/plugins/mergeCells/mergeCells.js +16 -5
- package/plugins/mergeCells/mergeCells.mjs +16 -5
- package/plugins/multiColumnSorting/multiColumnSorting.js +2 -37
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +2 -37
- package/plugins/nestedHeaders/nestedHeaders.js +8 -121
- package/plugins/nestedHeaders/nestedHeaders.mjs +8 -121
- package/plugins/nestedHeaders/stateManager/index.js +0 -37
- package/plugins/nestedHeaders/stateManager/index.mjs +0 -37
- package/plugins/nestedRows/nestedRows.js +0 -41
- package/plugins/nestedRows/nestedRows.mjs +0 -41
- package/renderers/checkboxRenderer/checkboxRenderer.js +2 -2
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +1 -1
- package/selection/highlight/constants.js +15 -0
- package/selection/highlight/constants.mjs +6 -0
- package/selection/highlight/highlight.js +71 -256
- package/selection/highlight/highlight.mjs +71 -250
- package/selection/highlight/types/activeHeader.js +8 -10
- package/selection/highlight/types/activeHeader.mjs +8 -10
- package/selection/highlight/types/area.js +18 -6
- package/selection/highlight/types/area.mjs +18 -6
- package/selection/highlight/types/{focus.js → cell.js} +7 -5
- package/selection/highlight/types/{focus.mjs → cell.mjs} +7 -5
- package/selection/highlight/types/customSelection.js +9 -7
- package/selection/highlight/types/customSelection.mjs +9 -7
- package/selection/highlight/types/fill.js +7 -5
- package/selection/highlight/types/fill.mjs +7 -5
- package/selection/highlight/types/header.js +18 -9
- package/selection/highlight/types/header.mjs +18 -9
- package/selection/highlight/types/index.js +35 -0
- package/selection/highlight/types/index.mjs +31 -0
- 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 +154 -290
- package/selection/selection.mjs +153 -287
- package/selection/transformation.js +90 -232
- package/selection/transformation.mjs +90 -232
- package/selection/utils.js +21 -15
- package/selection/utils.mjs +21 -16
- package/settings.d.ts +0 -2
- package/shortcuts/manager.js +0 -2
- package/shortcuts/manager.mjs +0 -2
- package/shortcuts/recorder.js +2 -2
- package/shortcuts/recorder.mjs +2 -2
- package/shortcuts/utils.js +5 -19
- package/shortcuts/utils.mjs +4 -18
- package/tableView.js +13 -67
- package/tableView.mjs +13 -67
- package/3rdparty/walkontable/src/selection/border/constants.js +0 -16
- package/3rdparty/walkontable/src/selection/border/constants.mjs +0 -12
- package/3rdparty/walkontable/src/selection/constants.js +0 -62
- package/3rdparty/walkontable/src/selection/constants.mjs +0 -51
- package/3rdparty/walkontable/src/selection/index.js +0 -26
- package/3rdparty/walkontable/src/selection/index.mjs +0 -5
- package/3rdparty/walkontable/src/selection/manager.js +0 -259
- package/3rdparty/walkontable/src/selection/manager.mjs +0 -254
- package/3rdparty/walkontable/src/selection/scanner.js +0 -270
- package/3rdparty/walkontable/src/selection/scanner.mjs +0 -267
- package/3rdparty/walkontable/src/selection/selection.js +0 -101
- package/3rdparty/walkontable/src/selection/selection.mjs +0 -96
- package/core/focusCatcher/focusDetector.js +0 -58
- package/core/focusCatcher/focusDetector.mjs +0 -54
- package/core/focusCatcher/index.js +0 -142
- package/core/focusCatcher/index.mjs +0 -138
- package/core/index.js +0 -9
- package/core/index.mjs +0 -1
- package/plugins/comments/contextMenuItem/addEditComment.js +0 -41
- package/plugins/comments/contextMenuItem/addEditComment.mjs +0 -35
- package/plugins/comments/contextMenuItem/readOnlyComment.js +0 -49
- package/plugins/comments/contextMenuItem/readOnlyComment.mjs +0 -43
- package/plugins/comments/contextMenuItem/removeComment.js +0 -38
- package/plugins/comments/contextMenuItem/removeComment.mjs +0 -32
- package/selection/highlight/types/areaLayered.js +0 -31
- package/selection/highlight/types/areaLayered.mjs +0 -26
- package/selection/highlight/types/column.js +0 -27
- package/selection/highlight/types/column.mjs +0 -22
- package/selection/highlight/types/row.js +0 -27
- package/selection/highlight/types/row.mjs +0 -22
- package/shortcutContexts/commands/editor/closeAndSave.js +0 -12
- package/shortcutContexts/commands/editor/closeAndSave.mjs +0 -8
- package/shortcutContexts/commands/editor/closeWithoutSaving.js +0 -12
- package/shortcutContexts/commands/editor/closeWithoutSaving.mjs +0 -8
- package/shortcutContexts/commands/editor/fastOpen.js +0 -16
- package/shortcutContexts/commands/editor/fastOpen.mjs +0 -12
- package/shortcutContexts/commands/editor/index.js +0 -16
- package/shortcutContexts/commands/editor/index.mjs +0 -12
- package/shortcutContexts/commands/editor/open.js +0 -27
- package/shortcutContexts/commands/editor/open.mjs +0 -23
- package/shortcutContexts/commands/emptySelectedCells.js +0 -11
- package/shortcutContexts/commands/emptySelectedCells.mjs +0 -7
- package/shortcutContexts/commands/extendCellsSelection/down.js +0 -15
- package/shortcutContexts/commands/extendCellsSelection/down.mjs +0 -11
- package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.js +0 -21
- package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.mjs +0 -17
- 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 -11
- package/shortcutContexts/commands/extendCellsSelection/right.js +0 -15
- package/shortcutContexts/commands/extendCellsSelection/right.mjs +0 -11
- package/shortcutContexts/commands/extendCellsSelection/toColumns.js +0 -19
- package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +0 -15
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +0 -29
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +0 -25
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +0 -19
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +0 -15
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +0 -19
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +0 -15
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +0 -29
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +0 -25
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +0 -29
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +0 -25
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +0 -29
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +0 -25
- package/shortcutContexts/commands/extendCellsSelection/toRows.js +0 -19
- package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +0 -15
- package/shortcutContexts/commands/extendCellsSelection/up.js +0 -15
- package/shortcutContexts/commands/extendCellsSelection/up.mjs +0 -11
- package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.js +0 -21
- package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.mjs +0 -17
- package/shortcutContexts/commands/index.js +0 -35
- package/shortcutContexts/commands/index.mjs +0 -31
- package/shortcutContexts/commands/moveCellSelection/down.js +0 -13
- package/shortcutContexts/commands/moveCellSelection/down.mjs +0 -9
- package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.js +0 -31
- package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.mjs +0 -27
- package/shortcutContexts/commands/moveCellSelection/index.js +0 -28
- package/shortcutContexts/commands/moveCellSelection/index.mjs +0 -24
- package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +0 -12
- package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +0 -8
- package/shortcutContexts/commands/moveCellSelection/inlineStart.js +0 -12
- package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +0 -8
- package/shortcutContexts/commands/moveCellSelection/left.js +0 -10
- package/shortcutContexts/commands/moveCellSelection/left.mjs +0 -6
- package/shortcutContexts/commands/moveCellSelection/right.js +0 -10
- package/shortcutContexts/commands/moveCellSelection/right.mjs +0 -6
- package/shortcutContexts/commands/moveCellSelection/toMostBottom.js +0 -17
- package/shortcutContexts/commands/moveCellSelection/toMostBottom.mjs +0 -13
- package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.js +0 -18
- package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.mjs +0 -14
- package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.js +0 -14
- package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.mjs +0 -10
- package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.js +0 -17
- package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.mjs +0 -13
- package/shortcutContexts/commands/moveCellSelection/toMostLeft.js +0 -19
- package/shortcutContexts/commands/moveCellSelection/toMostLeft.mjs +0 -15
- package/shortcutContexts/commands/moveCellSelection/toMostRight.js +0 -21
- package/shortcutContexts/commands/moveCellSelection/toMostRight.mjs +0 -17
- package/shortcutContexts/commands/moveCellSelection/toMostTop.js +0 -17
- package/shortcutContexts/commands/moveCellSelection/toMostTop.mjs +0 -13
- package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.js +0 -19
- package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.mjs +0 -15
- package/shortcutContexts/commands/moveCellSelection/up.js +0 -13
- package/shortcutContexts/commands/moveCellSelection/up.mjs +0 -9
- package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.js +0 -31
- package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.mjs +0 -27
- package/shortcutContexts/commands/populateSelectedCellsData.js +0 -29
- package/shortcutContexts/commands/populateSelectedCellsData.mjs +0 -25
- package/shortcutContexts/commands/scrollToFocusedCell.js +0 -36
- package/shortcutContexts/commands/scrollToFocusedCell.mjs +0 -32
- package/shortcutContexts/commands/selectAll.js +0 -10
- package/shortcutContexts/commands/selectAll.mjs +0 -6
- package/shortcutContexts/constants.js +0 -13
- package/shortcutContexts/constants.mjs +0 -8
- package/shortcutContexts/editor.js +0 -25
- package/shortcutContexts/editor.mjs +0 -21
- package/shortcutContexts/grid.js +0 -163
- package/shortcutContexts/grid.mjs +0 -159
- package/shortcutContexts/index.js +0 -24
- package/shortcutContexts/index.mjs +0 -11
package/shortcuts/utils.mjs
CHANGED
@@ -33,25 +33,11 @@ export const getKeysList = normalizedKeys => {
|
|
33
33
|
};
|
34
34
|
|
35
35
|
/**
|
36
|
-
*
|
37
|
-
* the string.
|
38
|
-
*/
|
39
|
-
const codeToKeyRegExp = new RegExp('^(?:Key|Digit)([A-Z0-9])$');
|
40
|
-
|
41
|
-
/**
|
42
|
-
* Normalizes a keyboard event key value to a key before its modification. When the keyboard event
|
43
|
-
* is triggered with Alt, Control or Shift keys the `key` property contains modified key e.g. for Alt+L
|
44
|
-
* it will be `ł`. But that value is only valid for polish keyboard layout. To fix that limitations, for
|
45
|
-
* letters and digits the value is taken from the `code` property which holds original value before
|
46
|
-
* transformation.
|
36
|
+
* Normalize a `KeyboardEvent.key` property, to use it for keyboard shortcuts.
|
47
37
|
*
|
48
|
-
* @param {
|
38
|
+
* @param {string} key KeyboardEvent's key property.
|
49
39
|
* @returns {string}
|
50
40
|
*/
|
51
|
-
export const normalizeEventKey =
|
52
|
-
|
53
|
-
key,
|
54
|
-
code
|
55
|
-
} = _ref;
|
56
|
-
return (codeToKeyRegExp.test(code) ? code.replace(codeToKeyRegExp, '$1') : key).toLowerCase();
|
41
|
+
export const normalizeEventKey = key => {
|
42
|
+
return key.toLowerCase();
|
57
43
|
};
|
package/tableView.js
CHANGED
@@ -312,14 +312,11 @@ class TableView {
|
|
312
312
|
});
|
313
313
|
this.eventManager.addEventListener(documentElement, 'mouseup', event => {
|
314
314
|
if (selection.isInProgress() && (0, _event.isLeftClick)(event)) {
|
315
|
+
// is left mouse button
|
315
316
|
selection.finish();
|
316
317
|
}
|
317
318
|
priv.mouseDown = false;
|
318
|
-
|
319
|
-
if (!isOutsideInputElement) {
|
320
|
-
return;
|
321
|
-
}
|
322
|
-
if (isOutsideInputElement || !selection.isSelected() && !selection.isSelectedByAnyHeader() && !rootElement.contains(event.target) && !(0, _event.isRightClick)(event)) {
|
319
|
+
if ((0, _element.isOutsideInput)(rootDocument.activeElement) || !selection.isSelected() && !selection.isSelectedByAnyHeader() && !rootElement.contains(event.target) && !(0, _event.isRightClick)(event)) {
|
323
320
|
this.instance.unlisten();
|
324
321
|
}
|
325
322
|
});
|
@@ -553,40 +550,6 @@ class TableView {
|
|
553
550
|
return this.countNotHiddenRowIndexes(visualFixedRowsBottom, 1);
|
554
551
|
}
|
555
552
|
|
556
|
-
/**
|
557
|
-
* The function returns the number of renderable column indexes within the passed range of the visual indexes.
|
558
|
-
*
|
559
|
-
* @param {number} columnStart The column visual start index.
|
560
|
-
* @param {number} columnEnd The column visual end index.
|
561
|
-
* @returns {number}
|
562
|
-
*/
|
563
|
-
countRenderableColumnsInRange(columnStart, columnEnd) {
|
564
|
-
let count = 0;
|
565
|
-
for (let column = columnStart; column <= columnEnd; column++) {
|
566
|
-
if (this.instance.columnIndexMapper.getRenderableFromVisualIndex(column) !== null) {
|
567
|
-
count += 1;
|
568
|
-
}
|
569
|
-
}
|
570
|
-
return count;
|
571
|
-
}
|
572
|
-
|
573
|
-
/**
|
574
|
-
* The function returns the number of renderable row indexes within the passed range of the visual indexes.
|
575
|
-
*
|
576
|
-
* @param {number} rowStart The row visual start index.
|
577
|
-
* @param {number} rowEnd The row visual end index.
|
578
|
-
* @returns {number}
|
579
|
-
*/
|
580
|
-
countRenderableRowsInRange(rowStart, rowEnd) {
|
581
|
-
let count = 0;
|
582
|
-
for (let row = rowStart; row <= rowEnd; row++) {
|
583
|
-
if (this.instance.rowIndexMapper.getRenderableFromVisualIndex(row) !== null) {
|
584
|
-
count += 1;
|
585
|
-
}
|
586
|
-
}
|
587
|
-
return count;
|
588
|
-
}
|
589
|
-
|
590
553
|
/**
|
591
554
|
* Checks if at least one cell than belongs to the main table is not covered by the top, left or
|
592
555
|
* bottom overlay.
|
@@ -806,40 +769,20 @@ class TableView {
|
|
806
769
|
},
|
807
770
|
beforeDraw: (force, skipRender) => this.beforeRender(force, skipRender),
|
808
771
|
onDraw: force => this.afterRender(force),
|
809
|
-
onScrollVertically: () =>
|
810
|
-
|
811
|
-
this.instance.runHooks('afterScroll');
|
812
|
-
},
|
813
|
-
onScrollHorizontally: () => {
|
814
|
-
this.instance.runHooks('afterScrollHorizontally');
|
815
|
-
this.instance.runHooks('afterScroll');
|
816
|
-
},
|
772
|
+
onScrollVertically: () => this.instance.runHooks('afterScrollVertically'),
|
773
|
+
onScrollHorizontally: () => this.instance.runHooks('afterScrollHorizontally'),
|
817
774
|
onBeforeRemoveCellClassNames: () => this.instance.runHooks('beforeRemoveCellClassNames'),
|
818
775
|
onBeforeHighlightingRowHeader: (renderableRow, headerLevel, highlightMeta) => {
|
819
776
|
const rowMapper = this.instance.rowIndexMapper;
|
820
|
-
const
|
821
|
-
let visualRow = renderableRow;
|
822
|
-
if (!areColumnHeadersSelected) {
|
823
|
-
visualRow = rowMapper.getVisualFromRenderableIndex(renderableRow);
|
824
|
-
}
|
777
|
+
const visualRow = rowMapper.getVisualFromRenderableIndex(renderableRow);
|
825
778
|
const newVisualRow = this.instance.runHooks('beforeHighlightingRowHeader', visualRow, headerLevel, highlightMeta);
|
826
|
-
|
827
|
-
return rowMapper.getRenderableFromVisualIndex(rowMapper.getNearestNotHiddenIndex(newVisualRow, 1));
|
828
|
-
}
|
829
|
-
return newVisualRow;
|
779
|
+
return rowMapper.getRenderableFromVisualIndex(rowMapper.getNearestNotHiddenIndex(newVisualRow, 1));
|
830
780
|
},
|
831
781
|
onBeforeHighlightingColumnHeader: (renderableColumn, headerLevel, highlightMeta) => {
|
832
782
|
const columnMapper = this.instance.columnIndexMapper;
|
833
|
-
const
|
834
|
-
let visualColumn = renderableColumn;
|
835
|
-
if (!areRowHeadersSelected) {
|
836
|
-
visualColumn = columnMapper.getVisualFromRenderableIndex(renderableColumn);
|
837
|
-
}
|
783
|
+
const visualColumn = columnMapper.getVisualFromRenderableIndex(renderableColumn);
|
838
784
|
const newVisualColumn = this.instance.runHooks('beforeHighlightingColumnHeader', visualColumn, headerLevel, highlightMeta);
|
839
|
-
|
840
|
-
return columnMapper.getRenderableFromVisualIndex(columnMapper.getNearestNotHiddenIndex(newVisualColumn, 1));
|
841
|
-
}
|
842
|
-
return newVisualColumn;
|
785
|
+
return columnMapper.getRenderableFromVisualIndex(columnMapper.getNearestNotHiddenIndex(newVisualColumn, 1));
|
843
786
|
},
|
844
787
|
onAfterDrawSelection: (currentRow, currentColumn, layerLevel) => {
|
845
788
|
let cornersOfSelection;
|
@@ -847,7 +790,10 @@ class TableView {
|
|
847
790
|
const selectedRange = this.instance.selection.getSelectedRange();
|
848
791
|
const selectionRangeSize = selectedRange.size();
|
849
792
|
if (selectionRangeSize > 0) {
|
850
|
-
|
793
|
+
// Selection layers are stored from the "oldest" to the "newest". We should calculate the offset.
|
794
|
+
// Please look at the `SelectedRange` class and it's method for getting selection's layer for more information.
|
795
|
+
const selectionOffset = (layerLevel !== null && layerLevel !== void 0 ? layerLevel : 0) + 1 - selectionRangeSize;
|
796
|
+
const selectionForLayer = selectedRange.peekByIndex(selectionOffset);
|
851
797
|
cornersOfSelection = [selectionForLayer.from.row, selectionForLayer.from.col, selectionForLayer.to.row, selectionForLayer.to.col];
|
852
798
|
}
|
853
799
|
return this.instance.runHooks('afterDrawSelection', visualRowIndex, visualColumnIndex, cornersOfSelection, layerLevel);
|
@@ -1000,7 +946,7 @@ class TableView {
|
|
1000
946
|
*/
|
1001
947
|
isSelectedOnlyCell() {
|
1002
948
|
var _this$instance$getSel, _this$instance$getSel2;
|
1003
|
-
return (_this$instance$getSel = (_this$instance$getSel2 = this.instance.getSelectedRangeLast()) === null || _this$instance$getSel2 === void 0 ? void 0 : _this$instance$getSel2.
|
949
|
+
return (_this$instance$getSel = (_this$instance$getSel2 = this.instance.getSelectedRangeLast()) === null || _this$instance$getSel2 === void 0 ? void 0 : _this$instance$getSel2.isSingle()) !== null && _this$instance$getSel !== void 0 ? _this$instance$getSel : false;
|
1004
950
|
}
|
1005
951
|
|
1006
952
|
/**
|
package/tableView.mjs
CHANGED
@@ -308,14 +308,11 @@ class TableView {
|
|
308
308
|
});
|
309
309
|
this.eventManager.addEventListener(documentElement, 'mouseup', event => {
|
310
310
|
if (selection.isInProgress() && isLeftClick(event)) {
|
311
|
+
// is left mouse button
|
311
312
|
selection.finish();
|
312
313
|
}
|
313
314
|
priv.mouseDown = false;
|
314
|
-
|
315
|
-
if (!isOutsideInputElement) {
|
316
|
-
return;
|
317
|
-
}
|
318
|
-
if (isOutsideInputElement || !selection.isSelected() && !selection.isSelectedByAnyHeader() && !rootElement.contains(event.target) && !isRightClick(event)) {
|
315
|
+
if (isOutsideInput(rootDocument.activeElement) || !selection.isSelected() && !selection.isSelectedByAnyHeader() && !rootElement.contains(event.target) && !isRightClick(event)) {
|
319
316
|
this.instance.unlisten();
|
320
317
|
}
|
321
318
|
});
|
@@ -549,40 +546,6 @@ class TableView {
|
|
549
546
|
return this.countNotHiddenRowIndexes(visualFixedRowsBottom, 1);
|
550
547
|
}
|
551
548
|
|
552
|
-
/**
|
553
|
-
* The function returns the number of renderable column indexes within the passed range of the visual indexes.
|
554
|
-
*
|
555
|
-
* @param {number} columnStart The column visual start index.
|
556
|
-
* @param {number} columnEnd The column visual end index.
|
557
|
-
* @returns {number}
|
558
|
-
*/
|
559
|
-
countRenderableColumnsInRange(columnStart, columnEnd) {
|
560
|
-
let count = 0;
|
561
|
-
for (let column = columnStart; column <= columnEnd; column++) {
|
562
|
-
if (this.instance.columnIndexMapper.getRenderableFromVisualIndex(column) !== null) {
|
563
|
-
count += 1;
|
564
|
-
}
|
565
|
-
}
|
566
|
-
return count;
|
567
|
-
}
|
568
|
-
|
569
|
-
/**
|
570
|
-
* The function returns the number of renderable row indexes within the passed range of the visual indexes.
|
571
|
-
*
|
572
|
-
* @param {number} rowStart The row visual start index.
|
573
|
-
* @param {number} rowEnd The row visual end index.
|
574
|
-
* @returns {number}
|
575
|
-
*/
|
576
|
-
countRenderableRowsInRange(rowStart, rowEnd) {
|
577
|
-
let count = 0;
|
578
|
-
for (let row = rowStart; row <= rowEnd; row++) {
|
579
|
-
if (this.instance.rowIndexMapper.getRenderableFromVisualIndex(row) !== null) {
|
580
|
-
count += 1;
|
581
|
-
}
|
582
|
-
}
|
583
|
-
return count;
|
584
|
-
}
|
585
|
-
|
586
549
|
/**
|
587
550
|
* Checks if at least one cell than belongs to the main table is not covered by the top, left or
|
588
551
|
* bottom overlay.
|
@@ -802,40 +765,20 @@ class TableView {
|
|
802
765
|
},
|
803
766
|
beforeDraw: (force, skipRender) => this.beforeRender(force, skipRender),
|
804
767
|
onDraw: force => this.afterRender(force),
|
805
|
-
onScrollVertically: () =>
|
806
|
-
|
807
|
-
this.instance.runHooks('afterScroll');
|
808
|
-
},
|
809
|
-
onScrollHorizontally: () => {
|
810
|
-
this.instance.runHooks('afterScrollHorizontally');
|
811
|
-
this.instance.runHooks('afterScroll');
|
812
|
-
},
|
768
|
+
onScrollVertically: () => this.instance.runHooks('afterScrollVertically'),
|
769
|
+
onScrollHorizontally: () => this.instance.runHooks('afterScrollHorizontally'),
|
813
770
|
onBeforeRemoveCellClassNames: () => this.instance.runHooks('beforeRemoveCellClassNames'),
|
814
771
|
onBeforeHighlightingRowHeader: (renderableRow, headerLevel, highlightMeta) => {
|
815
772
|
const rowMapper = this.instance.rowIndexMapper;
|
816
|
-
const
|
817
|
-
let visualRow = renderableRow;
|
818
|
-
if (!areColumnHeadersSelected) {
|
819
|
-
visualRow = rowMapper.getVisualFromRenderableIndex(renderableRow);
|
820
|
-
}
|
773
|
+
const visualRow = rowMapper.getVisualFromRenderableIndex(renderableRow);
|
821
774
|
const newVisualRow = this.instance.runHooks('beforeHighlightingRowHeader', visualRow, headerLevel, highlightMeta);
|
822
|
-
|
823
|
-
return rowMapper.getRenderableFromVisualIndex(rowMapper.getNearestNotHiddenIndex(newVisualRow, 1));
|
824
|
-
}
|
825
|
-
return newVisualRow;
|
775
|
+
return rowMapper.getRenderableFromVisualIndex(rowMapper.getNearestNotHiddenIndex(newVisualRow, 1));
|
826
776
|
},
|
827
777
|
onBeforeHighlightingColumnHeader: (renderableColumn, headerLevel, highlightMeta) => {
|
828
778
|
const columnMapper = this.instance.columnIndexMapper;
|
829
|
-
const
|
830
|
-
let visualColumn = renderableColumn;
|
831
|
-
if (!areRowHeadersSelected) {
|
832
|
-
visualColumn = columnMapper.getVisualFromRenderableIndex(renderableColumn);
|
833
|
-
}
|
779
|
+
const visualColumn = columnMapper.getVisualFromRenderableIndex(renderableColumn);
|
834
780
|
const newVisualColumn = this.instance.runHooks('beforeHighlightingColumnHeader', visualColumn, headerLevel, highlightMeta);
|
835
|
-
|
836
|
-
return columnMapper.getRenderableFromVisualIndex(columnMapper.getNearestNotHiddenIndex(newVisualColumn, 1));
|
837
|
-
}
|
838
|
-
return newVisualColumn;
|
781
|
+
return columnMapper.getRenderableFromVisualIndex(columnMapper.getNearestNotHiddenIndex(newVisualColumn, 1));
|
839
782
|
},
|
840
783
|
onAfterDrawSelection: (currentRow, currentColumn, layerLevel) => {
|
841
784
|
let cornersOfSelection;
|
@@ -843,7 +786,10 @@ class TableView {
|
|
843
786
|
const selectedRange = this.instance.selection.getSelectedRange();
|
844
787
|
const selectionRangeSize = selectedRange.size();
|
845
788
|
if (selectionRangeSize > 0) {
|
846
|
-
|
789
|
+
// Selection layers are stored from the "oldest" to the "newest". We should calculate the offset.
|
790
|
+
// Please look at the `SelectedRange` class and it's method for getting selection's layer for more information.
|
791
|
+
const selectionOffset = (layerLevel !== null && layerLevel !== void 0 ? layerLevel : 0) + 1 - selectionRangeSize;
|
792
|
+
const selectionForLayer = selectedRange.peekByIndex(selectionOffset);
|
847
793
|
cornersOfSelection = [selectionForLayer.from.row, selectionForLayer.from.col, selectionForLayer.to.row, selectionForLayer.to.col];
|
848
794
|
}
|
849
795
|
return this.instance.runHooks('afterDrawSelection', visualRowIndex, visualColumnIndex, cornersOfSelection, layerLevel);
|
@@ -996,7 +942,7 @@ class TableView {
|
|
996
942
|
*/
|
997
943
|
isSelectedOnlyCell() {
|
998
944
|
var _this$instance$getSel, _this$instance$getSel2;
|
999
|
-
return (_this$instance$getSel = (_this$instance$getSel2 = this.instance.getSelectedRangeLast()) === null || _this$instance$getSel2 === void 0 ? void 0 : _this$instance$getSel2.
|
945
|
+
return (_this$instance$getSel = (_this$instance$getSel2 = this.instance.getSelectedRangeLast()) === null || _this$instance$getSel2 === void 0 ? void 0 : _this$instance$getSel2.isSingle()) !== null && _this$instance$getSel !== void 0 ? _this$instance$getSel : false;
|
1000
946
|
}
|
1001
947
|
|
1002
948
|
/**
|
@@ -1,16 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
exports.__esModule = true;
|
4
|
-
/**
|
5
|
-
* Default border corner style.
|
6
|
-
*
|
7
|
-
* @type {object}
|
8
|
-
*/
|
9
|
-
const CORNER_DEFAULT_STYLE = Object.freeze({
|
10
|
-
width: '6px',
|
11
|
-
height: '6px',
|
12
|
-
borderWidth: '1px',
|
13
|
-
borderStyle: 'solid',
|
14
|
-
borderColor: '#FFF'
|
15
|
-
});
|
16
|
-
exports.CORNER_DEFAULT_STYLE = CORNER_DEFAULT_STYLE;
|
@@ -1,62 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
exports.__esModule = true;
|
4
|
-
/**
|
5
|
-
* Selection type that is visible only if the row or column header is clicked. If that happened
|
6
|
-
* all row or column header layers are highlighted.
|
7
|
-
*
|
8
|
-
* @type {string}
|
9
|
-
*/
|
10
|
-
const ACTIVE_HEADER_TYPE = 'active-header';
|
11
|
-
/**
|
12
|
-
* Selection type that is visible only if the a cell or cells are clicked. If that happened
|
13
|
-
* only the most closest to the cells row or column header is highlighted.
|
14
|
-
*
|
15
|
-
* @type {string}
|
16
|
-
*/
|
17
|
-
exports.ACTIVE_HEADER_TYPE = ACTIVE_HEADER_TYPE;
|
18
|
-
const HEADER_TYPE = 'header';
|
19
|
-
/**
|
20
|
-
* Selection type that is visible when a cell or cells are clicked. The selected cells are
|
21
|
-
* highlighted.
|
22
|
-
*
|
23
|
-
* @type {string}
|
24
|
-
*/
|
25
|
-
exports.HEADER_TYPE = HEADER_TYPE;
|
26
|
-
const AREA_TYPE = 'area';
|
27
|
-
/**
|
28
|
-
* Selection type defines a cell that follows the user (keyboard navigation).
|
29
|
-
*
|
30
|
-
* @type {string}
|
31
|
-
*/
|
32
|
-
exports.AREA_TYPE = AREA_TYPE;
|
33
|
-
const FOCUS_TYPE = 'focus';
|
34
|
-
/**
|
35
|
-
* Selection type defines borders for the autofill functionality.
|
36
|
-
*
|
37
|
-
* @type {string}
|
38
|
-
*/
|
39
|
-
exports.FOCUS_TYPE = FOCUS_TYPE;
|
40
|
-
const FILL_TYPE = 'fill';
|
41
|
-
/**
|
42
|
-
* Selection type defines highlights for the `currentRowClassName` option.
|
43
|
-
*
|
44
|
-
* @type {string}
|
45
|
-
*/
|
46
|
-
exports.FILL_TYPE = FILL_TYPE;
|
47
|
-
const ROW_TYPE = 'row';
|
48
|
-
/**
|
49
|
-
* Selection type defines highlights for the `currentColumnClassName` option.
|
50
|
-
*
|
51
|
-
* @type {string}
|
52
|
-
*/
|
53
|
-
exports.ROW_TYPE = ROW_TYPE;
|
54
|
-
const COLUMN_TYPE = 'column';
|
55
|
-
/**
|
56
|
-
* Selection type defines highlights managed by the CustomBorders plugin.
|
57
|
-
*
|
58
|
-
* @type {string}
|
59
|
-
*/
|
60
|
-
exports.COLUMN_TYPE = COLUMN_TYPE;
|
61
|
-
const CUSTOM_SELECTION_TYPE = 'custom-selection';
|
62
|
-
exports.CUSTOM_SELECTION_TYPE = CUSTOM_SELECTION_TYPE;
|
@@ -1,51 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* Selection type that is visible only if the row or column header is clicked. If that happened
|
3
|
-
* all row or column header layers are highlighted.
|
4
|
-
*
|
5
|
-
* @type {string}
|
6
|
-
*/
|
7
|
-
export const ACTIVE_HEADER_TYPE = 'active-header';
|
8
|
-
/**
|
9
|
-
* Selection type that is visible only if the a cell or cells are clicked. If that happened
|
10
|
-
* only the most closest to the cells row or column header is highlighted.
|
11
|
-
*
|
12
|
-
* @type {string}
|
13
|
-
*/
|
14
|
-
export const HEADER_TYPE = 'header';
|
15
|
-
/**
|
16
|
-
* Selection type that is visible when a cell or cells are clicked. The selected cells are
|
17
|
-
* highlighted.
|
18
|
-
*
|
19
|
-
* @type {string}
|
20
|
-
*/
|
21
|
-
export const AREA_TYPE = 'area';
|
22
|
-
/**
|
23
|
-
* Selection type defines a cell that follows the user (keyboard navigation).
|
24
|
-
*
|
25
|
-
* @type {string}
|
26
|
-
*/
|
27
|
-
export const FOCUS_TYPE = 'focus';
|
28
|
-
/**
|
29
|
-
* Selection type defines borders for the autofill functionality.
|
30
|
-
*
|
31
|
-
* @type {string}
|
32
|
-
*/
|
33
|
-
export const FILL_TYPE = 'fill';
|
34
|
-
/**
|
35
|
-
* Selection type defines highlights for the `currentRowClassName` option.
|
36
|
-
*
|
37
|
-
* @type {string}
|
38
|
-
*/
|
39
|
-
export const ROW_TYPE = 'row';
|
40
|
-
/**
|
41
|
-
* Selection type defines highlights for the `currentColumnClassName` option.
|
42
|
-
*
|
43
|
-
* @type {string}
|
44
|
-
*/
|
45
|
-
export const COLUMN_TYPE = 'column';
|
46
|
-
/**
|
47
|
-
* Selection type defines highlights managed by the CustomBorders plugin.
|
48
|
-
*
|
49
|
-
* @type {string}
|
50
|
-
*/
|
51
|
-
export const CUSTOM_SELECTION_TYPE = 'custom-selection';
|
@@ -1,26 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
exports.__esModule = true;
|
4
|
-
var _exportNames = {
|
5
|
-
SelectionManager: true,
|
6
|
-
Selection: true
|
7
|
-
};
|
8
|
-
var _selection = _interopRequireDefault(require("./selection"));
|
9
|
-
exports.Selection = _selection.default;
|
10
|
-
var _constants = require("./constants");
|
11
|
-
Object.keys(_constants).forEach(function (key) {
|
12
|
-
if (key === "default" || key === "__esModule") return;
|
13
|
-
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
14
|
-
if (key in exports && exports[key] === _constants[key]) return;
|
15
|
-
exports[key] = _constants[key];
|
16
|
-
});
|
17
|
-
var _constants2 = require("./border/constants");
|
18
|
-
Object.keys(_constants2).forEach(function (key) {
|
19
|
-
if (key === "default" || key === "__esModule") return;
|
20
|
-
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
21
|
-
if (key in exports && exports[key] === _constants2[key]) return;
|
22
|
-
exports[key] = _constants2[key];
|
23
|
-
});
|
24
|
-
var _manager = require("./manager");
|
25
|
-
exports.SelectionManager = _manager.SelectionManager;
|
26
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|