handsontable 9.0.2 → 11.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (895) 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/calculator/viewportColumns.js +1 -1
  9. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +1 -1
  10. package/3rdparty/walkontable/src/calculator/viewportRows.js +1 -1
  11. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +1 -1
  12. package/3rdparty/walkontable/src/cell/coords.d.ts +16 -0
  13. package/3rdparty/walkontable/src/cell/coords.js +1 -1
  14. package/3rdparty/walkontable/src/cell/coords.mjs +1 -1
  15. package/3rdparty/walkontable/src/cell/range.d.ts +51 -0
  16. package/3rdparty/walkontable/src/cell/range.js +1 -1
  17. package/3rdparty/walkontable/src/cell/range.mjs +1 -1
  18. package/3rdparty/walkontable/src/core.js +1 -1
  19. package/3rdparty/walkontable/src/core.mjs +1 -1
  20. package/3rdparty/walkontable/src/event.js +1 -1
  21. package/3rdparty/walkontable/src/event.mjs +1 -1
  22. package/3rdparty/walkontable/src/filter/column.js +1 -1
  23. package/3rdparty/walkontable/src/filter/column.mjs +1 -1
  24. package/3rdparty/walkontable/src/filter/row.js +1 -1
  25. package/3rdparty/walkontable/src/filter/row.mjs +1 -1
  26. package/3rdparty/walkontable/src/index.d.ts +1 -0
  27. package/3rdparty/walkontable/src/index.js +1 -1
  28. package/3rdparty/walkontable/src/overlay/_base.js +1 -1
  29. package/3rdparty/walkontable/src/overlay/_base.mjs +1 -1
  30. package/3rdparty/walkontable/src/overlay/bottom.js +6 -6
  31. package/3rdparty/walkontable/src/overlay/bottom.mjs +5 -5
  32. package/3rdparty/walkontable/src/overlay/bottomLeftCorner.js +6 -6
  33. package/3rdparty/walkontable/src/overlay/bottomLeftCorner.mjs +5 -5
  34. package/3rdparty/walkontable/src/overlay/constants.js +1 -1
  35. package/3rdparty/walkontable/src/overlay/index.js +2 -0
  36. package/3rdparty/walkontable/src/overlay/left.js +6 -6
  37. package/3rdparty/walkontable/src/overlay/left.mjs +5 -5
  38. package/3rdparty/walkontable/src/overlay/registerer.js +1 -1
  39. package/3rdparty/walkontable/src/overlay/top.js +6 -17
  40. package/3rdparty/walkontable/src/overlay/top.mjs +5 -16
  41. package/3rdparty/walkontable/src/overlay/topLeftCorner.js +6 -6
  42. package/3rdparty/walkontable/src/overlay/topLeftCorner.mjs +5 -5
  43. package/3rdparty/walkontable/src/overlays.js +3 -1
  44. package/3rdparty/walkontable/src/overlays.mjs +2 -1
  45. package/3rdparty/walkontable/src/renderer/_base.js +1 -1
  46. package/3rdparty/walkontable/src/renderer/_base.mjs +1 -1
  47. package/3rdparty/walkontable/src/renderer/cells.js +4 -4
  48. package/3rdparty/walkontable/src/renderer/cells.mjs +4 -4
  49. package/3rdparty/walkontable/src/renderer/colGroup.js +6 -6
  50. package/3rdparty/walkontable/src/renderer/colGroup.mjs +5 -5
  51. package/3rdparty/walkontable/src/renderer/columnHeaders.js +6 -6
  52. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +5 -5
  53. package/3rdparty/walkontable/src/renderer/index.js +1 -1
  54. package/3rdparty/walkontable/src/renderer/index.mjs +1 -1
  55. package/3rdparty/walkontable/src/renderer/rowHeaders.js +4 -4
  56. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +4 -4
  57. package/3rdparty/walkontable/src/renderer/rows.js +6 -6
  58. package/3rdparty/walkontable/src/renderer/rows.mjs +5 -5
  59. package/3rdparty/walkontable/src/renderer/table.js +1 -1
  60. package/3rdparty/walkontable/src/renderer/table.mjs +1 -1
  61. package/3rdparty/walkontable/src/scroll.js +1 -1
  62. package/3rdparty/walkontable/src/scroll.mjs +1 -1
  63. package/3rdparty/walkontable/src/selection.js +6 -4
  64. package/3rdparty/walkontable/src/selection.mjs +4 -3
  65. package/3rdparty/walkontable/src/settings.js +1 -1
  66. package/3rdparty/walkontable/src/settings.mjs +1 -1
  67. package/3rdparty/walkontable/src/table/bottom.js +10 -6
  68. package/3rdparty/walkontable/src/table/bottom.mjs +9 -5
  69. package/3rdparty/walkontable/src/table/bottomLeftCorner.js +10 -6
  70. package/3rdparty/walkontable/src/table/bottomLeftCorner.mjs +9 -5
  71. package/3rdparty/walkontable/src/table/left.js +10 -6
  72. package/3rdparty/walkontable/src/table/left.mjs +9 -5
  73. package/3rdparty/walkontable/src/table/master.js +6 -6
  74. package/3rdparty/walkontable/src/table/master.mjs +5 -5
  75. package/3rdparty/walkontable/src/table/top.js +10 -6
  76. package/3rdparty/walkontable/src/table/top.mjs +9 -5
  77. package/3rdparty/walkontable/src/table/topLeftCorner.js +10 -6
  78. package/3rdparty/walkontable/src/table/topLeftCorner.mjs +9 -5
  79. package/3rdparty/walkontable/src/table.js +5 -3
  80. package/3rdparty/walkontable/src/table.mjs +3 -2
  81. package/3rdparty/walkontable/src/utils/column.js +2 -2
  82. package/3rdparty/walkontable/src/utils/column.mjs +2 -2
  83. package/3rdparty/walkontable/src/utils/nodesPool.js +1 -1
  84. package/3rdparty/walkontable/src/utils/nodesPool.mjs +1 -1
  85. package/3rdparty/walkontable/src/utils/orderView/constants.js +1 -1
  86. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +6 -6
  87. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +5 -5
  88. package/3rdparty/walkontable/src/utils/orderView/view.js +1 -1
  89. package/3rdparty/walkontable/src/utils/orderView/view.mjs +1 -1
  90. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +1 -1
  91. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +1 -1
  92. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +1 -1
  93. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +1 -1
  94. package/3rdparty/walkontable/src/utils/row.js +1 -1
  95. package/3rdparty/walkontable/src/utils/row.mjs +1 -1
  96. package/3rdparty/walkontable/src/viewport.js +1 -1
  97. package/3rdparty/walkontable/src/viewport.mjs +1 -1
  98. package/CHANGELOG.md +92 -7
  99. package/LICENSE.txt +19 -22
  100. package/README.md +13 -8
  101. package/base.d.ts +1 -1
  102. package/base.js +16 -3
  103. package/base.mjs +14 -4
  104. package/cellTypes/autocompleteType/autocompleteType.d.ts +17 -0
  105. package/cellTypes/autocompleteType/autocompleteType.js +1 -1
  106. package/cellTypes/autocompleteType/index.d.ts +1 -0
  107. package/cellTypes/base.d.ts +14 -0
  108. package/cellTypes/checkboxType/checkboxType.d.ts +14 -0
  109. package/cellTypes/checkboxType/index.d.ts +1 -0
  110. package/cellTypes/dateType/dateType.d.ts +17 -0
  111. package/cellTypes/dateType/index.d.ts +1 -0
  112. package/cellTypes/dropdownType/dropdownType.d.ts +17 -0
  113. package/cellTypes/dropdownType/index.d.ts +1 -0
  114. package/cellTypes/handsontableType/handsontableType.d.ts +14 -0
  115. package/cellTypes/handsontableType/index.d.ts +1 -0
  116. package/cellTypes/index.d.ts +47 -0
  117. package/cellTypes/index.js +18 -2
  118. package/cellTypes/index.mjs +26 -9
  119. package/cellTypes/numericType/index.d.ts +1 -0
  120. package/cellTypes/numericType/numericType.d.ts +17 -0
  121. package/cellTypes/passwordType/index.d.ts +1 -0
  122. package/cellTypes/passwordType/passwordType.d.ts +14 -0
  123. package/cellTypes/registry.d.ts +18 -0
  124. package/cellTypes/registry.js +2 -2
  125. package/cellTypes/textType/index.d.ts +1 -0
  126. package/cellTypes/textType/textType.d.ts +14 -0
  127. package/cellTypes/timeType/index.d.ts +1 -0
  128. package/cellTypes/timeType/timeType.d.ts +17 -0
  129. package/common.d.ts +74 -0
  130. package/core.d.ts +160 -0
  131. package/core.js +244 -189
  132. package/core.mjs +243 -190
  133. package/{dataMap.js → dataMap/dataMap.js} +39 -37
  134. package/{dataMap.mjs → dataMap/dataMap.mjs} +39 -37
  135. package/dataMap/index.js +9 -1
  136. package/dataMap/index.mjs +4 -2
  137. package/dataMap/metaManager/index.js +55 -7
  138. package/dataMap/metaManager/index.mjs +52 -7
  139. package/dataMap/metaManager/lazyFactoryMap.js +4 -4
  140. package/dataMap/metaManager/lazyFactoryMap.mjs +4 -4
  141. package/dataMap/metaManager/metaLayers/cellMeta.js +3 -1
  142. package/dataMap/metaManager/metaLayers/cellMeta.mjs +2 -1
  143. package/dataMap/metaManager/metaLayers/columnMeta.js +1 -1
  144. package/dataMap/metaManager/metaLayers/columnMeta.mjs +1 -1
  145. package/dataMap/metaManager/metaLayers/globalMeta.js +5 -4
  146. package/dataMap/metaManager/metaLayers/globalMeta.mjs +5 -4
  147. package/dataMap/metaManager/metaLayers/tableMeta.js +1 -1
  148. package/dataMap/metaManager/metaLayers/tableMeta.mjs +1 -1
  149. package/dataMap/metaManager/metaSchema.js +3213 -1712
  150. package/dataMap/metaManager/metaSchema.mjs +3213 -1712
  151. package/dataMap/metaManager/mods/dynamicCellMeta.js +136 -0
  152. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +119 -0
  153. package/dataMap/metaManager/utils.js +3 -3
  154. package/dataMap/replaceData.js +154 -0
  155. package/dataMap/replaceData.mjs +138 -0
  156. package/dataSource.js +3 -1
  157. package/dataSource.mjs +2 -1
  158. package/dist/README.md +2 -2
  159. package/dist/handsontable.css +508 -420
  160. package/dist/handsontable.full.css +621 -530
  161. package/dist/handsontable.full.js +54025 -48518
  162. package/dist/handsontable.full.min.css +27 -35
  163. package/dist/handsontable.full.min.js +181 -164
  164. package/dist/handsontable.js +37028 -33780
  165. package/dist/handsontable.min.css +27 -33
  166. package/dist/handsontable.min.js +22 -25
  167. package/dist/languages/all.js +2 -4
  168. package/dist/languages/all.min.js +1 -1
  169. package/dist/languages/de-CH.js +2 -4
  170. package/dist/languages/de-CH.min.js +1 -1
  171. package/dist/languages/de-DE.js +2 -4
  172. package/dist/languages/de-DE.min.js +1 -1
  173. package/dist/languages/en-US.js +2 -4
  174. package/dist/languages/en-US.min.js +1 -1
  175. package/dist/languages/es-MX.js +2 -4
  176. package/dist/languages/es-MX.min.js +1 -1
  177. package/dist/languages/fr-FR.js +2 -4
  178. package/dist/languages/fr-FR.min.js +1 -1
  179. package/dist/languages/it-IT.js +2 -4
  180. package/dist/languages/it-IT.min.js +1 -1
  181. package/dist/languages/ja-JP.js +2 -4
  182. package/dist/languages/ja-JP.min.js +1 -1
  183. package/dist/languages/ko-KR.js +2 -4
  184. package/dist/languages/ko-KR.min.js +1 -1
  185. package/dist/languages/lv-LV.js +2 -4
  186. package/dist/languages/lv-LV.min.js +1 -1
  187. package/dist/languages/nb-NO.js +2 -4
  188. package/dist/languages/nb-NO.min.js +1 -1
  189. package/dist/languages/nl-NL.js +2 -4
  190. package/dist/languages/nl-NL.min.js +1 -1
  191. package/dist/languages/pl-PL.js +2 -4
  192. package/dist/languages/pl-PL.min.js +1 -1
  193. package/dist/languages/pt-BR.js +2 -4
  194. package/dist/languages/pt-BR.min.js +1 -1
  195. package/dist/languages/ru-RU.js +2 -4
  196. package/dist/languages/ru-RU.min.js +1 -1
  197. package/dist/languages/zh-CN.js +2 -4
  198. package/dist/languages/zh-CN.min.js +1 -1
  199. package/dist/languages/zh-TW.js +2 -4
  200. package/dist/languages/zh-TW.min.js +1 -1
  201. package/editorManager.js +9 -7
  202. package/editorManager.mjs +8 -7
  203. package/editors/autocompleteEditor/autocompleteEditor.d.ts +29 -0
  204. package/editors/autocompleteEditor/autocompleteEditor.js +99 -91
  205. package/editors/autocompleteEditor/autocompleteEditor.mjs +97 -88
  206. package/editors/autocompleteEditor/index.d.ts +1 -0
  207. package/editors/autocompleteEditor/index.js +1 -1
  208. package/editors/baseEditor/baseEditor.d.ts +45 -0
  209. package/editors/baseEditor/baseEditor.js +11 -10
  210. package/editors/baseEditor/baseEditor.mjs +8 -8
  211. package/editors/baseEditor/index.d.ts +1 -0
  212. package/editors/baseEditor/index.js +1 -1
  213. package/editors/checkboxEditor/checkboxEditor.d.ts +12 -0
  214. package/editors/checkboxEditor/checkboxEditor.js +7 -7
  215. package/editors/checkboxEditor/checkboxEditor.mjs +5 -5
  216. package/editors/checkboxEditor/index.d.ts +1 -0
  217. package/editors/checkboxEditor/index.js +1 -1
  218. package/editors/dateEditor/dateEditor.d.ts +18 -0
  219. package/editors/dateEditor/dateEditor.js +21 -21
  220. package/editors/dateEditor/dateEditor.mjs +19 -19
  221. package/editors/dateEditor/index.d.ts +1 -0
  222. package/editors/dateEditor/index.js +1 -1
  223. package/editors/dropdownEditor/dropdownEditor.d.ts +7 -0
  224. package/editors/dropdownEditor/dropdownEditor.js +8 -8
  225. package/editors/dropdownEditor/dropdownEditor.mjs +6 -6
  226. package/editors/dropdownEditor/index.d.ts +1 -0
  227. package/editors/dropdownEditor/index.js +1 -1
  228. package/editors/handsontableEditor/handsontableEditor.d.ts +10 -0
  229. package/editors/handsontableEditor/handsontableEditor.js +7 -7
  230. package/editors/handsontableEditor/handsontableEditor.mjs +6 -6
  231. package/editors/handsontableEditor/index.d.ts +1 -0
  232. package/editors/index.d.ts +53 -0
  233. package/editors/index.js +19 -2
  234. package/editors/index.mjs +28 -10
  235. package/editors/numericEditor/index.d.ts +1 -0
  236. package/editors/numericEditor/numericEditor.d.ts +7 -0
  237. package/editors/numericEditor/numericEditor.js +6 -6
  238. package/editors/numericEditor/numericEditor.mjs +5 -5
  239. package/editors/passwordEditor/index.d.ts +1 -0
  240. package/editors/passwordEditor/passwordEditor.d.ts +7 -0
  241. package/editors/passwordEditor/passwordEditor.js +7 -7
  242. package/editors/passwordEditor/passwordEditor.mjs +6 -6
  243. package/editors/registry.d.ts +29 -0
  244. package/editors/registry.js +2 -2
  245. package/editors/selectEditor/index.d.ts +1 -0
  246. package/editors/selectEditor/selectEditor.d.ts +16 -0
  247. package/editors/selectEditor/selectEditor.js +7 -7
  248. package/editors/selectEditor/selectEditor.mjs +6 -6
  249. package/editors/textEditor/index.d.ts +1 -0
  250. package/editors/textEditor/textEditor.d.ts +24 -0
  251. package/editors/textEditor/textEditor.js +7 -7
  252. package/editors/textEditor/textEditor.mjs +6 -6
  253. package/eventManager.d.ts +13 -0
  254. package/eventManager.js +8 -4
  255. package/eventManager.mjs +7 -3
  256. package/handsontable-non-commercial-license.pdf +0 -0
  257. package/helpers/array.d.ts +18 -0
  258. package/helpers/array.js +10 -10
  259. package/helpers/array.mjs +1 -1
  260. package/helpers/browser.d.ts +25 -0
  261. package/helpers/browser.js +11 -9
  262. package/helpers/browser.mjs +1 -0
  263. package/helpers/console.d.ts +4 -0
  264. package/helpers/console.js +2 -2
  265. package/helpers/data.d.ts +13 -0
  266. package/helpers/data.js +8 -36
  267. package/helpers/data.mjs +2 -28
  268. package/helpers/date.d.ts +1 -0
  269. package/helpers/dom/element.d.ts +49 -0
  270. package/helpers/dom/element.js +45 -46
  271. package/helpers/dom/element.mjs +8 -9
  272. package/helpers/dom/event.d.ts +4 -0
  273. package/helpers/dom/event.js +2 -2
  274. package/helpers/dom/index.d.ts +2 -0
  275. package/helpers/feature.d.ts +11 -0
  276. package/helpers/feature.js +7 -7
  277. package/helpers/feature.mjs +1 -1
  278. package/helpers/function.d.ts +10 -0
  279. package/helpers/function.js +43 -5
  280. package/helpers/function.mjs +35 -0
  281. package/helpers/index.d.ts +14 -0
  282. package/helpers/mixed.d.ts +5 -0
  283. package/helpers/mixed.js +6 -6
  284. package/helpers/mixed.mjs +3 -3
  285. package/helpers/number.d.ts +5 -0
  286. package/helpers/number.js +98 -19
  287. package/helpers/number.mjs +87 -19
  288. package/helpers/object.d.ts +16 -0
  289. package/helpers/object.js +12 -12
  290. package/helpers/object.mjs +1 -1
  291. package/helpers/string.d.ts +7 -0
  292. package/helpers/string.js +4 -4
  293. package/helpers/templateLiteralTag.d.ts +1 -0
  294. package/helpers/unicode.d.ts +73 -0
  295. package/helpers/unicode.js +3 -3
  296. package/i18n/constants.js +1 -1
  297. package/i18n/index.d.ts +2 -0
  298. package/i18n/index.js +2 -0
  299. package/i18n/languages/de-CH.d.ts +5 -0
  300. package/i18n/languages/de-CH.js +1 -1
  301. package/i18n/languages/de-DE.d.ts +5 -0
  302. package/i18n/languages/de-DE.js +1 -1
  303. package/i18n/languages/en-US.d.ts +5 -0
  304. package/i18n/languages/en-US.js +1 -1
  305. package/i18n/languages/es-MX.d.ts +5 -0
  306. package/i18n/languages/es-MX.js +1 -1
  307. package/i18n/languages/fr-FR.d.ts +5 -0
  308. package/i18n/languages/fr-FR.js +1 -1
  309. package/i18n/languages/index.d.ts +35 -0
  310. package/i18n/languages/it-IT.d.ts +5 -0
  311. package/i18n/languages/it-IT.js +1 -1
  312. package/i18n/languages/ja-JP.d.ts +5 -0
  313. package/i18n/languages/ja-JP.js +1 -1
  314. package/i18n/languages/ko-KR.d.ts +5 -0
  315. package/i18n/languages/ko-KR.js +1 -1
  316. package/i18n/languages/lv-LV.d.ts +5 -0
  317. package/i18n/languages/lv-LV.js +1 -1
  318. package/i18n/languages/nb-NO.d.ts +5 -0
  319. package/i18n/languages/nb-NO.js +1 -1
  320. package/i18n/languages/nl-NL.d.ts +5 -0
  321. package/i18n/languages/nl-NL.js +1 -1
  322. package/i18n/languages/pl-PL.d.ts +5 -0
  323. package/i18n/languages/pl-PL.js +1 -1
  324. package/i18n/languages/pt-BR.d.ts +5 -0
  325. package/i18n/languages/pt-BR.js +1 -1
  326. package/i18n/languages/ru-RU.d.ts +5 -0
  327. package/i18n/languages/ru-RU.js +1 -1
  328. package/i18n/languages/zh-CN.d.ts +5 -0
  329. package/i18n/languages/zh-CN.js +1 -1
  330. package/i18n/languages/zh-TW.d.ts +5 -0
  331. package/i18n/languages/zh-TW.js +1 -1
  332. package/i18n/phraseFormatters/index.js +1 -1
  333. package/i18n/registry.d.ts +13 -0
  334. package/i18n/registry.js +5 -5
  335. package/i18n/utils.js +1 -1
  336. package/index.d.ts +516 -0
  337. package/index.js +41 -113
  338. package/index.mjs +17 -90
  339. package/languages/all.js +2 -4
  340. package/languages/de-CH.js +2 -4
  341. package/languages/de-DE.js +2 -4
  342. package/languages/en-US.js +2 -4
  343. package/languages/es-MX.js +2 -4
  344. package/languages/fr-FR.js +2 -4
  345. package/languages/index.js +2 -4
  346. package/languages/it-IT.js +2 -4
  347. package/languages/ja-JP.js +2 -4
  348. package/languages/ko-KR.js +2 -4
  349. package/languages/lv-LV.js +2 -4
  350. package/languages/nb-NO.js +2 -4
  351. package/languages/nl-NL.js +2 -4
  352. package/languages/pl-PL.js +2 -4
  353. package/languages/pt-BR.js +2 -4
  354. package/languages/ru-RU.js +2 -4
  355. package/languages/zh-CN.js +2 -4
  356. package/languages/zh-TW.js +2 -4
  357. package/mixins/localHooks.js +17 -14
  358. package/mixins/localHooks.mjs +16 -13
  359. package/package.json +106 -15
  360. package/pluginHooks.d.ts +257 -0
  361. package/pluginHooks.js +216 -141
  362. package/pluginHooks.mjs +215 -141
  363. package/plugins/autoColumnSize/autoColumnSize.d.ts +27 -0
  364. package/plugins/autoColumnSize/autoColumnSize.js +24 -22
  365. package/plugins/autoColumnSize/autoColumnSize.mjs +22 -21
  366. package/plugins/autoColumnSize/index.d.ts +1 -0
  367. package/plugins/autoColumnSize/index.js +1 -1
  368. package/plugins/autoRowSize/autoRowSize.d.ts +27 -0
  369. package/plugins/autoRowSize/autoRowSize.js +29 -21
  370. package/plugins/autoRowSize/autoRowSize.mjs +26 -19
  371. package/plugins/autoRowSize/index.d.ts +1 -0
  372. package/plugins/autoRowSize/index.js +1 -1
  373. package/plugins/autofill/autofill.d.ts +18 -0
  374. package/plugins/autofill/autofill.js +12 -21
  375. package/plugins/autofill/autofill.mjs +9 -18
  376. package/plugins/autofill/index.d.ts +1 -0
  377. package/plugins/autofill/index.js +1 -1
  378. package/plugins/autofill/utils.js +1 -1
  379. package/plugins/base/base.d.ts +21 -0
  380. package/plugins/base/base.js +2 -2
  381. package/plugins/base/base.mjs +1 -1
  382. package/plugins/base/index.d.ts +1 -0
  383. package/plugins/base/index.js +1 -1
  384. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.d.ts +9 -0
  385. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +6 -6
  386. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +5 -5
  387. package/plugins/bindRowsWithHeaders/index.d.ts +1 -0
  388. package/plugins/bindRowsWithHeaders/index.js +1 -1
  389. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +7 -7
  390. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +6 -6
  391. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +9 -7
  392. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +7 -6
  393. package/plugins/collapsibleColumns/collapsibleColumns.d.ts +22 -0
  394. package/plugins/collapsibleColumns/collapsibleColumns.js +34 -27
  395. package/plugins/collapsibleColumns/collapsibleColumns.mjs +32 -26
  396. package/plugins/collapsibleColumns/index.d.ts +1 -0
  397. package/plugins/collapsibleColumns/index.js +1 -1
  398. package/plugins/columnSorting/columnSorting.d.ts +30 -0
  399. package/plugins/columnSorting/columnSorting.js +21 -19
  400. package/plugins/columnSorting/columnSorting.mjs +18 -17
  401. package/plugins/columnSorting/columnStatesManager.js +6 -4
  402. package/plugins/columnSorting/columnStatesManager.mjs +5 -4
  403. package/plugins/columnSorting/index.d.ts +1 -0
  404. package/plugins/columnSorting/index.js +1 -1
  405. package/plugins/columnSorting/rootComparator.js +2 -0
  406. package/plugins/columnSorting/rootComparator.mjs +1 -0
  407. package/plugins/columnSorting/sortFunction/checkbox.js +1 -1
  408. package/plugins/columnSorting/sortFunction/date.js +1 -1
  409. package/plugins/columnSorting/sortFunction/default.js +4 -3
  410. package/plugins/columnSorting/sortFunction/default.mjs +3 -2
  411. package/plugins/columnSorting/sortFunction/numeric.js +1 -1
  412. package/plugins/columnSorting/sortService/engine.js +1 -1
  413. package/plugins/columnSorting/sortService/registry.js +1 -1
  414. package/plugins/columnSorting/utils.js +4 -4
  415. package/plugins/columnSorting/utils.mjs +1 -1
  416. package/plugins/columnSummary/columnSummary.d.ts +72 -0
  417. package/plugins/columnSummary/columnSummary.js +32 -14
  418. package/plugins/columnSummary/columnSummary.mjs +30 -12
  419. package/plugins/columnSummary/endpoints.js +7 -5
  420. package/plugins/columnSummary/endpoints.mjs +6 -5
  421. package/plugins/columnSummary/index.d.ts +1 -0
  422. package/plugins/columnSummary/index.js +1 -1
  423. package/plugins/comments/commentEditor.js +7 -3
  424. package/plugins/comments/commentEditor.mjs +7 -3
  425. package/plugins/comments/comments.d.ts +50 -0
  426. package/plugins/comments/comments.js +49 -88
  427. package/plugins/comments/comments.mjs +49 -87
  428. package/plugins/comments/displaySwitch.js +2 -2
  429. package/plugins/comments/displaySwitch.mjs +2 -2
  430. package/plugins/comments/index.d.ts +1 -0
  431. package/plugins/comments/index.js +1 -1
  432. package/plugins/contextMenu/commandExecutor.js +2 -2
  433. package/plugins/contextMenu/commandExecutor.mjs +2 -2
  434. package/plugins/contextMenu/contextMenu.d.ts +65 -0
  435. package/plugins/contextMenu/contextMenu.js +9 -8
  436. package/plugins/contextMenu/contextMenu.mjs +7 -6
  437. package/plugins/contextMenu/cursor.js +2 -2
  438. package/plugins/contextMenu/cursor.mjs +2 -2
  439. package/plugins/contextMenu/index.d.ts +1 -0
  440. package/plugins/contextMenu/index.js +1 -1
  441. package/plugins/contextMenu/itemsFactory.js +2 -2
  442. package/plugins/contextMenu/itemsFactory.mjs +2 -2
  443. package/plugins/contextMenu/menu.js +5 -5
  444. package/plugins/contextMenu/menu.mjs +4 -4
  445. package/plugins/contextMenu/predefinedItems/alignment.js +2 -2
  446. package/plugins/contextMenu/predefinedItems/clearColumn.js +2 -2
  447. package/plugins/contextMenu/predefinedItems/columnLeft.js +2 -2
  448. package/plugins/contextMenu/predefinedItems/columnRight.js +2 -2
  449. package/plugins/contextMenu/predefinedItems/noItems.js +1 -1
  450. package/plugins/contextMenu/predefinedItems/readOnly.js +2 -2
  451. package/plugins/contextMenu/predefinedItems/redo.js +2 -2
  452. package/plugins/contextMenu/predefinedItems/removeColumn.js +4 -2
  453. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +1 -0
  454. package/plugins/contextMenu/predefinedItems/removeRow.js +4 -2
  455. package/plugins/contextMenu/predefinedItems/removeRow.mjs +1 -0
  456. package/plugins/contextMenu/predefinedItems/rowAbove.js +2 -2
  457. package/plugins/contextMenu/predefinedItems/rowBelow.js +2 -2
  458. package/plugins/contextMenu/predefinedItems/separator.js +1 -1
  459. package/plugins/contextMenu/predefinedItems/undo.js +2 -2
  460. package/plugins/contextMenu/predefinedItems.js +3 -3
  461. package/plugins/contextMenu/utils.js +10 -10
  462. package/plugins/copyPaste/clipboardData.js +4 -1
  463. package/plugins/copyPaste/clipboardData.mjs +4 -1
  464. package/plugins/copyPaste/contextMenuItem/copy.js +1 -1
  465. package/plugins/copyPaste/contextMenuItem/cut.js +1 -1
  466. package/plugins/copyPaste/copyPaste.d.ts +35 -0
  467. package/plugins/copyPaste/copyPaste.js +14 -11
  468. package/plugins/copyPaste/copyPaste.mjs +12 -10
  469. package/plugins/copyPaste/focusableElement.js +2 -3
  470. package/plugins/copyPaste/focusableElement.mjs +2 -3
  471. package/plugins/copyPaste/index.d.ts +1 -0
  472. package/plugins/copyPaste/index.js +1 -1
  473. package/plugins/copyPaste/pasteEvent.js +9 -2
  474. package/plugins/copyPaste/pasteEvent.mjs +9 -2
  475. package/plugins/customBorders/contextMenuItem/bottom.js +1 -1
  476. package/plugins/customBorders/contextMenuItem/left.js +1 -1
  477. package/plugins/customBorders/contextMenuItem/noBorders.js +1 -1
  478. package/plugins/customBorders/contextMenuItem/right.js +1 -1
  479. package/plugins/customBorders/contextMenuItem/top.js +1 -1
  480. package/plugins/customBorders/customBorders.d.ts +38 -0
  481. package/plugins/customBorders/customBorders.js +11 -9
  482. package/plugins/customBorders/customBorders.mjs +8 -7
  483. package/plugins/customBorders/index.d.ts +1 -0
  484. package/plugins/customBorders/index.js +1 -1
  485. package/plugins/customBorders/utils.js +3 -3
  486. package/plugins/dragToScroll/dragToScroll.d.ts +15 -0
  487. package/plugins/dragToScroll/dragToScroll.js +8 -8
  488. package/plugins/dragToScroll/dragToScroll.mjs +6 -6
  489. package/plugins/dragToScroll/index.d.ts +1 -0
  490. package/plugins/dragToScroll/index.js +1 -1
  491. package/plugins/dropdownMenu/dropdownMenu.d.ts +24 -0
  492. package/plugins/dropdownMenu/dropdownMenu.js +8 -8
  493. package/plugins/dropdownMenu/dropdownMenu.mjs +6 -6
  494. package/plugins/dropdownMenu/index.d.ts +1 -0
  495. package/plugins/dropdownMenu/index.js +1 -1
  496. package/plugins/exportFile/dataProvider.js +3 -5
  497. package/plugins/exportFile/dataProvider.mjs +3 -5
  498. package/plugins/exportFile/exportFile.d.ts +12 -0
  499. package/plugins/exportFile/exportFile.js +9 -9
  500. package/plugins/exportFile/exportFile.mjs +7 -7
  501. package/plugins/exportFile/index.d.ts +1 -0
  502. package/plugins/exportFile/index.js +1 -1
  503. package/plugins/exportFile/typeFactory.js +2 -1
  504. package/plugins/exportFile/typeFactory.mjs +1 -0
  505. package/plugins/exportFile/types/_base.js +1 -2
  506. package/plugins/exportFile/types/_base.mjs +1 -2
  507. package/plugins/exportFile/types/csv.js +6 -7
  508. package/plugins/exportFile/types/csv.mjs +5 -6
  509. package/plugins/filters/component/_base.js +2 -2
  510. package/plugins/filters/component/_base.mjs +2 -2
  511. package/plugins/filters/component/actionBar.js +7 -7
  512. package/plugins/filters/component/actionBar.mjs +6 -6
  513. package/plugins/filters/component/condition.js +10 -8
  514. package/plugins/filters/component/condition.mjs +8 -7
  515. package/plugins/filters/component/operators.js +7 -7
  516. package/plugins/filters/component/operators.mjs +6 -6
  517. package/plugins/filters/component/value.js +15 -8
  518. package/plugins/filters/component/value.mjs +13 -7
  519. package/plugins/filters/condition/beginsWith.js +5 -3
  520. package/plugins/filters/condition/beginsWith.mjs +2 -1
  521. package/plugins/filters/condition/between.js +4 -2
  522. package/plugins/filters/condition/between.mjs +1 -0
  523. package/plugins/filters/condition/byValue.js +3 -1
  524. package/plugins/filters/condition/byValue.mjs +1 -0
  525. package/plugins/filters/condition/contains.js +5 -3
  526. package/plugins/filters/condition/contains.mjs +2 -1
  527. package/plugins/filters/condition/date/after.js +4 -2
  528. package/plugins/filters/condition/date/after.mjs +1 -0
  529. package/plugins/filters/condition/date/before.js +4 -2
  530. package/plugins/filters/condition/date/before.mjs +1 -0
  531. package/plugins/filters/condition/date/today.js +2 -2
  532. package/plugins/filters/condition/date/tomorrow.js +2 -2
  533. package/plugins/filters/condition/date/yesterday.js +2 -2
  534. package/plugins/filters/condition/empty.js +2 -2
  535. package/plugins/filters/condition/endsWith.js +5 -3
  536. package/plugins/filters/condition/endsWith.mjs +2 -1
  537. package/plugins/filters/condition/equal.js +5 -3
  538. package/plugins/filters/condition/equal.mjs +2 -1
  539. package/plugins/filters/condition/false.js +1 -1
  540. package/plugins/filters/condition/greaterThan.js +4 -2
  541. package/plugins/filters/condition/greaterThan.mjs +1 -0
  542. package/plugins/filters/condition/greaterThanOrEqual.js +4 -2
  543. package/plugins/filters/condition/greaterThanOrEqual.mjs +1 -0
  544. package/plugins/filters/condition/lessThan.js +4 -2
  545. package/plugins/filters/condition/lessThan.mjs +1 -0
  546. package/plugins/filters/condition/lessThanOrEqual.js +4 -2
  547. package/plugins/filters/condition/lessThanOrEqual.mjs +1 -0
  548. package/plugins/filters/condition/none.js +2 -2
  549. package/plugins/filters/condition/notBetween.js +2 -2
  550. package/plugins/filters/condition/notContains.js +2 -2
  551. package/plugins/filters/condition/notEmpty.js +2 -2
  552. package/plugins/filters/condition/notEqual.js +2 -2
  553. package/plugins/filters/condition/true.js +1 -1
  554. package/plugins/filters/conditionCollection.d.ts +32 -0
  555. package/plugins/filters/conditionCollection.js +8 -5
  556. package/plugins/filters/conditionCollection.mjs +6 -4
  557. package/plugins/filters/conditionRegisterer.js +1 -1
  558. package/plugins/filters/conditionUpdateObserver.d.ts +10 -0
  559. package/plugins/filters/conditionUpdateObserver.js +4 -2
  560. package/plugins/filters/conditionUpdateObserver.mjs +3 -2
  561. package/plugins/filters/constants.js +2 -1
  562. package/plugins/filters/constants.mjs +1 -0
  563. package/plugins/filters/dataFilter.js +2 -2
  564. package/plugins/filters/dataFilter.mjs +2 -2
  565. package/plugins/filters/filters.d.ts +56 -0
  566. package/plugins/filters/filters.js +15 -11
  567. package/plugins/filters/filters.mjs +13 -10
  568. package/plugins/filters/index.d.ts +1 -0
  569. package/plugins/filters/index.js +1 -1
  570. package/plugins/filters/logicalOperationRegisterer.js +1 -1
  571. package/plugins/filters/logicalOperations/conjunction.js +4 -4
  572. package/plugins/filters/logicalOperations/conjunction.mjs +1 -0
  573. package/plugins/filters/logicalOperations/disjunction.js +4 -4
  574. package/plugins/filters/logicalOperations/disjunction.mjs +1 -0
  575. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +4 -4
  576. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +1 -0
  577. package/plugins/filters/ui/_base.js +4 -5
  578. package/plugins/filters/ui/_base.mjs +3 -4
  579. package/plugins/filters/ui/input.js +6 -6
  580. package/plugins/filters/ui/input.mjs +6 -6
  581. package/plugins/filters/ui/link.js +6 -6
  582. package/plugins/filters/ui/link.mjs +6 -6
  583. package/plugins/filters/ui/multipleSelect.js +34 -8
  584. package/plugins/filters/ui/multipleSelect.mjs +33 -8
  585. package/plugins/filters/ui/radioInput.js +6 -6
  586. package/plugins/filters/ui/radioInput.mjs +6 -6
  587. package/plugins/filters/ui/select.js +6 -6
  588. package/plugins/filters/ui/select.mjs +6 -6
  589. package/plugins/filters/utils.js +3 -3
  590. package/plugins/formulas/engine/register.js +4 -4
  591. package/plugins/formulas/engine/register.mjs +1 -1
  592. package/plugins/formulas/engine/settings.js +6 -6
  593. package/plugins/formulas/engine/settings.mjs +4 -5
  594. package/plugins/formulas/formulas.d.ts +31 -0
  595. package/plugins/formulas/formulas.js +287 -91
  596. package/plugins/formulas/formulas.mjs +280 -88
  597. package/plugins/formulas/index.d.ts +1 -0
  598. package/plugins/formulas/index.js +1 -1
  599. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +3 -1
  600. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +1 -0
  601. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +5 -3
  602. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +2 -1
  603. package/plugins/hiddenColumns/hiddenColumns.d.ts +21 -0
  604. package/plugins/hiddenColumns/hiddenColumns.js +39 -27
  605. package/plugins/hiddenColumns/hiddenColumns.mjs +38 -26
  606. package/plugins/hiddenColumns/index.d.ts +1 -0
  607. package/plugins/hiddenColumns/index.js +1 -1
  608. package/plugins/hiddenRows/contextMenuItem/hideRow.js +3 -1
  609. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +1 -0
  610. package/plugins/hiddenRows/contextMenuItem/showRow.js +5 -3
  611. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +2 -1
  612. package/plugins/hiddenRows/hiddenRows.d.ts +21 -0
  613. package/plugins/hiddenRows/hiddenRows.js +39 -28
  614. package/plugins/hiddenRows/hiddenRows.mjs +38 -27
  615. package/plugins/hiddenRows/index.d.ts +1 -0
  616. package/plugins/hiddenRows/index.js +1 -1
  617. package/plugins/index.d.ts +111 -0
  618. package/plugins/index.js +98 -58
  619. package/plugins/index.mjs +75 -34
  620. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +3 -1
  621. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -0
  622. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +3 -1
  623. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -0
  624. package/plugins/manualColumnFreeze/index.d.ts +1 -0
  625. package/plugins/manualColumnFreeze/index.js +1 -1
  626. package/plugins/manualColumnFreeze/manualColumnFreeze.d.ts +11 -0
  627. package/plugins/manualColumnFreeze/manualColumnFreeze.js +11 -8
  628. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +10 -7
  629. package/plugins/manualColumnMove/index.d.ts +1 -0
  630. package/plugins/manualColumnMove/index.js +1 -1
  631. package/plugins/manualColumnMove/manualColumnMove.d.ts +14 -0
  632. package/plugins/manualColumnMove/manualColumnMove.js +27 -25
  633. package/plugins/manualColumnMove/manualColumnMove.mjs +26 -24
  634. package/plugins/manualColumnMove/ui/_base.js +2 -2
  635. package/plugins/manualColumnMove/ui/_base.mjs +2 -2
  636. package/plugins/manualColumnMove/ui/backlight.js +7 -7
  637. package/plugins/manualColumnMove/ui/backlight.mjs +6 -6
  638. package/plugins/manualColumnMove/ui/guideline.js +7 -7
  639. package/plugins/manualColumnMove/ui/guideline.mjs +6 -6
  640. package/plugins/manualColumnResize/index.d.ts +1 -0
  641. package/plugins/manualColumnResize/index.js +1 -1
  642. package/plugins/manualColumnResize/manualColumnResize.d.ts +30 -0
  643. package/plugins/manualColumnResize/manualColumnResize.js +10 -10
  644. package/plugins/manualColumnResize/manualColumnResize.mjs +9 -9
  645. package/plugins/manualRowMove/index.d.ts +1 -0
  646. package/plugins/manualRowMove/index.js +1 -1
  647. package/plugins/manualRowMove/manualRowMove.d.ts +14 -0
  648. package/plugins/manualRowMove/manualRowMove.js +24 -22
  649. package/plugins/manualRowMove/manualRowMove.mjs +23 -21
  650. package/plugins/manualRowMove/ui/_base.js +2 -3
  651. package/plugins/manualRowMove/ui/_base.mjs +2 -3
  652. package/plugins/manualRowMove/ui/backlight.js +8 -8
  653. package/plugins/manualRowMove/ui/backlight.mjs +7 -7
  654. package/plugins/manualRowMove/ui/guideline.js +8 -8
  655. package/plugins/manualRowMove/ui/guideline.mjs +7 -7
  656. package/plugins/manualRowResize/index.d.ts +1 -0
  657. package/plugins/manualRowResize/index.js +1 -1
  658. package/plugins/manualRowResize/manualRowResize.d.ts +29 -0
  659. package/plugins/manualRowResize/manualRowResize.js +6 -6
  660. package/plugins/manualRowResize/manualRowResize.mjs +5 -5
  661. package/plugins/mergeCells/calculations/autofill.js +4 -3
  662. package/plugins/mergeCells/calculations/autofill.mjs +3 -3
  663. package/plugins/mergeCells/calculations/selection.js +2 -3
  664. package/plugins/mergeCells/calculations/selection.mjs +2 -3
  665. package/plugins/mergeCells/cellCoords.js +2 -2
  666. package/plugins/mergeCells/cellCoords.mjs +2 -2
  667. package/plugins/mergeCells/cellsCollection.js +6 -4
  668. package/plugins/mergeCells/cellsCollection.mjs +5 -4
  669. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +1 -1
  670. package/plugins/mergeCells/index.d.ts +1 -0
  671. package/plugins/mergeCells/index.js +1 -1
  672. package/plugins/mergeCells/mergeCells.d.ts +22 -0
  673. package/plugins/mergeCells/mergeCells.js +8 -6
  674. package/plugins/mergeCells/mergeCells.mjs +6 -5
  675. package/plugins/multiColumnSorting/domHelpers.js +2 -0
  676. package/plugins/multiColumnSorting/domHelpers.mjs +1 -0
  677. package/plugins/multiColumnSorting/index.d.ts +1 -0
  678. package/plugins/multiColumnSorting/index.js +1 -1
  679. package/plugins/multiColumnSorting/multiColumnSorting.d.ts +8 -0
  680. package/plugins/multiColumnSorting/multiColumnSorting.js +8 -8
  681. package/plugins/multiColumnSorting/multiColumnSorting.mjs +6 -6
  682. package/plugins/multiColumnSorting/rootComparator.js +2 -0
  683. package/plugins/multiColumnSorting/rootComparator.mjs +1 -0
  684. package/plugins/multipleSelectionHandles/index.d.ts +1 -0
  685. package/plugins/multipleSelectionHandles/index.js +1 -1
  686. package/plugins/multipleSelectionHandles/multipleSelectionHandles.d.ts +21 -0
  687. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +9 -8
  688. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +7 -6
  689. package/plugins/nestedHeaders/index.d.ts +1 -0
  690. package/plugins/nestedHeaders/index.js +1 -1
  691. package/plugins/nestedHeaders/nestedHeaders.d.ts +17 -0
  692. package/plugins/nestedHeaders/nestedHeaders.js +24 -20
  693. package/plugins/nestedHeaders/nestedHeaders.mjs +22 -18
  694. package/plugins/nestedHeaders/stateManager/headersTree.js +13 -7
  695. package/plugins/nestedHeaders/stateManager/headersTree.mjs +12 -7
  696. package/plugins/nestedHeaders/stateManager/index.js +10 -7
  697. package/plugins/nestedHeaders/stateManager/index.mjs +10 -7
  698. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +1 -1
  699. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +2 -0
  700. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +1 -0
  701. package/plugins/nestedHeaders/stateManager/sourceSettings.js +11 -7
  702. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +11 -7
  703. package/plugins/nestedHeaders/utils/ghostTable.js +4 -1
  704. package/plugins/nestedHeaders/utils/ghostTable.mjs +4 -1
  705. package/plugins/nestedRows/data/dataManager.js +42 -16
  706. package/plugins/nestedRows/data/dataManager.mjs +40 -15
  707. package/plugins/nestedRows/index.d.ts +1 -0
  708. package/plugins/nestedRows/index.js +1 -1
  709. package/plugins/nestedRows/nestedRows.d.ts +12 -0
  710. package/plugins/nestedRows/nestedRows.js +34 -35
  711. package/plugins/nestedRows/nestedRows.mjs +31 -33
  712. package/plugins/nestedRows/ui/_base.js +7 -4
  713. package/plugins/nestedRows/ui/_base.mjs +7 -4
  714. package/plugins/nestedRows/ui/collapsing.js +9 -8
  715. package/plugins/nestedRows/ui/collapsing.mjs +7 -7
  716. package/plugins/nestedRows/ui/contextMenu.js +5 -6
  717. package/plugins/nestedRows/ui/contextMenu.mjs +5 -6
  718. package/plugins/nestedRows/ui/headers.js +7 -8
  719. package/plugins/nestedRows/ui/headers.mjs +6 -7
  720. package/plugins/nestedRows/utils/rowMoveController.js +7 -6
  721. package/plugins/nestedRows/utils/rowMoveController.mjs +5 -5
  722. package/plugins/persistentState/index.d.ts +1 -0
  723. package/plugins/persistentState/persistentState.d.ts +13 -0
  724. package/plugins/persistentState/persistentState.js +15 -7
  725. package/plugins/persistentState/persistentState.mjs +14 -6
  726. package/plugins/persistentState/storage.js +2 -2
  727. package/plugins/persistentState/storage.mjs +2 -2
  728. package/plugins/registry.d.ts +9 -0
  729. package/plugins/registry.js +3 -1
  730. package/plugins/registry.mjs +1 -0
  731. package/plugins/search/index.d.ts +1 -0
  732. package/plugins/search/search.d.ts +28 -0
  733. package/plugins/search/search.js +10 -10
  734. package/plugins/search/search.mjs +10 -10
  735. package/plugins/touchScroll/index.d.ts +1 -0
  736. package/plugins/touchScroll/touchScroll.d.ts +13 -0
  737. package/plugins/touchScroll/touchScroll.js +16 -16
  738. package/plugins/touchScroll/touchScroll.mjs +15 -14
  739. package/plugins/trimRows/index.d.ts +1 -0
  740. package/plugins/trimRows/trimRows.d.ts +17 -0
  741. package/plugins/trimRows/trimRows.js +6 -6
  742. package/plugins/trimRows/trimRows.mjs +6 -6
  743. package/plugins/undoRedo/index.d.ts +1 -0
  744. package/plugins/undoRedo/index.js +1 -1
  745. package/plugins/undoRedo/undoRedo.d.ts +49 -0
  746. package/plugins/undoRedo/undoRedo.js +30 -32
  747. package/plugins/undoRedo/undoRedo.mjs +28 -31
  748. package/registry.d.ts +6 -0
  749. package/registry.js +46 -0
  750. package/registry.mjs +27 -0
  751. package/renderers/autocompleteRenderer/autocompleteRenderer.d.ts +5 -0
  752. package/renderers/autocompleteRenderer/autocompleteRenderer.js +1 -1
  753. package/renderers/autocompleteRenderer/index.d.ts +1 -0
  754. package/renderers/base.d.ts +3 -0
  755. package/renderers/baseRenderer/baseRenderer.d.ts +5 -0
  756. package/renderers/baseRenderer/baseRenderer.js +1 -1
  757. package/renderers/baseRenderer/index.d.ts +1 -0
  758. package/renderers/checkboxRenderer/checkboxRenderer.d.ts +5 -0
  759. package/renderers/checkboxRenderer/checkboxRenderer.js +3 -5
  760. package/renderers/checkboxRenderer/checkboxRenderer.mjs +3 -4
  761. package/renderers/checkboxRenderer/index.d.ts +1 -0
  762. package/renderers/htmlRenderer/htmlRenderer.d.ts +5 -0
  763. package/renderers/htmlRenderer/htmlRenderer.js +1 -1
  764. package/renderers/htmlRenderer/index.d.ts +1 -0
  765. package/renderers/index.d.ts +42 -0
  766. package/renderers/index.js +16 -2
  767. package/renderers/index.mjs +22 -7
  768. package/renderers/numericRenderer/index.d.ts +1 -0
  769. package/renderers/numericRenderer/numericRenderer.d.ts +5 -0
  770. package/renderers/numericRenderer/numericRenderer.js +1 -1
  771. package/renderers/passwordRenderer/index.d.ts +1 -0
  772. package/renderers/passwordRenderer/passwordRenderer.d.ts +5 -0
  773. package/renderers/passwordRenderer/passwordRenderer.js +1 -1
  774. package/renderers/registry.d.ts +18 -0
  775. package/renderers/registry.js +3 -2
  776. package/renderers/textRenderer/index.d.ts +1 -0
  777. package/renderers/textRenderer/textRenderer.d.ts +5 -0
  778. package/renderers/textRenderer/textRenderer.js +1 -1
  779. package/selection/highlight/constants.js +1 -1
  780. package/selection/highlight/highlight.js +10 -8
  781. package/selection/highlight/highlight.mjs +8 -7
  782. package/selection/highlight/types/activeHeader.js +4 -2
  783. package/selection/highlight/types/activeHeader.mjs +3 -2
  784. package/selection/highlight/types/area.js +4 -2
  785. package/selection/highlight/types/area.mjs +3 -2
  786. package/selection/highlight/types/cell.js +4 -2
  787. package/selection/highlight/types/cell.mjs +3 -2
  788. package/selection/highlight/types/customSelection.js +4 -2
  789. package/selection/highlight/types/customSelection.mjs +3 -2
  790. package/selection/highlight/types/fill.js +4 -2
  791. package/selection/highlight/types/fill.mjs +3 -2
  792. package/selection/highlight/types/header.js +4 -2
  793. package/selection/highlight/types/header.mjs +3 -2
  794. package/selection/highlight/types/index.js +4 -2
  795. package/selection/highlight/types/index.mjs +3 -2
  796. package/selection/highlight/visualSelection.js +9 -7
  797. package/selection/highlight/visualSelection.mjs +7 -6
  798. package/selection/index.d.ts +5 -0
  799. package/selection/index.js +2 -0
  800. package/selection/mouseEventHandler.js +4 -4
  801. package/selection/mouseEventHandler.mjs +3 -3
  802. package/selection/range.js +6 -6
  803. package/selection/range.mjs +5 -5
  804. package/selection/selection.js +18 -9
  805. package/selection/selection.mjs +17 -9
  806. package/selection/transformation.js +4 -3
  807. package/selection/transformation.mjs +4 -3
  808. package/selection/utils.js +6 -4
  809. package/selection/utils.mjs +3 -2
  810. package/settings.d.ts +208 -0
  811. package/tableView.js +21 -15
  812. package/tableView.mjs +19 -14
  813. package/translations/changesObservable/observable.js +11 -6
  814. package/translations/changesObservable/observable.mjs +11 -6
  815. package/translations/changesObservable/observer.js +7 -2
  816. package/translations/changesObservable/observer.mjs +7 -2
  817. package/translations/changesObservable/utils.js +1 -0
  818. package/translations/changesObservable/utils.mjs +1 -0
  819. package/translations/index.d.ts +1 -0
  820. package/translations/index.js +3 -1
  821. package/translations/indexMapper.d.ts +46 -0
  822. package/translations/indexMapper.js +38 -13
  823. package/translations/indexMapper.mjs +35 -12
  824. package/translations/mapCollections/aggregatedCollection.js +6 -6
  825. package/translations/mapCollections/aggregatedCollection.mjs +5 -5
  826. package/translations/mapCollections/index.js +2 -0
  827. package/translations/mapCollections/mapCollection.js +2 -2
  828. package/translations/mapCollections/mapCollection.mjs +1 -1
  829. package/translations/maps/hidingMap.js +6 -6
  830. package/translations/maps/hidingMap.mjs +5 -5
  831. package/translations/maps/indexMap.d.ts +10 -0
  832. package/translations/maps/indexMap.js +1 -1
  833. package/translations/maps/indexMap.mjs +1 -1
  834. package/translations/maps/indexesSequence.js +7 -7
  835. package/translations/maps/indexesSequence.mjs +6 -6
  836. package/translations/maps/linkedPhysicalIndexToValueMap.js +7 -5
  837. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +6 -5
  838. package/translations/maps/physicalIndexToValueMap.js +7 -7
  839. package/translations/maps/physicalIndexToValueMap.mjs +6 -6
  840. package/translations/maps/trimmingMap.js +6 -6
  841. package/translations/maps/trimmingMap.mjs +5 -5
  842. package/translations/maps/utils/actionsOnIndexes.js +2 -0
  843. package/translations/maps/utils/actionsOnIndexes.mjs +1 -0
  844. package/translations/maps/utils/indexesSequence.js +2 -0
  845. package/translations/maps/utils/indexesSequence.mjs +1 -0
  846. package/translations/maps/utils/physicallyIndexed.js +2 -0
  847. package/translations/maps/utils/physicallyIndexed.mjs +1 -0
  848. package/utils/dataStructures/linkedList.js +3 -3
  849. package/utils/dataStructures/linkedList.mjs +3 -3
  850. package/utils/dataStructures/priorityMap.js +3 -1
  851. package/utils/dataStructures/priorityMap.mjs +1 -0
  852. package/utils/dataStructures/queue.js +1 -1
  853. package/utils/dataStructures/queue.mjs +1 -1
  854. package/utils/dataStructures/stack.js +1 -1
  855. package/utils/dataStructures/stack.mjs +1 -1
  856. package/utils/dataStructures/tree.js +6 -4
  857. package/utils/dataStructures/tree.mjs +4 -3
  858. package/utils/dataStructures/uniqueMap.js +2 -0
  859. package/utils/dataStructures/uniqueMap.mjs +1 -0
  860. package/utils/dataStructures/uniqueSet.js +2 -0
  861. package/utils/dataStructures/uniqueSet.mjs +1 -0
  862. package/utils/ghostTable.js +17 -5
  863. package/utils/ghostTable.mjs +16 -5
  864. package/utils/interval.js +2 -3
  865. package/utils/interval.mjs +1 -2
  866. package/utils/parseTable.d.ts +5 -0
  867. package/utils/parseTable.js +1 -1
  868. package/utils/rootInstance.js +3 -2
  869. package/utils/samplesGenerator.js +1 -2
  870. package/utils/samplesGenerator.mjs +1 -2
  871. package/utils/staticRegister.js +3 -1
  872. package/utils/staticRegister.mjs +1 -0
  873. package/validators/autocompleteValidator/autocompleteValidator.d.ts +5 -0
  874. package/validators/autocompleteValidator/autocompleteValidator.js +1 -1
  875. package/validators/autocompleteValidator/index.d.ts +1 -0
  876. package/validators/base.d.ts +6 -0
  877. package/validators/dateValidator/dateValidator.d.ts +5 -0
  878. package/validators/dateValidator/dateValidator.js +2 -2
  879. package/validators/dateValidator/index.d.ts +1 -0
  880. package/validators/index.d.ts +33 -0
  881. package/validators/index.js +13 -2
  882. package/validators/index.mjs +16 -4
  883. package/validators/numericValidator/index.d.ts +1 -0
  884. package/validators/numericValidator/numericValidator.d.ts +5 -0
  885. package/validators/numericValidator/numericValidator.js +1 -1
  886. package/validators/registry.d.ts +18 -0
  887. package/validators/registry.js +3 -2
  888. package/validators/timeValidator/index.d.ts +1 -0
  889. package/validators/timeValidator/timeValidator.d.ts +5 -0
  890. package/validators/timeValidator/timeValidator.js +3 -1
  891. package/validators/timeValidator/timeValidator.mjs +1 -0
  892. package/handsontable-general-terms.pdf +0 -0
  893. package/handsontable.d.ts +0 -2616
  894. package/plugins/formulas/autofill.js +0 -180
  895. package/plugins/formulas/autofill.mjs +0 -172
package/pluginHooks.mjs CHANGED
@@ -7,7 +7,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
7
7
 
8
8
  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); } }
9
9
 
10
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
10
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
11
11
 
12
12
  import "core-js/modules/es.array.iterator.js";
13
13
  import "core-js/modules/es.map.js";
@@ -24,6 +24,7 @@ import { objectEach } from "./helpers/object.mjs";
24
24
  import { substitute } from "./helpers/string.mjs";
25
25
  import { warn } from "./helpers/console.mjs";
26
26
  import { toSingleLine } from "./helpers/templateLiteralTag.mjs";
27
+ import { fastCall } from "./helpers/function.mjs";
27
28
  /**
28
29
  * @description
29
30
  * Handsontable events are the common interface that function in 2 ways: as __callbacks__ and as __hooks__.
@@ -73,8 +74,10 @@ import { toSingleLine } from "./helpers/templateLiteralTag.mjs";
73
74
  // @TODO: Move plugin description hooks to plugin?
74
75
 
75
76
  var REGISTERED_HOOKS = [
77
+ /* eslint-disable jsdoc/require-description-complete-sentence */
78
+
76
79
  /**
77
- * Fired after resetting a cell's meta. This happens when the {@link core#updatesettings Core#updateSettings} method is called.
80
+ * Fired after resetting a cell's meta. This happens when the {@link Core#updateSettings} method is called.
78
81
  *
79
82
  * @event Hooks#afterCellMetaReset
80
83
  */
@@ -101,15 +104,15 @@ var REGISTERED_HOOKS = [
101
104
  */
102
105
  'afterChange',
103
106
  /**
104
- * Fired each time user opens {@link context-menu ContextMenu} and after setting up the Context Menu's default options. These options are a collection
105
- * which user can select by setting an array of keys or an array of objects in {@link options#contextmenu Options#contextMenu} option.
107
+ * Fired each time user opens {@link ContextMenu} and after setting up the Context Menu's default options. These options are a collection
108
+ * which user can select by setting an array of keys or an array of objects in {@link Options#contextMenu} option.
106
109
  *
107
110
  * @event Hooks#afterContextMenuDefaultOptions
108
111
  * @param {Array} predefinedItems An array of objects containing information about the pre-defined Context Menu items.
109
112
  */
110
113
  'afterContextMenuDefaultOptions',
111
114
  /**
112
- * Fired each time user opens {@link context-menu ContextMenu} plugin before setting up the Context Menu's items but after filtering these options by
115
+ * Fired each time user opens {@link ContextMenu} plugin before setting up the Context Menu's items but after filtering these options by
113
116
  * user (`contextMenu` option). This hook can by helpful to determine if user use specified menu item or to set up
114
117
  * one of the menu item to by always visible.
115
118
  *
@@ -118,8 +121,8 @@ var REGISTERED_HOOKS = [
118
121
  */
119
122
  'beforeContextMenuSetItems',
120
123
  /**
121
- * Fired by {@link dropdown-menu DropdownMenu} plugin after setting up the Dropdown Menu's default options. These options are a
122
- * collection which user can select by setting an array of keys or an array of objects in {@link options#dropdownmenu Options#dropdownMenu}
124
+ * Fired by {@link DropdownMenu} plugin after setting up the Dropdown Menu's default options. These options are a
125
+ * collection which user can select by setting an array of keys or an array of objects in {@link Options#dropdownMenu}
123
126
  * option.
124
127
  *
125
128
  * @event Hooks#afterDropdownMenuDefaultOptions
@@ -127,7 +130,7 @@ var REGISTERED_HOOKS = [
127
130
  */
128
131
  'afterDropdownMenuDefaultOptions',
129
132
  /**
130
- * Fired by {@link dropdown-menu DropdownMenu} plugin before setting up the Dropdown Menu's items but after filtering these options
133
+ * Fired by {@link DropdownMenu} plugin before setting up the Dropdown Menu's items but after filtering these options
131
134
  * by user (`dropdownMenu` option). This hook can by helpful to determine if user use specified menu item or to set
132
135
  * up one of the menu item to by always visible.
133
136
  *
@@ -136,7 +139,7 @@ var REGISTERED_HOOKS = [
136
139
  */
137
140
  'beforeDropdownMenuSetItems',
138
141
  /**
139
- * Fired by {@link context-menu ContextMenu} plugin after hiding the Context Menu. This hook is fired when {@link options#contextmenu Options#contextMenu}
142
+ * Fired by {@link ContextMenu} plugin after hiding the Context Menu. This hook is fired when {@link Options#contextMenu}
140
143
  * option is enabled.
141
144
  *
142
145
  * @event Hooks#afterContextMenuHide
@@ -144,7 +147,7 @@ var REGISTERED_HOOKS = [
144
147
  */
145
148
  'afterContextMenuHide',
146
149
  /**
147
- * Fired by {@link context-menu ContextMenu} plugin before opening the Context Menu. This hook is fired when {@link options#context-menu Options#contextMenu}
150
+ * Fired by {@link ContextMenu} plugin before opening the Context Menu. This hook is fired when {@link Options#contextMenu}
148
151
  * option is enabled.
149
152
  *
150
153
  * @event Hooks#beforeContextMenuShow
@@ -152,7 +155,7 @@ var REGISTERED_HOOKS = [
152
155
  */
153
156
  'beforeContextMenuShow',
154
157
  /**
155
- * Fired by {@link context-menu ContextMenu} plugin after opening the Context Menu. This hook is fired when {@link options#contextmenu Options#contextMenu}
158
+ * Fired by {@link ContextMenu} plugin after opening the Context Menu. This hook is fired when {@link Options#contextMenu}
156
159
  * option is enabled.
157
160
  *
158
161
  * @event Hooks#afterContextMenuShow
@@ -160,8 +163,8 @@ var REGISTERED_HOOKS = [
160
163
  */
161
164
  'afterContextMenuShow',
162
165
  /**
163
- * Fired by {@link copy-paste CopyPaste} plugin after reaching the copy limit while copying data. This hook is fired when
164
- * {@link options#copypaste Options#copyPaste} option is enabled.
166
+ * Fired by {@link CopyPaste} plugin after reaching the copy limit while copying data. This hook is fired when
167
+ * {@link Options#copyPaste} option is enabled.
165
168
  *
166
169
  * @event Hooks#afterCopyLimit
167
170
  * @param {number} selectedRows Count of selected copyable rows.
@@ -293,14 +296,35 @@ var REGISTERED_HOOKS = [
293
296
  */
294
297
  'afterInit',
295
298
  /**
296
- * Fired after new data is loaded (by `loadData` or `updateSettings` method) into the data source array.
299
+ * Fired after Handsontable's [`data`](@/api/options.md#data)
300
+ * gets modified by the [`loadData()`](@/api/core.md#loaddata) method
301
+ * or the [`updateSettings()`](@/api/core.md#updatesettings) method.
302
+ *
303
+ * Read more:
304
+ * - [Binding to data &#8594;](@/guides/getting-started/binding-to-data.md)
305
+ * - [Saving data &#8594;](@/guides/getting-started/saving-data.md)
297
306
  *
298
307
  * @event Hooks#afterLoadData
299
- * @param {Array} sourceData Array of arrays or array of objects containing data.
300
- * @param {boolean} initialLoad Flag that determines whether the data has been loaded during the initialization.
301
- * @param {string} source Source of the call.
308
+ * @param {Array} sourceData An [array of arrays](@/guides/getting-started/binding-to-data.md#array-of-arrays), or an [array of objects](@/guides/getting-started/binding-to-data.md#array-of-objects), that contains Handsontable's data
309
+ * @param {boolean} initialLoad A flag that indicates whether the data was loaded at Handsontable's initialization (`true`) or later (`false`)
310
+ * @param {string} source The source of the call
302
311
  */
303
312
  'afterLoadData',
313
+ /**
314
+ * Fired after the [`updateData()`](@/api/core.md#updatedata) method
315
+ * modifies Handsontable's [`data`](@/api/options.md#data).
316
+ *
317
+ * Read more:
318
+ * - [Binding to data &#8594;](@/guides/getting-started/binding-to-data.md)
319
+ * - [Saving data &#8594;](@/guides/getting-started/saving-data.md)
320
+ *
321
+ * @event Hooks#afterUpdateData
322
+ * @since 11.1.0
323
+ * @param {Array} sourceData An [array of arrays](@/guides/getting-started/binding-to-data.md#array-of-arrays), or an [array of objects](@/guides/getting-started/binding-to-data.md#array-of-objects), that contains Handsontable's data
324
+ * @param {boolean} initialLoad A flag that indicates whether the data was loaded at Handsontable's initialization (`true`) or later (`false`)
325
+ * @param {string} source The source of the call
326
+ */
327
+ 'afterUpdateData',
304
328
  /**
305
329
  * Fired after a scroll event, which is identified as a momentum scroll (e.g. On an iPad).
306
330
  *
@@ -404,14 +428,6 @@ var REGISTERED_HOOKS = [
404
428
  * ([list of all available sources](@/guides/getting-started/events-and-hooks.md#definition-for-source-argument)).
405
429
  */
406
430
  'afterRemoveRow',
407
- /**
408
- * Fired after the Handsontable table is rendered.
409
- *
410
- * @event Hooks#afterRender
411
- * @param {boolean} isForced Is `true` if rendering was triggered by a change of settings or data; or `false` if
412
- * rendering was triggered by scrolling or moving selection.
413
- */
414
- 'afterRender',
415
431
  /**
416
432
  * Fired before starting rendering the cell.
417
433
  *
@@ -456,13 +472,19 @@ var REGISTERED_HOOKS = [
456
472
  * @param {number} column Selection start visual column index.
457
473
  * @param {number} row2 Selection end visual row index.
458
474
  * @param {number} column2 Selection end visual column index.
475
+ * @param {object} preventScrolling A reference to the observable object with the `value` property.
476
+ * Property `preventScrolling.value` expects a boolean value that
477
+ * Handsontable uses to control scroll behavior after selection.
459
478
  * @param {object} preventScrolling Object with `value` property where its value change will be observed.
460
479
  * @param {number} selectionLayerLevel The number which indicates what selection layer is currently modified.
461
480
  * @example
462
481
  * ```js
463
482
  * new Handsontable(element, {
464
483
  * afterSelection: (row, column, row2, column2, preventScrolling, selectionLayerLevel) => {
465
- * // setting if prevent scrolling after selection
484
+ * // If set to `false` (default): when cell selection is outside the viewport,
485
+ * // Handsontable scrolls the viewport to cell selection's end corner.
486
+ * // If set to `true`: when cell selection is outside the viewport,
487
+ * // Handsontable doesn't scroll to cell selection's end corner.
466
488
  * preventScrolling.value = true;
467
489
  * }
468
490
  * })
@@ -605,8 +627,8 @@ var REGISTERED_HOOKS = [
605
627
  */
606
628
  'afterLanguageChange',
607
629
  /**
608
- * Fired by {@link autofill Autofill} plugin before populating the data in the autofill feature. This hook is fired when
609
- * {@link options#fillhandle Options#fillHandle} option is enabled.
630
+ * Fired by {@link Autofill} plugin before populating the data in the autofill feature. This hook is fired when
631
+ * {@link Options#fillHandle} option is enabled.
610
632
  *
611
633
  * @event Hooks#beforeAutofill
612
634
  * @param {Array[]} selectionData Data the autofill operation will start from.
@@ -620,8 +642,8 @@ var REGISTERED_HOOKS = [
620
642
  */
621
643
  'beforeAutofill',
622
644
  /**
623
- * Fired by {@link autofill Autofill} plugin after populating the data in the autofill feature. This hook is fired when
624
- * {@link options#fillhandle Options#fillHandle} option is enabled.
645
+ * Fired by {@link Autofill} plugin after populating the data in the autofill feature. This hook is fired when
646
+ * {@link Options#fillHandle} option is enabled.
625
647
  *
626
648
  * @event Hooks#afterAutofill
627
649
  * @since 8.0.0
@@ -736,16 +758,38 @@ var REGISTERED_HOOKS = [
736
758
  */
737
759
  'beforeInitWalkontable',
738
760
  /**
739
- * Fired before new data is loaded (by `loadData` or `updateSettings` method) into the data source array.
761
+ * Fired before Handsontable's [`data`](@/api/options.md#data)
762
+ * gets modified by the [`loadData()`](@/api/core.md#loaddata) method
763
+ * or the [`updateSettings()`](@/api/core.md#updatesettings) method.
764
+ *
765
+ * Read more:
766
+ * - [Binding to data &#8594;](@/guides/getting-started/binding-to-data.md)
767
+ * - [Saving data &#8594;](@/guides/getting-started/saving-data.md)
740
768
  *
741
769
  * @event Hooks#beforeLoadData
742
770
  * @since 8.0.0
743
- * @param {Array} sourceData Array of arrays or array of objects containing data.
744
- * @param {boolean} initialLoad Flag that determines whether the data has been loaded during the initialization.
745
- * @param {string} source Source of the call.
746
- * @returns {Array} The returned array will be used as new dataset.
771
+ * @param {Array} sourceData An [array of arrays](@/guides/getting-started/binding-to-data.md#array-of-arrays), or an [array of objects](@/guides/getting-started/binding-to-data.md#array-of-objects), that contains Handsontable's data
772
+ * @param {boolean} initialLoad A flag that indicates whether the data was loaded at Handsontable's initialization (`true`) or later (`false`)
773
+ * @param {string} source The source of the call
774
+ * @returns {Array} The returned array will be used as Handsontable's new dataset.
747
775
  */
748
776
  'beforeLoadData',
777
+ /**
778
+ * Fired before the [`updateData()`](@/api/core.md#updatedata) method
779
+ * modifies Handsontable's [`data`](@/api/options.md#data).
780
+ *
781
+ * Read more:
782
+ * - [Binding to data &#8594;](@/guides/getting-started/binding-to-data.md)
783
+ * - [Saving data &#8594;](@/guides/getting-started/saving-data.md)
784
+ *
785
+ * @event Hooks#beforeUpdateData
786
+ * @since 11.1.0
787
+ * @param {Array} sourceData An [array of arrays](@/guides/getting-started/binding-to-data.md#array-of-arrays), or an [array of objects](@/guides/getting-started/binding-to-data.md#array-of-objects), that contains Handsontable's data
788
+ * @param {boolean} initialLoad A flag that indicates whether the data was loaded at Handsontable's initialization (`true`) or later (`false`)
789
+ * @param {string} source The source of the call
790
+ * @returns {Array} The returned array will be used as Handsontable's new dataset.
791
+ */
792
+ 'beforeUpdateData',
749
793
  /**
750
794
  * Fired before keydown event is handled. It can be used to overwrite default key bindings.
751
795
  *
@@ -763,8 +807,8 @@ var REGISTERED_HOOKS = [
763
807
  * @param {Event} event The `mousedown` event object.
764
808
  * @param {CellCoords} coords Cell coords object containing the visual coordinates of the clicked cell.
765
809
  * @param {HTMLTableCellElement} TD TD element.
766
- * @param {object} controller An object with keys `row`, `column` and `cells` which contains boolean values. This
767
- * object allows or disallows changing the selection for the particular axies.
810
+ * @param {object} controller An object with properties `row`, `column` and `cell`. Each property contains
811
+ * a boolean value that allows or disallows changing the selection for that particular area.
768
812
  */
769
813
  'beforeOnCellMouseDown',
770
814
  /**
@@ -793,8 +837,8 @@ var REGISTERED_HOOKS = [
793
837
  * @param {Event} event The `mouseover` event object.
794
838
  * @param {CellCoords} coords CellCoords object containing the visual coordinates of the clicked cell.
795
839
  * @param {HTMLTableCellElement} TD TD element.
796
- * @param {object} controller An object with keys `row`, `column` and `cells` which contains boolean values. This
797
- * object allows or disallows changing the selection for the particular axies.
840
+ * @param {object} controller An object with properties `row`, `column` and `cell`. Each property contains
841
+ * a boolean value that allows or disallows changing the selection for that particular area.
798
842
  */
799
843
  'beforeOnCellMouseOver',
800
844
  /**
@@ -831,14 +875,53 @@ var REGISTERED_HOOKS = [
831
875
  */
832
876
  'beforeRemoveRow',
833
877
  /**
834
- * Fired before the Handsontable table is rendered.
878
+ * Fired before Handsontable's view-rendering engine is rendered.
835
879
  *
836
- * @event Hooks#beforeRender
837
- * @param {boolean} isForced If `true` rendering was triggered by a change of settings or data; or `false` if
838
- * rendering was triggered by scrolling or moving selection.
880
+ * __Note:__ In Handsontable 9.x and earlier, the `beforeViewRender` hook was named `beforeRender`.
881
+ *
882
+ * @event Hooks#beforeViewRender
883
+ * @since 10.0.0
884
+ * @param {boolean} isForced If set to `true`, the rendering gets triggered by a change of settings, a change of
885
+ * data, or a logic that needs a full Handsontable render cycle.
886
+ * If set to `false`, the rendering gets triggered by scrolling or moving the selection.
839
887
  * @param {object} skipRender Object with `skipRender` property, if it is set to `true ` the next rendering cycle will be skipped.
840
888
  */
889
+ 'beforeViewRender',
890
+ /**
891
+ * Fired after Handsontable's view-rendering engine is rendered,
892
+ * but before redrawing the selection borders and before scroll syncing.
893
+ *
894
+ * __Note:__ In Handsontable 9.x and earlier, the `afterViewRender` hook was named `afterRender`.
895
+ *
896
+ * @event Hooks#afterViewRender
897
+ * @since 10.0.0
898
+ * @param {boolean} isForced If set to `true`, the rendering gets triggered by a change of settings, a change of
899
+ * data, or a logic that needs a full Handsontable render cycle.
900
+ * If set to `false`, the rendering gets triggered by scrolling or moving the selection.
901
+ */
902
+ 'afterViewRender',
903
+ /**
904
+ * Fired before Handsontable's view-rendering engine updates the view.
905
+ *
906
+ * The `beforeRender` event is fired right after the Handsontable
907
+ * business logic is executed and right before the rendering engine starts calling
908
+ * the Core logic, renderers, cell meta objects etc. to update the view.
909
+ *
910
+ * @event Hooks#beforeRender
911
+ * @param {boolean} isForced If set to `true`, the rendering gets triggered by a change of settings, a change of
912
+ * data, or a logic that needs a full Handsontable render cycle.
913
+ * If set to `false`, the rendering gets triggered by scrolling or moving the selection.
914
+ */
841
915
  'beforeRender',
916
+ /**
917
+ * Fired after Handsontable's view-rendering engine updates the view.
918
+ *
919
+ * @event Hooks#afterRender
920
+ * @param {boolean} isForced If set to `true`, the rendering gets triggered by a change of settings, a change of
921
+ * data, or a logic that needs a full Handsontable render cycle.
922
+ * If set to `false`, the rendering gets triggered by scrolling or moving the selection.
923
+ */
924
+ 'afterRender',
842
925
  /**
843
926
  * Fired before cell meta is changed.
844
927
  *
@@ -1013,8 +1096,8 @@ var REGISTERED_HOOKS = [
1013
1096
  */
1014
1097
  'beforeHighlightingColumnHeader',
1015
1098
  /**
1016
- * Fired by {@link persistent-state PersistentState} plugin, after loading value, saved under given key, from browser local storage. This hook is fired when
1017
- * {@link options#persistentstate Options#persistentState} option is enabled.
1099
+ * Fired by {@link PersistentState} plugin, after loading value, saved under given key, from browser local storage. This hook is fired when
1100
+ * {@link Options#persistentState} option is enabled.
1018
1101
  *
1019
1102
  * @event Hooks#persistentStateLoad
1020
1103
  * @param {string} key Key.
@@ -1022,16 +1105,16 @@ var REGISTERED_HOOKS = [
1022
1105
  */
1023
1106
  'persistentStateLoad',
1024
1107
  /**
1025
- * Fired by {@link persistent-state PersistentState} plugin after resetting data from local storage. If no key is given, all values associated with table will be cleared.
1026
- * This hook is fired when {@link options#persistentstate Options#persistentState} option is enabled.
1108
+ * Fired by {@link PersistentState} plugin after resetting data from local storage. If no key is given, all values associated with table will be cleared.
1109
+ * This hook is fired when {@link Options#persistentState} option is enabled.
1027
1110
  *
1028
1111
  * @event Hooks#persistentStateReset
1029
1112
  * @param {string} [key] Key.
1030
1113
  */
1031
1114
  'persistentStateReset',
1032
1115
  /**
1033
- * Fired by {@link persistent-state PersistentState} plugin, after saving value under given key in browser local storage. This hook is fired when
1034
- * {@link options#persistentstate Options#persistentState} option is enabled.
1116
+ * Fired by {@link PersistentState} plugin, after saving value under given key in browser local storage. This hook is fired when
1117
+ * {@link Options#persistentState} option is enabled.
1035
1118
  *
1036
1119
  * @event Hooks#persistentStateSave
1037
1120
  * @param {string} key Key.
@@ -1039,10 +1122,10 @@ var REGISTERED_HOOKS = [
1039
1122
  */
1040
1123
  'persistentStateSave',
1041
1124
  /**
1042
- * Fired by {@link column-sorting ColumnSorting} and {@link multi-column-sorting MultiColumnSorting} plugins before sorting the column. If you return `false` value inside callback for hook, then sorting
1125
+ * Fired by {@link ColumnSorting} and {@link MultiColumnSorting} plugins before sorting the column. If you return `false` value inside callback for hook, then sorting
1043
1126
  * will be not applied by the Handsontable (useful for server-side sorting).
1044
1127
  *
1045
- * This hook is fired when {@link options#columnsorting Options#columnSorting} or {@link options#multicolumnsorting Options#multiColumnSorting} option is enabled.
1128
+ * This hook is fired when {@link Options#columnSorting} or {@link Options#multiColumnSorting} option is enabled.
1046
1129
  *
1047
1130
  * @event Hooks#beforeColumnSort
1048
1131
  * @param {Array} currentSortConfig Current sort configuration (for all sorted columns).
@@ -1051,8 +1134,8 @@ var REGISTERED_HOOKS = [
1051
1134
  */
1052
1135
  'beforeColumnSort',
1053
1136
  /**
1054
- * Fired by {@link column-sorting ColumnSorting} and {@link multi-column-sorting MultiColumnSorting} plugins after sorting the column. This hook is fired when {@link options#columnsorting Options#columnSorting}
1055
- * or {@link options#multicolumnsorting Options#multiColumnSorting} option is enabled.
1137
+ * Fired by {@link ColumnSorting} and {@link MultiColumnSorting} plugins after sorting the column. This hook is fired when {@link Options#columnSorting}
1138
+ * or {@link Options#multiColumnSorting} option is enabled.
1056
1139
  *
1057
1140
  * @event Hooks#afterColumnSort
1058
1141
  * @param {Array} currentSortConfig Current sort configuration (for all sorted columns).
@@ -1060,7 +1143,7 @@ var REGISTERED_HOOKS = [
1060
1143
  */
1061
1144
  'afterColumnSort',
1062
1145
  /**
1063
- * Fired by {@link autofill Autofill} plugin after setting range of autofill. This hook is fired when {@link options#fillhandle Options#fillHandle}
1146
+ * Fired by {@link Autofill} plugin after setting range of autofill. This hook is fired when {@link Options#fillHandle}
1064
1147
  * option is enabled.
1065
1148
  *
1066
1149
  * @event Hooks#modifyAutofillRange
@@ -1076,8 +1159,8 @@ var REGISTERED_HOOKS = [
1076
1159
  */
1077
1160
  'modifyCopyableRange',
1078
1161
  /**
1079
- * Fired by {@link copy-paste CopyPaste} plugin before copying the values into clipboard and before clearing values of
1080
- * the selected cells. This hook is fired when {@link options#copypaste Options#copyPaste} option is enabled.
1162
+ * Fired by {@link CopyPaste} plugin before copying the values into clipboard and before clearing values of
1163
+ * the selected cells. This hook is fired when {@link Options#copyPaste} option is enabled.
1081
1164
  *
1082
1165
  * @event Hooks#beforeCut
1083
1166
  * @param {Array[]} data An array of arrays which contains data to cut.
@@ -1105,8 +1188,8 @@ var REGISTERED_HOOKS = [
1105
1188
  */
1106
1189
  'beforeCut',
1107
1190
  /**
1108
- * Fired by {@link copy-paste CopyPaste} plugin after data was cut out from the table. This hook is fired when
1109
- * {@link options#copypaste Options#copyPaste} option is enabled.
1191
+ * Fired by {@link CopyPaste} plugin after data was cut out from the table. This hook is fired when
1192
+ * {@link Options#copyPaste} option is enabled.
1110
1193
  *
1111
1194
  * @event Hooks#afterCut
1112
1195
  * @param {Array[]} data An array of arrays which contains the cutted out data.
@@ -1149,7 +1232,7 @@ var REGISTERED_HOOKS = [
1149
1232
  */
1150
1233
  'beforeCopy',
1151
1234
  /**
1152
- * Fired by {@link copy-paste CopyPaste} plugin after data are pasted into table. This hook is fired when {@link options#copypaste Options#copyPaste}
1235
+ * Fired by {@link CopyPaste} plugin after data are pasted into table. This hook is fired when {@link Options#copyPaste}
1153
1236
  * option is enabled.
1154
1237
  *
1155
1238
  * @event Hooks#afterCopy
@@ -1159,8 +1242,8 @@ var REGISTERED_HOOKS = [
1159
1242
  */
1160
1243
  'afterCopy',
1161
1244
  /**
1162
- * Fired by {@link copy-paste CopyPaste} plugin before values are pasted into table. This hook is fired when
1163
- * {@link options#copypaste Options#copyPaste} option is enabled.
1245
+ * Fired by {@link CopyPaste} plugin before values are pasted into table. This hook is fired when
1246
+ * {@link Options#copyPaste} option is enabled.
1164
1247
  *
1165
1248
  * @event Hooks#beforePaste
1166
1249
  * @param {Array[]} data An array of arrays which contains data to paste.
@@ -1188,8 +1271,8 @@ var REGISTERED_HOOKS = [
1188
1271
  */
1189
1272
  'beforePaste',
1190
1273
  /**
1191
- * Fired by {@link copy-paste CopyPaste} plugin after values are pasted into table. This hook is fired when
1192
- * {@link options#copypaste Options#copyPaste} option is enabled.
1274
+ * Fired by {@link CopyPaste} plugin after values are pasted into table. This hook is fired when
1275
+ * {@link Options#copyPaste} option is enabled.
1193
1276
  *
1194
1277
  * @event Hooks#afterPaste
1195
1278
  * @param {Array[]} data An array of arrays which contains the pasted data.
@@ -1198,8 +1281,8 @@ var REGISTERED_HOOKS = [
1198
1281
  */
1199
1282
  'afterPaste',
1200
1283
  /**
1201
- * Fired by {@link manual-column-move ManualColumnMove} plugin before change order of the visual indexes. This hook is fired when
1202
- * {@link options#manualcolumnmove Options#manualColumnMove} option is enabled.
1284
+ * Fired by {@link ManualColumnMove} plugin before change order of the visual indexes. This hook is fired when
1285
+ * {@link Options#manualColumnMove} option is enabled.
1203
1286
  *
1204
1287
  * @event Hooks#beforeColumnMove
1205
1288
  * @param {Array} movedColumns Array of visual column indexes to be moved.
@@ -1217,8 +1300,8 @@ var REGISTERED_HOOKS = [
1217
1300
  */
1218
1301
  'beforeColumnMove',
1219
1302
  /**
1220
- * Fired by {@link manual-column-move ManualColumnMove} plugin after changing order of the visual indexes.
1221
- * This hook is fired when {@link options#manualcolumnmove Options#manualColumnMove} option is enabled.
1303
+ * Fired by {@link ManualColumnMove} plugin after changing order of the visual indexes.
1304
+ * This hook is fired when {@link Options#manualColumnMove} option is enabled.
1222
1305
  *
1223
1306
  * @event Hooks#afterColumnMove
1224
1307
  * @param {Array} movedColumns Array of visual column indexes to be moved.
@@ -1236,8 +1319,8 @@ var REGISTERED_HOOKS = [
1236
1319
  */
1237
1320
  'afterColumnMove',
1238
1321
  /**
1239
- * Fired by {@link manual-row-move ManualRowMove} plugin before changing the order of the visual indexes. This hook is fired when
1240
- * {@link options#manualrowmove Options#manualRowMove} option is enabled.
1322
+ * Fired by {@link ManualRowMove} plugin before changing the order of the visual indexes. This hook is fired when
1323
+ * {@link Options#manualRowMove} option is enabled.
1241
1324
  *
1242
1325
  * @event Hooks#beforeRowMove
1243
1326
  * @param {Array} movedRows Array of visual row indexes to be moved.
@@ -1255,8 +1338,8 @@ var REGISTERED_HOOKS = [
1255
1338
  */
1256
1339
  'beforeRowMove',
1257
1340
  /**
1258
- * Fired by {@link manual-row-move ManualRowMove} plugin after changing the order of the visual indexes.
1259
- * This hook is fired when {@link options#manualrowmove Options#manualRowMove} option is enabled.
1341
+ * Fired by {@link ManualRowMove} plugin after changing the order of the visual indexes.
1342
+ * This hook is fired when {@link Options#manualRowMove} option is enabled.
1260
1343
  *
1261
1344
  * @event Hooks#afterRowMove
1262
1345
  * @param {Array} movedRows Array of visual row indexes to be moved.
@@ -1274,8 +1357,8 @@ var REGISTERED_HOOKS = [
1274
1357
  */
1275
1358
  'afterRowMove',
1276
1359
  /**
1277
- * Fired by {@link manual-column-resize ManualColumnResize} plugin before rendering the table with modified column sizes. This hook is
1278
- * fired when {@link options#manualcolumnresize Options#manualColumnResize} option is enabled.
1360
+ * Fired by {@link ManualColumnResize} plugin before rendering the table with modified column sizes. This hook is
1361
+ * fired when {@link Options#manualColumnResize} option is enabled.
1279
1362
  *
1280
1363
  * @event Hooks#beforeColumnResize
1281
1364
  * @param {number} newSize Calculated new column width.
@@ -1285,8 +1368,8 @@ var REGISTERED_HOOKS = [
1285
1368
  */
1286
1369
  'beforeColumnResize',
1287
1370
  /**
1288
- * Fired by {@link manual-column-resize ManualColumnResize} plugin after rendering the table with modified column sizes. This hook is
1289
- * fired when {@link options#manualcolumnresize Options#manualColumnResize} option is enabled.
1371
+ * Fired by {@link ManualColumnResize} plugin after rendering the table with modified column sizes. This hook is
1372
+ * fired when {@link Options#manualColumnResize} option is enabled.
1290
1373
  *
1291
1374
  * @event Hooks#afterColumnResize
1292
1375
  * @param {number} newSize Calculated new column width.
@@ -1295,8 +1378,8 @@ var REGISTERED_HOOKS = [
1295
1378
  */
1296
1379
  'afterColumnResize',
1297
1380
  /**
1298
- * Fired by {@link manual-row-resize ManualRowResize} plugin before rendering the table with modified row sizes. This hook is
1299
- * fired when {@link options#manualrowresize Options#manualRowResize} option is enabled.
1381
+ * Fired by {@link ManualRowResize} plugin before rendering the table with modified row sizes. This hook is
1382
+ * fired when {@link Options#manualRowResize} option is enabled.
1300
1383
  *
1301
1384
  * @event Hooks#beforeRowResize
1302
1385
  * @param {number} newSize Calculated new row height.
@@ -1306,8 +1389,8 @@ var REGISTERED_HOOKS = [
1306
1389
  */
1307
1390
  'beforeRowResize',
1308
1391
  /**
1309
- * Fired by {@link manual-row-resize ManualRowResize} plugin after rendering the table with modified row sizes. This hook is
1310
- * fired when {@link options#manualrowresize Options#manualRowResize} option is enabled.
1392
+ * Fired by {@link ManualRowResize} plugin after rendering the table with modified row sizes. This hook is
1393
+ * fired when {@link Options#manualRowResize} option is enabled.
1311
1394
  *
1312
1395
  * @event Hooks#afterRowResize
1313
1396
  * @param {number} newSize Calculated new row height.
@@ -1338,11 +1421,9 @@ var REGISTERED_HOOKS = [
1338
1421
  * @returns {number} Returns new width which will be applied to the column element.
1339
1422
  */
1340
1423
  'beforeStretchingColumnWidth',
1341
- /* eslint-disable jsdoc/require-description-complete-sentence */
1342
-
1343
1424
  /**
1344
- * Fired by {@link filters Filters} plugin before applying [filtering](@/guides/columns/column-filter.md).
1345
- * This hook is fired when {@link options#filters Options#filters} option is enabled.
1425
+ * Fired by {@link Filters} plugin before applying [filtering](@/guides/columns/column-filter.md).
1426
+ * This hook is fired when {@link Options#filters} option is enabled.
1346
1427
  *
1347
1428
  * @event Hooks#beforeFilter
1348
1429
  * @param {object[]} conditionsStack An array of objects with added formulas.
@@ -1368,13 +1449,9 @@ var REGISTERED_HOOKS = [
1368
1449
  * @returns {boolean} If hook returns `false` value then filtering won't be applied on the UI side (server-side filtering).
1369
1450
  */
1370
1451
  'beforeFilter',
1371
- /* eslint-enable jsdoc/require-description-complete-sentence */
1372
-
1373
- /* eslint-disable jsdoc/require-description-complete-sentence */
1374
-
1375
1452
  /**
1376
- * Fired by {@link filters Filters} plugin after applying [filtering](@/guides/columns/column-filter.md).
1377
- * This hook is fired when {@link options#filters Options#filters} option is enabled.
1453
+ * Fired by {@link Filters} plugin after applying [filtering](@/guides/columns/column-filter.md).
1454
+ * This hook is fired when {@link Options#filters} option is enabled.
1378
1455
  *
1379
1456
  * @event Hooks#afterFilter
1380
1457
  * @param {object[]} conditionsStack An array of objects with added conditions.
@@ -1399,8 +1476,6 @@ var REGISTERED_HOOKS = [
1399
1476
  * ```
1400
1477
  */
1401
1478
  'afterFilter',
1402
- /* eslint-enable jsdoc/require-description-complete-sentence */
1403
-
1404
1479
  /**
1405
1480
  * Called when a value is updated in the engine.
1406
1481
  *
@@ -1460,8 +1535,8 @@ var REGISTERED_HOOKS = [
1460
1535
  */
1461
1536
  'modifyColumnHeaderHeight',
1462
1537
  /**
1463
- * Fired by {@link undo-redo UndoRedo} plugin before the undo action. Contains information about the action that is being undone.
1464
- * This hook is fired when {@link options#undo Options#undo} option is enabled.
1538
+ * Fired by {@link UndoRedo} plugin before the undo action. Contains information about the action that is being undone.
1539
+ * This hook is fired when {@link Options#undo} option is enabled.
1465
1540
  *
1466
1541
  * @event Hooks#beforeUndo
1467
1542
  * @param {object} action The action object. Contains information about the action being undone. The `actionType`
@@ -1470,7 +1545,7 @@ var REGISTERED_HOOKS = [
1470
1545
  */
1471
1546
  'beforeUndo',
1472
1547
  /**
1473
- * Fired by {@link undo-redo UndoRedo} plugin before changing undo stack.
1548
+ * Fired by {@link UndoRedo} plugin before changing undo stack.
1474
1549
  *
1475
1550
  * @event Hooks#beforeUndoStackChange
1476
1551
  * @since 8.4.0
@@ -1481,8 +1556,8 @@ var REGISTERED_HOOKS = [
1481
1556
  */
1482
1557
  'beforeUndoStackChange',
1483
1558
  /**
1484
- * Fired by {@link undo-redo UndoRedo} plugin after the undo action. Contains information about the action that is being undone.
1485
- * This hook is fired when {@link options#undo Options#undo} option is enabled.
1559
+ * Fired by {@link UndoRedo} plugin after the undo action. Contains information about the action that is being undone.
1560
+ * This hook is fired when {@link Options#undo} option is enabled.
1486
1561
  *
1487
1562
  * @event Hooks#afterUndo
1488
1563
  * @param {object} action The action object. Contains information about the action being undone. The `actionType`
@@ -1490,7 +1565,7 @@ var REGISTERED_HOOKS = [
1490
1565
  */
1491
1566
  'afterUndo',
1492
1567
  /**
1493
- * Fired by {@link undo-redo UndoRedo} plugin after changing undo stack.
1568
+ * Fired by {@link UndoRedo} plugin after changing undo stack.
1494
1569
  *
1495
1570
  * @event Hooks#afterUndoStackChange
1496
1571
  * @since 8.4.0
@@ -1499,8 +1574,8 @@ var REGISTERED_HOOKS = [
1499
1574
  */
1500
1575
  'afterUndoStackChange',
1501
1576
  /**
1502
- * Fired by {@link undo-redo UndoRedo} plugin before the redo action. Contains information about the action that is being redone.
1503
- * This hook is fired when {@link options#undo Options#undo} option is enabled.
1577
+ * Fired by {@link UndoRedo} plugin before the redo action. Contains information about the action that is being redone.
1578
+ * This hook is fired when {@link Options#undo} option is enabled.
1504
1579
  *
1505
1580
  * @event Hooks#beforeRedo
1506
1581
  * @param {object} action The action object. Contains information about the action being redone. The `actionType`
@@ -1509,7 +1584,7 @@ var REGISTERED_HOOKS = [
1509
1584
  */
1510
1585
  'beforeRedo',
1511
1586
  /**
1512
- * Fired by {@link undo-redo UndoRedo} plugin before changing redo stack.
1587
+ * Fired by {@link UndoRedo} plugin before changing redo stack.
1513
1588
  *
1514
1589
  * @event Hooks#beforeRedoStackChange
1515
1590
  * @since 8.4.0
@@ -1517,8 +1592,8 @@ var REGISTERED_HOOKS = [
1517
1592
  */
1518
1593
  'beforeRedoStackChange',
1519
1594
  /**
1520
- * Fired by {@link undo-redo UndoRedo} plugin after the redo action. Contains information about the action that is being redone.
1521
- * This hook is fired when {@link options#undo Options#undo} option is enabled.
1595
+ * Fired by {@link UndoRedo} plugin after the redo action. Contains information about the action that is being redone.
1596
+ * This hook is fired when {@link Options#undo} option is enabled.
1522
1597
  *
1523
1598
  * @event Hooks#afterRedo
1524
1599
  * @param {object} action The action object. Contains information about the action being redone. The `actionType`
@@ -1526,7 +1601,7 @@ var REGISTERED_HOOKS = [
1526
1601
  */
1527
1602
  'afterRedo',
1528
1603
  /**
1529
- * Fired by {@link undo-redo UndoRedo} plugin after changing redo stack.
1604
+ * Fired by {@link UndoRedo} plugin after changing redo stack.
1530
1605
  *
1531
1606
  * @event Hooks#afterRedoStackChange
1532
1607
  * @since 8.4.0
@@ -1611,7 +1686,7 @@ var REGISTERED_HOOKS = [
1611
1686
  */
1612
1687
  'afterPluginsInitialized',
1613
1688
  /**
1614
- * Fired by {@link hidden-rows HiddenRows} plugin before marking the rows as hidden. Fired only if the {@link options#hiddenrows Options#hiddenRows} option is enabled.
1689
+ * Fired by {@link HiddenRows} plugin before marking the rows as hidden. Fired only if the {@link Options#hiddenRows} option is enabled.
1615
1690
  * Returning `false` in the callback will prevent the hiding action from completing.
1616
1691
  *
1617
1692
  * @event Hooks#beforeHideRows
@@ -1622,7 +1697,7 @@ var REGISTERED_HOOKS = [
1622
1697
  */
1623
1698
  'beforeHideRows',
1624
1699
  /**
1625
- * Fired by {@link hidden-rows HiddenRows} plugin after marking the rows as hidden. Fired only if the {@link options#hiddenrows Options#hiddenRows} option is enabled.
1700
+ * Fired by {@link HiddenRows} plugin after marking the rows as hidden. Fired only if the {@link Options#hiddenRows} option is enabled.
1626
1701
  *
1627
1702
  * @event Hooks#afterHideRows
1628
1703
  * @param {Array} currentHideConfig Current hide configuration - a list of hidden physical row indexes.
@@ -1632,7 +1707,7 @@ var REGISTERED_HOOKS = [
1632
1707
  */
1633
1708
  'afterHideRows',
1634
1709
  /**
1635
- * Fired by {@link hidden-rows HiddenRows} plugin before marking the rows as not hidden. Fired only if the {@link options#hiddenrows Options#hiddenRows} option is enabled.
1710
+ * Fired by {@link HiddenRows} plugin before marking the rows as not hidden. Fired only if the {@link Options#hiddenRows} option is enabled.
1636
1711
  * Returning `false` in the callback will prevent the row revealing action from completing.
1637
1712
  *
1638
1713
  * @event Hooks#beforeUnhideRows
@@ -1643,7 +1718,7 @@ var REGISTERED_HOOKS = [
1643
1718
  */
1644
1719
  'beforeUnhideRows',
1645
1720
  /**
1646
- * Fired by {@link hidden-rows HiddenRows} plugin after marking the rows as not hidden. Fired only if the {@link options#hiddenrows Options#hiddenRows} option is enabled.
1721
+ * Fired by {@link HiddenRows} plugin after marking the rows as not hidden. Fired only if the {@link Options#hiddenRows} option is enabled.
1647
1722
  *
1648
1723
  * @event Hooks#afterUnhideRows
1649
1724
  * @param {Array} currentHideConfig Current hide configuration - a list of hidden physical row indexes.
@@ -1653,7 +1728,7 @@ var REGISTERED_HOOKS = [
1653
1728
  */
1654
1729
  'afterUnhideRows',
1655
1730
  /**
1656
- * Fired by {@link hidden-columns HiddenColumns} plugin before marking the columns as hidden. Fired only if the {@link options#hiddencolumns Options#hiddenColumns} option is enabled.
1731
+ * Fired by {@link HiddenColumns} plugin before marking the columns as hidden. Fired only if the {@link Options#hiddenColumns} option is enabled.
1657
1732
  * Returning `false` in the callback will prevent the hiding action from completing.
1658
1733
  *
1659
1734
  * @event Hooks#beforeHideColumns
@@ -1664,7 +1739,7 @@ var REGISTERED_HOOKS = [
1664
1739
  */
1665
1740
  'beforeHideColumns',
1666
1741
  /**
1667
- * Fired by {@link hidden-columns HiddenColumns} plugin after marking the columns as hidden. Fired only if the {@link options#hiddencolumns Options#hiddenColumns} option is enabled.
1742
+ * Fired by {@link HiddenColumns} plugin after marking the columns as hidden. Fired only if the {@link Options#hiddenColumns} option is enabled.
1668
1743
  *
1669
1744
  * @event Hooks#afterHideColumns
1670
1745
  * @param {Array} currentHideConfig Current hide configuration - a list of hidden physical column indexes.
@@ -1674,7 +1749,7 @@ var REGISTERED_HOOKS = [
1674
1749
  */
1675
1750
  'afterHideColumns',
1676
1751
  /**
1677
- * Fired by {@link hidden-columns HiddenColumns} plugin before marking the columns as not hidden. Fired only if the {@link options#hiddencolumns Options#hiddenColumns} option is enabled.
1752
+ * Fired by {@link HiddenColumns} plugin before marking the columns as not hidden. Fired only if the {@link Options#hiddenColumns} option is enabled.
1678
1753
  * Returning `false` in the callback will prevent the column revealing action from completing.
1679
1754
  *
1680
1755
  * @event Hooks#beforeUnhideColumns
@@ -1685,7 +1760,7 @@ var REGISTERED_HOOKS = [
1685
1760
  */
1686
1761
  'beforeUnhideColumns',
1687
1762
  /**
1688
- * Fired by {@link hidden-columns HiddenColumns} plugin after marking the columns as not hidden. Fired only if the {@link options#hiddencolumns Options#hiddenColumns} option is enabled.
1763
+ * Fired by {@link HiddenColumns} plugin after marking the columns as not hidden. Fired only if the {@link Options#hiddenColumns} option is enabled.
1689
1764
  *
1690
1765
  * @event Hooks#afterUnhideColumns
1691
1766
  * @param {Array} currentHideConfig Current hide configuration - a list of hidden physical column indexes.
@@ -1695,7 +1770,7 @@ var REGISTERED_HOOKS = [
1695
1770
  */
1696
1771
  'afterUnhideColumns',
1697
1772
  /**
1698
- * Fired by {@link trim-rows TrimRows} plugin before trimming rows. This hook is fired when {@link options#trimrows Options#trimRows} option is enabled.
1773
+ * Fired by {@link TrimRows} plugin before trimming rows. This hook is fired when {@link Options#trimRows} option is enabled.
1699
1774
  *
1700
1775
  * @event Hooks#beforeTrimRow
1701
1776
  * @param {Array} currentTrimConfig Current trim configuration - a list of trimmed physical row indexes.
@@ -1705,7 +1780,7 @@ var REGISTERED_HOOKS = [
1705
1780
  */
1706
1781
  'beforeTrimRow',
1707
1782
  /**
1708
- * Fired by {@link trim-rows TrimRows} plugin after trimming rows. This hook is fired when {@link options#trimrows Options#trimRows} option is enabled.
1783
+ * Fired by {@link TrimRows} plugin after trimming rows. This hook is fired when {@link Options#trimRows} option is enabled.
1709
1784
  *
1710
1785
  * @event Hooks#afterTrimRow
1711
1786
  * @param {Array} currentTrimConfig Current trim configuration - a list of trimmed physical row indexes.
@@ -1716,7 +1791,7 @@ var REGISTERED_HOOKS = [
1716
1791
  */
1717
1792
  'afterTrimRow',
1718
1793
  /**
1719
- * Fired by {@link trim-rows TrimRows} plugin before untrimming rows. This hook is fired when {@link options#trimrows Options#trimRows} option is enabled.
1794
+ * Fired by {@link TrimRows} plugin before untrimming rows. This hook is fired when {@link Options#trimRows} option is enabled.
1720
1795
  *
1721
1796
  * @event Hooks#beforeUntrimRow
1722
1797
  * @param {Array} currentTrimConfig Current trim configuration - a list of trimmed physical row indexes.
@@ -1726,7 +1801,7 @@ var REGISTERED_HOOKS = [
1726
1801
  */
1727
1802
  'beforeUntrimRow',
1728
1803
  /**
1729
- * Fired by {@link trim-rows TrimRows} plugin after untrimming rows. This hook is fired when {@link options#trimrows Options#trimRows} option is enabled.
1804
+ * Fired by {@link TrimRows} plugin after untrimming rows. This hook is fired when {@link Options#trimRows} option is enabled.
1730
1805
  *
1731
1806
  * @event Hooks#afterUntrimRow
1732
1807
  * @param {Array} currentTrimConfig Current trim configuration - a list of trimmed physical row indexes.
@@ -1737,7 +1812,7 @@ var REGISTERED_HOOKS = [
1737
1812
  */
1738
1813
  'afterUntrimRow',
1739
1814
  /**
1740
- * Fired by {@link dropdown-menu DropdownMenu} plugin before opening the dropdown menu. This hook is fired when {@link options#dropdownmenu Options#dropdownMenu}
1815
+ * Fired by {@link DropdownMenu} plugin before opening the dropdown menu. This hook is fired when {@link Options#dropdownMenu}
1741
1816
  * option is enabled.
1742
1817
  *
1743
1818
  * @event Hooks#beforeDropdownMenuShow
@@ -1745,7 +1820,7 @@ var REGISTERED_HOOKS = [
1745
1820
  */
1746
1821
  'beforeDropdownMenuShow',
1747
1822
  /**
1748
- * Fired by {@link dropdown-menu DropdownMenu} plugin after opening the Dropdown Menu. This hook is fired when {@link options#dropdownmenu Options#dropdownMenu}
1823
+ * Fired by {@link DropdownMenu} plugin after opening the Dropdown Menu. This hook is fired when {@link Options#dropdownMenu}
1749
1824
  * option is enabled.
1750
1825
  *
1751
1826
  * @event Hooks#afterDropdownMenuShow
@@ -1753,7 +1828,7 @@ var REGISTERED_HOOKS = [
1753
1828
  */
1754
1829
  'afterDropdownMenuShow',
1755
1830
  /**
1756
- * Fired by {@link dropdown-menu DropdownMenu} plugin after hiding the Dropdown Menu. This hook is fired when {@link options#dropdownmenu Options#dropdownMenu}
1831
+ * Fired by {@link DropdownMenu} plugin after hiding the Dropdown Menu. This hook is fired when {@link Options#dropdownMenu}
1757
1832
  * option is enabled.
1758
1833
  *
1759
1834
  * @event Hooks#afterDropdownMenuHide
@@ -1761,8 +1836,8 @@ var REGISTERED_HOOKS = [
1761
1836
  */
1762
1837
  'afterDropdownMenuHide',
1763
1838
  /**
1764
- * Fired by {@link nested-rows NestedRows} plugin before adding a children to the NestedRows structure. This hook is fired when
1765
- * {@link options#nestedrows Options#nestedRows} option is enabled.
1839
+ * Fired by {@link NestedRows} plugin before adding a children to the NestedRows structure. This hook is fired when
1840
+ * {@link Options#nestedRows} option is enabled.
1766
1841
  *
1767
1842
  * @event Hooks#beforeAddChild
1768
1843
  * @param {object} parent The parent object.
@@ -1771,8 +1846,8 @@ var REGISTERED_HOOKS = [
1771
1846
  */
1772
1847
  'beforeAddChild',
1773
1848
  /**
1774
- * Fired by {@link nested-rows NestedRows} plugin after adding a children to the NestedRows structure. This hook is fired when
1775
- * {@link options#nestedrows Options#nestedRows} option is enabled.
1849
+ * Fired by {@link NestedRows} plugin after adding a children to the NestedRows structure. This hook is fired when
1850
+ * {@link Options#nestedRows} option is enabled.
1776
1851
  *
1777
1852
  * @event Hooks#afterAddChild
1778
1853
  * @param {object} parent The parent object.
@@ -1781,8 +1856,8 @@ var REGISTERED_HOOKS = [
1781
1856
  */
1782
1857
  'afterAddChild',
1783
1858
  /**
1784
- * Fired by {@link nested-rows NestedRows} plugin before detaching a child from its parent. This hook is fired when
1785
- * {@link options#nestedrows Options#nestedRows} option is enabled.
1859
+ * Fired by {@link NestedRows} plugin before detaching a child from its parent. This hook is fired when
1860
+ * {@link Options#nestedRows} option is enabled.
1786
1861
  *
1787
1862
  * @event Hooks#beforeDetachChild
1788
1863
  * @param {object} parent An object representing the parent from which the element is to be detached.
@@ -1790,12 +1865,13 @@ var REGISTERED_HOOKS = [
1790
1865
  */
1791
1866
  'beforeDetachChild',
1792
1867
  /**
1793
- * Fired by {@link nested-rows NestedRows} plugin after detaching a child from its parent. This hook is fired when
1794
- * {@link options#nestedrows Options#nestedRows} option is enabled.
1868
+ * Fired by {@link NestedRows} plugin after detaching a child from its parent. This hook is fired when
1869
+ * {@link Options#nestedRows} option is enabled.
1795
1870
  *
1796
1871
  * @event Hooks#afterDetachChild
1797
1872
  * @param {object} parent An object representing the parent from which the element was detached.
1798
1873
  * @param {object} element The detached element.
1874
+ * @param {number} finalElementPosition The final row index of the detached element.
1799
1875
  */
1800
1876
  'afterDetachChild',
1801
1877
  /**
@@ -1807,7 +1883,7 @@ var REGISTERED_HOOKS = [
1807
1883
  */
1808
1884
  'afterBeginEditing',
1809
1885
  /**
1810
- * Fired by {@link merge-cells MergeCells} plugin before cell merging. This hook is fired when {@link options#mergecells Options#mergeCells}
1886
+ * Fired by {@link MergeCells} plugin before cell merging. This hook is fired when {@link Options#mergeCells}
1811
1887
  * option is enabled.
1812
1888
  *
1813
1889
  * @event Hooks#beforeMergeCells
@@ -1816,7 +1892,7 @@ var REGISTERED_HOOKS = [
1816
1892
  */
1817
1893
  'beforeMergeCells',
1818
1894
  /**
1819
- * Fired by {@link merge-cells MergeCells} plugin after cell merging. This hook is fired when {@link options#mergecells Options#mergeCells}
1895
+ * Fired by {@link MergeCells} plugin after cell merging. This hook is fired when {@link Options#mergeCells}
1820
1896
  * option is enabled.
1821
1897
  *
1822
1898
  * @event Hooks#afterMergeCells
@@ -1826,7 +1902,7 @@ var REGISTERED_HOOKS = [
1826
1902
  */
1827
1903
  'afterMergeCells',
1828
1904
  /**
1829
- * Fired by {@link merge-cells MergeCells} plugin before unmerging the cells. This hook is fired when {@link options#mergecells Options#mergeCells}
1905
+ * Fired by {@link MergeCells} plugin before unmerging the cells. This hook is fired when {@link Options#mergeCells}
1830
1906
  * option is enabled.
1831
1907
  *
1832
1908
  * @event Hooks#beforeUnmergeCells
@@ -1835,7 +1911,7 @@ var REGISTERED_HOOKS = [
1835
1911
  */
1836
1912
  'beforeUnmergeCells',
1837
1913
  /**
1838
- * Fired by {@link merge-cells MergeCells} plugin after unmerging the cells. This hook is fired when {@link options#mergecells Options#mergeCells}
1914
+ * Fired by {@link MergeCells} plugin after unmerging the cells. This hook is fired when {@link Options#mergeCells}
1839
1915
  * option is enabled.
1840
1916
  *
1841
1917
  * @event Hooks#afterUnmergeCells
@@ -1877,7 +1953,7 @@ var REGISTERED_HOOKS = [
1877
1953
  */
1878
1954
  'beforeRefreshDimensions',
1879
1955
  /**
1880
- * Fired by {@link collapsible-columns CollapsibleColumns} plugin before columns collapse. This hook is fired when {@link options#collapsiblecolumns Options#collapsibleColumns} option is enabled.
1956
+ * Fired by {@link CollapsibleColumns} plugin before columns collapse. This hook is fired when {@link Options#collapsibleColumns} option is enabled.
1881
1957
  *
1882
1958
  * @event Hooks#beforeColumnCollapse
1883
1959
  * @since 8.0.0
@@ -1888,7 +1964,7 @@ var REGISTERED_HOOKS = [
1888
1964
  */
1889
1965
  'beforeColumnCollapse',
1890
1966
  /**
1891
- * Fired by {@link collapsible-columns CollapsibleColumns} plugin before columns collapse. This hook is fired when {@link options#collapsiblecolumns Options#collapsibleColumns} option is enabled.
1967
+ * Fired by {@link CollapsibleColumns} plugin before columns collapse. This hook is fired when {@link Options#collapsibleColumns} option is enabled.
1892
1968
  *
1893
1969
  * @event Hooks#afterColumnCollapse
1894
1970
  * @since 8.0.0
@@ -1899,7 +1975,7 @@ var REGISTERED_HOOKS = [
1899
1975
  */
1900
1976
  'afterColumnCollapse',
1901
1977
  /**
1902
- * Fired by {@link collapsible-columns CollapsibleColumns} plugin before columns expand. This hook is fired when {@link options#collapsiblecolumns Options#collapsibleColumns} option is enabled.
1978
+ * Fired by {@link CollapsibleColumns} plugin before columns expand. This hook is fired when {@link Options#collapsibleColumns} option is enabled.
1903
1979
  *
1904
1980
  * @event Hooks#beforeColumnExpand
1905
1981
  * @since 8.0.0
@@ -1910,7 +1986,7 @@ var REGISTERED_HOOKS = [
1910
1986
  */
1911
1987
  'beforeColumnExpand',
1912
1988
  /**
1913
- * Fired by {@link collapsible-columns CollapsibleColumns} plugin before columns expand. This hook is fired when {@link options#collapsiblecolumns Options#collapsibleColumns} option is enabled.
1989
+ * Fired by {@link CollapsibleColumns} plugin before columns expand. This hook is fired when {@link Options#collapsibleColumns} option is enabled.
1914
1990
  *
1915
1991
  * @event Hooks#afterColumnExpand
1916
1992
  * @since 8.0.0
@@ -1921,7 +1997,7 @@ var REGISTERED_HOOKS = [
1921
1997
  */
1922
1998
  'afterColumnExpand',
1923
1999
  /**
1924
- * Fired by {@link auto-column-size AutoColumnSize} plugin within SampleGenerator utility.
2000
+ * Fired by {@link AutoColumnSize} plugin within SampleGenerator utility.
1925
2001
  *
1926
2002
  * @event Hooks#modifyAutoColumnSizeSeed
1927
2003
  * @since 8.4.0
@@ -2231,10 +2307,9 @@ var Hooks = /*#__PURE__*/function () {
2231
2307
  /* eslint-disable no-continue */
2232
2308
 
2233
2309
  continue;
2234
- } // performance considerations - http://jsperf.com/call-vs-apply-for-a-plugin-architecture
2235
-
2310
+ }
2236
2311
 
2237
- var res = globalHandlers[index].call(context, p1, p2, p3, p4, p5, p6);
2312
+ var res = fastCall(globalHandlers[index], context, p1, p2, p3, p4, p5, p6);
2238
2313
 
2239
2314
  if (res !== void 0) {
2240
2315
  // eslint-disable-next-line no-param-reassign
@@ -2264,10 +2339,9 @@ var Hooks = /*#__PURE__*/function () {
2264
2339
  /* eslint-disable no-continue */
2265
2340
 
2266
2341
  continue;
2267
- } // performance considerations - http://jsperf.com/call-vs-apply-for-a-plugin-architecture
2268
-
2342
+ }
2269
2343
 
2270
- var _res = localHandlers[_index].call(context, p1, p2, p3, p4, p5, p6);
2344
+ var _res = fastCall(localHandlers[_index], context, p1, p2, p3, p4, p5, p6);
2271
2345
 
2272
2346
  if (_res !== void 0) {
2273
2347
  // eslint-disable-next-line no-param-reassign