handsontable 12.1.3 → 12.2.0

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 (914) hide show
  1. package/3rdparty/SheetClip/SheetClip.js +3 -32
  2. package/3rdparty/SheetClip/SheetClip.mjs +3 -23
  3. package/3rdparty/SheetClip/index.js +0 -2
  4. package/3rdparty/autoResize/autoResize.js +119 -145
  5. package/3rdparty/autoResize/autoResize.mjs +119 -143
  6. package/3rdparty/autoResize/index.js +0 -2
  7. package/3rdparty/walkontable/src/border.js +34 -151
  8. package/3rdparty/walkontable/src/border.mjs +36 -138
  9. package/3rdparty/walkontable/src/calculator/constants.js +0 -3
  10. package/3rdparty/walkontable/src/calculator/constants.mjs +0 -2
  11. package/3rdparty/walkontable/src/calculator/index.js +0 -10
  12. package/3rdparty/walkontable/src/calculator/viewportColumns.js +26 -76
  13. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +26 -69
  14. package/3rdparty/walkontable/src/calculator/viewportRows.js +20 -48
  15. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +20 -41
  16. package/3rdparty/walkontable/src/cell/coords.js +13 -43
  17. package/3rdparty/walkontable/src/cell/coords.mjs +13 -38
  18. package/3rdparty/walkontable/src/cell/range.js +55 -130
  19. package/3rdparty/walkontable/src/cell/range.mjs +60 -126
  20. package/3rdparty/walkontable/src/core/_base.js +16 -74
  21. package/3rdparty/walkontable/src/core/_base.mjs +19 -70
  22. package/3rdparty/walkontable/src/core/clone.js +1 -40
  23. package/3rdparty/walkontable/src/core/clone.mjs +3 -30
  24. package/3rdparty/walkontable/src/core/core.js +3 -57
  25. package/3rdparty/walkontable/src/core/core.mjs +5 -41
  26. package/3rdparty/walkontable/src/event.js +31 -78
  27. package/3rdparty/walkontable/src/event.mjs +31 -65
  28. package/3rdparty/walkontable/src/facade/core.js +1 -17
  29. package/3rdparty/walkontable/src/facade/core.mjs +7 -20
  30. package/3rdparty/walkontable/src/filter/column.js +9 -18
  31. package/3rdparty/walkontable/src/filter/column.mjs +9 -17
  32. package/3rdparty/walkontable/src/filter/row.js +9 -18
  33. package/3rdparty/walkontable/src/filter/row.mjs +9 -17
  34. package/3rdparty/walkontable/src/index.js +0 -31
  35. package/3rdparty/walkontable/src/overlay/_base.js +24 -69
  36. package/3rdparty/walkontable/src/overlay/_base.mjs +31 -68
  37. package/3rdparty/walkontable/src/overlay/bottom.js +28 -99
  38. package/3rdparty/walkontable/src/overlay/bottom.mjs +30 -86
  39. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +7 -53
  40. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +9 -40
  41. package/3rdparty/walkontable/src/overlay/constants.js +0 -6
  42. package/3rdparty/walkontable/src/overlay/constants.mjs +0 -1
  43. package/3rdparty/walkontable/src/overlay/index.js +0 -17
  44. package/3rdparty/walkontable/src/overlay/inlineStart.js +21 -91
  45. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +23 -78
  46. package/3rdparty/walkontable/src/overlay/top.js +27 -100
  47. package/3rdparty/walkontable/src/overlay/top.mjs +29 -87
  48. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +4 -51
  49. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +6 -38
  50. package/3rdparty/walkontable/src/overlays.js +58 -129
  51. package/3rdparty/walkontable/src/overlays.mjs +60 -121
  52. package/3rdparty/walkontable/src/renderer/_base.js +4 -20
  53. package/3rdparty/walkontable/src/renderer/_base.mjs +8 -22
  54. package/3rdparty/walkontable/src/renderer/cells.js +10 -54
  55. package/3rdparty/walkontable/src/renderer/cells.mjs +22 -52
  56. package/3rdparty/walkontable/src/renderer/colGroup.js +10 -47
  57. package/3rdparty/walkontable/src/renderer/colGroup.mjs +21 -46
  58. package/3rdparty/walkontable/src/renderer/columnHeaders.js +8 -50
  59. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +19 -49
  60. package/3rdparty/walkontable/src/renderer/index.js +13 -36
  61. package/3rdparty/walkontable/src/renderer/index.mjs +17 -27
  62. package/3rdparty/walkontable/src/renderer/rowHeaders.js +8 -50
  63. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +20 -49
  64. package/3rdparty/walkontable/src/renderer/rows.js +3 -46
  65. package/3rdparty/walkontable/src/renderer/rows.mjs +3 -29
  66. package/3rdparty/walkontable/src/renderer/table.js +22 -49
  67. package/3rdparty/walkontable/src/renderer/table.mjs +22 -48
  68. package/3rdparty/walkontable/src/scroll.js +56 -86
  69. package/3rdparty/walkontable/src/scroll.mjs +58 -86
  70. package/3rdparty/walkontable/src/selection.js +20 -101
  71. package/3rdparty/walkontable/src/selection.mjs +22 -85
  72. package/3rdparty/walkontable/src/settings.js +9 -29
  73. package/3rdparty/walkontable/src/settings.mjs +9 -27
  74. package/3rdparty/walkontable/src/table/bottom.js +1 -35
  75. package/3rdparty/walkontable/src/table/bottom.mjs +6 -25
  76. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +1 -35
  77. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +7 -26
  78. package/3rdparty/walkontable/src/table/inlineStart.js +1 -35
  79. package/3rdparty/walkontable/src/table/inlineStart.mjs +3 -22
  80. package/3rdparty/walkontable/src/table/master.js +10 -55
  81. package/3rdparty/walkontable/src/table/master.mjs +15 -44
  82. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +7 -28
  83. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +7 -26
  84. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +7 -28
  85. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +7 -26
  86. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +7 -22
  87. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +7 -20
  88. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +7 -23
  89. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +7 -21
  90. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +7 -22
  91. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +7 -20
  92. package/3rdparty/walkontable/src/table/top.js +1 -35
  93. package/3rdparty/walkontable/src/table/top.mjs +6 -25
  94. package/3rdparty/walkontable/src/table/topInlineStartCorner.js +1 -35
  95. package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +7 -26
  96. package/3rdparty/walkontable/src/table.js +63 -230
  97. package/3rdparty/walkontable/src/table.mjs +73 -219
  98. package/3rdparty/walkontable/src/types.js +0 -5
  99. package/3rdparty/walkontable/src/types.mjs +0 -5
  100. package/3rdparty/walkontable/src/utils/column.js +9 -31
  101. package/3rdparty/walkontable/src/utils/column.mjs +13 -30
  102. package/3rdparty/walkontable/src/utils/nodesPool.js +3 -12
  103. package/3rdparty/walkontable/src/utils/nodesPool.mjs +3 -11
  104. package/3rdparty/walkontable/src/utils/orderView/constants.js +0 -3
  105. package/3rdparty/walkontable/src/utils/orderView/constants.mjs +0 -2
  106. package/3rdparty/walkontable/src/utils/orderView/index.js +0 -5
  107. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +2 -33
  108. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +6 -26
  109. package/3rdparty/walkontable/src/utils/orderView/view.js +14 -46
  110. package/3rdparty/walkontable/src/utils/orderView/view.mjs +21 -50
  111. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +3 -15
  112. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +3 -14
  113. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +8 -22
  114. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +23 -34
  115. package/3rdparty/walkontable/src/utils/row.js +2 -13
  116. package/3rdparty/walkontable/src/utils/row.mjs +2 -12
  117. package/3rdparty/walkontable/src/viewport.js +38 -100
  118. package/3rdparty/walkontable/src/viewport.mjs +40 -99
  119. package/CHANGELOG.md +76 -1
  120. package/base.js +6 -17
  121. package/base.mjs +6 -12
  122. package/cellTypes/autocompleteType/autocompleteType.js +0 -4
  123. package/cellTypes/autocompleteType/index.js +0 -2
  124. package/cellTypes/checkboxType/checkboxType.js +0 -3
  125. package/cellTypes/checkboxType/index.js +0 -2
  126. package/cellTypes/dateType/dateType.js +0 -4
  127. package/cellTypes/dateType/index.js +0 -2
  128. package/cellTypes/dropdownType/dropdownType.js +0 -4
  129. package/cellTypes/dropdownType/index.js +0 -2
  130. package/cellTypes/handsontableType/handsontableType.js +0 -3
  131. package/cellTypes/handsontableType/index.js +0 -2
  132. package/cellTypes/index.js +0 -21
  133. package/cellTypes/index.mjs +3 -5
  134. package/cellTypes/numericType/index.js +0 -2
  135. package/cellTypes/numericType/numericType.js +0 -4
  136. package/cellTypes/passwordType/index.js +0 -2
  137. package/cellTypes/passwordType/passwordType.js +0 -3
  138. package/cellTypes/registry.js +10 -25
  139. package/cellTypes/registry.mjs +10 -20
  140. package/cellTypes/textType/index.js +0 -2
  141. package/cellTypes/textType/textType.js +0 -3
  142. package/cellTypes/timeType/index.js +0 -2
  143. package/cellTypes/timeType/timeType.js +0 -4
  144. package/core.d.ts +5 -1
  145. package/core.js +505 -973
  146. package/core.mjs +510 -920
  147. package/dataMap/dataMap.js +106 -210
  148. package/dataMap/dataMap.mjs +106 -184
  149. package/{dataSource.js → dataMap/dataSource.js} +18 -66
  150. package/{dataSource.mjs → dataMap/dataSource.mjs} +20 -60
  151. package/dataMap/index.js +0 -13
  152. package/dataMap/metaManager/index.js +21 -46
  153. package/dataMap/metaManager/index.mjs +47 -64
  154. package/dataMap/metaManager/lazyFactoryMap.js +10 -61
  155. package/dataMap/metaManager/lazyFactoryMap.mjs +10 -45
  156. package/dataMap/metaManager/metaLayers/cellMeta.js +16 -52
  157. package/dataMap/metaManager/metaLayers/cellMeta.mjs +16 -37
  158. package/dataMap/metaManager/metaLayers/columnMeta.js +8 -22
  159. package/dataMap/metaManager/metaLayers/columnMeta.mjs +14 -25
  160. package/dataMap/metaManager/metaLayers/globalMeta.js +4 -19
  161. package/dataMap/metaManager/metaLayers/globalMeta.mjs +4 -15
  162. package/dataMap/metaManager/metaLayers/tableMeta.js +4 -15
  163. package/dataMap/metaManager/metaLayers/tableMeta.mjs +28 -37
  164. package/dataMap/metaManager/metaSchema.js +86 -179
  165. package/dataMap/metaManager/metaSchema.mjs +86 -170
  166. package/dataMap/metaManager/mods/dynamicCellMeta.js +6 -36
  167. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +20 -39
  168. package/dataMap/metaManager/mods/extendMetaProperties.js +5 -28
  169. package/dataMap/metaManager/mods/extendMetaProperties.mjs +4 -18
  170. package/dataMap/metaManager/utils.js +11 -20
  171. package/dataMap/metaManager/utils.mjs +21 -23
  172. package/dataMap/replaceData.js +14 -35
  173. package/dataMap/replaceData.mjs +35 -45
  174. package/dist/handsontable.css +2 -2
  175. package/dist/handsontable.full.css +2 -2
  176. package/dist/handsontable.full.js +8478 -20043
  177. package/dist/handsontable.full.min.css +2 -2
  178. package/dist/handsontable.full.min.js +55 -55
  179. package/dist/handsontable.js +7995 -19560
  180. package/dist/handsontable.min.css +2 -2
  181. package/dist/handsontable.min.js +3 -3
  182. package/dist/languages/all.js +0 -175
  183. package/dist/languages/ar-AR.js +0 -10
  184. package/dist/languages/cs-CZ.js +0 -10
  185. package/dist/languages/de-CH.js +0 -10
  186. package/dist/languages/de-DE.js +0 -10
  187. package/dist/languages/en-US.js +0 -10
  188. package/dist/languages/es-MX.js +0 -10
  189. package/dist/languages/fr-FR.js +0 -10
  190. package/dist/languages/it-IT.js +0 -10
  191. package/dist/languages/ja-JP.js +0 -10
  192. package/dist/languages/ko-KR.js +0 -10
  193. package/dist/languages/lv-LV.js +0 -10
  194. package/dist/languages/nb-NO.js +0 -10
  195. package/dist/languages/nl-NL.js +0 -10
  196. package/dist/languages/pl-PL.js +0 -10
  197. package/dist/languages/pt-BR.js +0 -10
  198. package/dist/languages/ru-RU.js +0 -10
  199. package/dist/languages/sr-SP.js +0 -10
  200. package/dist/languages/zh-CN.js +0 -10
  201. package/dist/languages/zh-TW.js +0 -10
  202. package/editorManager.js +36 -105
  203. package/editorManager.mjs +36 -85
  204. package/editors/autocompleteEditor/autocompleteEditor.js +26 -133
  205. package/editors/autocompleteEditor/autocompleteEditor.mjs +26 -104
  206. package/editors/autocompleteEditor/index.js +0 -2
  207. package/editors/baseEditor/baseEditor.js +44 -154
  208. package/editors/baseEditor/baseEditor.mjs +44 -128
  209. package/editors/baseEditor/index.js +0 -2
  210. package/editors/checkboxEditor/checkboxEditor.js +2 -33
  211. package/editors/checkboxEditor/checkboxEditor.mjs +2 -19
  212. package/editors/checkboxEditor/index.js +0 -2
  213. package/editors/dateEditor/dateEditor.js +20 -96
  214. package/editors/dateEditor/dateEditor.mjs +20 -75
  215. package/editors/dateEditor/index.js +0 -2
  216. package/editors/dropdownEditor/dropdownEditor.js +1 -41
  217. package/editors/dropdownEditor/dropdownEditor.mjs +1 -22
  218. package/editors/dropdownEditor/index.js +0 -2
  219. package/editors/handsontableEditor/handsontableEditor.js +13 -85
  220. package/editors/handsontableEditor/handsontableEditor.mjs +13 -66
  221. package/editors/handsontableEditor/index.js +0 -2
  222. package/editors/index.js +0 -25
  223. package/editors/index.mjs +3 -5
  224. package/editors/numericEditor/index.js +0 -2
  225. package/editors/numericEditor/numericEditor.js +1 -31
  226. package/editors/numericEditor/numericEditor.mjs +1 -18
  227. package/editors/passwordEditor/index.js +0 -2
  228. package/editors/passwordEditor/passwordEditor.js +1 -38
  229. package/editors/passwordEditor/passwordEditor.mjs +1 -22
  230. package/editors/registry.js +10 -36
  231. package/editors/registry.mjs +10 -28
  232. package/editors/selectEditor/index.js +0 -2
  233. package/editors/selectEditor/selectEditor.js +21 -73
  234. package/editors/selectEditor/selectEditor.mjs +21 -56
  235. package/editors/textEditor/caretPositioner.js +0 -8
  236. package/editors/textEditor/caretPositioner.mjs +10 -18
  237. package/editors/textEditor/index.js +0 -2
  238. package/editors/textEditor/textEditor.js +38 -137
  239. package/editors/textEditor/textEditor.mjs +38 -106
  240. package/editors/timeEditor/index.js +0 -2
  241. package/editors/timeEditor/timeEditor.js +1 -36
  242. package/editors/timeEditor/timeEditor.mjs +1 -21
  243. package/eventManager.js +20 -56
  244. package/eventManager.mjs +23 -56
  245. package/helpers/array.js +22 -88
  246. package/helpers/array.mjs +22 -58
  247. package/helpers/browser.js +25 -51
  248. package/helpers/browser.mjs +25 -32
  249. package/helpers/console.js +3 -13
  250. package/helpers/console.mjs +8 -16
  251. package/helpers/data.d.ts +0 -1
  252. package/helpers/data.js +10 -55
  253. package/helpers/data.mjs +10 -33
  254. package/helpers/date.js +2 -3
  255. package/helpers/date.mjs +2 -2
  256. package/helpers/dom/element.js +66 -256
  257. package/helpers/dom/element.mjs +73 -192
  258. package/helpers/dom/event.js +3 -7
  259. package/helpers/dom/event.mjs +3 -3
  260. package/helpers/feature.js +13 -47
  261. package/helpers/feature.mjs +13 -31
  262. package/helpers/function.js +14 -59
  263. package/helpers/function.mjs +20 -52
  264. package/helpers/mixed.js +9 -64
  265. package/helpers/mixed.mjs +15 -50
  266. package/helpers/number.js +4 -46
  267. package/helpers/number.mjs +4 -23
  268. package/helpers/object.js +15 -68
  269. package/helpers/object.mjs +21 -50
  270. package/helpers/string.js +6 -28
  271. package/helpers/string.mjs +12 -21
  272. package/helpers/templateLiteralTag.js +0 -6
  273. package/helpers/templateLiteralTag.mjs +7 -10
  274. package/helpers/unicode.js +17 -22
  275. package/helpers/unicode.mjs +17 -13
  276. package/helpers/wrappers/jquery.js +4 -14
  277. package/helpers/wrappers/jquery.mjs +4 -13
  278. package/i18n/constants.js +1 -3
  279. package/i18n/constants.mjs +1 -1
  280. package/i18n/index.js +0 -7
  281. package/i18n/languages/ar-AR.js +0 -16
  282. package/i18n/languages/ar-AR.mjs +1 -4
  283. package/i18n/languages/cs-CZ.js +0 -16
  284. package/i18n/languages/cs-CZ.mjs +1 -4
  285. package/i18n/languages/de-CH.js +0 -16
  286. package/i18n/languages/de-CH.mjs +1 -4
  287. package/i18n/languages/de-DE.js +0 -16
  288. package/i18n/languages/de-DE.mjs +1 -4
  289. package/i18n/languages/en-US.js +0 -16
  290. package/i18n/languages/en-US.mjs +1 -4
  291. package/i18n/languages/es-MX.js +0 -16
  292. package/i18n/languages/es-MX.mjs +1 -4
  293. package/i18n/languages/fr-FR.js +0 -16
  294. package/i18n/languages/fr-FR.mjs +1 -4
  295. package/i18n/languages/index.js +0 -39
  296. package/i18n/languages/it-IT.js +0 -16
  297. package/i18n/languages/it-IT.mjs +1 -4
  298. package/i18n/languages/ja-JP.js +0 -16
  299. package/i18n/languages/ja-JP.mjs +1 -4
  300. package/i18n/languages/ko-KR.js +0 -16
  301. package/i18n/languages/ko-KR.mjs +1 -4
  302. package/i18n/languages/lv-LV.js +0 -16
  303. package/i18n/languages/lv-LV.mjs +1 -4
  304. package/i18n/languages/nb-NO.js +0 -16
  305. package/i18n/languages/nb-NO.mjs +1 -4
  306. package/i18n/languages/nl-NL.js +0 -16
  307. package/i18n/languages/nl-NL.mjs +1 -4
  308. package/i18n/languages/pl-PL.js +0 -16
  309. package/i18n/languages/pl-PL.mjs +1 -4
  310. package/i18n/languages/pt-BR.js +0 -16
  311. package/i18n/languages/pt-BR.mjs +1 -4
  312. package/i18n/languages/ru-RU.js +0 -16
  313. package/i18n/languages/ru-RU.mjs +1 -4
  314. package/i18n/languages/sr-SP.js +0 -16
  315. package/i18n/languages/sr-SP.mjs +1 -4
  316. package/i18n/languages/zh-CN.js +0 -16
  317. package/i18n/languages/zh-CN.mjs +1 -4
  318. package/i18n/languages/zh-TW.js +0 -16
  319. package/i18n/languages/zh-TW.mjs +1 -4
  320. package/i18n/phraseFormatters/index.js +4 -11
  321. package/i18n/phraseFormatters/index.mjs +4 -6
  322. package/i18n/phraseFormatters/pluralize.js +0 -5
  323. package/i18n/phraseFormatters/pluralize.mjs +0 -3
  324. package/i18n/phraseFormatters/substituteVariables.js +0 -4
  325. package/i18n/phraseFormatters/substituteVariables.mjs +8 -11
  326. package/i18n/registry.js +18 -59
  327. package/i18n/registry.mjs +18 -30
  328. package/i18n/utils.js +4 -22
  329. package/i18n/utils.mjs +13 -21
  330. package/index.js +19 -56
  331. package/index.mjs +19 -15
  332. package/languages/all.js +0 -175
  333. package/languages/ar-AR.js +0 -10
  334. package/languages/ar-AR.mjs +1 -4
  335. package/languages/cs-CZ.js +0 -10
  336. package/languages/cs-CZ.mjs +1 -4
  337. package/languages/de-CH.js +0 -10
  338. package/languages/de-CH.mjs +1 -4
  339. package/languages/de-DE.js +0 -10
  340. package/languages/de-DE.mjs +1 -4
  341. package/languages/en-US.js +0 -10
  342. package/languages/en-US.mjs +1 -4
  343. package/languages/es-MX.js +0 -10
  344. package/languages/es-MX.mjs +1 -4
  345. package/languages/fr-FR.js +0 -10
  346. package/languages/fr-FR.mjs +1 -4
  347. package/languages/index.js +0 -175
  348. package/languages/it-IT.js +0 -10
  349. package/languages/it-IT.mjs +1 -4
  350. package/languages/ja-JP.js +0 -10
  351. package/languages/ja-JP.mjs +1 -4
  352. package/languages/ko-KR.js +0 -10
  353. package/languages/ko-KR.mjs +1 -4
  354. package/languages/lv-LV.js +0 -10
  355. package/languages/lv-LV.mjs +1 -4
  356. package/languages/nb-NO.js +0 -10
  357. package/languages/nb-NO.mjs +1 -4
  358. package/languages/nl-NL.js +0 -10
  359. package/languages/nl-NL.mjs +1 -4
  360. package/languages/pl-PL.js +0 -10
  361. package/languages/pl-PL.mjs +1 -4
  362. package/languages/pt-BR.js +0 -10
  363. package/languages/pt-BR.mjs +1 -4
  364. package/languages/ru-RU.js +0 -10
  365. package/languages/ru-RU.mjs +1 -4
  366. package/languages/sr-SP.js +0 -10
  367. package/languages/sr-SP.mjs +1 -4
  368. package/languages/zh-CN.js +0 -10
  369. package/languages/zh-CN.mjs +1 -4
  370. package/languages/zh-TW.js +0 -10
  371. package/languages/zh-TW.mjs +1 -4
  372. package/mixins/hooksRefRegisterer.js +4 -18
  373. package/mixins/hooksRefRegisterer.mjs +4 -15
  374. package/mixins/localHooks.js +7 -17
  375. package/mixins/localHooks.mjs +7 -14
  376. package/package.json +1 -1
  377. package/pluginHooks.d.ts +3 -3
  378. package/pluginHooks.js +271 -96
  379. package/pluginHooks.mjs +270 -83
  380. package/plugins/autoColumnSize/autoColumnSize.js +74 -172
  381. package/plugins/autoColumnSize/autoColumnSize.mjs +74 -137
  382. package/plugins/autoColumnSize/index.js +0 -2
  383. package/plugins/autoRowSize/autoRowSize.js +73 -153
  384. package/plugins/autoRowSize/autoRowSize.mjs +73 -124
  385. package/plugins/autoRowSize/index.js +0 -2
  386. package/plugins/autofill/autofill.js +46 -163
  387. package/plugins/autofill/autofill.mjs +46 -131
  388. package/plugins/autofill/index.js +0 -2
  389. package/plugins/autofill/utils.js +4 -26
  390. package/plugins/autofill/utils.mjs +4 -18
  391. package/plugins/base/base.js +20 -89
  392. package/plugins/base/base.mjs +20 -61
  393. package/plugins/base/index.js +0 -2
  394. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +19 -52
  395. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +19 -33
  396. package/plugins/bindRowsWithHeaders/index.js +0 -2
  397. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +5 -41
  398. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +5 -29
  399. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +6 -53
  400. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +6 -37
  401. package/plugins/collapsibleColumns/collapsibleColumns.js +96 -188
  402. package/plugins/collapsibleColumns/collapsibleColumns.mjs +97 -158
  403. package/plugins/collapsibleColumns/index.js +0 -2
  404. package/plugins/columnSorting/columnSorting.js +50 -188
  405. package/plugins/columnSorting/columnSorting.mjs +50 -143
  406. package/plugins/columnSorting/columnStatesManager.js +15 -71
  407. package/plugins/columnSorting/columnStatesManager.mjs +15 -48
  408. package/plugins/columnSorting/domHelpers.js +2 -18
  409. package/plugins/columnSorting/domHelpers.mjs +2 -7
  410. package/plugins/columnSorting/index.js +0 -2
  411. package/plugins/columnSorting/rootComparator.js +5 -24
  412. package/plugins/columnSorting/rootComparator.mjs +12 -21
  413. package/plugins/columnSorting/sortFunction/checkbox.js +8 -16
  414. package/plugins/columnSorting/sortFunction/checkbox.mjs +16 -21
  415. package/plugins/columnSorting/sortFunction/date.js +2 -19
  416. package/plugins/columnSorting/sortFunction/date.mjs +10 -23
  417. package/plugins/columnSorting/sortFunction/default.js +2 -17
  418. package/plugins/columnSorting/sortFunction/default.mjs +10 -23
  419. package/plugins/columnSorting/sortFunction/numeric.js +2 -11
  420. package/plugins/columnSorting/sortFunction/numeric.mjs +10 -17
  421. package/plugins/columnSorting/sortService/engine.js +1 -7
  422. package/plugins/columnSorting/sortService/engine.mjs +1 -3
  423. package/plugins/columnSorting/sortService/index.js +0 -5
  424. package/plugins/columnSorting/sortService/registry.js +6 -18
  425. package/plugins/columnSorting/sortService/registry.mjs +6 -10
  426. package/plugins/columnSorting/utils.js +9 -34
  427. package/plugins/columnSorting/utils.mjs +9 -15
  428. package/plugins/columnSummary/columnSummary.js +52 -118
  429. package/plugins/columnSummary/columnSummary.mjs +52 -93
  430. package/plugins/columnSummary/endpoints.js +21 -98
  431. package/plugins/columnSummary/endpoints.mjs +26 -99
  432. package/plugins/columnSummary/index.js +0 -2
  433. package/plugins/columnSummary/utils.js +0 -1
  434. package/plugins/comments/commentEditor.js +16 -28
  435. package/plugins/comments/commentEditor.mjs +21 -32
  436. package/plugins/comments/comments.js +92 -175
  437. package/plugins/comments/comments.mjs +92 -149
  438. package/plugins/comments/displaySwitch.js +6 -23
  439. package/plugins/comments/displaySwitch.mjs +6 -18
  440. package/plugins/comments/index.js +0 -2
  441. package/plugins/contextMenu/commandExecutor.js +9 -36
  442. package/plugins/contextMenu/commandExecutor.mjs +14 -39
  443. package/plugins/contextMenu/contextMenu.js +21 -104
  444. package/plugins/contextMenu/contextMenu.mjs +21 -74
  445. package/plugins/contextMenu/cursor.js +6 -20
  446. package/plugins/contextMenu/cursor.mjs +11 -24
  447. package/plugins/contextMenu/index.js +0 -2
  448. package/plugins/contextMenu/itemsFactory.js +14 -43
  449. package/plugins/contextMenu/itemsFactory.mjs +19 -44
  450. package/plugins/contextMenu/menu.js +57 -177
  451. package/plugins/contextMenu/menu.mjs +57 -149
  452. package/plugins/contextMenu/predefinedItems/alignment.js +1 -55
  453. package/plugins/contextMenu/predefinedItems/alignment.mjs +1 -37
  454. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -20
  455. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -4
  456. package/plugins/contextMenu/predefinedItems/columnLeft.js +6 -43
  457. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +6 -26
  458. package/plugins/contextMenu/predefinedItems/columnRight.js +4 -42
  459. package/plugins/contextMenu/predefinedItems/columnRight.mjs +4 -25
  460. package/plugins/contextMenu/predefinedItems/noItems.js +1 -4
  461. package/plugins/contextMenu/predefinedItems/noItems.mjs +1 -1
  462. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -25
  463. package/plugins/contextMenu/predefinedItems/readOnly.mjs +1 -8
  464. package/plugins/contextMenu/predefinedItems/redo.js +1 -16
  465. package/plugins/contextMenu/predefinedItems/redo.mjs +1 -1
  466. package/plugins/contextMenu/predefinedItems/removeColumn.js +3 -38
  467. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +3 -18
  468. package/plugins/contextMenu/predefinedItems/removeRow.js +3 -37
  469. package/plugins/contextMenu/predefinedItems/removeRow.mjs +3 -17
  470. package/plugins/contextMenu/predefinedItems/rowAbove.js +6 -35
  471. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +6 -19
  472. package/plugins/contextMenu/predefinedItems/rowBelow.js +4 -42
  473. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +4 -25
  474. package/plugins/contextMenu/predefinedItems/separator.js +1 -2
  475. package/plugins/contextMenu/predefinedItems/separator.mjs +1 -1
  476. package/plugins/contextMenu/predefinedItems/undo.js +1 -16
  477. package/plugins/contextMenu/predefinedItems/undo.mjs +1 -1
  478. package/plugins/contextMenu/predefinedItems.js +2 -48
  479. package/plugins/contextMenu/predefinedItems.mjs +2 -7
  480. package/plugins/contextMenu/utils.js +17 -57
  481. package/plugins/contextMenu/utils.mjs +21 -39
  482. package/plugins/copyPaste/clipboardData.js +1 -10
  483. package/plugins/copyPaste/clipboardData.mjs +1 -9
  484. package/plugins/copyPaste/contextMenuItem/copy.js +2 -17
  485. package/plugins/copyPaste/contextMenuItem/copy.mjs +6 -9
  486. package/plugins/copyPaste/contextMenuItem/cut.js +2 -17
  487. package/plugins/copyPaste/contextMenuItem/cut.mjs +6 -9
  488. package/plugins/copyPaste/copyPaste.js +51 -185
  489. package/plugins/copyPaste/copyPaste.mjs +51 -144
  490. package/plugins/copyPaste/focusableElement.js +12 -56
  491. package/plugins/copyPaste/focusableElement.mjs +15 -49
  492. package/plugins/copyPaste/index.js +0 -2
  493. package/plugins/copyPaste/pasteEvent.js +1 -10
  494. package/plugins/copyPaste/pasteEvent.mjs +3 -10
  495. package/plugins/customBorders/contextMenuItem/bottom.js +0 -17
  496. package/plugins/customBorders/contextMenuItem/bottom.mjs +4 -8
  497. package/plugins/customBorders/contextMenuItem/index.js +0 -11
  498. package/plugins/customBorders/contextMenuItem/left.js +0 -17
  499. package/plugins/customBorders/contextMenuItem/left.mjs +4 -8
  500. package/plugins/customBorders/contextMenuItem/noBorders.js +0 -15
  501. package/plugins/customBorders/contextMenuItem/noBorders.mjs +4 -6
  502. package/plugins/customBorders/contextMenuItem/right.js +0 -17
  503. package/plugins/customBorders/contextMenuItem/right.mjs +4 -8
  504. package/plugins/customBorders/contextMenuItem/top.js +0 -17
  505. package/plugins/customBorders/contextMenuItem/top.mjs +4 -8
  506. package/plugins/customBorders/customBorders.js +52 -181
  507. package/plugins/customBorders/customBorders.mjs +52 -147
  508. package/plugins/customBorders/index.js +0 -2
  509. package/plugins/customBorders/utils.js +13 -52
  510. package/plugins/customBorders/utils.mjs +20 -39
  511. package/plugins/dragToScroll/dragToScroll.js +17 -74
  512. package/plugins/dragToScroll/dragToScroll.mjs +17 -55
  513. package/plugins/dragToScroll/index.js +0 -2
  514. package/plugins/dropdownMenu/dropdownMenu.js +43 -126
  515. package/plugins/dropdownMenu/dropdownMenu.mjs +43 -95
  516. package/plugins/dropdownMenu/index.js +0 -2
  517. package/plugins/exportFile/dataProvider.js +24 -69
  518. package/plugins/exportFile/dataProvider.mjs +26 -60
  519. package/plugins/exportFile/exportFile.js +48 -58
  520. package/plugins/exportFile/exportFile.mjs +48 -36
  521. package/plugins/exportFile/index.js +0 -2
  522. package/plugins/exportFile/typeFactory.js +1 -11
  523. package/plugins/exportFile/typeFactory.mjs +1 -4
  524. package/plugins/exportFile/types/_base.js +2 -16
  525. package/plugins/exportFile/types/_base.mjs +4 -16
  526. package/plugins/exportFile/types/csv.js +2 -50
  527. package/plugins/exportFile/types/csv.mjs +2 -29
  528. package/plugins/filters/component/_base.js +12 -32
  529. package/plugins/filters/component/_base.mjs +15 -30
  530. package/plugins/filters/component/actionBar.js +6 -55
  531. package/plugins/filters/component/actionBar.mjs +9 -38
  532. package/plugins/filters/component/condition.js +15 -94
  533. package/plugins/filters/component/condition.mjs +18 -67
  534. package/plugins/filters/component/operators.js +10 -68
  535. package/plugins/filters/component/operators.mjs +10 -45
  536. package/plugins/filters/component/value.js +16 -97
  537. package/plugins/filters/component/value.mjs +19 -70
  538. package/plugins/filters/condition/beginsWith.js +2 -32
  539. package/plugins/filters/condition/beginsWith.mjs +2 -10
  540. package/plugins/filters/condition/between.js +3 -37
  541. package/plugins/filters/condition/between.mjs +3 -15
  542. package/plugins/filters/condition/byValue.js +3 -27
  543. package/plugins/filters/condition/byValue.mjs +3 -12
  544. package/plugins/filters/condition/contains.js +2 -32
  545. package/plugins/filters/condition/contains.mjs +2 -10
  546. package/plugins/filters/condition/date/after.js +2 -34
  547. package/plugins/filters/condition/date/after.mjs +2 -12
  548. package/plugins/filters/condition/date/before.js +2 -34
  549. package/plugins/filters/condition/date/before.mjs +2 -12
  550. package/plugins/filters/condition/date/today.js +1 -22
  551. package/plugins/filters/condition/date/today.mjs +1 -3
  552. package/plugins/filters/condition/date/tomorrow.js +1 -22
  553. package/plugins/filters/condition/date/tomorrow.mjs +1 -3
  554. package/plugins/filters/condition/date/yesterday.js +1 -22
  555. package/plugins/filters/condition/date/yesterday.mjs +1 -3
  556. package/plugins/filters/condition/empty.js +1 -19
  557. package/plugins/filters/condition/empty.mjs +1 -1
  558. package/plugins/filters/condition/endsWith.js +2 -32
  559. package/plugins/filters/condition/endsWith.mjs +2 -10
  560. package/plugins/filters/condition/equal.js +2 -31
  561. package/plugins/filters/condition/equal.mjs +2 -10
  562. package/plugins/filters/condition/false.js +1 -5
  563. package/plugins/filters/condition/false.mjs +1 -1
  564. package/plugins/filters/condition/greaterThan.js +2 -32
  565. package/plugins/filters/condition/greaterThan.mjs +2 -12
  566. package/plugins/filters/condition/greaterThanOrEqual.js +2 -32
  567. package/plugins/filters/condition/greaterThanOrEqual.mjs +2 -12
  568. package/plugins/filters/condition/lessThan.js +2 -32
  569. package/plugins/filters/condition/lessThan.mjs +2 -12
  570. package/plugins/filters/condition/lessThanOrEqual.js +2 -32
  571. package/plugins/filters/condition/lessThanOrEqual.mjs +2 -12
  572. package/plugins/filters/condition/none.js +1 -18
  573. package/plugins/filters/condition/none.mjs +1 -1
  574. package/plugins/filters/condition/notBetween.js +1 -19
  575. package/plugins/filters/condition/notBetween.mjs +1 -1
  576. package/plugins/filters/condition/notContains.js +1 -19
  577. package/plugins/filters/condition/notContains.mjs +1 -1
  578. package/plugins/filters/condition/notEmpty.js +1 -19
  579. package/plugins/filters/condition/notEmpty.mjs +1 -1
  580. package/plugins/filters/condition/notEqual.js +1 -19
  581. package/plugins/filters/condition/notEqual.mjs +1 -1
  582. package/plugins/filters/condition/true.js +1 -5
  583. package/plugins/filters/condition/true.mjs +1 -1
  584. package/plugins/filters/conditionCollection.js +21 -80
  585. package/plugins/filters/conditionCollection.mjs +21 -57
  586. package/plugins/filters/conditionRegisterer.js +5 -14
  587. package/plugins/filters/conditionRegisterer.mjs +5 -9
  588. package/plugins/filters/conditionUpdateObserver.js +17 -57
  589. package/plugins/filters/conditionUpdateObserver.mjs +25 -53
  590. package/plugins/filters/constants.js +1 -66
  591. package/plugins/filters/constants.mjs +1 -8
  592. package/plugins/filters/dataFilter.js +4 -21
  593. package/plugins/filters/dataFilter.mjs +7 -23
  594. package/plugins/filters/filters.js +103 -208
  595. package/plugins/filters/filters.mjs +103 -163
  596. package/plugins/filters/index.js +0 -2
  597. package/plugins/filters/logicalOperationRegisterer.js +3 -9
  598. package/plugins/filters/logicalOperationRegisterer.mjs +3 -4
  599. package/plugins/filters/logicalOperations/conjunction.js +2 -19
  600. package/plugins/filters/logicalOperations/conjunction.mjs +2 -2
  601. package/plugins/filters/logicalOperations/disjunction.js +2 -19
  602. package/plugins/filters/logicalOperations/disjunction.mjs +2 -2
  603. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +2 -21
  604. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +2 -3
  605. package/plugins/filters/ui/_base.js +12 -55
  606. package/plugins/filters/ui/_base.mjs +12 -35
  607. package/plugins/filters/ui/input.js +7 -52
  608. package/plugins/filters/ui/input.mjs +7 -34
  609. package/plugins/filters/ui/link.js +3 -43
  610. package/plugins/filters/ui/link.mjs +3 -25
  611. package/plugins/filters/ui/multipleSelect.js +26 -120
  612. package/plugins/filters/ui/multipleSelect.mjs +20 -76
  613. package/plugins/filters/ui/radioInput.js +6 -47
  614. package/plugins/filters/ui/radioInput.mjs +6 -30
  615. package/plugins/filters/ui/select.js +14 -76
  616. package/plugins/filters/ui/select.mjs +14 -52
  617. package/plugins/filters/utils.js +6 -39
  618. package/plugins/filters/utils.mjs +6 -23
  619. package/plugins/formulas/engine/register.js +24 -74
  620. package/plugins/formulas/engine/register.mjs +29 -51
  621. package/plugins/formulas/engine/settings.js +4 -24
  622. package/plugins/formulas/engine/settings.mjs +4 -12
  623. package/plugins/formulas/formulas.js +103 -295
  624. package/plugins/formulas/formulas.mjs +104 -248
  625. package/plugins/formulas/index.js +0 -2
  626. package/plugins/formulas/utils.js +1 -3
  627. package/plugins/formulas/utils.mjs +1 -1
  628. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +4 -38
  629. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +8 -25
  630. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +17 -45
  631. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +21 -29
  632. package/plugins/hiddenColumns/hiddenColumns.js +72 -149
  633. package/plugins/hiddenColumns/hiddenColumns.mjs +72 -108
  634. package/plugins/hiddenColumns/index.js +0 -2
  635. package/plugins/hiddenRows/contextMenuItem/hideRow.js +4 -38
  636. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +8 -25
  637. package/plugins/hiddenRows/contextMenuItem/showRow.js +17 -45
  638. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +21 -29
  639. package/plugins/hiddenRows/hiddenRows.js +70 -148
  640. package/plugins/hiddenRows/hiddenRows.mjs +70 -107
  641. package/plugins/hiddenRows/index.js +0 -2
  642. package/plugins/index.js +0 -71
  643. package/plugins/index.mjs +3 -5
  644. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -28
  645. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +5 -17
  646. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -28
  647. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +5 -17
  648. package/plugins/manualColumnFreeze/index.js +0 -2
  649. package/plugins/manualColumnFreeze/manualColumnFreeze.js +21 -78
  650. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +21 -54
  651. package/plugins/manualColumnMove/index.js +0 -2
  652. package/plugins/manualColumnMove/manualColumnMove.js +45 -134
  653. package/plugins/manualColumnMove/manualColumnMove.mjs +45 -106
  654. package/plugins/manualColumnMove/ui/_base.js +12 -30
  655. package/plugins/manualColumnMove/ui/_base.mjs +12 -27
  656. package/plugins/manualColumnMove/ui/backlight.js +1 -37
  657. package/plugins/manualColumnMove/ui/backlight.mjs +1 -22
  658. package/plugins/manualColumnMove/ui/guideline.js +1 -37
  659. package/plugins/manualColumnMove/ui/guideline.mjs +1 -22
  660. package/plugins/manualColumnResize/index.js +0 -2
  661. package/plugins/manualColumnResize/manualColumnResize.js +44 -143
  662. package/plugins/manualColumnResize/manualColumnResize.mjs +43 -118
  663. package/plugins/manualRowMove/index.js +0 -2
  664. package/plugins/manualRowMove/manualRowMove.js +45 -137
  665. package/plugins/manualRowMove/manualRowMove.mjs +45 -109
  666. package/plugins/manualRowMove/ui/_base.js +12 -27
  667. package/plugins/manualRowMove/ui/_base.mjs +12 -26
  668. package/plugins/manualRowMove/ui/backlight.js +1 -37
  669. package/plugins/manualRowMove/ui/backlight.mjs +1 -22
  670. package/plugins/manualRowMove/ui/guideline.js +1 -37
  671. package/plugins/manualRowMove/ui/guideline.mjs +1 -22
  672. package/plugins/manualRowResize/index.js +0 -2
  673. package/plugins/manualRowResize/manualRowResize.js +42 -138
  674. package/plugins/manualRowResize/manualRowResize.mjs +41 -112
  675. package/plugins/mergeCells/calculations/autofill.js +39 -130
  676. package/plugins/mergeCells/calculations/autofill.mjs +44 -122
  677. package/plugins/mergeCells/calculations/selection.js +9 -40
  678. package/plugins/mergeCells/calculations/selection.mjs +9 -37
  679. package/plugins/mergeCells/cellCoords.js +30 -51
  680. package/plugins/mergeCells/cellCoords.mjs +35 -54
  681. package/plugins/mergeCells/cellsCollection.js +13 -84
  682. package/plugins/mergeCells/cellsCollection.mjs +18 -69
  683. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +0 -22
  684. package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +4 -11
  685. package/plugins/mergeCells/index.js +0 -2
  686. package/plugins/mergeCells/mergeCells.js +130 -333
  687. package/plugins/mergeCells/mergeCells.mjs +130 -292
  688. package/plugins/mergeCells/utils.js +0 -3
  689. package/plugins/mergeCells/utils.mjs +0 -1
  690. package/plugins/multiColumnSorting/domHelpers.js +2 -12
  691. package/plugins/multiColumnSorting/domHelpers.mjs +2 -5
  692. package/plugins/multiColumnSorting/index.js +0 -2
  693. package/plugins/multiColumnSorting/multiColumnSorting.js +14 -66
  694. package/plugins/multiColumnSorting/multiColumnSorting.mjs +14 -44
  695. package/plugins/multiColumnSorting/rootComparator.js +2 -26
  696. package/plugins/multiColumnSorting/rootComparator.mjs +9 -23
  697. package/plugins/multiColumnSorting/utils.js +0 -7
  698. package/plugins/multiColumnSorting/utils.mjs +3 -8
  699. package/plugins/multipleSelectionHandles/index.js +0 -2
  700. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +6 -109
  701. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +6 -87
  702. package/plugins/nestedHeaders/index.js +0 -2
  703. package/plugins/nestedHeaders/nestedHeaders.js +79 -200
  704. package/plugins/nestedHeaders/nestedHeaders.mjs +80 -173
  705. package/plugins/nestedHeaders/stateManager/headersTree.js +16 -93
  706. package/plugins/nestedHeaders/stateManager/headersTree.mjs +16 -73
  707. package/plugins/nestedHeaders/stateManager/index.js +24 -107
  708. package/plugins/nestedHeaders/stateManager/index.mjs +51 -115
  709. package/plugins/nestedHeaders/stateManager/matrixGenerator.js +7 -25
  710. package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +38 -51
  711. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +12 -27
  712. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +29 -35
  713. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +10 -25
  714. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +26 -32
  715. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +3 -19
  716. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +9 -20
  717. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +2 -12
  718. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +2 -5
  719. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +3 -22
  720. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +9 -21
  721. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +3 -10
  722. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +3 -7
  723. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -36
  724. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +44 -61
  725. package/plugins/nestedHeaders/stateManager/sourceSettings.js +16 -78
  726. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +21 -68
  727. package/plugins/nestedHeaders/stateManager/utils.js +19 -22
  728. package/plugins/nestedHeaders/stateManager/utils.mjs +19 -20
  729. package/plugins/nestedHeaders/utils/ghostTable.js +9 -37
  730. package/plugins/nestedHeaders/utils/ghostTable.mjs +16 -43
  731. package/plugins/nestedRows/data/dataManager.js +40 -161
  732. package/plugins/nestedRows/data/dataManager.mjs +44 -148
  733. package/plugins/nestedRows/index.js +0 -2
  734. package/plugins/nestedRows/nestedRows.js +40 -118
  735. package/plugins/nestedRows/nestedRows.mjs +40 -85
  736. package/plugins/nestedRows/ui/_base.js +1 -9
  737. package/plugins/nestedRows/ui/_base.mjs +1 -8
  738. package/plugins/nestedRows/ui/collapsing.js +28 -134
  739. package/plugins/nestedRows/ui/collapsing.mjs +34 -118
  740. package/plugins/nestedRows/ui/contextMenu.js +2 -53
  741. package/plugins/nestedRows/ui/contextMenu.mjs +2 -32
  742. package/plugins/nestedRows/ui/headers.js +5 -50
  743. package/plugins/nestedRows/ui/headers.mjs +11 -41
  744. package/plugins/nestedRows/utils/rowMoveController.js +28 -78
  745. package/plugins/nestedRows/utils/rowMoveController.mjs +33 -66
  746. package/plugins/persistentState/index.js +0 -2
  747. package/plugins/persistentState/persistentState.js +10 -58
  748. package/plugins/persistentState/persistentState.mjs +10 -37
  749. package/plugins/persistentState/storage.js +9 -25
  750. package/plugins/persistentState/storage.mjs +12 -26
  751. package/plugins/registry.js +7 -51
  752. package/plugins/registry.mjs +8 -34
  753. package/plugins/search/index.js +0 -2
  754. package/plugins/search/search.js +16 -96
  755. package/plugins/search/search.mjs +16 -67
  756. package/plugins/touchScroll/index.js +0 -2
  757. package/plugins/touchScroll/touchScroll.js +15 -76
  758. package/plugins/touchScroll/touchScroll.mjs +15 -58
  759. package/plugins/trimRows/index.js +0 -2
  760. package/plugins/trimRows/trimRows.js +59 -85
  761. package/plugins/trimRows/trimRows.mjs +59 -62
  762. package/plugins/undoRedo/index.js +0 -14
  763. package/plugins/undoRedo/undoRedo.js +48 -218
  764. package/plugins/undoRedo/undoRedo.mjs +48 -188
  765. package/registry.js +0 -11
  766. package/registry.mjs +2 -4
  767. package/renderers/autocompleteRenderer/autocompleteRenderer.js +5 -14
  768. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +5 -6
  769. package/renderers/autocompleteRenderer/index.js +0 -2
  770. package/renderers/baseRenderer/baseRenderer.js +2 -11
  771. package/renderers/baseRenderer/baseRenderer.mjs +2 -9
  772. package/renderers/baseRenderer/index.js +0 -2
  773. package/renderers/checkboxRenderer/checkboxRenderer.js +22 -103
  774. package/renderers/checkboxRenderer/checkboxRenderer.mjs +22 -81
  775. package/renderers/checkboxRenderer/index.js +0 -2
  776. package/renderers/htmlRenderer/htmlRenderer.js +1 -7
  777. package/renderers/htmlRenderer/htmlRenderer.mjs +1 -1
  778. package/renderers/htmlRenderer/index.js +0 -2
  779. package/renderers/index.js +0 -19
  780. package/renderers/index.mjs +3 -5
  781. package/renderers/numericRenderer/index.js +0 -2
  782. package/renderers/numericRenderer/numericRenderer.js +1 -21
  783. package/renderers/numericRenderer/numericRenderer.mjs +1 -9
  784. package/renderers/passwordRenderer/index.js +0 -2
  785. package/renderers/passwordRenderer/passwordRenderer.js +1 -8
  786. package/renderers/passwordRenderer/passwordRenderer.mjs +1 -1
  787. package/renderers/registry.js +7 -16
  788. package/renderers/registry.mjs +7 -14
  789. package/renderers/textRenderer/index.js +0 -2
  790. package/renderers/textRenderer/textRenderer.js +1 -13
  791. package/renderers/textRenderer/textRenderer.mjs +1 -5
  792. package/renderers/timeRenderer/index.js +0 -2
  793. package/renderers/timeRenderer/timeRenderer.js +1 -6
  794. package/renderers/timeRenderer/timeRenderer.mjs +1 -1
  795. package/selection/highlight/highlight.js +17 -73
  796. package/selection/highlight/highlight.mjs +31 -64
  797. package/selection/highlight/types/activeHeader.js +1 -21
  798. package/selection/highlight/types/activeHeader.mjs +6 -16
  799. package/selection/highlight/types/area.js +2 -22
  800. package/selection/highlight/types/area.mjs +10 -20
  801. package/selection/highlight/types/cell.js +1 -21
  802. package/selection/highlight/types/cell.mjs +9 -19
  803. package/selection/highlight/types/customSelection.js +2 -22
  804. package/selection/highlight/types/customSelection.mjs +11 -21
  805. package/selection/highlight/types/fill.js +2 -17
  806. package/selection/highlight/types/fill.mjs +9 -14
  807. package/selection/highlight/types/header.js +3 -23
  808. package/selection/highlight/types/header.mjs +13 -23
  809. package/selection/highlight/types/index.js +3 -24
  810. package/selection/highlight/types/index.mjs +3 -10
  811. package/selection/highlight/visualSelection.js +24 -74
  812. package/selection/highlight/visualSelection.mjs +24 -62
  813. package/selection/index.js +0 -14
  814. package/selection/mouseEventHandler.js +19 -30
  815. package/selection/mouseEventHandler.mjs +32 -36
  816. package/selection/range.js +11 -31
  817. package/selection/range.mjs +11 -22
  818. package/selection/selection.js +62 -157
  819. package/selection/selection.mjs +65 -132
  820. package/selection/transformation.js +10 -40
  821. package/selection/transformation.mjs +18 -45
  822. package/selection/utils.js +22 -70
  823. package/selection/utils.mjs +22 -47
  824. package/shortcuts/context.js +23 -78
  825. package/shortcuts/context.mjs +23 -55
  826. package/shortcuts/index.js +0 -2
  827. package/shortcuts/keyObserver.js +4 -17
  828. package/shortcuts/keyObserver.mjs +4 -12
  829. package/shortcuts/manager.js +16 -36
  830. package/shortcuts/manager.mjs +16 -33
  831. package/shortcuts/recorder.js +9 -40
  832. package/shortcuts/recorder.mjs +9 -31
  833. package/shortcuts/utils.js +5 -20
  834. package/shortcuts/utils.mjs +5 -6
  835. package/tableView.js +100 -270
  836. package/tableView.mjs +100 -248
  837. package/translations/changesObservable/observable.js +5 -54
  838. package/translations/changesObservable/observable.mjs +12 -51
  839. package/translations/changesObservable/observer.js +4 -32
  840. package/translations/changesObservable/observer.mjs +9 -29
  841. package/translations/changesObservable/utils.js +1 -5
  842. package/translations/changesObservable/utils.mjs +1 -4
  843. package/translations/index.js +0 -11
  844. package/translations/indexMapper.js +68 -156
  845. package/translations/indexMapper.mjs +68 -123
  846. package/translations/mapCollections/aggregatedCollection.js +9 -51
  847. package/translations/mapCollections/aggregatedCollection.mjs +12 -41
  848. package/translations/mapCollections/index.js +0 -7
  849. package/translations/mapCollections/mapCollection.js +10 -33
  850. package/translations/mapCollections/mapCollection.mjs +10 -22
  851. package/translations/maps/hidingMap.js +2 -35
  852. package/translations/maps/hidingMap.mjs +7 -28
  853. package/translations/maps/index.js +1 -24
  854. package/translations/maps/index.mjs +1 -3
  855. package/translations/maps/indexMap.js +12 -34
  856. package/translations/maps/indexMap.mjs +16 -32
  857. package/translations/maps/indexesSequence.js +3 -41
  858. package/translations/maps/indexesSequence.mjs +9 -32
  859. package/translations/maps/linkedPhysicalIndexToValueMap.js +9 -78
  860. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +16 -59
  861. package/translations/maps/physicalIndexToValueMap.js +2 -39
  862. package/translations/maps/physicalIndexToValueMap.mjs +8 -31
  863. package/translations/maps/trimmingMap.js +2 -35
  864. package/translations/maps/trimmingMap.mjs +7 -28
  865. package/translations/maps/utils/actionsOnIndexes.js +1 -7
  866. package/translations/maps/utils/actionsOnIndexes.mjs +9 -12
  867. package/translations/maps/utils/index.js +0 -13
  868. package/translations/maps/utils/index.mjs +0 -3
  869. package/translations/maps/utils/indexesSequence.js +1 -24
  870. package/translations/maps/utils/indexesSequence.mjs +10 -19
  871. package/translations/maps/utils/physicallyIndexed.js +1 -27
  872. package/translations/maps/utils/physicallyIndexed.mjs +11 -21
  873. package/utils/dataStructures/linkedList.js +15 -56
  874. package/utils/dataStructures/linkedList.mjs +15 -54
  875. package/utils/dataStructures/priorityMap.js +8 -46
  876. package/utils/dataStructures/priorityMap.mjs +8 -29
  877. package/utils/dataStructures/queue.js +6 -17
  878. package/utils/dataStructures/queue.mjs +6 -16
  879. package/utils/dataStructures/stack.js +6 -17
  880. package/utils/dataStructures/stack.mjs +6 -16
  881. package/utils/dataStructures/tree.js +11 -75
  882. package/utils/dataStructures/tree.mjs +11 -54
  883. package/utils/dataStructures/uniqueMap.js +17 -56
  884. package/utils/dataStructures/uniqueMap.mjs +17 -42
  885. package/utils/dataStructures/uniqueSet.js +5 -32
  886. package/utils/dataStructures/uniqueSet.mjs +5 -19
  887. package/utils/ghostTable.js +33 -104
  888. package/utils/ghostTable.mjs +35 -92
  889. package/utils/interval.js +10 -37
  890. package/utils/interval.mjs +7 -29
  891. package/utils/parseTable.js +11 -92
  892. package/utils/parseTable.mjs +11 -62
  893. package/utils/rootInstance.js +3 -14
  894. package/utils/rootInstance.mjs +3 -3
  895. package/utils/samplesGenerator.js +15 -51
  896. package/utils/samplesGenerator.mjs +17 -44
  897. package/utils/staticRegister.js +6 -33
  898. package/utils/staticRegister.mjs +6 -19
  899. package/validators/autocompleteValidator/autocompleteValidator.js +2 -10
  900. package/validators/autocompleteValidator/autocompleteValidator.mjs +2 -8
  901. package/validators/autocompleteValidator/index.js +0 -2
  902. package/validators/dateValidator/dateValidator.js +2 -21
  903. package/validators/dateValidator/dateValidator.mjs +2 -11
  904. package/validators/dateValidator/index.js +0 -2
  905. package/validators/index.js +0 -11
  906. package/validators/index.mjs +3 -5
  907. package/validators/numericValidator/index.js +0 -2
  908. package/validators/numericValidator/numericValidator.js +1 -7
  909. package/validators/numericValidator/numericValidator.mjs +1 -3
  910. package/validators/registry.js +7 -16
  911. package/validators/registry.mjs +7 -14
  912. package/validators/timeValidator/index.js +0 -2
  913. package/validators/timeValidator/timeValidator.js +6 -18
  914. package/validators/timeValidator/timeValidator.mjs +8 -13
@@ -1,45 +1,24 @@
1
1
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
-
3
2
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
4
-
5
3
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
6
-
7
4
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
8
-
9
5
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
10
-
11
6
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
12
-
13
7
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
14
-
15
8
  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
16
-
17
9
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
18
-
19
10
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
20
-
21
11
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
22
-
23
12
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
24
-
25
13
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
26
-
27
14
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
28
-
29
15
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
30
-
31
16
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
32
-
33
17
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
34
-
35
18
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
36
-
37
19
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
38
-
39
20
  function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
40
-
41
21
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
42
-
43
22
  import "core-js/modules/es.array.find.js";
44
23
  import "core-js/modules/es.object.to-string.js";
45
24
  import "core-js/modules/es.array.reduce.js";
@@ -68,6 +47,7 @@ import { inherit, deepClone } from "../../helpers/object.mjs";
68
47
  import { align } from "../contextMenu/utils.mjs";
69
48
  var SHORTCUTS_GROUP = 'undoRedo';
70
49
  export var PLUGIN_KEY = 'undoRedo';
50
+
71
51
  /**
72
52
  * @description
73
53
  * Handsontable UndoRedo plugin allows to undo and redo certain actions done in the table.
@@ -81,7 +61,6 @@ export var PLUGIN_KEY = 'undoRedo';
81
61
  * @plugin UndoRedo
82
62
  * @param {Core} instance The Handsontable instance.
83
63
  */
84
-
85
64
  function UndoRedo(instance) {
86
65
  var plugin = this;
87
66
  this.instance = instance;
@@ -91,25 +70,19 @@ function UndoRedo(instance) {
91
70
  this.enabled = false;
92
71
  instance.addHook('afterChange', function (changes, source) {
93
72
  var _this = this;
94
-
95
73
  var changesLen = changes && changes.length;
96
-
97
74
  if (!changesLen) {
98
75
  return;
99
76
  }
100
-
101
77
  var hasDifferences = changes.find(function (change) {
102
78
  var _change = _slicedToArray(change, 4),
103
- oldValue = _change[2],
104
- newValue = _change[3];
105
-
79
+ oldValue = _change[2],
80
+ newValue = _change[3];
106
81
  return oldValue !== newValue;
107
82
  });
108
-
109
83
  if (!hasDifferences) {
110
84
  return;
111
85
  }
112
-
113
86
  var wrappedAction = function wrappedAction() {
114
87
  var clonedChanges = changes.reduce(function (arr, change) {
115
88
  arr.push(_toConsumableArray(change));
@@ -121,7 +94,6 @@ function UndoRedo(instance) {
121
94
  var selected = changesLen > 1 ? _this.getSelected() : [[clonedChanges[0][0], clonedChanges[0][1]]];
122
95
  return new UndoRedo.ChangeAction(clonedChanges, selected);
123
96
  };
124
-
125
97
  plugin.done(wrappedAction, source);
126
98
  });
127
99
  instance.addHook('afterCreateRow', function (index, amount, source) {
@@ -137,7 +109,6 @@ function UndoRedo(instance) {
137
109
  var removedData = deepClone(originalData.slice(physicalRowIndex, physicalRowIndex + amount));
138
110
  return new UndoRedo.RemoveRowAction(rowIndex, removedData, instance.getSettings().fixedRowsBottom, instance.getSettings().fixedRowsTop);
139
111
  };
140
-
141
112
  plugin.done(wrappedAction, source);
142
113
  });
143
114
  instance.addHook('afterCreateCol', function (index, amount, source) {
@@ -163,18 +134,15 @@ function UndoRedo(instance) {
163
134
  rangeEach(amount - 1, function (i) {
164
135
  indexes.push(instance.toPhysicalColumn(columnIndex + i));
165
136
  });
166
-
167
137
  if (Array.isArray(instance.getSettings().colHeaders)) {
168
138
  rangeEach(amount - 1, function (i) {
169
139
  headers.push(instance.getSettings().colHeaders[instance.toPhysicalColumn(columnIndex + i)] || null);
170
140
  });
171
141
  }
172
-
173
142
  var columnsMap = instance.columnIndexMapper.getIndexesSequence();
174
143
  var rowsMap = instance.rowIndexMapper.getIndexesSequence();
175
144
  return new UndoRedo.RemoveColumnAction(columnIndex, indexes, removedData, headers, columnsMap, rowsMap, instance.getSettings().fixedColumnsStart);
176
145
  };
177
-
178
146
  plugin.done(wrappedAction, source);
179
147
  });
180
148
  instance.addHook('beforeCellAlignment', function (stateBefore, range, type, alignment) {
@@ -191,7 +159,6 @@ function UndoRedo(instance) {
191
159
  if (rows === false) {
192
160
  return;
193
161
  }
194
-
195
162
  plugin.done(function () {
196
163
  return new UndoRedo.RowMoveAction(rows, finalIndex);
197
164
  });
@@ -200,7 +167,6 @@ function UndoRedo(instance) {
200
167
  if (auto) {
201
168
  return;
202
169
  }
203
-
204
170
  plugin.done(function () {
205
171
  return new UndoRedo.MergeCellsAction(instance, cellRange);
206
172
  });
@@ -209,16 +175,17 @@ function UndoRedo(instance) {
209
175
  if (auto) {
210
176
  return;
211
177
  }
212
-
213
178
  plugin.done(function () {
214
179
  return new UndoRedo.UnmergeCellsAction(instance, cellRange);
215
180
  });
216
- }); // TODO: Why this callback is needed? One test doesn't pass after calling method right after plugin creation (outside the callback).
181
+ });
217
182
 
183
+ // TODO: Why this callback is needed? One test doesn't pass after calling method right after plugin creation (outside the callback).
218
184
  instance.addHook('afterInit', function () {
219
185
  plugin.init();
220
186
  });
221
187
  }
188
+
222
189
  /**
223
190
  * Stash information about performed actions.
224
191
  *
@@ -231,26 +198,19 @@ function UndoRedo(instance) {
231
198
  * @param {Function} wrappedAction The action descriptor wrapped in a closure.
232
199
  * @param {string} [source] Source of the action. It is defined just for more general actions (not related to plugins).
233
200
  */
234
-
235
-
236
201
  UndoRedo.prototype.done = function (wrappedAction, source) {
237
202
  if (this.ignoreNewActions) {
238
203
  return;
239
204
  }
240
-
241
205
  var isBlockedByDefault = source === 'UndoRedo.undo' || source === 'UndoRedo.redo' || source === 'auto';
242
-
243
206
  if (isBlockedByDefault) {
244
207
  return;
245
208
  }
246
-
247
209
  var doneActionsCopy = this.doneActions.slice();
248
210
  var continueAction = this.instance.runHooks('beforeUndoStackChange', doneActionsCopy, source);
249
-
250
211
  if (continueAction === false) {
251
212
  return;
252
213
  }
253
-
254
214
  var newAction = wrappedAction();
255
215
  var undoneActionsCopy = this.undoneActions.slice();
256
216
  this.doneActions.push(newAction);
@@ -259,6 +219,7 @@ UndoRedo.prototype.done = function (wrappedAction, source) {
259
219
  this.undoneActions.length = 0;
260
220
  this.instance.runHooks('afterRedoStackChange', undoneActionsCopy, this.undoneActions.slice());
261
221
  };
222
+
262
223
  /**
263
224
  * Undo the last action performed to the table.
264
225
  *
@@ -271,8 +232,6 @@ UndoRedo.prototype.done = function (wrappedAction, source) {
271
232
  * @fires Hooks#beforeUndo
272
233
  * @fires Hooks#afterUndo
273
234
  */
274
-
275
-
276
235
  UndoRedo.prototype.undo = function () {
277
236
  if (this.isUndoAvailable()) {
278
237
  var doneActionsCopy = this.doneActions.slice();
@@ -281,11 +240,9 @@ UndoRedo.prototype.undo = function () {
281
240
  this.instance.runHooks('afterUndoStackChange', doneActionsCopy, this.doneActions.slice());
282
241
  var actionClone = deepClone(action);
283
242
  var continueAction = this.instance.runHooks('beforeUndo', actionClone);
284
-
285
243
  if (continueAction === false) {
286
244
  return;
287
245
  }
288
-
289
246
  this.ignoreNewActions = true;
290
247
  var that = this;
291
248
  var undoneActionsCopy = this.undoneActions.slice();
@@ -298,6 +255,7 @@ UndoRedo.prototype.undo = function () {
298
255
  this.instance.runHooks('afterUndo', actionClone);
299
256
  }
300
257
  };
258
+
301
259
  /**
302
260
  * Redo the previous action performed to the table (used to reverse an undo).
303
261
  *
@@ -310,8 +268,6 @@ UndoRedo.prototype.undo = function () {
310
268
  * @fires Hooks#beforeRedo
311
269
  * @fires Hooks#afterRedo
312
270
  */
313
-
314
-
315
271
  UndoRedo.prototype.redo = function () {
316
272
  if (this.isRedoAvailable()) {
317
273
  var undoneActionsCopy = this.undoneActions.slice();
@@ -320,11 +276,9 @@ UndoRedo.prototype.redo = function () {
320
276
  this.instance.runHooks('afterRedoStackChange', undoneActionsCopy, this.undoneActions.slice());
321
277
  var actionClone = deepClone(action);
322
278
  var continueAction = this.instance.runHooks('beforeRedo', actionClone);
323
-
324
279
  if (continueAction === false) {
325
280
  return;
326
281
  }
327
-
328
282
  this.ignoreNewActions = true;
329
283
  var that = this;
330
284
  var doneActionsCopy = this.doneActions.slice();
@@ -337,6 +291,7 @@ UndoRedo.prototype.redo = function () {
337
291
  this.instance.runHooks('afterRedo', actionClone);
338
292
  }
339
293
  };
294
+
340
295
  /**
341
296
  * Checks if undo action is available.
342
297
  *
@@ -344,11 +299,10 @@ UndoRedo.prototype.redo = function () {
344
299
  * @memberof UndoRedo#
345
300
  * @returns {boolean} Return `true` if undo can be performed, `false` otherwise.
346
301
  */
347
-
348
-
349
302
  UndoRedo.prototype.isUndoAvailable = function () {
350
303
  return this.doneActions.length > 0;
351
304
  };
305
+
352
306
  /**
353
307
  * Checks if redo action is available.
354
308
  *
@@ -356,23 +310,21 @@ UndoRedo.prototype.isUndoAvailable = function () {
356
310
  * @memberof UndoRedo#
357
311
  * @returns {boolean} Return `true` if redo can be performed, `false` otherwise.
358
312
  */
359
-
360
-
361
313
  UndoRedo.prototype.isRedoAvailable = function () {
362
314
  return this.undoneActions.length > 0;
363
315
  };
316
+
364
317
  /**
365
318
  * Clears undo history.
366
319
  *
367
320
  * @function clear
368
321
  * @memberof UndoRedo#
369
322
  */
370
-
371
-
372
323
  UndoRedo.prototype.clear = function () {
373
324
  this.doneActions.length = 0;
374
325
  this.undoneActions.length = 0;
375
326
  };
327
+
376
328
  /**
377
329
  * Checks if the plugin is enabled.
378
330
  *
@@ -380,69 +332,60 @@ UndoRedo.prototype.clear = function () {
380
332
  * @memberof UndoRedo#
381
333
  * @returns {boolean}
382
334
  */
383
-
384
-
385
335
  UndoRedo.prototype.isEnabled = function () {
386
336
  return this.enabled;
387
337
  };
338
+
388
339
  /**
389
340
  * Enables the plugin.
390
341
  *
391
342
  * @function enable
392
343
  * @memberof UndoRedo#
393
344
  */
394
-
395
-
396
345
  UndoRedo.prototype.enable = function () {
397
346
  if (this.isEnabled()) {
398
347
  return;
399
348
  }
400
-
401
349
  var hot = this.instance;
402
350
  this.enabled = true;
403
351
  exposeUndoRedoMethods(hot);
404
352
  this.registerShortcuts();
405
353
  hot.addHook('afterChange', onAfterChange);
406
354
  };
355
+
407
356
  /**
408
357
  * Disables the plugin.
409
358
  *
410
359
  * @function disable
411
360
  * @memberof UndoRedo#
412
361
  */
413
-
414
-
415
362
  UndoRedo.prototype.disable = function () {
416
363
  if (!this.isEnabled()) {
417
364
  return;
418
365
  }
419
-
420
366
  var hot = this.instance;
421
367
  this.enabled = false;
422
368
  removeExposedUndoRedoMethods(hot);
423
369
  this.unregisterShortcuts();
424
370
  hot.removeHook('afterChange', onAfterChange);
425
371
  };
372
+
426
373
  /**
427
374
  * Destroys the instance.
428
375
  *
429
376
  * @function destroy
430
377
  * @memberof UndoRedo#
431
378
  */
432
-
433
-
434
379
  UndoRedo.prototype.destroy = function () {
435
380
  this.clear();
436
381
  this.instance = null;
437
382
  this.doneActions = null;
438
383
  this.undoneActions = null;
439
384
  };
440
-
441
385
  UndoRedo.Action = function () {};
442
-
443
386
  UndoRedo.Action.prototype.undo = function () {};
444
-
445
387
  UndoRedo.Action.prototype.redo = function () {};
388
+
446
389
  /**
447
390
  * Change action.
448
391
  *
@@ -450,61 +393,48 @@ UndoRedo.Action.prototype.redo = function () {};
450
393
  * @param {Array} changes 2D array containing information about each of the edited cells.
451
394
  * @param {number[]} selected The cell selection.
452
395
  */
453
-
454
-
455
396
  UndoRedo.ChangeAction = function (changes, selected) {
456
397
  this.changes = changes;
457
398
  this.selected = selected;
458
399
  this.actionType = 'change';
459
400
  };
460
-
461
401
  inherit(UndoRedo.ChangeAction, UndoRedo.Action);
462
-
463
402
  UndoRedo.ChangeAction.prototype.undo = function (instance, undoneCallback) {
464
403
  var data = deepClone(this.changes);
465
404
  var emptyRowsAtTheEnd = instance.countEmptyRows(true);
466
405
  var emptyColsAtTheEnd = instance.countEmptyCols(true);
467
-
468
406
  for (var i = 0, len = data.length; i < len; i++) {
469
407
  data[i].splice(3, 1);
470
408
  }
471
-
472
409
  instance.addHookOnce('afterChange', undoneCallback);
473
410
  instance.setDataAtCell(data, null, null, 'UndoRedo.undo');
474
-
475
411
  for (var _i2 = 0, _len = data.length; _i2 < _len; _i2++) {
476
412
  var _data$_i = _slicedToArray(data[_i2], 2),
477
- row = _data$_i[0],
478
- column = _data$_i[1];
479
-
413
+ row = _data$_i[0],
414
+ column = _data$_i[1];
480
415
  if (instance.getSettings().minSpareRows && row + 1 + instance.getSettings().minSpareRows === instance.countRows() && emptyRowsAtTheEnd === instance.getSettings().minSpareRows) {
481
416
  instance.alter('remove_row', parseInt(row + 1, 10), instance.getSettings().minSpareRows);
482
417
  instance.undoRedo.doneActions.pop();
483
418
  }
484
-
485
419
  if (instance.getSettings().minSpareCols && column + 1 + instance.getSettings().minSpareCols === instance.countCols() && emptyColsAtTheEnd === instance.getSettings().minSpareCols) {
486
420
  instance.alter('remove_col', parseInt(column + 1, 10), instance.getSettings().minSpareCols);
487
421
  instance.undoRedo.doneActions.pop();
488
422
  }
489
423
  }
490
-
491
424
  instance.selectCells(this.selected, false, false);
492
425
  };
493
-
494
426
  UndoRedo.ChangeAction.prototype.redo = function (instance, onFinishCallback) {
495
427
  var data = deepClone(this.changes);
496
-
497
428
  for (var i = 0, len = data.length; i < len; i++) {
498
429
  data[i].splice(2, 1);
499
430
  }
500
-
501
431
  instance.addHookOnce('afterChange', onFinishCallback);
502
432
  instance.setDataAtCell(data, null, null, 'UndoRedo.redo');
503
-
504
433
  if (this.selected) {
505
434
  instance.selectCells(this.selected, false, false);
506
435
  }
507
436
  };
437
+
508
438
  /**
509
439
  * Create row action.
510
440
  *
@@ -512,20 +442,15 @@ UndoRedo.ChangeAction.prototype.redo = function (instance, onFinishCallback) {
512
442
  * @param {number} index The visual row index.
513
443
  * @param {number} amount The number of created rows.
514
444
  */
515
-
516
-
517
445
  UndoRedo.CreateRowAction = function (index, amount) {
518
446
  this.index = index;
519
447
  this.amount = amount;
520
448
  this.actionType = 'insert_row';
521
449
  };
522
-
523
450
  inherit(UndoRedo.CreateRowAction, UndoRedo.Action);
524
-
525
451
  UndoRedo.CreateRowAction.prototype.undo = function (instance, undoneCallback) {
526
452
  var rowCount = instance.countRows();
527
453
  var minSpareRows = instance.getSettings().minSpareRows;
528
-
529
454
  if (this.index >= rowCount && this.index - minSpareRows < rowCount) {
530
455
  this.index -= minSpareRows; // work around the situation where the needed row was removed due to an 'undo' of a made change
531
456
  }
@@ -533,11 +458,11 @@ UndoRedo.CreateRowAction.prototype.undo = function (instance, undoneCallback) {
533
458
  instance.addHookOnce('afterRemoveRow', undoneCallback);
534
459
  instance.alter('remove_row', this.index, this.amount, 'UndoRedo.undo');
535
460
  };
536
-
537
461
  UndoRedo.CreateRowAction.prototype.redo = function (instance, redoneCallback) {
538
462
  instance.addHookOnce('afterCreateRow', redoneCallback);
539
- instance.alter('insert_row', this.index, this.amount, 'UndoRedo.redo');
463
+ instance.alter('insert_row_above', this.index, this.amount, 'UndoRedo.redo');
540
464
  };
465
+
541
466
  /**
542
467
  * Remove row action.
543
468
  *
@@ -547,8 +472,6 @@ UndoRedo.CreateRowAction.prototype.redo = function (instance, redoneCallback) {
547
472
  * @param {number} fixedRowsBottom Number of fixed rows on the bottom. Remove row action change it sometimes.
548
473
  * @param {number} fixedRowsTop Number of fixed rows on the top. Remove row action change it sometimes.
549
474
  */
550
-
551
-
552
475
  UndoRedo.RemoveRowAction = function (index, data, fixedRowsBottom, fixedRowsTop) {
553
476
  this.index = index;
554
477
  this.data = data;
@@ -556,23 +479,22 @@ UndoRedo.RemoveRowAction = function (index, data, fixedRowsBottom, fixedRowsTop)
556
479
  this.fixedRowsBottom = fixedRowsBottom;
557
480
  this.fixedRowsTop = fixedRowsTop;
558
481
  };
559
-
560
482
  inherit(UndoRedo.RemoveRowAction, UndoRedo.Action);
561
-
562
483
  UndoRedo.RemoveRowAction.prototype.undo = function (instance, undoneCallback) {
563
- var settings = instance.getSettings(); // Changing by the reference as `updateSettings` doesn't work the best.
484
+ var settings = instance.getSettings();
564
485
 
486
+ // Changing by the reference as `updateSettings` doesn't work the best.
565
487
  settings.fixedRowsBottom = this.fixedRowsBottom;
566
488
  settings.fixedRowsTop = this.fixedRowsTop;
567
- instance.alter('insert_row', this.index, this.data.length, 'UndoRedo.undo');
489
+ instance.alter('insert_row_above', this.index, this.data.length, 'UndoRedo.undo');
568
490
  instance.addHookOnce('afterViewRender', undoneCallback);
569
491
  instance.populateFromArray(this.index, 0, this.data, void 0, void 0, 'UndoRedo.undo');
570
492
  };
571
-
572
493
  UndoRedo.RemoveRowAction.prototype.redo = function (instance, redoneCallback) {
573
494
  instance.addHookOnce('afterRemoveRow', redoneCallback);
574
495
  instance.alter('remove_row', this.index, this.data.length, 'UndoRedo.redo');
575
496
  };
497
+
576
498
  /**
577
499
  * Create column action.
578
500
  *
@@ -580,25 +502,21 @@ UndoRedo.RemoveRowAction.prototype.redo = function (instance, redoneCallback) {
580
502
  * @param {number} index The visual column index.
581
503
  * @param {number} amount The number of created columns.
582
504
  */
583
-
584
-
585
505
  UndoRedo.CreateColumnAction = function (index, amount) {
586
506
  this.index = index;
587
507
  this.amount = amount;
588
508
  this.actionType = 'insert_col';
589
509
  };
590
-
591
510
  inherit(UndoRedo.CreateColumnAction, UndoRedo.Action);
592
-
593
511
  UndoRedo.CreateColumnAction.prototype.undo = function (instance, undoneCallback) {
594
512
  instance.addHookOnce('afterRemoveCol', undoneCallback);
595
513
  instance.alter('remove_col', this.index, this.amount, 'UndoRedo.undo');
596
514
  };
597
-
598
515
  UndoRedo.CreateColumnAction.prototype.redo = function (instance, redoneCallback) {
599
516
  instance.addHookOnce('afterCreateCol', redoneCallback);
600
- instance.alter('insert_col', this.index, this.amount, 'UndoRedo.redo');
517
+ instance.alter('insert_col_start', this.index, this.amount, 'UndoRedo.redo');
601
518
  };
519
+
602
520
  /**
603
521
  * Remove column action.
604
522
  *
@@ -611,8 +529,6 @@ UndoRedo.CreateColumnAction.prototype.redo = function (instance, redoneCallback)
611
529
  * @param {number[]} rowPositions The row position.
612
530
  * @param {number} fixedColumnsStart Number of fixed columns on the left. Remove column action change it sometimes.
613
531
  */
614
-
615
-
616
532
  UndoRedo.RemoveColumnAction = function (index, indexes, data, headers, columnPositions, rowPositions, fixedColumnsStart) {
617
533
  // eslint-disable-line max-len
618
534
  this.index = index;
@@ -625,31 +541,25 @@ UndoRedo.RemoveColumnAction = function (index, indexes, data, headers, columnPos
625
541
  this.actionType = 'remove_col';
626
542
  this.fixedColumnsStart = fixedColumnsStart;
627
543
  };
628
-
629
544
  inherit(UndoRedo.RemoveColumnAction, UndoRedo.Action);
630
-
631
545
  UndoRedo.RemoveColumnAction.prototype.undo = function (instance, undoneCallback) {
632
546
  var _this2 = this;
547
+ var settings = instance.getSettings();
633
548
 
634
- var settings = instance.getSettings(); // Changing by the reference as `updateSettings` doesn't work the best.
635
-
549
+ // Changing by the reference as `updateSettings` doesn't work the best.
636
550
  settings.fixedColumnsStart = this.fixedColumnsStart;
637
551
  var ascendingIndexes = this.indexes.slice(0).sort();
638
-
639
552
  var sortByIndexes = function sortByIndexes(elem, j, arr) {
640
553
  return arr[_this2.indexes.indexOf(ascendingIndexes[j])];
641
554
  };
642
-
643
555
  var removedDataLength = this.data.length;
644
556
  var sortedData = [];
645
-
646
557
  for (var rowIndex = 0; rowIndex < removedDataLength; rowIndex++) {
647
558
  sortedData.push(arrayMap(this.data[rowIndex], sortByIndexes));
648
559
  }
649
-
650
560
  var sortedHeaders = arrayMap(this.headers, sortByIndexes);
651
561
  var changes = [];
652
- instance.alter('insert_col', this.indexes[0], this.indexes.length, 'UndoRedo.undo');
562
+ instance.alter('insert_col_start', this.indexes[0], this.indexes.length, 'UndoRedo.undo');
653
563
  arrayEach(instance.getSourceDataArray(), function (rowData, rowIndex) {
654
564
  arrayEach(ascendingIndexes, function (changedIndex, contiquesIndex) {
655
565
  rowData[changedIndex] = sortedData[rowIndex][contiquesIndex];
@@ -658,13 +568,11 @@ UndoRedo.RemoveColumnAction.prototype.undo = function (instance, undoneCallback)
658
568
  });
659
569
  instance.setSourceDataAtCell(changes, void 0, void 0, 'UndoRedo.undo');
660
570
  instance.columnIndexMapper.insertIndexes(ascendingIndexes[0], ascendingIndexes.length);
661
-
662
571
  if (typeof this.headers !== 'undefined') {
663
572
  arrayEach(sortedHeaders, function (headerData, columnIndex) {
664
573
  instance.getSettings().colHeaders[ascendingIndexes[columnIndex]] = headerData;
665
574
  });
666
575
  }
667
-
668
576
  instance.batchExecution(function () {
669
577
  // Restore row sequence in a case when all columns are removed. the original
670
578
  // row sequence is lost in that case.
@@ -674,11 +582,11 @@ UndoRedo.RemoveColumnAction.prototype.undo = function (instance, undoneCallback)
674
582
  instance.addHookOnce('afterViewRender', undoneCallback);
675
583
  instance.render();
676
584
  };
677
-
678
585
  UndoRedo.RemoveColumnAction.prototype.redo = function (instance, redoneCallback) {
679
586
  instance.addHookOnce('afterRemoveCol', redoneCallback);
680
587
  instance.alter('remove_col', this.index, this.amount, 'UndoRedo.redo');
681
588
  };
589
+
682
590
  /**
683
591
  * Cell alignment action.
684
592
  *
@@ -688,18 +596,14 @@ UndoRedo.RemoveColumnAction.prototype.redo = function (instance, redoneCallback)
688
596
  * @param {string} type The type of the alignment ("top", "left", "bottom" or "right").
689
597
  * @param {string} alignment The alignment CSS class.
690
598
  */
691
-
692
-
693
599
  UndoRedo.CellAlignmentAction = function (stateBefore, range, type, alignment) {
694
600
  this.stateBefore = stateBefore;
695
601
  this.range = range;
696
602
  this.type = type;
697
603
  this.alignment = alignment;
698
604
  };
699
-
700
605
  UndoRedo.CellAlignmentAction.prototype.undo = function (instance, undoneCallback) {
701
606
  var _this3 = this;
702
-
703
607
  arrayEach(this.range, function (range) {
704
608
  range.forAll(function (row, col) {
705
609
  // Alignment classes should only collected within cell ranges. We skip header coordinates.
@@ -711,7 +615,6 @@ UndoRedo.CellAlignmentAction.prototype.undo = function (instance, undoneCallback
711
615
  instance.addHookOnce('afterViewRender', undoneCallback);
712
616
  instance.render();
713
617
  };
714
-
715
618
  UndoRedo.CellAlignmentAction.prototype.redo = function (instance, undoneCallback) {
716
619
  align(this.range, this.type, this.alignment, function (row, col) {
717
620
  return instance.getCellMeta(row, col);
@@ -721,62 +624,49 @@ UndoRedo.CellAlignmentAction.prototype.redo = function (instance, undoneCallback
721
624
  instance.addHookOnce('afterViewRender', undoneCallback);
722
625
  instance.render();
723
626
  };
627
+
724
628
  /**
725
629
  * Filters action.
726
630
  *
727
631
  * @private
728
632
  * @param {Array} conditionsStack An array of the filter condition.
729
633
  */
730
-
731
-
732
634
  UndoRedo.FiltersAction = function (conditionsStack) {
733
635
  this.conditionsStack = conditionsStack;
734
636
  this.actionType = 'filter';
735
637
  };
736
-
737
638
  inherit(UndoRedo.FiltersAction, UndoRedo.Action);
738
-
739
639
  UndoRedo.FiltersAction.prototype.undo = function (instance, undoneCallback) {
740
640
  var filters = instance.getPlugin('filters');
741
641
  instance.addHookOnce('afterViewRender', undoneCallback);
742
642
  filters.conditionCollection.importAllConditions(this.conditionsStack.slice(0, this.conditionsStack.length - 1));
743
643
  filters.filter();
744
644
  };
745
-
746
645
  UndoRedo.FiltersAction.prototype.redo = function (instance, redoneCallback) {
747
646
  var filters = instance.getPlugin('filters');
748
647
  instance.addHookOnce('afterViewRender', redoneCallback);
749
648
  filters.conditionCollection.importAllConditions(this.conditionsStack);
750
649
  filters.filter();
751
650
  };
651
+
752
652
  /**
753
653
  * Merge Cells action.
754
654
  *
755
655
  * @util
756
656
  */
757
-
758
-
759
657
  var MergeCellsAction = /*#__PURE__*/function (_UndoRedo$Action) {
760
658
  _inherits(MergeCellsAction, _UndoRedo$Action);
761
-
762
659
  var _super = _createSuper(MergeCellsAction);
763
-
764
660
  function MergeCellsAction(instance, cellRange) {
765
661
  var _this4;
766
-
767
662
  _classCallCheck(this, MergeCellsAction);
768
-
769
663
  _this4 = _super.call(this);
770
664
  _this4.cellRange = cellRange;
771
-
772
665
  var topStartCorner = _this4.cellRange.getTopStartCorner();
773
-
774
666
  var bottomEndCorner = _this4.cellRange.getBottomEndCorner();
775
-
776
667
  _this4.rangeData = instance.getData(topStartCorner.row, topStartCorner.col, bottomEndCorner.row, bottomEndCorner.col);
777
668
  return _this4;
778
669
  }
779
-
780
670
  _createClass(MergeCellsAction, [{
781
671
  key: "undo",
782
672
  value: function undo(instance, undoneCallback) {
@@ -794,32 +684,25 @@ var MergeCellsAction = /*#__PURE__*/function (_UndoRedo$Action) {
794
684
  mergeCellsPlugin.mergeRange(this.cellRange);
795
685
  }
796
686
  }]);
797
-
798
687
  return MergeCellsAction;
799
688
  }(UndoRedo.Action);
800
-
801
689
  UndoRedo.MergeCellsAction = MergeCellsAction;
690
+
802
691
  /**
803
692
  * Unmerge Cells action.
804
693
  *
805
694
  * @util
806
695
  */
807
-
808
696
  var UnmergeCellsAction = /*#__PURE__*/function (_UndoRedo$Action2) {
809
697
  _inherits(UnmergeCellsAction, _UndoRedo$Action2);
810
-
811
698
  var _super2 = _createSuper(UnmergeCellsAction);
812
-
813
699
  function UnmergeCellsAction(instance, cellRange) {
814
700
  var _this5;
815
-
816
701
  _classCallCheck(this, UnmergeCellsAction);
817
-
818
702
  _this5 = _super2.call(this);
819
703
  _this5.cellRange = cellRange;
820
704
  return _this5;
821
705
  }
822
-
823
706
  _createClass(UnmergeCellsAction, [{
824
707
  key: "undo",
825
708
  value: function undo(instance, undoneCallback) {
@@ -836,11 +719,10 @@ var UnmergeCellsAction = /*#__PURE__*/function (_UndoRedo$Action2) {
836
719
  instance.render();
837
720
  }
838
721
  }]);
839
-
840
722
  return UnmergeCellsAction;
841
723
  }(UndoRedo.Action);
842
-
843
724
  UndoRedo.UnmergeCellsAction = UnmergeCellsAction;
725
+
844
726
  /**
845
727
  * ManualRowMove action.
846
728
  *
@@ -849,18 +731,14 @@ UndoRedo.UnmergeCellsAction = UnmergeCellsAction;
849
731
  * @param {number[]} rows An array with moved rows.
850
732
  * @param {number} finalIndex The destination index.
851
733
  */
852
-
853
734
  UndoRedo.RowMoveAction = function (rows, finalIndex) {
854
735
  this.rows = rows.slice();
855
736
  this.finalIndex = finalIndex;
856
737
  this.actionType = 'row_move';
857
738
  };
858
-
859
739
  inherit(UndoRedo.RowMoveAction, UndoRedo.Action);
860
-
861
740
  UndoRedo.RowMoveAction.prototype.undo = function (instance, undoneCallback) {
862
741
  var _this6 = this;
863
-
864
742
  var manualRowMove = instance.getPlugin('manualRowMove');
865
743
  var copyOfRows = [].concat(this.rows);
866
744
  var rowsMovedUp = copyOfRows.filter(function (a) {
@@ -874,19 +752,18 @@ UndoRedo.RowMoveAction.prototype.undo = function (instance, undoneCallback) {
874
752
  }).concat(rowsMovedDown.sort(function (a, b) {
875
753
  return a - b;
876
754
  }));
877
- instance.addHookOnce('afterViewRender', undoneCallback); // Moving rows from those with higher indexes to those with lower indexes when action was performed from bottom to top
878
- // Moving rows from those with lower indexes to those with higher indexes when action was performed from top to bottom
755
+ instance.addHookOnce('afterViewRender', undoneCallback);
879
756
 
757
+ // Moving rows from those with higher indexes to those with lower indexes when action was performed from bottom to top
758
+ // Moving rows from those with lower indexes to those with higher indexes when action was performed from top to bottom
880
759
  for (var i = 0; i < allMovedRows.length; i += 1) {
881
760
  var newPhysicalRow = instance.toVisualRow(allMovedRows[i]);
882
761
  manualRowMove.moveRow(newPhysicalRow, allMovedRows[i]);
883
762
  }
884
-
885
763
  instance.render();
886
764
  instance.deselectCell();
887
765
  instance.selectRows(this.rows[0], this.rows[0] + this.rows.length - 1);
888
766
  };
889
-
890
767
  UndoRedo.RowMoveAction.prototype.redo = function (instance, redoneCallback) {
891
768
  var manualRowMove = instance.getPlugin('manualRowMove');
892
769
  instance.addHookOnce('afterViewRender', redoneCallback);
@@ -895,40 +772,34 @@ UndoRedo.RowMoveAction.prototype.redo = function (instance, redoneCallback) {
895
772
  instance.deselectCell();
896
773
  instance.selectRows(this.finalIndex, this.finalIndex + this.rows.length - 1);
897
774
  };
775
+
898
776
  /**
899
777
  * Enabling and disabling plugin and attaching its to an instance.
900
778
  *
901
779
  * @private
902
780
  */
903
-
904
-
905
781
  UndoRedo.prototype.init = function () {
906
782
  var settings = this.instance.getSettings().undo;
907
783
  var pluginEnabled = typeof settings === 'undefined' || settings;
908
-
909
784
  if (!this.instance.undoRedo) {
910
785
  this.instance.undoRedo = this;
911
786
  }
912
-
913
787
  if (pluginEnabled) {
914
788
  this.instance.undoRedo.enable();
915
789
  } else {
916
790
  this.instance.undoRedo.disable();
917
791
  }
918
792
  };
793
+
919
794
  /**
920
795
  * Registers shortcuts responsible for performing undo/redo.
921
796
  *
922
797
  * @private
923
798
  */
924
-
925
-
926
799
  UndoRedo.prototype.registerShortcuts = function () {
927
800
  var _this7 = this;
928
-
929
801
  var shortcutManager = this.instance.getShortcutManager();
930
802
  var gridContext = shortcutManager.getContext('grid');
931
-
932
803
  var runOnlyIf = function runOnlyIf(event) {
933
804
  return !event.altKey; // right ALT in some systems triggers ALT+CTR
934
805
  };
@@ -949,37 +820,33 @@ UndoRedo.prototype.registerShortcuts = function () {
949
820
  }
950
821
  }], config);
951
822
  };
823
+
952
824
  /**
953
825
  * Unregister shortcuts responsible for performing undo/redo.
954
826
  *
955
827
  * @private
956
828
  */
957
-
958
-
959
829
  UndoRedo.prototype.unregisterShortcuts = function () {
960
830
  var shortcutManager = this.instance.getShortcutManager();
961
831
  var gridContext = shortcutManager.getContext('grid');
962
832
  gridContext.removeShortcutsByGroup(SHORTCUTS_GROUP);
963
833
  };
834
+
964
835
  /**
965
836
  * @param {Array} changes 2D array containing information about each of the edited cells.
966
837
  * @param {string} source String that identifies source of hook call.
967
838
  * @returns {boolean}
968
839
  */
969
-
970
-
971
840
  function onAfterChange(changes, source) {
972
841
  var instance = this;
973
-
974
842
  if (source === 'loadData') {
975
843
  return instance.undoRedo.clear();
976
844
  }
977
845
  }
846
+
978
847
  /**
979
848
  * @param {Core} instance The Handsontable instance.
980
849
  */
981
-
982
-
983
850
  function exposeUndoRedoMethods(instance) {
984
851
  /**
985
852
  * {@link UndoRedo#undo}.
@@ -991,6 +858,7 @@ function exposeUndoRedoMethods(instance) {
991
858
  instance.undo = function () {
992
859
  return instance.undoRedo.undo();
993
860
  };
861
+
994
862
  /**
995
863
  * {@link UndoRedo#redo}.
996
864
  *
@@ -998,11 +866,10 @@ function exposeUndoRedoMethods(instance) {
998
866
  * @memberof! Core#
999
867
  * @returns {boolean}
1000
868
  */
1001
-
1002
-
1003
869
  instance.redo = function () {
1004
870
  return instance.undoRedo.redo();
1005
871
  };
872
+
1006
873
  /**
1007
874
  * {@link UndoRedo#isUndoAvailable}.
1008
875
  *
@@ -1010,11 +877,10 @@ function exposeUndoRedoMethods(instance) {
1010
877
  * @memberof! Core#
1011
878
  * @returns {boolean}
1012
879
  */
1013
-
1014
-
1015
880
  instance.isUndoAvailable = function () {
1016
881
  return instance.undoRedo.isUndoAvailable();
1017
882
  };
883
+
1018
884
  /**
1019
885
  * {@link UndoRedo#isRedoAvailable}.
1020
886
  *
@@ -1022,11 +888,10 @@ function exposeUndoRedoMethods(instance) {
1022
888
  * @memberof! Core#
1023
889
  * @returns {boolean}
1024
890
  */
1025
-
1026
-
1027
891
  instance.isRedoAvailable = function () {
1028
892
  return instance.undoRedo.isRedoAvailable();
1029
893
  };
894
+
1030
895
  /**
1031
896
  * {@link UndoRedo#clear}.
1032
897
  *
@@ -1034,17 +899,14 @@ function exposeUndoRedoMethods(instance) {
1034
899
  * @memberof! Core#
1035
900
  * @returns {boolean}
1036
901
  */
1037
-
1038
-
1039
902
  instance.clearUndo = function () {
1040
903
  return instance.undoRedo.clear();
1041
904
  };
1042
905
  }
906
+
1043
907
  /**
1044
908
  * @param {Core} instance The Handsontable instance.
1045
909
  */
1046
-
1047
-
1048
910
  function removeExposedUndoRedoMethods(instance) {
1049
911
  delete instance.undo;
1050
912
  delete instance.redo;
@@ -1052,11 +914,9 @@ function removeExposedUndoRedoMethods(instance) {
1052
914
  delete instance.isRedoAvailable;
1053
915
  delete instance.clearUndo;
1054
916
  }
1055
-
1056
917
  var hook = Hooks.getSingleton();
1057
918
  hook.add('afterUpdateSettings', function () {
1058
919
  var _this$getPlugin;
1059
-
1060
920
  (_this$getPlugin = this.getPlugin('undoRedo')) === null || _this$getPlugin === void 0 ? void 0 : _this$getPlugin.init();
1061
921
  });
1062
922
  hook.register('beforeUndo');