handsontable 12.1.3 → 12.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (914) hide show
  1. package/3rdparty/SheetClip/SheetClip.js +3 -32
  2. package/3rdparty/SheetClip/SheetClip.mjs +3 -23
  3. package/3rdparty/SheetClip/index.js +0 -2
  4. package/3rdparty/autoResize/autoResize.js +119 -145
  5. package/3rdparty/autoResize/autoResize.mjs +119 -143
  6. package/3rdparty/autoResize/index.js +0 -2
  7. package/3rdparty/walkontable/src/border.js +34 -151
  8. package/3rdparty/walkontable/src/border.mjs +36 -138
  9. package/3rdparty/walkontable/src/calculator/constants.js +0 -3
  10. package/3rdparty/walkontable/src/calculator/constants.mjs +0 -2
  11. package/3rdparty/walkontable/src/calculator/index.js +0 -10
  12. package/3rdparty/walkontable/src/calculator/viewportColumns.js +26 -76
  13. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +26 -69
  14. package/3rdparty/walkontable/src/calculator/viewportRows.js +20 -48
  15. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +20 -41
  16. package/3rdparty/walkontable/src/cell/coords.js +13 -43
  17. package/3rdparty/walkontable/src/cell/coords.mjs +13 -38
  18. package/3rdparty/walkontable/src/cell/range.js +55 -130
  19. package/3rdparty/walkontable/src/cell/range.mjs +60 -126
  20. package/3rdparty/walkontable/src/core/_base.js +16 -74
  21. package/3rdparty/walkontable/src/core/_base.mjs +19 -70
  22. package/3rdparty/walkontable/src/core/clone.js +1 -40
  23. package/3rdparty/walkontable/src/core/clone.mjs +3 -30
  24. package/3rdparty/walkontable/src/core/core.js +3 -57
  25. package/3rdparty/walkontable/src/core/core.mjs +5 -41
  26. package/3rdparty/walkontable/src/event.js +31 -78
  27. package/3rdparty/walkontable/src/event.mjs +31 -65
  28. package/3rdparty/walkontable/src/facade/core.js +1 -17
  29. package/3rdparty/walkontable/src/facade/core.mjs +7 -20
  30. package/3rdparty/walkontable/src/filter/column.js +9 -18
  31. package/3rdparty/walkontable/src/filter/column.mjs +9 -17
  32. package/3rdparty/walkontable/src/filter/row.js +9 -18
  33. package/3rdparty/walkontable/src/filter/row.mjs +9 -17
  34. package/3rdparty/walkontable/src/index.js +0 -31
  35. package/3rdparty/walkontable/src/overlay/_base.js +24 -69
  36. package/3rdparty/walkontable/src/overlay/_base.mjs +31 -68
  37. package/3rdparty/walkontable/src/overlay/bottom.js +28 -99
  38. package/3rdparty/walkontable/src/overlay/bottom.mjs +30 -86
  39. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +7 -53
  40. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +9 -40
  41. package/3rdparty/walkontable/src/overlay/constants.js +0 -6
  42. package/3rdparty/walkontable/src/overlay/constants.mjs +0 -1
  43. package/3rdparty/walkontable/src/overlay/index.js +0 -17
  44. package/3rdparty/walkontable/src/overlay/inlineStart.js +21 -91
  45. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +23 -78
  46. package/3rdparty/walkontable/src/overlay/top.js +27 -100
  47. package/3rdparty/walkontable/src/overlay/top.mjs +29 -87
  48. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +4 -51
  49. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +6 -38
  50. package/3rdparty/walkontable/src/overlays.js +58 -129
  51. package/3rdparty/walkontable/src/overlays.mjs +60 -121
  52. package/3rdparty/walkontable/src/renderer/_base.js +4 -20
  53. package/3rdparty/walkontable/src/renderer/_base.mjs +8 -22
  54. package/3rdparty/walkontable/src/renderer/cells.js +10 -54
  55. package/3rdparty/walkontable/src/renderer/cells.mjs +22 -52
  56. package/3rdparty/walkontable/src/renderer/colGroup.js +10 -47
  57. package/3rdparty/walkontable/src/renderer/colGroup.mjs +21 -46
  58. package/3rdparty/walkontable/src/renderer/columnHeaders.js +8 -50
  59. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +19 -49
  60. package/3rdparty/walkontable/src/renderer/index.js +13 -36
  61. package/3rdparty/walkontable/src/renderer/index.mjs +17 -27
  62. package/3rdparty/walkontable/src/renderer/rowHeaders.js +8 -50
  63. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +20 -49
  64. package/3rdparty/walkontable/src/renderer/rows.js +3 -46
  65. package/3rdparty/walkontable/src/renderer/rows.mjs +3 -29
  66. package/3rdparty/walkontable/src/renderer/table.js +22 -49
  67. package/3rdparty/walkontable/src/renderer/table.mjs +22 -48
  68. package/3rdparty/walkontable/src/scroll.js +56 -86
  69. package/3rdparty/walkontable/src/scroll.mjs +58 -86
  70. package/3rdparty/walkontable/src/selection.js +20 -101
  71. package/3rdparty/walkontable/src/selection.mjs +22 -85
  72. package/3rdparty/walkontable/src/settings.js +9 -29
  73. package/3rdparty/walkontable/src/settings.mjs +9 -27
  74. package/3rdparty/walkontable/src/table/bottom.js +1 -35
  75. package/3rdparty/walkontable/src/table/bottom.mjs +6 -25
  76. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +1 -35
  77. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +7 -26
  78. package/3rdparty/walkontable/src/table/inlineStart.js +1 -35
  79. package/3rdparty/walkontable/src/table/inlineStart.mjs +3 -22
  80. package/3rdparty/walkontable/src/table/master.js +10 -55
  81. package/3rdparty/walkontable/src/table/master.mjs +15 -44
  82. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +7 -28
  83. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +7 -26
  84. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +7 -28
  85. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +7 -26
  86. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +7 -22
  87. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +7 -20
  88. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +7 -23
  89. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +7 -21
  90. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +7 -22
  91. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +7 -20
  92. package/3rdparty/walkontable/src/table/top.js +1 -35
  93. package/3rdparty/walkontable/src/table/top.mjs +6 -25
  94. package/3rdparty/walkontable/src/table/topInlineStartCorner.js +1 -35
  95. package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +7 -26
  96. package/3rdparty/walkontable/src/table.js +63 -230
  97. package/3rdparty/walkontable/src/table.mjs +73 -219
  98. package/3rdparty/walkontable/src/types.js +0 -5
  99. package/3rdparty/walkontable/src/types.mjs +0 -5
  100. package/3rdparty/walkontable/src/utils/column.js +9 -31
  101. package/3rdparty/walkontable/src/utils/column.mjs +13 -30
  102. package/3rdparty/walkontable/src/utils/nodesPool.js +3 -12
  103. package/3rdparty/walkontable/src/utils/nodesPool.mjs +3 -11
  104. package/3rdparty/walkontable/src/utils/orderView/constants.js +0 -3
  105. package/3rdparty/walkontable/src/utils/orderView/constants.mjs +0 -2
  106. package/3rdparty/walkontable/src/utils/orderView/index.js +0 -5
  107. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +2 -33
  108. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +6 -26
  109. package/3rdparty/walkontable/src/utils/orderView/view.js +14 -46
  110. package/3rdparty/walkontable/src/utils/orderView/view.mjs +21 -50
  111. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +3 -15
  112. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +3 -14
  113. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +8 -22
  114. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +23 -34
  115. package/3rdparty/walkontable/src/utils/row.js +2 -13
  116. package/3rdparty/walkontable/src/utils/row.mjs +2 -12
  117. package/3rdparty/walkontable/src/viewport.js +38 -100
  118. package/3rdparty/walkontable/src/viewport.mjs +40 -99
  119. package/CHANGELOG.md +76 -1
  120. package/base.js +6 -17
  121. package/base.mjs +6 -12
  122. package/cellTypes/autocompleteType/autocompleteType.js +0 -4
  123. package/cellTypes/autocompleteType/index.js +0 -2
  124. package/cellTypes/checkboxType/checkboxType.js +0 -3
  125. package/cellTypes/checkboxType/index.js +0 -2
  126. package/cellTypes/dateType/dateType.js +0 -4
  127. package/cellTypes/dateType/index.js +0 -2
  128. package/cellTypes/dropdownType/dropdownType.js +0 -4
  129. package/cellTypes/dropdownType/index.js +0 -2
  130. package/cellTypes/handsontableType/handsontableType.js +0 -3
  131. package/cellTypes/handsontableType/index.js +0 -2
  132. package/cellTypes/index.js +0 -21
  133. package/cellTypes/index.mjs +3 -5
  134. package/cellTypes/numericType/index.js +0 -2
  135. package/cellTypes/numericType/numericType.js +0 -4
  136. package/cellTypes/passwordType/index.js +0 -2
  137. package/cellTypes/passwordType/passwordType.js +0 -3
  138. package/cellTypes/registry.js +10 -25
  139. package/cellTypes/registry.mjs +10 -20
  140. package/cellTypes/textType/index.js +0 -2
  141. package/cellTypes/textType/textType.js +0 -3
  142. package/cellTypes/timeType/index.js +0 -2
  143. package/cellTypes/timeType/timeType.js +0 -4
  144. package/core.d.ts +5 -1
  145. package/core.js +505 -973
  146. package/core.mjs +510 -920
  147. package/dataMap/dataMap.js +106 -210
  148. package/dataMap/dataMap.mjs +106 -184
  149. package/{dataSource.js → dataMap/dataSource.js} +18 -66
  150. package/{dataSource.mjs → dataMap/dataSource.mjs} +20 -60
  151. package/dataMap/index.js +0 -13
  152. package/dataMap/metaManager/index.js +21 -46
  153. package/dataMap/metaManager/index.mjs +47 -64
  154. package/dataMap/metaManager/lazyFactoryMap.js +10 -61
  155. package/dataMap/metaManager/lazyFactoryMap.mjs +10 -45
  156. package/dataMap/metaManager/metaLayers/cellMeta.js +16 -52
  157. package/dataMap/metaManager/metaLayers/cellMeta.mjs +16 -37
  158. package/dataMap/metaManager/metaLayers/columnMeta.js +8 -22
  159. package/dataMap/metaManager/metaLayers/columnMeta.mjs +14 -25
  160. package/dataMap/metaManager/metaLayers/globalMeta.js +4 -19
  161. package/dataMap/metaManager/metaLayers/globalMeta.mjs +4 -15
  162. package/dataMap/metaManager/metaLayers/tableMeta.js +4 -15
  163. package/dataMap/metaManager/metaLayers/tableMeta.mjs +28 -37
  164. package/dataMap/metaManager/metaSchema.js +86 -179
  165. package/dataMap/metaManager/metaSchema.mjs +86 -170
  166. package/dataMap/metaManager/mods/dynamicCellMeta.js +6 -36
  167. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +20 -39
  168. package/dataMap/metaManager/mods/extendMetaProperties.js +5 -28
  169. package/dataMap/metaManager/mods/extendMetaProperties.mjs +4 -18
  170. package/dataMap/metaManager/utils.js +11 -20
  171. package/dataMap/metaManager/utils.mjs +21 -23
  172. package/dataMap/replaceData.js +14 -35
  173. package/dataMap/replaceData.mjs +35 -45
  174. package/dist/handsontable.css +2 -2
  175. package/dist/handsontable.full.css +2 -2
  176. package/dist/handsontable.full.js +8478 -20043
  177. package/dist/handsontable.full.min.css +2 -2
  178. package/dist/handsontable.full.min.js +55 -55
  179. package/dist/handsontable.js +7995 -19560
  180. package/dist/handsontable.min.css +2 -2
  181. package/dist/handsontable.min.js +3 -3
  182. package/dist/languages/all.js +0 -175
  183. package/dist/languages/ar-AR.js +0 -10
  184. package/dist/languages/cs-CZ.js +0 -10
  185. package/dist/languages/de-CH.js +0 -10
  186. package/dist/languages/de-DE.js +0 -10
  187. package/dist/languages/en-US.js +0 -10
  188. package/dist/languages/es-MX.js +0 -10
  189. package/dist/languages/fr-FR.js +0 -10
  190. package/dist/languages/it-IT.js +0 -10
  191. package/dist/languages/ja-JP.js +0 -10
  192. package/dist/languages/ko-KR.js +0 -10
  193. package/dist/languages/lv-LV.js +0 -10
  194. package/dist/languages/nb-NO.js +0 -10
  195. package/dist/languages/nl-NL.js +0 -10
  196. package/dist/languages/pl-PL.js +0 -10
  197. package/dist/languages/pt-BR.js +0 -10
  198. package/dist/languages/ru-RU.js +0 -10
  199. package/dist/languages/sr-SP.js +0 -10
  200. package/dist/languages/zh-CN.js +0 -10
  201. package/dist/languages/zh-TW.js +0 -10
  202. package/editorManager.js +36 -105
  203. package/editorManager.mjs +36 -85
  204. package/editors/autocompleteEditor/autocompleteEditor.js +26 -133
  205. package/editors/autocompleteEditor/autocompleteEditor.mjs +26 -104
  206. package/editors/autocompleteEditor/index.js +0 -2
  207. package/editors/baseEditor/baseEditor.js +44 -154
  208. package/editors/baseEditor/baseEditor.mjs +44 -128
  209. package/editors/baseEditor/index.js +0 -2
  210. package/editors/checkboxEditor/checkboxEditor.js +2 -33
  211. package/editors/checkboxEditor/checkboxEditor.mjs +2 -19
  212. package/editors/checkboxEditor/index.js +0 -2
  213. package/editors/dateEditor/dateEditor.js +20 -96
  214. package/editors/dateEditor/dateEditor.mjs +20 -75
  215. package/editors/dateEditor/index.js +0 -2
  216. package/editors/dropdownEditor/dropdownEditor.js +1 -41
  217. package/editors/dropdownEditor/dropdownEditor.mjs +1 -22
  218. package/editors/dropdownEditor/index.js +0 -2
  219. package/editors/handsontableEditor/handsontableEditor.js +13 -85
  220. package/editors/handsontableEditor/handsontableEditor.mjs +13 -66
  221. package/editors/handsontableEditor/index.js +0 -2
  222. package/editors/index.js +0 -25
  223. package/editors/index.mjs +3 -5
  224. package/editors/numericEditor/index.js +0 -2
  225. package/editors/numericEditor/numericEditor.js +1 -31
  226. package/editors/numericEditor/numericEditor.mjs +1 -18
  227. package/editors/passwordEditor/index.js +0 -2
  228. package/editors/passwordEditor/passwordEditor.js +1 -38
  229. package/editors/passwordEditor/passwordEditor.mjs +1 -22
  230. package/editors/registry.js +10 -36
  231. package/editors/registry.mjs +10 -28
  232. package/editors/selectEditor/index.js +0 -2
  233. package/editors/selectEditor/selectEditor.js +21 -73
  234. package/editors/selectEditor/selectEditor.mjs +21 -56
  235. package/editors/textEditor/caretPositioner.js +0 -8
  236. package/editors/textEditor/caretPositioner.mjs +10 -18
  237. package/editors/textEditor/index.js +0 -2
  238. package/editors/textEditor/textEditor.js +38 -137
  239. package/editors/textEditor/textEditor.mjs +38 -106
  240. package/editors/timeEditor/index.js +0 -2
  241. package/editors/timeEditor/timeEditor.js +1 -36
  242. package/editors/timeEditor/timeEditor.mjs +1 -21
  243. package/eventManager.js +20 -56
  244. package/eventManager.mjs +23 -56
  245. package/helpers/array.js +22 -88
  246. package/helpers/array.mjs +22 -58
  247. package/helpers/browser.js +25 -51
  248. package/helpers/browser.mjs +25 -32
  249. package/helpers/console.js +3 -13
  250. package/helpers/console.mjs +8 -16
  251. package/helpers/data.d.ts +0 -1
  252. package/helpers/data.js +10 -55
  253. package/helpers/data.mjs +10 -33
  254. package/helpers/date.js +2 -3
  255. package/helpers/date.mjs +2 -2
  256. package/helpers/dom/element.js +66 -256
  257. package/helpers/dom/element.mjs +73 -192
  258. package/helpers/dom/event.js +3 -7
  259. package/helpers/dom/event.mjs +3 -3
  260. package/helpers/feature.js +13 -47
  261. package/helpers/feature.mjs +13 -31
  262. package/helpers/function.js +14 -59
  263. package/helpers/function.mjs +20 -52
  264. package/helpers/mixed.js +9 -64
  265. package/helpers/mixed.mjs +15 -50
  266. package/helpers/number.js +4 -46
  267. package/helpers/number.mjs +4 -23
  268. package/helpers/object.js +15 -68
  269. package/helpers/object.mjs +21 -50
  270. package/helpers/string.js +6 -28
  271. package/helpers/string.mjs +12 -21
  272. package/helpers/templateLiteralTag.js +0 -6
  273. package/helpers/templateLiteralTag.mjs +7 -10
  274. package/helpers/unicode.js +17 -22
  275. package/helpers/unicode.mjs +17 -13
  276. package/helpers/wrappers/jquery.js +4 -14
  277. package/helpers/wrappers/jquery.mjs +4 -13
  278. package/i18n/constants.js +1 -3
  279. package/i18n/constants.mjs +1 -1
  280. package/i18n/index.js +0 -7
  281. package/i18n/languages/ar-AR.js +0 -16
  282. package/i18n/languages/ar-AR.mjs +1 -4
  283. package/i18n/languages/cs-CZ.js +0 -16
  284. package/i18n/languages/cs-CZ.mjs +1 -4
  285. package/i18n/languages/de-CH.js +0 -16
  286. package/i18n/languages/de-CH.mjs +1 -4
  287. package/i18n/languages/de-DE.js +0 -16
  288. package/i18n/languages/de-DE.mjs +1 -4
  289. package/i18n/languages/en-US.js +0 -16
  290. package/i18n/languages/en-US.mjs +1 -4
  291. package/i18n/languages/es-MX.js +0 -16
  292. package/i18n/languages/es-MX.mjs +1 -4
  293. package/i18n/languages/fr-FR.js +0 -16
  294. package/i18n/languages/fr-FR.mjs +1 -4
  295. package/i18n/languages/index.js +0 -39
  296. package/i18n/languages/it-IT.js +0 -16
  297. package/i18n/languages/it-IT.mjs +1 -4
  298. package/i18n/languages/ja-JP.js +0 -16
  299. package/i18n/languages/ja-JP.mjs +1 -4
  300. package/i18n/languages/ko-KR.js +0 -16
  301. package/i18n/languages/ko-KR.mjs +1 -4
  302. package/i18n/languages/lv-LV.js +0 -16
  303. package/i18n/languages/lv-LV.mjs +1 -4
  304. package/i18n/languages/nb-NO.js +0 -16
  305. package/i18n/languages/nb-NO.mjs +1 -4
  306. package/i18n/languages/nl-NL.js +0 -16
  307. package/i18n/languages/nl-NL.mjs +1 -4
  308. package/i18n/languages/pl-PL.js +0 -16
  309. package/i18n/languages/pl-PL.mjs +1 -4
  310. package/i18n/languages/pt-BR.js +0 -16
  311. package/i18n/languages/pt-BR.mjs +1 -4
  312. package/i18n/languages/ru-RU.js +0 -16
  313. package/i18n/languages/ru-RU.mjs +1 -4
  314. package/i18n/languages/sr-SP.js +0 -16
  315. package/i18n/languages/sr-SP.mjs +1 -4
  316. package/i18n/languages/zh-CN.js +0 -16
  317. package/i18n/languages/zh-CN.mjs +1 -4
  318. package/i18n/languages/zh-TW.js +0 -16
  319. package/i18n/languages/zh-TW.mjs +1 -4
  320. package/i18n/phraseFormatters/index.js +4 -11
  321. package/i18n/phraseFormatters/index.mjs +4 -6
  322. package/i18n/phraseFormatters/pluralize.js +0 -5
  323. package/i18n/phraseFormatters/pluralize.mjs +0 -3
  324. package/i18n/phraseFormatters/substituteVariables.js +0 -4
  325. package/i18n/phraseFormatters/substituteVariables.mjs +8 -11
  326. package/i18n/registry.js +18 -59
  327. package/i18n/registry.mjs +18 -30
  328. package/i18n/utils.js +4 -22
  329. package/i18n/utils.mjs +13 -21
  330. package/index.js +19 -56
  331. package/index.mjs +19 -15
  332. package/languages/all.js +0 -175
  333. package/languages/ar-AR.js +0 -10
  334. package/languages/ar-AR.mjs +1 -4
  335. package/languages/cs-CZ.js +0 -10
  336. package/languages/cs-CZ.mjs +1 -4
  337. package/languages/de-CH.js +0 -10
  338. package/languages/de-CH.mjs +1 -4
  339. package/languages/de-DE.js +0 -10
  340. package/languages/de-DE.mjs +1 -4
  341. package/languages/en-US.js +0 -10
  342. package/languages/en-US.mjs +1 -4
  343. package/languages/es-MX.js +0 -10
  344. package/languages/es-MX.mjs +1 -4
  345. package/languages/fr-FR.js +0 -10
  346. package/languages/fr-FR.mjs +1 -4
  347. package/languages/index.js +0 -175
  348. package/languages/it-IT.js +0 -10
  349. package/languages/it-IT.mjs +1 -4
  350. package/languages/ja-JP.js +0 -10
  351. package/languages/ja-JP.mjs +1 -4
  352. package/languages/ko-KR.js +0 -10
  353. package/languages/ko-KR.mjs +1 -4
  354. package/languages/lv-LV.js +0 -10
  355. package/languages/lv-LV.mjs +1 -4
  356. package/languages/nb-NO.js +0 -10
  357. package/languages/nb-NO.mjs +1 -4
  358. package/languages/nl-NL.js +0 -10
  359. package/languages/nl-NL.mjs +1 -4
  360. package/languages/pl-PL.js +0 -10
  361. package/languages/pl-PL.mjs +1 -4
  362. package/languages/pt-BR.js +0 -10
  363. package/languages/pt-BR.mjs +1 -4
  364. package/languages/ru-RU.js +0 -10
  365. package/languages/ru-RU.mjs +1 -4
  366. package/languages/sr-SP.js +0 -10
  367. package/languages/sr-SP.mjs +1 -4
  368. package/languages/zh-CN.js +0 -10
  369. package/languages/zh-CN.mjs +1 -4
  370. package/languages/zh-TW.js +0 -10
  371. package/languages/zh-TW.mjs +1 -4
  372. package/mixins/hooksRefRegisterer.js +4 -18
  373. package/mixins/hooksRefRegisterer.mjs +4 -15
  374. package/mixins/localHooks.js +7 -17
  375. package/mixins/localHooks.mjs +7 -14
  376. package/package.json +1 -1
  377. package/pluginHooks.d.ts +3 -3
  378. package/pluginHooks.js +271 -96
  379. package/pluginHooks.mjs +270 -83
  380. package/plugins/autoColumnSize/autoColumnSize.js +74 -172
  381. package/plugins/autoColumnSize/autoColumnSize.mjs +74 -137
  382. package/plugins/autoColumnSize/index.js +0 -2
  383. package/plugins/autoRowSize/autoRowSize.js +73 -153
  384. package/plugins/autoRowSize/autoRowSize.mjs +73 -124
  385. package/plugins/autoRowSize/index.js +0 -2
  386. package/plugins/autofill/autofill.js +46 -163
  387. package/plugins/autofill/autofill.mjs +46 -131
  388. package/plugins/autofill/index.js +0 -2
  389. package/plugins/autofill/utils.js +4 -26
  390. package/plugins/autofill/utils.mjs +4 -18
  391. package/plugins/base/base.js +20 -89
  392. package/plugins/base/base.mjs +20 -61
  393. package/plugins/base/index.js +0 -2
  394. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +19 -52
  395. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +19 -33
  396. package/plugins/bindRowsWithHeaders/index.js +0 -2
  397. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +5 -41
  398. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +5 -29
  399. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +6 -53
  400. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +6 -37
  401. package/plugins/collapsibleColumns/collapsibleColumns.js +96 -188
  402. package/plugins/collapsibleColumns/collapsibleColumns.mjs +97 -158
  403. package/plugins/collapsibleColumns/index.js +0 -2
  404. package/plugins/columnSorting/columnSorting.js +50 -188
  405. package/plugins/columnSorting/columnSorting.mjs +50 -143
  406. package/plugins/columnSorting/columnStatesManager.js +15 -71
  407. package/plugins/columnSorting/columnStatesManager.mjs +15 -48
  408. package/plugins/columnSorting/domHelpers.js +2 -18
  409. package/plugins/columnSorting/domHelpers.mjs +2 -7
  410. package/plugins/columnSorting/index.js +0 -2
  411. package/plugins/columnSorting/rootComparator.js +5 -24
  412. package/plugins/columnSorting/rootComparator.mjs +12 -21
  413. package/plugins/columnSorting/sortFunction/checkbox.js +8 -16
  414. package/plugins/columnSorting/sortFunction/checkbox.mjs +16 -21
  415. package/plugins/columnSorting/sortFunction/date.js +2 -19
  416. package/plugins/columnSorting/sortFunction/date.mjs +10 -23
  417. package/plugins/columnSorting/sortFunction/default.js +2 -17
  418. package/plugins/columnSorting/sortFunction/default.mjs +10 -23
  419. package/plugins/columnSorting/sortFunction/numeric.js +2 -11
  420. package/plugins/columnSorting/sortFunction/numeric.mjs +10 -17
  421. package/plugins/columnSorting/sortService/engine.js +1 -7
  422. package/plugins/columnSorting/sortService/engine.mjs +1 -3
  423. package/plugins/columnSorting/sortService/index.js +0 -5
  424. package/plugins/columnSorting/sortService/registry.js +6 -18
  425. package/plugins/columnSorting/sortService/registry.mjs +6 -10
  426. package/plugins/columnSorting/utils.js +9 -34
  427. package/plugins/columnSorting/utils.mjs +9 -15
  428. package/plugins/columnSummary/columnSummary.js +52 -118
  429. package/plugins/columnSummary/columnSummary.mjs +52 -93
  430. package/plugins/columnSummary/endpoints.js +21 -98
  431. package/plugins/columnSummary/endpoints.mjs +26 -99
  432. package/plugins/columnSummary/index.js +0 -2
  433. package/plugins/columnSummary/utils.js +0 -1
  434. package/plugins/comments/commentEditor.js +16 -28
  435. package/plugins/comments/commentEditor.mjs +21 -32
  436. package/plugins/comments/comments.js +92 -175
  437. package/plugins/comments/comments.mjs +92 -149
  438. package/plugins/comments/displaySwitch.js +6 -23
  439. package/plugins/comments/displaySwitch.mjs +6 -18
  440. package/plugins/comments/index.js +0 -2
  441. package/plugins/contextMenu/commandExecutor.js +9 -36
  442. package/plugins/contextMenu/commandExecutor.mjs +14 -39
  443. package/plugins/contextMenu/contextMenu.js +21 -104
  444. package/plugins/contextMenu/contextMenu.mjs +21 -74
  445. package/plugins/contextMenu/cursor.js +6 -20
  446. package/plugins/contextMenu/cursor.mjs +11 -24
  447. package/plugins/contextMenu/index.js +0 -2
  448. package/plugins/contextMenu/itemsFactory.js +14 -43
  449. package/plugins/contextMenu/itemsFactory.mjs +19 -44
  450. package/plugins/contextMenu/menu.js +57 -177
  451. package/plugins/contextMenu/menu.mjs +57 -149
  452. package/plugins/contextMenu/predefinedItems/alignment.js +1 -55
  453. package/plugins/contextMenu/predefinedItems/alignment.mjs +1 -37
  454. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -20
  455. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -4
  456. package/plugins/contextMenu/predefinedItems/columnLeft.js +6 -43
  457. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +6 -26
  458. package/plugins/contextMenu/predefinedItems/columnRight.js +4 -42
  459. package/plugins/contextMenu/predefinedItems/columnRight.mjs +4 -25
  460. package/plugins/contextMenu/predefinedItems/noItems.js +1 -4
  461. package/plugins/contextMenu/predefinedItems/noItems.mjs +1 -1
  462. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -25
  463. package/plugins/contextMenu/predefinedItems/readOnly.mjs +1 -8
  464. package/plugins/contextMenu/predefinedItems/redo.js +1 -16
  465. package/plugins/contextMenu/predefinedItems/redo.mjs +1 -1
  466. package/plugins/contextMenu/predefinedItems/removeColumn.js +3 -38
  467. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +3 -18
  468. package/plugins/contextMenu/predefinedItems/removeRow.js +3 -37
  469. package/plugins/contextMenu/predefinedItems/removeRow.mjs +3 -17
  470. package/plugins/contextMenu/predefinedItems/rowAbove.js +6 -35
  471. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +6 -19
  472. package/plugins/contextMenu/predefinedItems/rowBelow.js +4 -42
  473. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +4 -25
  474. package/plugins/contextMenu/predefinedItems/separator.js +1 -2
  475. package/plugins/contextMenu/predefinedItems/separator.mjs +1 -1
  476. package/plugins/contextMenu/predefinedItems/undo.js +1 -16
  477. package/plugins/contextMenu/predefinedItems/undo.mjs +1 -1
  478. package/plugins/contextMenu/predefinedItems.js +2 -48
  479. package/plugins/contextMenu/predefinedItems.mjs +2 -7
  480. package/plugins/contextMenu/utils.js +17 -57
  481. package/plugins/contextMenu/utils.mjs +21 -39
  482. package/plugins/copyPaste/clipboardData.js +1 -10
  483. package/plugins/copyPaste/clipboardData.mjs +1 -9
  484. package/plugins/copyPaste/contextMenuItem/copy.js +2 -17
  485. package/plugins/copyPaste/contextMenuItem/copy.mjs +6 -9
  486. package/plugins/copyPaste/contextMenuItem/cut.js +2 -17
  487. package/plugins/copyPaste/contextMenuItem/cut.mjs +6 -9
  488. package/plugins/copyPaste/copyPaste.js +51 -185
  489. package/plugins/copyPaste/copyPaste.mjs +51 -144
  490. package/plugins/copyPaste/focusableElement.js +12 -56
  491. package/plugins/copyPaste/focusableElement.mjs +15 -49
  492. package/plugins/copyPaste/index.js +0 -2
  493. package/plugins/copyPaste/pasteEvent.js +1 -10
  494. package/plugins/copyPaste/pasteEvent.mjs +3 -10
  495. package/plugins/customBorders/contextMenuItem/bottom.js +0 -17
  496. package/plugins/customBorders/contextMenuItem/bottom.mjs +4 -8
  497. package/plugins/customBorders/contextMenuItem/index.js +0 -11
  498. package/plugins/customBorders/contextMenuItem/left.js +0 -17
  499. package/plugins/customBorders/contextMenuItem/left.mjs +4 -8
  500. package/plugins/customBorders/contextMenuItem/noBorders.js +0 -15
  501. package/plugins/customBorders/contextMenuItem/noBorders.mjs +4 -6
  502. package/plugins/customBorders/contextMenuItem/right.js +0 -17
  503. package/plugins/customBorders/contextMenuItem/right.mjs +4 -8
  504. package/plugins/customBorders/contextMenuItem/top.js +0 -17
  505. package/plugins/customBorders/contextMenuItem/top.mjs +4 -8
  506. package/plugins/customBorders/customBorders.js +52 -181
  507. package/plugins/customBorders/customBorders.mjs +52 -147
  508. package/plugins/customBorders/index.js +0 -2
  509. package/plugins/customBorders/utils.js +13 -52
  510. package/plugins/customBorders/utils.mjs +20 -39
  511. package/plugins/dragToScroll/dragToScroll.js +17 -74
  512. package/plugins/dragToScroll/dragToScroll.mjs +17 -55
  513. package/plugins/dragToScroll/index.js +0 -2
  514. package/plugins/dropdownMenu/dropdownMenu.js +43 -126
  515. package/plugins/dropdownMenu/dropdownMenu.mjs +43 -95
  516. package/plugins/dropdownMenu/index.js +0 -2
  517. package/plugins/exportFile/dataProvider.js +24 -69
  518. package/plugins/exportFile/dataProvider.mjs +26 -60
  519. package/plugins/exportFile/exportFile.js +48 -58
  520. package/plugins/exportFile/exportFile.mjs +48 -36
  521. package/plugins/exportFile/index.js +0 -2
  522. package/plugins/exportFile/typeFactory.js +1 -11
  523. package/plugins/exportFile/typeFactory.mjs +1 -4
  524. package/plugins/exportFile/types/_base.js +2 -16
  525. package/plugins/exportFile/types/_base.mjs +4 -16
  526. package/plugins/exportFile/types/csv.js +2 -50
  527. package/plugins/exportFile/types/csv.mjs +2 -29
  528. package/plugins/filters/component/_base.js +12 -32
  529. package/plugins/filters/component/_base.mjs +15 -30
  530. package/plugins/filters/component/actionBar.js +6 -55
  531. package/plugins/filters/component/actionBar.mjs +9 -38
  532. package/plugins/filters/component/condition.js +15 -94
  533. package/plugins/filters/component/condition.mjs +18 -67
  534. package/plugins/filters/component/operators.js +10 -68
  535. package/plugins/filters/component/operators.mjs +10 -45
  536. package/plugins/filters/component/value.js +16 -97
  537. package/plugins/filters/component/value.mjs +19 -70
  538. package/plugins/filters/condition/beginsWith.js +2 -32
  539. package/plugins/filters/condition/beginsWith.mjs +2 -10
  540. package/plugins/filters/condition/between.js +3 -37
  541. package/plugins/filters/condition/between.mjs +3 -15
  542. package/plugins/filters/condition/byValue.js +3 -27
  543. package/plugins/filters/condition/byValue.mjs +3 -12
  544. package/plugins/filters/condition/contains.js +2 -32
  545. package/plugins/filters/condition/contains.mjs +2 -10
  546. package/plugins/filters/condition/date/after.js +2 -34
  547. package/plugins/filters/condition/date/after.mjs +2 -12
  548. package/plugins/filters/condition/date/before.js +2 -34
  549. package/plugins/filters/condition/date/before.mjs +2 -12
  550. package/plugins/filters/condition/date/today.js +1 -22
  551. package/plugins/filters/condition/date/today.mjs +1 -3
  552. package/plugins/filters/condition/date/tomorrow.js +1 -22
  553. package/plugins/filters/condition/date/tomorrow.mjs +1 -3
  554. package/plugins/filters/condition/date/yesterday.js +1 -22
  555. package/plugins/filters/condition/date/yesterday.mjs +1 -3
  556. package/plugins/filters/condition/empty.js +1 -19
  557. package/plugins/filters/condition/empty.mjs +1 -1
  558. package/plugins/filters/condition/endsWith.js +2 -32
  559. package/plugins/filters/condition/endsWith.mjs +2 -10
  560. package/plugins/filters/condition/equal.js +2 -31
  561. package/plugins/filters/condition/equal.mjs +2 -10
  562. package/plugins/filters/condition/false.js +1 -5
  563. package/plugins/filters/condition/false.mjs +1 -1
  564. package/plugins/filters/condition/greaterThan.js +2 -32
  565. package/plugins/filters/condition/greaterThan.mjs +2 -12
  566. package/plugins/filters/condition/greaterThanOrEqual.js +2 -32
  567. package/plugins/filters/condition/greaterThanOrEqual.mjs +2 -12
  568. package/plugins/filters/condition/lessThan.js +2 -32
  569. package/plugins/filters/condition/lessThan.mjs +2 -12
  570. package/plugins/filters/condition/lessThanOrEqual.js +2 -32
  571. package/plugins/filters/condition/lessThanOrEqual.mjs +2 -12
  572. package/plugins/filters/condition/none.js +1 -18
  573. package/plugins/filters/condition/none.mjs +1 -1
  574. package/plugins/filters/condition/notBetween.js +1 -19
  575. package/plugins/filters/condition/notBetween.mjs +1 -1
  576. package/plugins/filters/condition/notContains.js +1 -19
  577. package/plugins/filters/condition/notContains.mjs +1 -1
  578. package/plugins/filters/condition/notEmpty.js +1 -19
  579. package/plugins/filters/condition/notEmpty.mjs +1 -1
  580. package/plugins/filters/condition/notEqual.js +1 -19
  581. package/plugins/filters/condition/notEqual.mjs +1 -1
  582. package/plugins/filters/condition/true.js +1 -5
  583. package/plugins/filters/condition/true.mjs +1 -1
  584. package/plugins/filters/conditionCollection.js +21 -80
  585. package/plugins/filters/conditionCollection.mjs +21 -57
  586. package/plugins/filters/conditionRegisterer.js +5 -14
  587. package/plugins/filters/conditionRegisterer.mjs +5 -9
  588. package/plugins/filters/conditionUpdateObserver.js +17 -57
  589. package/plugins/filters/conditionUpdateObserver.mjs +25 -53
  590. package/plugins/filters/constants.js +1 -66
  591. package/plugins/filters/constants.mjs +1 -8
  592. package/plugins/filters/dataFilter.js +4 -21
  593. package/plugins/filters/dataFilter.mjs +7 -23
  594. package/plugins/filters/filters.js +103 -208
  595. package/plugins/filters/filters.mjs +103 -163
  596. package/plugins/filters/index.js +0 -2
  597. package/plugins/filters/logicalOperationRegisterer.js +3 -9
  598. package/plugins/filters/logicalOperationRegisterer.mjs +3 -4
  599. package/plugins/filters/logicalOperations/conjunction.js +2 -19
  600. package/plugins/filters/logicalOperations/conjunction.mjs +2 -2
  601. package/plugins/filters/logicalOperations/disjunction.js +2 -19
  602. package/plugins/filters/logicalOperations/disjunction.mjs +2 -2
  603. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +2 -21
  604. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +2 -3
  605. package/plugins/filters/ui/_base.js +12 -55
  606. package/plugins/filters/ui/_base.mjs +12 -35
  607. package/plugins/filters/ui/input.js +7 -52
  608. package/plugins/filters/ui/input.mjs +7 -34
  609. package/plugins/filters/ui/link.js +3 -43
  610. package/plugins/filters/ui/link.mjs +3 -25
  611. package/plugins/filters/ui/multipleSelect.js +26 -120
  612. package/plugins/filters/ui/multipleSelect.mjs +20 -76
  613. package/plugins/filters/ui/radioInput.js +6 -47
  614. package/plugins/filters/ui/radioInput.mjs +6 -30
  615. package/plugins/filters/ui/select.js +14 -76
  616. package/plugins/filters/ui/select.mjs +14 -52
  617. package/plugins/filters/utils.js +6 -39
  618. package/plugins/filters/utils.mjs +6 -23
  619. package/plugins/formulas/engine/register.js +24 -74
  620. package/plugins/formulas/engine/register.mjs +29 -51
  621. package/plugins/formulas/engine/settings.js +4 -24
  622. package/plugins/formulas/engine/settings.mjs +4 -12
  623. package/plugins/formulas/formulas.js +103 -295
  624. package/plugins/formulas/formulas.mjs +104 -248
  625. package/plugins/formulas/index.js +0 -2
  626. package/plugins/formulas/utils.js +1 -3
  627. package/plugins/formulas/utils.mjs +1 -1
  628. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +4 -38
  629. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +8 -25
  630. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +17 -45
  631. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +21 -29
  632. package/plugins/hiddenColumns/hiddenColumns.js +72 -149
  633. package/plugins/hiddenColumns/hiddenColumns.mjs +72 -108
  634. package/plugins/hiddenColumns/index.js +0 -2
  635. package/plugins/hiddenRows/contextMenuItem/hideRow.js +4 -38
  636. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +8 -25
  637. package/plugins/hiddenRows/contextMenuItem/showRow.js +17 -45
  638. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +21 -29
  639. package/plugins/hiddenRows/hiddenRows.js +70 -148
  640. package/plugins/hiddenRows/hiddenRows.mjs +70 -107
  641. package/plugins/hiddenRows/index.js +0 -2
  642. package/plugins/index.js +0 -71
  643. package/plugins/index.mjs +3 -5
  644. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -28
  645. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +5 -17
  646. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -28
  647. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +5 -17
  648. package/plugins/manualColumnFreeze/index.js +0 -2
  649. package/plugins/manualColumnFreeze/manualColumnFreeze.js +21 -78
  650. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +21 -54
  651. package/plugins/manualColumnMove/index.js +0 -2
  652. package/plugins/manualColumnMove/manualColumnMove.js +45 -134
  653. package/plugins/manualColumnMove/manualColumnMove.mjs +45 -106
  654. package/plugins/manualColumnMove/ui/_base.js +12 -30
  655. package/plugins/manualColumnMove/ui/_base.mjs +12 -27
  656. package/plugins/manualColumnMove/ui/backlight.js +1 -37
  657. package/plugins/manualColumnMove/ui/backlight.mjs +1 -22
  658. package/plugins/manualColumnMove/ui/guideline.js +1 -37
  659. package/plugins/manualColumnMove/ui/guideline.mjs +1 -22
  660. package/plugins/manualColumnResize/index.js +0 -2
  661. package/plugins/manualColumnResize/manualColumnResize.js +44 -143
  662. package/plugins/manualColumnResize/manualColumnResize.mjs +43 -118
  663. package/plugins/manualRowMove/index.js +0 -2
  664. package/plugins/manualRowMove/manualRowMove.js +45 -137
  665. package/plugins/manualRowMove/manualRowMove.mjs +45 -109
  666. package/plugins/manualRowMove/ui/_base.js +12 -27
  667. package/plugins/manualRowMove/ui/_base.mjs +12 -26
  668. package/plugins/manualRowMove/ui/backlight.js +1 -37
  669. package/plugins/manualRowMove/ui/backlight.mjs +1 -22
  670. package/plugins/manualRowMove/ui/guideline.js +1 -37
  671. package/plugins/manualRowMove/ui/guideline.mjs +1 -22
  672. package/plugins/manualRowResize/index.js +0 -2
  673. package/plugins/manualRowResize/manualRowResize.js +42 -138
  674. package/plugins/manualRowResize/manualRowResize.mjs +41 -112
  675. package/plugins/mergeCells/calculations/autofill.js +39 -130
  676. package/plugins/mergeCells/calculations/autofill.mjs +44 -122
  677. package/plugins/mergeCells/calculations/selection.js +9 -40
  678. package/plugins/mergeCells/calculations/selection.mjs +9 -37
  679. package/plugins/mergeCells/cellCoords.js +30 -51
  680. package/plugins/mergeCells/cellCoords.mjs +35 -54
  681. package/plugins/mergeCells/cellsCollection.js +13 -84
  682. package/plugins/mergeCells/cellsCollection.mjs +18 -69
  683. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +0 -22
  684. package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +4 -11
  685. package/plugins/mergeCells/index.js +0 -2
  686. package/plugins/mergeCells/mergeCells.js +130 -333
  687. package/plugins/mergeCells/mergeCells.mjs +130 -292
  688. package/plugins/mergeCells/utils.js +0 -3
  689. package/plugins/mergeCells/utils.mjs +0 -1
  690. package/plugins/multiColumnSorting/domHelpers.js +2 -12
  691. package/plugins/multiColumnSorting/domHelpers.mjs +2 -5
  692. package/plugins/multiColumnSorting/index.js +0 -2
  693. package/plugins/multiColumnSorting/multiColumnSorting.js +14 -66
  694. package/plugins/multiColumnSorting/multiColumnSorting.mjs +14 -44
  695. package/plugins/multiColumnSorting/rootComparator.js +2 -26
  696. package/plugins/multiColumnSorting/rootComparator.mjs +9 -23
  697. package/plugins/multiColumnSorting/utils.js +0 -7
  698. package/plugins/multiColumnSorting/utils.mjs +3 -8
  699. package/plugins/multipleSelectionHandles/index.js +0 -2
  700. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +6 -109
  701. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +6 -87
  702. package/plugins/nestedHeaders/index.js +0 -2
  703. package/plugins/nestedHeaders/nestedHeaders.js +79 -200
  704. package/plugins/nestedHeaders/nestedHeaders.mjs +80 -173
  705. package/plugins/nestedHeaders/stateManager/headersTree.js +16 -93
  706. package/plugins/nestedHeaders/stateManager/headersTree.mjs +16 -73
  707. package/plugins/nestedHeaders/stateManager/index.js +24 -107
  708. package/plugins/nestedHeaders/stateManager/index.mjs +51 -115
  709. package/plugins/nestedHeaders/stateManager/matrixGenerator.js +7 -25
  710. package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +38 -51
  711. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +12 -27
  712. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +29 -35
  713. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +10 -25
  714. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +26 -32
  715. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +3 -19
  716. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +9 -20
  717. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +2 -12
  718. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +2 -5
  719. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +3 -22
  720. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +9 -21
  721. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +3 -10
  722. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +3 -7
  723. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -36
  724. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +44 -61
  725. package/plugins/nestedHeaders/stateManager/sourceSettings.js +16 -78
  726. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +21 -68
  727. package/plugins/nestedHeaders/stateManager/utils.js +19 -22
  728. package/plugins/nestedHeaders/stateManager/utils.mjs +19 -20
  729. package/plugins/nestedHeaders/utils/ghostTable.js +9 -37
  730. package/plugins/nestedHeaders/utils/ghostTable.mjs +16 -43
  731. package/plugins/nestedRows/data/dataManager.js +40 -161
  732. package/plugins/nestedRows/data/dataManager.mjs +44 -148
  733. package/plugins/nestedRows/index.js +0 -2
  734. package/plugins/nestedRows/nestedRows.js +40 -118
  735. package/plugins/nestedRows/nestedRows.mjs +40 -85
  736. package/plugins/nestedRows/ui/_base.js +1 -9
  737. package/plugins/nestedRows/ui/_base.mjs +1 -8
  738. package/plugins/nestedRows/ui/collapsing.js +28 -134
  739. package/plugins/nestedRows/ui/collapsing.mjs +34 -118
  740. package/plugins/nestedRows/ui/contextMenu.js +2 -53
  741. package/plugins/nestedRows/ui/contextMenu.mjs +2 -32
  742. package/plugins/nestedRows/ui/headers.js +5 -50
  743. package/plugins/nestedRows/ui/headers.mjs +11 -41
  744. package/plugins/nestedRows/utils/rowMoveController.js +28 -78
  745. package/plugins/nestedRows/utils/rowMoveController.mjs +33 -66
  746. package/plugins/persistentState/index.js +0 -2
  747. package/plugins/persistentState/persistentState.js +10 -58
  748. package/plugins/persistentState/persistentState.mjs +10 -37
  749. package/plugins/persistentState/storage.js +9 -25
  750. package/plugins/persistentState/storage.mjs +12 -26
  751. package/plugins/registry.js +7 -51
  752. package/plugins/registry.mjs +8 -34
  753. package/plugins/search/index.js +0 -2
  754. package/plugins/search/search.js +16 -96
  755. package/plugins/search/search.mjs +16 -67
  756. package/plugins/touchScroll/index.js +0 -2
  757. package/plugins/touchScroll/touchScroll.js +15 -76
  758. package/plugins/touchScroll/touchScroll.mjs +15 -58
  759. package/plugins/trimRows/index.js +0 -2
  760. package/plugins/trimRows/trimRows.js +59 -85
  761. package/plugins/trimRows/trimRows.mjs +59 -62
  762. package/plugins/undoRedo/index.js +0 -14
  763. package/plugins/undoRedo/undoRedo.js +48 -218
  764. package/plugins/undoRedo/undoRedo.mjs +48 -188
  765. package/registry.js +0 -11
  766. package/registry.mjs +2 -4
  767. package/renderers/autocompleteRenderer/autocompleteRenderer.js +5 -14
  768. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +5 -6
  769. package/renderers/autocompleteRenderer/index.js +0 -2
  770. package/renderers/baseRenderer/baseRenderer.js +2 -11
  771. package/renderers/baseRenderer/baseRenderer.mjs +2 -9
  772. package/renderers/baseRenderer/index.js +0 -2
  773. package/renderers/checkboxRenderer/checkboxRenderer.js +22 -103
  774. package/renderers/checkboxRenderer/checkboxRenderer.mjs +22 -81
  775. package/renderers/checkboxRenderer/index.js +0 -2
  776. package/renderers/htmlRenderer/htmlRenderer.js +1 -7
  777. package/renderers/htmlRenderer/htmlRenderer.mjs +1 -1
  778. package/renderers/htmlRenderer/index.js +0 -2
  779. package/renderers/index.js +0 -19
  780. package/renderers/index.mjs +3 -5
  781. package/renderers/numericRenderer/index.js +0 -2
  782. package/renderers/numericRenderer/numericRenderer.js +1 -21
  783. package/renderers/numericRenderer/numericRenderer.mjs +1 -9
  784. package/renderers/passwordRenderer/index.js +0 -2
  785. package/renderers/passwordRenderer/passwordRenderer.js +1 -8
  786. package/renderers/passwordRenderer/passwordRenderer.mjs +1 -1
  787. package/renderers/registry.js +7 -16
  788. package/renderers/registry.mjs +7 -14
  789. package/renderers/textRenderer/index.js +0 -2
  790. package/renderers/textRenderer/textRenderer.js +1 -13
  791. package/renderers/textRenderer/textRenderer.mjs +1 -5
  792. package/renderers/timeRenderer/index.js +0 -2
  793. package/renderers/timeRenderer/timeRenderer.js +1 -6
  794. package/renderers/timeRenderer/timeRenderer.mjs +1 -1
  795. package/selection/highlight/highlight.js +17 -73
  796. package/selection/highlight/highlight.mjs +31 -64
  797. package/selection/highlight/types/activeHeader.js +1 -21
  798. package/selection/highlight/types/activeHeader.mjs +6 -16
  799. package/selection/highlight/types/area.js +2 -22
  800. package/selection/highlight/types/area.mjs +10 -20
  801. package/selection/highlight/types/cell.js +1 -21
  802. package/selection/highlight/types/cell.mjs +9 -19
  803. package/selection/highlight/types/customSelection.js +2 -22
  804. package/selection/highlight/types/customSelection.mjs +11 -21
  805. package/selection/highlight/types/fill.js +2 -17
  806. package/selection/highlight/types/fill.mjs +9 -14
  807. package/selection/highlight/types/header.js +3 -23
  808. package/selection/highlight/types/header.mjs +13 -23
  809. package/selection/highlight/types/index.js +3 -24
  810. package/selection/highlight/types/index.mjs +3 -10
  811. package/selection/highlight/visualSelection.js +24 -74
  812. package/selection/highlight/visualSelection.mjs +24 -62
  813. package/selection/index.js +0 -14
  814. package/selection/mouseEventHandler.js +19 -30
  815. package/selection/mouseEventHandler.mjs +32 -36
  816. package/selection/range.js +11 -31
  817. package/selection/range.mjs +11 -22
  818. package/selection/selection.js +62 -157
  819. package/selection/selection.mjs +65 -132
  820. package/selection/transformation.js +10 -40
  821. package/selection/transformation.mjs +18 -45
  822. package/selection/utils.js +22 -70
  823. package/selection/utils.mjs +22 -47
  824. package/shortcuts/context.js +23 -78
  825. package/shortcuts/context.mjs +23 -55
  826. package/shortcuts/index.js +0 -2
  827. package/shortcuts/keyObserver.js +4 -17
  828. package/shortcuts/keyObserver.mjs +4 -12
  829. package/shortcuts/manager.js +16 -36
  830. package/shortcuts/manager.mjs +16 -33
  831. package/shortcuts/recorder.js +9 -40
  832. package/shortcuts/recorder.mjs +9 -31
  833. package/shortcuts/utils.js +5 -20
  834. package/shortcuts/utils.mjs +5 -6
  835. package/tableView.js +100 -270
  836. package/tableView.mjs +100 -248
  837. package/translations/changesObservable/observable.js +5 -54
  838. package/translations/changesObservable/observable.mjs +12 -51
  839. package/translations/changesObservable/observer.js +4 -32
  840. package/translations/changesObservable/observer.mjs +9 -29
  841. package/translations/changesObservable/utils.js +1 -5
  842. package/translations/changesObservable/utils.mjs +1 -4
  843. package/translations/index.js +0 -11
  844. package/translations/indexMapper.js +68 -156
  845. package/translations/indexMapper.mjs +68 -123
  846. package/translations/mapCollections/aggregatedCollection.js +9 -51
  847. package/translations/mapCollections/aggregatedCollection.mjs +12 -41
  848. package/translations/mapCollections/index.js +0 -7
  849. package/translations/mapCollections/mapCollection.js +10 -33
  850. package/translations/mapCollections/mapCollection.mjs +10 -22
  851. package/translations/maps/hidingMap.js +2 -35
  852. package/translations/maps/hidingMap.mjs +7 -28
  853. package/translations/maps/index.js +1 -24
  854. package/translations/maps/index.mjs +1 -3
  855. package/translations/maps/indexMap.js +12 -34
  856. package/translations/maps/indexMap.mjs +16 -32
  857. package/translations/maps/indexesSequence.js +3 -41
  858. package/translations/maps/indexesSequence.mjs +9 -32
  859. package/translations/maps/linkedPhysicalIndexToValueMap.js +9 -78
  860. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +16 -59
  861. package/translations/maps/physicalIndexToValueMap.js +2 -39
  862. package/translations/maps/physicalIndexToValueMap.mjs +8 -31
  863. package/translations/maps/trimmingMap.js +2 -35
  864. package/translations/maps/trimmingMap.mjs +7 -28
  865. package/translations/maps/utils/actionsOnIndexes.js +1 -7
  866. package/translations/maps/utils/actionsOnIndexes.mjs +9 -12
  867. package/translations/maps/utils/index.js +0 -13
  868. package/translations/maps/utils/index.mjs +0 -3
  869. package/translations/maps/utils/indexesSequence.js +1 -24
  870. package/translations/maps/utils/indexesSequence.mjs +10 -19
  871. package/translations/maps/utils/physicallyIndexed.js +1 -27
  872. package/translations/maps/utils/physicallyIndexed.mjs +11 -21
  873. package/utils/dataStructures/linkedList.js +15 -56
  874. package/utils/dataStructures/linkedList.mjs +15 -54
  875. package/utils/dataStructures/priorityMap.js +8 -46
  876. package/utils/dataStructures/priorityMap.mjs +8 -29
  877. package/utils/dataStructures/queue.js +6 -17
  878. package/utils/dataStructures/queue.mjs +6 -16
  879. package/utils/dataStructures/stack.js +6 -17
  880. package/utils/dataStructures/stack.mjs +6 -16
  881. package/utils/dataStructures/tree.js +11 -75
  882. package/utils/dataStructures/tree.mjs +11 -54
  883. package/utils/dataStructures/uniqueMap.js +17 -56
  884. package/utils/dataStructures/uniqueMap.mjs +17 -42
  885. package/utils/dataStructures/uniqueSet.js +5 -32
  886. package/utils/dataStructures/uniqueSet.mjs +5 -19
  887. package/utils/ghostTable.js +33 -104
  888. package/utils/ghostTable.mjs +35 -92
  889. package/utils/interval.js +10 -37
  890. package/utils/interval.mjs +7 -29
  891. package/utils/parseTable.js +11 -92
  892. package/utils/parseTable.mjs +11 -62
  893. package/utils/rootInstance.js +3 -14
  894. package/utils/rootInstance.mjs +3 -3
  895. package/utils/samplesGenerator.js +15 -51
  896. package/utils/samplesGenerator.mjs +17 -44
  897. package/utils/staticRegister.js +6 -33
  898. package/utils/staticRegister.mjs +6 -19
  899. package/validators/autocompleteValidator/autocompleteValidator.js +2 -10
  900. package/validators/autocompleteValidator/autocompleteValidator.mjs +2 -8
  901. package/validators/autocompleteValidator/index.js +0 -2
  902. package/validators/dateValidator/dateValidator.js +2 -21
  903. package/validators/dateValidator/dateValidator.mjs +2 -11
  904. package/validators/dateValidator/index.js +0 -2
  905. package/validators/index.js +0 -11
  906. package/validators/index.mjs +3 -5
  907. package/validators/numericValidator/index.js +0 -2
  908. package/validators/numericValidator/numericValidator.js +1 -7
  909. package/validators/numericValidator/numericValidator.mjs +1 -3
  910. package/validators/registry.js +7 -16
  911. package/validators/registry.mjs +7 -14
  912. package/validators/timeValidator/index.js +0 -2
  913. package/validators/timeValidator/timeValidator.js +6 -18
  914. package/validators/timeValidator/timeValidator.mjs +8 -13
@@ -1,17 +1,10 @@
1
1
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
-
3
2
  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."); }
4
-
5
3
  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); }
6
-
7
4
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
8
-
9
5
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
10
-
11
6
  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; }
12
-
13
7
  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); }
14
-
15
8
  import "core-js/modules/es.array.iterator.js";
16
9
  import "core-js/modules/es.object.to-string.js";
17
10
  import "core-js/modules/es.string.iterator.js";
@@ -27,26 +20,19 @@ import "core-js/modules/es.symbol.description.js";
27
20
  import "core-js/modules/es.symbol.iterator.js";
28
21
  import "core-js/modules/es.function.name.js";
29
22
  import "core-js/modules/es.regexp.exec.js";
30
-
31
23
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
32
-
33
24
  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); } }
34
-
35
25
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
36
-
37
26
  import { rangeEach } from "../../../helpers/number.mjs";
38
27
  import { objectEach } from "../../../helpers/object.mjs";
39
- import { arrayEach } from "../../../helpers/array.mjs";
40
- /**
41
- * Class responsible for making data operations.
42
- *
43
- * @private
44
- */
45
-
28
+ import { arrayEach } from "../../../helpers/array.mjs"; /**
29
+ * Class responsible for making data operations.
30
+ *
31
+ * @private
32
+ */
46
33
  var DataManager = /*#__PURE__*/function () {
47
34
  function DataManager(nestedRowsPlugin, hotInstance) {
48
35
  _classCallCheck(this, DataManager);
49
-
50
36
  /**
51
37
  * Main Handsontable instance reference.
52
38
  *
@@ -58,28 +44,24 @@ var DataManager = /*#__PURE__*/function () {
58
44
  *
59
45
  * @type {Handsontable.CellValue[][]|Handsontable.RowObject[]}
60
46
  */
61
-
62
47
  this.data = null;
63
48
  /**
64
49
  * Reference to the NestedRows plugin.
65
50
  *
66
51
  * @type {object}
67
52
  */
68
-
69
53
  this.plugin = nestedRowsPlugin;
70
54
  /**
71
55
  * Map of row object parents.
72
56
  *
73
57
  * @type {WeakMap}
74
58
  */
75
-
76
59
  this.parentReference = new WeakMap();
77
60
  /**
78
61
  * Nested structure cache.
79
62
  *
80
63
  * @type {object}
81
64
  */
82
-
83
65
  this.cache = {
84
66
  levels: [],
85
67
  levelCount: 0,
@@ -87,35 +69,34 @@ var DataManager = /*#__PURE__*/function () {
87
69
  nodeInfo: new WeakMap()
88
70
  };
89
71
  }
72
+
90
73
  /**
91
74
  * Set the data for the manager.
92
75
  *
93
76
  * @param {Handsontable.CellValue[][]|Handsontable.RowObject[]} data Data for the manager.
94
77
  */
95
-
96
-
97
78
  _createClass(DataManager, [{
98
79
  key: "setData",
99
80
  value: function setData(data) {
100
81
  this.data = data;
101
82
  }
83
+
102
84
  /**
103
85
  * Get the data cached in the manager.
104
86
  *
105
87
  * @returns {Handsontable.CellValue[][]|Handsontable.RowObject[]}
106
88
  */
107
-
108
89
  }, {
109
90
  key: "getData",
110
91
  value: function getData() {
111
92
  return this.data;
112
93
  }
94
+
113
95
  /**
114
96
  * Load the "raw" source data, without NestedRows' modifications.
115
97
  *
116
98
  * @returns {Handsontable.CellValue[][]|Handsontable.RowObject[]}
117
99
  */
118
-
119
100
  }, {
120
101
  key: "getRawSourceData",
121
102
  value: function getRawSourceData() {
@@ -125,29 +106,28 @@ var DataManager = /*#__PURE__*/function () {
125
106
  this.plugin.enableCoreAPIModifiers();
126
107
  return rawSourceData;
127
108
  }
109
+
128
110
  /**
129
111
  * Update the Data Manager with new data and refresh cache.
130
112
  *
131
113
  * @param {Handsontable.CellValue[][]|Handsontable.RowObject[]} data Data for the manager.
132
114
  */
133
-
134
115
  }, {
135
116
  key: "updateWithData",
136
117
  value: function updateWithData(data) {
137
118
  this.setData(data);
138
119
  this.rewriteCache();
139
120
  }
121
+
140
122
  /**
141
123
  * Rewrite the nested structure cache.
142
124
  *
143
125
  * @private
144
126
  */
145
-
146
127
  }, {
147
128
  key: "rewriteCache",
148
129
  value: function rewriteCache() {
149
130
  var _this = this;
150
-
151
131
  this.cache = {
152
132
  levels: [],
153
133
  levelCount: 0,
@@ -158,6 +138,7 @@ var DataManager = /*#__PURE__*/function () {
158
138
  _this.cacheNode(_this.data[i], 0, null);
159
139
  });
160
140
  }
141
+
161
142
  /**
162
143
  * Cache a data node.
163
144
  *
@@ -166,17 +147,14 @@ var DataManager = /*#__PURE__*/function () {
166
147
  * @param {number} level Level of the node.
167
148
  * @param {object} parent Parent of the node.
168
149
  */
169
-
170
150
  }, {
171
151
  key: "cacheNode",
172
152
  value: function cacheNode(node, level, parent) {
173
153
  var _this2 = this;
174
-
175
154
  if (!this.cache.levels[level]) {
176
155
  this.cache.levels[level] = [];
177
156
  this.cache.levelCount += 1;
178
157
  }
179
-
180
158
  this.cache.levels[level].push(node);
181
159
  this.cache.rows.push(node);
182
160
  this.cache.nodeInfo.set(node, {
@@ -184,25 +162,25 @@ var DataManager = /*#__PURE__*/function () {
184
162
  row: this.cache.rows.length - 1,
185
163
  level: level
186
164
  });
187
-
188
165
  if (this.hasChildren(node)) {
189
166
  arrayEach(node.__children, function (elem) {
190
167
  _this2.cacheNode(elem, level + 1, node);
191
168
  });
192
169
  }
193
170
  }
171
+
194
172
  /**
195
173
  * Get the date for the provided visual row number.
196
174
  *
197
175
  * @param {number} row Row index.
198
176
  * @returns {object}
199
177
  */
200
-
201
178
  }, {
202
179
  key: "getDataObject",
203
180
  value: function getDataObject(row) {
204
181
  return row === null || row === void 0 ? null : this.cache.rows[row];
205
182
  }
183
+
206
184
  /**
207
185
  * Read the row tree in search for a specific row index or row object.
208
186
  *
@@ -213,21 +191,16 @@ var DataManager = /*#__PURE__*/function () {
213
191
  * @param {object} neededObject The row object we search for.
214
192
  * @returns {number|object}
215
193
  */
216
-
217
194
  }, {
218
195
  key: "readTreeNodes",
219
196
  value: function readTreeNodes(parent, readCount, neededIndex, neededObject) {
220
197
  var _this3 = this;
221
-
222
198
  var rootLevel = false;
223
199
  var readNodesCount = readCount;
224
-
225
200
  if (isNaN(readNodesCount) && readNodesCount.end) {
226
201
  return readNodesCount;
227
202
  }
228
-
229
203
  var parentObj = parent;
230
-
231
204
  if (!parentObj) {
232
205
  parentObj = {
233
206
  __children: this.data
@@ -235,44 +208,37 @@ var DataManager = /*#__PURE__*/function () {
235
208
  rootLevel = true;
236
209
  readNodesCount -= 1;
237
210
  }
238
-
239
211
  if (neededIndex !== null && neededIndex !== void 0 && readNodesCount === neededIndex) {
240
212
  return {
241
213
  result: parentObj,
242
214
  end: true
243
215
  };
244
216
  }
245
-
246
217
  if (neededObject !== null && neededObject !== void 0 && parentObj === neededObject) {
247
218
  return {
248
219
  result: readNodesCount,
249
220
  end: true
250
221
  };
251
222
  }
252
-
253
223
  readNodesCount += 1;
254
-
255
224
  if (parentObj.__children) {
256
225
  arrayEach(parentObj.__children, function (val) {
257
226
  _this3.parentReference.set(val, rootLevel ? null : parentObj);
258
-
259
227
  readNodesCount = _this3.readTreeNodes(val, readNodesCount, neededIndex, neededObject);
260
-
261
228
  if (isNaN(readNodesCount) && readNodesCount.end) {
262
229
  return false;
263
230
  }
264
231
  });
265
232
  }
266
-
267
233
  return readNodesCount;
268
234
  }
235
+
269
236
  /**
270
237
  * Mock a parent node.
271
238
  *
272
239
  * @private
273
240
  * @returns {*}
274
241
  */
275
-
276
242
  }, {
277
243
  key: "mockParent",
278
244
  value: function mockParent() {
@@ -280,13 +246,13 @@ var DataManager = /*#__PURE__*/function () {
280
246
  fakeParent.__children = this.data;
281
247
  return fakeParent;
282
248
  }
249
+
283
250
  /**
284
251
  * Mock a data node.
285
252
  *
286
253
  * @private
287
254
  * @returns {{}}
288
255
  */
289
-
290
256
  }, {
291
257
  key: "mockNode",
292
258
  value: function mockNode() {
@@ -296,50 +262,46 @@ var DataManager = /*#__PURE__*/function () {
296
262
  });
297
263
  return fakeNode;
298
264
  }
265
+
299
266
  /**
300
267
  * Get the row index for the provided row object.
301
268
  *
302
269
  * @param {object} rowObj The row object.
303
270
  * @returns {number} Row index.
304
271
  */
305
-
306
272
  }, {
307
273
  key: "getRowIndex",
308
274
  value: function getRowIndex(rowObj) {
309
275
  return rowObj === null || rowObj === void 0 ? null : this.cache.nodeInfo.get(rowObj).row;
310
276
  }
277
+
311
278
  /**
312
279
  * Get the index of the provided row index/row object within its parent.
313
280
  *
314
281
  * @param {number|object} row Row index / row object.
315
282
  * @returns {number}
316
283
  */
317
-
318
284
  }, {
319
285
  key: "getRowIndexWithinParent",
320
286
  value: function getRowIndexWithinParent(row) {
321
287
  var rowObj = null;
322
-
323
288
  if (isNaN(row)) {
324
289
  rowObj = row;
325
290
  } else {
326
291
  rowObj = this.getDataObject(row);
327
292
  }
328
-
329
293
  var parent = this.getRowParent(row);
330
-
331
294
  if (parent === null || parent === void 0) {
332
295
  return this.data.indexOf(rowObj);
333
296
  }
334
-
335
297
  return parent.__children.indexOf(rowObj);
336
298
  }
299
+
337
300
  /**
338
301
  * Count all rows (including all parents and children).
339
302
  *
340
303
  * @returns {number}
341
304
  */
342
-
343
305
  }, {
344
306
  key: "countAllRows",
345
307
  value: function countAllRows() {
@@ -348,58 +310,52 @@ var DataManager = /*#__PURE__*/function () {
348
310
  };
349
311
  return this.countChildren(rootNodeMock);
350
312
  }
313
+
351
314
  /**
352
315
  * Count children of the provided parent.
353
316
  *
354
317
  * @param {object|number} parent Parent node.
355
318
  * @returns {number} Children count.
356
319
  */
357
-
358
320
  }, {
359
321
  key: "countChildren",
360
322
  value: function countChildren(parent) {
361
323
  var _this4 = this;
362
-
363
324
  var rowCount = 0;
364
325
  var parentNode = parent;
365
-
366
326
  if (!isNaN(parentNode)) {
367
327
  parentNode = this.getDataObject(parentNode);
368
328
  }
369
-
370
329
  if (!parentNode || !parentNode.__children) {
371
330
  return 0;
372
331
  }
373
-
374
332
  arrayEach(parentNode.__children, function (elem) {
375
333
  rowCount += 1;
376
-
377
334
  if (elem.__children) {
378
335
  rowCount += _this4.countChildren(elem);
379
336
  }
380
337
  });
381
338
  return rowCount;
382
339
  }
340
+
383
341
  /**
384
342
  * Get the parent of the row at the provided index.
385
343
  *
386
344
  * @param {number|object} row Physical row index.
387
345
  * @returns {object}
388
346
  */
389
-
390
347
  }, {
391
348
  key: "getRowParent",
392
349
  value: function getRowParent(row) {
393
350
  var rowObject;
394
-
395
351
  if (isNaN(row)) {
396
352
  rowObject = row;
397
353
  } else {
398
354
  rowObject = this.getDataObject(row);
399
355
  }
400
-
401
356
  return this.getRowObjectParent(rowObject);
402
357
  }
358
+
403
359
  /**
404
360
  * Get the parent of the provided row object.
405
361
  *
@@ -407,36 +363,33 @@ var DataManager = /*#__PURE__*/function () {
407
363
  * @param {object} rowObject The row object (tree node).
408
364
  * @returns {object|null}
409
365
  */
410
-
411
366
  }, {
412
367
  key: "getRowObjectParent",
413
368
  value: function getRowObjectParent(rowObject) {
414
369
  if (!rowObject || _typeof(rowObject) !== 'object') {
415
370
  return null;
416
371
  }
417
-
418
372
  return this.cache.nodeInfo.get(rowObject).parent;
419
373
  }
374
+
420
375
  /**
421
376
  * Get the nesting level for the row with the provided row index.
422
377
  *
423
378
  * @param {number} row Row index.
424
379
  * @returns {number|null} Row level or null, when row doesn't exist.
425
380
  */
426
-
427
381
  }, {
428
382
  key: "getRowLevel",
429
383
  value: function getRowLevel(row) {
430
384
  var rowObject = null;
431
-
432
385
  if (isNaN(row)) {
433
386
  rowObject = row;
434
387
  } else {
435
388
  rowObject = this.getDataObject(row);
436
389
  }
437
-
438
390
  return rowObject ? this.getRowObjectLevel(rowObject) : null;
439
391
  }
392
+
440
393
  /**
441
394
  * Get the nesting level for the row with the provided row index.
442
395
  *
@@ -444,42 +397,40 @@ var DataManager = /*#__PURE__*/function () {
444
397
  * @param {object} rowObject Row object.
445
398
  * @returns {number} Row level.
446
399
  */
447
-
448
400
  }, {
449
401
  key: "getRowObjectLevel",
450
402
  value: function getRowObjectLevel(rowObject) {
451
403
  return rowObject === null || rowObject === void 0 ? null : this.cache.nodeInfo.get(rowObject).level;
452
404
  }
405
+
453
406
  /**
454
407
  * Check if the provided row/row element has children.
455
408
  *
456
409
  * @param {number|object} row Row number or row element.
457
410
  * @returns {boolean}
458
411
  */
459
-
460
412
  }, {
461
413
  key: "hasChildren",
462
414
  value: function hasChildren(row) {
463
415
  var rowObj = row;
464
-
465
416
  if (!isNaN(rowObj)) {
466
417
  rowObj = this.getDataObject(rowObj);
467
418
  }
468
-
469
419
  return !!(rowObj.__children && rowObj.__children.length);
470
420
  }
421
+
471
422
  /**
472
423
  * Returns `true` if the row at the provided index has a parent.
473
424
  *
474
425
  * @param {number} index Row index.
475
426
  * @returns {boolean} `true` if the row at the provided index has a parent, `false` otherwise.
476
427
  */
477
-
478
428
  }, {
479
429
  key: "isChild",
480
430
  value: function isChild(index) {
481
431
  return this.getRowParent(index) !== null;
482
432
  }
433
+
483
434
  /**
484
435
  * Get child at a provided index from the parent element.
485
436
  *
@@ -487,87 +438,76 @@ var DataManager = /*#__PURE__*/function () {
487
438
  * @param {number} index Index of the child element to be retrieved.
488
439
  * @returns {object|null} The child element or `null` if the child doesn't exist.
489
440
  */
490
-
491
441
  }, {
492
442
  key: "getChild",
493
443
  value: function getChild(parent, index) {
494
444
  var _parent$__children;
495
-
496
445
  return ((_parent$__children = parent.__children) === null || _parent$__children === void 0 ? void 0 : _parent$__children[index]) || null;
497
446
  }
447
+
498
448
  /**
499
449
  * Return `true` of the row at the provided index is located at the topmost level.
500
450
  *
501
451
  * @param {number} index Row index.
502
452
  * @returns {boolean} `true` of the row at the provided index is located at the topmost level, `false` otherwise.
503
453
  */
504
-
505
454
  }, {
506
455
  key: "isRowHighestLevel",
507
456
  value: function isRowHighestLevel(index) {
508
457
  return !this.isChild(index);
509
458
  }
459
+
510
460
  /**
511
461
  * Return `true` if the provided row index / row object represents a parent in the nested structure.
512
462
  *
513
463
  * @param {number|object} row Row index / row object.
514
464
  * @returns {boolean} `true` if the row is a parent, `false` otherwise.
515
465
  */
516
-
517
466
  }, {
518
467
  key: "isParent",
519
468
  value: function isParent(row) {
520
469
  var _rowObj$__children;
521
-
522
470
  var rowObj = row;
523
-
524
471
  if (!isNaN(rowObj)) {
525
472
  rowObj = this.getDataObject(rowObj);
526
473
  }
527
-
528
474
  return rowObj && !!rowObj.__children && ((_rowObj$__children = rowObj.__children) === null || _rowObj$__children === void 0 ? void 0 : _rowObj$__children.length) !== 0;
529
475
  }
476
+
530
477
  /**
531
478
  * Add a child to the provided parent. It's optional to add a row object as the "element".
532
479
  *
533
480
  * @param {object} parent The parent row object.
534
481
  * @param {object} [element] The element to add as a child.
535
482
  */
536
-
537
483
  }, {
538
484
  key: "addChild",
539
485
  value: function addChild(parent, element) {
540
486
  var childElement = element;
541
487
  this.hot.runHooks('beforeAddChild', parent, childElement);
542
488
  var parentIndex = null;
543
-
544
489
  if (parent) {
545
490
  parentIndex = this.getRowIndex(parent);
546
491
  }
547
-
548
492
  this.hot.runHooks('beforeCreateRow', parentIndex + this.countChildren(parent) + 1, 1);
549
493
  var functionalParent = parent;
550
-
551
494
  if (!parent) {
552
495
  functionalParent = this.mockParent();
553
496
  }
554
-
555
497
  if (!functionalParent.__children) {
556
498
  functionalParent.__children = [];
557
499
  }
558
-
559
500
  if (!childElement) {
560
501
  childElement = this.mockNode();
561
502
  }
562
-
563
503
  functionalParent.__children.push(childElement);
564
-
565
504
  this.rewriteCache();
566
505
  var newRowIndex = this.getRowIndex(childElement);
567
506
  this.hot.rowIndexMapper.insertIndexes(newRowIndex, 1);
568
507
  this.hot.runHooks('afterCreateRow', newRowIndex, 1);
569
508
  this.hot.runHooks('afterAddChild', parent, childElement);
570
509
  }
510
+
571
511
  /**
572
512
  * Add a child node to the provided parent at a specified index.
573
513
  *
@@ -575,26 +515,20 @@ var DataManager = /*#__PURE__*/function () {
575
515
  * @param {number} index Index to insert the child element at.
576
516
  * @param {object} [element] Element (node) to insert.
577
517
  */
578
-
579
518
  }, {
580
519
  key: "addChildAtIndex",
581
520
  value: function addChildAtIndex(parent, index, element) {
582
521
  var childElement = element;
583
522
  var flattenedIndex;
584
-
585
523
  if (!childElement) {
586
524
  childElement = this.mockNode();
587
525
  }
588
-
589
526
  this.hot.runHooks('beforeAddChild', parent, childElement, index);
590
-
591
527
  if (parent) {
592
528
  var parentIndex = this.getRowIndex(parent);
593
529
  var finalChildIndex = parentIndex + index + 1;
594
530
  this.hot.runHooks('beforeCreateRow', finalChildIndex, 1);
595
-
596
531
  parent.__children.splice(index, null, childElement);
597
-
598
532
  this.rewriteCache();
599
533
  this.plugin.disableCoreAPIModifiers();
600
534
  this.hot.setSourceDataAtCell(this.getRowIndexWithinParent(parent), '__children', parent.__children, 'NestedRows.addChildAtIndex');
@@ -604,22 +538,22 @@ var DataManager = /*#__PURE__*/function () {
604
538
  flattenedIndex = finalChildIndex;
605
539
  } else {
606
540
  this.plugin.disableCoreAPIModifiers();
607
- this.hot.alter('insert_row', index, 1, 'NestedRows.addChildAtIndex');
541
+ this.hot.alter('insert_row_above', index, 1, 'NestedRows.addChildAtIndex');
608
542
  this.plugin.enableCoreAPIModifiers();
609
543
  flattenedIndex = this.getRowIndex(this.data[index]);
610
- } // Workaround for refreshing cache losing the reference to the mocked row.
611
-
544
+ }
612
545
 
546
+ // Workaround for refreshing cache losing the reference to the mocked row.
613
547
  childElement = this.getDataObject(flattenedIndex);
614
548
  this.hot.runHooks('afterAddChild', parent, childElement, index);
615
549
  }
550
+
616
551
  /**
617
552
  * Add a sibling element at the specified index.
618
553
  *
619
554
  * @param {number} index New element sibling's index.
620
555
  * @param {('above'|'below')} where Direction in which the sibling is to be created.
621
556
  */
622
-
623
557
  }, {
624
558
  key: "addSibling",
625
559
  value: function addSibling(index) {
@@ -627,40 +561,34 @@ var DataManager = /*#__PURE__*/function () {
627
561
  var translatedIndex = this.translateTrimmedRow(index);
628
562
  var parent = this.getRowParent(translatedIndex);
629
563
  var indexWithinParent = this.getRowIndexWithinParent(translatedIndex);
630
-
631
564
  switch (where) {
632
565
  case 'below':
633
566
  this.addChildAtIndex(parent, indexWithinParent + 1, null);
634
567
  break;
635
-
636
568
  case 'above':
637
569
  this.addChildAtIndex(parent, indexWithinParent, null);
638
570
  break;
639
-
640
571
  default:
641
572
  break;
642
573
  }
643
574
  }
575
+
644
576
  /**
645
577
  * Detach the provided element from its parent and add it right after it.
646
578
  *
647
579
  * @param {object|Array} elements Row object or an array of selected coordinates.
648
580
  * @param {boolean} [forceRender=true] If true (default), it triggers render after finished.
649
581
  */
650
-
651
582
  }, {
652
583
  key: "detachFromParent",
653
584
  value: function detachFromParent(elements) {
654
585
  var _this5 = this;
655
-
656
586
  var forceRender = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
657
587
  var element = null;
658
588
  var rowObjects = [];
659
-
660
589
  if (Array.isArray(elements)) {
661
590
  rangeEach(elements[0], elements[2], function (i) {
662
591
  var translatedIndex = _this5.translateTrimmedRow(i);
663
-
664
592
  rowObjects.push(_this5.getDataObject(translatedIndex));
665
593
  });
666
594
  rangeEach(0, rowObjects.length - 2, function (i) {
@@ -670,7 +598,6 @@ var DataManager = /*#__PURE__*/function () {
670
598
  } else {
671
599
  element = elements;
672
600
  }
673
-
674
601
  var childRowIndex = this.getRowIndex(element);
675
602
  var childCount = this.countChildren(element);
676
603
  var indexWithinParent = this.getRowIndexWithinParent(element);
@@ -679,22 +606,17 @@ var DataManager = /*#__PURE__*/function () {
679
606
  var grandparentRowIndex = this.getRowIndex(grandparent);
680
607
  var movedElementRowIndex = null;
681
608
  this.hot.runHooks('beforeDetachChild', parent, element);
682
-
683
609
  if (indexWithinParent !== null && indexWithinParent !== void 0) {
684
610
  var removedRowIndexes = Array.from(new Array(childRowIndex + childCount + 1).keys()).splice(-1 * (childCount + 1));
685
611
  this.hot.runHooks('beforeRemoveRow', childRowIndex, childCount + 1, removedRowIndexes, this.plugin.pluginName);
686
-
687
612
  parent.__children.splice(indexWithinParent, 1);
688
-
689
613
  this.rewriteCache();
690
614
  this.hot.runHooks('afterRemoveRow', childRowIndex, childCount + 1, removedRowIndexes, this.plugin.pluginName);
691
-
692
615
  if (grandparent) {
693
616
  movedElementRowIndex = grandparentRowIndex + this.countChildren(grandparent);
694
617
  var lastGrandparentChild = this.getChild(grandparent, this.countChildren(grandparent) - 1);
695
618
  var lastGrandparentChildIndex = this.getRowIndex(lastGrandparentChild);
696
619
  this.hot.runHooks('beforeCreateRow', lastGrandparentChildIndex + 1, childCount + 1, this.plugin.pluginName);
697
-
698
620
  grandparent.__children.push(element);
699
621
  } else {
700
622
  movedElementRowIndex = this.hot.countRows() + 1;
@@ -702,15 +624,14 @@ var DataManager = /*#__PURE__*/function () {
702
624
  this.data.push(element);
703
625
  }
704
626
  }
705
-
706
627
  this.rewriteCache();
707
628
  this.hot.runHooks('afterCreateRow', movedElementRowIndex - 2, childCount + 1, this.plugin.pluginName);
708
629
  this.hot.runHooks('afterDetachChild', parent, element, this.getRowIndex(element));
709
-
710
630
  if (forceRender) {
711
631
  this.hot.render();
712
632
  }
713
633
  }
634
+
714
635
  /**
715
636
  * Filter the data by the `logicRows` array.
716
637
  *
@@ -719,22 +640,19 @@ var DataManager = /*#__PURE__*/function () {
719
640
  * @param {number} amount Number of elements to remove.
720
641
  * @param {Array} logicRows Array of indexes to remove.
721
642
  */
722
-
723
643
  }, {
724
644
  key: "filterData",
725
645
  value: function filterData(index, amount, logicRows) {
726
646
  var _this6 = this;
727
-
728
647
  // TODO: why are the first 2 arguments not used?
648
+
729
649
  var elementsToRemove = [];
730
650
  arrayEach(logicRows, function (elem) {
731
651
  elementsToRemove.push(_this6.getDataObject(elem));
732
652
  });
733
653
  arrayEach(elementsToRemove, function (elem) {
734
654
  var indexWithinParent = _this6.getRowIndexWithinParent(elem);
735
-
736
655
  var tempParent = _this6.getRowParent(elem);
737
-
738
656
  if (tempParent === null) {
739
657
  _this6.data.splice(indexWithinParent, 1);
740
658
  } else {
@@ -743,6 +661,7 @@ var DataManager = /*#__PURE__*/function () {
743
661
  });
744
662
  this.rewriteCache();
745
663
  }
664
+
746
665
  /**
747
666
  * Used to splice the source data. Needed to properly modify the nested structure, which wouldn't work with the
748
667
  * default script.
@@ -752,14 +671,12 @@ var DataManager = /*#__PURE__*/function () {
752
671
  * @param {number} amount Number of elements to be removed.
753
672
  * @param {object[]} elements Array of row objects to add.
754
673
  */
755
-
756
674
  }, {
757
675
  key: "spliceData",
758
676
  value: function spliceData(index, amount, elements) {
759
677
  var previousElement = this.getDataObject(index - 1);
760
678
  var newRowParent = null;
761
679
  var indexWithinParent = index;
762
-
763
680
  if (previousElement && previousElement.__children && previousElement.__children.length === 0) {
764
681
  newRowParent = previousElement;
765
682
  indexWithinParent = 0;
@@ -767,52 +684,45 @@ var DataManager = /*#__PURE__*/function () {
767
684
  newRowParent = this.getRowParent(index);
768
685
  indexWithinParent = this.getRowIndexWithinParent(index);
769
686
  }
770
-
771
687
  if (newRowParent) {
772
688
  if (elements) {
773
689
  var _newRowParent$__child;
774
-
775
690
  (_newRowParent$__child = newRowParent.__children).splice.apply(_newRowParent$__child, [indexWithinParent, amount].concat(_toConsumableArray(elements)));
776
691
  } else {
777
692
  newRowParent.__children.splice(indexWithinParent, amount);
778
693
  }
779
694
  } else if (elements) {
780
695
  var _this$data;
781
-
782
696
  (_this$data = this.data).splice.apply(_this$data, [indexWithinParent, amount].concat(_toConsumableArray(elements)));
783
697
  } else {
784
698
  this.data.splice(indexWithinParent, amount);
785
699
  }
786
-
787
700
  this.rewriteCache();
788
701
  }
702
+
789
703
  /**
790
704
  * Update the `__children` key of the upmost parent of the provided row object.
791
705
  *
792
706
  * @private
793
707
  * @param {object} rowElement Row object.
794
708
  */
795
-
796
709
  }, {
797
710
  key: "syncRowWithRawSource",
798
711
  value: function syncRowWithRawSource(rowElement) {
799
712
  var upmostParent = rowElement;
800
713
  var tempParent = null;
801
-
802
714
  do {
803
715
  tempParent = this.getRowParent(tempParent);
804
-
805
716
  if (tempParent !== null) {
806
717
  upmostParent = tempParent;
807
718
  }
808
719
  } while (tempParent !== null);
809
-
810
720
  this.plugin.disableCoreAPIModifiers();
811
721
  this.hot.setSourceDataAtCell(this.getRowIndex(upmostParent), '__children', upmostParent.__children, 'NestedRows.syncRowWithRawSource');
812
722
  this.plugin.enableCoreAPIModifiers();
813
723
  }
814
- /* eslint-disable jsdoc/require-param */
815
724
 
725
+ /* eslint-disable jsdoc/require-param */
816
726
  /**
817
727
  * Move a single row.
818
728
  *
@@ -823,48 +733,39 @@ var DataManager = /*#__PURE__*/function () {
823
733
  */
824
734
 
825
735
  /* eslint-enable jsdoc/require-param */
826
-
827
736
  }, {
828
737
  key: "moveRow",
829
738
  value: function moveRow(fromIndex, toIndex, moveToCollapsed, moveToLastChild) {
830
739
  var moveToLastRow = toIndex === this.hot.countRows();
831
740
  var fromParent = this.getRowParent(fromIndex);
832
741
  var indexInFromParent = this.getRowIndexWithinParent(fromIndex);
833
-
834
742
  var elemToMove = fromParent.__children.slice(indexInFromParent, indexInFromParent + 1);
835
-
836
743
  var movingUp = fromIndex > toIndex;
837
744
  var toParent = moveToLastRow ? this.getRowParent(toIndex - 1) : this.getRowParent(toIndex);
838
-
839
745
  if (toParent === null || toParent === void 0) {
840
746
  toParent = this.getRowParent(toIndex - 1);
841
747
  }
842
-
843
748
  if (toParent === null || toParent === void 0) {
844
749
  toParent = this.getDataObject(toIndex - 1);
845
750
  }
846
-
847
751
  if (!toParent) {
848
752
  toParent = this.getDataObject(toIndex);
849
753
  toParent.__children = [];
850
754
  } else if (!toParent.__children) {
851
755
  toParent.__children = [];
852
756
  }
853
-
854
757
  var indexInTargetParent = moveToLastRow || moveToCollapsed || moveToLastChild ? toParent.__children.length : this.getRowIndexWithinParent(toIndex);
855
758
  var sameParent = fromParent === toParent;
856
-
857
759
  toParent.__children.splice(indexInTargetParent, 0, elemToMove[0]);
760
+ fromParent.__children.splice(indexInFromParent + (movingUp && sameParent ? 1 : 0), 1);
858
761
 
859
- fromParent.__children.splice(indexInFromParent + (movingUp && sameParent ? 1 : 0), 1); // Sync the changes in the cached data with the actual data stored in HOT.
860
-
861
-
762
+ // Sync the changes in the cached data with the actual data stored in HOT.
862
763
  this.syncRowWithRawSource(fromParent);
863
-
864
764
  if (!sameParent) {
865
765
  this.syncRowWithRawSource(toParent);
866
766
  }
867
767
  }
768
+
868
769
  /**
869
770
  * Translate the visual row index to the physical index, taking into consideration the state of collapsed rows.
870
771
  *
@@ -872,16 +773,15 @@ var DataManager = /*#__PURE__*/function () {
872
773
  * @param {number} row Row index.
873
774
  * @returns {number}
874
775
  */
875
-
876
776
  }, {
877
777
  key: "translateTrimmedRow",
878
778
  value: function translateTrimmedRow(row) {
879
779
  if (this.plugin.collapsingUI) {
880
780
  return this.plugin.collapsingUI.translateTrimmedRow(row);
881
781
  }
882
-
883
782
  return row;
884
783
  }
784
+
885
785
  /**
886
786
  * Translate the physical row index to the visual index, taking into consideration the state of collapsed rows.
887
787
  *
@@ -889,19 +789,15 @@ var DataManager = /*#__PURE__*/function () {
889
789
  * @param {number} row Row index.
890
790
  * @returns {number}
891
791
  */
892
-
893
792
  }, {
894
793
  key: "untranslateTrimmedRow",
895
794
  value: function untranslateTrimmedRow(row) {
896
795
  if (this.plugin.collapsingUI) {
897
796
  return this.plugin.collapsingUI.untranslateTrimmedRow(row);
898
797
  }
899
-
900
798
  return row;
901
799
  }
902
800
  }]);
903
-
904
801
  return DataManager;
905
802
  }();
906
-
907
803
  export default DataManager;