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
package/helpers/object.js CHANGED
@@ -157,7 +157,7 @@ function mixin(Base) {
157
157
  (0, _array.arrayEach)(mixins, mixinItem => {
158
158
  Base.MIXINS.push(mixinItem.MIXIN_NAME);
159
159
  objectEach(mixinItem, (value, key) => {
160
- if (Base.prototype[key] !== void 0) {
160
+ if (Base.prototype[key] !== undefined) {
161
161
  throw new Error(`Mixin conflict. Property '${key}' already exist and cannot be overwritten.`);
162
162
  }
163
163
  if (typeof value === 'function') {
@@ -173,7 +173,7 @@ function mixin(Base) {
173
173
  return result;
174
174
  };
175
175
  return function () {
176
- if (this[propertyName] === void 0) {
176
+ if (this[propertyName] === undefined) {
177
177
  this[propertyName] = initValue(initialValue);
178
178
  }
179
179
  return this[propertyName];
@@ -263,8 +263,8 @@ function getProperty(object, name) {
263
263
  let result = object;
264
264
  objectEach(names, nameItem => {
265
265
  result = result[nameItem];
266
- if (result === void 0) {
267
- result = void 0;
266
+ if (result === undefined) {
267
+ result = undefined;
268
268
  return false;
269
269
  }
270
270
  });
@@ -138,7 +138,7 @@ export function mixin(Base) {
138
138
  arrayEach(mixins, mixinItem => {
139
139
  Base.MIXINS.push(mixinItem.MIXIN_NAME);
140
140
  objectEach(mixinItem, (value, key) => {
141
- if (Base.prototype[key] !== void 0) {
141
+ if (Base.prototype[key] !== undefined) {
142
142
  throw new Error(`Mixin conflict. Property '${key}' already exist and cannot be overwritten.`);
143
143
  }
144
144
  if (typeof value === 'function') {
@@ -154,7 +154,7 @@ export function mixin(Base) {
154
154
  return result;
155
155
  };
156
156
  return function () {
157
- if (this[propertyName] === void 0) {
157
+ if (this[propertyName] === undefined) {
158
158
  this[propertyName] = initValue(initialValue);
159
159
  }
160
160
  return this[propertyName];
@@ -244,8 +244,8 @@ export function getProperty(object, name) {
244
244
  let result = object;
245
245
  objectEach(names, nameItem => {
246
246
  result = result[nameItem];
247
- if (result === void 0) {
248
- result = void 0;
247
+ if (result === undefined) {
248
+ result = undefined;
249
249
  return false;
250
250
  }
251
251
  });
package/helpers/string.js CHANGED
@@ -83,7 +83,7 @@ function substitute(template) {
83
83
  if (match.charAt(0) === '\\') {
84
84
  return match.substr(1, match.length - 1);
85
85
  }
86
- return variables[name] === void 0 ? '' : variables[name];
86
+ return variables[name] === undefined ? '' : variables[name];
87
87
  });
88
88
  }
89
89
 
@@ -72,7 +72,7 @@ export function substitute(template) {
72
72
  if (match.charAt(0) === '\\') {
73
73
  return match.substr(1, match.length - 1);
74
74
  }
75
- return variables[name] === void 0 ? '' : variables[name];
75
+ return variables[name] === undefined ? '' : variables[name];
76
76
  });
77
77
  }
78
78
 
package/package.json CHANGED
@@ -10,7 +10,7 @@
10
10
  "url": "https://github.com/handsontable/handsontable/issues"
11
11
  },
12
12
  "author": "Handsoncode <hello@handsontable.com>",
13
- "version": "14.0.0-next-07c0a60-20231107",
13
+ "version": "14.0.0-next-7ee54cb-20231108",
14
14
  "main": "index",
15
15
  "module": "index.mjs",
16
16
  "jsnext:main": "index.mjs",
package/pluginHooks.d.ts CHANGED
@@ -47,13 +47,11 @@ interface HookHighlightRowHeaderMeta {
47
47
  selectionType: string;
48
48
  rowCursor: number;
49
49
  selectionHeight: number;
50
- classNames: string[];
51
50
  }
52
51
  interface HookHighlightColumnHeaderMeta {
53
52
  selectionType: string;
54
53
  columnCursor: number;
55
54
  selectionWidth: number;
56
- classNames: string[];
57
55
  }
58
56
 
59
57
  export interface Events {
package/pluginHooks.js CHANGED
@@ -2,12 +2,16 @@
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 _array = require("./helpers/array");
6
7
  var _object = require("./helpers/object");
7
8
  var _string = require("./helpers/string");
8
9
  var _console = require("./helpers/console");
9
10
  var _templateLiteralTag = require("./helpers/templateLiteralTag");
10
11
  var _function = require("./helpers/function");
12
+ 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; }
13
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
14
+ 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); }
11
15
  /* eslint-disable jsdoc/require-description-complete-sentence */
12
16
  /**
13
17
  * @description
@@ -2571,10 +2575,15 @@ class Hooks {
2571
2575
  return getGlobalSingleton();
2572
2576
  }
2573
2577
 
2578
+ /**
2579
+ * @type {object}
2580
+ */
2581
+
2574
2582
  /**
2575
2583
  *
2576
2584
  */
2577
2585
  constructor() {
2586
+ _defineProperty(this, "globalBucket", void 0);
2578
2587
  this.globalBucket = this.createEmptyBucket();
2579
2588
  }
2580
2589
 
@@ -2749,7 +2758,7 @@ class Hooks {
2749
2758
  has(key) {
2750
2759
  let context = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
2751
2760
  const bucket = this.getBucket(context);
2752
- return !!(bucket[key] !== void 0 && bucket[key].length);
2761
+ return !!(bucket[key] !== undefined && bucket[key].length);
2753
2762
  }
2754
2763
 
2755
2764
  /**
@@ -2786,7 +2795,7 @@ class Hooks {
2786
2795
  continue;
2787
2796
  }
2788
2797
  const res = (0, _function.fastCall)(globalHandlers[index], context, p1, p2, p3, p4, p5, p6);
2789
- if (res !== void 0) {
2798
+ if (res !== undefined) {
2790
2799
  // eslint-disable-next-line no-param-reassign
2791
2800
  p1 = res;
2792
2801
  }
@@ -2810,7 +2819,7 @@ class Hooks {
2810
2819
  continue;
2811
2820
  }
2812
2821
  const res = (0, _function.fastCall)(localHandlers[index], context, p1, p2, p3, p4, p5, p6);
2813
- if (res !== void 0) {
2822
+ if (res !== undefined) {
2814
2823
  // eslint-disable-next-line no-param-reassign
2815
2824
  p1 = res;
2816
2825
  }
package/pluginHooks.mjs CHANGED
@@ -1,4 +1,8 @@
1
1
  import "core-js/modules/es.array.push.js";
2
+ import "core-js/modules/es.error.cause.js";
3
+ 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; }
4
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
5
+ 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); }
2
6
  import { arrayEach } from "./helpers/array.mjs";
3
7
  import { objectEach } from "./helpers/object.mjs";
4
8
  import { substitute } from "./helpers/string.mjs";
@@ -2569,10 +2573,15 @@ class Hooks {
2569
2573
  return getGlobalSingleton();
2570
2574
  }
2571
2575
 
2576
+ /**
2577
+ * @type {object}
2578
+ */
2579
+
2572
2580
  /**
2573
2581
  *
2574
2582
  */
2575
2583
  constructor() {
2584
+ _defineProperty(this, "globalBucket", void 0);
2576
2585
  this.globalBucket = this.createEmptyBucket();
2577
2586
  }
2578
2587
 
@@ -2747,7 +2756,7 @@ class Hooks {
2747
2756
  has(key) {
2748
2757
  let context = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
2749
2758
  const bucket = this.getBucket(context);
2750
- return !!(bucket[key] !== void 0 && bucket[key].length);
2759
+ return !!(bucket[key] !== undefined && bucket[key].length);
2751
2760
  }
2752
2761
 
2753
2762
  /**
@@ -2784,7 +2793,7 @@ class Hooks {
2784
2793
  continue;
2785
2794
  }
2786
2795
  const res = fastCall(globalHandlers[index], context, p1, p2, p3, p4, p5, p6);
2787
- if (res !== void 0) {
2796
+ if (res !== undefined) {
2788
2797
  // eslint-disable-next-line no-param-reassign
2789
2798
  p1 = res;
2790
2799
  }
@@ -2808,7 +2817,7 @@ class Hooks {
2808
2817
  continue;
2809
2818
  }
2810
2819
  const res = fastCall(localHandlers[index], context, p1, p2, p3, p4, p5, p6);
2811
- if (res !== void 0) {
2820
+ if (res !== undefined) {
2812
2821
  // eslint-disable-next-line no-param-reassign
2813
2822
  p1 = res;
2814
2823
  }
@@ -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 _base = require("../base");
6
7
  var _array = require("../../helpers/array");
7
8
  var _feature = require("../../helpers/feature");
@@ -15,10 +16,21 @@ var _src = require("../../3rdparty/walkontable/src");
15
16
  var _translations = require("../../translations");
16
17
  var _mixed = require("../../helpers/mixed");
17
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
+ function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
20
+ function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
21
+ function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
22
+ 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; }
23
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
24
+ 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); }
25
+ function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
26
+ 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; } }
27
+ function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
28
+ function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
29
+ function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
30
+ function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
18
31
  _pluginHooks.default.getSingleton().register('modifyAutoColumnSizeSeed');
19
32
  const PLUGIN_KEY = exports.PLUGIN_KEY = 'autoColumnSize';
20
33
  const PLUGIN_PRIORITY = exports.PLUGIN_PRIORITY = 10;
21
- const privatePool = new WeakMap();
22
34
  const COLUMN_SIZE_MAP_NAME = 'autoColumnSize';
23
35
 
24
36
  /* eslint-disable jsdoc/require-description-complete-sentence */
@@ -118,6 +130,13 @@ const COLUMN_SIZE_MAP_NAME = 'autoColumnSize';
118
130
  * :::
119
131
  */
120
132
  /* eslint-enable jsdoc/require-description-complete-sentence */
133
+ var _cachedColumnHeaders = /*#__PURE__*/new WeakMap();
134
+ var _onBeforeViewRender = /*#__PURE__*/new WeakSet();
135
+ var _onAfterLoadData = /*#__PURE__*/new WeakSet();
136
+ var _onBeforeChange = /*#__PURE__*/new WeakSet();
137
+ var _onBeforeColumnResize = /*#__PURE__*/new WeakSet();
138
+ var _onAfterInit = /*#__PURE__*/new WeakSet();
139
+ var _onAfterFormulasValuesUpdate = /*#__PURE__*/new WeakSet();
121
140
  class AutoColumnSize extends _base.BasePlugin {
122
141
  static get PLUGIN_KEY() {
123
142
  return PLUGIN_KEY;
@@ -134,25 +153,50 @@ class AutoColumnSize extends _base.BasePlugin {
134
153
  static get SYNC_CALCULATION_LIMIT() {
135
154
  return 50;
136
155
  }
156
+
157
+ /**
158
+ * Instance of {@link GhostTable} for rows and columns size calculations.
159
+ *
160
+ * @private
161
+ * @type {GhostTable}
162
+ */
163
+
137
164
  constructor(hotInstance) {
138
165
  super(hotInstance);
139
- privatePool.set(this, {
140
- /**
141
- * Cached column header names. It is used to diff current column headers with previous state and detect which
142
- * columns width should be updated.
143
- *
144
- * @private
145
- * @type {Array}
146
- */
147
- cachedColumnHeaders: []
148
- });
149
166
  /**
150
- * Instance of {@link GhostTable} for rows and columns size calculations.
167
+ * After formulas values updated listener.
151
168
  *
152
- * @private
153
- * @type {GhostTable}
169
+ * @param {Array} changes An array of modified data.
170
+ */
171
+ _classPrivateMethodInitSpec(this, _onAfterFormulasValuesUpdate);
172
+ /**
173
+ * On after Handsontable init fill plugin with all necessary values.
174
+ */
175
+ _classPrivateMethodInitSpec(this, _onAfterInit);
176
+ /**
177
+ * On before column resize listener.
178
+ *
179
+ * @param {number} size Calculated new column width.
180
+ * @param {number} column Visual index of the resized column.
181
+ * @param {boolean} isDblClick Flag that determines whether there was a double-click.
182
+ * @returns {number}
183
+ */
184
+ _classPrivateMethodInitSpec(this, _onBeforeColumnResize);
185
+ /**
186
+ * On before change listener.
187
+ *
188
+ * @param {Array} changes An array of modified data.
189
+ */
190
+ _classPrivateMethodInitSpec(this, _onBeforeChange);
191
+ /**
192
+ * On after load data listener.
193
+ */
194
+ _classPrivateMethodInitSpec(this, _onAfterLoadData);
195
+ /**
196
+ * On before view render listener.
154
197
  */
155
- this.ghostTable = new _ghostTable.default(this.hot);
198
+ _classPrivateMethodInitSpec(this, _onBeforeViewRender);
199
+ _defineProperty(this, "ghostTable", new _ghostTable.default(this.hot));
156
200
  /**
157
201
  * Instance of {@link SamplesGenerator} for generating samples necessary for columns width calculations.
158
202
  *
@@ -160,7 +204,7 @@ class AutoColumnSize extends _base.BasePlugin {
160
204
  * @type {SamplesGenerator}
161
205
  * @fires Hooks#modifyAutoColumnSizeSeed
162
206
  */
163
- this.samplesGenerator = new _samplesGenerator.default((row, column) => {
207
+ _defineProperty(this, "samplesGenerator", new _samplesGenerator.default((row, column) => {
164
208
  const cellMeta = this.hot.getCellMeta(row, column);
165
209
  let cellValue = '';
166
210
  if (!cellMeta.spanned) {
@@ -174,38 +218,48 @@ class AutoColumnSize extends _base.BasePlugin {
174
218
  value: cellValue,
175
219
  bundleSeed
176
220
  };
177
- });
221
+ }));
178
222
  /**
179
223
  * `true` only if the first calculation was performed.
180
224
  *
181
225
  * @private
182
226
  * @type {boolean}
183
227
  */
184
- this.firstCalculation = true;
228
+ _defineProperty(this, "firstCalculation", true);
185
229
  /**
186
230
  * `true` if the size calculation is in progress.
187
231
  *
188
232
  * @type {boolean}
189
233
  */
190
- this.inProgress = false;
234
+ _defineProperty(this, "inProgress", false);
191
235
  /**
192
236
  * Number of already measured columns (we already know their sizes).
193
237
  *
194
238
  * @type {number}
195
239
  */
196
- this.measuredColumns = 0;
240
+ _defineProperty(this, "measuredColumns", 0);
197
241
  /**
198
242
  * PhysicalIndexToValueMap to keep and track widths for physical column indexes.
199
243
  *
200
244
  * @private
201
245
  * @type {PhysicalIndexToValueMap}
202
246
  */
203
- this.columnWidthsMap = new _translations.PhysicalIndexToValueMap();
247
+ _defineProperty(this, "columnWidthsMap", new _translations.PhysicalIndexToValueMap());
248
+ /**
249
+ * Cached column header names. It is used to diff current column headers with previous state and detect which
250
+ * columns width should be updated.
251
+ *
252
+ * @type {Array}
253
+ */
254
+ _classPrivateFieldInitSpec(this, _cachedColumnHeaders, {
255
+ writable: true,
256
+ value: []
257
+ });
204
258
  this.hot.columnIndexMapper.registerMap(COLUMN_SIZE_MAP_NAME, this.columnWidthsMap);
205
259
 
206
260
  // Leave the listener active to allow auto-sizing the columns when the plugin is disabled.
207
261
  // This is necessary for width recalculation for resize handler doubleclick (ManualColumnResize).
208
- this.addHook('beforeColumnResize', (size, column, isDblClick) => this.onBeforeColumnResize(size, column, isDblClick));
262
+ this.addHook('beforeColumnResize', (size, column, isDblClick) => _classPrivateMethodGet(this, _onBeforeColumnResize, _onBeforeColumnResize2).call(this, size, column, isDblClick));
209
263
  }
210
264
 
211
265
  /**
@@ -227,18 +281,21 @@ class AutoColumnSize extends _base.BasePlugin {
227
281
  return;
228
282
  }
229
283
  const setting = this.hot.getSettings()[PLUGIN_KEY];
230
- if (setting && setting.useHeaders !== null && setting.useHeaders !== void 0) {
284
+ if (setting && setting.useHeaders !== null && setting.useHeaders !== undefined) {
231
285
  this.ghostTable.setSetting('useHeaders', setting.useHeaders);
232
286
  }
233
287
  this.setSamplingOptions();
234
288
  this.addHook('afterLoadData', function () {
235
- return _this.onAfterLoadData(...arguments);
289
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
290
+ args[_key] = arguments[_key];
291
+ }
292
+ return _classPrivateMethodGet(_this, _onAfterLoadData, _onAfterLoadData2).call(_this, ...args);
236
293
  });
237
- this.addHook('beforeChangeRender', changes => this.onBeforeChange(changes));
238
- this.addHook('afterFormulasValuesUpdate', changes => this.onAfterFormulasValuesUpdate(changes));
239
- this.addHook('beforeViewRender', force => this.onBeforeViewRender(force));
294
+ this.addHook('beforeChangeRender', changes => _classPrivateMethodGet(this, _onBeforeChange, _onBeforeChange2).call(this, changes));
295
+ this.addHook('afterFormulasValuesUpdate', changes => _classPrivateMethodGet(this, _onAfterFormulasValuesUpdate, _onAfterFormulasValuesUpdate2).call(this, changes));
296
+ this.addHook('beforeViewRender', force => _classPrivateMethodGet(this, _onBeforeViewRender, _onBeforeViewRender2).call(this, force));
240
297
  this.addHook('modifyColWidth', (width, col) => this.getColumnWidth(col, width));
241
- this.addHook('afterInit', () => this.onAfterInit());
298
+ this.addHook('afterInit', () => _classPrivateMethodGet(this, _onAfterInit, _onAfterInit2).call(this));
242
299
  super.enablePlugin();
243
300
  }
244
301
 
@@ -262,7 +319,7 @@ class AutoColumnSize extends _base.BasePlugin {
262
319
 
263
320
  // Leave the listener active to allow auto-sizing the columns when the plugin is disabled.
264
321
  // This is necessary for width recalculation for resize handler doubleclick (ManualColumnResize).
265
- this.addHook('beforeColumnResize', (size, column, isDblClick) => this.onBeforeColumnResize(size, column, isDblClick));
322
+ this.addHook('beforeColumnResize', (size, column, isDblClick) => _classPrivateMethodGet(this, _onBeforeColumnResize, _onBeforeColumnResize2).call(this, size, column, isDblClick));
266
323
  }
267
324
 
268
325
  /**
@@ -284,7 +341,7 @@ class AutoColumnSize extends _base.BasePlugin {
284
341
  this.calculateColumnsWidth({
285
342
  from: firstVisibleColumn,
286
343
  to: lastVisibleColumn
287
- }, void 0, force);
344
+ }, undefined, force);
288
345
  }
289
346
 
290
347
  /**
@@ -340,7 +397,7 @@ class AutoColumnSize extends _base.BasePlugin {
340
397
 
341
398
  /**
342
399
  * Calculates all columns width. The calculated column will be cached in the {@link AutoColumnSize#widths} property.
343
- * To retrieve width for specified column use {@link AutoColumnSize#getColumnWidth} method.
400
+ * To retrieve width for specified column use {@link AutoColumnSize##getColumnWidth} method.
344
401
  *
345
402
  * @param {object|number} rowRange Row index or an object with `from` and `to` properties which define row range.
346
403
  */
@@ -401,8 +458,8 @@ class AutoColumnSize extends _base.BasePlugin {
401
458
  */
402
459
  setSamplingOptions() {
403
460
  const setting = this.hot.getSettings()[PLUGIN_KEY];
404
- const samplingRatio = setting && (0, _object.hasOwnProperty)(setting, 'samplingRatio') ? setting.samplingRatio : void 0;
405
- const allowSampleDuplicates = setting && (0, _object.hasOwnProperty)(setting, 'allowSampleDuplicates') ? setting.allowSampleDuplicates : void 0;
461
+ const samplingRatio = setting && (0, _object.hasOwnProperty)(setting, 'samplingRatio') ? setting.samplingRatio : undefined;
462
+ const allowSampleDuplicates = setting && (0, _object.hasOwnProperty)(setting, 'allowSampleDuplicates') ? setting.allowSampleDuplicates : undefined;
406
463
  if (samplingRatio && !isNaN(samplingRatio)) {
407
464
  this.samplesGenerator.setSampleCount(parseInt(samplingRatio, 10));
408
465
  }
@@ -453,10 +510,10 @@ class AutoColumnSize extends _base.BasePlugin {
453
510
  * @returns {number}
454
511
  */
455
512
  getColumnWidth(column) {
456
- let defaultWidth = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : void 0;
513
+ let defaultWidth = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;
457
514
  let keepMinimum = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
458
515
  let width = defaultWidth;
459
- if (width === void 0) {
516
+ if (width === undefined) {
460
517
  width = this.columnWidthsMap.getValueAtIndex(this.hot.toPhysicalColumn(column));
461
518
  if (keepMinimum && typeof width === 'number') {
462
519
  width = Math.max(width, _src.ViewportColumnsCalculator.DEFAULT_WIDTH);
@@ -524,18 +581,15 @@ class AutoColumnSize extends _base.BasePlugin {
524
581
  */
525
582
  findColumnsWhereHeaderWasChanged() {
526
583
  const columnHeaders = this.hot.getColHeader();
527
- const {
528
- cachedColumnHeaders
529
- } = privatePool.get(this);
530
584
  const changedColumns = (0, _array.arrayReduce)(columnHeaders, (acc, columnTitle, physicalColumn) => {
531
- const cachedColumnsLength = cachedColumnHeaders.length;
532
- if (cachedColumnsLength - 1 < physicalColumn || cachedColumnHeaders[physicalColumn] !== columnTitle) {
585
+ const cachedColumnsLength = _classPrivateFieldGet(this, _cachedColumnHeaders).length;
586
+ if (cachedColumnsLength - 1 < physicalColumn || _classPrivateFieldGet(this, _cachedColumnHeaders)[physicalColumn] !== columnTitle) {
533
587
  acc.push(physicalColumn);
534
588
  }
535
589
  if (cachedColumnsLength - 1 < physicalColumn) {
536
- cachedColumnHeaders.push(columnTitle);
590
+ _classPrivateFieldGet(this, _cachedColumnHeaders).push(columnTitle);
537
591
  } else {
538
- cachedColumnHeaders[physicalColumn] = columnTitle;
592
+ _classPrivateFieldGet(this, _cachedColumnHeaders)[physicalColumn] = columnTitle;
539
593
  }
540
594
  return acc;
541
595
  }, []);
@@ -569,93 +623,6 @@ class AutoColumnSize extends _base.BasePlugin {
569
623
  isNeedRecalculate() {
570
624
  return !!(0, _array.arrayFilter)(this.columnWidthsMap.getValues().slice(0, this.measuredColumns), item => item === null).length;
571
625
  }
572
-
573
- /**
574
- * On before view render listener.
575
- *
576
- * @private
577
- */
578
- onBeforeViewRender() {
579
- this.calculateVisibleColumnsWidth();
580
- if (this.isNeedRecalculate() && !this.inProgress) {
581
- this.calculateAllColumnsWidth();
582
- }
583
- }
584
-
585
- /**
586
- * On after load data listener.
587
- *
588
- * @private
589
- */
590
- onAfterLoadData() {
591
- if (this.hot.view) {
592
- this.recalculateAllColumnsWidth();
593
- } else {
594
- // first load - initialization
595
- setTimeout(() => {
596
- if (this.hot) {
597
- this.recalculateAllColumnsWidth();
598
- }
599
- }, 0);
600
- }
601
- }
602
-
603
- /**
604
- * On before change listener.
605
- *
606
- * @private
607
- * @param {Array} changes An array of modified data.
608
- */
609
- onBeforeChange(changes) {
610
- const changedColumns = (0, _array.arrayMap)(changes, _ref2 => {
611
- let [, columnProperty] = _ref2;
612
- return this.hot.toPhysicalColumn(this.hot.propToCol(columnProperty));
613
- });
614
- this.clearCache(Array.from(new Set(changedColumns)));
615
- }
616
-
617
- /**
618
- * On before column resize listener.
619
- *
620
- * @private
621
- * @param {number} size Calculated new column width.
622
- * @param {number} column Visual index of the resized column.
623
- * @param {boolean} isDblClick Flag that determines whether there was a double-click.
624
- * @returns {number}
625
- */
626
- onBeforeColumnResize(size, column, isDblClick) {
627
- let newSize = size;
628
- if (isDblClick) {
629
- this.calculateColumnsWidth(column, void 0, true);
630
- newSize = this.getColumnWidth(column, void 0, false);
631
- }
632
- return newSize;
633
- }
634
-
635
- /**
636
- * On after Handsontable init fill plugin with all necessary values.
637
- *
638
- * @private
639
- */
640
- onAfterInit() {
641
- privatePool.get(this).cachedColumnHeaders = this.hot.getColHeader();
642
- }
643
-
644
- /**
645
- * After formulas values updated listener.
646
- *
647
- * @private
648
- * @param {Array} changes An array of modified data.
649
- */
650
- onAfterFormulasValuesUpdate(changes) {
651
- const filteredChanges = (0, _array.arrayFilter)(changes, change => {
652
- var _change$address;
653
- return (0, _mixed.isDefined)((_change$address = change.address) === null || _change$address === void 0 ? void 0 : _change$address.col);
654
- });
655
- const changedColumns = (0, _array.arrayMap)(filteredChanges, change => change.address.col);
656
- this.clearCache(Array.from(new Set(changedColumns)));
657
- }
658
-
659
626
  /**
660
627
  * Destroys the plugin instance.
661
628
  */
@@ -664,4 +631,48 @@ class AutoColumnSize extends _base.BasePlugin {
664
631
  super.destroy();
665
632
  }
666
633
  }
667
- exports.AutoColumnSize = AutoColumnSize;
634
+ exports.AutoColumnSize = AutoColumnSize;
635
+ function _onBeforeViewRender2() {
636
+ this.calculateVisibleColumnsWidth();
637
+ if (this.isNeedRecalculate() && !this.inProgress) {
638
+ this.calculateAllColumnsWidth();
639
+ }
640
+ }
641
+ function _onAfterLoadData2() {
642
+ if (this.hot.view) {
643
+ this.recalculateAllColumnsWidth();
644
+ } else {
645
+ // first load - initialization
646
+ setTimeout(() => {
647
+ if (this.hot) {
648
+ this.recalculateAllColumnsWidth();
649
+ }
650
+ }, 0);
651
+ }
652
+ }
653
+ function _onBeforeChange2(changes) {
654
+ const changedColumns = (0, _array.arrayMap)(changes, _ref2 => {
655
+ let [, columnProperty] = _ref2;
656
+ return this.hot.toPhysicalColumn(this.hot.propToCol(columnProperty));
657
+ });
658
+ this.clearCache(Array.from(new Set(changedColumns)));
659
+ }
660
+ function _onBeforeColumnResize2(size, column, isDblClick) {
661
+ let newSize = size;
662
+ if (isDblClick) {
663
+ this.calculateColumnsWidth(column, undefined, true);
664
+ newSize = this.getColumnWidth(column, undefined, false);
665
+ }
666
+ return newSize;
667
+ }
668
+ function _onAfterInit2() {
669
+ _classPrivateFieldSet(this, _cachedColumnHeaders, this.hot.getColHeader());
670
+ }
671
+ function _onAfterFormulasValuesUpdate2(changes) {
672
+ const filteredChanges = (0, _array.arrayFilter)(changes, change => {
673
+ var _change$address;
674
+ return (0, _mixed.isDefined)((_change$address = change.address) === null || _change$address === void 0 ? void 0 : _change$address.col);
675
+ });
676
+ const changedColumns = (0, _array.arrayMap)(filteredChanges, change => change.address.col);
677
+ this.clearCache(Array.from(new Set(changedColumns)));
678
+ }