handsontable 0.0.0-next-7026906-20231107 → 0.0.0-next-7b93b7d-20231107

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

Potentially problematic release.


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

Files changed (316) 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/core/clone.js +6 -0
  10. package/3rdparty/walkontable/src/core/clone.mjs +6 -0
  11. package/3rdparty/walkontable/src/event.js +125 -74
  12. package/3rdparty/walkontable/src/event.mjs +125 -74
  13. package/3rdparty/walkontable/src/filter/column.js +16 -0
  14. package/3rdparty/walkontable/src/filter/column.mjs +16 -0
  15. package/3rdparty/walkontable/src/filter/row.js +16 -0
  16. package/3rdparty/walkontable/src/filter/row.mjs +16 -0
  17. package/3rdparty/walkontable/src/overlay/bottom.js +1 -1
  18. package/3rdparty/walkontable/src/overlay/bottom.mjs +1 -1
  19. package/3rdparty/walkontable/src/overlay/top.js +1 -1
  20. package/3rdparty/walkontable/src/overlay/top.mjs +1 -1
  21. package/3rdparty/walkontable/src/renderer/_base.js +12 -5
  22. package/3rdparty/walkontable/src/renderer/_base.mjs +12 -5
  23. package/3rdparty/walkontable/src/renderer/cells.js +6 -2
  24. package/3rdparty/walkontable/src/renderer/cells.mjs +6 -2
  25. package/3rdparty/walkontable/src/renderer/rowHeaders.js +6 -2
  26. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +6 -2
  27. package/3rdparty/walkontable/src/renderer/rows.js +5 -0
  28. package/3rdparty/walkontable/src/renderer/rows.mjs +5 -0
  29. package/3rdparty/walkontable/src/renderer/table.js +24 -17
  30. package/3rdparty/walkontable/src/renderer/table.mjs +24 -17
  31. package/3rdparty/walkontable/src/scroll.js +2 -2
  32. package/3rdparty/walkontable/src/scroll.mjs +2 -2
  33. package/3rdparty/walkontable/src/selection/border/border.js +1 -1
  34. package/3rdparty/walkontable/src/selection/border/border.mjs +1 -1
  35. package/3rdparty/walkontable/src/settings.js +10 -10
  36. package/3rdparty/walkontable/src/settings.mjs +10 -10
  37. package/3rdparty/walkontable/src/table.js +3 -3
  38. package/3rdparty/walkontable/src/table.mjs +3 -3
  39. package/3rdparty/walkontable/src/utils/column.js +19 -4
  40. package/3rdparty/walkontable/src/utils/column.mjs +19 -4
  41. package/3rdparty/walkontable/src/utils/nodesPool.js +5 -0
  42. package/3rdparty/walkontable/src/utils/nodesPool.mjs +5 -0
  43. package/3rdparty/walkontable/src/utils/orderView/view.js +13 -6
  44. package/3rdparty/walkontable/src/utils/orderView/view.mjs +13 -6
  45. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +9 -6
  46. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +9 -6
  47. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +7 -4
  48. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +7 -4
  49. package/3rdparty/walkontable/src/utils/row.js +14 -2
  50. package/3rdparty/walkontable/src/utils/row.mjs +14 -2
  51. package/3rdparty/walkontable/src/viewport.js +9 -9
  52. package/3rdparty/walkontable/src/viewport.mjs +9 -9
  53. package/base.js +2 -2
  54. package/base.mjs +2 -2
  55. package/core.js +25 -25
  56. package/core.mjs +25 -25
  57. package/dataMap/dataMap.js +99 -90
  58. package/dataMap/dataMap.mjs +99 -90
  59. package/dataMap/dataSource.js +14 -8
  60. package/dataMap/dataSource.mjs +14 -8
  61. package/dataMap/metaManager/lazyFactoryMap.js +19 -7
  62. package/dataMap/metaManager/lazyFactoryMap.mjs +19 -7
  63. package/dataMap/metaManager/metaLayers/cellMeta.js +8 -3
  64. package/dataMap/metaManager/metaLayers/cellMeta.mjs +8 -3
  65. package/dataMap/metaManager/metaLayers/columnMeta.js +7 -1
  66. package/dataMap/metaManager/metaLayers/columnMeta.mjs +7 -1
  67. package/dataMap/metaManager/metaLayers/globalMeta.js +6 -1
  68. package/dataMap/metaManager/metaLayers/globalMeta.mjs +6 -1
  69. package/dataMap/metaManager/metaLayers/tableMeta.js +6 -2
  70. package/dataMap/metaManager/metaLayers/tableMeta.mjs +6 -2
  71. package/dataMap/metaManager/metaSchema.js +55 -55
  72. package/dataMap/metaManager/metaSchema.mjs +55 -55
  73. package/dataMap/metaManager/mods/dynamicCellMeta.js +7 -2
  74. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +7 -2
  75. package/dataMap/metaManager/mods/extendMetaProperties.js +8 -4
  76. package/dataMap/metaManager/mods/extendMetaProperties.mjs +8 -4
  77. package/dataMap/metaManager/utils.js +2 -2
  78. package/dataMap/metaManager/utils.mjs +2 -2
  79. package/dist/handsontable.css +2 -2
  80. package/dist/handsontable.full.css +2 -2
  81. package/dist/handsontable.full.js +7244 -6347
  82. package/dist/handsontable.full.min.css +2 -2
  83. package/dist/handsontable.full.min.js +120 -120
  84. package/dist/handsontable.js +7243 -6346
  85. package/dist/handsontable.min.css +2 -2
  86. package/dist/handsontable.min.js +28 -28
  87. package/editorManager.js +105 -95
  88. package/editorManager.mjs +105 -95
  89. package/editors/autocompleteEditor/autocompleteEditor.js +47 -46
  90. package/editors/autocompleteEditor/autocompleteEditor.mjs +46 -45
  91. package/editors/baseEditor/baseEditor.js +23 -26
  92. package/editors/baseEditor/baseEditor.mjs +23 -26
  93. package/editors/dateEditor/dateEditor.js +24 -15
  94. package/editors/dateEditor/dateEditor.mjs +24 -15
  95. package/editors/dropdownEditor/dropdownEditor.js +1 -1
  96. package/editors/dropdownEditor/dropdownEditor.mjs +1 -1
  97. package/editors/handsontableEditor/handsontableEditor.js +4 -4
  98. package/editors/handsontableEditor/handsontableEditor.mjs +4 -4
  99. package/editors/textEditor/textEditor.js +23 -17
  100. package/editors/textEditor/textEditor.mjs +24 -18
  101. package/eventManager.js +8 -0
  102. package/eventManager.mjs +8 -0
  103. package/helpers/array.js +2 -2
  104. package/helpers/array.mjs +2 -2
  105. package/helpers/dom/element.js +7 -7
  106. package/helpers/dom/element.mjs +7 -7
  107. package/helpers/function.js +1 -1
  108. package/helpers/function.mjs +1 -1
  109. package/helpers/mixed.js +1 -1
  110. package/helpers/mixed.mjs +1 -1
  111. package/helpers/object.js +4 -4
  112. package/helpers/object.mjs +4 -4
  113. package/helpers/string.js +1 -1
  114. package/helpers/string.mjs +1 -1
  115. package/package.json +1 -1
  116. package/pluginHooks.d.ts +0 -2
  117. package/pluginHooks.js +12 -3
  118. package/pluginHooks.mjs +12 -3
  119. package/plugins/autoColumnSize/autoColumnSize.js +141 -130
  120. package/plugins/autoColumnSize/autoColumnSize.mjs +140 -129
  121. package/plugins/autoRowSize/autoRowSize.js +112 -125
  122. package/plugins/autoRowSize/autoRowSize.mjs +110 -123
  123. package/plugins/autofill/autofill.js +97 -102
  124. package/plugins/autofill/autofill.mjs +96 -101
  125. package/plugins/base/base.js +57 -22
  126. package/plugins/base/base.mjs +56 -22
  127. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +29 -24
  128. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +28 -23
  129. package/plugins/collapsibleColumns/collapsibleColumns.js +104 -107
  130. package/plugins/collapsibleColumns/collapsibleColumns.mjs +102 -104
  131. package/plugins/columnSorting/columnSorting.js +105 -98
  132. package/plugins/columnSorting/columnSorting.mjs +104 -97
  133. package/plugins/columnSorting/columnStatesManager.js +12 -6
  134. package/plugins/columnSorting/columnStatesManager.mjs +12 -6
  135. package/plugins/columnSummary/columnSummary.js +71 -58
  136. package/plugins/columnSummary/columnSummary.mjs +70 -57
  137. package/plugins/columnSummary/endpoints.js +20 -14
  138. package/plugins/columnSummary/endpoints.mjs +20 -14
  139. package/plugins/comments/commentEditor.js +30 -2
  140. package/plugins/comments/commentEditor.mjs +30 -2
  141. package/plugins/comments/comments.js +158 -169
  142. package/plugins/comments/comments.mjs +157 -168
  143. package/plugins/comments/displaySwitch.js +7 -3
  144. package/plugins/comments/displaySwitch.mjs +7 -3
  145. package/plugins/contextMenu/commandExecutor.js +15 -2
  146. package/plugins/contextMenu/commandExecutor.mjs +15 -2
  147. package/plugins/contextMenu/contextMenu.js +91 -101
  148. package/plugins/contextMenu/contextMenu.mjs +90 -100
  149. package/plugins/contextMenu/itemsFactory.js +19 -4
  150. package/plugins/contextMenu/itemsFactory.mjs +19 -4
  151. package/plugins/contextMenu/menu/cursor.js +36 -0
  152. package/plugins/contextMenu/menu/cursor.mjs +36 -0
  153. package/plugins/contextMenu/menu/menu.js +57 -5
  154. package/plugins/contextMenu/menu/menu.mjs +57 -5
  155. package/plugins/copyPaste/copyPaste.js +74 -75
  156. package/plugins/copyPaste/copyPaste.mjs +74 -75
  157. package/plugins/customBorders/customBorders.js +49 -48
  158. package/plugins/customBorders/customBorders.mjs +48 -47
  159. package/plugins/dragToScroll/dragToScroll.js +50 -54
  160. package/plugins/dragToScroll/dragToScroll.mjs +49 -52
  161. package/plugins/dropdownMenu/dropdownMenu.js +132 -129
  162. package/plugins/dropdownMenu/dropdownMenu.mjs +132 -129
  163. package/plugins/exportFile/dataProvider.js +7 -2
  164. package/plugins/exportFile/dataProvider.mjs +7 -2
  165. package/plugins/exportFile/exportFile.js +1 -1
  166. package/plugins/exportFile/exportFile.mjs +1 -1
  167. package/plugins/exportFile/types/_base.js +14 -6
  168. package/plugins/exportFile/types/_base.mjs +14 -6
  169. package/plugins/filters/component/actionBar.js +9 -0
  170. package/plugins/filters/component/actionBar.mjs +9 -0
  171. package/plugins/filters/component/condition.js +13 -0
  172. package/plugins/filters/component/condition.mjs +13 -0
  173. package/plugins/filters/component/operators.js +9 -0
  174. package/plugins/filters/component/operators.mjs +9 -0
  175. package/plugins/filters/component/value.js +9 -0
  176. package/plugins/filters/component/value.mjs +9 -0
  177. package/plugins/filters/conditionCollection.js +9 -4
  178. package/plugins/filters/conditionCollection.mjs +9 -4
  179. package/plugins/filters/conditionUpdateObserver.js +53 -42
  180. package/plugins/filters/conditionUpdateObserver.mjs +53 -42
  181. package/plugins/filters/dataFilter.js +9 -3
  182. package/plugins/filters/dataFilter.mjs +9 -3
  183. package/plugins/filters/filters.js +184 -189
  184. package/plugins/filters/filters.mjs +182 -187
  185. package/plugins/filters/ui/_base.js +1 -1
  186. package/plugins/filters/ui/_base.mjs +1 -1
  187. package/plugins/filters/utils.js +1 -1
  188. package/plugins/filters/utils.mjs +1 -1
  189. package/plugins/formulas/engine/settings.js +1 -1
  190. package/plugins/formulas/engine/settings.mjs +1 -1
  191. package/plugins/formulas/formulas.js +684 -602
  192. package/plugins/formulas/formulas.mjs +682 -600
  193. package/plugins/hiddenColumns/hiddenColumns.js +174 -169
  194. package/plugins/hiddenColumns/hiddenColumns.mjs +173 -168
  195. package/plugins/hiddenRows/hiddenRows.js +170 -165
  196. package/plugins/hiddenRows/hiddenRows.mjs +169 -164
  197. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
  198. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
  199. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
  200. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
  201. package/plugins/manualColumnFreeze/manualColumnFreeze.js +67 -54
  202. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +64 -51
  203. package/plugins/manualColumnMove/manualColumnMove.js +287 -232
  204. package/plugins/manualColumnMove/manualColumnMove.mjs +286 -231
  205. package/plugins/manualColumnMove/ui/_base.js +9 -3
  206. package/plugins/manualColumnMove/ui/_base.mjs +9 -3
  207. package/plugins/manualColumnResize/manualColumnResize.js +291 -246
  208. package/plugins/manualColumnResize/manualColumnResize.mjs +290 -244
  209. package/plugins/manualRowMove/manualRowMove.js +223 -208
  210. package/plugins/manualRowMove/manualRowMove.mjs +222 -207
  211. package/plugins/manualRowMove/ui/_base.js +10 -5
  212. package/plugins/manualRowMove/ui/_base.mjs +10 -5
  213. package/plugins/manualRowResize/manualRowResize.js +254 -209
  214. package/plugins/manualRowResize/manualRowResize.mjs +253 -207
  215. package/plugins/mergeCells/calculations/autofill.js +9 -3
  216. package/plugins/mergeCells/calculations/autofill.mjs +9 -3
  217. package/plugins/mergeCells/calculations/selection.js +10 -4
  218. package/plugins/mergeCells/calculations/selection.mjs +10 -4
  219. package/plugins/mergeCells/cellCoords.js +16 -6
  220. package/plugins/mergeCells/cellCoords.mjs +16 -6
  221. package/plugins/mergeCells/cellsCollection.js +10 -4
  222. package/plugins/mergeCells/cellsCollection.mjs +10 -4
  223. package/plugins/mergeCells/mergeCells.js +582 -502
  224. package/plugins/mergeCells/mergeCells.mjs +580 -500
  225. package/plugins/multiColumnSorting/multiColumnSorting.js +13 -10
  226. package/plugins/multiColumnSorting/multiColumnSorting.mjs +13 -10
  227. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +16 -28
  228. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +16 -27
  229. package/plugins/nestedHeaders/nestedHeaders.js +542 -499
  230. package/plugins/nestedHeaders/nestedHeaders.mjs +554 -511
  231. package/plugins/nestedHeaders/stateManager/index.js +1 -1
  232. package/plugins/nestedHeaders/stateManager/index.mjs +1 -1
  233. package/plugins/nestedRows/data/dataManager.js +21 -15
  234. package/plugins/nestedRows/data/dataManager.mjs +21 -15
  235. package/plugins/nestedRows/nestedRows.js +326 -278
  236. package/plugins/nestedRows/nestedRows.mjs +325 -277
  237. package/plugins/nestedRows/ui/_base.js +7 -1
  238. package/plugins/nestedRows/ui/_base.mjs +7 -1
  239. package/plugins/nestedRows/ui/collapsing.js +2 -2
  240. package/plugins/nestedRows/ui/collapsing.mjs +2 -2
  241. package/plugins/nestedRows/ui/contextMenu.js +28 -18
  242. package/plugins/nestedRows/ui/contextMenu.mjs +28 -18
  243. package/plugins/nestedRows/utils/rowMoveController.js +12 -4
  244. package/plugins/nestedRows/utils/rowMoveController.mjs +12 -4
  245. package/plugins/persistentState/persistentState.js +14 -11
  246. package/plugins/persistentState/persistentState.mjs +14 -11
  247. package/plugins/persistentState/storage.js +11 -6
  248. package/plugins/persistentState/storage.mjs +11 -6
  249. package/plugins/registry.js +2 -2
  250. package/plugins/registry.mjs +2 -2
  251. package/plugins/search/search.js +57 -46
  252. package/plugins/search/search.mjs +56 -45
  253. package/plugins/touchScroll/touchScroll.js +102 -100
  254. package/plugins/touchScroll/touchScroll.mjs +100 -98
  255. package/plugins/trimRows/trimRows.js +33 -28
  256. package/plugins/trimRows/trimRows.mjs +32 -27
  257. package/plugins/undoRedo/undoRedo.js +2 -2
  258. package/plugins/undoRedo/undoRedo.mjs +2 -2
  259. package/renderers/autocompleteRenderer/autocompleteRenderer.js +11 -11
  260. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +11 -11
  261. package/renderers/baseRenderer/baseRenderer.js +2 -2
  262. package/renderers/baseRenderer/baseRenderer.mjs +2 -2
  263. package/renderers/checkboxRenderer/checkboxRenderer.js +23 -23
  264. package/renderers/checkboxRenderer/checkboxRenderer.mjs +23 -23
  265. package/renderers/dateRenderer/dateRenderer.js +4 -4
  266. package/renderers/dateRenderer/dateRenderer.mjs +4 -4
  267. package/renderers/handsontableRenderer/handsontableRenderer.js +4 -4
  268. package/renderers/handsontableRenderer/handsontableRenderer.mjs +4 -4
  269. package/renderers/htmlRenderer/htmlRenderer.js +4 -4
  270. package/renderers/htmlRenderer/htmlRenderer.mjs +4 -4
  271. package/renderers/numericRenderer/numericRenderer.js +3 -3
  272. package/renderers/numericRenderer/numericRenderer.mjs +3 -3
  273. package/renderers/passwordRenderer/passwordRenderer.js +3 -3
  274. package/renderers/passwordRenderer/passwordRenderer.mjs +3 -3
  275. package/renderers/selectRenderer/selectRenderer.js +4 -4
  276. package/renderers/selectRenderer/selectRenderer.mjs +4 -4
  277. package/renderers/textRenderer/textRenderer.js +5 -5
  278. package/renderers/textRenderer/textRenderer.mjs +5 -5
  279. package/renderers/timeRenderer/timeRenderer.js +3 -3
  280. package/renderers/timeRenderer/timeRenderer.mjs +3 -3
  281. package/selection/range.js +12 -2
  282. package/selection/range.mjs +12 -2
  283. package/selection/selection.js +3 -3
  284. package/selection/selection.mjs +3 -3
  285. package/tableView.js +208 -200
  286. package/tableView.mjs +208 -200
  287. package/translations/changesObservable/utils.js +2 -2
  288. package/translations/changesObservable/utils.mjs +2 -2
  289. package/translations/indexMapper.js +25 -22
  290. package/translations/indexMapper.mjs +25 -22
  291. package/translations/mapCollections/aggregatedCollection.js +8 -2
  292. package/translations/mapCollections/aggregatedCollection.mjs +8 -2
  293. package/translations/mapCollections/mapCollection.js +5 -2
  294. package/translations/mapCollections/mapCollection.mjs +5 -2
  295. package/translations/maps/indexMap.js +6 -1
  296. package/translations/maps/indexMap.mjs +6 -1
  297. package/translations/maps/utils/physicallyIndexed.js +2 -2
  298. package/translations/maps/utils/physicallyIndexed.mjs +2 -2
  299. package/utils/dataStructures/linkedList.js +10 -6
  300. package/utils/dataStructures/linkedList.mjs +10 -6
  301. package/utils/dataStructures/queue.js +1 -1
  302. package/utils/dataStructures/queue.mjs +1 -1
  303. package/utils/dataStructures/stack.js +1 -1
  304. package/utils/dataStructures/stack.mjs +1 -1
  305. package/utils/ghostTable.js +2 -2
  306. package/utils/ghostTable.mjs +2 -2
  307. package/utils/interval.js +73 -36
  308. package/utils/interval.mjs +73 -36
  309. package/utils/parseTable.js +1 -1
  310. package/utils/parseTable.mjs +1 -1
  311. package/validators/autocompleteValidator/autocompleteValidator.js +1 -1
  312. package/validators/autocompleteValidator/autocompleteValidator.mjs +1 -1
  313. package/validators/dateValidator/dateValidator.js +1 -1
  314. package/validators/dateValidator/dateValidator.mjs +1 -1
  315. package/validators/numericValidator/numericValidator.js +1 -1
  316. package/validators/numericValidator/numericValidator.mjs +1 -1
@@ -146,9 +146,55 @@ const AFTER_INDICATOR_CLASSNAME = 'afterHiddenColumnIndicator';
146
146
  var _settings = /*#__PURE__*/new WeakMap();
147
147
  var _hiddenColumnsMap = /*#__PURE__*/new WeakMap();
148
148
  var _clearIndicatorElements = /*#__PURE__*/new WeakSet();
149
+ var _onModifyColWidth = /*#__PURE__*/new WeakSet();
150
+ var _onAfterGetCellMeta = /*#__PURE__*/new WeakSet();
151
+ var _onModifyCopyableRange = /*#__PURE__*/new WeakSet();
152
+ var _onAfterGetColHeader = /*#__PURE__*/new WeakSet();
153
+ var _onAfterContextMenuDefaultOptions = /*#__PURE__*/new WeakSet();
154
+ var _onMapInit = /*#__PURE__*/new WeakSet();
149
155
  class HiddenColumns extends _base.BasePlugin {
150
156
  constructor() {
151
157
  super(...arguments);
158
+ /**
159
+ * On map initialized hook callback.
160
+ */
161
+ _classPrivateMethodInitSpec(this, _onMapInit);
162
+ /**
163
+ * Add Show-hide columns to context menu.
164
+ *
165
+ * @param {object} options An array of objects containing information about the pre-defined Context Menu items.
166
+ */
167
+ _classPrivateMethodInitSpec(this, _onAfterContextMenuDefaultOptions);
168
+ /**
169
+ * Adds the needed classes to the headers.
170
+ *
171
+ * @param {number} column Visual column index.
172
+ * @param {HTMLElement} TH Header's TH element.
173
+ */
174
+ _classPrivateMethodInitSpec(this, _onAfterGetColHeader);
175
+ /**
176
+ * Modifies the copyable range, accordingly to the provided config.
177
+ *
178
+ * @param {Array} ranges An array of objects defining copyable cells.
179
+ * @returns {Array}
180
+ */
181
+ _classPrivateMethodInitSpec(this, _onModifyCopyableRange);
182
+ /**
183
+ * Sets the copy-related cell meta.
184
+ *
185
+ * @param {number} row Visual row index.
186
+ * @param {number} column Visual column index.
187
+ * @param {object} cellProperties Object containing the cell properties.
188
+ */
189
+ _classPrivateMethodInitSpec(this, _onAfterGetCellMeta);
190
+ /**
191
+ * Adds the additional column width for the hidden column indicators.
192
+ *
193
+ * @param {number|undefined} width Column width.
194
+ * @param {number} column Visual column index.
195
+ * @returns {number}
196
+ */
197
+ _classPrivateMethodInitSpec(this, _onModifyColWidth);
152
198
  /**
153
199
  * Remove the indicator elements from the provided column header element.
154
200
  *
@@ -208,17 +254,23 @@ class HiddenColumns extends _base.BasePlugin {
208
254
  }
209
255
  }
210
256
  _classPrivateFieldSet(this, _hiddenColumnsMap, new _translations.HidingMap());
211
- _classPrivateFieldGet(this, _hiddenColumnsMap).addLocalHook('init', () => this.onMapInit());
257
+ _classPrivateFieldGet(this, _hiddenColumnsMap).addLocalHook('init', () => _classPrivateMethodGet(this, _onMapInit, _onMapInit2).call(this));
212
258
  this.hot.columnIndexMapper.registerMap(this.pluginName, _classPrivateFieldGet(this, _hiddenColumnsMap));
213
259
  this.addHook('afterContextMenuDefaultOptions', function () {
214
- return _this.onAfterContextMenuDefaultOptions(...arguments);
260
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
261
+ args[_key] = arguments[_key];
262
+ }
263
+ return _classPrivateMethodGet(_this, _onAfterContextMenuDefaultOptions, _onAfterContextMenuDefaultOptions2).call(_this, ...args);
215
264
  });
216
- this.addHook('afterGetCellMeta', (row, col, cellProperties) => this.onAfterGetCellMeta(row, col, cellProperties));
217
- this.addHook('modifyColWidth', (width, col) => this.onModifyColWidth(width, col));
265
+ this.addHook('afterGetCellMeta', (row, col, cellProperties) => _classPrivateMethodGet(this, _onAfterGetCellMeta, _onAfterGetCellMeta2).call(this, row, col, cellProperties));
266
+ this.addHook('modifyColWidth', (width, col) => _classPrivateMethodGet(this, _onModifyColWidth, _onModifyColWidth2).call(this, width, col));
218
267
  this.addHook('afterGetColHeader', function () {
219
- return _this.onAfterGetColHeader(...arguments);
268
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
269
+ args[_key2] = arguments[_key2];
270
+ }
271
+ return _classPrivateMethodGet(_this, _onAfterGetColHeader, _onAfterGetColHeader2).call(_this, ...args);
220
272
  });
221
- this.addHook('modifyCopyableRange', ranges => this.onModifyCopyableRange(ranges));
273
+ this.addHook('modifyCopyableRange', ranges => _classPrivateMethodGet(this, _onModifyCopyableRange, _onModifyCopyableRange2).call(this, ranges));
222
274
  super.enablePlugin();
223
275
  }
224
276
 
@@ -297,8 +349,8 @@ class HiddenColumns extends _base.BasePlugin {
297
349
  * @param {...number} column Visual column index.
298
350
  */
299
351
  showColumn() {
300
- for (var _len = arguments.length, column = new Array(_len), _key = 0; _key < _len; _key++) {
301
- column[_key] = arguments[_key];
352
+ for (var _len3 = arguments.length, column = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
353
+ column[_key3] = arguments[_key3];
302
354
  }
303
355
  this.showColumns(column);
304
356
  }
@@ -335,8 +387,8 @@ class HiddenColumns extends _base.BasePlugin {
335
387
  * @param {...number} column Visual column index.
336
388
  */
337
389
  hideColumn() {
338
- for (var _len2 = arguments.length, column = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
339
- column[_key2] = arguments[_key2];
390
+ for (var _len4 = arguments.length, column = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
391
+ column[_key4] = arguments[_key4];
340
392
  }
341
393
  this.hideColumns(column);
342
394
  }
@@ -389,178 +441,131 @@ class HiddenColumns extends _base.BasePlugin {
389
441
  });
390
442
  }
391
443
  /**
392
- * Adds the additional column width for the hidden column indicators.
393
- *
394
- * @private
395
- * @param {number|undefined} width Column width.
396
- * @param {number} column Visual column index.
397
- * @returns {number}
444
+ * Destroys the plugin instance.
398
445
  */
399
- onModifyColWidth(width, column) {
400
- // Hook is triggered internally only for the visible columns. Conditional will be handled for the API
401
- // calls of the `getColWidth` function on not visible indexes.
402
- if (this.isHidden(column)) {
403
- return 0;
404
- }
405
- if (_classPrivateFieldGet(this, _settings).indicators && (this.isHidden(column + 1) || this.isHidden(column - 1))) {
406
- // Add additional space for hidden column indicator.
407
- if (typeof width === 'number' && this.hot.hasColHeaders()) {
408
- return width + 15;
409
- }
446
+ destroy() {
447
+ _classPrivateFieldSet(this, _settings, null);
448
+ _classPrivateFieldSet(this, _hiddenColumnsMap, null);
449
+ super.destroy();
450
+ }
451
+ }
452
+ exports.HiddenColumns = HiddenColumns;
453
+ function _clearIndicatorElements2(TH) {
454
+ Array.from(TH.querySelectorAll(`.${AFTER_INDICATOR_CLASSNAME}, .${BEFORE_INDICATOR_CLASSNAME}`)).forEach(element => {
455
+ element.remove();
456
+ });
457
+ }
458
+ function _onModifyColWidth2(width, column) {
459
+ // Hook is triggered internally only for the visible columns. Conditional will be handled for the API
460
+ // calls of the `getColWidth` function on not visible indexes.
461
+ if (this.isHidden(column)) {
462
+ return 0;
463
+ }
464
+ if (_classPrivateFieldGet(this, _settings).indicators && (this.isHidden(column + 1) || this.isHidden(column - 1))) {
465
+ // Add additional space for hidden column indicator.
466
+ if (typeof width === 'number' && this.hot.hasColHeaders()) {
467
+ return width + 15;
410
468
  }
411
469
  }
412
-
413
- /**
414
- * Sets the copy-related cell meta.
415
- *
416
- * @private
417
- * @param {number} row Visual row index.
418
- * @param {number} column Visual column index.
419
- * @param {object} cellProperties Object containing the cell properties.
420
- */
421
- onAfterGetCellMeta(row, column, cellProperties) {
422
- if (_classPrivateFieldGet(this, _settings).copyPasteEnabled === false && this.isHidden(column)) {
423
- // Cell property handled by the `Autofill` and the `CopyPaste` plugins.
424
- cellProperties.skipColumnOnPaste = true;
470
+ }
471
+ function _onAfterGetCellMeta2(row, column, cellProperties) {
472
+ if (_classPrivateFieldGet(this, _settings).copyPasteEnabled === false && this.isHidden(column)) {
473
+ // Cell property handled by the `Autofill` and the `CopyPaste` plugins.
474
+ cellProperties.skipColumnOnPaste = true;
475
+ }
476
+ if (this.isHidden(column - 1)) {
477
+ cellProperties.className = cellProperties.className || '';
478
+ if (cellProperties.className.indexOf('afterHiddenColumn') === -1) {
479
+ cellProperties.className += ' afterHiddenColumn';
425
480
  }
426
- if (this.isHidden(column - 1)) {
427
- cellProperties.className = cellProperties.className || '';
428
- if (cellProperties.className.indexOf('afterHiddenColumn') === -1) {
429
- cellProperties.className += ' afterHiddenColumn';
430
- }
431
- } else if (cellProperties.className) {
432
- const classArr = cellProperties.className.split(' ');
433
- if (classArr.length > 0) {
434
- const containAfterHiddenColumn = classArr.indexOf('afterHiddenColumn');
435
- if (containAfterHiddenColumn > -1) {
436
- classArr.splice(containAfterHiddenColumn, 1);
437
- }
438
- cellProperties.className = classArr.join(' ');
481
+ } else if (cellProperties.className) {
482
+ const classArr = cellProperties.className.split(' ');
483
+ if (classArr.length > 0) {
484
+ const containAfterHiddenColumn = classArr.indexOf('afterHiddenColumn');
485
+ if (containAfterHiddenColumn > -1) {
486
+ classArr.splice(containAfterHiddenColumn, 1);
439
487
  }
488
+ cellProperties.className = classArr.join(' ');
440
489
  }
441
490
  }
442
-
443
- /**
444
- * Modifies the copyable range, accordingly to the provided config.
445
- *
446
- * @private
447
- * @param {Array} ranges An array of objects defining copyable cells.
448
- * @returns {Array}
449
- */
450
- onModifyCopyableRange(ranges) {
451
- // Ranges shouldn't be modified when `copyPasteEnabled` option is set to `true` (by default).
452
- if (_classPrivateFieldGet(this, _settings).copyPasteEnabled) {
453
- return ranges;
454
- }
455
- const newRanges = [];
456
- const pushRange = (startRow, endRow, startCol, endCol) => {
457
- newRanges.push({
458
- startRow,
459
- endRow,
460
- startCol,
461
- endCol
462
- });
463
- };
464
- (0, _array.arrayEach)(ranges, range => {
465
- let isHidden = true;
466
- let rangeStart = 0;
467
- (0, _number.rangeEach)(range.startCol, range.endCol, visualColumn => {
468
- if (this.isHidden(visualColumn)) {
469
- if (!isHidden) {
470
- pushRange(range.startRow, range.endRow, rangeStart, visualColumn - 1);
471
- }
472
- isHidden = true;
473
- } else {
474
- if (isHidden) {
475
- rangeStart = visualColumn;
476
- }
477
- if (visualColumn === range.endCol) {
478
- pushRange(range.startRow, range.endRow, rangeStart, visualColumn);
479
- }
480
- isHidden = false;
491
+ }
492
+ function _onModifyCopyableRange2(ranges) {
493
+ // Ranges shouldn't be modified when `copyPasteEnabled` option is set to `true` (by default).
494
+ if (_classPrivateFieldGet(this, _settings).copyPasteEnabled) {
495
+ return ranges;
496
+ }
497
+ const newRanges = [];
498
+ const pushRange = (startRow, endRow, startCol, endCol) => {
499
+ newRanges.push({
500
+ startRow,
501
+ endRow,
502
+ startCol,
503
+ endCol
504
+ });
505
+ };
506
+ (0, _array.arrayEach)(ranges, range => {
507
+ let isHidden = true;
508
+ let rangeStart = 0;
509
+ (0, _number.rangeEach)(range.startCol, range.endCol, visualColumn => {
510
+ if (this.isHidden(visualColumn)) {
511
+ if (!isHidden) {
512
+ pushRange(range.startRow, range.endRow, rangeStart, visualColumn - 1);
481
513
  }
482
- });
514
+ isHidden = true;
515
+ } else {
516
+ if (isHidden) {
517
+ rangeStart = visualColumn;
518
+ }
519
+ if (visualColumn === range.endCol) {
520
+ pushRange(range.startRow, range.endRow, rangeStart, visualColumn);
521
+ }
522
+ isHidden = false;
523
+ }
483
524
  });
484
- return newRanges;
525
+ });
526
+ return newRanges;
527
+ }
528
+ function _onAfterGetColHeader2(column, TH) {
529
+ const areAriaTagsEnabled = this.hot.getSettings().ariaTags;
530
+ const beforeHiddenColumnIndicatorElement = TH.querySelector('.beforeHiddenColumnIndicator');
531
+ const afterHiddenColumnIndicatorElement = TH.querySelector('.afterHiddenColumnIndicator');
532
+ if (!_classPrivateFieldGet(this, _settings).indicators || column < 0) {
533
+ beforeHiddenColumnIndicatorElement === null || beforeHiddenColumnIndicatorElement === void 0 || beforeHiddenColumnIndicatorElement.remove();
534
+ afterHiddenColumnIndicatorElement === null || afterHiddenColumnIndicatorElement === void 0 || afterHiddenColumnIndicatorElement.remove();
535
+ return;
485
536
  }
486
-
487
- /**
488
- * Adds the needed classes to the headers.
489
- *
490
- * @private
491
- * @param {number} column Visual column index.
492
- * @param {HTMLElement} TH Header's TH element.
493
- */
494
- onAfterGetColHeader(column, TH) {
495
- const areAriaTagsEnabled = this.hot.getSettings().ariaTags;
496
- const beforeHiddenColumnIndicatorElement = TH.querySelector('.beforeHiddenColumnIndicator');
497
- const afterHiddenColumnIndicatorElement = TH.querySelector('.afterHiddenColumnIndicator');
498
- if (!_classPrivateFieldGet(this, _settings).indicators || column < 0) {
499
- beforeHiddenColumnIndicatorElement === null || beforeHiddenColumnIndicatorElement === void 0 || beforeHiddenColumnIndicatorElement.remove();
500
- afterHiddenColumnIndicatorElement === null || afterHiddenColumnIndicatorElement === void 0 || afterHiddenColumnIndicatorElement.remove();
501
- return;
502
- }
503
- const classList = [];
504
- if (column >= 1 && this.isHidden(column - 1)) {
505
- if (!afterHiddenColumnIndicatorElement) {
506
- const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN))] : [];
507
- (0, _element.appendElement)(TH, {
508
- tagName: 'div',
509
- attributes: attributesToAdd,
510
- className: AFTER_INDICATOR_CLASSNAME
511
- });
512
- }
513
- classList.push('afterHiddenColumn');
514
- }
515
- if (column < this.hot.countCols() - 1 && this.isHidden(column + 1)) {
516
- if (!beforeHiddenColumnIndicatorElement) {
517
- const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN))] : [];
518
- (0, _element.appendElement)(TH, {
519
- tagName: 'div',
520
- attributes: attributesToAdd,
521
- className: BEFORE_INDICATOR_CLASSNAME
522
- });
523
- }
524
- classList.push('beforeHiddenColumn');
537
+ const classList = [];
538
+ if (column >= 1 && this.isHidden(column - 1)) {
539
+ if (!afterHiddenColumnIndicatorElement) {
540
+ const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN))] : [];
541
+ (0, _element.appendElement)(TH, {
542
+ tagName: 'div',
543
+ attributes: attributesToAdd,
544
+ className: AFTER_INDICATOR_CLASSNAME
545
+ });
525
546
  }
526
- (0, _element.addClass)(TH, classList);
527
- }
528
-
529
- /**
530
- * Add Show-hide columns to context menu.
531
- *
532
- * @private
533
- * @param {object} options An array of objects containing information about the pre-defined Context Menu items.
534
- */
535
- onAfterContextMenuDefaultOptions(options) {
536
- options.items.push({
537
- name: _predefinedItems.SEPARATOR
538
- }, (0, _hideColumn.default)(this), (0, _showColumn.default)(this));
547
+ classList.push('afterHiddenColumn');
539
548
  }
540
-
541
- /**
542
- * On map initialized hook callback.
543
- *
544
- * @private
545
- */
546
- onMapInit() {
547
- if (Array.isArray(_classPrivateFieldGet(this, _settings).columns)) {
548
- this.hideColumns(_classPrivateFieldGet(this, _settings).columns);
549
+ if (column < this.hot.countCols() - 1 && this.isHidden(column + 1)) {
550
+ if (!beforeHiddenColumnIndicatorElement) {
551
+ const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN))] : [];
552
+ (0, _element.appendElement)(TH, {
553
+ tagName: 'div',
554
+ attributes: attributesToAdd,
555
+ className: BEFORE_INDICATOR_CLASSNAME
556
+ });
549
557
  }
558
+ classList.push('beforeHiddenColumn');
550
559
  }
551
-
552
- /**
553
- * Destroys the plugin instance.
554
- */
555
- destroy() {
556
- _classPrivateFieldSet(this, _settings, null);
557
- _classPrivateFieldSet(this, _hiddenColumnsMap, null);
558
- super.destroy();
559
- }
560
+ (0, _element.addClass)(TH, classList);
560
561
  }
561
- exports.HiddenColumns = HiddenColumns;
562
- function _clearIndicatorElements2(TH) {
563
- Array.from(TH.querySelectorAll(`.${AFTER_INDICATOR_CLASSNAME}, .${BEFORE_INDICATOR_CLASSNAME}`)).forEach(element => {
564
- element.remove();
565
- });
562
+ function _onAfterContextMenuDefaultOptions2(options) {
563
+ options.items.push({
564
+ name: _predefinedItems.SEPARATOR
565
+ }, (0, _hideColumn.default)(this), (0, _showColumn.default)(this));
566
+ }
567
+ function _onMapInit2() {
568
+ if (Array.isArray(_classPrivateFieldGet(this, _settings).columns)) {
569
+ this.hideColumns(_classPrivateFieldGet(this, _settings).columns);
570
+ }
566
571
  }