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
@@ -140,9 +140,55 @@ const AFTER_INDICATOR_CLASSNAME = 'afterHiddenColumnIndicator';
140
140
  var _settings = /*#__PURE__*/new WeakMap();
141
141
  var _hiddenColumnsMap = /*#__PURE__*/new WeakMap();
142
142
  var _clearIndicatorElements = /*#__PURE__*/new WeakSet();
143
+ var _onModifyColWidth = /*#__PURE__*/new WeakSet();
144
+ var _onAfterGetCellMeta = /*#__PURE__*/new WeakSet();
145
+ var _onModifyCopyableRange = /*#__PURE__*/new WeakSet();
146
+ var _onAfterGetColHeader = /*#__PURE__*/new WeakSet();
147
+ var _onAfterContextMenuDefaultOptions = /*#__PURE__*/new WeakSet();
148
+ var _onMapInit = /*#__PURE__*/new WeakSet();
143
149
  export class HiddenColumns extends BasePlugin {
144
150
  constructor() {
145
151
  super(...arguments);
152
+ /**
153
+ * On map initialized hook callback.
154
+ */
155
+ _classPrivateMethodInitSpec(this, _onMapInit);
156
+ /**
157
+ * Add Show-hide columns to context menu.
158
+ *
159
+ * @param {object} options An array of objects containing information about the pre-defined Context Menu items.
160
+ */
161
+ _classPrivateMethodInitSpec(this, _onAfterContextMenuDefaultOptions);
162
+ /**
163
+ * Adds the needed classes to the headers.
164
+ *
165
+ * @param {number} column Visual column index.
166
+ * @param {HTMLElement} TH Header's TH element.
167
+ */
168
+ _classPrivateMethodInitSpec(this, _onAfterGetColHeader);
169
+ /**
170
+ * Modifies the copyable range, accordingly to the provided config.
171
+ *
172
+ * @param {Array} ranges An array of objects defining copyable cells.
173
+ * @returns {Array}
174
+ */
175
+ _classPrivateMethodInitSpec(this, _onModifyCopyableRange);
176
+ /**
177
+ * Sets the copy-related cell meta.
178
+ *
179
+ * @param {number} row Visual row index.
180
+ * @param {number} column Visual column index.
181
+ * @param {object} cellProperties Object containing the cell properties.
182
+ */
183
+ _classPrivateMethodInitSpec(this, _onAfterGetCellMeta);
184
+ /**
185
+ * Adds the additional column width for the hidden column indicators.
186
+ *
187
+ * @param {number|undefined} width Column width.
188
+ * @param {number} column Visual column index.
189
+ * @returns {number}
190
+ */
191
+ _classPrivateMethodInitSpec(this, _onModifyColWidth);
146
192
  /**
147
193
  * Remove the indicator elements from the provided column header element.
148
194
  *
@@ -202,17 +248,23 @@ export class HiddenColumns extends BasePlugin {
202
248
  }
203
249
  }
204
250
  _classPrivateFieldSet(this, _hiddenColumnsMap, new HidingMap());
205
- _classPrivateFieldGet(this, _hiddenColumnsMap).addLocalHook('init', () => this.onMapInit());
251
+ _classPrivateFieldGet(this, _hiddenColumnsMap).addLocalHook('init', () => _classPrivateMethodGet(this, _onMapInit, _onMapInit2).call(this));
206
252
  this.hot.columnIndexMapper.registerMap(this.pluginName, _classPrivateFieldGet(this, _hiddenColumnsMap));
207
253
  this.addHook('afterContextMenuDefaultOptions', function () {
208
- return _this.onAfterContextMenuDefaultOptions(...arguments);
254
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
255
+ args[_key] = arguments[_key];
256
+ }
257
+ return _classPrivateMethodGet(_this, _onAfterContextMenuDefaultOptions, _onAfterContextMenuDefaultOptions2).call(_this, ...args);
209
258
  });
210
- this.addHook('afterGetCellMeta', (row, col, cellProperties) => this.onAfterGetCellMeta(row, col, cellProperties));
211
- this.addHook('modifyColWidth', (width, col) => this.onModifyColWidth(width, col));
259
+ this.addHook('afterGetCellMeta', (row, col, cellProperties) => _classPrivateMethodGet(this, _onAfterGetCellMeta, _onAfterGetCellMeta2).call(this, row, col, cellProperties));
260
+ this.addHook('modifyColWidth', (width, col) => _classPrivateMethodGet(this, _onModifyColWidth, _onModifyColWidth2).call(this, width, col));
212
261
  this.addHook('afterGetColHeader', function () {
213
- return _this.onAfterGetColHeader(...arguments);
262
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
263
+ args[_key2] = arguments[_key2];
264
+ }
265
+ return _classPrivateMethodGet(_this, _onAfterGetColHeader, _onAfterGetColHeader2).call(_this, ...args);
214
266
  });
215
- this.addHook('modifyCopyableRange', ranges => this.onModifyCopyableRange(ranges));
267
+ this.addHook('modifyCopyableRange', ranges => _classPrivateMethodGet(this, _onModifyCopyableRange, _onModifyCopyableRange2).call(this, ranges));
216
268
  super.enablePlugin();
217
269
  }
218
270
 
@@ -291,8 +343,8 @@ export class HiddenColumns extends BasePlugin {
291
343
  * @param {...number} column Visual column index.
292
344
  */
293
345
  showColumn() {
294
- for (var _len = arguments.length, column = new Array(_len), _key = 0; _key < _len; _key++) {
295
- column[_key] = arguments[_key];
346
+ for (var _len3 = arguments.length, column = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
347
+ column[_key3] = arguments[_key3];
296
348
  }
297
349
  this.showColumns(column);
298
350
  }
@@ -329,8 +381,8 @@ export class HiddenColumns extends BasePlugin {
329
381
  * @param {...number} column Visual column index.
330
382
  */
331
383
  hideColumn() {
332
- for (var _len2 = arguments.length, column = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
333
- column[_key2] = arguments[_key2];
384
+ for (var _len4 = arguments.length, column = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
385
+ column[_key4] = arguments[_key4];
334
386
  }
335
387
  this.hideColumns(column);
336
388
  }
@@ -383,177 +435,130 @@ export class HiddenColumns extends BasePlugin {
383
435
  });
384
436
  }
385
437
  /**
386
- * Adds the additional column width for the hidden column indicators.
387
- *
388
- * @private
389
- * @param {number|undefined} width Column width.
390
- * @param {number} column Visual column index.
391
- * @returns {number}
438
+ * Destroys the plugin instance.
392
439
  */
393
- onModifyColWidth(width, column) {
394
- // Hook is triggered internally only for the visible columns. Conditional will be handled for the API
395
- // calls of the `getColWidth` function on not visible indexes.
396
- if (this.isHidden(column)) {
397
- return 0;
398
- }
399
- if (_classPrivateFieldGet(this, _settings).indicators && (this.isHidden(column + 1) || this.isHidden(column - 1))) {
400
- // Add additional space for hidden column indicator.
401
- if (typeof width === 'number' && this.hot.hasColHeaders()) {
402
- return width + 15;
403
- }
440
+ destroy() {
441
+ _classPrivateFieldSet(this, _settings, null);
442
+ _classPrivateFieldSet(this, _hiddenColumnsMap, null);
443
+ super.destroy();
444
+ }
445
+ }
446
+ function _clearIndicatorElements2(TH) {
447
+ Array.from(TH.querySelectorAll(`.${AFTER_INDICATOR_CLASSNAME}, .${BEFORE_INDICATOR_CLASSNAME}`)).forEach(element => {
448
+ element.remove();
449
+ });
450
+ }
451
+ function _onModifyColWidth2(width, column) {
452
+ // Hook is triggered internally only for the visible columns. Conditional will be handled for the API
453
+ // calls of the `getColWidth` function on not visible indexes.
454
+ if (this.isHidden(column)) {
455
+ return 0;
456
+ }
457
+ if (_classPrivateFieldGet(this, _settings).indicators && (this.isHidden(column + 1) || this.isHidden(column - 1))) {
458
+ // Add additional space for hidden column indicator.
459
+ if (typeof width === 'number' && this.hot.hasColHeaders()) {
460
+ return width + 15;
404
461
  }
405
462
  }
406
-
407
- /**
408
- * Sets the copy-related cell meta.
409
- *
410
- * @private
411
- * @param {number} row Visual row index.
412
- * @param {number} column Visual column index.
413
- * @param {object} cellProperties Object containing the cell properties.
414
- */
415
- onAfterGetCellMeta(row, column, cellProperties) {
416
- if (_classPrivateFieldGet(this, _settings).copyPasteEnabled === false && this.isHidden(column)) {
417
- // Cell property handled by the `Autofill` and the `CopyPaste` plugins.
418
- cellProperties.skipColumnOnPaste = true;
463
+ }
464
+ function _onAfterGetCellMeta2(row, column, cellProperties) {
465
+ if (_classPrivateFieldGet(this, _settings).copyPasteEnabled === false && this.isHidden(column)) {
466
+ // Cell property handled by the `Autofill` and the `CopyPaste` plugins.
467
+ cellProperties.skipColumnOnPaste = true;
468
+ }
469
+ if (this.isHidden(column - 1)) {
470
+ cellProperties.className = cellProperties.className || '';
471
+ if (cellProperties.className.indexOf('afterHiddenColumn') === -1) {
472
+ cellProperties.className += ' afterHiddenColumn';
419
473
  }
420
- if (this.isHidden(column - 1)) {
421
- cellProperties.className = cellProperties.className || '';
422
- if (cellProperties.className.indexOf('afterHiddenColumn') === -1) {
423
- cellProperties.className += ' afterHiddenColumn';
424
- }
425
- } else if (cellProperties.className) {
426
- const classArr = cellProperties.className.split(' ');
427
- if (classArr.length > 0) {
428
- const containAfterHiddenColumn = classArr.indexOf('afterHiddenColumn');
429
- if (containAfterHiddenColumn > -1) {
430
- classArr.splice(containAfterHiddenColumn, 1);
431
- }
432
- cellProperties.className = classArr.join(' ');
474
+ } else if (cellProperties.className) {
475
+ const classArr = cellProperties.className.split(' ');
476
+ if (classArr.length > 0) {
477
+ const containAfterHiddenColumn = classArr.indexOf('afterHiddenColumn');
478
+ if (containAfterHiddenColumn > -1) {
479
+ classArr.splice(containAfterHiddenColumn, 1);
433
480
  }
481
+ cellProperties.className = classArr.join(' ');
434
482
  }
435
483
  }
436
-
437
- /**
438
- * Modifies the copyable range, accordingly to the provided config.
439
- *
440
- * @private
441
- * @param {Array} ranges An array of objects defining copyable cells.
442
- * @returns {Array}
443
- */
444
- onModifyCopyableRange(ranges) {
445
- // Ranges shouldn't be modified when `copyPasteEnabled` option is set to `true` (by default).
446
- if (_classPrivateFieldGet(this, _settings).copyPasteEnabled) {
447
- return ranges;
448
- }
449
- const newRanges = [];
450
- const pushRange = (startRow, endRow, startCol, endCol) => {
451
- newRanges.push({
452
- startRow,
453
- endRow,
454
- startCol,
455
- endCol
456
- });
457
- };
458
- arrayEach(ranges, range => {
459
- let isHidden = true;
460
- let rangeStart = 0;
461
- rangeEach(range.startCol, range.endCol, visualColumn => {
462
- if (this.isHidden(visualColumn)) {
463
- if (!isHidden) {
464
- pushRange(range.startRow, range.endRow, rangeStart, visualColumn - 1);
465
- }
466
- isHidden = true;
467
- } else {
468
- if (isHidden) {
469
- rangeStart = visualColumn;
470
- }
471
- if (visualColumn === range.endCol) {
472
- pushRange(range.startRow, range.endRow, rangeStart, visualColumn);
473
- }
474
- isHidden = false;
484
+ }
485
+ function _onModifyCopyableRange2(ranges) {
486
+ // Ranges shouldn't be modified when `copyPasteEnabled` option is set to `true` (by default).
487
+ if (_classPrivateFieldGet(this, _settings).copyPasteEnabled) {
488
+ return ranges;
489
+ }
490
+ const newRanges = [];
491
+ const pushRange = (startRow, endRow, startCol, endCol) => {
492
+ newRanges.push({
493
+ startRow,
494
+ endRow,
495
+ startCol,
496
+ endCol
497
+ });
498
+ };
499
+ arrayEach(ranges, range => {
500
+ let isHidden = true;
501
+ let rangeStart = 0;
502
+ rangeEach(range.startCol, range.endCol, visualColumn => {
503
+ if (this.isHidden(visualColumn)) {
504
+ if (!isHidden) {
505
+ pushRange(range.startRow, range.endRow, rangeStart, visualColumn - 1);
475
506
  }
476
- });
507
+ isHidden = true;
508
+ } else {
509
+ if (isHidden) {
510
+ rangeStart = visualColumn;
511
+ }
512
+ if (visualColumn === range.endCol) {
513
+ pushRange(range.startRow, range.endRow, rangeStart, visualColumn);
514
+ }
515
+ isHidden = false;
516
+ }
477
517
  });
478
- return newRanges;
518
+ });
519
+ return newRanges;
520
+ }
521
+ function _onAfterGetColHeader2(column, TH) {
522
+ const areAriaTagsEnabled = this.hot.getSettings().ariaTags;
523
+ const beforeHiddenColumnIndicatorElement = TH.querySelector('.beforeHiddenColumnIndicator');
524
+ const afterHiddenColumnIndicatorElement = TH.querySelector('.afterHiddenColumnIndicator');
525
+ if (!_classPrivateFieldGet(this, _settings).indicators || column < 0) {
526
+ beforeHiddenColumnIndicatorElement === null || beforeHiddenColumnIndicatorElement === void 0 || beforeHiddenColumnIndicatorElement.remove();
527
+ afterHiddenColumnIndicatorElement === null || afterHiddenColumnIndicatorElement === void 0 || afterHiddenColumnIndicatorElement.remove();
528
+ return;
479
529
  }
480
-
481
- /**
482
- * Adds the needed classes to the headers.
483
- *
484
- * @private
485
- * @param {number} column Visual column index.
486
- * @param {HTMLElement} TH Header's TH element.
487
- */
488
- onAfterGetColHeader(column, TH) {
489
- const areAriaTagsEnabled = this.hot.getSettings().ariaTags;
490
- const beforeHiddenColumnIndicatorElement = TH.querySelector('.beforeHiddenColumnIndicator');
491
- const afterHiddenColumnIndicatorElement = TH.querySelector('.afterHiddenColumnIndicator');
492
- if (!_classPrivateFieldGet(this, _settings).indicators || column < 0) {
493
- beforeHiddenColumnIndicatorElement === null || beforeHiddenColumnIndicatorElement === void 0 || beforeHiddenColumnIndicatorElement.remove();
494
- afterHiddenColumnIndicatorElement === null || afterHiddenColumnIndicatorElement === void 0 || afterHiddenColumnIndicatorElement.remove();
495
- return;
496
- }
497
- const classList = [];
498
- if (column >= 1 && this.isHidden(column - 1)) {
499
- if (!afterHiddenColumnIndicatorElement) {
500
- const attributesToAdd = areAriaTagsEnabled ? [A11Y_LABEL(this.hot.getTranslatedPhrase(COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN))] : [];
501
- appendElement(TH, {
502
- tagName: 'div',
503
- attributes: attributesToAdd,
504
- className: AFTER_INDICATOR_CLASSNAME
505
- });
506
- }
507
- classList.push('afterHiddenColumn');
508
- }
509
- if (column < this.hot.countCols() - 1 && this.isHidden(column + 1)) {
510
- if (!beforeHiddenColumnIndicatorElement) {
511
- const attributesToAdd = areAriaTagsEnabled ? [A11Y_LABEL(this.hot.getTranslatedPhrase(COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN))] : [];
512
- appendElement(TH, {
513
- tagName: 'div',
514
- attributes: attributesToAdd,
515
- className: BEFORE_INDICATOR_CLASSNAME
516
- });
517
- }
518
- classList.push('beforeHiddenColumn');
530
+ const classList = [];
531
+ if (column >= 1 && this.isHidden(column - 1)) {
532
+ if (!afterHiddenColumnIndicatorElement) {
533
+ const attributesToAdd = areAriaTagsEnabled ? [A11Y_LABEL(this.hot.getTranslatedPhrase(COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN))] : [];
534
+ appendElement(TH, {
535
+ tagName: 'div',
536
+ attributes: attributesToAdd,
537
+ className: AFTER_INDICATOR_CLASSNAME
538
+ });
519
539
  }
520
- addClass(TH, classList);
540
+ classList.push('afterHiddenColumn');
521
541
  }
522
-
523
- /**
524
- * Add Show-hide columns to context menu.
525
- *
526
- * @private
527
- * @param {object} options An array of objects containing information about the pre-defined Context Menu items.
528
- */
529
- onAfterContextMenuDefaultOptions(options) {
530
- options.items.push({
531
- name: SEPARATOR
532
- }, hideColumnItem(this), showColumnItem(this));
533
- }
534
-
535
- /**
536
- * On map initialized hook callback.
537
- *
538
- * @private
539
- */
540
- onMapInit() {
541
- if (Array.isArray(_classPrivateFieldGet(this, _settings).columns)) {
542
- this.hideColumns(_classPrivateFieldGet(this, _settings).columns);
542
+ if (column < this.hot.countCols() - 1 && this.isHidden(column + 1)) {
543
+ if (!beforeHiddenColumnIndicatorElement) {
544
+ const attributesToAdd = areAriaTagsEnabled ? [A11Y_LABEL(this.hot.getTranslatedPhrase(COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN))] : [];
545
+ appendElement(TH, {
546
+ tagName: 'div',
547
+ attributes: attributesToAdd,
548
+ className: BEFORE_INDICATOR_CLASSNAME
549
+ });
543
550
  }
551
+ classList.push('beforeHiddenColumn');
544
552
  }
545
-
546
- /**
547
- * Destroys the plugin instance.
548
- */
549
- destroy() {
550
- _classPrivateFieldSet(this, _settings, null);
551
- _classPrivateFieldSet(this, _hiddenColumnsMap, null);
552
- super.destroy();
553
- }
553
+ addClass(TH, classList);
554
554
  }
555
- function _clearIndicatorElements2(TH) {
556
- Array.from(TH.querySelectorAll(`.${AFTER_INDICATOR_CLASSNAME}, .${BEFORE_INDICATOR_CLASSNAME}`)).forEach(element => {
557
- element.remove();
558
- });
555
+ function _onAfterContextMenuDefaultOptions2(options) {
556
+ options.items.push({
557
+ name: SEPARATOR
558
+ }, hideColumnItem(this), showColumnItem(this));
559
+ }
560
+ function _onMapInit2() {
561
+ if (Array.isArray(_classPrivateFieldGet(this, _settings).columns)) {
562
+ this.hideColumns(_classPrivateFieldGet(this, _settings).columns);
563
+ }
559
564
  }