handsontable 14.2.0 → 14.3.0-next-3fa6b18-20240410

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 (469) hide show
  1. package/3rdparty/walkontable/src/calculator/renderAllColumns.js +1 -1
  2. package/3rdparty/walkontable/src/calculator/renderAllColumns.mjs +1 -1
  3. package/3rdparty/walkontable/src/calculator/renderAllRows.js +1 -1
  4. package/3rdparty/walkontable/src/calculator/renderAllRows.mjs +1 -1
  5. package/3rdparty/walkontable/src/calculator/viewportColumns.js +13 -18
  6. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +13 -18
  7. package/3rdparty/walkontable/src/calculator/viewportRows.js +11 -16
  8. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +11 -16
  9. package/3rdparty/walkontable/src/cell/coords.js +13 -18
  10. package/3rdparty/walkontable/src/cell/coords.mjs +13 -18
  11. package/3rdparty/walkontable/src/cell/range.d.ts +2 -1
  12. package/3rdparty/walkontable/src/cell/range.js +42 -30
  13. package/3rdparty/walkontable/src/cell/range.mjs +42 -30
  14. package/3rdparty/walkontable/src/core/_base.js +2 -2
  15. package/3rdparty/walkontable/src/core/_base.mjs +2 -2
  16. package/3rdparty/walkontable/src/core/clone.js +1 -1
  17. package/3rdparty/walkontable/src/core/clone.mjs +1 -1
  18. package/3rdparty/walkontable/src/event.js +72 -104
  19. package/3rdparty/walkontable/src/event.mjs +72 -104
  20. package/3rdparty/walkontable/src/filter/column.js +1 -1
  21. package/3rdparty/walkontable/src/filter/column.mjs +1 -1
  22. package/3rdparty/walkontable/src/filter/row.js +1 -1
  23. package/3rdparty/walkontable/src/filter/row.mjs +1 -1
  24. package/3rdparty/walkontable/src/index.js +1 -1
  25. package/3rdparty/walkontable/src/overlay/_base.js +1 -1
  26. package/3rdparty/walkontable/src/overlay/_base.mjs +1 -1
  27. package/3rdparty/walkontable/src/overlay/bottom.js +1 -1
  28. package/3rdparty/walkontable/src/overlay/bottom.mjs +1 -1
  29. package/3rdparty/walkontable/src/overlay/inlineStart.js +15 -1
  30. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +16 -2
  31. package/3rdparty/walkontable/src/overlay/top.js +12 -1
  32. package/3rdparty/walkontable/src/overlay/top.mjs +13 -2
  33. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +1 -1
  34. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +1 -1
  35. package/3rdparty/walkontable/src/overlays.js +47 -5
  36. package/3rdparty/walkontable/src/overlays.mjs +47 -5
  37. package/3rdparty/walkontable/src/renderer/_base.js +1 -1
  38. package/3rdparty/walkontable/src/renderer/_base.mjs +1 -1
  39. package/3rdparty/walkontable/src/renderer/cells.js +1 -1
  40. package/3rdparty/walkontable/src/renderer/cells.mjs +1 -1
  41. package/3rdparty/walkontable/src/renderer/rowHeaders.js +1 -1
  42. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +1 -1
  43. package/3rdparty/walkontable/src/renderer/rows.js +1 -1
  44. package/3rdparty/walkontable/src/renderer/rows.mjs +1 -1
  45. package/3rdparty/walkontable/src/renderer/table.js +1 -1
  46. package/3rdparty/walkontable/src/renderer/table.mjs +1 -1
  47. package/3rdparty/walkontable/src/scroll.js +16 -18
  48. package/3rdparty/walkontable/src/scroll.mjs +16 -18
  49. package/3rdparty/walkontable/src/selection/manager.js +48 -69
  50. package/3rdparty/walkontable/src/selection/manager.mjs +48 -69
  51. package/3rdparty/walkontable/src/selection/scanner.js +33 -42
  52. package/3rdparty/walkontable/src/selection/scanner.mjs +33 -42
  53. package/3rdparty/walkontable/src/settings.js +1 -1
  54. package/3rdparty/walkontable/src/settings.mjs +1 -1
  55. package/3rdparty/walkontable/src/table.js +1 -1
  56. package/3rdparty/walkontable/src/table.mjs +1 -1
  57. package/3rdparty/walkontable/src/utils/column.js +1 -1
  58. package/3rdparty/walkontable/src/utils/column.mjs +1 -1
  59. package/3rdparty/walkontable/src/utils/columnStretching.js +28 -45
  60. package/3rdparty/walkontable/src/utils/columnStretching.mjs +28 -45
  61. package/3rdparty/walkontable/src/utils/nodesPool.js +1 -1
  62. package/3rdparty/walkontable/src/utils/nodesPool.mjs +1 -1
  63. package/3rdparty/walkontable/src/utils/orderView/view.js +2 -2
  64. package/3rdparty/walkontable/src/utils/orderView/view.mjs +2 -2
  65. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +1 -1
  66. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +1 -1
  67. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +1 -1
  68. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +1 -1
  69. package/3rdparty/walkontable/src/utils/row.js +1 -1
  70. package/3rdparty/walkontable/src/utils/row.mjs +1 -1
  71. package/CHANGELOG.md +20 -0
  72. package/base.js +2 -2
  73. package/base.mjs +2 -2
  74. package/core/viewportScroll/index.js +4 -1
  75. package/core/viewportScroll/index.mjs +4 -1
  76. package/core/viewportScroll/scrollStrategies/focusScroll.js +15 -0
  77. package/core/viewportScroll/scrollStrategies/focusScroll.mjs +11 -0
  78. package/core.d.ts +4 -3
  79. package/core.js +98 -43
  80. package/core.mjs +98 -43
  81. package/dataMap/dataMap.js +1 -1
  82. package/dataMap/dataMap.mjs +1 -1
  83. package/dataMap/dataSource.js +2 -2
  84. package/dataMap/dataSource.mjs +2 -2
  85. package/dataMap/metaManager/lazyFactoryMap.js +3 -5
  86. package/dataMap/metaManager/lazyFactoryMap.mjs +2 -4
  87. package/dataMap/metaManager/metaLayers/cellMeta.js +2 -2
  88. package/dataMap/metaManager/metaLayers/cellMeta.mjs +2 -2
  89. package/dataMap/metaManager/metaLayers/columnMeta.js +1 -1
  90. package/dataMap/metaManager/metaLayers/columnMeta.mjs +1 -1
  91. package/dataMap/metaManager/metaLayers/globalMeta.js +1 -1
  92. package/dataMap/metaManager/metaLayers/globalMeta.mjs +1 -1
  93. package/dataMap/metaManager/metaLayers/tableMeta.js +1 -1
  94. package/dataMap/metaManager/metaLayers/tableMeta.mjs +1 -1
  95. package/dataMap/metaManager/metaSchema.js +272 -272
  96. package/dataMap/metaManager/metaSchema.mjs +272 -272
  97. package/dataMap/metaManager/mods/dynamicCellMeta.js +1 -1
  98. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +1 -1
  99. package/dataMap/metaManager/mods/extendMetaProperties.js +1 -1
  100. package/dataMap/metaManager/mods/extendMetaProperties.mjs +1 -1
  101. package/dataMap/replaceData.js +1 -1
  102. package/dataMap/replaceData.mjs +1 -1
  103. package/dist/handsontable.css +4 -4
  104. package/dist/handsontable.full.css +4 -4
  105. package/dist/handsontable.full.js +9814 -10020
  106. package/dist/handsontable.full.min.css +3 -3
  107. package/dist/handsontable.full.min.js +292 -292
  108. package/dist/handsontable.js +7484 -7056
  109. package/dist/handsontable.min.css +3 -3
  110. package/dist/handsontable.min.js +25 -25
  111. package/dist/languages/all.min.js +1 -1
  112. package/dist/languages/ar-AR.min.js +1 -1
  113. package/dist/languages/cs-CZ.min.js +1 -1
  114. package/dist/languages/de-CH.min.js +1 -1
  115. package/dist/languages/de-DE.min.js +1 -1
  116. package/dist/languages/en-US.min.js +1 -1
  117. package/dist/languages/es-MX.min.js +1 -1
  118. package/dist/languages/fr-FR.min.js +1 -1
  119. package/dist/languages/hr-HR.min.js +1 -1
  120. package/dist/languages/it-IT.min.js +1 -1
  121. package/dist/languages/ja-JP.min.js +1 -1
  122. package/dist/languages/ko-KR.min.js +1 -1
  123. package/dist/languages/lv-LV.min.js +1 -1
  124. package/dist/languages/nb-NO.min.js +1 -1
  125. package/dist/languages/nl-NL.min.js +1 -1
  126. package/dist/languages/pl-PL.min.js +1 -1
  127. package/dist/languages/pt-BR.min.js +1 -1
  128. package/dist/languages/ru-RU.min.js +1 -1
  129. package/dist/languages/sr-SP.min.js +1 -1
  130. package/dist/languages/zh-CN.min.js +1 -1
  131. package/dist/languages/zh-TW.min.js +1 -1
  132. package/editorManager.js +26 -24
  133. package/editorManager.mjs +26 -24
  134. package/editors/autocompleteEditor/autocompleteEditor.js +7 -11
  135. package/editors/autocompleteEditor/autocompleteEditor.mjs +7 -11
  136. package/editors/baseEditor/baseEditor.js +1 -1
  137. package/editors/baseEditor/baseEditor.mjs +1 -1
  138. package/editors/dateEditor/dateEditor.js +49 -11
  139. package/editors/dateEditor/dateEditor.mjs +49 -11
  140. package/editors/selectEditor/selectEditor.js +20 -19
  141. package/editors/selectEditor/selectEditor.mjs +20 -19
  142. package/editors/textEditor/textEditor.js +1 -1
  143. package/editors/textEditor/textEditor.mjs +1 -1
  144. package/eventManager.js +2 -2
  145. package/eventManager.mjs +2 -2
  146. package/focusManager.js +64 -82
  147. package/focusManager.mjs +64 -82
  148. package/helpers/dom/element.js +23 -1
  149. package/helpers/dom/element.mjs +21 -1
  150. package/helpers/mixed.js +2 -2
  151. package/helpers/mixed.mjs +2 -2
  152. package/helpers/object.js +2 -2
  153. package/helpers/object.mjs +2 -2
  154. package/i18n/languages/ar-AR.d.ts +5 -0
  155. package/i18n/languages/ar-AR.js +1 -1
  156. package/i18n/languages/cs-CZ.d.ts +5 -0
  157. package/i18n/languages/cs-CZ.js +1 -1
  158. package/i18n/languages/de-CH.js +1 -1
  159. package/i18n/languages/de-DE.js +1 -1
  160. package/i18n/languages/en-US.js +1 -1
  161. package/i18n/languages/es-MX.js +1 -1
  162. package/i18n/languages/fr-FR.js +1 -1
  163. package/i18n/languages/hr-HR.d.ts +5 -0
  164. package/i18n/languages/hr-HR.js +1 -1
  165. package/i18n/languages/it-IT.js +1 -1
  166. package/i18n/languages/ja-JP.js +1 -1
  167. package/i18n/languages/ko-KR.js +1 -1
  168. package/i18n/languages/lv-LV.js +1 -1
  169. package/i18n/languages/nb-NO.js +1 -1
  170. package/i18n/languages/nl-NL.js +1 -1
  171. package/i18n/languages/pl-PL.js +1 -1
  172. package/i18n/languages/pt-BR.js +1 -1
  173. package/i18n/languages/ru-RU.js +1 -1
  174. package/i18n/languages/sr-SP.d.ts +5 -0
  175. package/i18n/languages/sr-SP.js +1 -1
  176. package/i18n/languages/zh-CN.js +1 -1
  177. package/i18n/languages/zh-TW.js +1 -1
  178. package/i18n/registry.js +1 -1
  179. package/index.d.ts +10 -0
  180. package/index.js +1 -1
  181. package/package.json +14 -10
  182. package/pluginHooks.d.ts +4 -3
  183. package/pluginHooks.js +143 -82
  184. package/pluginHooks.mjs +143 -82
  185. package/plugins/autoColumnSize/autoColumnSize.js +50 -66
  186. package/plugins/autoColumnSize/autoColumnSize.mjs +50 -66
  187. package/plugins/autoRowSize/autoRowSize.js +29 -35
  188. package/plugins/autoRowSize/autoRowSize.mjs +29 -35
  189. package/plugins/autofill/autofill.js +31 -39
  190. package/plugins/autofill/autofill.mjs +31 -39
  191. package/plugins/base/base.js +13 -18
  192. package/plugins/base/base.mjs +13 -18
  193. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +6 -6
  194. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +6 -6
  195. package/plugins/collapsibleColumns/collapsibleColumns.js +60 -51
  196. package/plugins/collapsibleColumns/collapsibleColumns.mjs +60 -51
  197. package/plugins/columnSorting/columnSorting.js +50 -46
  198. package/plugins/columnSorting/columnSorting.mjs +50 -46
  199. package/plugins/columnSorting/columnStatesManager.js +1 -1
  200. package/plugins/columnSorting/columnStatesManager.mjs +1 -1
  201. package/plugins/columnSummary/columnSummary.js +36 -40
  202. package/plugins/columnSummary/columnSummary.mjs +36 -40
  203. package/plugins/columnSummary/endpoints.js +1 -1
  204. package/plugins/columnSummary/endpoints.mjs +1 -1
  205. package/plugins/comments/commentEditor.js +1 -1
  206. package/plugins/comments/commentEditor.mjs +1 -1
  207. package/plugins/comments/comments.js +117 -159
  208. package/plugins/comments/comments.mjs +117 -159
  209. package/plugins/comments/contextMenuItem/addEditComment.js +1 -1
  210. package/plugins/comments/contextMenuItem/readOnlyComment.js +1 -1
  211. package/plugins/comments/contextMenuItem/removeComment.js +1 -1
  212. package/plugins/comments/displaySwitch.js +1 -1
  213. package/plugins/comments/displaySwitch.mjs +1 -1
  214. package/plugins/contextMenu/commandExecutor.js +1 -1
  215. package/plugins/contextMenu/commandExecutor.mjs +1 -1
  216. package/plugins/contextMenu/contextMenu.js +24 -30
  217. package/plugins/contextMenu/contextMenu.mjs +24 -30
  218. package/plugins/contextMenu/itemsFactory.js +2 -2
  219. package/plugins/contextMenu/itemsFactory.mjs +2 -2
  220. package/plugins/contextMenu/menu/cursor.js +1 -1
  221. package/plugins/contextMenu/menu/cursor.mjs +1 -1
  222. package/plugins/contextMenu/menu/defaultShortcutsList.js +26 -10
  223. package/plugins/contextMenu/menu/defaultShortcutsList.mjs +26 -10
  224. package/plugins/contextMenu/menu/menu.js +14 -22
  225. package/plugins/contextMenu/menu/menu.mjs +14 -22
  226. package/plugins/contextMenu/menu/positioner.js +41 -58
  227. package/plugins/contextMenu/menu/positioner.mjs +41 -58
  228. package/plugins/contextMenu/predefinedItems/alignment.js +1 -1
  229. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -1
  230. package/plugins/contextMenu/predefinedItems/columnLeft.js +1 -1
  231. package/plugins/contextMenu/predefinedItems/columnRight.js +1 -1
  232. package/plugins/contextMenu/predefinedItems/index.js +1 -1
  233. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -1
  234. package/plugins/contextMenu/predefinedItems/redo.js +1 -1
  235. package/plugins/contextMenu/predefinedItems/removeColumn.js +1 -1
  236. package/plugins/contextMenu/predefinedItems/removeRow.js +1 -1
  237. package/plugins/contextMenu/predefinedItems/rowAbove.js +1 -1
  238. package/plugins/contextMenu/predefinedItems/rowBelow.js +1 -1
  239. package/plugins/contextMenu/predefinedItems/undo.js +1 -1
  240. package/plugins/copyPaste/contextMenuItem/cut.js +1 -1
  241. package/plugins/copyPaste/copyPaste.js +120 -161
  242. package/plugins/copyPaste/copyPaste.mjs +120 -161
  243. package/plugins/copyPaste/copyableRanges.js +43 -66
  244. package/plugins/copyPaste/copyableRanges.mjs +43 -66
  245. package/plugins/customBorders/contextMenuItem/bottom.js +1 -1
  246. package/plugins/customBorders/contextMenuItem/left.js +1 -1
  247. package/plugins/customBorders/contextMenuItem/noBorders.js +1 -1
  248. package/plugins/customBorders/contextMenuItem/right.js +1 -1
  249. package/plugins/customBorders/contextMenuItem/top.js +1 -1
  250. package/plugins/customBorders/customBorders.js +14 -16
  251. package/plugins/customBorders/customBorders.mjs +13 -15
  252. package/plugins/dragToScroll/dragToScroll.js +7 -7
  253. package/plugins/dragToScroll/dragToScroll.mjs +7 -7
  254. package/plugins/dropdownMenu/dropdownMenu.js +84 -110
  255. package/plugins/dropdownMenu/dropdownMenu.mjs +84 -110
  256. package/plugins/exportFile/dataProvider.js +2 -2
  257. package/plugins/exportFile/dataProvider.mjs +2 -2
  258. package/plugins/exportFile/exportFile.js +2 -2
  259. package/plugins/exportFile/exportFile.mjs +1 -1
  260. package/plugins/exportFile/types/_base.js +1 -1
  261. package/plugins/exportFile/types/_base.mjs +1 -1
  262. package/plugins/filters/component/_base.js +1 -1
  263. package/plugins/filters/component/_base.mjs +1 -1
  264. package/plugins/filters/component/actionBar.js +11 -11
  265. package/plugins/filters/component/actionBar.mjs +9 -9
  266. package/plugins/filters/component/condition.js +15 -17
  267. package/plugins/filters/component/condition.mjs +14 -16
  268. package/plugins/filters/component/operators.js +7 -7
  269. package/plugins/filters/component/operators.mjs +7 -7
  270. package/plugins/filters/component/value.js +26 -30
  271. package/plugins/filters/component/value.mjs +25 -29
  272. package/plugins/filters/condition/beginsWith.js +1 -1
  273. package/plugins/filters/condition/between.js +1 -1
  274. package/plugins/filters/condition/contains.js +1 -1
  275. package/plugins/filters/condition/date/after.js +1 -1
  276. package/plugins/filters/condition/date/before.js +1 -1
  277. package/plugins/filters/condition/date/today.js +1 -1
  278. package/plugins/filters/condition/date/tomorrow.js +1 -1
  279. package/plugins/filters/condition/date/yesterday.js +1 -1
  280. package/plugins/filters/condition/empty.js +1 -1
  281. package/plugins/filters/condition/endsWith.js +1 -1
  282. package/plugins/filters/condition/equal.js +1 -1
  283. package/plugins/filters/condition/greaterThan.js +1 -1
  284. package/plugins/filters/condition/greaterThanOrEqual.js +1 -1
  285. package/plugins/filters/condition/lessThan.js +1 -1
  286. package/plugins/filters/condition/lessThanOrEqual.js +1 -1
  287. package/plugins/filters/condition/none.js +1 -1
  288. package/plugins/filters/condition/notBetween.js +1 -1
  289. package/plugins/filters/condition/notContains.js +1 -1
  290. package/plugins/filters/condition/notEmpty.js +1 -1
  291. package/plugins/filters/condition/notEqual.js +1 -1
  292. package/plugins/filters/conditionCollection.js +1 -1
  293. package/plugins/filters/conditionCollection.mjs +1 -1
  294. package/plugins/filters/conditionUpdateObserver.js +23 -25
  295. package/plugins/filters/conditionUpdateObserver.mjs +23 -25
  296. package/plugins/filters/dataFilter.js +2 -2
  297. package/plugins/filters/dataFilter.mjs +2 -2
  298. package/plugins/filters/filters.js +84 -98
  299. package/plugins/filters/filters.mjs +83 -97
  300. package/plugins/filters/logicalOperations/conjunction.js +1 -1
  301. package/plugins/filters/logicalOperations/disjunction.js +1 -1
  302. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +1 -1
  303. package/plugins/filters/ui/_base.js +2 -2
  304. package/plugins/filters/ui/_base.mjs +1 -1
  305. package/plugins/filters/ui/input.js +13 -19
  306. package/plugins/filters/ui/input.mjs +13 -19
  307. package/plugins/filters/ui/link.js +8 -13
  308. package/plugins/filters/ui/link.mjs +8 -13
  309. package/plugins/filters/ui/multipleSelect.js +86 -113
  310. package/plugins/filters/ui/multipleSelect.mjs +85 -112
  311. package/plugins/filters/ui/radioInput.js +12 -20
  312. package/plugins/filters/ui/radioInput.mjs +12 -20
  313. package/plugins/filters/ui/select.js +51 -73
  314. package/plugins/filters/ui/select.mjs +49 -71
  315. package/plugins/formulas/formulas.js +270 -328
  316. package/plugins/formulas/formulas.mjs +271 -329
  317. package/plugins/formulas/indexSyncer/axisSyncer.js +38 -61
  318. package/plugins/formulas/indexSyncer/axisSyncer.mjs +38 -61
  319. package/plugins/formulas/indexSyncer/index.js +25 -48
  320. package/plugins/formulas/indexSyncer/index.mjs +25 -48
  321. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +1 -1
  322. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +1 -1
  323. package/plugins/hiddenColumns/hiddenColumns.js +68 -87
  324. package/plugins/hiddenColumns/hiddenColumns.mjs +68 -87
  325. package/plugins/hiddenRows/contextMenuItem/hideRow.js +1 -1
  326. package/plugins/hiddenRows/contextMenuItem/showRow.js +1 -1
  327. package/plugins/hiddenRows/hiddenRows.js +67 -86
  328. package/plugins/hiddenRows/hiddenRows.mjs +67 -86
  329. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
  330. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
  331. package/plugins/manualColumnFreeze/manualColumnFreeze.js +24 -32
  332. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +25 -33
  333. package/plugins/manualColumnMove/manualColumnMove.js +133 -177
  334. package/plugins/manualColumnMove/manualColumnMove.mjs +133 -177
  335. package/plugins/manualColumnMove/ui/_base.js +1 -1
  336. package/plugins/manualColumnMove/ui/_base.mjs +1 -1
  337. package/plugins/manualColumnResize/manualColumnResize.js +169 -230
  338. package/plugins/manualColumnResize/manualColumnResize.mjs +169 -230
  339. package/plugins/manualRowMove/manualRowMove.js +106 -135
  340. package/plugins/manualRowMove/manualRowMove.mjs +106 -135
  341. package/plugins/manualRowMove/ui/_base.js +1 -1
  342. package/plugins/manualRowMove/ui/_base.mjs +1 -1
  343. package/plugins/manualRowResize/manualRowResize.js +150 -209
  344. package/plugins/manualRowResize/manualRowResize.mjs +150 -209
  345. package/plugins/mergeCells/calculations/autofill.js +1 -1
  346. package/plugins/mergeCells/calculations/autofill.mjs +1 -1
  347. package/plugins/mergeCells/calculations/selection.js +3 -72
  348. package/plugins/mergeCells/calculations/selection.mjs +3 -72
  349. package/plugins/mergeCells/cellCoords.js +1 -1
  350. package/plugins/mergeCells/cellCoords.mjs +1 -1
  351. package/plugins/mergeCells/cellsCollection.js +118 -2
  352. package/plugins/mergeCells/cellsCollection.mjs +118 -2
  353. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +12 -2
  354. package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +11 -1
  355. package/plugins/mergeCells/focusOrder.js +305 -0
  356. package/plugins/mergeCells/focusOrder.mjs +300 -0
  357. package/plugins/mergeCells/mergeCells.js +500 -398
  358. package/plugins/mergeCells/mergeCells.mjs +500 -398
  359. package/plugins/multiColumnSorting/multiColumnSorting.js +9 -3
  360. package/plugins/multiColumnSorting/multiColumnSorting.mjs +9 -3
  361. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +2 -2
  362. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +2 -2
  363. package/plugins/nestedHeaders/nestedHeaders.js +206 -254
  364. package/plugins/nestedHeaders/nestedHeaders.mjs +207 -255
  365. package/plugins/nestedHeaders/stateManager/headersTree.js +21 -32
  366. package/plugins/nestedHeaders/stateManager/headersTree.mjs +21 -32
  367. package/plugins/nestedHeaders/stateManager/index.js +30 -41
  368. package/plugins/nestedHeaders/stateManager/index.mjs +30 -41
  369. package/plugins/nestedHeaders/stateManager/sourceSettings.js +19 -30
  370. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +19 -30
  371. package/plugins/nestedHeaders/utils/ghostTable.js +1 -1
  372. package/plugins/nestedHeaders/utils/ghostTable.mjs +1 -1
  373. package/plugins/nestedRows/data/dataManager.js +2 -2
  374. package/plugins/nestedRows/data/dataManager.mjs +2 -2
  375. package/plugins/nestedRows/nestedRows.js +154 -185
  376. package/plugins/nestedRows/nestedRows.mjs +155 -186
  377. package/plugins/nestedRows/ui/_base.js +1 -1
  378. package/plugins/nestedRows/ui/_base.mjs +1 -1
  379. package/plugins/nestedRows/ui/contextMenu.js +13 -17
  380. package/plugins/nestedRows/ui/contextMenu.mjs +11 -15
  381. package/plugins/nestedRows/utils/rowMoveController.js +6 -6
  382. package/plugins/nestedRows/utils/rowMoveController.mjs +6 -6
  383. package/plugins/persistentState/persistentState.js +1 -1
  384. package/plugins/persistentState/persistentState.mjs +1 -1
  385. package/plugins/persistentState/storage.js +3 -3
  386. package/plugins/persistentState/storage.mjs +3 -3
  387. package/plugins/search/search.js +8 -8
  388. package/plugins/search/search.mjs +8 -8
  389. package/plugins/touchScroll/touchScroll.js +16 -20
  390. package/plugins/touchScroll/touchScroll.mjs +17 -21
  391. package/plugins/trimRows/trimRows.js +7 -7
  392. package/plugins/trimRows/trimRows.mjs +7 -7
  393. package/plugins/undoRedo/index.js +1 -1
  394. package/renderers/checkboxRenderer/checkboxRenderer.js +8 -5
  395. package/renderers/checkboxRenderer/checkboxRenderer.mjs +8 -5
  396. package/selection/highlight/highlight.js +16 -18
  397. package/selection/highlight/highlight.mjs +15 -17
  398. package/selection/highlight/visualSelection.js +3 -1
  399. package/selection/highlight/visualSelection.mjs +3 -1
  400. package/selection/range.js +3 -5
  401. package/selection/range.mjs +2 -4
  402. package/selection/selection.js +227 -69
  403. package/selection/selection.mjs +225 -67
  404. package/selection/transformation.js +149 -118
  405. package/selection/transformation.mjs +149 -118
  406. package/shortcutContexts/commands/editor/closeAndSave.js +2 -2
  407. package/shortcutContexts/commands/editor/closeAndSave.mjs +2 -2
  408. package/shortcutContexts/commands/editor/open.js +18 -3
  409. package/shortcutContexts/commands/editor/open.mjs +18 -3
  410. package/shortcutContexts/commands/extendCellsSelection/down.js +1 -1
  411. package/shortcutContexts/commands/extendCellsSelection/down.mjs +1 -1
  412. package/shortcutContexts/commands/extendCellsSelection/left.js +1 -1
  413. package/shortcutContexts/commands/extendCellsSelection/left.mjs +1 -1
  414. package/shortcutContexts/commands/extendCellsSelection/right.js +1 -1
  415. package/shortcutContexts/commands/extendCellsSelection/right.mjs +1 -1
  416. package/shortcutContexts/commands/extendCellsSelection/toColumns.js +1 -1
  417. package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +1 -1
  418. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +3 -1
  419. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +3 -1
  420. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +9 -3
  421. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +9 -3
  422. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +10 -3
  423. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +10 -3
  424. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +3 -1
  425. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +3 -1
  426. package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +3 -1
  427. package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +3 -1
  428. package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +3 -1
  429. package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +3 -1
  430. package/shortcutContexts/commands/extendCellsSelection/toRows.js +1 -1
  431. package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +1 -1
  432. package/shortcutContexts/commands/extendCellsSelection/up.js +1 -1
  433. package/shortcutContexts/commands/extendCellsSelection/up.mjs +1 -1
  434. package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +6 -1
  435. package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +6 -1
  436. package/shortcutContexts/commands/moveCellSelection/inlineStart.js +6 -1
  437. package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +6 -1
  438. package/shortcutContexts/grid.js +9 -3
  439. package/shortcutContexts/grid.mjs +9 -3
  440. package/shortcuts/context.js +3 -2
  441. package/shortcuts/context.mjs +3 -2
  442. package/shortcuts/manager.js +2 -2
  443. package/shortcuts/manager.mjs +2 -2
  444. package/tableView.js +53 -79
  445. package/tableView.mjs +53 -79
  446. package/translations/changesObservable/observable.js +21 -38
  447. package/translations/changesObservable/observable.mjs +21 -38
  448. package/translations/changesObservable/observer.js +7 -12
  449. package/translations/changesObservable/observer.mjs +6 -11
  450. package/translations/indexMapper.js +1 -1
  451. package/translations/indexMapper.mjs +1 -1
  452. package/translations/mapCollections/aggregatedCollection.js +2 -2
  453. package/translations/mapCollections/aggregatedCollection.mjs +2 -2
  454. package/translations/mapCollections/mapCollection.js +1 -1
  455. package/translations/mapCollections/mapCollection.mjs +1 -1
  456. package/translations/maps/indexMap.js +2 -2
  457. package/translations/maps/indexMap.mjs +2 -2
  458. package/translations/maps/linkedPhysicalIndexToValueMap.js +1 -1
  459. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +1 -1
  460. package/utils/dataStructures/linkedList.js +7 -2
  461. package/utils/dataStructures/linkedList.mjs +7 -2
  462. package/utils/dataStructures/tree.js +2 -2
  463. package/utils/dataStructures/tree.mjs +2 -2
  464. package/utils/ghostTable.js +1 -1
  465. package/utils/ghostTable.mjs +1 -1
  466. package/utils/interval.js +27 -45
  467. package/utils/interval.mjs +27 -45
  468. package/utils/samplesGenerator.js +1 -1
  469. package/utils/samplesGenerator.mjs +1 -1
@@ -11,20 +11,18 @@ var _contextMenu = _interopRequireDefault(require("./ui/contextMenu"));
11
11
  var _console = require("../../helpers/console");
12
12
  var _data = require("../../helpers/data");
13
13
  var _translations = require("../../translations");
14
+ var _shortcutContexts = require("../../shortcutContexts");
14
15
  var _rowMoveController = _interopRequireDefault(require("./utils/rowMoveController"));
15
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
17
  function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
17
18
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
18
19
  function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
19
20
  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; }
20
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
21
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
21
22
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
22
- function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
23
- function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
24
- function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
25
- function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
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 _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
23
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
24
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
25
+ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
28
26
  const PLUGIN_KEY = exports.PLUGIN_KEY = 'nestedRows';
29
27
  const PLUGIN_PRIORITY = exports.PLUGIN_PRIORITY = 300;
30
28
  const SHORTCUTS_GROUP = PLUGIN_KEY;
@@ -44,140 +42,25 @@ const WRONG_DATA_TYPE_ERROR = 'The Nested Rows plugin requires an Array of Objec
44
42
  */
45
43
  var _skipRender = /*#__PURE__*/new WeakMap();
46
44
  var _skipCoreAPIModifiers = /*#__PURE__*/new WeakMap();
47
- var _onBeforeRowMove = /*#__PURE__*/new WeakSet();
48
- var _onBeforeOnCellMouseDown = /*#__PURE__*/new WeakSet();
49
- var _onFilterData = /*#__PURE__*/new WeakSet();
50
- var _onAfterContextMenuDefaultOptions = /*#__PURE__*/new WeakSet();
51
- var _onAfterGetRowHeader = /*#__PURE__*/new WeakSet();
52
- var _onModifyRowHeaderWidth = /*#__PURE__*/new WeakSet();
53
- var _onAfterRemoveRow = /*#__PURE__*/new WeakSet();
54
- var _onBeforeRemoveRow = /*#__PURE__*/new WeakSet();
55
- var _onBeforeAddChild = /*#__PURE__*/new WeakSet();
56
- var _onAfterAddChild = /*#__PURE__*/new WeakSet();
57
- var _onBeforeDetachChild = /*#__PURE__*/new WeakSet();
58
- var _onAfterDetachChild = /*#__PURE__*/new WeakSet();
59
- var _onAfterCreateRow = /*#__PURE__*/new WeakSet();
60
- var _onAfterInit = /*#__PURE__*/new WeakSet();
61
- var _onBeforeViewRender = /*#__PURE__*/new WeakSet();
62
- var _onBeforeLoadData = /*#__PURE__*/new WeakSet();
45
+ var _NestedRows_brand = /*#__PURE__*/new WeakSet();
63
46
  class NestedRows extends _base.BasePlugin {
64
47
  constructor() {
65
48
  super(...arguments);
66
- /**
67
- * `beforeLoadData` hook callback.
68
- *
69
- * @param {Array} data The source data.
70
- */
71
- _classPrivateMethodInitSpec(this, _onBeforeLoadData);
72
- /**
73
- * `beforeViewRender` hook callback.
74
- *
75
- * @param {boolean} force Indicates if the render call was triggered by a change of settings or data.
76
- * @param {object} skipRender An object, holder for skipRender functionality.
77
- */
78
- _classPrivateMethodInitSpec(this, _onBeforeViewRender);
79
- /**
80
- * `afterInit` hook callback.
81
- */
82
- _classPrivateMethodInitSpec(this, _onAfterInit);
83
- /**
84
- * `afterCreateRow` hook callback.
85
- */
86
- _classPrivateMethodInitSpec(this, _onAfterCreateRow);
87
- /**
88
- * `afterDetachChild` hook callback.
89
- *
90
- * @param {object} parent Parent element.
91
- * @param {object} element New child element.
92
- * @param {number} finalElementRowIndex The final row index of the detached element.
93
- */
94
- _classPrivateMethodInitSpec(this, _onAfterDetachChild);
95
- /**
96
- * `beforeDetachChild` hook callback.
97
- */
98
- _classPrivateMethodInitSpec(this, _onBeforeDetachChild);
99
- /**
100
- * `afterAddChild` hook callback.
101
- *
102
- * @param {object} parent Parent element.
103
- * @param {object} element New child element.
104
- */
105
- _classPrivateMethodInitSpec(this, _onAfterAddChild);
106
- /**
107
- * `beforeAddChild` hook callback.
108
- */
109
- _classPrivateMethodInitSpec(this, _onBeforeAddChild);
110
- /**
111
- * Callback for the `beforeRemoveRow` change list of removed physical indexes by reference. Removing parent node
112
- * has effect in removing children nodes.
113
- *
114
- * @param {number} index Visual index of starter row.
115
- * @param {number} amount Amount of rows to be removed.
116
- * @param {Array} physicalRows List of physical indexes.
117
- */
118
- _classPrivateMethodInitSpec(this, _onBeforeRemoveRow);
119
- /**
120
- * `onAfterRemoveRow` hook callback.
121
- *
122
- * @param {number} index Removed row.
123
- * @param {number} amount Amount of removed rows.
124
- * @param {Array} logicRows An array of the removed physical rows.
125
- * @param {string} source Source of action.
126
- */
127
- _classPrivateMethodInitSpec(this, _onAfterRemoveRow);
128
- /**
129
- * `modifyRowHeaderWidth` hook callback.
130
- *
131
- * @param {number} rowHeaderWidth The initial row header width(s).
132
- * @returns {number}
133
- */
134
- _classPrivateMethodInitSpec(this, _onModifyRowHeaderWidth);
135
- /**
136
- * `afterGetRowHeader` hook callback.
137
- *
138
- * @param {number} row Row index.
139
- * @param {HTMLElement} TH Row header element.
140
- */
141
- _classPrivateMethodInitSpec(this, _onAfterGetRowHeader);
142
- /**
143
- * `afterContextMenuDefaultOptions` hook callback.
144
- *
145
- * @param {object} defaultOptions The default context menu items order.
146
- * @returns {boolean}
147
- */
148
- _classPrivateMethodInitSpec(this, _onAfterContextMenuDefaultOptions);
149
- /**
150
- * Provide custom source data filtering. It's handled by core method and replaces the native filtering.
151
- *
152
- * @param {number} index The index where the data filtering starts.
153
- * @param {number} amount An amount of rows which filtering applies to.
154
- * @param {number} physicalRows Physical row indexes.
155
- * @returns {Array}
156
- */
157
- _classPrivateMethodInitSpec(this, _onFilterData);
158
- /**
159
- * `beforeOnCellMousedown` hook callback.
160
- *
161
- * @param {MouseEvent} event Mousedown event.
162
- * @param {object} coords Cell coords.
163
- * @param {HTMLElement} TD Clicked cell.
164
- */
165
- _classPrivateMethodInitSpec(this, _onBeforeOnCellMouseDown);
166
49
  /**
167
50
  * `beforeRowMove` hook callback.
168
51
  *
169
52
  * @param {Array} rows Array of visual row indexes to be moved.
170
53
  * @param {number} finalIndex Visual row index, being a start index for the moved rows. Points to where the elements
171
54
  * will be placed after the moving action. To check the visualization of the final index, please take a look at
172
- * [documentation](@/guides/rows/row-summary.md).
55
+ * [documentation](@/guides/rows/row-summary/row-summary.md).
173
56
  * @param {undefined|number} dropIndex Visual row index, being a drop index for the moved rows. Points to where we
174
57
  * are going to drop the moved elements. To check visualization of drop index please take a look at
175
- * [documentation](@/guides/rows/row-summary.md).
58
+ * [documentation](@/guides/rows/row-summary/row-summary.md).
176
59
  * @param {boolean} movePossible Indicates if it's possible to move rows to the desired position.
177
60
  * @fires Hooks#afterRowMove
178
61
  * @returns {boolean}
179
62
  */
180
- _classPrivateMethodInitSpec(this, _onBeforeRowMove);
63
+ _classPrivateMethodInitSpec(this, _NestedRows_brand);
181
64
  /**
182
65
  * Reference to the DataManager instance.
183
66
  *
@@ -204,19 +87,13 @@ class NestedRows extends _base.BasePlugin {
204
87
  *
205
88
  * @type {boolean}
206
89
  */
207
- _classPrivateFieldInitSpec(this, _skipRender, {
208
- writable: true,
209
- value: false
210
- });
90
+ _classPrivateFieldInitSpec(this, _skipRender, false);
211
91
  /**
212
92
  * Allows skipping the internal Core methods call if set as `true`.
213
93
  *
214
94
  * @type {boolean}
215
95
  */
216
- _classPrivateFieldInitSpec(this, _skipCoreAPIModifiers, {
217
- writable: true,
218
- value: false
219
- });
96
+ _classPrivateFieldInitSpec(this, _skipCoreAPIModifiers, false);
220
97
  }
221
98
  static get PLUGIN_KEY() {
222
99
  return PLUGIN_KEY;
@@ -252,13 +129,13 @@ class NestedRows extends _base.BasePlugin {
252
129
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
253
130
  args[_key] = arguments[_key];
254
131
  }
255
- return _classPrivateMethodGet(_this, _onAfterInit, _onAfterInit2).call(_this, ...args);
132
+ return _assertClassBrand(_NestedRows_brand, _this, _onAfterInit).call(_this, ...args);
256
133
  });
257
134
  this.addHook('beforeViewRender', function () {
258
135
  for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
259
136
  args[_key2] = arguments[_key2];
260
137
  }
261
- return _classPrivateMethodGet(_this, _onBeforeViewRender, _onBeforeViewRender2).call(_this, ...args);
138
+ return _assertClassBrand(_NestedRows_brand, _this, _onBeforeViewRender).call(_this, ...args);
262
139
  });
263
140
  this.addHook('modifyRowData', function () {
264
141
  return _this.onModifyRowData(...arguments);
@@ -273,82 +150,82 @@ class NestedRows extends _base.BasePlugin {
273
150
  for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
274
151
  args[_key3] = arguments[_key3];
275
152
  }
276
- return _classPrivateMethodGet(_this, _onFilterData, _onFilterData2).call(_this, ...args);
153
+ return _assertClassBrand(_NestedRows_brand, _this, _onFilterData).call(_this, ...args);
277
154
  });
278
155
  this.addHook('afterContextMenuDefaultOptions', function () {
279
156
  for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
280
157
  args[_key4] = arguments[_key4];
281
158
  }
282
- return _classPrivateMethodGet(_this, _onAfterContextMenuDefaultOptions, _onAfterContextMenuDefaultOptions2).call(_this, ...args);
159
+ return _assertClassBrand(_NestedRows_brand, _this, _onAfterContextMenuDefaultOptions).call(_this, ...args);
283
160
  });
284
161
  this.addHook('afterGetRowHeader', function () {
285
162
  for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
286
163
  args[_key5] = arguments[_key5];
287
164
  }
288
- return _classPrivateMethodGet(_this, _onAfterGetRowHeader, _onAfterGetRowHeader2).call(_this, ...args);
165
+ return _assertClassBrand(_NestedRows_brand, _this, _onAfterGetRowHeader).call(_this, ...args);
289
166
  });
290
167
  this.addHook('beforeOnCellMouseDown', function () {
291
168
  for (var _len6 = arguments.length, args = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {
292
169
  args[_key6] = arguments[_key6];
293
170
  }
294
- return _classPrivateMethodGet(_this, _onBeforeOnCellMouseDown, _onBeforeOnCellMouseDown2).call(_this, ...args);
171
+ return _assertClassBrand(_NestedRows_brand, _this, _onBeforeOnCellMouseDown).call(_this, ...args);
295
172
  });
296
173
  this.addHook('beforeRemoveRow', function () {
297
174
  for (var _len7 = arguments.length, args = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {
298
175
  args[_key7] = arguments[_key7];
299
176
  }
300
- return _classPrivateMethodGet(_this, _onBeforeRemoveRow, _onBeforeRemoveRow2).call(_this, ...args);
177
+ return _assertClassBrand(_NestedRows_brand, _this, _onBeforeRemoveRow).call(_this, ...args);
301
178
  });
302
179
  this.addHook('afterRemoveRow', function () {
303
180
  for (var _len8 = arguments.length, args = new Array(_len8), _key8 = 0; _key8 < _len8; _key8++) {
304
181
  args[_key8] = arguments[_key8];
305
182
  }
306
- return _classPrivateMethodGet(_this, _onAfterRemoveRow, _onAfterRemoveRow2).call(_this, ...args);
183
+ return _assertClassBrand(_NestedRows_brand, _this, _onAfterRemoveRow).call(_this, ...args);
307
184
  });
308
185
  this.addHook('beforeAddChild', function () {
309
186
  for (var _len9 = arguments.length, args = new Array(_len9), _key9 = 0; _key9 < _len9; _key9++) {
310
187
  args[_key9] = arguments[_key9];
311
188
  }
312
- return _classPrivateMethodGet(_this, _onBeforeAddChild, _onBeforeAddChild2).call(_this, ...args);
189
+ return _assertClassBrand(_NestedRows_brand, _this, _onBeforeAddChild).call(_this, ...args);
313
190
  });
314
191
  this.addHook('afterAddChild', function () {
315
192
  for (var _len10 = arguments.length, args = new Array(_len10), _key10 = 0; _key10 < _len10; _key10++) {
316
193
  args[_key10] = arguments[_key10];
317
194
  }
318
- return _classPrivateMethodGet(_this, _onAfterAddChild, _onAfterAddChild2).call(_this, ...args);
195
+ return _assertClassBrand(_NestedRows_brand, _this, _onAfterAddChild).call(_this, ...args);
319
196
  });
320
197
  this.addHook('beforeDetachChild', function () {
321
198
  for (var _len11 = arguments.length, args = new Array(_len11), _key11 = 0; _key11 < _len11; _key11++) {
322
199
  args[_key11] = arguments[_key11];
323
200
  }
324
- return _classPrivateMethodGet(_this, _onBeforeDetachChild, _onBeforeDetachChild2).call(_this, ...args);
201
+ return _assertClassBrand(_NestedRows_brand, _this, _onBeforeDetachChild).call(_this, ...args);
325
202
  });
326
203
  this.addHook('afterDetachChild', function () {
327
204
  for (var _len12 = arguments.length, args = new Array(_len12), _key12 = 0; _key12 < _len12; _key12++) {
328
205
  args[_key12] = arguments[_key12];
329
206
  }
330
- return _classPrivateMethodGet(_this, _onAfterDetachChild, _onAfterDetachChild2).call(_this, ...args);
207
+ return _assertClassBrand(_NestedRows_brand, _this, _onAfterDetachChild).call(_this, ...args);
331
208
  });
332
209
  this.addHook('modifyRowHeaderWidth', function () {
333
210
  for (var _len13 = arguments.length, args = new Array(_len13), _key13 = 0; _key13 < _len13; _key13++) {
334
211
  args[_key13] = arguments[_key13];
335
212
  }
336
- return _classPrivateMethodGet(_this, _onModifyRowHeaderWidth, _onModifyRowHeaderWidth2).call(_this, ...args);
213
+ return _assertClassBrand(_NestedRows_brand, _this, _onModifyRowHeaderWidth).call(_this, ...args);
337
214
  });
338
215
  this.addHook('afterCreateRow', function () {
339
216
  for (var _len14 = arguments.length, args = new Array(_len14), _key14 = 0; _key14 < _len14; _key14++) {
340
217
  args[_key14] = arguments[_key14];
341
218
  }
342
- return _classPrivateMethodGet(_this, _onAfterCreateRow, _onAfterCreateRow2).call(_this, ...args);
219
+ return _assertClassBrand(_NestedRows_brand, _this, _onAfterCreateRow).call(_this, ...args);
343
220
  });
344
221
  this.addHook('beforeRowMove', function () {
345
222
  for (var _len15 = arguments.length, args = new Array(_len15), _key15 = 0; _key15 < _len15; _key15++) {
346
223
  args[_key15] = arguments[_key15];
347
224
  }
348
- return _classPrivateMethodGet(_this, _onBeforeRowMove, _onBeforeRowMove2).call(_this, ...args);
225
+ return _assertClassBrand(_NestedRows_brand, _this, _onBeforeRowMove).call(_this, ...args);
349
226
  });
350
- this.addHook('beforeLoadData', data => _classPrivateMethodGet(this, _onBeforeLoadData, _onBeforeLoadData2).call(this, data));
351
- this.addHook('beforeUpdateData', data => _classPrivateMethodGet(this, _onBeforeLoadData, _onBeforeLoadData2).call(this, data));
227
+ this.addHook('beforeLoadData', data => _assertClassBrand(_NestedRows_brand, this, _onBeforeLoadData).call(this, data));
228
+ this.addHook('beforeUpdateData', data => _assertClassBrand(_NestedRows_brand, this, _onBeforeLoadData).call(this, data));
352
229
  this.registerShortcuts();
353
230
  super.enablePlugin();
354
231
  }
@@ -392,21 +269,24 @@ class NestedRows extends _base.BasePlugin {
392
269
  const {
393
270
  highlight
394
271
  } = this.hot.getSelectedRangeLast();
395
- if (highlight.col === -1 && highlight.row >= 0) {
396
- const row = this.collapsingUI.translateTrimmedRow(highlight.row);
397
- if (this.collapsingUI.areChildrenCollapsed(row)) {
398
- this.collapsingUI.expandChildren(row);
399
- } else {
400
- this.collapsingUI.collapseChildren(row);
401
- }
272
+ const row = this.collapsingUI.translateTrimmedRow(highlight.row);
273
+ if (this.collapsingUI.areChildrenCollapsed(row)) {
274
+ this.collapsingUI.expandChildren(row);
275
+ } else {
276
+ this.collapsingUI.collapseChildren(row);
402
277
  }
278
+
279
+ // prevent default Enter behavior (move to the next row within a selection range)
280
+ return false;
403
281
  },
404
282
  runOnlyIf: () => {
405
- var _this$hot$getSelected;
283
+ var _this$hot$getSelected, _this$hot$getSelected2;
406
284
  const highlight = (_this$hot$getSelected = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected === void 0 ? void 0 : _this$hot$getSelected.highlight;
407
- return highlight && this.hot.selection.isCellVisible(highlight) && highlight.isHeader();
285
+ return highlight && ((_this$hot$getSelected2 = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected2 === void 0 ? void 0 : _this$hot$getSelected2.isSingle()) && this.hot.selection.isCellVisible(highlight) && highlight.col === -1 && highlight.row >= 0;
408
286
  },
409
- group: SHORTCUTS_GROUP
287
+ group: SHORTCUTS_GROUP,
288
+ relativeToGroup: _shortcutContexts.EDITOR_EDIT_GROUP,
289
+ position: 'before'
410
290
  });
411
291
  }
412
292
 
@@ -425,7 +305,7 @@ class NestedRows extends _base.BasePlugin {
425
305
  * @private
426
306
  */
427
307
  disableCoreAPIModifiers() {
428
- _classPrivateFieldSet(this, _skipCoreAPIModifiers, true);
308
+ _classPrivateFieldSet(_skipCoreAPIModifiers, this, true);
429
309
  }
430
310
 
431
311
  /**
@@ -434,8 +314,17 @@ class NestedRows extends _base.BasePlugin {
434
314
  * @private
435
315
  */
436
316
  enableCoreAPIModifiers() {
437
- _classPrivateFieldSet(this, _skipCoreAPIModifiers, false);
317
+ _classPrivateFieldSet(_skipCoreAPIModifiers, this, false);
438
318
  }
319
+
320
+ /**
321
+ * `beforeOnCellMousedown` hook callback.
322
+ *
323
+ * @param {MouseEvent} event Mousedown event.
324
+ * @param {object} coords Cell coords.
325
+ * @param {HTMLElement} TD Clicked cell.
326
+ */
327
+
439
328
  /**
440
329
  * The modifyRowData hook callback.
441
330
  *
@@ -444,7 +333,7 @@ class NestedRows extends _base.BasePlugin {
444
333
  * @returns {boolean}
445
334
  */
446
335
  onModifyRowData(row) {
447
- if (_classPrivateFieldGet(this, _skipCoreAPIModifiers)) {
336
+ if (_classPrivateFieldGet(_skipCoreAPIModifiers, this)) {
448
337
  return;
449
338
  }
450
339
  return this.dataManager.getDataObject(row);
@@ -457,7 +346,7 @@ class NestedRows extends _base.BasePlugin {
457
346
  * @returns {number}
458
347
  */
459
348
  onModifySourceLength() {
460
- if (_classPrivateFieldGet(this, _skipCoreAPIModifiers)) {
349
+ if (_classPrivateFieldGet(_skipCoreAPIModifiers, this)) {
461
350
  return;
462
351
  }
463
352
  return this.dataManager.countAllRows();
@@ -471,12 +360,22 @@ class NestedRows extends _base.BasePlugin {
471
360
  * @returns {boolean}
472
361
  */
473
362
  onBeforeDataSplice(index, amount, element) {
474
- if (_classPrivateFieldGet(this, _skipCoreAPIModifiers) || this.dataManager.isRowHighestLevel(index)) {
363
+ if (_classPrivateFieldGet(_skipCoreAPIModifiers, this) || this.dataManager.isRowHighestLevel(index)) {
475
364
  return true;
476
365
  }
477
366
  this.dataManager.spliceData(index, amount, element);
478
367
  return false;
479
368
  }
369
+
370
+ /**
371
+ * Provide custom source data filtering. It's handled by core method and replaces the native filtering.
372
+ *
373
+ * @param {number} index The index where the data filtering starts.
374
+ * @param {number} amount An amount of rows which filtering applies to.
375
+ * @param {number} physicalRows Physical row indexes.
376
+ * @returns {Array}
377
+ */
378
+
480
379
  /**
481
380
  * Destroys the plugin instance.
482
381
  */
@@ -485,40 +384,74 @@ class NestedRows extends _base.BasePlugin {
485
384
  }
486
385
  }
487
386
  exports.NestedRows = NestedRows;
488
- function _onBeforeRowMove2(rows, finalIndex, dropIndex, movePossible) {
387
+ function _onBeforeRowMove(rows, finalIndex, dropIndex, movePossible) {
489
388
  return this.rowMoveController.onBeforeRowMove(rows, finalIndex, dropIndex, movePossible);
490
389
  }
491
- function _onBeforeOnCellMouseDown2(event, coords, TD) {
390
+ function _onBeforeOnCellMouseDown(event, coords, TD) {
492
391
  this.collapsingUI.toggleState(event, coords, TD);
493
392
  }
494
- function _onFilterData2(index, amount, physicalRows) {
393
+ function _onFilterData(index, amount, physicalRows) {
495
394
  this.collapsingUI.collapsedRowsStash.stash();
496
395
  this.collapsingUI.collapsedRowsStash.trimStash(physicalRows[0], amount);
497
396
  this.collapsingUI.collapsedRowsStash.shiftStash(physicalRows[0], null, -1 * amount);
498
397
  this.dataManager.filterData(index, amount, physicalRows);
499
- _classPrivateFieldSet(this, _skipRender, true);
398
+ _classPrivateFieldSet(_skipRender, this, true);
500
399
  return this.dataManager.getData().slice(); // Data contains reference sometimes.
501
400
  }
502
- function _onAfterContextMenuDefaultOptions2(defaultOptions) {
401
+ /**
402
+ * `afterContextMenuDefaultOptions` hook callback.
403
+ *
404
+ * @param {object} defaultOptions The default context menu items order.
405
+ * @returns {boolean}
406
+ */
407
+ function _onAfterContextMenuDefaultOptions(defaultOptions) {
503
408
  return this.contextMenuUI.appendOptions(defaultOptions);
504
409
  }
505
- function _onAfterGetRowHeader2(row, TH) {
410
+ /**
411
+ * `afterGetRowHeader` hook callback.
412
+ *
413
+ * @param {number} row Row index.
414
+ * @param {HTMLElement} TH Row header element.
415
+ */
416
+ function _onAfterGetRowHeader(row, TH) {
506
417
  this.headersUI.appendLevelIndicators(row, TH);
507
418
  }
508
- function _onModifyRowHeaderWidth2(rowHeaderWidth) {
419
+ /**
420
+ * `modifyRowHeaderWidth` hook callback.
421
+ *
422
+ * @param {number} rowHeaderWidth The initial row header width(s).
423
+ * @returns {number}
424
+ */
425
+ function _onModifyRowHeaderWidth(rowHeaderWidth) {
509
426
  return Math.max(this.headersUI.rowHeaderWidthCache, rowHeaderWidth);
510
427
  }
511
- function _onAfterRemoveRow2(index, amount, logicRows, source) {
428
+ /**
429
+ * `onAfterRemoveRow` hook callback.
430
+ *
431
+ * @param {number} index Removed row.
432
+ * @param {number} amount Amount of removed rows.
433
+ * @param {Array} logicRows An array of the removed physical rows.
434
+ * @param {string} source Source of action.
435
+ */
436
+ function _onAfterRemoveRow(index, amount, logicRows, source) {
512
437
  if (source === this.pluginName) {
513
438
  return;
514
439
  }
515
440
  this.hot._registerTimeout(() => {
516
- _classPrivateFieldSet(this, _skipRender, false);
441
+ _classPrivateFieldSet(_skipRender, this, false);
517
442
  this.headersUI.updateRowHeaderWidth();
518
443
  this.collapsingUI.collapsedRowsStash.applyStash();
519
444
  });
520
445
  }
521
- function _onBeforeRemoveRow2(index, amount, physicalRows) {
446
+ /**
447
+ * Callback for the `beforeRemoveRow` change list of removed physical indexes by reference. Removing parent node
448
+ * has effect in removing children nodes.
449
+ *
450
+ * @param {number} index Visual index of starter row.
451
+ * @param {number} amount Amount of rows to be removed.
452
+ * @param {Array} physicalRows List of physical indexes.
453
+ */
454
+ function _onBeforeRemoveRow(index, amount, physicalRows) {
522
455
  const modifiedPhysicalRows = Array.from(physicalRows.reduce((removedRows, physicalIndex) => {
523
456
  if (this.dataManager.isParent(physicalIndex)) {
524
457
  const children = this.dataManager.getDataObject(physicalIndex).__children;
@@ -540,34 +473,70 @@ function _onBeforeRemoveRow2(index, amount, physicalRows) {
540
473
  physicalRows.length = 0;
541
474
  physicalRows.push(...modifiedPhysicalRows);
542
475
  }
543
- function _onBeforeAddChild2() {
476
+ /**
477
+ * `beforeAddChild` hook callback.
478
+ */
479
+ function _onBeforeAddChild() {
544
480
  this.collapsingUI.collapsedRowsStash.stash();
545
481
  }
546
- function _onAfterAddChild2(parent, element) {
482
+ /**
483
+ * `afterAddChild` hook callback.
484
+ *
485
+ * @param {object} parent Parent element.
486
+ * @param {object} element New child element.
487
+ */
488
+ function _onAfterAddChild(parent, element) {
547
489
  this.collapsingUI.collapsedRowsStash.shiftStash(this.dataManager.getRowIndex(element));
548
490
  this.collapsingUI.collapsedRowsStash.applyStash();
549
491
  this.headersUI.updateRowHeaderWidth();
550
492
  }
551
- function _onBeforeDetachChild2() {
493
+ /**
494
+ * `beforeDetachChild` hook callback.
495
+ */
496
+ function _onBeforeDetachChild() {
552
497
  this.collapsingUI.collapsedRowsStash.stash();
553
498
  }
554
- function _onAfterDetachChild2(parent, element, finalElementRowIndex) {
499
+ /**
500
+ * `afterDetachChild` hook callback.
501
+ *
502
+ * @param {object} parent Parent element.
503
+ * @param {object} element New child element.
504
+ * @param {number} finalElementRowIndex The final row index of the detached element.
505
+ */
506
+ function _onAfterDetachChild(parent, element, finalElementRowIndex) {
555
507
  this.collapsingUI.collapsedRowsStash.shiftStash(finalElementRowIndex, null, -1);
556
508
  this.collapsingUI.collapsedRowsStash.applyStash();
557
509
  this.headersUI.updateRowHeaderWidth();
558
510
  }
559
- function _onAfterCreateRow2() {
511
+ /**
512
+ * `afterCreateRow` hook callback.
513
+ */
514
+ function _onAfterCreateRow() {
560
515
  this.dataManager.rewriteCache();
561
516
  }
562
- function _onAfterInit2() {
517
+ /**
518
+ * `afterInit` hook callback.
519
+ */
520
+ function _onAfterInit() {
563
521
  this.headersUI.updateRowHeaderWidth();
564
522
  }
565
- function _onBeforeViewRender2(force, skipRender) {
566
- if (_classPrivateFieldGet(this, _skipRender)) {
523
+ /**
524
+ * `beforeViewRender` hook callback.
525
+ *
526
+ * @param {boolean} force Indicates if the render call was triggered by a change of settings or data.
527
+ * @param {object} skipRender An object, holder for skipRender functionality.
528
+ */
529
+ function _onBeforeViewRender(force, skipRender) {
530
+ if (_classPrivateFieldGet(_skipRender, this)) {
567
531
  skipRender.skipRender = true;
568
532
  }
569
533
  }
570
- function _onBeforeLoadData2(data) {
534
+ /**
535
+ * `beforeLoadData` hook callback.
536
+ *
537
+ * @param {Array} data The source data.
538
+ */
539
+ function _onBeforeLoadData(data) {
571
540
  if (!(0, _data.isArrayOfObjects)(data)) {
572
541
  (0, _console.error)(WRONG_DATA_TYPE_ERROR);
573
542
  this.hot.getSettings()[PLUGIN_KEY] = false;