handsontable 0.0.0-next-a1e4b4f-20230628 → 0.0.0-next-e697250-20230707

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


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

Files changed (456) hide show
  1. package/3rdparty/walkontable/src/cell/coords.d.ts +6 -1
  2. package/3rdparty/walkontable/src/cell/coords.js +50 -28
  3. package/3rdparty/walkontable/src/cell/coords.mjs +50 -28
  4. package/3rdparty/walkontable/src/cell/range.d.ts +9 -2
  5. package/3rdparty/walkontable/src/cell/range.js +69 -36
  6. package/3rdparty/walkontable/src/cell/range.mjs +68 -35
  7. package/3rdparty/walkontable/src/event.js +3 -5
  8. package/3rdparty/walkontable/src/event.mjs +3 -5
  9. package/3rdparty/walkontable/src/overlay/_base.js +6 -7
  10. package/3rdparty/walkontable/src/overlay/_base.mjs +6 -7
  11. package/3rdparty/walkontable/src/overlay/bottom.js +6 -7
  12. package/3rdparty/walkontable/src/overlay/bottom.mjs +6 -7
  13. package/3rdparty/walkontable/src/overlay/top.js +6 -7
  14. package/3rdparty/walkontable/src/overlay/top.mjs +6 -7
  15. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +10 -12
  16. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +10 -12
  17. package/3rdparty/walkontable/src/overlays.js +55 -64
  18. package/3rdparty/walkontable/src/overlays.mjs +55 -64
  19. package/3rdparty/walkontable/src/renderer/table.js +0 -2
  20. package/3rdparty/walkontable/src/renderer/table.mjs +0 -2
  21. package/3rdparty/walkontable/src/scroll.js +20 -23
  22. package/3rdparty/walkontable/src/scroll.mjs +20 -23
  23. package/3rdparty/walkontable/src/selection/border/border.js +1 -0
  24. package/3rdparty/walkontable/src/selection/border/border.mjs +1 -0
  25. package/3rdparty/walkontable/src/selection/manager.js +40 -45
  26. package/3rdparty/walkontable/src/selection/manager.mjs +33 -38
  27. package/3rdparty/walkontable/src/selection/scanner.js +5 -4
  28. package/3rdparty/walkontable/src/selection/scanner.mjs +1 -0
  29. package/3rdparty/walkontable/src/settings.js +13 -15
  30. package/3rdparty/walkontable/src/settings.mjs +13 -15
  31. package/3rdparty/walkontable/src/table.js +23 -26
  32. package/3rdparty/walkontable/src/table.mjs +23 -26
  33. package/CHANGELOG.md +56 -0
  34. package/base.js +2 -4
  35. package/base.mjs +2 -2
  36. package/common.d.ts +1 -1
  37. package/core.d.ts +7 -9
  38. package/core.js +241 -439
  39. package/core.mjs +245 -443
  40. package/dataMap/dataMap.js +1 -0
  41. package/dataMap/dataMap.mjs +1 -0
  42. package/dataMap/dataSource.js +5 -5
  43. package/dataMap/dataSource.mjs +5 -5
  44. package/dataMap/metaManager/lazyFactoryMap.js +1 -0
  45. package/dataMap/metaManager/lazyFactoryMap.mjs +1 -0
  46. package/dataMap/metaManager/metaLayers/cellMeta.js +1 -0
  47. package/dataMap/metaManager/metaLayers/cellMeta.mjs +1 -0
  48. package/dataMap/metaManager/metaSchema.js +33 -24
  49. package/dataMap/metaManager/metaSchema.mjs +33 -24
  50. package/dist/handsontable.css +25 -3
  51. package/dist/handsontable.full.css +25 -3
  52. package/dist/handsontable.full.js +14539 -11358
  53. package/dist/handsontable.full.min.css +5 -5
  54. package/dist/handsontable.full.min.js +137 -125
  55. package/dist/handsontable.js +31414 -28455
  56. package/dist/handsontable.min.css +5 -5
  57. package/dist/handsontable.min.js +11 -3
  58. package/dist/languages/all.js +133 -0
  59. package/dist/languages/ar-AR.js +7 -0
  60. package/dist/languages/cs-CZ.js +7 -0
  61. package/dist/languages/de-CH.js +7 -0
  62. package/dist/languages/de-DE.js +7 -0
  63. package/dist/languages/en-US.js +7 -0
  64. package/dist/languages/es-MX.js +7 -0
  65. package/dist/languages/fr-FR.js +7 -0
  66. package/dist/languages/it-IT.js +7 -0
  67. package/dist/languages/ja-JP.js +7 -0
  68. package/dist/languages/ko-KR.js +7 -0
  69. package/dist/languages/lv-LV.js +7 -0
  70. package/dist/languages/nb-NO.js +7 -0
  71. package/dist/languages/nl-NL.js +7 -0
  72. package/dist/languages/pl-PL.js +7 -0
  73. package/dist/languages/pt-BR.js +7 -0
  74. package/dist/languages/ru-RU.js +7 -0
  75. package/dist/languages/sr-SP.js +7 -0
  76. package/dist/languages/zh-CN.js +7 -0
  77. package/dist/languages/zh-TW.js +7 -0
  78. package/editorManager.js +19 -89
  79. package/editorManager.mjs +24 -93
  80. package/editors/baseEditor/baseEditor.js +1 -0
  81. package/editors/baseEditor/baseEditor.mjs +1 -0
  82. package/editors/textEditor/textEditor.js +14 -20
  83. package/editors/textEditor/textEditor.mjs +16 -22
  84. package/helpers/dom/element.js +0 -11
  85. package/helpers/dom/element.mjs +0 -10
  86. package/helpers/mixed.js +2 -2
  87. package/helpers/mixed.mjs +2 -2
  88. package/helpers/number.d.ts +1 -0
  89. package/helpers/number.js +18 -0
  90. package/helpers/number.mjs +17 -0
  91. package/helpers/object.js +2 -0
  92. package/helpers/object.mjs +2 -0
  93. package/i18n/languages/ar-AR.js +7 -1
  94. package/i18n/languages/cs-CZ.js +7 -1
  95. package/i18n/languages/de-CH.js +7 -1
  96. package/i18n/languages/de-DE.js +7 -1
  97. package/i18n/languages/en-US.js +7 -1
  98. package/i18n/languages/es-MX.js +7 -1
  99. package/i18n/languages/fr-FR.js +7 -1
  100. package/i18n/languages/it-IT.js +7 -1
  101. package/i18n/languages/ja-JP.js +7 -1
  102. package/i18n/languages/ko-KR.js +7 -1
  103. package/i18n/languages/lv-LV.js +7 -1
  104. package/i18n/languages/nb-NO.js +7 -1
  105. package/i18n/languages/nl-NL.js +7 -1
  106. package/i18n/languages/pl-PL.js +7 -1
  107. package/i18n/languages/pt-BR.js +7 -1
  108. package/i18n/languages/ru-RU.js +7 -1
  109. package/i18n/languages/sr-SP.js +7 -1
  110. package/i18n/languages/zh-CN.js +7 -1
  111. package/i18n/languages/zh-TW.js +7 -1
  112. package/languages/all.js +133 -0
  113. package/languages/ar-AR.js +7 -0
  114. package/languages/cs-CZ.js +7 -0
  115. package/languages/de-CH.js +7 -0
  116. package/languages/de-DE.js +7 -0
  117. package/languages/en-US.js +7 -0
  118. package/languages/es-MX.js +7 -0
  119. package/languages/fr-FR.js +7 -0
  120. package/languages/index.js +133 -0
  121. package/languages/it-IT.js +7 -0
  122. package/languages/ja-JP.js +7 -0
  123. package/languages/ko-KR.js +7 -0
  124. package/languages/lv-LV.js +7 -0
  125. package/languages/nb-NO.js +7 -0
  126. package/languages/nl-NL.js +7 -0
  127. package/languages/pl-PL.js +7 -0
  128. package/languages/pt-BR.js +7 -0
  129. package/languages/ru-RU.js +7 -0
  130. package/languages/sr-SP.js +7 -0
  131. package/languages/zh-CN.js +7 -0
  132. package/languages/zh-TW.js +7 -0
  133. package/package.json +3 -2
  134. package/pluginHooks.d.ts +8 -2
  135. package/pluginHooks.js +116 -18
  136. package/pluginHooks.mjs +115 -15
  137. package/plugins/autoColumnSize/autoColumnSize.js +1 -0
  138. package/plugins/autoColumnSize/autoColumnSize.mjs +1 -0
  139. package/plugins/autoRowSize/autoRowSize.js +3 -2
  140. package/plugins/autoRowSize/autoRowSize.mjs +3 -2
  141. package/plugins/autofill/autofill.js +2 -2
  142. package/plugins/autofill/autofill.mjs +3 -3
  143. package/plugins/autofill/utils.js +1 -39
  144. package/plugins/autofill/utils.mjs +0 -37
  145. package/plugins/base/base.js +1 -0
  146. package/plugins/base/base.mjs +1 -0
  147. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +1 -0
  148. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +1 -0
  149. package/plugins/collapsibleColumns/collapsibleColumns.js +82 -24
  150. package/plugins/collapsibleColumns/collapsibleColumns.mjs +82 -24
  151. package/plugins/columnSorting/columnSorting.js +51 -8
  152. package/plugins/columnSorting/columnSorting.mjs +50 -9
  153. package/plugins/columnSorting/columnStatesManager.js +1 -0
  154. package/plugins/columnSorting/columnStatesManager.mjs +1 -0
  155. package/plugins/columnSorting/index.js +4 -2
  156. package/plugins/columnSorting/index.mjs +1 -1
  157. package/plugins/columnSorting/rootComparator.js +1 -0
  158. package/plugins/columnSorting/rootComparator.mjs +1 -0
  159. package/plugins/comments/commentEditor.js +1 -0
  160. package/plugins/comments/commentEditor.mjs +1 -0
  161. package/plugins/comments/comments.js +289 -224
  162. package/plugins/comments/comments.mjs +297 -234
  163. package/plugins/comments/contextMenuItem/addEditComment.js +51 -0
  164. package/plugins/comments/contextMenuItem/addEditComment.mjs +35 -0
  165. package/plugins/comments/contextMenuItem/readOnlyComment.js +63 -0
  166. package/plugins/comments/contextMenuItem/readOnlyComment.mjs +55 -0
  167. package/plugins/comments/contextMenuItem/removeComment.js +48 -0
  168. package/plugins/comments/contextMenuItem/removeComment.mjs +32 -0
  169. package/plugins/contextMenu/contextMenu.d.ts +1 -1
  170. package/plugins/contextMenu/contextMenu.js +81 -29
  171. package/plugins/contextMenu/contextMenu.mjs +82 -30
  172. package/plugins/contextMenu/predefinedItems/alignment.js +7 -0
  173. package/plugins/contextMenu/predefinedItems/alignment.mjs +7 -0
  174. package/plugins/contextMenu/predefinedItems/clearColumn.js +5 -3
  175. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +5 -3
  176. package/plugins/contextMenu/predefinedItems/columnLeft.js +5 -3
  177. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +5 -3
  178. package/plugins/contextMenu/predefinedItems/columnRight.js +5 -3
  179. package/plugins/contextMenu/predefinedItems/columnRight.mjs +5 -3
  180. package/plugins/contextMenu/predefinedItems/readOnly.js +7 -0
  181. package/plugins/contextMenu/predefinedItems/readOnly.mjs +7 -0
  182. package/plugins/contextMenu/predefinedItems/removeColumn.js +8 -5
  183. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +6 -3
  184. package/plugins/contextMenu/predefinedItems/removeRow.js +8 -5
  185. package/plugins/contextMenu/predefinedItems/removeRow.mjs +6 -3
  186. package/plugins/contextMenu/predefinedItems/rowAbove.js +5 -3
  187. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +5 -3
  188. package/plugins/contextMenu/predefinedItems/rowBelow.js +5 -3
  189. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +5 -3
  190. package/plugins/contextMenu/utils.js +25 -16
  191. package/plugins/contextMenu/utils.mjs +24 -15
  192. package/plugins/copyPaste/contextMenuItem/copy.js +7 -0
  193. package/plugins/copyPaste/contextMenuItem/copy.mjs +7 -0
  194. package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.js +9 -1
  195. package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.mjs +9 -1
  196. package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.js +9 -1
  197. package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.mjs +9 -1
  198. package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.js +9 -1
  199. package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.mjs +9 -1
  200. package/plugins/copyPaste/contextMenuItem/cut.js +7 -0
  201. package/plugins/copyPaste/contextMenuItem/cut.mjs +7 -0
  202. package/plugins/copyPaste/copyPaste.js +100 -14
  203. package/plugins/copyPaste/copyPaste.mjs +100 -14
  204. package/plugins/copyPaste/copyableRanges.js +25 -31
  205. package/plugins/copyPaste/copyableRanges.mjs +18 -24
  206. package/plugins/copyPaste/focusableElement.js +219 -0
  207. package/plugins/copyPaste/focusableElement.mjs +213 -0
  208. package/plugins/customBorders/customBorders.d.ts +2 -0
  209. package/plugins/customBorders/customBorders.js +19 -50
  210. package/plugins/customBorders/customBorders.mjs +19 -50
  211. package/plugins/dropdownMenu/dropdownMenu.d.ts +1 -1
  212. package/plugins/dropdownMenu/dropdownMenu.js +94 -30
  213. package/plugins/dropdownMenu/dropdownMenu.mjs +94 -30
  214. package/plugins/exportFile/dataProvider.js +1 -0
  215. package/plugins/exportFile/dataProvider.mjs +1 -0
  216. package/plugins/filters/component/value.js +1 -0
  217. package/plugins/filters/component/value.mjs +1 -0
  218. package/plugins/filters/condition/beginsWith.js +1 -0
  219. package/plugins/filters/condition/beginsWith.mjs +1 -0
  220. package/plugins/filters/condition/between.js +1 -0
  221. package/plugins/filters/condition/between.mjs +1 -0
  222. package/plugins/filters/condition/byValue.js +1 -0
  223. package/plugins/filters/condition/byValue.mjs +1 -0
  224. package/plugins/filters/condition/contains.js +1 -0
  225. package/plugins/filters/condition/contains.mjs +1 -0
  226. package/plugins/filters/condition/date/after.js +1 -0
  227. package/plugins/filters/condition/date/after.mjs +1 -0
  228. package/plugins/filters/condition/date/before.js +1 -0
  229. package/plugins/filters/condition/date/before.mjs +1 -0
  230. package/plugins/filters/condition/endsWith.js +1 -0
  231. package/plugins/filters/condition/endsWith.mjs +1 -0
  232. package/plugins/filters/condition/equal.js +1 -0
  233. package/plugins/filters/condition/equal.mjs +1 -0
  234. package/plugins/filters/condition/greaterThan.js +1 -0
  235. package/plugins/filters/condition/greaterThan.mjs +1 -0
  236. package/plugins/filters/condition/greaterThanOrEqual.js +1 -0
  237. package/plugins/filters/condition/greaterThanOrEqual.mjs +1 -0
  238. package/plugins/filters/condition/lessThan.js +1 -0
  239. package/plugins/filters/condition/lessThan.mjs +1 -0
  240. package/plugins/filters/condition/lessThanOrEqual.js +1 -0
  241. package/plugins/filters/condition/lessThanOrEqual.mjs +1 -0
  242. package/plugins/filters/conditionCollection.js +1 -0
  243. package/plugins/filters/conditionCollection.mjs +1 -0
  244. package/plugins/filters/filters.js +68 -42
  245. package/plugins/filters/filters.mjs +67 -41
  246. package/plugins/filters/ui/multipleSelect.js +1 -0
  247. package/plugins/filters/ui/multipleSelect.mjs +1 -0
  248. package/plugins/formulas/formulas.js +191 -168
  249. package/plugins/formulas/formulas.mjs +191 -168
  250. package/plugins/formulas/indexSyncer/axisSyncer.js +379 -0
  251. package/plugins/formulas/indexSyncer/axisSyncer.mjs +374 -0
  252. package/plugins/formulas/indexSyncer/index.js +225 -0
  253. package/plugins/formulas/indexSyncer/index.mjs +219 -0
  254. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +1 -0
  255. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +1 -0
  256. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +1 -0
  257. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +1 -0
  258. package/plugins/hiddenRows/contextMenuItem/hideRow.js +1 -0
  259. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +1 -0
  260. package/plugins/hiddenRows/contextMenuItem/showRow.js +1 -0
  261. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +1 -0
  262. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -0
  263. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -0
  264. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -0
  265. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -0
  266. package/plugins/manualColumnResize/manualColumnResize.js +36 -5
  267. package/plugins/manualColumnResize/manualColumnResize.mjs +36 -5
  268. package/plugins/manualRowMove/manualRowMove.js +31 -12
  269. package/plugins/manualRowMove/manualRowMove.mjs +32 -13
  270. package/plugins/manualRowResize/manualRowResize.js +40 -9
  271. package/plugins/manualRowResize/manualRowResize.mjs +40 -9
  272. package/plugins/mergeCells/calculations/autofill.js +1 -0
  273. package/plugins/mergeCells/calculations/autofill.mjs +1 -0
  274. package/plugins/mergeCells/cellsCollection.js +1 -0
  275. package/plugins/mergeCells/cellsCollection.mjs +1 -0
  276. package/plugins/mergeCells/mergeCells.js +6 -2
  277. package/plugins/mergeCells/mergeCells.mjs +6 -2
  278. package/plugins/multiColumnSorting/multiColumnSorting.js +42 -3
  279. package/plugins/multiColumnSorting/multiColumnSorting.mjs +42 -3
  280. package/plugins/multiColumnSorting/rootComparator.js +1 -0
  281. package/plugins/multiColumnSorting/rootComparator.mjs +1 -0
  282. package/plugins/nestedHeaders/nestedHeaders.js +129 -6
  283. package/plugins/nestedHeaders/nestedHeaders.mjs +129 -6
  284. package/plugins/nestedHeaders/stateManager/headersTree.js +24 -26
  285. package/plugins/nestedHeaders/stateManager/headersTree.mjs +21 -23
  286. package/plugins/nestedHeaders/stateManager/index.js +40 -3
  287. package/plugins/nestedHeaders/stateManager/index.mjs +37 -0
  288. package/plugins/nestedHeaders/stateManager/matrixGenerator.js +1 -0
  289. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +2 -1
  290. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +1 -0
  291. package/plugins/nestedHeaders/utils/ghostTable.js +30 -35
  292. package/plugins/nestedHeaders/utils/ghostTable.mjs +30 -35
  293. package/plugins/nestedRows/data/dataManager.js +1 -0
  294. package/plugins/nestedRows/data/dataManager.mjs +1 -0
  295. package/plugins/nestedRows/nestedRows.js +53 -7
  296. package/plugins/nestedRows/nestedRows.mjs +53 -7
  297. package/plugins/nestedRows/ui/collapsing.js +1 -0
  298. package/plugins/nestedRows/ui/collapsing.mjs +1 -0
  299. package/plugins/nestedRows/utils/rowMoveController.js +1 -0
  300. package/plugins/nestedRows/utils/rowMoveController.mjs +1 -0
  301. package/plugins/persistentState/storage.js +1 -0
  302. package/plugins/persistentState/storage.mjs +1 -0
  303. package/plugins/registry.js +4 -1
  304. package/plugins/registry.mjs +1 -0
  305. package/plugins/undoRedo/undoRedo.js +1 -1
  306. package/plugins/undoRedo/undoRedo.mjs +1 -1
  307. package/renderers/baseRenderer/baseRenderer.js +0 -3
  308. package/renderers/baseRenderer/baseRenderer.mjs +0 -3
  309. package/renderers/checkboxRenderer/checkboxRenderer.js +2 -2
  310. package/renderers/checkboxRenderer/checkboxRenderer.mjs +1 -1
  311. package/selection/highlight/highlight.js +120 -98
  312. package/selection/highlight/highlight.mjs +118 -96
  313. package/selection/highlight/visualSelection.js +30 -17
  314. package/selection/highlight/visualSelection.mjs +30 -17
  315. package/selection/mouseEventHandler.js +1 -1
  316. package/selection/mouseEventHandler.mjs +1 -1
  317. package/selection/range.js +8 -8
  318. package/selection/range.mjs +8 -8
  319. package/selection/selection.js +246 -153
  320. package/selection/selection.mjs +247 -154
  321. package/selection/transformation.js +233 -96
  322. package/selection/transformation.mjs +230 -93
  323. package/selection/utils.js +12 -35
  324. package/selection/utils.mjs +13 -35
  325. package/settings.d.ts +2 -1
  326. package/shortcutContexts/commands/editor/closeAndSave.js +15 -0
  327. package/shortcutContexts/commands/editor/closeAndSave.mjs +10 -0
  328. package/shortcutContexts/commands/editor/closeWithoutSaving.js +13 -0
  329. package/shortcutContexts/commands/editor/closeWithoutSaving.mjs +8 -0
  330. package/shortcutContexts/commands/editor/fastOpen.js +16 -0
  331. package/shortcutContexts/commands/editor/fastOpen.mjs +11 -0
  332. package/shortcutContexts/commands/editor/index.js +16 -0
  333. package/shortcutContexts/commands/editor/index.mjs +12 -0
  334. package/shortcutContexts/commands/editor/open.js +29 -0
  335. package/shortcutContexts/commands/editor/open.mjs +24 -0
  336. package/shortcutContexts/commands/emptySelectedCells.js +12 -0
  337. package/shortcutContexts/commands/emptySelectedCells.mjs +7 -0
  338. package/shortcutContexts/commands/extendCellsSelection/down.js +15 -0
  339. package/shortcutContexts/commands/extendCellsSelection/down.mjs +10 -0
  340. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.js +21 -0
  341. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.mjs +16 -0
  342. package/shortcutContexts/commands/extendCellsSelection/index.js +26 -0
  343. package/shortcutContexts/commands/extendCellsSelection/index.mjs +22 -0
  344. package/shortcutContexts/commands/extendCellsSelection/left.js +15 -0
  345. package/shortcutContexts/commands/extendCellsSelection/left.mjs +10 -0
  346. package/shortcutContexts/commands/extendCellsSelection/right.js +15 -0
  347. package/shortcutContexts/commands/extendCellsSelection/right.mjs +10 -0
  348. package/shortcutContexts/commands/extendCellsSelection/toColumns.js +19 -0
  349. package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +14 -0
  350. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +22 -0
  351. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +17 -0
  352. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +17 -0
  353. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +12 -0
  354. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +17 -0
  355. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +12 -0
  356. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +40 -0
  357. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +35 -0
  358. package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +40 -0
  359. package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +35 -0
  360. package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +22 -0
  361. package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +17 -0
  362. package/shortcutContexts/commands/extendCellsSelection/toRows.js +19 -0
  363. package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +14 -0
  364. package/shortcutContexts/commands/extendCellsSelection/up.js +15 -0
  365. package/shortcutContexts/commands/extendCellsSelection/up.mjs +10 -0
  366. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.js +21 -0
  367. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.mjs +16 -0
  368. package/shortcutContexts/commands/index.js +53 -0
  369. package/shortcutContexts/commands/index.mjs +49 -0
  370. package/shortcutContexts/commands/moveCellSelection/down.js +12 -0
  371. package/shortcutContexts/commands/moveCellSelection/down.mjs +7 -0
  372. package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.js +29 -0
  373. package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.mjs +24 -0
  374. package/shortcutContexts/commands/moveCellSelection/index.js +28 -0
  375. package/shortcutContexts/commands/moveCellSelection/index.mjs +24 -0
  376. package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +13 -0
  377. package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +8 -0
  378. package/shortcutContexts/commands/moveCellSelection/inlineStart.js +13 -0
  379. package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +8 -0
  380. package/shortcutContexts/commands/moveCellSelection/left.js +11 -0
  381. package/shortcutContexts/commands/moveCellSelection/left.mjs +6 -0
  382. package/shortcutContexts/commands/moveCellSelection/right.js +11 -0
  383. package/shortcutContexts/commands/moveCellSelection/right.mjs +6 -0
  384. package/shortcutContexts/commands/moveCellSelection/toMostBottom.js +16 -0
  385. package/shortcutContexts/commands/moveCellSelection/toMostBottom.mjs +11 -0
  386. package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.js +17 -0
  387. package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.mjs +12 -0
  388. package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.js +13 -0
  389. package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.mjs +8 -0
  390. package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.js +16 -0
  391. package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.mjs +11 -0
  392. package/shortcutContexts/commands/moveCellSelection/toMostLeft.js +36 -0
  393. package/shortcutContexts/commands/moveCellSelection/toMostLeft.mjs +31 -0
  394. package/shortcutContexts/commands/moveCellSelection/toMostRight.js +36 -0
  395. package/shortcutContexts/commands/moveCellSelection/toMostRight.mjs +31 -0
  396. package/shortcutContexts/commands/moveCellSelection/toMostTop.js +16 -0
  397. package/shortcutContexts/commands/moveCellSelection/toMostTop.mjs +11 -0
  398. package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.js +18 -0
  399. package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.mjs +13 -0
  400. package/shortcutContexts/commands/moveCellSelection/up.js +12 -0
  401. package/shortcutContexts/commands/moveCellSelection/up.mjs +7 -0
  402. package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.js +29 -0
  403. package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.mjs +24 -0
  404. package/shortcutContexts/commands/populateSelectedCellsData.js +35 -0
  405. package/shortcutContexts/commands/populateSelectedCellsData.mjs +30 -0
  406. package/shortcutContexts/commands/scrollToFocusedCell.js +38 -0
  407. package/shortcutContexts/commands/scrollToFocusedCell.mjs +33 -0
  408. package/shortcutContexts/commands/selectAll.js +11 -0
  409. package/shortcutContexts/commands/selectAll.mjs +6 -0
  410. package/shortcutContexts/constants.js +19 -0
  411. package/shortcutContexts/constants.mjs +12 -0
  412. package/shortcutContexts/editor.js +29 -0
  413. package/shortcutContexts/editor.mjs +25 -0
  414. package/shortcutContexts/grid.js +252 -0
  415. package/shortcutContexts/grid.mjs +248 -0
  416. package/shortcutContexts/index.js +29 -0
  417. package/shortcutContexts/index.mjs +15 -0
  418. package/shortcuts/context.js +1 -0
  419. package/shortcuts/context.mjs +1 -0
  420. package/shortcuts/manager.js +2 -0
  421. package/shortcuts/manager.mjs +2 -0
  422. package/shortcuts/recorder.js +2 -2
  423. package/shortcuts/recorder.mjs +2 -2
  424. package/shortcuts/utils.js +21 -5
  425. package/shortcuts/utils.mjs +20 -4
  426. package/tableView.js +112 -82
  427. package/tableView.mjs +112 -82
  428. package/translations/changesObservable/observable.js +41 -46
  429. package/translations/changesObservable/observable.mjs +36 -41
  430. package/translations/changesObservable/observer.js +1 -1
  431. package/translations/indexMapper.d.ts +0 -2
  432. package/translations/indexMapper.js +38 -64
  433. package/translations/indexMapper.mjs +39 -64
  434. package/translations/maps/linkedPhysicalIndexToValueMap.js +1 -0
  435. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +1 -0
  436. package/translations/maps/utils/indexesSequence.js +1 -0
  437. package/translations/maps/utils/indexesSequence.mjs +1 -0
  438. package/translations/maps/utils/physicallyIndexed.js +1 -0
  439. package/translations/maps/utils/physicallyIndexed.mjs +1 -0
  440. package/utils/dataStructures/priorityMap.js +1 -0
  441. package/utils/dataStructures/priorityMap.mjs +1 -0
  442. package/utils/dataStructures/tree.js +16 -18
  443. package/utils/dataStructures/tree.mjs +16 -18
  444. package/utils/dataStructures/uniqueMap.js +1 -0
  445. package/utils/dataStructures/uniqueMap.mjs +1 -0
  446. package/utils/dataStructures/uniqueSet.js +1 -0
  447. package/utils/dataStructures/uniqueSet.mjs +1 -0
  448. package/utils/ghostTable.js +1 -0
  449. package/utils/ghostTable.mjs +1 -0
  450. package/utils/parseTable.js +5 -1
  451. package/utils/parseTable.mjs +5 -1
  452. package/utils/staticRegister.js +1 -0
  453. package/utils/staticRegister.mjs +1 -0
  454. package/focusManager.d.ts +0 -12
  455. package/focusManager.js +0 -275
  456. package/focusManager.mjs +0 -270
@@ -0,0 +1,31 @@
1
+ import "core-js/modules/es.symbol.js";
2
+ import "core-js/modules/es.symbol.description.js";
3
+ import "core-js/modules/es.object.to-string.js";
4
+ import "core-js/modules/es.symbol.iterator.js";
5
+ import "core-js/modules/es.array.iterator.js";
6
+ import "core-js/modules/es.string.iterator.js";
7
+ import "core-js/modules/web.dom-collections.iterator.js";
8
+ import "core-js/modules/es.array.from.js";
9
+ import "core-js/modules/es.array.slice.js";
10
+ import "core-js/modules/es.regexp.to-string.js";
11
+ import "core-js/modules/es.function.name.js";
12
+ import "core-js/modules/es.regexp.exec.js";
13
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
14
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
15
+ 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); }
16
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
17
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
18
+ 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; }
19
+ export var command = {
20
+ name: 'moveCellSelectionToMostLeft',
21
+ callback: function callback(hot) {
22
+ var selection = hot.selection,
23
+ columnIndexMapper = hot.columnIndexMapper;
24
+ var row = hot.getSelectedRangeLast().highlight.row;
25
+ var column = columnIndexMapper.getNearestNotHiddenIndex.apply(columnIndexMapper, _toConsumableArray(hot.isRtl() ? [hot.countCols() - 1, -1] : [0, 1]));
26
+ if (column === null) {
27
+ column = hot.isRtl() ? -1 : -hot.countRowHeaders();
28
+ }
29
+ selection.setRangeStart(hot._createCellCoords(row, column));
30
+ }
31
+ };
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.symbol.description.js");
5
+ require("core-js/modules/es.object.to-string.js");
6
+ require("core-js/modules/es.symbol.iterator.js");
7
+ require("core-js/modules/es.array.iterator.js");
8
+ require("core-js/modules/es.string.iterator.js");
9
+ require("core-js/modules/web.dom-collections.iterator.js");
10
+ require("core-js/modules/es.array.from.js");
11
+ require("core-js/modules/es.array.slice.js");
12
+ require("core-js/modules/es.regexp.to-string.js");
13
+ require("core-js/modules/es.function.name.js");
14
+ require("core-js/modules/es.regexp.exec.js");
15
+ exports.__esModule = true;
16
+ exports.command = void 0;
17
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
18
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
19
+ 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); }
20
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
21
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
22
+ 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; }
23
+ var command = {
24
+ name: 'moveCellSelectionToMostRight',
25
+ callback: function callback(hot) {
26
+ var selection = hot.selection,
27
+ columnIndexMapper = hot.columnIndexMapper;
28
+ var row = hot.getSelectedRangeLast().highlight.row;
29
+ var column = columnIndexMapper.getNearestNotHiddenIndex.apply(columnIndexMapper, _toConsumableArray(hot.isRtl() ? [0, 1] : [hot.countCols() - 1, -1]));
30
+ if (column === null) {
31
+ column = hot.isRtl() ? -hot.countRowHeaders() : -1;
32
+ }
33
+ selection.setRangeStart(hot._createCellCoords(row, column));
34
+ }
35
+ };
36
+ exports.command = command;
@@ -0,0 +1,31 @@
1
+ import "core-js/modules/es.symbol.js";
2
+ import "core-js/modules/es.symbol.description.js";
3
+ import "core-js/modules/es.object.to-string.js";
4
+ import "core-js/modules/es.symbol.iterator.js";
5
+ import "core-js/modules/es.array.iterator.js";
6
+ import "core-js/modules/es.string.iterator.js";
7
+ import "core-js/modules/web.dom-collections.iterator.js";
8
+ import "core-js/modules/es.array.from.js";
9
+ import "core-js/modules/es.array.slice.js";
10
+ import "core-js/modules/es.regexp.to-string.js";
11
+ import "core-js/modules/es.function.name.js";
12
+ import "core-js/modules/es.regexp.exec.js";
13
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
14
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
15
+ 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); }
16
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
17
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
18
+ 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; }
19
+ export var command = {
20
+ name: 'moveCellSelectionToMostRight',
21
+ callback: function callback(hot) {
22
+ var selection = hot.selection,
23
+ columnIndexMapper = hot.columnIndexMapper;
24
+ var row = hot.getSelectedRangeLast().highlight.row;
25
+ var column = columnIndexMapper.getNearestNotHiddenIndex.apply(columnIndexMapper, _toConsumableArray(hot.isRtl() ? [0, 1] : [hot.countCols() - 1, -1]));
26
+ if (column === null) {
27
+ column = hot.isRtl() ? -hot.countRowHeaders() : -1;
28
+ }
29
+ selection.setRangeStart(hot._createCellCoords(row, column));
30
+ }
31
+ };
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.command = void 0;
5
+ var command = {
6
+ name: 'moveCellSelectionToMostTop',
7
+ callback: function callback(hot) {
8
+ var col = hot.getSelectedRangeLast().highlight.col;
9
+ var row = hot.rowIndexMapper.getNearestNotHiddenIndex(0, 1);
10
+ if (row === null) {
11
+ row = -hot.countColHeaders();
12
+ }
13
+ hot.selection.setRangeStart(hot._createCellCoords(row, col));
14
+ }
15
+ };
16
+ exports.command = command;
@@ -0,0 +1,11 @@
1
+ export var command = {
2
+ name: 'moveCellSelectionToMostTop',
3
+ callback: function callback(hot) {
4
+ var col = hot.getSelectedRangeLast().highlight.col;
5
+ var row = hot.rowIndexMapper.getNearestNotHiddenIndex(0, 1);
6
+ if (row === null) {
7
+ row = -hot.countColHeaders();
8
+ }
9
+ hot.selection.setRangeStart(hot._createCellCoords(row, col));
10
+ }
11
+ };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.command = void 0;
5
+ var command = {
6
+ name: 'moveCellSelectionToMostTopInlineStart',
7
+ callback: function callback(hot) {
8
+ var selection = hot.selection,
9
+ rowIndexMapper = hot.rowIndexMapper,
10
+ columnIndexMapper = hot.columnIndexMapper;
11
+ var fixedRows = parseInt(hot.getSettings().fixedRowsTop, 10);
12
+ var fixedColumns = parseInt(hot.getSettings().fixedColumnsStart, 10);
13
+ var row = rowIndexMapper.getNearestNotHiddenIndex(fixedRows, 1);
14
+ var column = columnIndexMapper.getNearestNotHiddenIndex(fixedColumns, 1);
15
+ selection.setRangeStart(hot._createCellCoords(row, column));
16
+ }
17
+ };
18
+ exports.command = command;
@@ -0,0 +1,13 @@
1
+ export var command = {
2
+ name: 'moveCellSelectionToMostTopInlineStart',
3
+ callback: function callback(hot) {
4
+ var selection = hot.selection,
5
+ rowIndexMapper = hot.rowIndexMapper,
6
+ columnIndexMapper = hot.columnIndexMapper;
7
+ var fixedRows = parseInt(hot.getSettings().fixedRowsTop, 10);
8
+ var fixedColumns = parseInt(hot.getSettings().fixedColumnsStart, 10);
9
+ var row = rowIndexMapper.getNearestNotHiddenIndex(fixedRows, 1);
10
+ var column = columnIndexMapper.getNearestNotHiddenIndex(fixedColumns, 1);
11
+ selection.setRangeStart(hot._createCellCoords(row, column));
12
+ }
13
+ };
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.command = void 0;
5
+ var command = {
6
+ name: 'moveCellSelectionUp',
7
+ callback: function callback(_ref) {
8
+ var selection = _ref.selection;
9
+ selection.transformStart(-1, 0);
10
+ }
11
+ };
12
+ exports.command = command;
@@ -0,0 +1,7 @@
1
+ export var command = {
2
+ name: 'moveCellSelectionUp',
3
+ callback: function callback(_ref) {
4
+ var selection = _ref.selection;
5
+ selection.transformStart(-1, 0);
6
+ }
7
+ };
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.command = void 0;
5
+ var command = {
6
+ name: 'moveCellSelectionUpByViewportHight',
7
+ callback: function callback(hot) {
8
+ var _hot$getSettings = hot.getSettings(),
9
+ navigableHeaders = _hot$getSettings.navigableHeaders;
10
+ var columnHeadersCount = navigableHeaders ? hot.countColHeaders() : 0;
11
+ var row = hot.getSelectedRangeLast().highlight.row;
12
+ var rowsStep = -(hot.countVisibleRows() + columnHeadersCount);
13
+
14
+ // if the first row is currently selected move the focus to the last row (if autoWrap is enabled)
15
+ if (row === -columnHeadersCount) {
16
+ rowsStep = -1;
17
+
18
+ // if the next move would move the focus off the table calculate the delta to move the selection to
19
+ // the first row
20
+ } else if (row + rowsStep < columnHeadersCount) {
21
+ rowsStep = -(row + columnHeadersCount);
22
+ }
23
+ hot.selection.transformStart(rowsStep, 0);
24
+ if (hot.getSelectedRangeLast().highlight.row < 0) {
25
+ hot.scrollViewportTo(0);
26
+ }
27
+ }
28
+ };
29
+ exports.command = command;
@@ -0,0 +1,24 @@
1
+ export var command = {
2
+ name: 'moveCellSelectionUpByViewportHight',
3
+ callback: function callback(hot) {
4
+ var _hot$getSettings = hot.getSettings(),
5
+ navigableHeaders = _hot$getSettings.navigableHeaders;
6
+ var columnHeadersCount = navigableHeaders ? hot.countColHeaders() : 0;
7
+ var row = hot.getSelectedRangeLast().highlight.row;
8
+ var rowsStep = -(hot.countVisibleRows() + columnHeadersCount);
9
+
10
+ // if the first row is currently selected move the focus to the last row (if autoWrap is enabled)
11
+ if (row === -columnHeadersCount) {
12
+ rowsStep = -1;
13
+
14
+ // if the next move would move the focus off the table calculate the delta to move the selection to
15
+ // the first row
16
+ } else if (row + rowsStep < columnHeadersCount) {
17
+ rowsStep = -(row + columnHeadersCount);
18
+ }
19
+ hot.selection.transformStart(rowsStep, 0);
20
+ if (hot.getSelectedRangeLast().highlight.row < 0) {
21
+ hot.scrollViewportTo(0);
22
+ }
23
+ }
24
+ };
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.command = void 0;
5
+ require("core-js/modules/es.array.iterator.js");
6
+ require("core-js/modules/es.map.js");
7
+ require("core-js/modules/es.object.to-string.js");
8
+ require("core-js/modules/es.string.iterator.js");
9
+ require("core-js/modules/web.dom-collections.iterator.js");
10
+ require("core-js/modules/es.array.concat.js");
11
+ require("core-js/modules/es.array.from.js");
12
+ var command = {
13
+ name: 'populateSelectedCellsData',
14
+ callback: function callback(hot) {
15
+ var selectedRange = hot.getSelectedRange();
16
+ var _selectedRange$highli = selectedRange[selectedRange.length - 1].highlight.normalize(),
17
+ highlightRow = _selectedRange$highli.row,
18
+ highlightColumn = _selectedRange$highli.col;
19
+ var valueToPopulate = hot.getDataAtCell(highlightRow, highlightColumn);
20
+ var cellValues = new Map();
21
+ for (var i = 0; i < selectedRange.length; i++) {
22
+ selectedRange[i].forAll(function (row, column) {
23
+ if (row >= 0 && column >= 0 && (row !== highlightRow || column !== highlightColumn)) {
24
+ var _hot$getCellMeta = hot.getCellMeta(row, column),
25
+ readOnly = _hot$getCellMeta.readOnly;
26
+ if (!readOnly) {
27
+ cellValues.set("".concat(row, "x").concat(column), [row, column, valueToPopulate]);
28
+ }
29
+ }
30
+ });
31
+ }
32
+ hot.setDataAtCell(Array.from(cellValues.values()));
33
+ }
34
+ };
35
+ exports.command = command;
@@ -0,0 +1,30 @@
1
+ import "core-js/modules/es.array.iterator.js";
2
+ import "core-js/modules/es.map.js";
3
+ import "core-js/modules/es.object.to-string.js";
4
+ import "core-js/modules/es.string.iterator.js";
5
+ import "core-js/modules/web.dom-collections.iterator.js";
6
+ import "core-js/modules/es.array.concat.js";
7
+ import "core-js/modules/es.array.from.js";
8
+ export var command = {
9
+ name: 'populateSelectedCellsData',
10
+ callback: function callback(hot) {
11
+ var selectedRange = hot.getSelectedRange();
12
+ var _selectedRange$highli = selectedRange[selectedRange.length - 1].highlight.normalize(),
13
+ highlightRow = _selectedRange$highli.row,
14
+ highlightColumn = _selectedRange$highli.col;
15
+ var valueToPopulate = hot.getDataAtCell(highlightRow, highlightColumn);
16
+ var cellValues = new Map();
17
+ for (var i = 0; i < selectedRange.length; i++) {
18
+ selectedRange[i].forAll(function (row, column) {
19
+ if (row >= 0 && column >= 0 && (row !== highlightRow || column !== highlightColumn)) {
20
+ var _hot$getCellMeta = hot.getCellMeta(row, column),
21
+ readOnly = _hot$getCellMeta.readOnly;
22
+ if (!readOnly) {
23
+ cellValues.set("".concat(row, "x").concat(column), [row, column, valueToPopulate]);
24
+ }
25
+ }
26
+ });
27
+ }
28
+ hot.setDataAtCell(Array.from(cellValues.values()));
29
+ }
30
+ };
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.command = void 0;
5
+ require("core-js/modules/es.array.includes.js");
6
+ require("core-js/modules/es.string.includes.js");
7
+ var command = {
8
+ name: 'scrollToFocusedCell',
9
+ callback: function callback(hot) {
10
+ var _hot$getSelectedRange = hot.getSelectedRangeLast(),
11
+ highlight = _hot$getSelectedRange.highlight;
12
+ var firstVisibleRow = hot.view.getFirstFullyVisibleRow() - 1;
13
+ var firstVisibleColumn = hot.view.getFirstFullyVisibleColumn() - 1;
14
+ var lastVisibleRow = hot.view.getLastFullyVisibleRow() + 1;
15
+ var lastVisibleColumn = hot.view.getLastFullyVisibleColumn() + 1;
16
+ var visibleCoordsFrom = hot._createCellCoords(firstVisibleRow, firstVisibleColumn);
17
+ var visibleCoordsTo = hot._createCellCoords(lastVisibleRow, lastVisibleColumn);
18
+ var visibleRange = hot._createCellRange(visibleCoordsFrom, visibleCoordsFrom, visibleCoordsTo);
19
+ if (!visibleRange.includes(highlight) && (highlight.row >= 0 || highlight.col >= 0)) {
20
+ var offsetRows = Math.floor(hot.countVisibleRows() / 2);
21
+ var offsetColumns = Math.floor(hot.countVisibleCols() / 2);
22
+ var scrollX = Math.max(highlight.row - offsetRows, 0);
23
+ var scrollY = Math.max(highlight.col - offsetColumns, 0);
24
+ var scrollCoords = [scrollX, scrollY];
25
+
26
+ // for row header focus do not change the scroll Y position, leave as it is
27
+ if (highlight.col < 0) {
28
+ scrollCoords[1] = null;
29
+
30
+ // for column header focus do not change the scroll X position, leave as it is
31
+ } else if (highlight.row < 0) {
32
+ scrollCoords[0] = null;
33
+ }
34
+ hot.scrollViewportTo.apply(hot, scrollCoords);
35
+ }
36
+ }
37
+ };
38
+ exports.command = command;
@@ -0,0 +1,33 @@
1
+ import "core-js/modules/es.array.includes.js";
2
+ import "core-js/modules/es.string.includes.js";
3
+ export var command = {
4
+ name: 'scrollToFocusedCell',
5
+ callback: function callback(hot) {
6
+ var _hot$getSelectedRange = hot.getSelectedRangeLast(),
7
+ highlight = _hot$getSelectedRange.highlight;
8
+ var firstVisibleRow = hot.view.getFirstFullyVisibleRow() - 1;
9
+ var firstVisibleColumn = hot.view.getFirstFullyVisibleColumn() - 1;
10
+ var lastVisibleRow = hot.view.getLastFullyVisibleRow() + 1;
11
+ var lastVisibleColumn = hot.view.getLastFullyVisibleColumn() + 1;
12
+ var visibleCoordsFrom = hot._createCellCoords(firstVisibleRow, firstVisibleColumn);
13
+ var visibleCoordsTo = hot._createCellCoords(lastVisibleRow, lastVisibleColumn);
14
+ var visibleRange = hot._createCellRange(visibleCoordsFrom, visibleCoordsFrom, visibleCoordsTo);
15
+ if (!visibleRange.includes(highlight) && (highlight.row >= 0 || highlight.col >= 0)) {
16
+ var offsetRows = Math.floor(hot.countVisibleRows() / 2);
17
+ var offsetColumns = Math.floor(hot.countVisibleCols() / 2);
18
+ var scrollX = Math.max(highlight.row - offsetRows, 0);
19
+ var scrollY = Math.max(highlight.col - offsetColumns, 0);
20
+ var scrollCoords = [scrollX, scrollY];
21
+
22
+ // for row header focus do not change the scroll Y position, leave as it is
23
+ if (highlight.col < 0) {
24
+ scrollCoords[1] = null;
25
+
26
+ // for column header focus do not change the scroll X position, leave as it is
27
+ } else if (highlight.row < 0) {
28
+ scrollCoords[0] = null;
29
+ }
30
+ hot.scrollViewportTo.apply(hot, scrollCoords);
31
+ }
32
+ }
33
+ };
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.command = void 0;
5
+ var command = {
6
+ name: 'selectAll',
7
+ callback: function callback(hot) {
8
+ hot.selectAll();
9
+ }
10
+ };
11
+ exports.command = command;
@@ -0,0 +1,6 @@
1
+ export var command = {
2
+ name: 'selectAll',
3
+ callback: function callback(hot) {
4
+ hot.selectAll();
5
+ }
6
+ };
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.HEADERS_GROUP = exports.GRID_GROUP = exports.EDITOR_EDIT_GROUP = void 0;
5
+ /**
6
+ * Group name for keyboard shortcuts that are active when the header is selected.
7
+ */
8
+ var HEADERS_GROUP = 'headersDefault';
9
+ /**
10
+ * Group name for keyboard shortcuts that are active when the cell is selected.
11
+ */
12
+ exports.HEADERS_GROUP = HEADERS_GROUP;
13
+ var GRID_GROUP = 'gridDefault';
14
+ /**
15
+ * Group name for keyboard shortcuts that are active when the cell editor is active.
16
+ */
17
+ exports.GRID_GROUP = GRID_GROUP;
18
+ var EDITOR_EDIT_GROUP = 'editorManager.handlingEditor';
19
+ exports.EDITOR_EDIT_GROUP = EDITOR_EDIT_GROUP;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Group name for keyboard shortcuts that are active when the header is selected.
3
+ */
4
+ export var HEADERS_GROUP = 'headersDefault';
5
+ /**
6
+ * Group name for keyboard shortcuts that are active when the cell is selected.
7
+ */
8
+ export var GRID_GROUP = 'gridDefault';
9
+ /**
10
+ * Group name for keyboard shortcuts that are active when the cell editor is active.
11
+ */
12
+ export var EDITOR_EDIT_GROUP = 'editorManager.handlingEditor';
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.shortcutsEditorContext = shortcutsEditorContext;
5
+ var _constants = require("./constants");
6
+ var _commands = require("./commands");
7
+ /**
8
+ * The context that defines a base shortcut list available for cells editors.
9
+ *
10
+ * @param {Handsontable} hot The Handsontable instance.
11
+ */
12
+ function shortcutsEditorContext(hot) {
13
+ var context = hot.getShortcutManager().addContext('editor');
14
+ var commandsPool = (0, _commands.createKeyboardShortcutCommandsPool)(hot);
15
+ var config = {
16
+ group: _constants.EDITOR_EDIT_GROUP
17
+ };
18
+ context.addShortcuts([{
19
+ keys: [['Enter'], ['Enter', 'Shift'], ['Enter', 'Control/Meta'], ['Enter', 'Control/Meta', 'Shift']],
20
+ callback: function callback(event, keys) {
21
+ return commandsPool.editorCloseAndSave(event, keys);
22
+ }
23
+ }, {
24
+ keys: [['Escape'], ['Escape', 'Control/Meta']],
25
+ callback: function callback() {
26
+ return commandsPool.editorCloseWithoutSaving();
27
+ }
28
+ }], config);
29
+ }
@@ -0,0 +1,25 @@
1
+ import { EDITOR_EDIT_GROUP } from "./constants.mjs";
2
+ import { createKeyboardShortcutCommandsPool } from "./commands/index.mjs";
3
+ /**
4
+ * The context that defines a base shortcut list available for cells editors.
5
+ *
6
+ * @param {Handsontable} hot The Handsontable instance.
7
+ */
8
+ export function shortcutsEditorContext(hot) {
9
+ var context = hot.getShortcutManager().addContext('editor');
10
+ var commandsPool = createKeyboardShortcutCommandsPool(hot);
11
+ var config = {
12
+ group: EDITOR_EDIT_GROUP
13
+ };
14
+ context.addShortcuts([{
15
+ keys: [['Enter'], ['Enter', 'Shift'], ['Enter', 'Control/Meta'], ['Enter', 'Control/Meta', 'Shift']],
16
+ callback: function callback(event, keys) {
17
+ return commandsPool.editorCloseAndSave(event, keys);
18
+ }
19
+ }, {
20
+ keys: [['Escape'], ['Escape', 'Control/Meta']],
21
+ callback: function callback() {
22
+ return commandsPool.editorCloseWithoutSaving();
23
+ }
24
+ }], config);
25
+ }