handsontable 0.0.0-next-200799f-20240311 → 0.0.0-next-bff5041-20240315

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (272) hide show
  1. package/3rdparty/walkontable/src/calculator/viewportColumns.js +12 -17
  2. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +12 -17
  3. package/3rdparty/walkontable/src/calculator/viewportRows.js +10 -15
  4. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +10 -15
  5. package/3rdparty/walkontable/src/cell/coords.js +12 -17
  6. package/3rdparty/walkontable/src/cell/coords.mjs +12 -17
  7. package/3rdparty/walkontable/src/cell/range.d.ts +0 -1
  8. package/3rdparty/walkontable/src/cell/range.js +23 -45
  9. package/3rdparty/walkontable/src/cell/range.mjs +23 -45
  10. package/3rdparty/walkontable/src/core/_base.js +1 -1
  11. package/3rdparty/walkontable/src/core/_base.mjs +1 -1
  12. package/3rdparty/walkontable/src/event.js +72 -104
  13. package/3rdparty/walkontable/src/event.mjs +72 -104
  14. package/3rdparty/walkontable/src/overlays.js +1 -1
  15. package/3rdparty/walkontable/src/overlays.mjs +1 -1
  16. package/3rdparty/walkontable/src/scroll.js +15 -17
  17. package/3rdparty/walkontable/src/scroll.mjs +15 -17
  18. package/3rdparty/walkontable/src/selection/manager.js +48 -69
  19. package/3rdparty/walkontable/src/selection/manager.mjs +48 -69
  20. package/3rdparty/walkontable/src/selection/scanner.js +33 -42
  21. package/3rdparty/walkontable/src/selection/scanner.mjs +33 -42
  22. package/3rdparty/walkontable/src/utils/columnStretching.js +27 -44
  23. package/3rdparty/walkontable/src/utils/columnStretching.mjs +27 -44
  24. package/3rdparty/walkontable/src/utils/orderView/view.js +1 -1
  25. package/3rdparty/walkontable/src/utils/orderView/view.mjs +1 -1
  26. package/base.js +2 -2
  27. package/base.mjs +2 -2
  28. package/core/viewportScroll/index.js +1 -4
  29. package/core/viewportScroll/index.mjs +1 -4
  30. package/core.d.ts +3 -4
  31. package/core.js +22 -79
  32. package/core.mjs +22 -79
  33. package/dataMap/dataSource.js +1 -1
  34. package/dataMap/dataSource.mjs +1 -1
  35. package/dataMap/metaManager/metaLayers/cellMeta.js +1 -1
  36. package/dataMap/metaManager/metaLayers/cellMeta.mjs +1 -1
  37. package/dataMap/replaceData.js +1 -1
  38. package/dataMap/replaceData.mjs +1 -1
  39. package/dist/handsontable.css +2 -2
  40. package/dist/handsontable.full.css +2 -2
  41. package/dist/handsontable.full.js +7620 -10327
  42. package/dist/handsontable.full.min.css +2 -2
  43. package/dist/handsontable.full.min.js +277 -277
  44. package/dist/handsontable.js +5525 -7779
  45. package/dist/handsontable.min.css +2 -2
  46. package/dist/handsontable.min.js +33 -33
  47. package/dist/languages/all.min.js +1 -1
  48. package/dist/languages/ar-AR.min.js +1 -1
  49. package/dist/languages/cs-CZ.min.js +1 -1
  50. package/dist/languages/de-CH.min.js +1 -1
  51. package/dist/languages/de-DE.min.js +1 -1
  52. package/dist/languages/en-US.min.js +1 -1
  53. package/dist/languages/es-MX.min.js +1 -1
  54. package/dist/languages/fr-FR.min.js +1 -1
  55. package/dist/languages/hr-HR.min.js +1 -1
  56. package/dist/languages/it-IT.min.js +1 -1
  57. package/dist/languages/ja-JP.min.js +1 -1
  58. package/dist/languages/ko-KR.min.js +1 -1
  59. package/dist/languages/lv-LV.min.js +1 -1
  60. package/dist/languages/nb-NO.min.js +1 -1
  61. package/dist/languages/nl-NL.min.js +1 -1
  62. package/dist/languages/pl-PL.min.js +1 -1
  63. package/dist/languages/pt-BR.min.js +1 -1
  64. package/dist/languages/ru-RU.min.js +1 -1
  65. package/dist/languages/sr-SP.min.js +1 -1
  66. package/dist/languages/zh-CN.min.js +1 -1
  67. package/dist/languages/zh-TW.min.js +1 -1
  68. package/editorManager.js +21 -27
  69. package/editorManager.mjs +21 -27
  70. package/editors/autocompleteEditor/autocompleteEditor.js +6 -10
  71. package/editors/autocompleteEditor/autocompleteEditor.mjs +6 -10
  72. package/eventManager.js +1 -1
  73. package/eventManager.mjs +1 -1
  74. package/focusManager.js +58 -82
  75. package/focusManager.mjs +58 -82
  76. package/helpers/dom/element.js +1 -1
  77. package/helpers/dom/element.mjs +1 -1
  78. package/helpers/mixed.js +1 -1
  79. package/helpers/mixed.mjs +1 -1
  80. package/helpers/object.js +2 -2
  81. package/helpers/object.mjs +2 -2
  82. package/index.d.ts +10 -0
  83. package/package.json +2 -1
  84. package/pluginHooks.d.ts +0 -4
  85. package/pluginHooks.js +2 -44
  86. package/pluginHooks.mjs +2 -44
  87. package/plugins/autoColumnSize/autoColumnSize.js +49 -65
  88. package/plugins/autoColumnSize/autoColumnSize.mjs +49 -65
  89. package/plugins/autoRowSize/autoRowSize.js +28 -34
  90. package/plugins/autoRowSize/autoRowSize.mjs +28 -34
  91. package/plugins/autofill/autofill.js +30 -38
  92. package/plugins/autofill/autofill.mjs +30 -38
  93. package/plugins/base/base.js +12 -17
  94. package/plugins/base/base.mjs +12 -17
  95. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +5 -5
  96. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +5 -5
  97. package/plugins/collapsibleColumns/collapsibleColumns.js +36 -54
  98. package/plugins/collapsibleColumns/collapsibleColumns.mjs +36 -54
  99. package/plugins/columnSorting/columnSorting.js +40 -46
  100. package/plugins/columnSorting/columnSorting.mjs +40 -46
  101. package/plugins/columnSummary/columnSummary.js +22 -26
  102. package/plugins/columnSummary/columnSummary.mjs +22 -26
  103. package/plugins/comments/comments.js +116 -158
  104. package/plugins/comments/comments.mjs +116 -158
  105. package/plugins/contextMenu/contextMenu.js +20 -26
  106. package/plugins/contextMenu/contextMenu.mjs +20 -26
  107. package/plugins/contextMenu/itemsFactory.js +1 -1
  108. package/plugins/contextMenu/itemsFactory.mjs +1 -1
  109. package/plugins/contextMenu/menu/defaultShortcutsList.js +10 -26
  110. package/plugins/contextMenu/menu/defaultShortcutsList.mjs +10 -26
  111. package/plugins/contextMenu/menu/menu.js +13 -21
  112. package/plugins/contextMenu/menu/menu.mjs +13 -21
  113. package/plugins/contextMenu/menu/positioner.js +41 -58
  114. package/plugins/contextMenu/menu/positioner.mjs +41 -58
  115. package/plugins/copyPaste/copyPaste.js +113 -154
  116. package/plugins/copyPaste/copyPaste.mjs +113 -154
  117. package/plugins/copyPaste/copyableRanges.js +43 -66
  118. package/plugins/copyPaste/copyableRanges.mjs +43 -66
  119. package/plugins/customBorders/customBorders.js +11 -13
  120. package/plugins/customBorders/customBorders.mjs +11 -13
  121. package/plugins/dragToScroll/dragToScroll.js +6 -6
  122. package/plugins/dragToScroll/dragToScroll.mjs +6 -6
  123. package/plugins/dropdownMenu/dropdownMenu.js +78 -100
  124. package/plugins/dropdownMenu/dropdownMenu.mjs +78 -100
  125. package/plugins/exportFile/dataProvider.js +1 -1
  126. package/plugins/exportFile/dataProvider.mjs +1 -1
  127. package/plugins/filters/component/actionBar.js +9 -9
  128. package/plugins/filters/component/actionBar.mjs +8 -8
  129. package/plugins/filters/component/condition.js +13 -15
  130. package/plugins/filters/component/condition.mjs +13 -15
  131. package/plugins/filters/component/operators.js +6 -6
  132. package/plugins/filters/component/operators.mjs +6 -6
  133. package/plugins/filters/component/value.js +24 -28
  134. package/plugins/filters/component/value.mjs +24 -28
  135. package/plugins/filters/conditionUpdateObserver.js +22 -24
  136. package/plugins/filters/conditionUpdateObserver.mjs +22 -24
  137. package/plugins/filters/dataFilter.js +1 -1
  138. package/plugins/filters/dataFilter.mjs +1 -1
  139. package/plugins/filters/filters.js +81 -95
  140. package/plugins/filters/filters.mjs +81 -95
  141. package/plugins/filters/ui/input.js +13 -19
  142. package/plugins/filters/ui/input.mjs +13 -19
  143. package/plugins/filters/ui/link.js +8 -13
  144. package/plugins/filters/ui/link.mjs +8 -13
  145. package/plugins/filters/ui/multipleSelect.js +85 -112
  146. package/plugins/filters/ui/multipleSelect.mjs +85 -112
  147. package/plugins/filters/ui/radioInput.js +12 -20
  148. package/plugins/filters/ui/radioInput.mjs +12 -20
  149. package/plugins/filters/ui/select.js +50 -72
  150. package/plugins/filters/ui/select.mjs +49 -71
  151. package/plugins/formulas/formulas.js +268 -326
  152. package/plugins/formulas/formulas.mjs +269 -327
  153. package/plugins/formulas/indexSyncer/axisSyncer.js +38 -61
  154. package/plugins/formulas/indexSyncer/axisSyncer.mjs +38 -61
  155. package/plugins/formulas/indexSyncer/index.js +25 -48
  156. package/plugins/formulas/indexSyncer/index.mjs +25 -48
  157. package/plugins/hiddenColumns/hiddenColumns.js +64 -83
  158. package/plugins/hiddenColumns/hiddenColumns.mjs +64 -83
  159. package/plugins/hiddenRows/hiddenRows.js +63 -82
  160. package/plugins/hiddenRows/hiddenRows.mjs +63 -82
  161. package/plugins/manualColumnFreeze/manualColumnFreeze.js +24 -32
  162. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +25 -33
  163. package/plugins/manualColumnMove/manualColumnMove.js +126 -170
  164. package/plugins/manualColumnMove/manualColumnMove.mjs +126 -170
  165. package/plugins/manualColumnResize/manualColumnResize.js +169 -230
  166. package/plugins/manualColumnResize/manualColumnResize.mjs +169 -230
  167. package/plugins/manualRowMove/manualRowMove.js +99 -128
  168. package/plugins/manualRowMove/manualRowMove.mjs +99 -128
  169. package/plugins/manualRowResize/manualRowResize.js +150 -209
  170. package/plugins/manualRowResize/manualRowResize.mjs +150 -209
  171. package/plugins/mergeCells/calculations/selection.js +71 -2
  172. package/plugins/mergeCells/calculations/selection.mjs +71 -2
  173. package/plugins/mergeCells/cellsCollection.js +1 -117
  174. package/plugins/mergeCells/cellsCollection.mjs +1 -117
  175. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +1 -11
  176. package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +1 -11
  177. package/plugins/mergeCells/mergeCells.js +355 -595
  178. package/plugins/mergeCells/mergeCells.mjs +355 -595
  179. package/plugins/multiColumnSorting/multiColumnSorting.js +0 -6
  180. package/plugins/multiColumnSorting/multiColumnSorting.mjs +0 -6
  181. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +1 -1
  182. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +1 -1
  183. package/plugins/nestedHeaders/nestedHeaders.js +204 -254
  184. package/plugins/nestedHeaders/nestedHeaders.mjs +205 -255
  185. package/plugins/nestedHeaders/stateManager/headersTree.js +21 -32
  186. package/plugins/nestedHeaders/stateManager/headersTree.mjs +21 -32
  187. package/plugins/nestedHeaders/stateManager/index.js +30 -41
  188. package/plugins/nestedHeaders/stateManager/index.mjs +30 -41
  189. package/plugins/nestedHeaders/stateManager/sourceSettings.js +19 -30
  190. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +19 -30
  191. package/plugins/nestedRows/data/dataManager.js +1 -1
  192. package/plugins/nestedRows/data/dataManager.mjs +1 -1
  193. package/plugins/nestedRows/nestedRows.js +138 -179
  194. package/plugins/nestedRows/nestedRows.mjs +139 -180
  195. package/plugins/nestedRows/ui/contextMenu.js +11 -15
  196. package/plugins/nestedRows/ui/contextMenu.mjs +10 -14
  197. package/plugins/nestedRows/utils/rowMoveController.js +1 -1
  198. package/plugins/nestedRows/utils/rowMoveController.mjs +1 -1
  199. package/plugins/persistentState/storage.js +2 -2
  200. package/plugins/persistentState/storage.mjs +2 -2
  201. package/plugins/search/search.js +7 -7
  202. package/plugins/search/search.mjs +7 -7
  203. package/plugins/touchScroll/touchScroll.js +15 -19
  204. package/plugins/touchScroll/touchScroll.mjs +16 -20
  205. package/plugins/trimRows/trimRows.js +6 -6
  206. package/plugins/trimRows/trimRows.mjs +6 -6
  207. package/renderers/checkboxRenderer/checkboxRenderer.js +4 -4
  208. package/renderers/checkboxRenderer/checkboxRenderer.mjs +4 -4
  209. package/selection/highlight/highlight.js +14 -14
  210. package/selection/highlight/highlight.mjs +13 -13
  211. package/selection/highlight/visualSelection.js +2 -16
  212. package/selection/highlight/visualSelection.mjs +2 -16
  213. package/selection/selection.js +60 -252
  214. package/selection/selection.mjs +59 -251
  215. package/selection/transformation.js +101 -175
  216. package/selection/transformation.mjs +101 -175
  217. package/shortcutContexts/commands/editor/closeAndSave.js +2 -2
  218. package/shortcutContexts/commands/editor/closeAndSave.mjs +2 -2
  219. package/shortcutContexts/commands/editor/open.js +3 -18
  220. package/shortcutContexts/commands/editor/open.mjs +3 -18
  221. package/shortcutContexts/commands/extendCellsSelection/down.js +1 -1
  222. package/shortcutContexts/commands/extendCellsSelection/down.mjs +1 -1
  223. package/shortcutContexts/commands/extendCellsSelection/left.js +1 -1
  224. package/shortcutContexts/commands/extendCellsSelection/left.mjs +1 -1
  225. package/shortcutContexts/commands/extendCellsSelection/right.js +1 -1
  226. package/shortcutContexts/commands/extendCellsSelection/right.mjs +1 -1
  227. package/shortcutContexts/commands/extendCellsSelection/toColumns.js +1 -1
  228. package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +1 -1
  229. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +1 -3
  230. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +1 -3
  231. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +3 -9
  232. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +3 -9
  233. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +3 -10
  234. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +3 -10
  235. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +1 -3
  236. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +1 -3
  237. package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +1 -3
  238. package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +1 -3
  239. package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +1 -3
  240. package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +1 -3
  241. package/shortcutContexts/commands/extendCellsSelection/toRows.js +1 -1
  242. package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +1 -1
  243. package/shortcutContexts/commands/extendCellsSelection/up.js +1 -1
  244. package/shortcutContexts/commands/extendCellsSelection/up.mjs +1 -1
  245. package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +1 -6
  246. package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +1 -6
  247. package/shortcutContexts/commands/moveCellSelection/inlineStart.js +1 -6
  248. package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +1 -6
  249. package/shortcutContexts/grid.js +2 -2
  250. package/shortcutContexts/grid.mjs +2 -2
  251. package/shortcuts/context.js +1 -2
  252. package/shortcuts/context.mjs +1 -2
  253. package/tableView.js +52 -98
  254. package/tableView.mjs +52 -98
  255. package/translations/changesObservable/observable.js +21 -38
  256. package/translations/changesObservable/observable.mjs +21 -38
  257. package/translations/changesObservable/observer.js +7 -12
  258. package/translations/changesObservable/observer.mjs +6 -11
  259. package/translations/mapCollections/aggregatedCollection.js +1 -1
  260. package/translations/mapCollections/aggregatedCollection.mjs +1 -1
  261. package/translations/maps/indexMap.js +1 -1
  262. package/translations/maps/indexMap.mjs +1 -1
  263. package/utils/dataStructures/linkedList.js +1 -6
  264. package/utils/dataStructures/linkedList.mjs +1 -6
  265. package/utils/dataStructures/tree.js +1 -1
  266. package/utils/dataStructures/tree.mjs +1 -1
  267. package/utils/interval.js +26 -44
  268. package/utils/interval.mjs +26 -44
  269. package/core/viewportScroll/scrollStrategies/focusScroll.js +0 -15
  270. package/core/viewportScroll/scrollStrategies/focusScroll.mjs +0 -11
  271. package/plugins/mergeCells/focusOrder.js +0 -258
  272. package/plugins/mergeCells/focusOrder.mjs +0 -253
@@ -6,7 +6,7 @@ function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollect
6
6
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
7
7
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
8
8
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
9
- function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
9
+ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
10
10
  import { createHighlight as createActiveHighlight } from "./types/activeHeader.mjs";
11
11
  import { createHighlight as createAreaLayeredHighlight } from "./types/areaLayered.mjs";
12
12
  import { createHighlight as createAreaHighlight } from "./types/area.mjs";
@@ -35,7 +35,7 @@ export { HIGHLIGHT_ACTIVE_HEADER_TYPE as ACTIVE_HEADER_TYPE, HIGHLIGHT_AREA_TYPE
35
35
  * @class Highlight
36
36
  * @util
37
37
  */
38
- var _createHighlight = /*#__PURE__*/new WeakSet();
38
+ var _Highlight_brand = /*#__PURE__*/new WeakSet();
39
39
  _Symbol$iterator = Symbol.iterator;
40
40
  class Highlight {
41
41
  constructor(options) {
@@ -46,7 +46,7 @@ class Highlight {
46
46
  * @param {Function} highlightFactory The function factory.
47
47
  * @returns {VisualSelection}
48
48
  */
49
- _classPrivateMethodInitSpec(this, _createHighlight);
49
+ _classPrivateMethodInitSpec(this, _Highlight_brand);
50
50
  /**
51
51
  * Options consumed by Highlight class and Walkontable Selection classes.
52
52
  *
@@ -214,7 +214,7 @@ class Highlight {
214
214
  * @returns {Selection}
215
215
  */
216
216
  createLayeredArea() {
217
- return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.layeredAreas, createAreaLayeredHighlight);
217
+ return _assertClassBrand(_Highlight_brand, this, _createHighlight).call(this, this.layeredAreas, createAreaLayeredHighlight);
218
218
  }
219
219
 
220
220
  /**
@@ -233,7 +233,7 @@ class Highlight {
233
233
  * @returns {Selection}
234
234
  */
235
235
  createArea() {
236
- return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.areas, createAreaHighlight);
236
+ return _assertClassBrand(_Highlight_brand, this, _createHighlight).call(this, this.areas, createAreaHighlight);
237
237
  }
238
238
 
239
239
  /**
@@ -252,7 +252,7 @@ class Highlight {
252
252
  * @returns {Selection}
253
253
  */
254
254
  createRowHeader() {
255
- return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.rowHeaders, createHeaderHighlight);
255
+ return _assertClassBrand(_Highlight_brand, this, _createHighlight).call(this, this.rowHeaders, createHeaderHighlight);
256
256
  }
257
257
 
258
258
  /**
@@ -271,7 +271,7 @@ class Highlight {
271
271
  * @returns {Selection}
272
272
  */
273
273
  createColumnHeader() {
274
- return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.columnHeaders, createHeaderHighlight);
274
+ return _assertClassBrand(_Highlight_brand, this, _createHighlight).call(this, this.columnHeaders, createHeaderHighlight);
275
275
  }
276
276
 
277
277
  /**
@@ -290,7 +290,7 @@ class Highlight {
290
290
  * @returns {Selection}
291
291
  */
292
292
  createActiveRowHeader() {
293
- return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.activeRowHeaders, createActiveHighlight);
293
+ return _assertClassBrand(_Highlight_brand, this, _createHighlight).call(this, this.activeRowHeaders, createActiveHighlight);
294
294
  }
295
295
 
296
296
  /**
@@ -309,7 +309,7 @@ class Highlight {
309
309
  * @returns {Selection}
310
310
  */
311
311
  createActiveColumnHeader() {
312
- return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.activeColumnHeaders, createActiveHighlight);
312
+ return _assertClassBrand(_Highlight_brand, this, _createHighlight).call(this, this.activeColumnHeaders, createActiveHighlight);
313
313
  }
314
314
 
315
315
  /**
@@ -328,7 +328,7 @@ class Highlight {
328
328
  * @returns {Selection}
329
329
  */
330
330
  createActiveCornerHeader() {
331
- return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.activeCornerHeaders, createActiveHighlight);
331
+ return _assertClassBrand(_Highlight_brand, this, _createHighlight).call(this, this.activeCornerHeaders, createActiveHighlight);
332
332
  }
333
333
 
334
334
  /**
@@ -347,7 +347,7 @@ class Highlight {
347
347
  * @returns {Selection}
348
348
  */
349
349
  createRowHighlight() {
350
- return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.rowHighlights, createRowHighlight);
350
+ return _assertClassBrand(_Highlight_brand, this, _createHighlight).call(this, this.rowHighlights, createRowHighlight);
351
351
  }
352
352
 
353
353
  /**
@@ -366,7 +366,7 @@ class Highlight {
366
366
  * @returns {Selection}
367
367
  */
368
368
  createColumnHighlight() {
369
- return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.columnHighlights, createColumnHighlight);
369
+ return _assertClassBrand(_Highlight_brand, this, _createHighlight).call(this, this.columnHighlights, createColumnHighlight);
370
370
  }
371
371
 
372
372
  /**
@@ -424,7 +424,7 @@ class Highlight {
424
424
  return [this.focus, this.fill, ...this.areas.values(), ...this.layeredAreas.values(), ...this.rowHeaders.values(), ...this.columnHeaders.values(), ...this.activeRowHeaders.values(), ...this.activeColumnHeaders.values(), ...this.activeCornerHeaders.values(), ...this.rowHighlights.values(), ...this.columnHighlights.values(), ...this.customSelections][Symbol.iterator]();
425
425
  }
426
426
  }
427
- function _createHighlight2(cacheMap, highlightFactory) {
427
+ function _createHighlight(cacheMap, highlightFactory) {
428
428
  const layerLevel = this.layerLevel;
429
429
  if (cacheMap.has(layerLevel)) {
430
430
  return cacheMap.get(layerLevel);
@@ -147,25 +147,13 @@ class VisualSelection extends _src.Selection {
147
147
  * @returns {VisualSelection}
148
148
  */
149
149
  syncWith(broaderCellRange) {
150
- const highlight = this.visualCellRange.highlight.clone().normalize();
150
+ const coordsFrom = broaderCellRange.from.clone().normalize();
151
151
  const rowDirection = broaderCellRange.getVerticalDirection() === 'N-S' ? 1 : -1;
152
152
  const columnDirection = broaderCellRange.getHorizontalDirection() === 'W-E' ? 1 : -1;
153
153
  const renderableHighlight = this.settings.visualToRenderableCoords(this.visualCellRange.highlight);
154
154
  let cellCoordsVisual = null;
155
155
  if (renderableHighlight === null || renderableHighlight.col === null || renderableHighlight.row === null) {
156
- const topStartCorder = broaderCellRange.getTopStartCorner();
157
- const bottomEndCorner = broaderCellRange.getBottomEndCorner();
158
- let nextVisibleRow = this.settings.rowIndexMapper.getNearestNotHiddenIndex(highlight.row, rowDirection);
159
- if (nextVisibleRow === null || rowDirection === 1 && nextVisibleRow > bottomEndCorner.row || rowDirection === -1 && nextVisibleRow < topStartCorder.row) {
160
- nextVisibleRow = this.settings.rowIndexMapper.getNearestNotHiddenIndex(highlight.row, -rowDirection);
161
- }
162
- let nextVisibleColumn = this.settings.columnIndexMapper.getNearestNotHiddenIndex(highlight.col, columnDirection);
163
- if (nextVisibleColumn === null || columnDirection === 1 && nextVisibleColumn > bottomEndCorner.col || columnDirection === -1 && nextVisibleColumn < topStartCorder.col) {
164
- nextVisibleColumn = this.settings.columnIndexMapper.getNearestNotHiddenIndex(highlight.col, -columnDirection);
165
- }
166
- if (nextVisibleRow !== null && nextVisibleColumn !== null) {
167
- cellCoordsVisual = this.settings.createCellCoords(nextVisibleRow, nextVisibleColumn);
168
- }
156
+ cellCoordsVisual = this.getNearestNotHiddenCoords(coordsFrom, rowDirection, columnDirection);
169
157
  }
170
158
  if (cellCoordsVisual !== null && broaderCellRange.overlaps(cellCoordsVisual)) {
171
159
  const currentHighlight = broaderCellRange.highlight.clone();
@@ -182,13 +170,11 @@ class VisualSelection extends _src.Selection {
182
170
  this.cellRange = this.settings.createCellRange(cellCoordsRenderable);
183
171
  }
184
172
 
185
- // TODO
186
173
  // We set new highlight as it might change (for example, when showing/hiding some cells from the broader selection range)
187
174
  // TODO: It is also handled by the `MergeCells` plugin while adjusting already modified coordinates. Should it?
188
175
  broaderCellRange.setHighlight(currentHighlight);
189
176
  }
190
177
 
191
- // TODO
192
178
  // Sync the highlight coords from the visual selection layer with logical coords.
193
179
  if (this.settings.selectionType === 'focus' && renderableHighlight !== null && cellCoordsVisual === null) {
194
180
  broaderCellRange.setHighlight(this.visualCellRange.highlight);
@@ -144,25 +144,13 @@ class VisualSelection extends Selection {
144
144
  * @returns {VisualSelection}
145
145
  */
146
146
  syncWith(broaderCellRange) {
147
- const highlight = this.visualCellRange.highlight.clone().normalize();
147
+ const coordsFrom = broaderCellRange.from.clone().normalize();
148
148
  const rowDirection = broaderCellRange.getVerticalDirection() === 'N-S' ? 1 : -1;
149
149
  const columnDirection = broaderCellRange.getHorizontalDirection() === 'W-E' ? 1 : -1;
150
150
  const renderableHighlight = this.settings.visualToRenderableCoords(this.visualCellRange.highlight);
151
151
  let cellCoordsVisual = null;
152
152
  if (renderableHighlight === null || renderableHighlight.col === null || renderableHighlight.row === null) {
153
- const topStartCorder = broaderCellRange.getTopStartCorner();
154
- const bottomEndCorner = broaderCellRange.getBottomEndCorner();
155
- let nextVisibleRow = this.settings.rowIndexMapper.getNearestNotHiddenIndex(highlight.row, rowDirection);
156
- if (nextVisibleRow === null || rowDirection === 1 && nextVisibleRow > bottomEndCorner.row || rowDirection === -1 && nextVisibleRow < topStartCorder.row) {
157
- nextVisibleRow = this.settings.rowIndexMapper.getNearestNotHiddenIndex(highlight.row, -rowDirection);
158
- }
159
- let nextVisibleColumn = this.settings.columnIndexMapper.getNearestNotHiddenIndex(highlight.col, columnDirection);
160
- if (nextVisibleColumn === null || columnDirection === 1 && nextVisibleColumn > bottomEndCorner.col || columnDirection === -1 && nextVisibleColumn < topStartCorder.col) {
161
- nextVisibleColumn = this.settings.columnIndexMapper.getNearestNotHiddenIndex(highlight.col, -columnDirection);
162
- }
163
- if (nextVisibleRow !== null && nextVisibleColumn !== null) {
164
- cellCoordsVisual = this.settings.createCellCoords(nextVisibleRow, nextVisibleColumn);
165
- }
153
+ cellCoordsVisual = this.getNearestNotHiddenCoords(coordsFrom, rowDirection, columnDirection);
166
154
  }
167
155
  if (cellCoordsVisual !== null && broaderCellRange.overlaps(cellCoordsVisual)) {
168
156
  const currentHighlight = broaderCellRange.highlight.clone();
@@ -179,13 +167,11 @@ class VisualSelection extends Selection {
179
167
  this.cellRange = this.settings.createCellRange(cellCoordsRenderable);
180
168
  }
181
169
 
182
- // TODO
183
170
  // We set new highlight as it might change (for example, when showing/hiding some cells from the broader selection range)
184
171
  // TODO: It is also handled by the `MergeCells` plugin while adjusting already modified coordinates. Should it?
185
172
  broaderCellRange.setHighlight(currentHighlight);
186
173
  }
187
174
 
188
- // TODO
189
175
  // Sync the highlight coords from the visual selection layer with logical coords.
190
176
  if (this.settings.selectionType === 'focus' && renderableHighlight !== null && cellCoordsVisual === null) {
191
177
  broaderCellRange.setHighlight(this.visualCellRange.highlight);