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,106 +1,58 @@
1
1
  "use strict";
2
2
 
3
3
  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); }
4
-
5
4
  require("core-js/modules/es.symbol.js");
6
-
7
5
  require("core-js/modules/es.symbol.description.js");
8
-
9
6
  require("core-js/modules/es.symbol.iterator.js");
10
-
11
7
  require("core-js/modules/es.array.iterator.js");
12
-
13
8
  require("core-js/modules/es.string.iterator.js");
14
-
15
9
  require("core-js/modules/web.dom-collections.iterator.js");
16
-
17
10
  require("core-js/modules/es.function.name.js");
18
-
19
11
  require("core-js/modules/es.array.from.js");
20
-
21
12
  require("core-js/modules/es.regexp.exec.js");
22
-
23
13
  require("core-js/modules/es.object.set-prototype-of.js");
24
-
25
14
  require("core-js/modules/es.object.get-prototype-of.js");
26
-
27
15
  require("core-js/modules/es.reflect.construct.js");
28
-
29
16
  exports.__esModule = true;
30
17
  exports.default = exports.PLUGIN_KEY = void 0;
31
-
32
18
  require("core-js/modules/es.array.find.js");
33
-
34
19
  require("core-js/modules/es.object.to-string.js");
35
-
36
20
  require("core-js/modules/es.array.reduce.js");
37
-
38
21
  require("core-js/modules/es.array.slice.js");
39
-
40
22
  require("core-js/modules/es.array.splice.js");
41
-
42
23
  require("core-js/modules/es.array.sort.js");
43
-
44
24
  require("core-js/modules/es.array.index-of.js");
45
-
46
25
  require("core-js/modules/es.array.filter.js");
47
-
48
26
  require("core-js/modules/es.array.concat.js");
49
-
50
27
  var _pluginHooks = _interopRequireDefault(require("../../pluginHooks"));
51
-
52
28
  var _array = require("../../helpers/array");
53
-
54
29
  var _number = require("../../helpers/number");
55
-
56
30
  var _object = require("../../helpers/object");
57
-
58
31
  var _utils = require("../contextMenu/utils");
59
-
60
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
61
-
62
33
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
63
-
64
34
  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); } }
65
-
66
35
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
67
-
68
36
  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); }
69
-
70
37
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
71
-
72
38
  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); }; }
73
-
74
39
  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); }
75
-
76
40
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
77
-
78
41
  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; } }
79
-
80
42
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
81
-
82
43
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
83
-
84
44
  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."); }
85
-
86
45
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
87
-
88
46
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
89
-
90
47
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
91
-
92
48
  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."); }
93
-
94
49
  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); }
95
-
96
50
  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; }
97
-
98
51
  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; }
99
-
100
52
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
101
-
102
53
  var SHORTCUTS_GROUP = 'undoRedo';
103
54
  var PLUGIN_KEY = 'undoRedo';
55
+
104
56
  /**
105
57
  * @description
106
58
  * Handsontable UndoRedo plugin allows to undo and redo certain actions done in the table.
@@ -114,9 +66,7 @@ var PLUGIN_KEY = 'undoRedo';
114
66
  * @plugin UndoRedo
115
67
  * @param {Core} instance The Handsontable instance.
116
68
  */
117
-
118
69
  exports.PLUGIN_KEY = PLUGIN_KEY;
119
-
120
70
  function UndoRedo(instance) {
121
71
  var plugin = this;
122
72
  this.instance = instance;
@@ -126,25 +76,19 @@ function UndoRedo(instance) {
126
76
  this.enabled = false;
127
77
  instance.addHook('afterChange', function (changes, source) {
128
78
  var _this = this;
129
-
130
79
  var changesLen = changes && changes.length;
131
-
132
80
  if (!changesLen) {
133
81
  return;
134
82
  }
135
-
136
83
  var hasDifferences = changes.find(function (change) {
137
84
  var _change = _slicedToArray(change, 4),
138
- oldValue = _change[2],
139
- newValue = _change[3];
140
-
85
+ oldValue = _change[2],
86
+ newValue = _change[3];
141
87
  return oldValue !== newValue;
142
88
  });
143
-
144
89
  if (!hasDifferences) {
145
90
  return;
146
91
  }
147
-
148
92
  var wrappedAction = function wrappedAction() {
149
93
  var clonedChanges = changes.reduce(function (arr, change) {
150
94
  arr.push(_toConsumableArray(change));
@@ -156,7 +100,6 @@ function UndoRedo(instance) {
156
100
  var selected = changesLen > 1 ? _this.getSelected() : [[clonedChanges[0][0], clonedChanges[0][1]]];
157
101
  return new UndoRedo.ChangeAction(clonedChanges, selected);
158
102
  };
159
-
160
103
  plugin.done(wrappedAction, source);
161
104
  });
162
105
  instance.addHook('afterCreateRow', function (index, amount, source) {
@@ -172,7 +115,6 @@ function UndoRedo(instance) {
172
115
  var removedData = (0, _object.deepClone)(originalData.slice(physicalRowIndex, physicalRowIndex + amount));
173
116
  return new UndoRedo.RemoveRowAction(rowIndex, removedData, instance.getSettings().fixedRowsBottom, instance.getSettings().fixedRowsTop);
174
117
  };
175
-
176
118
  plugin.done(wrappedAction, source);
177
119
  });
178
120
  instance.addHook('afterCreateCol', function (index, amount, source) {
@@ -198,18 +140,15 @@ function UndoRedo(instance) {
198
140
  (0, _number.rangeEach)(amount - 1, function (i) {
199
141
  indexes.push(instance.toPhysicalColumn(columnIndex + i));
200
142
  });
201
-
202
143
  if (Array.isArray(instance.getSettings().colHeaders)) {
203
144
  (0, _number.rangeEach)(amount - 1, function (i) {
204
145
  headers.push(instance.getSettings().colHeaders[instance.toPhysicalColumn(columnIndex + i)] || null);
205
146
  });
206
147
  }
207
-
208
148
  var columnsMap = instance.columnIndexMapper.getIndexesSequence();
209
149
  var rowsMap = instance.rowIndexMapper.getIndexesSequence();
210
150
  return new UndoRedo.RemoveColumnAction(columnIndex, indexes, removedData, headers, columnsMap, rowsMap, instance.getSettings().fixedColumnsStart);
211
151
  };
212
-
213
152
  plugin.done(wrappedAction, source);
214
153
  });
215
154
  instance.addHook('beforeCellAlignment', function (stateBefore, range, type, alignment) {
@@ -226,7 +165,6 @@ function UndoRedo(instance) {
226
165
  if (rows === false) {
227
166
  return;
228
167
  }
229
-
230
168
  plugin.done(function () {
231
169
  return new UndoRedo.RowMoveAction(rows, finalIndex);
232
170
  });
@@ -235,7 +173,6 @@ function UndoRedo(instance) {
235
173
  if (auto) {
236
174
  return;
237
175
  }
238
-
239
176
  plugin.done(function () {
240
177
  return new UndoRedo.MergeCellsAction(instance, cellRange);
241
178
  });
@@ -244,16 +181,17 @@ function UndoRedo(instance) {
244
181
  if (auto) {
245
182
  return;
246
183
  }
247
-
248
184
  plugin.done(function () {
249
185
  return new UndoRedo.UnmergeCellsAction(instance, cellRange);
250
186
  });
251
- }); // TODO: Why this callback is needed? One test doesn't pass after calling method right after plugin creation (outside the callback).
187
+ });
252
188
 
189
+ // TODO: Why this callback is needed? One test doesn't pass after calling method right after plugin creation (outside the callback).
253
190
  instance.addHook('afterInit', function () {
254
191
  plugin.init();
255
192
  });
256
193
  }
194
+
257
195
  /**
258
196
  * Stash information about performed actions.
259
197
  *
@@ -266,26 +204,19 @@ function UndoRedo(instance) {
266
204
  * @param {Function} wrappedAction The action descriptor wrapped in a closure.
267
205
  * @param {string} [source] Source of the action. It is defined just for more general actions (not related to plugins).
268
206
  */
269
-
270
-
271
207
  UndoRedo.prototype.done = function (wrappedAction, source) {
272
208
  if (this.ignoreNewActions) {
273
209
  return;
274
210
  }
275
-
276
211
  var isBlockedByDefault = source === 'UndoRedo.undo' || source === 'UndoRedo.redo' || source === 'auto';
277
-
278
212
  if (isBlockedByDefault) {
279
213
  return;
280
214
  }
281
-
282
215
  var doneActionsCopy = this.doneActions.slice();
283
216
  var continueAction = this.instance.runHooks('beforeUndoStackChange', doneActionsCopy, source);
284
-
285
217
  if (continueAction === false) {
286
218
  return;
287
219
  }
288
-
289
220
  var newAction = wrappedAction();
290
221
  var undoneActionsCopy = this.undoneActions.slice();
291
222
  this.doneActions.push(newAction);
@@ -294,6 +225,7 @@ UndoRedo.prototype.done = function (wrappedAction, source) {
294
225
  this.undoneActions.length = 0;
295
226
  this.instance.runHooks('afterRedoStackChange', undoneActionsCopy, this.undoneActions.slice());
296
227
  };
228
+
297
229
  /**
298
230
  * Undo the last action performed to the table.
299
231
  *
@@ -306,8 +238,6 @@ UndoRedo.prototype.done = function (wrappedAction, source) {
306
238
  * @fires Hooks#beforeUndo
307
239
  * @fires Hooks#afterUndo
308
240
  */
309
-
310
-
311
241
  UndoRedo.prototype.undo = function () {
312
242
  if (this.isUndoAvailable()) {
313
243
  var doneActionsCopy = this.doneActions.slice();
@@ -316,11 +246,9 @@ UndoRedo.prototype.undo = function () {
316
246
  this.instance.runHooks('afterUndoStackChange', doneActionsCopy, this.doneActions.slice());
317
247
  var actionClone = (0, _object.deepClone)(action);
318
248
  var continueAction = this.instance.runHooks('beforeUndo', actionClone);
319
-
320
249
  if (continueAction === false) {
321
250
  return;
322
251
  }
323
-
324
252
  this.ignoreNewActions = true;
325
253
  var that = this;
326
254
  var undoneActionsCopy = this.undoneActions.slice();
@@ -333,6 +261,7 @@ UndoRedo.prototype.undo = function () {
333
261
  this.instance.runHooks('afterUndo', actionClone);
334
262
  }
335
263
  };
264
+
336
265
  /**
337
266
  * Redo the previous action performed to the table (used to reverse an undo).
338
267
  *
@@ -345,8 +274,6 @@ UndoRedo.prototype.undo = function () {
345
274
  * @fires Hooks#beforeRedo
346
275
  * @fires Hooks#afterRedo
347
276
  */
348
-
349
-
350
277
  UndoRedo.prototype.redo = function () {
351
278
  if (this.isRedoAvailable()) {
352
279
  var undoneActionsCopy = this.undoneActions.slice();
@@ -355,11 +282,9 @@ UndoRedo.prototype.redo = function () {
355
282
  this.instance.runHooks('afterRedoStackChange', undoneActionsCopy, this.undoneActions.slice());
356
283
  var actionClone = (0, _object.deepClone)(action);
357
284
  var continueAction = this.instance.runHooks('beforeRedo', actionClone);
358
-
359
285
  if (continueAction === false) {
360
286
  return;
361
287
  }
362
-
363
288
  this.ignoreNewActions = true;
364
289
  var that = this;
365
290
  var doneActionsCopy = this.doneActions.slice();
@@ -372,6 +297,7 @@ UndoRedo.prototype.redo = function () {
372
297
  this.instance.runHooks('afterRedo', actionClone);
373
298
  }
374
299
  };
300
+
375
301
  /**
376
302
  * Checks if undo action is available.
377
303
  *
@@ -379,11 +305,10 @@ UndoRedo.prototype.redo = function () {
379
305
  * @memberof UndoRedo#
380
306
  * @returns {boolean} Return `true` if undo can be performed, `false` otherwise.
381
307
  */
382
-
383
-
384
308
  UndoRedo.prototype.isUndoAvailable = function () {
385
309
  return this.doneActions.length > 0;
386
310
  };
311
+
387
312
  /**
388
313
  * Checks if redo action is available.
389
314
  *
@@ -391,23 +316,21 @@ UndoRedo.prototype.isUndoAvailable = function () {
391
316
  * @memberof UndoRedo#
392
317
  * @returns {boolean} Return `true` if redo can be performed, `false` otherwise.
393
318
  */
394
-
395
-
396
319
  UndoRedo.prototype.isRedoAvailable = function () {
397
320
  return this.undoneActions.length > 0;
398
321
  };
322
+
399
323
  /**
400
324
  * Clears undo history.
401
325
  *
402
326
  * @function clear
403
327
  * @memberof UndoRedo#
404
328
  */
405
-
406
-
407
329
  UndoRedo.prototype.clear = function () {
408
330
  this.doneActions.length = 0;
409
331
  this.undoneActions.length = 0;
410
332
  };
333
+
411
334
  /**
412
335
  * Checks if the plugin is enabled.
413
336
  *
@@ -415,69 +338,60 @@ UndoRedo.prototype.clear = function () {
415
338
  * @memberof UndoRedo#
416
339
  * @returns {boolean}
417
340
  */
418
-
419
-
420
341
  UndoRedo.prototype.isEnabled = function () {
421
342
  return this.enabled;
422
343
  };
344
+
423
345
  /**
424
346
  * Enables the plugin.
425
347
  *
426
348
  * @function enable
427
349
  * @memberof UndoRedo#
428
350
  */
429
-
430
-
431
351
  UndoRedo.prototype.enable = function () {
432
352
  if (this.isEnabled()) {
433
353
  return;
434
354
  }
435
-
436
355
  var hot = this.instance;
437
356
  this.enabled = true;
438
357
  exposeUndoRedoMethods(hot);
439
358
  this.registerShortcuts();
440
359
  hot.addHook('afterChange', onAfterChange);
441
360
  };
361
+
442
362
  /**
443
363
  * Disables the plugin.
444
364
  *
445
365
  * @function disable
446
366
  * @memberof UndoRedo#
447
367
  */
448
-
449
-
450
368
  UndoRedo.prototype.disable = function () {
451
369
  if (!this.isEnabled()) {
452
370
  return;
453
371
  }
454
-
455
372
  var hot = this.instance;
456
373
  this.enabled = false;
457
374
  removeExposedUndoRedoMethods(hot);
458
375
  this.unregisterShortcuts();
459
376
  hot.removeHook('afterChange', onAfterChange);
460
377
  };
378
+
461
379
  /**
462
380
  * Destroys the instance.
463
381
  *
464
382
  * @function destroy
465
383
  * @memberof UndoRedo#
466
384
  */
467
-
468
-
469
385
  UndoRedo.prototype.destroy = function () {
470
386
  this.clear();
471
387
  this.instance = null;
472
388
  this.doneActions = null;
473
389
  this.undoneActions = null;
474
390
  };
475
-
476
391
  UndoRedo.Action = function () {};
477
-
478
392
  UndoRedo.Action.prototype.undo = function () {};
479
-
480
393
  UndoRedo.Action.prototype.redo = function () {};
394
+
481
395
  /**
482
396
  * Change action.
483
397
  *
@@ -485,61 +399,48 @@ UndoRedo.Action.prototype.redo = function () {};
485
399
  * @param {Array} changes 2D array containing information about each of the edited cells.
486
400
  * @param {number[]} selected The cell selection.
487
401
  */
488
-
489
-
490
402
  UndoRedo.ChangeAction = function (changes, selected) {
491
403
  this.changes = changes;
492
404
  this.selected = selected;
493
405
  this.actionType = 'change';
494
406
  };
495
-
496
407
  (0, _object.inherit)(UndoRedo.ChangeAction, UndoRedo.Action);
497
-
498
408
  UndoRedo.ChangeAction.prototype.undo = function (instance, undoneCallback) {
499
409
  var data = (0, _object.deepClone)(this.changes);
500
410
  var emptyRowsAtTheEnd = instance.countEmptyRows(true);
501
411
  var emptyColsAtTheEnd = instance.countEmptyCols(true);
502
-
503
412
  for (var i = 0, len = data.length; i < len; i++) {
504
413
  data[i].splice(3, 1);
505
414
  }
506
-
507
415
  instance.addHookOnce('afterChange', undoneCallback);
508
416
  instance.setDataAtCell(data, null, null, 'UndoRedo.undo');
509
-
510
417
  for (var _i2 = 0, _len = data.length; _i2 < _len; _i2++) {
511
418
  var _data$_i = _slicedToArray(data[_i2], 2),
512
- row = _data$_i[0],
513
- column = _data$_i[1];
514
-
419
+ row = _data$_i[0],
420
+ column = _data$_i[1];
515
421
  if (instance.getSettings().minSpareRows && row + 1 + instance.getSettings().minSpareRows === instance.countRows() && emptyRowsAtTheEnd === instance.getSettings().minSpareRows) {
516
422
  instance.alter('remove_row', parseInt(row + 1, 10), instance.getSettings().minSpareRows);
517
423
  instance.undoRedo.doneActions.pop();
518
424
  }
519
-
520
425
  if (instance.getSettings().minSpareCols && column + 1 + instance.getSettings().minSpareCols === instance.countCols() && emptyColsAtTheEnd === instance.getSettings().minSpareCols) {
521
426
  instance.alter('remove_col', parseInt(column + 1, 10), instance.getSettings().minSpareCols);
522
427
  instance.undoRedo.doneActions.pop();
523
428
  }
524
429
  }
525
-
526
430
  instance.selectCells(this.selected, false, false);
527
431
  };
528
-
529
432
  UndoRedo.ChangeAction.prototype.redo = function (instance, onFinishCallback) {
530
433
  var data = (0, _object.deepClone)(this.changes);
531
-
532
434
  for (var i = 0, len = data.length; i < len; i++) {
533
435
  data[i].splice(2, 1);
534
436
  }
535
-
536
437
  instance.addHookOnce('afterChange', onFinishCallback);
537
438
  instance.setDataAtCell(data, null, null, 'UndoRedo.redo');
538
-
539
439
  if (this.selected) {
540
440
  instance.selectCells(this.selected, false, false);
541
441
  }
542
442
  };
443
+
543
444
  /**
544
445
  * Create row action.
545
446
  *
@@ -547,20 +448,15 @@ UndoRedo.ChangeAction.prototype.redo = function (instance, onFinishCallback) {
547
448
  * @param {number} index The visual row index.
548
449
  * @param {number} amount The number of created rows.
549
450
  */
550
-
551
-
552
451
  UndoRedo.CreateRowAction = function (index, amount) {
553
452
  this.index = index;
554
453
  this.amount = amount;
555
454
  this.actionType = 'insert_row';
556
455
  };
557
-
558
456
  (0, _object.inherit)(UndoRedo.CreateRowAction, UndoRedo.Action);
559
-
560
457
  UndoRedo.CreateRowAction.prototype.undo = function (instance, undoneCallback) {
561
458
  var rowCount = instance.countRows();
562
459
  var minSpareRows = instance.getSettings().minSpareRows;
563
-
564
460
  if (this.index >= rowCount && this.index - minSpareRows < rowCount) {
565
461
  this.index -= minSpareRows; // work around the situation where the needed row was removed due to an 'undo' of a made change
566
462
  }
@@ -568,11 +464,11 @@ UndoRedo.CreateRowAction.prototype.undo = function (instance, undoneCallback) {
568
464
  instance.addHookOnce('afterRemoveRow', undoneCallback);
569
465
  instance.alter('remove_row', this.index, this.amount, 'UndoRedo.undo');
570
466
  };
571
-
572
467
  UndoRedo.CreateRowAction.prototype.redo = function (instance, redoneCallback) {
573
468
  instance.addHookOnce('afterCreateRow', redoneCallback);
574
- instance.alter('insert_row', this.index, this.amount, 'UndoRedo.redo');
469
+ instance.alter('insert_row_above', this.index, this.amount, 'UndoRedo.redo');
575
470
  };
471
+
576
472
  /**
577
473
  * Remove row action.
578
474
  *
@@ -582,8 +478,6 @@ UndoRedo.CreateRowAction.prototype.redo = function (instance, redoneCallback) {
582
478
  * @param {number} fixedRowsBottom Number of fixed rows on the bottom. Remove row action change it sometimes.
583
479
  * @param {number} fixedRowsTop Number of fixed rows on the top. Remove row action change it sometimes.
584
480
  */
585
-
586
-
587
481
  UndoRedo.RemoveRowAction = function (index, data, fixedRowsBottom, fixedRowsTop) {
588
482
  this.index = index;
589
483
  this.data = data;
@@ -591,23 +485,22 @@ UndoRedo.RemoveRowAction = function (index, data, fixedRowsBottom, fixedRowsTop)
591
485
  this.fixedRowsBottom = fixedRowsBottom;
592
486
  this.fixedRowsTop = fixedRowsTop;
593
487
  };
594
-
595
488
  (0, _object.inherit)(UndoRedo.RemoveRowAction, UndoRedo.Action);
596
-
597
489
  UndoRedo.RemoveRowAction.prototype.undo = function (instance, undoneCallback) {
598
- var settings = instance.getSettings(); // Changing by the reference as `updateSettings` doesn't work the best.
490
+ var settings = instance.getSettings();
599
491
 
492
+ // Changing by the reference as `updateSettings` doesn't work the best.
600
493
  settings.fixedRowsBottom = this.fixedRowsBottom;
601
494
  settings.fixedRowsTop = this.fixedRowsTop;
602
- instance.alter('insert_row', this.index, this.data.length, 'UndoRedo.undo');
495
+ instance.alter('insert_row_above', this.index, this.data.length, 'UndoRedo.undo');
603
496
  instance.addHookOnce('afterViewRender', undoneCallback);
604
497
  instance.populateFromArray(this.index, 0, this.data, void 0, void 0, 'UndoRedo.undo');
605
498
  };
606
-
607
499
  UndoRedo.RemoveRowAction.prototype.redo = function (instance, redoneCallback) {
608
500
  instance.addHookOnce('afterRemoveRow', redoneCallback);
609
501
  instance.alter('remove_row', this.index, this.data.length, 'UndoRedo.redo');
610
502
  };
503
+
611
504
  /**
612
505
  * Create column action.
613
506
  *
@@ -615,25 +508,21 @@ UndoRedo.RemoveRowAction.prototype.redo = function (instance, redoneCallback) {
615
508
  * @param {number} index The visual column index.
616
509
  * @param {number} amount The number of created columns.
617
510
  */
618
-
619
-
620
511
  UndoRedo.CreateColumnAction = function (index, amount) {
621
512
  this.index = index;
622
513
  this.amount = amount;
623
514
  this.actionType = 'insert_col';
624
515
  };
625
-
626
516
  (0, _object.inherit)(UndoRedo.CreateColumnAction, UndoRedo.Action);
627
-
628
517
  UndoRedo.CreateColumnAction.prototype.undo = function (instance, undoneCallback) {
629
518
  instance.addHookOnce('afterRemoveCol', undoneCallback);
630
519
  instance.alter('remove_col', this.index, this.amount, 'UndoRedo.undo');
631
520
  };
632
-
633
521
  UndoRedo.CreateColumnAction.prototype.redo = function (instance, redoneCallback) {
634
522
  instance.addHookOnce('afterCreateCol', redoneCallback);
635
- instance.alter('insert_col', this.index, this.amount, 'UndoRedo.redo');
523
+ instance.alter('insert_col_start', this.index, this.amount, 'UndoRedo.redo');
636
524
  };
525
+
637
526
  /**
638
527
  * Remove column action.
639
528
  *
@@ -646,8 +535,6 @@ UndoRedo.CreateColumnAction.prototype.redo = function (instance, redoneCallback)
646
535
  * @param {number[]} rowPositions The row position.
647
536
  * @param {number} fixedColumnsStart Number of fixed columns on the left. Remove column action change it sometimes.
648
537
  */
649
-
650
-
651
538
  UndoRedo.RemoveColumnAction = function (index, indexes, data, headers, columnPositions, rowPositions, fixedColumnsStart) {
652
539
  // eslint-disable-line max-len
653
540
  this.index = index;
@@ -660,31 +547,25 @@ UndoRedo.RemoveColumnAction = function (index, indexes, data, headers, columnPos
660
547
  this.actionType = 'remove_col';
661
548
  this.fixedColumnsStart = fixedColumnsStart;
662
549
  };
663
-
664
550
  (0, _object.inherit)(UndoRedo.RemoveColumnAction, UndoRedo.Action);
665
-
666
551
  UndoRedo.RemoveColumnAction.prototype.undo = function (instance, undoneCallback) {
667
552
  var _this2 = this;
553
+ var settings = instance.getSettings();
668
554
 
669
- var settings = instance.getSettings(); // Changing by the reference as `updateSettings` doesn't work the best.
670
-
555
+ // Changing by the reference as `updateSettings` doesn't work the best.
671
556
  settings.fixedColumnsStart = this.fixedColumnsStart;
672
557
  var ascendingIndexes = this.indexes.slice(0).sort();
673
-
674
558
  var sortByIndexes = function sortByIndexes(elem, j, arr) {
675
559
  return arr[_this2.indexes.indexOf(ascendingIndexes[j])];
676
560
  };
677
-
678
561
  var removedDataLength = this.data.length;
679
562
  var sortedData = [];
680
-
681
563
  for (var rowIndex = 0; rowIndex < removedDataLength; rowIndex++) {
682
564
  sortedData.push((0, _array.arrayMap)(this.data[rowIndex], sortByIndexes));
683
565
  }
684
-
685
566
  var sortedHeaders = (0, _array.arrayMap)(this.headers, sortByIndexes);
686
567
  var changes = [];
687
- instance.alter('insert_col', this.indexes[0], this.indexes.length, 'UndoRedo.undo');
568
+ instance.alter('insert_col_start', this.indexes[0], this.indexes.length, 'UndoRedo.undo');
688
569
  (0, _array.arrayEach)(instance.getSourceDataArray(), function (rowData, rowIndex) {
689
570
  (0, _array.arrayEach)(ascendingIndexes, function (changedIndex, contiquesIndex) {
690
571
  rowData[changedIndex] = sortedData[rowIndex][contiquesIndex];
@@ -693,13 +574,11 @@ UndoRedo.RemoveColumnAction.prototype.undo = function (instance, undoneCallback)
693
574
  });
694
575
  instance.setSourceDataAtCell(changes, void 0, void 0, 'UndoRedo.undo');
695
576
  instance.columnIndexMapper.insertIndexes(ascendingIndexes[0], ascendingIndexes.length);
696
-
697
577
  if (typeof this.headers !== 'undefined') {
698
578
  (0, _array.arrayEach)(sortedHeaders, function (headerData, columnIndex) {
699
579
  instance.getSettings().colHeaders[ascendingIndexes[columnIndex]] = headerData;
700
580
  });
701
581
  }
702
-
703
582
  instance.batchExecution(function () {
704
583
  // Restore row sequence in a case when all columns are removed. the original
705
584
  // row sequence is lost in that case.
@@ -709,11 +588,11 @@ UndoRedo.RemoveColumnAction.prototype.undo = function (instance, undoneCallback)
709
588
  instance.addHookOnce('afterViewRender', undoneCallback);
710
589
  instance.render();
711
590
  };
712
-
713
591
  UndoRedo.RemoveColumnAction.prototype.redo = function (instance, redoneCallback) {
714
592
  instance.addHookOnce('afterRemoveCol', redoneCallback);
715
593
  instance.alter('remove_col', this.index, this.amount, 'UndoRedo.redo');
716
594
  };
595
+
717
596
  /**
718
597
  * Cell alignment action.
719
598
  *
@@ -723,18 +602,14 @@ UndoRedo.RemoveColumnAction.prototype.redo = function (instance, redoneCallback)
723
602
  * @param {string} type The type of the alignment ("top", "left", "bottom" or "right").
724
603
  * @param {string} alignment The alignment CSS class.
725
604
  */
726
-
727
-
728
605
  UndoRedo.CellAlignmentAction = function (stateBefore, range, type, alignment) {
729
606
  this.stateBefore = stateBefore;
730
607
  this.range = range;
731
608
  this.type = type;
732
609
  this.alignment = alignment;
733
610
  };
734
-
735
611
  UndoRedo.CellAlignmentAction.prototype.undo = function (instance, undoneCallback) {
736
612
  var _this3 = this;
737
-
738
613
  (0, _array.arrayEach)(this.range, function (range) {
739
614
  range.forAll(function (row, col) {
740
615
  // Alignment classes should only collected within cell ranges. We skip header coordinates.
@@ -746,7 +621,6 @@ UndoRedo.CellAlignmentAction.prototype.undo = function (instance, undoneCallback
746
621
  instance.addHookOnce('afterViewRender', undoneCallback);
747
622
  instance.render();
748
623
  };
749
-
750
624
  UndoRedo.CellAlignmentAction.prototype.redo = function (instance, undoneCallback) {
751
625
  (0, _utils.align)(this.range, this.type, this.alignment, function (row, col) {
752
626
  return instance.getCellMeta(row, col);
@@ -756,62 +630,49 @@ UndoRedo.CellAlignmentAction.prototype.redo = function (instance, undoneCallback
756
630
  instance.addHookOnce('afterViewRender', undoneCallback);
757
631
  instance.render();
758
632
  };
633
+
759
634
  /**
760
635
  * Filters action.
761
636
  *
762
637
  * @private
763
638
  * @param {Array} conditionsStack An array of the filter condition.
764
639
  */
765
-
766
-
767
640
  UndoRedo.FiltersAction = function (conditionsStack) {
768
641
  this.conditionsStack = conditionsStack;
769
642
  this.actionType = 'filter';
770
643
  };
771
-
772
644
  (0, _object.inherit)(UndoRedo.FiltersAction, UndoRedo.Action);
773
-
774
645
  UndoRedo.FiltersAction.prototype.undo = function (instance, undoneCallback) {
775
646
  var filters = instance.getPlugin('filters');
776
647
  instance.addHookOnce('afterViewRender', undoneCallback);
777
648
  filters.conditionCollection.importAllConditions(this.conditionsStack.slice(0, this.conditionsStack.length - 1));
778
649
  filters.filter();
779
650
  };
780
-
781
651
  UndoRedo.FiltersAction.prototype.redo = function (instance, redoneCallback) {
782
652
  var filters = instance.getPlugin('filters');
783
653
  instance.addHookOnce('afterViewRender', redoneCallback);
784
654
  filters.conditionCollection.importAllConditions(this.conditionsStack);
785
655
  filters.filter();
786
656
  };
657
+
787
658
  /**
788
659
  * Merge Cells action.
789
660
  *
790
661
  * @util
791
662
  */
792
-
793
-
794
663
  var MergeCellsAction = /*#__PURE__*/function (_UndoRedo$Action) {
795
664
  _inherits(MergeCellsAction, _UndoRedo$Action);
796
-
797
665
  var _super = _createSuper(MergeCellsAction);
798
-
799
666
  function MergeCellsAction(instance, cellRange) {
800
667
  var _this4;
801
-
802
668
  _classCallCheck(this, MergeCellsAction);
803
-
804
669
  _this4 = _super.call(this);
805
670
  _this4.cellRange = cellRange;
806
-
807
671
  var topStartCorner = _this4.cellRange.getTopStartCorner();
808
-
809
672
  var bottomEndCorner = _this4.cellRange.getBottomEndCorner();
810
-
811
673
  _this4.rangeData = instance.getData(topStartCorner.row, topStartCorner.col, bottomEndCorner.row, bottomEndCorner.col);
812
674
  return _this4;
813
675
  }
814
-
815
676
  _createClass(MergeCellsAction, [{
816
677
  key: "undo",
817
678
  value: function undo(instance, undoneCallback) {
@@ -829,32 +690,25 @@ var MergeCellsAction = /*#__PURE__*/function (_UndoRedo$Action) {
829
690
  mergeCellsPlugin.mergeRange(this.cellRange);
830
691
  }
831
692
  }]);
832
-
833
693
  return MergeCellsAction;
834
694
  }(UndoRedo.Action);
835
-
836
695
  UndoRedo.MergeCellsAction = MergeCellsAction;
696
+
837
697
  /**
838
698
  * Unmerge Cells action.
839
699
  *
840
700
  * @util
841
701
  */
842
-
843
702
  var UnmergeCellsAction = /*#__PURE__*/function (_UndoRedo$Action2) {
844
703
  _inherits(UnmergeCellsAction, _UndoRedo$Action2);
845
-
846
704
  var _super2 = _createSuper(UnmergeCellsAction);
847
-
848
705
  function UnmergeCellsAction(instance, cellRange) {
849
706
  var _this5;
850
-
851
707
  _classCallCheck(this, UnmergeCellsAction);
852
-
853
708
  _this5 = _super2.call(this);
854
709
  _this5.cellRange = cellRange;
855
710
  return _this5;
856
711
  }
857
-
858
712
  _createClass(UnmergeCellsAction, [{
859
713
  key: "undo",
860
714
  value: function undo(instance, undoneCallback) {
@@ -871,11 +725,10 @@ var UnmergeCellsAction = /*#__PURE__*/function (_UndoRedo$Action2) {
871
725
  instance.render();
872
726
  }
873
727
  }]);
874
-
875
728
  return UnmergeCellsAction;
876
729
  }(UndoRedo.Action);
877
-
878
730
  UndoRedo.UnmergeCellsAction = UnmergeCellsAction;
731
+
879
732
  /**
880
733
  * ManualRowMove action.
881
734
  *
@@ -884,18 +737,14 @@ UndoRedo.UnmergeCellsAction = UnmergeCellsAction;
884
737
  * @param {number[]} rows An array with moved rows.
885
738
  * @param {number} finalIndex The destination index.
886
739
  */
887
-
888
740
  UndoRedo.RowMoveAction = function (rows, finalIndex) {
889
741
  this.rows = rows.slice();
890
742
  this.finalIndex = finalIndex;
891
743
  this.actionType = 'row_move';
892
744
  };
893
-
894
745
  (0, _object.inherit)(UndoRedo.RowMoveAction, UndoRedo.Action);
895
-
896
746
  UndoRedo.RowMoveAction.prototype.undo = function (instance, undoneCallback) {
897
747
  var _this6 = this;
898
-
899
748
  var manualRowMove = instance.getPlugin('manualRowMove');
900
749
  var copyOfRows = [].concat(this.rows);
901
750
  var rowsMovedUp = copyOfRows.filter(function (a) {
@@ -909,19 +758,18 @@ UndoRedo.RowMoveAction.prototype.undo = function (instance, undoneCallback) {
909
758
  }).concat(rowsMovedDown.sort(function (a, b) {
910
759
  return a - b;
911
760
  }));
912
- instance.addHookOnce('afterViewRender', undoneCallback); // Moving rows from those with higher indexes to those with lower indexes when action was performed from bottom to top
913
- // Moving rows from those with lower indexes to those with higher indexes when action was performed from top to bottom
761
+ instance.addHookOnce('afterViewRender', undoneCallback);
914
762
 
763
+ // Moving rows from those with higher indexes to those with lower indexes when action was performed from bottom to top
764
+ // Moving rows from those with lower indexes to those with higher indexes when action was performed from top to bottom
915
765
  for (var i = 0; i < allMovedRows.length; i += 1) {
916
766
  var newPhysicalRow = instance.toVisualRow(allMovedRows[i]);
917
767
  manualRowMove.moveRow(newPhysicalRow, allMovedRows[i]);
918
768
  }
919
-
920
769
  instance.render();
921
770
  instance.deselectCell();
922
771
  instance.selectRows(this.rows[0], this.rows[0] + this.rows.length - 1);
923
772
  };
924
-
925
773
  UndoRedo.RowMoveAction.prototype.redo = function (instance, redoneCallback) {
926
774
  var manualRowMove = instance.getPlugin('manualRowMove');
927
775
  instance.addHookOnce('afterViewRender', redoneCallback);
@@ -930,40 +778,34 @@ UndoRedo.RowMoveAction.prototype.redo = function (instance, redoneCallback) {
930
778
  instance.deselectCell();
931
779
  instance.selectRows(this.finalIndex, this.finalIndex + this.rows.length - 1);
932
780
  };
781
+
933
782
  /**
934
783
  * Enabling and disabling plugin and attaching its to an instance.
935
784
  *
936
785
  * @private
937
786
  */
938
-
939
-
940
787
  UndoRedo.prototype.init = function () {
941
788
  var settings = this.instance.getSettings().undo;
942
789
  var pluginEnabled = typeof settings === 'undefined' || settings;
943
-
944
790
  if (!this.instance.undoRedo) {
945
791
  this.instance.undoRedo = this;
946
792
  }
947
-
948
793
  if (pluginEnabled) {
949
794
  this.instance.undoRedo.enable();
950
795
  } else {
951
796
  this.instance.undoRedo.disable();
952
797
  }
953
798
  };
799
+
954
800
  /**
955
801
  * Registers shortcuts responsible for performing undo/redo.
956
802
  *
957
803
  * @private
958
804
  */
959
-
960
-
961
805
  UndoRedo.prototype.registerShortcuts = function () {
962
806
  var _this7 = this;
963
-
964
807
  var shortcutManager = this.instance.getShortcutManager();
965
808
  var gridContext = shortcutManager.getContext('grid');
966
-
967
809
  var runOnlyIf = function runOnlyIf(event) {
968
810
  return !event.altKey; // right ALT in some systems triggers ALT+CTR
969
811
  };
@@ -984,37 +826,33 @@ UndoRedo.prototype.registerShortcuts = function () {
984
826
  }
985
827
  }], config);
986
828
  };
829
+
987
830
  /**
988
831
  * Unregister shortcuts responsible for performing undo/redo.
989
832
  *
990
833
  * @private
991
834
  */
992
-
993
-
994
835
  UndoRedo.prototype.unregisterShortcuts = function () {
995
836
  var shortcutManager = this.instance.getShortcutManager();
996
837
  var gridContext = shortcutManager.getContext('grid');
997
838
  gridContext.removeShortcutsByGroup(SHORTCUTS_GROUP);
998
839
  };
840
+
999
841
  /**
1000
842
  * @param {Array} changes 2D array containing information about each of the edited cells.
1001
843
  * @param {string} source String that identifies source of hook call.
1002
844
  * @returns {boolean}
1003
845
  */
1004
-
1005
-
1006
846
  function onAfterChange(changes, source) {
1007
847
  var instance = this;
1008
-
1009
848
  if (source === 'loadData') {
1010
849
  return instance.undoRedo.clear();
1011
850
  }
1012
851
  }
852
+
1013
853
  /**
1014
854
  * @param {Core} instance The Handsontable instance.
1015
855
  */
1016
-
1017
-
1018
856
  function exposeUndoRedoMethods(instance) {
1019
857
  /**
1020
858
  * {@link UndoRedo#undo}.
@@ -1026,6 +864,7 @@ function exposeUndoRedoMethods(instance) {
1026
864
  instance.undo = function () {
1027
865
  return instance.undoRedo.undo();
1028
866
  };
867
+
1029
868
  /**
1030
869
  * {@link UndoRedo#redo}.
1031
870
  *
@@ -1033,11 +872,10 @@ function exposeUndoRedoMethods(instance) {
1033
872
  * @memberof! Core#
1034
873
  * @returns {boolean}
1035
874
  */
1036
-
1037
-
1038
875
  instance.redo = function () {
1039
876
  return instance.undoRedo.redo();
1040
877
  };
878
+
1041
879
  /**
1042
880
  * {@link UndoRedo#isUndoAvailable}.
1043
881
  *
@@ -1045,11 +883,10 @@ function exposeUndoRedoMethods(instance) {
1045
883
  * @memberof! Core#
1046
884
  * @returns {boolean}
1047
885
  */
1048
-
1049
-
1050
886
  instance.isUndoAvailable = function () {
1051
887
  return instance.undoRedo.isUndoAvailable();
1052
888
  };
889
+
1053
890
  /**
1054
891
  * {@link UndoRedo#isRedoAvailable}.
1055
892
  *
@@ -1057,11 +894,10 @@ function exposeUndoRedoMethods(instance) {
1057
894
  * @memberof! Core#
1058
895
  * @returns {boolean}
1059
896
  */
1060
-
1061
-
1062
897
  instance.isRedoAvailable = function () {
1063
898
  return instance.undoRedo.isRedoAvailable();
1064
899
  };
900
+
1065
901
  /**
1066
902
  * {@link UndoRedo#clear}.
1067
903
  *
@@ -1069,17 +905,14 @@ function exposeUndoRedoMethods(instance) {
1069
905
  * @memberof! Core#
1070
906
  * @returns {boolean}
1071
907
  */
1072
-
1073
-
1074
908
  instance.clearUndo = function () {
1075
909
  return instance.undoRedo.clear();
1076
910
  };
1077
911
  }
912
+
1078
913
  /**
1079
914
  * @param {Core} instance The Handsontable instance.
1080
915
  */
1081
-
1082
-
1083
916
  function removeExposedUndoRedoMethods(instance) {
1084
917
  delete instance.undo;
1085
918
  delete instance.redo;
@@ -1087,12 +920,9 @@ function removeExposedUndoRedoMethods(instance) {
1087
920
  delete instance.isRedoAvailable;
1088
921
  delete instance.clearUndo;
1089
922
  }
1090
-
1091
923
  var hook = _pluginHooks.default.getSingleton();
1092
-
1093
924
  hook.add('afterUpdateSettings', function () {
1094
925
  var _this$getPlugin;
1095
-
1096
926
  (_this$getPlugin = this.getPlugin('undoRedo')) === null || _this$getPlugin === void 0 ? void 0 : _this$getPlugin.init();
1097
927
  });
1098
928
  hook.register('beforeUndo');