handsontable 14.6.1 → 15.0.0-next-fdd4480-20241205

Sign up to get free protection for your applications and to get access to all the features.
Files changed (392) hide show
  1. package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.js +23 -0
  2. package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.mjs +23 -0
  3. package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.js +23 -0
  4. package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.mjs +23 -0
  5. package/3rdparty/walkontable/src/calculator/index.js +1 -2
  6. package/3rdparty/walkontable/src/calculator/index.mjs +2 -2
  7. package/3rdparty/walkontable/src/calculator/viewportBase.js +2 -0
  8. package/3rdparty/walkontable/src/calculator/viewportBase.mjs +2 -0
  9. package/3rdparty/walkontable/src/calculator/viewportRows.js +3 -3
  10. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +3 -3
  11. package/3rdparty/walkontable/src/core/_base.js +29 -23
  12. package/3rdparty/walkontable/src/core/_base.mjs +29 -23
  13. package/3rdparty/walkontable/src/core/clone.js +1 -0
  14. package/3rdparty/walkontable/src/core/clone.mjs +1 -0
  15. package/3rdparty/walkontable/src/core/core.js +2 -0
  16. package/3rdparty/walkontable/src/core/core.mjs +2 -0
  17. package/3rdparty/walkontable/src/facade/core.js +12 -6
  18. package/3rdparty/walkontable/src/facade/core.mjs +12 -6
  19. package/3rdparty/walkontable/src/index.js +0 -1
  20. package/3rdparty/walkontable/src/index.mjs +2 -2
  21. package/3rdparty/walkontable/src/overlay/_base.js +8 -1
  22. package/3rdparty/walkontable/src/overlay/_base.mjs +8 -1
  23. package/3rdparty/walkontable/src/overlay/bottom.js +5 -6
  24. package/3rdparty/walkontable/src/overlay/bottom.mjs +5 -6
  25. package/3rdparty/walkontable/src/overlay/index.js +2 -0
  26. package/3rdparty/walkontable/src/overlay/inlineStart.js +8 -7
  27. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +9 -8
  28. package/3rdparty/walkontable/src/overlay/top.js +9 -8
  29. package/3rdparty/walkontable/src/overlay/top.mjs +10 -9
  30. package/3rdparty/walkontable/src/overlays.js +10 -26
  31. package/3rdparty/walkontable/src/overlays.mjs +10 -26
  32. package/3rdparty/walkontable/src/renderer/colGroup.js +1 -1
  33. package/3rdparty/walkontable/src/renderer/colGroup.mjs +1 -1
  34. package/3rdparty/walkontable/src/renderer/index.js +4 -2
  35. package/3rdparty/walkontable/src/renderer/index.mjs +4 -2
  36. package/3rdparty/walkontable/src/renderer/table.js +13 -4
  37. package/3rdparty/walkontable/src/renderer/table.mjs +13 -4
  38. package/3rdparty/walkontable/src/scroll.js +46 -37
  39. package/3rdparty/walkontable/src/scroll.mjs +46 -37
  40. package/3rdparty/walkontable/src/selection/border/border.js +52 -58
  41. package/3rdparty/walkontable/src/selection/border/border.mjs +53 -59
  42. package/3rdparty/walkontable/src/selection/border/utils.js +26 -0
  43. package/3rdparty/walkontable/src/selection/border/utils.mjs +22 -0
  44. package/3rdparty/walkontable/src/selection/index.js +6 -4
  45. package/3rdparty/walkontable/src/selection/index.mjs +1 -1
  46. package/3rdparty/walkontable/src/selection/manager.js +3 -0
  47. package/3rdparty/walkontable/src/selection/manager.mjs +3 -0
  48. package/3rdparty/walkontable/src/selection/scanner.js +46 -11
  49. package/3rdparty/walkontable/src/selection/scanner.mjs +46 -11
  50. package/3rdparty/walkontable/src/settings.js +8 -9
  51. package/3rdparty/walkontable/src/settings.mjs +8 -9
  52. package/3rdparty/walkontable/src/table/master.js +1 -1
  53. package/3rdparty/walkontable/src/table/master.mjs +2 -2
  54. package/3rdparty/walkontable/src/table.js +25 -36
  55. package/3rdparty/walkontable/src/table.mjs +25 -36
  56. package/3rdparty/walkontable/src/types.js +1 -0
  57. package/3rdparty/walkontable/src/types.mjs +1 -0
  58. package/3rdparty/walkontable/src/utils/column.js +1 -43
  59. package/3rdparty/walkontable/src/utils/column.mjs +1 -43
  60. package/3rdparty/walkontable/src/utils/stylesHandler.js +295 -0
  61. package/3rdparty/walkontable/src/utils/stylesHandler.mjs +291 -0
  62. package/3rdparty/walkontable/src/viewport.js +94 -91
  63. package/3rdparty/walkontable/src/viewport.mjs +95 -92
  64. package/CHANGELOG.md +36 -0
  65. package/README.md +1 -1
  66. package/base.js +4 -4
  67. package/base.mjs +3 -3
  68. package/core/focusCatcher/focusDetector.js +1 -0
  69. package/core/focusCatcher/focusDetector.mjs +1 -0
  70. package/core/hooks/bucket.js +184 -0
  71. package/core/hooks/bucket.mjs +180 -0
  72. package/{pluginHooks.mjs → core/hooks/constants.js} +38 -486
  73. package/{pluginHooks.js → core/hooks/constants.mjs} +34 -489
  74. package/{pluginHooks.d.ts → core/hooks/index.d.ts} +22 -25
  75. package/core/hooks/index.js +385 -0
  76. package/core/hooks/index.mjs +381 -0
  77. package/core/index.js +2 -0
  78. package/core.d.ts +5 -3
  79. package/core.js +77 -35
  80. package/core.mjs +69 -27
  81. package/dataMap/dataMap.js +3 -0
  82. package/dataMap/dataMap.mjs +3 -0
  83. package/dataMap/dataSource.js +2 -0
  84. package/dataMap/dataSource.mjs +2 -0
  85. package/dataMap/metaManager/index.js +2 -0
  86. package/dataMap/metaManager/index.mjs +2 -0
  87. package/dataMap/metaManager/metaSchema.js +91 -5
  88. package/dataMap/metaManager/metaSchema.mjs +91 -5
  89. package/dataMap/metaManager/mods/dynamicCellMeta.js +2 -3
  90. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +1 -1
  91. package/dataMap/metaManager/mods/extendMetaProperties.js +2 -0
  92. package/dataMap/metaManager/mods/extendMetaProperties.mjs +2 -0
  93. package/dist/handsontable.css +84 -72
  94. package/dist/handsontable.full.css +317 -304
  95. package/dist/handsontable.full.js +14826 -7294
  96. package/dist/handsontable.full.min.css +15 -10
  97. package/dist/handsontable.full.min.js +262 -69
  98. package/dist/handsontable.js +7826 -5552
  99. package/dist/handsontable.min.css +10 -6
  100. package/dist/handsontable.min.js +33 -33
  101. package/dist/languages/all.js +1 -1
  102. package/dist/languages/ar-AR.js +1 -1
  103. package/dist/languages/cs-CZ.js +1 -1
  104. package/dist/languages/de-CH.js +1 -1
  105. package/dist/languages/de-DE.js +1 -1
  106. package/dist/languages/en-US.js +1 -1
  107. package/dist/languages/es-MX.js +1 -1
  108. package/dist/languages/fr-FR.js +1 -1
  109. package/dist/languages/hr-HR.js +1 -1
  110. package/dist/languages/it-IT.js +1 -1
  111. package/dist/languages/ja-JP.js +1 -1
  112. package/dist/languages/ko-KR.js +1 -1
  113. package/dist/languages/lv-LV.js +1 -1
  114. package/dist/languages/nb-NO.js +1 -1
  115. package/dist/languages/nl-NL.js +1 -1
  116. package/dist/languages/pl-PL.js +1 -1
  117. package/dist/languages/pt-BR.js +1 -1
  118. package/dist/languages/ru-RU.js +1 -1
  119. package/dist/languages/sr-SP.js +1 -1
  120. package/dist/languages/zh-CN.js +1 -1
  121. package/dist/languages/zh-TW.js +1 -1
  122. package/editorManager.js +2 -2
  123. package/editorManager.mjs +2 -2
  124. package/editors/autocompleteEditor/autocompleteEditor.js +34 -16
  125. package/editors/autocompleteEditor/autocompleteEditor.mjs +34 -16
  126. package/editors/baseEditor/baseEditor.js +25 -18
  127. package/editors/baseEditor/baseEditor.mjs +26 -19
  128. package/editors/dateEditor/dateEditor.js +9 -0
  129. package/editors/dateEditor/dateEditor.mjs +10 -1
  130. package/editors/dropdownEditor/dropdownEditor.js +4 -3
  131. package/editors/dropdownEditor/dropdownEditor.mjs +3 -1
  132. package/editors/handsontableEditor/handsontableEditor.js +36 -2
  133. package/editors/handsontableEditor/handsontableEditor.mjs +36 -2
  134. package/editors/passwordEditor/passwordEditor.js +18 -0
  135. package/editors/passwordEditor/passwordEditor.mjs +18 -0
  136. package/editors/registry.js +2 -2
  137. package/editors/registry.mjs +1 -1
  138. package/editors/selectEditor/selectEditor.js +20 -9
  139. package/editors/selectEditor/selectEditor.mjs +20 -9
  140. package/editors/textEditor/textEditor.js +5 -12
  141. package/editors/textEditor/textEditor.mjs +6 -13
  142. package/focusManager.js +5 -7
  143. package/focusManager.mjs +5 -7
  144. package/helpers/array.js +2 -0
  145. package/helpers/array.mjs +2 -0
  146. package/helpers/data.js +3 -0
  147. package/helpers/data.mjs +3 -0
  148. package/helpers/dom/element.js +39 -18
  149. package/helpers/dom/element.mjs +38 -17
  150. package/helpers/mixed.js +3 -3
  151. package/helpers/mixed.mjs +3 -3
  152. package/helpers/moves.js +3 -0
  153. package/helpers/moves.mjs +3 -0
  154. package/helpers/number.js +1 -0
  155. package/helpers/number.mjs +1 -0
  156. package/helpers/object.js +2 -0
  157. package/helpers/object.mjs +2 -0
  158. package/helpers/themes.js +17 -0
  159. package/helpers/themes.mjs +13 -0
  160. package/i18n/index.js +2 -0
  161. package/i18n/languages/index.d.ts +8 -0
  162. package/i18n/languages/ja-JP.d.ts +1 -1
  163. package/i18n/phraseFormatters/substituteVariables.js +1 -0
  164. package/i18n/phraseFormatters/substituteVariables.mjs +1 -0
  165. package/index.d.ts +9 -1
  166. package/languages/all.js +1 -1
  167. package/languages/ar-AR.js +1 -1
  168. package/languages/cs-CZ.js +1 -1
  169. package/languages/de-CH.js +1 -1
  170. package/languages/de-DE.js +1 -1
  171. package/languages/en-US.js +1 -1
  172. package/languages/es-MX.js +1 -1
  173. package/languages/fr-FR.js +1 -1
  174. package/languages/hr-HR.js +1 -1
  175. package/languages/index.js +1 -1
  176. package/languages/it-IT.js +1 -1
  177. package/languages/ja-JP.js +1 -1
  178. package/languages/ko-KR.js +1 -1
  179. package/languages/lv-LV.js +1 -1
  180. package/languages/nb-NO.js +1 -1
  181. package/languages/nl-NL.js +1 -1
  182. package/languages/pl-PL.js +1 -1
  183. package/languages/pt-BR.js +1 -1
  184. package/languages/ru-RU.js +1 -1
  185. package/languages/sr-SP.js +1 -1
  186. package/languages/zh-CN.js +1 -1
  187. package/languages/zh-TW.js +1 -1
  188. package/package.json +22 -7
  189. package/plugins/autoColumnSize/autoColumnSize.js +22 -27
  190. package/plugins/autoColumnSize/autoColumnSize.mjs +22 -27
  191. package/plugins/autoRowSize/autoRowSize.js +20 -22
  192. package/plugins/autoRowSize/autoRowSize.mjs +21 -23
  193. package/plugins/autofill/autofill.js +4 -5
  194. package/plugins/autofill/autofill.mjs +1 -1
  195. package/plugins/base/base.d.ts +1 -1
  196. package/plugins/base/base.js +41 -0
  197. package/plugins/base/base.mjs +42 -1
  198. package/plugins/base/index.js +2 -1
  199. package/plugins/base/index.mjs +1 -1
  200. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +2 -5
  201. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +2 -5
  202. package/plugins/columnSorting/columnSorting.js +5 -4
  203. package/plugins/columnSorting/columnSorting.mjs +3 -1
  204. package/plugins/columnSorting/columnStatesManager.js +1 -0
  205. package/plugins/columnSorting/columnStatesManager.mjs +1 -0
  206. package/plugins/columnSorting/utils.js +3 -0
  207. package/plugins/columnSorting/utils.mjs +3 -0
  208. package/plugins/columnSummary/endpoints.js +3 -0
  209. package/plugins/columnSummary/endpoints.mjs +3 -0
  210. package/plugins/comments/commentEditor.js +9 -0
  211. package/plugins/comments/commentEditor.mjs +9 -0
  212. package/plugins/comments/comments.js +24 -18
  213. package/plugins/comments/comments.mjs +26 -20
  214. package/plugins/comments/editorResizeObserver.js +2 -0
  215. package/plugins/comments/editorResizeObserver.mjs +2 -0
  216. package/plugins/contextMenu/contextMenu.d.ts +2 -1
  217. package/plugins/contextMenu/contextMenu.js +6 -7
  218. package/plugins/contextMenu/contextMenu.mjs +1 -1
  219. package/plugins/contextMenu/menu/index.js +2 -0
  220. package/plugins/contextMenu/menu/menu.js +10 -5
  221. package/plugins/contextMenu/menu/menu.mjs +11 -6
  222. package/plugins/contextMenu/menu/positioner.js +4 -2
  223. package/plugins/contextMenu/menu/positioner.mjs +4 -2
  224. package/plugins/contextMenu/menu/shortcuts.js +3 -1
  225. package/plugins/contextMenu/menu/shortcuts.mjs +3 -1
  226. package/plugins/contextMenu/predefinedItems/alignment.js +7 -84
  227. package/plugins/contextMenu/predefinedItems/alignment.mjs +8 -85
  228. package/plugins/contextMenu/utils.js +0 -10
  229. package/plugins/contextMenu/utils.mjs +0 -9
  230. package/plugins/copyPaste/copyPaste.d.ts +1 -0
  231. package/plugins/copyPaste/copyPaste.js +32 -23
  232. package/plugins/copyPaste/copyPaste.mjs +24 -15
  233. package/plugins/customBorders/utils.js +2 -0
  234. package/plugins/customBorders/utils.mjs +2 -0
  235. package/plugins/dropdownMenu/dropdownMenu.d.ts +2 -1
  236. package/plugins/dropdownMenu/dropdownMenu.js +6 -7
  237. package/plugins/dropdownMenu/dropdownMenu.mjs +1 -1
  238. package/plugins/exportFile/types/csv.js +1 -0
  239. package/plugins/exportFile/types/csv.mjs +1 -0
  240. package/plugins/filters/component/condition.js +2 -0
  241. package/plugins/filters/component/condition.mjs +2 -0
  242. package/plugins/filters/component/operators.js +2 -0
  243. package/plugins/filters/component/operators.mjs +2 -0
  244. package/plugins/filters/component/value.js +3 -0
  245. package/plugins/filters/component/value.mjs +3 -0
  246. package/plugins/filters/conditionCollection.js +3 -0
  247. package/plugins/filters/conditionCollection.mjs +3 -0
  248. package/plugins/filters/conditionUpdateObserver.js +2 -0
  249. package/plugins/filters/conditionUpdateObserver.mjs +2 -0
  250. package/plugins/filters/filters.js +43 -13
  251. package/plugins/filters/filters.mjs +43 -13
  252. package/plugins/filters/logicalOperations/conjunction.js +2 -0
  253. package/plugins/filters/logicalOperations/conjunction.mjs +2 -0
  254. package/plugins/filters/logicalOperations/disjunction.js +2 -0
  255. package/plugins/filters/logicalOperations/disjunction.mjs +2 -0
  256. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +2 -0
  257. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +2 -0
  258. package/plugins/filters/menu/focusController.js +38 -14
  259. package/plugins/filters/menu/focusController.mjs +38 -14
  260. package/plugins/filters/ui/multipleSelect.js +10 -0
  261. package/plugins/filters/ui/multipleSelect.mjs +10 -0
  262. package/plugins/formulas/engine/register.js +3 -0
  263. package/plugins/formulas/engine/register.mjs +3 -0
  264. package/plugins/formulas/engine/settings.js +3 -0
  265. package/plugins/formulas/engine/settings.mjs +3 -0
  266. package/plugins/formulas/formulas.js +12 -7
  267. package/plugins/formulas/formulas.mjs +6 -1
  268. package/plugins/formulas/indexSyncer/axisSyncer.js +3 -0
  269. package/plugins/formulas/indexSyncer/axisSyncer.mjs +3 -0
  270. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +2 -0
  271. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +2 -0
  272. package/plugins/hiddenColumns/hiddenColumns.js +22 -30
  273. package/plugins/hiddenColumns/hiddenColumns.mjs +18 -26
  274. package/plugins/hiddenRows/contextMenuItem/showRow.js +2 -0
  275. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +2 -0
  276. package/plugins/hiddenRows/hiddenRows.js +21 -29
  277. package/plugins/hiddenRows/hiddenRows.mjs +17 -25
  278. package/plugins/index.d.ts +3 -0
  279. package/plugins/index.js +3 -0
  280. package/plugins/index.mjs +3 -1
  281. package/plugins/manualColumnFreeze/manualColumnFreeze.js +7 -5
  282. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +3 -1
  283. package/plugins/manualColumnMove/manualColumnMove.js +6 -6
  284. package/plugins/manualColumnMove/manualColumnMove.mjs +4 -4
  285. package/plugins/manualColumnResize/manualColumnResize.js +26 -12
  286. package/plugins/manualColumnResize/manualColumnResize.mjs +26 -12
  287. package/plugins/manualRowMove/manualRowMove.js +8 -6
  288. package/plugins/manualRowMove/manualRowMove.mjs +6 -4
  289. package/plugins/manualRowResize/manualRowResize.js +3 -2
  290. package/plugins/manualRowResize/manualRowResize.mjs +4 -3
  291. package/plugins/mergeCells/cellsCollection.js +19 -3
  292. package/plugins/mergeCells/cellsCollection.mjs +20 -4
  293. package/plugins/mergeCells/mergeCells.d.ts +6 -2
  294. package/plugins/mergeCells/mergeCells.js +84 -56
  295. package/plugins/mergeCells/mergeCells.mjs +82 -54
  296. package/plugins/mergeCells/renderer.js +13 -3
  297. package/plugins/mergeCells/renderer.mjs +13 -3
  298. package/plugins/multiColumnSorting/domHelpers.js +2 -0
  299. package/plugins/multiColumnSorting/domHelpers.mjs +2 -0
  300. package/plugins/nestedHeaders/nestedHeaders.js +63 -16
  301. package/plugins/nestedHeaders/nestedHeaders.mjs +63 -16
  302. package/plugins/nestedHeaders/stateManager/index.js +1 -0
  303. package/plugins/nestedHeaders/stateManager/index.mjs +1 -0
  304. package/plugins/nestedRows/nestedRows.js +3 -0
  305. package/plugins/nestedRows/nestedRows.mjs +3 -0
  306. package/plugins/nestedRows/ui/headers.js +7 -1
  307. package/plugins/nestedRows/ui/headers.mjs +7 -1
  308. package/plugins/nestedRows/utils/rowMoveController.js +4 -0
  309. package/plugins/nestedRows/utils/rowMoveController.mjs +4 -0
  310. package/plugins/persistentState/persistentState.js +4 -4
  311. package/plugins/persistentState/persistentState.mjs +1 -1
  312. package/plugins/stretchColumns/calculator.js +162 -0
  313. package/plugins/stretchColumns/calculator.mjs +158 -0
  314. package/plugins/stretchColumns/index.d.ts +1 -0
  315. package/plugins/stretchColumns/index.js +7 -0
  316. package/plugins/stretchColumns/index.mjs +1 -0
  317. package/plugins/stretchColumns/strategies/_base.js +85 -0
  318. package/plugins/stretchColumns/strategies/_base.mjs +81 -0
  319. package/plugins/stretchColumns/strategies/all.js +71 -0
  320. package/plugins/stretchColumns/strategies/all.mjs +67 -0
  321. package/plugins/stretchColumns/strategies/last.js +79 -0
  322. package/plugins/stretchColumns/strategies/last.mjs +75 -0
  323. package/plugins/stretchColumns/stretchColumns.d.ts +11 -0
  324. package/plugins/stretchColumns/stretchColumns.js +222 -0
  325. package/plugins/stretchColumns/stretchColumns.mjs +218 -0
  326. package/plugins/trimRows/trimRows.js +2 -0
  327. package/plugins/trimRows/trimRows.mjs +2 -0
  328. package/plugins/undoRedo/undoRedo.js +9 -5
  329. package/plugins/undoRedo/undoRedo.mjs +8 -3
  330. package/renderers/checkboxRenderer/checkboxRenderer.js +19 -8
  331. package/renderers/checkboxRenderer/checkboxRenderer.mjs +18 -7
  332. package/selection/index.js +2 -0
  333. package/selection/range.js +2 -0
  334. package/selection/range.mjs +2 -0
  335. package/selection/selection.js +7 -2
  336. package/selection/selection.mjs +7 -2
  337. package/selection/utils.js +2 -0
  338. package/selection/utils.mjs +2 -0
  339. package/settings.d.ts +4 -1
  340. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.js +1 -1
  341. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.mjs +1 -1
  342. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.js +1 -1
  343. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.mjs +1 -1
  344. package/shortcutContexts/commands/index.js +2 -0
  345. package/shortcutContexts/commands/index.mjs +2 -0
  346. package/shortcutContexts/commands/scrollToFocusedCell.js +4 -4
  347. package/shortcutContexts/commands/scrollToFocusedCell.mjs +4 -4
  348. package/shortcutContexts/index.js +2 -0
  349. package/shortcutContexts/index.mjs +2 -0
  350. package/shortcuts/context.js +3 -0
  351. package/shortcuts/context.mjs +3 -0
  352. package/shortcuts/recorder.js +3 -3
  353. package/shortcuts/recorder.mjs +3 -3
  354. package/shortcuts/utils.js +1 -0
  355. package/shortcuts/utils.mjs +1 -0
  356. package/styles/handsontable.css +2307 -0
  357. package/styles/handsontable.min.css +30 -0
  358. package/styles/ht-theme-horizon.css +607 -0
  359. package/styles/ht-theme-horizon.min.css +30 -0
  360. package/styles/ht-theme-main.css +613 -0
  361. package/styles/ht-theme-main.min.css +30 -0
  362. package/tableView.js +205 -33
  363. package/tableView.mjs +206 -34
  364. package/translations/changesObservable/observable.js +2 -0
  365. package/translations/changesObservable/observable.mjs +2 -0
  366. package/translations/index.js +2 -0
  367. package/translations/indexMapper.js +4 -0
  368. package/translations/indexMapper.mjs +4 -0
  369. package/translations/mapCollections/index.js +2 -0
  370. package/translations/mapCollections/mapCollection.js +2 -0
  371. package/translations/mapCollections/mapCollection.mjs +2 -0
  372. package/translations/maps/index.js +2 -0
  373. package/translations/maps/linkedPhysicalIndexToValueMap.js +1 -0
  374. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +1 -0
  375. package/translations/maps/utils/actionsOnIndexes.js +2 -0
  376. package/translations/maps/utils/actionsOnIndexes.mjs +2 -0
  377. package/translations/maps/utils/physicallyIndexed.js +1 -0
  378. package/translations/maps/utils/physicallyIndexed.mjs +1 -0
  379. package/utils/autoResize.js +11 -3
  380. package/utils/autoResize.mjs +11 -3
  381. package/utils/dataStructures/priorityMap.js +1 -0
  382. package/utils/dataStructures/priorityMap.mjs +1 -0
  383. package/utils/dataStructures/uniqueMap.js +2 -0
  384. package/utils/dataStructures/uniqueMap.mjs +2 -0
  385. package/utils/ghostTable.js +7 -3
  386. package/utils/ghostTable.mjs +7 -3
  387. package/utils/parseTable.js +4 -0
  388. package/utils/parseTable.mjs +4 -0
  389. package/3rdparty/walkontable/src/selection/border/constants.js +0 -15
  390. package/3rdparty/walkontable/src/selection/border/constants.mjs +0 -12
  391. package/3rdparty/walkontable/src/utils/columnStretching.js +0 -197
  392. package/3rdparty/walkontable/src/utils/columnStretching.mjs +0 -193
@@ -9,8 +9,8 @@ exports.closestDown = closestDown;
9
9
  exports.empty = empty;
10
10
  exports.fastInnerHTML = fastInnerHTML;
11
11
  exports.fastInnerText = fastInnerText;
12
+ exports.findFirstParentWithClass = findFirstParentWithClass;
12
13
  exports.getCaretPosition = getCaretPosition;
13
- exports.getComputedStyle = getComputedStyle;
14
14
  exports.getCssTransform = getCssTransform;
15
15
  exports.getFrameElement = getFrameElement;
16
16
  exports.getMaximumScrollLeft = getMaximumScrollLeft;
@@ -60,6 +60,9 @@ exports.setCaretPosition = setCaretPosition;
60
60
  exports.setOverlayPosition = setOverlayPosition;
61
61
  require("core-js/modules/es.error.cause.js");
62
62
  require("core-js/modules/es.array.push.js");
63
+ require("core-js/modules/esnext.iterator.constructor.js");
64
+ require("core-js/modules/esnext.iterator.filter.js");
65
+ require("core-js/modules/esnext.iterator.for-each.js");
63
66
  var _string = require("../string");
64
67
  var _a11y = require("../a11y");
65
68
  /**
@@ -195,6 +198,36 @@ function closestDown(element, nodes, until) {
195
198
  return length ? matched[length - 1] : null;
196
199
  }
197
200
 
201
+ /**
202
+ * Traverses up the DOM tree from the given element and finds parent elements that have a specified class name
203
+ * or match a provided class name regular expression.
204
+ *
205
+ * @param {HTMLElement} element - The element from which to start traversing.
206
+ * @param {string|RegExp} className - The class name or class name regular expression to check.
207
+ * @returns {{element: HTMLElement, classNames: string[]}} - Returns an object containing the matched parent element and an array of matched class names.
208
+ */
209
+ function findFirstParentWithClass(element, className) {
210
+ const matched = {
211
+ element: undefined,
212
+ classNames: []
213
+ };
214
+ let elementToCheck = element;
215
+ while (elementToCheck !== null && elementToCheck !== element.ownerDocument.documentElement && !matched.element) {
216
+ if (typeof className === 'string' && elementToCheck.classList.contains(className)) {
217
+ matched.element = elementToCheck;
218
+ matched.classNames.push(className);
219
+ } else if (className instanceof RegExp) {
220
+ const matchingClasses = Array.from(elementToCheck.classList).filter(cls => className.test(cls));
221
+ if (matchingClasses.length) {
222
+ matched.element = elementToCheck;
223
+ matched.classNames.push(...matchingClasses);
224
+ }
225
+ }
226
+ elementToCheck = elementToCheck.parentElement;
227
+ }
228
+ return matched;
229
+ }
230
+
198
231
  /**
199
232
  * Goes up the DOM tree and checks if element is child of another element.
200
233
  *
@@ -332,7 +365,7 @@ function addClass(element, className) {
332
365
  * Remove class name from an element.
333
366
  *
334
367
  * @param {HTMLElement} element An element to process.
335
- * @param {string|Array<string|RegExp>} className Class name as string or array of strings.
368
+ * @param {string|RegExp|Array<string|RegExp>} className Class name as string or array of strings.
336
369
  */
337
370
  function removeClass(element, className) {
338
371
  if (typeof className === 'string') {
@@ -488,6 +521,7 @@ function fastInnerText(element, content) {
488
521
  */
489
522
  function isVisible(element) {
490
523
  const documentElement = element.ownerDocument.documentElement;
524
+ const windowElement = element.ownerDocument.defaultView;
491
525
  let next = element;
492
526
  while (next !== documentElement) {
493
527
  // until <html> reached
@@ -510,7 +544,7 @@ function isVisible(element) {
510
544
  } else {
511
545
  return false; // this is a node detached from document in IE8
512
546
  }
513
- } else if (getComputedStyle(next).display === 'none') {
547
+ } else if (windowElement.getComputedStyle(next).display === 'none') {
514
548
  return false;
515
549
  }
516
550
  next = next.parentNode;
@@ -700,7 +734,7 @@ function getTrimmingContainer(base) {
700
734
  if (el.style.overflow !== 'visible' && el.style.overflow !== '') {
701
735
  return el;
702
736
  }
703
- const computedStyle = getComputedStyle(el, rootWindow);
737
+ const computedStyle = rootWindow.getComputedStyle(el);
704
738
  const allowedProperties = ['scroll', 'hidden', 'auto'];
705
739
  const property = computedStyle.getPropertyValue('overflow');
706
740
  const propertyY = computedStyle.getPropertyValue('overflow-y');
@@ -738,7 +772,7 @@ function getStyle(element, prop) {
738
772
  if (styleProp !== '' && styleProp !== undefined) {
739
773
  return styleProp;
740
774
  }
741
- const computedStyle = getComputedStyle(element, rootWindow);
775
+ const computedStyle = rootWindow.getComputedStyle(element);
742
776
  if (computedStyle[prop] !== '' && computedStyle[prop] !== undefined) {
743
777
  return computedStyle[prop];
744
778
  }
@@ -766,19 +800,6 @@ function matchesCSSRules(element, rule) {
766
800
  return result;
767
801
  }
768
802
 
769
- /**
770
- * Returns a computed style object for the provided element. (Needed if style is declared in external stylesheet).
771
- *
772
- * @param {HTMLElement} element An element to get style from.
773
- * @param {Window} [rootWindow] The document window owner.
774
- * @returns {IEElementStyle|CssStyle} Elements computed style object.
775
- */
776
- // eslint-disable-next-line no-restricted-globals
777
- function getComputedStyle(element) {
778
- let rootWindow = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window;
779
- return element.currentStyle || rootWindow.getComputedStyle(element);
780
- }
781
-
782
803
  /**
783
804
  * Returns the element's outer width.
784
805
  *
@@ -1,5 +1,8 @@
1
1
  import "core-js/modules/es.error.cause.js";
2
2
  import "core-js/modules/es.array.push.js";
3
+ import "core-js/modules/esnext.iterator.constructor.js";
4
+ import "core-js/modules/esnext.iterator.filter.js";
5
+ import "core-js/modules/esnext.iterator.for-each.js";
3
6
  import { sanitize } from "../string.mjs";
4
7
  import { A11Y_HIDDEN } from "../a11y.mjs";
5
8
  /**
@@ -135,6 +138,36 @@ export function closestDown(element, nodes, until) {
135
138
  return length ? matched[length - 1] : null;
136
139
  }
137
140
 
141
+ /**
142
+ * Traverses up the DOM tree from the given element and finds parent elements that have a specified class name
143
+ * or match a provided class name regular expression.
144
+ *
145
+ * @param {HTMLElement} element - The element from which to start traversing.
146
+ * @param {string|RegExp} className - The class name or class name regular expression to check.
147
+ * @returns {{element: HTMLElement, classNames: string[]}} - Returns an object containing the matched parent element and an array of matched class names.
148
+ */
149
+ export function findFirstParentWithClass(element, className) {
150
+ const matched = {
151
+ element: undefined,
152
+ classNames: []
153
+ };
154
+ let elementToCheck = element;
155
+ while (elementToCheck !== null && elementToCheck !== element.ownerDocument.documentElement && !matched.element) {
156
+ if (typeof className === 'string' && elementToCheck.classList.contains(className)) {
157
+ matched.element = elementToCheck;
158
+ matched.classNames.push(className);
159
+ } else if (className instanceof RegExp) {
160
+ const matchingClasses = Array.from(elementToCheck.classList).filter(cls => className.test(cls));
161
+ if (matchingClasses.length) {
162
+ matched.element = elementToCheck;
163
+ matched.classNames.push(...matchingClasses);
164
+ }
165
+ }
166
+ elementToCheck = elementToCheck.parentElement;
167
+ }
168
+ return matched;
169
+ }
170
+
138
171
  /**
139
172
  * Goes up the DOM tree and checks if element is child of another element.
140
173
  *
@@ -272,7 +305,7 @@ export function addClass(element, className) {
272
305
  * Remove class name from an element.
273
306
  *
274
307
  * @param {HTMLElement} element An element to process.
275
- * @param {string|Array<string|RegExp>} className Class name as string or array of strings.
308
+ * @param {string|RegExp|Array<string|RegExp>} className Class name as string or array of strings.
276
309
  */
277
310
  export function removeClass(element, className) {
278
311
  if (typeof className === 'string') {
@@ -428,6 +461,7 @@ export function fastInnerText(element, content) {
428
461
  */
429
462
  export function isVisible(element) {
430
463
  const documentElement = element.ownerDocument.documentElement;
464
+ const windowElement = element.ownerDocument.defaultView;
431
465
  let next = element;
432
466
  while (next !== documentElement) {
433
467
  // until <html> reached
@@ -450,7 +484,7 @@ export function isVisible(element) {
450
484
  } else {
451
485
  return false; // this is a node detached from document in IE8
452
486
  }
453
- } else if (getComputedStyle(next).display === 'none') {
487
+ } else if (windowElement.getComputedStyle(next).display === 'none') {
454
488
  return false;
455
489
  }
456
490
  next = next.parentNode;
@@ -640,7 +674,7 @@ export function getTrimmingContainer(base) {
640
674
  if (el.style.overflow !== 'visible' && el.style.overflow !== '') {
641
675
  return el;
642
676
  }
643
- const computedStyle = getComputedStyle(el, rootWindow);
677
+ const computedStyle = rootWindow.getComputedStyle(el);
644
678
  const allowedProperties = ['scroll', 'hidden', 'auto'];
645
679
  const property = computedStyle.getPropertyValue('overflow');
646
680
  const propertyY = computedStyle.getPropertyValue('overflow-y');
@@ -678,7 +712,7 @@ export function getStyle(element, prop) {
678
712
  if (styleProp !== '' && styleProp !== undefined) {
679
713
  return styleProp;
680
714
  }
681
- const computedStyle = getComputedStyle(element, rootWindow);
715
+ const computedStyle = rootWindow.getComputedStyle(element);
682
716
  if (computedStyle[prop] !== '' && computedStyle[prop] !== undefined) {
683
717
  return computedStyle[prop];
684
718
  }
@@ -706,19 +740,6 @@ export function matchesCSSRules(element, rule) {
706
740
  return result;
707
741
  }
708
742
 
709
- /**
710
- * Returns a computed style object for the provided element. (Needed if style is declared in external stylesheet).
711
- *
712
- * @param {HTMLElement} element An element to get style from.
713
- * @param {Window} [rootWindow] The document window owner.
714
- * @returns {IEElementStyle|CssStyle} Elements computed style object.
715
- */
716
- // eslint-disable-next-line no-restricted-globals
717
- export function getComputedStyle(element) {
718
- let rootWindow = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window;
719
- return element.currentStyle || rootWindow.getComputedStyle(element);
720
- }
721
-
722
743
  /**
723
744
  * Returns the element's outer width.
724
745
  *
package/helpers/mixed.js CHANGED
@@ -134,7 +134,7 @@ const domMessages = {
134
134
  function _injectProductInfo(key, element) {
135
135
  const hasValidType = !isEmpty(key);
136
136
  const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
137
- const hotVersion = "14.6.1";
137
+ const hotVersion = "15.0.0-next-fdd4480-20241205";
138
138
  let keyValidityDate;
139
139
  let consoleMessageState = 'invalid';
140
140
  let domMessageState = 'invalid';
@@ -142,7 +142,7 @@ function _injectProductInfo(key, element) {
142
142
  const schemaValidity = _checkKeySchema(key);
143
143
  if (hasValidType || isNonCommercial || schemaValidity) {
144
144
  if (schemaValidity) {
145
- const releaseDate = (0, _moment.default)("17/10/2024", 'DD/MM/YYYY');
145
+ const releaseDate = (0, _moment.default)("11/12/2024", 'DD/MM/YYYY');
146
146
  const releaseDays = Math.floor(releaseDate.toDate().getTime() / 8.64e7);
147
147
  const keyValidityDays = _extractTime(key);
148
148
  keyValidityDate = (0, _moment.default)((keyValidityDays + 1) * 8.64e7, 'x').format('MMMM DD, YYYY');
@@ -188,7 +188,7 @@ function _injectProductInfo(key, element) {
188
188
  });
189
189
  if (message) {
190
190
  const messageNode = document.createElement('div');
191
- messageNode.className = 'hot-display-license-info';
191
+ messageNode.className = 'handsontable hot-display-license-info';
192
192
  messageNode.innerHTML = domMessages[domMessageState]({
193
193
  keyValidityDate,
194
194
  hotVersion
package/helpers/mixed.mjs CHANGED
@@ -124,7 +124,7 @@ const domMessages = {
124
124
  export function _injectProductInfo(key, element) {
125
125
  const hasValidType = !isEmpty(key);
126
126
  const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
127
- const hotVersion = "14.6.1";
127
+ const hotVersion = "15.0.0-next-fdd4480-20241205";
128
128
  let keyValidityDate;
129
129
  let consoleMessageState = 'invalid';
130
130
  let domMessageState = 'invalid';
@@ -132,7 +132,7 @@ export function _injectProductInfo(key, element) {
132
132
  const schemaValidity = _checkKeySchema(key);
133
133
  if (hasValidType || isNonCommercial || schemaValidity) {
134
134
  if (schemaValidity) {
135
- const releaseDate = moment("17/10/2024", 'DD/MM/YYYY');
135
+ const releaseDate = moment("11/12/2024", 'DD/MM/YYYY');
136
136
  const releaseDays = Math.floor(releaseDate.toDate().getTime() / 8.64e7);
137
137
  const keyValidityDays = _extractTime(key);
138
138
  keyValidityDate = moment((keyValidityDays + 1) * 8.64e7, 'x').format('MMMM DD, YYYY');
@@ -178,7 +178,7 @@ export function _injectProductInfo(key, element) {
178
178
  });
179
179
  if (message) {
180
180
  const messageNode = document.createElement('div');
181
- messageNode.className = 'hot-display-license-info';
181
+ messageNode.className = 'handsontable hot-display-license-info';
182
182
  messageNode.innerHTML = domMessages[domMessageState]({
183
183
  keyValidityDate,
184
184
  hotVersion
package/helpers/moves.js CHANGED
@@ -3,6 +3,9 @@
3
3
  exports.__esModule = true;
4
4
  exports.getMoves = getMoves;
5
5
  require("core-js/modules/es.array.push.js");
6
+ require("core-js/modules/esnext.iterator.constructor.js");
7
+ require("core-js/modules/esnext.iterator.filter.js");
8
+ require("core-js/modules/esnext.iterator.for-each.js");
6
9
  /**
7
10
  * Gets first position where to move element (respecting the fact that some element will be sooner or later
8
11
  * taken out of the dataset in order to move them).
package/helpers/moves.mjs CHANGED
@@ -1,4 +1,7 @@
1
1
  import "core-js/modules/es.array.push.js";
2
+ import "core-js/modules/esnext.iterator.constructor.js";
3
+ import "core-js/modules/esnext.iterator.filter.js";
4
+ import "core-js/modules/esnext.iterator.for-each.js";
2
5
  /**
3
6
  * Gets first position where to move element (respecting the fact that some element will be sooner or later
4
7
  * taken out of the dataset in order to move them).
package/helpers/number.js CHANGED
@@ -14,6 +14,7 @@ require("core-js/modules/es.set.is-subset-of.v2.js");
14
14
  require("core-js/modules/es.set.is-superset-of.v2.js");
15
15
  require("core-js/modules/es.set.symmetric-difference.v2.js");
16
16
  require("core-js/modules/es.set.union.v2.js");
17
+ require("core-js/modules/esnext.iterator.map.js");
17
18
  /* eslint-disable jsdoc/require-description-complete-sentence */
18
19
  /**
19
20
  * Checks if the passed value is numeric one. For example these values (passed as string or number)
@@ -5,6 +5,7 @@ import "core-js/modules/es.set.is-subset-of.v2.js";
5
5
  import "core-js/modules/es.set.is-superset-of.v2.js";
6
6
  import "core-js/modules/es.set.symmetric-difference.v2.js";
7
7
  import "core-js/modules/es.set.union.v2.js";
8
+ import "core-js/modules/esnext.iterator.map.js";
8
9
  /* eslint-disable jsdoc/require-description-complete-sentence */
9
10
  /**
10
11
  * Checks if the passed value is numeric one. For example these values (passed as string or number)
package/helpers/object.js CHANGED
@@ -20,6 +20,8 @@ exports.setProperty = setProperty;
20
20
  require("core-js/modules/es.error.cause.js");
21
21
  require("core-js/modules/es.array.push.js");
22
22
  require("core-js/modules/es.json.stringify.js");
23
+ require("core-js/modules/esnext.iterator.constructor.js");
24
+ require("core-js/modules/esnext.iterator.for-each.js");
23
25
  var _array = require("./array");
24
26
  /**
25
27
  * Generate schema for passed object.
@@ -1,6 +1,8 @@
1
1
  import "core-js/modules/es.error.cause.js";
2
2
  import "core-js/modules/es.array.push.js";
3
3
  import "core-js/modules/es.json.stringify.js";
4
+ import "core-js/modules/esnext.iterator.constructor.js";
5
+ import "core-js/modules/esnext.iterator.for-each.js";
4
6
  import { arrayEach } from "./array.mjs";
5
7
  /**
6
8
  * Generate schema for passed object.
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.getThemeClassName = getThemeClassName;
5
+ var _element = require("./dom/element");
6
+ /**
7
+ * Retrieves the theme class name from the closest parent element that matches the specified regex pattern.
8
+ *
9
+ * @param {HTMLElement} rootElement - The root element from which to start searching for the theme class.
10
+ * @returns {string} - The theme class name regex.
11
+ */
12
+ function getThemeClassName(rootElement) {
13
+ const {
14
+ classNames
15
+ } = (0, _element.findFirstParentWithClass)(rootElement, /ht-theme-[a-zA-Z0-9_-]+/);
16
+ return classNames.pop();
17
+ }
@@ -0,0 +1,13 @@
1
+ import { findFirstParentWithClass } from "./dom/element.mjs";
2
+ /**
3
+ * Retrieves the theme class name from the closest parent element that matches the specified regex pattern.
4
+ *
5
+ * @param {HTMLElement} rootElement - The root element from which to start searching for the theme class.
6
+ * @returns {string} - The theme class name regex.
7
+ */
8
+ export function getThemeClassName(rootElement) {
9
+ const {
10
+ classNames
11
+ } = findFirstParentWithClass(rootElement, /ht-theme-[a-zA-Z0-9_-]+/);
12
+ return classNames.pop();
13
+ }
package/i18n/index.js CHANGED
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/esnext.iterator.constructor.js");
4
+ require("core-js/modules/esnext.iterator.for-each.js");
3
5
  exports.__esModule = true;
4
6
  var _languages = require("./languages");
5
7
  Object.keys(_languages).forEach(function (key) {
@@ -1,8 +1,11 @@
1
+ import arAr from './ar-AR';
2
+ import csCZ from './cs-CZ';
1
3
  import deCH from './de-CH';
2
4
  import deDE from './de-DE';
3
5
  import enUS from './en-US';
4
6
  import esMX from './es-MX';
5
7
  import frFR from './fr-FR';
8
+ import hrHR from './hr-HR';
6
9
  import itIT from './it-IT';
7
10
  import jaJP from './ja-JP';
8
11
  import koKR from './ko-KR';
@@ -12,15 +15,19 @@ import nlNL from './nl-NL';
12
15
  import plPL from './pl-PL';
13
16
  import ptBR from './pt-BR';
14
17
  import ruRU from './ru-RU';
18
+ import srSP from './sr-SP';
15
19
  import zhCN from './zh-CN';
16
20
  import zhTW from './zh-TW';
17
21
 
18
22
  export {
23
+ arAr,
24
+ csCZ,
19
25
  deCH,
20
26
  deDE,
21
27
  enUS,
22
28
  esMX,
23
29
  frFR,
30
+ hrHR,
24
31
  itIT,
25
32
  jaJP,
26
33
  koKR,
@@ -30,6 +37,7 @@ export {
30
37
  plPL,
31
38
  ptBR,
32
39
  ruRU,
40
+ srSP,
33
41
  zhCN,
34
42
  zhTW
35
43
  };
@@ -1,5 +1,5 @@
1
1
  export default dictionary;
2
2
  declare const dictionary: {
3
3
  [x: string]: string | string[];
4
- languageCode: 'js-JP';
4
+ languageCode: 'ja-JP';
5
5
  };
@@ -2,6 +2,7 @@
2
2
 
3
3
  exports.__esModule = true;
4
4
  exports.default = substituteVariables;
5
+ require("core-js/modules/esnext.iterator.map.js");
5
6
  var _string = require("./../../helpers/string");
6
7
  /**
7
8
  * Try to substitute variable inside phrase propositions.
@@ -1,3 +1,4 @@
1
+ import "core-js/modules/esnext.iterator.map.js";
1
2
  import { substitute } from "./../../helpers/string.mjs";
2
3
  /**
3
4
  * Try to substitute variable inside phrase propositions.
package/index.d.ts CHANGED
@@ -78,7 +78,7 @@ import * as dom from './helpers/dom';
78
78
  import CellCoords from './3rdparty/walkontable/src/cell/coords';
79
79
  import CellRange from './3rdparty/walkontable/src/cell/range';
80
80
  import EventManager from './eventManager';
81
- import { Hooks } from './pluginHooks';
81
+ import { Hooks, Events } from './core/hooks';
82
82
  // plugins
83
83
  import {
84
84
  AutoColumnSize as _AutoColumnSize,
@@ -220,6 +220,9 @@ import {
220
220
  SearchCallback,
221
221
  SearchQueryMethod,
222
222
  } from './plugins/search';
223
+ import {
224
+ Settings as StretchColumnsSettings,
225
+ } from './plugins/stretchColumns';
223
226
  import {
224
227
  TouchScroll as _TouchScroll,
225
228
  Settings as TouchScrollSettings,
@@ -523,6 +526,10 @@ declare namespace Handsontable {
523
526
  export { SearchQueryMethod };
524
527
  }
525
528
 
529
+ export namespace StretchColumns {
530
+ export { StretchColumnsSettings as Settings };
531
+ }
532
+
526
533
  export namespace TouchScroll {
527
534
  export { TouchScrollSettings as Settings };
528
535
  }
@@ -547,5 +554,6 @@ declare class Handsontable extends Core {
547
554
  export {
548
555
  CellCoords,
549
556
  CellRange,
557
+ Events,
550
558
  };
551
559
  export default Handsontable;
package/languages/all.js CHANGED
@@ -2035,7 +2035,7 @@ var _default = exports["default"] = dictionary;
2035
2035
  /******/
2036
2036
  /************************************************************************/
2037
2037
  var __webpack_exports__ = {};
2038
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
2038
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
2039
2039
  (() => {
2040
2040
  "use strict";
2041
2041
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;
@@ -2035,7 +2035,7 @@ var _default = exports["default"] = dictionary;
2035
2035
  /******/
2036
2036
  /************************************************************************/
2037
2037
  var __webpack_exports__ = {};
2038
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
2038
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
2039
2039
  (() => {
2040
2040
  "use strict";
2041
2041
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;
@@ -57,7 +57,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
57
57
  /******/
58
58
  /************************************************************************/
59
59
  var __webpack_exports__ = {};
60
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
60
+ // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
61
61
  (() => {
62
62
  "use strict";
63
63
  var exports = __webpack_exports__;