handsontable 0.0.0-next-be250b6-20230621 → 0.0.0-next-dcd0acc-20230621

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of handsontable might be problematic. Click here for more details.

Files changed (237) hide show
  1. package/3rdparty/walkontable/src/{selection/border/border.js → border.js} +12 -7
  2. package/3rdparty/walkontable/src/{selection/border/border.mjs → border.mjs} +12 -7
  3. package/3rdparty/walkontable/src/cell/coords.d.ts +1 -6
  4. package/3rdparty/walkontable/src/cell/coords.js +12 -61
  5. package/3rdparty/walkontable/src/cell/coords.mjs +12 -61
  6. package/3rdparty/walkontable/src/cell/range.d.ts +2 -9
  7. package/3rdparty/walkontable/src/cell/range.js +7 -44
  8. package/3rdparty/walkontable/src/cell/range.mjs +7 -44
  9. package/3rdparty/walkontable/src/core/_base.js +3 -9
  10. package/3rdparty/walkontable/src/core/_base.mjs +3 -9
  11. package/3rdparty/walkontable/src/core/clone.js +2 -2
  12. package/3rdparty/walkontable/src/core/clone.mjs +2 -2
  13. package/3rdparty/walkontable/src/core/core.js +2 -3
  14. package/3rdparty/walkontable/src/core/core.mjs +2 -3
  15. package/3rdparty/walkontable/src/event.js +7 -7
  16. package/3rdparty/walkontable/src/event.mjs +7 -7
  17. package/3rdparty/walkontable/src/facade/core.js +2 -2
  18. package/3rdparty/walkontable/src/facade/core.mjs +2 -2
  19. package/3rdparty/walkontable/src/index.js +2 -10
  20. package/3rdparty/walkontable/src/index.mjs +2 -2
  21. package/3rdparty/walkontable/src/overlay/_base.js +1 -1
  22. package/3rdparty/walkontable/src/overlay/_base.mjs +1 -1
  23. package/3rdparty/walkontable/src/overlay/inlineStart.js +4 -2
  24. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +4 -2
  25. package/3rdparty/walkontable/src/overlay/top.js +4 -2
  26. package/3rdparty/walkontable/src/overlay/top.mjs +4 -2
  27. package/3rdparty/walkontable/src/selection.js +355 -0
  28. package/3rdparty/walkontable/src/selection.mjs +349 -0
  29. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +0 -9
  30. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +0 -9
  31. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +0 -9
  32. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +0 -9
  33. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +0 -9
  34. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +0 -9
  35. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +0 -9
  36. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +0 -9
  37. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +0 -9
  38. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +0 -9
  39. package/3rdparty/walkontable/src/table.js +79 -7
  40. package/3rdparty/walkontable/src/table.mjs +80 -8
  41. package/base.js +2 -2
  42. package/base.mjs +2 -2
  43. package/core.d.ts +3 -5
  44. package/core.js +309 -127
  45. package/core.mjs +309 -127
  46. package/dataMap/metaManager/metaSchema.js +0 -19
  47. package/dataMap/metaManager/metaSchema.mjs +0 -19
  48. package/dist/handsontable.css +3 -8
  49. package/dist/handsontable.full.css +3 -8
  50. package/dist/handsontable.full.js +9113 -11930
  51. package/dist/handsontable.full.min.css +3 -3
  52. package/dist/handsontable.full.min.js +107 -107
  53. package/dist/handsontable.js +12329 -15146
  54. package/dist/handsontable.min.css +3 -3
  55. package/dist/handsontable.min.js +4 -4
  56. package/editorManager.js +94 -21
  57. package/editorManager.mjs +98 -26
  58. package/editors/textEditor/textEditor.js +11 -3
  59. package/editors/textEditor/textEditor.mjs +12 -4
  60. package/helpers/mixed.js +1 -1
  61. package/helpers/mixed.mjs +1 -1
  62. package/helpers/number.d.ts +0 -1
  63. package/helpers/number.js +0 -18
  64. package/helpers/number.mjs +0 -17
  65. package/package.json +1 -1
  66. package/pluginHooks.d.ts +1 -5
  67. package/pluginHooks.js +1 -89
  68. package/pluginHooks.mjs +1 -89
  69. package/plugins/collapsibleColumns/collapsibleColumns.js +24 -81
  70. package/plugins/collapsibleColumns/collapsibleColumns.mjs +24 -81
  71. package/plugins/columnSorting/columnSorting.js +8 -50
  72. package/plugins/columnSorting/columnSorting.mjs +9 -49
  73. package/plugins/columnSorting/index.js +2 -4
  74. package/plugins/columnSorting/index.mjs +1 -1
  75. package/plugins/copyPaste/copyPaste.js +1 -5
  76. package/plugins/copyPaste/copyPaste.mjs +1 -5
  77. package/plugins/customBorders/customBorders.js +53 -18
  78. package/plugins/customBorders/customBorders.mjs +54 -19
  79. package/plugins/mergeCells/mergeCells.js +18 -5
  80. package/plugins/mergeCells/mergeCells.mjs +18 -5
  81. package/plugins/multiColumnSorting/multiColumnSorting.js +3 -42
  82. package/plugins/multiColumnSorting/multiColumnSorting.mjs +3 -42
  83. package/plugins/nestedHeaders/nestedHeaders.js +10 -132
  84. package/plugins/nestedHeaders/nestedHeaders.mjs +10 -132
  85. package/plugins/nestedHeaders/stateManager/index.js +0 -37
  86. package/plugins/nestedHeaders/stateManager/index.mjs +0 -37
  87. package/plugins/nestedRows/nestedRows.js +7 -52
  88. package/plugins/nestedRows/nestedRows.mjs +7 -52
  89. package/renderers/checkboxRenderer/checkboxRenderer.js +2 -2
  90. package/renderers/checkboxRenderer/checkboxRenderer.mjs +1 -1
  91. package/selection/highlight/constants.js +16 -0
  92. package/selection/highlight/constants.mjs +6 -0
  93. package/selection/highlight/highlight.js +89 -312
  94. package/selection/highlight/highlight.mjs +85 -302
  95. package/selection/highlight/types/activeHeader.js +9 -10
  96. package/selection/highlight/types/activeHeader.mjs +8 -10
  97. package/selection/highlight/types/area.js +27 -12
  98. package/selection/highlight/types/area.mjs +30 -16
  99. package/selection/highlight/types/{focus.js → cell.js} +8 -5
  100. package/selection/highlight/types/{focus.mjs → cell.mjs} +7 -5
  101. package/selection/highlight/types/customSelection.js +10 -7
  102. package/selection/highlight/types/customSelection.mjs +9 -7
  103. package/selection/highlight/types/fill.js +8 -5
  104. package/selection/highlight/types/fill.mjs +7 -5
  105. package/selection/highlight/types/header.js +20 -10
  106. package/selection/highlight/types/header.mjs +19 -10
  107. package/selection/highlight/types/{row.js → index.js} +31 -27
  108. package/selection/highlight/types/{row.mjs → index.mjs} +29 -24
  109. package/selection/highlight/visualSelection.js +27 -31
  110. package/selection/highlight/visualSelection.mjs +27 -31
  111. package/selection/index.js +7 -4
  112. package/selection/index.mjs +3 -2
  113. package/selection/mouseEventHandler.js +1 -1
  114. package/selection/mouseEventHandler.mjs +1 -1
  115. package/selection/range.js +8 -8
  116. package/selection/range.mjs +8 -8
  117. package/selection/selection.js +181 -315
  118. package/selection/selection.mjs +180 -310
  119. package/selection/transformation.js +96 -233
  120. package/selection/transformation.mjs +93 -230
  121. package/selection/utils.js +36 -12
  122. package/selection/utils.mjs +36 -13
  123. package/settings.d.ts +0 -1
  124. package/shortcuts/manager.js +0 -2
  125. package/shortcuts/manager.mjs +0 -2
  126. package/tableView.js +9 -58
  127. package/tableView.mjs +9 -58
  128. package/translations/indexMapper.js +9 -8
  129. package/translations/indexMapper.mjs +9 -8
  130. package/3rdparty/walkontable/src/selection/border/constants.js +0 -18
  131. package/3rdparty/walkontable/src/selection/border/constants.mjs +0 -13
  132. package/3rdparty/walkontable/src/selection/constants.js +0 -63
  133. package/3rdparty/walkontable/src/selection/constants.mjs +0 -51
  134. package/3rdparty/walkontable/src/selection/index.js +0 -30
  135. package/3rdparty/walkontable/src/selection/index.mjs +0 -5
  136. package/3rdparty/walkontable/src/selection/manager.js +0 -329
  137. package/3rdparty/walkontable/src/selection/manager.mjs +0 -323
  138. package/3rdparty/walkontable/src/selection/scanner.js +0 -364
  139. package/3rdparty/walkontable/src/selection/scanner.mjs +0 -360
  140. package/3rdparty/walkontable/src/selection/selection.js +0 -133
  141. package/3rdparty/walkontable/src/selection/selection.mjs +0 -127
  142. package/selection/highlight/types/areaLayered.js +0 -54
  143. package/selection/highlight/types/areaLayered.mjs +0 -49
  144. package/selection/highlight/types/column.js +0 -50
  145. package/selection/highlight/types/column.mjs +0 -45
  146. package/shortcutContexts/commands/editor/closeAndSave.js +0 -15
  147. package/shortcutContexts/commands/editor/closeAndSave.mjs +0 -10
  148. package/shortcutContexts/commands/editor/closeWithoutSaving.js +0 -13
  149. package/shortcutContexts/commands/editor/closeWithoutSaving.mjs +0 -8
  150. package/shortcutContexts/commands/editor/fastOpen.js +0 -16
  151. package/shortcutContexts/commands/editor/fastOpen.mjs +0 -11
  152. package/shortcutContexts/commands/editor/index.js +0 -16
  153. package/shortcutContexts/commands/editor/index.mjs +0 -12
  154. package/shortcutContexts/commands/editor/open.js +0 -29
  155. package/shortcutContexts/commands/editor/open.mjs +0 -24
  156. package/shortcutContexts/commands/emptySelectedCells.js +0 -12
  157. package/shortcutContexts/commands/emptySelectedCells.mjs +0 -7
  158. package/shortcutContexts/commands/extendCellsSelection/down.js +0 -15
  159. package/shortcutContexts/commands/extendCellsSelection/down.mjs +0 -10
  160. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.js +0 -21
  161. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.mjs +0 -16
  162. package/shortcutContexts/commands/extendCellsSelection/index.js +0 -26
  163. package/shortcutContexts/commands/extendCellsSelection/index.mjs +0 -22
  164. package/shortcutContexts/commands/extendCellsSelection/left.js +0 -15
  165. package/shortcutContexts/commands/extendCellsSelection/left.mjs +0 -10
  166. package/shortcutContexts/commands/extendCellsSelection/right.js +0 -15
  167. package/shortcutContexts/commands/extendCellsSelection/right.mjs +0 -10
  168. package/shortcutContexts/commands/extendCellsSelection/toColumns.js +0 -19
  169. package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +0 -14
  170. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +0 -22
  171. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +0 -17
  172. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +0 -17
  173. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +0 -12
  174. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +0 -17
  175. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +0 -12
  176. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +0 -40
  177. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +0 -35
  178. package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +0 -40
  179. package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +0 -35
  180. package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +0 -22
  181. package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +0 -17
  182. package/shortcutContexts/commands/extendCellsSelection/toRows.js +0 -19
  183. package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +0 -14
  184. package/shortcutContexts/commands/extendCellsSelection/up.js +0 -15
  185. package/shortcutContexts/commands/extendCellsSelection/up.mjs +0 -10
  186. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.js +0 -21
  187. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.mjs +0 -16
  188. package/shortcutContexts/commands/index.js +0 -53
  189. package/shortcutContexts/commands/index.mjs +0 -49
  190. package/shortcutContexts/commands/moveCellSelection/down.js +0 -12
  191. package/shortcutContexts/commands/moveCellSelection/down.mjs +0 -7
  192. package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.js +0 -29
  193. package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.mjs +0 -24
  194. package/shortcutContexts/commands/moveCellSelection/index.js +0 -28
  195. package/shortcutContexts/commands/moveCellSelection/index.mjs +0 -24
  196. package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +0 -13
  197. package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +0 -8
  198. package/shortcutContexts/commands/moveCellSelection/inlineStart.js +0 -13
  199. package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +0 -8
  200. package/shortcutContexts/commands/moveCellSelection/left.js +0 -11
  201. package/shortcutContexts/commands/moveCellSelection/left.mjs +0 -6
  202. package/shortcutContexts/commands/moveCellSelection/right.js +0 -11
  203. package/shortcutContexts/commands/moveCellSelection/right.mjs +0 -6
  204. package/shortcutContexts/commands/moveCellSelection/toMostBottom.js +0 -16
  205. package/shortcutContexts/commands/moveCellSelection/toMostBottom.mjs +0 -11
  206. package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.js +0 -17
  207. package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.mjs +0 -12
  208. package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.js +0 -13
  209. package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.mjs +0 -8
  210. package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.js +0 -16
  211. package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.mjs +0 -11
  212. package/shortcutContexts/commands/moveCellSelection/toMostLeft.js +0 -36
  213. package/shortcutContexts/commands/moveCellSelection/toMostLeft.mjs +0 -31
  214. package/shortcutContexts/commands/moveCellSelection/toMostRight.js +0 -36
  215. package/shortcutContexts/commands/moveCellSelection/toMostRight.mjs +0 -31
  216. package/shortcutContexts/commands/moveCellSelection/toMostTop.js +0 -16
  217. package/shortcutContexts/commands/moveCellSelection/toMostTop.mjs +0 -11
  218. package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.js +0 -18
  219. package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.mjs +0 -13
  220. package/shortcutContexts/commands/moveCellSelection/up.js +0 -12
  221. package/shortcutContexts/commands/moveCellSelection/up.mjs +0 -7
  222. package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.js +0 -29
  223. package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.mjs +0 -24
  224. package/shortcutContexts/commands/populateSelectedCellsData.js +0 -35
  225. package/shortcutContexts/commands/populateSelectedCellsData.mjs +0 -30
  226. package/shortcutContexts/commands/scrollToFocusedCell.js +0 -38
  227. package/shortcutContexts/commands/scrollToFocusedCell.mjs +0 -33
  228. package/shortcutContexts/commands/selectAll.js +0 -11
  229. package/shortcutContexts/commands/selectAll.mjs +0 -6
  230. package/shortcutContexts/constants.js +0 -19
  231. package/shortcutContexts/constants.mjs +0 -12
  232. package/shortcutContexts/editor.js +0 -29
  233. package/shortcutContexts/editor.mjs +0 -25
  234. package/shortcutContexts/grid.js +0 -252
  235. package/shortcutContexts/grid.mjs +0 -248
  236. package/shortcutContexts/index.js +0 -29
  237. package/shortcutContexts/index.mjs +0 -15
@@ -19,7 +19,7 @@ require("core-js/modules/es.regexp.to-string.js");
19
19
  require("core-js/modules/es.function.name.js");
20
20
  require("core-js/modules/es.regexp.exec.js");
21
21
  exports.__esModule = true;
22
- exports.REPLACE_COLUMN_CONFIG_STRATEGY = exports.PLUGIN_PRIORITY = exports.PLUGIN_KEY = exports.ColumnSorting = exports.APPEND_COLUMN_CONFIG_STRATEGY = void 0;
22
+ exports.PLUGIN_PRIORITY = exports.PLUGIN_KEY = exports.ColumnSorting = void 0;
23
23
  require("core-js/modules/es.array.sort.js");
24
24
  require("core-js/modules/es.array.slice.js");
25
25
  require("core-js/modules/es.object.to-string.js");
@@ -79,10 +79,7 @@ exports.PLUGIN_KEY = PLUGIN_KEY;
79
79
  var PLUGIN_PRIORITY = 50;
80
80
  exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
81
81
  var APPEND_COLUMN_CONFIG_STRATEGY = 'append';
82
- exports.APPEND_COLUMN_CONFIG_STRATEGY = APPEND_COLUMN_CONFIG_STRATEGY;
83
82
  var REPLACE_COLUMN_CONFIG_STRATEGY = 'replace';
84
- exports.REPLACE_COLUMN_CONFIG_STRATEGY = REPLACE_COLUMN_CONFIG_STRATEGY;
85
- var SHORTCUTS_GROUP = PLUGIN_KEY;
86
83
  (0, _sortService.registerRootComparator)(PLUGIN_KEY, _rootComparator.rootComparator);
87
84
  _pluginHooks.default.getSingleton().register('beforeColumnSort');
88
85
  _pluginHooks.default.getSingleton().register('afterColumnSort');
@@ -226,7 +223,6 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
226
223
  if (this.hot.view) {
227
224
  this.loadOrSortBySettings();
228
225
  }
229
- this.registerShortcuts();
230
226
  _get(_getPrototypeOf(ColumnSorting.prototype), "enablePlugin", this).call(this);
231
227
  }
232
228
 
@@ -260,47 +256,9 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
260
256
  this.columnStatesManager.destroy();
261
257
  this.columnMetaCache = null;
262
258
  this.columnStatesManager = null;
263
- this.unregisterShortcuts();
264
259
  _get(_getPrototypeOf(ColumnSorting.prototype), "disablePlugin", this).call(this);
265
260
  }
266
261
 
267
- /**
268
- * Register shortcuts responsible for toggling column sorting functionality.
269
- *
270
- * @private
271
- */
272
- }, {
273
- key: "registerShortcuts",
274
- value: function registerShortcuts() {
275
- var _this4 = this;
276
- this.hot.getShortcutManager().getContext('grid').addShortcut({
277
- keys: [['Enter']],
278
- callback: function callback() {
279
- var _this4$hot$getSelecte = _this4.hot.getSelectedRangeLast(),
280
- highlight = _this4$hot$getSelecte.highlight;
281
- if (highlight.row === -1 && highlight.col >= 0) {
282
- _this4.sort(_this4.getColumnNextConfig(highlight.col));
283
- }
284
- },
285
- runOnlyIf: function runOnlyIf() {
286
- var _this4$hot$getSelecte2;
287
- return (_this4$hot$getSelecte2 = _this4.hot.getSelectedRangeLast()) === null || _this4$hot$getSelecte2 === void 0 ? void 0 : _this4$hot$getSelecte2.highlight.isHeader();
288
- },
289
- group: SHORTCUTS_GROUP
290
- });
291
- }
292
-
293
- /**
294
- * Unregister shortcuts responsible for toggling column sorting functionality.
295
- *
296
- * @private
297
- */
298
- }, {
299
- key: "unregisterShortcuts",
300
- value: function unregisterShortcuts() {
301
- this.hot.getShortcutManager().getContext('grid').removeShortcutsByGroup(SHORTCUTS_GROUP);
302
- }
303
-
304
262
  // DIFF - MultiColumnSorting & ColumnSorting: changed function documentation.
305
263
  /**
306
264
  * Sorts the table by chosen columns and orders.
@@ -470,13 +428,13 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
470
428
  }, {
471
429
  key: "saveAllSortSettings",
472
430
  value: function saveAllSortSettings(sortConfigs) {
473
- var _this5 = this;
431
+ var _this4 = this;
474
432
  var allSortSettings = this.columnStatesManager.getAllColumnsProperties();
475
433
  var translateColumnToPhysical = function translateColumnToPhysical(_ref2) {
476
434
  var visualColumn = _ref2.column,
477
435
  restOfProperties = _objectWithoutProperties(_ref2, _excluded);
478
436
  return _objectSpread({
479
- column: _this5.hot.toPhysicalColumn(visualColumn)
437
+ column: _this4.hot.toPhysicalColumn(visualColumn)
480
438
  }, restOfProperties);
481
439
  };
482
440
  allSortSettings.initialConfig = (0, _array.arrayMap)(sortConfigs, translateColumnToPhysical);
@@ -494,7 +452,7 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
494
452
  }, {
495
453
  key: "getAllSavedSortSettings",
496
454
  value: function getAllSavedSortSettings() {
497
- var _this6 = this;
455
+ var _this5 = this;
498
456
  var storedAllSortSettings = {};
499
457
  this.hot.runHooks('persistentStateLoad', 'columnSorting', storedAllSortSettings);
500
458
  var allSortSettings = storedAllSortSettings.value;
@@ -502,7 +460,7 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
502
460
  var physicalColumn = _ref3.column,
503
461
  restOfProperties = _objectWithoutProperties(_ref3, _excluded2);
504
462
  return _objectSpread({
505
- column: _this6.hot.toVisualColumn(physicalColumn)
463
+ column: _this5.hot.toVisualColumn(physicalColumn)
506
464
  }, restOfProperties);
507
465
  };
508
466
  if ((0, _mixed.isDefined)(allSortSettings) && Array.isArray(allSortSettings.initialConfig)) {
@@ -667,7 +625,7 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
667
625
  }, {
668
626
  key: "sortByPresetSortStates",
669
627
  value: function sortByPresetSortStates(sortConfigs) {
670
- var _this7 = this;
628
+ var _this6 = this;
671
629
  if (sortConfigs.length === 0) {
672
630
  this.hot.rowIndexMapper.setIndexesSequence(this.indexesSequenceCache.getValues());
673
631
  return;
@@ -676,7 +634,7 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
676
634
  var numberOfRows = this.hot.countRows();
677
635
  var getDataForSortedColumns = function getDataForSortedColumns(visualRowIndex) {
678
636
  return (0, _array.arrayMap)(sortConfigs, function (sortConfig) {
679
- return _this7.hot.getDataAtCell(visualRowIndex, sortConfig.column);
637
+ return _this6.hot.getDataAtCell(visualRowIndex, sortConfig.column);
680
638
  });
681
639
  };
682
640
  for (var visualRowIndex = 0; visualRowIndex < this.getNumberOfRowsToSort(numberOfRows); visualRowIndex += 1) {
@@ -688,7 +646,7 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
688
646
  (0, _sortService.sort)(indexesWithData, this.pluginKey, (0, _array.arrayMap)(sortConfigs, function (sortConfig) {
689
647
  return sortConfig.sortOrder;
690
648
  }), (0, _array.arrayMap)(sortConfigs, function (sortConfig) {
691
- return _this7.getFirstCellSettings(sortConfig.column);
649
+ return _this6.getFirstCellSettings(sortConfig.column);
692
650
  }));
693
651
 
694
652
  // Append spareRows
@@ -71,9 +71,8 @@ import { rootComparator } from "./rootComparator.mjs";
71
71
  import { registerRootComparator, sort } from "./sortService/index.mjs";
72
72
  export var PLUGIN_KEY = 'columnSorting';
73
73
  export var PLUGIN_PRIORITY = 50;
74
- export var APPEND_COLUMN_CONFIG_STRATEGY = 'append';
75
- export var REPLACE_COLUMN_CONFIG_STRATEGY = 'replace';
76
- var SHORTCUTS_GROUP = PLUGIN_KEY;
74
+ var APPEND_COLUMN_CONFIG_STRATEGY = 'append';
75
+ var REPLACE_COLUMN_CONFIG_STRATEGY = 'replace';
77
76
  registerRootComparator(PLUGIN_KEY, rootComparator);
78
77
  Hooks.getSingleton().register('beforeColumnSort');
79
78
  Hooks.getSingleton().register('afterColumnSort');
@@ -217,7 +216,6 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
217
216
  if (this.hot.view) {
218
217
  this.loadOrSortBySettings();
219
218
  }
220
- this.registerShortcuts();
221
219
  _get(_getPrototypeOf(ColumnSorting.prototype), "enablePlugin", this).call(this);
222
220
  }
223
221
 
@@ -251,47 +249,9 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
251
249
  this.columnStatesManager.destroy();
252
250
  this.columnMetaCache = null;
253
251
  this.columnStatesManager = null;
254
- this.unregisterShortcuts();
255
252
  _get(_getPrototypeOf(ColumnSorting.prototype), "disablePlugin", this).call(this);
256
253
  }
257
254
 
258
- /**
259
- * Register shortcuts responsible for toggling column sorting functionality.
260
- *
261
- * @private
262
- */
263
- }, {
264
- key: "registerShortcuts",
265
- value: function registerShortcuts() {
266
- var _this4 = this;
267
- this.hot.getShortcutManager().getContext('grid').addShortcut({
268
- keys: [['Enter']],
269
- callback: function callback() {
270
- var _this4$hot$getSelecte = _this4.hot.getSelectedRangeLast(),
271
- highlight = _this4$hot$getSelecte.highlight;
272
- if (highlight.row === -1 && highlight.col >= 0) {
273
- _this4.sort(_this4.getColumnNextConfig(highlight.col));
274
- }
275
- },
276
- runOnlyIf: function runOnlyIf() {
277
- var _this4$hot$getSelecte2;
278
- return (_this4$hot$getSelecte2 = _this4.hot.getSelectedRangeLast()) === null || _this4$hot$getSelecte2 === void 0 ? void 0 : _this4$hot$getSelecte2.highlight.isHeader();
279
- },
280
- group: SHORTCUTS_GROUP
281
- });
282
- }
283
-
284
- /**
285
- * Unregister shortcuts responsible for toggling column sorting functionality.
286
- *
287
- * @private
288
- */
289
- }, {
290
- key: "unregisterShortcuts",
291
- value: function unregisterShortcuts() {
292
- this.hot.getShortcutManager().getContext('grid').removeShortcutsByGroup(SHORTCUTS_GROUP);
293
- }
294
-
295
255
  // DIFF - MultiColumnSorting & ColumnSorting: changed function documentation.
296
256
  /**
297
257
  * Sorts the table by chosen columns and orders.
@@ -461,13 +421,13 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
461
421
  }, {
462
422
  key: "saveAllSortSettings",
463
423
  value: function saveAllSortSettings(sortConfigs) {
464
- var _this5 = this;
424
+ var _this4 = this;
465
425
  var allSortSettings = this.columnStatesManager.getAllColumnsProperties();
466
426
  var translateColumnToPhysical = function translateColumnToPhysical(_ref2) {
467
427
  var visualColumn = _ref2.column,
468
428
  restOfProperties = _objectWithoutProperties(_ref2, _excluded);
469
429
  return _objectSpread({
470
- column: _this5.hot.toPhysicalColumn(visualColumn)
430
+ column: _this4.hot.toPhysicalColumn(visualColumn)
471
431
  }, restOfProperties);
472
432
  };
473
433
  allSortSettings.initialConfig = arrayMap(sortConfigs, translateColumnToPhysical);
@@ -485,7 +445,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
485
445
  }, {
486
446
  key: "getAllSavedSortSettings",
487
447
  value: function getAllSavedSortSettings() {
488
- var _this6 = this;
448
+ var _this5 = this;
489
449
  var storedAllSortSettings = {};
490
450
  this.hot.runHooks('persistentStateLoad', 'columnSorting', storedAllSortSettings);
491
451
  var allSortSettings = storedAllSortSettings.value;
@@ -493,7 +453,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
493
453
  var physicalColumn = _ref3.column,
494
454
  restOfProperties = _objectWithoutProperties(_ref3, _excluded2);
495
455
  return _objectSpread({
496
- column: _this6.hot.toVisualColumn(physicalColumn)
456
+ column: _this5.hot.toVisualColumn(physicalColumn)
497
457
  }, restOfProperties);
498
458
  };
499
459
  if (isDefined(allSortSettings) && Array.isArray(allSortSettings.initialConfig)) {
@@ -658,7 +618,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
658
618
  }, {
659
619
  key: "sortByPresetSortStates",
660
620
  value: function sortByPresetSortStates(sortConfigs) {
661
- var _this7 = this;
621
+ var _this6 = this;
662
622
  if (sortConfigs.length === 0) {
663
623
  this.hot.rowIndexMapper.setIndexesSequence(this.indexesSequenceCache.getValues());
664
624
  return;
@@ -667,7 +627,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
667
627
  var numberOfRows = this.hot.countRows();
668
628
  var getDataForSortedColumns = function getDataForSortedColumns(visualRowIndex) {
669
629
  return arrayMap(sortConfigs, function (sortConfig) {
670
- return _this7.hot.getDataAtCell(visualRowIndex, sortConfig.column);
630
+ return _this6.hot.getDataAtCell(visualRowIndex, sortConfig.column);
671
631
  });
672
632
  };
673
633
  for (var visualRowIndex = 0; visualRowIndex < this.getNumberOfRowsToSort(numberOfRows); visualRowIndex += 1) {
@@ -679,7 +639,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
679
639
  sort(indexesWithData, this.pluginKey, arrayMap(sortConfigs, function (sortConfig) {
680
640
  return sortConfig.sortOrder;
681
641
  }), arrayMap(sortConfigs, function (sortConfig) {
682
- return _this7.getFirstCellSettings(sortConfig.column);
642
+ return _this6.getFirstCellSettings(sortConfig.column);
683
643
  }));
684
644
 
685
645
  // Append spareRows
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.REPLACE_COLUMN_CONFIG_STRATEGY = exports.PLUGIN_PRIORITY = exports.PLUGIN_KEY = exports.ColumnSorting = exports.APPEND_COLUMN_CONFIG_STRATEGY = void 0;
4
+ exports.PLUGIN_PRIORITY = exports.PLUGIN_KEY = exports.ColumnSorting = void 0;
5
5
  var _columnSorting = require("./columnSorting");
6
6
  exports.PLUGIN_KEY = _columnSorting.PLUGIN_KEY;
7
7
  exports.PLUGIN_PRIORITY = _columnSorting.PLUGIN_PRIORITY;
8
- exports.ColumnSorting = _columnSorting.ColumnSorting;
9
- exports.APPEND_COLUMN_CONFIG_STRATEGY = _columnSorting.APPEND_COLUMN_CONFIG_STRATEGY;
10
- exports.REPLACE_COLUMN_CONFIG_STRATEGY = _columnSorting.REPLACE_COLUMN_CONFIG_STRATEGY;
8
+ exports.ColumnSorting = _columnSorting.ColumnSorting;
@@ -1 +1 @@
1
- export { PLUGIN_KEY, PLUGIN_PRIORITY, ColumnSorting, APPEND_COLUMN_CONFIG_STRATEGY, REPLACE_COLUMN_CONFIG_STRATEGY } from "./columnSorting.mjs";
1
+ export { PLUGIN_KEY, PLUGIN_PRIORITY, ColumnSorting } from "./columnSorting.mjs";
@@ -528,10 +528,6 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
528
528
  if (!selectionRange) {
529
529
  return;
530
530
  }
531
- if (selectionRange.isSingleHeader()) {
532
- this.copyableRanges = [];
533
- return;
534
- }
535
531
  _classPrivateFieldGet(this, _copyableRangesFactory).setSelectedRange(selectionRange);
536
532
  var groupedRanges = new Map([['headers', null], ['cells', null]]);
537
533
  if (_classPrivateFieldGet(this, _copyMode) === 'column-headers-only') {
@@ -760,7 +756,7 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
760
756
  if (typeof pastedData === 'string') {
761
757
  pastedData = (0, _SheetClip.parse)(pastedData);
762
758
  }
763
- if (pastedData === void 0 || pastedData && pastedData.length === 0) {
759
+ if (pastedData && pastedData.length === 0) {
764
760
  return;
765
761
  }
766
762
  if (this.hot.runHooks('beforePaste', pastedData, this.copyableRanges) === false) {
@@ -521,10 +521,6 @@ export var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
521
521
  if (!selectionRange) {
522
522
  return;
523
523
  }
524
- if (selectionRange.isSingleHeader()) {
525
- this.copyableRanges = [];
526
- return;
527
- }
528
524
  _classPrivateFieldGet(this, _copyableRangesFactory).setSelectedRange(selectionRange);
529
525
  var groupedRanges = new Map([['headers', null], ['cells', null]]);
530
526
  if (_classPrivateFieldGet(this, _copyMode) === 'column-headers-only') {
@@ -753,7 +749,7 @@ export var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
753
749
  if (typeof pastedData === 'string') {
754
750
  pastedData = parse(pastedData);
755
751
  }
756
- if (pastedData === void 0 || pastedData && pastedData.length === 0) {
752
+ if (pastedData && pastedData.length === 0) {
757
753
  return;
758
754
  }
759
755
  if (this.hot.runHooks('beforePaste', pastedData, this.copyableRanges) === false) {
@@ -9,6 +9,11 @@ require("core-js/modules/es.symbol.iterator.js");
9
9
  require("core-js/modules/es.array.iterator.js");
10
10
  require("core-js/modules/es.string.iterator.js");
11
11
  require("core-js/modules/web.dom-collections.iterator.js");
12
+ require("core-js/modules/es.array.slice.js");
13
+ require("core-js/modules/es.regexp.to-string.js");
14
+ require("core-js/modules/es.function.name.js");
15
+ require("core-js/modules/es.array.from.js");
16
+ require("core-js/modules/es.regexp.exec.js");
12
17
  require("core-js/modules/es.weak-map.js");
13
18
  exports.__esModule = true;
14
19
  exports.PLUGIN_PRIORITY = exports.PLUGIN_KEY = exports.CustomBorders = void 0;
@@ -34,6 +39,12 @@ var _selection = require("../../selection");
34
39
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
40
  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; }
36
41
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
42
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
43
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
44
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
45
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
46
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
47
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
37
48
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
38
49
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
39
50
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
@@ -219,11 +230,25 @@ var CustomBorders = /*#__PURE__*/function (_BasePlugin) {
219
230
  var selectionType = (0, _selection.detectSelectionType)(selectionRanges);
220
231
  var selectionSchemaNormalizer = (0, _selection.normalizeSelectionFactory)(selectionType);
221
232
  (0, _array.arrayEach)(selectionRanges, function (selection) {
222
- selectionSchemaNormalizer(selection).forAll(function (row, col) {
223
- (0, _array.arrayEach)(borderKeys, function (borderKey) {
224
- _this3.prepareBorderFromCustomAdded(row, col, normBorder, (0, _utils.toInlinePropName)(borderKey));
225
- });
226
- });
233
+ var _selectionSchemaNorma = selectionSchemaNormalizer(selection),
234
+ _selectionSchemaNorma2 = _slicedToArray(_selectionSchemaNorma, 4),
235
+ rowStart = _selectionSchemaNorma2[0],
236
+ columnStart = _selectionSchemaNorma2[1],
237
+ rowEnd = _selectionSchemaNorma2[2],
238
+ columnEnd = _selectionSchemaNorma2[3];
239
+ var _loop = function _loop(row) {
240
+ var _loop2 = function _loop2(col) {
241
+ (0, _array.arrayEach)(borderKeys, function (borderKey) {
242
+ _this3.prepareBorderFromCustomAdded(row, col, normBorder, (0, _utils.toInlinePropName)(borderKey));
243
+ });
244
+ };
245
+ for (var col = columnStart; col <= columnEnd; col += 1) {
246
+ _loop2(col);
247
+ }
248
+ };
249
+ for (var row = rowStart; row <= rowEnd; row += 1) {
250
+ _loop(row);
251
+ }
227
252
  });
228
253
 
229
254
  /*
@@ -266,13 +291,27 @@ var CustomBorders = /*#__PURE__*/function (_BasePlugin) {
266
291
  var selectionSchemaNormalizer = (0, _selection.normalizeSelectionFactory)(selectionType);
267
292
  var selectedBorders = [];
268
293
  (0, _array.arrayEach)(selectionRanges, function (selection) {
269
- selectionSchemaNormalizer(selection).forAll(function (row, col) {
270
- (0, _array.arrayEach)(_this4.savedBorders, function (border) {
271
- if (border.row === row && border.col === col) {
272
- selectedBorders.push((0, _utils.denormalizeBorder)(border));
273
- }
274
- });
275
- });
294
+ var _selectionSchemaNorma3 = selectionSchemaNormalizer(selection),
295
+ _selectionSchemaNorma4 = _slicedToArray(_selectionSchemaNorma3, 4),
296
+ rowStart = _selectionSchemaNorma4[0],
297
+ columnStart = _selectionSchemaNorma4[1],
298
+ rowEnd = _selectionSchemaNorma4[2],
299
+ columnEnd = _selectionSchemaNorma4[3];
300
+ var _loop3 = function _loop3(row) {
301
+ var _loop4 = function _loop4(col) {
302
+ (0, _array.arrayEach)(_this4.savedBorders, function (border) {
303
+ if (border.row === row && border.col === col) {
304
+ selectedBorders.push((0, _utils.denormalizeBorder)(border));
305
+ }
306
+ });
307
+ };
308
+ for (var col = columnStart; col <= columnEnd; col += 1) {
309
+ _loop4(col);
310
+ }
311
+ };
312
+ for (var row = rowStart; row <= rowEnd; row += 1) {
313
+ _loop3(row);
314
+ }
276
315
  });
277
316
  return selectedBorders;
278
317
  }
@@ -697,12 +736,10 @@ var CustomBorders = /*#__PURE__*/function (_BasePlugin) {
697
736
  }, {
698
737
  key: "checkCustomSelectionsFromContextMenu",
699
738
  value: function checkCustomSelectionsFromContextMenu(border, place, remove) {
700
- var _this12 = this;
701
739
  var check = false;
702
740
  (0, _array.arrayEach)(this.hot.selection.highlight.customSelections, function (customSelection) {
703
741
  if (border.id === customSelection.settings.id) {
704
- var borders = _this12.hot.view._wt.selectionManager.getBorderInstances(customSelection);
705
- (0, _array.arrayEach)(borders, function (borderObject) {
742
+ (0, _object.objectEach)(customSelection.instanceBorders, function (borderObject) {
706
743
  borderObject.toggleHiddenClass(place, remove); // TODO this also bad?
707
744
  });
708
745
 
@@ -727,7 +764,6 @@ var CustomBorders = /*#__PURE__*/function (_BasePlugin) {
727
764
  }, {
728
765
  key: "checkCustomSelections",
729
766
  value: function checkCustomSelections(border, cellRange, place) {
730
- var _this13 = this;
731
767
  var hideCount = this.countHide(border);
732
768
  var check = false;
733
769
  if (hideCount === 4) {
@@ -739,8 +775,7 @@ var CustomBorders = /*#__PURE__*/function (_BasePlugin) {
739
775
  customSelection.visualCellRange = cellRange;
740
776
  customSelection.commit();
741
777
  if (place) {
742
- var borders = _this13.hot.view._wt.selectionManager.getBorderInstances(customSelection);
743
- (0, _array.arrayEach)(borders, function (borderObject) {
778
+ (0, _object.objectEach)(customSelection.instanceBorders, function (borderObject) {
744
779
  borderObject.changeBorderStyle(place, border);
745
780
  });
746
781
  }
@@ -1,4 +1,10 @@
1
1
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
3
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
5
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
6
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
7
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
2
8
  import "core-js/modules/es.array.concat.js";
3
9
  import "core-js/modules/es.object.keys.js";
4
10
  import "core-js/modules/es.object.assign.js";
@@ -19,6 +25,11 @@ import "core-js/modules/es.symbol.iterator.js";
19
25
  import "core-js/modules/es.array.iterator.js";
20
26
  import "core-js/modules/es.string.iterator.js";
21
27
  import "core-js/modules/web.dom-collections.iterator.js";
28
+ import "core-js/modules/es.array.slice.js";
29
+ import "core-js/modules/es.regexp.to-string.js";
30
+ import "core-js/modules/es.function.name.js";
31
+ import "core-js/modules/es.array.from.js";
32
+ import "core-js/modules/es.regexp.exec.js";
22
33
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
23
34
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
24
35
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
@@ -35,7 +46,7 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
35
46
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
36
47
  function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
37
48
  import { BasePlugin } from "../base/index.mjs";
38
- import { hasOwnProperty, deepClone } from "../../helpers/object.mjs";
49
+ import { hasOwnProperty, objectEach, deepClone } from "../../helpers/object.mjs";
39
50
  import { rangeEach } from "../../helpers/number.mjs";
40
51
  import { arrayEach, arrayReduce, arrayMap } from "../../helpers/array.mjs";
41
52
  import * as C from "../../i18n/constants.mjs";
@@ -210,11 +221,25 @@ export var CustomBorders = /*#__PURE__*/function (_BasePlugin) {
210
221
  var selectionType = detectSelectionType(selectionRanges);
211
222
  var selectionSchemaNormalizer = normalizeSelectionFactory(selectionType);
212
223
  arrayEach(selectionRanges, function (selection) {
213
- selectionSchemaNormalizer(selection).forAll(function (row, col) {
214
- arrayEach(borderKeys, function (borderKey) {
215
- _this3.prepareBorderFromCustomAdded(row, col, normBorder, toInlinePropName(borderKey));
216
- });
217
- });
224
+ var _selectionSchemaNorma = selectionSchemaNormalizer(selection),
225
+ _selectionSchemaNorma2 = _slicedToArray(_selectionSchemaNorma, 4),
226
+ rowStart = _selectionSchemaNorma2[0],
227
+ columnStart = _selectionSchemaNorma2[1],
228
+ rowEnd = _selectionSchemaNorma2[2],
229
+ columnEnd = _selectionSchemaNorma2[3];
230
+ var _loop = function _loop(row) {
231
+ var _loop2 = function _loop2(col) {
232
+ arrayEach(borderKeys, function (borderKey) {
233
+ _this3.prepareBorderFromCustomAdded(row, col, normBorder, toInlinePropName(borderKey));
234
+ });
235
+ };
236
+ for (var col = columnStart; col <= columnEnd; col += 1) {
237
+ _loop2(col);
238
+ }
239
+ };
240
+ for (var row = rowStart; row <= rowEnd; row += 1) {
241
+ _loop(row);
242
+ }
218
243
  });
219
244
 
220
245
  /*
@@ -257,13 +282,27 @@ export var CustomBorders = /*#__PURE__*/function (_BasePlugin) {
257
282
  var selectionSchemaNormalizer = normalizeSelectionFactory(selectionType);
258
283
  var selectedBorders = [];
259
284
  arrayEach(selectionRanges, function (selection) {
260
- selectionSchemaNormalizer(selection).forAll(function (row, col) {
261
- arrayEach(_this4.savedBorders, function (border) {
262
- if (border.row === row && border.col === col) {
263
- selectedBorders.push(denormalizeBorder(border));
264
- }
265
- });
266
- });
285
+ var _selectionSchemaNorma3 = selectionSchemaNormalizer(selection),
286
+ _selectionSchemaNorma4 = _slicedToArray(_selectionSchemaNorma3, 4),
287
+ rowStart = _selectionSchemaNorma4[0],
288
+ columnStart = _selectionSchemaNorma4[1],
289
+ rowEnd = _selectionSchemaNorma4[2],
290
+ columnEnd = _selectionSchemaNorma4[3];
291
+ var _loop3 = function _loop3(row) {
292
+ var _loop4 = function _loop4(col) {
293
+ arrayEach(_this4.savedBorders, function (border) {
294
+ if (border.row === row && border.col === col) {
295
+ selectedBorders.push(denormalizeBorder(border));
296
+ }
297
+ });
298
+ };
299
+ for (var col = columnStart; col <= columnEnd; col += 1) {
300
+ _loop4(col);
301
+ }
302
+ };
303
+ for (var row = rowStart; row <= rowEnd; row += 1) {
304
+ _loop3(row);
305
+ }
267
306
  });
268
307
  return selectedBorders;
269
308
  }
@@ -688,12 +727,10 @@ export var CustomBorders = /*#__PURE__*/function (_BasePlugin) {
688
727
  }, {
689
728
  key: "checkCustomSelectionsFromContextMenu",
690
729
  value: function checkCustomSelectionsFromContextMenu(border, place, remove) {
691
- var _this12 = this;
692
730
  var check = false;
693
731
  arrayEach(this.hot.selection.highlight.customSelections, function (customSelection) {
694
732
  if (border.id === customSelection.settings.id) {
695
- var borders = _this12.hot.view._wt.selectionManager.getBorderInstances(customSelection);
696
- arrayEach(borders, function (borderObject) {
733
+ objectEach(customSelection.instanceBorders, function (borderObject) {
697
734
  borderObject.toggleHiddenClass(place, remove); // TODO this also bad?
698
735
  });
699
736
 
@@ -718,7 +755,6 @@ export var CustomBorders = /*#__PURE__*/function (_BasePlugin) {
718
755
  }, {
719
756
  key: "checkCustomSelections",
720
757
  value: function checkCustomSelections(border, cellRange, place) {
721
- var _this13 = this;
722
758
  var hideCount = this.countHide(border);
723
759
  var check = false;
724
760
  if (hideCount === 4) {
@@ -730,8 +766,7 @@ export var CustomBorders = /*#__PURE__*/function (_BasePlugin) {
730
766
  customSelection.visualCellRange = cellRange;
731
767
  customSelection.commit();
732
768
  if (place) {
733
- var borders = _this13.hot.view._wt.selectionManager.getBorderInstances(customSelection);
734
- arrayEach(borders, function (borderObject) {
769
+ objectEach(customSelection.instanceBorders, function (borderObject) {
735
770
  borderObject.changeBorderStyle(place, border);
736
771
  });
737
772
  }
@@ -243,6 +243,9 @@ var MergeCells = /*#__PURE__*/function (_BasePlugin) {
243
243
  this.addHook('afterDrawSelection', function () {
244
244
  return _this2.onAfterDrawSelection.apply(_this2, arguments);
245
245
  });
246
+ this.addHook('beforeRemoveCellClassNames', function () {
247
+ return _this2.onBeforeRemoveCellClassNames.apply(_this2, arguments);
248
+ });
246
249
  this.addHook('beforeUndoStackChange', function (action, source) {
247
250
  if (source === 'MergeCells') {
248
251
  return false;
@@ -659,11 +662,8 @@ var MergeCells = /*#__PURE__*/function (_BasePlugin) {
659
662
  gridContext.addShortcut({
660
663
  keys: [['Control', 'm']],
661
664
  callback: function callback() {
662
- var range = _this7.hot.getSelectedRangeLast();
663
- if (range && !range.isSingleHeader()) {
664
- _this7.toggleMerge(range);
665
- _this7.hot.render();
666
- }
665
+ _this7.toggleMerge(_this7.hot.getSelectedRangeLast());
666
+ _this7.hot.render();
667
667
  },
668
668
  runOnlyIf: function runOnlyIf(event) {
669
669
  return !event.altKey;
@@ -1340,6 +1340,19 @@ var MergeCells = /*#__PURE__*/function (_BasePlugin) {
1340
1340
  }
1341
1341
  return this.selectionCalculations.getSelectedMergedCellClassName(currentRow, currentColumn, cornersOfSelection, layerLevel);
1342
1342
  }
1343
+
1344
+ /**
1345
+ * `beforeRemoveCellClassNames` hook callback. Used to remove additional class name from all cells in the table.
1346
+ *
1347
+ * @private
1348
+ * @returns {string[]} An `Array` of `String`s. Each of these strings will act like class names to be removed from
1349
+ * all the cells in the table.
1350
+ */
1351
+ }, {
1352
+ key: "onBeforeRemoveCellClassNames",
1353
+ value: function onBeforeRemoveCellClassNames() {
1354
+ return this.selectionCalculations.getSelectedMergedCellClassNameToRemove();
1355
+ }
1343
1356
  }], [{
1344
1357
  key: "PLUGIN_KEY",
1345
1358
  get: function get() {