handsontable 12.1.2 → 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 (918) 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 +72 -174
  8. package/3rdparty/walkontable/src/border.mjs +74 -161
  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 +74 -238
  97. package/3rdparty/walkontable/src/table.mjs +84 -227
  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 +103 -5
  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 +6 -4
  145. package/core.js +514 -974
  146. package/core.mjs +519 -921
  147. package/dataMap/dataMap.js +127 -212
  148. package/dataMap/dataMap.mjs +127 -188
  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 +23 -55
  155. package/dataMap/metaManager/lazyFactoryMap.mjs +23 -43
  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 +196 -257
  165. package/dataMap/metaManager/metaSchema.mjs +196 -248
  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 +64469 -93042
  177. package/dist/handsontable.full.min.css +2 -2
  178. package/dist/handsontable.full.min.js +527 -284
  179. package/dist/handsontable.js +9616 -21414
  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 +89 -124
  203. package/editorManager.mjs +89 -104
  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 +45 -155
  208. package/editors/baseEditor/baseEditor.mjs +45 -129
  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 +36 -97
  214. package/editors/dateEditor/dateEditor.mjs +35 -74
  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 -12
  236. package/editors/textEditor/caretPositioner.mjs +10 -20
  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 +67 -259
  257. package/helpers/dom/element.mjs +74 -194
  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 -66
  265. package/helpers/mixed.mjs +15 -51
  266. package/helpers/number.js +4 -46
  267. package/helpers/number.mjs +4 -23
  268. package/helpers/object.js +15 -72
  269. package/helpers/object.mjs +21 -52
  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 -26
  275. package/helpers/unicode.mjs +17 -15
  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 -4
  378. package/pluginHooks.js +288 -110
  379. package/pluginHooks.mjs +287 -97
  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 +21 -92
  392. package/plugins/base/base.mjs +21 -63
  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 +3 -13
  422. package/plugins/columnSorting/sortService/engine.mjs +3 -5
  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 +66 -126
  429. package/plugins/columnSummary/columnSummary.mjs +66 -101
  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 +13 -0
  434. package/plugins/columnSummary/utils.mjs +9 -0
  435. package/plugins/comments/commentEditor.js +16 -28
  436. package/plugins/comments/commentEditor.mjs +21 -32
  437. package/plugins/comments/comments.js +92 -175
  438. package/plugins/comments/comments.mjs +92 -149
  439. package/plugins/comments/displaySwitch.js +6 -23
  440. package/plugins/comments/displaySwitch.mjs +6 -18
  441. package/plugins/comments/index.js +0 -2
  442. package/plugins/contextMenu/commandExecutor.js +9 -40
  443. package/plugins/contextMenu/commandExecutor.mjs +14 -41
  444. package/plugins/contextMenu/contextMenu.js +26 -105
  445. package/plugins/contextMenu/contextMenu.mjs +26 -75
  446. package/plugins/contextMenu/cursor.js +6 -20
  447. package/plugins/contextMenu/cursor.mjs +11 -24
  448. package/plugins/contextMenu/index.js +0 -2
  449. package/plugins/contextMenu/itemsFactory.js +14 -43
  450. package/plugins/contextMenu/itemsFactory.mjs +19 -44
  451. package/plugins/contextMenu/menu.js +61 -177
  452. package/plugins/contextMenu/menu.mjs +61 -149
  453. package/plugins/contextMenu/predefinedItems/alignment.js +1 -55
  454. package/plugins/contextMenu/predefinedItems/alignment.mjs +1 -37
  455. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -20
  456. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -4
  457. package/plugins/contextMenu/predefinedItems/columnLeft.js +6 -43
  458. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +6 -26
  459. package/plugins/contextMenu/predefinedItems/columnRight.js +4 -42
  460. package/plugins/contextMenu/predefinedItems/columnRight.mjs +4 -25
  461. package/plugins/contextMenu/predefinedItems/noItems.js +1 -4
  462. package/plugins/contextMenu/predefinedItems/noItems.mjs +1 -1
  463. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -25
  464. package/plugins/contextMenu/predefinedItems/readOnly.mjs +1 -8
  465. package/plugins/contextMenu/predefinedItems/redo.js +1 -16
  466. package/plugins/contextMenu/predefinedItems/redo.mjs +1 -1
  467. package/plugins/contextMenu/predefinedItems/removeColumn.js +3 -38
  468. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +3 -18
  469. package/plugins/contextMenu/predefinedItems/removeRow.js +3 -37
  470. package/plugins/contextMenu/predefinedItems/removeRow.mjs +3 -17
  471. package/plugins/contextMenu/predefinedItems/rowAbove.js +6 -35
  472. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +6 -19
  473. package/plugins/contextMenu/predefinedItems/rowBelow.js +4 -42
  474. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +4 -25
  475. package/plugins/contextMenu/predefinedItems/separator.js +1 -2
  476. package/plugins/contextMenu/predefinedItems/separator.mjs +1 -1
  477. package/plugins/contextMenu/predefinedItems/undo.js +1 -16
  478. package/plugins/contextMenu/predefinedItems/undo.mjs +1 -1
  479. package/plugins/contextMenu/predefinedItems.js +2 -48
  480. package/plugins/contextMenu/predefinedItems.mjs +2 -7
  481. package/plugins/contextMenu/utils.js +17 -57
  482. package/plugins/contextMenu/utils.mjs +21 -39
  483. package/plugins/copyPaste/clipboardData.js +1 -10
  484. package/plugins/copyPaste/clipboardData.mjs +1 -9
  485. package/plugins/copyPaste/contextMenuItem/copy.js +2 -17
  486. package/plugins/copyPaste/contextMenuItem/copy.mjs +6 -9
  487. package/plugins/copyPaste/contextMenuItem/cut.js +2 -17
  488. package/plugins/copyPaste/contextMenuItem/cut.mjs +6 -9
  489. package/plugins/copyPaste/copyPaste.js +53 -185
  490. package/plugins/copyPaste/copyPaste.mjs +53 -144
  491. package/plugins/copyPaste/focusableElement.js +12 -56
  492. package/plugins/copyPaste/focusableElement.mjs +15 -49
  493. package/plugins/copyPaste/index.js +0 -2
  494. package/plugins/copyPaste/pasteEvent.js +1 -10
  495. package/plugins/copyPaste/pasteEvent.mjs +3 -10
  496. package/plugins/customBorders/contextMenuItem/bottom.js +0 -17
  497. package/plugins/customBorders/contextMenuItem/bottom.mjs +4 -8
  498. package/plugins/customBorders/contextMenuItem/index.js +0 -11
  499. package/plugins/customBorders/contextMenuItem/left.js +0 -17
  500. package/plugins/customBorders/contextMenuItem/left.mjs +4 -8
  501. package/plugins/customBorders/contextMenuItem/noBorders.js +0 -15
  502. package/plugins/customBorders/contextMenuItem/noBorders.mjs +4 -6
  503. package/plugins/customBorders/contextMenuItem/right.js +0 -17
  504. package/plugins/customBorders/contextMenuItem/right.mjs +4 -8
  505. package/plugins/customBorders/contextMenuItem/top.js +0 -17
  506. package/plugins/customBorders/contextMenuItem/top.mjs +4 -8
  507. package/plugins/customBorders/customBorders.js +52 -181
  508. package/plugins/customBorders/customBorders.mjs +52 -147
  509. package/plugins/customBorders/index.js +0 -2
  510. package/plugins/customBorders/utils.js +13 -52
  511. package/plugins/customBorders/utils.mjs +20 -39
  512. package/plugins/dragToScroll/dragToScroll.js +17 -74
  513. package/plugins/dragToScroll/dragToScroll.mjs +17 -55
  514. package/plugins/dragToScroll/index.js +0 -2
  515. package/plugins/dropdownMenu/dropdownMenu.js +47 -126
  516. package/plugins/dropdownMenu/dropdownMenu.mjs +47 -95
  517. package/plugins/dropdownMenu/index.js +0 -2
  518. package/plugins/exportFile/dataProvider.js +24 -69
  519. package/plugins/exportFile/dataProvider.mjs +26 -60
  520. package/plugins/exportFile/exportFile.js +48 -58
  521. package/plugins/exportFile/exportFile.mjs +48 -36
  522. package/plugins/exportFile/index.js +0 -2
  523. package/plugins/exportFile/typeFactory.js +1 -11
  524. package/plugins/exportFile/typeFactory.mjs +1 -4
  525. package/plugins/exportFile/types/_base.js +2 -16
  526. package/plugins/exportFile/types/_base.mjs +4 -16
  527. package/plugins/exportFile/types/csv.js +2 -50
  528. package/plugins/exportFile/types/csv.mjs +2 -29
  529. package/plugins/filters/component/_base.js +12 -32
  530. package/plugins/filters/component/_base.mjs +15 -30
  531. package/plugins/filters/component/actionBar.js +6 -55
  532. package/plugins/filters/component/actionBar.mjs +9 -38
  533. package/plugins/filters/component/condition.js +25 -122
  534. package/plugins/filters/component/condition.mjs +24 -88
  535. package/plugins/filters/component/operators.js +10 -68
  536. package/plugins/filters/component/operators.mjs +10 -45
  537. package/plugins/filters/component/value.js +25 -99
  538. package/plugins/filters/component/value.mjs +28 -72
  539. package/plugins/filters/condition/beginsWith.js +2 -32
  540. package/plugins/filters/condition/beginsWith.mjs +2 -10
  541. package/plugins/filters/condition/between.js +3 -37
  542. package/plugins/filters/condition/between.mjs +3 -15
  543. package/plugins/filters/condition/byValue.js +3 -27
  544. package/plugins/filters/condition/byValue.mjs +3 -12
  545. package/plugins/filters/condition/contains.js +2 -32
  546. package/plugins/filters/condition/contains.mjs +2 -10
  547. package/plugins/filters/condition/date/after.js +2 -34
  548. package/plugins/filters/condition/date/after.mjs +2 -12
  549. package/plugins/filters/condition/date/before.js +2 -34
  550. package/plugins/filters/condition/date/before.mjs +2 -12
  551. package/plugins/filters/condition/date/today.js +1 -22
  552. package/plugins/filters/condition/date/today.mjs +1 -3
  553. package/plugins/filters/condition/date/tomorrow.js +1 -22
  554. package/plugins/filters/condition/date/tomorrow.mjs +1 -3
  555. package/plugins/filters/condition/date/yesterday.js +1 -22
  556. package/plugins/filters/condition/date/yesterday.mjs +1 -3
  557. package/plugins/filters/condition/empty.js +1 -19
  558. package/plugins/filters/condition/empty.mjs +1 -1
  559. package/plugins/filters/condition/endsWith.js +2 -32
  560. package/plugins/filters/condition/endsWith.mjs +2 -10
  561. package/plugins/filters/condition/equal.js +2 -31
  562. package/plugins/filters/condition/equal.mjs +2 -10
  563. package/plugins/filters/condition/false.js +1 -5
  564. package/plugins/filters/condition/false.mjs +1 -1
  565. package/plugins/filters/condition/greaterThan.js +2 -32
  566. package/plugins/filters/condition/greaterThan.mjs +2 -12
  567. package/plugins/filters/condition/greaterThanOrEqual.js +2 -32
  568. package/plugins/filters/condition/greaterThanOrEqual.mjs +2 -12
  569. package/plugins/filters/condition/lessThan.js +2 -32
  570. package/plugins/filters/condition/lessThan.mjs +2 -12
  571. package/plugins/filters/condition/lessThanOrEqual.js +2 -32
  572. package/plugins/filters/condition/lessThanOrEqual.mjs +2 -12
  573. package/plugins/filters/condition/none.js +1 -18
  574. package/plugins/filters/condition/none.mjs +1 -1
  575. package/plugins/filters/condition/notBetween.js +1 -19
  576. package/plugins/filters/condition/notBetween.mjs +1 -1
  577. package/plugins/filters/condition/notContains.js +1 -19
  578. package/plugins/filters/condition/notContains.mjs +1 -1
  579. package/plugins/filters/condition/notEmpty.js +1 -19
  580. package/plugins/filters/condition/notEmpty.mjs +1 -1
  581. package/plugins/filters/condition/notEqual.js +1 -19
  582. package/plugins/filters/condition/notEqual.mjs +1 -1
  583. package/plugins/filters/condition/true.js +1 -5
  584. package/plugins/filters/condition/true.mjs +1 -1
  585. package/plugins/filters/conditionCollection.js +21 -80
  586. package/plugins/filters/conditionCollection.mjs +21 -57
  587. package/plugins/filters/conditionRegisterer.js +5 -14
  588. package/plugins/filters/conditionRegisterer.mjs +5 -9
  589. package/plugins/filters/conditionUpdateObserver.js +17 -57
  590. package/plugins/filters/conditionUpdateObserver.mjs +25 -53
  591. package/plugins/filters/constants.js +1 -66
  592. package/plugins/filters/constants.mjs +1 -8
  593. package/plugins/filters/dataFilter.js +4 -21
  594. package/plugins/filters/dataFilter.mjs +7 -23
  595. package/plugins/filters/filters.d.ts +1 -1
  596. package/plugins/filters/filters.js +147 -272
  597. package/plugins/filters/filters.mjs +148 -228
  598. package/plugins/filters/index.js +0 -2
  599. package/plugins/filters/logicalOperationRegisterer.js +3 -9
  600. package/plugins/filters/logicalOperationRegisterer.mjs +3 -4
  601. package/plugins/filters/logicalOperations/conjunction.js +2 -19
  602. package/plugins/filters/logicalOperations/conjunction.mjs +2 -2
  603. package/plugins/filters/logicalOperations/disjunction.js +2 -19
  604. package/plugins/filters/logicalOperations/disjunction.mjs +2 -2
  605. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +2 -21
  606. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +2 -3
  607. package/plugins/filters/ui/_base.js +12 -55
  608. package/plugins/filters/ui/_base.mjs +12 -35
  609. package/plugins/filters/ui/input.js +7 -52
  610. package/plugins/filters/ui/input.mjs +7 -34
  611. package/plugins/filters/ui/link.js +3 -43
  612. package/plugins/filters/ui/link.mjs +3 -25
  613. package/plugins/filters/ui/multipleSelect.js +26 -120
  614. package/plugins/filters/ui/multipleSelect.mjs +20 -76
  615. package/plugins/filters/ui/radioInput.js +6 -47
  616. package/plugins/filters/ui/radioInput.mjs +6 -30
  617. package/plugins/filters/ui/select.js +14 -76
  618. package/plugins/filters/ui/select.mjs +14 -52
  619. package/plugins/filters/utils.js +6 -39
  620. package/plugins/filters/utils.mjs +6 -23
  621. package/plugins/formulas/engine/register.js +24 -74
  622. package/plugins/formulas/engine/register.mjs +29 -51
  623. package/plugins/formulas/engine/settings.js +4 -24
  624. package/plugins/formulas/engine/settings.mjs +4 -12
  625. package/plugins/formulas/formulas.js +103 -295
  626. package/plugins/formulas/formulas.mjs +104 -248
  627. package/plugins/formulas/index.js +0 -2
  628. package/plugins/formulas/utils.js +1 -3
  629. package/plugins/formulas/utils.mjs +1 -1
  630. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +4 -38
  631. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +8 -25
  632. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +17 -45
  633. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +21 -29
  634. package/plugins/hiddenColumns/hiddenColumns.js +72 -153
  635. package/plugins/hiddenColumns/hiddenColumns.mjs +72 -110
  636. package/plugins/hiddenColumns/index.js +0 -2
  637. package/plugins/hiddenRows/contextMenuItem/hideRow.js +4 -38
  638. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +8 -25
  639. package/plugins/hiddenRows/contextMenuItem/showRow.js +17 -45
  640. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +21 -29
  641. package/plugins/hiddenRows/hiddenRows.js +70 -152
  642. package/plugins/hiddenRows/hiddenRows.mjs +70 -109
  643. package/plugins/hiddenRows/index.js +0 -2
  644. package/plugins/index.js +0 -71
  645. package/plugins/index.mjs +3 -5
  646. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -28
  647. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +5 -17
  648. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -28
  649. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +5 -17
  650. package/plugins/manualColumnFreeze/index.js +0 -2
  651. package/plugins/manualColumnFreeze/manualColumnFreeze.js +21 -78
  652. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +21 -54
  653. package/plugins/manualColumnMove/index.js +0 -2
  654. package/plugins/manualColumnMove/manualColumnMove.js +45 -134
  655. package/plugins/manualColumnMove/manualColumnMove.mjs +45 -106
  656. package/plugins/manualColumnMove/ui/_base.js +12 -30
  657. package/plugins/manualColumnMove/ui/_base.mjs +12 -27
  658. package/plugins/manualColumnMove/ui/backlight.js +1 -37
  659. package/plugins/manualColumnMove/ui/backlight.mjs +1 -22
  660. package/plugins/manualColumnMove/ui/guideline.js +1 -37
  661. package/plugins/manualColumnMove/ui/guideline.mjs +1 -22
  662. package/plugins/manualColumnResize/index.js +0 -2
  663. package/plugins/manualColumnResize/manualColumnResize.js +44 -143
  664. package/plugins/manualColumnResize/manualColumnResize.mjs +43 -118
  665. package/plugins/manualRowMove/index.js +0 -2
  666. package/plugins/manualRowMove/manualRowMove.js +45 -137
  667. package/plugins/manualRowMove/manualRowMove.mjs +45 -109
  668. package/plugins/manualRowMove/ui/_base.js +12 -27
  669. package/plugins/manualRowMove/ui/_base.mjs +12 -26
  670. package/plugins/manualRowMove/ui/backlight.js +1 -37
  671. package/plugins/manualRowMove/ui/backlight.mjs +1 -22
  672. package/plugins/manualRowMove/ui/guideline.js +1 -37
  673. package/plugins/manualRowMove/ui/guideline.mjs +1 -22
  674. package/plugins/manualRowResize/index.js +0 -2
  675. package/plugins/manualRowResize/manualRowResize.js +42 -138
  676. package/plugins/manualRowResize/manualRowResize.mjs +41 -112
  677. package/plugins/mergeCells/calculations/autofill.js +39 -130
  678. package/plugins/mergeCells/calculations/autofill.mjs +44 -122
  679. package/plugins/mergeCells/calculations/selection.js +9 -40
  680. package/plugins/mergeCells/calculations/selection.mjs +9 -37
  681. package/plugins/mergeCells/cellCoords.js +30 -51
  682. package/plugins/mergeCells/cellCoords.mjs +35 -54
  683. package/plugins/mergeCells/cellsCollection.js +13 -84
  684. package/plugins/mergeCells/cellsCollection.mjs +18 -69
  685. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +0 -22
  686. package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +4 -11
  687. package/plugins/mergeCells/index.js +0 -2
  688. package/plugins/mergeCells/mergeCells.js +130 -333
  689. package/plugins/mergeCells/mergeCells.mjs +130 -292
  690. package/plugins/mergeCells/utils.js +0 -3
  691. package/plugins/mergeCells/utils.mjs +0 -1
  692. package/plugins/multiColumnSorting/domHelpers.js +3 -15
  693. package/plugins/multiColumnSorting/domHelpers.mjs +3 -7
  694. package/plugins/multiColumnSorting/index.js +0 -2
  695. package/plugins/multiColumnSorting/multiColumnSorting.js +14 -66
  696. package/plugins/multiColumnSorting/multiColumnSorting.mjs +14 -44
  697. package/plugins/multiColumnSorting/rootComparator.js +2 -26
  698. package/plugins/multiColumnSorting/rootComparator.mjs +9 -23
  699. package/plugins/multiColumnSorting/utils.js +0 -7
  700. package/plugins/multiColumnSorting/utils.mjs +3 -8
  701. package/plugins/multipleSelectionHandles/index.js +0 -2
  702. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +6 -109
  703. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +6 -87
  704. package/plugins/nestedHeaders/index.js +0 -2
  705. package/plugins/nestedHeaders/nestedHeaders.js +79 -200
  706. package/plugins/nestedHeaders/nestedHeaders.mjs +80 -173
  707. package/plugins/nestedHeaders/stateManager/headersTree.js +16 -93
  708. package/plugins/nestedHeaders/stateManager/headersTree.mjs +16 -73
  709. package/plugins/nestedHeaders/stateManager/index.js +24 -107
  710. package/plugins/nestedHeaders/stateManager/index.mjs +51 -115
  711. package/plugins/nestedHeaders/stateManager/matrixGenerator.js +7 -25
  712. package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +38 -51
  713. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +12 -27
  714. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +29 -35
  715. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +10 -25
  716. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +26 -32
  717. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +3 -19
  718. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +9 -20
  719. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +2 -12
  720. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +2 -5
  721. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +3 -22
  722. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +9 -21
  723. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +3 -10
  724. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +3 -7
  725. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -36
  726. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +44 -61
  727. package/plugins/nestedHeaders/stateManager/sourceSettings.js +16 -78
  728. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +21 -68
  729. package/plugins/nestedHeaders/stateManager/utils.js +19 -22
  730. package/plugins/nestedHeaders/stateManager/utils.mjs +19 -20
  731. package/plugins/nestedHeaders/utils/ghostTable.js +9 -37
  732. package/plugins/nestedHeaders/utils/ghostTable.mjs +16 -43
  733. package/plugins/nestedRows/data/dataManager.js +40 -161
  734. package/plugins/nestedRows/data/dataManager.mjs +44 -148
  735. package/plugins/nestedRows/index.js +0 -2
  736. package/plugins/nestedRows/nestedRows.js +41 -119
  737. package/plugins/nestedRows/nestedRows.mjs +41 -86
  738. package/plugins/nestedRows/ui/_base.js +1 -9
  739. package/plugins/nestedRows/ui/_base.mjs +1 -8
  740. package/plugins/nestedRows/ui/collapsing.js +28 -134
  741. package/plugins/nestedRows/ui/collapsing.mjs +34 -118
  742. package/plugins/nestedRows/ui/contextMenu.js +2 -53
  743. package/plugins/nestedRows/ui/contextMenu.mjs +2 -32
  744. package/plugins/nestedRows/ui/headers.js +5 -50
  745. package/plugins/nestedRows/ui/headers.mjs +11 -41
  746. package/plugins/nestedRows/utils/rowMoveController.js +28 -78
  747. package/plugins/nestedRows/utils/rowMoveController.mjs +33 -66
  748. package/plugins/persistentState/index.js +0 -2
  749. package/plugins/persistentState/persistentState.js +10 -58
  750. package/plugins/persistentState/persistentState.mjs +10 -37
  751. package/plugins/persistentState/storage.js +9 -25
  752. package/plugins/persistentState/storage.mjs +12 -26
  753. package/plugins/registry.js +7 -51
  754. package/plugins/registry.mjs +8 -34
  755. package/plugins/search/index.js +0 -2
  756. package/plugins/search/search.js +16 -98
  757. package/plugins/search/search.mjs +16 -68
  758. package/plugins/touchScroll/index.js +0 -2
  759. package/plugins/touchScroll/touchScroll.js +15 -76
  760. package/plugins/touchScroll/touchScroll.mjs +15 -58
  761. package/plugins/trimRows/index.js +0 -2
  762. package/plugins/trimRows/trimRows.js +62 -88
  763. package/plugins/trimRows/trimRows.mjs +62 -65
  764. package/plugins/undoRedo/index.js +0 -14
  765. package/plugins/undoRedo/undoRedo.js +48 -218
  766. package/plugins/undoRedo/undoRedo.mjs +48 -188
  767. package/registry.js +0 -11
  768. package/registry.mjs +2 -4
  769. package/renderers/autocompleteRenderer/autocompleteRenderer.js +5 -14
  770. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +5 -6
  771. package/renderers/autocompleteRenderer/index.js +0 -2
  772. package/renderers/baseRenderer/baseRenderer.js +2 -11
  773. package/renderers/baseRenderer/baseRenderer.mjs +2 -9
  774. package/renderers/baseRenderer/index.js +0 -2
  775. package/renderers/checkboxRenderer/checkboxRenderer.js +22 -103
  776. package/renderers/checkboxRenderer/checkboxRenderer.mjs +22 -81
  777. package/renderers/checkboxRenderer/index.js +0 -2
  778. package/renderers/htmlRenderer/htmlRenderer.js +1 -7
  779. package/renderers/htmlRenderer/htmlRenderer.mjs +1 -1
  780. package/renderers/htmlRenderer/index.js +0 -2
  781. package/renderers/index.js +0 -19
  782. package/renderers/index.mjs +3 -5
  783. package/renderers/numericRenderer/index.js +0 -2
  784. package/renderers/numericRenderer/numericRenderer.js +1 -23
  785. package/renderers/numericRenderer/numericRenderer.mjs +1 -10
  786. package/renderers/passwordRenderer/index.js +0 -2
  787. package/renderers/passwordRenderer/passwordRenderer.js +1 -8
  788. package/renderers/passwordRenderer/passwordRenderer.mjs +1 -1
  789. package/renderers/registry.js +7 -16
  790. package/renderers/registry.mjs +7 -14
  791. package/renderers/textRenderer/index.js +0 -2
  792. package/renderers/textRenderer/textRenderer.js +2 -14
  793. package/renderers/textRenderer/textRenderer.mjs +2 -6
  794. package/renderers/timeRenderer/index.js +0 -2
  795. package/renderers/timeRenderer/timeRenderer.js +1 -6
  796. package/renderers/timeRenderer/timeRenderer.mjs +1 -1
  797. package/selection/highlight/highlight.js +17 -73
  798. package/selection/highlight/highlight.mjs +31 -64
  799. package/selection/highlight/types/activeHeader.js +1 -21
  800. package/selection/highlight/types/activeHeader.mjs +6 -16
  801. package/selection/highlight/types/area.js +2 -22
  802. package/selection/highlight/types/area.mjs +10 -20
  803. package/selection/highlight/types/cell.js +1 -21
  804. package/selection/highlight/types/cell.mjs +9 -19
  805. package/selection/highlight/types/customSelection.js +2 -22
  806. package/selection/highlight/types/customSelection.mjs +11 -21
  807. package/selection/highlight/types/fill.js +2 -17
  808. package/selection/highlight/types/fill.mjs +9 -14
  809. package/selection/highlight/types/header.js +3 -23
  810. package/selection/highlight/types/header.mjs +13 -23
  811. package/selection/highlight/types/index.js +3 -24
  812. package/selection/highlight/types/index.mjs +3 -10
  813. package/selection/highlight/visualSelection.js +24 -74
  814. package/selection/highlight/visualSelection.mjs +24 -62
  815. package/selection/index.js +0 -14
  816. package/selection/mouseEventHandler.js +19 -30
  817. package/selection/mouseEventHandler.mjs +32 -36
  818. package/selection/range.js +11 -31
  819. package/selection/range.mjs +11 -22
  820. package/selection/selection.js +62 -157
  821. package/selection/selection.mjs +65 -132
  822. package/selection/transformation.js +10 -40
  823. package/selection/transformation.mjs +18 -45
  824. package/selection/utils.js +22 -70
  825. package/selection/utils.mjs +22 -47
  826. package/shortcuts/context.js +23 -78
  827. package/shortcuts/context.mjs +23 -55
  828. package/shortcuts/index.js +0 -2
  829. package/shortcuts/keyObserver.js +4 -17
  830. package/shortcuts/keyObserver.mjs +4 -12
  831. package/shortcuts/manager.js +16 -36
  832. package/shortcuts/manager.mjs +16 -33
  833. package/shortcuts/recorder.js +20 -47
  834. package/shortcuts/recorder.mjs +20 -39
  835. package/shortcuts/utils.js +5 -24
  836. package/shortcuts/utils.mjs +5 -8
  837. package/tableView.js +100 -270
  838. package/tableView.mjs +100 -248
  839. package/translations/changesObservable/observable.js +5 -54
  840. package/translations/changesObservable/observable.mjs +12 -51
  841. package/translations/changesObservable/observer.js +4 -32
  842. package/translations/changesObservable/observer.mjs +9 -29
  843. package/translations/changesObservable/utils.js +1 -5
  844. package/translations/changesObservable/utils.mjs +1 -4
  845. package/translations/index.js +0 -11
  846. package/translations/indexMapper.js +70 -158
  847. package/translations/indexMapper.mjs +70 -125
  848. package/translations/mapCollections/aggregatedCollection.js +9 -51
  849. package/translations/mapCollections/aggregatedCollection.mjs +12 -41
  850. package/translations/mapCollections/index.js +0 -7
  851. package/translations/mapCollections/mapCollection.js +10 -33
  852. package/translations/mapCollections/mapCollection.mjs +10 -22
  853. package/translations/maps/hidingMap.js +2 -35
  854. package/translations/maps/hidingMap.mjs +7 -28
  855. package/translations/maps/index.js +1 -24
  856. package/translations/maps/index.mjs +1 -3
  857. package/translations/maps/indexMap.js +12 -34
  858. package/translations/maps/indexMap.mjs +16 -32
  859. package/translations/maps/indexesSequence.js +3 -41
  860. package/translations/maps/indexesSequence.mjs +9 -32
  861. package/translations/maps/linkedPhysicalIndexToValueMap.js +9 -78
  862. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +16 -59
  863. package/translations/maps/physicalIndexToValueMap.js +2 -39
  864. package/translations/maps/physicalIndexToValueMap.mjs +8 -31
  865. package/translations/maps/trimmingMap.js +2 -35
  866. package/translations/maps/trimmingMap.mjs +7 -28
  867. package/translations/maps/utils/actionsOnIndexes.js +1 -7
  868. package/translations/maps/utils/actionsOnIndexes.mjs +9 -12
  869. package/translations/maps/utils/index.js +0 -13
  870. package/translations/maps/utils/index.mjs +0 -3
  871. package/translations/maps/utils/indexesSequence.js +1 -24
  872. package/translations/maps/utils/indexesSequence.mjs +10 -19
  873. package/translations/maps/utils/physicallyIndexed.js +1 -27
  874. package/translations/maps/utils/physicallyIndexed.mjs +11 -21
  875. package/utils/dataStructures/linkedList.js +15 -56
  876. package/utils/dataStructures/linkedList.mjs +15 -54
  877. package/utils/dataStructures/priorityMap.js +8 -46
  878. package/utils/dataStructures/priorityMap.mjs +8 -29
  879. package/utils/dataStructures/queue.js +6 -17
  880. package/utils/dataStructures/queue.mjs +6 -16
  881. package/utils/dataStructures/stack.js +6 -17
  882. package/utils/dataStructures/stack.mjs +6 -16
  883. package/utils/dataStructures/tree.js +11 -75
  884. package/utils/dataStructures/tree.mjs +11 -54
  885. package/utils/dataStructures/uniqueMap.js +17 -56
  886. package/utils/dataStructures/uniqueMap.mjs +17 -42
  887. package/utils/dataStructures/uniqueSet.js +5 -32
  888. package/utils/dataStructures/uniqueSet.mjs +5 -19
  889. package/utils/ghostTable.js +33 -104
  890. package/utils/ghostTable.mjs +35 -92
  891. package/utils/interval.js +10 -37
  892. package/utils/interval.mjs +7 -29
  893. package/utils/parseTable.js +11 -92
  894. package/utils/parseTable.mjs +11 -62
  895. package/utils/rootInstance.js +3 -14
  896. package/utils/rootInstance.mjs +3 -3
  897. package/utils/samplesGenerator.js +15 -51
  898. package/utils/samplesGenerator.mjs +17 -44
  899. package/utils/staticRegister.js +6 -33
  900. package/utils/staticRegister.mjs +6 -19
  901. package/validators/autocompleteValidator/autocompleteValidator.js +2 -10
  902. package/validators/autocompleteValidator/autocompleteValidator.mjs +2 -8
  903. package/validators/autocompleteValidator/index.js +0 -2
  904. package/validators/dateValidator/dateValidator.js +2 -21
  905. package/validators/dateValidator/dateValidator.mjs +2 -11
  906. package/validators/dateValidator/index.js +0 -2
  907. package/validators/index.js +0 -11
  908. package/validators/index.mjs +3 -5
  909. package/validators/numericValidator/index.js +0 -2
  910. package/validators/numericValidator/numericValidator.js +1 -7
  911. package/validators/numericValidator/numericValidator.mjs +1 -3
  912. package/validators/registry.js +7 -16
  913. package/validators/registry.mjs +7 -14
  914. package/validators/timeValidator/index.js +0 -2
  915. package/validators/timeValidator/timeValidator.js +6 -18
  916. package/validators/timeValidator/timeValidator.mjs +8 -13
  917. package/utils/sortingAlgorithms/mergeSort.js +0 -120
  918. package/utils/sortingAlgorithms/mergeSort.mjs +0 -110
@@ -1,5 +1,4 @@
1
1
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
-
3
2
  import "core-js/modules/es.object.set-prototype-of.js";
4
3
  import "core-js/modules/es.reflect.construct.js";
5
4
  import "core-js/modules/es.reflect.get.js";
@@ -16,30 +15,18 @@ import "core-js/modules/es.array.from.js";
16
15
  import "core-js/modules/es.function.name.js";
17
16
  import "core-js/modules/es.regexp.exec.js";
18
17
  var _excluded = ["column"],
19
- _excluded2 = ["column"];
20
-
18
+ _excluded2 = ["column"];
21
19
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
22
-
23
20
  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."); }
24
-
25
21
  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); }
26
-
27
22
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
28
-
29
23
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
30
-
31
24
  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; }
32
-
33
25
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
34
-
35
26
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
36
-
37
27
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
38
-
39
28
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
40
-
41
29
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
42
-
43
30
  import "core-js/modules/es.array.sort.js";
44
31
  import "core-js/modules/es.array.slice.js";
45
32
  import "core-js/modules/es.object.to-string.js";
@@ -52,31 +39,18 @@ import "core-js/modules/es.array.iterator.js";
52
39
  import "core-js/modules/es.map.js";
53
40
  import "core-js/modules/es.string.iterator.js";
54
41
  import "core-js/modules/web.dom-collections.iterator.js";
55
-
56
42
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
57
-
58
43
  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); } }
59
-
60
44
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
61
-
62
45
  function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
63
-
64
46
  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
65
-
66
47
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
67
-
68
48
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
69
-
70
49
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
71
-
72
50
  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
73
-
74
51
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
75
-
76
52
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
77
-
78
53
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
79
-
80
54
  import { addClass, removeClass } from "../../helpers/dom/element.mjs";
81
55
  import { isUndefined, isDefined } from "../../helpers/mixed.mjs";
82
56
  import { isObject } from "../../helpers/object.mjs";
@@ -96,8 +70,9 @@ var APPEND_COLUMN_CONFIG_STRATEGY = 'append';
96
70
  var REPLACE_COLUMN_CONFIG_STRATEGY = 'replace';
97
71
  registerRootComparator(PLUGIN_KEY, rootComparator);
98
72
  Hooks.getSingleton().register('beforeColumnSort');
99
- Hooks.getSingleton().register('afterColumnSort'); // DIFF - MultiColumnSorting & ColumnSorting: changed configuration documentation.
73
+ Hooks.getSingleton().register('afterColumnSort');
100
74
 
75
+ // DIFF - MultiColumnSorting & ColumnSorting: changed configuration documentation.
101
76
  /**
102
77
  * @plugin ColumnSorting
103
78
  * @class ColumnSorting
@@ -147,17 +122,12 @@ Hooks.getSingleton().register('afterColumnSort'); // DIFF - MultiColumnSorting &
147
122
  * }]
148
123
  * ```
149
124
  */
150
-
151
125
  export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
152
126
  _inherits(ColumnSorting, _BasePlugin);
153
-
154
127
  var _super = _createSuper(ColumnSorting);
155
-
156
128
  function ColumnSorting(hotInstance) {
157
129
  var _this;
158
-
159
130
  _classCallCheck(this, ColumnSorting);
160
-
161
131
  _this = _super.call(this, hotInstance);
162
132
  /**
163
133
  * Instance of column state manager.
@@ -165,7 +135,6 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
165
135
  * @private
166
136
  * @type {null|ColumnStatesManager}
167
137
  */
168
-
169
138
  _this.columnStatesManager = null;
170
139
  /**
171
140
  * Cached column properties from plugin like i.e. `indicator`, `headerAction`.
@@ -173,7 +142,6 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
173
142
  * @private
174
143
  * @type {null|PhysicalIndexToValueMap}
175
144
  */
176
-
177
145
  _this.columnMetaCache = null;
178
146
  /**
179
147
  * Main settings key designed for the plugin.
@@ -181,7 +149,6 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
181
149
  * @private
182
150
  * @type {string}
183
151
  */
184
-
185
152
  _this.pluginKey = PLUGIN_KEY;
186
153
  /**
187
154
  * Plugin indexes cache.
@@ -189,44 +156,38 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
189
156
  * @private
190
157
  * @type {null|IndexesSequence}
191
158
  */
192
-
193
159
  _this.indexesSequenceCache = null;
194
160
  return _this;
195
161
  }
162
+
196
163
  /**
197
164
  * Checks if the plugin is enabled in the Handsontable settings. This method is executed in {@link Hooks#beforeInit}
198
- * hook and if it returns `true` than the {@link ColumnSorting#enablePlugin} method is called.
165
+ * hook and if it returns `true` then the {@link ColumnSorting#enablePlugin} method is called.
199
166
  *
200
167
  * @returns {boolean}
201
168
  */
202
-
203
-
204
169
  _createClass(ColumnSorting, [{
205
170
  key: "isEnabled",
206
171
  value: function isEnabled() {
207
172
  return !!this.hot.getSettings()[this.pluginKey];
208
173
  }
174
+
209
175
  /**
210
176
  * Enables the plugin functionality for this Handsontable instance.
211
177
  */
212
-
213
178
  }, {
214
179
  key: "enablePlugin",
215
180
  value: function enablePlugin() {
216
181
  var _this2 = this;
217
-
218
182
  if (this.enabled) {
219
183
  return;
220
184
  }
221
-
222
185
  this.columnStatesManager = new ColumnStatesManager(this.hot, "".concat(this.pluginKey, ".sortingStates"));
223
186
  this.columnMetaCache = new IndexToValueMap(function (physicalIndex) {
224
187
  var visualIndex = _this2.hot.toVisualColumn(physicalIndex);
225
-
226
188
  if (visualIndex === null) {
227
189
  visualIndex = physicalIndex;
228
190
  }
229
-
230
191
  return _this2.getMergedPluginSettings(visualIndex);
231
192
  });
232
193
  this.hot.columnIndexMapper.registerMap("".concat(this.pluginKey, ".columnMeta"), this.columnMetaCache);
@@ -244,34 +205,31 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
244
205
  });
245
206
  this.addHook('afterLoadData', function () {
246
207
  return _this2.onAfterLoadData.apply(_this2, arguments);
247
- }); // TODO: Workaround? It should be refactored / described.
208
+ });
248
209
 
210
+ // TODO: Workaround? It should be refactored / described.
249
211
  if (this.hot.view) {
250
212
  this.loadOrSortBySettings();
251
213
  }
252
-
253
214
  _get(_getPrototypeOf(ColumnSorting.prototype), "enablePlugin", this).call(this);
254
215
  }
216
+
255
217
  /**
256
218
  * Disables the plugin functionality for this Handsontable instance.
257
219
  */
258
-
259
220
  }, {
260
221
  key: "disablePlugin",
261
222
  value: function disablePlugin() {
262
223
  var _this3 = this;
263
-
264
224
  var clearColHeader = function clearColHeader(column, TH) {
265
225
  var headerSpanElement = getHeaderSpanElement(TH);
266
-
267
226
  if (isFirstLevelColumnHeader(column, TH) === false || headerSpanElement === null) {
268
227
  return;
269
228
  }
270
-
271
229
  _this3.updateHeaderClasses(headerSpanElement);
272
- }; // Changing header width and removing indicator.
273
-
230
+ };
274
231
 
232
+ // Changing header width and removing indicator.
275
233
  this.hot.addHook('afterGetColHeader', clearColHeader);
276
234
  this.hot.addHookOnce('afterViewRender', function () {
277
235
  _this3.hot.removeHook('afterGetColHeader', clearColHeader);
@@ -279,7 +237,6 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
279
237
  this.hot.batchExecution(function () {
280
238
  if (_this3.indexesSequenceCache !== null) {
281
239
  _this3.hot.rowIndexMapper.setIndexesSequence(_this3.indexesSequenceCache.getValues());
282
-
283
240
  _this3.hot.rowIndexMapper.unregisterMap(_this3.pluginKey);
284
241
  }
285
242
  }, true);
@@ -287,10 +244,10 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
287
244
  this.columnStatesManager.destroy();
288
245
  this.columnMetaCache = null;
289
246
  this.columnStatesManager = null;
290
-
291
247
  _get(_getPrototypeOf(ColumnSorting.prototype), "disablePlugin", this).call(this);
292
- } // DIFF - MultiColumnSorting & ColumnSorting: changed function documentation.
248
+ }
293
249
 
250
+ // DIFF - MultiColumnSorting & ColumnSorting: changed function documentation.
294
251
  /**
295
252
  * Sorts the table by chosen columns and orders.
296
253
  *
@@ -308,61 +265,57 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
308
265
  * @fires Hooks#beforeColumnSort
309
266
  * @fires Hooks#afterColumnSort
310
267
  */
311
-
312
268
  }, {
313
269
  key: "sort",
314
270
  value: function sort(sortConfig) {
315
- var currentSortConfig = this.getSortConfig(); // We always pass configs defined as an array to `beforeColumnSort` and `afterColumnSort` hooks.
271
+ var currentSortConfig = this.getSortConfig();
316
272
 
273
+ // We always pass configs defined as an array to `beforeColumnSort` and `afterColumnSort` hooks.
317
274
  var destinationSortConfigs = this.getNormalizedSortConfigs(sortConfig);
318
275
  var sortPossible = this.areValidSortConfigs(destinationSortConfigs);
319
276
  var allowSort = this.hot.runHooks('beforeColumnSort', currentSortConfig, destinationSortConfigs, sortPossible);
320
-
321
277
  if (allowSort === false) {
322
278
  return;
323
279
  }
324
-
325
280
  if (currentSortConfig.length === 0 && this.indexesSequenceCache === null) {
326
281
  this.indexesSequenceCache = this.hot.rowIndexMapper.registerMap(this.pluginKey, new IndexesSequence());
327
282
  this.indexesSequenceCache.setValues(this.hot.rowIndexMapper.getIndexesSequence());
328
283
  }
329
-
330
284
  if (sortPossible) {
331
285
  this.columnStatesManager.setSortStates(destinationSortConfigs);
332
286
  this.sortByPresetSortStates(destinationSortConfigs);
333
287
  this.saveAllSortSettings(destinationSortConfigs);
334
288
  }
335
-
336
289
  this.hot.runHooks('afterColumnSort', currentSortConfig, sortPossible ? destinationSortConfigs : currentSortConfig, sortPossible);
337
-
338
290
  if (sortPossible) {
339
- this.hot.render(); // TODO: Workaround? This triggers fast redraw. One test won't pass after removal.
291
+ this.hot.render();
292
+ // TODO: Workaround? This triggers fast redraw. One test won't pass after removal.
340
293
  // It should be refactored / described.
341
-
342
294
  this.hot.forceFullRender = false;
343
295
  this.hot.view.render();
344
296
  }
345
297
  }
298
+
346
299
  /**
347
300
  * Clear the sort performed on the table.
348
301
  */
349
-
350
302
  }, {
351
303
  key: "clearSort",
352
304
  value: function clearSort() {
353
305
  this.sort([]);
354
306
  }
307
+
355
308
  /**
356
309
  * Checks if the table is sorted (any column have to be sorted).
357
310
  *
358
311
  * @returns {boolean}
359
312
  */
360
-
361
313
  }, {
362
314
  key: "isSorted",
363
315
  value: function isSorted() {
364
316
  return this.enabled && !this.columnStatesManager.isListOfSortedColumnsEmpty();
365
317
  }
318
+
366
319
  /**
367
320
  * Get sort configuration for particular column or for all sorted columns. Objects contain `column` and `sortOrder` properties.
368
321
  *
@@ -371,16 +324,15 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
371
324
  * @param {number} [column] Visual column index.
372
325
  * @returns {undefined|object|Array}
373
326
  */
374
-
375
327
  }, {
376
328
  key: "getSortConfig",
377
329
  value: function getSortConfig(column) {
378
330
  if (isDefined(column)) {
379
331
  return this.columnStatesManager.getColumnSortState(column);
380
332
  }
381
-
382
333
  return this.columnStatesManager.getSortStates();
383
334
  }
335
+
384
336
  /**
385
337
  * @description
386
338
  * Warn: Useful mainly for providing server side sort implementation (see in the example below). It doesn't sort the data set. It just sets sort configuration for all sorted columns.
@@ -405,17 +357,16 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
405
357
  * The configuration object contains `column` and `sortOrder` properties. First of them contains visual column index, the second one contains
406
358
  * sort order (`asc` for ascending, `desc` for descending).
407
359
  */
408
-
409
360
  }, {
410
361
  key: "setSortConfig",
411
362
  value: function setSortConfig(sortConfig) {
412
363
  // We always set configs defined as an array.
413
364
  var destinationSortConfigs = this.getNormalizedSortConfigs(sortConfig);
414
-
415
365
  if (this.areValidSortConfigs(destinationSortConfigs)) {
416
366
  this.columnStatesManager.setSortStates(destinationSortConfigs);
417
367
  }
418
368
  }
369
+
419
370
  /**
420
371
  * Get normalized sort configs.
421
372
  *
@@ -425,18 +376,16 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
425
376
  * sort order (`asc` for ascending, `desc` for descending).
426
377
  * @returns {Array}
427
378
  */
428
-
429
379
  }, {
430
380
  key: "getNormalizedSortConfigs",
431
381
  value: function getNormalizedSortConfigs() {
432
382
  var sortConfig = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
433
-
434
383
  if (Array.isArray(sortConfig)) {
435
384
  return sortConfig.slice(0, 1);
436
385
  }
437
-
438
386
  return [sortConfig];
439
387
  }
388
+
440
389
  /**
441
390
  * Get if sort configs are valid.
442
391
  *
@@ -444,17 +393,18 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
444
393
  * @param {Array} sortConfigs Sort configuration for all sorted columns. Objects contain `column` and `sortOrder` properties.
445
394
  * @returns {boolean}
446
395
  */
447
-
448
396
  }, {
449
397
  key: "areValidSortConfigs",
450
398
  value: function areValidSortConfigs(sortConfigs) {
451
- var numberOfColumns = this.hot.countCols(); // We don't translate visual indexes to physical indexes.
399
+ var numberOfColumns = this.hot.countCols();
452
400
 
401
+ // We don't translate visual indexes to physical indexes.
453
402
  return areValidSortStates(sortConfigs) && sortConfigs.every(function (_ref) {
454
403
  var column = _ref.column;
455
404
  return column <= numberOfColumns && column >= 0;
456
405
  });
457
406
  }
407
+
458
408
  /**
459
409
  * Saves all sorting settings. Saving works only when {@link Options#persistentState} option is enabled.
460
410
  *
@@ -463,26 +413,22 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
463
413
  * @private
464
414
  * @fires Hooks#persistentStateSave
465
415
  */
466
-
467
416
  }, {
468
417
  key: "saveAllSortSettings",
469
418
  value: function saveAllSortSettings(sortConfigs) {
470
419
  var _this4 = this;
471
-
472
420
  var allSortSettings = this.columnStatesManager.getAllColumnsProperties();
473
-
474
421
  var translateColumnToPhysical = function translateColumnToPhysical(_ref2) {
475
422
  var visualColumn = _ref2.column,
476
- restOfProperties = _objectWithoutProperties(_ref2, _excluded);
477
-
423
+ restOfProperties = _objectWithoutProperties(_ref2, _excluded);
478
424
  return _objectSpread({
479
425
  column: _this4.hot.toPhysicalColumn(visualColumn)
480
426
  }, restOfProperties);
481
427
  };
482
-
483
428
  allSortSettings.initialConfig = arrayMap(sortConfigs, translateColumnToPhysical);
484
429
  this.hot.runHooks('persistentStateSave', 'columnSorting', allSortSettings);
485
430
  }
431
+
486
432
  /**
487
433
  * Get all saved sorting settings. Loading works only when {@link Options#persistentState} option is enabled.
488
434
  *
@@ -491,31 +437,26 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
491
437
  *
492
438
  * @fires Hooks#persistentStateLoad
493
439
  */
494
-
495
440
  }, {
496
441
  key: "getAllSavedSortSettings",
497
442
  value: function getAllSavedSortSettings() {
498
443
  var _this5 = this;
499
-
500
444
  var storedAllSortSettings = {};
501
445
  this.hot.runHooks('persistentStateLoad', 'columnSorting', storedAllSortSettings);
502
446
  var allSortSettings = storedAllSortSettings.value;
503
-
504
447
  var translateColumnToVisual = function translateColumnToVisual(_ref3) {
505
448
  var physicalColumn = _ref3.column,
506
- restOfProperties = _objectWithoutProperties(_ref3, _excluded2);
507
-
449
+ restOfProperties = _objectWithoutProperties(_ref3, _excluded2);
508
450
  return _objectSpread({
509
451
  column: _this5.hot.toVisualColumn(physicalColumn)
510
452
  }, restOfProperties);
511
453
  };
512
-
513
454
  if (isDefined(allSortSettings) && Array.isArray(allSortSettings.initialConfig)) {
514
455
  allSortSettings.initialConfig = arrayMap(allSortSettings.initialConfig, translateColumnToVisual);
515
456
  }
516
-
517
457
  return allSortSettings;
518
458
  }
459
+
519
460
  /**
520
461
  * Get next sort configuration for particular column. Object contain `column` and `sortOrder` properties.
521
462
  *
@@ -525,27 +466,21 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
525
466
  * @param {number} column Visual column index.
526
467
  * @returns {undefined|object}
527
468
  */
528
-
529
469
  }, {
530
470
  key: "getColumnNextConfig",
531
471
  value: function getColumnNextConfig(column) {
532
472
  var sortOrder = this.columnStatesManager.getSortOrderOfColumn(column);
533
-
534
473
  if (isDefined(sortOrder)) {
535
474
  var nextSortOrder = getNextSortOrder(sortOrder);
536
-
537
475
  if (isDefined(nextSortOrder)) {
538
476
  return {
539
477
  column: column,
540
478
  sortOrder: nextSortOrder
541
479
  };
542
480
  }
543
-
544
481
  return;
545
482
  }
546
-
547
483
  var nrOfColumns = this.hot.countCols();
548
-
549
484
  if (Number.isInteger(column) && column >= 0 && column < nrOfColumns) {
550
485
  return {
551
486
  column: column,
@@ -553,6 +488,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
553
488
  };
554
489
  }
555
490
  }
491
+
556
492
  /**
557
493
  * Get sort configuration with "next order" for particular column.
558
494
  *
@@ -566,7 +502,6 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
566
502
  *
567
503
  * @returns {Array}
568
504
  */
569
-
570
505
  }, {
571
506
  key: "getNextSortConfig",
572
507
  value: function getNextSortConfig(columnToChange) {
@@ -575,25 +510,22 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
575
510
  var isColumnSorted = indexOfColumnToChange !== -1;
576
511
  var currentSortConfig = this.getSortConfig();
577
512
  var nextColumnConfig = this.getColumnNextConfig(columnToChange);
578
-
579
513
  if (isColumnSorted) {
580
514
  if (isUndefined(nextColumnConfig)) {
581
515
  return [].concat(_toConsumableArray(currentSortConfig.slice(0, indexOfColumnToChange)), _toConsumableArray(currentSortConfig.slice(indexOfColumnToChange + 1)));
582
516
  }
583
-
584
517
  if (strategyId === APPEND_COLUMN_CONFIG_STRATEGY) {
585
518
  return [].concat(_toConsumableArray(currentSortConfig.slice(0, indexOfColumnToChange)), _toConsumableArray(currentSortConfig.slice(indexOfColumnToChange + 1)), [nextColumnConfig]);
586
519
  } else if (strategyId === REPLACE_COLUMN_CONFIG_STRATEGY) {
587
520
  return [].concat(_toConsumableArray(currentSortConfig.slice(0, indexOfColumnToChange)), [nextColumnConfig], _toConsumableArray(currentSortConfig.slice(indexOfColumnToChange + 1)));
588
521
  }
589
522
  }
590
-
591
523
  if (isDefined(nextColumnConfig)) {
592
524
  return currentSortConfig.concat(nextColumnConfig);
593
525
  }
594
-
595
526
  return currentSortConfig;
596
527
  }
528
+
597
529
  /**
598
530
  * Get plugin's column config for the specified column index.
599
531
  *
@@ -601,20 +533,18 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
601
533
  * @param {object} columnConfig Configuration inside `columns` property for the specified column index.
602
534
  * @returns {object}
603
535
  */
604
-
605
536
  }, {
606
537
  key: "getPluginColumnConfig",
607
538
  value: function getPluginColumnConfig(columnConfig) {
608
539
  if (isObject(columnConfig)) {
609
540
  var pluginColumnConfig = columnConfig[this.pluginKey];
610
-
611
541
  if (isObject(pluginColumnConfig)) {
612
542
  return pluginColumnConfig;
613
543
  }
614
544
  }
615
-
616
545
  return {};
617
546
  }
547
+
618
548
  /**
619
549
  * Get plugin settings related properties, properly merged from cascade settings.
620
550
  *
@@ -622,7 +552,6 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
622
552
  * @param {number} column Visual column index.
623
553
  * @returns {object}
624
554
  */
625
-
626
555
  }, {
627
556
  key: "getMergedPluginSettings",
628
557
  value: function getMergedPluginSettings(column) {
@@ -630,15 +559,14 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
630
559
  var storedColumnProperties = this.columnStatesManager.getAllColumnsProperties();
631
560
  var cellMeta = this.hot.getCellMeta(0, column);
632
561
  var columnMeta = Object.getPrototypeOf(cellMeta);
633
-
634
562
  if (Array.isArray(columnMeta.columns)) {
635
563
  return Object.assign(storedColumnProperties, pluginMainSettings, this.getPluginColumnConfig(columnMeta.columns[column]));
636
564
  } else if (isFunction(columnMeta.columns)) {
637
565
  return Object.assign(storedColumnProperties, pluginMainSettings, this.getPluginColumnConfig(columnMeta.columns(column)));
638
566
  }
639
-
640
567
  return Object.assign(storedColumnProperties, pluginMainSettings);
641
568
  }
569
+
642
570
  /**
643
571
  * Get copy of settings for first cell in the column.
644
572
  *
@@ -648,7 +576,6 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
648
576
  */
649
577
  // TODO: Workaround. Inheriting of non-primitive cell meta values doesn't work. Instead of getting properties from column meta we call this function.
650
578
  // TODO: Remove test named: "should not break the dataset when inserted new row" (#5431).
651
-
652
579
  }, {
653
580
  key: "getFirstCellSettings",
654
581
  value: function getFirstCellSettings(column) {
@@ -657,6 +584,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
657
584
  cellMetaCopy[this.pluginKey] = this.columnMetaCache.getValueAtIndex(this.hot.toPhysicalColumn(column));
658
585
  return cellMetaCopy;
659
586
  }
587
+
660
588
  /**
661
589
  * Get number of rows which should be sorted.
662
590
  *
@@ -664,48 +592,42 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
664
592
  * @param {number} numberOfRows Total number of displayed rows.
665
593
  * @returns {number}
666
594
  */
667
-
668
595
  }, {
669
596
  key: "getNumberOfRowsToSort",
670
597
  value: function getNumberOfRowsToSort(numberOfRows) {
671
- var settings = this.hot.getSettings(); // `maxRows` option doesn't take into account `minSpareRows` option in this case.
598
+ var settings = this.hot.getSettings();
672
599
 
600
+ // `maxRows` option doesn't take into account `minSpareRows` option in this case.
673
601
  if (settings.maxRows <= numberOfRows) {
674
602
  return settings.maxRows;
675
603
  }
676
-
677
604
  return numberOfRows - settings.minSpareRows;
678
605
  }
606
+
679
607
  /**
680
608
  * Performs the sorting using a stable sort function basing on internal state of sorting.
681
609
  *
682
610
  * @param {Array} sortConfigs Sort configuration for all sorted columns. Objects contain `column` and `sortOrder` properties.
683
611
  * @private
684
612
  */
685
-
686
613
  }, {
687
614
  key: "sortByPresetSortStates",
688
615
  value: function sortByPresetSortStates(sortConfigs) {
689
616
  var _this6 = this;
690
-
691
617
  if (sortConfigs.length === 0) {
692
618
  this.hot.rowIndexMapper.setIndexesSequence(this.indexesSequenceCache.getValues());
693
619
  return;
694
620
  }
695
-
696
621
  var indexesWithData = [];
697
622
  var numberOfRows = this.hot.countRows();
698
-
699
623
  var getDataForSortedColumns = function getDataForSortedColumns(visualRowIndex) {
700
624
  return arrayMap(sortConfigs, function (sortConfig) {
701
625
  return _this6.hot.getDataAtCell(visualRowIndex, sortConfig.column);
702
626
  });
703
627
  };
704
-
705
628
  for (var visualRowIndex = 0; visualRowIndex < this.getNumberOfRowsToSort(numberOfRows); visualRowIndex += 1) {
706
629
  indexesWithData.push([this.hot.toPhysicalRow(visualRowIndex)].concat(getDataForSortedColumns(visualRowIndex)));
707
630
  }
708
-
709
631
  var indexesBefore = arrayMap(indexesWithData, function (indexWithData) {
710
632
  return indexWithData[0];
711
633
  });
@@ -713,12 +635,12 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
713
635
  return sortConfig.sortOrder;
714
636
  }), arrayMap(sortConfigs, function (sortConfig) {
715
637
  return _this6.getFirstCellSettings(sortConfig.column);
716
- })); // Append spareRows
638
+ }));
717
639
 
640
+ // Append spareRows
718
641
  for (var _visualRowIndex = indexesWithData.length; _visualRowIndex < numberOfRows; _visualRowIndex += 1) {
719
642
  indexesWithData.push([_visualRowIndex].concat(getDataForSortedColumns(_visualRowIndex)));
720
643
  }
721
-
722
644
  var indexesAfter = arrayMap(indexesWithData, function (indexWithData) {
723
645
  return indexWithData[0];
724
646
  });
@@ -729,22 +651,20 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
729
651
  if (indexMapping.has(physicalIndex)) {
730
652
  return indexMapping.get(physicalIndex);
731
653
  }
732
-
733
654
  return physicalIndex;
734
655
  });
735
656
  this.hot.rowIndexMapper.setIndexesSequence(newIndexesSequence);
736
657
  }
658
+
737
659
  /**
738
660
  * Load saved settings or sort by predefined plugin configuration.
739
661
  *
740
662
  * @private
741
663
  */
742
-
743
664
  }, {
744
665
  key: "loadOrSortBySettings",
745
666
  value: function loadOrSortBySettings() {
746
667
  var storedAllSortSettings = this.getAllSavedSortSettings();
747
-
748
668
  if (isObject(storedAllSortSettings)) {
749
669
  this.sortBySettings(storedAllSortSettings);
750
670
  } else {
@@ -752,6 +672,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
752
672
  this.sortBySettings(allSortSettings);
753
673
  }
754
674
  }
675
+
755
676
  /**
756
677
  * Sort the table by provided configuration.
757
678
  *
@@ -759,14 +680,12 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
759
680
  * @param {object} allSortSettings All sort config settings. Object may contain `initialConfig`, `indicator`,
760
681
  * `sortEmptyCells`, `headerAction` and `compareFunctionFactory` properties.
761
682
  */
762
-
763
683
  }, {
764
684
  key: "sortBySettings",
765
685
  value: function sortBySettings(allSortSettings) {
766
686
  if (isObject(allSortSettings)) {
767
687
  this.columnStatesManager.updateAllColumnsProperties(allSortSettings);
768
688
  var initialConfig = allSortSettings.initialConfig;
769
-
770
689
  if (Array.isArray(initialConfig) || isObject(initialConfig)) {
771
690
  this.sort(initialConfig);
772
691
  }
@@ -775,6 +694,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
775
694
  this.hot.render();
776
695
  }
777
696
  }
697
+
778
698
  /**
779
699
  * Callback for the `onAfterGetColHeader` hook. Adds column sorting CSS classes.
780
700
  *
@@ -782,21 +702,19 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
782
702
  * @param {number} column Visual column index.
783
703
  * @param {Element} TH TH HTML element.
784
704
  */
785
-
786
705
  }, {
787
706
  key: "onAfterGetColHeader",
788
707
  value: function onAfterGetColHeader(column, TH) {
789
708
  var headerSpanElement = getHeaderSpanElement(TH);
790
-
791
709
  if (isFirstLevelColumnHeader(column, TH) === false || headerSpanElement === null) {
792
710
  return;
793
711
  }
794
-
795
712
  var pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
796
713
  var showSortIndicator = pluginSettingsForColumn.indicator;
797
714
  var headerActionEnabled = pluginSettingsForColumn.headerAction;
798
715
  this.updateHeaderClasses(headerSpanElement, this.columnStatesManager, column, showSortIndicator, headerActionEnabled);
799
716
  }
717
+
800
718
  /**
801
719
  * Update header classes.
802
720
  *
@@ -804,20 +722,18 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
804
722
  * @param {HTMLElement} headerSpanElement Header span element.
805
723
  * @param {...*} args Extra arguments for helpers.
806
724
  */
807
-
808
725
  }, {
809
726
  key: "updateHeaderClasses",
810
727
  value: function updateHeaderClasses(headerSpanElement) {
811
728
  removeClass(headerSpanElement, getClassesToRemove(headerSpanElement));
812
-
813
729
  if (this.enabled !== false) {
814
730
  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
815
731
  args[_key - 1] = arguments[_key];
816
732
  }
817
-
818
733
  addClass(headerSpanElement, getClassesToAdd.apply(void 0, args));
819
734
  }
820
735
  }
736
+
821
737
  /**
822
738
  * Overwriting base plugin's `onUpdateSettings` method. Please keep in mind that `onAfterUpdateSettings` isn't called
823
739
  * for `updateSettings` in specific situations.
@@ -825,28 +741,25 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
825
741
  * @private
826
742
  * @param {object} newSettings New settings object.
827
743
  */
828
-
829
744
  }, {
830
745
  key: "onUpdateSettings",
831
746
  value: function onUpdateSettings(newSettings) {
832
747
  _get(_getPrototypeOf(ColumnSorting.prototype), "onUpdateSettings", this).call(this);
833
-
834
748
  if (this.columnMetaCache !== null) {
835
749
  // Column meta cache base on settings, thus we should re-init the map.
836
750
  this.columnMetaCache.init(this.hot.columnIndexMapper.getNumberOfIndexes());
837
751
  }
838
-
839
752
  if (isDefined(newSettings[this.pluginKey])) {
840
753
  this.sortBySettings(newSettings[this.pluginKey]);
841
754
  }
842
755
  }
756
+
843
757
  /**
844
758
  * Callback for the `afterLoadData` hook.
845
759
  *
846
760
  * @private
847
761
  * @param {boolean} initialLoad Flag that determines whether the data has been loaded during the initialization.
848
762
  */
849
-
850
763
  }, {
851
764
  key: "onAfterLoadData",
852
765
  value: function onAfterLoadData(initialLoad) {
@@ -857,6 +770,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
857
770
  }
858
771
  }
859
772
  }
773
+
860
774
  /**
861
775
  * Indicates if clickable header was clicked.
862
776
  *
@@ -865,7 +779,6 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
865
779
  * @param {number} column Visual column index.
866
780
  * @returns {boolean}
867
781
  */
868
-
869
782
  }, {
870
783
  key: "wasClickableHeaderClicked",
871
784
  value: function wasClickableHeaderClicked(event, column) {
@@ -873,6 +786,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
873
786
  var headerActionEnabled = pluginSettingsForColumn.headerAction;
874
787
  return headerActionEnabled && event.target.nodeName === 'SPAN';
875
788
  }
789
+
876
790
  /**
877
791
  * Changes the behavior of selection / dragging.
878
792
  *
@@ -883,18 +797,17 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
883
797
  * @param {object} controller An object with properties `row`, `column` and `cell`. Each property contains
884
798
  * a boolean value that allows or disallows changing the selection for that particular area.
885
799
  */
886
-
887
800
  }, {
888
801
  key: "onBeforeOnCellMouseDown",
889
802
  value: function onBeforeOnCellMouseDown(event, coords, TD, controller) {
890
803
  if (wasHeaderClickedProperly(coords.row, coords.col, event) === false) {
891
804
  return;
892
805
  }
893
-
894
806
  if (this.wasClickableHeaderClicked(event, coords.col) && this.hot.getShortcutManager().isCtrlPressed()) {
895
807
  controller.column = true;
896
808
  }
897
809
  }
810
+
898
811
  /**
899
812
  * Callback for the `onAfterOnCellMouseDown` hook.
900
813
  *
@@ -902,36 +815,31 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
902
815
  * @param {Event} event Event which are provided by hook.
903
816
  * @param {CellCoords} coords Visual coords of the selected cell.
904
817
  */
905
-
906
818
  }, {
907
819
  key: "onAfterOnCellMouseDown",
908
820
  value: function onAfterOnCellMouseDown(event, coords) {
909
821
  if (wasHeaderClickedProperly(coords.row, coords.col, event) === false) {
910
822
  return;
911
823
  }
912
-
913
824
  if (this.wasClickableHeaderClicked(event, coords.col)) {
914
825
  if (this.hot.getShortcutManager().isCtrlPressed()) {
915
826
  this.hot.deselectCell();
916
827
  this.hot.selectColumns(coords.col);
917
828
  }
918
-
919
829
  this.sort(this.getColumnNextConfig(coords.col));
920
830
  }
921
831
  }
832
+
922
833
  /**
923
834
  * Destroys the plugin instance.
924
835
  */
925
-
926
836
  }, {
927
837
  key: "destroy",
928
838
  value: function destroy() {
929
839
  var _this$columnStatesMan;
930
-
931
840
  // TODO: Probably not supported yet by ESLint: https://github.com/eslint/eslint/issues/11045
932
841
  // eslint-disable-next-line no-unused-expressions
933
842
  (_this$columnStatesMan = this.columnStatesManager) === null || _this$columnStatesMan === void 0 ? void 0 : _this$columnStatesMan.destroy();
934
-
935
843
  _get(_getPrototypeOf(ColumnSorting.prototype), "destroy", this).call(this);
936
844
  }
937
845
  }], [{
@@ -945,6 +853,5 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
945
853
  return PLUGIN_PRIORITY;
946
854
  }
947
855
  }]);
948
-
949
856
  return ColumnSorting;
950
857
  }(BasePlugin);