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
@@ -60,7 +60,7 @@ export class ContextMenu extends BasePlugin {
|
|
60
60
|
|
61
61
|
constructor(hotInstance: Core);
|
62
62
|
isEnabled(): boolean;
|
63
|
-
open(
|
63
|
+
open(event: Event): void;
|
64
64
|
close(): void;
|
65
65
|
executeCommand(commandName: string, ...params: any): void;
|
66
66
|
}
|
@@ -4,12 +4,10 @@ exports.__esModule = true;
|
|
4
4
|
var _base = require("../base");
|
5
5
|
var _pluginHooks = _interopRequireDefault(require("../../pluginHooks"));
|
6
6
|
var _array = require("../../helpers/array");
|
7
|
-
var _object = require("../../helpers/object");
|
8
7
|
var _commandExecutor = _interopRequireDefault(require("./commandExecutor"));
|
9
8
|
var _eventManager = _interopRequireDefault(require("../../eventManager"));
|
10
9
|
var _itemsFactory = _interopRequireDefault(require("./itemsFactory"));
|
11
10
|
var _menu = _interopRequireDefault(require("./menu"));
|
12
|
-
var _utils = require("./utils");
|
13
11
|
var _element = require("../../helpers/dom/element");
|
14
12
|
var _predefinedItems = require("./predefinedItems");
|
15
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
@@ -17,7 +15,6 @@ const PLUGIN_KEY = 'contextMenu';
|
|
17
15
|
exports.PLUGIN_KEY = PLUGIN_KEY;
|
18
16
|
const PLUGIN_PRIORITY = 70;
|
19
17
|
exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
|
20
|
-
const SHORTCUTS_GROUP = PLUGIN_KEY;
|
21
18
|
_pluginHooks.default.getSingleton().register('afterContextMenuDefaultOptions');
|
22
19
|
_pluginHooks.default.getSingleton().register('beforeContextMenuShow');
|
23
20
|
_pluginHooks.default.getSingleton().register('afterContextMenuShow');
|
@@ -140,7 +137,6 @@ class ContextMenu extends _base.BasePlugin {
|
|
140
137
|
return _this.executeCommand.call(_this, ...params);
|
141
138
|
});
|
142
139
|
this.addHook('afterOnCellContextMenu', event => this.onAfterOnCellContextMenu(event));
|
143
|
-
this.registerShortcuts();
|
144
140
|
super.enablePlugin();
|
145
141
|
}
|
146
142
|
|
@@ -153,7 +149,6 @@ class ContextMenu extends _base.BasePlugin {
|
|
153
149
|
updatePlugin() {
|
154
150
|
this.disablePlugin();
|
155
151
|
this.enablePlugin();
|
156
|
-
this.unregisterShortcuts();
|
157
152
|
super.updatePlugin();
|
158
153
|
}
|
159
154
|
|
@@ -169,83 +164,50 @@ class ContextMenu extends _base.BasePlugin {
|
|
169
164
|
super.disablePlugin();
|
170
165
|
}
|
171
166
|
|
172
|
-
/**
|
173
|
-
* Register shortcuts responsible for toggling context menu.
|
174
|
-
*
|
175
|
-
* @private
|
176
|
-
*/
|
177
|
-
registerShortcuts() {
|
178
|
-
this.hot.getShortcutManager().getContext('grid').addShortcut({
|
179
|
-
keys: [['Control/Meta', 'Shift', '\\'], ['Shift', 'F10']],
|
180
|
-
callback: () => {
|
181
|
-
const {
|
182
|
-
highlight
|
183
|
-
} = this.hot.getSelectedRangeLast();
|
184
|
-
this.hot.scrollToFocusedCell();
|
185
|
-
const rect = this.hot.getCell(highlight.row, highlight.col, true).getBoundingClientRect();
|
186
|
-
const offset = (0, _utils.getDocumentOffsetByElement)(this.menu.container, this.hot.rootDocument);
|
187
|
-
this.open({
|
188
|
-
left: rect.left + offset.left,
|
189
|
-
top: rect.top + offset.top - 1 + rect.height
|
190
|
-
}, {
|
191
|
-
left: rect.width,
|
192
|
-
above: -rect.height
|
193
|
-
});
|
194
|
-
this.hot._registerTimeout(() => {
|
195
|
-
this.menu.selectFirstCell();
|
196
|
-
});
|
197
|
-
},
|
198
|
-
runOnlyIf: () => this.hot.getSelectedRangeLast() && !this.menu.isOpened(),
|
199
|
-
group: SHORTCUTS_GROUP
|
200
|
-
});
|
201
|
-
}
|
202
|
-
|
203
|
-
/**
|
204
|
-
* Unregister shortcuts responsible for toggling context menu.
|
205
|
-
*
|
206
|
-
* @private
|
207
|
-
*/
|
208
|
-
unregisterShortcuts() {
|
209
|
-
this.hot.getShortcutManager().getContext('grid').removeShortcutsByGroup(SHORTCUTS_GROUP);
|
210
|
-
}
|
211
|
-
|
212
167
|
/**
|
213
168
|
* Opens menu and re-position it based on the passed coordinates.
|
214
169
|
*
|
215
|
-
* @param {
|
216
|
-
* which contains coordinates relative to the browsers viewport (without included scroll offsets).
|
217
|
-
* Or if the native event is passed the menu will be positioned based on the `pageX` and `pageY`
|
218
|
-
* coordinates.
|
219
|
-
* @param {{ above: number, below: number, left: number, right: number }} offset An object allows applying
|
220
|
-
* the offset to the menu position.
|
221
|
-
* @fires Hooks#beforeContextMenuShow
|
222
|
-
* @fires Hooks#afterContextMenuShow
|
170
|
+
* @param {Event} event The mouse event object.
|
223
171
|
*/
|
224
|
-
open(
|
225
|
-
|
226
|
-
let offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {
|
227
|
-
above: 0,
|
228
|
-
below: 0,
|
229
|
-
left: 0,
|
230
|
-
right: 0
|
231
|
-
};
|
232
|
-
if ((_this$menu = this.menu) !== null && _this$menu !== void 0 && _this$menu.isOpened()) {
|
172
|
+
open(event) {
|
173
|
+
if (!this.menu) {
|
233
174
|
return;
|
234
175
|
}
|
235
176
|
this.prepareMenuItems();
|
236
177
|
this.menu.open();
|
237
|
-
(
|
238
|
-
|
178
|
+
if (!this.menu.isOpened()) {
|
179
|
+
return;
|
180
|
+
}
|
181
|
+
let offsetTop = 0;
|
182
|
+
let offsetLeft = 0;
|
183
|
+
if (this.hot.rootDocument !== this.menu.container.ownerDocument) {
|
184
|
+
const {
|
185
|
+
frameElement
|
186
|
+
} = this.hot.rootWindow;
|
187
|
+
const {
|
188
|
+
top,
|
189
|
+
left
|
190
|
+
} = frameElement.getBoundingClientRect();
|
191
|
+
offsetTop = top - (0, _element.getWindowScrollTop)(event.view);
|
192
|
+
offsetLeft = left - (0, _element.getWindowScrollLeft)(event.view);
|
193
|
+
} else {
|
194
|
+
offsetTop = -1 * (0, _element.getWindowScrollTop)(this.menu.hotMenu.rootWindow);
|
195
|
+
offsetLeft = -1 * (0, _element.getWindowScrollLeft)(this.menu.hotMenu.rootWindow);
|
196
|
+
}
|
197
|
+
this.menu.setPosition({
|
198
|
+
top: parseInt(event.pageY, 10) + offsetTop,
|
199
|
+
left: parseInt(event.pageX, 10) + offsetLeft
|
239
200
|
});
|
240
|
-
this.menu.setPosition(position);
|
241
201
|
}
|
242
202
|
|
243
203
|
/**
|
244
204
|
* Closes the menu.
|
245
205
|
*/
|
246
206
|
close() {
|
247
|
-
|
248
|
-
|
207
|
+
if (!this.menu) {
|
208
|
+
return;
|
209
|
+
}
|
210
|
+
this.menu.close();
|
249
211
|
this.itemsFactory = null;
|
250
212
|
}
|
251
213
|
|
@@ -343,11 +305,7 @@ class ContextMenu extends _base.BasePlugin {
|
|
343
305
|
return;
|
344
306
|
}
|
345
307
|
}
|
346
|
-
|
347
|
-
this.open({
|
348
|
-
top: event.clientY + offset.top,
|
349
|
-
left: event.clientX + offset.left
|
350
|
-
});
|
308
|
+
this.open(event);
|
351
309
|
}
|
352
310
|
|
353
311
|
/**
|
@@ -1,17 +1,14 @@
|
|
1
1
|
import { BasePlugin } from "../base/index.mjs";
|
2
2
|
import Hooks from "../../pluginHooks.mjs";
|
3
3
|
import { arrayEach } from "../../helpers/array.mjs";
|
4
|
-
import { objectEach } from "../../helpers/object.mjs";
|
5
4
|
import CommandExecutor from "./commandExecutor.mjs";
|
6
5
|
import EventManager from "../../eventManager.mjs";
|
7
6
|
import ItemsFactory from "./itemsFactory.mjs";
|
8
7
|
import Menu from "./menu.mjs";
|
9
|
-
import {
|
10
|
-
import { hasClass } from "../../helpers/dom/element.mjs";
|
8
|
+
import { getWindowScrollLeft, getWindowScrollTop, hasClass } from "../../helpers/dom/element.mjs";
|
11
9
|
import { ROW_ABOVE, ROW_BELOW, COLUMN_LEFT, COLUMN_RIGHT, REMOVE_ROW, REMOVE_COLUMN, UNDO, REDO, READ_ONLY, ALIGNMENT, SEPARATOR } from "./predefinedItems.mjs";
|
12
10
|
export const PLUGIN_KEY = 'contextMenu';
|
13
11
|
export const PLUGIN_PRIORITY = 70;
|
14
|
-
const SHORTCUTS_GROUP = PLUGIN_KEY;
|
15
12
|
Hooks.getSingleton().register('afterContextMenuDefaultOptions');
|
16
13
|
Hooks.getSingleton().register('beforeContextMenuShow');
|
17
14
|
Hooks.getSingleton().register('afterContextMenuShow');
|
@@ -134,7 +131,6 @@ export class ContextMenu extends BasePlugin {
|
|
134
131
|
return _this.executeCommand.call(_this, ...params);
|
135
132
|
});
|
136
133
|
this.addHook('afterOnCellContextMenu', event => this.onAfterOnCellContextMenu(event));
|
137
|
-
this.registerShortcuts();
|
138
134
|
super.enablePlugin();
|
139
135
|
}
|
140
136
|
|
@@ -147,7 +143,6 @@ export class ContextMenu extends BasePlugin {
|
|
147
143
|
updatePlugin() {
|
148
144
|
this.disablePlugin();
|
149
145
|
this.enablePlugin();
|
150
|
-
this.unregisterShortcuts();
|
151
146
|
super.updatePlugin();
|
152
147
|
}
|
153
148
|
|
@@ -163,83 +158,50 @@ export class ContextMenu extends BasePlugin {
|
|
163
158
|
super.disablePlugin();
|
164
159
|
}
|
165
160
|
|
166
|
-
/**
|
167
|
-
* Register shortcuts responsible for toggling context menu.
|
168
|
-
*
|
169
|
-
* @private
|
170
|
-
*/
|
171
|
-
registerShortcuts() {
|
172
|
-
this.hot.getShortcutManager().getContext('grid').addShortcut({
|
173
|
-
keys: [['Control/Meta', 'Shift', '\\'], ['Shift', 'F10']],
|
174
|
-
callback: () => {
|
175
|
-
const {
|
176
|
-
highlight
|
177
|
-
} = this.hot.getSelectedRangeLast();
|
178
|
-
this.hot.scrollToFocusedCell();
|
179
|
-
const rect = this.hot.getCell(highlight.row, highlight.col, true).getBoundingClientRect();
|
180
|
-
const offset = getDocumentOffsetByElement(this.menu.container, this.hot.rootDocument);
|
181
|
-
this.open({
|
182
|
-
left: rect.left + offset.left,
|
183
|
-
top: rect.top + offset.top - 1 + rect.height
|
184
|
-
}, {
|
185
|
-
left: rect.width,
|
186
|
-
above: -rect.height
|
187
|
-
});
|
188
|
-
this.hot._registerTimeout(() => {
|
189
|
-
this.menu.selectFirstCell();
|
190
|
-
});
|
191
|
-
},
|
192
|
-
runOnlyIf: () => this.hot.getSelectedRangeLast() && !this.menu.isOpened(),
|
193
|
-
group: SHORTCUTS_GROUP
|
194
|
-
});
|
195
|
-
}
|
196
|
-
|
197
|
-
/**
|
198
|
-
* Unregister shortcuts responsible for toggling context menu.
|
199
|
-
*
|
200
|
-
* @private
|
201
|
-
*/
|
202
|
-
unregisterShortcuts() {
|
203
|
-
this.hot.getShortcutManager().getContext('grid').removeShortcutsByGroup(SHORTCUTS_GROUP);
|
204
|
-
}
|
205
|
-
|
206
161
|
/**
|
207
162
|
* Opens menu and re-position it based on the passed coordinates.
|
208
163
|
*
|
209
|
-
* @param {
|
210
|
-
* which contains coordinates relative to the browsers viewport (without included scroll offsets).
|
211
|
-
* Or if the native event is passed the menu will be positioned based on the `pageX` and `pageY`
|
212
|
-
* coordinates.
|
213
|
-
* @param {{ above: number, below: number, left: number, right: number }} offset An object allows applying
|
214
|
-
* the offset to the menu position.
|
215
|
-
* @fires Hooks#beforeContextMenuShow
|
216
|
-
* @fires Hooks#afterContextMenuShow
|
164
|
+
* @param {Event} event The mouse event object.
|
217
165
|
*/
|
218
|
-
open(
|
219
|
-
|
220
|
-
let offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {
|
221
|
-
above: 0,
|
222
|
-
below: 0,
|
223
|
-
left: 0,
|
224
|
-
right: 0
|
225
|
-
};
|
226
|
-
if ((_this$menu = this.menu) !== null && _this$menu !== void 0 && _this$menu.isOpened()) {
|
166
|
+
open(event) {
|
167
|
+
if (!this.menu) {
|
227
168
|
return;
|
228
169
|
}
|
229
170
|
this.prepareMenuItems();
|
230
171
|
this.menu.open();
|
231
|
-
|
232
|
-
|
172
|
+
if (!this.menu.isOpened()) {
|
173
|
+
return;
|
174
|
+
}
|
175
|
+
let offsetTop = 0;
|
176
|
+
let offsetLeft = 0;
|
177
|
+
if (this.hot.rootDocument !== this.menu.container.ownerDocument) {
|
178
|
+
const {
|
179
|
+
frameElement
|
180
|
+
} = this.hot.rootWindow;
|
181
|
+
const {
|
182
|
+
top,
|
183
|
+
left
|
184
|
+
} = frameElement.getBoundingClientRect();
|
185
|
+
offsetTop = top - getWindowScrollTop(event.view);
|
186
|
+
offsetLeft = left - getWindowScrollLeft(event.view);
|
187
|
+
} else {
|
188
|
+
offsetTop = -1 * getWindowScrollTop(this.menu.hotMenu.rootWindow);
|
189
|
+
offsetLeft = -1 * getWindowScrollLeft(this.menu.hotMenu.rootWindow);
|
190
|
+
}
|
191
|
+
this.menu.setPosition({
|
192
|
+
top: parseInt(event.pageY, 10) + offsetTop,
|
193
|
+
left: parseInt(event.pageX, 10) + offsetLeft
|
233
194
|
});
|
234
|
-
this.menu.setPosition(position);
|
235
195
|
}
|
236
196
|
|
237
197
|
/**
|
238
198
|
* Closes the menu.
|
239
199
|
*/
|
240
200
|
close() {
|
241
|
-
|
242
|
-
|
201
|
+
if (!this.menu) {
|
202
|
+
return;
|
203
|
+
}
|
204
|
+
this.menu.close();
|
243
205
|
this.itemsFactory = null;
|
244
206
|
}
|
245
207
|
|
@@ -337,11 +299,7 @@ export class ContextMenu extends BasePlugin {
|
|
337
299
|
return;
|
338
300
|
}
|
339
301
|
}
|
340
|
-
|
341
|
-
this.open({
|
342
|
-
top: event.clientY + offset.top,
|
343
|
-
left: event.clientX + offset.left
|
344
|
-
});
|
302
|
+
this.open(event);
|
345
303
|
}
|
346
304
|
|
347
305
|
/**
|
@@ -23,13 +23,6 @@ function alignmentItem() {
|
|
23
23
|
if (this.countRows() === 0 || this.countCols() === 0) {
|
24
24
|
return true;
|
25
25
|
}
|
26
|
-
const range = this.getSelectedRangeLast();
|
27
|
-
if (!range) {
|
28
|
-
return true;
|
29
|
-
}
|
30
|
-
if (range.isSingleHeader()) {
|
31
|
-
return true;
|
32
|
-
}
|
33
26
|
return !(this.getSelectedRange() && !this.selection.isSelectedByCorner());
|
34
27
|
},
|
35
28
|
submenu: {
|
@@ -16,13 +16,6 @@ export default function alignmentItem() {
|
|
16
16
|
if (this.countRows() === 0 || this.countCols() === 0) {
|
17
17
|
return true;
|
18
18
|
}
|
19
|
-
const range = this.getSelectedRangeLast();
|
20
|
-
if (!range) {
|
21
|
-
return true;
|
22
|
-
}
|
23
|
-
if (range.isSingleHeader()) {
|
24
|
-
return true;
|
25
|
-
}
|
26
19
|
return !(this.getSelectedRange() && !this.selection.isSelectedByCorner());
|
27
20
|
},
|
28
21
|
submenu: {
|
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.default = clearColumnItem;
|
5
|
+
var _utils = require("../utils");
|
5
6
|
var C = _interopRequireWildcard(require("../../../i18n/constants"));
|
6
7
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
7
8
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
@@ -25,11 +26,8 @@ function clearColumnItem() {
|
|
25
26
|
}
|
26
27
|
},
|
27
28
|
disabled() {
|
28
|
-
const
|
29
|
-
if (!
|
30
|
-
return true;
|
31
|
-
}
|
32
|
-
if (range.isSingleHeader() && range.highlight.col < 0) {
|
29
|
+
const selected = (0, _utils.getValidSelection)(this);
|
30
|
+
if (!selected) {
|
33
31
|
return true;
|
34
32
|
}
|
35
33
|
return !this.selection.isSelectedByColumnHeader();
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { getValidSelection } from "../utils.mjs";
|
1
2
|
import * as C from "../../../i18n/constants.mjs";
|
2
3
|
export const KEY = 'clear_column';
|
3
4
|
|
@@ -18,11 +19,8 @@ export default function clearColumnItem() {
|
|
18
19
|
}
|
19
20
|
},
|
20
21
|
disabled() {
|
21
|
-
const
|
22
|
-
if (!
|
23
|
-
return true;
|
24
|
-
}
|
25
|
-
if (range.isSingleHeader() && range.highlight.col < 0) {
|
22
|
+
const selected = getValidSelection(this);
|
23
|
+
if (!selected) {
|
26
24
|
return true;
|
27
25
|
}
|
28
26
|
return !this.selection.isSelectedByColumnHeader();
|
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.default = columnLeftItem;
|
5
|
+
var _utils = require("../utils");
|
5
6
|
var C = _interopRequireWildcard(require("../../../i18n/constants"));
|
6
7
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
7
8
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
@@ -26,11 +27,8 @@ function columnLeftItem() {
|
|
26
27
|
if (!this.isColumnModificationAllowed()) {
|
27
28
|
return true;
|
28
29
|
}
|
29
|
-
const
|
30
|
-
if (!
|
31
|
-
return true;
|
32
|
-
}
|
33
|
-
if (range.isSingleHeader() && range.highlight.col < 0) {
|
30
|
+
const selected = (0, _utils.getValidSelection)(this);
|
31
|
+
if (!selected) {
|
34
32
|
return true;
|
35
33
|
}
|
36
34
|
if (this.selection.isSelectedByCorner()) {
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { getValidSelection } from "../utils.mjs";
|
1
2
|
import * as C from "../../../i18n/constants.mjs";
|
2
3
|
export const KEY = 'col_left';
|
3
4
|
|
@@ -19,11 +20,8 @@ export default function columnLeftItem() {
|
|
19
20
|
if (!this.isColumnModificationAllowed()) {
|
20
21
|
return true;
|
21
22
|
}
|
22
|
-
const
|
23
|
-
if (!
|
24
|
-
return true;
|
25
|
-
}
|
26
|
-
if (range.isSingleHeader() && range.highlight.col < 0) {
|
23
|
+
const selected = getValidSelection(this);
|
24
|
+
if (!selected) {
|
27
25
|
return true;
|
28
26
|
}
|
29
27
|
if (this.selection.isSelectedByCorner()) {
|
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.default = columnRightItem;
|
5
|
+
var _utils = require("../utils");
|
5
6
|
var C = _interopRequireWildcard(require("../../../i18n/constants"));
|
6
7
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
7
8
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
@@ -26,11 +27,8 @@ function columnRightItem() {
|
|
26
27
|
if (!this.isColumnModificationAllowed()) {
|
27
28
|
return true;
|
28
29
|
}
|
29
|
-
const
|
30
|
-
if (!
|
31
|
-
return true;
|
32
|
-
}
|
33
|
-
if (range.isSingleHeader() && range.highlight.col < 0) {
|
30
|
+
const selected = (0, _utils.getValidSelection)(this);
|
31
|
+
if (!selected) {
|
34
32
|
return true;
|
35
33
|
}
|
36
34
|
if (this.selection.isSelectedByCorner()) {
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { getValidSelection } from "../utils.mjs";
|
1
2
|
import * as C from "../../../i18n/constants.mjs";
|
2
3
|
export const KEY = 'col_right';
|
3
4
|
|
@@ -19,11 +20,8 @@ export default function columnRightItem() {
|
|
19
20
|
if (!this.isColumnModificationAllowed()) {
|
20
21
|
return true;
|
21
22
|
}
|
22
|
-
const
|
23
|
-
if (!
|
24
|
-
return true;
|
25
|
-
}
|
26
|
-
if (range.isSingleHeader() && range.highlight.col < 0) {
|
23
|
+
const selected = getValidSelection(this);
|
24
|
+
if (!selected) {
|
27
25
|
return true;
|
28
26
|
}
|
29
27
|
if (this.selection.isSelectedByCorner()) {
|
@@ -37,13 +37,6 @@ function readOnlyItem() {
|
|
37
37
|
this.render();
|
38
38
|
},
|
39
39
|
disabled() {
|
40
|
-
const range = this.getSelectedRangeLast();
|
41
|
-
if (!range) {
|
42
|
-
return true;
|
43
|
-
}
|
44
|
-
if (range.isSingleHeader()) {
|
45
|
-
return true;
|
46
|
-
}
|
47
40
|
if (this.selection.isSelectedByCorner()) {
|
48
41
|
return true;
|
49
42
|
}
|
@@ -30,13 +30,6 @@ export default function readOnlyItem() {
|
|
30
30
|
this.render();
|
31
31
|
},
|
32
32
|
disabled() {
|
33
|
-
const range = this.getSelectedRangeLast();
|
34
|
-
if (!range) {
|
35
|
-
return true;
|
36
|
-
}
|
37
|
-
if (range.isSingleHeader()) {
|
38
|
-
return true;
|
39
|
-
}
|
40
33
|
if (this.selection.isSelectedByCorner()) {
|
41
34
|
return true;
|
42
35
|
}
|
@@ -2,7 +2,8 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.default = removeColumnItem;
|
5
|
-
var _utils = require("
|
5
|
+
var _utils = require("../utils");
|
6
|
+
var _utils2 = require("../../../selection/utils");
|
6
7
|
var C = _interopRequireWildcard(require("../../../i18n/constants"));
|
7
8
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
8
9
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
@@ -31,17 +32,14 @@ function removeColumnItem() {
|
|
31
32
|
return this.getTranslatedPhrase(C.CONTEXTMENU_ITEMS_REMOVE_COLUMN, pluralForm);
|
32
33
|
},
|
33
34
|
callback() {
|
34
|
-
this.alter('remove_col', (0,
|
35
|
+
this.alter('remove_col', (0, _utils2.transformSelectionToColumnDistance)(this.getSelected()), null, 'ContextMenu.removeColumn');
|
35
36
|
},
|
36
37
|
disabled() {
|
37
38
|
if (!this.isColumnModificationAllowed()) {
|
38
39
|
return true;
|
39
40
|
}
|
40
|
-
const
|
41
|
-
if (!
|
42
|
-
return true;
|
43
|
-
}
|
44
|
-
if (range.isSingleHeader() && range.highlight.col < 0) {
|
41
|
+
const selected = (0, _utils.getValidSelection)(this);
|
42
|
+
if (!selected) {
|
45
43
|
return true;
|
46
44
|
}
|
47
45
|
const totalColumns = this.countCols();
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { getValidSelection } from "../utils.mjs";
|
1
2
|
import { transformSelectionToColumnDistance } from "../../../selection/utils.mjs";
|
2
3
|
import * as C from "../../../i18n/constants.mjs";
|
3
4
|
export const KEY = 'remove_col';
|
@@ -30,11 +31,8 @@ export default function removeColumnItem() {
|
|
30
31
|
if (!this.isColumnModificationAllowed()) {
|
31
32
|
return true;
|
32
33
|
}
|
33
|
-
const
|
34
|
-
if (!
|
35
|
-
return true;
|
36
|
-
}
|
37
|
-
if (range.isSingleHeader() && range.highlight.col < 0) {
|
34
|
+
const selected = getValidSelection(this);
|
35
|
+
if (!selected) {
|
38
36
|
return true;
|
39
37
|
}
|
40
38
|
const totalColumns = this.countCols();
|
@@ -2,7 +2,8 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.default = removeRowItem;
|
5
|
-
var _utils = require("
|
5
|
+
var _utils = require("../utils");
|
6
|
+
var _utils2 = require("../../../selection/utils");
|
6
7
|
var C = _interopRequireWildcard(require("../../../i18n/constants"));
|
7
8
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
8
9
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
@@ -33,14 +34,11 @@ function removeRowItem() {
|
|
33
34
|
callback() {
|
34
35
|
// TODO: Please keep in mind that below `1` may be improper. The table's way of work, before change `f1747b3912ea3b21fe423fd102ca94c87db81379` was restored.
|
35
36
|
// There is still problem when removing more than one row.
|
36
|
-
this.alter('remove_row', (0,
|
37
|
+
this.alter('remove_row', (0, _utils2.transformSelectionToRowDistance)(this.getSelected()), 1, 'ContextMenu.removeRow');
|
37
38
|
},
|
38
39
|
disabled() {
|
39
|
-
const
|
40
|
-
if (!
|
41
|
-
return true;
|
42
|
-
}
|
43
|
-
if (range.isSingleHeader() && range.highlight.row < 0) {
|
40
|
+
const selected = (0, _utils.getValidSelection)(this);
|
41
|
+
if (!selected) {
|
44
42
|
return true;
|
45
43
|
}
|
46
44
|
const totalRows = this.countRows();
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { getValidSelection } from "../utils.mjs";
|
1
2
|
import { transformSelectionToRowDistance } from "../../../selection/utils.mjs";
|
2
3
|
import * as C from "../../../i18n/constants.mjs";
|
3
4
|
export const KEY = 'remove_row';
|
@@ -29,11 +30,8 @@ export default function removeRowItem() {
|
|
29
30
|
this.alter('remove_row', transformSelectionToRowDistance(this.getSelected()), 1, 'ContextMenu.removeRow');
|
30
31
|
},
|
31
32
|
disabled() {
|
32
|
-
const
|
33
|
-
if (!
|
34
|
-
return true;
|
35
|
-
}
|
36
|
-
if (range.isSingleHeader() && range.highlight.row < 0) {
|
33
|
+
const selected = getValidSelection(this);
|
34
|
+
if (!selected) {
|
37
35
|
return true;
|
38
36
|
}
|
39
37
|
const totalRows = this.countRows();
|
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.default = rowAboveItem;
|
5
|
+
var _utils = require("../utils");
|
5
6
|
var C = _interopRequireWildcard(require("../../../i18n/constants"));
|
6
7
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
7
8
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
@@ -22,11 +23,8 @@ function rowAboveItem() {
|
|
22
23
|
this.alter('insert_row_above', latestSelection.row, 1, 'ContextMenu.rowAbove');
|
23
24
|
},
|
24
25
|
disabled() {
|
25
|
-
const
|
26
|
-
if (!
|
27
|
-
return true;
|
28
|
-
}
|
29
|
-
if (range.isSingleHeader() && range.highlight.row < 0) {
|
26
|
+
const selected = (0, _utils.getValidSelection)(this);
|
27
|
+
if (!selected) {
|
30
28
|
return true;
|
31
29
|
}
|
32
30
|
if (this.selection.isSelectedByCorner()) {
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { getValidSelection } from "../utils.mjs";
|
1
2
|
import * as C from "../../../i18n/constants.mjs";
|
2
3
|
export const KEY = 'row_above';
|
3
4
|
|
@@ -15,11 +16,8 @@ export default function rowAboveItem() {
|
|
15
16
|
this.alter('insert_row_above', latestSelection.row, 1, 'ContextMenu.rowAbove');
|
16
17
|
},
|
17
18
|
disabled() {
|
18
|
-
const
|
19
|
-
if (!
|
20
|
-
return true;
|
21
|
-
}
|
22
|
-
if (range.isSingleHeader() && range.highlight.row < 0) {
|
19
|
+
const selected = getValidSelection(this);
|
20
|
+
if (!selected) {
|
23
21
|
return true;
|
24
22
|
}
|
25
23
|
if (this.selection.isSelectedByCorner()) {
|