handsontable 0.0.0-next-b66c79f-20230713 → 0.0.0-next-08765b9-20230714

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 (373) hide show
  1. package/3rdparty/walkontable/src/cell/coords.d.ts +6 -1
  2. package/3rdparty/walkontable/src/cell/coords.js +87 -33
  3. package/3rdparty/walkontable/src/cell/coords.mjs +87 -33
  4. package/3rdparty/walkontable/src/cell/range.d.ts +9 -2
  5. package/3rdparty/walkontable/src/cell/range.js +92 -46
  6. package/3rdparty/walkontable/src/cell/range.mjs +92 -46
  7. package/3rdparty/walkontable/src/core/_base.js +41 -33
  8. package/3rdparty/walkontable/src/core/_base.mjs +41 -33
  9. package/3rdparty/walkontable/src/core/clone.js +8 -5
  10. package/3rdparty/walkontable/src/core/clone.mjs +8 -5
  11. package/3rdparty/walkontable/src/core/core.js +3 -2
  12. package/3rdparty/walkontable/src/core/core.mjs +3 -2
  13. package/3rdparty/walkontable/src/event.js +9 -8
  14. package/3rdparty/walkontable/src/event.mjs +9 -8
  15. package/3rdparty/walkontable/src/facade/core.js +2 -2
  16. package/3rdparty/walkontable/src/facade/core.mjs +2 -2
  17. package/3rdparty/walkontable/src/index.js +10 -2
  18. package/3rdparty/walkontable/src/index.mjs +2 -2
  19. package/3rdparty/walkontable/src/overlay/_base.js +11 -9
  20. package/3rdparty/walkontable/src/overlay/_base.mjs +11 -9
  21. package/3rdparty/walkontable/src/overlay/bottom.js +10 -8
  22. package/3rdparty/walkontable/src/overlay/bottom.mjs +10 -8
  23. package/3rdparty/walkontable/src/overlay/inlineStart.js +2 -6
  24. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +2 -6
  25. package/3rdparty/walkontable/src/overlay/top.js +12 -14
  26. package/3rdparty/walkontable/src/overlay/top.mjs +12 -14
  27. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +16 -13
  28. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +16 -13
  29. package/3rdparty/walkontable/src/overlays.js +75 -80
  30. package/3rdparty/walkontable/src/overlays.mjs +75 -80
  31. package/3rdparty/walkontable/src/scroll.js +27 -24
  32. package/3rdparty/walkontable/src/scroll.mjs +27 -24
  33. package/3rdparty/walkontable/src/{border.js → selection/border/border.js} +7 -12
  34. package/3rdparty/walkontable/src/{border.mjs → selection/border/border.mjs} +7 -12
  35. package/3rdparty/walkontable/src/selection/border/constants.js +16 -0
  36. package/3rdparty/walkontable/src/selection/border/constants.mjs +12 -0
  37. package/3rdparty/walkontable/src/selection/constants.js +62 -0
  38. package/3rdparty/walkontable/src/selection/constants.mjs +51 -0
  39. package/3rdparty/walkontable/src/selection/index.js +26 -0
  40. package/3rdparty/walkontable/src/selection/index.mjs +5 -0
  41. package/3rdparty/walkontable/src/selection/manager.js +259 -0
  42. package/3rdparty/walkontable/src/selection/manager.mjs +254 -0
  43. package/3rdparty/walkontable/src/selection/scanner.js +270 -0
  44. package/3rdparty/walkontable/src/selection/scanner.mjs +267 -0
  45. package/3rdparty/walkontable/src/selection/selection.js +101 -0
  46. package/3rdparty/walkontable/src/selection/selection.mjs +96 -0
  47. package/3rdparty/walkontable/src/settings.js +18 -17
  48. package/3rdparty/walkontable/src/settings.mjs +18 -17
  49. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +9 -0
  50. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +9 -0
  51. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +9 -0
  52. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +9 -0
  53. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +9 -0
  54. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +9 -0
  55. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +9 -0
  56. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +9 -0
  57. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +9 -0
  58. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +9 -0
  59. package/3rdparty/walkontable/src/table.js +48 -115
  60. package/3rdparty/walkontable/src/table.mjs +49 -116
  61. package/base.js +2 -2
  62. package/base.mjs +2 -2
  63. package/core/focusCatcher/focusDetector.js +58 -0
  64. package/core/focusCatcher/focusDetector.mjs +54 -0
  65. package/core/focusCatcher/index.js +142 -0
  66. package/core/focusCatcher/index.mjs +138 -0
  67. package/core/index.js +9 -0
  68. package/core/index.mjs +1 -0
  69. package/core.d.ts +6 -3
  70. package/core.js +181 -298
  71. package/core.mjs +181 -298
  72. package/dataMap/metaManager/metaLayers/cellMeta.js +2 -1
  73. package/dataMap/metaManager/metaLayers/cellMeta.mjs +2 -1
  74. package/dataMap/metaManager/metaLayers/globalMeta.js +1 -1
  75. package/dataMap/metaManager/metaLayers/globalMeta.mjs +1 -1
  76. package/dataMap/metaManager/metaSchema.js +41 -0
  77. package/dataMap/metaManager/metaSchema.mjs +41 -0
  78. package/dataMap/metaManager/mods/dynamicCellMeta.js +3 -2
  79. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +3 -2
  80. package/dataMap/metaManager/utils.js +4 -2
  81. package/dataMap/metaManager/utils.mjs +4 -2
  82. package/dist/handsontable.css +19 -3
  83. package/dist/handsontable.full.css +19 -3
  84. package/dist/handsontable.full.js +10739 -7037
  85. package/dist/handsontable.full.min.css +3 -3
  86. package/dist/handsontable.full.min.js +25 -25
  87. package/dist/handsontable.js +24884 -21182
  88. package/dist/handsontable.min.css +3 -3
  89. package/dist/handsontable.min.js +19 -19
  90. package/editorManager.js +11 -75
  91. package/editorManager.mjs +11 -74
  92. package/editors/autocompleteEditor/autocompleteEditor.js +70 -67
  93. package/editors/autocompleteEditor/autocompleteEditor.mjs +70 -67
  94. package/editors/baseEditor/baseEditor.js +1 -1
  95. package/editors/baseEditor/baseEditor.mjs +1 -1
  96. package/editors/dateEditor/dateEditor.js +2 -1
  97. package/editors/dateEditor/dateEditor.mjs +2 -1
  98. package/editors/textEditor/textEditor.js +3 -11
  99. package/editors/textEditor/textEditor.mjs +4 -12
  100. package/helpers/mixed.js +1 -1
  101. package/helpers/mixed.mjs +1 -1
  102. package/helpers/number.d.ts +1 -0
  103. package/helpers/number.js +18 -0
  104. package/helpers/number.mjs +17 -0
  105. package/helpers/object.js +1 -0
  106. package/helpers/object.mjs +1 -0
  107. package/index.js +5 -5
  108. package/index.mjs +5 -5
  109. package/package.json +1 -1
  110. package/pluginHooks.d.ts +7 -1
  111. package/pluginHooks.js +106 -1
  112. package/pluginHooks.mjs +106 -1
  113. package/plugins/autoColumnSize/autoColumnSize.js +4 -1
  114. package/plugins/autoColumnSize/autoColumnSize.mjs +4 -1
  115. package/plugins/collapsibleColumns/collapsibleColumns.js +110 -40
  116. package/plugins/collapsibleColumns/collapsibleColumns.mjs +110 -40
  117. package/plugins/columnSorting/columnSorting.js +40 -1
  118. package/plugins/columnSorting/columnSorting.mjs +40 -3
  119. package/plugins/columnSorting/columnStatesManager.js +2 -1
  120. package/plugins/columnSorting/columnStatesManager.mjs +2 -1
  121. package/plugins/columnSorting/index.js +3 -1
  122. package/plugins/columnSorting/index.mjs +1 -1
  123. package/plugins/comments/commentEditor.js +1 -0
  124. package/plugins/comments/commentEditor.mjs +1 -0
  125. package/plugins/comments/comments.js +253 -191
  126. package/plugins/comments/comments.mjs +252 -192
  127. package/plugins/comments/contextMenuItem/addEditComment.js +41 -0
  128. package/plugins/comments/contextMenuItem/addEditComment.mjs +35 -0
  129. package/plugins/comments/contextMenuItem/readOnlyComment.js +49 -0
  130. package/plugins/comments/contextMenuItem/readOnlyComment.mjs +43 -0
  131. package/plugins/comments/contextMenuItem/removeComment.js +38 -0
  132. package/plugins/comments/contextMenuItem/removeComment.mjs +32 -0
  133. package/plugins/contextMenu/contextMenu.d.ts +1 -1
  134. package/plugins/contextMenu/contextMenu.js +72 -30
  135. package/plugins/contextMenu/contextMenu.mjs +73 -31
  136. package/plugins/contextMenu/predefinedItems/alignment.js +7 -0
  137. package/plugins/contextMenu/predefinedItems/alignment.mjs +7 -0
  138. package/plugins/contextMenu/predefinedItems/clearColumn.js +5 -3
  139. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +5 -3
  140. package/plugins/contextMenu/predefinedItems/columnLeft.js +5 -3
  141. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +5 -3
  142. package/plugins/contextMenu/predefinedItems/columnRight.js +5 -3
  143. package/plugins/contextMenu/predefinedItems/columnRight.mjs +5 -3
  144. package/plugins/contextMenu/predefinedItems/readOnly.js +7 -0
  145. package/plugins/contextMenu/predefinedItems/readOnly.mjs +7 -0
  146. package/plugins/contextMenu/predefinedItems/removeColumn.js +7 -5
  147. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +5 -3
  148. package/plugins/contextMenu/predefinedItems/removeRow.js +7 -5
  149. package/plugins/contextMenu/predefinedItems/removeRow.mjs +5 -3
  150. package/plugins/contextMenu/predefinedItems/rowAbove.js +5 -3
  151. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +5 -3
  152. package/plugins/contextMenu/predefinedItems/rowBelow.js +5 -3
  153. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +5 -3
  154. package/plugins/contextMenu/utils.js +28 -16
  155. package/plugins/contextMenu/utils.mjs +27 -15
  156. package/plugins/copyPaste/contextMenuItem/copy.js +7 -0
  157. package/plugins/copyPaste/contextMenuItem/copy.mjs +7 -0
  158. package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.js +9 -1
  159. package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.mjs +9 -1
  160. package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.js +9 -1
  161. package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.mjs +9 -1
  162. package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.js +9 -1
  163. package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.mjs +9 -1
  164. package/plugins/copyPaste/contextMenuItem/cut.js +7 -0
  165. package/plugins/copyPaste/contextMenuItem/cut.mjs +7 -0
  166. package/plugins/copyPaste/copyPaste.js +12 -6
  167. package/plugins/copyPaste/copyPaste.mjs +12 -6
  168. package/plugins/customBorders/customBorders.js +36 -29
  169. package/plugins/customBorders/customBorders.mjs +37 -30
  170. package/plugins/customBorders/utils.js +3 -3
  171. package/plugins/customBorders/utils.mjs +3 -3
  172. package/plugins/dropdownMenu/dropdownMenu.d.ts +1 -1
  173. package/plugins/dropdownMenu/dropdownMenu.js +89 -32
  174. package/plugins/dropdownMenu/dropdownMenu.mjs +89 -32
  175. package/plugins/filters/conditionCollection.js +6 -5
  176. package/plugins/filters/conditionCollection.mjs +6 -5
  177. package/plugins/filters/filters.js +44 -21
  178. package/plugins/filters/filters.mjs +43 -20
  179. package/plugins/formulas/engine/register.js +3 -3
  180. package/plugins/formulas/engine/register.mjs +3 -3
  181. package/plugins/formulas/engine/settings.js +6 -3
  182. package/plugins/formulas/engine/settings.mjs +6 -3
  183. package/plugins/formulas/formulas.js +151 -143
  184. package/plugins/formulas/formulas.mjs +151 -143
  185. package/plugins/formulas/indexSyncer/axisSyncer.js +115 -79
  186. package/plugins/formulas/indexSyncer/axisSyncer.mjs +115 -79
  187. package/plugins/formulas/indexSyncer/index.js +100 -64
  188. package/plugins/formulas/indexSyncer/index.mjs +100 -64
  189. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +2 -2
  190. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +2 -2
  191. package/plugins/hiddenColumns/hiddenColumns.js +51 -34
  192. package/plugins/hiddenColumns/hiddenColumns.mjs +51 -34
  193. package/plugins/hiddenRows/contextMenuItem/showRow.js +2 -2
  194. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +2 -2
  195. package/plugins/hiddenRows/hiddenRows.js +50 -33
  196. package/plugins/hiddenRows/hiddenRows.mjs +50 -33
  197. package/plugins/manualRowResize/manualRowResize.js +2 -1
  198. package/plugins/manualRowResize/manualRowResize.mjs +2 -1
  199. package/plugins/mergeCells/mergeCells.js +6 -17
  200. package/plugins/mergeCells/mergeCells.mjs +6 -17
  201. package/plugins/multiColumnSorting/multiColumnSorting.js +37 -2
  202. package/plugins/multiColumnSorting/multiColumnSorting.mjs +37 -2
  203. package/plugins/nestedHeaders/nestedHeaders.js +209 -75
  204. package/plugins/nestedHeaders/nestedHeaders.mjs +208 -74
  205. package/plugins/nestedHeaders/stateManager/headersTree.js +58 -38
  206. package/plugins/nestedHeaders/stateManager/headersTree.mjs +58 -38
  207. package/plugins/nestedHeaders/stateManager/index.js +107 -49
  208. package/plugins/nestedHeaders/stateManager/index.mjs +105 -47
  209. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +1 -1
  210. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +1 -1
  211. package/plugins/nestedHeaders/stateManager/sourceSettings.js +57 -37
  212. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +57 -37
  213. package/plugins/nestedHeaders/utils/ghostTable.js +39 -35
  214. package/plugins/nestedHeaders/utils/ghostTable.mjs +39 -35
  215. package/plugins/nestedRows/data/dataManager.js +4 -2
  216. package/plugins/nestedRows/data/dataManager.mjs +4 -2
  217. package/plugins/nestedRows/nestedRows.js +41 -0
  218. package/plugins/nestedRows/nestedRows.mjs +41 -0
  219. package/plugins/persistentState/storage.js +1 -0
  220. package/plugins/persistentState/storage.mjs +1 -0
  221. package/plugins/undoRedo/undoRedo.js +2 -1
  222. package/plugins/undoRedo/undoRedo.mjs +2 -1
  223. package/renderers/checkboxRenderer/checkboxRenderer.js +2 -2
  224. package/renderers/checkboxRenderer/checkboxRenderer.mjs +1 -1
  225. package/selection/highlight/highlight.js +256 -71
  226. package/selection/highlight/highlight.mjs +250 -71
  227. package/selection/highlight/types/activeHeader.js +10 -8
  228. package/selection/highlight/types/activeHeader.mjs +10 -8
  229. package/selection/highlight/types/area.js +6 -18
  230. package/selection/highlight/types/area.mjs +6 -18
  231. package/selection/highlight/types/areaLayered.js +31 -0
  232. package/selection/highlight/types/areaLayered.mjs +26 -0
  233. package/selection/highlight/types/column.js +27 -0
  234. package/selection/highlight/types/column.mjs +22 -0
  235. package/selection/highlight/types/customSelection.js +7 -9
  236. package/selection/highlight/types/customSelection.mjs +7 -9
  237. package/selection/highlight/types/fill.js +5 -7
  238. package/selection/highlight/types/fill.mjs +5 -7
  239. package/selection/highlight/types/{cell.js → focus.js} +5 -7
  240. package/selection/highlight/types/{cell.mjs → focus.mjs} +5 -7
  241. package/selection/highlight/types/header.js +9 -18
  242. package/selection/highlight/types/header.mjs +9 -18
  243. package/selection/highlight/types/row.js +27 -0
  244. package/selection/highlight/types/row.mjs +22 -0
  245. package/selection/highlight/visualSelection.js +41 -33
  246. package/selection/highlight/visualSelection.mjs +41 -33
  247. package/selection/index.js +4 -7
  248. package/selection/index.mjs +2 -3
  249. package/selection/mouseEventHandler.js +1 -1
  250. package/selection/mouseEventHandler.mjs +1 -1
  251. package/selection/range.js +8 -8
  252. package/selection/range.mjs +8 -8
  253. package/selection/selection.js +290 -154
  254. package/selection/selection.mjs +287 -153
  255. package/selection/transformation.js +232 -90
  256. package/selection/transformation.mjs +232 -90
  257. package/selection/utils.js +15 -21
  258. package/selection/utils.mjs +16 -21
  259. package/settings.d.ts +2 -0
  260. package/shortcutContexts/commands/editor/closeAndSave.js +12 -0
  261. package/shortcutContexts/commands/editor/closeAndSave.mjs +8 -0
  262. package/shortcutContexts/commands/editor/closeWithoutSaving.js +12 -0
  263. package/shortcutContexts/commands/editor/closeWithoutSaving.mjs +8 -0
  264. package/shortcutContexts/commands/editor/fastOpen.js +16 -0
  265. package/shortcutContexts/commands/editor/fastOpen.mjs +12 -0
  266. package/shortcutContexts/commands/editor/index.js +16 -0
  267. package/shortcutContexts/commands/editor/index.mjs +12 -0
  268. package/shortcutContexts/commands/editor/open.js +27 -0
  269. package/shortcutContexts/commands/editor/open.mjs +23 -0
  270. package/shortcutContexts/commands/emptySelectedCells.js +11 -0
  271. package/shortcutContexts/commands/emptySelectedCells.mjs +7 -0
  272. package/shortcutContexts/commands/extendCellsSelection/down.js +15 -0
  273. package/shortcutContexts/commands/extendCellsSelection/down.mjs +11 -0
  274. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.js +21 -0
  275. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.mjs +17 -0
  276. package/shortcutContexts/commands/extendCellsSelection/index.js +26 -0
  277. package/shortcutContexts/commands/extendCellsSelection/index.mjs +22 -0
  278. package/shortcutContexts/commands/extendCellsSelection/left.js +15 -0
  279. package/shortcutContexts/commands/extendCellsSelection/left.mjs +11 -0
  280. package/shortcutContexts/commands/extendCellsSelection/right.js +15 -0
  281. package/shortcutContexts/commands/extendCellsSelection/right.mjs +11 -0
  282. package/shortcutContexts/commands/extendCellsSelection/toColumns.js +19 -0
  283. package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +15 -0
  284. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +29 -0
  285. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +25 -0
  286. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +19 -0
  287. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +15 -0
  288. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +19 -0
  289. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +15 -0
  290. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +29 -0
  291. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +25 -0
  292. package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +29 -0
  293. package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +25 -0
  294. package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +29 -0
  295. package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +25 -0
  296. package/shortcutContexts/commands/extendCellsSelection/toRows.js +19 -0
  297. package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +15 -0
  298. package/shortcutContexts/commands/extendCellsSelection/up.js +15 -0
  299. package/shortcutContexts/commands/extendCellsSelection/up.mjs +11 -0
  300. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.js +21 -0
  301. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.mjs +17 -0
  302. package/shortcutContexts/commands/index.js +35 -0
  303. package/shortcutContexts/commands/index.mjs +31 -0
  304. package/shortcutContexts/commands/moveCellSelection/down.js +13 -0
  305. package/shortcutContexts/commands/moveCellSelection/down.mjs +9 -0
  306. package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.js +31 -0
  307. package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.mjs +27 -0
  308. package/shortcutContexts/commands/moveCellSelection/index.js +28 -0
  309. package/shortcutContexts/commands/moveCellSelection/index.mjs +24 -0
  310. package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +12 -0
  311. package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +8 -0
  312. package/shortcutContexts/commands/moveCellSelection/inlineStart.js +12 -0
  313. package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +8 -0
  314. package/shortcutContexts/commands/moveCellSelection/left.js +10 -0
  315. package/shortcutContexts/commands/moveCellSelection/left.mjs +6 -0
  316. package/shortcutContexts/commands/moveCellSelection/right.js +10 -0
  317. package/shortcutContexts/commands/moveCellSelection/right.mjs +6 -0
  318. package/shortcutContexts/commands/moveCellSelection/toMostBottom.js +17 -0
  319. package/shortcutContexts/commands/moveCellSelection/toMostBottom.mjs +13 -0
  320. package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.js +18 -0
  321. package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.mjs +14 -0
  322. package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.js +14 -0
  323. package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.mjs +10 -0
  324. package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.js +17 -0
  325. package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.mjs +13 -0
  326. package/shortcutContexts/commands/moveCellSelection/toMostLeft.js +19 -0
  327. package/shortcutContexts/commands/moveCellSelection/toMostLeft.mjs +15 -0
  328. package/shortcutContexts/commands/moveCellSelection/toMostRight.js +21 -0
  329. package/shortcutContexts/commands/moveCellSelection/toMostRight.mjs +17 -0
  330. package/shortcutContexts/commands/moveCellSelection/toMostTop.js +17 -0
  331. package/shortcutContexts/commands/moveCellSelection/toMostTop.mjs +13 -0
  332. package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.js +19 -0
  333. package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.mjs +15 -0
  334. package/shortcutContexts/commands/moveCellSelection/up.js +13 -0
  335. package/shortcutContexts/commands/moveCellSelection/up.mjs +9 -0
  336. package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.js +31 -0
  337. package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.mjs +27 -0
  338. package/shortcutContexts/commands/populateSelectedCellsData.js +29 -0
  339. package/shortcutContexts/commands/populateSelectedCellsData.mjs +25 -0
  340. package/shortcutContexts/commands/scrollToFocusedCell.js +36 -0
  341. package/shortcutContexts/commands/scrollToFocusedCell.mjs +32 -0
  342. package/shortcutContexts/commands/selectAll.js +10 -0
  343. package/shortcutContexts/commands/selectAll.mjs +6 -0
  344. package/shortcutContexts/constants.js +13 -0
  345. package/shortcutContexts/constants.mjs +8 -0
  346. package/shortcutContexts/editor.js +25 -0
  347. package/shortcutContexts/editor.mjs +21 -0
  348. package/shortcutContexts/grid.js +163 -0
  349. package/shortcutContexts/grid.mjs +159 -0
  350. package/shortcutContexts/index.js +24 -0
  351. package/shortcutContexts/index.mjs +11 -0
  352. package/shortcuts/manager.js +2 -0
  353. package/shortcuts/manager.mjs +2 -0
  354. package/shortcuts/recorder.js +2 -2
  355. package/shortcuts/recorder.mjs +2 -2
  356. package/shortcuts/utils.js +19 -5
  357. package/shortcuts/utils.mjs +18 -4
  358. package/tableView.js +163 -91
  359. package/tableView.mjs +163 -91
  360. package/translations/changesObservable/observable.js +82 -54
  361. package/translations/changesObservable/observable.mjs +82 -54
  362. package/translations/changesObservable/observer.js +24 -11
  363. package/translations/changesObservable/observer.mjs +24 -11
  364. package/translations/maps/linkedPhysicalIndexToValueMap.js +14 -8
  365. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +14 -8
  366. package/utils/dataStructures/tree.js +21 -18
  367. package/utils/dataStructures/tree.mjs +21 -18
  368. package/3rdparty/walkontable/src/selection.js +0 -295
  369. package/3rdparty/walkontable/src/selection.mjs +0 -290
  370. package/selection/highlight/constants.js +0 -15
  371. package/selection/highlight/constants.mjs +0 -6
  372. package/selection/highlight/types/index.js +0 -35
  373. package/selection/highlight/types/index.mjs +0 -31
@@ -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 _element = require("../../helpers/dom/element");
7
8
  var _number = require("../../helpers/number");
@@ -14,6 +15,13 @@ var _hideColumn = _interopRequireDefault(require("./contextMenuItem/hideColumn")
14
15
  var _showColumn = _interopRequireDefault(require("./contextMenuItem/showColumn"));
15
16
  var _translations = require("../../translations");
16
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
+ function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
19
+ function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
20
+ function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
21
+ function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
22
+ function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
23
+ function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
24
+ 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; } }
17
25
  _pluginHooks.default.getSingleton().register('beforeHideColumns');
18
26
  _pluginHooks.default.getSingleton().register('afterHideColumns');
19
27
  _pluginHooks.default.getSingleton().register('beforeUnhideColumns');
@@ -129,29 +137,38 @@ const PLUGIN_PRIORITY = 310;
129
137
  * :::
130
138
  */
131
139
  exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
140
+ var _settings = /*#__PURE__*/new WeakMap();
141
+ var _hiddenColumnsMap = /*#__PURE__*/new WeakMap();
132
142
  class HiddenColumns extends _base.BasePlugin {
143
+ constructor() {
144
+ super(...arguments);
145
+ /**
146
+ * Cached plugin settings.
147
+ *
148
+ * @private
149
+ * @type {object}
150
+ */
151
+ _classPrivateFieldInitSpec(this, _settings, {
152
+ writable: true,
153
+ value: {}
154
+ });
155
+ /**
156
+ * Map of hidden columns by the plugin.
157
+ *
158
+ * @private
159
+ * @type {null|HidingMap}
160
+ */
161
+ _classPrivateFieldInitSpec(this, _hiddenColumnsMap, {
162
+ writable: true,
163
+ value: null
164
+ });
165
+ }
133
166
  static get PLUGIN_KEY() {
134
167
  return PLUGIN_KEY;
135
168
  }
136
169
  static get PLUGIN_PRIORITY() {
137
170
  return PLUGIN_PRIORITY;
138
171
  }
139
-
140
- /**
141
- * Cached plugin settings.
142
- *
143
- * @private
144
- * @type {object}
145
- */
146
- #settings = {};
147
- /**
148
- * Map of hidden columns by the plugin.
149
- *
150
- * @private
151
- * @type {null|HidingMap}
152
- */
153
- #hiddenColumnsMap = null;
154
-
155
172
  /**
156
173
  * Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
157
174
  * hook and if it returns `true` then the {@link HiddenColumns#enablePlugin} method is called.
@@ -172,14 +189,14 @@ class HiddenColumns extends _base.BasePlugin {
172
189
  }
173
190
  const pluginSettings = this.hot.getSettings()[PLUGIN_KEY];
174
191
  if ((0, _object.isObject)(pluginSettings)) {
175
- this.#settings = pluginSettings;
192
+ _classPrivateFieldSet(this, _settings, pluginSettings);
176
193
  if ((0, _mixed.isUndefined)(pluginSettings.copyPasteEnabled)) {
177
194
  pluginSettings.copyPasteEnabled = true;
178
195
  }
179
196
  }
180
- this.#hiddenColumnsMap = new _translations.HidingMap();
181
- this.#hiddenColumnsMap.addLocalHook('init', () => this.onMapInit());
182
- this.hot.columnIndexMapper.registerMap(this.pluginName, this.#hiddenColumnsMap);
197
+ _classPrivateFieldSet(this, _hiddenColumnsMap, new _translations.HidingMap());
198
+ _classPrivateFieldGet(this, _hiddenColumnsMap).addLocalHook('init', () => this.onMapInit());
199
+ this.hot.columnIndexMapper.registerMap(this.pluginName, _classPrivateFieldGet(this, _hiddenColumnsMap));
183
200
  this.addHook('afterContextMenuDefaultOptions', function () {
184
201
  return _this.onAfterContextMenuDefaultOptions(...arguments);
185
202
  });
@@ -209,7 +226,7 @@ class HiddenColumns extends _base.BasePlugin {
209
226
  */
210
227
  disablePlugin() {
211
228
  this.hot.columnIndexMapper.unregisterMap(this.pluginName);
212
- this.#settings = {};
229
+ _classPrivateFieldSet(this, _settings, {});
213
230
  super.disablePlugin();
214
231
  this.resetCellsMeta();
215
232
  }
@@ -223,7 +240,7 @@ class HiddenColumns extends _base.BasePlugin {
223
240
  const currentHideConfig = this.getHiddenColumns();
224
241
  const isValidConfig = this.isValidConfig(columns);
225
242
  let destinationHideConfig = currentHideConfig;
226
- const hidingMapValues = this.#hiddenColumnsMap.getValues().slice();
243
+ const hidingMapValues = _classPrivateFieldGet(this, _hiddenColumnsMap).getValues().slice();
227
244
  const isAnyColumnShowed = columns.length > 0;
228
245
  if (isValidConfig && isAnyColumnShowed) {
229
246
  const physicalColumns = columns.map(visualColumn => this.hot.toPhysicalColumn(visualColumn));
@@ -246,7 +263,7 @@ class HiddenColumns extends _base.BasePlugin {
246
263
  return;
247
264
  }
248
265
  if (isValidConfig && isAnyColumnShowed) {
249
- this.#hiddenColumnsMap.setValues(hidingMapValues);
266
+ _classPrivateFieldGet(this, _hiddenColumnsMap).setValues(hidingMapValues);
250
267
  }
251
268
 
252
269
  // @TODO Should call once per render cycle, currently fired separately in different plugins
@@ -285,7 +302,7 @@ class HiddenColumns extends _base.BasePlugin {
285
302
  if (isConfigValid) {
286
303
  this.hot.batchExecution(() => {
287
304
  (0, _array.arrayEach)(columns, visualColumn => {
288
- this.#hiddenColumnsMap.setValueAtIndex(this.hot.toPhysicalColumn(visualColumn), true);
305
+ _classPrivateFieldGet(this, _hiddenColumnsMap).setValueAtIndex(this.hot.toPhysicalColumn(visualColumn), true);
289
306
  });
290
307
  }, true);
291
308
  }
@@ -310,7 +327,7 @@ class HiddenColumns extends _base.BasePlugin {
310
327
  * @returns {number[]}
311
328
  */
312
329
  getHiddenColumns() {
313
- return (0, _array.arrayMap)(this.#hiddenColumnsMap.getHiddenIndexes(), physicalColumnIndex => {
330
+ return (0, _array.arrayMap)(_classPrivateFieldGet(this, _hiddenColumnsMap).getHiddenIndexes(), physicalColumnIndex => {
314
331
  return this.hot.toVisualColumn(physicalColumnIndex);
315
332
  });
316
333
  }
@@ -322,7 +339,7 @@ class HiddenColumns extends _base.BasePlugin {
322
339
  * @returns {boolean}
323
340
  */
324
341
  isHidden(column) {
325
- return this.#hiddenColumnsMap.getValueAtIndex(this.hot.toPhysicalColumn(column)) || false;
342
+ return _classPrivateFieldGet(this, _hiddenColumnsMap).getValueAtIndex(this.hot.toPhysicalColumn(column)) || false;
326
343
  }
327
344
 
328
345
  /**
@@ -366,7 +383,7 @@ class HiddenColumns extends _base.BasePlugin {
366
383
  if (this.isHidden(column)) {
367
384
  return 0;
368
385
  }
369
- if (this.#settings.indicators && (this.isHidden(column + 1) || this.isHidden(column - 1))) {
386
+ if (_classPrivateFieldGet(this, _settings).indicators && (this.isHidden(column + 1) || this.isHidden(column - 1))) {
370
387
  // Add additional space for hidden column indicator.
371
388
  if (typeof width === 'number' && this.hot.hasColHeaders()) {
372
389
  return width + 15;
@@ -383,7 +400,7 @@ class HiddenColumns extends _base.BasePlugin {
383
400
  * @param {object} cellProperties Object containing the cell properties.
384
401
  */
385
402
  onAfterGetCellMeta(row, column, cellProperties) {
386
- if (this.#settings.copyPasteEnabled === false && this.isHidden(column)) {
403
+ if (_classPrivateFieldGet(this, _settings).copyPasteEnabled === false && this.isHidden(column)) {
387
404
  // Cell property handled by the `Autofill` and the `CopyPaste` plugins.
388
405
  cellProperties.skipColumnOnPaste = true;
389
406
  }
@@ -413,7 +430,7 @@ class HiddenColumns extends _base.BasePlugin {
413
430
  */
414
431
  onModifyCopyableRange(ranges) {
415
432
  // Ranges shouldn't be modified when `copyPasteEnabled` option is set to `true` (by default).
416
- if (this.#settings.copyPasteEnabled) {
433
+ if (_classPrivateFieldGet(this, _settings).copyPasteEnabled) {
417
434
  return ranges;
418
435
  }
419
436
  const newRanges = [];
@@ -456,7 +473,7 @@ class HiddenColumns extends _base.BasePlugin {
456
473
  * @param {HTMLElement} TH Header's TH element.
457
474
  */
458
475
  onAfterGetColHeader(column, TH) {
459
- if (!this.#settings.indicators || column < 0) {
476
+ if (!_classPrivateFieldGet(this, _settings).indicators || column < 0) {
460
477
  return;
461
478
  }
462
479
  const classList = [];
@@ -487,8 +504,8 @@ class HiddenColumns extends _base.BasePlugin {
487
504
  * @private
488
505
  */
489
506
  onMapInit() {
490
- if (Array.isArray(this.#settings.columns)) {
491
- this.hideColumns(this.#settings.columns);
507
+ if (Array.isArray(_classPrivateFieldGet(this, _settings).columns)) {
508
+ this.hideColumns(_classPrivateFieldGet(this, _settings).columns);
492
509
  }
493
510
  }
494
511
 
@@ -496,8 +513,8 @@ class HiddenColumns extends _base.BasePlugin {
496
513
  * Destroys the plugin instance.
497
514
  */
498
515
  destroy() {
499
- this.#settings = null;
500
- this.#hiddenColumnsMap = null;
516
+ _classPrivateFieldSet(this, _settings, null);
517
+ _classPrivateFieldSet(this, _hiddenColumnsMap, null);
501
518
  super.destroy();
502
519
  }
503
520
  }
@@ -1,4 +1,12 @@
1
1
  import "core-js/modules/es.array.push.js";
2
+ import "core-js/modules/es.error.cause.js";
3
+ function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
4
+ function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
5
+ function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
6
+ function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
7
+ function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
8
+ function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
9
+ 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; } }
2
10
  import { BasePlugin } from "../base/index.mjs";
3
11
  import { addClass } from "../../helpers/dom/element.mjs";
4
12
  import { rangeEach } from "../../helpers/number.mjs";
@@ -123,29 +131,38 @@ export const PLUGIN_PRIORITY = 310;
123
131
  * ```
124
132
  * :::
125
133
  */
134
+ var _settings = /*#__PURE__*/new WeakMap();
135
+ var _hiddenColumnsMap = /*#__PURE__*/new WeakMap();
126
136
  export class HiddenColumns extends BasePlugin {
137
+ constructor() {
138
+ super(...arguments);
139
+ /**
140
+ * Cached plugin settings.
141
+ *
142
+ * @private
143
+ * @type {object}
144
+ */
145
+ _classPrivateFieldInitSpec(this, _settings, {
146
+ writable: true,
147
+ value: {}
148
+ });
149
+ /**
150
+ * Map of hidden columns by the plugin.
151
+ *
152
+ * @private
153
+ * @type {null|HidingMap}
154
+ */
155
+ _classPrivateFieldInitSpec(this, _hiddenColumnsMap, {
156
+ writable: true,
157
+ value: null
158
+ });
159
+ }
127
160
  static get PLUGIN_KEY() {
128
161
  return PLUGIN_KEY;
129
162
  }
130
163
  static get PLUGIN_PRIORITY() {
131
164
  return PLUGIN_PRIORITY;
132
165
  }
133
-
134
- /**
135
- * Cached plugin settings.
136
- *
137
- * @private
138
- * @type {object}
139
- */
140
- #settings = {};
141
- /**
142
- * Map of hidden columns by the plugin.
143
- *
144
- * @private
145
- * @type {null|HidingMap}
146
- */
147
- #hiddenColumnsMap = null;
148
-
149
166
  /**
150
167
  * Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
151
168
  * hook and if it returns `true` then the {@link HiddenColumns#enablePlugin} method is called.
@@ -166,14 +183,14 @@ export class HiddenColumns extends BasePlugin {
166
183
  }
167
184
  const pluginSettings = this.hot.getSettings()[PLUGIN_KEY];
168
185
  if (isObject(pluginSettings)) {
169
- this.#settings = pluginSettings;
186
+ _classPrivateFieldSet(this, _settings, pluginSettings);
170
187
  if (isUndefined(pluginSettings.copyPasteEnabled)) {
171
188
  pluginSettings.copyPasteEnabled = true;
172
189
  }
173
190
  }
174
- this.#hiddenColumnsMap = new HidingMap();
175
- this.#hiddenColumnsMap.addLocalHook('init', () => this.onMapInit());
176
- this.hot.columnIndexMapper.registerMap(this.pluginName, this.#hiddenColumnsMap);
191
+ _classPrivateFieldSet(this, _hiddenColumnsMap, new HidingMap());
192
+ _classPrivateFieldGet(this, _hiddenColumnsMap).addLocalHook('init', () => this.onMapInit());
193
+ this.hot.columnIndexMapper.registerMap(this.pluginName, _classPrivateFieldGet(this, _hiddenColumnsMap));
177
194
  this.addHook('afterContextMenuDefaultOptions', function () {
178
195
  return _this.onAfterContextMenuDefaultOptions(...arguments);
179
196
  });
@@ -203,7 +220,7 @@ export class HiddenColumns extends BasePlugin {
203
220
  */
204
221
  disablePlugin() {
205
222
  this.hot.columnIndexMapper.unregisterMap(this.pluginName);
206
- this.#settings = {};
223
+ _classPrivateFieldSet(this, _settings, {});
207
224
  super.disablePlugin();
208
225
  this.resetCellsMeta();
209
226
  }
@@ -217,7 +234,7 @@ export class HiddenColumns extends BasePlugin {
217
234
  const currentHideConfig = this.getHiddenColumns();
218
235
  const isValidConfig = this.isValidConfig(columns);
219
236
  let destinationHideConfig = currentHideConfig;
220
- const hidingMapValues = this.#hiddenColumnsMap.getValues().slice();
237
+ const hidingMapValues = _classPrivateFieldGet(this, _hiddenColumnsMap).getValues().slice();
221
238
  const isAnyColumnShowed = columns.length > 0;
222
239
  if (isValidConfig && isAnyColumnShowed) {
223
240
  const physicalColumns = columns.map(visualColumn => this.hot.toPhysicalColumn(visualColumn));
@@ -240,7 +257,7 @@ export class HiddenColumns extends BasePlugin {
240
257
  return;
241
258
  }
242
259
  if (isValidConfig && isAnyColumnShowed) {
243
- this.#hiddenColumnsMap.setValues(hidingMapValues);
260
+ _classPrivateFieldGet(this, _hiddenColumnsMap).setValues(hidingMapValues);
244
261
  }
245
262
 
246
263
  // @TODO Should call once per render cycle, currently fired separately in different plugins
@@ -279,7 +296,7 @@ export class HiddenColumns extends BasePlugin {
279
296
  if (isConfigValid) {
280
297
  this.hot.batchExecution(() => {
281
298
  arrayEach(columns, visualColumn => {
282
- this.#hiddenColumnsMap.setValueAtIndex(this.hot.toPhysicalColumn(visualColumn), true);
299
+ _classPrivateFieldGet(this, _hiddenColumnsMap).setValueAtIndex(this.hot.toPhysicalColumn(visualColumn), true);
283
300
  });
284
301
  }, true);
285
302
  }
@@ -304,7 +321,7 @@ export class HiddenColumns extends BasePlugin {
304
321
  * @returns {number[]}
305
322
  */
306
323
  getHiddenColumns() {
307
- return arrayMap(this.#hiddenColumnsMap.getHiddenIndexes(), physicalColumnIndex => {
324
+ return arrayMap(_classPrivateFieldGet(this, _hiddenColumnsMap).getHiddenIndexes(), physicalColumnIndex => {
308
325
  return this.hot.toVisualColumn(physicalColumnIndex);
309
326
  });
310
327
  }
@@ -316,7 +333,7 @@ export class HiddenColumns extends BasePlugin {
316
333
  * @returns {boolean}
317
334
  */
318
335
  isHidden(column) {
319
- return this.#hiddenColumnsMap.getValueAtIndex(this.hot.toPhysicalColumn(column)) || false;
336
+ return _classPrivateFieldGet(this, _hiddenColumnsMap).getValueAtIndex(this.hot.toPhysicalColumn(column)) || false;
320
337
  }
321
338
 
322
339
  /**
@@ -360,7 +377,7 @@ export class HiddenColumns extends BasePlugin {
360
377
  if (this.isHidden(column)) {
361
378
  return 0;
362
379
  }
363
- if (this.#settings.indicators && (this.isHidden(column + 1) || this.isHidden(column - 1))) {
380
+ if (_classPrivateFieldGet(this, _settings).indicators && (this.isHidden(column + 1) || this.isHidden(column - 1))) {
364
381
  // Add additional space for hidden column indicator.
365
382
  if (typeof width === 'number' && this.hot.hasColHeaders()) {
366
383
  return width + 15;
@@ -377,7 +394,7 @@ export class HiddenColumns extends BasePlugin {
377
394
  * @param {object} cellProperties Object containing the cell properties.
378
395
  */
379
396
  onAfterGetCellMeta(row, column, cellProperties) {
380
- if (this.#settings.copyPasteEnabled === false && this.isHidden(column)) {
397
+ if (_classPrivateFieldGet(this, _settings).copyPasteEnabled === false && this.isHidden(column)) {
381
398
  // Cell property handled by the `Autofill` and the `CopyPaste` plugins.
382
399
  cellProperties.skipColumnOnPaste = true;
383
400
  }
@@ -407,7 +424,7 @@ export class HiddenColumns extends BasePlugin {
407
424
  */
408
425
  onModifyCopyableRange(ranges) {
409
426
  // Ranges shouldn't be modified when `copyPasteEnabled` option is set to `true` (by default).
410
- if (this.#settings.copyPasteEnabled) {
427
+ if (_classPrivateFieldGet(this, _settings).copyPasteEnabled) {
411
428
  return ranges;
412
429
  }
413
430
  const newRanges = [];
@@ -450,7 +467,7 @@ export class HiddenColumns extends BasePlugin {
450
467
  * @param {HTMLElement} TH Header's TH element.
451
468
  */
452
469
  onAfterGetColHeader(column, TH) {
453
- if (!this.#settings.indicators || column < 0) {
470
+ if (!_classPrivateFieldGet(this, _settings).indicators || column < 0) {
454
471
  return;
455
472
  }
456
473
  const classList = [];
@@ -481,8 +498,8 @@ export class HiddenColumns extends BasePlugin {
481
498
  * @private
482
499
  */
483
500
  onMapInit() {
484
- if (Array.isArray(this.#settings.columns)) {
485
- this.hideColumns(this.#settings.columns);
501
+ if (Array.isArray(_classPrivateFieldGet(this, _settings).columns)) {
502
+ this.hideColumns(_classPrivateFieldGet(this, _settings).columns);
486
503
  }
487
504
  }
488
505
 
@@ -490,8 +507,8 @@ export class HiddenColumns extends BasePlugin {
490
507
  * Destroys the plugin instance.
491
508
  */
492
509
  destroy() {
493
- this.#settings = null;
494
- this.#hiddenColumnsMap = null;
510
+ _classPrivateFieldSet(this, _settings, null);
511
+ _classPrivateFieldSet(this, _hiddenColumnsMap, null);
495
512
  super.destroy();
496
513
  }
497
514
  }
@@ -28,9 +28,9 @@ function showRowItem(hiddenRowsPlugin) {
28
28
  let endVisualRow = rows[rows.length - 1];
29
29
 
30
30
  // Add to the selection one more visual row on the top.
31
- startVisualRow = (_this$rowIndexMapper$ = this.rowIndexMapper.getNearestNotHiddenIndex(startVisualRow - 1, -1)) != null ? _this$rowIndexMapper$ : 0;
31
+ startVisualRow = (_this$rowIndexMapper$ = this.rowIndexMapper.getNearestNotHiddenIndex(startVisualRow - 1, -1)) !== null && _this$rowIndexMapper$ !== void 0 ? _this$rowIndexMapper$ : 0;
32
32
  // Add to the selection one more visual row on the bottom.
33
- endVisualRow = (_this$rowIndexMapper$2 = this.rowIndexMapper.getNearestNotHiddenIndex(endVisualRow + 1, 1)) != null ? _this$rowIndexMapper$2 : this.countRows() - 1;
33
+ endVisualRow = (_this$rowIndexMapper$2 = this.rowIndexMapper.getNearestNotHiddenIndex(endVisualRow + 1, 1)) !== null && _this$rowIndexMapper$2 !== void 0 ? _this$rowIndexMapper$2 : this.countRows() - 1;
34
34
  hiddenRowsPlugin.showRows(rows);
35
35
 
36
36
  // We render rows at first. It was needed for getting fixed rows.
@@ -22,9 +22,9 @@ export default function showRowItem(hiddenRowsPlugin) {
22
22
  let endVisualRow = rows[rows.length - 1];
23
23
 
24
24
  // Add to the selection one more visual row on the top.
25
- startVisualRow = (_this$rowIndexMapper$ = this.rowIndexMapper.getNearestNotHiddenIndex(startVisualRow - 1, -1)) != null ? _this$rowIndexMapper$ : 0;
25
+ startVisualRow = (_this$rowIndexMapper$ = this.rowIndexMapper.getNearestNotHiddenIndex(startVisualRow - 1, -1)) !== null && _this$rowIndexMapper$ !== void 0 ? _this$rowIndexMapper$ : 0;
26
26
  // Add to the selection one more visual row on the bottom.
27
- endVisualRow = (_this$rowIndexMapper$2 = this.rowIndexMapper.getNearestNotHiddenIndex(endVisualRow + 1, 1)) != null ? _this$rowIndexMapper$2 : this.countRows() - 1;
27
+ endVisualRow = (_this$rowIndexMapper$2 = this.rowIndexMapper.getNearestNotHiddenIndex(endVisualRow + 1, 1)) !== null && _this$rowIndexMapper$2 !== void 0 ? _this$rowIndexMapper$2 : this.countRows() - 1;
28
28
  hiddenRowsPlugin.showRows(rows);
29
29
 
30
30
  // We render rows at first. It was needed for getting fixed rows.
@@ -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 _element = require("../../helpers/dom/element");
7
8
  var _number = require("../../helpers/number");
@@ -14,6 +15,13 @@ var _hideRow = _interopRequireDefault(require("./contextMenuItem/hideRow"));
14
15
  var _showRow = _interopRequireDefault(require("./contextMenuItem/showRow"));
15
16
  var _translations = require("../../translations");
16
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
+ function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
19
+ function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
20
+ function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
21
+ function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
22
+ function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
23
+ function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
24
+ 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; } }
17
25
  _pluginHooks.default.getSingleton().register('beforeHideRows');
18
26
  _pluginHooks.default.getSingleton().register('afterHideRows');
19
27
  _pluginHooks.default.getSingleton().register('beforeUnhideRows');
@@ -129,29 +137,38 @@ const PLUGIN_PRIORITY = 320;
129
137
  * :::
130
138
  */
131
139
  exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
140
+ var _settings = /*#__PURE__*/new WeakMap();
141
+ var _hiddenRowsMap = /*#__PURE__*/new WeakMap();
132
142
  class HiddenRows extends _base.BasePlugin {
143
+ constructor() {
144
+ super(...arguments);
145
+ /**
146
+ * Cached settings from Handsontable settings.
147
+ *
148
+ * @private
149
+ * @type {object}
150
+ */
151
+ _classPrivateFieldInitSpec(this, _settings, {
152
+ writable: true,
153
+ value: {}
154
+ });
155
+ /**
156
+ * Map of hidden rows by the plugin.
157
+ *
158
+ * @private
159
+ * @type {HidingMap|null}
160
+ */
161
+ _classPrivateFieldInitSpec(this, _hiddenRowsMap, {
162
+ writable: true,
163
+ value: null
164
+ });
165
+ }
133
166
  static get PLUGIN_KEY() {
134
167
  return PLUGIN_KEY;
135
168
  }
136
169
  static get PLUGIN_PRIORITY() {
137
170
  return PLUGIN_PRIORITY;
138
171
  }
139
-
140
- /**
141
- * Cached settings from Handsontable settings.
142
- *
143
- * @private
144
- * @type {object}
145
- */
146
- #settings = {};
147
- /**
148
- * Map of hidden rows by the plugin.
149
- *
150
- * @private
151
- * @type {HidingMap|null}
152
- */
153
- #hiddenRowsMap = null;
154
-
155
172
  /**
156
173
  * Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
157
174
  * hook and if it returns `true` then the {@link HiddenRows#enablePlugin} method is called.
@@ -172,14 +189,14 @@ class HiddenRows extends _base.BasePlugin {
172
189
  }
173
190
  const pluginSettings = this.hot.getSettings()[PLUGIN_KEY];
174
191
  if ((0, _object.isObject)(pluginSettings)) {
175
- this.#settings = pluginSettings;
192
+ _classPrivateFieldSet(this, _settings, pluginSettings);
176
193
  if ((0, _mixed.isUndefined)(pluginSettings.copyPasteEnabled)) {
177
194
  pluginSettings.copyPasteEnabled = true;
178
195
  }
179
196
  }
180
- this.#hiddenRowsMap = new _translations.HidingMap();
181
- this.#hiddenRowsMap.addLocalHook('init', () => this.onMapInit());
182
- this.hot.rowIndexMapper.registerMap(this.pluginName, this.#hiddenRowsMap);
197
+ _classPrivateFieldSet(this, _hiddenRowsMap, new _translations.HidingMap());
198
+ _classPrivateFieldGet(this, _hiddenRowsMap).addLocalHook('init', () => this.onMapInit());
199
+ this.hot.rowIndexMapper.registerMap(this.pluginName, _classPrivateFieldGet(this, _hiddenRowsMap));
183
200
  this.addHook('afterContextMenuDefaultOptions', function () {
184
201
  return _this.onAfterContextMenuDefaultOptions(...arguments);
185
202
  });
@@ -209,7 +226,7 @@ class HiddenRows extends _base.BasePlugin {
209
226
  */
210
227
  disablePlugin() {
211
228
  this.hot.rowIndexMapper.unregisterMap(this.pluginName);
212
- this.#settings = {};
229
+ _classPrivateFieldSet(this, _settings, {});
213
230
  super.disablePlugin();
214
231
  this.resetCellsMeta();
215
232
  }
@@ -223,7 +240,7 @@ class HiddenRows extends _base.BasePlugin {
223
240
  const currentHideConfig = this.getHiddenRows();
224
241
  const isValidConfig = this.isValidConfig(rows);
225
242
  let destinationHideConfig = currentHideConfig;
226
- const hidingMapValues = this.#hiddenRowsMap.getValues().slice();
243
+ const hidingMapValues = _classPrivateFieldGet(this, _hiddenRowsMap).getValues().slice();
227
244
  const isAnyRowShowed = rows.length > 0;
228
245
  if (isValidConfig && isAnyRowShowed) {
229
246
  const physicalRows = rows.map(visualRow => this.hot.toPhysicalRow(visualRow));
@@ -246,7 +263,7 @@ class HiddenRows extends _base.BasePlugin {
246
263
  return;
247
264
  }
248
265
  if (isValidConfig && isAnyRowShowed) {
249
- this.#hiddenRowsMap.setValues(hidingMapValues);
266
+ _classPrivateFieldGet(this, _hiddenRowsMap).setValues(hidingMapValues);
250
267
  }
251
268
  this.hot.runHooks('afterUnhideRows', currentHideConfig, destinationHideConfig, isValidConfig && isAnyRowShowed, isValidConfig && destinationHideConfig.length < currentHideConfig.length);
252
269
  }
@@ -282,7 +299,7 @@ class HiddenRows extends _base.BasePlugin {
282
299
  if (isConfigValid) {
283
300
  this.hot.batchExecution(() => {
284
301
  (0, _array.arrayEach)(rows, visualRow => {
285
- this.#hiddenRowsMap.setValueAtIndex(this.hot.toPhysicalRow(visualRow), true);
302
+ _classPrivateFieldGet(this, _hiddenRowsMap).setValueAtIndex(this.hot.toPhysicalRow(visualRow), true);
286
303
  });
287
304
  }, true);
288
305
  }
@@ -307,7 +324,7 @@ class HiddenRows extends _base.BasePlugin {
307
324
  * @returns {number[]}
308
325
  */
309
326
  getHiddenRows() {
310
- return (0, _array.arrayMap)(this.#hiddenRowsMap.getHiddenIndexes(), physicalRowIndex => {
327
+ return (0, _array.arrayMap)(_classPrivateFieldGet(this, _hiddenRowsMap).getHiddenIndexes(), physicalRowIndex => {
311
328
  return this.hot.toVisualRow(physicalRowIndex);
312
329
  });
313
330
  }
@@ -319,7 +336,7 @@ class HiddenRows extends _base.BasePlugin {
319
336
  * @returns {boolean}
320
337
  */
321
338
  isHidden(row) {
322
- return this.#hiddenRowsMap.getValueAtIndex(this.hot.toPhysicalRow(row)) || false;
339
+ return _classPrivateFieldGet(this, _hiddenRowsMap).getValueAtIndex(this.hot.toPhysicalRow(row)) || false;
323
340
  }
324
341
 
325
342
  /**
@@ -375,7 +392,7 @@ class HiddenRows extends _base.BasePlugin {
375
392
  * @param {object} cellProperties Object containing the cell properties.
376
393
  */
377
394
  onAfterGetCellMeta(row, column, cellProperties) {
378
- if (this.#settings.copyPasteEnabled === false && this.isHidden(row)) {
395
+ if (_classPrivateFieldGet(this, _settings).copyPasteEnabled === false && this.isHidden(row)) {
379
396
  // Cell property handled by the `Autofill` and the `CopyPaste` plugins.
380
397
  cellProperties.skipRowOnPaste = true;
381
398
  }
@@ -405,7 +422,7 @@ class HiddenRows extends _base.BasePlugin {
405
422
  */
406
423
  onModifyCopyableRange(ranges) {
407
424
  // Ranges shouldn't be modified when `copyPasteEnabled` option is set to `true` (by default).
408
- if (this.#settings.copyPasteEnabled) {
425
+ if (_classPrivateFieldGet(this, _settings).copyPasteEnabled) {
409
426
  return ranges;
410
427
  }
411
428
  const newRanges = [];
@@ -448,7 +465,7 @@ class HiddenRows extends _base.BasePlugin {
448
465
  * @param {HTMLElement} TH Header's TH element.
449
466
  */
450
467
  onAfterGetRowHeader(row, TH) {
451
- if (!this.#settings.indicators || row < 0) {
468
+ if (!_classPrivateFieldGet(this, _settings).indicators || row < 0) {
452
469
  return;
453
470
  }
454
471
  const classList = [];
@@ -479,8 +496,8 @@ class HiddenRows extends _base.BasePlugin {
479
496
  * @private
480
497
  */
481
498
  onMapInit() {
482
- if (Array.isArray(this.#settings.rows)) {
483
- this.hideRows(this.#settings.rows);
499
+ if (Array.isArray(_classPrivateFieldGet(this, _settings).rows)) {
500
+ this.hideRows(_classPrivateFieldGet(this, _settings).rows);
484
501
  }
485
502
  }
486
503
 
@@ -488,8 +505,8 @@ class HiddenRows extends _base.BasePlugin {
488
505
  * Destroys the plugin instance.
489
506
  */
490
507
  destroy() {
491
- this.#settings = null;
492
- this.#hiddenRowsMap = null;
508
+ _classPrivateFieldSet(this, _settings, null);
509
+ _classPrivateFieldSet(this, _hiddenRowsMap, null);
493
510
  super.destroy();
494
511
  }
495
512
  }