handsontable 12.1.3 → 12.3.0-next-bb1a7c2-20221208

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