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
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- require("core-js/modules/es.array.push.js");
5
4
  require("core-js/modules/es.error.cause.js");
5
+ require("core-js/modules/es.array.push.js");
6
6
  var _base = require("../base");
7
7
  var _pluginHooks = _interopRequireDefault(require("../../pluginHooks"));
8
8
  var _array = require("../../helpers/array");
@@ -15,12 +15,9 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
15
15
  function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
16
16
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
17
17
  function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
18
- function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
19
- 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; } }
20
- function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
21
- function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
22
- function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
23
- function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
18
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
19
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
20
+ 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"); }
24
21
  _pluginHooks.default.getSingleton().register('beforeColumnMove');
25
22
  _pluginHooks.default.getSingleton().register('afterColumnMove');
26
23
  const PLUGIN_KEY = exports.PLUGIN_KEY = 'manualColumnMove';
@@ -46,7 +43,7 @@ const CSS_AFTER_SELECTION = 'after-selection--columns';
46
43
  * - `dragColumn` - drag single column to the new position.
47
44
  * - `dragColumns` - drag many columns (as an array of indexes) to the new position.
48
45
  *
49
- * [Documentation](@/guides/columns/column-moving.md) explain differences between drag and move actions.
46
+ * [Documentation](@/guides/columns/column-moving/column-moving.md) explain differences between drag and move actions.
50
47
  * Please keep in mind that if you want apply visual changes,
51
48
  * you have to call manually the `render` method on the instance of Handsontable.
52
49
  *
@@ -68,45 +65,10 @@ var _hoveredColumn = /*#__PURE__*/new WeakMap();
68
65
  var _rootElementOffset = /*#__PURE__*/new WeakMap();
69
66
  var _hasRowHeaders = /*#__PURE__*/new WeakMap();
70
67
  var _fixedColumnsStart = /*#__PURE__*/new WeakMap();
71
- var _onBeforeOnCellMouseDown = /*#__PURE__*/new WeakSet();
72
- var _onMouseMove = /*#__PURE__*/new WeakSet();
73
- var _onBeforeOnCellMouseOver = /*#__PURE__*/new WeakSet();
74
- var _onMouseUp = /*#__PURE__*/new WeakSet();
75
- var _onAfterScrollVertically = /*#__PURE__*/new WeakSet();
76
- var _onAfterLoadData = /*#__PURE__*/new WeakSet();
68
+ var _ManualColumnMove_brand = /*#__PURE__*/new WeakSet();
77
69
  class ManualColumnMove extends _base.BasePlugin {
78
70
  constructor() {
79
71
  super(...arguments);
80
- /**
81
- * Callback for the `afterLoadData` hook.
82
- *
83
- * @private
84
- */
85
- _classPrivateMethodInitSpec(this, _onAfterLoadData);
86
- /**
87
- * `afterScrollHorizontally` hook callback. Fired the table was scrolled horizontally.
88
- */
89
- _classPrivateMethodInitSpec(this, _onAfterScrollVertically);
90
- /**
91
- * `onMouseUp` hook callback.
92
- */
93
- _classPrivateMethodInitSpec(this, _onMouseUp);
94
- /**
95
- * 'beforeOnCellMouseOver' hook callback. Fired when pointer was over cell.
96
- *
97
- * @param {MouseEvent} event `mouseover` event properties.
98
- * @param {CellCoords} coords Visual cell coordinates where was fired event.
99
- * @param {HTMLElement} TD Cell represented as HTMLElement.
100
- * @param {object} controller An object with properties `row`, `column` and `cell`. Each property contains
101
- * a boolean value that allows or disallows changing the selection for that particular area.
102
- */
103
- _classPrivateMethodInitSpec(this, _onBeforeOnCellMouseOver);
104
- /**
105
- * 'mouseMove' event callback. Fired when pointer move on document.documentElement.
106
- *
107
- * @param {MouseEvent} event `mousemove` event properties.
108
- */
109
- _classPrivateMethodInitSpec(this, _onMouseMove);
110
72
  /**
111
73
  * Change the behavior of selection / dragging.
112
74
  *
@@ -116,88 +78,55 @@ class ManualColumnMove extends _base.BasePlugin {
116
78
  * @param {object} controller An object with properties `row`, `column` and `cell`. Each property contains
117
79
  * a boolean value that allows or disallows changing the selection for that particular area.
118
80
  */
119
- _classPrivateMethodInitSpec(this, _onBeforeOnCellMouseDown);
81
+ _classPrivateMethodInitSpec(this, _ManualColumnMove_brand);
120
82
  /**
121
83
  * Backlight UI object.
122
84
  *
123
85
  * @type {object}
124
86
  */
125
- _classPrivateFieldInitSpec(this, _backlight, {
126
- writable: true,
127
- value: new _backlight2.default(this.hot)
128
- });
87
+ _classPrivateFieldInitSpec(this, _backlight, new _backlight2.default(this.hot));
129
88
  /**
130
89
  * Guideline UI object.
131
90
  *
132
91
  * @type {object}
133
92
  */
134
- _classPrivateFieldInitSpec(this, _guideline, {
135
- writable: true,
136
- value: new _guideline2.default(this.hot)
137
- });
93
+ _classPrivateFieldInitSpec(this, _guideline, new _guideline2.default(this.hot));
138
94
  /**
139
95
  * @type {number[]}
140
96
  */
141
- _classPrivateFieldInitSpec(this, _columnsToMove, {
142
- writable: true,
143
- value: []
144
- });
97
+ _classPrivateFieldInitSpec(this, _columnsToMove, []);
145
98
  /**
146
99
  * @type {number}
147
100
  */
148
- _classPrivateFieldInitSpec(this, _countCols, {
149
- writable: true,
150
- value: 0
151
- });
101
+ _classPrivateFieldInitSpec(this, _countCols, 0);
152
102
  /**
153
103
  * @type {boolean}
154
104
  */
155
- _classPrivateFieldInitSpec(this, _pressed, {
156
- writable: true,
157
- value: false
158
- });
105
+ _classPrivateFieldInitSpec(this, _pressed, false);
159
106
  /**
160
107
  * @type {object}
161
108
  */
162
- _classPrivateFieldInitSpec(this, _target, {
163
- writable: true,
164
- value: {}
165
- });
109
+ _classPrivateFieldInitSpec(this, _target, {});
166
110
  /**
167
111
  * @type {number}
168
112
  */
169
- _classPrivateFieldInitSpec(this, _cachedDropIndex, {
170
- writable: true,
171
- value: void 0
172
- });
113
+ _classPrivateFieldInitSpec(this, _cachedDropIndex, void 0);
173
114
  /**
174
115
  * @type {number}
175
116
  */
176
- _classPrivateFieldInitSpec(this, _hoveredColumn, {
177
- writable: true,
178
- value: void 0
179
- });
117
+ _classPrivateFieldInitSpec(this, _hoveredColumn, void 0);
180
118
  /**
181
119
  * @type {number}
182
120
  */
183
- _classPrivateFieldInitSpec(this, _rootElementOffset, {
184
- writable: true,
185
- value: void 0
186
- });
121
+ _classPrivateFieldInitSpec(this, _rootElementOffset, void 0);
187
122
  /**
188
123
  * @type {boolean}
189
124
  */
190
- _classPrivateFieldInitSpec(this, _hasRowHeaders, {
191
- writable: true,
192
- value: void 0
193
- });
125
+ _classPrivateFieldInitSpec(this, _hasRowHeaders, void 0);
194
126
  /**
195
127
  * @type {number}
196
128
  */
197
- _classPrivateFieldInitSpec(this, _fixedColumnsStart, {
198
- writable: true,
199
- value: void 0
200
- });
129
+ _classPrivateFieldInitSpec(this, _fixedColumnsStart, void 0);
201
130
  }
202
131
  static get PLUGIN_KEY() {
203
132
  return PLUGIN_KEY;
@@ -227,20 +156,20 @@ class ManualColumnMove extends _base.BasePlugin {
227
156
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
228
157
  args[_key] = arguments[_key];
229
158
  }
230
- return _classPrivateMethodGet(_this, _onBeforeOnCellMouseDown, _onBeforeOnCellMouseDown2).call(_this, ...args);
159
+ return _assertClassBrand(_ManualColumnMove_brand, _this, _onBeforeOnCellMouseDown).call(_this, ...args);
231
160
  });
232
161
  this.addHook('beforeOnCellMouseOver', function () {
233
162
  for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
234
163
  args[_key2] = arguments[_key2];
235
164
  }
236
- return _classPrivateMethodGet(_this, _onBeforeOnCellMouseOver, _onBeforeOnCellMouseOver2).call(_this, ...args);
165
+ return _assertClassBrand(_ManualColumnMove_brand, _this, _onBeforeOnCellMouseOver).call(_this, ...args);
237
166
  });
238
- this.addHook('afterScrollVertically', () => _classPrivateMethodGet(this, _onAfterScrollVertically, _onAfterScrollVertically2).call(this));
167
+ this.addHook('afterScrollVertically', () => _assertClassBrand(_ManualColumnMove_brand, this, _onAfterScrollVertically).call(this));
239
168
  this.addHook('afterLoadData', function () {
240
169
  for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
241
170
  args[_key3] = arguments[_key3];
242
171
  }
243
- return _classPrivateMethodGet(_this, _onAfterLoadData, _onAfterLoadData2).call(_this, ...args);
172
+ return _assertClassBrand(_ManualColumnMove_brand, _this, _onAfterLoadData).call(_this, ...args);
244
173
  });
245
174
  this.buildPluginUI();
246
175
  this.registerEvents();
@@ -269,8 +198,8 @@ class ManualColumnMove extends _base.BasePlugin {
269
198
  disablePlugin() {
270
199
  (0, _element.removeClass)(this.hot.rootElement, CSS_PLUGIN);
271
200
  this.unregisterEvents();
272
- _classPrivateFieldGet(this, _backlight).destroy();
273
- _classPrivateFieldGet(this, _guideline).destroy();
201
+ _classPrivateFieldGet(_backlight, this).destroy();
202
+ _classPrivateFieldGet(_guideline, this).destroy();
274
203
  super.disablePlugin();
275
204
  }
276
205
 
@@ -279,7 +208,7 @@ class ManualColumnMove extends _base.BasePlugin {
279
208
  *
280
209
  * @param {number} column Visual column index to be moved.
281
210
  * @param {number} finalIndex Visual column index, being a start index for the moved columns. Points to where the elements will be placed after the moving action.
282
- * To check the visualization of the final index, please take a look at [documentation](@/guides/columns/column-moving.md#drag-and-move-actions-of-manualcolumnmove-plugin).
211
+ * To check the visualization of the final index, please take a look at [documentation](@/guides/columns/column-moving/column-moving.md#drag-and-move-actions-of-manualcolumnmove-plugin).
283
212
  * @fires Hooks#beforeColumnMove
284
213
  * @fires Hooks#afterColumnMove
285
214
  * @returns {boolean}
@@ -293,16 +222,16 @@ class ManualColumnMove extends _base.BasePlugin {
293
222
  *
294
223
  * @param {Array} columns Array of visual column indexes to be moved.
295
224
  * @param {number} finalIndex Visual column index, being a start index for the moved columns. Points to where the elements will be placed after the moving action.
296
- * To check the visualization of the final index, please take a look at [documentation](@/guides/columns/column-moving.md#drag-and-move-actions-of-manualcolumnmove-plugin).
225
+ * To check the visualization of the final index, please take a look at [documentation](@/guides/columns/column-moving/column-moving.md#drag-and-move-actions-of-manualcolumnmove-plugin).
297
226
  * @fires Hooks#beforeColumnMove
298
227
  * @fires Hooks#afterColumnMove
299
228
  * @returns {boolean}
300
229
  */
301
230
  moveColumns(columns, finalIndex) {
302
- const dropIndex = _classPrivateFieldGet(this, _cachedDropIndex);
231
+ const dropIndex = _classPrivateFieldGet(_cachedDropIndex, this);
303
232
  const movePossible = this.isMovePossible(columns, finalIndex);
304
233
  const beforeMoveHook = this.hot.runHooks('beforeColumnMove', columns, finalIndex, dropIndex, movePossible);
305
- _classPrivateFieldSet(this, _cachedDropIndex, undefined);
234
+ _classPrivateFieldSet(_cachedDropIndex, this, undefined);
306
235
  if (beforeMoveHook === false) {
307
236
  return;
308
237
  }
@@ -319,7 +248,7 @@ class ManualColumnMove extends _base.BasePlugin {
319
248
  *
320
249
  * @param {number} column Visual column index to be dragged.
321
250
  * @param {number} dropIndex Visual column index, being a drop index for the moved columns. Points to where we are going to drop the moved elements.
322
- * To check visualization of drop index please take a look at [documentation](@/guides/columns/column-moving.md#drag-and-move-actions-of-manualcolumnmove-plugin).
251
+ * To check visualization of drop index please take a look at [documentation](@/guides/columns/column-moving/column-moving.md#drag-and-move-actions-of-manualcolumnmove-plugin).
323
252
  * @fires Hooks#beforeColumnMove
324
253
  * @fires Hooks#afterColumnMove
325
254
  * @returns {boolean}
@@ -333,14 +262,14 @@ class ManualColumnMove extends _base.BasePlugin {
333
262
  *
334
263
  * @param {Array} columns Array of visual column indexes to be dragged.
335
264
  * @param {number} dropIndex Visual column index, being a drop index for the moved columns. Points to where we are going to drop the moved elements.
336
- * To check visualization of drop index please take a look at [documentation](@/guides/columns/column-moving.md#drag-and-move-actions-of-manualcolumnmove-plugin).
265
+ * To check visualization of drop index please take a look at [documentation](@/guides/columns/column-moving/column-moving.md#drag-and-move-actions-of-manualcolumnmove-plugin).
337
266
  * @fires Hooks#beforeColumnMove
338
267
  * @fires Hooks#afterColumnMove
339
268
  * @returns {boolean}
340
269
  */
341
270
  dragColumns(columns, dropIndex) {
342
271
  const finalIndex = this.countFinalIndex(columns, dropIndex);
343
- _classPrivateFieldSet(this, _cachedDropIndex, dropIndex);
272
+ _classPrivateFieldSet(_cachedDropIndex, this, dropIndex);
344
273
  return this.moveColumns(columns, finalIndex);
345
274
  }
346
275
 
@@ -350,7 +279,7 @@ class ManualColumnMove extends _base.BasePlugin {
350
279
  *
351
280
  * @param {Array} movedColumns Array of visual column indexes to be moved.
352
281
  * @param {number} finalIndex Visual column index, being a start index for the moved columns. Points to where the elements will be placed after the moving action.
353
- * To check the visualization of the final index, please take a look at [documentation](@/guides/columns/column-moving.md#drag-and-move-actions-of-manualcolumnmove-plugin).
282
+ * To check the visualization of the final index, please take a look at [documentation](@/guides/columns/column-moving/column-moving.md#drag-and-move-actions-of-manualcolumnmove-plugin).
354
283
  * @returns {boolean}
355
284
  */
356
285
  isMovePossible(movedColumns, finalIndex) {
@@ -373,7 +302,7 @@ class ManualColumnMove extends _base.BasePlugin {
373
302
  * @private
374
303
  * @param {Array} movedColumns Array of visual column indexes to be moved.
375
304
  * @param {number} finalIndex Visual column index, being a start index for the moved columns. Points to where the elements will be placed after the moving action.
376
- * To check the visualization of the final index, please take a look at [documentation](@/guides/columns/column-moving.md#drag-and-move-actions-of-manualcolumnmove-plugin).
305
+ * To check the visualization of the final index, please take a look at [documentation](@/guides/columns/column-moving/column-moving.md#drag-and-move-actions-of-manualcolumnmove-plugin).
377
306
  * @returns {boolean}
378
307
  */
379
308
  isColumnOrderChanged(movedColumns, finalIndex) {
@@ -496,7 +425,7 @@ class ManualColumnMove extends _base.BasePlugin {
496
425
  */
497
426
  refreshPositions() {
498
427
  const firstVisible = this.hot.view.getFirstFullyVisibleColumn();
499
- if (this.isFixedColumnsStart(_classPrivateFieldGet(this, _hoveredColumn)) && firstVisible > 0) {
428
+ if (this.isFixedColumnsStart(_classPrivateFieldGet(_hoveredColumn, this)) && firstVisible > 0) {
500
429
  this.hot.scrollViewportTo({
501
430
  col: this.hot.columnIndexMapper.getNearestNotHiddenIndex(firstVisible - 1, -1)
502
431
  });
@@ -504,45 +433,45 @@ class ManualColumnMove extends _base.BasePlugin {
504
433
  const wtTable = this.hot.view._wt.wtTable;
505
434
  const scrollableElement = this.hot.view._wt.wtOverlays.scrollableElement;
506
435
  const scrollStart = typeof scrollableElement.scrollX === 'number' ? scrollableElement.scrollX : scrollableElement.scrollLeft;
507
- let tdOffsetStart = this.hot.view.THEAD.offsetLeft + this.getColumnsWidth(0, _classPrivateFieldGet(this, _hoveredColumn) - 1);
436
+ let tdOffsetStart = this.hot.view.THEAD.offsetLeft + this.getColumnsWidth(0, _classPrivateFieldGet(_hoveredColumn, this) - 1);
508
437
  const hiderWidth = wtTable.hider.offsetWidth;
509
438
  const tbodyOffsetLeft = wtTable.TBODY.offsetLeft;
510
- const backlightElemMarginStart = _classPrivateFieldGet(this, _backlight).getOffset().start;
511
- const backlightElemWidth = _classPrivateFieldGet(this, _backlight).getSize().width;
439
+ const backlightElemMarginStart = _classPrivateFieldGet(_backlight, this).getOffset().start;
440
+ const backlightElemWidth = _classPrivateFieldGet(_backlight, this).getSize().width;
512
441
  let rowHeaderWidth = 0;
513
442
  let mouseOffsetStart = 0;
514
443
  if (this.hot.isRtl()) {
515
444
  const rootWindow = this.hot.rootWindow;
516
445
  const containerWidth = (0, _element.outerWidth)(this.hot.rootElement);
517
- const gridMostRightPos = rootWindow.innerWidth - _classPrivateFieldGet(this, _rootElementOffset) - containerWidth;
518
- mouseOffsetStart = rootWindow.innerWidth - _classPrivateFieldGet(this, _target).eventPageX - gridMostRightPos - (scrollableElement.scrollX === undefined ? scrollStart : 0);
446
+ const gridMostRightPos = rootWindow.innerWidth - _classPrivateFieldGet(_rootElementOffset, this) - containerWidth;
447
+ mouseOffsetStart = rootWindow.innerWidth - _classPrivateFieldGet(_target, this).eventPageX - gridMostRightPos - (scrollableElement.scrollX === undefined ? scrollStart : 0);
519
448
  } else {
520
- mouseOffsetStart = _classPrivateFieldGet(this, _target).eventPageX - (_classPrivateFieldGet(this, _rootElementOffset) - (scrollableElement.scrollX === undefined ? scrollStart : 0));
449
+ mouseOffsetStart = _classPrivateFieldGet(_target, this).eventPageX - (_classPrivateFieldGet(_rootElementOffset, this) - (scrollableElement.scrollX === undefined ? scrollStart : 0));
521
450
  }
522
- if (_classPrivateFieldGet(this, _hasRowHeaders)) {
451
+ if (_classPrivateFieldGet(_hasRowHeaders, this)) {
523
452
  rowHeaderWidth = this.hot.view._wt.wtOverlays.inlineStartOverlay.clone.wtTable.getColumnHeader(-1).offsetWidth;
524
453
  }
525
- if (this.isFixedColumnsStart(_classPrivateFieldGet(this, _hoveredColumn))) {
454
+ if (this.isFixedColumnsStart(_classPrivateFieldGet(_hoveredColumn, this))) {
526
455
  tdOffsetStart += scrollStart;
527
456
  }
528
457
  tdOffsetStart += rowHeaderWidth;
529
- if (_classPrivateFieldGet(this, _hoveredColumn) < 0) {
458
+ if (_classPrivateFieldGet(_hoveredColumn, this) < 0) {
530
459
  // if hover on rowHeader
531
- if (_classPrivateFieldGet(this, _fixedColumnsStart) > 0) {
532
- _classPrivateFieldGet(this, _target).col = 0;
460
+ if (_classPrivateFieldGet(_fixedColumnsStart, this) > 0) {
461
+ _classPrivateFieldGet(_target, this).col = 0;
533
462
  } else {
534
- _classPrivateFieldGet(this, _target).col = firstVisible > 0 ? firstVisible - 1 : firstVisible;
463
+ _classPrivateFieldGet(_target, this).col = firstVisible > 0 ? firstVisible - 1 : firstVisible;
535
464
  }
536
- } else if (_classPrivateFieldGet(this, _target).TD.offsetWidth / 2 + tdOffsetStart <= mouseOffsetStart) {
537
- const newCoordsCol = _classPrivateFieldGet(this, _hoveredColumn) >= _classPrivateFieldGet(this, _countCols) ? _classPrivateFieldGet(this, _countCols) - 1 : _classPrivateFieldGet(this, _hoveredColumn);
465
+ } else if (_classPrivateFieldGet(_target, this).TD.offsetWidth / 2 + tdOffsetStart <= mouseOffsetStart) {
466
+ const newCoordsCol = _classPrivateFieldGet(_hoveredColumn, this) >= _classPrivateFieldGet(_countCols, this) ? _classPrivateFieldGet(_countCols, this) - 1 : _classPrivateFieldGet(_hoveredColumn, this);
538
467
 
539
468
  // if hover on right part of TD
540
- _classPrivateFieldGet(this, _target).col = newCoordsCol + 1;
469
+ _classPrivateFieldGet(_target, this).col = newCoordsCol + 1;
541
470
  // unfortunately first column is bigger than rest
542
- tdOffsetStart += _classPrivateFieldGet(this, _target).TD.offsetWidth;
471
+ tdOffsetStart += _classPrivateFieldGet(_target, this).TD.offsetWidth;
543
472
  } else {
544
473
  // elsewhere on table
545
- _classPrivateFieldGet(this, _target).col = _classPrivateFieldGet(this, _hoveredColumn);
474
+ _classPrivateFieldGet(_target, this).col = _classPrivateFieldGet(_hoveredColumn, this);
546
475
  }
547
476
  let backlightStart = mouseOffsetStart;
548
477
  let guidelineStart = tdOffsetStart;
@@ -559,11 +488,11 @@ class ManualColumnMove extends _base.BasePlugin {
559
488
  } else if (guidelineStart === 0) {
560
489
  // guideline has got `margin-left: -1px` as default
561
490
  guidelineStart = 1;
562
- } else if (scrollableElement.scrollX !== undefined && _classPrivateFieldGet(this, _hoveredColumn) < _classPrivateFieldGet(this, _fixedColumnsStart)) {
563
- guidelineStart -= _classPrivateFieldGet(this, _rootElementOffset) <= scrollableElement.scrollX ? _classPrivateFieldGet(this, _rootElementOffset) : 0;
491
+ } else if (scrollableElement.scrollX !== undefined && _classPrivateFieldGet(_hoveredColumn, this) < _classPrivateFieldGet(_fixedColumnsStart, this)) {
492
+ guidelineStart -= _classPrivateFieldGet(_rootElementOffset, this) <= scrollableElement.scrollX ? _classPrivateFieldGet(_rootElementOffset, this) : 0;
564
493
  }
565
- _classPrivateFieldGet(this, _backlight).setPosition(null, backlightStart);
566
- _classPrivateFieldGet(this, _guideline).setPosition(null, guidelineStart);
494
+ _classPrivateFieldGet(_backlight, this).setPosition(null, backlightStart);
495
+ _classPrivateFieldGet(_guideline, this).setPosition(null, guidelineStart);
567
496
  }
568
497
 
569
498
  /**
@@ -575,8 +504,8 @@ class ManualColumnMove extends _base.BasePlugin {
575
504
  const {
576
505
  documentElement
577
506
  } = this.hot.rootDocument;
578
- this.eventManager.addEventListener(documentElement, 'mousemove', event => _classPrivateMethodGet(this, _onMouseMove, _onMouseMove2).call(this, event));
579
- this.eventManager.addEventListener(documentElement, 'mouseup', () => _classPrivateMethodGet(this, _onMouseUp, _onMouseUp2).call(this));
507
+ this.eventManager.addEventListener(documentElement, 'mousemove', event => _assertClassBrand(_ManualColumnMove_brand, this, _onMouseMove).call(this, event));
508
+ this.eventManager.addEventListener(documentElement, 'mouseup', () => _assertClassBrand(_ManualColumnMove_brand, this, _onMouseUp).call(this));
580
509
  }
581
510
 
582
511
  /**
@@ -593,36 +522,43 @@ class ManualColumnMove extends _base.BasePlugin {
593
522
  * @private
594
523
  */
595
524
  buildPluginUI() {
596
- _classPrivateFieldGet(this, _backlight).build();
597
- _classPrivateFieldGet(this, _guideline).build();
525
+ _classPrivateFieldGet(_backlight, this).build();
526
+ _classPrivateFieldGet(_guideline, this).build();
598
527
  }
528
+
529
+ /**
530
+ * Callback for the `afterLoadData` hook.
531
+ *
532
+ * @private
533
+ */
534
+
599
535
  /**
600
536
  * Destroys the plugin instance.
601
537
  */
602
538
  destroy() {
603
- _classPrivateFieldGet(this, _backlight).destroy();
604
- _classPrivateFieldGet(this, _guideline).destroy();
539
+ _classPrivateFieldGet(_backlight, this).destroy();
540
+ _classPrivateFieldGet(_guideline, this).destroy();
605
541
  super.destroy();
606
542
  }
607
543
  }
608
544
  exports.ManualColumnMove = ManualColumnMove;
609
- function _onBeforeOnCellMouseDown2(event, coords, TD, controller) {
545
+ function _onBeforeOnCellMouseDown(event, coords, TD, controller) {
610
546
  const wtTable = this.hot.view._wt.wtTable;
611
547
  const isHeaderSelection = this.hot.selection.isSelectedByColumnHeader();
612
548
  const selection = this.hot.getSelectedRangeLast();
613
549
  // This block action shouldn't be handled below.
614
550
  const isSortingElement = (0, _element.hasClass)(event.target, 'sortAction');
615
- if (!selection || !isHeaderSelection || _classPrivateFieldGet(this, _pressed) || event.button !== 0 || isSortingElement) {
616
- _classPrivateFieldSet(this, _pressed, false);
617
- _classPrivateFieldGet(this, _columnsToMove).length = 0;
551
+ if (!selection || !isHeaderSelection || _classPrivateFieldGet(_pressed, this) || event.button !== 0 || isSortingElement) {
552
+ _classPrivateFieldSet(_pressed, this, false);
553
+ _classPrivateFieldGet(_columnsToMove, this).length = 0;
618
554
  (0, _element.removeClass)(this.hot.rootElement, [CSS_ON_MOVING, CSS_SHOW_UI]);
619
555
  return;
620
556
  }
621
- const guidelineIsNotReady = _classPrivateFieldGet(this, _guideline).isBuilt() && !_classPrivateFieldGet(this, _guideline).isAppended();
622
- const backlightIsNotReady = _classPrivateFieldGet(this, _backlight).isBuilt() && !_classPrivateFieldGet(this, _backlight).isAppended();
557
+ const guidelineIsNotReady = _classPrivateFieldGet(_guideline, this).isBuilt() && !_classPrivateFieldGet(_guideline, this).isAppended();
558
+ const backlightIsNotReady = _classPrivateFieldGet(_backlight, this).isBuilt() && !_classPrivateFieldGet(_backlight, this).isAppended();
623
559
  if (guidelineIsNotReady && backlightIsNotReady) {
624
- _classPrivateFieldGet(this, _guideline).appendTo(wtTable.hider);
625
- _classPrivateFieldGet(this, _backlight).appendTo(wtTable.hider);
560
+ _classPrivateFieldGet(_guideline, this).appendTo(wtTable.hider);
561
+ _classPrivateFieldGet(_backlight, this).appendTo(wtTable.hider);
626
562
  }
627
563
  const {
628
564
  from,
@@ -632,47 +568,61 @@ function _onBeforeOnCellMouseDown2(event, coords, TD, controller) {
632
568
  const end = Math.max(from.col, to.col);
633
569
  if (coords.row < 0 && coords.col >= start && coords.col <= end) {
634
570
  controller.column = true;
635
- _classPrivateFieldSet(this, _pressed, true);
571
+ _classPrivateFieldSet(_pressed, this, true);
636
572
  const eventOffsetX = TD.firstChild ? (0, _event.offsetRelativeTo)(event, TD.firstChild).x : event.offsetX;
637
- _classPrivateFieldGet(this, _target).eventPageX = event.pageX;
638
- _classPrivateFieldSet(this, _hoveredColumn, coords.col);
639
- _classPrivateFieldGet(this, _target).TD = TD;
640
- _classPrivateFieldGet(this, _target).col = coords.col;
641
- _classPrivateFieldSet(this, _columnsToMove, this.prepareColumnsToMoving(start, end));
642
- _classPrivateFieldSet(this, _hasRowHeaders, !!this.hot.getSettings().rowHeaders);
643
- _classPrivateFieldSet(this, _countCols, this.hot.countCols());
644
- _classPrivateFieldSet(this, _fixedColumnsStart, this.hot.getSettings().fixedColumnsStart);
645
- _classPrivateFieldSet(this, _rootElementOffset, (0, _element.offset)(this.hot.rootElement).left);
646
- const countColumnsFrom = _classPrivateFieldGet(this, _hasRowHeaders) ? -1 : 0;
573
+ _classPrivateFieldGet(_target, this).eventPageX = event.pageX;
574
+ _classPrivateFieldSet(_hoveredColumn, this, coords.col);
575
+ _classPrivateFieldGet(_target, this).TD = TD;
576
+ _classPrivateFieldGet(_target, this).col = coords.col;
577
+ _classPrivateFieldSet(_columnsToMove, this, this.prepareColumnsToMoving(start, end));
578
+ _classPrivateFieldSet(_hasRowHeaders, this, !!this.hot.getSettings().rowHeaders);
579
+ _classPrivateFieldSet(_countCols, this, this.hot.countCols());
580
+ _classPrivateFieldSet(_fixedColumnsStart, this, this.hot.getSettings().fixedColumnsStart);
581
+ _classPrivateFieldSet(_rootElementOffset, this, (0, _element.offset)(this.hot.rootElement).left);
582
+ const countColumnsFrom = _classPrivateFieldGet(_hasRowHeaders, this) ? -1 : 0;
647
583
  const topPos = wtTable.holder.scrollTop + wtTable.getColumnHeaderHeight(0) + 1;
648
- const fixedColumnsStart = coords.col < _classPrivateFieldGet(this, _fixedColumnsStart);
584
+ const fixedColumnsStart = coords.col < _classPrivateFieldGet(_fixedColumnsStart, this);
649
585
  const horizontalScrollPosition = this.hot.view._wt.wtOverlays.inlineStartOverlay.getOverlayOffset();
650
586
  const offsetX = Math.abs(eventOffsetX - (this.hot.isRtl() ? TD.offsetWidth : 0));
651
587
  const inlineOffset = this.getColumnsWidth(start, coords.col - 1) + offsetX;
652
588
  const inlinePos = this.getColumnsWidth(countColumnsFrom, start - 1) + (fixedColumnsStart ? horizontalScrollPosition : 0) + inlineOffset;
653
- _classPrivateFieldGet(this, _backlight).setPosition(topPos, inlinePos);
654
- _classPrivateFieldGet(this, _backlight).setSize(this.getColumnsWidth(start, end), wtTable.hider.offsetHeight - topPos);
655
- _classPrivateFieldGet(this, _backlight).setOffset(null, -inlineOffset);
589
+ _classPrivateFieldGet(_backlight, this).setPosition(topPos, inlinePos);
590
+ _classPrivateFieldGet(_backlight, this).setSize(this.getColumnsWidth(start, end), wtTable.hider.offsetHeight - topPos);
591
+ _classPrivateFieldGet(_backlight, this).setOffset(null, -inlineOffset);
656
592
  (0, _element.addClass)(this.hot.rootElement, CSS_ON_MOVING);
657
593
  } else {
658
594
  (0, _element.removeClass)(this.hot.rootElement, CSS_AFTER_SELECTION);
659
- _classPrivateFieldSet(this, _pressed, false);
660
- _classPrivateFieldGet(this, _columnsToMove).length = 0;
595
+ _classPrivateFieldSet(_pressed, this, false);
596
+ _classPrivateFieldGet(_columnsToMove, this).length = 0;
661
597
  }
662
598
  }
663
- function _onMouseMove2(event) {
664
- if (!_classPrivateFieldGet(this, _pressed)) {
599
+ /**
600
+ * 'mouseMove' event callback. Fired when pointer move on document.documentElement.
601
+ *
602
+ * @param {MouseEvent} event `mousemove` event properties.
603
+ */
604
+ function _onMouseMove(event) {
605
+ if (!_classPrivateFieldGet(_pressed, this)) {
665
606
  return;
666
607
  }
667
- _classPrivateFieldGet(this, _target).eventPageX = event.pageX;
608
+ _classPrivateFieldGet(_target, this).eventPageX = event.pageX;
668
609
  this.refreshPositions();
669
610
  }
670
- function _onBeforeOnCellMouseOver2(event, coords, TD, controller) {
611
+ /**
612
+ * 'beforeOnCellMouseOver' hook callback. Fired when pointer was over cell.
613
+ *
614
+ * @param {MouseEvent} event `mouseover` event properties.
615
+ * @param {CellCoords} coords Visual cell coordinates where was fired event.
616
+ * @param {HTMLElement} TD Cell represented as HTMLElement.
617
+ * @param {object} controller An object with properties `row`, `column` and `cell`. Each property contains
618
+ * a boolean value that allows or disallows changing the selection for that particular area.
619
+ */
620
+ function _onBeforeOnCellMouseOver(event, coords, TD, controller) {
671
621
  const selectedRange = this.hot.getSelectedRangeLast();
672
- if (!selectedRange || !_classPrivateFieldGet(this, _pressed)) {
622
+ if (!selectedRange || !_classPrivateFieldGet(_pressed, this)) {
673
623
  return;
674
624
  }
675
- if (_classPrivateFieldGet(this, _columnsToMove).indexOf(coords.col) > -1) {
625
+ if (_classPrivateFieldGet(_columnsToMove, this).indexOf(coords.col) > -1) {
676
626
  (0, _element.removeClass)(this.hot.rootElement, CSS_SHOW_UI);
677
627
  } else {
678
628
  (0, _element.addClass)(this.hot.rootElement, CSS_SHOW_UI);
@@ -680,14 +630,17 @@ function _onBeforeOnCellMouseOver2(event, coords, TD, controller) {
680
630
  controller.row = true;
681
631
  controller.column = true;
682
632
  controller.cell = true;
683
- _classPrivateFieldSet(this, _hoveredColumn, coords.col);
684
- _classPrivateFieldGet(this, _target).TD = TD;
633
+ _classPrivateFieldSet(_hoveredColumn, this, coords.col);
634
+ _classPrivateFieldGet(_target, this).TD = TD;
685
635
  }
686
- function _onMouseUp2() {
687
- const target = _classPrivateFieldGet(this, _target).col;
688
- const columnsLen = _classPrivateFieldGet(this, _columnsToMove).length;
689
- _classPrivateFieldSet(this, _hoveredColumn, undefined);
690
- _classPrivateFieldSet(this, _pressed, false);
636
+ /**
637
+ * `onMouseUp` hook callback.
638
+ */
639
+ function _onMouseUp() {
640
+ const target = _classPrivateFieldGet(_target, this).col;
641
+ const columnsLen = _classPrivateFieldGet(_columnsToMove, this).length;
642
+ _classPrivateFieldSet(_hoveredColumn, this, undefined);
643
+ _classPrivateFieldSet(_pressed, this, false);
691
644
  (0, _element.removeClass)(this.hot.rootElement, [CSS_ON_MOVING, CSS_SHOW_UI, CSS_AFTER_SELECTION]);
692
645
  if (this.hot.selection.isSelectedByColumnHeader()) {
693
646
  (0, _element.addClass)(this.hot.rootElement, CSS_AFTER_SELECTION);
@@ -695,10 +648,10 @@ function _onMouseUp2() {
695
648
  if (columnsLen < 1 || target === undefined) {
696
649
  return;
697
650
  }
698
- const firstMovedVisualColumn = _classPrivateFieldGet(this, _columnsToMove)[0];
651
+ const firstMovedVisualColumn = _classPrivateFieldGet(_columnsToMove, this)[0];
699
652
  const firstMovedPhysicalColumn = this.hot.toPhysicalColumn(firstMovedVisualColumn);
700
- const movePerformed = this.dragColumns(_classPrivateFieldGet(this, _columnsToMove), target);
701
- _classPrivateFieldGet(this, _columnsToMove).length = 0;
653
+ const movePerformed = this.dragColumns(_classPrivateFieldGet(_columnsToMove, this), target);
654
+ _classPrivateFieldGet(_columnsToMove, this).length = 0;
702
655
  if (movePerformed === true) {
703
656
  this.persistentStateSave();
704
657
  this.hot.render();
@@ -708,14 +661,17 @@ function _onMouseUp2() {
708
661
  this.hot.selectColumns(selectionStart, selectionEnd);
709
662
  }
710
663
  }
711
- function _onAfterScrollVertically2() {
664
+ /**
665
+ * `afterScrollHorizontally` hook callback. Fired the table was scrolled horizontally.
666
+ */
667
+ function _onAfterScrollVertically() {
712
668
  const wtTable = this.hot.view._wt.wtTable;
713
669
  const headerHeight = wtTable.getColumnHeaderHeight(0) + 1;
714
670
  const scrollTop = wtTable.holder.scrollTop;
715
671
  const posTop = headerHeight + scrollTop;
716
- _classPrivateFieldGet(this, _backlight).setPosition(posTop);
717
- _classPrivateFieldGet(this, _backlight).setSize(null, wtTable.hider.offsetHeight - posTop);
672
+ _classPrivateFieldGet(_backlight, this).setPosition(posTop);
673
+ _classPrivateFieldGet(_backlight, this).setSize(null, wtTable.hider.offsetHeight - posTop);
718
674
  }
719
- function _onAfterLoadData2() {
675
+ function _onAfterLoadData() {
720
676
  this.moveBySettingsOrLoad();
721
677
  }