handsontable 12.1.3 → 12.3.0-next-bb1a7c2-20221208

Sign up to get free protection for your applications and to get access to all the features.
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,33 +1,17 @@
1
- import "core-js/modules/es.array.slice.js";
2
- import "core-js/modules/es.object.freeze.js";
3
- import "core-js/modules/es.symbol.js";
4
- import "core-js/modules/es.symbol.description.js";
5
- import "core-js/modules/es.symbol.iterator.js";
6
- import "core-js/modules/es.function.name.js";
7
- import "core-js/modules/es.regexp.exec.js";
8
-
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
9
2
  var _templateObject;
10
-
11
3
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
12
-
13
4
  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."); }
14
-
15
5
  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); }
16
-
17
6
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
18
-
19
7
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
20
-
21
8
  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; }
22
-
23
9
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
24
-
25
10
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
26
-
27
- 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); } }
28
-
11
+ 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); } }
29
12
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
30
-
13
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
14
+ 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); }
31
15
  import "core-js/modules/es.array.iterator.js";
32
16
  import "core-js/modules/es.object.to-string.js";
33
17
  import "core-js/modules/es.set.js";
@@ -43,6 +27,16 @@ import "core-js/modules/es.array.index-of.js";
43
27
  import "core-js/modules/es.array.includes.js";
44
28
  import "core-js/modules/es.string.includes.js";
45
29
  import "core-js/modules/es.array.fill.js";
30
+ import "core-js/modules/es.symbol.to-primitive.js";
31
+ import "core-js/modules/es.date.to-primitive.js";
32
+ import "core-js/modules/es.symbol.js";
33
+ import "core-js/modules/es.symbol.description.js";
34
+ import "core-js/modules/es.number.constructor.js";
35
+ import "core-js/modules/es.array.slice.js";
36
+ import "core-js/modules/es.object.freeze.js";
37
+ import "core-js/modules/es.symbol.iterator.js";
38
+ import "core-js/modules/es.function.name.js";
39
+ import "core-js/modules/es.regexp.exec.js";
46
40
  import { arrayMap } from "../helpers/array.mjs";
47
41
  import { toSingleLine } from "../helpers/templateLiteralTag.mjs";
48
42
  import { warn } from "../helpers/console.mjs";
@@ -53,6 +47,7 @@ import { mixin } from "../helpers/object.mjs";
53
47
  import { isDefined } from "../helpers/mixed.mjs";
54
48
  import { ChangesObservable } from "./changesObservable/observable.mjs";
55
49
  var deprecationWarns = new Set(['getFirstNotHiddenIndex']);
50
+
56
51
  /**
57
52
  * @class IndexMapper
58
53
  * @description
@@ -72,13 +67,10 @@ var deprecationWarns = new Set(['getFirstNotHiddenIndex']);
72
67
  *
73
68
  * These are: {@link IndexesSequence}, {@link PhysicalIndexToValueMap}, {@link LinkedPhysicalIndexToValueMap}, {@link HidingMap}, and {@link TrimmingMap}.
74
69
  */
75
-
76
70
  export var IndexMapper = /*#__PURE__*/function () {
77
71
  function IndexMapper() {
78
72
  var _this = this;
79
-
80
73
  _classCallCheck(this, IndexMapper);
81
-
82
74
  /**
83
75
  * Map for storing the sequence of indexes.
84
76
  *
@@ -95,7 +87,6 @@ export var IndexMapper = /*#__PURE__*/function () {
95
87
  * @private
96
88
  * @type {MapCollection}
97
89
  */
98
-
99
90
  this.trimmingMapsCollection = new AggregatedCollection(function (valuesForIndex) {
100
91
  return valuesForIndex.some(function (value) {
101
92
  return value === true;
@@ -108,7 +99,6 @@ export var IndexMapper = /*#__PURE__*/function () {
108
99
  * @private
109
100
  * @type {MapCollection}
110
101
  */
111
-
112
102
  this.hidingMapsCollection = new AggregatedCollection(function (valuesForIndex) {
113
103
  return valuesForIndex.some(function (value) {
114
104
  return value === true;
@@ -120,7 +110,6 @@ export var IndexMapper = /*#__PURE__*/function () {
120
110
  * @private
121
111
  * @type {MapCollection}
122
112
  */
123
-
124
113
  this.variousMapsCollection = new MapCollection();
125
114
  /**
126
115
  * The class instance collects row and column index changes that happen while the Handsontable
@@ -131,7 +120,6 @@ export var IndexMapper = /*#__PURE__*/function () {
131
120
  * @private
132
121
  * @type {ChangesObservable}
133
122
  */
134
-
135
123
  this.hidingChangesObservable = new ChangesObservable({
136
124
  initialIndexValue: false
137
125
  });
@@ -143,7 +131,6 @@ export var IndexMapper = /*#__PURE__*/function () {
143
131
  * @private
144
132
  * @type {Array}
145
133
  */
146
-
147
134
  this.notTrimmedIndexesCache = [];
148
135
  /**
149
136
  * Cache for list of not hidden indexes, respecting the indexes sequence (physical indexes).
@@ -153,7 +140,6 @@ export var IndexMapper = /*#__PURE__*/function () {
153
140
  * @private
154
141
  * @type {Array}
155
142
  */
156
-
157
143
  this.notHiddenIndexesCache = [];
158
144
  /**
159
145
  * Flag determining whether actions performed on index mapper have been batched. It's used for cache management.
@@ -161,7 +147,6 @@ export var IndexMapper = /*#__PURE__*/function () {
161
147
  * @private
162
148
  * @type {boolean}
163
149
  */
164
-
165
150
  this.isBatched = false;
166
151
  /**
167
152
  * Flag determining whether any action on indexes sequence has been performed. It's used for cache management.
@@ -169,7 +154,6 @@ export var IndexMapper = /*#__PURE__*/function () {
169
154
  * @private
170
155
  * @type {boolean}
171
156
  */
172
-
173
157
  this.indexesSequenceChanged = false;
174
158
  /**
175
159
  * Flag determining whether any action on trimmed indexes has been performed. It's used for cache management.
@@ -177,7 +161,6 @@ export var IndexMapper = /*#__PURE__*/function () {
177
161
  * @private
178
162
  * @type {boolean}
179
163
  */
180
-
181
164
  this.trimmedIndexesChanged = false;
182
165
  /**
183
166
  * Flag determining whether any action on hidden indexes has been performed. It's used for cache management.
@@ -185,7 +168,6 @@ export var IndexMapper = /*#__PURE__*/function () {
185
168
  * @private
186
169
  * @type {boolean}
187
170
  */
188
-
189
171
  this.hiddenIndexesChanged = false;
190
172
  /**
191
173
  * Physical indexes (respecting the sequence of indexes) which may be rendered (when they are in a viewport).
@@ -193,7 +175,6 @@ export var IndexMapper = /*#__PURE__*/function () {
193
175
  * @private
194
176
  * @type {Array}
195
177
  */
196
-
197
178
  this.renderablePhysicalIndexesCache = [];
198
179
  /**
199
180
  * Visual indexes (native map's value) corresponding to physical indexes (native map's index).
@@ -201,7 +182,6 @@ export var IndexMapper = /*#__PURE__*/function () {
201
182
  * @private
202
183
  * @type {Map}
203
184
  */
204
-
205
185
  this.fromPhysicalToVisualIndexesCache = new Map();
206
186
  /**
207
187
  * Visual indexes (native map's value) corresponding to physical indexes (native map's index).
@@ -209,56 +189,55 @@ export var IndexMapper = /*#__PURE__*/function () {
209
189
  * @private
210
190
  * @type {Map}
211
191
  */
212
-
213
192
  this.fromVisualToRenderableIndexesCache = new Map();
214
193
  this.indexesSequence.addLocalHook('change', function () {
215
- _this.indexesSequenceChanged = true; // Sequence of stored indexes might change.
194
+ _this.indexesSequenceChanged = true;
216
195
 
196
+ // Sequence of stored indexes might change.
217
197
  _this.updateCache();
218
-
219
198
  _this.runLocalHooks('change', _this.indexesSequence, null);
220
199
  });
221
200
  this.trimmingMapsCollection.addLocalHook('change', function (changedMap) {
222
- _this.trimmedIndexesChanged = true; // Number of trimmed indexes might change.
201
+ _this.trimmedIndexesChanged = true;
223
202
 
203
+ // Number of trimmed indexes might change.
224
204
  _this.updateCache();
225
-
226
205
  _this.runLocalHooks('change', changedMap, _this.trimmingMapsCollection);
227
206
  });
228
207
  this.hidingMapsCollection.addLocalHook('change', function (changedMap) {
229
- _this.hiddenIndexesChanged = true; // Number of hidden indexes might change.
208
+ _this.hiddenIndexesChanged = true;
230
209
 
210
+ // Number of hidden indexes might change.
231
211
  _this.updateCache();
232
-
233
212
  _this.runLocalHooks('change', changedMap, _this.hidingMapsCollection);
234
213
  });
235
214
  this.variousMapsCollection.addLocalHook('change', function (changedMap) {
236
215
  _this.runLocalHooks('change', changedMap, _this.variousMapsCollection);
237
216
  });
238
217
  }
218
+
239
219
  /**
240
220
  * Suspends the cache update for this map. The method is helpful to group multiple
241
221
  * operations, which affects the cache. In this case, the cache will be updated once after
242
222
  * calling the `resumeOperations` method.
243
223
  */
244
-
245
-
246
224
  _createClass(IndexMapper, [{
247
225
  key: "suspendOperations",
248
226
  value: function suspendOperations() {
249
227
  this.isBatched = true;
250
228
  }
229
+
251
230
  /**
252
231
  * Resumes the cache update for this map. It recalculates the cache and restores the
253
232
  * default behavior where each map modification updates the cache.
254
233
  */
255
-
256
234
  }, {
257
235
  key: "resumeOperations",
258
236
  value: function resumeOperations() {
259
237
  this.isBatched = false;
260
238
  this.updateCache();
261
239
  }
240
+
262
241
  /**
263
242
  * It creates and returns the new instance of the ChangesObserver object. The object
264
243
  * allows listening to the index changes that happen while the Handsontable is running.
@@ -267,30 +246,29 @@ export var IndexMapper = /*#__PURE__*/function () {
267
246
  * Currently, only the 'hiding' index map types are observable.
268
247
  * @returns {ChangesObserver}
269
248
  */
270
-
271
249
  }, {
272
250
  key: "createChangesObserver",
273
251
  value: function createChangesObserver(indexMapType) {
274
252
  if (indexMapType !== 'hiding') {
275
253
  throw new Error("Unsupported index map type \"".concat(indexMapType, "\"."));
276
254
  }
277
-
278
255
  return this.hidingChangesObservable.createObserver();
279
256
  }
257
+
280
258
  /**
281
- * Creates and register the new IndexMap for specified IndexMapper instance.
259
+ * Creates and registers a new `IndexMap` for a specified `IndexMapper` instance.
282
260
  *
283
- * @param {string} indexName The uniq index name.
284
- * @param {string} mapType The index map type (e.q. "hiding, "trimming", "physicalIndexToValue").
261
+ * @param {string} indexName A unique index name.
262
+ * @param {string} mapType The index map type (e.g., "hiding", "trimming", "physicalIndexToValue").
285
263
  * @param {*} [initValueOrFn] The initial value for the index map.
286
264
  * @returns {IndexMap}
287
265
  */
288
-
289
266
  }, {
290
267
  key: "createAndRegisterIndexMap",
291
268
  value: function createAndRegisterIndexMap(indexName, mapType, initValueOrFn) {
292
269
  return this.registerMap(indexName, createIndexMap(mapType, initValueOrFn));
293
270
  }
271
+
294
272
  /**
295
273
  * Register map which provide some index mappings. Type of map determining to which collection it will be added.
296
274
  *
@@ -298,14 +276,12 @@ export var IndexMapper = /*#__PURE__*/function () {
298
276
  * @param {IndexMap} indexMap Registered index map updated on items removal and insertion.
299
277
  * @returns {IndexMap}
300
278
  */
301
-
302
279
  }, {
303
280
  key: "registerMap",
304
281
  value: function registerMap(uniqueName, indexMap) {
305
282
  if (this.trimmingMapsCollection.get(uniqueName) || this.hidingMapsCollection.get(uniqueName) || this.variousMapsCollection.get(uniqueName)) {
306
283
  throw Error("Map with name \"".concat(uniqueName, "\" has been already registered."));
307
284
  }
308
-
309
285
  if (indexMap instanceof TrimmingMap) {
310
286
  this.trimmingMapsCollection.register(uniqueName, indexMap);
311
287
  } else if (indexMap instanceof HidingMap) {
@@ -313,8 +289,8 @@ export var IndexMapper = /*#__PURE__*/function () {
313
289
  } else {
314
290
  this.variousMapsCollection.register(uniqueName, indexMap);
315
291
  }
316
-
317
292
  var numberOfIndexes = this.getNumberOfIndexes();
293
+
318
294
  /*
319
295
  We initialize map ony when we have full information about number of indexes and the dataset is not empty.
320
296
  Otherwise it's unnecessary. Initialization of empty array would not give any positive changes. After initializing
@@ -322,19 +298,17 @@ export var IndexMapper = /*#__PURE__*/function () {
322
298
  not needed hook (no real change have occurred). Number of indexes is known after loading data (the `loadData`
323
299
  function from the `Core`).
324
300
  */
325
-
326
301
  if (numberOfIndexes > 0) {
327
302
  indexMap.init(numberOfIndexes);
328
303
  }
329
-
330
304
  return indexMap;
331
305
  }
306
+
332
307
  /**
333
308
  * Unregister a map with given name.
334
309
  *
335
310
  * @param {string} name Name of the index map.
336
311
  */
337
-
338
312
  }, {
339
313
  key: "unregisterMap",
340
314
  value: function unregisterMap(name) {
@@ -342,10 +316,10 @@ export var IndexMapper = /*#__PURE__*/function () {
342
316
  this.hidingMapsCollection.unregister(name);
343
317
  this.variousMapsCollection.unregister(name);
344
318
  }
319
+
345
320
  /**
346
321
  * Unregisters all collected index map instances from all map collection types.
347
322
  */
348
-
349
323
  }, {
350
324
  key: "unregisterAll",
351
325
  value: function unregisterAll() {
@@ -353,91 +327,90 @@ export var IndexMapper = /*#__PURE__*/function () {
353
327
  this.hidingMapsCollection.unregisterAll();
354
328
  this.variousMapsCollection.unregisterAll();
355
329
  }
330
+
356
331
  /**
357
332
  * Get a physical index corresponding to the given visual index.
358
333
  *
359
334
  * @param {number} visualIndex Visual index.
360
335
  * @returns {number|null} Returns translated index mapped by passed visual index.
361
336
  */
362
-
363
337
  }, {
364
338
  key: "getPhysicalFromVisualIndex",
365
339
  value: function getPhysicalFromVisualIndex(visualIndex) {
366
340
  // Index in the table boundaries provided by the `DataMap`.
367
341
  var physicalIndex = this.notTrimmedIndexesCache[visualIndex];
368
-
369
342
  if (isDefined(physicalIndex)) {
370
343
  return physicalIndex;
371
344
  }
372
-
373
345
  return null;
374
346
  }
347
+
375
348
  /**
376
349
  * Get a physical index corresponding to the given renderable index.
377
350
  *
378
351
  * @param {number} renderableIndex Renderable index.
379
352
  * @returns {null|number}
380
353
  */
381
-
382
354
  }, {
383
355
  key: "getPhysicalFromRenderableIndex",
384
356
  value: function getPhysicalFromRenderableIndex(renderableIndex) {
385
- var physicalIndex = this.renderablePhysicalIndexesCache[renderableIndex]; // Index in the renderable table boundaries.
357
+ var physicalIndex = this.renderablePhysicalIndexesCache[renderableIndex];
386
358
 
359
+ // Index in the renderable table boundaries.
387
360
  if (isDefined(physicalIndex)) {
388
361
  return physicalIndex;
389
362
  }
390
-
391
363
  return null;
392
364
  }
365
+
393
366
  /**
394
367
  * Get a visual index corresponding to the given physical index.
395
368
  *
396
369
  * @param {number} physicalIndex Physical index to search.
397
370
  * @returns {number|null} Returns a visual index of the index mapper.
398
371
  */
399
-
400
372
  }, {
401
373
  key: "getVisualFromPhysicalIndex",
402
374
  value: function getVisualFromPhysicalIndex(physicalIndex) {
403
- var visualIndex = this.fromPhysicalToVisualIndexesCache.get(physicalIndex); // Index in the table boundaries provided by the `DataMap`.
375
+ var visualIndex = this.fromPhysicalToVisualIndexesCache.get(physicalIndex);
404
376
 
377
+ // Index in the table boundaries provided by the `DataMap`.
405
378
  if (isDefined(visualIndex)) {
406
379
  return visualIndex;
407
380
  }
408
-
409
381
  return null;
410
382
  }
383
+
411
384
  /**
412
385
  * Get a visual index corresponding to the given renderable index.
413
386
  *
414
387
  * @param {number} renderableIndex Renderable index.
415
388
  * @returns {null|number}
416
389
  */
417
-
418
390
  }, {
419
391
  key: "getVisualFromRenderableIndex",
420
392
  value: function getVisualFromRenderableIndex(renderableIndex) {
421
393
  return this.getVisualFromPhysicalIndex(this.getPhysicalFromRenderableIndex(renderableIndex));
422
394
  }
395
+
423
396
  /**
424
397
  * Get a renderable index corresponding to the given visual index.
425
398
  *
426
399
  * @param {number} visualIndex Visual index.
427
400
  * @returns {null|number}
428
401
  */
429
-
430
402
  }, {
431
403
  key: "getRenderableFromVisualIndex",
432
404
  value: function getRenderableFromVisualIndex(visualIndex) {
433
- var renderableIndex = this.fromVisualToRenderableIndexesCache.get(visualIndex); // Index in the renderable table boundaries.
405
+ var renderableIndex = this.fromVisualToRenderableIndexesCache.get(visualIndex);
434
406
 
407
+ // Index in the renderable table boundaries.
435
408
  if (isDefined(renderableIndex)) {
436
409
  return renderableIndex;
437
410
  }
438
-
439
411
  return null;
440
412
  }
413
+
441
414
  /**
442
415
  * Search for the first visible, not hidden index (represented by a visual index).
443
416
  *
@@ -459,37 +432,34 @@ export var IndexMapper = /*#__PURE__*/function () {
459
432
  *
460
433
  * @returns {number|null} Visual column index or `null`.
461
434
  */
462
-
463
435
  }, {
464
436
  key: "getFirstNotHiddenIndex",
465
437
  value: function getFirstNotHiddenIndex(fromVisualIndex, incrementBy) {
466
438
  var searchAlsoOtherWayAround = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
467
439
  var indexForNextSearch = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : fromVisualIndex - incrementBy;
468
-
469
440
  if (deprecationWarns.has('getFirstNotHiddenIndex')) {
470
441
  deprecationWarns.delete('getFirstNotHiddenIndex');
471
442
  warn(toSingleLine(_templateObject || (_templateObject = _taggedTemplateLiteral(["The method \"getFirstNotHiddenIndex\" is deprecated and will be removed in the next \n major release. Please use \"getNearestNotHiddenIndex\" instead."], ["The method \"getFirstNotHiddenIndex\" is deprecated and will be removed in the next\\x20\n major release. Please use \"getNearestNotHiddenIndex\" instead."]))));
472
443
  }
444
+ var physicalIndex = this.getPhysicalFromVisualIndex(fromVisualIndex);
473
445
 
474
- var physicalIndex = this.getPhysicalFromVisualIndex(fromVisualIndex); // First or next (it may be end of the table) index is beyond the table boundaries.
475
-
446
+ // First or next (it may be end of the table) index is beyond the table boundaries.
476
447
  if (physicalIndex === null) {
477
448
  // Looking for the next index in the opposite direction. This conditional won't be fulfilled when we STARTED
478
449
  // the search from the index beyond the table boundaries.
479
450
  if (searchAlsoOtherWayAround === true && indexForNextSearch !== fromVisualIndex - incrementBy) {
480
451
  return this.getFirstNotHiddenIndex(indexForNextSearch, -incrementBy, false, indexForNextSearch);
481
452
  }
482
-
483
453
  return null;
484
454
  }
485
-
486
455
  if (this.isHidden(physicalIndex) === false) {
487
456
  return fromVisualIndex;
488
- } // Looking for the next index, as the current isn't visible.
489
-
457
+ }
490
458
 
459
+ // Looking for the next index, as the current isn't visible.
491
460
  return this.getFirstNotHiddenIndex(fromVisualIndex + incrementBy, incrementBy, searchAlsoOtherWayAround, indexForNextSearch);
492
461
  }
462
+
493
463
  /**
494
464
  * Search for the nearest not-hidden row or column.
495
465
  *
@@ -502,24 +472,19 @@ export var IndexMapper = /*#__PURE__*/function () {
502
472
  *
503
473
  * @returns {number|null} A visual index of a row or column, or `null`.
504
474
  */
505
-
506
475
  }, {
507
476
  key: "getNearestNotHiddenIndex",
508
477
  value: function getNearestNotHiddenIndex(fromVisualIndex, searchDirection) {
509
478
  var searchAlsoOtherWayAround = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
510
479
  var physicalIndex = this.getPhysicalFromVisualIndex(fromVisualIndex);
511
-
512
480
  if (physicalIndex === null) {
513
481
  return null;
514
482
  }
515
-
516
483
  if (this.fromVisualToRenderableIndexesCache.has(fromVisualIndex)) {
517
484
  return fromVisualIndex;
518
485
  }
519
-
520
486
  var visibleIndexes = Array.from(this.fromVisualToRenderableIndexesCache.keys());
521
487
  var index = -1;
522
-
523
488
  if (searchDirection > 0) {
524
489
  index = visibleIndexes.findIndex(function (visualIndex) {
525
490
  return visualIndex > fromVisualIndex;
@@ -529,23 +494,20 @@ export var IndexMapper = /*#__PURE__*/function () {
529
494
  return visualIndex < fromVisualIndex;
530
495
  });
531
496
  }
532
-
533
497
  if (index === -1) {
534
498
  if (searchAlsoOtherWayAround) {
535
499
  return this.getNearestNotHiddenIndex(fromVisualIndex, -searchDirection, false);
536
500
  }
537
-
538
501
  return null;
539
502
  }
540
-
541
503
  return visibleIndexes[index];
542
504
  }
505
+
543
506
  /**
544
507
  * Set default values for all indexes in registered index maps.
545
508
  *
546
509
  * @param {number} [length] Destination length for all stored index maps.
547
510
  */
548
-
549
511
  }, {
550
512
  key: "initToLength",
551
513
  value: function initToLength() {
@@ -555,58 +517,59 @@ export var IndexMapper = /*#__PURE__*/function () {
555
517
  this.suspendOperations();
556
518
  this.indexesSequence.init(length);
557
519
  this.trimmingMapsCollection.initEvery(length);
558
- this.resumeOperations(); // We move initialization of hidden collection to next batch for purpose of working on sequence of already trimmed indexes.
520
+ this.resumeOperations();
559
521
 
522
+ // We move initialization of hidden collection to next batch for purpose of working on sequence of already trimmed indexes.
560
523
  this.suspendOperations();
561
- this.hidingMapsCollection.initEvery(length); // It shouldn't reset the cache.
524
+ this.hidingMapsCollection.initEvery(length);
562
525
 
526
+ // It shouldn't reset the cache.
563
527
  this.variousMapsCollection.initEvery(length);
564
528
  this.resumeOperations();
565
529
  this.runLocalHooks('init');
566
530
  }
531
+
567
532
  /**
568
533
  * Trim/extend the mappers to fit the desired length.
569
534
  *
570
535
  * @param {number} length New mapper length.
571
536
  */
572
-
573
537
  }, {
574
538
  key: "fitToLength",
575
539
  value: function fitToLength(length) {
576
540
  var currentIndexCount = this.getNumberOfIndexes();
577
-
578
541
  if (length < currentIndexCount) {
579
542
  var indexesToBeRemoved = _toConsumableArray(Array(this.getNumberOfIndexes() - length).keys()).map(function (i) {
580
543
  return i + length;
581
544
  });
582
-
583
545
  this.removeIndexes(indexesToBeRemoved);
584
546
  } else {
585
547
  this.insertIndexes(currentIndexCount, length - currentIndexCount);
586
548
  }
587
549
  }
550
+
588
551
  /**
589
552
  * Get sequence of indexes.
590
553
  *
591
554
  * @returns {Array} Physical indexes.
592
555
  */
593
-
594
556
  }, {
595
557
  key: "getIndexesSequence",
596
558
  value: function getIndexesSequence() {
597
559
  return this.indexesSequence.getValues();
598
560
  }
561
+
599
562
  /**
600
563
  * Set completely new indexes sequence.
601
564
  *
602
565
  * @param {Array} indexes Physical indexes.
603
566
  */
604
-
605
567
  }, {
606
568
  key: "setIndexesSequence",
607
569
  value: function setIndexesSequence(indexes) {
608
570
  this.indexesSequence.setValues(indexes);
609
571
  }
572
+
610
573
  /**
611
574
  * Get all NOT trimmed indexes.
612
575
  *
@@ -616,23 +579,20 @@ export var IndexMapper = /*#__PURE__*/function () {
616
579
  * @returns {Array} List of physical indexes. Index of this native array is a "visual index",
617
580
  * value of this native array is a "physical index".
618
581
  */
619
-
620
582
  }, {
621
583
  key: "getNotTrimmedIndexes",
622
584
  value: function getNotTrimmedIndexes() {
623
585
  var _this2 = this;
624
-
625
586
  var readFromCache = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
626
-
627
587
  if (readFromCache === true) {
628
588
  return this.notTrimmedIndexesCache;
629
589
  }
630
-
631
590
  var indexesSequence = this.getIndexesSequence();
632
591
  return indexesSequence.filter(function (physicalIndex) {
633
592
  return _this2.isTrimmed(physicalIndex) === false;
634
593
  });
635
594
  }
595
+
636
596
  /**
637
597
  * Get length of all NOT trimmed indexes.
638
598
  *
@@ -640,12 +600,12 @@ export var IndexMapper = /*#__PURE__*/function () {
640
600
  *
641
601
  * @returns {number}
642
602
  */
643
-
644
603
  }, {
645
604
  key: "getNotTrimmedIndexesLength",
646
605
  value: function getNotTrimmedIndexesLength() {
647
606
  return this.getNotTrimmedIndexes().length;
648
607
  }
608
+
649
609
  /**
650
610
  * Get all NOT hidden indexes.
651
611
  *
@@ -654,23 +614,20 @@ export var IndexMapper = /*#__PURE__*/function () {
654
614
  * @param {boolean} [readFromCache=true] Determine if read indexes from cache.
655
615
  * @returns {Array} List of physical indexes. Please keep in mind that index of this native array IS NOT a "visual index".
656
616
  */
657
-
658
617
  }, {
659
618
  key: "getNotHiddenIndexes",
660
619
  value: function getNotHiddenIndexes() {
661
620
  var _this3 = this;
662
-
663
621
  var readFromCache = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
664
-
665
622
  if (readFromCache === true) {
666
623
  return this.notHiddenIndexesCache;
667
624
  }
668
-
669
625
  var indexesSequence = this.getIndexesSequence();
670
626
  return indexesSequence.filter(function (physicalIndex) {
671
627
  return _this3.isHidden(physicalIndex) === false;
672
628
  });
673
629
  }
630
+
674
631
  /**
675
632
  * Get length of all NOT hidden indexes.
676
633
  *
@@ -678,12 +635,12 @@ export var IndexMapper = /*#__PURE__*/function () {
678
635
  *
679
636
  * @returns {number}
680
637
  */
681
-
682
638
  }, {
683
639
  key: "getNotHiddenIndexesLength",
684
640
  value: function getNotHiddenIndexesLength() {
685
641
  return this.getNotHiddenIndexes().length;
686
642
  }
643
+
687
644
  /**
688
645
  * Get list of physical indexes (respecting the sequence of indexes) which may be rendered (when they are in a viewport).
689
646
  *
@@ -691,106 +648,104 @@ export var IndexMapper = /*#__PURE__*/function () {
691
648
  * @returns {Array} List of physical indexes. Index of this native array is a "renderable index",
692
649
  * value of this native array is a "physical index".
693
650
  */
694
-
695
651
  }, {
696
652
  key: "getRenderableIndexes",
697
653
  value: function getRenderableIndexes() {
698
654
  var _this4 = this;
699
-
700
655
  var readFromCache = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
701
-
702
656
  if (readFromCache === true) {
703
657
  return this.renderablePhysicalIndexesCache;
704
658
  }
705
-
706
659
  var notTrimmedIndexes = this.getNotTrimmedIndexes();
707
660
  return notTrimmedIndexes.filter(function (physicalIndex) {
708
661
  return _this4.isHidden(physicalIndex) === false;
709
662
  });
710
663
  }
664
+
711
665
  /**
712
666
  * Get length of all NOT trimmed and NOT hidden indexes.
713
667
  *
714
668
  * @returns {number}
715
669
  */
716
-
717
670
  }, {
718
671
  key: "getRenderableIndexesLength",
719
672
  value: function getRenderableIndexesLength() {
720
673
  return this.getRenderableIndexes().length;
721
674
  }
675
+
722
676
  /**
723
677
  * Get number of all indexes.
724
678
  *
725
679
  * @returns {number}
726
680
  */
727
-
728
681
  }, {
729
682
  key: "getNumberOfIndexes",
730
683
  value: function getNumberOfIndexes() {
731
684
  return this.getIndexesSequence().length;
732
685
  }
686
+
733
687
  /**
734
688
  * Move indexes in the index mapper.
735
689
  *
736
690
  * @param {number|Array} movedIndexes Visual index(es) to move.
737
691
  * @param {number} finalIndex Visual index being a start index for the moved elements.
738
692
  */
739
-
740
693
  }, {
741
694
  key: "moveIndexes",
742
695
  value: function moveIndexes(movedIndexes, finalIndex) {
743
696
  var _this5 = this;
744
-
745
697
  if (typeof movedIndexes === 'number') {
746
698
  movedIndexes = [movedIndexes];
747
699
  }
748
-
749
700
  var physicalMovedIndexes = arrayMap(movedIndexes, function (visualIndex) {
750
701
  return _this5.getPhysicalFromVisualIndex(visualIndex);
751
702
  });
752
703
  var notTrimmedIndexesLength = this.getNotTrimmedIndexesLength();
753
- var movedIndexesLength = movedIndexes.length; // Removing indexes without re-indexing.
704
+ var movedIndexesLength = movedIndexes.length;
754
705
 
755
- var listWithRemovedItems = getListWithRemovedItems(this.getIndexesSequence(), physicalMovedIndexes); // When item(s) are moved after the last visible item we assign the last possible index.
706
+ // Removing indexes without re-indexing.
707
+ var listWithRemovedItems = getListWithRemovedItems(this.getIndexesSequence(), physicalMovedIndexes);
756
708
 
757
- var destinationPosition = notTrimmedIndexesLength - movedIndexesLength; // Otherwise, we find proper index for inserted item(s).
709
+ // When item(s) are moved after the last visible item we assign the last possible index.
710
+ var destinationPosition = notTrimmedIndexesLength - movedIndexesLength;
758
711
 
712
+ // Otherwise, we find proper index for inserted item(s).
759
713
  if (finalIndex + movedIndexesLength < notTrimmedIndexesLength) {
760
714
  // Physical index at final index position.
761
715
  var physicalIndex = listWithRemovedItems.filter(function (index) {
762
716
  return _this5.isTrimmed(index) === false;
763
717
  })[finalIndex];
764
718
  destinationPosition = listWithRemovedItems.indexOf(physicalIndex);
765
- } // Adding indexes without re-indexing.
766
-
719
+ }
767
720
 
721
+ // Adding indexes without re-indexing.
768
722
  this.setIndexesSequence(getListWithInsertedItems(listWithRemovedItems, destinationPosition, physicalMovedIndexes));
769
723
  }
724
+
770
725
  /**
771
726
  * Get whether index is trimmed. Index marked as trimmed isn't included in a {@link DataMap} and isn't rendered.
772
727
  *
773
728
  * @param {number} physicalIndex Physical index.
774
729
  * @returns {boolean}
775
730
  */
776
-
777
731
  }, {
778
732
  key: "isTrimmed",
779
733
  value: function isTrimmed(physicalIndex) {
780
734
  return this.trimmingMapsCollection.getMergedValueAtIndex(physicalIndex);
781
735
  }
736
+
782
737
  /**
783
738
  * Get whether index is hidden. Index marked as hidden is included in a {@link DataMap}, but isn't rendered.
784
739
  *
785
740
  * @param {number} physicalIndex Physical index.
786
741
  * @returns {boolean}
787
742
  */
788
-
789
743
  }, {
790
744
  key: "isHidden",
791
745
  value: function isHidden(physicalIndex) {
792
746
  return this.hidingMapsCollection.getMergedValueAtIndex(physicalIndex);
793
747
  }
748
+
794
749
  /**
795
750
  * Insert new indexes and corresponding mapping and update values of the others, for all stored index maps.
796
751
  *
@@ -798,7 +753,6 @@ export var IndexMapper = /*#__PURE__*/function () {
798
753
  * @param {number} firstInsertedVisualIndex First inserted visual index.
799
754
  * @param {number} amountOfIndexes Amount of inserted indexes.
800
755
  */
801
-
802
756
  }, {
803
757
  key: "insertIndexes",
804
758
  value: function insertIndexes(firstInsertedVisualIndex, amountOfIndexes) {
@@ -815,13 +769,13 @@ export var IndexMapper = /*#__PURE__*/function () {
815
769
  this.variousMapsCollection.insertToEvery(insertionIndex, insertedIndexes);
816
770
  this.resumeOperations();
817
771
  }
772
+
818
773
  /**
819
774
  * Remove some indexes and corresponding mappings and update values of the others, for all stored index maps.
820
775
  *
821
776
  * @private
822
777
  * @param {Array} removedIndexes List of removed indexes.
823
778
  */
824
-
825
779
  }, {
826
780
  key: "removeIndexes",
827
781
  value: function removeIndexes(removedIndexes) {
@@ -832,6 +786,7 @@ export var IndexMapper = /*#__PURE__*/function () {
832
786
  this.variousMapsCollection.removeFromEvery(removedIndexes);
833
787
  this.resumeOperations();
834
788
  }
789
+
835
790
  /**
836
791
  * Rebuild cache for some indexes. Every action on indexes sequence or indexes skipped in the process of rendering
837
792
  * by default reset cache, thus batching some index maps actions is recommended.
@@ -839,13 +794,11 @@ export var IndexMapper = /*#__PURE__*/function () {
839
794
  * @private
840
795
  * @param {boolean} [force=false] Determine if force cache update.
841
796
  */
842
-
843
797
  }, {
844
798
  key: "updateCache",
845
799
  value: function updateCache() {
846
800
  var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
847
801
  var anyCachedIndexChanged = this.indexesSequenceChanged || this.trimmedIndexesChanged || this.hiddenIndexesChanged;
848
-
849
802
  if (force === true || this.isBatched === false && anyCachedIndexChanged === true) {
850
803
  this.trimmingMapsCollection.updateCache();
851
804
  this.hidingMapsCollection.updateCache();
@@ -853,12 +806,12 @@ export var IndexMapper = /*#__PURE__*/function () {
853
806
  this.notHiddenIndexesCache = this.getNotHiddenIndexes(false);
854
807
  this.renderablePhysicalIndexesCache = this.getRenderableIndexes(false);
855
808
  this.cacheFromPhysicalToVisualIndexes();
856
- this.cacheFromVisualToRenderableIndexes(); // Currently there's support only for the "hiding" map type.
809
+ this.cacheFromVisualToRenderableIndexes();
857
810
 
811
+ // Currently there's support only for the "hiding" map type.
858
812
  if (this.hiddenIndexesChanged) {
859
813
  this.hidingChangesObservable.emit(this.hidingMapsCollection.getMergedValues());
860
814
  }
861
-
862
815
  this.runLocalHooks('cacheUpdated', {
863
816
  indexesSequenceChanged: this.indexesSequenceChanged,
864
817
  trimmedIndexesChanged: this.trimmedIndexesChanged,
@@ -869,37 +822,36 @@ export var IndexMapper = /*#__PURE__*/function () {
869
822
  this.hiddenIndexesChanged = false;
870
823
  }
871
824
  }
825
+
872
826
  /**
873
827
  * Update cache for translations from physical to visual indexes.
874
828
  *
875
829
  * @private
876
830
  */
877
-
878
831
  }, {
879
832
  key: "cacheFromPhysicalToVisualIndexes",
880
833
  value: function cacheFromPhysicalToVisualIndexes() {
881
834
  var nrOfNotTrimmedIndexes = this.getNotTrimmedIndexesLength();
882
835
  this.fromPhysicalToVisualIndexesCache.clear();
883
-
884
836
  for (var visualIndex = 0; visualIndex < nrOfNotTrimmedIndexes; visualIndex += 1) {
885
- var physicalIndex = this.getPhysicalFromVisualIndex(visualIndex); // Every visual index have corresponding physical index, but some physical indexes may don't have
886
- // corresponding visual indexes (physical indexes may represent trimmed indexes, beyond the table boundaries)
837
+ var physicalIndex = this.getPhysicalFromVisualIndex(visualIndex);
887
838
 
839
+ // Every visual index have corresponding physical index, but some physical indexes may don't have
840
+ // corresponding visual indexes (physical indexes may represent trimmed indexes, beyond the table boundaries)
888
841
  this.fromPhysicalToVisualIndexesCache.set(physicalIndex, visualIndex);
889
842
  }
890
843
  }
844
+
891
845
  /**
892
846
  * Update cache for translations from visual to renderable indexes.
893
847
  *
894
848
  * @private
895
849
  */
896
-
897
850
  }, {
898
851
  key: "cacheFromVisualToRenderableIndexes",
899
852
  value: function cacheFromVisualToRenderableIndexes() {
900
853
  var nrOfRenderableIndexes = this.getRenderableIndexesLength();
901
854
  this.fromVisualToRenderableIndexesCache.clear();
902
-
903
855
  for (var renderableIndex = 0; renderableIndex < nrOfRenderableIndexes; renderableIndex += 1) {
904
856
  // Can't use getRenderableFromVisualIndex here because we're building the cache here
905
857
  var physicalIndex = this.getPhysicalFromRenderableIndex(renderableIndex);
@@ -908,7 +860,6 @@ export var IndexMapper = /*#__PURE__*/function () {
908
860
  }
909
861
  }
910
862
  }]);
911
-
912
863
  return IndexMapper;
913
864
  }();
914
865
  mixin(IndexMapper, localHooks);