handsontable 14.0.0-next-07c0a60-20231107 → 14.0.0-next-7ee54cb-20231108

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.
Files changed (328) hide show
  1. package/3rdparty/SheetClip/SheetClip.js +2 -2
  2. package/3rdparty/SheetClip/SheetClip.mjs +2 -2
  3. package/3rdparty/autoResize/autoResize.js +2 -2
  4. package/3rdparty/autoResize/autoResize.mjs +2 -2
  5. package/3rdparty/walkontable/src/calculator/viewportColumns.js +108 -85
  6. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +108 -85
  7. package/3rdparty/walkontable/src/calculator/viewportRows.js +60 -52
  8. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +60 -52
  9. package/3rdparty/walkontable/src/cell/coords.js +7 -5
  10. package/3rdparty/walkontable/src/cell/coords.mjs +7 -5
  11. package/3rdparty/walkontable/src/core/clone.js +6 -0
  12. package/3rdparty/walkontable/src/core/clone.mjs +6 -0
  13. package/3rdparty/walkontable/src/event.js +125 -74
  14. package/3rdparty/walkontable/src/event.mjs +125 -74
  15. package/3rdparty/walkontable/src/filter/column.js +16 -0
  16. package/3rdparty/walkontable/src/filter/column.mjs +16 -0
  17. package/3rdparty/walkontable/src/filter/row.js +16 -0
  18. package/3rdparty/walkontable/src/filter/row.mjs +16 -0
  19. package/3rdparty/walkontable/src/overlay/bottom.js +1 -1
  20. package/3rdparty/walkontable/src/overlay/bottom.mjs +1 -1
  21. package/3rdparty/walkontable/src/overlay/top.js +1 -1
  22. package/3rdparty/walkontable/src/overlay/top.mjs +1 -1
  23. package/3rdparty/walkontable/src/renderer/_base.js +12 -5
  24. package/3rdparty/walkontable/src/renderer/_base.mjs +12 -5
  25. package/3rdparty/walkontable/src/renderer/cells.js +6 -2
  26. package/3rdparty/walkontable/src/renderer/cells.mjs +6 -2
  27. package/3rdparty/walkontable/src/renderer/rowHeaders.js +6 -2
  28. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +6 -2
  29. package/3rdparty/walkontable/src/renderer/rows.js +5 -0
  30. package/3rdparty/walkontable/src/renderer/rows.mjs +5 -0
  31. package/3rdparty/walkontable/src/renderer/table.js +24 -17
  32. package/3rdparty/walkontable/src/renderer/table.mjs +24 -17
  33. package/3rdparty/walkontable/src/scroll.js +2 -2
  34. package/3rdparty/walkontable/src/scroll.mjs +2 -2
  35. package/3rdparty/walkontable/src/selection/border/border.js +1 -1
  36. package/3rdparty/walkontable/src/selection/border/border.mjs +1 -1
  37. package/3rdparty/walkontable/src/settings.js +10 -10
  38. package/3rdparty/walkontable/src/settings.mjs +10 -10
  39. package/3rdparty/walkontable/src/table.js +3 -3
  40. package/3rdparty/walkontable/src/table.mjs +3 -3
  41. package/3rdparty/walkontable/src/utils/column.js +19 -4
  42. package/3rdparty/walkontable/src/utils/column.mjs +19 -4
  43. package/3rdparty/walkontable/src/utils/nodesPool.js +5 -0
  44. package/3rdparty/walkontable/src/utils/nodesPool.mjs +5 -0
  45. package/3rdparty/walkontable/src/utils/orderView/view.js +13 -6
  46. package/3rdparty/walkontable/src/utils/orderView/view.mjs +13 -6
  47. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +9 -6
  48. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +9 -6
  49. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +7 -4
  50. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +7 -4
  51. package/3rdparty/walkontable/src/utils/row.js +14 -2
  52. package/3rdparty/walkontable/src/utils/row.mjs +14 -2
  53. package/3rdparty/walkontable/src/viewport.js +9 -9
  54. package/3rdparty/walkontable/src/viewport.mjs +9 -9
  55. package/base.js +2 -2
  56. package/base.mjs +2 -2
  57. package/core.js +31 -26
  58. package/core.mjs +31 -26
  59. package/dataMap/dataMap.js +99 -90
  60. package/dataMap/dataMap.mjs +99 -90
  61. package/dataMap/dataSource.js +14 -8
  62. package/dataMap/dataSource.mjs +14 -8
  63. package/dataMap/metaManager/lazyFactoryMap.js +19 -7
  64. package/dataMap/metaManager/lazyFactoryMap.mjs +19 -7
  65. package/dataMap/metaManager/metaLayers/cellMeta.js +8 -3
  66. package/dataMap/metaManager/metaLayers/cellMeta.mjs +8 -3
  67. package/dataMap/metaManager/metaLayers/columnMeta.js +7 -1
  68. package/dataMap/metaManager/metaLayers/columnMeta.mjs +7 -1
  69. package/dataMap/metaManager/metaLayers/globalMeta.js +6 -1
  70. package/dataMap/metaManager/metaLayers/globalMeta.mjs +6 -1
  71. package/dataMap/metaManager/metaLayers/tableMeta.js +6 -2
  72. package/dataMap/metaManager/metaLayers/tableMeta.mjs +6 -2
  73. package/dataMap/metaManager/metaSchema.js +55 -55
  74. package/dataMap/metaManager/metaSchema.mjs +55 -55
  75. package/dataMap/metaManager/mods/dynamicCellMeta.js +7 -2
  76. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +7 -2
  77. package/dataMap/metaManager/mods/extendMetaProperties.js +8 -4
  78. package/dataMap/metaManager/mods/extendMetaProperties.mjs +8 -4
  79. package/dataMap/metaManager/utils.js +2 -2
  80. package/dataMap/metaManager/utils.mjs +2 -2
  81. package/dist/handsontable.css +2 -2
  82. package/dist/handsontable.full.css +2 -2
  83. package/dist/handsontable.full.js +7337 -6394
  84. package/dist/handsontable.full.min.css +2 -2
  85. package/dist/handsontable.full.min.js +154 -154
  86. package/dist/handsontable.js +7336 -6393
  87. package/dist/handsontable.min.css +2 -2
  88. package/dist/handsontable.min.js +28 -28
  89. package/editorManager.js +105 -95
  90. package/editorManager.mjs +105 -95
  91. package/editors/autocompleteEditor/autocompleteEditor.js +47 -46
  92. package/editors/autocompleteEditor/autocompleteEditor.mjs +46 -45
  93. package/editors/baseEditor/baseEditor.js +23 -26
  94. package/editors/baseEditor/baseEditor.mjs +23 -26
  95. package/editors/dateEditor/dateEditor.js +24 -15
  96. package/editors/dateEditor/dateEditor.mjs +24 -15
  97. package/editors/dropdownEditor/dropdownEditor.js +1 -1
  98. package/editors/dropdownEditor/dropdownEditor.mjs +1 -1
  99. package/editors/handsontableEditor/handsontableEditor.js +4 -4
  100. package/editors/handsontableEditor/handsontableEditor.mjs +4 -4
  101. package/editors/textEditor/textEditor.js +23 -17
  102. package/editors/textEditor/textEditor.mjs +24 -18
  103. package/eventManager.js +8 -0
  104. package/eventManager.mjs +8 -0
  105. package/helpers/array.js +2 -2
  106. package/helpers/array.mjs +2 -2
  107. package/helpers/dom/element.js +7 -7
  108. package/helpers/dom/element.mjs +7 -7
  109. package/helpers/function.js +1 -1
  110. package/helpers/function.mjs +1 -1
  111. package/helpers/mixed.js +1 -1
  112. package/helpers/mixed.mjs +1 -1
  113. package/helpers/object.js +4 -4
  114. package/helpers/object.mjs +4 -4
  115. package/helpers/string.js +1 -1
  116. package/helpers/string.mjs +1 -1
  117. package/package.json +1 -1
  118. package/pluginHooks.d.ts +0 -2
  119. package/pluginHooks.js +12 -3
  120. package/pluginHooks.mjs +12 -3
  121. package/plugins/autoColumnSize/autoColumnSize.js +141 -130
  122. package/plugins/autoColumnSize/autoColumnSize.mjs +140 -129
  123. package/plugins/autoRowSize/autoRowSize.js +112 -125
  124. package/plugins/autoRowSize/autoRowSize.mjs +110 -123
  125. package/plugins/autofill/autofill.js +98 -102
  126. package/plugins/autofill/autofill.mjs +97 -101
  127. package/plugins/base/base.js +61 -28
  128. package/plugins/base/base.mjs +60 -28
  129. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +29 -24
  130. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +28 -23
  131. package/plugins/collapsibleColumns/collapsibleColumns.js +104 -107
  132. package/plugins/collapsibleColumns/collapsibleColumns.mjs +102 -104
  133. package/plugins/columnSorting/columnSorting.js +107 -99
  134. package/plugins/columnSorting/columnSorting.mjs +106 -98
  135. package/plugins/columnSorting/columnStatesManager.js +12 -6
  136. package/plugins/columnSorting/columnStatesManager.mjs +12 -6
  137. package/plugins/columnSummary/columnSummary.js +71 -58
  138. package/plugins/columnSummary/columnSummary.mjs +70 -57
  139. package/plugins/columnSummary/endpoints.js +20 -14
  140. package/plugins/columnSummary/endpoints.mjs +20 -14
  141. package/plugins/comments/commentEditor.js +30 -2
  142. package/plugins/comments/commentEditor.mjs +30 -2
  143. package/plugins/comments/comments.js +158 -169
  144. package/plugins/comments/comments.mjs +157 -168
  145. package/plugins/comments/displaySwitch.js +7 -3
  146. package/plugins/comments/displaySwitch.mjs +7 -3
  147. package/plugins/contextMenu/commandExecutor.js +15 -2
  148. package/plugins/contextMenu/commandExecutor.mjs +15 -2
  149. package/plugins/contextMenu/contextMenu.js +96 -102
  150. package/plugins/contextMenu/contextMenu.mjs +95 -101
  151. package/plugins/contextMenu/itemsFactory.js +19 -4
  152. package/plugins/contextMenu/itemsFactory.mjs +19 -4
  153. package/plugins/contextMenu/menu/cursor.js +36 -0
  154. package/plugins/contextMenu/menu/cursor.mjs +36 -0
  155. package/plugins/contextMenu/menu/menu.js +57 -5
  156. package/plugins/contextMenu/menu/menu.mjs +57 -5
  157. package/plugins/contextMenu/predefinedItems/removeColumn.js +1 -1
  158. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +1 -1
  159. package/plugins/contextMenu/predefinedItems/removeRow.js +1 -1
  160. package/plugins/contextMenu/predefinedItems/removeRow.mjs +1 -1
  161. package/plugins/copyPaste/copyPaste.js +74 -75
  162. package/plugins/copyPaste/copyPaste.mjs +74 -75
  163. package/plugins/customBorders/customBorders.js +57 -50
  164. package/plugins/customBorders/customBorders.mjs +56 -49
  165. package/plugins/dragToScroll/dragToScroll.js +50 -54
  166. package/plugins/dragToScroll/dragToScroll.mjs +49 -52
  167. package/plugins/dropdownMenu/dropdownMenu.js +136 -131
  168. package/plugins/dropdownMenu/dropdownMenu.mjs +136 -131
  169. package/plugins/exportFile/dataProvider.js +7 -2
  170. package/plugins/exportFile/dataProvider.mjs +7 -2
  171. package/plugins/exportFile/exportFile.js +1 -1
  172. package/plugins/exportFile/exportFile.mjs +1 -1
  173. package/plugins/exportFile/types/_base.js +14 -6
  174. package/plugins/exportFile/types/_base.mjs +14 -6
  175. package/plugins/filters/component/actionBar.js +9 -0
  176. package/plugins/filters/component/actionBar.mjs +9 -0
  177. package/plugins/filters/component/condition.js +13 -0
  178. package/plugins/filters/component/condition.mjs +13 -0
  179. package/plugins/filters/component/operators.js +9 -0
  180. package/plugins/filters/component/operators.mjs +9 -0
  181. package/plugins/filters/component/value.js +9 -0
  182. package/plugins/filters/component/value.mjs +9 -0
  183. package/plugins/filters/conditionCollection.js +9 -4
  184. package/plugins/filters/conditionCollection.mjs +9 -4
  185. package/plugins/filters/conditionUpdateObserver.js +53 -42
  186. package/plugins/filters/conditionUpdateObserver.mjs +53 -42
  187. package/plugins/filters/dataFilter.js +9 -3
  188. package/plugins/filters/dataFilter.mjs +9 -3
  189. package/plugins/filters/filters.js +184 -189
  190. package/plugins/filters/filters.mjs +182 -187
  191. package/plugins/filters/ui/_base.js +1 -1
  192. package/plugins/filters/ui/_base.mjs +1 -1
  193. package/plugins/filters/utils.js +1 -1
  194. package/plugins/filters/utils.mjs +1 -1
  195. package/plugins/formulas/engine/settings.js +1 -1
  196. package/plugins/formulas/engine/settings.mjs +1 -1
  197. package/plugins/formulas/formulas.js +684 -602
  198. package/plugins/formulas/formulas.mjs +682 -600
  199. package/plugins/hiddenColumns/hiddenColumns.js +174 -169
  200. package/plugins/hiddenColumns/hiddenColumns.mjs +173 -168
  201. package/plugins/hiddenRows/hiddenRows.js +170 -165
  202. package/plugins/hiddenRows/hiddenRows.mjs +169 -164
  203. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
  204. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
  205. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
  206. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
  207. package/plugins/manualColumnFreeze/manualColumnFreeze.js +66 -53
  208. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +64 -51
  209. package/plugins/manualColumnMove/manualColumnMove.js +287 -232
  210. package/plugins/manualColumnMove/manualColumnMove.mjs +286 -231
  211. package/plugins/manualColumnMove/ui/_base.js +9 -3
  212. package/plugins/manualColumnMove/ui/_base.mjs +9 -3
  213. package/plugins/manualColumnResize/manualColumnResize.js +291 -246
  214. package/plugins/manualColumnResize/manualColumnResize.mjs +290 -244
  215. package/plugins/manualRowMove/manualRowMove.js +223 -208
  216. package/plugins/manualRowMove/manualRowMove.mjs +222 -207
  217. package/plugins/manualRowMove/ui/_base.js +10 -5
  218. package/plugins/manualRowMove/ui/_base.mjs +10 -5
  219. package/plugins/manualRowResize/manualRowResize.js +254 -209
  220. package/plugins/manualRowResize/manualRowResize.mjs +253 -207
  221. package/plugins/mergeCells/calculations/autofill.js +9 -3
  222. package/plugins/mergeCells/calculations/autofill.mjs +9 -3
  223. package/plugins/mergeCells/calculations/selection.js +10 -4
  224. package/plugins/mergeCells/calculations/selection.mjs +10 -4
  225. package/plugins/mergeCells/cellCoords.js +16 -6
  226. package/plugins/mergeCells/cellCoords.mjs +16 -6
  227. package/plugins/mergeCells/cellsCollection.js +10 -4
  228. package/plugins/mergeCells/cellsCollection.mjs +10 -4
  229. package/plugins/mergeCells/mergeCells.js +582 -502
  230. package/plugins/mergeCells/mergeCells.mjs +580 -500
  231. package/plugins/multiColumnSorting/multiColumnSorting.js +15 -11
  232. package/plugins/multiColumnSorting/multiColumnSorting.mjs +15 -11
  233. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +16 -28
  234. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +16 -27
  235. package/plugins/nestedHeaders/nestedHeaders.js +542 -499
  236. package/plugins/nestedHeaders/nestedHeaders.mjs +554 -511
  237. package/plugins/nestedHeaders/stateManager/index.js +1 -1
  238. package/plugins/nestedHeaders/stateManager/index.mjs +1 -1
  239. package/plugins/nestedRows/data/dataManager.js +21 -15
  240. package/plugins/nestedRows/data/dataManager.mjs +21 -15
  241. package/plugins/nestedRows/nestedRows.js +328 -279
  242. package/plugins/nestedRows/nestedRows.mjs +327 -278
  243. package/plugins/nestedRows/ui/_base.js +7 -1
  244. package/plugins/nestedRows/ui/_base.mjs +7 -1
  245. package/plugins/nestedRows/ui/collapsing.js +2 -2
  246. package/plugins/nestedRows/ui/collapsing.mjs +2 -2
  247. package/plugins/nestedRows/ui/contextMenu.js +28 -18
  248. package/plugins/nestedRows/ui/contextMenu.mjs +28 -18
  249. package/plugins/nestedRows/utils/rowMoveController.js +12 -4
  250. package/plugins/nestedRows/utils/rowMoveController.mjs +12 -4
  251. package/plugins/persistentState/persistentState.js +14 -11
  252. package/plugins/persistentState/persistentState.mjs +14 -11
  253. package/plugins/persistentState/storage.js +11 -6
  254. package/plugins/persistentState/storage.mjs +11 -6
  255. package/plugins/registry.js +2 -2
  256. package/plugins/registry.mjs +2 -2
  257. package/plugins/search/search.js +57 -46
  258. package/plugins/search/search.mjs +56 -45
  259. package/plugins/touchScroll/touchScroll.js +102 -100
  260. package/plugins/touchScroll/touchScroll.mjs +100 -98
  261. package/plugins/trimRows/trimRows.js +33 -28
  262. package/plugins/trimRows/trimRows.mjs +32 -27
  263. package/plugins/undoRedo/undoRedo.js +2 -2
  264. package/plugins/undoRedo/undoRedo.mjs +2 -2
  265. package/renderers/autocompleteRenderer/autocompleteRenderer.js +11 -11
  266. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +11 -11
  267. package/renderers/baseRenderer/baseRenderer.js +2 -2
  268. package/renderers/baseRenderer/baseRenderer.mjs +2 -2
  269. package/renderers/checkboxRenderer/checkboxRenderer.js +23 -23
  270. package/renderers/checkboxRenderer/checkboxRenderer.mjs +23 -23
  271. package/renderers/dateRenderer/dateRenderer.js +4 -4
  272. package/renderers/dateRenderer/dateRenderer.mjs +4 -4
  273. package/renderers/handsontableRenderer/handsontableRenderer.js +4 -4
  274. package/renderers/handsontableRenderer/handsontableRenderer.mjs +4 -4
  275. package/renderers/htmlRenderer/htmlRenderer.js +4 -4
  276. package/renderers/htmlRenderer/htmlRenderer.mjs +4 -4
  277. package/renderers/numericRenderer/numericRenderer.js +3 -3
  278. package/renderers/numericRenderer/numericRenderer.mjs +3 -3
  279. package/renderers/passwordRenderer/passwordRenderer.js +3 -3
  280. package/renderers/passwordRenderer/passwordRenderer.mjs +3 -3
  281. package/renderers/selectRenderer/selectRenderer.js +4 -4
  282. package/renderers/selectRenderer/selectRenderer.mjs +4 -4
  283. package/renderers/textRenderer/textRenderer.js +5 -5
  284. package/renderers/textRenderer/textRenderer.mjs +5 -5
  285. package/renderers/timeRenderer/timeRenderer.js +3 -3
  286. package/renderers/timeRenderer/timeRenderer.mjs +3 -3
  287. package/selection/highlight/highlight.js +1 -4
  288. package/selection/highlight/highlight.mjs +1 -4
  289. package/selection/range.js +12 -2
  290. package/selection/range.mjs +12 -2
  291. package/selection/selection.js +28 -10
  292. package/selection/selection.mjs +28 -10
  293. package/selection/utils.js +24 -14
  294. package/selection/utils.mjs +25 -15
  295. package/shortcuts/manager.js +1 -1
  296. package/shortcuts/manager.mjs +1 -1
  297. package/tableView.js +208 -200
  298. package/tableView.mjs +208 -200
  299. package/translations/changesObservable/utils.js +2 -2
  300. package/translations/changesObservable/utils.mjs +2 -2
  301. package/translations/indexMapper.js +25 -22
  302. package/translations/indexMapper.mjs +25 -22
  303. package/translations/mapCollections/aggregatedCollection.js +8 -2
  304. package/translations/mapCollections/aggregatedCollection.mjs +8 -2
  305. package/translations/mapCollections/mapCollection.js +5 -2
  306. package/translations/mapCollections/mapCollection.mjs +5 -2
  307. package/translations/maps/indexMap.js +6 -1
  308. package/translations/maps/indexMap.mjs +6 -1
  309. package/translations/maps/utils/physicallyIndexed.js +2 -2
  310. package/translations/maps/utils/physicallyIndexed.mjs +2 -2
  311. package/utils/dataStructures/linkedList.js +10 -6
  312. package/utils/dataStructures/linkedList.mjs +10 -6
  313. package/utils/dataStructures/queue.js +1 -1
  314. package/utils/dataStructures/queue.mjs +1 -1
  315. package/utils/dataStructures/stack.js +1 -1
  316. package/utils/dataStructures/stack.mjs +1 -1
  317. package/utils/ghostTable.js +2 -2
  318. package/utils/ghostTable.mjs +2 -2
  319. package/utils/interval.js +73 -36
  320. package/utils/interval.mjs +73 -36
  321. package/utils/parseTable.js +1 -1
  322. package/utils/parseTable.mjs +1 -1
  323. package/validators/autocompleteValidator/autocompleteValidator.js +1 -1
  324. package/validators/autocompleteValidator/autocompleteValidator.mjs +1 -1
  325. package/validators/dateValidator/dateValidator.js +1 -1
  326. package/validators/dateValidator/dateValidator.mjs +1 -1
  327. package/validators/numericValidator/numericValidator.js +1 -1
  328. package/validators/numericValidator/numericValidator.mjs +1 -1
@@ -1,5 +1,6 @@
1
1
  import "core-js/modules/es.error.cause.js";
2
2
  import "core-js/modules/es.array.push.js";
3
+ function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
3
4
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
4
5
  function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
5
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,6 +8,7 @@ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typ
7
8
  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); }
8
9
  function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
9
10
  function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
11
+ function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
10
12
  function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
11
13
  function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
12
14
  function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } }
@@ -15,7 +17,6 @@ import { arrayEach, arrayFilter, arrayUnique } from "../../helpers/array.mjs";
15
17
  import { rangeEach } from "../../helpers/number.mjs";
16
18
  import { warn } from "../../helpers/console.mjs";
17
19
  import { addClass, hasClass, removeClass, fastInnerText, removeAttribute, setAttribute } from "../../helpers/dom/element.mjs";
18
- import EventManager from "../../eventManager.mjs";
19
20
  import { stopImmediatePropagation } from "../../helpers/dom/event.mjs";
20
21
  import { A11Y_DESCRIPTION, A11Y_EXPANDED, A11Y_HIDDEN } from "../../helpers/a11y.mjs";
21
22
  import { COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN, COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN } from "../../i18n/constants.mjs";
@@ -106,23 +107,48 @@ const actionDictionary = new Map([['collapse', {
106
107
  * :::
107
108
  */
108
109
  var _collapsedColumnsMap = /*#__PURE__*/new WeakMap();
110
+ var _onAfterGetColHeader = /*#__PURE__*/new WeakSet();
111
+ var _onBeforeOnCellMouseDown = /*#__PURE__*/new WeakSet();
112
+ var _onInit = /*#__PURE__*/new WeakSet();
113
+ var _onAfterLoadData = /*#__PURE__*/new WeakSet();
109
114
  export class CollapsibleColumns extends BasePlugin {
110
115
  constructor() {
111
116
  super(...arguments);
112
117
  /**
113
- * Cached reference to the NestedHeaders plugin.
118
+ * Updates the plugin state after new dataset load.
114
119
  *
115
- * @private
116
- * @type {NestedHeaders}
120
+ * @param {Array[]} sourceData Array of arrays or array of objects containing data.
121
+ * @param {boolean} initialLoad Flag that determines whether the data has been loaded
122
+ * during the initialization.
117
123
  */
118
- _defineProperty(this, "nestedHeadersPlugin", null);
124
+ _classPrivateMethodInitSpec(this, _onAfterLoadData);
125
+ /**
126
+ * Updates the plugin state after HoT initialization.
127
+ */
128
+ _classPrivateMethodInitSpec(this, _onInit);
129
+ /**
130
+ * Indicator mouse event callback.
131
+ *
132
+ * @param {object} event Mouse event.
133
+ * @param {object} coords Event coordinates.
134
+ */
135
+ _classPrivateMethodInitSpec(this, _onBeforeOnCellMouseDown);
136
+ /**
137
+ * Adds the indicator to the headers.
138
+ *
139
+ * @param {number} column Column index.
140
+ * @param {HTMLElement} TH TH element.
141
+ * @param {number} headerLevel The index of header level counting from the top (positive
142
+ * values counting from 0 to N).
143
+ */
144
+ _classPrivateMethodInitSpec(this, _onAfterGetColHeader);
119
145
  /**
120
- * Event manager instance reference.
146
+ * Cached reference to the NestedHeaders plugin.
121
147
  *
122
148
  * @private
123
- * @type {EventManager}
149
+ * @type {NestedHeaders}
124
150
  */
125
- _defineProperty(this, "eventManager", new EventManager(this));
151
+ _defineProperty(this, "nestedHeadersPlugin", null);
126
152
  /**
127
153
  * The NestedHeaders plugin StateManager instance.
128
154
  *
@@ -180,14 +206,20 @@ export class CollapsibleColumns extends BasePlugin {
180
206
  _classPrivateFieldSet(this, _collapsedColumnsMap, this.hot.columnIndexMapper.createAndRegisterIndexMap(this.pluginName, 'hiding'));
181
207
  this.nestedHeadersPlugin = this.hot.getPlugin('nestedHeaders');
182
208
  this.headerStateManager = this.nestedHeadersPlugin.getStateManager();
183
- this.addHook('init', () => this.onInit());
209
+ this.addHook('init', () => _classPrivateMethodGet(this, _onInit, _onInit2).call(this));
184
210
  this.addHook('afterLoadData', function () {
185
- return _this.onAfterLoadData(...arguments);
211
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
212
+ args[_key] = arguments[_key];
213
+ }
214
+ return _classPrivateMethodGet(_this, _onAfterLoadData, _onAfterLoadData2).call(_this, ...args);
186
215
  });
187
216
  this.addHook('afterGetColHeader', function () {
188
- return _this.onAfterGetColHeader(...arguments);
217
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
218
+ args[_key2] = arguments[_key2];
219
+ }
220
+ return _classPrivateMethodGet(_this, _onAfterGetColHeader, _onAfterGetColHeader2).call(_this, ...args);
189
221
  });
190
- this.addHook('beforeOnCellMouseDown', (event, coords, TD) => this.onBeforeOnCellMouseDown(event, coords, TD));
222
+ this.addHook('beforeOnCellMouseDown', (event, coords, TD) => _classPrivateMethodGet(this, _onBeforeOnCellMouseDown, _onBeforeOnCellMouseDown2).call(this, event, coords, TD));
191
223
  this.registerShortcuts();
192
224
  super.enablePlugin();
193
225
  // @TODO: Workaround for broken plugin initialization abstraction (#6806).
@@ -481,109 +513,75 @@ export class CollapsibleColumns extends BasePlugin {
481
513
  getCollapsedColumns() {
482
514
  return _classPrivateFieldGet(this, _collapsedColumnsMap).getHiddenIndexes();
483
515
  }
484
-
485
516
  /**
486
- * Adds the indicator to the headers.
487
- *
488
- * @private
489
- * @param {number} column Column index.
490
- * @param {HTMLElement} TH TH element.
491
- * @param {number} headerLevel The index of header level counting from the top (positive
492
- * values counting from 0 to N).
517
+ * Destroys the plugin instance.
493
518
  */
494
- onAfterGetColHeader(column, TH, headerLevel) {
495
- var _this$headerStateMana3;
496
- const {
497
- collapsible,
498
- origColspan,
499
- isCollapsed
500
- } = (_this$headerStateMana3 = this.headerStateManager.getHeaderSettings(headerLevel, column)) !== null && _this$headerStateMana3 !== void 0 ? _this$headerStateMana3 : {};
501
- const isNodeCollapsible = collapsible && origColspan > 1 && column >= this.hot.getSettings().fixedColumnsStart;
502
- const isAriaTagsEnabled = this.hot.getSettings().ariaTags;
503
- let collapsibleElement = TH.querySelector(`.${COLLAPSIBLE_ELEMENT_CLASS}`);
504
- removeAttribute(TH, [A11Y_EXPANDED('')[0]]);
505
- if (isNodeCollapsible) {
506
- if (!collapsibleElement) {
507
- collapsibleElement = this.hot.rootDocument.createElement('div');
508
- addClass(collapsibleElement, COLLAPSIBLE_ELEMENT_CLASS);
509
- TH.querySelector('div:first-child').appendChild(collapsibleElement);
510
- }
511
- removeClass(collapsibleElement, ['collapsed', 'expanded']);
512
- if (isCollapsed) {
513
- addClass(collapsibleElement, 'collapsed');
514
- fastInnerText(collapsibleElement, '+');
515
-
516
- // Add ARIA tags
517
- if (isAriaTagsEnabled) {
518
- setAttribute(TH, [A11Y_EXPANDED(false), A11Y_DESCRIPTION(this.hot.getTranslatedPhrase(COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN))]);
519
- }
520
- } else {
521
- addClass(collapsibleElement, 'expanded');
522
- fastInnerText(collapsibleElement, '-');
519
+ destroy() {
520
+ _classPrivateFieldSet(this, _collapsedColumnsMap, null);
521
+ super.destroy();
522
+ }
523
+ }
524
+ function _onAfterGetColHeader2(column, TH, headerLevel) {
525
+ var _this$headerStateMana3;
526
+ const {
527
+ collapsible,
528
+ origColspan,
529
+ isCollapsed
530
+ } = (_this$headerStateMana3 = this.headerStateManager.getHeaderSettings(headerLevel, column)) !== null && _this$headerStateMana3 !== void 0 ? _this$headerStateMana3 : {};
531
+ const isNodeCollapsible = collapsible && origColspan > 1 && column >= this.hot.getSettings().fixedColumnsStart;
532
+ const isAriaTagsEnabled = this.hot.getSettings().ariaTags;
533
+ let collapsibleElement = TH.querySelector(`.${COLLAPSIBLE_ELEMENT_CLASS}`);
534
+ removeAttribute(TH, [A11Y_EXPANDED('')[0]]);
535
+ if (isNodeCollapsible) {
536
+ if (!collapsibleElement) {
537
+ collapsibleElement = this.hot.rootDocument.createElement('div');
538
+ addClass(collapsibleElement, COLLAPSIBLE_ELEMENT_CLASS);
539
+ TH.querySelector('div:first-child').appendChild(collapsibleElement);
540
+ }
541
+ removeClass(collapsibleElement, ['collapsed', 'expanded']);
542
+ if (isCollapsed) {
543
+ addClass(collapsibleElement, 'collapsed');
544
+ fastInnerText(collapsibleElement, '+');
523
545
 
524
- // Add ARIA tags
525
- if (isAriaTagsEnabled) {
526
- setAttribute(TH, [A11Y_EXPANDED(true), A11Y_DESCRIPTION(this.hot.getTranslatedPhrase(COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN))]);
527
- }
528
- }
546
+ // Add ARIA tags
529
547
  if (isAriaTagsEnabled) {
530
- setAttribute(collapsibleElement, ...A11Y_HIDDEN());
548
+ setAttribute(TH, [A11Y_EXPANDED(false), A11Y_DESCRIPTION(this.hot.getTranslatedPhrase(COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN))]);
531
549
  }
532
550
  } else {
533
- var _collapsibleElement;
534
- (_collapsibleElement = collapsibleElement) === null || _collapsibleElement === void 0 || _collapsibleElement.remove();
535
- }
536
- }
551
+ addClass(collapsibleElement, 'expanded');
552
+ fastInnerText(collapsibleElement, '-');
537
553
 
538
- /**
539
- * Indicator mouse event callback.
540
- *
541
- * @private
542
- * @param {object} event Mouse event.
543
- * @param {object} coords Event coordinates.
544
- */
545
- onBeforeOnCellMouseDown(event, coords) {
546
- if (hasClass(event.target, COLLAPSIBLE_ELEMENT_CLASS)) {
547
- if (hasClass(event.target, 'expanded')) {
548
- this.eventManager.fireEvent(event.target, 'mouseup');
549
- this.toggleCollapsibleSection([coords], 'collapse');
550
- } else if (hasClass(event.target, 'collapsed')) {
551
- this.eventManager.fireEvent(event.target, 'mouseup');
552
- this.toggleCollapsibleSection([coords], 'expand');
554
+ // Add ARIA tags
555
+ if (isAriaTagsEnabled) {
556
+ setAttribute(TH, [A11Y_EXPANDED(true), A11Y_DESCRIPTION(this.hot.getTranslatedPhrase(COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN))]);
553
557
  }
554
- stopImmediatePropagation(event);
555
558
  }
559
+ if (isAriaTagsEnabled) {
560
+ setAttribute(collapsibleElement, ...A11Y_HIDDEN());
561
+ }
562
+ } else {
563
+ var _collapsibleElement;
564
+ (_collapsibleElement = collapsibleElement) === null || _collapsibleElement === void 0 || _collapsibleElement.remove();
556
565
  }
557
-
558
- /**
559
- * Updates the plugin state after HoT initialization.
560
- *
561
- * @private
562
- */
563
- onInit() {
564
- // @TODO: Workaround for broken plugin initialization abstraction (#6806).
565
- this.updatePlugin();
566
- }
567
-
568
- /**
569
- * Updates the plugin state after new dataset load.
570
- *
571
- * @private
572
- * @param {Array[]} sourceData Array of arrays or array of objects containing data.
573
- * @param {boolean} initialLoad Flag that determines whether the data has been loaded
574
- * during the initialization.
575
- */
576
- onAfterLoadData(sourceData, initialLoad) {
577
- if (!initialLoad) {
578
- this.updatePlugin();
566
+ }
567
+ function _onBeforeOnCellMouseDown2(event, coords) {
568
+ if (hasClass(event.target, COLLAPSIBLE_ELEMENT_CLASS)) {
569
+ if (hasClass(event.target, 'expanded')) {
570
+ this.eventManager.fireEvent(event.target, 'mouseup');
571
+ this.toggleCollapsibleSection([coords], 'collapse');
572
+ } else if (hasClass(event.target, 'collapsed')) {
573
+ this.eventManager.fireEvent(event.target, 'mouseup');
574
+ this.toggleCollapsibleSection([coords], 'expand');
579
575
  }
576
+ stopImmediatePropagation(event);
580
577
  }
581
-
582
- /**
583
- * Destroys the plugin instance.
584
- */
585
- destroy() {
586
- _classPrivateFieldSet(this, _collapsedColumnsMap, null);
587
- super.destroy();
578
+ }
579
+ function _onInit2() {
580
+ // @TODO: Workaround for broken plugin initialization abstraction (#6806).
581
+ this.updatePlugin();
582
+ }
583
+ function _onAfterLoadData2(sourceData, initialLoad) {
584
+ if (!initialLoad) {
585
+ this.updatePlugin();
588
586
  }
589
587
  }
@@ -2,6 +2,7 @@
2
2
 
3
3
  exports.__esModule = true;
4
4
  require("core-js/modules/es.array.push.js");
5
+ require("core-js/modules/es.error.cause.js");
5
6
  var _element = require("../../helpers/dom/element");
6
7
  var _mixed = require("../../helpers/mixed");
7
8
  var _object = require("../../helpers/object");
@@ -18,6 +19,12 @@ var _sortService = require("./sortService");
18
19
  var _a11y = require("../../helpers/a11y");
19
20
  var _constants = require("../../i18n/constants");
20
21
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
+ function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
23
+ function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
24
+ 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; }
25
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
26
+ 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); }
27
+ function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
21
28
  const PLUGIN_KEY = exports.PLUGIN_KEY = 'columnSorting';
22
29
  const PLUGIN_PRIORITY = exports.PLUGIN_PRIORITY = 50;
23
30
  const APPEND_COLUMN_CONFIG_STRATEGY = exports.APPEND_COLUMN_CONFIG_STRATEGY = 'append';
@@ -78,45 +85,75 @@ _pluginHooks.default.getSingleton().register('afterColumnSort');
78
85
  * }]
79
86
  * ```
80
87
  */
88
+ var _loadOrSortBySettings = /*#__PURE__*/new WeakSet();
89
+ var _onAfterGetColHeader = /*#__PURE__*/new WeakSet();
90
+ var _onAfterLoadData = /*#__PURE__*/new WeakSet();
91
+ var _onBeforeOnCellMouseDown = /*#__PURE__*/new WeakSet();
81
92
  class ColumnSorting extends _base.BasePlugin {
82
- static get PLUGIN_KEY() {
83
- return PLUGIN_KEY;
84
- }
85
- static get PLUGIN_PRIORITY() {
86
- return PLUGIN_PRIORITY;
87
- }
88
- constructor(hotInstance) {
89
- super(hotInstance);
93
+ constructor() {
94
+ super(...arguments);
95
+ /**
96
+ * Changes the behavior of selection / dragging.
97
+ *
98
+ * @param {MouseEvent} event The `mousedown` event.
99
+ * @param {CellCoords} coords Visual coordinates.
100
+ * @param {HTMLElement} TD The cell element.
101
+ * @param {object} controller An object with properties `row`, `column` and `cell`. Each property contains
102
+ * a boolean value that allows or disallows changing the selection for that particular area.
103
+ */
104
+ _classPrivateMethodInitSpec(this, _onBeforeOnCellMouseDown);
105
+ /**
106
+ * Callback for the `afterLoadData` hook.
107
+ *
108
+ * @param {boolean} initialLoad Flag that determines whether the data has been loaded during the initialization.
109
+ */
110
+ _classPrivateMethodInitSpec(this, _onAfterLoadData);
111
+ /**
112
+ * Callback for the `onAfterGetColHeader` hook. Adds column sorting CSS classes.
113
+ *
114
+ * @param {number} column Visual column index.
115
+ * @param {Element} TH TH HTML element.
116
+ */
117
+ _classPrivateMethodInitSpec(this, _onAfterGetColHeader);
118
+ /**
119
+ * Load saved settings or sort by predefined plugin configuration.
120
+ */
121
+ _classPrivateMethodInitSpec(this, _loadOrSortBySettings);
90
122
  /**
91
123
  * Instance of column state manager.
92
124
  *
93
125
  * @private
94
126
  * @type {null|ColumnStatesManager}
95
127
  */
96
- this.columnStatesManager = null;
128
+ _defineProperty(this, "columnStatesManager", null);
97
129
  /**
98
130
  * Cached column properties from plugin like i.e. `indicator`, `headerAction`.
99
131
  *
100
132
  * @private
101
133
  * @type {null|PhysicalIndexToValueMap}
102
134
  */
103
- this.columnMetaCache = null;
135
+ _defineProperty(this, "columnMetaCache", null);
104
136
  /**
105
137
  * Main settings key designed for the plugin.
106
138
  *
107
139
  * @private
108
140
  * @type {string}
109
141
  */
110
- this.pluginKey = PLUGIN_KEY;
142
+ _defineProperty(this, "pluginKey", PLUGIN_KEY);
111
143
  /**
112
144
  * Plugin indexes cache.
113
145
  *
114
146
  * @private
115
147
  * @type {null|IndexesSequence}
116
148
  */
117
- this.indexesSequenceCache = null;
149
+ _defineProperty(this, "indexesSequenceCache", null);
150
+ }
151
+ static get PLUGIN_KEY() {
152
+ return PLUGIN_KEY;
153
+ }
154
+ static get PLUGIN_PRIORITY() {
155
+ return PLUGIN_PRIORITY;
118
156
  }
119
-
120
157
  /**
121
158
  * Checks if the plugin is enabled in the Handsontable settings. This method is executed in {@link Hooks#beforeInit}
122
159
  * hook and if it returns `true` then the {@link ColumnSorting#enablePlugin} method is called.
@@ -144,19 +181,25 @@ class ColumnSorting extends _base.BasePlugin {
144
181
  return this.getMergedPluginSettings(visualIndex);
145
182
  });
146
183
  this.hot.columnIndexMapper.registerMap(`${this.pluginKey}.columnMeta`, this.columnMetaCache);
147
- this.addHook('afterGetColHeader', (column, TH) => this.onAfterGetColHeader(column, TH));
184
+ this.addHook('afterGetColHeader', (column, TH) => _classPrivateMethodGet(this, _onAfterGetColHeader, _onAfterGetColHeader2).call(this, column, TH));
148
185
  this.addHook('beforeOnCellMouseDown', function () {
149
- return _this.onBeforeOnCellMouseDown(...arguments);
186
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
187
+ args[_key] = arguments[_key];
188
+ }
189
+ return _classPrivateMethodGet(_this, _onBeforeOnCellMouseDown, _onBeforeOnCellMouseDown2).call(_this, ...args);
150
190
  });
151
191
  this.addHook('afterOnCellMouseDown', (event, target) => this.onAfterOnCellMouseDown(event, target));
152
- this.addHook('afterInit', () => this.loadOrSortBySettings());
192
+ this.addHook('afterInit', () => _classPrivateMethodGet(this, _loadOrSortBySettings, _loadOrSortBySettings2).call(this));
153
193
  this.addHook('afterLoadData', function () {
154
- return _this.onAfterLoadData(...arguments);
194
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
195
+ args[_key2] = arguments[_key2];
196
+ }
197
+ return _classPrivateMethodGet(_this, _onAfterLoadData, _onAfterLoadData2).call(_this, ...args);
155
198
  });
156
199
 
157
200
  // TODO: Workaround? It should be refactored / described.
158
201
  if (this.hot.view) {
159
- this.loadOrSortBySettings();
202
+ _classPrivateMethodGet(this, _loadOrSortBySettings, _loadOrSortBySettings2).call(this);
160
203
  }
161
204
  this.registerShortcuts();
162
205
  super.enablePlugin();
@@ -211,7 +254,8 @@ class ColumnSorting extends _base.BasePlugin {
211
254
  },
212
255
  runOnlyIf: () => {
213
256
  var _this$hot$getSelected;
214
- return (_this$hot$getSelected = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected === void 0 ? void 0 : _this$hot$getSelected.highlight.isHeader();
257
+ const highlight = (_this$hot$getSelected = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected === void 0 ? void 0 : _this$hot$getSelected.highlight;
258
+ return highlight && this.hot.selection.isCellVisible(highlight) && highlight.isHeader();
215
259
  },
216
260
  group: SHORTCUTS_GROUP
217
261
  });
@@ -593,22 +637,6 @@ class ColumnSorting extends _base.BasePlugin {
593
637
  });
594
638
  this.hot.rowIndexMapper.setIndexesSequence(newIndexesSequence);
595
639
  }
596
-
597
- /**
598
- * Load saved settings or sort by predefined plugin configuration.
599
- *
600
- * @private
601
- */
602
- loadOrSortBySettings() {
603
- const storedAllSortSettings = this.getAllSavedSortSettings();
604
- if ((0, _object.isObject)(storedAllSortSettings)) {
605
- this.sortBySettings(storedAllSortSettings);
606
- } else {
607
- const allSortSettings = this.hot.getSettings()[this.pluginKey];
608
- this.sortBySettings(allSortSettings);
609
- }
610
- }
611
-
612
640
  /**
613
641
  * Sort the table by provided configuration.
614
642
  *
@@ -628,31 +656,6 @@ class ColumnSorting extends _base.BasePlugin {
628
656
  this.hot.render();
629
657
  }
630
658
  }
631
-
632
- /**
633
- * Callback for the `onAfterGetColHeader` hook. Adds column sorting CSS classes.
634
- *
635
- * @private
636
- * @param {number} column Visual column index.
637
- * @param {Element} TH TH HTML element.
638
- */
639
- onAfterGetColHeader(column, TH) {
640
- const headerSpanElement = (0, _utils.getHeaderSpanElement)(TH);
641
- if ((0, _utils.isFirstLevelColumnHeader)(column, TH) === false || headerSpanElement === null) {
642
- return;
643
- }
644
- const pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
645
- const ariaTags = this.hot.getSettings().ariaTags;
646
- const showSortIndicator = pluginSettingsForColumn.indicator;
647
- const headerActionEnabled = pluginSettingsForColumn.headerAction;
648
- const currentSortState = this.columnStatesManager.getSortOrderOfColumn(column);
649
- this.updateHeaderClasses(headerSpanElement, this.columnStatesManager, column, showSortIndicator, headerActionEnabled);
650
- this.updateSortingIndicator(column, headerSpanElement);
651
- if (ariaTags) {
652
- (0, _element.setAttribute)(TH, [(0, _a11y.A11Y_SORT)(currentSortState ? `${currentSortState}ending` : 'none'), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_DESCRIPTION_SORT_ROWS))]);
653
- }
654
- }
655
-
656
659
  /**
657
660
  * Update header classes.
658
661
  *
@@ -663,8 +666,8 @@ class ColumnSorting extends _base.BasePlugin {
663
666
  updateHeaderClasses(headerSpanElement) {
664
667
  (0, _element.removeClass)(headerSpanElement, (0, _domHelpers.getClassesToRemove)(headerSpanElement));
665
668
  if (this.enabled !== false) {
666
- for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
667
- args[_key - 1] = arguments[_key];
669
+ for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
670
+ args[_key3 - 1] = arguments[_key3];
668
671
  }
669
672
  (0, _element.addClass)(headerSpanElement, (0, _domHelpers.getClassesToAdd)(...args));
670
673
  }
@@ -709,22 +712,6 @@ class ColumnSorting extends _base.BasePlugin {
709
712
  this.sortBySettings(newSettings[this.pluginKey]);
710
713
  }
711
714
  }
712
-
713
- /**
714
- * Callback for the `afterLoadData` hook.
715
- *
716
- * @private
717
- * @param {boolean} initialLoad Flag that determines whether the data has been loaded during the initialization.
718
- */
719
- onAfterLoadData(initialLoad) {
720
- if (initialLoad === true) {
721
- // TODO: Workaround? It should be refactored / described.
722
- if (this.hot.view) {
723
- this.loadOrSortBySettings();
724
- }
725
- }
726
- }
727
-
728
715
  /**
729
716
  * Indicates if clickable header was clicked.
730
717
  *
@@ -738,26 +725,6 @@ class ColumnSorting extends _base.BasePlugin {
738
725
  const headerActionEnabled = pluginSettingsForColumn.headerAction;
739
726
  return headerActionEnabled && event.target.nodeName === 'SPAN';
740
727
  }
741
-
742
- /**
743
- * Changes the behavior of selection / dragging.
744
- *
745
- * @private
746
- * @param {MouseEvent} event The `mousedown` event.
747
- * @param {CellCoords} coords Visual coordinates.
748
- * @param {HTMLElement} TD The cell element.
749
- * @param {object} controller An object with properties `row`, `column` and `cell`. Each property contains
750
- * a boolean value that allows or disallows changing the selection for that particular area.
751
- */
752
- onBeforeOnCellMouseDown(event, coords, TD, controller) {
753
- if ((0, _utils.wasHeaderClickedProperly)(coords.row, coords.col, event) === false) {
754
- return;
755
- }
756
- if (this.wasClickableHeaderClicked(event, coords.col) && this.hot.getShortcutManager().isCtrlPressed()) {
757
- controller.column = true;
758
- }
759
- }
760
-
761
728
  /**
762
729
  * Callback for the `onAfterOnCellMouseDown` hook.
763
730
  *
@@ -789,4 +756,45 @@ class ColumnSorting extends _base.BasePlugin {
789
756
  super.destroy();
790
757
  }
791
758
  }
792
- exports.ColumnSorting = ColumnSorting;
759
+ exports.ColumnSorting = ColumnSorting;
760
+ function _loadOrSortBySettings2() {
761
+ const storedAllSortSettings = this.getAllSavedSortSettings();
762
+ if ((0, _object.isObject)(storedAllSortSettings)) {
763
+ this.sortBySettings(storedAllSortSettings);
764
+ } else {
765
+ const allSortSettings = this.hot.getSettings()[this.pluginKey];
766
+ this.sortBySettings(allSortSettings);
767
+ }
768
+ }
769
+ function _onAfterGetColHeader2(column, TH) {
770
+ const headerSpanElement = (0, _utils.getHeaderSpanElement)(TH);
771
+ if ((0, _utils.isFirstLevelColumnHeader)(column, TH) === false || headerSpanElement === null) {
772
+ return;
773
+ }
774
+ const pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
775
+ const ariaTags = this.hot.getSettings().ariaTags;
776
+ const showSortIndicator = pluginSettingsForColumn.indicator;
777
+ const headerActionEnabled = pluginSettingsForColumn.headerAction;
778
+ const currentSortState = this.columnStatesManager.getSortOrderOfColumn(column);
779
+ this.updateHeaderClasses(headerSpanElement, this.columnStatesManager, column, showSortIndicator, headerActionEnabled);
780
+ this.updateSortingIndicator(column, headerSpanElement);
781
+ if (ariaTags) {
782
+ (0, _element.setAttribute)(TH, [(0, _a11y.A11Y_SORT)(currentSortState ? `${currentSortState}ending` : 'none'), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_DESCRIPTION_SORT_ROWS))]);
783
+ }
784
+ }
785
+ function _onAfterLoadData2(initialLoad) {
786
+ if (initialLoad === true) {
787
+ // TODO: Workaround? It should be refactored / described.
788
+ if (this.hot.view) {
789
+ _classPrivateMethodGet(this, _loadOrSortBySettings, _loadOrSortBySettings2).call(this);
790
+ }
791
+ }
792
+ }
793
+ function _onBeforeOnCellMouseDown2(event, coords, TD, controller) {
794
+ if ((0, _utils.wasHeaderClickedProperly)(coords.row, coords.col, event) === false) {
795
+ return;
796
+ }
797
+ if (this.wasClickableHeaderClicked(event, coords.col) && this.hot.getShortcutManager().isCtrlPressed()) {
798
+ controller.column = true;
799
+ }
800
+ }