handsontable 11.0.0 → 12.0.0

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.
Files changed (633) hide show
  1. package/3rdparty/walkontable/src/border.js +121 -99
  2. package/3rdparty/walkontable/src/border.mjs +122 -96
  3. package/3rdparty/walkontable/src/calculator/viewportColumns.js +1 -1
  4. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +1 -1
  5. package/3rdparty/walkontable/src/calculator/viewportRows.js +1 -1
  6. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +1 -1
  7. package/3rdparty/walkontable/src/cell/coords.js +60 -18
  8. package/3rdparty/walkontable/src/cell/coords.mjs +56 -18
  9. package/3rdparty/walkontable/src/cell/range.d.ts +10 -2
  10. package/3rdparty/walkontable/src/cell/range.js +279 -100
  11. package/3rdparty/walkontable/src/cell/range.mjs +274 -100
  12. package/3rdparty/walkontable/src/core/_base.js +452 -0
  13. package/3rdparty/walkontable/src/core/_base.mjs +440 -0
  14. package/3rdparty/walkontable/src/core/clone.js +97 -0
  15. package/3rdparty/walkontable/src/core/clone.mjs +80 -0
  16. package/3rdparty/walkontable/src/core/core.js +183 -0
  17. package/3rdparty/walkontable/src/core/core.mjs +160 -0
  18. package/3rdparty/walkontable/src/event.js +100 -67
  19. package/3rdparty/walkontable/src/event.mjs +100 -64
  20. package/3rdparty/walkontable/src/facade/core.js +251 -0
  21. package/3rdparty/walkontable/src/facade/core.mjs +243 -0
  22. package/3rdparty/walkontable/src/filter/column.js +1 -1
  23. package/3rdparty/walkontable/src/filter/column.mjs +1 -1
  24. package/3rdparty/walkontable/src/filter/row.js +1 -1
  25. package/3rdparty/walkontable/src/filter/row.mjs +1 -1
  26. package/3rdparty/walkontable/src/index.js +3 -47
  27. package/3rdparty/walkontable/src/index.mjs +3 -13
  28. package/3rdparty/walkontable/src/overlay/_base.js +125 -58
  29. package/3rdparty/walkontable/src/overlay/_base.mjs +126 -59
  30. package/3rdparty/walkontable/src/overlay/bottom.js +86 -76
  31. package/3rdparty/walkontable/src/overlay/bottom.mjs +86 -76
  32. package/3rdparty/walkontable/src/overlay/{bottomLeftCorner.js → bottomInlineStartCorner.js} +35 -58
  33. package/3rdparty/walkontable/src/overlay/{bottomLeftCorner.mjs → bottomInlineStartCorner.mjs} +34 -57
  34. package/3rdparty/walkontable/src/overlay/constants.js +25 -9
  35. package/3rdparty/walkontable/src/overlay/constants.mjs +14 -4
  36. package/3rdparty/walkontable/src/overlay/index.js +10 -19
  37. package/3rdparty/walkontable/src/overlay/index.mjs +4 -5
  38. package/3rdparty/walkontable/src/overlay/{left.js → inlineStart.js} +102 -80
  39. package/3rdparty/walkontable/src/overlay/{left.mjs → inlineStart.mjs} +101 -79
  40. package/3rdparty/walkontable/src/overlay/top.js +84 -79
  41. package/3rdparty/walkontable/src/overlay/top.mjs +84 -79
  42. package/3rdparty/walkontable/src/overlay/{topLeftCorner.js → topInlineStartCorner.js} +56 -57
  43. package/3rdparty/walkontable/src/overlay/{topLeftCorner.mjs → topInlineStartCorner.mjs} +51 -52
  44. package/3rdparty/walkontable/src/overlays.js +226 -157
  45. package/3rdparty/walkontable/src/overlays.mjs +226 -156
  46. package/3rdparty/walkontable/src/renderer/_base.js +1 -1
  47. package/3rdparty/walkontable/src/renderer/_base.mjs +1 -1
  48. package/3rdparty/walkontable/src/renderer/cells.js +5 -4
  49. package/3rdparty/walkontable/src/renderer/cells.mjs +5 -4
  50. package/3rdparty/walkontable/src/renderer/colGroup.js +3 -3
  51. package/3rdparty/walkontable/src/renderer/colGroup.mjs +3 -3
  52. package/3rdparty/walkontable/src/renderer/columnHeaders.js +3 -3
  53. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +3 -3
  54. package/3rdparty/walkontable/src/renderer/index.js +1 -1
  55. package/3rdparty/walkontable/src/renderer/index.mjs +1 -1
  56. package/3rdparty/walkontable/src/renderer/rowHeaders.js +3 -3
  57. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +3 -3
  58. package/3rdparty/walkontable/src/renderer/rows.js +3 -3
  59. package/3rdparty/walkontable/src/renderer/rows.mjs +3 -3
  60. package/3rdparty/walkontable/src/renderer/table.js +1 -1
  61. package/3rdparty/walkontable/src/renderer/table.mjs +1 -1
  62. package/3rdparty/walkontable/src/scroll.js +61 -88
  63. package/3rdparty/walkontable/src/scroll.mjs +61 -88
  64. package/3rdparty/walkontable/src/selection.js +12 -16
  65. package/3rdparty/walkontable/src/selection.mjs +12 -14
  66. package/3rdparty/walkontable/src/settings.js +236 -127
  67. package/3rdparty/walkontable/src/settings.mjs +236 -126
  68. package/3rdparty/walkontable/src/table/bottom.js +21 -6
  69. package/3rdparty/walkontable/src/table/bottom.mjs +20 -6
  70. package/3rdparty/walkontable/src/table/{bottomLeftCorner.js → bottomInlineStartCorner.js} +31 -15
  71. package/3rdparty/walkontable/src/table/{bottomLeftCorner.mjs → bottomInlineStartCorner.mjs} +30 -15
  72. package/3rdparty/walkontable/src/table/{left.js → inlineStart.js} +27 -15
  73. package/3rdparty/walkontable/src/table/{left.mjs → inlineStart.mjs} +26 -15
  74. package/3rdparty/walkontable/src/table/master.js +23 -13
  75. package/3rdparty/walkontable/src/table/master.mjs +23 -13
  76. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +12 -6
  77. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +12 -6
  78. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +12 -6
  79. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +12 -6
  80. package/3rdparty/walkontable/src/table/mixin/{stickyColumnsLeft.js → stickyColumnsStart.js} +13 -7
  81. package/3rdparty/walkontable/src/table/mixin/{stickyColumnsLeft.mjs → stickyColumnsStart.mjs} +13 -7
  82. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +11 -5
  83. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +11 -5
  84. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +9 -3
  85. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +9 -3
  86. package/3rdparty/walkontable/src/table/top.js +21 -6
  87. package/3rdparty/walkontable/src/table/top.mjs +20 -6
  88. package/3rdparty/walkontable/src/table/{topLeftCorner.js → topInlineStartCorner.js} +31 -15
  89. package/3rdparty/walkontable/src/table/{topLeftCorner.mjs → topInlineStartCorner.mjs} +30 -15
  90. package/3rdparty/walkontable/src/table.js +236 -141
  91. package/3rdparty/walkontable/src/table.mjs +232 -135
  92. package/3rdparty/walkontable/src/types.js +103 -0
  93. package/3rdparty/walkontable/src/types.mjs +102 -0
  94. package/3rdparty/walkontable/src/utils/column.js +23 -34
  95. package/3rdparty/walkontable/src/utils/column.mjs +23 -31
  96. package/3rdparty/walkontable/src/utils/nodesPool.js +1 -1
  97. package/3rdparty/walkontable/src/utils/nodesPool.mjs +1 -1
  98. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +3 -3
  99. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +3 -3
  100. package/3rdparty/walkontable/src/utils/orderView/view.js +1 -1
  101. package/3rdparty/walkontable/src/utils/orderView/view.mjs +1 -1
  102. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +1 -1
  103. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +1 -1
  104. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +1 -1
  105. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +1 -1
  106. package/3rdparty/walkontable/src/utils/row.js +10 -5
  107. package/3rdparty/walkontable/src/utils/row.mjs +10 -5
  108. package/3rdparty/walkontable/src/viewport.js +78 -81
  109. package/3rdparty/walkontable/src/viewport.mjs +78 -78
  110. package/CHANGELOG.md +94 -17
  111. package/README.md +10 -7
  112. package/base.js +2 -2
  113. package/base.mjs +2 -2
  114. package/cellTypes/timeType/timeType.d.ts +6 -6
  115. package/cellTypes/timeType/timeType.js +4 -5
  116. package/cellTypes/timeType/timeType.mjs +4 -5
  117. package/core.d.ts +9 -3
  118. package/core.js +590 -157
  119. package/core.mjs +599 -169
  120. package/dataMap/dataMap.js +2 -2
  121. package/dataMap/dataMap.mjs +2 -2
  122. package/dataMap/index.js +8 -0
  123. package/dataMap/index.mjs +3 -1
  124. package/dataMap/metaManager/index.js +3 -3
  125. package/dataMap/metaManager/index.mjs +3 -3
  126. package/dataMap/metaManager/lazyFactoryMap.js +1 -1
  127. package/dataMap/metaManager/lazyFactoryMap.mjs +1 -1
  128. package/dataMap/metaManager/metaLayers/cellMeta.js +1 -1
  129. package/dataMap/metaManager/metaLayers/cellMeta.mjs +1 -1
  130. package/dataMap/metaManager/metaLayers/columnMeta.js +1 -1
  131. package/dataMap/metaManager/metaLayers/columnMeta.mjs +1 -1
  132. package/dataMap/metaManager/metaLayers/globalMeta.js +7 -3
  133. package/dataMap/metaManager/metaLayers/globalMeta.mjs +7 -3
  134. package/dataMap/metaManager/metaLayers/tableMeta.js +3 -3
  135. package/dataMap/metaManager/metaLayers/tableMeta.mjs +3 -3
  136. package/dataMap/metaManager/metaSchema.js +2931 -2676
  137. package/dataMap/metaManager/metaSchema.mjs +2931 -2676
  138. package/dataMap/metaManager/mods/dynamicCellMeta.js +1 -1
  139. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +1 -1
  140. package/dataMap/metaManager/mods/extendMetaProperties.js +126 -0
  141. package/dataMap/metaManager/mods/extendMetaProperties.mjs +113 -0
  142. package/dataMap/replaceData.js +140 -0
  143. package/dataMap/replaceData.mjs +124 -0
  144. package/dataSource.js +1 -1
  145. package/dataSource.mjs +1 -1
  146. package/dist/README.md +2 -2
  147. package/dist/handsontable.css +424 -166
  148. package/dist/handsontable.full.css +559 -298
  149. package/dist/handsontable.full.js +47163 -41289
  150. package/dist/handsontable.full.min.css +8 -13
  151. package/dist/handsontable.full.min.js +143 -142
  152. package/dist/handsontable.js +28270 -24105
  153. package/dist/handsontable.min.css +8 -11
  154. package/dist/handsontable.min.js +3 -3
  155. package/dist/languages/all.js +69 -38
  156. package/dist/languages/all.min.js +1 -1
  157. package/dist/languages/ar-AR.js +167 -0
  158. package/dist/languages/ar-AR.min.js +1 -0
  159. package/dist/languages/de-CH.js +32 -33
  160. package/dist/languages/de-CH.min.js +1 -1
  161. package/dist/languages/de-DE.js +5 -6
  162. package/dist/languages/de-DE.min.js +1 -1
  163. package/dist/languages/en-US.js +5 -6
  164. package/dist/languages/en-US.min.js +1 -1
  165. package/dist/languages/es-MX.js +5 -6
  166. package/dist/languages/es-MX.min.js +1 -1
  167. package/dist/languages/fr-FR.js +5 -6
  168. package/dist/languages/fr-FR.min.js +1 -1
  169. package/dist/languages/it-IT.js +5 -6
  170. package/dist/languages/it-IT.min.js +1 -1
  171. package/dist/languages/ja-JP.js +5 -6
  172. package/dist/languages/ja-JP.min.js +1 -1
  173. package/dist/languages/ko-KR.js +37 -42
  174. package/dist/languages/ko-KR.min.js +1 -1
  175. package/dist/languages/lv-LV.js +4 -6
  176. package/dist/languages/lv-LV.min.js +1 -1
  177. package/dist/languages/nb-NO.js +4 -6
  178. package/dist/languages/nb-NO.min.js +1 -1
  179. package/dist/languages/nl-NL.js +4 -6
  180. package/dist/languages/nl-NL.min.js +1 -1
  181. package/dist/languages/pl-PL.js +4 -6
  182. package/dist/languages/pl-PL.min.js +1 -1
  183. package/dist/languages/pt-BR.js +4 -6
  184. package/dist/languages/pt-BR.min.js +1 -1
  185. package/dist/languages/ru-RU.js +4 -6
  186. package/dist/languages/ru-RU.min.js +1 -1
  187. package/dist/languages/zh-CN.js +4 -6
  188. package/dist/languages/zh-CN.min.js +1 -1
  189. package/dist/languages/zh-TW.js +25 -27
  190. package/dist/languages/zh-TW.min.js +1 -1
  191. package/editorManager.js +121 -268
  192. package/editorManager.mjs +129 -279
  193. package/editors/autocompleteEditor/autocompleteEditor.js +19 -17
  194. package/editors/autocompleteEditor/autocompleteEditor.mjs +19 -17
  195. package/editors/baseEditor/baseEditor.js +207 -36
  196. package/editors/baseEditor/baseEditor.mjs +202 -34
  197. package/editors/checkboxEditor/checkboxEditor.js +3 -3
  198. package/editors/checkboxEditor/checkboxEditor.mjs +3 -3
  199. package/editors/dateEditor/dateEditor.js +22 -9
  200. package/editors/dateEditor/dateEditor.mjs +23 -10
  201. package/editors/dropdownEditor/dropdownEditor.js +4 -4
  202. package/editors/dropdownEditor/dropdownEditor.mjs +4 -4
  203. package/editors/handsontableEditor/handsontableEditor.js +107 -56
  204. package/editors/handsontableEditor/handsontableEditor.mjs +107 -56
  205. package/editors/index.d.ts +3 -0
  206. package/editors/index.js +6 -0
  207. package/editors/index.mjs +3 -1
  208. package/editors/numericEditor/numericEditor.js +3 -3
  209. package/editors/numericEditor/numericEditor.mjs +3 -3
  210. package/editors/passwordEditor/passwordEditor.js +4 -4
  211. package/editors/passwordEditor/passwordEditor.mjs +4 -4
  212. package/editors/selectEditor/selectEditor.js +66 -111
  213. package/editors/selectEditor/selectEditor.mjs +67 -110
  214. package/editors/textEditor/caretPositioner.js +49 -0
  215. package/editors/textEditor/caretPositioner.mjs +42 -0
  216. package/editors/textEditor/textEditor.js +206 -182
  217. package/editors/textEditor/textEditor.mjs +200 -180
  218. package/editors/timeEditor/index.d.ts +1 -0
  219. package/editors/timeEditor/index.js +9 -0
  220. package/editors/timeEditor/index.mjs +1 -0
  221. package/editors/timeEditor/timeEditor.d.ts +7 -0
  222. package/editors/timeEditor/timeEditor.js +105 -0
  223. package/editors/timeEditor/timeEditor.mjs +84 -0
  224. package/eventManager.js +11 -5
  225. package/eventManager.mjs +11 -5
  226. package/helpers/data.js +1 -1
  227. package/helpers/data.mjs +1 -1
  228. package/helpers/dom/element.js +1 -1
  229. package/helpers/dom/element.mjs +1 -1
  230. package/helpers/feature.js +1 -1
  231. package/helpers/feature.mjs +1 -1
  232. package/helpers/mixed.js +3 -3
  233. package/helpers/mixed.mjs +3 -3
  234. package/helpers/number.js +4 -4
  235. package/helpers/number.mjs +4 -4
  236. package/helpers/object.js +1 -1
  237. package/helpers/object.mjs +1 -1
  238. package/i18n/languages/ar-AR.js +41 -0
  239. package/i18n/languages/ar-AR.mjs +17 -0
  240. package/i18n/languages/de-CH.js +1 -1
  241. package/i18n/languages/de-DE.js +1 -1
  242. package/i18n/languages/en-US.js +1 -1
  243. package/i18n/languages/es-MX.js +1 -1
  244. package/i18n/languages/fr-FR.js +1 -1
  245. package/i18n/languages/index.js +4 -0
  246. package/i18n/languages/index.mjs +2 -1
  247. package/i18n/languages/it-IT.js +1 -1
  248. package/i18n/languages/ja-JP.js +1 -1
  249. package/i18n/languages/ko-KR.js +1 -1
  250. package/i18n/languages/lv-LV.js +1 -1
  251. package/i18n/languages/nb-NO.js +1 -1
  252. package/i18n/languages/nl-NL.js +1 -1
  253. package/i18n/languages/pl-PL.js +1 -1
  254. package/i18n/languages/pt-BR.js +1 -1
  255. package/i18n/languages/ru-RU.js +1 -1
  256. package/i18n/languages/zh-CN.js +1 -1
  257. package/i18n/languages/zh-TW.js +1 -1
  258. package/i18n/registry.js +1 -1
  259. package/index.d.ts +4 -0
  260. package/index.js +1 -1
  261. package/languages/all.js +69 -38
  262. package/languages/ar-AR.js +167 -0
  263. package/languages/ar-AR.mjs +19 -0
  264. package/languages/de-CH.js +32 -33
  265. package/languages/de-DE.js +5 -6
  266. package/languages/en-US.js +5 -6
  267. package/languages/es-MX.js +5 -6
  268. package/languages/fr-FR.js +5 -6
  269. package/languages/index.js +69 -38
  270. package/languages/index.mjs +2 -1
  271. package/languages/it-IT.js +5 -6
  272. package/languages/ja-JP.js +5 -6
  273. package/languages/ko-KR.js +37 -42
  274. package/languages/lv-LV.js +4 -6
  275. package/languages/nb-NO.js +4 -6
  276. package/languages/nl-NL.js +4 -6
  277. package/languages/pl-PL.js +4 -6
  278. package/languages/pt-BR.js +4 -6
  279. package/languages/ru-RU.js +4 -6
  280. package/languages/zh-CN.js +4 -6
  281. package/languages/zh-TW.js +25 -27
  282. package/package.json +26 -8
  283. package/pluginHooks.d.ts +2 -0
  284. package/pluginHooks.js +58 -27
  285. package/pluginHooks.mjs +58 -27
  286. package/plugins/autoColumnSize/autoColumnSize.js +14 -9
  287. package/plugins/autoColumnSize/autoColumnSize.mjs +14 -9
  288. package/plugins/autoRowSize/autoRowSize.js +15 -10
  289. package/plugins/autoRowSize/autoRowSize.mjs +15 -10
  290. package/plugins/autofill/autofill.js +50 -34
  291. package/plugins/autofill/autofill.mjs +50 -33
  292. package/plugins/autofill/utils.js +10 -11
  293. package/plugins/autofill/utils.mjs +10 -10
  294. package/plugins/base/base.d.ts +8 -2
  295. package/plugins/base/base.js +68 -5
  296. package/plugins/base/base.mjs +67 -5
  297. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +4 -4
  298. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +4 -4
  299. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +4 -4
  300. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +4 -4
  301. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +4 -4
  302. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +4 -4
  303. package/plugins/collapsibleColumns/collapsibleColumns.js +49 -30
  304. package/plugins/collapsibleColumns/collapsibleColumns.mjs +49 -30
  305. package/plugins/columnSorting/columnSorting.d.ts +1 -1
  306. package/plugins/columnSorting/columnSorting.js +10 -12
  307. package/plugins/columnSorting/columnSorting.mjs +10 -11
  308. package/plugins/columnSorting/columnStatesManager.js +3 -3
  309. package/plugins/columnSorting/columnStatesManager.mjs +3 -3
  310. package/plugins/columnSummary/columnSummary.js +4 -4
  311. package/plugins/columnSummary/columnSummary.mjs +4 -4
  312. package/plugins/columnSummary/endpoints.js +1 -1
  313. package/plugins/columnSummary/endpoints.mjs +1 -1
  314. package/plugins/comments/commentEditor.js +24 -4
  315. package/plugins/comments/commentEditor.mjs +25 -5
  316. package/plugins/comments/comments.js +63 -104
  317. package/plugins/comments/comments.mjs +63 -102
  318. package/plugins/comments/displaySwitch.js +1 -1
  319. package/plugins/comments/displaySwitch.mjs +1 -1
  320. package/plugins/contextMenu/commandExecutor.js +1 -1
  321. package/plugins/contextMenu/commandExecutor.mjs +1 -1
  322. package/plugins/contextMenu/contextMenu.js +11 -7
  323. package/plugins/contextMenu/contextMenu.mjs +11 -7
  324. package/plugins/contextMenu/cursor.js +1 -1
  325. package/plugins/contextMenu/cursor.mjs +1 -1
  326. package/plugins/contextMenu/itemsFactory.js +1 -1
  327. package/plugins/contextMenu/itemsFactory.mjs +1 -1
  328. package/plugins/contextMenu/menu.js +223 -111
  329. package/plugins/contextMenu/menu.mjs +220 -112
  330. package/plugins/contextMenu/predefinedItems/alignment.js +1 -1
  331. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -1
  332. package/plugins/contextMenu/predefinedItems/columnLeft.js +13 -5
  333. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +11 -4
  334. package/plugins/contextMenu/predefinedItems/columnRight.js +10 -10
  335. package/plugins/contextMenu/predefinedItems/columnRight.mjs +9 -9
  336. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -1
  337. package/plugins/contextMenu/predefinedItems/redo.js +1 -1
  338. package/plugins/contextMenu/predefinedItems/removeColumn.js +1 -1
  339. package/plugins/contextMenu/predefinedItems/removeRow.js +1 -1
  340. package/plugins/contextMenu/predefinedItems/rowAbove.js +1 -1
  341. package/plugins/contextMenu/predefinedItems/rowBelow.js +1 -1
  342. package/plugins/contextMenu/predefinedItems/undo.js +1 -1
  343. package/plugins/contextMenu/predefinedItems.js +1 -1
  344. package/plugins/contextMenu/utils.js +2 -2
  345. package/plugins/contextMenu/utils.mjs +2 -2
  346. package/plugins/copyPaste/clipboardData.js +1 -1
  347. package/plugins/copyPaste/clipboardData.mjs +1 -1
  348. package/plugins/copyPaste/contextMenuItem/copy.js +1 -1
  349. package/plugins/copyPaste/contextMenuItem/cut.js +1 -1
  350. package/plugins/copyPaste/copyPaste.js +29 -19
  351. package/plugins/copyPaste/copyPaste.mjs +28 -19
  352. package/plugins/copyPaste/focusableElement.js +1 -1
  353. package/plugins/copyPaste/focusableElement.mjs +1 -1
  354. package/plugins/copyPaste/pasteEvent.js +6 -2
  355. package/plugins/copyPaste/pasteEvent.mjs +6 -2
  356. package/plugins/customBorders/contextMenuItem/bottom.js +1 -1
  357. package/plugins/customBorders/contextMenuItem/left.js +5 -4
  358. package/plugins/customBorders/contextMenuItem/left.mjs +4 -3
  359. package/plugins/customBorders/contextMenuItem/noBorders.js +1 -1
  360. package/plugins/customBorders/contextMenuItem/right.js +5 -4
  361. package/plugins/customBorders/contextMenuItem/right.mjs +4 -3
  362. package/plugins/customBorders/contextMenuItem/top.js +1 -1
  363. package/plugins/customBorders/customBorders.js +141 -85
  364. package/plugins/customBorders/customBorders.mjs +139 -82
  365. package/plugins/customBorders/utils.js +131 -27
  366. package/plugins/customBorders/utils.mjs +115 -27
  367. package/plugins/dragToScroll/dragToScroll.js +11 -6
  368. package/plugins/dragToScroll/dragToScroll.mjs +11 -6
  369. package/plugins/dropdownMenu/dropdownMenu.js +8 -7
  370. package/plugins/dropdownMenu/dropdownMenu.mjs +8 -7
  371. package/plugins/exportFile/dataProvider.js +1 -1
  372. package/plugins/exportFile/dataProvider.mjs +1 -1
  373. package/plugins/exportFile/exportFile.js +3 -3
  374. package/plugins/exportFile/exportFile.mjs +3 -3
  375. package/plugins/exportFile/types/_base.js +1 -1
  376. package/plugins/exportFile/types/_base.mjs +1 -1
  377. package/plugins/exportFile/types/csv.js +3 -3
  378. package/plugins/exportFile/types/csv.mjs +3 -3
  379. package/plugins/filters/component/_base.js +1 -1
  380. package/plugins/filters/component/_base.mjs +1 -1
  381. package/plugins/filters/component/actionBar.js +3 -3
  382. package/plugins/filters/component/actionBar.mjs +3 -3
  383. package/plugins/filters/component/condition.js +4 -4
  384. package/plugins/filters/component/condition.mjs +4 -4
  385. package/plugins/filters/component/operators.js +3 -3
  386. package/plugins/filters/component/operators.mjs +3 -3
  387. package/plugins/filters/component/value.js +4 -4
  388. package/plugins/filters/component/value.mjs +4 -4
  389. package/plugins/filters/condition/beginsWith.js +1 -1
  390. package/plugins/filters/condition/between.js +1 -1
  391. package/plugins/filters/condition/contains.js +1 -1
  392. package/plugins/filters/condition/date/after.js +1 -1
  393. package/plugins/filters/condition/date/before.js +1 -1
  394. package/plugins/filters/condition/date/today.js +1 -1
  395. package/plugins/filters/condition/date/tomorrow.js +1 -1
  396. package/plugins/filters/condition/date/yesterday.js +1 -1
  397. package/plugins/filters/condition/empty.js +1 -1
  398. package/plugins/filters/condition/endsWith.js +1 -1
  399. package/plugins/filters/condition/equal.js +1 -1
  400. package/plugins/filters/condition/greaterThan.js +1 -1
  401. package/plugins/filters/condition/greaterThanOrEqual.js +1 -1
  402. package/plugins/filters/condition/lessThan.js +1 -1
  403. package/plugins/filters/condition/lessThanOrEqual.js +1 -1
  404. package/plugins/filters/condition/none.js +1 -1
  405. package/plugins/filters/condition/notBetween.js +1 -1
  406. package/plugins/filters/condition/notContains.js +1 -1
  407. package/plugins/filters/condition/notEmpty.js +1 -1
  408. package/plugins/filters/condition/notEqual.js +1 -1
  409. package/plugins/filters/conditionCollection.js +1 -1
  410. package/plugins/filters/conditionCollection.mjs +1 -1
  411. package/plugins/filters/conditionUpdateObserver.js +1 -1
  412. package/plugins/filters/conditionUpdateObserver.mjs +1 -1
  413. package/plugins/filters/dataFilter.js +1 -1
  414. package/plugins/filters/dataFilter.mjs +1 -1
  415. package/plugins/filters/filters.js +12 -9
  416. package/plugins/filters/filters.mjs +12 -9
  417. package/plugins/filters/logicalOperations/conjunction.js +1 -1
  418. package/plugins/filters/logicalOperations/disjunction.js +1 -1
  419. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +1 -1
  420. package/plugins/filters/ui/_base.js +2 -2
  421. package/plugins/filters/ui/_base.mjs +1 -1
  422. package/plugins/filters/ui/input.js +4 -4
  423. package/plugins/filters/ui/input.mjs +4 -4
  424. package/plugins/filters/ui/link.js +4 -4
  425. package/plugins/filters/ui/link.mjs +4 -4
  426. package/plugins/filters/ui/multipleSelect.js +19 -32
  427. package/plugins/filters/ui/multipleSelect.mjs +19 -32
  428. package/plugins/filters/ui/radioInput.js +4 -4
  429. package/plugins/filters/ui/radioInput.mjs +4 -4
  430. package/plugins/filters/ui/select.js +5 -5
  431. package/plugins/filters/ui/select.mjs +5 -5
  432. package/plugins/formulas/engine/register.js +1 -1
  433. package/plugins/formulas/engine/register.mjs +1 -1
  434. package/plugins/formulas/engine/settings.js +2 -2
  435. package/plugins/formulas/engine/settings.mjs +2 -2
  436. package/plugins/formulas/formulas.js +10 -10
  437. package/plugins/formulas/formulas.mjs +10 -10
  438. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +1 -1
  439. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +3 -3
  440. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +2 -2
  441. package/plugins/hiddenColumns/hiddenColumns.js +10 -5
  442. package/plugins/hiddenColumns/hiddenColumns.mjs +10 -5
  443. package/plugins/hiddenRows/contextMenuItem/hideRow.js +1 -1
  444. package/plugins/hiddenRows/contextMenuItem/showRow.js +3 -3
  445. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +2 -2
  446. package/plugins/hiddenRows/hiddenRows.js +10 -5
  447. package/plugins/hiddenRows/hiddenRows.mjs +10 -5
  448. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +2 -2
  449. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
  450. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +2 -2
  451. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
  452. package/plugins/manualColumnFreeze/manualColumnFreeze.js +26 -13
  453. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +26 -13
  454. package/plugins/manualColumnMove/manualColumnMove.js +73 -62
  455. package/plugins/manualColumnMove/manualColumnMove.mjs +74 -63
  456. package/plugins/manualColumnMove/ui/_base.js +26 -13
  457. package/plugins/manualColumnMove/ui/_base.mjs +25 -13
  458. package/plugins/manualColumnMove/ui/backlight.js +4 -4
  459. package/plugins/manualColumnMove/ui/backlight.mjs +4 -4
  460. package/plugins/manualColumnMove/ui/guideline.js +4 -4
  461. package/plugins/manualColumnMove/ui/guideline.mjs +4 -4
  462. package/plugins/manualColumnResize/manualColumnResize.js +38 -22
  463. package/plugins/manualColumnResize/manualColumnResize.mjs +38 -22
  464. package/plugins/manualRowMove/manualRowMove.js +27 -17
  465. package/plugins/manualRowMove/manualRowMove.mjs +27 -17
  466. package/plugins/manualRowMove/ui/_base.js +1 -1
  467. package/plugins/manualRowMove/ui/_base.mjs +1 -1
  468. package/plugins/manualRowMove/ui/backlight.js +4 -4
  469. package/plugins/manualRowMove/ui/backlight.mjs +4 -4
  470. package/plugins/manualRowMove/ui/guideline.js +4 -4
  471. package/plugins/manualRowMove/ui/guideline.mjs +4 -4
  472. package/plugins/manualRowResize/manualRowResize.js +35 -20
  473. package/plugins/manualRowResize/manualRowResize.mjs +35 -20
  474. package/plugins/mergeCells/calculations/autofill.js +7 -6
  475. package/plugins/mergeCells/calculations/autofill.mjs +7 -5
  476. package/plugins/mergeCells/calculations/selection.js +10 -5
  477. package/plugins/mergeCells/calculations/selection.mjs +10 -5
  478. package/plugins/mergeCells/cellCoords.js +17 -5
  479. package/plugins/mergeCells/cellCoords.mjs +17 -4
  480. package/plugins/mergeCells/cellsCollection.js +28 -21
  481. package/plugins/mergeCells/cellsCollection.mjs +28 -20
  482. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +1 -1
  483. package/plugins/mergeCells/mergeCells.js +83 -50
  484. package/plugins/mergeCells/mergeCells.mjs +83 -48
  485. package/plugins/multiColumnSorting/multiColumnSorting.js +5 -7
  486. package/plugins/multiColumnSorting/multiColumnSorting.mjs +5 -6
  487. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +52 -58
  488. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +53 -58
  489. package/plugins/nestedHeaders/nestedHeaders.js +26 -19
  490. package/plugins/nestedHeaders/nestedHeaders.mjs +26 -19
  491. package/plugins/nestedHeaders/stateManager/headersTree.js +3 -3
  492. package/plugins/nestedHeaders/stateManager/headersTree.mjs +3 -3
  493. package/plugins/nestedHeaders/stateManager/index.js +3 -3
  494. package/plugins/nestedHeaders/stateManager/index.mjs +3 -3
  495. package/plugins/nestedHeaders/stateManager/sourceSettings.js +3 -3
  496. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +3 -3
  497. package/plugins/nestedHeaders/utils/ghostTable.js +1 -1
  498. package/plugins/nestedHeaders/utils/ghostTable.mjs +1 -1
  499. package/plugins/nestedRows/data/dataManager.js +2 -2
  500. package/plugins/nestedRows/data/dataManager.mjs +2 -2
  501. package/plugins/nestedRows/nestedRows.js +11 -5
  502. package/plugins/nestedRows/nestedRows.mjs +11 -5
  503. package/plugins/nestedRows/ui/_base.js +6 -2
  504. package/plugins/nestedRows/ui/_base.mjs +6 -2
  505. package/plugins/nestedRows/ui/collapsing.js +3 -3
  506. package/plugins/nestedRows/ui/collapsing.mjs +3 -3
  507. package/plugins/nestedRows/ui/contextMenu.js +3 -3
  508. package/plugins/nestedRows/ui/contextMenu.mjs +3 -3
  509. package/plugins/nestedRows/ui/headers.js +3 -3
  510. package/plugins/nestedRows/ui/headers.mjs +3 -3
  511. package/plugins/nestedRows/utils/rowMoveController.js +3 -5
  512. package/plugins/nestedRows/utils/rowMoveController.mjs +3 -4
  513. package/plugins/persistentState/persistentState.js +10 -5
  514. package/plugins/persistentState/persistentState.mjs +10 -5
  515. package/plugins/persistentState/storage.js +1 -1
  516. package/plugins/persistentState/storage.mjs +1 -1
  517. package/plugins/search/search.js +10 -5
  518. package/plugins/search/search.mjs +10 -5
  519. package/plugins/touchScroll/touchScroll.js +32 -26
  520. package/plugins/touchScroll/touchScroll.mjs +32 -25
  521. package/plugins/trimRows/trimRows.js +10 -5
  522. package/plugins/trimRows/trimRows.mjs +10 -5
  523. package/plugins/undoRedo/index.js +1 -1
  524. package/plugins/undoRedo/undoRedo.js +54 -48
  525. package/plugins/undoRedo/undoRedo.mjs +54 -47
  526. package/renderers/autocompleteRenderer/autocompleteRenderer.js +1 -3
  527. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +1 -2
  528. package/renderers/checkboxRenderer/checkboxRenderer.js +48 -43
  529. package/renderers/checkboxRenderer/checkboxRenderer.mjs +48 -41
  530. package/renderers/index.d.ts +4 -1
  531. package/renderers/index.js +6 -0
  532. package/renderers/index.mjs +3 -1
  533. package/renderers/numericRenderer/numericRenderer.js +1 -0
  534. package/renderers/numericRenderer/numericRenderer.mjs +1 -0
  535. package/renderers/timeRenderer/index.d.ts +1 -0
  536. package/renderers/timeRenderer/index.js +9 -0
  537. package/renderers/timeRenderer/index.mjs +1 -0
  538. package/renderers/timeRenderer/timeRenderer.d.ts +5 -0
  539. package/renderers/timeRenderer/timeRenderer.js +31 -0
  540. package/renderers/timeRenderer/timeRenderer.mjs +20 -0
  541. package/selection/highlight/highlight.js +3 -3
  542. package/selection/highlight/highlight.mjs +3 -3
  543. package/selection/highlight/types/activeHeader.js +2 -2
  544. package/selection/highlight/types/activeHeader.mjs +2 -2
  545. package/selection/highlight/types/area.js +2 -2
  546. package/selection/highlight/types/area.mjs +2 -2
  547. package/selection/highlight/types/cell.js +2 -2
  548. package/selection/highlight/types/cell.mjs +2 -2
  549. package/selection/highlight/types/customSelection.js +2 -2
  550. package/selection/highlight/types/customSelection.mjs +2 -2
  551. package/selection/highlight/types/fill.js +2 -2
  552. package/selection/highlight/types/fill.mjs +2 -2
  553. package/selection/highlight/types/header.js +2 -2
  554. package/selection/highlight/types/header.mjs +2 -2
  555. package/selection/highlight/types/index.js +2 -2
  556. package/selection/highlight/types/index.mjs +2 -2
  557. package/selection/highlight/visualSelection.js +17 -16
  558. package/selection/highlight/visualSelection.mjs +18 -17
  559. package/selection/mouseEventHandler.js +15 -10
  560. package/selection/mouseEventHandler.mjs +15 -9
  561. package/selection/range.js +5 -6
  562. package/selection/range.mjs +5 -6
  563. package/selection/selection.js +27 -20
  564. package/selection/selection.mjs +27 -18
  565. package/selection/transformation.js +5 -7
  566. package/selection/transformation.mjs +5 -6
  567. package/selection/utils.js +1 -1
  568. package/selection/utils.mjs +1 -1
  569. package/settings.d.ts +3 -1
  570. package/shortcuts/context.d.ts +20 -0
  571. package/shortcuts/context.js +296 -0
  572. package/shortcuts/context.mjs +268 -0
  573. package/shortcuts/index.d.ts +1 -0
  574. package/shortcuts/index.js +8 -0
  575. package/shortcuts/index.mjs +1 -0
  576. package/shortcuts/keyObserver.js +67 -0
  577. package/shortcuts/keyObserver.mjs +58 -0
  578. package/shortcuts/manager.d.ts +10 -0
  579. package/shortcuts/manager.js +183 -0
  580. package/shortcuts/manager.mjs +174 -0
  581. package/shortcuts/recorder.js +183 -0
  582. package/shortcuts/recorder.mjs +171 -0
  583. package/shortcuts/utils.js +77 -0
  584. package/shortcuts/utils.mjs +54 -0
  585. package/tableView.js +138 -80
  586. package/tableView.mjs +138 -70
  587. package/translations/changesObservable/observable.js +1 -1
  588. package/translations/changesObservable/observable.mjs +1 -1
  589. package/translations/changesObservable/observer.js +1 -2
  590. package/translations/changesObservable/observer.mjs +1 -2
  591. package/translations/indexMapper.d.ts +1 -0
  592. package/translations/indexMapper.js +25 -2
  593. package/translations/indexMapper.mjs +24 -2
  594. package/translations/mapCollections/aggregatedCollection.js +3 -3
  595. package/translations/mapCollections/aggregatedCollection.mjs +3 -3
  596. package/translations/mapCollections/mapCollection.js +1 -1
  597. package/translations/mapCollections/mapCollection.mjs +1 -1
  598. package/translations/maps/hidingMap.js +5 -3
  599. package/translations/maps/hidingMap.mjs +5 -3
  600. package/translations/maps/indexMap.js +3 -1
  601. package/translations/maps/indexMap.mjs +3 -1
  602. package/translations/maps/indexesSequence.js +6 -4
  603. package/translations/maps/indexesSequence.mjs +6 -4
  604. package/translations/maps/linkedPhysicalIndexToValueMap.js +6 -4
  605. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +6 -4
  606. package/translations/maps/physicalIndexToValueMap.js +6 -4
  607. package/translations/maps/physicalIndexToValueMap.mjs +6 -4
  608. package/translations/maps/trimmingMap.js +5 -3
  609. package/translations/maps/trimmingMap.mjs +5 -3
  610. package/utils/dataStructures/linkedList.js +3 -3
  611. package/utils/dataStructures/linkedList.mjs +3 -3
  612. package/utils/dataStructures/queue.js +1 -1
  613. package/utils/dataStructures/queue.mjs +1 -1
  614. package/utils/dataStructures/stack.js +1 -1
  615. package/utils/dataStructures/stack.mjs +1 -1
  616. package/utils/dataStructures/tree.js +3 -3
  617. package/utils/dataStructures/tree.mjs +3 -3
  618. package/utils/dataStructures/uniqueMap.js +14 -1
  619. package/utils/dataStructures/uniqueMap.mjs +14 -1
  620. package/utils/dataStructures/uniqueSet.js +9 -0
  621. package/utils/dataStructures/uniqueSet.mjs +9 -0
  622. package/utils/ghostTable.js +14 -3
  623. package/utils/ghostTable.mjs +15 -4
  624. package/utils/interval.js +1 -1
  625. package/utils/interval.mjs +1 -1
  626. package/utils/samplesGenerator.js +1 -1
  627. package/utils/samplesGenerator.mjs +1 -1
  628. package/3rdparty/walkontable/src/core.js +0 -309
  629. package/3rdparty/walkontable/src/core.mjs +0 -293
  630. package/3rdparty/walkontable/src/overlay/registerer.js +0 -70
  631. package/3rdparty/walkontable/src/overlay/registerer.mjs +0 -57
  632. package/utils/keyStateObserver.js +0 -121
  633. package/utils/keyStateObserver.mjs +0 -103
package/editorManager.mjs CHANGED
@@ -1,3 +1,17 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+
3
+ 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."); }
4
+
5
+ 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); }
6
+
7
+ 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; }
8
+
9
+ 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; }
10
+
11
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
12
+
13
+ import "core-js/modules/es.array.includes.js";
14
+ import "core-js/modules/es.string.includes.js";
1
15
  import "core-js/modules/es.array.iterator.js";
2
16
  import "core-js/modules/es.object.to-string.js";
3
17
  import "core-js/modules/es.string.iterator.js";
@@ -11,31 +25,19 @@ import "core-js/modules/es.function.name.js";
11
25
  import "core-js/modules/es.array.from.js";
12
26
  import "core-js/modules/es.regexp.exec.js";
13
27
 
14
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
15
-
16
- 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."); }
17
-
18
- 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); }
19
-
20
- 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; }
21
-
22
- 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; }
23
-
24
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
25
-
26
28
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
27
29
 
28
30
  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); } }
29
31
 
30
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
32
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
31
33
 
32
- import { CellCoords } from "./3rdparty/walkontable/src/index.mjs";
33
- import { KEY_CODES, isFunctionKey, isCtrlMetaKey } from "./helpers/unicode.mjs";
34
- import { stopImmediatePropagation, isImmediatePropagationStopped } from "./helpers/dom/event.mjs";
34
+ import { isFunctionKey, isCtrlMetaKey } from "./helpers/unicode.mjs";
35
+ import { stopImmediatePropagation } from "./helpers/dom/event.mjs";
35
36
  import { getEditorInstance } from "./editors/registry.mjs";
36
37
  import EventManager from "./eventManager.mjs";
37
- import { EDITOR_STATE } from "./editors/baseEditor/index.mjs";
38
- import { getParentWindow } from "./helpers/dom/element.mjs";
38
+ import { isDefined } from "./helpers/mixed.mjs";
39
+ export var SHORTCUTS_GROUP_NAVIGATION = 'editorManager.navigation';
40
+ export var SHORTCUTS_GROUP_EDITOR = 'editorManager.handlingEditor';
39
41
 
40
42
  var EditorManager = /*#__PURE__*/function () {
41
43
  /**
@@ -110,44 +112,97 @@ var EditorManager = /*#__PURE__*/function () {
110
112
  */
111
113
 
112
114
  this.cellProperties = void 0;
113
- /**
114
- * Keeps last keyCode pressed from the keydown event.
115
- *
116
- * @type {number}
117
- */
118
-
119
- this.lastKeyCode = void 0;
115
+ var shortcutManager = this.instance.getShortcutManager();
116
+ shortcutManager.addContext('editor');
117
+ this.registerShortcuts();
120
118
  this.instance.addHook('afterDocumentKeyDown', function (event) {
121
119
  return _this.onAfterDocumentKeyDown(event);
122
- });
123
- var frame = this.instance.rootWindow;
124
-
125
- while (frame) {
126
- this.eventManager.addEventListener(frame.document.documentElement, 'keydown', function (event) {
127
- if (!_this.destroyed) {
128
- _this.instance.runHooks('afterDocumentKeyDown', event);
129
- }
130
- });
131
- frame = getParentWindow(frame);
132
- } // Open editor when text composition is started (IME editor)
133
-
120
+ }); // Open editor when text composition is started (IME editor)
134
121
 
135
122
  this.eventManager.addEventListener(this.instance.rootDocument.documentElement, 'compositionstart', function (event) {
136
123
  if (!_this.destroyed && _this.activeEditor && !_this.activeEditor.isOpened() && _this.instance.isListening()) {
137
124
  _this.openEditor('', event);
138
125
  }
139
126
  });
140
- this.instance.view.wt.update('onCellDblClick', function (event, coords, elem) {
127
+
128
+ this.instance.view._wt.update('onCellDblClick', function (event, coords, elem) {
141
129
  return _this.onCellDblClick(event, coords, elem);
142
130
  });
143
131
  }
144
132
  /**
145
- * Lock the editor from being prepared and closed. Locking the editor prevents its closing and
146
- * reinitialized after selecting the new cell. This feature is necessary for a mobile editor.
133
+ * Register shortcuts responsible for handling some actions related to an editor.
134
+ *
135
+ * @private
147
136
  */
148
137
 
149
138
 
150
139
  _createClass(EditorManager, [{
140
+ key: "registerShortcuts",
141
+ value: function registerShortcuts() {
142
+ var _this2 = this;
143
+
144
+ var shortcutManager = this.instance.getShortcutManager();
145
+ var gridContext = shortcutManager.getContext('grid');
146
+ var editorContext = shortcutManager.getContext('editor');
147
+ var config = {
148
+ group: SHORTCUTS_GROUP_EDITOR
149
+ };
150
+ editorContext.addShortcuts([{
151
+ keys: [['Enter'], ['Enter', 'Shift'], ['Enter', 'Control/Meta'], ['Enter', 'Control/Meta', 'Shift']],
152
+ callback: function callback(event, keys) {
153
+ _this2.closeEditorAndSaveChanges(shortcutManager.isCtrlPressed());
154
+
155
+ _this2.moveSelectionAfterEnter(keys.includes('shift'));
156
+ }
157
+ }, {
158
+ keys: [['Escape'], ['Escape', 'Control/Meta']],
159
+ callback: function callback() {
160
+ _this2.closeEditorAndRestoreOriginalValue(shortcutManager.isCtrlPressed());
161
+
162
+ _this2.activeEditor.focus();
163
+ }
164
+ }], config);
165
+ gridContext.addShortcuts([{
166
+ keys: [['F2']],
167
+ callback: function callback(event) {
168
+ if (_this2.activeEditor) {
169
+ _this2.activeEditor.enableFullEditMode();
170
+ }
171
+
172
+ _this2.openEditor(null, event);
173
+ }
174
+ }, {
175
+ keys: [['Backspace'], ['Delete']],
176
+ callback: function callback() {
177
+ _this2.instance.emptySelectedCells();
178
+
179
+ _this2.prepareEditor();
180
+ }
181
+ }, {
182
+ keys: [['Enter'], ['Enter', 'Shift']],
183
+ callback: function callback(event, keys) {
184
+ if (_this2.instance.getSettings().enterBeginsEditing) {
185
+ if (_this2.cellProperties.readOnly) {
186
+ _this2.moveSelectionAfterEnter();
187
+ } else if (_this2.activeEditor) {
188
+ _this2.activeEditor.enableFullEditMode();
189
+
190
+ _this2.openEditor(null, event);
191
+ }
192
+ } else {
193
+ _this2.moveSelectionAfterEnter(keys.includes('shift'));
194
+ }
195
+
196
+ stopImmediatePropagation(event); // required by HandsontableEditor
197
+ }
198
+ }], config);
199
+ }
200
+ /**
201
+ * Lock the editor from being prepared and closed. Locking the editor prevents its closing and
202
+ * reinitialized after selecting the new cell. This feature is necessary for a mobile editor.
203
+ */
204
+
205
+ }, {
151
206
  key: "lockEditor",
152
207
  value: function lockEditor() {
153
208
  this.lock = true;
@@ -194,7 +249,7 @@ var EditorManager = /*#__PURE__*/function () {
194
249
  }, {
195
250
  key: "prepareEditor",
196
251
  value: function prepareEditor() {
197
- var _this2 = this;
252
+ var _this3 = this;
198
253
 
199
254
  if (this.lock) {
200
255
  return;
@@ -203,7 +258,7 @@ var EditorManager = /*#__PURE__*/function () {
203
258
  if (this.activeEditor && this.activeEditor.isWaiting()) {
204
259
  this.closeEditor(false, false, function (dataSaved) {
205
260
  if (dataSaved) {
206
- _this2.prepareEditor();
261
+ _this3.prepareEditor();
207
262
  }
208
263
  });
209
264
  return;
@@ -351,71 +406,6 @@ var EditorManager = /*#__PURE__*/function () {
351
406
  this.selection.transformStart(enterMoves.row, enterMoves.col, true);
352
407
  }
353
408
  }
354
- /**
355
- * Controls selection behaviour after clicking `arrow up`.
356
- *
357
- * @private
358
- * @param {boolean} isShiftPressed If `true`, then the selection will expand up.
359
- */
360
-
361
- }, {
362
- key: "moveSelectionUp",
363
- value: function moveSelectionUp(isShiftPressed) {
364
- if (isShiftPressed) {
365
- this.selection.transformEnd(-1, 0);
366
- } else {
367
- this.selection.transformStart(-1, 0);
368
- }
369
- }
370
- /**
371
- * Controls selection's behaviour after clicking `arrow down`.
372
- *
373
- * @private
374
- * @param {boolean} isShiftPressed If `true`, then the selection will expand down.
375
- */
376
-
377
- }, {
378
- key: "moveSelectionDown",
379
- value: function moveSelectionDown(isShiftPressed) {
380
- if (isShiftPressed) {
381
- // expanding selection down with shift
382
- this.selection.transformEnd(1, 0);
383
- } else {
384
- this.selection.transformStart(1, 0);
385
- }
386
- }
387
- /**
388
- * Controls selection's behaviour after clicking `arrow right`.
389
- *
390
- * @private
391
- * @param {boolean} isShiftPressed If `true`, then the selection will expand right.
392
- */
393
-
394
- }, {
395
- key: "moveSelectionRight",
396
- value: function moveSelectionRight(isShiftPressed) {
397
- if (isShiftPressed) {
398
- this.selection.transformEnd(0, this.instance.getDirectionFactor());
399
- } else {
400
- this.selection.transformStart(0, this.instance.getDirectionFactor());
401
- }
402
- }
403
- /**
404
- * Controls selection's behaviour after clicking `arrow left`.
405
- *
406
- * @private
407
- * @param {boolean} isShiftPressed If `true`, then the selection will expand left.
408
- */
409
-
410
- }, {
411
- key: "moveSelectionLeft",
412
- value: function moveSelectionLeft(isShiftPressed) {
413
- if (isShiftPressed) {
414
- this.selection.transformEnd(0, -1 * this.instance.getDirectionFactor());
415
- } else {
416
- this.selection.transformStart(0, -1 * this.instance.getDirectionFactor());
417
- }
418
- }
419
409
  /**
420
410
  * OnAfterDocumentKeyDown callback.
421
411
  *
@@ -426,24 +416,19 @@ var EditorManager = /*#__PURE__*/function () {
426
416
  }, {
427
417
  key: "onAfterDocumentKeyDown",
428
418
  value: function onAfterDocumentKeyDown(event) {
419
+ var _this4 = this;
420
+
429
421
  if (!this.instance.isListening()) {
430
422
  return;
431
423
  }
432
424
 
433
- this.instance.runHooks('beforeKeyDown', event);
434
425
  var keyCode = event.keyCode; // keyCode 229 aka 'uninitialized' doesn't take into account with editors. This key code is produced when unfinished
435
426
  // character is entering (using IME editor). It is fired mainly on linux (ubuntu) with installed ibus-pinyin package.
436
427
 
437
- if (this.destroyed || keyCode === 229) {
438
- return;
439
- }
440
-
441
- if (isImmediatePropagationStopped(event)) {
428
+ if (keyCode === 229) {
442
429
  return;
443
430
  }
444
431
 
445
- this.lastKeyCode = keyCode;
446
-
447
432
  if (!this.selection.isSelected()) {
448
433
  return;
449
434
  } // catch CTRL but not right ALT (which in some systems triggers ALT+CTRL)
@@ -453,172 +438,37 @@ var EditorManager = /*#__PURE__*/function () {
453
438
 
454
439
  if (this.activeEditor && !this.activeEditor.isWaiting()) {
455
440
  if (!isFunctionKey(keyCode) && !isCtrlMetaKey(keyCode) && !isCtrlPressed && !this.isEditorOpened()) {
456
- this.openEditor('', event);
457
- return;
458
- }
459
- }
460
-
461
- var isShiftPressed = event.shiftKey;
462
- var rangeModifier = isShiftPressed ? this.selection.setRangeEnd : this.selection.setRangeStart;
463
- var tabMoves;
464
-
465
- switch (keyCode) {
466
- case KEY_CODES.A:
467
- if (!this.isEditorOpened() && isCtrlPressed) {
468
- this.instance.selectAll();
469
- event.preventDefault();
470
- event.stopPropagation();
471
- }
472
-
473
- break;
474
-
475
- case KEY_CODES.ARROW_UP:
476
- if (this.isEditorOpened() && !this.activeEditor.isWaiting()) {
477
- this.closeEditorAndSaveChanges(isCtrlPressed);
478
- }
479
-
480
- this.moveSelectionUp(isShiftPressed);
481
- event.preventDefault();
482
- event.stopPropagation();
483
- break;
484
-
485
- case KEY_CODES.ARROW_DOWN:
486
- if (this.isEditorOpened() && !this.activeEditor.isWaiting()) {
487
- this.closeEditorAndSaveChanges(isCtrlPressed);
488
- }
489
-
490
- this.moveSelectionDown(isShiftPressed);
491
- event.preventDefault();
492
- event.stopPropagation();
493
- break;
494
-
495
- case KEY_CODES.ARROW_RIGHT:
496
- if (this.isEditorOpened() && !this.activeEditor.isWaiting()) {
497
- this.closeEditorAndSaveChanges(isCtrlPressed);
498
- }
499
-
500
- this.moveSelectionRight(isShiftPressed);
501
- event.preventDefault();
502
- event.stopPropagation();
503
- break;
504
-
505
- case KEY_CODES.ARROW_LEFT:
506
- if (this.isEditorOpened() && !this.activeEditor.isWaiting()) {
507
- this.closeEditorAndSaveChanges(isCtrlPressed);
508
- }
509
-
510
- this.moveSelectionLeft(isShiftPressed);
511
- event.preventDefault();
512
- event.stopPropagation();
513
- break;
514
-
515
- case KEY_CODES.TAB:
516
- tabMoves = typeof this.tableMeta.tabMoves === 'function' ? this.tableMeta.tabMoves(event) : this.tableMeta.tabMoves;
517
-
518
- if (isShiftPressed) {
519
- // move selection left
520
- this.selection.transformStart(-tabMoves.row, -tabMoves.col);
521
- } else {
522
- // move selection right (add a new column if needed)
523
- this.selection.transformStart(tabMoves.row, tabMoves.col, true);
524
- }
525
-
526
- event.preventDefault();
527
- event.stopPropagation();
528
- break;
529
-
530
- case KEY_CODES.BACKSPACE:
531
- case KEY_CODES.DELETE:
532
- this.instance.emptySelectedCells();
533
- this.prepareEditor();
534
- event.preventDefault();
535
- break;
536
-
537
- case KEY_CODES.F2:
538
- /* F2 */
539
- if (this.activeEditor) {
540
- this.activeEditor.enableFullEditMode();
541
- }
542
-
543
- this.openEditor(null, event);
544
- event.preventDefault(); // prevent Opera from opening 'Go to Page dialog'
545
-
546
- break;
547
-
548
- case KEY_CODES.ENTER:
549
- /* return/enter */
550
- if (this.isEditorOpened()) {
551
- if (this.activeEditor && this.activeEditor.state !== EDITOR_STATE.WAITING) {
552
- this.closeEditorAndSaveChanges(isCtrlPressed);
441
+ var shortcutManager = this.instance.getShortcutManager();
442
+ var editorContext = shortcutManager.getContext('editor');
443
+ var runOnlySelectedConfig = {
444
+ runOnlyIf: function runOnlyIf() {
445
+ return isDefined(_this4.instance.getSelected());
446
+ },
447
+ group: SHORTCUTS_GROUP_NAVIGATION
448
+ };
449
+ editorContext.addShortcuts([{
450
+ keys: [['ArrowUp']],
451
+ callback: function callback() {
452
+ _this4.instance.selection.transformStart(-1, 0);
553
453
  }
554
-
555
- this.moveSelectionAfterEnter(isShiftPressed);
556
- } else if (this.instance.getSettings().enterBeginsEditing) {
557
- if (this.cellProperties.readOnly) {
558
- this.moveSelectionAfterEnter();
559
- } else if (this.activeEditor) {
560
- this.activeEditor.enableFullEditMode();
561
- this.openEditor(null, event);
454
+ }, {
455
+ keys: [['ArrowDown']],
456
+ callback: function callback() {
457
+ _this4.instance.selection.transformStart(1, 0);
562
458
  }
563
- } else {
564
- this.moveSelectionAfterEnter(isShiftPressed);
565
- }
566
-
567
- event.preventDefault(); // don't add newline to field
568
-
569
- stopImmediatePropagation(event); // required by HandsontableEditor
570
-
571
- break;
572
-
573
- case KEY_CODES.ESCAPE:
574
- if (this.isEditorOpened()) {
575
- this.closeEditorAndRestoreOriginalValue(isCtrlPressed);
576
- this.activeEditor.focus();
577
- }
578
-
579
- event.preventDefault();
580
- break;
581
-
582
- case KEY_CODES.HOME:
583
- if (event.ctrlKey || event.metaKey) {
584
- rangeModifier.call(this.selection, new CellCoords(this.instance.rowIndexMapper.getFirstNotHiddenIndex(0, 1), this.selection.selectedRange.current().from.col));
585
- } else {
586
- rangeModifier.call(this.selection, new CellCoords(this.selection.selectedRange.current().from.row, this.instance.columnIndexMapper.getFirstNotHiddenIndex(0, 1)));
587
- }
588
-
589
- event.preventDefault(); // don't scroll the window
590
-
591
- event.stopPropagation();
592
- break;
593
-
594
- case KEY_CODES.END:
595
- if (event.ctrlKey || event.metaKey) {
596
- rangeModifier.call(this.selection, new CellCoords(this.instance.rowIndexMapper.getFirstNotHiddenIndex(this.instance.countRows() - 1, -1), this.selection.selectedRange.current().from.col));
597
- } else {
598
- rangeModifier.call(this.selection, new CellCoords(this.selection.selectedRange.current().from.row, this.instance.columnIndexMapper.getFirstNotHiddenIndex(this.instance.countCols() - 1, -1)));
599
- }
600
-
601
- event.preventDefault(); // don't scroll the window
602
-
603
- event.stopPropagation();
604
- break;
605
-
606
- case KEY_CODES.PAGE_UP:
607
- this.selection.transformStart(-this.instance.countVisibleRows(), 0);
608
- event.preventDefault(); // don't page up the window
609
-
610
- event.stopPropagation();
611
- break;
612
-
613
- case KEY_CODES.PAGE_DOWN:
614
- this.selection.transformStart(this.instance.countVisibleRows(), 0);
615
- event.preventDefault(); // don't page down the window
616
-
617
- event.stopPropagation();
618
- break;
619
-
620
- default:
621
- break;
459
+ }, {
460
+ keys: [['ArrowLeft']],
461
+ callback: function callback() {
462
+ _this4.instance.selection.transformStart(0, -1 * _this4.instance.getDirectionFactor());
463
+ }
464
+ }, {
465
+ keys: [['ArrowRight']],
466
+ callback: function callback() {
467
+ _this4.instance.selection.transformStart(0, _this4.instance.getDirectionFactor());
468
+ }
469
+ }], runOnlySelectedConfig);
470
+ this.openEditor('', event);
471
+ }
622
472
  }
623
473
  }
624
474
  /**
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
4
 
5
5
  require("core-js/modules/es.object.set-prototype-of.js");
6
6
 
@@ -61,13 +61,13 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
61
61
 
62
62
  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); } }
63
63
 
64
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
64
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
65
65
 
66
- function _get(target, property, receiver) { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } 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(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }
66
+ function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } 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); }
67
67
 
68
68
  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
69
69
 
70
- 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 } }); if (superClass) _setPrototypeOf(subClass, superClass); }
70
+ 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); }
71
71
 
72
72
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
73
73
 
@@ -259,6 +259,9 @@ var AutocompleteEditor = /*#__PURE__*/function (_HandsontableEditor) {
259
259
  scrollbarWidth += 15; // default scroll bar width if scroll bars are visible only when scrolling
260
260
  }
261
261
 
262
+ this.addHook('beforeKeyDown', function (event) {
263
+ return _this3.onBeforeKeyDown(event);
264
+ });
262
265
  choicesListHot.updateSettings({
263
266
  colWidths: trimDropdown ? [(0, _element.outerWidth)(this.TEXTAREA) - 2] : void 0,
264
267
  width: trimDropdown ? (0, _element.outerWidth)(this.TEXTAREA) + scrollbarWidth : void 0,
@@ -420,9 +423,9 @@ var AutocompleteEditor = /*#__PURE__*/function (_HandsontableEditor) {
420
423
  var textareaOffset = (0, _element.offset)(this.TEXTAREA);
421
424
  var textareaHeight = (0, _element.outerHeight)(this.TEXTAREA);
422
425
  var dropdownHeight = this.getDropdownHeight();
423
- var trimmingContainer = (0, _element.getTrimmingContainer)(this.hot.view.wt.wtTable.TABLE);
426
+ var trimmingContainer = (0, _element.getTrimmingContainer)(this.hot.view._wt.wtTable.TABLE);
424
427
  var trimmingContainerScrollTop = trimmingContainer.scrollTop;
425
- var headersHeight = (0, _element.outerHeight)(this.hot.view.wt.wtTable.THEAD);
428
+ var headersHeight = (0, _element.outerHeight)(this.hot.view._wt.wtTable.THEAD);
426
429
  var containerOffset = {
427
430
  row: 0,
428
431
  col: 0
@@ -463,7 +466,7 @@ var AutocompleteEditor = /*#__PURE__*/function (_HandsontableEditor) {
463
466
  var height = null;
464
467
 
465
468
  do {
466
- lastRowHeight = this.htEditor.getRowHeight(i) || this.htEditor.view.wt.wtSettings.settings.defaultRowHeight;
469
+ lastRowHeight = this.htEditor.getRowHeight(i) || this.htEditor.view._wt.getSetting('defaultRowHeight');
467
470
  tempHeight += lastRowHeight;
468
471
  i += 1;
469
472
  } while (tempHeight < spaceAvailable);
@@ -502,12 +505,8 @@ var AutocompleteEditor = /*#__PURE__*/function (_HandsontableEditor) {
502
505
  key: "unflipDropdown",
503
506
  value: function unflipDropdown() {
504
507
  var dropdownStyle = this.htEditor.rootElement.style;
505
-
506
- if (dropdownStyle.position === 'absolute') {
507
- dropdownStyle.position = '';
508
- dropdownStyle.top = '';
509
- }
510
-
508
+ dropdownStyle.position = 'absolute';
509
+ dropdownStyle.top = '';
511
510
  this.htEditor.flipped = void 0;
512
511
  }
513
512
  /**
@@ -525,7 +524,8 @@ var AutocompleteEditor = /*#__PURE__*/function (_HandsontableEditor) {
525
524
  height: this.getDropdownHeight(),
526
525
  width: trimDropdown ? void 0 : currentDropdownWidth
527
526
  });
528
- this.htEditor.view.wt.wtTable.alignOverlaysWithTrimmingContainer();
527
+
528
+ this.htEditor.view._wt.wtTable.alignOverlaysWithTrimmingContainer();
529
529
  }
530
530
  /**
531
531
  * Sets new height of the internal Handsontable's instance.
@@ -647,7 +647,11 @@ var AutocompleteEditor = /*#__PURE__*/function (_HandsontableEditor) {
647
647
  priv.skipOne = false;
648
648
 
649
649
  if ((0, _unicode.isPrintableChar)(event.keyCode) || event.keyCode === _unicode.KEY_CODES.BACKSPACE || event.keyCode === _unicode.KEY_CODES.DELETE || event.keyCode === _unicode.KEY_CODES.INSERT) {
650
- var timeOffset = 0; // on ctl+c / cmd+c don't update suggestion list
650
+ // for Windows 10 + FF86 there is need to add delay to make sure that the value taken from
651
+ // the textarea is the freshest value. Otherwise the list of choices does not update correctly (see #7570).
652
+ // On the more modern version of the FF (~ >=91) it seems that the issue is not present or it is
653
+ // more difficult to induce.
654
+ var timeOffset = 10; // on ctl+c / cmd+c don't update suggestion list
651
655
 
652
656
  if (event.keyCode === _unicode.KEY_CODES.C && (event.ctrlKey || event.metaKey)) {
653
657
  return;
@@ -665,8 +669,6 @@ var AutocompleteEditor = /*#__PURE__*/function (_HandsontableEditor) {
665
669
  }, timeOffset);
666
670
  }
667
671
  }
668
-
669
- _get(_getPrototypeOf(AutocompleteEditor.prototype), "onBeforeKeyDown", this).call(this, event);
670
672
  }
671
673
  /**
672
674
  * Filters and sorts by relevance.