handsontable 0.0.0-next-9ec04ce-20221121

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.

Potentially problematic release.


This version of handsontable might be problematic. Click here for more details.

Files changed (1232) hide show
  1. package/3rdparty/SheetClip/SheetClip.js +128 -0
  2. package/3rdparty/SheetClip/SheetClip.mjs +123 -0
  3. package/3rdparty/SheetClip/index.js +7 -0
  4. package/3rdparty/SheetClip/index.mjs +1 -0
  5. package/3rdparty/autoResize/autoResize.js +164 -0
  6. package/3rdparty/autoResize/autoResize.mjs +160 -0
  7. package/3rdparty/autoResize/index.js +6 -0
  8. package/3rdparty/autoResize/index.mjs +1 -0
  9. package/3rdparty/walkontable/src/border.js +746 -0
  10. package/3rdparty/walkontable/src/border.mjs +741 -0
  11. package/3rdparty/walkontable/src/calculator/constants.js +30 -0
  12. package/3rdparty/walkontable/src/calculator/constants.mjs +23 -0
  13. package/3rdparty/walkontable/src/calculator/index.js +22 -0
  14. package/3rdparty/walkontable/src/calculator/index.mjs +4 -0
  15. package/3rdparty/walkontable/src/calculator/viewportColumns.d.ts +18 -0
  16. package/3rdparty/walkontable/src/calculator/viewportColumns.js +297 -0
  17. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +292 -0
  18. package/3rdparty/walkontable/src/calculator/viewportRows.js +175 -0
  19. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +170 -0
  20. package/3rdparty/walkontable/src/cell/coords.d.ts +16 -0
  21. package/3rdparty/walkontable/src/cell/coords.js +185 -0
  22. package/3rdparty/walkontable/src/cell/coords.mjs +180 -0
  23. package/3rdparty/walkontable/src/cell/range.d.ts +59 -0
  24. package/3rdparty/walkontable/src/cell/range.js +888 -0
  25. package/3rdparty/walkontable/src/cell/range.mjs +882 -0
  26. package/3rdparty/walkontable/src/core/_base.js +395 -0
  27. package/3rdparty/walkontable/src/core/_base.mjs +390 -0
  28. package/3rdparty/walkontable/src/core/clone.js +59 -0
  29. package/3rdparty/walkontable/src/core/clone.mjs +54 -0
  30. package/3rdparty/walkontable/src/core/core.js +130 -0
  31. package/3rdparty/walkontable/src/core/core.mjs +125 -0
  32. package/3rdparty/walkontable/src/event.js +401 -0
  33. package/3rdparty/walkontable/src/event.mjs +396 -0
  34. package/3rdparty/walkontable/src/facade/core.js +236 -0
  35. package/3rdparty/walkontable/src/facade/core.mjs +231 -0
  36. package/3rdparty/walkontable/src/filter/column.js +107 -0
  37. package/3rdparty/walkontable/src/filter/column.mjs +102 -0
  38. package/3rdparty/walkontable/src/filter/row.js +107 -0
  39. package/3rdparty/walkontable/src/filter/row.mjs +102 -0
  40. package/3rdparty/walkontable/src/index.d.ts +1 -0
  41. package/3rdparty/walkontable/src/index.js +37 -0
  42. package/3rdparty/walkontable/src/index.mjs +10 -0
  43. package/3rdparty/walkontable/src/overlay/_base.js +363 -0
  44. package/3rdparty/walkontable/src/overlay/_base.mjs +357 -0
  45. package/3rdparty/walkontable/src/overlay/bottom.js +397 -0
  46. package/3rdparty/walkontable/src/overlay/bottom.mjs +391 -0
  47. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +140 -0
  48. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +134 -0
  49. package/3rdparty/walkontable/src/overlay/constants.js +26 -0
  50. package/3rdparty/walkontable/src/overlay/constants.mjs +15 -0
  51. package/3rdparty/walkontable/src/overlay/index.js +34 -0
  52. package/3rdparty/walkontable/src/overlay/index.mjs +7 -0
  53. package/3rdparty/walkontable/src/overlay/inlineStart.js +385 -0
  54. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +379 -0
  55. package/3rdparty/walkontable/src/overlay/top.js +415 -0
  56. package/3rdparty/walkontable/src/overlay/top.mjs +409 -0
  57. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +130 -0
  58. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +124 -0
  59. package/3rdparty/walkontable/src/overlays.js +675 -0
  60. package/3rdparty/walkontable/src/overlays.mjs +670 -0
  61. package/3rdparty/walkontable/src/renderer/_base.js +83 -0
  62. package/3rdparty/walkontable/src/renderer/_base.mjs +78 -0
  63. package/3rdparty/walkontable/src/renderer/cells.js +127 -0
  64. package/3rdparty/walkontable/src/renderer/cells.mjs +122 -0
  65. package/3rdparty/walkontable/src/renderer/colGroup.js +101 -0
  66. package/3rdparty/walkontable/src/renderer/colGroup.mjs +96 -0
  67. package/3rdparty/walkontable/src/renderer/columnHeaders.js +115 -0
  68. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +110 -0
  69. package/3rdparty/walkontable/src/renderer/index.js +118 -0
  70. package/3rdparty/walkontable/src/renderer/index.mjs +107 -0
  71. package/3rdparty/walkontable/src/renderer/rowHeaders.js +119 -0
  72. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +114 -0
  73. package/3rdparty/walkontable/src/renderer/rows.js +99 -0
  74. package/3rdparty/walkontable/src/renderer/rows.mjs +94 -0
  75. package/3rdparty/walkontable/src/renderer/table.js +317 -0
  76. package/3rdparty/walkontable/src/renderer/table.mjs +313 -0
  77. package/3rdparty/walkontable/src/scroll.js +316 -0
  78. package/3rdparty/walkontable/src/scroll.mjs +311 -0
  79. package/3rdparty/walkontable/src/selection.js +349 -0
  80. package/3rdparty/walkontable/src/selection.mjs +343 -0
  81. package/3rdparty/walkontable/src/settings.js +306 -0
  82. package/3rdparty/walkontable/src/settings.mjs +302 -0
  83. package/3rdparty/walkontable/src/table/bottom.js +56 -0
  84. package/3rdparty/walkontable/src/table/bottom.mjs +50 -0
  85. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +57 -0
  86. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +51 -0
  87. package/3rdparty/walkontable/src/table/inlineStart.js +53 -0
  88. package/3rdparty/walkontable/src/table/inlineStart.mjs +47 -0
  89. package/3rdparty/walkontable/src/table/master.js +132 -0
  90. package/3rdparty/walkontable/src/table/master.mjs +126 -0
  91. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +93 -0
  92. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +88 -0
  93. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +93 -0
  94. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +88 -0
  95. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +85 -0
  96. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +80 -0
  97. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +90 -0
  98. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +85 -0
  99. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +85 -0
  100. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +80 -0
  101. package/3rdparty/walkontable/src/table/top.js +56 -0
  102. package/3rdparty/walkontable/src/table/top.mjs +50 -0
  103. package/3rdparty/walkontable/src/table/topInlineStartCorner.js +57 -0
  104. package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +51 -0
  105. package/3rdparty/walkontable/src/table.js +1171 -0
  106. package/3rdparty/walkontable/src/table.mjs +1165 -0
  107. package/3rdparty/walkontable/src/types.js +98 -0
  108. package/3rdparty/walkontable/src/types.mjs +97 -0
  109. package/3rdparty/walkontable/src/utils/column.js +121 -0
  110. package/3rdparty/walkontable/src/utils/column.mjs +117 -0
  111. package/3rdparty/walkontable/src/utils/nodesPool.js +48 -0
  112. package/3rdparty/walkontable/src/utils/nodesPool.mjs +44 -0
  113. package/3rdparty/walkontable/src/utils/orderView/constants.js +30 -0
  114. package/3rdparty/walkontable/src/utils/orderView/constants.mjs +23 -0
  115. package/3rdparty/walkontable/src/utils/orderView/index.js +8 -0
  116. package/3rdparty/walkontable/src/utils/orderView/index.mjs +3 -0
  117. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +81 -0
  118. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +76 -0
  119. package/3rdparty/walkontable/src/utils/orderView/view.js +216 -0
  120. package/3rdparty/walkontable/src/utils/orderView/view.mjs +211 -0
  121. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +68 -0
  122. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +64 -0
  123. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +137 -0
  124. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +132 -0
  125. package/3rdparty/walkontable/src/utils/row.js +43 -0
  126. package/3rdparty/walkontable/src/utils/row.mjs +39 -0
  127. package/3rdparty/walkontable/src/viewport.js +491 -0
  128. package/3rdparty/walkontable/src/viewport.mjs +486 -0
  129. package/CHANGELOG.md +716 -0
  130. package/LICENSE.txt +25 -0
  131. package/README.md +140 -0
  132. package/base.d.ts +3 -0
  133. package/base.js +54 -0
  134. package/base.mjs +44 -0
  135. package/cellTypes/autocompleteType/autocompleteType.d.ts +17 -0
  136. package/cellTypes/autocompleteType/autocompleteType.js +16 -0
  137. package/cellTypes/autocompleteType/autocompleteType.mjs +10 -0
  138. package/cellTypes/autocompleteType/index.d.ts +1 -0
  139. package/cellTypes/autocompleteType/index.js +7 -0
  140. package/cellTypes/autocompleteType/index.mjs +1 -0
  141. package/cellTypes/base.d.ts +14 -0
  142. package/cellTypes/checkboxType/checkboxType.d.ts +14 -0
  143. package/cellTypes/checkboxType/checkboxType.js +14 -0
  144. package/cellTypes/checkboxType/checkboxType.mjs +8 -0
  145. package/cellTypes/checkboxType/index.d.ts +1 -0
  146. package/cellTypes/checkboxType/index.js +7 -0
  147. package/cellTypes/checkboxType/index.mjs +1 -0
  148. package/cellTypes/dateType/dateType.d.ts +17 -0
  149. package/cellTypes/dateType/dateType.js +17 -0
  150. package/cellTypes/dateType/dateType.mjs +11 -0
  151. package/cellTypes/dateType/index.d.ts +1 -0
  152. package/cellTypes/dateType/index.js +7 -0
  153. package/cellTypes/dateType/index.mjs +1 -0
  154. package/cellTypes/dropdownType/dropdownType.d.ts +17 -0
  155. package/cellTypes/dropdownType/dropdownType.js +17 -0
  156. package/cellTypes/dropdownType/dropdownType.mjs +11 -0
  157. package/cellTypes/dropdownType/index.d.ts +1 -0
  158. package/cellTypes/dropdownType/index.js +7 -0
  159. package/cellTypes/dropdownType/index.mjs +1 -0
  160. package/cellTypes/handsontableType/handsontableType.d.ts +14 -0
  161. package/cellTypes/handsontableType/handsontableType.js +15 -0
  162. package/cellTypes/handsontableType/handsontableType.mjs +9 -0
  163. package/cellTypes/handsontableType/index.d.ts +1 -0
  164. package/cellTypes/handsontableType/index.js +7 -0
  165. package/cellTypes/handsontableType/index.mjs +1 -0
  166. package/cellTypes/index.d.ts +47 -0
  167. package/cellTypes/index.js +52 -0
  168. package/cellTypes/index.mjs +26 -0
  169. package/cellTypes/numericType/index.d.ts +1 -0
  170. package/cellTypes/numericType/index.js +7 -0
  171. package/cellTypes/numericType/index.mjs +1 -0
  172. package/cellTypes/numericType/numericType.d.ts +17 -0
  173. package/cellTypes/numericType/numericType.js +17 -0
  174. package/cellTypes/numericType/numericType.mjs +11 -0
  175. package/cellTypes/passwordType/index.d.ts +1 -0
  176. package/cellTypes/passwordType/index.js +7 -0
  177. package/cellTypes/passwordType/index.mjs +1 -0
  178. package/cellTypes/passwordType/passwordType.d.ts +14 -0
  179. package/cellTypes/passwordType/passwordType.js +15 -0
  180. package/cellTypes/passwordType/passwordType.mjs +9 -0
  181. package/cellTypes/registry.d.ts +18 -0
  182. package/cellTypes/registry.js +60 -0
  183. package/cellTypes/registry.mjs +51 -0
  184. package/cellTypes/textType/index.d.ts +1 -0
  185. package/cellTypes/textType/index.js +7 -0
  186. package/cellTypes/textType/index.mjs +1 -0
  187. package/cellTypes/textType/textType.d.ts +14 -0
  188. package/cellTypes/textType/textType.js +14 -0
  189. package/cellTypes/textType/textType.mjs +8 -0
  190. package/cellTypes/timeType/index.d.ts +1 -0
  191. package/cellTypes/timeType/index.js +7 -0
  192. package/cellTypes/timeType/index.mjs +1 -0
  193. package/cellTypes/timeType/timeType.d.ts +17 -0
  194. package/cellTypes/timeType/timeType.js +16 -0
  195. package/cellTypes/timeType/timeType.mjs +10 -0
  196. package/common.d.ts +74 -0
  197. package/core.d.ts +167 -0
  198. package/core.js +4684 -0
  199. package/core.mjs +4679 -0
  200. package/dataMap/dataMap.js +975 -0
  201. package/dataMap/dataMap.mjs +970 -0
  202. package/dataMap/dataSource.js +325 -0
  203. package/dataMap/dataSource.mjs +320 -0
  204. package/dataMap/index.js +16 -0
  205. package/dataMap/index.mjs +7 -0
  206. package/dataMap/metaManager/index.js +339 -0
  207. package/dataMap/metaManager/index.mjs +334 -0
  208. package/dataMap/metaManager/lazyFactoryMap.js +370 -0
  209. package/dataMap/metaManager/lazyFactoryMap.mjs +366 -0
  210. package/dataMap/metaManager/metaLayers/cellMeta.js +275 -0
  211. package/dataMap/metaManager/metaLayers/cellMeta.mjs +270 -0
  212. package/dataMap/metaManager/metaLayers/columnMeta.js +153 -0
  213. package/dataMap/metaManager/metaLayers/columnMeta.mjs +148 -0
  214. package/dataMap/metaManager/metaLayers/globalMeta.js +103 -0
  215. package/dataMap/metaManager/metaLayers/globalMeta.mjs +98 -0
  216. package/dataMap/metaManager/metaLayers/tableMeta.js +73 -0
  217. package/dataMap/metaManager/metaLayers/tableMeta.mjs +69 -0
  218. package/dataMap/metaManager/metaSchema.js +4610 -0
  219. package/dataMap/metaManager/metaSchema.mjs +4605 -0
  220. package/dataMap/metaManager/mods/dynamicCellMeta.js +107 -0
  221. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +101 -0
  222. package/dataMap/metaManager/mods/extendMetaProperties.js +104 -0
  223. package/dataMap/metaManager/mods/extendMetaProperties.mjs +99 -0
  224. package/dataMap/metaManager/utils.js +99 -0
  225. package/dataMap/metaManager/utils.mjs +91 -0
  226. package/dataMap/replaceData.js +119 -0
  227. package/dataMap/replaceData.mjs +115 -0
  228. package/dist/README.md +54 -0
  229. package/dist/handsontable.css +1941 -0
  230. package/dist/handsontable.full.css +2172 -0
  231. package/dist/handsontable.full.js +150392 -0
  232. package/dist/handsontable.full.min.css +47 -0
  233. package/dist/handsontable.full.min.js +869 -0
  234. package/dist/handsontable.js +94075 -0
  235. package/dist/handsontable.min.css +43 -0
  236. package/dist/handsontable.min.js +31 -0
  237. package/dist/languages/all.js +583 -0
  238. package/dist/languages/all.min.js +1 -0
  239. package/dist/languages/ar-AR.js +157 -0
  240. package/dist/languages/ar-AR.min.js +1 -0
  241. package/dist/languages/cs-CZ.js +157 -0
  242. package/dist/languages/cs-CZ.min.js +1 -0
  243. package/dist/languages/de-CH.js +158 -0
  244. package/dist/languages/de-CH.min.js +1 -0
  245. package/dist/languages/de-DE.js +159 -0
  246. package/dist/languages/de-DE.min.js +1 -0
  247. package/dist/languages/en-US.js +160 -0
  248. package/dist/languages/en-US.min.js +1 -0
  249. package/dist/languages/es-MX.js +161 -0
  250. package/dist/languages/es-MX.min.js +1 -0
  251. package/dist/languages/fr-FR.js +162 -0
  252. package/dist/languages/fr-FR.min.js +1 -0
  253. package/dist/languages/it-IT.js +164 -0
  254. package/dist/languages/it-IT.min.js +1 -0
  255. package/dist/languages/ja-JP.js +161 -0
  256. package/dist/languages/ja-JP.min.js +1 -0
  257. package/dist/languages/ko-KR.js +161 -0
  258. package/dist/languages/ko-KR.min.js +1 -0
  259. package/dist/languages/lv-LV.js +161 -0
  260. package/dist/languages/lv-LV.min.js +1 -0
  261. package/dist/languages/nb-NO.js +161 -0
  262. package/dist/languages/nb-NO.min.js +1 -0
  263. package/dist/languages/nl-NL.js +161 -0
  264. package/dist/languages/nl-NL.min.js +1 -0
  265. package/dist/languages/pl-PL.js +161 -0
  266. package/dist/languages/pl-PL.min.js +1 -0
  267. package/dist/languages/pt-BR.js +161 -0
  268. package/dist/languages/pt-BR.min.js +1 -0
  269. package/dist/languages/ru-RU.js +161 -0
  270. package/dist/languages/ru-RU.min.js +1 -0
  271. package/dist/languages/sr-SP.js +161 -0
  272. package/dist/languages/sr-SP.min.js +1 -0
  273. package/dist/languages/zh-CN.js +161 -0
  274. package/dist/languages/zh-CN.min.js +1 -0
  275. package/dist/languages/zh-TW.js +161 -0
  276. package/dist/languages/zh-TW.min.js +1 -0
  277. package/editorManager.js +522 -0
  278. package/editorManager.mjs +514 -0
  279. package/editors/autocompleteEditor/autocompleteEditor.d.ts +29 -0
  280. package/editors/autocompleteEditor/autocompleteEditor.js +584 -0
  281. package/editors/autocompleteEditor/autocompleteEditor.mjs +578 -0
  282. package/editors/autocompleteEditor/index.d.ts +1 -0
  283. package/editors/autocompleteEditor/index.js +7 -0
  284. package/editors/autocompleteEditor/index.mjs +1 -0
  285. package/editors/baseEditor/baseEditor.d.ts +45 -0
  286. package/editors/baseEditor/baseEditor.js +688 -0
  287. package/editors/baseEditor/baseEditor.mjs +679 -0
  288. package/editors/baseEditor/index.d.ts +1 -0
  289. package/editors/baseEditor/index.js +8 -0
  290. package/editors/baseEditor/index.mjs +1 -0
  291. package/editors/checkboxEditor/checkboxEditor.d.ts +12 -0
  292. package/editors/checkboxEditor/checkboxEditor.js +85 -0
  293. package/editors/checkboxEditor/checkboxEditor.mjs +79 -0
  294. package/editors/checkboxEditor/index.d.ts +1 -0
  295. package/editors/checkboxEditor/index.js +7 -0
  296. package/editors/checkboxEditor/index.mjs +1 -0
  297. package/editors/dateEditor/dateEditor.d.ts +18 -0
  298. package/editors/dateEditor/dateEditor.js +325 -0
  299. package/editors/dateEditor/dateEditor.mjs +318 -0
  300. package/editors/dateEditor/index.d.ts +1 -0
  301. package/editors/dateEditor/index.js +7 -0
  302. package/editors/dateEditor/index.mjs +1 -0
  303. package/editors/dropdownEditor/dropdownEditor.d.ts +7 -0
  304. package/editors/dropdownEditor/dropdownEditor.js +81 -0
  305. package/editors/dropdownEditor/dropdownEditor.mjs +74 -0
  306. package/editors/dropdownEditor/index.d.ts +1 -0
  307. package/editors/dropdownEditor/index.js +7 -0
  308. package/editors/dropdownEditor/index.mjs +1 -0
  309. package/editors/handsontableEditor/handsontableEditor.d.ts +10 -0
  310. package/editors/handsontableEditor/handsontableEditor.js +306 -0
  311. package/editors/handsontableEditor/handsontableEditor.mjs +300 -0
  312. package/editors/handsontableEditor/index.d.ts +1 -0
  313. package/editors/handsontableEditor/index.js +7 -0
  314. package/editors/handsontableEditor/index.mjs +1 -0
  315. package/editors/index.d.ts +56 -0
  316. package/editors/index.js +63 -0
  317. package/editors/index.mjs +30 -0
  318. package/editors/numericEditor/index.d.ts +1 -0
  319. package/editors/numericEditor/index.js +7 -0
  320. package/editors/numericEditor/index.mjs +1 -0
  321. package/editors/numericEditor/numericEditor.d.ts +7 -0
  322. package/editors/numericEditor/numericEditor.js +49 -0
  323. package/editors/numericEditor/numericEditor.mjs +43 -0
  324. package/editors/passwordEditor/index.d.ts +1 -0
  325. package/editors/passwordEditor/index.js +7 -0
  326. package/editors/passwordEditor/index.mjs +1 -0
  327. package/editors/passwordEditor/passwordEditor.d.ts +7 -0
  328. package/editors/passwordEditor/passwordEditor.js +68 -0
  329. package/editors/passwordEditor/passwordEditor.mjs +62 -0
  330. package/editors/registry.d.ts +29 -0
  331. package/editors/registry.js +106 -0
  332. package/editors/registry.mjs +94 -0
  333. package/editors/selectEditor/index.d.ts +1 -0
  334. package/editors/selectEditor/index.js +7 -0
  335. package/editors/selectEditor/index.mjs +1 -0
  336. package/editors/selectEditor/selectEditor.d.ts +16 -0
  337. package/editors/selectEditor/selectEditor.js +302 -0
  338. package/editors/selectEditor/selectEditor.mjs +296 -0
  339. package/editors/textEditor/caretPositioner.js +37 -0
  340. package/editors/textEditor/caretPositioner.mjs +33 -0
  341. package/editors/textEditor/index.d.ts +1 -0
  342. package/editors/textEditor/index.js +7 -0
  343. package/editors/textEditor/index.mjs +1 -0
  344. package/editors/textEditor/textEditor.d.ts +24 -0
  345. package/editors/textEditor/textEditor.js +612 -0
  346. package/editors/textEditor/textEditor.mjs +605 -0
  347. package/editors/timeEditor/index.d.ts +1 -0
  348. package/editors/timeEditor/index.js +7 -0
  349. package/editors/timeEditor/index.mjs +1 -0
  350. package/editors/timeEditor/timeEditor.d.ts +7 -0
  351. package/editors/timeEditor/timeEditor.js +70 -0
  352. package/editors/timeEditor/timeEditor.mjs +64 -0
  353. package/eventManager.d.ts +13 -0
  354. package/eventManager.js +236 -0
  355. package/eventManager.mjs +231 -0
  356. package/handsontable-non-commercial-license.pdf +0 -0
  357. package/helpers/array.d.ts +18 -0
  358. package/helpers/array.js +353 -0
  359. package/helpers/array.mjs +333 -0
  360. package/helpers/browser.d.ts +25 -0
  361. package/helpers/browser.js +231 -0
  362. package/helpers/browser.mjs +210 -0
  363. package/helpers/console.d.ts +4 -0
  364. package/helpers/console.js +65 -0
  365. package/helpers/console.mjs +56 -0
  366. package/helpers/data.d.ts +12 -0
  367. package/helpers/data.js +247 -0
  368. package/helpers/data.mjs +234 -0
  369. package/helpers/date.d.ts +1 -0
  370. package/helpers/date.js +22 -0
  371. package/helpers/date.mjs +18 -0
  372. package/helpers/dom/element.d.ts +49 -0
  373. package/helpers/dom/element.js +1117 -0
  374. package/helpers/dom/element.mjs +1064 -0
  375. package/helpers/dom/event.d.ts +4 -0
  376. package/helpers/dom/event.js +46 -0
  377. package/helpers/dom/event.mjs +39 -0
  378. package/helpers/dom/index.d.ts +2 -0
  379. package/helpers/feature.d.ts +11 -0
  380. package/helpers/feature.js +184 -0
  381. package/helpers/feature.mjs +172 -0
  382. package/helpers/function.d.ts +10 -0
  383. package/helpers/function.js +319 -0
  384. package/helpers/function.mjs +307 -0
  385. package/helpers/index.d.ts +14 -0
  386. package/helpers/mixed.d.ts +5 -0
  387. package/helpers/mixed.js +230 -0
  388. package/helpers/mixed.mjs +220 -0
  389. package/helpers/number.d.ts +5 -0
  390. package/helpers/number.js +142 -0
  391. package/helpers/number.mjs +134 -0
  392. package/helpers/object.d.ts +16 -0
  393. package/helpers/object.js +371 -0
  394. package/helpers/object.mjs +352 -0
  395. package/helpers/string.d.ts +7 -0
  396. package/helpers/string.js +115 -0
  397. package/helpers/string.mjs +104 -0
  398. package/helpers/templateLiteralTag.d.ts +1 -0
  399. package/helpers/templateLiteralTag.js +26 -0
  400. package/helpers/templateLiteralTag.mjs +22 -0
  401. package/helpers/unicode.d.ts +73 -0
  402. package/helpers/unicode.js +158 -0
  403. package/helpers/unicode.mjs +148 -0
  404. package/helpers/wrappers/jquery.js +50 -0
  405. package/helpers/wrappers/jquery.mjs +46 -0
  406. package/i18n/constants.js +162 -0
  407. package/i18n/constants.mjs +82 -0
  408. package/i18n/index.d.ts +2 -0
  409. package/i18n/index.js +18 -0
  410. package/i18n/index.mjs +2 -0
  411. package/i18n/languages/ar-AR.js +25 -0
  412. package/i18n/languages/ar-AR.mjs +15 -0
  413. package/i18n/languages/cs-CZ.js +24 -0
  414. package/i18n/languages/cs-CZ.mjs +14 -0
  415. package/i18n/languages/de-CH.d.ts +5 -0
  416. package/i18n/languages/de-CH.js +24 -0
  417. package/i18n/languages/de-CH.mjs +14 -0
  418. package/i18n/languages/de-DE.d.ts +5 -0
  419. package/i18n/languages/de-DE.js +24 -0
  420. package/i18n/languages/de-DE.mjs +14 -0
  421. package/i18n/languages/en-US.d.ts +5 -0
  422. package/i18n/languages/en-US.js +24 -0
  423. package/i18n/languages/en-US.mjs +14 -0
  424. package/i18n/languages/es-MX.d.ts +5 -0
  425. package/i18n/languages/es-MX.js +24 -0
  426. package/i18n/languages/es-MX.mjs +13 -0
  427. package/i18n/languages/fr-FR.d.ts +5 -0
  428. package/i18n/languages/fr-FR.js +24 -0
  429. package/i18n/languages/fr-FR.mjs +14 -0
  430. package/i18n/languages/index.d.ts +35 -0
  431. package/i18n/languages/index.js +42 -0
  432. package/i18n/languages/index.mjs +20 -0
  433. package/i18n/languages/it-IT.d.ts +5 -0
  434. package/i18n/languages/it-IT.js +24 -0
  435. package/i18n/languages/it-IT.mjs +14 -0
  436. package/i18n/languages/ja-JP.d.ts +5 -0
  437. package/i18n/languages/ja-JP.js +24 -0
  438. package/i18n/languages/ja-JP.mjs +14 -0
  439. package/i18n/languages/ko-KR.d.ts +5 -0
  440. package/i18n/languages/ko-KR.js +24 -0
  441. package/i18n/languages/ko-KR.mjs +14 -0
  442. package/i18n/languages/lv-LV.d.ts +5 -0
  443. package/i18n/languages/lv-LV.js +24 -0
  444. package/i18n/languages/lv-LV.mjs +14 -0
  445. package/i18n/languages/nb-NO.d.ts +5 -0
  446. package/i18n/languages/nb-NO.js +24 -0
  447. package/i18n/languages/nb-NO.mjs +14 -0
  448. package/i18n/languages/nl-NL.d.ts +5 -0
  449. package/i18n/languages/nl-NL.js +24 -0
  450. package/i18n/languages/nl-NL.mjs +14 -0
  451. package/i18n/languages/pl-PL.d.ts +5 -0
  452. package/i18n/languages/pl-PL.js +24 -0
  453. package/i18n/languages/pl-PL.mjs +14 -0
  454. package/i18n/languages/pt-BR.d.ts +5 -0
  455. package/i18n/languages/pt-BR.js +24 -0
  456. package/i18n/languages/pt-BR.mjs +14 -0
  457. package/i18n/languages/ru-RU.d.ts +5 -0
  458. package/i18n/languages/ru-RU.js +24 -0
  459. package/i18n/languages/ru-RU.mjs +14 -0
  460. package/i18n/languages/sr-SP.js +24 -0
  461. package/i18n/languages/sr-SP.mjs +14 -0
  462. package/i18n/languages/zh-CN.d.ts +5 -0
  463. package/i18n/languages/zh-CN.js +24 -0
  464. package/i18n/languages/zh-CN.mjs +14 -0
  465. package/i18n/languages/zh-TW.d.ts +5 -0
  466. package/i18n/languages/zh-TW.js +24 -0
  467. package/i18n/languages/zh-TW.mjs +14 -0
  468. package/i18n/phraseFormatters/index.js +31 -0
  469. package/i18n/phraseFormatters/index.mjs +26 -0
  470. package/i18n/phraseFormatters/pluralize.js +21 -0
  471. package/i18n/phraseFormatters/pluralize.mjs +17 -0
  472. package/i18n/phraseFormatters/substituteVariables.js +22 -0
  473. package/i18n/phraseFormatters/substituteVariables.mjs +18 -0
  474. package/i18n/registry.d.ts +13 -0
  475. package/i18n/registry.js +180 -0
  476. package/i18n/registry.mjs +155 -0
  477. package/i18n/utils.js +90 -0
  478. package/i18n/utils.mjs +83 -0
  479. package/index.d.ts +520 -0
  480. package/index.js +130 -0
  481. package/index.mjs +112 -0
  482. package/languages/all.js +583 -0
  483. package/languages/ar-AR.js +157 -0
  484. package/languages/ar-AR.mjs +17 -0
  485. package/languages/cs-CZ.js +157 -0
  486. package/languages/cs-CZ.mjs +16 -0
  487. package/languages/de-CH.js +158 -0
  488. package/languages/de-CH.mjs +16 -0
  489. package/languages/de-DE.js +159 -0
  490. package/languages/de-DE.mjs +16 -0
  491. package/languages/en-US.js +160 -0
  492. package/languages/en-US.mjs +16 -0
  493. package/languages/es-MX.js +161 -0
  494. package/languages/es-MX.mjs +15 -0
  495. package/languages/fr-FR.js +162 -0
  496. package/languages/fr-FR.mjs +16 -0
  497. package/languages/index.js +583 -0
  498. package/languages/index.mjs +20 -0
  499. package/languages/it-IT.js +164 -0
  500. package/languages/it-IT.mjs +16 -0
  501. package/languages/ja-JP.js +161 -0
  502. package/languages/ja-JP.mjs +16 -0
  503. package/languages/ko-KR.js +161 -0
  504. package/languages/ko-KR.mjs +16 -0
  505. package/languages/lv-LV.js +161 -0
  506. package/languages/lv-LV.mjs +16 -0
  507. package/languages/nb-NO.js +161 -0
  508. package/languages/nb-NO.mjs +16 -0
  509. package/languages/nl-NL.js +161 -0
  510. package/languages/nl-NL.mjs +16 -0
  511. package/languages/pl-PL.js +161 -0
  512. package/languages/pl-PL.mjs +16 -0
  513. package/languages/pt-BR.js +161 -0
  514. package/languages/pt-BR.mjs +16 -0
  515. package/languages/ru-RU.js +161 -0
  516. package/languages/ru-RU.mjs +16 -0
  517. package/languages/sr-SP.js +161 -0
  518. package/languages/sr-SP.mjs +16 -0
  519. package/languages/zh-CN.js +161 -0
  520. package/languages/zh-CN.mjs +16 -0
  521. package/languages/zh-TW.js +161 -0
  522. package/languages/zh-TW.mjs +16 -0
  523. package/mixins/hooksRefRegisterer.js +61 -0
  524. package/mixins/hooksRefRegisterer.mjs +56 -0
  525. package/mixins/localHooks.js +71 -0
  526. package/mixins/localHooks.mjs +66 -0
  527. package/package.json +751 -0
  528. package/pluginHooks.d.ts +256 -0
  529. package/pluginHooks.js +2750 -0
  530. package/pluginHooks.mjs +2744 -0
  531. package/plugins/autoColumnSize/autoColumnSize.d.ts +27 -0
  532. package/plugins/autoColumnSize/autoColumnSize.js +796 -0
  533. package/plugins/autoColumnSize/autoColumnSize.mjs +788 -0
  534. package/plugins/autoColumnSize/index.d.ts +1 -0
  535. package/plugins/autoColumnSize/index.js +8 -0
  536. package/plugins/autoColumnSize/index.mjs +1 -0
  537. package/plugins/autoRowSize/autoRowSize.d.ts +27 -0
  538. package/plugins/autoRowSize/autoRowSize.js +735 -0
  539. package/plugins/autoRowSize/autoRowSize.mjs +727 -0
  540. package/plugins/autoRowSize/index.d.ts +1 -0
  541. package/plugins/autoRowSize/index.js +8 -0
  542. package/plugins/autoRowSize/index.mjs +1 -0
  543. package/plugins/autofill/autofill.d.ts +18 -0
  544. package/plugins/autofill/autofill.js +694 -0
  545. package/plugins/autofill/autofill.mjs +687 -0
  546. package/plugins/autofill/index.d.ts +1 -0
  547. package/plugins/autofill/index.js +8 -0
  548. package/plugins/autofill/index.mjs +1 -0
  549. package/plugins/autofill/utils.js +134 -0
  550. package/plugins/autofill/utils.mjs +126 -0
  551. package/plugins/base/base.d.ts +27 -0
  552. package/plugins/base/base.js +345 -0
  553. package/plugins/base/base.mjs +339 -0
  554. package/plugins/base/index.d.ts +1 -0
  555. package/plugins/base/index.js +7 -0
  556. package/plugins/base/index.mjs +1 -0
  557. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.d.ts +9 -0
  558. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +169 -0
  559. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +161 -0
  560. package/plugins/bindRowsWithHeaders/index.d.ts +1 -0
  561. package/plugins/bindRowsWithHeaders/index.js +8 -0
  562. package/plugins/bindRowsWithHeaders/index.mjs +1 -0
  563. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +80 -0
  564. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +75 -0
  565. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +103 -0
  566. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +98 -0
  567. package/plugins/collapsibleColumns/collapsibleColumns.d.ts +22 -0
  568. package/plugins/collapsibleColumns/collapsibleColumns.js +592 -0
  569. package/plugins/collapsibleColumns/collapsibleColumns.mjs +584 -0
  570. package/plugins/collapsibleColumns/index.d.ts +1 -0
  571. package/plugins/collapsibleColumns/index.js +8 -0
  572. package/plugins/collapsibleColumns/index.mjs +1 -0
  573. package/plugins/columnSorting/columnSorting.d.ts +30 -0
  574. package/plugins/columnSorting/columnSorting.js +865 -0
  575. package/plugins/columnSorting/columnSorting.mjs +857 -0
  576. package/plugins/columnSorting/columnStatesManager.js +273 -0
  577. package/plugins/columnSorting/columnStatesManager.mjs +268 -0
  578. package/plugins/columnSorting/domHelpers.js +54 -0
  579. package/plugins/columnSorting/domHelpers.mjs +49 -0
  580. package/plugins/columnSorting/index.d.ts +1 -0
  581. package/plugins/columnSorting/index.js +8 -0
  582. package/plugins/columnSorting/index.mjs +1 -0
  583. package/plugins/columnSorting/rootComparator.js +52 -0
  584. package/plugins/columnSorting/rootComparator.mjs +48 -0
  585. package/plugins/columnSorting/sortFunction/checkbox.js +64 -0
  586. package/plugins/columnSorting/sortFunction/checkbox.mjs +58 -0
  587. package/plugins/columnSorting/sortFunction/date.js +61 -0
  588. package/plugins/columnSorting/sortFunction/date.mjs +54 -0
  589. package/plugins/columnSorting/sortFunction/default.js +65 -0
  590. package/plugins/columnSorting/sortFunction/default.mjs +59 -0
  591. package/plugins/columnSorting/sortFunction/numeric.js +49 -0
  592. package/plugins/columnSorting/sortFunction/numeric.mjs +43 -0
  593. package/plugins/columnSorting/sortService/engine.js +26 -0
  594. package/plugins/columnSorting/sortService/engine.mjs +18 -0
  595. package/plugins/columnSorting/sortService/index.js +13 -0
  596. package/plugins/columnSorting/sortService/index.mjs +3 -0
  597. package/plugins/columnSorting/sortService/registry.js +37 -0
  598. package/plugins/columnSorting/sortService/registry.mjs +30 -0
  599. package/plugins/columnSorting/utils.js +122 -0
  600. package/plugins/columnSorting/utils.mjs +110 -0
  601. package/plugins/columnSummary/columnSummary.d.ts +72 -0
  602. package/plugins/columnSummary/columnSummary.js +544 -0
  603. package/plugins/columnSummary/columnSummary.mjs +536 -0
  604. package/plugins/columnSummary/endpoints.js +557 -0
  605. package/plugins/columnSummary/endpoints.mjs +552 -0
  606. package/plugins/columnSummary/index.d.ts +1 -0
  607. package/plugins/columnSummary/index.js +8 -0
  608. package/plugins/columnSummary/index.mjs +1 -0
  609. package/plugins/columnSummary/utils.js +13 -0
  610. package/plugins/columnSummary/utils.mjs +9 -0
  611. package/plugins/comments/commentEditor.js +241 -0
  612. package/plugins/comments/commentEditor.mjs +236 -0
  613. package/plugins/comments/comments.d.ts +50 -0
  614. package/plugins/comments/comments.js +942 -0
  615. package/plugins/comments/comments.mjs +932 -0
  616. package/plugins/comments/displaySwitch.js +115 -0
  617. package/plugins/comments/displaySwitch.mjs +109 -0
  618. package/plugins/comments/index.d.ts +1 -0
  619. package/plugins/comments/index.js +8 -0
  620. package/plugins/comments/index.mjs +1 -0
  621. package/plugins/contextMenu/commandExecutor.js +113 -0
  622. package/plugins/contextMenu/commandExecutor.mjs +108 -0
  623. package/plugins/contextMenu/contextMenu.d.ts +65 -0
  624. package/plugins/contextMenu/contextMenu.js +445 -0
  625. package/plugins/contextMenu/contextMenu.mjs +437 -0
  626. package/plugins/contextMenu/cursor.js +126 -0
  627. package/plugins/contextMenu/cursor.mjs +121 -0
  628. package/plugins/contextMenu/index.d.ts +1 -0
  629. package/plugins/contextMenu/index.js +8 -0
  630. package/plugins/contextMenu/index.mjs +1 -0
  631. package/plugins/contextMenu/itemsFactory.js +136 -0
  632. package/plugins/contextMenu/itemsFactory.mjs +131 -0
  633. package/plugins/contextMenu/menu.js +1003 -0
  634. package/plugins/contextMenu/menu.mjs +997 -0
  635. package/plugins/contextMenu/predefinedItems/alignment.js +277 -0
  636. package/plugins/contextMenu/predefinedItems/alignment.mjs +259 -0
  637. package/plugins/contextMenu/predefinedItems/clearColumn.js +47 -0
  638. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +29 -0
  639. package/plugins/contextMenu/predefinedItems/columnLeft.js +57 -0
  640. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +39 -0
  641. package/plugins/contextMenu/predefinedItems/columnRight.js +55 -0
  642. package/plugins/contextMenu/predefinedItems/columnRight.mjs +37 -0
  643. package/plugins/contextMenu/predefinedItems/noItems.js +22 -0
  644. package/plugins/contextMenu/predefinedItems/noItems.mjs +16 -0
  645. package/plugins/contextMenu/predefinedItems/readOnly.js +69 -0
  646. package/plugins/contextMenu/predefinedItems/readOnly.mjs +51 -0
  647. package/plugins/contextMenu/predefinedItems/redo.js +42 -0
  648. package/plugins/contextMenu/predefinedItems/redo.mjs +24 -0
  649. package/plugins/contextMenu/predefinedItems/removeColumn.js +79 -0
  650. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +68 -0
  651. package/plugins/contextMenu/predefinedItems/removeRow.js +78 -0
  652. package/plugins/contextMenu/predefinedItems/removeRow.mjs +67 -0
  653. package/plugins/contextMenu/predefinedItems/rowAbove.js +53 -0
  654. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +35 -0
  655. package/plugins/contextMenu/predefinedItems/rowBelow.js +51 -0
  656. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +33 -0
  657. package/plugins/contextMenu/predefinedItems/separator.js +16 -0
  658. package/plugins/contextMenu/predefinedItems/separator.mjs +10 -0
  659. package/plugins/contextMenu/predefinedItems/undo.js +42 -0
  660. package/plugins/contextMenu/predefinedItems/undo.mjs +24 -0
  661. package/plugins/contextMenu/predefinedItems.js +76 -0
  662. package/plugins/contextMenu/predefinedItems.mjs +57 -0
  663. package/plugins/contextMenu/utils.js +278 -0
  664. package/plugins/contextMenu/utils.mjs +261 -0
  665. package/plugins/copyPaste/clipboardData.js +29 -0
  666. package/plugins/copyPaste/clipboardData.mjs +25 -0
  667. package/plugins/copyPaste/contextMenuItem/copy.js +45 -0
  668. package/plugins/copyPaste/contextMenuItem/copy.mjs +29 -0
  669. package/plugins/copyPaste/contextMenuItem/cut.js +45 -0
  670. package/plugins/copyPaste/contextMenuItem/cut.mjs +29 -0
  671. package/plugins/copyPaste/copyPaste.d.ts +35 -0
  672. package/plugins/copyPaste/copyPaste.js +721 -0
  673. package/plugins/copyPaste/copyPaste.mjs +713 -0
  674. package/plugins/copyPaste/focusableElement.js +210 -0
  675. package/plugins/copyPaste/focusableElement.mjs +204 -0
  676. package/plugins/copyPaste/index.d.ts +1 -0
  677. package/plugins/copyPaste/index.js +8 -0
  678. package/plugins/copyPaste/index.mjs +1 -0
  679. package/plugins/copyPaste/pasteEvent.js +17 -0
  680. package/plugins/copyPaste/pasteEvent.mjs +12 -0
  681. package/plugins/customBorders/contextMenuItem/bottom.js +39 -0
  682. package/plugins/customBorders/contextMenuItem/bottom.mjs +23 -0
  683. package/plugins/customBorders/contextMenuItem/index.js +14 -0
  684. package/plugins/customBorders/contextMenuItem/index.mjs +6 -0
  685. package/plugins/customBorders/contextMenuItem/left.js +40 -0
  686. package/plugins/customBorders/contextMenuItem/left.mjs +24 -0
  687. package/plugins/customBorders/contextMenuItem/noBorders.js +36 -0
  688. package/plugins/customBorders/contextMenuItem/noBorders.mjs +20 -0
  689. package/plugins/customBorders/contextMenuItem/right.js +40 -0
  690. package/plugins/customBorders/contextMenuItem/right.mjs +24 -0
  691. package/plugins/customBorders/contextMenuItem/top.js +39 -0
  692. package/plugins/customBorders/contextMenuItem/top.mjs +23 -0
  693. package/plugins/customBorders/customBorders.d.ts +38 -0
  694. package/plugins/customBorders/customBorders.js +887 -0
  695. package/plugins/customBorders/customBorders.mjs +877 -0
  696. package/plugins/customBorders/index.d.ts +1 -0
  697. package/plugins/customBorders/index.js +8 -0
  698. package/plugins/customBorders/index.mjs +1 -0
  699. package/plugins/customBorders/utils.js +265 -0
  700. package/plugins/customBorders/utils.mjs +249 -0
  701. package/plugins/dragToScroll/dragToScroll.d.ts +15 -0
  702. package/plugins/dragToScroll/dragToScroll.js +335 -0
  703. package/plugins/dragToScroll/dragToScroll.mjs +327 -0
  704. package/plugins/dragToScroll/index.d.ts +1 -0
  705. package/plugins/dragToScroll/index.js +8 -0
  706. package/plugins/dragToScroll/index.mjs +1 -0
  707. package/plugins/dropdownMenu/dropdownMenu.d.ts +24 -0
  708. package/plugins/dropdownMenu/dropdownMenu.js +511 -0
  709. package/plugins/dropdownMenu/dropdownMenu.mjs +504 -0
  710. package/plugins/dropdownMenu/index.d.ts +1 -0
  711. package/plugins/dropdownMenu/index.js +8 -0
  712. package/plugins/dropdownMenu/index.mjs +1 -0
  713. package/plugins/exportFile/dataProvider.js +200 -0
  714. package/plugins/exportFile/dataProvider.mjs +195 -0
  715. package/plugins/exportFile/exportFile.d.ts +12 -0
  716. package/plugins/exportFile/exportFile.js +262 -0
  717. package/plugins/exportFile/exportFile.mjs +250 -0
  718. package/plugins/exportFile/index.d.ts +1 -0
  719. package/plugins/exportFile/index.js +8 -0
  720. package/plugins/exportFile/index.mjs +1 -0
  721. package/plugins/exportFile/typeFactory.js +30 -0
  722. package/plugins/exportFile/typeFactory.mjs +21 -0
  723. package/plugins/exportFile/types/_base.js +78 -0
  724. package/plugins/exportFile/types/_base.mjs +73 -0
  725. package/plugins/exportFile/types/csv.js +131 -0
  726. package/plugins/exportFile/types/csv.mjs +125 -0
  727. package/plugins/filters/component/_base.js +169 -0
  728. package/plugins/filters/component/_base.mjs +163 -0
  729. package/plugins/filters/component/actionBar.js +161 -0
  730. package/plugins/filters/component/actionBar.mjs +151 -0
  731. package/plugins/filters/component/condition.js +325 -0
  732. package/plugins/filters/component/condition.mjs +316 -0
  733. package/plugins/filters/component/operators.js +222 -0
  734. package/plugins/filters/component/operators.mjs +216 -0
  735. package/plugins/filters/component/value.js +278 -0
  736. package/plugins/filters/component/value.mjs +269 -0
  737. package/plugins/filters/condition/beginsWith.js +50 -0
  738. package/plugins/filters/condition/beginsWith.mjs +39 -0
  739. package/plugins/filters/condition/between.js +64 -0
  740. package/plugins/filters/condition/between.mjs +53 -0
  741. package/plugins/filters/condition/byValue.js +48 -0
  742. package/plugins/filters/condition/byValue.mjs +42 -0
  743. package/plugins/filters/condition/contains.js +50 -0
  744. package/plugins/filters/condition/contains.mjs +39 -0
  745. package/plugins/filters/condition/date/after.js +55 -0
  746. package/plugins/filters/condition/date/after.mjs +43 -0
  747. package/plugins/filters/condition/date/before.js +55 -0
  748. package/plugins/filters/condition/date/before.mjs +43 -0
  749. package/plugins/filters/condition/date/today.js +39 -0
  750. package/plugins/filters/condition/date/today.mjs +20 -0
  751. package/plugins/filters/condition/date/tomorrow.js +39 -0
  752. package/plugins/filters/condition/date/tomorrow.mjs +20 -0
  753. package/plugins/filters/condition/date/yesterday.js +39 -0
  754. package/plugins/filters/condition/date/yesterday.mjs +20 -0
  755. package/plugins/filters/condition/empty.js +35 -0
  756. package/plugins/filters/condition/empty.mjs +17 -0
  757. package/plugins/filters/condition/endsWith.js +50 -0
  758. package/plugins/filters/condition/endsWith.mjs +39 -0
  759. package/plugins/filters/condition/equal.js +49 -0
  760. package/plugins/filters/condition/equal.mjs +38 -0
  761. package/plugins/filters/condition/false.js +18 -0
  762. package/plugins/filters/condition/false.mjs +12 -0
  763. package/plugins/filters/condition/greaterThan.js +52 -0
  764. package/plugins/filters/condition/greaterThan.mjs +41 -0
  765. package/plugins/filters/condition/greaterThanOrEqual.js +52 -0
  766. package/plugins/filters/condition/greaterThanOrEqual.mjs +41 -0
  767. package/plugins/filters/condition/lessThan.js +52 -0
  768. package/plugins/filters/condition/lessThan.mjs +41 -0
  769. package/plugins/filters/condition/lessThanOrEqual.js +52 -0
  770. package/plugins/filters/condition/lessThanOrEqual.mjs +41 -0
  771. package/plugins/filters/condition/none.js +33 -0
  772. package/plugins/filters/condition/none.mjs +15 -0
  773. package/plugins/filters/condition/notBetween.js +36 -0
  774. package/plugins/filters/condition/notBetween.mjs +18 -0
  775. package/plugins/filters/condition/notContains.js +36 -0
  776. package/plugins/filters/condition/notContains.mjs +18 -0
  777. package/plugins/filters/condition/notEmpty.js +36 -0
  778. package/plugins/filters/condition/notEmpty.mjs +18 -0
  779. package/plugins/filters/condition/notEqual.js +36 -0
  780. package/plugins/filters/condition/notEqual.mjs +18 -0
  781. package/plugins/filters/condition/true.js +18 -0
  782. package/plugins/filters/condition/true.mjs +12 -0
  783. package/plugins/filters/conditionCollection.d.ts +32 -0
  784. package/plugins/filters/conditionCollection.js +343 -0
  785. package/plugins/filters/conditionCollection.mjs +337 -0
  786. package/plugins/filters/conditionRegisterer.js +61 -0
  787. package/plugins/filters/conditionRegisterer.mjs +53 -0
  788. package/plugins/filters/conditionUpdateObserver.d.ts +10 -0
  789. package/plugins/filters/conditionUpdateObserver.js +248 -0
  790. package/plugins/filters/conditionUpdateObserver.mjs +242 -0
  791. package/plugins/filters/constants.js +103 -0
  792. package/plugins/filters/constants.mjs +69 -0
  793. package/plugins/filters/dataFilter.js +98 -0
  794. package/plugins/filters/dataFilter.mjs +93 -0
  795. package/plugins/filters/filters.d.ts +56 -0
  796. package/plugins/filters/filters.js +1037 -0
  797. package/plugins/filters/filters.mjs +1026 -0
  798. package/plugins/filters/index.d.ts +1 -0
  799. package/plugins/filters/index.js +8 -0
  800. package/plugins/filters/index.mjs +1 -0
  801. package/plugins/filters/logicalOperationRegisterer.js +50 -0
  802. package/plugins/filters/logicalOperationRegisterer.mjs +42 -0
  803. package/plugins/filters/logicalOperations/conjunction.js +36 -0
  804. package/plugins/filters/logicalOperations/conjunction.mjs +18 -0
  805. package/plugins/filters/logicalOperations/disjunction.js +36 -0
  806. package/plugins/filters/logicalOperations/disjunction.mjs +18 -0
  807. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +40 -0
  808. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +22 -0
  809. package/plugins/filters/ui/_base.js +249 -0
  810. package/plugins/filters/ui/_base.mjs +231 -0
  811. package/plugins/filters/ui/input.js +140 -0
  812. package/plugins/filters/ui/input.mjs +134 -0
  813. package/plugins/filters/ui/link.js +86 -0
  814. package/plugins/filters/ui/link.mjs +80 -0
  815. package/plugins/filters/ui/multipleSelect.js +441 -0
  816. package/plugins/filters/ui/multipleSelect.mjs +434 -0
  817. package/plugins/filters/ui/radioInput.js +130 -0
  818. package/plugins/filters/ui/radioInput.mjs +124 -0
  819. package/plugins/filters/ui/select.js +269 -0
  820. package/plugins/filters/ui/select.mjs +261 -0
  821. package/plugins/filters/utils.js +143 -0
  822. package/plugins/filters/utils.mjs +134 -0
  823. package/plugins/formulas/engine/register.js +259 -0
  824. package/plugins/formulas/engine/register.mjs +247 -0
  825. package/plugins/formulas/engine/settings.js +115 -0
  826. package/plugins/formulas/engine/settings.mjs +107 -0
  827. package/plugins/formulas/formulas.d.ts +31 -0
  828. package/plugins/formulas/formulas.js +1229 -0
  829. package/plugins/formulas/formulas.mjs +1221 -0
  830. package/plugins/formulas/index.d.ts +1 -0
  831. package/plugins/formulas/index.js +8 -0
  832. package/plugins/formulas/index.mjs +1 -0
  833. package/plugins/formulas/utils.js +24 -0
  834. package/plugins/formulas/utils.mjs +19 -0
  835. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +76 -0
  836. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +67 -0
  837. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +124 -0
  838. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +115 -0
  839. package/plugins/hiddenColumns/hiddenColumns.d.ts +21 -0
  840. package/plugins/hiddenColumns/hiddenColumns.js +620 -0
  841. package/plugins/hiddenColumns/hiddenColumns.mjs +612 -0
  842. package/plugins/hiddenColumns/index.d.ts +1 -0
  843. package/plugins/hiddenColumns/index.js +8 -0
  844. package/plugins/hiddenColumns/index.mjs +1 -0
  845. package/plugins/hiddenRows/contextMenuItem/hideRow.js +76 -0
  846. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +67 -0
  847. package/plugins/hiddenRows/contextMenuItem/showRow.js +124 -0
  848. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +115 -0
  849. package/plugins/hiddenRows/hiddenRows.d.ts +21 -0
  850. package/plugins/hiddenRows/hiddenRows.js +612 -0
  851. package/plugins/hiddenRows/hiddenRows.mjs +604 -0
  852. package/plugins/hiddenRows/index.d.ts +1 -0
  853. package/plugins/hiddenRows/index.js +8 -0
  854. package/plugins/hiddenRows/index.mjs +1 -0
  855. package/plugins/index.d.ts +111 -0
  856. package/plugins/index.js +115 -0
  857. package/plugins/index.mjs +75 -0
  858. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +58 -0
  859. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +49 -0
  860. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +58 -0
  861. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +49 -0
  862. package/plugins/manualColumnFreeze/index.d.ts +1 -0
  863. package/plugins/manualColumnFreeze/index.js +8 -0
  864. package/plugins/manualColumnFreeze/index.mjs +1 -0
  865. package/plugins/manualColumnFreeze/manualColumnFreeze.d.ts +11 -0
  866. package/plugins/manualColumnFreeze/manualColumnFreeze.js +250 -0
  867. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +242 -0
  868. package/plugins/manualColumnMove/index.d.ts +1 -0
  869. package/plugins/manualColumnMove/index.js +8 -0
  870. package/plugins/manualColumnMove/index.mjs +1 -0
  871. package/plugins/manualColumnMove/manualColumnMove.d.ts +14 -0
  872. package/plugins/manualColumnMove/manualColumnMove.js +775 -0
  873. package/plugins/manualColumnMove/manualColumnMove.mjs +767 -0
  874. package/plugins/manualColumnMove/ui/_base.js +209 -0
  875. package/plugins/manualColumnMove/ui/_base.mjs +204 -0
  876. package/plugins/manualColumnMove/ui/backlight.js +60 -0
  877. package/plugins/manualColumnMove/ui/backlight.mjs +54 -0
  878. package/plugins/manualColumnMove/ui/guideline.js +60 -0
  879. package/plugins/manualColumnMove/ui/guideline.mjs +54 -0
  880. package/plugins/manualColumnResize/index.d.ts +1 -0
  881. package/plugins/manualColumnResize/index.js +8 -0
  882. package/plugins/manualColumnResize/index.mjs +1 -0
  883. package/plugins/manualColumnResize/manualColumnResize.d.ts +30 -0
  884. package/plugins/manualColumnResize/manualColumnResize.js +690 -0
  885. package/plugins/manualColumnResize/manualColumnResize.mjs +680 -0
  886. package/plugins/manualRowMove/index.d.ts +1 -0
  887. package/plugins/manualRowMove/index.js +8 -0
  888. package/plugins/manualRowMove/index.mjs +1 -0
  889. package/plugins/manualRowMove/manualRowMove.d.ts +14 -0
  890. package/plugins/manualRowMove/manualRowMove.js +757 -0
  891. package/plugins/manualRowMove/manualRowMove.mjs +749 -0
  892. package/plugins/manualRowMove/ui/_base.js +196 -0
  893. package/plugins/manualRowMove/ui/_base.mjs +191 -0
  894. package/plugins/manualRowMove/ui/backlight.js +60 -0
  895. package/plugins/manualRowMove/ui/backlight.mjs +54 -0
  896. package/plugins/manualRowMove/ui/guideline.js +60 -0
  897. package/plugins/manualRowMove/ui/guideline.mjs +54 -0
  898. package/plugins/manualRowResize/index.d.ts +1 -0
  899. package/plugins/manualRowResize/index.js +8 -0
  900. package/plugins/manualRowResize/index.mjs +1 -0
  901. package/plugins/manualRowResize/manualRowResize.d.ts +29 -0
  902. package/plugins/manualRowResize/manualRowResize.js +652 -0
  903. package/plugins/manualRowResize/manualRowResize.mjs +642 -0
  904. package/plugins/mergeCells/calculations/autofill.js +464 -0
  905. package/plugins/mergeCells/calculations/autofill.mjs +459 -0
  906. package/plugins/mergeCells/calculations/selection.js +204 -0
  907. package/plugins/mergeCells/calculations/selection.mjs +199 -0
  908. package/plugins/mergeCells/cellCoords.js +347 -0
  909. package/plugins/mergeCells/cellCoords.mjs +342 -0
  910. package/plugins/mergeCells/cellsCollection.js +344 -0
  911. package/plugins/mergeCells/cellsCollection.mjs +338 -0
  912. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +55 -0
  913. package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +38 -0
  914. package/plugins/mergeCells/index.d.ts +1 -0
  915. package/plugins/mergeCells/index.js +8 -0
  916. package/plugins/mergeCells/index.mjs +1 -0
  917. package/plugins/mergeCells/mergeCells.d.ts +22 -0
  918. package/plugins/mergeCells/mergeCells.js +1290 -0
  919. package/plugins/mergeCells/mergeCells.mjs +1282 -0
  920. package/plugins/mergeCells/utils.js +30 -0
  921. package/plugins/mergeCells/utils.mjs +26 -0
  922. package/plugins/multiColumnSorting/domHelpers.js +44 -0
  923. package/plugins/multiColumnSorting/domHelpers.mjs +39 -0
  924. package/plugins/multiColumnSorting/index.d.ts +1 -0
  925. package/plugins/multiColumnSorting/index.js +8 -0
  926. package/plugins/multiColumnSorting/index.mjs +1 -0
  927. package/plugins/multiColumnSorting/multiColumnSorting.d.ts +8 -0
  928. package/plugins/multiColumnSorting/multiColumnSorting.js +336 -0
  929. package/plugins/multiColumnSorting/multiColumnSorting.mjs +329 -0
  930. package/plugins/multiColumnSorting/rootComparator.js +55 -0
  931. package/plugins/multiColumnSorting/rootComparator.mjs +51 -0
  932. package/plugins/multiColumnSorting/utils.js +16 -0
  933. package/plugins/multiColumnSorting/utils.mjs +12 -0
  934. package/plugins/multipleSelectionHandles/index.d.ts +1 -0
  935. package/plugins/multipleSelectionHandles/index.js +8 -0
  936. package/plugins/multipleSelectionHandles/index.mjs +1 -0
  937. package/plugins/multipleSelectionHandles/multipleSelectionHandles.d.ts +21 -0
  938. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +394 -0
  939. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +386 -0
  940. package/plugins/nestedHeaders/index.d.ts +1 -0
  941. package/plugins/nestedHeaders/index.js +8 -0
  942. package/plugins/nestedHeaders/index.mjs +1 -0
  943. package/plugins/nestedHeaders/nestedHeaders.d.ts +17 -0
  944. package/plugins/nestedHeaders/nestedHeaders.js +666 -0
  945. package/plugins/nestedHeaders/nestedHeaders.mjs +658 -0
  946. package/plugins/nestedHeaders/stateManager/headersTree.js +288 -0
  947. package/plugins/nestedHeaders/stateManager/headersTree.mjs +283 -0
  948. package/plugins/nestedHeaders/stateManager/index.js +417 -0
  949. package/plugins/nestedHeaders/stateManager/index.mjs +412 -0
  950. package/plugins/nestedHeaders/stateManager/matrixGenerator.js +102 -0
  951. package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +99 -0
  952. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +98 -0
  953. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +94 -0
  954. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +95 -0
  955. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +91 -0
  956. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +54 -0
  957. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +50 -0
  958. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +40 -0
  959. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +35 -0
  960. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +55 -0
  961. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +51 -0
  962. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +61 -0
  963. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +55 -0
  964. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +122 -0
  965. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +119 -0
  966. package/plugins/nestedHeaders/stateManager/sourceSettings.js +250 -0
  967. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +245 -0
  968. package/plugins/nestedHeaders/stateManager/utils.js +75 -0
  969. package/plugins/nestedHeaders/stateManager/utils.mjs +70 -0
  970. package/plugins/nestedHeaders/utils/ghostTable.js +167 -0
  971. package/plugins/nestedHeaders/utils/ghostTable.mjs +162 -0
  972. package/plugins/nestedRows/data/dataManager.js +809 -0
  973. package/plugins/nestedRows/data/dataManager.mjs +804 -0
  974. package/plugins/nestedRows/index.d.ts +1 -0
  975. package/plugins/nestedRows/index.js +8 -0
  976. package/plugins/nestedRows/index.mjs +1 -0
  977. package/plugins/nestedRows/nestedRows.d.ts +12 -0
  978. package/plugins/nestedRows/nestedRows.js +592 -0
  979. package/plugins/nestedRows/nestedRows.mjs +584 -0
  980. package/plugins/nestedRows/ui/_base.js +28 -0
  981. package/plugins/nestedRows/ui/_base.mjs +23 -0
  982. package/plugins/nestedRows/ui/collapsing.js +562 -0
  983. package/plugins/nestedRows/ui/collapsing.mjs +556 -0
  984. package/plugins/nestedRows/ui/contextMenu.js +147 -0
  985. package/plugins/nestedRows/ui/contextMenu.mjs +138 -0
  986. package/plugins/nestedRows/ui/headers.js +157 -0
  987. package/plugins/nestedRows/ui/headers.mjs +151 -0
  988. package/plugins/nestedRows/utils/rowMoveController.js +331 -0
  989. package/plugins/nestedRows/utils/rowMoveController.mjs +327 -0
  990. package/plugins/persistentState/index.d.ts +1 -0
  991. package/plugins/persistentState/index.js +8 -0
  992. package/plugins/persistentState/index.mjs +1 -0
  993. package/plugins/persistentState/persistentState.d.ts +13 -0
  994. package/plugins/persistentState/persistentState.js +207 -0
  995. package/plugins/persistentState/persistentState.mjs +199 -0
  996. package/plugins/persistentState/storage.js +138 -0
  997. package/plugins/persistentState/storage.mjs +133 -0
  998. package/plugins/registry.d.ts +9 -0
  999. package/plugins/registry.js +150 -0
  1000. package/plugins/registry.mjs +146 -0
  1001. package/plugins/search/index.d.ts +1 -0
  1002. package/plugins/search/index.js +8 -0
  1003. package/plugins/search/index.mjs +1 -0
  1004. package/plugins/search/search.d.ts +28 -0
  1005. package/plugins/search/search.js +377 -0
  1006. package/plugins/search/search.mjs +370 -0
  1007. package/plugins/touchScroll/index.d.ts +1 -0
  1008. package/plugins/touchScroll/index.js +8 -0
  1009. package/plugins/touchScroll/index.mjs +1 -0
  1010. package/plugins/touchScroll/touchScroll.d.ts +13 -0
  1011. package/plugins/touchScroll/touchScroll.js +250 -0
  1012. package/plugins/touchScroll/touchScroll.mjs +243 -0
  1013. package/plugins/trimRows/index.d.ts +1 -0
  1014. package/plugins/trimRows/index.js +8 -0
  1015. package/plugins/trimRows/index.mjs +1 -0
  1016. package/plugins/trimRows/trimRows.d.ts +17 -0
  1017. package/plugins/trimRows/trimRows.js +393 -0
  1018. package/plugins/trimRows/trimRows.mjs +386 -0
  1019. package/plugins/undoRedo/index.d.ts +1 -0
  1020. package/plugins/undoRedo/index.js +18 -0
  1021. package/plugins/undoRedo/index.mjs +2 -0
  1022. package/plugins/undoRedo/undoRedo.d.ts +49 -0
  1023. package/plugins/undoRedo/undoRedo.js +935 -0
  1024. package/plugins/undoRedo/undoRedo.mjs +928 -0
  1025. package/registry.d.ts +6 -0
  1026. package/registry.js +35 -0
  1027. package/registry.mjs +26 -0
  1028. package/renderers/autocompleteRenderer/autocompleteRenderer.d.ts +5 -0
  1029. package/renderers/autocompleteRenderer/autocompleteRenderer.js +59 -0
  1030. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +52 -0
  1031. package/renderers/autocompleteRenderer/index.d.ts +1 -0
  1032. package/renderers/autocompleteRenderer/index.js +7 -0
  1033. package/renderers/autocompleteRenderer/index.mjs +1 -0
  1034. package/renderers/base.d.ts +3 -0
  1035. package/renderers/baseRenderer/baseRenderer.d.ts +5 -0
  1036. package/renderers/baseRenderer/baseRenderer.js +46 -0
  1037. package/renderers/baseRenderer/baseRenderer.mjs +39 -0
  1038. package/renderers/baseRenderer/index.d.ts +1 -0
  1039. package/renderers/baseRenderer/index.js +7 -0
  1040. package/renderers/baseRenderer/index.mjs +1 -0
  1041. package/renderers/checkboxRenderer/checkboxRenderer.d.ts +5 -0
  1042. package/renderers/checkboxRenderer/checkboxRenderer.js +398 -0
  1043. package/renderers/checkboxRenderer/checkboxRenderer.mjs +391 -0
  1044. package/renderers/checkboxRenderer/index.d.ts +1 -0
  1045. package/renderers/checkboxRenderer/index.js +7 -0
  1046. package/renderers/checkboxRenderer/index.mjs +1 -0
  1047. package/renderers/htmlRenderer/htmlRenderer.d.ts +5 -0
  1048. package/renderers/htmlRenderer/htmlRenderer.js +25 -0
  1049. package/renderers/htmlRenderer/htmlRenderer.mjs +19 -0
  1050. package/renderers/htmlRenderer/index.d.ts +1 -0
  1051. package/renderers/htmlRenderer/index.js +7 -0
  1052. package/renderers/htmlRenderer/index.mjs +1 -0
  1053. package/renderers/index.d.ts +45 -0
  1054. package/renderers/index.js +48 -0
  1055. package/renderers/index.mjs +24 -0
  1056. package/renderers/numericRenderer/index.d.ts +1 -0
  1057. package/renderers/numericRenderer/index.js +7 -0
  1058. package/renderers/numericRenderer/index.mjs +1 -0
  1059. package/renderers/numericRenderer/numericRenderer.d.ts +5 -0
  1060. package/renderers/numericRenderer/numericRenderer.js +57 -0
  1061. package/renderers/numericRenderer/numericRenderer.mjs +50 -0
  1062. package/renderers/passwordRenderer/index.d.ts +1 -0
  1063. package/renderers/passwordRenderer/index.js +7 -0
  1064. package/renderers/passwordRenderer/index.mjs +1 -0
  1065. package/renderers/passwordRenderer/passwordRenderer.d.ts +5 -0
  1066. package/renderers/passwordRenderer/passwordRenderer.js +32 -0
  1067. package/renderers/passwordRenderer/passwordRenderer.mjs +26 -0
  1068. package/renderers/registry.d.ts +18 -0
  1069. package/renderers/registry.js +48 -0
  1070. package/renderers/registry.mjs +38 -0
  1071. package/renderers/textRenderer/index.d.ts +1 -0
  1072. package/renderers/textRenderer/index.js +7 -0
  1073. package/renderers/textRenderer/index.mjs +1 -0
  1074. package/renderers/textRenderer/textRenderer.d.ts +5 -0
  1075. package/renderers/textRenderer/textRenderer.js +48 -0
  1076. package/renderers/textRenderer/textRenderer.mjs +42 -0
  1077. package/renderers/timeRenderer/index.d.ts +1 -0
  1078. package/renderers/timeRenderer/index.js +7 -0
  1079. package/renderers/timeRenderer/index.mjs +1 -0
  1080. package/renderers/timeRenderer/timeRenderer.d.ts +5 -0
  1081. package/renderers/timeRenderer/timeRenderer.js +26 -0
  1082. package/renderers/timeRenderer/timeRenderer.mjs +20 -0
  1083. package/selection/highlight/constants.js +16 -0
  1084. package/selection/highlight/constants.mjs +6 -0
  1085. package/selection/highlight/highlight.js +330 -0
  1086. package/selection/highlight/highlight.mjs +325 -0
  1087. package/selection/highlight/types/activeHeader.js +38 -0
  1088. package/selection/highlight/types/activeHeader.mjs +32 -0
  1089. package/selection/highlight/types/area.js +49 -0
  1090. package/selection/highlight/types/area.mjs +43 -0
  1091. package/selection/highlight/types/cell.js +46 -0
  1092. package/selection/highlight/types/cell.mjs +40 -0
  1093. package/selection/highlight/types/customSelection.js +41 -0
  1094. package/selection/highlight/types/customSelection.mjs +35 -0
  1095. package/selection/highlight/types/fill.js +41 -0
  1096. package/selection/highlight/types/fill.mjs +35 -0
  1097. package/selection/highlight/types/header.js +49 -0
  1098. package/selection/highlight/types/header.mjs +43 -0
  1099. package/selection/highlight/types/index.js +43 -0
  1100. package/selection/highlight/types/index.mjs +39 -0
  1101. package/selection/highlight/visualSelection.js +277 -0
  1102. package/selection/highlight/visualSelection.mjs +272 -0
  1103. package/selection/index.d.ts +5 -0
  1104. package/selection/index.js +30 -0
  1105. package/selection/index.mjs +6 -0
  1106. package/selection/mouseEventHandler.js +135 -0
  1107. package/selection/mouseEventHandler.mjs +129 -0
  1108. package/selection/range.js +173 -0
  1109. package/selection/range.mjs +168 -0
  1110. package/selection/selection.js +802 -0
  1111. package/selection/selection.mjs +796 -0
  1112. package/selection/transformation.js +169 -0
  1113. package/selection/transformation.mjs +163 -0
  1114. package/selection/utils.js +256 -0
  1115. package/selection/utils.mjs +242 -0
  1116. package/settings.d.ts +210 -0
  1117. package/shortcuts/context.d.ts +20 -0
  1118. package/shortcuts/context.js +241 -0
  1119. package/shortcuts/context.mjs +236 -0
  1120. package/shortcuts/index.d.ts +1 -0
  1121. package/shortcuts/index.js +6 -0
  1122. package/shortcuts/index.mjs +1 -0
  1123. package/shortcuts/keyObserver.js +58 -0
  1124. package/shortcuts/keyObserver.mjs +54 -0
  1125. package/shortcuts/manager.d.ts +10 -0
  1126. package/shortcuts/manager.js +165 -0
  1127. package/shortcuts/manager.mjs +159 -0
  1128. package/shortcuts/recorder.js +165 -0
  1129. package/shortcuts/recorder.mjs +161 -0
  1130. package/shortcuts/utils.js +58 -0
  1131. package/shortcuts/utils.mjs +51 -0
  1132. package/tableView.js +1313 -0
  1133. package/tableView.mjs +1307 -0
  1134. package/translations/changesObservable/observable.js +175 -0
  1135. package/translations/changesObservable/observable.mjs +170 -0
  1136. package/translations/changesObservable/observer.js +100 -0
  1137. package/translations/changesObservable/observer.mjs +94 -0
  1138. package/translations/changesObservable/utils.js +50 -0
  1139. package/translations/changesObservable/utils.mjs +46 -0
  1140. package/translations/index.d.ts +1 -0
  1141. package/translations/index.js +29 -0
  1142. package/translations/index.mjs +4 -0
  1143. package/translations/indexMapper.d.ts +48 -0
  1144. package/translations/indexMapper.js +865 -0
  1145. package/translations/indexMapper.mjs +859 -0
  1146. package/translations/mapCollections/aggregatedCollection.js +139 -0
  1147. package/translations/mapCollections/aggregatedCollection.mjs +134 -0
  1148. package/translations/mapCollections/index.js +18 -0
  1149. package/translations/mapCollections/index.mjs +2 -0
  1150. package/translations/mapCollections/mapCollection.js +164 -0
  1151. package/translations/mapCollections/mapCollection.mjs +156 -0
  1152. package/translations/maps/hidingMap.js +63 -0
  1153. package/translations/maps/hidingMap.mjs +58 -0
  1154. package/translations/maps/index.js +59 -0
  1155. package/translations/maps/index.mjs +29 -0
  1156. package/translations/maps/indexMap.d.ts +10 -0
  1157. package/translations/maps/indexMap.js +203 -0
  1158. package/translations/maps/indexMap.mjs +197 -0
  1159. package/translations/maps/indexesSequence.js +82 -0
  1160. package/translations/maps/indexesSequence.mjs +77 -0
  1161. package/translations/maps/linkedPhysicalIndexToValueMap.js +216 -0
  1162. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +211 -0
  1163. package/translations/maps/physicalIndexToValueMap.js +76 -0
  1164. package/translations/maps/physicalIndexToValueMap.mjs +71 -0
  1165. package/translations/maps/trimmingMap.js +63 -0
  1166. package/translations/maps/trimmingMap.mjs +58 -0
  1167. package/translations/maps/utils/actionsOnIndexes.js +42 -0
  1168. package/translations/maps/utils/actionsOnIndexes.mjs +37 -0
  1169. package/translations/maps/utils/index.js +28 -0
  1170. package/translations/maps/utils/index.mjs +22 -0
  1171. package/translations/maps/utils/indexesSequence.js +52 -0
  1172. package/translations/maps/utils/indexesSequence.mjs +47 -0
  1173. package/translations/maps/utils/physicallyIndexed.js +61 -0
  1174. package/translations/maps/utils/physicallyIndexed.mjs +56 -0
  1175. package/utils/dataStructures/linkedList.js +263 -0
  1176. package/utils/dataStructures/linkedList.mjs +258 -0
  1177. package/utils/dataStructures/priorityMap.js +106 -0
  1178. package/utils/dataStructures/priorityMap.mjs +99 -0
  1179. package/utils/dataStructures/queue.js +83 -0
  1180. package/utils/dataStructures/queue.mjs +78 -0
  1181. package/utils/dataStructures/stack.js +83 -0
  1182. package/utils/dataStructures/stack.mjs +78 -0
  1183. package/utils/dataStructures/tree.js +254 -0
  1184. package/utils/dataStructures/tree.mjs +246 -0
  1185. package/utils/dataStructures/uniqueMap.js +144 -0
  1186. package/utils/dataStructures/uniqueMap.mjs +140 -0
  1187. package/utils/dataStructures/uniqueSet.js +78 -0
  1188. package/utils/dataStructures/uniqueSet.mjs +74 -0
  1189. package/utils/ghostTable.js +536 -0
  1190. package/utils/ghostTable.mjs +531 -0
  1191. package/utils/interval.js +134 -0
  1192. package/utils/interval.mjs +129 -0
  1193. package/utils/parseTable.d.ts +5 -0
  1194. package/utils/parseTable.js +305 -0
  1195. package/utils/parseTable.mjs +299 -0
  1196. package/utils/rootInstance.js +48 -0
  1197. package/utils/rootInstance.mjs +38 -0
  1198. package/utils/samplesGenerator.js +210 -0
  1199. package/utils/samplesGenerator.mjs +205 -0
  1200. package/utils/staticRegister.js +92 -0
  1201. package/utils/staticRegister.mjs +86 -0
  1202. package/validators/autocompleteValidator/autocompleteValidator.d.ts +5 -0
  1203. package/validators/autocompleteValidator/autocompleteValidator.js +56 -0
  1204. package/validators/autocompleteValidator/autocompleteValidator.mjs +50 -0
  1205. package/validators/autocompleteValidator/index.d.ts +1 -0
  1206. package/validators/autocompleteValidator/index.js +7 -0
  1207. package/validators/autocompleteValidator/index.mjs +1 -0
  1208. package/validators/base.d.ts +6 -0
  1209. package/validators/dateValidator/dateValidator.d.ts +5 -0
  1210. package/validators/dateValidator/dateValidator.js +77 -0
  1211. package/validators/dateValidator/dateValidator.mjs +69 -0
  1212. package/validators/dateValidator/index.d.ts +1 -0
  1213. package/validators/dateValidator/index.js +8 -0
  1214. package/validators/dateValidator/index.mjs +1 -0
  1215. package/validators/index.d.ts +33 -0
  1216. package/validators/index.js +32 -0
  1217. package/validators/index.mjs +16 -0
  1218. package/validators/numericValidator/index.d.ts +1 -0
  1219. package/validators/numericValidator/index.js +7 -0
  1220. package/validators/numericValidator/index.mjs +1 -0
  1221. package/validators/numericValidator/numericValidator.d.ts +5 -0
  1222. package/validators/numericValidator/numericValidator.js +30 -0
  1223. package/validators/numericValidator/numericValidator.mjs +24 -0
  1224. package/validators/registry.d.ts +18 -0
  1225. package/validators/registry.js +48 -0
  1226. package/validators/registry.mjs +38 -0
  1227. package/validators/timeValidator/index.d.ts +1 -0
  1228. package/validators/timeValidator/index.js +7 -0
  1229. package/validators/timeValidator/index.mjs +1 -0
  1230. package/validators/timeValidator/timeValidator.d.ts +5 -0
  1231. package/validators/timeValidator/timeValidator.js +66 -0
  1232. package/validators/timeValidator/timeValidator.mjs +60 -0
@@ -0,0 +1,865 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+ require("core-js/modules/es.reflect.construct.js");
5
+ require("core-js/modules/es.reflect.get.js");
6
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
7
+ require("core-js/modules/es.object.keys.js");
8
+ require("core-js/modules/es.array.index-of.js");
9
+ require("core-js/modules/es.symbol.js");
10
+ require("core-js/modules/es.array.filter.js");
11
+ require("core-js/modules/web.dom-collections.for-each.js");
12
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
13
+ require("core-js/modules/es.symbol.description.js");
14
+ require("core-js/modules/es.symbol.iterator.js");
15
+ require("core-js/modules/es.array.from.js");
16
+ require("core-js/modules/es.function.name.js");
17
+ require("core-js/modules/es.regexp.exec.js");
18
+ exports.__esModule = true;
19
+ exports.PLUGIN_PRIORITY = exports.PLUGIN_KEY = exports.ColumnSorting = void 0;
20
+ require("core-js/modules/es.array.sort.js");
21
+ require("core-js/modules/es.array.slice.js");
22
+ require("core-js/modules/es.object.to-string.js");
23
+ require("core-js/modules/es.number.is-integer.js");
24
+ require("core-js/modules/es.number.constructor.js");
25
+ require("core-js/modules/es.array.concat.js");
26
+ require("core-js/modules/es.object.get-prototype-of.js");
27
+ require("core-js/modules/es.object.assign.js");
28
+ require("core-js/modules/es.array.iterator.js");
29
+ require("core-js/modules/es.map.js");
30
+ require("core-js/modules/es.string.iterator.js");
31
+ require("core-js/modules/web.dom-collections.iterator.js");
32
+ require("core-js/modules/es.object.set-prototype-of.js");
33
+ var _element = require("../../helpers/dom/element");
34
+ var _mixed = require("../../helpers/mixed");
35
+ var _object = require("../../helpers/object");
36
+ var _function = require("../../helpers/function");
37
+ var _array = require("../../helpers/array");
38
+ var _base = require("../base");
39
+ var _translations = require("../../translations");
40
+ var _pluginHooks = _interopRequireDefault(require("../../pluginHooks"));
41
+ var _columnStatesManager = require("./columnStatesManager");
42
+ var _utils = require("./utils");
43
+ var _domHelpers = require("./domHelpers");
44
+ var _rootComparator = require("./rootComparator");
45
+ var _sortService = require("./sortService");
46
+ var _excluded = ["column"],
47
+ _excluded2 = ["column"];
48
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
49
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
50
+ 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."); }
51
+ 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); }
52
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
53
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
54
+ 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; }
55
+ 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; }
56
+ 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; }
57
+ 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; }
58
+ 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; }
59
+ 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; }
60
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
61
+ 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); } }
62
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
63
+ 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); }
64
+ function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
65
+ 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); }
66
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
67
+ 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); }; }
68
+ 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); }
69
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
70
+ 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; } }
71
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
72
+ var PLUGIN_KEY = 'columnSorting';
73
+ exports.PLUGIN_KEY = PLUGIN_KEY;
74
+ var PLUGIN_PRIORITY = 50;
75
+ exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
76
+ var APPEND_COLUMN_CONFIG_STRATEGY = 'append';
77
+ var REPLACE_COLUMN_CONFIG_STRATEGY = 'replace';
78
+ (0, _sortService.registerRootComparator)(PLUGIN_KEY, _rootComparator.rootComparator);
79
+ _pluginHooks.default.getSingleton().register('beforeColumnSort');
80
+ _pluginHooks.default.getSingleton().register('afterColumnSort');
81
+
82
+ // DIFF - MultiColumnSorting & ColumnSorting: changed configuration documentation.
83
+ /**
84
+ * @plugin ColumnSorting
85
+ * @class ColumnSorting
86
+ *
87
+ * @description
88
+ * This plugin sorts the view by columns (but does not sort the data source!). To enable the plugin, set the
89
+ * {@link Options#columnSorting} property to the correct value (see the examples below).
90
+ *
91
+ * @example
92
+ * ```js
93
+ * // as boolean
94
+ * columnSorting: true
95
+ *
96
+ * // as an object with initial sort config (sort ascending for column at index 1)
97
+ * columnSorting: {
98
+ * initialConfig: {
99
+ * column: 1,
100
+ * sortOrder: 'asc'
101
+ * }
102
+ * }
103
+ *
104
+ * // as an object which define specific sorting options for all columns
105
+ * columnSorting: {
106
+ * sortEmptyCells: true, // true = the table sorts empty cells, false = the table moves all empty cells to the end of the table (by default)
107
+ * indicator: true, // true = shows indicator for all columns (by default), false = don't show indicator for columns
108
+ * headerAction: true, // true = allow to click on the headers to sort (by default), false = turn off possibility to click on the headers to sort
109
+ * compareFunctionFactory: function(sortOrder, columnMeta) {
110
+ * return function(value, nextValue) {
111
+ * // Some value comparisons which will return -1, 0 or 1...
112
+ * }
113
+ * }
114
+ * }
115
+ *
116
+ * // as an object passed to the `column` property, allows specifying a custom options for the desired column.
117
+ * // please take a look at documentation of `column` property: https://handsontable.com/docs/Options.html#columns
118
+ * columns: [{
119
+ * columnSorting: {
120
+ * indicator: false, // disable indicator for the first column,
121
+ * sortEmptyCells: true,
122
+ * headerAction: false, // clicks on the first column won't sort
123
+ * compareFunctionFactory: function(sortOrder, columnMeta) {
124
+ * return function(value, nextValue) {
125
+ * return 0; // Custom compare function for the first column (don't sort)
126
+ * }
127
+ * }
128
+ * }
129
+ * }]
130
+ * ```
131
+ */
132
+ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
133
+ _inherits(ColumnSorting, _BasePlugin);
134
+ var _super = _createSuper(ColumnSorting);
135
+ function ColumnSorting(hotInstance) {
136
+ var _this;
137
+ _classCallCheck(this, ColumnSorting);
138
+ _this = _super.call(this, hotInstance);
139
+ /**
140
+ * Instance of column state manager.
141
+ *
142
+ * @private
143
+ * @type {null|ColumnStatesManager}
144
+ */
145
+ _this.columnStatesManager = null;
146
+ /**
147
+ * Cached column properties from plugin like i.e. `indicator`, `headerAction`.
148
+ *
149
+ * @private
150
+ * @type {null|PhysicalIndexToValueMap}
151
+ */
152
+ _this.columnMetaCache = null;
153
+ /**
154
+ * Main settings key designed for the plugin.
155
+ *
156
+ * @private
157
+ * @type {string}
158
+ */
159
+ _this.pluginKey = PLUGIN_KEY;
160
+ /**
161
+ * Plugin indexes cache.
162
+ *
163
+ * @private
164
+ * @type {null|IndexesSequence}
165
+ */
166
+ _this.indexesSequenceCache = null;
167
+ return _this;
168
+ }
169
+
170
+ /**
171
+ * Checks if the plugin is enabled in the Handsontable settings. This method is executed in {@link Hooks#beforeInit}
172
+ * hook and if it returns `true` then the {@link ColumnSorting#enablePlugin} method is called.
173
+ *
174
+ * @returns {boolean}
175
+ */
176
+ _createClass(ColumnSorting, [{
177
+ key: "isEnabled",
178
+ value: function isEnabled() {
179
+ return !!this.hot.getSettings()[this.pluginKey];
180
+ }
181
+
182
+ /**
183
+ * Enables the plugin functionality for this Handsontable instance.
184
+ */
185
+ }, {
186
+ key: "enablePlugin",
187
+ value: function enablePlugin() {
188
+ var _this2 = this;
189
+ if (this.enabled) {
190
+ return;
191
+ }
192
+ this.columnStatesManager = new _columnStatesManager.ColumnStatesManager(this.hot, "".concat(this.pluginKey, ".sortingStates"));
193
+ this.columnMetaCache = new _translations.PhysicalIndexToValueMap(function (physicalIndex) {
194
+ var visualIndex = _this2.hot.toVisualColumn(physicalIndex);
195
+ if (visualIndex === null) {
196
+ visualIndex = physicalIndex;
197
+ }
198
+ return _this2.getMergedPluginSettings(visualIndex);
199
+ });
200
+ this.hot.columnIndexMapper.registerMap("".concat(this.pluginKey, ".columnMeta"), this.columnMetaCache);
201
+ this.addHook('afterGetColHeader', function (column, TH) {
202
+ return _this2.onAfterGetColHeader(column, TH);
203
+ });
204
+ this.addHook('beforeOnCellMouseDown', function () {
205
+ return _this2.onBeforeOnCellMouseDown.apply(_this2, arguments);
206
+ });
207
+ this.addHook('afterOnCellMouseDown', function (event, target) {
208
+ return _this2.onAfterOnCellMouseDown(event, target);
209
+ });
210
+ this.addHook('afterInit', function () {
211
+ return _this2.loadOrSortBySettings();
212
+ });
213
+ this.addHook('afterLoadData', function () {
214
+ return _this2.onAfterLoadData.apply(_this2, arguments);
215
+ });
216
+
217
+ // TODO: Workaround? It should be refactored / described.
218
+ if (this.hot.view) {
219
+ this.loadOrSortBySettings();
220
+ }
221
+ _get(_getPrototypeOf(ColumnSorting.prototype), "enablePlugin", this).call(this);
222
+ }
223
+
224
+ /**
225
+ * Disables the plugin functionality for this Handsontable instance.
226
+ */
227
+ }, {
228
+ key: "disablePlugin",
229
+ value: function disablePlugin() {
230
+ var _this3 = this;
231
+ var clearColHeader = function clearColHeader(column, TH) {
232
+ var headerSpanElement = (0, _utils.getHeaderSpanElement)(TH);
233
+ if ((0, _utils.isFirstLevelColumnHeader)(column, TH) === false || headerSpanElement === null) {
234
+ return;
235
+ }
236
+ _this3.updateHeaderClasses(headerSpanElement);
237
+ };
238
+
239
+ // Changing header width and removing indicator.
240
+ this.hot.addHook('afterGetColHeader', clearColHeader);
241
+ this.hot.addHookOnce('afterViewRender', function () {
242
+ _this3.hot.removeHook('afterGetColHeader', clearColHeader);
243
+ });
244
+ this.hot.batchExecution(function () {
245
+ if (_this3.indexesSequenceCache !== null) {
246
+ _this3.hot.rowIndexMapper.setIndexesSequence(_this3.indexesSequenceCache.getValues());
247
+ _this3.hot.rowIndexMapper.unregisterMap(_this3.pluginKey);
248
+ }
249
+ }, true);
250
+ this.hot.columnIndexMapper.unregisterMap("".concat(this.pluginKey, ".columnMeta"));
251
+ this.columnStatesManager.destroy();
252
+ this.columnMetaCache = null;
253
+ this.columnStatesManager = null;
254
+ _get(_getPrototypeOf(ColumnSorting.prototype), "disablePlugin", this).call(this);
255
+ }
256
+
257
+ // DIFF - MultiColumnSorting & ColumnSorting: changed function documentation.
258
+ /**
259
+ * Sorts the table by chosen columns and orders.
260
+ *
261
+ * @param {undefined|object} sortConfig Single column sort configuration. The configuration object contains `column` and `sortOrder` properties.
262
+ * First of them contains visual column index, the second one contains sort order (`asc` for ascending, `desc` for descending).
263
+ *
264
+ * **Note**: Please keep in mind that every call of `sort` function set an entirely new sort order. Previous sort configs aren't preserved.
265
+ *
266
+ * @example
267
+ * ```js
268
+ * // sort ascending first visual column
269
+ * hot.getPlugin('columnSorting').sort({ column: 0, sortOrder: 'asc' });
270
+ * ```
271
+ *
272
+ * @fires Hooks#beforeColumnSort
273
+ * @fires Hooks#afterColumnSort
274
+ */
275
+ }, {
276
+ key: "sort",
277
+ value: function sort(sortConfig) {
278
+ var currentSortConfig = this.getSortConfig();
279
+
280
+ // We always pass configs defined as an array to `beforeColumnSort` and `afterColumnSort` hooks.
281
+ var destinationSortConfigs = this.getNormalizedSortConfigs(sortConfig);
282
+ var sortPossible = this.areValidSortConfigs(destinationSortConfigs);
283
+ var allowSort = this.hot.runHooks('beforeColumnSort', currentSortConfig, destinationSortConfigs, sortPossible);
284
+ if (allowSort === false) {
285
+ return;
286
+ }
287
+ if (currentSortConfig.length === 0 && this.indexesSequenceCache === null) {
288
+ this.indexesSequenceCache = this.hot.rowIndexMapper.registerMap(this.pluginKey, new _translations.IndexesSequence());
289
+ this.indexesSequenceCache.setValues(this.hot.rowIndexMapper.getIndexesSequence());
290
+ }
291
+ if (sortPossible) {
292
+ this.columnStatesManager.setSortStates(destinationSortConfigs);
293
+ this.sortByPresetSortStates(destinationSortConfigs);
294
+ this.saveAllSortSettings(destinationSortConfigs);
295
+ }
296
+ this.hot.runHooks('afterColumnSort', currentSortConfig, sortPossible ? destinationSortConfigs : currentSortConfig, sortPossible);
297
+ if (sortPossible) {
298
+ this.hot.render();
299
+ // TODO: Workaround? This triggers fast redraw. One test won't pass after removal.
300
+ // It should be refactored / described.
301
+ this.hot.forceFullRender = false;
302
+ this.hot.view.render();
303
+ }
304
+ }
305
+
306
+ /**
307
+ * Clear the sort performed on the table.
308
+ */
309
+ }, {
310
+ key: "clearSort",
311
+ value: function clearSort() {
312
+ this.sort([]);
313
+ }
314
+
315
+ /**
316
+ * Checks if the table is sorted (any column have to be sorted).
317
+ *
318
+ * @returns {boolean}
319
+ */
320
+ }, {
321
+ key: "isSorted",
322
+ value: function isSorted() {
323
+ return this.enabled && !this.columnStatesManager.isListOfSortedColumnsEmpty();
324
+ }
325
+
326
+ /**
327
+ * Get sort configuration for particular column or for all sorted columns. Objects contain `column` and `sortOrder` properties.
328
+ *
329
+ * **Note**: Please keep in mind that returned objects expose **visual** column index under the `column` key. They are handled by the `sort` function.
330
+ *
331
+ * @param {number} [column] Visual column index.
332
+ * @returns {undefined|object|Array}
333
+ */
334
+ }, {
335
+ key: "getSortConfig",
336
+ value: function getSortConfig(column) {
337
+ if ((0, _mixed.isDefined)(column)) {
338
+ return this.columnStatesManager.getColumnSortState(column);
339
+ }
340
+ return this.columnStatesManager.getSortStates();
341
+ }
342
+
343
+ /**
344
+ * @description
345
+ * 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.
346
+ * Note: Please keep in mind that this method doesn't re-render the table.
347
+ *
348
+ * @example
349
+ * ```js
350
+ * beforeColumnSort: function(currentSortConfig, destinationSortConfigs) {
351
+ * const columnSortPlugin = this.getPlugin('columnSorting');
352
+ *
353
+ * columnSortPlugin.setSortConfig(destinationSortConfigs);
354
+ *
355
+ * // const newData = ... // Calculated data set, ie. from an AJAX call.
356
+ *
357
+ * this.loadData(newData); // Load new data set and re-render the table.
358
+ *
359
+ * return false; // The blockade for the default sort action.
360
+ * }
361
+ * ```
362
+ *
363
+ * @param {undefined|object|Array} sortConfig Single column sort configuration or full sort configuration (for all sorted columns).
364
+ * The configuration object contains `column` and `sortOrder` properties. First of them contains visual column index, the second one contains
365
+ * sort order (`asc` for ascending, `desc` for descending).
366
+ */
367
+ }, {
368
+ key: "setSortConfig",
369
+ value: function setSortConfig(sortConfig) {
370
+ // We always set configs defined as an array.
371
+ var destinationSortConfigs = this.getNormalizedSortConfigs(sortConfig);
372
+ if (this.areValidSortConfigs(destinationSortConfigs)) {
373
+ this.columnStatesManager.setSortStates(destinationSortConfigs);
374
+ }
375
+ }
376
+
377
+ /**
378
+ * Get normalized sort configs.
379
+ *
380
+ * @private
381
+ * @param {object|Array} [sortConfig=[]] Single column sort configuration or full sort configuration (for all sorted columns).
382
+ * The configuration object contains `column` and `sortOrder` properties. First of them contains visual column index, the second one contains
383
+ * sort order (`asc` for ascending, `desc` for descending).
384
+ * @returns {Array}
385
+ */
386
+ }, {
387
+ key: "getNormalizedSortConfigs",
388
+ value: function getNormalizedSortConfigs() {
389
+ var sortConfig = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
390
+ if (Array.isArray(sortConfig)) {
391
+ return sortConfig.slice(0, 1);
392
+ }
393
+ return [sortConfig];
394
+ }
395
+
396
+ /**
397
+ * Get if sort configs are valid.
398
+ *
399
+ * @private
400
+ * @param {Array} sortConfigs Sort configuration for all sorted columns. Objects contain `column` and `sortOrder` properties.
401
+ * @returns {boolean}
402
+ */
403
+ }, {
404
+ key: "areValidSortConfigs",
405
+ value: function areValidSortConfigs(sortConfigs) {
406
+ var numberOfColumns = this.hot.countCols();
407
+
408
+ // We don't translate visual indexes to physical indexes.
409
+ return (0, _utils.areValidSortStates)(sortConfigs) && sortConfigs.every(function (_ref) {
410
+ var column = _ref.column;
411
+ return column <= numberOfColumns && column >= 0;
412
+ });
413
+ }
414
+
415
+ /**
416
+ * Saves all sorting settings. Saving works only when {@link Options#persistentState} option is enabled.
417
+ *
418
+ * @param {Array} sortConfigs Sort configuration for all sorted columns. Objects contain `column` and `sortOrder` properties.
419
+ *
420
+ * @private
421
+ * @fires Hooks#persistentStateSave
422
+ */
423
+ }, {
424
+ key: "saveAllSortSettings",
425
+ value: function saveAllSortSettings(sortConfigs) {
426
+ var _this4 = this;
427
+ var allSortSettings = this.columnStatesManager.getAllColumnsProperties();
428
+ var translateColumnToPhysical = function translateColumnToPhysical(_ref2) {
429
+ var visualColumn = _ref2.column,
430
+ restOfProperties = _objectWithoutProperties(_ref2, _excluded);
431
+ return _objectSpread({
432
+ column: _this4.hot.toPhysicalColumn(visualColumn)
433
+ }, restOfProperties);
434
+ };
435
+ allSortSettings.initialConfig = (0, _array.arrayMap)(sortConfigs, translateColumnToPhysical);
436
+ this.hot.runHooks('persistentStateSave', 'columnSorting', allSortSettings);
437
+ }
438
+
439
+ /**
440
+ * Get all saved sorting settings. Loading works only when {@link Options#persistentState} option is enabled.
441
+ *
442
+ * @private
443
+ * @returns {object} Previously saved sort settings.
444
+ *
445
+ * @fires Hooks#persistentStateLoad
446
+ */
447
+ }, {
448
+ key: "getAllSavedSortSettings",
449
+ value: function getAllSavedSortSettings() {
450
+ var _this5 = this;
451
+ var storedAllSortSettings = {};
452
+ this.hot.runHooks('persistentStateLoad', 'columnSorting', storedAllSortSettings);
453
+ var allSortSettings = storedAllSortSettings.value;
454
+ var translateColumnToVisual = function translateColumnToVisual(_ref3) {
455
+ var physicalColumn = _ref3.column,
456
+ restOfProperties = _objectWithoutProperties(_ref3, _excluded2);
457
+ return _objectSpread({
458
+ column: _this5.hot.toVisualColumn(physicalColumn)
459
+ }, restOfProperties);
460
+ };
461
+ if ((0, _mixed.isDefined)(allSortSettings) && Array.isArray(allSortSettings.initialConfig)) {
462
+ allSortSettings.initialConfig = (0, _array.arrayMap)(allSortSettings.initialConfig, translateColumnToVisual);
463
+ }
464
+ return allSortSettings;
465
+ }
466
+
467
+ /**
468
+ * Get next sort configuration for particular column. Object contain `column` and `sortOrder` properties.
469
+ *
470
+ * **Note**: Please keep in mind that returned object expose **visual** column index under the `column` key.
471
+ *
472
+ * @private
473
+ * @param {number} column Visual column index.
474
+ * @returns {undefined|object}
475
+ */
476
+ }, {
477
+ key: "getColumnNextConfig",
478
+ value: function getColumnNextConfig(column) {
479
+ var sortOrder = this.columnStatesManager.getSortOrderOfColumn(column);
480
+ if ((0, _mixed.isDefined)(sortOrder)) {
481
+ var nextSortOrder = (0, _utils.getNextSortOrder)(sortOrder);
482
+ if ((0, _mixed.isDefined)(nextSortOrder)) {
483
+ return {
484
+ column: column,
485
+ sortOrder: nextSortOrder
486
+ };
487
+ }
488
+ return;
489
+ }
490
+ var nrOfColumns = this.hot.countCols();
491
+ if (Number.isInteger(column) && column >= 0 && column < nrOfColumns) {
492
+ return {
493
+ column: column,
494
+ sortOrder: (0, _utils.getNextSortOrder)()
495
+ };
496
+ }
497
+ }
498
+
499
+ /**
500
+ * Get sort configuration with "next order" for particular column.
501
+ *
502
+ * @private
503
+ * @param {number} columnToChange Visual column index of column which order will be changed.
504
+ * @param {string} strategyId ID of strategy. Possible values: 'append' and 'replace'. The first one
505
+ * change order of particular column and change it's position in the sort queue to the last one. The second one
506
+ * just change order of particular column.
507
+ *
508
+ * **Note**: Please keep in mind that returned objects expose **visual** column index under the `column` key.
509
+ *
510
+ * @returns {Array}
511
+ */
512
+ }, {
513
+ key: "getNextSortConfig",
514
+ value: function getNextSortConfig(columnToChange) {
515
+ var strategyId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : APPEND_COLUMN_CONFIG_STRATEGY;
516
+ var indexOfColumnToChange = this.columnStatesManager.getIndexOfColumnInSortQueue(columnToChange);
517
+ var isColumnSorted = indexOfColumnToChange !== -1;
518
+ var currentSortConfig = this.getSortConfig();
519
+ var nextColumnConfig = this.getColumnNextConfig(columnToChange);
520
+ if (isColumnSorted) {
521
+ if ((0, _mixed.isUndefined)(nextColumnConfig)) {
522
+ return [].concat(_toConsumableArray(currentSortConfig.slice(0, indexOfColumnToChange)), _toConsumableArray(currentSortConfig.slice(indexOfColumnToChange + 1)));
523
+ }
524
+ if (strategyId === APPEND_COLUMN_CONFIG_STRATEGY) {
525
+ return [].concat(_toConsumableArray(currentSortConfig.slice(0, indexOfColumnToChange)), _toConsumableArray(currentSortConfig.slice(indexOfColumnToChange + 1)), [nextColumnConfig]);
526
+ } else if (strategyId === REPLACE_COLUMN_CONFIG_STRATEGY) {
527
+ return [].concat(_toConsumableArray(currentSortConfig.slice(0, indexOfColumnToChange)), [nextColumnConfig], _toConsumableArray(currentSortConfig.slice(indexOfColumnToChange + 1)));
528
+ }
529
+ }
530
+ if ((0, _mixed.isDefined)(nextColumnConfig)) {
531
+ return currentSortConfig.concat(nextColumnConfig);
532
+ }
533
+ return currentSortConfig;
534
+ }
535
+
536
+ /**
537
+ * Get plugin's column config for the specified column index.
538
+ *
539
+ * @private
540
+ * @param {object} columnConfig Configuration inside `columns` property for the specified column index.
541
+ * @returns {object}
542
+ */
543
+ }, {
544
+ key: "getPluginColumnConfig",
545
+ value: function getPluginColumnConfig(columnConfig) {
546
+ if ((0, _object.isObject)(columnConfig)) {
547
+ var pluginColumnConfig = columnConfig[this.pluginKey];
548
+ if ((0, _object.isObject)(pluginColumnConfig)) {
549
+ return pluginColumnConfig;
550
+ }
551
+ }
552
+ return {};
553
+ }
554
+
555
+ /**
556
+ * Get plugin settings related properties, properly merged from cascade settings.
557
+ *
558
+ * @private
559
+ * @param {number} column Visual column index.
560
+ * @returns {object}
561
+ */
562
+ }, {
563
+ key: "getMergedPluginSettings",
564
+ value: function getMergedPluginSettings(column) {
565
+ var pluginMainSettings = this.hot.getSettings()[this.pluginKey];
566
+ var storedColumnProperties = this.columnStatesManager.getAllColumnsProperties();
567
+ var cellMeta = this.hot.getCellMeta(0, column);
568
+ var columnMeta = Object.getPrototypeOf(cellMeta);
569
+ if (Array.isArray(columnMeta.columns)) {
570
+ return Object.assign(storedColumnProperties, pluginMainSettings, this.getPluginColumnConfig(columnMeta.columns[column]));
571
+ } else if ((0, _function.isFunction)(columnMeta.columns)) {
572
+ return Object.assign(storedColumnProperties, pluginMainSettings, this.getPluginColumnConfig(columnMeta.columns(column)));
573
+ }
574
+ return Object.assign(storedColumnProperties, pluginMainSettings);
575
+ }
576
+
577
+ /**
578
+ * Get copy of settings for first cell in the column.
579
+ *
580
+ * @private
581
+ * @param {number} column Visual column index.
582
+ * @returns {object}
583
+ */
584
+ // TODO: Workaround. Inheriting of non-primitive cell meta values doesn't work. Instead of getting properties from column meta we call this function.
585
+ // TODO: Remove test named: "should not break the dataset when inserted new row" (#5431).
586
+ }, {
587
+ key: "getFirstCellSettings",
588
+ value: function getFirstCellSettings(column) {
589
+ var cellMeta = this.hot.getCellMeta(0, column);
590
+ var cellMetaCopy = Object.create(cellMeta);
591
+ cellMetaCopy[this.pluginKey] = this.columnMetaCache.getValueAtIndex(this.hot.toPhysicalColumn(column));
592
+ return cellMetaCopy;
593
+ }
594
+
595
+ /**
596
+ * Get number of rows which should be sorted.
597
+ *
598
+ * @private
599
+ * @param {number} numberOfRows Total number of displayed rows.
600
+ * @returns {number}
601
+ */
602
+ }, {
603
+ key: "getNumberOfRowsToSort",
604
+ value: function getNumberOfRowsToSort(numberOfRows) {
605
+ var settings = this.hot.getSettings();
606
+
607
+ // `maxRows` option doesn't take into account `minSpareRows` option in this case.
608
+ if (settings.maxRows <= numberOfRows) {
609
+ return settings.maxRows;
610
+ }
611
+ return numberOfRows - settings.minSpareRows;
612
+ }
613
+
614
+ /**
615
+ * Performs the sorting using a stable sort function basing on internal state of sorting.
616
+ *
617
+ * @param {Array} sortConfigs Sort configuration for all sorted columns. Objects contain `column` and `sortOrder` properties.
618
+ * @private
619
+ */
620
+ }, {
621
+ key: "sortByPresetSortStates",
622
+ value: function sortByPresetSortStates(sortConfigs) {
623
+ var _this6 = this;
624
+ if (sortConfigs.length === 0) {
625
+ this.hot.rowIndexMapper.setIndexesSequence(this.indexesSequenceCache.getValues());
626
+ return;
627
+ }
628
+ var indexesWithData = [];
629
+ var numberOfRows = this.hot.countRows();
630
+ var getDataForSortedColumns = function getDataForSortedColumns(visualRowIndex) {
631
+ return (0, _array.arrayMap)(sortConfigs, function (sortConfig) {
632
+ return _this6.hot.getDataAtCell(visualRowIndex, sortConfig.column);
633
+ });
634
+ };
635
+ for (var visualRowIndex = 0; visualRowIndex < this.getNumberOfRowsToSort(numberOfRows); visualRowIndex += 1) {
636
+ indexesWithData.push([this.hot.toPhysicalRow(visualRowIndex)].concat(getDataForSortedColumns(visualRowIndex)));
637
+ }
638
+ var indexesBefore = (0, _array.arrayMap)(indexesWithData, function (indexWithData) {
639
+ return indexWithData[0];
640
+ });
641
+ (0, _sortService.sort)(indexesWithData, this.pluginKey, (0, _array.arrayMap)(sortConfigs, function (sortConfig) {
642
+ return sortConfig.sortOrder;
643
+ }), (0, _array.arrayMap)(sortConfigs, function (sortConfig) {
644
+ return _this6.getFirstCellSettings(sortConfig.column);
645
+ }));
646
+
647
+ // Append spareRows
648
+ for (var _visualRowIndex = indexesWithData.length; _visualRowIndex < numberOfRows; _visualRowIndex += 1) {
649
+ indexesWithData.push([_visualRowIndex].concat(getDataForSortedColumns(_visualRowIndex)));
650
+ }
651
+ var indexesAfter = (0, _array.arrayMap)(indexesWithData, function (indexWithData) {
652
+ return indexWithData[0];
653
+ });
654
+ var indexMapping = new Map((0, _array.arrayMap)(indexesBefore, function (indexBefore, indexInsideArray) {
655
+ return [indexBefore, indexesAfter[indexInsideArray]];
656
+ }));
657
+ var newIndexesSequence = (0, _array.arrayMap)(this.hot.rowIndexMapper.getIndexesSequence(), function (physicalIndex) {
658
+ if (indexMapping.has(physicalIndex)) {
659
+ return indexMapping.get(physicalIndex);
660
+ }
661
+ return physicalIndex;
662
+ });
663
+ this.hot.rowIndexMapper.setIndexesSequence(newIndexesSequence);
664
+ }
665
+
666
+ /**
667
+ * Load saved settings or sort by predefined plugin configuration.
668
+ *
669
+ * @private
670
+ */
671
+ }, {
672
+ key: "loadOrSortBySettings",
673
+ value: function loadOrSortBySettings() {
674
+ var storedAllSortSettings = this.getAllSavedSortSettings();
675
+ if ((0, _object.isObject)(storedAllSortSettings)) {
676
+ this.sortBySettings(storedAllSortSettings);
677
+ } else {
678
+ var allSortSettings = this.hot.getSettings()[this.pluginKey];
679
+ this.sortBySettings(allSortSettings);
680
+ }
681
+ }
682
+
683
+ /**
684
+ * Sort the table by provided configuration.
685
+ *
686
+ * @private
687
+ * @param {object} allSortSettings All sort config settings. Object may contain `initialConfig`, `indicator`,
688
+ * `sortEmptyCells`, `headerAction` and `compareFunctionFactory` properties.
689
+ */
690
+ }, {
691
+ key: "sortBySettings",
692
+ value: function sortBySettings(allSortSettings) {
693
+ if ((0, _object.isObject)(allSortSettings)) {
694
+ this.columnStatesManager.updateAllColumnsProperties(allSortSettings);
695
+ var initialConfig = allSortSettings.initialConfig;
696
+ if (Array.isArray(initialConfig) || (0, _object.isObject)(initialConfig)) {
697
+ this.sort(initialConfig);
698
+ }
699
+ } else {
700
+ // Extra render for headers. Their width may change.
701
+ this.hot.render();
702
+ }
703
+ }
704
+
705
+ /**
706
+ * Callback for the `onAfterGetColHeader` hook. Adds column sorting CSS classes.
707
+ *
708
+ * @private
709
+ * @param {number} column Visual column index.
710
+ * @param {Element} TH TH HTML element.
711
+ */
712
+ }, {
713
+ key: "onAfterGetColHeader",
714
+ value: function onAfterGetColHeader(column, TH) {
715
+ var headerSpanElement = (0, _utils.getHeaderSpanElement)(TH);
716
+ if ((0, _utils.isFirstLevelColumnHeader)(column, TH) === false || headerSpanElement === null) {
717
+ return;
718
+ }
719
+ var pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
720
+ var showSortIndicator = pluginSettingsForColumn.indicator;
721
+ var headerActionEnabled = pluginSettingsForColumn.headerAction;
722
+ this.updateHeaderClasses(headerSpanElement, this.columnStatesManager, column, showSortIndicator, headerActionEnabled);
723
+ }
724
+
725
+ /**
726
+ * Update header classes.
727
+ *
728
+ * @private
729
+ * @param {HTMLElement} headerSpanElement Header span element.
730
+ * @param {...*} args Extra arguments for helpers.
731
+ */
732
+ }, {
733
+ key: "updateHeaderClasses",
734
+ value: function updateHeaderClasses(headerSpanElement) {
735
+ (0, _element.removeClass)(headerSpanElement, (0, _domHelpers.getClassesToRemove)(headerSpanElement));
736
+ if (this.enabled !== false) {
737
+ for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
738
+ args[_key - 1] = arguments[_key];
739
+ }
740
+ (0, _element.addClass)(headerSpanElement, _domHelpers.getClassesToAdd.apply(void 0, args));
741
+ }
742
+ }
743
+
744
+ /**
745
+ * Overwriting base plugin's `onUpdateSettings` method. Please keep in mind that `onAfterUpdateSettings` isn't called
746
+ * for `updateSettings` in specific situations.
747
+ *
748
+ * @private
749
+ * @param {object} newSettings New settings object.
750
+ */
751
+ }, {
752
+ key: "onUpdateSettings",
753
+ value: function onUpdateSettings(newSettings) {
754
+ _get(_getPrototypeOf(ColumnSorting.prototype), "onUpdateSettings", this).call(this);
755
+ if (this.columnMetaCache !== null) {
756
+ // Column meta cache base on settings, thus we should re-init the map.
757
+ this.columnMetaCache.init(this.hot.columnIndexMapper.getNumberOfIndexes());
758
+ }
759
+ if ((0, _mixed.isDefined)(newSettings[this.pluginKey])) {
760
+ this.sortBySettings(newSettings[this.pluginKey]);
761
+ }
762
+ }
763
+
764
+ /**
765
+ * Callback for the `afterLoadData` hook.
766
+ *
767
+ * @private
768
+ * @param {boolean} initialLoad Flag that determines whether the data has been loaded during the initialization.
769
+ */
770
+ }, {
771
+ key: "onAfterLoadData",
772
+ value: function onAfterLoadData(initialLoad) {
773
+ if (initialLoad === true) {
774
+ // TODO: Workaround? It should be refactored / described.
775
+ if (this.hot.view) {
776
+ this.loadOrSortBySettings();
777
+ }
778
+ }
779
+ }
780
+
781
+ /**
782
+ * Indicates if clickable header was clicked.
783
+ *
784
+ * @private
785
+ * @param {MouseEvent} event The `mousedown` event.
786
+ * @param {number} column Visual column index.
787
+ * @returns {boolean}
788
+ */
789
+ }, {
790
+ key: "wasClickableHeaderClicked",
791
+ value: function wasClickableHeaderClicked(event, column) {
792
+ var pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
793
+ var headerActionEnabled = pluginSettingsForColumn.headerAction;
794
+ return headerActionEnabled && event.target.nodeName === 'SPAN';
795
+ }
796
+
797
+ /**
798
+ * Changes the behavior of selection / dragging.
799
+ *
800
+ * @private
801
+ * @param {MouseEvent} event The `mousedown` event.
802
+ * @param {CellCoords} coords Visual coordinates.
803
+ * @param {HTMLElement} TD The cell element.
804
+ * @param {object} controller An object with properties `row`, `column` and `cell`. Each property contains
805
+ * a boolean value that allows or disallows changing the selection for that particular area.
806
+ */
807
+ }, {
808
+ key: "onBeforeOnCellMouseDown",
809
+ value: function onBeforeOnCellMouseDown(event, coords, TD, controller) {
810
+ if ((0, _utils.wasHeaderClickedProperly)(coords.row, coords.col, event) === false) {
811
+ return;
812
+ }
813
+ if (this.wasClickableHeaderClicked(event, coords.col) && this.hot.getShortcutManager().isCtrlPressed()) {
814
+ controller.column = true;
815
+ }
816
+ }
817
+
818
+ /**
819
+ * Callback for the `onAfterOnCellMouseDown` hook.
820
+ *
821
+ * @private
822
+ * @param {Event} event Event which are provided by hook.
823
+ * @param {CellCoords} coords Visual coords of the selected cell.
824
+ */
825
+ }, {
826
+ key: "onAfterOnCellMouseDown",
827
+ value: function onAfterOnCellMouseDown(event, coords) {
828
+ if ((0, _utils.wasHeaderClickedProperly)(coords.row, coords.col, event) === false) {
829
+ return;
830
+ }
831
+ if (this.wasClickableHeaderClicked(event, coords.col)) {
832
+ if (this.hot.getShortcutManager().isCtrlPressed()) {
833
+ this.hot.deselectCell();
834
+ this.hot.selectColumns(coords.col);
835
+ }
836
+ this.sort(this.getColumnNextConfig(coords.col));
837
+ }
838
+ }
839
+
840
+ /**
841
+ * Destroys the plugin instance.
842
+ */
843
+ }, {
844
+ key: "destroy",
845
+ value: function destroy() {
846
+ var _this$columnStatesMan;
847
+ // TODO: Probably not supported yet by ESLint: https://github.com/eslint/eslint/issues/11045
848
+ // eslint-disable-next-line no-unused-expressions
849
+ (_this$columnStatesMan = this.columnStatesManager) === null || _this$columnStatesMan === void 0 ? void 0 : _this$columnStatesMan.destroy();
850
+ _get(_getPrototypeOf(ColumnSorting.prototype), "destroy", this).call(this);
851
+ }
852
+ }], [{
853
+ key: "PLUGIN_KEY",
854
+ get: function get() {
855
+ return PLUGIN_KEY;
856
+ }
857
+ }, {
858
+ key: "PLUGIN_PRIORITY",
859
+ get: function get() {
860
+ return PLUGIN_PRIORITY;
861
+ }
862
+ }]);
863
+ return ColumnSorting;
864
+ }(_base.BasePlugin);
865
+ exports.ColumnSorting = ColumnSorting;