handsontable 9.0.1 → 11.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (757) hide show
  1. package/3rdparty/autoResize/autoResize.js +2 -0
  2. package/3rdparty/autoResize/autoResize.mjs +1 -0
  3. package/3rdparty/walkontable/src/border.js +3 -1
  4. package/3rdparty/walkontable/src/border.mjs +2 -1
  5. package/3rdparty/walkontable/src/calculator/constants.js +1 -1
  6. package/3rdparty/walkontable/src/calculator/index.js +2 -0
  7. package/3rdparty/walkontable/src/calculator/viewportColumns.d.ts +18 -0
  8. package/3rdparty/walkontable/src/cell/coords.d.ts +16 -0
  9. package/3rdparty/walkontable/src/cell/range.d.ts +51 -0
  10. package/3rdparty/walkontable/src/index.d.ts +1 -0
  11. package/3rdparty/walkontable/src/overlay/bottom.js +3 -3
  12. package/3rdparty/walkontable/src/overlay/bottom.mjs +2 -2
  13. package/3rdparty/walkontable/src/overlay/bottomLeftCorner.js +3 -3
  14. package/3rdparty/walkontable/src/overlay/bottomLeftCorner.mjs +2 -2
  15. package/3rdparty/walkontable/src/overlay/constants.js +1 -1
  16. package/3rdparty/walkontable/src/overlay/index.js +2 -0
  17. package/3rdparty/walkontable/src/overlay/left.js +3 -3
  18. package/3rdparty/walkontable/src/overlay/left.mjs +2 -2
  19. package/3rdparty/walkontable/src/overlay/registerer.js +1 -1
  20. package/3rdparty/walkontable/src/overlay/top.js +3 -3
  21. package/3rdparty/walkontable/src/overlay/top.mjs +2 -2
  22. package/3rdparty/walkontable/src/overlay/topLeftCorner.js +3 -3
  23. package/3rdparty/walkontable/src/overlay/topLeftCorner.mjs +2 -2
  24. package/3rdparty/walkontable/src/overlays.js +2 -0
  25. package/3rdparty/walkontable/src/overlays.mjs +1 -0
  26. package/3rdparty/walkontable/src/renderer/cells.js +1 -1
  27. package/3rdparty/walkontable/src/renderer/cells.mjs +1 -1
  28. package/3rdparty/walkontable/src/renderer/colGroup.js +3 -3
  29. package/3rdparty/walkontable/src/renderer/colGroup.mjs +2 -2
  30. package/3rdparty/walkontable/src/renderer/columnHeaders.js +3 -3
  31. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +2 -2
  32. package/3rdparty/walkontable/src/renderer/rowHeaders.js +1 -1
  33. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +1 -1
  34. package/3rdparty/walkontable/src/renderer/rows.js +3 -3
  35. package/3rdparty/walkontable/src/renderer/rows.mjs +2 -2
  36. package/3rdparty/walkontable/src/selection.js +5 -3
  37. package/3rdparty/walkontable/src/selection.mjs +3 -2
  38. package/3rdparty/walkontable/src/table/bottom.js +3 -3
  39. package/3rdparty/walkontable/src/table/bottom.mjs +2 -2
  40. package/3rdparty/walkontable/src/table/bottomLeftCorner.js +3 -3
  41. package/3rdparty/walkontable/src/table/bottomLeftCorner.mjs +2 -2
  42. package/3rdparty/walkontable/src/table/left.js +3 -3
  43. package/3rdparty/walkontable/src/table/left.mjs +2 -2
  44. package/3rdparty/walkontable/src/table/master.js +3 -3
  45. package/3rdparty/walkontable/src/table/master.mjs +2 -2
  46. package/3rdparty/walkontable/src/table/top.js +3 -3
  47. package/3rdparty/walkontable/src/table/top.mjs +2 -2
  48. package/3rdparty/walkontable/src/table/topLeftCorner.js +3 -3
  49. package/3rdparty/walkontable/src/table/topLeftCorner.mjs +2 -2
  50. package/3rdparty/walkontable/src/table.js +5 -3
  51. package/3rdparty/walkontable/src/table.mjs +3 -2
  52. package/3rdparty/walkontable/src/utils/orderView/constants.js +1 -1
  53. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +3 -3
  54. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +2 -2
  55. package/CHANGELOG.md +72 -0
  56. package/LICENSE.txt +19 -22
  57. package/README.md +2 -1
  58. package/base.d.ts +1 -1
  59. package/base.js +16 -3
  60. package/base.mjs +14 -4
  61. package/cellTypes/autocompleteType/autocompleteType.d.ts +17 -0
  62. package/cellTypes/autocompleteType/autocompleteType.js +1 -1
  63. package/cellTypes/autocompleteType/index.d.ts +1 -0
  64. package/cellTypes/base.d.ts +14 -0
  65. package/cellTypes/checkboxType/checkboxType.d.ts +14 -0
  66. package/cellTypes/checkboxType/index.d.ts +1 -0
  67. package/cellTypes/dateType/dateType.d.ts +17 -0
  68. package/cellTypes/dateType/index.d.ts +1 -0
  69. package/cellTypes/dropdownType/dropdownType.d.ts +17 -0
  70. package/cellTypes/dropdownType/index.d.ts +1 -0
  71. package/cellTypes/handsontableType/handsontableType.d.ts +14 -0
  72. package/cellTypes/handsontableType/index.d.ts +1 -0
  73. package/cellTypes/index.d.ts +47 -0
  74. package/cellTypes/index.js +18 -2
  75. package/cellTypes/index.mjs +26 -9
  76. package/cellTypes/numericType/index.d.ts +1 -0
  77. package/cellTypes/numericType/numericType.d.ts +17 -0
  78. package/cellTypes/passwordType/index.d.ts +1 -0
  79. package/cellTypes/passwordType/passwordType.d.ts +14 -0
  80. package/cellTypes/registry.d.ts +18 -0
  81. package/cellTypes/registry.js +2 -2
  82. package/cellTypes/textType/index.d.ts +1 -0
  83. package/cellTypes/textType/textType.d.ts +14 -0
  84. package/cellTypes/timeType/index.d.ts +1 -0
  85. package/cellTypes/timeType/timeType.d.ts +17 -0
  86. package/common.d.ts +74 -0
  87. package/core.d.ts +159 -0
  88. package/core.js +143 -103
  89. package/core.mjs +141 -103
  90. package/{dataMap.js → dataMap/dataMap.js} +37 -35
  91. package/{dataMap.mjs → dataMap/dataMap.mjs} +37 -35
  92. package/dataMap/index.js +5 -1
  93. package/dataMap/index.mjs +3 -2
  94. package/dataMap/metaManager/index.js +54 -6
  95. package/dataMap/metaManager/index.mjs +51 -6
  96. package/dataMap/metaManager/lazyFactoryMap.js +3 -3
  97. package/dataMap/metaManager/lazyFactoryMap.mjs +3 -3
  98. package/dataMap/metaManager/metaLayers/cellMeta.js +2 -0
  99. package/dataMap/metaManager/metaLayers/cellMeta.mjs +1 -0
  100. package/dataMap/metaManager/metaLayers/globalMeta.js +2 -1
  101. package/dataMap/metaManager/metaLayers/globalMeta.mjs +2 -1
  102. package/dataMap/metaManager/metaSchema.js +2331 -871
  103. package/dataMap/metaManager/metaSchema.mjs +2331 -871
  104. package/dataMap/metaManager/mods/dynamicCellMeta.js +136 -0
  105. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +119 -0
  106. package/dataMap/metaManager/utils.js +3 -3
  107. package/dataSource.js +2 -0
  108. package/dataSource.mjs +1 -0
  109. package/dist/handsontable.css +309 -303
  110. package/dist/handsontable.full.css +309 -303
  111. package/dist/handsontable.full.js +50435 -45020
  112. package/dist/handsontable.full.min.css +25 -28
  113. package/dist/handsontable.full.min.js +181 -164
  114. package/dist/handsontable.js +31234 -28030
  115. package/dist/handsontable.min.css +25 -28
  116. package/dist/handsontable.min.js +22 -25
  117. package/editorManager.js +15 -12
  118. package/editorManager.mjs +15 -13
  119. package/editors/autocompleteEditor/autocompleteEditor.d.ts +29 -0
  120. package/editors/autocompleteEditor/autocompleteEditor.js +91 -87
  121. package/editors/autocompleteEditor/autocompleteEditor.mjs +89 -84
  122. package/editors/autocompleteEditor/index.d.ts +1 -0
  123. package/editors/autocompleteEditor/index.js +1 -1
  124. package/editors/baseEditor/baseEditor.d.ts +45 -0
  125. package/editors/baseEditor/baseEditor.js +8 -7
  126. package/editors/baseEditor/baseEditor.mjs +5 -5
  127. package/editors/baseEditor/index.d.ts +1 -0
  128. package/editors/baseEditor/index.js +1 -1
  129. package/editors/checkboxEditor/checkboxEditor.d.ts +12 -0
  130. package/editors/checkboxEditor/checkboxEditor.js +4 -4
  131. package/editors/checkboxEditor/checkboxEditor.mjs +2 -2
  132. package/editors/checkboxEditor/index.d.ts +1 -0
  133. package/editors/checkboxEditor/index.js +1 -1
  134. package/editors/dateEditor/dateEditor.d.ts +18 -0
  135. package/editors/dateEditor/dateEditor.js +20 -20
  136. package/editors/dateEditor/dateEditor.mjs +19 -19
  137. package/editors/dateEditor/index.d.ts +1 -0
  138. package/editors/dateEditor/index.js +1 -1
  139. package/editors/dropdownEditor/dropdownEditor.d.ts +7 -0
  140. package/editors/dropdownEditor/dropdownEditor.js +5 -5
  141. package/editors/dropdownEditor/dropdownEditor.mjs +3 -3
  142. package/editors/dropdownEditor/index.d.ts +1 -0
  143. package/editors/dropdownEditor/index.js +1 -1
  144. package/editors/handsontableEditor/handsontableEditor.d.ts +10 -0
  145. package/editors/handsontableEditor/handsontableEditor.js +4 -4
  146. package/editors/handsontableEditor/handsontableEditor.mjs +3 -3
  147. package/editors/handsontableEditor/index.d.ts +1 -0
  148. package/editors/index.d.ts +53 -0
  149. package/editors/index.js +19 -2
  150. package/editors/index.mjs +28 -10
  151. package/editors/numericEditor/index.d.ts +1 -0
  152. package/editors/numericEditor/numericEditor.d.ts +7 -0
  153. package/editors/numericEditor/numericEditor.js +3 -3
  154. package/editors/numericEditor/numericEditor.mjs +2 -2
  155. package/editors/passwordEditor/index.d.ts +1 -0
  156. package/editors/passwordEditor/passwordEditor.d.ts +7 -0
  157. package/editors/passwordEditor/passwordEditor.js +4 -4
  158. package/editors/passwordEditor/passwordEditor.mjs +3 -3
  159. package/editors/registry.d.ts +29 -0
  160. package/editors/registry.js +2 -2
  161. package/editors/selectEditor/index.d.ts +1 -0
  162. package/editors/selectEditor/selectEditor.d.ts +16 -0
  163. package/editors/selectEditor/selectEditor.js +4 -4
  164. package/editors/selectEditor/selectEditor.mjs +3 -3
  165. package/editors/textEditor/index.d.ts +1 -0
  166. package/editors/textEditor/textEditor.d.ts +24 -0
  167. package/editors/textEditor/textEditor.js +4 -4
  168. package/editors/textEditor/textEditor.mjs +3 -3
  169. package/eventManager.d.ts +13 -0
  170. package/eventManager.js +1 -1
  171. package/handsontable-non-commercial-license.pdf +0 -0
  172. package/helpers/array.d.ts +18 -0
  173. package/helpers/array.js +10 -10
  174. package/helpers/array.mjs +1 -1
  175. package/helpers/browser.d.ts +25 -0
  176. package/helpers/browser.js +11 -9
  177. package/helpers/browser.mjs +1 -0
  178. package/helpers/console.d.ts +4 -0
  179. package/helpers/console.js +2 -2
  180. package/helpers/data.d.ts +13 -0
  181. package/helpers/data.js +7 -35
  182. package/helpers/data.mjs +1 -27
  183. package/helpers/date.d.ts +1 -0
  184. package/helpers/dom/element.d.ts +49 -0
  185. package/helpers/dom/element.js +44 -45
  186. package/helpers/dom/element.mjs +7 -8
  187. package/helpers/dom/event.d.ts +4 -0
  188. package/helpers/dom/event.js +2 -2
  189. package/helpers/dom/index.d.ts +2 -0
  190. package/helpers/feature.d.ts +11 -0
  191. package/helpers/feature.js +6 -6
  192. package/helpers/function.d.ts +10 -0
  193. package/helpers/function.js +43 -5
  194. package/helpers/function.mjs +35 -0
  195. package/helpers/index.d.ts +14 -0
  196. package/helpers/mixed.d.ts +5 -0
  197. package/helpers/mixed.js +5 -5
  198. package/helpers/mixed.mjs +2 -2
  199. package/helpers/number.d.ts +5 -0
  200. package/helpers/number.js +96 -17
  201. package/helpers/number.mjs +85 -17
  202. package/helpers/object.d.ts +16 -0
  203. package/helpers/object.js +11 -11
  204. package/helpers/string.d.ts +7 -0
  205. package/helpers/string.js +4 -4
  206. package/helpers/templateLiteralTag.d.ts +1 -0
  207. package/helpers/unicode.d.ts +73 -0
  208. package/helpers/unicode.js +49 -33
  209. package/helpers/unicode.mjs +44 -27
  210. package/i18n/constants.js +1 -1
  211. package/i18n/index.d.ts +2 -0
  212. package/i18n/index.js +2 -0
  213. package/i18n/languages/de-CH.d.ts +5 -0
  214. package/i18n/languages/de-DE.d.ts +5 -0
  215. package/i18n/languages/en-US.d.ts +5 -0
  216. package/i18n/languages/es-MX.d.ts +5 -0
  217. package/i18n/languages/fr-FR.d.ts +5 -0
  218. package/i18n/languages/index.d.ts +35 -0
  219. package/i18n/languages/it-IT.d.ts +5 -0
  220. package/i18n/languages/ja-JP.d.ts +5 -0
  221. package/i18n/languages/ko-KR.d.ts +5 -0
  222. package/i18n/languages/lv-LV.d.ts +5 -0
  223. package/i18n/languages/nb-NO.d.ts +5 -0
  224. package/i18n/languages/nl-NL.d.ts +5 -0
  225. package/i18n/languages/pl-PL.d.ts +5 -0
  226. package/i18n/languages/pt-BR.d.ts +5 -0
  227. package/i18n/languages/ru-RU.d.ts +5 -0
  228. package/i18n/languages/zh-CN.d.ts +5 -0
  229. package/i18n/languages/zh-TW.d.ts +5 -0
  230. package/i18n/phraseFormatters/index.js +1 -1
  231. package/i18n/registry.d.ts +13 -0
  232. package/i18n/registry.js +4 -4
  233. package/i18n/utils.js +1 -1
  234. package/index.d.ts +516 -0
  235. package/index.js +40 -112
  236. package/index.mjs +17 -90
  237. package/mixins/localHooks.js +17 -14
  238. package/mixins/localHooks.mjs +16 -13
  239. package/package.json +103 -10
  240. package/pluginHooks.d.ts +255 -0
  241. package/pluginHooks.js +132 -57
  242. package/pluginHooks.mjs +131 -57
  243. package/plugins/autoColumnSize/autoColumnSize.d.ts +27 -0
  244. package/plugins/autoColumnSize/autoColumnSize.js +20 -13
  245. package/plugins/autoColumnSize/autoColumnSize.mjs +18 -12
  246. package/plugins/autoColumnSize/index.d.ts +1 -0
  247. package/plugins/autoColumnSize/index.js +1 -1
  248. package/plugins/autoRowSize/autoRowSize.d.ts +27 -0
  249. package/plugins/autoRowSize/autoRowSize.js +22 -14
  250. package/plugins/autoRowSize/autoRowSize.mjs +19 -12
  251. package/plugins/autoRowSize/index.d.ts +1 -0
  252. package/plugins/autoRowSize/index.js +1 -1
  253. package/plugins/autofill/autofill.d.ts +18 -0
  254. package/plugins/autofill/autofill.js +10 -19
  255. package/plugins/autofill/autofill.mjs +7 -16
  256. package/plugins/autofill/index.d.ts +1 -0
  257. package/plugins/autofill/index.js +1 -1
  258. package/plugins/autofill/utils.js +1 -1
  259. package/plugins/base/base.d.ts +21 -0
  260. package/plugins/base/base.js +2 -2
  261. package/plugins/base/base.mjs +1 -1
  262. package/plugins/base/index.d.ts +1 -0
  263. package/plugins/base/index.js +1 -1
  264. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.d.ts +9 -0
  265. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +4 -3
  266. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +3 -2
  267. package/plugins/bindRowsWithHeaders/index.d.ts +1 -0
  268. package/plugins/bindRowsWithHeaders/index.js +1 -1
  269. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +4 -4
  270. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +3 -3
  271. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +6 -4
  272. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +4 -3
  273. package/plugins/collapsibleColumns/collapsibleColumns.d.ts +22 -0
  274. package/plugins/collapsibleColumns/collapsibleColumns.js +13 -6
  275. package/plugins/collapsibleColumns/collapsibleColumns.mjs +11 -5
  276. package/plugins/collapsibleColumns/index.d.ts +1 -0
  277. package/plugins/collapsibleColumns/index.js +1 -1
  278. package/plugins/columnSorting/columnSorting.d.ts +30 -0
  279. package/plugins/columnSorting/columnSorting.js +19 -14
  280. package/plugins/columnSorting/columnSorting.mjs +16 -12
  281. package/plugins/columnSorting/columnStatesManager.js +5 -3
  282. package/plugins/columnSorting/columnStatesManager.mjs +4 -3
  283. package/plugins/columnSorting/index.d.ts +1 -0
  284. package/plugins/columnSorting/index.js +1 -1
  285. package/plugins/columnSorting/rootComparator.js +2 -0
  286. package/plugins/columnSorting/rootComparator.mjs +1 -0
  287. package/plugins/columnSorting/sortFunction/checkbox.js +1 -1
  288. package/plugins/columnSorting/sortFunction/date.js +1 -1
  289. package/plugins/columnSorting/sortFunction/default.js +4 -3
  290. package/plugins/columnSorting/sortFunction/default.mjs +3 -2
  291. package/plugins/columnSorting/sortFunction/numeric.js +1 -1
  292. package/plugins/columnSorting/sortService/engine.js +1 -1
  293. package/plugins/columnSorting/sortService/registry.js +1 -1
  294. package/plugins/columnSorting/utils.js +4 -4
  295. package/plugins/columnSorting/utils.mjs +1 -1
  296. package/plugins/columnSummary/columnSummary.d.ts +72 -0
  297. package/plugins/columnSummary/columnSummary.js +31 -12
  298. package/plugins/columnSummary/columnSummary.mjs +29 -10
  299. package/plugins/columnSummary/endpoints.js +6 -4
  300. package/plugins/columnSummary/endpoints.mjs +5 -4
  301. package/plugins/columnSummary/index.d.ts +1 -0
  302. package/plugins/columnSummary/index.js +1 -1
  303. package/plugins/comments/commentEditor.js +1 -1
  304. package/plugins/comments/commentEditor.mjs +1 -1
  305. package/plugins/comments/comments.d.ts +50 -0
  306. package/plugins/comments/comments.js +11 -6
  307. package/plugins/comments/comments.mjs +10 -5
  308. package/plugins/comments/displaySwitch.js +1 -1
  309. package/plugins/comments/displaySwitch.mjs +1 -1
  310. package/plugins/comments/index.d.ts +1 -0
  311. package/plugins/comments/index.js +1 -1
  312. package/plugins/contextMenu/commandExecutor.js +1 -1
  313. package/plugins/contextMenu/commandExecutor.mjs +1 -1
  314. package/plugins/contextMenu/contextMenu.d.ts +65 -0
  315. package/plugins/contextMenu/contextMenu.js +8 -7
  316. package/plugins/contextMenu/contextMenu.mjs +6 -5
  317. package/plugins/contextMenu/cursor.js +1 -1
  318. package/plugins/contextMenu/cursor.mjs +1 -1
  319. package/plugins/contextMenu/index.d.ts +1 -0
  320. package/plugins/contextMenu/index.js +1 -1
  321. package/plugins/contextMenu/itemsFactory.js +1 -1
  322. package/plugins/contextMenu/itemsFactory.mjs +1 -1
  323. package/plugins/contextMenu/menu.js +4 -4
  324. package/plugins/contextMenu/menu.mjs +3 -3
  325. package/plugins/contextMenu/predefinedItems/alignment.js +1 -1
  326. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -1
  327. package/plugins/contextMenu/predefinedItems/columnLeft.js +1 -1
  328. package/plugins/contextMenu/predefinedItems/columnRight.js +1 -1
  329. package/plugins/contextMenu/predefinedItems/noItems.js +1 -1
  330. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -1
  331. package/plugins/contextMenu/predefinedItems/redo.js +1 -1
  332. package/plugins/contextMenu/predefinedItems/removeColumn.js +4 -2
  333. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +2 -1
  334. package/plugins/contextMenu/predefinedItems/removeRow.js +4 -2
  335. package/plugins/contextMenu/predefinedItems/removeRow.mjs +2 -1
  336. package/plugins/contextMenu/predefinedItems/rowAbove.js +1 -1
  337. package/plugins/contextMenu/predefinedItems/rowBelow.js +1 -1
  338. package/plugins/contextMenu/predefinedItems/separator.js +1 -1
  339. package/plugins/contextMenu/predefinedItems/undo.js +1 -1
  340. package/plugins/contextMenu/predefinedItems.js +2 -2
  341. package/plugins/contextMenu/utils.js +10 -10
  342. package/plugins/copyPaste/clipboardData.js +3 -0
  343. package/plugins/copyPaste/clipboardData.mjs +3 -0
  344. package/plugins/copyPaste/copyPaste.d.ts +35 -0
  345. package/plugins/copyPaste/copyPaste.js +13 -10
  346. package/plugins/copyPaste/copyPaste.mjs +11 -9
  347. package/plugins/copyPaste/focusableElement.js +1 -2
  348. package/plugins/copyPaste/focusableElement.mjs +1 -2
  349. package/plugins/copyPaste/index.d.ts +1 -0
  350. package/plugins/copyPaste/index.js +1 -1
  351. package/plugins/copyPaste/pasteEvent.js +3 -0
  352. package/plugins/copyPaste/pasteEvent.mjs +3 -0
  353. package/plugins/customBorders/customBorders.d.ts +38 -0
  354. package/plugins/customBorders/customBorders.js +11 -9
  355. package/plugins/customBorders/customBorders.mjs +8 -7
  356. package/plugins/customBorders/index.d.ts +1 -0
  357. package/plugins/customBorders/index.js +1 -1
  358. package/plugins/customBorders/utils.js +3 -3
  359. package/plugins/dragToScroll/dragToScroll.d.ts +15 -0
  360. package/plugins/dragToScroll/dragToScroll.js +5 -5
  361. package/plugins/dragToScroll/dragToScroll.mjs +3 -3
  362. package/plugins/dragToScroll/index.d.ts +1 -0
  363. package/plugins/dragToScroll/index.js +1 -1
  364. package/plugins/dropdownMenu/dropdownMenu.d.ts +24 -0
  365. package/plugins/dropdownMenu/dropdownMenu.js +9 -9
  366. package/plugins/dropdownMenu/dropdownMenu.mjs +7 -7
  367. package/plugins/dropdownMenu/index.d.ts +1 -0
  368. package/plugins/dropdownMenu/index.js +1 -1
  369. package/plugins/exportFile/dataProvider.js +3 -5
  370. package/plugins/exportFile/dataProvider.mjs +3 -5
  371. package/plugins/exportFile/exportFile.d.ts +12 -0
  372. package/plugins/exportFile/exportFile.js +6 -5
  373. package/plugins/exportFile/exportFile.mjs +4 -3
  374. package/plugins/exportFile/index.d.ts +1 -0
  375. package/plugins/exportFile/index.js +1 -1
  376. package/plugins/exportFile/typeFactory.js +2 -1
  377. package/plugins/exportFile/typeFactory.mjs +1 -0
  378. package/plugins/exportFile/types/_base.js +0 -1
  379. package/plugins/exportFile/types/_base.mjs +0 -1
  380. package/plugins/exportFile/types/csv.js +3 -4
  381. package/plugins/exportFile/types/csv.mjs +2 -3
  382. package/plugins/filters/component/_base.js +1 -1
  383. package/plugins/filters/component/_base.mjs +1 -1
  384. package/plugins/filters/component/actionBar.js +4 -4
  385. package/plugins/filters/component/actionBar.mjs +3 -3
  386. package/plugins/filters/component/condition.js +7 -5
  387. package/plugins/filters/component/condition.mjs +5 -4
  388. package/plugins/filters/component/operators.js +4 -4
  389. package/plugins/filters/component/operators.mjs +3 -3
  390. package/plugins/filters/component/value.js +13 -6
  391. package/plugins/filters/component/value.mjs +11 -5
  392. package/plugins/filters/condition/beginsWith.js +5 -3
  393. package/plugins/filters/condition/beginsWith.mjs +3 -2
  394. package/plugins/filters/condition/between.js +4 -2
  395. package/plugins/filters/condition/between.mjs +2 -1
  396. package/plugins/filters/condition/byValue.js +4 -2
  397. package/plugins/filters/condition/byValue.mjs +2 -1
  398. package/plugins/filters/condition/contains.js +5 -3
  399. package/plugins/filters/condition/contains.mjs +3 -2
  400. package/plugins/filters/condition/date/after.js +4 -2
  401. package/plugins/filters/condition/date/after.mjs +2 -1
  402. package/plugins/filters/condition/date/before.js +4 -2
  403. package/plugins/filters/condition/date/before.mjs +2 -1
  404. package/plugins/filters/condition/date/today.js +1 -1
  405. package/plugins/filters/condition/date/tomorrow.js +1 -1
  406. package/plugins/filters/condition/date/yesterday.js +1 -1
  407. package/plugins/filters/condition/empty.js +1 -1
  408. package/plugins/filters/condition/endsWith.js +5 -3
  409. package/plugins/filters/condition/endsWith.mjs +3 -2
  410. package/plugins/filters/condition/equal.js +5 -3
  411. package/plugins/filters/condition/equal.mjs +3 -2
  412. package/plugins/filters/condition/false.js +1 -1
  413. package/plugins/filters/condition/greaterThan.js +4 -2
  414. package/plugins/filters/condition/greaterThan.mjs +2 -1
  415. package/plugins/filters/condition/greaterThanOrEqual.js +4 -2
  416. package/plugins/filters/condition/greaterThanOrEqual.mjs +2 -1
  417. package/plugins/filters/condition/lessThan.js +4 -2
  418. package/plugins/filters/condition/lessThan.mjs +2 -1
  419. package/plugins/filters/condition/lessThanOrEqual.js +4 -2
  420. package/plugins/filters/condition/lessThanOrEqual.mjs +2 -1
  421. package/plugins/filters/condition/none.js +1 -1
  422. package/plugins/filters/condition/notBetween.js +1 -1
  423. package/plugins/filters/condition/notContains.js +1 -1
  424. package/plugins/filters/condition/notEmpty.js +1 -1
  425. package/plugins/filters/condition/notEqual.js +1 -1
  426. package/plugins/filters/condition/true.js +1 -1
  427. package/plugins/filters/conditionCollection.d.ts +32 -0
  428. package/plugins/filters/conditionCollection.js +8 -5
  429. package/plugins/filters/conditionCollection.mjs +6 -4
  430. package/plugins/filters/conditionRegisterer.js +1 -1
  431. package/plugins/filters/conditionUpdateObserver.d.ts +10 -0
  432. package/plugins/filters/conditionUpdateObserver.js +3 -1
  433. package/plugins/filters/conditionUpdateObserver.mjs +2 -1
  434. package/plugins/filters/constants.js +2 -1
  435. package/plugins/filters/constants.mjs +1 -0
  436. package/plugins/filters/dataFilter.js +1 -1
  437. package/plugins/filters/dataFilter.mjs +1 -1
  438. package/plugins/filters/filters.d.ts +56 -0
  439. package/plugins/filters/filters.js +19 -14
  440. package/plugins/filters/filters.mjs +17 -13
  441. package/plugins/filters/index.d.ts +1 -0
  442. package/plugins/filters/index.js +1 -1
  443. package/plugins/filters/logicalOperationRegisterer.js +1 -1
  444. package/plugins/filters/logicalOperations/conjunction.js +3 -3
  445. package/plugins/filters/logicalOperations/conjunction.mjs +1 -0
  446. package/plugins/filters/logicalOperations/disjunction.js +3 -3
  447. package/plugins/filters/logicalOperations/disjunction.mjs +1 -0
  448. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +3 -3
  449. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +1 -0
  450. package/plugins/filters/ui/_base.js +2 -3
  451. package/plugins/filters/ui/_base.mjs +2 -3
  452. package/plugins/filters/ui/input.js +3 -3
  453. package/plugins/filters/ui/input.mjs +3 -3
  454. package/plugins/filters/ui/link.js +3 -3
  455. package/plugins/filters/ui/link.mjs +3 -3
  456. package/plugins/filters/ui/multipleSelect.js +31 -5
  457. package/plugins/filters/ui/multipleSelect.mjs +30 -5
  458. package/plugins/filters/ui/radioInput.js +3 -3
  459. package/plugins/filters/ui/radioInput.mjs +3 -3
  460. package/plugins/filters/ui/select.js +3 -3
  461. package/plugins/filters/ui/select.mjs +3 -3
  462. package/plugins/filters/utils.js +3 -3
  463. package/plugins/formulas/engine/register.js +3 -3
  464. package/plugins/formulas/engine/settings.js +4 -4
  465. package/plugins/formulas/engine/settings.mjs +2 -3
  466. package/plugins/formulas/formulas.d.ts +31 -0
  467. package/plugins/formulas/formulas.js +286 -89
  468. package/plugins/formulas/formulas.mjs +279 -86
  469. package/plugins/formulas/index.d.ts +1 -0
  470. package/plugins/formulas/index.js +1 -1
  471. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +3 -1
  472. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +2 -1
  473. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +4 -2
  474. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +2 -1
  475. package/plugins/hiddenColumns/hiddenColumns.d.ts +21 -0
  476. package/plugins/hiddenColumns/hiddenColumns.js +37 -24
  477. package/plugins/hiddenColumns/hiddenColumns.mjs +36 -23
  478. package/plugins/hiddenColumns/index.d.ts +1 -0
  479. package/plugins/hiddenColumns/index.js +1 -1
  480. package/plugins/hiddenRows/contextMenuItem/hideRow.js +3 -1
  481. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +2 -1
  482. package/plugins/hiddenRows/contextMenuItem/showRow.js +4 -2
  483. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +2 -1
  484. package/plugins/hiddenRows/hiddenRows.d.ts +21 -0
  485. package/plugins/hiddenRows/hiddenRows.js +37 -25
  486. package/plugins/hiddenRows/hiddenRows.mjs +36 -24
  487. package/plugins/hiddenRows/index.d.ts +1 -0
  488. package/plugins/hiddenRows/index.js +1 -1
  489. package/plugins/index.d.ts +111 -0
  490. package/plugins/index.js +98 -58
  491. package/plugins/index.mjs +75 -34
  492. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +3 -1
  493. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +2 -1
  494. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +3 -1
  495. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +2 -1
  496. package/plugins/manualColumnFreeze/index.d.ts +1 -0
  497. package/plugins/manualColumnFreeze/index.js +1 -1
  498. package/plugins/manualColumnFreeze/manualColumnFreeze.d.ts +11 -0
  499. package/plugins/manualColumnFreeze/manualColumnFreeze.js +11 -6
  500. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +10 -5
  501. package/plugins/manualColumnMove/index.d.ts +1 -0
  502. package/plugins/manualColumnMove/index.js +1 -1
  503. package/plugins/manualColumnMove/manualColumnMove.d.ts +14 -0
  504. package/plugins/manualColumnMove/manualColumnMove.js +28 -23
  505. package/plugins/manualColumnMove/manualColumnMove.mjs +27 -22
  506. package/plugins/manualColumnMove/ui/_base.js +1 -1
  507. package/plugins/manualColumnMove/ui/_base.mjs +1 -1
  508. package/plugins/manualColumnMove/ui/backlight.js +4 -4
  509. package/plugins/manualColumnMove/ui/backlight.mjs +3 -3
  510. package/plugins/manualColumnMove/ui/guideline.js +4 -4
  511. package/plugins/manualColumnMove/ui/guideline.mjs +3 -3
  512. package/plugins/manualColumnResize/index.d.ts +1 -0
  513. package/plugins/manualColumnResize/index.js +1 -1
  514. package/plugins/manualColumnResize/manualColumnResize.d.ts +30 -0
  515. package/plugins/manualColumnResize/manualColumnResize.js +7 -6
  516. package/plugins/manualColumnResize/manualColumnResize.mjs +6 -5
  517. package/plugins/manualRowMove/index.d.ts +1 -0
  518. package/plugins/manualRowMove/index.js +1 -1
  519. package/plugins/manualRowMove/manualRowMove.d.ts +14 -0
  520. package/plugins/manualRowMove/manualRowMove.js +25 -22
  521. package/plugins/manualRowMove/manualRowMove.mjs +24 -21
  522. package/plugins/manualRowMove/ui/_base.js +1 -2
  523. package/plugins/manualRowMove/ui/_base.mjs +1 -2
  524. package/plugins/manualRowMove/ui/backlight.js +5 -5
  525. package/plugins/manualRowMove/ui/backlight.mjs +4 -4
  526. package/plugins/manualRowMove/ui/guideline.js +5 -5
  527. package/plugins/manualRowMove/ui/guideline.mjs +4 -4
  528. package/plugins/manualRowResize/index.d.ts +1 -0
  529. package/plugins/manualRowResize/index.js +1 -1
  530. package/plugins/manualRowResize/manualRowResize.d.ts +29 -0
  531. package/plugins/manualRowResize/manualRowResize.js +6 -5
  532. package/plugins/manualRowResize/manualRowResize.mjs +5 -4
  533. package/plugins/mergeCells/calculations/autofill.js +4 -3
  534. package/plugins/mergeCells/calculations/autofill.mjs +3 -3
  535. package/plugins/mergeCells/calculations/selection.js +1 -2
  536. package/plugins/mergeCells/calculations/selection.mjs +1 -2
  537. package/plugins/mergeCells/cellCoords.js +1 -1
  538. package/plugins/mergeCells/cellCoords.mjs +1 -1
  539. package/plugins/mergeCells/cellsCollection.js +5 -3
  540. package/plugins/mergeCells/cellsCollection.mjs +4 -3
  541. package/plugins/mergeCells/index.d.ts +1 -0
  542. package/plugins/mergeCells/index.js +1 -1
  543. package/plugins/mergeCells/mergeCells.d.ts +22 -0
  544. package/plugins/mergeCells/mergeCells.js +7 -4
  545. package/plugins/mergeCells/mergeCells.mjs +5 -3
  546. package/plugins/multiColumnSorting/domHelpers.js +2 -0
  547. package/plugins/multiColumnSorting/domHelpers.mjs +1 -0
  548. package/plugins/multiColumnSorting/index.d.ts +1 -0
  549. package/plugins/multiColumnSorting/index.js +1 -1
  550. package/plugins/multiColumnSorting/multiColumnSorting.d.ts +8 -0
  551. package/plugins/multiColumnSorting/multiColumnSorting.js +11 -8
  552. package/plugins/multiColumnSorting/multiColumnSorting.mjs +9 -6
  553. package/plugins/multiColumnSorting/rootComparator.js +2 -0
  554. package/plugins/multiColumnSorting/rootComparator.mjs +1 -0
  555. package/plugins/multipleSelectionHandles/index.d.ts +1 -0
  556. package/plugins/multipleSelectionHandles/index.js +1 -1
  557. package/plugins/multipleSelectionHandles/multipleSelectionHandles.d.ts +21 -0
  558. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +7 -5
  559. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +5 -3
  560. package/plugins/nestedHeaders/index.d.ts +1 -0
  561. package/plugins/nestedHeaders/index.js +1 -1
  562. package/plugins/nestedHeaders/nestedHeaders.d.ts +17 -0
  563. package/plugins/nestedHeaders/nestedHeaders.js +41 -21
  564. package/plugins/nestedHeaders/nestedHeaders.mjs +38 -19
  565. package/plugins/nestedHeaders/stateManager/headersTree.js +11 -5
  566. package/plugins/nestedHeaders/stateManager/headersTree.mjs +10 -5
  567. package/plugins/nestedHeaders/stateManager/index.js +9 -6
  568. package/plugins/nestedHeaders/stateManager/index.mjs +9 -6
  569. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +1 -1
  570. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +2 -0
  571. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +1 -0
  572. package/plugins/nestedHeaders/stateManager/sourceSettings.js +8 -4
  573. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +8 -4
  574. package/plugins/nestedHeaders/utils/ghostTable.js +10 -2
  575. package/plugins/nestedHeaders/utils/ghostTable.mjs +10 -2
  576. package/plugins/nestedRows/data/dataManager.js +40 -14
  577. package/plugins/nestedRows/data/dataManager.mjs +38 -13
  578. package/plugins/nestedRows/index.d.ts +1 -0
  579. package/plugins/nestedRows/index.js +1 -1
  580. package/plugins/nestedRows/nestedRows.d.ts +12 -0
  581. package/plugins/nestedRows/nestedRows.js +48 -34
  582. package/plugins/nestedRows/nestedRows.mjs +43 -32
  583. package/plugins/nestedRows/ui/_base.js +1 -2
  584. package/plugins/nestedRows/ui/_base.mjs +1 -2
  585. package/plugins/nestedRows/ui/collapsing.js +6 -5
  586. package/plugins/nestedRows/ui/collapsing.mjs +4 -4
  587. package/plugins/nestedRows/ui/contextMenu.js +2 -3
  588. package/plugins/nestedRows/ui/contextMenu.mjs +2 -3
  589. package/plugins/nestedRows/ui/headers.js +4 -5
  590. package/plugins/nestedRows/ui/headers.mjs +3 -4
  591. package/plugins/nestedRows/utils/rowMoveController.js +10 -9
  592. package/plugins/nestedRows/utils/rowMoveController.mjs +8 -8
  593. package/plugins/persistentState/index.d.ts +1 -0
  594. package/plugins/persistentState/persistentState.d.ts +13 -0
  595. package/plugins/persistentState/persistentState.js +13 -4
  596. package/plugins/persistentState/persistentState.mjs +12 -3
  597. package/plugins/persistentState/storage.js +1 -1
  598. package/plugins/persistentState/storage.mjs +1 -1
  599. package/plugins/registry.d.ts +9 -0
  600. package/plugins/registry.js +4 -2
  601. package/plugins/registry.mjs +2 -1
  602. package/plugins/search/index.d.ts +1 -0
  603. package/plugins/search/search.d.ts +28 -0
  604. package/plugins/search/search.js +7 -6
  605. package/plugins/search/search.mjs +7 -6
  606. package/plugins/touchScroll/index.d.ts +1 -0
  607. package/plugins/touchScroll/touchScroll.d.ts +13 -0
  608. package/plugins/touchScroll/touchScroll.js +9 -9
  609. package/plugins/touchScroll/touchScroll.mjs +8 -8
  610. package/plugins/trimRows/index.d.ts +1 -0
  611. package/plugins/trimRows/trimRows.d.ts +17 -0
  612. package/plugins/trimRows/trimRows.js +3 -2
  613. package/plugins/trimRows/trimRows.mjs +3 -2
  614. package/plugins/undoRedo/index.d.ts +1 -0
  615. package/plugins/undoRedo/undoRedo.d.ts +49 -0
  616. package/plugins/undoRedo/undoRedo.js +28 -30
  617. package/plugins/undoRedo/undoRedo.mjs +26 -29
  618. package/registry.d.ts +6 -0
  619. package/registry.js +46 -0
  620. package/registry.mjs +27 -0
  621. package/renderers/autocompleteRenderer/autocompleteRenderer.d.ts +5 -0
  622. package/renderers/autocompleteRenderer/autocompleteRenderer.js +1 -1
  623. package/renderers/autocompleteRenderer/index.d.ts +1 -0
  624. package/renderers/base.d.ts +3 -0
  625. package/renderers/baseRenderer/baseRenderer.d.ts +5 -0
  626. package/renderers/baseRenderer/baseRenderer.js +1 -1
  627. package/renderers/baseRenderer/index.d.ts +1 -0
  628. package/renderers/checkboxRenderer/checkboxRenderer.d.ts +5 -0
  629. package/renderers/checkboxRenderer/checkboxRenderer.js +3 -5
  630. package/renderers/checkboxRenderer/checkboxRenderer.mjs +3 -4
  631. package/renderers/checkboxRenderer/index.d.ts +1 -0
  632. package/renderers/htmlRenderer/htmlRenderer.d.ts +5 -0
  633. package/renderers/htmlRenderer/htmlRenderer.js +1 -1
  634. package/renderers/htmlRenderer/index.d.ts +1 -0
  635. package/renderers/index.d.ts +42 -0
  636. package/renderers/index.js +16 -2
  637. package/renderers/index.mjs +22 -7
  638. package/renderers/numericRenderer/index.d.ts +1 -0
  639. package/renderers/numericRenderer/numericRenderer.d.ts +5 -0
  640. package/renderers/numericRenderer/numericRenderer.js +1 -1
  641. package/renderers/passwordRenderer/index.d.ts +1 -0
  642. package/renderers/passwordRenderer/passwordRenderer.d.ts +5 -0
  643. package/renderers/passwordRenderer/passwordRenderer.js +1 -1
  644. package/renderers/registry.d.ts +18 -0
  645. package/renderers/registry.js +3 -2
  646. package/renderers/textRenderer/index.d.ts +1 -0
  647. package/renderers/textRenderer/textRenderer.d.ts +5 -0
  648. package/renderers/textRenderer/textRenderer.js +1 -1
  649. package/selection/highlight/constants.js +1 -1
  650. package/selection/highlight/highlight.js +7 -5
  651. package/selection/highlight/highlight.mjs +5 -4
  652. package/selection/highlight/types/activeHeader.js +2 -0
  653. package/selection/highlight/types/activeHeader.mjs +1 -0
  654. package/selection/highlight/types/area.js +2 -0
  655. package/selection/highlight/types/area.mjs +1 -0
  656. package/selection/highlight/types/cell.js +2 -0
  657. package/selection/highlight/types/cell.mjs +1 -0
  658. package/selection/highlight/types/customSelection.js +2 -0
  659. package/selection/highlight/types/customSelection.mjs +1 -0
  660. package/selection/highlight/types/fill.js +2 -0
  661. package/selection/highlight/types/fill.mjs +1 -0
  662. package/selection/highlight/types/header.js +2 -0
  663. package/selection/highlight/types/header.mjs +1 -0
  664. package/selection/highlight/types/index.js +2 -0
  665. package/selection/highlight/types/index.mjs +1 -0
  666. package/selection/highlight/visualSelection.js +7 -5
  667. package/selection/highlight/visualSelection.mjs +5 -4
  668. package/selection/index.d.ts +5 -0
  669. package/selection/index.js +2 -0
  670. package/selection/mouseEventHandler.js +4 -4
  671. package/selection/mouseEventHandler.mjs +3 -3
  672. package/selection/range.js +5 -5
  673. package/selection/range.mjs +4 -4
  674. package/selection/selection.js +18 -9
  675. package/selection/selection.mjs +17 -9
  676. package/selection/transformation.js +3 -2
  677. package/selection/transformation.mjs +3 -2
  678. package/selection/utils.js +6 -4
  679. package/selection/utils.mjs +3 -2
  680. package/settings.d.ts +208 -0
  681. package/tableView.js +20 -14
  682. package/tableView.mjs +19 -14
  683. package/translations/changesObservable/observable.js +10 -5
  684. package/translations/changesObservable/observable.mjs +10 -5
  685. package/translations/changesObservable/observer.js +6 -1
  686. package/translations/changesObservable/observer.mjs +6 -1
  687. package/translations/changesObservable/utils.js +1 -0
  688. package/translations/changesObservable/utils.mjs +1 -0
  689. package/translations/index.d.ts +1 -0
  690. package/translations/index.js +3 -1
  691. package/translations/indexMapper.d.ts +45 -0
  692. package/translations/indexMapper.js +8 -3
  693. package/translations/indexMapper.mjs +6 -2
  694. package/translations/mapCollections/aggregatedCollection.js +3 -3
  695. package/translations/mapCollections/aggregatedCollection.mjs +2 -2
  696. package/translations/mapCollections/index.js +2 -0
  697. package/translations/mapCollections/mapCollection.js +1 -1
  698. package/translations/maps/hidingMap.js +3 -3
  699. package/translations/maps/hidingMap.mjs +2 -2
  700. package/translations/maps/indexMap.d.ts +10 -0
  701. package/translations/maps/indexesSequence.js +4 -4
  702. package/translations/maps/indexesSequence.mjs +3 -3
  703. package/translations/maps/linkedPhysicalIndexToValueMap.js +4 -2
  704. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +3 -2
  705. package/translations/maps/physicalIndexToValueMap.js +4 -4
  706. package/translations/maps/physicalIndexToValueMap.mjs +3 -3
  707. package/translations/maps/trimmingMap.js +3 -3
  708. package/translations/maps/trimmingMap.mjs +2 -2
  709. package/translations/maps/utils/actionsOnIndexes.js +2 -0
  710. package/translations/maps/utils/actionsOnIndexes.mjs +1 -0
  711. package/translations/maps/utils/indexesSequence.js +2 -0
  712. package/translations/maps/utils/indexesSequence.mjs +1 -0
  713. package/translations/maps/utils/physicallyIndexed.js +2 -0
  714. package/translations/maps/utils/physicallyIndexed.mjs +1 -0
  715. package/utils/dataStructures/priorityMap.js +4 -2
  716. package/utils/dataStructures/priorityMap.mjs +2 -1
  717. package/utils/dataStructures/tree.js +3 -1
  718. package/utils/dataStructures/tree.mjs +1 -0
  719. package/utils/dataStructures/uniqueMap.js +3 -1
  720. package/utils/dataStructures/uniqueMap.mjs +2 -1
  721. package/utils/dataStructures/uniqueSet.js +2 -0
  722. package/utils/dataStructures/uniqueSet.mjs +1 -0
  723. package/utils/ghostTable.js +5 -4
  724. package/utils/ghostTable.mjs +3 -3
  725. package/utils/interval.js +1 -2
  726. package/utils/interval.mjs +0 -1
  727. package/utils/parseTable.d.ts +5 -0
  728. package/utils/parseTable.js +2 -2
  729. package/utils/parseTable.mjs +1 -1
  730. package/utils/rootInstance.js +3 -2
  731. package/utils/samplesGenerator.js +0 -1
  732. package/utils/samplesGenerator.mjs +0 -1
  733. package/utils/staticRegister.js +3 -1
  734. package/utils/staticRegister.mjs +1 -0
  735. package/validators/autocompleteValidator/autocompleteValidator.d.ts +5 -0
  736. package/validators/autocompleteValidator/autocompleteValidator.js +1 -1
  737. package/validators/autocompleteValidator/index.d.ts +1 -0
  738. package/validators/base.d.ts +6 -0
  739. package/validators/dateValidator/dateValidator.d.ts +5 -0
  740. package/validators/dateValidator/dateValidator.js +2 -2
  741. package/validators/dateValidator/index.d.ts +1 -0
  742. package/validators/index.d.ts +33 -0
  743. package/validators/index.js +13 -2
  744. package/validators/index.mjs +16 -4
  745. package/validators/numericValidator/index.d.ts +1 -0
  746. package/validators/numericValidator/numericValidator.d.ts +5 -0
  747. package/validators/numericValidator/numericValidator.js +1 -1
  748. package/validators/registry.d.ts +18 -0
  749. package/validators/registry.js +3 -2
  750. package/validators/timeValidator/index.d.ts +1 -0
  751. package/validators/timeValidator/timeValidator.d.ts +5 -0
  752. package/validators/timeValidator/timeValidator.js +3 -1
  753. package/validators/timeValidator/timeValidator.mjs +1 -0
  754. package/handsontable-general-terms.pdf +0 -0
  755. package/handsontable.d.ts +0 -2616
  756. package/plugins/formulas/autofill.js +0 -180
  757. package/plugins/formulas/autofill.mjs +0 -172
package/index.js CHANGED
@@ -27,14 +27,12 @@ require("core-js/modules/es.object.get-own-property-names.js");
27
27
 
28
28
  var _base = _interopRequireDefault(require("./base"));
29
29
 
30
+ var _registry = require("./registry");
31
+
30
32
  var _eventManager = _interopRequireWildcard(require("./eventManager"));
31
33
 
32
34
  var _translations = require("./translations");
33
35
 
34
- var _pluginHooks = _interopRequireDefault(require("./pluginHooks"));
35
-
36
- var _index = require("./dataMap/index");
37
-
38
36
  var _jquery = _interopRequireDefault(require("./helpers/wrappers/jquery"));
39
37
 
40
38
  var _ghostTable = _interopRequireDefault(require("./utils/ghostTable"));
@@ -67,15 +65,19 @@ var domHelpers = _interopRequireWildcard(require("./helpers/dom/element"));
67
65
 
68
66
  var domEventHelpers = _interopRequireWildcard(require("./helpers/dom/event"));
69
67
 
70
- var _editors = require("./editors");
68
+ var _registry2 = require("./editors/registry");
71
69
 
72
- var _renderers = require("./renderers");
70
+ var _registry3 = require("./renderers/registry");
73
71
 
74
- var _validators = require("./validators");
72
+ var _registry4 = require("./validators/registry");
75
73
 
76
- var _cellTypes = require("./cellTypes");
74
+ var _registry5 = require("./cellTypes/registry");
77
75
 
78
- var _plugins = require("./plugins");
76
+ var _registry6 = require("./plugins/registry");
77
+
78
+ var _base2 = require("./plugins/base");
79
+
80
+ var _Handsontable$cellTyp, _Handsontable$editors, _Handsontable$rendere, _Handsontable$validat, _Handsontable$plugins;
79
81
 
80
82
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
81
83
 
@@ -83,89 +85,15 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
83
85
 
84
86
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
85
87
 
86
- /* eslint-disable handsontable/restricted-module-imports */
87
- // Since the Handsontable was modularized, importing some submodules is restricted.
88
- // Importing the main entry of the submodule can make the "dead" code elimination
89
- // process more difficult. The "handsontable/restricted-module-imports" rule is on
90
- // guard. For the index.js file, the rule has to be disabled. This file exports the
91
- // full version of the Handsontable with build-in all available components, so that's
92
- // why the rule is disabled here (see more #7506).
93
-
94
- /* eslint-enable handsontable/restricted-module-imports */
95
- (0, _editors.registerEditor)(_editors.BaseEditor);
96
- (0, _editors.registerEditor)(_editors.AutocompleteEditor);
97
- (0, _editors.registerEditor)(_editors.CheckboxEditor);
98
- (0, _editors.registerEditor)(_editors.DateEditor);
99
- (0, _editors.registerEditor)(_editors.DropdownEditor);
100
- (0, _editors.registerEditor)(_editors.HandsontableEditor);
101
- (0, _editors.registerEditor)(_editors.NumericEditor);
102
- (0, _editors.registerEditor)(_editors.PasswordEditor);
103
- (0, _editors.registerEditor)(_editors.SelectEditor);
104
- (0, _editors.registerEditor)(_editors.TextEditor);
105
- (0, _renderers.registerRenderer)(_renderers.baseRenderer);
106
- (0, _renderers.registerRenderer)(_renderers.autocompleteRenderer);
107
- (0, _renderers.registerRenderer)(_renderers.checkboxRenderer);
108
- (0, _renderers.registerRenderer)(_renderers.htmlRenderer);
109
- (0, _renderers.registerRenderer)(_renderers.numericRenderer);
110
- (0, _renderers.registerRenderer)(_renderers.passwordRenderer);
111
- (0, _renderers.registerRenderer)(_renderers.textRenderer);
112
- (0, _validators.registerValidator)(_validators.autocompleteValidator);
113
- (0, _validators.registerValidator)(_validators.dateValidator);
114
- (0, _validators.registerValidator)(_validators.numericValidator);
115
- (0, _validators.registerValidator)(_validators.timeValidator);
116
- (0, _cellTypes.registerCellType)(_cellTypes.AutocompleteCellType);
117
- (0, _cellTypes.registerCellType)(_cellTypes.CheckboxCellType);
118
- (0, _cellTypes.registerCellType)(_cellTypes.DateCellType);
119
- (0, _cellTypes.registerCellType)(_cellTypes.DropdownCellType);
120
- (0, _cellTypes.registerCellType)(_cellTypes.HandsontableCellType);
121
- (0, _cellTypes.registerCellType)(_cellTypes.NumericCellType);
122
- (0, _cellTypes.registerCellType)(_cellTypes.PasswordCellType);
123
- (0, _cellTypes.registerCellType)(_cellTypes.TimeCellType);
124
- (0, _cellTypes.registerCellType)(_cellTypes.TextCellType);
125
- (0, _jquery.default)(_base.default);
126
- (0, _plugins.registerPlugin)(_plugins.AutoColumnSize);
127
- (0, _plugins.registerPlugin)(_plugins.Autofill);
128
- (0, _plugins.registerPlugin)(_plugins.AutoRowSize);
129
- (0, _plugins.registerPlugin)(_plugins.BindRowsWithHeaders);
130
- (0, _plugins.registerPlugin)(_plugins.CollapsibleColumns);
131
- (0, _plugins.registerPlugin)(_plugins.ColumnSorting);
132
- (0, _plugins.registerPlugin)(_plugins.ColumnSummary);
133
- (0, _plugins.registerPlugin)(_plugins.Comments);
134
- (0, _plugins.registerPlugin)(_plugins.ContextMenu);
135
- (0, _plugins.registerPlugin)(_plugins.CopyPaste);
136
- (0, _plugins.registerPlugin)(_plugins.CustomBorders);
137
- (0, _plugins.registerPlugin)(_plugins.DragToScroll);
138
- (0, _plugins.registerPlugin)(_plugins.DropdownMenu);
139
- (0, _plugins.registerPlugin)(_plugins.ExportFile);
140
- (0, _plugins.registerPlugin)(_plugins.Filters);
141
- (0, _plugins.registerPlugin)(_plugins.Formulas);
142
- (0, _plugins.registerPlugin)(_plugins.HiddenColumns);
143
- (0, _plugins.registerPlugin)(_plugins.HiddenRows);
144
- (0, _plugins.registerPlugin)(_plugins.ManualColumnFreeze);
145
- (0, _plugins.registerPlugin)(_plugins.ManualColumnMove);
146
- (0, _plugins.registerPlugin)(_plugins.ManualColumnResize);
147
- (0, _plugins.registerPlugin)(_plugins.ManualRowMove);
148
- (0, _plugins.registerPlugin)(_plugins.ManualRowResize);
149
- (0, _plugins.registerPlugin)(_plugins.MergeCells);
150
- (0, _plugins.registerPlugin)(_plugins.MultiColumnSorting);
151
- (0, _plugins.registerPlugin)(_plugins.MultipleSelectionHandles);
152
- (0, _plugins.registerPlugin)(_plugins.NestedHeaders);
153
- (0, _plugins.registerPlugin)(_plugins.NestedRows);
154
- (0, _plugins.registerPlugin)(_plugins.PersistentState);
155
- (0, _plugins.registerPlugin)(_plugins.Search);
156
- (0, _plugins.registerPlugin)(_plugins.TouchScroll);
157
- (0, _plugins.registerPlugin)(_plugins.TrimRows);
158
- (0, _plugins.registerPlugin)(_plugins.UndoRedo); // TODO: Remove this exports after rewrite tests about this module
88
+ (0, _registry.registerAllModules)();
89
+ (0, _jquery.default)(_base.default); // TODO: Remove this exports after rewrite tests about this module
159
90
 
160
91
  _base.default.__GhostTable = _ghostTable.default;
161
92
  _base.default._getListenersCounter = _eventManager.getListenersCounter; // For MemoryLeak tests
162
93
 
163
94
  _base.default._getRegisteredMapsCounter = _translations.getRegisteredMapsCounter; // For MemoryLeak tests
164
95
 
165
- _base.default.DefaultSettings = (0, _index.metaSchemaFactory)();
166
- _base.default.EventManager = _eventManager.default; // Export Hooks singleton
167
-
168
- _base.default.hooks = _pluginHooks.default.getSingleton(); // Export all helpers to the Handsontable object
96
+ _base.default.EventManager = _eventManager.default; // Export all helpers to the Handsontable object
169
97
 
170
98
  var HELPERS = [arrayHelpers, browserHelpers, dataHelpers, dateHelpers, featureHelpers, functionHelpers, mixedHelpers, numberHelpers, objectHelpers, stringHelpers, unicodeHelpers, parseTableHelpers];
171
99
  var DOM = [domHelpers, domEventHelpers];
@@ -188,23 +116,23 @@ arrayHelpers.arrayEach(DOM, function (helper) {
188
116
  });
189
117
  }); // Export cell types.
190
118
 
191
- _base.default.cellTypes = {};
192
- arrayHelpers.arrayEach((0, _cellTypes.getRegisteredCellTypeNames)(), function (cellTypeName) {
193
- _base.default.cellTypes[cellTypeName] = (0, _cellTypes.getCellType)(cellTypeName);
119
+ _base.default.cellTypes = (_Handsontable$cellTyp = _base.default.cellTypes) !== null && _Handsontable$cellTyp !== void 0 ? _Handsontable$cellTyp : {};
120
+ arrayHelpers.arrayEach((0, _registry5.getRegisteredCellTypeNames)(), function (cellTypeName) {
121
+ _base.default.cellTypes[cellTypeName] = (0, _registry5.getCellType)(cellTypeName);
194
122
  });
195
- _base.default.cellTypes.registerCellType = _cellTypes.registerCellType;
196
- _base.default.cellTypes.getCellType = _cellTypes.getCellType; // Export all registered editors from the Handsontable.
123
+ _base.default.cellTypes.registerCellType = _registry5.registerCellType;
124
+ _base.default.cellTypes.getCellType = _registry5.getCellType; // Export all registered editors from the Handsontable.
197
125
 
198
- _base.default.editors = {};
199
- arrayHelpers.arrayEach((0, _editors.getRegisteredEditorNames)(), function (editorName) {
200
- _base.default.editors["".concat(stringHelpers.toUpperCaseFirst(editorName), "Editor")] = (0, _editors.getEditor)(editorName);
126
+ _base.default.editors = (_Handsontable$editors = _base.default.editors) !== null && _Handsontable$editors !== void 0 ? _Handsontable$editors : {};
127
+ arrayHelpers.arrayEach((0, _registry2.getRegisteredEditorNames)(), function (editorName) {
128
+ _base.default.editors["".concat(stringHelpers.toUpperCaseFirst(editorName), "Editor")] = (0, _registry2.getEditor)(editorName);
201
129
  });
202
- _base.default.editors.registerEditor = _editors.registerEditor;
203
- _base.default.editors.getEditor = _editors.getEditor; // Export all registered renderers from the Handsontable.
130
+ _base.default.editors.registerEditor = _registry2.registerEditor;
131
+ _base.default.editors.getEditor = _registry2.getEditor; // Export all registered renderers from the Handsontable.
204
132
 
205
- _base.default.renderers = {};
206
- arrayHelpers.arrayEach((0, _renderers.getRegisteredRendererNames)(), function (rendererName) {
207
- var renderer = (0, _renderers.getRenderer)(rendererName);
133
+ _base.default.renderers = (_Handsontable$rendere = _base.default.renderers) !== null && _Handsontable$rendere !== void 0 ? _Handsontable$rendere : {};
134
+ arrayHelpers.arrayEach((0, _registry3.getRegisteredRendererNames)(), function (rendererName) {
135
+ var renderer = (0, _registry3.getRenderer)(rendererName);
208
136
 
209
137
  if (rendererName === 'base') {
210
138
  _base.default.renderers.cellDecorator = renderer;
@@ -212,15 +140,15 @@ arrayHelpers.arrayEach((0, _renderers.getRegisteredRendererNames)(), function (r
212
140
 
213
141
  _base.default.renderers["".concat(stringHelpers.toUpperCaseFirst(rendererName), "Renderer")] = renderer;
214
142
  });
215
- _base.default.renderers.registerRenderer = _renderers.registerRenderer;
216
- _base.default.renderers.getRenderer = _renderers.getRenderer; // Export all registered validators from the Handsontable.
143
+ _base.default.renderers.registerRenderer = _registry3.registerRenderer;
144
+ _base.default.renderers.getRenderer = _registry3.getRenderer; // Export all registered validators from the Handsontable.
217
145
 
218
- _base.default.validators = {};
219
- arrayHelpers.arrayEach((0, _validators.getRegisteredValidatorNames)(), function (validatorName) {
220
- _base.default.validators["".concat(stringHelpers.toUpperCaseFirst(validatorName), "Validator")] = (0, _validators.getValidator)(validatorName);
146
+ _base.default.validators = (_Handsontable$validat = _base.default.validators) !== null && _Handsontable$validat !== void 0 ? _Handsontable$validat : {};
147
+ arrayHelpers.arrayEach((0, _registry4.getRegisteredValidatorNames)(), function (validatorName) {
148
+ _base.default.validators["".concat(stringHelpers.toUpperCaseFirst(validatorName), "Validator")] = (0, _registry4.getValidator)(validatorName);
221
149
  });
222
- _base.default.validators.registerValidator = _validators.registerValidator;
223
- _base.default.validators.getValidator = _validators.getValidator; // Export all registered plugins from the Handsontable.
150
+ _base.default.validators.registerValidator = _registry4.registerValidator;
151
+ _base.default.validators.getValidator = _registry4.getValidator; // Export all registered plugins from the Handsontable.
224
152
  // Make sure to initialize the plugin dictionary as an empty object. Otherwise, while
225
153
  // transpiling the files into ES and CommonJS format, the injected CoreJS helper
226
154
  // `import "core-js/modules/es.object.get-own-property-names";` won't be processed
@@ -228,12 +156,12 @@ _base.default.validators.getValidator = _validators.getValidator; // Export all
228
156
  // files will be broken. The reason is not known right now (probably it's caused by bug in
229
157
  // the Babel or missing something in the plugin).
230
158
 
231
- _base.default.plugins = {};
232
- arrayHelpers.arrayEach((0, _plugins.getPluginsNames)(), function (pluginName) {
233
- _base.default.plugins[pluginName] = (0, _plugins.getPlugin)(pluginName);
159
+ _base.default.plugins = (_Handsontable$plugins = _base.default.plugins) !== null && _Handsontable$plugins !== void 0 ? _Handsontable$plugins : {};
160
+ arrayHelpers.arrayEach((0, _registry6.getPluginsNames)(), function (pluginName) {
161
+ _base.default.plugins[pluginName] = (0, _registry6.getPlugin)(pluginName);
234
162
  });
235
- _base.default.plugins["".concat(stringHelpers.toUpperCaseFirst(_plugins.BasePlugin.PLUGIN_KEY), "Plugin")] = _plugins.BasePlugin;
236
- _base.default.plugins.registerPlugin = _plugins.registerPlugin;
237
- _base.default.plugins.getPlugin = _plugins.getPlugin;
163
+ _base.default.plugins["".concat(stringHelpers.toUpperCaseFirst(_base2.BasePlugin.PLUGIN_KEY), "Plugin")] = _base2.BasePlugin;
164
+ _base.default.plugins.registerPlugin = _registry6.registerPlugin;
165
+ _base.default.plugins.getPlugin = _registry6.getPlugin;
238
166
  var _default = _base.default;
239
167
  exports.default = _default;
package/index.mjs CHANGED
@@ -1,9 +1,10 @@
1
+ var _Handsontable$cellTyp, _Handsontable$editors, _Handsontable$rendere, _Handsontable$validat, _Handsontable$plugins;
2
+
1
3
  import "core-js/modules/es.object.get-own-property-names.js";
2
4
  import Handsontable from "./base.mjs";
5
+ import { registerAllModules } from "./registry.mjs";
3
6
  import EventManager, { getListenersCounter } from "./eventManager.mjs";
4
7
  import { getRegisteredMapsCounter } from "./translations/index.mjs";
5
- import Hooks from "./pluginHooks.mjs";
6
- import { metaSchemaFactory } from "./dataMap/index.mjs";
7
8
  import jQueryWrapper from "./helpers/wrappers/jquery.mjs";
8
9
  import GhostTable from "./utils/ghostTable.mjs";
9
10
  import * as parseTableHelpers from "./utils/parseTable.mjs";
@@ -20,95 +21,21 @@ import * as stringHelpers from "./helpers/string.mjs";
20
21
  import * as unicodeHelpers from "./helpers/unicode.mjs";
21
22
  import * as domHelpers from "./helpers/dom/element.mjs";
22
23
  import * as domEventHelpers from "./helpers/dom/event.mjs";
23
- /* eslint-disable handsontable/restricted-module-imports */
24
- // Since the Handsontable was modularized, importing some submodules is restricted.
25
- // Importing the main entry of the submodule can make the "dead" code elimination
26
- // process more difficult. The "handsontable/restricted-module-imports" rule is on
27
- // guard. For the index.js file, the rule has to be disabled. This file exports the
28
- // full version of the Handsontable with build-in all available components, so that's
29
- // why the rule is disabled here (see more #7506).
30
-
31
- import { getRegisteredEditorNames, getEditor, registerEditor, AutocompleteEditor, BaseEditor, CheckboxEditor, DateEditor, DropdownEditor, HandsontableEditor, NumericEditor, PasswordEditor, SelectEditor, TextEditor } from "./editors/index.mjs";
32
- import { getRegisteredRendererNames, getRenderer, registerRenderer, baseRenderer, autocompleteRenderer, checkboxRenderer, htmlRenderer, numericRenderer, passwordRenderer, textRenderer } from "./renderers/index.mjs";
33
- import { getRegisteredValidatorNames, getValidator, registerValidator, autocompleteValidator, dateValidator, numericValidator, timeValidator } from "./validators/index.mjs";
34
- import { getRegisteredCellTypeNames, getCellType, registerCellType, AutocompleteCellType, CheckboxCellType, DateCellType, DropdownCellType, HandsontableCellType, NumericCellType, PasswordCellType, TextCellType, TimeCellType } from "./cellTypes/index.mjs";
35
- import { AutoColumnSize, AutoRowSize, Autofill, BasePlugin, BindRowsWithHeaders, CollapsibleColumns, ColumnSorting, ColumnSummary, Comments, ContextMenu, CopyPaste, CustomBorders, DragToScroll, DropdownMenu, ExportFile, Filters, Formulas, HiddenColumns, HiddenRows, ManualColumnFreeze, ManualColumnMove, ManualColumnResize, ManualRowMove, ManualRowResize, MergeCells, MultiColumnSorting, MultipleSelectionHandles, NestedHeaders, NestedRows, PersistentState, Search, TouchScroll, TrimRows, UndoRedo, getPlugin, getPluginsNames, registerPlugin } from "./plugins/index.mjs";
36
- /* eslint-enable handsontable/restricted-module-imports */
37
-
38
- registerEditor(BaseEditor);
39
- registerEditor(AutocompleteEditor);
40
- registerEditor(CheckboxEditor);
41
- registerEditor(DateEditor);
42
- registerEditor(DropdownEditor);
43
- registerEditor(HandsontableEditor);
44
- registerEditor(NumericEditor);
45
- registerEditor(PasswordEditor);
46
- registerEditor(SelectEditor);
47
- registerEditor(TextEditor);
48
- registerRenderer(baseRenderer);
49
- registerRenderer(autocompleteRenderer);
50
- registerRenderer(checkboxRenderer);
51
- registerRenderer(htmlRenderer);
52
- registerRenderer(numericRenderer);
53
- registerRenderer(passwordRenderer);
54
- registerRenderer(textRenderer);
55
- registerValidator(autocompleteValidator);
56
- registerValidator(dateValidator);
57
- registerValidator(numericValidator);
58
- registerValidator(timeValidator);
59
- registerCellType(AutocompleteCellType);
60
- registerCellType(CheckboxCellType);
61
- registerCellType(DateCellType);
62
- registerCellType(DropdownCellType);
63
- registerCellType(HandsontableCellType);
64
- registerCellType(NumericCellType);
65
- registerCellType(PasswordCellType);
66
- registerCellType(TimeCellType);
67
- registerCellType(TextCellType);
68
- jQueryWrapper(Handsontable);
69
- registerPlugin(AutoColumnSize);
70
- registerPlugin(Autofill);
71
- registerPlugin(AutoRowSize);
72
- registerPlugin(BindRowsWithHeaders);
73
- registerPlugin(CollapsibleColumns);
74
- registerPlugin(ColumnSorting);
75
- registerPlugin(ColumnSummary);
76
- registerPlugin(Comments);
77
- registerPlugin(ContextMenu);
78
- registerPlugin(CopyPaste);
79
- registerPlugin(CustomBorders);
80
- registerPlugin(DragToScroll);
81
- registerPlugin(DropdownMenu);
82
- registerPlugin(ExportFile);
83
- registerPlugin(Filters);
84
- registerPlugin(Formulas);
85
- registerPlugin(HiddenColumns);
86
- registerPlugin(HiddenRows);
87
- registerPlugin(ManualColumnFreeze);
88
- registerPlugin(ManualColumnMove);
89
- registerPlugin(ManualColumnResize);
90
- registerPlugin(ManualRowMove);
91
- registerPlugin(ManualRowResize);
92
- registerPlugin(MergeCells);
93
- registerPlugin(MultiColumnSorting);
94
- registerPlugin(MultipleSelectionHandles);
95
- registerPlugin(NestedHeaders);
96
- registerPlugin(NestedRows);
97
- registerPlugin(PersistentState);
98
- registerPlugin(Search);
99
- registerPlugin(TouchScroll);
100
- registerPlugin(TrimRows);
101
- registerPlugin(UndoRedo); // TODO: Remove this exports after rewrite tests about this module
24
+ import { getRegisteredEditorNames, getEditor, registerEditor } from "./editors/registry.mjs";
25
+ import { getRegisteredRendererNames, getRenderer, registerRenderer } from "./renderers/registry.mjs";
26
+ import { getRegisteredValidatorNames, getValidator, registerValidator } from "./validators/registry.mjs";
27
+ import { getRegisteredCellTypeNames, getCellType, registerCellType } from "./cellTypes/registry.mjs";
28
+ import { getPluginsNames, getPlugin, registerPlugin } from "./plugins/registry.mjs";
29
+ import { BasePlugin } from "./plugins/base/index.mjs";
30
+ registerAllModules();
31
+ jQueryWrapper(Handsontable); // TODO: Remove this exports after rewrite tests about this module
102
32
 
103
33
  Handsontable.__GhostTable = GhostTable;
104
34
  Handsontable._getListenersCounter = getListenersCounter; // For MemoryLeak tests
105
35
 
106
36
  Handsontable._getRegisteredMapsCounter = getRegisteredMapsCounter; // For MemoryLeak tests
107
37
 
108
- Handsontable.DefaultSettings = metaSchemaFactory();
109
- Handsontable.EventManager = EventManager; // Export Hooks singleton
110
-
111
- Handsontable.hooks = Hooks.getSingleton(); // Export all helpers to the Handsontable object
38
+ Handsontable.EventManager = EventManager; // Export all helpers to the Handsontable object
112
39
 
113
40
  var HELPERS = [arrayHelpers, browserHelpers, dataHelpers, dateHelpers, featureHelpers, functionHelpers, mixedHelpers, numberHelpers, objectHelpers, stringHelpers, unicodeHelpers, parseTableHelpers];
114
41
  var DOM = [domHelpers, domEventHelpers];
@@ -131,21 +58,21 @@ arrayHelpers.arrayEach(DOM, function (helper) {
131
58
  });
132
59
  }); // Export cell types.
133
60
 
134
- Handsontable.cellTypes = {};
61
+ Handsontable.cellTypes = (_Handsontable$cellTyp = Handsontable.cellTypes) !== null && _Handsontable$cellTyp !== void 0 ? _Handsontable$cellTyp : {};
135
62
  arrayHelpers.arrayEach(getRegisteredCellTypeNames(), function (cellTypeName) {
136
63
  Handsontable.cellTypes[cellTypeName] = getCellType(cellTypeName);
137
64
  });
138
65
  Handsontable.cellTypes.registerCellType = registerCellType;
139
66
  Handsontable.cellTypes.getCellType = getCellType; // Export all registered editors from the Handsontable.
140
67
 
141
- Handsontable.editors = {};
68
+ Handsontable.editors = (_Handsontable$editors = Handsontable.editors) !== null && _Handsontable$editors !== void 0 ? _Handsontable$editors : {};
142
69
  arrayHelpers.arrayEach(getRegisteredEditorNames(), function (editorName) {
143
70
  Handsontable.editors["".concat(stringHelpers.toUpperCaseFirst(editorName), "Editor")] = getEditor(editorName);
144
71
  });
145
72
  Handsontable.editors.registerEditor = registerEditor;
146
73
  Handsontable.editors.getEditor = getEditor; // Export all registered renderers from the Handsontable.
147
74
 
148
- Handsontable.renderers = {};
75
+ Handsontable.renderers = (_Handsontable$rendere = Handsontable.renderers) !== null && _Handsontable$rendere !== void 0 ? _Handsontable$rendere : {};
149
76
  arrayHelpers.arrayEach(getRegisteredRendererNames(), function (rendererName) {
150
77
  var renderer = getRenderer(rendererName);
151
78
 
@@ -158,7 +85,7 @@ arrayHelpers.arrayEach(getRegisteredRendererNames(), function (rendererName) {
158
85
  Handsontable.renderers.registerRenderer = registerRenderer;
159
86
  Handsontable.renderers.getRenderer = getRenderer; // Export all registered validators from the Handsontable.
160
87
 
161
- Handsontable.validators = {};
88
+ Handsontable.validators = (_Handsontable$validat = Handsontable.validators) !== null && _Handsontable$validat !== void 0 ? _Handsontable$validat : {};
162
89
  arrayHelpers.arrayEach(getRegisteredValidatorNames(), function (validatorName) {
163
90
  Handsontable.validators["".concat(stringHelpers.toUpperCaseFirst(validatorName), "Validator")] = getValidator(validatorName);
164
91
  });
@@ -171,7 +98,7 @@ Handsontable.validators.getValidator = getValidator; // Export all registered pl
171
98
  // files will be broken. The reason is not known right now (probably it's caused by bug in
172
99
  // the Babel or missing something in the plugin).
173
100
 
174
- Handsontable.plugins = {};
101
+ Handsontable.plugins = (_Handsontable$plugins = Handsontable.plugins) !== null && _Handsontable$plugins !== void 0 ? _Handsontable$plugins : {};
175
102
  arrayHelpers.arrayEach(getPluginsNames(), function (pluginName) {
176
103
  Handsontable.plugins[pluginName] = getPlugin(pluginName);
177
104
  });
@@ -3,10 +3,10 @@
3
3
  exports.__esModule = true;
4
4
  exports.default = void 0;
5
5
 
6
- var _array = require("./../helpers/array");
7
-
8
6
  var _object = require("./../helpers/object");
9
7
 
8
+ var _function = require("./../helpers/function");
9
+
10
10
  var MIXIN_NAME = 'localHooks';
11
11
  /**
12
12
  * Mixin object to extend objects functionality for local hooks.
@@ -40,20 +40,23 @@ var localHooks = {
40
40
  /**
41
41
  * Run hooks.
42
42
  *
43
- * @param {string} key The hook name.
44
- * @param {*} params Additional parameters passed to callback function.
43
+ * @param {string} key The name of the hook to run.
44
+ * @param {*} [arg1] An additional parameter passed to the callback function.
45
+ * @param {*} [arg2] An additional parameter passed to the callback function.
46
+ * @param {*} [arg3] An additional parameter passed to the callback function.
47
+ * @param {*} [arg4] An additional parameter passed to the callback function.
48
+ * @param {*} [arg5] An additional parameter passed to the callback function.
49
+ * @param {*} [arg6] An additional parameter passed to the callback function.
45
50
  */
46
- runLocalHooks: function runLocalHooks(key) {
47
- var _this = this;
48
-
49
- for (var _len = arguments.length, params = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
50
- params[_key - 1] = arguments[_key];
51
- }
52
-
51
+ runLocalHooks: function runLocalHooks(key, arg1, arg2, arg3, arg4, arg5, arg6) {
53
52
  if (this._localHooks[key]) {
54
- (0, _array.arrayEach)(this._localHooks[key], function (callback) {
55
- return callback.apply(_this, params);
56
- });
53
+ var length = this._localHooks[key].length; // don't optimize this loop with the `arrayEach()` method or arrow functions
54
+ // otherwise, performance will decrease because of garbage collection
55
+ // using the `...rest` syntax (ES6 and later) will decrease performance as well
56
+
57
+ for (var i = 0; i < length; i++) {
58
+ (0, _function.fastCall)(this._localHooks[key][i], this, arg1, arg2, arg3, arg4, arg5, arg6);
59
+ }
57
60
  }
58
61
  },
59
62
 
@@ -1,5 +1,5 @@
1
- import { arrayEach } from "./../helpers/array.mjs";
2
1
  import { defineGetter } from "./../helpers/object.mjs";
2
+ import { fastCall } from "./../helpers/function.mjs";
3
3
  var MIXIN_NAME = 'localHooks';
4
4
  /**
5
5
  * Mixin object to extend objects functionality for local hooks.
@@ -33,20 +33,23 @@ var localHooks = {
33
33
  /**
34
34
  * Run hooks.
35
35
  *
36
- * @param {string} key The hook name.
37
- * @param {*} params Additional parameters passed to callback function.
36
+ * @param {string} key The name of the hook to run.
37
+ * @param {*} [arg1] An additional parameter passed to the callback function.
38
+ * @param {*} [arg2] An additional parameter passed to the callback function.
39
+ * @param {*} [arg3] An additional parameter passed to the callback function.
40
+ * @param {*} [arg4] An additional parameter passed to the callback function.
41
+ * @param {*} [arg5] An additional parameter passed to the callback function.
42
+ * @param {*} [arg6] An additional parameter passed to the callback function.
38
43
  */
39
- runLocalHooks: function runLocalHooks(key) {
40
- var _this = this;
41
-
42
- for (var _len = arguments.length, params = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
43
- params[_key - 1] = arguments[_key];
44
- }
45
-
44
+ runLocalHooks: function runLocalHooks(key, arg1, arg2, arg3, arg4, arg5, arg6) {
46
45
  if (this._localHooks[key]) {
47
- arrayEach(this._localHooks[key], function (callback) {
48
- return callback.apply(_this, params);
49
- });
46
+ var length = this._localHooks[key].length; // don't optimize this loop with the `arrayEach()` method or arrow functions
47
+ // otherwise, performance will decrease because of garbage collection
48
+ // using the `...rest` syntax (ES6 and later) will decrease performance as well
49
+
50
+ for (var i = 0; i < length; i++) {
51
+ fastCall(this._localHooks[key][i], this, arg1, arg2, arg3, arg4, arg5, arg6);
52
+ }
50
53
  }
51
54
  },
52
55