handsontable 0.0.0-next-9ec04ce-20221121

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (1232) hide show
  1. package/3rdparty/SheetClip/SheetClip.js +128 -0
  2. package/3rdparty/SheetClip/SheetClip.mjs +123 -0
  3. package/3rdparty/SheetClip/index.js +7 -0
  4. package/3rdparty/SheetClip/index.mjs +1 -0
  5. package/3rdparty/autoResize/autoResize.js +164 -0
  6. package/3rdparty/autoResize/autoResize.mjs +160 -0
  7. package/3rdparty/autoResize/index.js +6 -0
  8. package/3rdparty/autoResize/index.mjs +1 -0
  9. package/3rdparty/walkontable/src/border.js +746 -0
  10. package/3rdparty/walkontable/src/border.mjs +741 -0
  11. package/3rdparty/walkontable/src/calculator/constants.js +30 -0
  12. package/3rdparty/walkontable/src/calculator/constants.mjs +23 -0
  13. package/3rdparty/walkontable/src/calculator/index.js +22 -0
  14. package/3rdparty/walkontable/src/calculator/index.mjs +4 -0
  15. package/3rdparty/walkontable/src/calculator/viewportColumns.d.ts +18 -0
  16. package/3rdparty/walkontable/src/calculator/viewportColumns.js +297 -0
  17. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +292 -0
  18. package/3rdparty/walkontable/src/calculator/viewportRows.js +175 -0
  19. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +170 -0
  20. package/3rdparty/walkontable/src/cell/coords.d.ts +16 -0
  21. package/3rdparty/walkontable/src/cell/coords.js +185 -0
  22. package/3rdparty/walkontable/src/cell/coords.mjs +180 -0
  23. package/3rdparty/walkontable/src/cell/range.d.ts +59 -0
  24. package/3rdparty/walkontable/src/cell/range.js +888 -0
  25. package/3rdparty/walkontable/src/cell/range.mjs +882 -0
  26. package/3rdparty/walkontable/src/core/_base.js +395 -0
  27. package/3rdparty/walkontable/src/core/_base.mjs +390 -0
  28. package/3rdparty/walkontable/src/core/clone.js +59 -0
  29. package/3rdparty/walkontable/src/core/clone.mjs +54 -0
  30. package/3rdparty/walkontable/src/core/core.js +130 -0
  31. package/3rdparty/walkontable/src/core/core.mjs +125 -0
  32. package/3rdparty/walkontable/src/event.js +401 -0
  33. package/3rdparty/walkontable/src/event.mjs +396 -0
  34. package/3rdparty/walkontable/src/facade/core.js +236 -0
  35. package/3rdparty/walkontable/src/facade/core.mjs +231 -0
  36. package/3rdparty/walkontable/src/filter/column.js +107 -0
  37. package/3rdparty/walkontable/src/filter/column.mjs +102 -0
  38. package/3rdparty/walkontable/src/filter/row.js +107 -0
  39. package/3rdparty/walkontable/src/filter/row.mjs +102 -0
  40. package/3rdparty/walkontable/src/index.d.ts +1 -0
  41. package/3rdparty/walkontable/src/index.js +37 -0
  42. package/3rdparty/walkontable/src/index.mjs +10 -0
  43. package/3rdparty/walkontable/src/overlay/_base.js +363 -0
  44. package/3rdparty/walkontable/src/overlay/_base.mjs +357 -0
  45. package/3rdparty/walkontable/src/overlay/bottom.js +397 -0
  46. package/3rdparty/walkontable/src/overlay/bottom.mjs +391 -0
  47. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +140 -0
  48. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +134 -0
  49. package/3rdparty/walkontable/src/overlay/constants.js +26 -0
  50. package/3rdparty/walkontable/src/overlay/constants.mjs +15 -0
  51. package/3rdparty/walkontable/src/overlay/index.js +34 -0
  52. package/3rdparty/walkontable/src/overlay/index.mjs +7 -0
  53. package/3rdparty/walkontable/src/overlay/inlineStart.js +385 -0
  54. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +379 -0
  55. package/3rdparty/walkontable/src/overlay/top.js +415 -0
  56. package/3rdparty/walkontable/src/overlay/top.mjs +409 -0
  57. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +130 -0
  58. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +124 -0
  59. package/3rdparty/walkontable/src/overlays.js +675 -0
  60. package/3rdparty/walkontable/src/overlays.mjs +670 -0
  61. package/3rdparty/walkontable/src/renderer/_base.js +83 -0
  62. package/3rdparty/walkontable/src/renderer/_base.mjs +78 -0
  63. package/3rdparty/walkontable/src/renderer/cells.js +127 -0
  64. package/3rdparty/walkontable/src/renderer/cells.mjs +122 -0
  65. package/3rdparty/walkontable/src/renderer/colGroup.js +101 -0
  66. package/3rdparty/walkontable/src/renderer/colGroup.mjs +96 -0
  67. package/3rdparty/walkontable/src/renderer/columnHeaders.js +115 -0
  68. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +110 -0
  69. package/3rdparty/walkontable/src/renderer/index.js +118 -0
  70. package/3rdparty/walkontable/src/renderer/index.mjs +107 -0
  71. package/3rdparty/walkontable/src/renderer/rowHeaders.js +119 -0
  72. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +114 -0
  73. package/3rdparty/walkontable/src/renderer/rows.js +99 -0
  74. package/3rdparty/walkontable/src/renderer/rows.mjs +94 -0
  75. package/3rdparty/walkontable/src/renderer/table.js +317 -0
  76. package/3rdparty/walkontable/src/renderer/table.mjs +313 -0
  77. package/3rdparty/walkontable/src/scroll.js +316 -0
  78. package/3rdparty/walkontable/src/scroll.mjs +311 -0
  79. package/3rdparty/walkontable/src/selection.js +349 -0
  80. package/3rdparty/walkontable/src/selection.mjs +343 -0
  81. package/3rdparty/walkontable/src/settings.js +306 -0
  82. package/3rdparty/walkontable/src/settings.mjs +302 -0
  83. package/3rdparty/walkontable/src/table/bottom.js +56 -0
  84. package/3rdparty/walkontable/src/table/bottom.mjs +50 -0
  85. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +57 -0
  86. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +51 -0
  87. package/3rdparty/walkontable/src/table/inlineStart.js +53 -0
  88. package/3rdparty/walkontable/src/table/inlineStart.mjs +47 -0
  89. package/3rdparty/walkontable/src/table/master.js +132 -0
  90. package/3rdparty/walkontable/src/table/master.mjs +126 -0
  91. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +93 -0
  92. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +88 -0
  93. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +93 -0
  94. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +88 -0
  95. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +85 -0
  96. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +80 -0
  97. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +90 -0
  98. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +85 -0
  99. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +85 -0
  100. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +80 -0
  101. package/3rdparty/walkontable/src/table/top.js +56 -0
  102. package/3rdparty/walkontable/src/table/top.mjs +50 -0
  103. package/3rdparty/walkontable/src/table/topInlineStartCorner.js +57 -0
  104. package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +51 -0
  105. package/3rdparty/walkontable/src/table.js +1171 -0
  106. package/3rdparty/walkontable/src/table.mjs +1165 -0
  107. package/3rdparty/walkontable/src/types.js +98 -0
  108. package/3rdparty/walkontable/src/types.mjs +97 -0
  109. package/3rdparty/walkontable/src/utils/column.js +121 -0
  110. package/3rdparty/walkontable/src/utils/column.mjs +117 -0
  111. package/3rdparty/walkontable/src/utils/nodesPool.js +48 -0
  112. package/3rdparty/walkontable/src/utils/nodesPool.mjs +44 -0
  113. package/3rdparty/walkontable/src/utils/orderView/constants.js +30 -0
  114. package/3rdparty/walkontable/src/utils/orderView/constants.mjs +23 -0
  115. package/3rdparty/walkontable/src/utils/orderView/index.js +8 -0
  116. package/3rdparty/walkontable/src/utils/orderView/index.mjs +3 -0
  117. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +81 -0
  118. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +76 -0
  119. package/3rdparty/walkontable/src/utils/orderView/view.js +216 -0
  120. package/3rdparty/walkontable/src/utils/orderView/view.mjs +211 -0
  121. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +68 -0
  122. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +64 -0
  123. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +137 -0
  124. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +132 -0
  125. package/3rdparty/walkontable/src/utils/row.js +43 -0
  126. package/3rdparty/walkontable/src/utils/row.mjs +39 -0
  127. package/3rdparty/walkontable/src/viewport.js +491 -0
  128. package/3rdparty/walkontable/src/viewport.mjs +486 -0
  129. package/CHANGELOG.md +716 -0
  130. package/LICENSE.txt +25 -0
  131. package/README.md +140 -0
  132. package/base.d.ts +3 -0
  133. package/base.js +54 -0
  134. package/base.mjs +44 -0
  135. package/cellTypes/autocompleteType/autocompleteType.d.ts +17 -0
  136. package/cellTypes/autocompleteType/autocompleteType.js +16 -0
  137. package/cellTypes/autocompleteType/autocompleteType.mjs +10 -0
  138. package/cellTypes/autocompleteType/index.d.ts +1 -0
  139. package/cellTypes/autocompleteType/index.js +7 -0
  140. package/cellTypes/autocompleteType/index.mjs +1 -0
  141. package/cellTypes/base.d.ts +14 -0
  142. package/cellTypes/checkboxType/checkboxType.d.ts +14 -0
  143. package/cellTypes/checkboxType/checkboxType.js +14 -0
  144. package/cellTypes/checkboxType/checkboxType.mjs +8 -0
  145. package/cellTypes/checkboxType/index.d.ts +1 -0
  146. package/cellTypes/checkboxType/index.js +7 -0
  147. package/cellTypes/checkboxType/index.mjs +1 -0
  148. package/cellTypes/dateType/dateType.d.ts +17 -0
  149. package/cellTypes/dateType/dateType.js +17 -0
  150. package/cellTypes/dateType/dateType.mjs +11 -0
  151. package/cellTypes/dateType/index.d.ts +1 -0
  152. package/cellTypes/dateType/index.js +7 -0
  153. package/cellTypes/dateType/index.mjs +1 -0
  154. package/cellTypes/dropdownType/dropdownType.d.ts +17 -0
  155. package/cellTypes/dropdownType/dropdownType.js +17 -0
  156. package/cellTypes/dropdownType/dropdownType.mjs +11 -0
  157. package/cellTypes/dropdownType/index.d.ts +1 -0
  158. package/cellTypes/dropdownType/index.js +7 -0
  159. package/cellTypes/dropdownType/index.mjs +1 -0
  160. package/cellTypes/handsontableType/handsontableType.d.ts +14 -0
  161. package/cellTypes/handsontableType/handsontableType.js +15 -0
  162. package/cellTypes/handsontableType/handsontableType.mjs +9 -0
  163. package/cellTypes/handsontableType/index.d.ts +1 -0
  164. package/cellTypes/handsontableType/index.js +7 -0
  165. package/cellTypes/handsontableType/index.mjs +1 -0
  166. package/cellTypes/index.d.ts +47 -0
  167. package/cellTypes/index.js +52 -0
  168. package/cellTypes/index.mjs +26 -0
  169. package/cellTypes/numericType/index.d.ts +1 -0
  170. package/cellTypes/numericType/index.js +7 -0
  171. package/cellTypes/numericType/index.mjs +1 -0
  172. package/cellTypes/numericType/numericType.d.ts +17 -0
  173. package/cellTypes/numericType/numericType.js +17 -0
  174. package/cellTypes/numericType/numericType.mjs +11 -0
  175. package/cellTypes/passwordType/index.d.ts +1 -0
  176. package/cellTypes/passwordType/index.js +7 -0
  177. package/cellTypes/passwordType/index.mjs +1 -0
  178. package/cellTypes/passwordType/passwordType.d.ts +14 -0
  179. package/cellTypes/passwordType/passwordType.js +15 -0
  180. package/cellTypes/passwordType/passwordType.mjs +9 -0
  181. package/cellTypes/registry.d.ts +18 -0
  182. package/cellTypes/registry.js +60 -0
  183. package/cellTypes/registry.mjs +51 -0
  184. package/cellTypes/textType/index.d.ts +1 -0
  185. package/cellTypes/textType/index.js +7 -0
  186. package/cellTypes/textType/index.mjs +1 -0
  187. package/cellTypes/textType/textType.d.ts +14 -0
  188. package/cellTypes/textType/textType.js +14 -0
  189. package/cellTypes/textType/textType.mjs +8 -0
  190. package/cellTypes/timeType/index.d.ts +1 -0
  191. package/cellTypes/timeType/index.js +7 -0
  192. package/cellTypes/timeType/index.mjs +1 -0
  193. package/cellTypes/timeType/timeType.d.ts +17 -0
  194. package/cellTypes/timeType/timeType.js +16 -0
  195. package/cellTypes/timeType/timeType.mjs +10 -0
  196. package/common.d.ts +74 -0
  197. package/core.d.ts +167 -0
  198. package/core.js +4684 -0
  199. package/core.mjs +4679 -0
  200. package/dataMap/dataMap.js +975 -0
  201. package/dataMap/dataMap.mjs +970 -0
  202. package/dataMap/dataSource.js +325 -0
  203. package/dataMap/dataSource.mjs +320 -0
  204. package/dataMap/index.js +16 -0
  205. package/dataMap/index.mjs +7 -0
  206. package/dataMap/metaManager/index.js +339 -0
  207. package/dataMap/metaManager/index.mjs +334 -0
  208. package/dataMap/metaManager/lazyFactoryMap.js +370 -0
  209. package/dataMap/metaManager/lazyFactoryMap.mjs +366 -0
  210. package/dataMap/metaManager/metaLayers/cellMeta.js +275 -0
  211. package/dataMap/metaManager/metaLayers/cellMeta.mjs +270 -0
  212. package/dataMap/metaManager/metaLayers/columnMeta.js +153 -0
  213. package/dataMap/metaManager/metaLayers/columnMeta.mjs +148 -0
  214. package/dataMap/metaManager/metaLayers/globalMeta.js +103 -0
  215. package/dataMap/metaManager/metaLayers/globalMeta.mjs +98 -0
  216. package/dataMap/metaManager/metaLayers/tableMeta.js +73 -0
  217. package/dataMap/metaManager/metaLayers/tableMeta.mjs +69 -0
  218. package/dataMap/metaManager/metaSchema.js +4610 -0
  219. package/dataMap/metaManager/metaSchema.mjs +4605 -0
  220. package/dataMap/metaManager/mods/dynamicCellMeta.js +107 -0
  221. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +101 -0
  222. package/dataMap/metaManager/mods/extendMetaProperties.js +104 -0
  223. package/dataMap/metaManager/mods/extendMetaProperties.mjs +99 -0
  224. package/dataMap/metaManager/utils.js +99 -0
  225. package/dataMap/metaManager/utils.mjs +91 -0
  226. package/dataMap/replaceData.js +119 -0
  227. package/dataMap/replaceData.mjs +115 -0
  228. package/dist/README.md +54 -0
  229. package/dist/handsontable.css +1941 -0
  230. package/dist/handsontable.full.css +2172 -0
  231. package/dist/handsontable.full.js +150392 -0
  232. package/dist/handsontable.full.min.css +47 -0
  233. package/dist/handsontable.full.min.js +869 -0
  234. package/dist/handsontable.js +94075 -0
  235. package/dist/handsontable.min.css +43 -0
  236. package/dist/handsontable.min.js +31 -0
  237. package/dist/languages/all.js +583 -0
  238. package/dist/languages/all.min.js +1 -0
  239. package/dist/languages/ar-AR.js +157 -0
  240. package/dist/languages/ar-AR.min.js +1 -0
  241. package/dist/languages/cs-CZ.js +157 -0
  242. package/dist/languages/cs-CZ.min.js +1 -0
  243. package/dist/languages/de-CH.js +158 -0
  244. package/dist/languages/de-CH.min.js +1 -0
  245. package/dist/languages/de-DE.js +159 -0
  246. package/dist/languages/de-DE.min.js +1 -0
  247. package/dist/languages/en-US.js +160 -0
  248. package/dist/languages/en-US.min.js +1 -0
  249. package/dist/languages/es-MX.js +161 -0
  250. package/dist/languages/es-MX.min.js +1 -0
  251. package/dist/languages/fr-FR.js +162 -0
  252. package/dist/languages/fr-FR.min.js +1 -0
  253. package/dist/languages/it-IT.js +164 -0
  254. package/dist/languages/it-IT.min.js +1 -0
  255. package/dist/languages/ja-JP.js +161 -0
  256. package/dist/languages/ja-JP.min.js +1 -0
  257. package/dist/languages/ko-KR.js +161 -0
  258. package/dist/languages/ko-KR.min.js +1 -0
  259. package/dist/languages/lv-LV.js +161 -0
  260. package/dist/languages/lv-LV.min.js +1 -0
  261. package/dist/languages/nb-NO.js +161 -0
  262. package/dist/languages/nb-NO.min.js +1 -0
  263. package/dist/languages/nl-NL.js +161 -0
  264. package/dist/languages/nl-NL.min.js +1 -0
  265. package/dist/languages/pl-PL.js +161 -0
  266. package/dist/languages/pl-PL.min.js +1 -0
  267. package/dist/languages/pt-BR.js +161 -0
  268. package/dist/languages/pt-BR.min.js +1 -0
  269. package/dist/languages/ru-RU.js +161 -0
  270. package/dist/languages/ru-RU.min.js +1 -0
  271. package/dist/languages/sr-SP.js +161 -0
  272. package/dist/languages/sr-SP.min.js +1 -0
  273. package/dist/languages/zh-CN.js +161 -0
  274. package/dist/languages/zh-CN.min.js +1 -0
  275. package/dist/languages/zh-TW.js +161 -0
  276. package/dist/languages/zh-TW.min.js +1 -0
  277. package/editorManager.js +522 -0
  278. package/editorManager.mjs +514 -0
  279. package/editors/autocompleteEditor/autocompleteEditor.d.ts +29 -0
  280. package/editors/autocompleteEditor/autocompleteEditor.js +584 -0
  281. package/editors/autocompleteEditor/autocompleteEditor.mjs +578 -0
  282. package/editors/autocompleteEditor/index.d.ts +1 -0
  283. package/editors/autocompleteEditor/index.js +7 -0
  284. package/editors/autocompleteEditor/index.mjs +1 -0
  285. package/editors/baseEditor/baseEditor.d.ts +45 -0
  286. package/editors/baseEditor/baseEditor.js +688 -0
  287. package/editors/baseEditor/baseEditor.mjs +679 -0
  288. package/editors/baseEditor/index.d.ts +1 -0
  289. package/editors/baseEditor/index.js +8 -0
  290. package/editors/baseEditor/index.mjs +1 -0
  291. package/editors/checkboxEditor/checkboxEditor.d.ts +12 -0
  292. package/editors/checkboxEditor/checkboxEditor.js +85 -0
  293. package/editors/checkboxEditor/checkboxEditor.mjs +79 -0
  294. package/editors/checkboxEditor/index.d.ts +1 -0
  295. package/editors/checkboxEditor/index.js +7 -0
  296. package/editors/checkboxEditor/index.mjs +1 -0
  297. package/editors/dateEditor/dateEditor.d.ts +18 -0
  298. package/editors/dateEditor/dateEditor.js +325 -0
  299. package/editors/dateEditor/dateEditor.mjs +318 -0
  300. package/editors/dateEditor/index.d.ts +1 -0
  301. package/editors/dateEditor/index.js +7 -0
  302. package/editors/dateEditor/index.mjs +1 -0
  303. package/editors/dropdownEditor/dropdownEditor.d.ts +7 -0
  304. package/editors/dropdownEditor/dropdownEditor.js +81 -0
  305. package/editors/dropdownEditor/dropdownEditor.mjs +74 -0
  306. package/editors/dropdownEditor/index.d.ts +1 -0
  307. package/editors/dropdownEditor/index.js +7 -0
  308. package/editors/dropdownEditor/index.mjs +1 -0
  309. package/editors/handsontableEditor/handsontableEditor.d.ts +10 -0
  310. package/editors/handsontableEditor/handsontableEditor.js +306 -0
  311. package/editors/handsontableEditor/handsontableEditor.mjs +300 -0
  312. package/editors/handsontableEditor/index.d.ts +1 -0
  313. package/editors/handsontableEditor/index.js +7 -0
  314. package/editors/handsontableEditor/index.mjs +1 -0
  315. package/editors/index.d.ts +56 -0
  316. package/editors/index.js +63 -0
  317. package/editors/index.mjs +30 -0
  318. package/editors/numericEditor/index.d.ts +1 -0
  319. package/editors/numericEditor/index.js +7 -0
  320. package/editors/numericEditor/index.mjs +1 -0
  321. package/editors/numericEditor/numericEditor.d.ts +7 -0
  322. package/editors/numericEditor/numericEditor.js +49 -0
  323. package/editors/numericEditor/numericEditor.mjs +43 -0
  324. package/editors/passwordEditor/index.d.ts +1 -0
  325. package/editors/passwordEditor/index.js +7 -0
  326. package/editors/passwordEditor/index.mjs +1 -0
  327. package/editors/passwordEditor/passwordEditor.d.ts +7 -0
  328. package/editors/passwordEditor/passwordEditor.js +68 -0
  329. package/editors/passwordEditor/passwordEditor.mjs +62 -0
  330. package/editors/registry.d.ts +29 -0
  331. package/editors/registry.js +106 -0
  332. package/editors/registry.mjs +94 -0
  333. package/editors/selectEditor/index.d.ts +1 -0
  334. package/editors/selectEditor/index.js +7 -0
  335. package/editors/selectEditor/index.mjs +1 -0
  336. package/editors/selectEditor/selectEditor.d.ts +16 -0
  337. package/editors/selectEditor/selectEditor.js +302 -0
  338. package/editors/selectEditor/selectEditor.mjs +296 -0
  339. package/editors/textEditor/caretPositioner.js +37 -0
  340. package/editors/textEditor/caretPositioner.mjs +33 -0
  341. package/editors/textEditor/index.d.ts +1 -0
  342. package/editors/textEditor/index.js +7 -0
  343. package/editors/textEditor/index.mjs +1 -0
  344. package/editors/textEditor/textEditor.d.ts +24 -0
  345. package/editors/textEditor/textEditor.js +612 -0
  346. package/editors/textEditor/textEditor.mjs +605 -0
  347. package/editors/timeEditor/index.d.ts +1 -0
  348. package/editors/timeEditor/index.js +7 -0
  349. package/editors/timeEditor/index.mjs +1 -0
  350. package/editors/timeEditor/timeEditor.d.ts +7 -0
  351. package/editors/timeEditor/timeEditor.js +70 -0
  352. package/editors/timeEditor/timeEditor.mjs +64 -0
  353. package/eventManager.d.ts +13 -0
  354. package/eventManager.js +236 -0
  355. package/eventManager.mjs +231 -0
  356. package/handsontable-non-commercial-license.pdf +0 -0
  357. package/helpers/array.d.ts +18 -0
  358. package/helpers/array.js +353 -0
  359. package/helpers/array.mjs +333 -0
  360. package/helpers/browser.d.ts +25 -0
  361. package/helpers/browser.js +231 -0
  362. package/helpers/browser.mjs +210 -0
  363. package/helpers/console.d.ts +4 -0
  364. package/helpers/console.js +65 -0
  365. package/helpers/console.mjs +56 -0
  366. package/helpers/data.d.ts +12 -0
  367. package/helpers/data.js +247 -0
  368. package/helpers/data.mjs +234 -0
  369. package/helpers/date.d.ts +1 -0
  370. package/helpers/date.js +22 -0
  371. package/helpers/date.mjs +18 -0
  372. package/helpers/dom/element.d.ts +49 -0
  373. package/helpers/dom/element.js +1117 -0
  374. package/helpers/dom/element.mjs +1064 -0
  375. package/helpers/dom/event.d.ts +4 -0
  376. package/helpers/dom/event.js +46 -0
  377. package/helpers/dom/event.mjs +39 -0
  378. package/helpers/dom/index.d.ts +2 -0
  379. package/helpers/feature.d.ts +11 -0
  380. package/helpers/feature.js +184 -0
  381. package/helpers/feature.mjs +172 -0
  382. package/helpers/function.d.ts +10 -0
  383. package/helpers/function.js +319 -0
  384. package/helpers/function.mjs +307 -0
  385. package/helpers/index.d.ts +14 -0
  386. package/helpers/mixed.d.ts +5 -0
  387. package/helpers/mixed.js +230 -0
  388. package/helpers/mixed.mjs +220 -0
  389. package/helpers/number.d.ts +5 -0
  390. package/helpers/number.js +142 -0
  391. package/helpers/number.mjs +134 -0
  392. package/helpers/object.d.ts +16 -0
  393. package/helpers/object.js +371 -0
  394. package/helpers/object.mjs +352 -0
  395. package/helpers/string.d.ts +7 -0
  396. package/helpers/string.js +115 -0
  397. package/helpers/string.mjs +104 -0
  398. package/helpers/templateLiteralTag.d.ts +1 -0
  399. package/helpers/templateLiteralTag.js +26 -0
  400. package/helpers/templateLiteralTag.mjs +22 -0
  401. package/helpers/unicode.d.ts +73 -0
  402. package/helpers/unicode.js +158 -0
  403. package/helpers/unicode.mjs +148 -0
  404. package/helpers/wrappers/jquery.js +50 -0
  405. package/helpers/wrappers/jquery.mjs +46 -0
  406. package/i18n/constants.js +162 -0
  407. package/i18n/constants.mjs +82 -0
  408. package/i18n/index.d.ts +2 -0
  409. package/i18n/index.js +18 -0
  410. package/i18n/index.mjs +2 -0
  411. package/i18n/languages/ar-AR.js +25 -0
  412. package/i18n/languages/ar-AR.mjs +15 -0
  413. package/i18n/languages/cs-CZ.js +24 -0
  414. package/i18n/languages/cs-CZ.mjs +14 -0
  415. package/i18n/languages/de-CH.d.ts +5 -0
  416. package/i18n/languages/de-CH.js +24 -0
  417. package/i18n/languages/de-CH.mjs +14 -0
  418. package/i18n/languages/de-DE.d.ts +5 -0
  419. package/i18n/languages/de-DE.js +24 -0
  420. package/i18n/languages/de-DE.mjs +14 -0
  421. package/i18n/languages/en-US.d.ts +5 -0
  422. package/i18n/languages/en-US.js +24 -0
  423. package/i18n/languages/en-US.mjs +14 -0
  424. package/i18n/languages/es-MX.d.ts +5 -0
  425. package/i18n/languages/es-MX.js +24 -0
  426. package/i18n/languages/es-MX.mjs +13 -0
  427. package/i18n/languages/fr-FR.d.ts +5 -0
  428. package/i18n/languages/fr-FR.js +24 -0
  429. package/i18n/languages/fr-FR.mjs +14 -0
  430. package/i18n/languages/index.d.ts +35 -0
  431. package/i18n/languages/index.js +42 -0
  432. package/i18n/languages/index.mjs +20 -0
  433. package/i18n/languages/it-IT.d.ts +5 -0
  434. package/i18n/languages/it-IT.js +24 -0
  435. package/i18n/languages/it-IT.mjs +14 -0
  436. package/i18n/languages/ja-JP.d.ts +5 -0
  437. package/i18n/languages/ja-JP.js +24 -0
  438. package/i18n/languages/ja-JP.mjs +14 -0
  439. package/i18n/languages/ko-KR.d.ts +5 -0
  440. package/i18n/languages/ko-KR.js +24 -0
  441. package/i18n/languages/ko-KR.mjs +14 -0
  442. package/i18n/languages/lv-LV.d.ts +5 -0
  443. package/i18n/languages/lv-LV.js +24 -0
  444. package/i18n/languages/lv-LV.mjs +14 -0
  445. package/i18n/languages/nb-NO.d.ts +5 -0
  446. package/i18n/languages/nb-NO.js +24 -0
  447. package/i18n/languages/nb-NO.mjs +14 -0
  448. package/i18n/languages/nl-NL.d.ts +5 -0
  449. package/i18n/languages/nl-NL.js +24 -0
  450. package/i18n/languages/nl-NL.mjs +14 -0
  451. package/i18n/languages/pl-PL.d.ts +5 -0
  452. package/i18n/languages/pl-PL.js +24 -0
  453. package/i18n/languages/pl-PL.mjs +14 -0
  454. package/i18n/languages/pt-BR.d.ts +5 -0
  455. package/i18n/languages/pt-BR.js +24 -0
  456. package/i18n/languages/pt-BR.mjs +14 -0
  457. package/i18n/languages/ru-RU.d.ts +5 -0
  458. package/i18n/languages/ru-RU.js +24 -0
  459. package/i18n/languages/ru-RU.mjs +14 -0
  460. package/i18n/languages/sr-SP.js +24 -0
  461. package/i18n/languages/sr-SP.mjs +14 -0
  462. package/i18n/languages/zh-CN.d.ts +5 -0
  463. package/i18n/languages/zh-CN.js +24 -0
  464. package/i18n/languages/zh-CN.mjs +14 -0
  465. package/i18n/languages/zh-TW.d.ts +5 -0
  466. package/i18n/languages/zh-TW.js +24 -0
  467. package/i18n/languages/zh-TW.mjs +14 -0
  468. package/i18n/phraseFormatters/index.js +31 -0
  469. package/i18n/phraseFormatters/index.mjs +26 -0
  470. package/i18n/phraseFormatters/pluralize.js +21 -0
  471. package/i18n/phraseFormatters/pluralize.mjs +17 -0
  472. package/i18n/phraseFormatters/substituteVariables.js +22 -0
  473. package/i18n/phraseFormatters/substituteVariables.mjs +18 -0
  474. package/i18n/registry.d.ts +13 -0
  475. package/i18n/registry.js +180 -0
  476. package/i18n/registry.mjs +155 -0
  477. package/i18n/utils.js +90 -0
  478. package/i18n/utils.mjs +83 -0
  479. package/index.d.ts +520 -0
  480. package/index.js +130 -0
  481. package/index.mjs +112 -0
  482. package/languages/all.js +583 -0
  483. package/languages/ar-AR.js +157 -0
  484. package/languages/ar-AR.mjs +17 -0
  485. package/languages/cs-CZ.js +157 -0
  486. package/languages/cs-CZ.mjs +16 -0
  487. package/languages/de-CH.js +158 -0
  488. package/languages/de-CH.mjs +16 -0
  489. package/languages/de-DE.js +159 -0
  490. package/languages/de-DE.mjs +16 -0
  491. package/languages/en-US.js +160 -0
  492. package/languages/en-US.mjs +16 -0
  493. package/languages/es-MX.js +161 -0
  494. package/languages/es-MX.mjs +15 -0
  495. package/languages/fr-FR.js +162 -0
  496. package/languages/fr-FR.mjs +16 -0
  497. package/languages/index.js +583 -0
  498. package/languages/index.mjs +20 -0
  499. package/languages/it-IT.js +164 -0
  500. package/languages/it-IT.mjs +16 -0
  501. package/languages/ja-JP.js +161 -0
  502. package/languages/ja-JP.mjs +16 -0
  503. package/languages/ko-KR.js +161 -0
  504. package/languages/ko-KR.mjs +16 -0
  505. package/languages/lv-LV.js +161 -0
  506. package/languages/lv-LV.mjs +16 -0
  507. package/languages/nb-NO.js +161 -0
  508. package/languages/nb-NO.mjs +16 -0
  509. package/languages/nl-NL.js +161 -0
  510. package/languages/nl-NL.mjs +16 -0
  511. package/languages/pl-PL.js +161 -0
  512. package/languages/pl-PL.mjs +16 -0
  513. package/languages/pt-BR.js +161 -0
  514. package/languages/pt-BR.mjs +16 -0
  515. package/languages/ru-RU.js +161 -0
  516. package/languages/ru-RU.mjs +16 -0
  517. package/languages/sr-SP.js +161 -0
  518. package/languages/sr-SP.mjs +16 -0
  519. package/languages/zh-CN.js +161 -0
  520. package/languages/zh-CN.mjs +16 -0
  521. package/languages/zh-TW.js +161 -0
  522. package/languages/zh-TW.mjs +16 -0
  523. package/mixins/hooksRefRegisterer.js +61 -0
  524. package/mixins/hooksRefRegisterer.mjs +56 -0
  525. package/mixins/localHooks.js +71 -0
  526. package/mixins/localHooks.mjs +66 -0
  527. package/package.json +751 -0
  528. package/pluginHooks.d.ts +256 -0
  529. package/pluginHooks.js +2750 -0
  530. package/pluginHooks.mjs +2744 -0
  531. package/plugins/autoColumnSize/autoColumnSize.d.ts +27 -0
  532. package/plugins/autoColumnSize/autoColumnSize.js +796 -0
  533. package/plugins/autoColumnSize/autoColumnSize.mjs +788 -0
  534. package/plugins/autoColumnSize/index.d.ts +1 -0
  535. package/plugins/autoColumnSize/index.js +8 -0
  536. package/plugins/autoColumnSize/index.mjs +1 -0
  537. package/plugins/autoRowSize/autoRowSize.d.ts +27 -0
  538. package/plugins/autoRowSize/autoRowSize.js +735 -0
  539. package/plugins/autoRowSize/autoRowSize.mjs +727 -0
  540. package/plugins/autoRowSize/index.d.ts +1 -0
  541. package/plugins/autoRowSize/index.js +8 -0
  542. package/plugins/autoRowSize/index.mjs +1 -0
  543. package/plugins/autofill/autofill.d.ts +18 -0
  544. package/plugins/autofill/autofill.js +694 -0
  545. package/plugins/autofill/autofill.mjs +687 -0
  546. package/plugins/autofill/index.d.ts +1 -0
  547. package/plugins/autofill/index.js +8 -0
  548. package/plugins/autofill/index.mjs +1 -0
  549. package/plugins/autofill/utils.js +134 -0
  550. package/plugins/autofill/utils.mjs +126 -0
  551. package/plugins/base/base.d.ts +27 -0
  552. package/plugins/base/base.js +345 -0
  553. package/plugins/base/base.mjs +339 -0
  554. package/plugins/base/index.d.ts +1 -0
  555. package/plugins/base/index.js +7 -0
  556. package/plugins/base/index.mjs +1 -0
  557. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.d.ts +9 -0
  558. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +169 -0
  559. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +161 -0
  560. package/plugins/bindRowsWithHeaders/index.d.ts +1 -0
  561. package/plugins/bindRowsWithHeaders/index.js +8 -0
  562. package/plugins/bindRowsWithHeaders/index.mjs +1 -0
  563. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +80 -0
  564. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +75 -0
  565. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +103 -0
  566. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +98 -0
  567. package/plugins/collapsibleColumns/collapsibleColumns.d.ts +22 -0
  568. package/plugins/collapsibleColumns/collapsibleColumns.js +592 -0
  569. package/plugins/collapsibleColumns/collapsibleColumns.mjs +584 -0
  570. package/plugins/collapsibleColumns/index.d.ts +1 -0
  571. package/plugins/collapsibleColumns/index.js +8 -0
  572. package/plugins/collapsibleColumns/index.mjs +1 -0
  573. package/plugins/columnSorting/columnSorting.d.ts +30 -0
  574. package/plugins/columnSorting/columnSorting.js +865 -0
  575. package/plugins/columnSorting/columnSorting.mjs +857 -0
  576. package/plugins/columnSorting/columnStatesManager.js +273 -0
  577. package/plugins/columnSorting/columnStatesManager.mjs +268 -0
  578. package/plugins/columnSorting/domHelpers.js +54 -0
  579. package/plugins/columnSorting/domHelpers.mjs +49 -0
  580. package/plugins/columnSorting/index.d.ts +1 -0
  581. package/plugins/columnSorting/index.js +8 -0
  582. package/plugins/columnSorting/index.mjs +1 -0
  583. package/plugins/columnSorting/rootComparator.js +52 -0
  584. package/plugins/columnSorting/rootComparator.mjs +48 -0
  585. package/plugins/columnSorting/sortFunction/checkbox.js +64 -0
  586. package/plugins/columnSorting/sortFunction/checkbox.mjs +58 -0
  587. package/plugins/columnSorting/sortFunction/date.js +61 -0
  588. package/plugins/columnSorting/sortFunction/date.mjs +54 -0
  589. package/plugins/columnSorting/sortFunction/default.js +65 -0
  590. package/plugins/columnSorting/sortFunction/default.mjs +59 -0
  591. package/plugins/columnSorting/sortFunction/numeric.js +49 -0
  592. package/plugins/columnSorting/sortFunction/numeric.mjs +43 -0
  593. package/plugins/columnSorting/sortService/engine.js +26 -0
  594. package/plugins/columnSorting/sortService/engine.mjs +18 -0
  595. package/plugins/columnSorting/sortService/index.js +13 -0
  596. package/plugins/columnSorting/sortService/index.mjs +3 -0
  597. package/plugins/columnSorting/sortService/registry.js +37 -0
  598. package/plugins/columnSorting/sortService/registry.mjs +30 -0
  599. package/plugins/columnSorting/utils.js +122 -0
  600. package/plugins/columnSorting/utils.mjs +110 -0
  601. package/plugins/columnSummary/columnSummary.d.ts +72 -0
  602. package/plugins/columnSummary/columnSummary.js +544 -0
  603. package/plugins/columnSummary/columnSummary.mjs +536 -0
  604. package/plugins/columnSummary/endpoints.js +557 -0
  605. package/plugins/columnSummary/endpoints.mjs +552 -0
  606. package/plugins/columnSummary/index.d.ts +1 -0
  607. package/plugins/columnSummary/index.js +8 -0
  608. package/plugins/columnSummary/index.mjs +1 -0
  609. package/plugins/columnSummary/utils.js +13 -0
  610. package/plugins/columnSummary/utils.mjs +9 -0
  611. package/plugins/comments/commentEditor.js +241 -0
  612. package/plugins/comments/commentEditor.mjs +236 -0
  613. package/plugins/comments/comments.d.ts +50 -0
  614. package/plugins/comments/comments.js +942 -0
  615. package/plugins/comments/comments.mjs +932 -0
  616. package/plugins/comments/displaySwitch.js +115 -0
  617. package/plugins/comments/displaySwitch.mjs +109 -0
  618. package/plugins/comments/index.d.ts +1 -0
  619. package/plugins/comments/index.js +8 -0
  620. package/plugins/comments/index.mjs +1 -0
  621. package/plugins/contextMenu/commandExecutor.js +113 -0
  622. package/plugins/contextMenu/commandExecutor.mjs +108 -0
  623. package/plugins/contextMenu/contextMenu.d.ts +65 -0
  624. package/plugins/contextMenu/contextMenu.js +445 -0
  625. package/plugins/contextMenu/contextMenu.mjs +437 -0
  626. package/plugins/contextMenu/cursor.js +126 -0
  627. package/plugins/contextMenu/cursor.mjs +121 -0
  628. package/plugins/contextMenu/index.d.ts +1 -0
  629. package/plugins/contextMenu/index.js +8 -0
  630. package/plugins/contextMenu/index.mjs +1 -0
  631. package/plugins/contextMenu/itemsFactory.js +136 -0
  632. package/plugins/contextMenu/itemsFactory.mjs +131 -0
  633. package/plugins/contextMenu/menu.js +1003 -0
  634. package/plugins/contextMenu/menu.mjs +997 -0
  635. package/plugins/contextMenu/predefinedItems/alignment.js +277 -0
  636. package/plugins/contextMenu/predefinedItems/alignment.mjs +259 -0
  637. package/plugins/contextMenu/predefinedItems/clearColumn.js +47 -0
  638. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +29 -0
  639. package/plugins/contextMenu/predefinedItems/columnLeft.js +57 -0
  640. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +39 -0
  641. package/plugins/contextMenu/predefinedItems/columnRight.js +55 -0
  642. package/plugins/contextMenu/predefinedItems/columnRight.mjs +37 -0
  643. package/plugins/contextMenu/predefinedItems/noItems.js +22 -0
  644. package/plugins/contextMenu/predefinedItems/noItems.mjs +16 -0
  645. package/plugins/contextMenu/predefinedItems/readOnly.js +69 -0
  646. package/plugins/contextMenu/predefinedItems/readOnly.mjs +51 -0
  647. package/plugins/contextMenu/predefinedItems/redo.js +42 -0
  648. package/plugins/contextMenu/predefinedItems/redo.mjs +24 -0
  649. package/plugins/contextMenu/predefinedItems/removeColumn.js +79 -0
  650. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +68 -0
  651. package/plugins/contextMenu/predefinedItems/removeRow.js +78 -0
  652. package/plugins/contextMenu/predefinedItems/removeRow.mjs +67 -0
  653. package/plugins/contextMenu/predefinedItems/rowAbove.js +53 -0
  654. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +35 -0
  655. package/plugins/contextMenu/predefinedItems/rowBelow.js +51 -0
  656. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +33 -0
  657. package/plugins/contextMenu/predefinedItems/separator.js +16 -0
  658. package/plugins/contextMenu/predefinedItems/separator.mjs +10 -0
  659. package/plugins/contextMenu/predefinedItems/undo.js +42 -0
  660. package/plugins/contextMenu/predefinedItems/undo.mjs +24 -0
  661. package/plugins/contextMenu/predefinedItems.js +76 -0
  662. package/plugins/contextMenu/predefinedItems.mjs +57 -0
  663. package/plugins/contextMenu/utils.js +278 -0
  664. package/plugins/contextMenu/utils.mjs +261 -0
  665. package/plugins/copyPaste/clipboardData.js +29 -0
  666. package/plugins/copyPaste/clipboardData.mjs +25 -0
  667. package/plugins/copyPaste/contextMenuItem/copy.js +45 -0
  668. package/plugins/copyPaste/contextMenuItem/copy.mjs +29 -0
  669. package/plugins/copyPaste/contextMenuItem/cut.js +45 -0
  670. package/plugins/copyPaste/contextMenuItem/cut.mjs +29 -0
  671. package/plugins/copyPaste/copyPaste.d.ts +35 -0
  672. package/plugins/copyPaste/copyPaste.js +721 -0
  673. package/plugins/copyPaste/copyPaste.mjs +713 -0
  674. package/plugins/copyPaste/focusableElement.js +210 -0
  675. package/plugins/copyPaste/focusableElement.mjs +204 -0
  676. package/plugins/copyPaste/index.d.ts +1 -0
  677. package/plugins/copyPaste/index.js +8 -0
  678. package/plugins/copyPaste/index.mjs +1 -0
  679. package/plugins/copyPaste/pasteEvent.js +17 -0
  680. package/plugins/copyPaste/pasteEvent.mjs +12 -0
  681. package/plugins/customBorders/contextMenuItem/bottom.js +39 -0
  682. package/plugins/customBorders/contextMenuItem/bottom.mjs +23 -0
  683. package/plugins/customBorders/contextMenuItem/index.js +14 -0
  684. package/plugins/customBorders/contextMenuItem/index.mjs +6 -0
  685. package/plugins/customBorders/contextMenuItem/left.js +40 -0
  686. package/plugins/customBorders/contextMenuItem/left.mjs +24 -0
  687. package/plugins/customBorders/contextMenuItem/noBorders.js +36 -0
  688. package/plugins/customBorders/contextMenuItem/noBorders.mjs +20 -0
  689. package/plugins/customBorders/contextMenuItem/right.js +40 -0
  690. package/plugins/customBorders/contextMenuItem/right.mjs +24 -0
  691. package/plugins/customBorders/contextMenuItem/top.js +39 -0
  692. package/plugins/customBorders/contextMenuItem/top.mjs +23 -0
  693. package/plugins/customBorders/customBorders.d.ts +38 -0
  694. package/plugins/customBorders/customBorders.js +887 -0
  695. package/plugins/customBorders/customBorders.mjs +877 -0
  696. package/plugins/customBorders/index.d.ts +1 -0
  697. package/plugins/customBorders/index.js +8 -0
  698. package/plugins/customBorders/index.mjs +1 -0
  699. package/plugins/customBorders/utils.js +265 -0
  700. package/plugins/customBorders/utils.mjs +249 -0
  701. package/plugins/dragToScroll/dragToScroll.d.ts +15 -0
  702. package/plugins/dragToScroll/dragToScroll.js +335 -0
  703. package/plugins/dragToScroll/dragToScroll.mjs +327 -0
  704. package/plugins/dragToScroll/index.d.ts +1 -0
  705. package/plugins/dragToScroll/index.js +8 -0
  706. package/plugins/dragToScroll/index.mjs +1 -0
  707. package/plugins/dropdownMenu/dropdownMenu.d.ts +24 -0
  708. package/plugins/dropdownMenu/dropdownMenu.js +511 -0
  709. package/plugins/dropdownMenu/dropdownMenu.mjs +504 -0
  710. package/plugins/dropdownMenu/index.d.ts +1 -0
  711. package/plugins/dropdownMenu/index.js +8 -0
  712. package/plugins/dropdownMenu/index.mjs +1 -0
  713. package/plugins/exportFile/dataProvider.js +200 -0
  714. package/plugins/exportFile/dataProvider.mjs +195 -0
  715. package/plugins/exportFile/exportFile.d.ts +12 -0
  716. package/plugins/exportFile/exportFile.js +262 -0
  717. package/plugins/exportFile/exportFile.mjs +250 -0
  718. package/plugins/exportFile/index.d.ts +1 -0
  719. package/plugins/exportFile/index.js +8 -0
  720. package/plugins/exportFile/index.mjs +1 -0
  721. package/plugins/exportFile/typeFactory.js +30 -0
  722. package/plugins/exportFile/typeFactory.mjs +21 -0
  723. package/plugins/exportFile/types/_base.js +78 -0
  724. package/plugins/exportFile/types/_base.mjs +73 -0
  725. package/plugins/exportFile/types/csv.js +131 -0
  726. package/plugins/exportFile/types/csv.mjs +125 -0
  727. package/plugins/filters/component/_base.js +169 -0
  728. package/plugins/filters/component/_base.mjs +163 -0
  729. package/plugins/filters/component/actionBar.js +161 -0
  730. package/plugins/filters/component/actionBar.mjs +151 -0
  731. package/plugins/filters/component/condition.js +325 -0
  732. package/plugins/filters/component/condition.mjs +316 -0
  733. package/plugins/filters/component/operators.js +222 -0
  734. package/plugins/filters/component/operators.mjs +216 -0
  735. package/plugins/filters/component/value.js +278 -0
  736. package/plugins/filters/component/value.mjs +269 -0
  737. package/plugins/filters/condition/beginsWith.js +50 -0
  738. package/plugins/filters/condition/beginsWith.mjs +39 -0
  739. package/plugins/filters/condition/between.js +64 -0
  740. package/plugins/filters/condition/between.mjs +53 -0
  741. package/plugins/filters/condition/byValue.js +48 -0
  742. package/plugins/filters/condition/byValue.mjs +42 -0
  743. package/plugins/filters/condition/contains.js +50 -0
  744. package/plugins/filters/condition/contains.mjs +39 -0
  745. package/plugins/filters/condition/date/after.js +55 -0
  746. package/plugins/filters/condition/date/after.mjs +43 -0
  747. package/plugins/filters/condition/date/before.js +55 -0
  748. package/plugins/filters/condition/date/before.mjs +43 -0
  749. package/plugins/filters/condition/date/today.js +39 -0
  750. package/plugins/filters/condition/date/today.mjs +20 -0
  751. package/plugins/filters/condition/date/tomorrow.js +39 -0
  752. package/plugins/filters/condition/date/tomorrow.mjs +20 -0
  753. package/plugins/filters/condition/date/yesterday.js +39 -0
  754. package/plugins/filters/condition/date/yesterday.mjs +20 -0
  755. package/plugins/filters/condition/empty.js +35 -0
  756. package/plugins/filters/condition/empty.mjs +17 -0
  757. package/plugins/filters/condition/endsWith.js +50 -0
  758. package/plugins/filters/condition/endsWith.mjs +39 -0
  759. package/plugins/filters/condition/equal.js +49 -0
  760. package/plugins/filters/condition/equal.mjs +38 -0
  761. package/plugins/filters/condition/false.js +18 -0
  762. package/plugins/filters/condition/false.mjs +12 -0
  763. package/plugins/filters/condition/greaterThan.js +52 -0
  764. package/plugins/filters/condition/greaterThan.mjs +41 -0
  765. package/plugins/filters/condition/greaterThanOrEqual.js +52 -0
  766. package/plugins/filters/condition/greaterThanOrEqual.mjs +41 -0
  767. package/plugins/filters/condition/lessThan.js +52 -0
  768. package/plugins/filters/condition/lessThan.mjs +41 -0
  769. package/plugins/filters/condition/lessThanOrEqual.js +52 -0
  770. package/plugins/filters/condition/lessThanOrEqual.mjs +41 -0
  771. package/plugins/filters/condition/none.js +33 -0
  772. package/plugins/filters/condition/none.mjs +15 -0
  773. package/plugins/filters/condition/notBetween.js +36 -0
  774. package/plugins/filters/condition/notBetween.mjs +18 -0
  775. package/plugins/filters/condition/notContains.js +36 -0
  776. package/plugins/filters/condition/notContains.mjs +18 -0
  777. package/plugins/filters/condition/notEmpty.js +36 -0
  778. package/plugins/filters/condition/notEmpty.mjs +18 -0
  779. package/plugins/filters/condition/notEqual.js +36 -0
  780. package/plugins/filters/condition/notEqual.mjs +18 -0
  781. package/plugins/filters/condition/true.js +18 -0
  782. package/plugins/filters/condition/true.mjs +12 -0
  783. package/plugins/filters/conditionCollection.d.ts +32 -0
  784. package/plugins/filters/conditionCollection.js +343 -0
  785. package/plugins/filters/conditionCollection.mjs +337 -0
  786. package/plugins/filters/conditionRegisterer.js +61 -0
  787. package/plugins/filters/conditionRegisterer.mjs +53 -0
  788. package/plugins/filters/conditionUpdateObserver.d.ts +10 -0
  789. package/plugins/filters/conditionUpdateObserver.js +248 -0
  790. package/plugins/filters/conditionUpdateObserver.mjs +242 -0
  791. package/plugins/filters/constants.js +103 -0
  792. package/plugins/filters/constants.mjs +69 -0
  793. package/plugins/filters/dataFilter.js +98 -0
  794. package/plugins/filters/dataFilter.mjs +93 -0
  795. package/plugins/filters/filters.d.ts +56 -0
  796. package/plugins/filters/filters.js +1037 -0
  797. package/plugins/filters/filters.mjs +1026 -0
  798. package/plugins/filters/index.d.ts +1 -0
  799. package/plugins/filters/index.js +8 -0
  800. package/plugins/filters/index.mjs +1 -0
  801. package/plugins/filters/logicalOperationRegisterer.js +50 -0
  802. package/plugins/filters/logicalOperationRegisterer.mjs +42 -0
  803. package/plugins/filters/logicalOperations/conjunction.js +36 -0
  804. package/plugins/filters/logicalOperations/conjunction.mjs +18 -0
  805. package/plugins/filters/logicalOperations/disjunction.js +36 -0
  806. package/plugins/filters/logicalOperations/disjunction.mjs +18 -0
  807. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +40 -0
  808. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +22 -0
  809. package/plugins/filters/ui/_base.js +249 -0
  810. package/plugins/filters/ui/_base.mjs +231 -0
  811. package/plugins/filters/ui/input.js +140 -0
  812. package/plugins/filters/ui/input.mjs +134 -0
  813. package/plugins/filters/ui/link.js +86 -0
  814. package/plugins/filters/ui/link.mjs +80 -0
  815. package/plugins/filters/ui/multipleSelect.js +441 -0
  816. package/plugins/filters/ui/multipleSelect.mjs +434 -0
  817. package/plugins/filters/ui/radioInput.js +130 -0
  818. package/plugins/filters/ui/radioInput.mjs +124 -0
  819. package/plugins/filters/ui/select.js +269 -0
  820. package/plugins/filters/ui/select.mjs +261 -0
  821. package/plugins/filters/utils.js +143 -0
  822. package/plugins/filters/utils.mjs +134 -0
  823. package/plugins/formulas/engine/register.js +259 -0
  824. package/plugins/formulas/engine/register.mjs +247 -0
  825. package/plugins/formulas/engine/settings.js +115 -0
  826. package/plugins/formulas/engine/settings.mjs +107 -0
  827. package/plugins/formulas/formulas.d.ts +31 -0
  828. package/plugins/formulas/formulas.js +1229 -0
  829. package/plugins/formulas/formulas.mjs +1221 -0
  830. package/plugins/formulas/index.d.ts +1 -0
  831. package/plugins/formulas/index.js +8 -0
  832. package/plugins/formulas/index.mjs +1 -0
  833. package/plugins/formulas/utils.js +24 -0
  834. package/plugins/formulas/utils.mjs +19 -0
  835. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +76 -0
  836. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +67 -0
  837. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +124 -0
  838. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +115 -0
  839. package/plugins/hiddenColumns/hiddenColumns.d.ts +21 -0
  840. package/plugins/hiddenColumns/hiddenColumns.js +620 -0
  841. package/plugins/hiddenColumns/hiddenColumns.mjs +612 -0
  842. package/plugins/hiddenColumns/index.d.ts +1 -0
  843. package/plugins/hiddenColumns/index.js +8 -0
  844. package/plugins/hiddenColumns/index.mjs +1 -0
  845. package/plugins/hiddenRows/contextMenuItem/hideRow.js +76 -0
  846. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +67 -0
  847. package/plugins/hiddenRows/contextMenuItem/showRow.js +124 -0
  848. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +115 -0
  849. package/plugins/hiddenRows/hiddenRows.d.ts +21 -0
  850. package/plugins/hiddenRows/hiddenRows.js +612 -0
  851. package/plugins/hiddenRows/hiddenRows.mjs +604 -0
  852. package/plugins/hiddenRows/index.d.ts +1 -0
  853. package/plugins/hiddenRows/index.js +8 -0
  854. package/plugins/hiddenRows/index.mjs +1 -0
  855. package/plugins/index.d.ts +111 -0
  856. package/plugins/index.js +115 -0
  857. package/plugins/index.mjs +75 -0
  858. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +58 -0
  859. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +49 -0
  860. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +58 -0
  861. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +49 -0
  862. package/plugins/manualColumnFreeze/index.d.ts +1 -0
  863. package/plugins/manualColumnFreeze/index.js +8 -0
  864. package/plugins/manualColumnFreeze/index.mjs +1 -0
  865. package/plugins/manualColumnFreeze/manualColumnFreeze.d.ts +11 -0
  866. package/plugins/manualColumnFreeze/manualColumnFreeze.js +250 -0
  867. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +242 -0
  868. package/plugins/manualColumnMove/index.d.ts +1 -0
  869. package/plugins/manualColumnMove/index.js +8 -0
  870. package/plugins/manualColumnMove/index.mjs +1 -0
  871. package/plugins/manualColumnMove/manualColumnMove.d.ts +14 -0
  872. package/plugins/manualColumnMove/manualColumnMove.js +775 -0
  873. package/plugins/manualColumnMove/manualColumnMove.mjs +767 -0
  874. package/plugins/manualColumnMove/ui/_base.js +209 -0
  875. package/plugins/manualColumnMove/ui/_base.mjs +204 -0
  876. package/plugins/manualColumnMove/ui/backlight.js +60 -0
  877. package/plugins/manualColumnMove/ui/backlight.mjs +54 -0
  878. package/plugins/manualColumnMove/ui/guideline.js +60 -0
  879. package/plugins/manualColumnMove/ui/guideline.mjs +54 -0
  880. package/plugins/manualColumnResize/index.d.ts +1 -0
  881. package/plugins/manualColumnResize/index.js +8 -0
  882. package/plugins/manualColumnResize/index.mjs +1 -0
  883. package/plugins/manualColumnResize/manualColumnResize.d.ts +30 -0
  884. package/plugins/manualColumnResize/manualColumnResize.js +690 -0
  885. package/plugins/manualColumnResize/manualColumnResize.mjs +680 -0
  886. package/plugins/manualRowMove/index.d.ts +1 -0
  887. package/plugins/manualRowMove/index.js +8 -0
  888. package/plugins/manualRowMove/index.mjs +1 -0
  889. package/plugins/manualRowMove/manualRowMove.d.ts +14 -0
  890. package/plugins/manualRowMove/manualRowMove.js +757 -0
  891. package/plugins/manualRowMove/manualRowMove.mjs +749 -0
  892. package/plugins/manualRowMove/ui/_base.js +196 -0
  893. package/plugins/manualRowMove/ui/_base.mjs +191 -0
  894. package/plugins/manualRowMove/ui/backlight.js +60 -0
  895. package/plugins/manualRowMove/ui/backlight.mjs +54 -0
  896. package/plugins/manualRowMove/ui/guideline.js +60 -0
  897. package/plugins/manualRowMove/ui/guideline.mjs +54 -0
  898. package/plugins/manualRowResize/index.d.ts +1 -0
  899. package/plugins/manualRowResize/index.js +8 -0
  900. package/plugins/manualRowResize/index.mjs +1 -0
  901. package/plugins/manualRowResize/manualRowResize.d.ts +29 -0
  902. package/plugins/manualRowResize/manualRowResize.js +652 -0
  903. package/plugins/manualRowResize/manualRowResize.mjs +642 -0
  904. package/plugins/mergeCells/calculations/autofill.js +464 -0
  905. package/plugins/mergeCells/calculations/autofill.mjs +459 -0
  906. package/plugins/mergeCells/calculations/selection.js +204 -0
  907. package/plugins/mergeCells/calculations/selection.mjs +199 -0
  908. package/plugins/mergeCells/cellCoords.js +347 -0
  909. package/plugins/mergeCells/cellCoords.mjs +342 -0
  910. package/plugins/mergeCells/cellsCollection.js +344 -0
  911. package/plugins/mergeCells/cellsCollection.mjs +338 -0
  912. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +55 -0
  913. package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +38 -0
  914. package/plugins/mergeCells/index.d.ts +1 -0
  915. package/plugins/mergeCells/index.js +8 -0
  916. package/plugins/mergeCells/index.mjs +1 -0
  917. package/plugins/mergeCells/mergeCells.d.ts +22 -0
  918. package/plugins/mergeCells/mergeCells.js +1290 -0
  919. package/plugins/mergeCells/mergeCells.mjs +1282 -0
  920. package/plugins/mergeCells/utils.js +30 -0
  921. package/plugins/mergeCells/utils.mjs +26 -0
  922. package/plugins/multiColumnSorting/domHelpers.js +44 -0
  923. package/plugins/multiColumnSorting/domHelpers.mjs +39 -0
  924. package/plugins/multiColumnSorting/index.d.ts +1 -0
  925. package/plugins/multiColumnSorting/index.js +8 -0
  926. package/plugins/multiColumnSorting/index.mjs +1 -0
  927. package/plugins/multiColumnSorting/multiColumnSorting.d.ts +8 -0
  928. package/plugins/multiColumnSorting/multiColumnSorting.js +336 -0
  929. package/plugins/multiColumnSorting/multiColumnSorting.mjs +329 -0
  930. package/plugins/multiColumnSorting/rootComparator.js +55 -0
  931. package/plugins/multiColumnSorting/rootComparator.mjs +51 -0
  932. package/plugins/multiColumnSorting/utils.js +16 -0
  933. package/plugins/multiColumnSorting/utils.mjs +12 -0
  934. package/plugins/multipleSelectionHandles/index.d.ts +1 -0
  935. package/plugins/multipleSelectionHandles/index.js +8 -0
  936. package/plugins/multipleSelectionHandles/index.mjs +1 -0
  937. package/plugins/multipleSelectionHandles/multipleSelectionHandles.d.ts +21 -0
  938. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +394 -0
  939. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +386 -0
  940. package/plugins/nestedHeaders/index.d.ts +1 -0
  941. package/plugins/nestedHeaders/index.js +8 -0
  942. package/plugins/nestedHeaders/index.mjs +1 -0
  943. package/plugins/nestedHeaders/nestedHeaders.d.ts +17 -0
  944. package/plugins/nestedHeaders/nestedHeaders.js +666 -0
  945. package/plugins/nestedHeaders/nestedHeaders.mjs +658 -0
  946. package/plugins/nestedHeaders/stateManager/headersTree.js +288 -0
  947. package/plugins/nestedHeaders/stateManager/headersTree.mjs +283 -0
  948. package/plugins/nestedHeaders/stateManager/index.js +417 -0
  949. package/plugins/nestedHeaders/stateManager/index.mjs +412 -0
  950. package/plugins/nestedHeaders/stateManager/matrixGenerator.js +102 -0
  951. package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +99 -0
  952. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +98 -0
  953. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +94 -0
  954. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +95 -0
  955. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +91 -0
  956. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +54 -0
  957. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +50 -0
  958. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +40 -0
  959. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +35 -0
  960. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +55 -0
  961. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +51 -0
  962. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +61 -0
  963. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +55 -0
  964. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +122 -0
  965. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +119 -0
  966. package/plugins/nestedHeaders/stateManager/sourceSettings.js +250 -0
  967. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +245 -0
  968. package/plugins/nestedHeaders/stateManager/utils.js +75 -0
  969. package/plugins/nestedHeaders/stateManager/utils.mjs +70 -0
  970. package/plugins/nestedHeaders/utils/ghostTable.js +167 -0
  971. package/plugins/nestedHeaders/utils/ghostTable.mjs +162 -0
  972. package/plugins/nestedRows/data/dataManager.js +809 -0
  973. package/plugins/nestedRows/data/dataManager.mjs +804 -0
  974. package/plugins/nestedRows/index.d.ts +1 -0
  975. package/plugins/nestedRows/index.js +8 -0
  976. package/plugins/nestedRows/index.mjs +1 -0
  977. package/plugins/nestedRows/nestedRows.d.ts +12 -0
  978. package/plugins/nestedRows/nestedRows.js +592 -0
  979. package/plugins/nestedRows/nestedRows.mjs +584 -0
  980. package/plugins/nestedRows/ui/_base.js +28 -0
  981. package/plugins/nestedRows/ui/_base.mjs +23 -0
  982. package/plugins/nestedRows/ui/collapsing.js +562 -0
  983. package/plugins/nestedRows/ui/collapsing.mjs +556 -0
  984. package/plugins/nestedRows/ui/contextMenu.js +147 -0
  985. package/plugins/nestedRows/ui/contextMenu.mjs +138 -0
  986. package/plugins/nestedRows/ui/headers.js +157 -0
  987. package/plugins/nestedRows/ui/headers.mjs +151 -0
  988. package/plugins/nestedRows/utils/rowMoveController.js +331 -0
  989. package/plugins/nestedRows/utils/rowMoveController.mjs +327 -0
  990. package/plugins/persistentState/index.d.ts +1 -0
  991. package/plugins/persistentState/index.js +8 -0
  992. package/plugins/persistentState/index.mjs +1 -0
  993. package/plugins/persistentState/persistentState.d.ts +13 -0
  994. package/plugins/persistentState/persistentState.js +207 -0
  995. package/plugins/persistentState/persistentState.mjs +199 -0
  996. package/plugins/persistentState/storage.js +138 -0
  997. package/plugins/persistentState/storage.mjs +133 -0
  998. package/plugins/registry.d.ts +9 -0
  999. package/plugins/registry.js +150 -0
  1000. package/plugins/registry.mjs +146 -0
  1001. package/plugins/search/index.d.ts +1 -0
  1002. package/plugins/search/index.js +8 -0
  1003. package/plugins/search/index.mjs +1 -0
  1004. package/plugins/search/search.d.ts +28 -0
  1005. package/plugins/search/search.js +377 -0
  1006. package/plugins/search/search.mjs +370 -0
  1007. package/plugins/touchScroll/index.d.ts +1 -0
  1008. package/plugins/touchScroll/index.js +8 -0
  1009. package/plugins/touchScroll/index.mjs +1 -0
  1010. package/plugins/touchScroll/touchScroll.d.ts +13 -0
  1011. package/plugins/touchScroll/touchScroll.js +250 -0
  1012. package/plugins/touchScroll/touchScroll.mjs +243 -0
  1013. package/plugins/trimRows/index.d.ts +1 -0
  1014. package/plugins/trimRows/index.js +8 -0
  1015. package/plugins/trimRows/index.mjs +1 -0
  1016. package/plugins/trimRows/trimRows.d.ts +17 -0
  1017. package/plugins/trimRows/trimRows.js +393 -0
  1018. package/plugins/trimRows/trimRows.mjs +386 -0
  1019. package/plugins/undoRedo/index.d.ts +1 -0
  1020. package/plugins/undoRedo/index.js +18 -0
  1021. package/plugins/undoRedo/index.mjs +2 -0
  1022. package/plugins/undoRedo/undoRedo.d.ts +49 -0
  1023. package/plugins/undoRedo/undoRedo.js +935 -0
  1024. package/plugins/undoRedo/undoRedo.mjs +928 -0
  1025. package/registry.d.ts +6 -0
  1026. package/registry.js +35 -0
  1027. package/registry.mjs +26 -0
  1028. package/renderers/autocompleteRenderer/autocompleteRenderer.d.ts +5 -0
  1029. package/renderers/autocompleteRenderer/autocompleteRenderer.js +59 -0
  1030. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +52 -0
  1031. package/renderers/autocompleteRenderer/index.d.ts +1 -0
  1032. package/renderers/autocompleteRenderer/index.js +7 -0
  1033. package/renderers/autocompleteRenderer/index.mjs +1 -0
  1034. package/renderers/base.d.ts +3 -0
  1035. package/renderers/baseRenderer/baseRenderer.d.ts +5 -0
  1036. package/renderers/baseRenderer/baseRenderer.js +46 -0
  1037. package/renderers/baseRenderer/baseRenderer.mjs +39 -0
  1038. package/renderers/baseRenderer/index.d.ts +1 -0
  1039. package/renderers/baseRenderer/index.js +7 -0
  1040. package/renderers/baseRenderer/index.mjs +1 -0
  1041. package/renderers/checkboxRenderer/checkboxRenderer.d.ts +5 -0
  1042. package/renderers/checkboxRenderer/checkboxRenderer.js +398 -0
  1043. package/renderers/checkboxRenderer/checkboxRenderer.mjs +391 -0
  1044. package/renderers/checkboxRenderer/index.d.ts +1 -0
  1045. package/renderers/checkboxRenderer/index.js +7 -0
  1046. package/renderers/checkboxRenderer/index.mjs +1 -0
  1047. package/renderers/htmlRenderer/htmlRenderer.d.ts +5 -0
  1048. package/renderers/htmlRenderer/htmlRenderer.js +25 -0
  1049. package/renderers/htmlRenderer/htmlRenderer.mjs +19 -0
  1050. package/renderers/htmlRenderer/index.d.ts +1 -0
  1051. package/renderers/htmlRenderer/index.js +7 -0
  1052. package/renderers/htmlRenderer/index.mjs +1 -0
  1053. package/renderers/index.d.ts +45 -0
  1054. package/renderers/index.js +48 -0
  1055. package/renderers/index.mjs +24 -0
  1056. package/renderers/numericRenderer/index.d.ts +1 -0
  1057. package/renderers/numericRenderer/index.js +7 -0
  1058. package/renderers/numericRenderer/index.mjs +1 -0
  1059. package/renderers/numericRenderer/numericRenderer.d.ts +5 -0
  1060. package/renderers/numericRenderer/numericRenderer.js +57 -0
  1061. package/renderers/numericRenderer/numericRenderer.mjs +50 -0
  1062. package/renderers/passwordRenderer/index.d.ts +1 -0
  1063. package/renderers/passwordRenderer/index.js +7 -0
  1064. package/renderers/passwordRenderer/index.mjs +1 -0
  1065. package/renderers/passwordRenderer/passwordRenderer.d.ts +5 -0
  1066. package/renderers/passwordRenderer/passwordRenderer.js +32 -0
  1067. package/renderers/passwordRenderer/passwordRenderer.mjs +26 -0
  1068. package/renderers/registry.d.ts +18 -0
  1069. package/renderers/registry.js +48 -0
  1070. package/renderers/registry.mjs +38 -0
  1071. package/renderers/textRenderer/index.d.ts +1 -0
  1072. package/renderers/textRenderer/index.js +7 -0
  1073. package/renderers/textRenderer/index.mjs +1 -0
  1074. package/renderers/textRenderer/textRenderer.d.ts +5 -0
  1075. package/renderers/textRenderer/textRenderer.js +48 -0
  1076. package/renderers/textRenderer/textRenderer.mjs +42 -0
  1077. package/renderers/timeRenderer/index.d.ts +1 -0
  1078. package/renderers/timeRenderer/index.js +7 -0
  1079. package/renderers/timeRenderer/index.mjs +1 -0
  1080. package/renderers/timeRenderer/timeRenderer.d.ts +5 -0
  1081. package/renderers/timeRenderer/timeRenderer.js +26 -0
  1082. package/renderers/timeRenderer/timeRenderer.mjs +20 -0
  1083. package/selection/highlight/constants.js +16 -0
  1084. package/selection/highlight/constants.mjs +6 -0
  1085. package/selection/highlight/highlight.js +330 -0
  1086. package/selection/highlight/highlight.mjs +325 -0
  1087. package/selection/highlight/types/activeHeader.js +38 -0
  1088. package/selection/highlight/types/activeHeader.mjs +32 -0
  1089. package/selection/highlight/types/area.js +49 -0
  1090. package/selection/highlight/types/area.mjs +43 -0
  1091. package/selection/highlight/types/cell.js +46 -0
  1092. package/selection/highlight/types/cell.mjs +40 -0
  1093. package/selection/highlight/types/customSelection.js +41 -0
  1094. package/selection/highlight/types/customSelection.mjs +35 -0
  1095. package/selection/highlight/types/fill.js +41 -0
  1096. package/selection/highlight/types/fill.mjs +35 -0
  1097. package/selection/highlight/types/header.js +49 -0
  1098. package/selection/highlight/types/header.mjs +43 -0
  1099. package/selection/highlight/types/index.js +43 -0
  1100. package/selection/highlight/types/index.mjs +39 -0
  1101. package/selection/highlight/visualSelection.js +277 -0
  1102. package/selection/highlight/visualSelection.mjs +272 -0
  1103. package/selection/index.d.ts +5 -0
  1104. package/selection/index.js +30 -0
  1105. package/selection/index.mjs +6 -0
  1106. package/selection/mouseEventHandler.js +135 -0
  1107. package/selection/mouseEventHandler.mjs +129 -0
  1108. package/selection/range.js +173 -0
  1109. package/selection/range.mjs +168 -0
  1110. package/selection/selection.js +802 -0
  1111. package/selection/selection.mjs +796 -0
  1112. package/selection/transformation.js +169 -0
  1113. package/selection/transformation.mjs +163 -0
  1114. package/selection/utils.js +256 -0
  1115. package/selection/utils.mjs +242 -0
  1116. package/settings.d.ts +210 -0
  1117. package/shortcuts/context.d.ts +20 -0
  1118. package/shortcuts/context.js +241 -0
  1119. package/shortcuts/context.mjs +236 -0
  1120. package/shortcuts/index.d.ts +1 -0
  1121. package/shortcuts/index.js +6 -0
  1122. package/shortcuts/index.mjs +1 -0
  1123. package/shortcuts/keyObserver.js +58 -0
  1124. package/shortcuts/keyObserver.mjs +54 -0
  1125. package/shortcuts/manager.d.ts +10 -0
  1126. package/shortcuts/manager.js +165 -0
  1127. package/shortcuts/manager.mjs +159 -0
  1128. package/shortcuts/recorder.js +165 -0
  1129. package/shortcuts/recorder.mjs +161 -0
  1130. package/shortcuts/utils.js +58 -0
  1131. package/shortcuts/utils.mjs +51 -0
  1132. package/tableView.js +1313 -0
  1133. package/tableView.mjs +1307 -0
  1134. package/translations/changesObservable/observable.js +175 -0
  1135. package/translations/changesObservable/observable.mjs +170 -0
  1136. package/translations/changesObservable/observer.js +100 -0
  1137. package/translations/changesObservable/observer.mjs +94 -0
  1138. package/translations/changesObservable/utils.js +50 -0
  1139. package/translations/changesObservable/utils.mjs +46 -0
  1140. package/translations/index.d.ts +1 -0
  1141. package/translations/index.js +29 -0
  1142. package/translations/index.mjs +4 -0
  1143. package/translations/indexMapper.d.ts +48 -0
  1144. package/translations/indexMapper.js +865 -0
  1145. package/translations/indexMapper.mjs +859 -0
  1146. package/translations/mapCollections/aggregatedCollection.js +139 -0
  1147. package/translations/mapCollections/aggregatedCollection.mjs +134 -0
  1148. package/translations/mapCollections/index.js +18 -0
  1149. package/translations/mapCollections/index.mjs +2 -0
  1150. package/translations/mapCollections/mapCollection.js +164 -0
  1151. package/translations/mapCollections/mapCollection.mjs +156 -0
  1152. package/translations/maps/hidingMap.js +63 -0
  1153. package/translations/maps/hidingMap.mjs +58 -0
  1154. package/translations/maps/index.js +59 -0
  1155. package/translations/maps/index.mjs +29 -0
  1156. package/translations/maps/indexMap.d.ts +10 -0
  1157. package/translations/maps/indexMap.js +203 -0
  1158. package/translations/maps/indexMap.mjs +197 -0
  1159. package/translations/maps/indexesSequence.js +82 -0
  1160. package/translations/maps/indexesSequence.mjs +77 -0
  1161. package/translations/maps/linkedPhysicalIndexToValueMap.js +216 -0
  1162. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +211 -0
  1163. package/translations/maps/physicalIndexToValueMap.js +76 -0
  1164. package/translations/maps/physicalIndexToValueMap.mjs +71 -0
  1165. package/translations/maps/trimmingMap.js +63 -0
  1166. package/translations/maps/trimmingMap.mjs +58 -0
  1167. package/translations/maps/utils/actionsOnIndexes.js +42 -0
  1168. package/translations/maps/utils/actionsOnIndexes.mjs +37 -0
  1169. package/translations/maps/utils/index.js +28 -0
  1170. package/translations/maps/utils/index.mjs +22 -0
  1171. package/translations/maps/utils/indexesSequence.js +52 -0
  1172. package/translations/maps/utils/indexesSequence.mjs +47 -0
  1173. package/translations/maps/utils/physicallyIndexed.js +61 -0
  1174. package/translations/maps/utils/physicallyIndexed.mjs +56 -0
  1175. package/utils/dataStructures/linkedList.js +263 -0
  1176. package/utils/dataStructures/linkedList.mjs +258 -0
  1177. package/utils/dataStructures/priorityMap.js +106 -0
  1178. package/utils/dataStructures/priorityMap.mjs +99 -0
  1179. package/utils/dataStructures/queue.js +83 -0
  1180. package/utils/dataStructures/queue.mjs +78 -0
  1181. package/utils/dataStructures/stack.js +83 -0
  1182. package/utils/dataStructures/stack.mjs +78 -0
  1183. package/utils/dataStructures/tree.js +254 -0
  1184. package/utils/dataStructures/tree.mjs +246 -0
  1185. package/utils/dataStructures/uniqueMap.js +144 -0
  1186. package/utils/dataStructures/uniqueMap.mjs +140 -0
  1187. package/utils/dataStructures/uniqueSet.js +78 -0
  1188. package/utils/dataStructures/uniqueSet.mjs +74 -0
  1189. package/utils/ghostTable.js +536 -0
  1190. package/utils/ghostTable.mjs +531 -0
  1191. package/utils/interval.js +134 -0
  1192. package/utils/interval.mjs +129 -0
  1193. package/utils/parseTable.d.ts +5 -0
  1194. package/utils/parseTable.js +305 -0
  1195. package/utils/parseTable.mjs +299 -0
  1196. package/utils/rootInstance.js +48 -0
  1197. package/utils/rootInstance.mjs +38 -0
  1198. package/utils/samplesGenerator.js +210 -0
  1199. package/utils/samplesGenerator.mjs +205 -0
  1200. package/utils/staticRegister.js +92 -0
  1201. package/utils/staticRegister.mjs +86 -0
  1202. package/validators/autocompleteValidator/autocompleteValidator.d.ts +5 -0
  1203. package/validators/autocompleteValidator/autocompleteValidator.js +56 -0
  1204. package/validators/autocompleteValidator/autocompleteValidator.mjs +50 -0
  1205. package/validators/autocompleteValidator/index.d.ts +1 -0
  1206. package/validators/autocompleteValidator/index.js +7 -0
  1207. package/validators/autocompleteValidator/index.mjs +1 -0
  1208. package/validators/base.d.ts +6 -0
  1209. package/validators/dateValidator/dateValidator.d.ts +5 -0
  1210. package/validators/dateValidator/dateValidator.js +77 -0
  1211. package/validators/dateValidator/dateValidator.mjs +69 -0
  1212. package/validators/dateValidator/index.d.ts +1 -0
  1213. package/validators/dateValidator/index.js +8 -0
  1214. package/validators/dateValidator/index.mjs +1 -0
  1215. package/validators/index.d.ts +33 -0
  1216. package/validators/index.js +32 -0
  1217. package/validators/index.mjs +16 -0
  1218. package/validators/numericValidator/index.d.ts +1 -0
  1219. package/validators/numericValidator/index.js +7 -0
  1220. package/validators/numericValidator/index.mjs +1 -0
  1221. package/validators/numericValidator/numericValidator.d.ts +5 -0
  1222. package/validators/numericValidator/numericValidator.js +30 -0
  1223. package/validators/numericValidator/numericValidator.mjs +24 -0
  1224. package/validators/registry.d.ts +18 -0
  1225. package/validators/registry.js +48 -0
  1226. package/validators/registry.mjs +38 -0
  1227. package/validators/timeValidator/index.d.ts +1 -0
  1228. package/validators/timeValidator/index.js +7 -0
  1229. package/validators/timeValidator/index.mjs +1 -0
  1230. package/validators/timeValidator/timeValidator.d.ts +5 -0
  1231. package/validators/timeValidator/timeValidator.js +66 -0
  1232. package/validators/timeValidator/timeValidator.mjs +60 -0
@@ -0,0 +1,1229 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.set-prototype-of.js");
4
+ require("core-js/modules/es.object.get-prototype-of.js");
5
+ require("core-js/modules/es.reflect.construct.js");
6
+ require("core-js/modules/es.reflect.get.js");
7
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
8
+ require("core-js/modules/es.symbol.js");
9
+ require("core-js/modules/es.symbol.description.js");
10
+ require("core-js/modules/es.symbol.iterator.js");
11
+ require("core-js/modules/es.array.slice.js");
12
+ require("core-js/modules/es.function.name.js");
13
+ require("core-js/modules/es.array.from.js");
14
+ require("core-js/modules/es.regexp.exec.js");
15
+ require("core-js/modules/es.object.keys.js");
16
+ require("core-js/modules/es.array.filter.js");
17
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
18
+ exports.__esModule = true;
19
+ exports.PLUGIN_PRIORITY = exports.PLUGIN_KEY = exports.Formulas = void 0;
20
+ require("core-js/modules/es.array.concat.js");
21
+ require("core-js/modules/es.object.to-string.js");
22
+ require("core-js/modules/web.dom-collections.for-each.js");
23
+ require("core-js/modules/es.array.iterator.js");
24
+ require("core-js/modules/es.set.js");
25
+ require("core-js/modules/es.string.iterator.js");
26
+ require("core-js/modules/web.dom-collections.iterator.js");
27
+ require("core-js/modules/es.array.map.js");
28
+ require("core-js/modules/es.array.includes.js");
29
+ require("core-js/modules/es.string.includes.js");
30
+ require("core-js/modules/es.array.reverse.js");
31
+ require("core-js/modules/es.array.sort.js");
32
+ require("core-js/modules/es.weak-map.js");
33
+ var _base = require("../base");
34
+ var _staticRegister = _interopRequireDefault(require("../../utils/staticRegister"));
35
+ var _console = require("../../helpers/console");
36
+ var _number = require("../../helpers/number");
37
+ var _mixed = require("../../helpers/mixed");
38
+ var _register = require("./engine/register");
39
+ var _utils = require("./utils");
40
+ var _settings = require("./engine/settings");
41
+ var _data = require("../../helpers/data");
42
+ var _string = require("../../helpers/string");
43
+ var _pluginHooks = _interopRequireDefault(require("../../pluginHooks"));
44
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
45
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
46
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
47
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
48
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
49
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
50
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
51
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
52
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
53
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
54
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
55
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
56
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
57
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
58
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
59
+ 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); } }
60
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
61
+ function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
62
+ function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
63
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
64
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
65
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
66
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
67
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
68
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
69
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
70
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
71
+ function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
72
+ function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
73
+ function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
74
+ function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } }
75
+ function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
76
+ function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
77
+ function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
78
+ var PLUGIN_KEY = 'formulas';
79
+ exports.PLUGIN_KEY = PLUGIN_KEY;
80
+ var PLUGIN_PRIORITY = 260;
81
+ exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
82
+ var ROW_MOVE_UNDO_REDO_NAME = 'row_move';
83
+ _pluginHooks.default.getSingleton().register('afterNamedExpressionAdded');
84
+ _pluginHooks.default.getSingleton().register('afterNamedExpressionRemoved');
85
+ _pluginHooks.default.getSingleton().register('afterSheetAdded');
86
+ _pluginHooks.default.getSingleton().register('afterSheetRemoved');
87
+ _pluginHooks.default.getSingleton().register('afterSheetRenamed');
88
+ _pluginHooks.default.getSingleton().register('afterFormulasValuesUpdate');
89
+
90
+ // This function will be used for detecting changes coming from the `UndoRedo` plugin. This kind of change won't be
91
+ // handled by whole body of listeners and therefore won't change undo/redo stack inside engine provided by HyperFormula.
92
+ // HyperFormula's `undo` and `redo` methods will do it instead. Please keep in mind that undo/redo stacks inside
93
+ // instances of Handsontable and HyperFormula should be synced (number of actions should be the same).
94
+ var isBlockedSource = function isBlockedSource(source) {
95
+ return source === 'UndoRedo.undo' || source === 'UndoRedo.redo' || source === 'auto';
96
+ };
97
+
98
+ /**
99
+ * This plugin allows you to perform Excel-like calculations in your business applications. It does it by an
100
+ * integration with our other product, [HyperFormula](https://github.com/handsontable/hyperformula/), which is a
101
+ * powerful calculation engine with an extensive number of features.
102
+ *
103
+ * To test out HyperFormula, see [this guide](@/guides/formulas/formula-calculation.md#available-functions).
104
+ *
105
+ * @plugin Formulas
106
+ * @class Formulas
107
+ */
108
+ var _internalOperationPending = /*#__PURE__*/new WeakMap();
109
+ var _hotWasInitializedWithEmptyData = /*#__PURE__*/new WeakMap();
110
+ var _engineListeners = /*#__PURE__*/new WeakMap();
111
+ var Formulas = /*#__PURE__*/function (_BasePlugin) {
112
+ _inherits(Formulas, _BasePlugin);
113
+ var _super = _createSuper(Formulas);
114
+ function Formulas() {
115
+ var _this;
116
+ _classCallCheck(this, Formulas);
117
+ for (var _len = arguments.length, _args = new Array(_len), _key = 0; _key < _len; _key++) {
118
+ _args[_key] = arguments[_key];
119
+ }
120
+ _this = _super.call.apply(_super, [this].concat(_args));
121
+ _classPrivateFieldInitSpec(_assertThisInitialized(_this), _internalOperationPending, {
122
+ writable: true,
123
+ value: false
124
+ });
125
+ _classPrivateFieldInitSpec(_assertThisInitialized(_this), _hotWasInitializedWithEmptyData, {
126
+ writable: true,
127
+ value: false
128
+ });
129
+ _classPrivateFieldInitSpec(_assertThisInitialized(_this), _engineListeners, {
130
+ writable: true,
131
+ value: [['valuesUpdated', function () {
132
+ var _this2;
133
+ return (_this2 = _this).onEngineValuesUpdated.apply(_this2, arguments);
134
+ }], ['namedExpressionAdded', function () {
135
+ var _this3;
136
+ return (_this3 = _this).onEngineNamedExpressionsAdded.apply(_this3, arguments);
137
+ }], ['namedExpressionRemoved', function () {
138
+ var _this4;
139
+ return (_this4 = _this).onEngineNamedExpressionsRemoved.apply(_this4, arguments);
140
+ }], ['sheetAdded', function () {
141
+ var _this5;
142
+ return (_this5 = _this).onEngineSheetAdded.apply(_this5, arguments);
143
+ }], ['sheetRenamed', function () {
144
+ var _this6;
145
+ return (_this6 = _this).onEngineSheetRenamed.apply(_this6, arguments);
146
+ }], ['sheetRemoved', function () {
147
+ var _this7;
148
+ return (_this7 = _this).onEngineSheetRemoved.apply(_this7, arguments);
149
+ }]]
150
+ });
151
+ _defineProperty(_assertThisInitialized(_this), "staticRegister", (0, _staticRegister.default)('formulas'));
152
+ _defineProperty(_assertThisInitialized(_this), "engine", null);
153
+ _defineProperty(_assertThisInitialized(_this), "sheetName", null);
154
+ return _this;
155
+ }
156
+ _createClass(Formulas, [{
157
+ key: "sheetId",
158
+ get:
159
+ /**
160
+ * HyperFormula's sheet id.
161
+ *
162
+ * @type {number|null}
163
+ */
164
+ function get() {
165
+ return this.sheetName === null ? null : this.engine.getSheetId(this.sheetName);
166
+ }
167
+
168
+ /**
169
+ * Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
170
+ * hook and if it returns `true` then the {@link Formulas#enablePlugin} method is called.
171
+ *
172
+ * @returns {boolean}
173
+ */
174
+ }, {
175
+ key: "isEnabled",
176
+ value: function isEnabled() {
177
+ /* eslint-disable no-unneeded-ternary */
178
+ return this.hot.getSettings()[PLUGIN_KEY] ? true : false;
179
+ }
180
+
181
+ /**
182
+ * Enables the plugin functionality for this Handsontable instance.
183
+ */
184
+ }, {
185
+ key: "enablePlugin",
186
+ value: function enablePlugin() {
187
+ var _setupEngine,
188
+ _this8 = this;
189
+ if (this.enabled) {
190
+ return;
191
+ }
192
+ this.engine = (_setupEngine = (0, _register.setupEngine)(this.hot)) !== null && _setupEngine !== void 0 ? _setupEngine : this.engine;
193
+ if (!this.engine) {
194
+ (0, _console.warn)('Missing the required `engine` key in the Formulas settings. Please fill it with either an' + ' engine class or an engine instance.');
195
+ return;
196
+ }
197
+
198
+ // Useful for disabling -> enabling the plugin using `updateSettings` or the API.
199
+ if (this.sheetName !== null && !this.engine.doesSheetExist(this.sheetName)) {
200
+ var newSheetName = this.addSheet(this.sheetName, this.hot.getSourceDataArray());
201
+ if (newSheetName !== false) {
202
+ this.sheetName = newSheetName;
203
+ }
204
+ }
205
+ this.addHook('beforeLoadData', function () {
206
+ return _this8.onBeforeLoadData.apply(_this8, arguments);
207
+ });
208
+ this.addHook('afterLoadData', function () {
209
+ return _this8.onAfterLoadData.apply(_this8, arguments);
210
+ });
211
+
212
+ // The `updateData` hooks utilize the same logic as the `loadData` hooks.
213
+ this.addHook('beforeUpdateData', function () {
214
+ return _this8.onBeforeLoadData.apply(_this8, arguments);
215
+ });
216
+ this.addHook('afterUpdateData', function () {
217
+ return _this8.onAfterLoadData.apply(_this8, arguments);
218
+ });
219
+ this.addHook('modifyData', function () {
220
+ return _this8.onModifyData.apply(_this8, arguments);
221
+ });
222
+ this.addHook('modifySourceData', function () {
223
+ return _this8.onModifySourceData.apply(_this8, arguments);
224
+ });
225
+ this.addHook('beforeValidate', function () {
226
+ return _this8.onBeforeValidate.apply(_this8, arguments);
227
+ });
228
+ this.addHook('afterSetSourceDataAtCell', function () {
229
+ return _this8.onAfterSetSourceDataAtCell.apply(_this8, arguments);
230
+ });
231
+ this.addHook('afterSetDataAtCell', function () {
232
+ return _this8.onAfterSetDataAtCell.apply(_this8, arguments);
233
+ });
234
+ this.addHook('afterSetDataAtRowProp', function () {
235
+ return _this8.onAfterSetDataAtCell.apply(_this8, arguments);
236
+ });
237
+ this.addHook('beforeCreateRow', function () {
238
+ return _this8.onBeforeCreateRow.apply(_this8, arguments);
239
+ });
240
+ this.addHook('beforeCreateCol', function () {
241
+ return _this8.onBeforeCreateCol.apply(_this8, arguments);
242
+ });
243
+ this.addHook('afterCreateRow', function () {
244
+ return _this8.onAfterCreateRow.apply(_this8, arguments);
245
+ });
246
+ this.addHook('afterCreateCol', function () {
247
+ return _this8.onAfterCreateCol.apply(_this8, arguments);
248
+ });
249
+ this.addHook('beforeRemoveRow', function () {
250
+ return _this8.onBeforeRemoveRow.apply(_this8, arguments);
251
+ });
252
+ this.addHook('beforeRemoveCol', function () {
253
+ return _this8.onBeforeRemoveCol.apply(_this8, arguments);
254
+ });
255
+ this.addHook('afterRemoveRow', function () {
256
+ return _this8.onAfterRemoveRow.apply(_this8, arguments);
257
+ });
258
+ this.addHook('afterRemoveCol', function () {
259
+ return _this8.onAfterRemoveCol.apply(_this8, arguments);
260
+ });
261
+
262
+ // Handling undo actions on data just using HyperFormula's UndoRedo mechanism
263
+ this.addHook('beforeUndo', function (action) {
264
+ // TODO: Move action isn't handled by HyperFormula.
265
+ if ((action === null || action === void 0 ? void 0 : action.actionType) === ROW_MOVE_UNDO_REDO_NAME) {
266
+ return;
267
+ }
268
+ _this8.engine.undo();
269
+ });
270
+
271
+ // Handling redo actions on data just using HyperFormula's UndoRedo mechanism
272
+ this.addHook('beforeRedo', function (action) {
273
+ // TODO: Move action isn't handled by HyperFormula.
274
+ if ((action === null || action === void 0 ? void 0 : action.actionType) === ROW_MOVE_UNDO_REDO_NAME) {
275
+ return;
276
+ }
277
+ _this8.engine.redo();
278
+ });
279
+ this.addHook('afterDetachChild', function () {
280
+ return _this8.onAfterDetachChild.apply(_this8, arguments);
281
+ });
282
+ this.addHook('beforeAutofill', function () {
283
+ return _this8.onBeforeAutofill.apply(_this8, arguments);
284
+ });
285
+ _classPrivateFieldGet(this, _engineListeners).forEach(function (_ref) {
286
+ var _ref2 = _slicedToArray(_ref, 2),
287
+ eventName = _ref2[0],
288
+ listener = _ref2[1];
289
+ return _this8.engine.on(eventName, listener);
290
+ });
291
+ _get(_getPrototypeOf(Formulas.prototype), "enablePlugin", this).call(this);
292
+ }
293
+
294
+ /**
295
+ * Disables the plugin functionality for this Handsontable instance.
296
+ */
297
+ }, {
298
+ key: "disablePlugin",
299
+ value: function disablePlugin() {
300
+ var _this9 = this;
301
+ _classPrivateFieldGet(this, _engineListeners).forEach(function (_ref3) {
302
+ var _ref4 = _slicedToArray(_ref3, 2),
303
+ eventName = _ref4[0],
304
+ listener = _ref4[1];
305
+ return _this9.engine.off(eventName, listener);
306
+ });
307
+ (0, _register.unregisterEngine)(this.engine, this.hot);
308
+ this.engine = null;
309
+ _get(_getPrototypeOf(Formulas.prototype), "disablePlugin", this).call(this);
310
+ }
311
+
312
+ /**
313
+ * Triggered on `updateSettings`.
314
+ *
315
+ * @private
316
+ * @param {object} newSettings New set of settings passed to the `updateSettings` method.
317
+ */
318
+ }, {
319
+ key: "updatePlugin",
320
+ value: function updatePlugin(newSettings) {
321
+ this.engine.updateConfig((0, _settings.getEngineSettingsWithOverrides)(this.hot.getSettings()));
322
+ var pluginSettings = this.hot.getSettings()[PLUGIN_KEY];
323
+ if ((0, _mixed.isDefined)(pluginSettings) && (0, _mixed.isDefined)(pluginSettings.sheetName) && pluginSettings.sheetName !== this.sheetName) {
324
+ this.switchSheet(pluginSettings.sheetName);
325
+ }
326
+
327
+ // If no data was passed to the `updateSettings` method and no sheet is connected to the instance -> create a
328
+ // new sheet using the currently used data. Otherwise, it will be handled by the `afterLoadData` call.
329
+ if (!newSettings.data && this.sheetName === null) {
330
+ var sheetName = this.hot.getSettings()[PLUGIN_KEY].sheetName;
331
+ if (sheetName && this.engine.doesSheetExist(sheetName)) {
332
+ this.switchSheet(this.sheetName);
333
+ } else {
334
+ this.sheetName = this.addSheet(sheetName !== null && sheetName !== void 0 ? sheetName : void 0, this.hot.getSourceDataArray());
335
+ }
336
+ }
337
+ _get(_getPrototypeOf(Formulas.prototype), "updatePlugin", this).call(this, newSettings);
338
+ }
339
+
340
+ /**
341
+ * Destroys the plugin instance.
342
+ */
343
+ }, {
344
+ key: "destroy",
345
+ value: function destroy() {
346
+ var _this10 = this;
347
+ _classPrivateFieldGet(this, _engineListeners).forEach(function (_ref5) {
348
+ var _this10$engine;
349
+ var _ref6 = _slicedToArray(_ref5, 2),
350
+ eventName = _ref6[0],
351
+ listener = _ref6[1];
352
+ return (_this10$engine = _this10.engine) === null || _this10$engine === void 0 ? void 0 : _this10$engine.off(eventName, listener);
353
+ });
354
+ _classPrivateFieldSet(this, _engineListeners, null);
355
+ (0, _register.unregisterEngine)(this.engine, this.hot);
356
+ this.engine = null;
357
+ _get(_getPrototypeOf(Formulas.prototype), "destroy", this).call(this);
358
+ }
359
+
360
+ /**
361
+ * Helper function for `toPhysicalRowPosition` and `toPhysicalColumnPosition`.
362
+ *
363
+ * @private
364
+ * @param {number} visualIndex Visual entry index.
365
+ * @param {number} physicalIndex Physical entry index.
366
+ * @param {number} entriesCount Visual entries count.
367
+ * @param {number} sourceEntriesCount Source entries count.
368
+ * @param {boolean} contained `true` if it should return only indexes within boundaries of the table (basically
369
+ * `toPhysical` alias.
370
+ * @returns {*}
371
+ */
372
+ }, {
373
+ key: "getPhysicalIndexPosition",
374
+ value: function getPhysicalIndexPosition(visualIndex, physicalIndex, entriesCount, sourceEntriesCount, contained) {
375
+ if (!contained) {
376
+ if (visualIndex >= entriesCount) {
377
+ return sourceEntriesCount + (visualIndex - entriesCount);
378
+ }
379
+ }
380
+ return physicalIndex;
381
+ }
382
+
383
+ /**
384
+ * Returns the physical row index. The difference between this and Core's `toPhysical` is that it doesn't return
385
+ * `null` on rows with indexes higher than the number of rows.
386
+ *
387
+ * @private
388
+ * @param {number} row Visual row index.
389
+ * @param {boolean} [contained] `true` if it should return only indexes within boundaries of the table (basically
390
+ * `toPhysical` alias.
391
+ * @returns {number} The physical row index.
392
+ */
393
+ }, {
394
+ key: "toPhysicalRowPosition",
395
+ value: function toPhysicalRowPosition(row) {
396
+ var contained = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
397
+ return this.getPhysicalIndexPosition(row, this.hot.toPhysicalRow(row), this.hot.countRows(), this.hot.countSourceRows(), contained);
398
+ }
399
+
400
+ /**
401
+ * Returns the physical column index. The difference between this and Core's `toPhysical` is that it doesn't return
402
+ * `null` on columns with indexes higher than the number of columns.
403
+ *
404
+ * @private
405
+ * @param {number} column Visual column index.
406
+ * @param {boolean} [contained] `true` if it should return only indexes within boundaries of the table (basically
407
+ * `toPhysical` alias.
408
+ * @returns {number} The physical column index.
409
+ */
410
+ }, {
411
+ key: "toPhysicalColumnPosition",
412
+ value: function toPhysicalColumnPosition(column) {
413
+ var contained = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
414
+ return this.getPhysicalIndexPosition(column, this.hot.toPhysicalColumn(column), this.hot.countCols(), this.hot.countSourceCols(), contained);
415
+ }
416
+
417
+ /**
418
+ * Add a sheet to the shared HyperFormula instance.
419
+ *
420
+ * @param {string|null} [sheetName] The new sheet name. If not provided (or a null is passed), will be
421
+ * auto-generated by HyperFormula.
422
+ * @param {Array} [sheetData] Data passed to the shared HyperFormula instance. Has to be declared as an array of
423
+ * arrays - array of objects is not supported in this scenario.
424
+ * @returns {boolean|string} `false` if the data format is unusable or it is impossible to add a new sheet to the
425
+ * engine, the created sheet name otherwise.
426
+ */
427
+ }, {
428
+ key: "addSheet",
429
+ value: function addSheet(sheetName, sheetData) {
430
+ if ((0, _mixed.isDefined)(sheetData) && !(0, _data.isArrayOfArrays)(sheetData)) {
431
+ (0, _console.warn)('The provided data should be an array of arrays.');
432
+ return false;
433
+ }
434
+ if (sheetName !== void 0 && sheetName !== null && this.engine.doesSheetExist(sheetName)) {
435
+ (0, _console.warn)('Sheet with the provided name already exists.');
436
+ return false;
437
+ }
438
+ try {
439
+ var actualSheetName = this.engine.addSheet(sheetName !== null && sheetName !== void 0 ? sheetName : void 0);
440
+ if (sheetData) {
441
+ this.engine.setSheetContent(this.engine.getSheetId(actualSheetName), sheetData);
442
+ }
443
+ return actualSheetName;
444
+ } catch (e) {
445
+ (0, _console.warn)(e.message);
446
+ return false;
447
+ }
448
+ }
449
+
450
+ /**
451
+ * Switch the sheet used as data in the Handsontable instance (it loads the data from the shared HyperFormula
452
+ * instance).
453
+ *
454
+ * @param {string} sheetName Sheet name used in the shared HyperFormula instance.
455
+ */
456
+ }, {
457
+ key: "switchSheet",
458
+ value: function switchSheet(sheetName) {
459
+ if (!this.engine.doesSheetExist(sheetName)) {
460
+ (0, _console.error)("The sheet named `".concat(sheetName, "` does not exist, switch aborted."));
461
+ return;
462
+ }
463
+ this.sheetName = sheetName;
464
+ var serialized = this.engine.getSheetSerialized(this.sheetId);
465
+ if (serialized.length > 0) {
466
+ this.hot.loadData(serialized, "".concat((0, _string.toUpperCaseFirst)(PLUGIN_KEY), ".switchSheet"));
467
+ }
468
+ }
469
+
470
+ /**
471
+ * Get the cell type under specified visual coordinates.
472
+ *
473
+ * @param {number} row Visual row index.
474
+ * @param {number} column Visual column index.
475
+ * @param {number} [sheet] The target sheet id, defaults to the current sheet.
476
+ * @returns {string} Possible values: 'FORMULA' | 'VALUE' | 'ARRAYFORMULA' | 'EMPTY'.
477
+ */
478
+ }, {
479
+ key: "getCellType",
480
+ value: function getCellType(row, column) {
481
+ var sheet = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.sheetId;
482
+ var physicalRow = this.hot.toPhysicalRow(row);
483
+ var physicalColumn = this.hot.toPhysicalColumn(column);
484
+ if (physicalRow !== null && physicalColumn !== null) {
485
+ return this.engine.getCellType({
486
+ sheet: sheet,
487
+ row: physicalRow,
488
+ col: physicalColumn
489
+ });
490
+ } else {
491
+ // Should return `EMPTY` when out of bounds (according to the test cases).
492
+ return 'EMPTY';
493
+ }
494
+ }
495
+
496
+ /**
497
+ * Returns `true` if under specified visual coordinates is formula.
498
+ *
499
+ * @param {number} row Visual row index.
500
+ * @param {number} column Visual column index.
501
+ * @param {number} [sheet] The target sheet id, defaults to the current sheet.
502
+ * @returns {boolean}
503
+ */
504
+ }, {
505
+ key: "isFormulaCellType",
506
+ value: function isFormulaCellType(row, column) {
507
+ var sheet = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.sheetId;
508
+ var physicalRow = this.hot.toPhysicalRow(row);
509
+ var physicalColumn = this.hot.toPhysicalColumn(column);
510
+ if (physicalRow === null || physicalColumn === null) {
511
+ return false;
512
+ }
513
+ return this.engine.doesCellHaveFormula({
514
+ sheet: sheet,
515
+ row: physicalRow,
516
+ col: physicalColumn
517
+ });
518
+ }
519
+
520
+ /**
521
+ * Renders dependent sheets (handsontable instances) based on the changes - list of the
522
+ * recalculated dependent cells.
523
+ *
524
+ * @private
525
+ * @param {object[]} dependentCells The values and location of applied changes within HF engine.
526
+ * @param {boolean} [renderSelf] `true` if it's supposed to render itself, `false` otherwise.
527
+ */
528
+ }, {
529
+ key: "renderDependentSheets",
530
+ value: function renderDependentSheets(dependentCells) {
531
+ var _this11 = this;
532
+ var renderSelf = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
533
+ var affectedSheetIds = new Set();
534
+ dependentCells.forEach(function (change) {
535
+ var _change$address;
536
+ // For the Named expression the address is empty, hence the `sheetId` is undefined.
537
+ var sheetId = change === null || change === void 0 ? void 0 : (_change$address = change.address) === null || _change$address === void 0 ? void 0 : _change$address.sheet;
538
+ if (sheetId !== void 0) {
539
+ if (!affectedSheetIds.has(sheetId)) {
540
+ affectedSheetIds.add(sheetId);
541
+ }
542
+ }
543
+ });
544
+ (0, _register.getRegisteredHotInstances)(this.engine).forEach(function (relatedHot, sheetId) {
545
+ if ((renderSelf || sheetId !== _this11.sheetId) && affectedSheetIds.has(sheetId)) {
546
+ var _relatedHot$view;
547
+ relatedHot.render();
548
+ (_relatedHot$view = relatedHot.view) === null || _relatedHot$view === void 0 ? void 0 : _relatedHot$view.adjustElementsSize();
549
+ }
550
+ });
551
+ }
552
+
553
+ /**
554
+ * Validates dependent cells based on the cells that are modified by the change.
555
+ *
556
+ * @private
557
+ * @param {object[]} dependentCells The values and location of applied changes within HF engine.
558
+ * @param {object[]} [changedCells] The values and location of applied changes by developer (through API or UI).
559
+ */
560
+ }, {
561
+ key: "validateDependentCells",
562
+ value: function validateDependentCells(dependentCells) {
563
+ var _this12 = this;
564
+ var changedCells = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
565
+ var stringifyAddress = function stringifyAddress(change) {
566
+ var _change$address2;
567
+ var _ref7 = (_change$address2 = change === null || change === void 0 ? void 0 : change.address) !== null && _change$address2 !== void 0 ? _change$address2 : {},
568
+ row = _ref7.row,
569
+ col = _ref7.col,
570
+ sheet = _ref7.sheet;
571
+ return (0, _mixed.isDefined)(sheet) ? "".concat(sheet, ":").concat(row, "x").concat(col) : '';
572
+ };
573
+ var changedCellsSet = new Set(changedCells.map(function (change) {
574
+ return stringifyAddress(change);
575
+ }));
576
+ dependentCells.forEach(function (change) {
577
+ var _change$address3, _change$address4;
578
+ var _ref8 = (_change$address3 = change.address) !== null && _change$address3 !== void 0 ? _change$address3 : {},
579
+ row = _ref8.row,
580
+ col = _ref8.col;
581
+ var visualRow = (0, _mixed.isDefined)(row) ? _this12.hot.toVisualRow(row) : null;
582
+ var visualColumn = (0, _mixed.isDefined)(col) ? _this12.hot.toVisualColumn(col) : null;
583
+
584
+ // Don't try to validate cells outside of the visual part of the table.
585
+ if (visualRow === null || visualColumn === null) {
586
+ return;
587
+ }
588
+
589
+ // For the Named expression the address is empty, hence the `sheetId` is undefined.
590
+ var sheetId = change === null || change === void 0 ? void 0 : (_change$address4 = change.address) === null || _change$address4 === void 0 ? void 0 : _change$address4.sheet;
591
+ var addressId = stringifyAddress(change);
592
+
593
+ // Validate the cells that depend on the calculated formulas. Skip that cells
594
+ // where the user directly changes the values - the Core triggers those validators.
595
+ if (sheetId !== void 0 && !changedCellsSet.has(addressId)) {
596
+ var boundHot = (0, _register.getRegisteredHotInstances)(_this12.engine).get(sheetId);
597
+
598
+ // if `sheetId` is not bound to any Handsontable instance, skip the validation process
599
+ if (!boundHot) {
600
+ return;
601
+ }
602
+
603
+ // It will just re-render certain cell when necessary.
604
+ boundHot.validateCell(boundHot.getDataAtCell(visualRow, visualColumn), boundHot.getCellMeta(visualRow, visualColumn), function () {});
605
+ }
606
+ });
607
+ }
608
+
609
+ /**
610
+ * Sync a change from the change-related hooks with the engine.
611
+ *
612
+ * @private
613
+ * @param {number} row Visual row index.
614
+ * @param {number} column Visual column index.
615
+ * @param {Handsontable.CellValue} newValue New value.
616
+ * @returns {Array} Array of changes exported from the engine.
617
+ */
618
+ }, {
619
+ key: "syncChangeWithEngine",
620
+ value: function syncChangeWithEngine(row, column, newValue) {
621
+ var address = {
622
+ row: this.toPhysicalRowPosition(row),
623
+ col: this.toPhysicalColumnPosition(column),
624
+ sheet: this.sheetId
625
+ };
626
+ if (!this.engine.isItPossibleToSetCellContents(address)) {
627
+ (0, _console.warn)("Not possible to set cell data at ".concat(JSON.stringify(address)));
628
+ return;
629
+ }
630
+ return this.engine.setCellContents(address, newValue);
631
+ }
632
+
633
+ /**
634
+ * The hook allows to translate the formula value to calculated value before it goes to the
635
+ * validator function.
636
+ *
637
+ * @private
638
+ * @param {*} value The cell value to validate.
639
+ * @param {number} visualRow The visual row index.
640
+ * @param {number|string} prop The visual column index or property name of the column.
641
+ * @returns {*} Returns value to validate.
642
+ */
643
+ }, {
644
+ key: "onBeforeValidate",
645
+ value: function onBeforeValidate(value, visualRow, prop) {
646
+ var visualColumn = this.hot.propToCol(prop);
647
+ if (this.isFormulaCellType(visualRow, visualColumn)) {
648
+ var address = {
649
+ row: this.hot.toPhysicalRow(visualRow),
650
+ col: this.hot.toPhysicalColumn(visualColumn),
651
+ sheet: this.sheetId
652
+ };
653
+ var cellValue = this.engine.getCellValue(address);
654
+
655
+ // If `cellValue` is an object it is expected to be an error
656
+ return _typeof(cellValue) === 'object' && cellValue !== null ? cellValue.value : cellValue;
657
+ }
658
+ return value;
659
+ }
660
+
661
+ /**
662
+ * `onBeforeAutofill` hook callback.
663
+ *
664
+ * @private
665
+ * @param {Array[]} fillData The data that was used to fill the `targetRange`. If `beforeAutofill` was used
666
+ * and returned `[[]]`, this will be the same object that was returned from `beforeAutofill`.
667
+ * @param {CellRange} sourceRange The range values will be filled from.
668
+ * @param {CellRange} targetRange The range new values will be filled into.
669
+ * @returns {boolean|*}
670
+ */
671
+ }, {
672
+ key: "onBeforeAutofill",
673
+ value: function onBeforeAutofill(fillData, sourceRange, targetRange) {
674
+ var _this13 = this;
675
+ var withSheetId = function withSheetId(range) {
676
+ return _objectSpread(_objectSpread({}, range), {}, {
677
+ sheet: _this13.sheetId
678
+ });
679
+ };
680
+ var engineSourceRange = {
681
+ start: withSheetId(sourceRange.getTopStartCorner()),
682
+ end: withSheetId(sourceRange.getBottomEndCorner())
683
+ };
684
+ var engineTargetRange = {
685
+ start: withSheetId(targetRange.getTopStartCorner()),
686
+ end: withSheetId(targetRange.getBottomEndCorner())
687
+ };
688
+
689
+ // Blocks the autofill operation if HyperFormula says that at least one of
690
+ // the underlying cell's contents cannot be set.
691
+ if (this.engine.isItPossibleToSetCellContents(engineTargetRange) === false) {
692
+ return false;
693
+ }
694
+ return this.engine.getFillRangeData(engineSourceRange, engineTargetRange);
695
+ }
696
+
697
+ /**
698
+ * `beforeLoadData` hook callback.
699
+ *
700
+ * @param {Array} sourceData Array of arrays or array of objects containing data.
701
+ * @param {boolean} initialLoad Flag that determines whether the data has been loaded during the initialization.
702
+ * @param {string} [source] Source of the call.
703
+ * @private
704
+ */
705
+ }, {
706
+ key: "onBeforeLoadData",
707
+ value: function onBeforeLoadData(sourceData, initialLoad) {
708
+ var source = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
709
+ if (source.includes((0, _string.toUpperCaseFirst)(PLUGIN_KEY))) {
710
+ return;
711
+ }
712
+
713
+ // This flag needs to be defined, because not passing data to HOT results in HOT auto-generating a `null`-filled
714
+ // initial dataset.
715
+ _classPrivateFieldSet(this, _hotWasInitializedWithEmptyData, (0, _mixed.isUndefined)(this.hot.getSettings().data));
716
+ }
717
+
718
+ /**
719
+ * `afterLoadData` hook callback.
720
+ *
721
+ * @param {Array} sourceData Array of arrays or array of objects containing data.
722
+ * @param {boolean} initialLoad Flag that determines whether the data has been loaded during the initialization.
723
+ * @param {string} [source] Source of the call.
724
+ * @private
725
+ */
726
+ }, {
727
+ key: "onAfterLoadData",
728
+ value: function onAfterLoadData(sourceData, initialLoad) {
729
+ var source = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
730
+ if (source.includes((0, _string.toUpperCaseFirst)(PLUGIN_KEY))) {
731
+ return;
732
+ }
733
+ this.sheetName = (0, _register.setupSheet)(this.engine, this.hot.getSettings()[PLUGIN_KEY].sheetName);
734
+ if (!_classPrivateFieldGet(this, _hotWasInitializedWithEmptyData)) {
735
+ var sourceDataArray = this.hot.getSourceDataArray();
736
+ if (this.engine.isItPossibleToReplaceSheetContent(this.sheetId, sourceDataArray)) {
737
+ _classPrivateFieldSet(this, _internalOperationPending, true);
738
+ var dependentCells = this.engine.setSheetContent(this.sheetId, this.hot.getSourceDataArray());
739
+ this.renderDependentSheets(dependentCells);
740
+ _classPrivateFieldSet(this, _internalOperationPending, false);
741
+ }
742
+ } else {
743
+ this.switchSheet(this.sheetName);
744
+ }
745
+ }
746
+
747
+ /**
748
+ * `modifyData` hook callback.
749
+ *
750
+ * @private
751
+ * @param {number} row Physical row height.
752
+ * @param {number} column Physical column index.
753
+ * @param {object} valueHolder Object which contains original value which can be modified by overwriting `.value`
754
+ * property.
755
+ * @param {string} ioMode String which indicates for what operation hook is fired (`get` or `set`).
756
+ */
757
+ }, {
758
+ key: "onModifyData",
759
+ value: function onModifyData(row, column, valueHolder, ioMode) {
760
+ if (ioMode !== 'get' || _classPrivateFieldGet(this, _internalOperationPending) || this.sheetName === null || !this.engine.doesSheetExist(this.sheetName)) {
761
+ return;
762
+ }
763
+ var visualRow = this.hot.toVisualRow(row);
764
+
765
+ // `column` is here as visual index because of inconsistencies related to hook execution in `src/dataMap`.
766
+ var isFormulaCellType = this.isFormulaCellType(visualRow, column);
767
+ if (!isFormulaCellType) {
768
+ var cellType = this.getCellType(visualRow, column);
769
+ if (cellType !== 'ARRAY') {
770
+ if ((0, _utils.isEscapedFormulaExpression)(valueHolder.value)) {
771
+ valueHolder.value = (0, _utils.unescapeFormulaExpression)(valueHolder.value);
772
+ }
773
+ return;
774
+ }
775
+ }
776
+
777
+ // `toPhysicalColumn` is here because of inconsistencies related to hook execution in `DataMap`.
778
+ var address = {
779
+ row: row,
780
+ col: this.toPhysicalColumnPosition(column),
781
+ sheet: this.sheetId
782
+ };
783
+ var cellValue = this.engine.getCellValue(address);
784
+
785
+ // If `cellValue` is an object it is expected to be an error
786
+ var value = _typeof(cellValue) === 'object' && cellValue !== null ? cellValue.value : cellValue;
787
+ valueHolder.value = value;
788
+ }
789
+
790
+ /**
791
+ * `modifySourceData` hook callback.
792
+ *
793
+ * @private
794
+ * @param {number} row Physical row index.
795
+ * @param {number|string} columnOrProp Physical column index or prop.
796
+ * @param {object} valueHolder Object which contains original value which can be modified by overwriting `.value`
797
+ * property.
798
+ * @param {string} ioMode String which indicates for what operation hook is fired (`get` or `set`).
799
+ */
800
+ }, {
801
+ key: "onModifySourceData",
802
+ value: function onModifySourceData(row, columnOrProp, valueHolder, ioMode) {
803
+ if (ioMode !== 'get' || _classPrivateFieldGet(this, _internalOperationPending) || this.sheetName === null || !this.engine.doesSheetExist(this.sheetName)) {
804
+ return;
805
+ }
806
+ var visualRow = this.hot.toVisualRow(row);
807
+ var visualColumn = this.hot.propToCol(columnOrProp);
808
+
809
+ // `column` is here as visual index because of inconsistencies related to hook execution in `src/dataMap`.
810
+ var isFormulaCellType = this.isFormulaCellType(visualRow, visualColumn);
811
+ if (!isFormulaCellType) {
812
+ var cellType = this.getCellType(visualRow, visualColumn);
813
+ if (cellType !== 'ARRAY') {
814
+ return;
815
+ }
816
+ }
817
+ var dimensions = this.engine.getSheetDimensions(this.engine.getSheetId(this.sheetName));
818
+
819
+ // Don't actually change the source data if HyperFormula is not
820
+ // initialized yet. This is done to allow the `afterLoadData` hook to
821
+ // load the existing source data with `Handsontable#getSourceDataArray`
822
+ // properly.
823
+ if (dimensions.width === 0 && dimensions.height === 0) {
824
+ return;
825
+ }
826
+ var address = {
827
+ row: row,
828
+ // Workaround for inconsistencies in `src/dataSource.js`
829
+ col: this.toPhysicalColumnPosition(visualColumn),
830
+ sheet: this.sheetId
831
+ };
832
+ valueHolder.value = this.engine.getCellSerialized(address);
833
+ }
834
+
835
+ /**
836
+ * `onAfterSetDataAtCell` hook callback.
837
+ *
838
+ * @private
839
+ * @param {Array[]} changes An array of changes in format [[row, prop, oldValue, value], ...].
840
+ * @param {string} [source] String that identifies source of hook call
841
+ * ([list of all available sources]{@link http://docs.handsontable.com/tutorial-using-callbacks.html#page-source-definition}).
842
+ */
843
+ }, {
844
+ key: "onAfterSetDataAtCell",
845
+ value: function onAfterSetDataAtCell(changes, source) {
846
+ var _this14 = this;
847
+ if (isBlockedSource(source)) {
848
+ return;
849
+ }
850
+ var outOfBoundsChanges = [];
851
+ var changedCells = [];
852
+ var dependentCells = this.engine.batch(function () {
853
+ changes.forEach(function (_ref9) {
854
+ var _ref10 = _slicedToArray(_ref9, 4),
855
+ row = _ref10[0],
856
+ prop = _ref10[1],
857
+ newValue = _ref10[3];
858
+ var column = _this14.hot.propToCol(prop);
859
+ var physicalRow = _this14.hot.toPhysicalRow(row);
860
+ var physicalColumn = _this14.hot.toPhysicalColumn(column);
861
+ var address = {
862
+ row: physicalRow,
863
+ col: physicalColumn,
864
+ sheet: _this14.sheetId
865
+ };
866
+ if (physicalRow !== null && physicalColumn !== null) {
867
+ _this14.syncChangeWithEngine(row, column, newValue);
868
+ } else {
869
+ outOfBoundsChanges.push([row, column, newValue]);
870
+ }
871
+ changedCells.push({
872
+ address: address
873
+ });
874
+ });
875
+ });
876
+ if (outOfBoundsChanges.length) {
877
+ // Workaround for rows/columns being created two times (by HOT and the engine).
878
+ // (unfortunately, this requires an extra re-render)
879
+ this.hot.addHookOnce('afterChange', function () {
880
+ var outOfBoundsDependentCells = _this14.engine.batch(function () {
881
+ outOfBoundsChanges.forEach(function (_ref11) {
882
+ var _ref12 = _slicedToArray(_ref11, 3),
883
+ row = _ref12[0],
884
+ column = _ref12[1],
885
+ newValue = _ref12[2];
886
+ _this14.syncChangeWithEngine(row, column, newValue);
887
+ });
888
+ });
889
+ _this14.renderDependentSheets(outOfBoundsDependentCells, true);
890
+ });
891
+ }
892
+ this.renderDependentSheets(dependentCells);
893
+ this.validateDependentCells(dependentCells, changedCells);
894
+ }
895
+
896
+ /**
897
+ * `onAfterSetSourceDataAtCell` hook callback.
898
+ *
899
+ * @private
900
+ * @param {Array[]} changes An array of changes in format [[row, column, oldValue, value], ...].
901
+ * @param {string} [source] String that identifies source of hook call
902
+ * ([list of all available sources]{@link http://docs.handsontable.com/tutorial-using-callbacks.html#page-source-definition}).
903
+ */
904
+ }, {
905
+ key: "onAfterSetSourceDataAtCell",
906
+ value: function onAfterSetSourceDataAtCell(changes, source) {
907
+ var _this15 = this;
908
+ if (isBlockedSource(source)) {
909
+ return;
910
+ }
911
+ var dependentCells = [];
912
+ var changedCells = [];
913
+ changes.forEach(function (_ref13) {
914
+ var _ref14 = _slicedToArray(_ref13, 4),
915
+ row = _ref14[0],
916
+ prop = _ref14[1],
917
+ newValue = _ref14[3];
918
+ var column = _this15.hot.propToCol(prop);
919
+ if (!(0, _number.isNumeric)(column)) {
920
+ return;
921
+ }
922
+ var address = {
923
+ row: row,
924
+ col: _this15.toPhysicalColumnPosition(column),
925
+ sheet: _this15.sheetId
926
+ };
927
+ if (!_this15.engine.isItPossibleToSetCellContents(address)) {
928
+ (0, _console.warn)("Not possible to set source cell data at ".concat(JSON.stringify(address)));
929
+ return;
930
+ }
931
+ changedCells.push({
932
+ address: address
933
+ });
934
+ dependentCells.push.apply(dependentCells, _toConsumableArray(_this15.engine.setCellContents(address, newValue)));
935
+ });
936
+ this.renderDependentSheets(dependentCells);
937
+ this.validateDependentCells(dependentCells, changedCells);
938
+ }
939
+
940
+ /**
941
+ * `beforeCreateRow` hook callback.
942
+ *
943
+ * @private
944
+ * @param {number} row Represents the visual index of first newly created row in the data source array.
945
+ * @param {number} amount Number of newly created rows in the data source array.
946
+ * @returns {*|boolean} If false is returned the action is canceled.
947
+ */
948
+ }, {
949
+ key: "onBeforeCreateRow",
950
+ value: function onBeforeCreateRow(row, amount) {
951
+ if (this.sheetId === null || !this.engine.doesSheetExist(this.sheetName) || !this.engine.isItPossibleToAddRows(this.sheetId, [this.toPhysicalRowPosition(row), amount])) {
952
+ return false;
953
+ }
954
+ }
955
+
956
+ /**
957
+ * `beforeCreateCol` hook callback.
958
+ *
959
+ * @private
960
+ * @param {number} col Represents the visual index of first newly created column in the data source.
961
+ * @param {number} amount Number of newly created columns in the data source.
962
+ * @returns {*|boolean} If false is returned the action is canceled.
963
+ */
964
+ }, {
965
+ key: "onBeforeCreateCol",
966
+ value: function onBeforeCreateCol(col, amount) {
967
+ if (this.sheetId === null || !this.engine.doesSheetExist(this.sheetName) || !this.engine.isItPossibleToAddColumns(this.sheetId, [this.toPhysicalColumnPosition(col), amount])) {
968
+ return false;
969
+ }
970
+ }
971
+
972
+ /**
973
+ * `beforeRemoveRow` hook callback.
974
+ *
975
+ * @private
976
+ * @param {number} row Visual index of starter row.
977
+ * @param {number} amount Amount of rows to be removed.
978
+ * @param {number[]} physicalRows An array of physical rows removed from the data source.
979
+ * @returns {*|boolean} If false is returned the action is canceled.
980
+ */
981
+ }, {
982
+ key: "onBeforeRemoveRow",
983
+ value: function onBeforeRemoveRow(row, amount, physicalRows) {
984
+ var _this16 = this;
985
+ var possible = physicalRows.every(function (physicalRow) {
986
+ return _this16.engine.isItPossibleToRemoveRows(_this16.sheetId, [physicalRow, 1]);
987
+ });
988
+ return possible === false ? false : void 0;
989
+ }
990
+
991
+ /**
992
+ * `beforeRemoveCol` hook callback.
993
+ *
994
+ * @private
995
+ * @param {number} col Visual index of starter column.
996
+ * @param {number} amount Amount of columns to be removed.
997
+ * @param {number[]} physicalColumns An array of physical columns removed from the data source.
998
+ * @returns {*|boolean} If false is returned the action is canceled.
999
+ */
1000
+ }, {
1001
+ key: "onBeforeRemoveCol",
1002
+ value: function onBeforeRemoveCol(col, amount, physicalColumns) {
1003
+ var _this17 = this;
1004
+ var possible = physicalColumns.every(function (physicalColumn) {
1005
+ return _this17.engine.isItPossibleToRemoveColumns(_this17.sheetId, [physicalColumn, 1]);
1006
+ });
1007
+ return possible === false ? false : void 0;
1008
+ }
1009
+
1010
+ /**
1011
+ * `afterCreateRow` hook callback.
1012
+ *
1013
+ * @private
1014
+ * @param {number} row Represents the visual index of first newly created row in the data source array.
1015
+ * @param {number} amount Number of newly created rows in the data source array.
1016
+ * @param {string} [source] String that identifies source of hook call
1017
+ * ([list of all available sources]{@link http://docs.handsontable.com/tutorial-using-callbacks.html#page-source-definition}).
1018
+ */
1019
+ }, {
1020
+ key: "onAfterCreateRow",
1021
+ value: function onAfterCreateRow(row, amount, source) {
1022
+ if (isBlockedSource(source)) {
1023
+ return;
1024
+ }
1025
+ var changes = this.engine.addRows(this.sheetId, [this.toPhysicalRowPosition(row), amount]);
1026
+ this.renderDependentSheets(changes);
1027
+ }
1028
+
1029
+ /**
1030
+ * `afterCreateCol` hook callback.
1031
+ *
1032
+ * @private
1033
+ * @param {number} col Represents the visual index of first newly created column in the data source.
1034
+ * @param {number} amount Number of newly created columns in the data source.
1035
+ * @param {string} [source] String that identifies source of hook call
1036
+ * ([list of all available sources]{@link http://docs.handsontable.com/tutorial-using-callbacks.html#page-source-definition}).
1037
+ */
1038
+ }, {
1039
+ key: "onAfterCreateCol",
1040
+ value: function onAfterCreateCol(col, amount, source) {
1041
+ if (isBlockedSource(source)) {
1042
+ return;
1043
+ }
1044
+ var changes = this.engine.addColumns(this.sheetId, [this.toPhysicalColumnPosition(col), amount]);
1045
+ this.renderDependentSheets(changes);
1046
+ }
1047
+
1048
+ /**
1049
+ * `afterRemoveRow` hook callback.
1050
+ *
1051
+ * @private
1052
+ * @param {number} row Visual index of starter row.
1053
+ * @param {number} amount An amount of removed rows.
1054
+ * @param {number[]} physicalRows An array of physical rows removed from the data source.
1055
+ * @param {string} [source] String that identifies source of hook call
1056
+ * ([list of all available sources]{@link http://docs.handsontable.com/tutorial-using-callbacks.html#page-source-definition}).
1057
+ */
1058
+ }, {
1059
+ key: "onAfterRemoveRow",
1060
+ value: function onAfterRemoveRow(row, amount, physicalRows, source) {
1061
+ var _this18 = this;
1062
+ if (isBlockedSource(source)) {
1063
+ return;
1064
+ }
1065
+ var descendingPhysicalRows = physicalRows.sort().reverse();
1066
+ var changes = this.engine.batch(function () {
1067
+ descendingPhysicalRows.forEach(function (physicalRow) {
1068
+ _this18.engine.removeRows(_this18.sheetId, [physicalRow, 1]);
1069
+ });
1070
+ });
1071
+ this.renderDependentSheets(changes);
1072
+ }
1073
+
1074
+ /**
1075
+ * `afterRemoveCol` hook callback.
1076
+ *
1077
+ * @private
1078
+ * @param {number} col Visual index of starter column.
1079
+ * @param {number} amount An amount of removed columns.
1080
+ * @param {number[]} physicalColumns An array of physical columns removed from the data source.
1081
+ * @param {string} [source] String that identifies source of hook call
1082
+ * ([list of all available sources]{@link http://docs.handsontable.com/tutorial-using-callbacks.html#page-source-definition}).
1083
+ */
1084
+ }, {
1085
+ key: "onAfterRemoveCol",
1086
+ value: function onAfterRemoveCol(col, amount, physicalColumns, source) {
1087
+ var _this19 = this;
1088
+ if (isBlockedSource(source)) {
1089
+ return;
1090
+ }
1091
+ var descendingPhysicalColumns = physicalColumns.sort().reverse();
1092
+ var changes = this.engine.batch(function () {
1093
+ descendingPhysicalColumns.forEach(function (physicalColumn) {
1094
+ _this19.engine.removeColumns(_this19.sheetId, [physicalColumn, 1]);
1095
+ });
1096
+ });
1097
+ this.renderDependentSheets(changes);
1098
+ }
1099
+
1100
+ /**
1101
+ * `afterDetachChild` hook callback.
1102
+ * Used to sync the data of the rows detached in the Nested Rows plugin with the engine's dataset.
1103
+ *
1104
+ * @private
1105
+ * @param {object} parent An object representing the parent from which the element was detached.
1106
+ * @param {object} element The detached element.
1107
+ * @param {number} finalElementRowIndex The final row index of the detached element.
1108
+ */
1109
+ }, {
1110
+ key: "onAfterDetachChild",
1111
+ value: function onAfterDetachChild(parent, element, finalElementRowIndex) {
1112
+ var _element$__children,
1113
+ _this20 = this;
1114
+ _classPrivateFieldSet(this, _internalOperationPending, true);
1115
+ var rowsData = this.hot.getSourceDataArray(finalElementRowIndex, 0, finalElementRowIndex + (((_element$__children = element.__children) === null || _element$__children === void 0 ? void 0 : _element$__children.length) || 0), this.hot.countSourceCols());
1116
+ _classPrivateFieldSet(this, _internalOperationPending, false);
1117
+ rowsData.forEach(function (row, relativeRowIndex) {
1118
+ row.forEach(function (value, colIndex) {
1119
+ _this20.engine.setCellContents({
1120
+ col: colIndex,
1121
+ row: finalElementRowIndex + relativeRowIndex,
1122
+ sheet: _this20.sheetId
1123
+ }, [[value]]);
1124
+ });
1125
+ });
1126
+ }
1127
+
1128
+ /**
1129
+ * Called when a value is updated in the engine.
1130
+ *
1131
+ * @private
1132
+ * @fires Hooks#afterFormulasValuesUpdate
1133
+ * @param {Array} changes The values and location of applied changes.
1134
+ */
1135
+ }, {
1136
+ key: "onEngineValuesUpdated",
1137
+ value: function onEngineValuesUpdated(changes) {
1138
+ this.hot.runHooks('afterFormulasValuesUpdate', changes);
1139
+ }
1140
+
1141
+ /**
1142
+ * Called when a named expression is added to the engine instance.
1143
+ *
1144
+ * @private
1145
+ * @fires Hooks#afterNamedExpressionAdded
1146
+ * @param {string} namedExpressionName The name of the added expression.
1147
+ * @param {Array} changes The values and location of applied changes.
1148
+ */
1149
+ }, {
1150
+ key: "onEngineNamedExpressionsAdded",
1151
+ value: function onEngineNamedExpressionsAdded(namedExpressionName, changes) {
1152
+ this.hot.runHooks('afterNamedExpressionAdded', namedExpressionName, changes);
1153
+ }
1154
+
1155
+ /**
1156
+ * Called when a named expression is removed from the engine instance.
1157
+ *
1158
+ * @private
1159
+ * @fires Hooks#afterNamedExpressionRemoved
1160
+ * @param {string} namedExpressionName The name of the removed expression.
1161
+ * @param {Array} changes The values and location of applied changes.
1162
+ */
1163
+ }, {
1164
+ key: "onEngineNamedExpressionsRemoved",
1165
+ value: function onEngineNamedExpressionsRemoved(namedExpressionName, changes) {
1166
+ this.hot.runHooks('afterNamedExpressionRemoved', namedExpressionName, changes);
1167
+ }
1168
+
1169
+ /**
1170
+ * Called when a new sheet is added to the engine instance.
1171
+ *
1172
+ * @private
1173
+ * @fires Hooks#afterSheetAdded
1174
+ * @param {string} addedSheetDisplayName The name of the added sheet.
1175
+ */
1176
+ }, {
1177
+ key: "onEngineSheetAdded",
1178
+ value: function onEngineSheetAdded(addedSheetDisplayName) {
1179
+ this.hot.runHooks('afterSheetAdded', addedSheetDisplayName);
1180
+ }
1181
+
1182
+ /**
1183
+ * Called when a sheet in the engine instance is renamed.
1184
+ *
1185
+ * @private
1186
+ * @fires Hooks#afterSheetRenamed
1187
+ * @param {string} oldDisplayName The old name of the sheet.
1188
+ * @param {string} newDisplayName The new name of the sheet.
1189
+ */
1190
+ }, {
1191
+ key: "onEngineSheetRenamed",
1192
+ value: function onEngineSheetRenamed(oldDisplayName, newDisplayName) {
1193
+ this.hot.runHooks('afterSheetRenamed', oldDisplayName, newDisplayName);
1194
+ }
1195
+
1196
+ /**
1197
+ * Called when a sheet is removed from the engine instance.
1198
+ *
1199
+ * @private
1200
+ * @fires Hooks#afterSheetRemoved
1201
+ * @param {string} removedSheetDisplayName The removed sheet name.
1202
+ * @param {Array} changes The values and location of applied changes.
1203
+ */
1204
+ }, {
1205
+ key: "onEngineSheetRemoved",
1206
+ value: function onEngineSheetRemoved(removedSheetDisplayName, changes) {
1207
+ this.hot.runHooks('afterSheetRemoved', removedSheetDisplayName, changes);
1208
+ }
1209
+ }], [{
1210
+ key: "PLUGIN_KEY",
1211
+ get: function get() {
1212
+ return PLUGIN_KEY;
1213
+ }
1214
+ }, {
1215
+ key: "PLUGIN_PRIORITY",
1216
+ get: function get() {
1217
+ return PLUGIN_PRIORITY;
1218
+ }
1219
+
1220
+ /**
1221
+ * Flag used to bypass hooks in internal operations.
1222
+ *
1223
+ * @private
1224
+ * @type {boolean}
1225
+ */
1226
+ }]);
1227
+ return Formulas;
1228
+ }(_base.BasePlugin);
1229
+ exports.Formulas = Formulas;