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
@@ -2,6 +2,7 @@
2
2
 
3
3
  require("core-js/modules/es.symbol.iterator.js");
4
4
  require("core-js/modules/es.array.from.js");
5
+ require("core-js/modules/es.regexp.to-string.js");
5
6
  require("core-js/modules/es.function.name.js");
6
7
  require("core-js/modules/es.regexp.exec.js");
7
8
  exports.__esModule = true;
@@ -25,6 +25,7 @@ import "core-js/modules/es.symbol.js";
25
25
  import "core-js/modules/es.symbol.description.js";
26
26
  import "core-js/modules/es.symbol.iterator.js";
27
27
  import "core-js/modules/es.array.from.js";
28
+ import "core-js/modules/es.regexp.to-string.js";
28
29
  import "core-js/modules/es.function.name.js";
29
30
  import "core-js/modules/es.regexp.exec.js";
30
31
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -195,7 +195,7 @@ var DataSource = /*#__PURE__*/function () {
195
195
  }
196
196
  if (this.hot.hasHook('modifySourceData')) {
197
197
  var valueHolder = (0, _object.createObjectPropListener)(value);
198
- this.hot.runHooks('modifySourceData', row, this.propToCol(column), valueHolder, 'set');
198
+ this.hot.runHooks('modifySourceData', row, column, valueHolder, 'set');
199
199
  if (valueHolder.isTouched()) {
200
200
  value = valueHolder.value;
201
201
  }
@@ -232,7 +232,7 @@ var DataSource = /*#__PURE__*/function () {
232
232
  }
233
233
  if (this.hot.hasHook('modifySourceData')) {
234
234
  var valueHolder = (0, _object.createObjectPropListener)(result);
235
- this.hot.runHooks('modifySourceData', row, this.colToProp(column), valueHolder, 'get');
235
+ this.hot.runHooks('modifySourceData', row, column, valueHolder, 'get');
236
236
  if (valueHolder.isTouched()) {
237
237
  result = valueHolder.value;
238
238
  }
@@ -244,14 +244,14 @@ var DataSource = /*#__PURE__*/function () {
244
244
  * Returns a single value from the data.
245
245
  *
246
246
  * @param {number} row Physical row index.
247
- * @param {number} column Visual column index.
247
+ * @param {number} columnOrProp Visual column index or property.
248
248
  * @returns {*}
249
249
  */
250
250
  }, {
251
251
  key: "getAtCell",
252
- value: function getAtCell(row, column) {
252
+ value: function getAtCell(row, columnOrProp) {
253
253
  var dataRow = this.modifyRowData(row);
254
- return this.getAtPhysicalCell(row, this.colToProp(column), dataRow);
254
+ return this.getAtPhysicalCell(row, this.colToProp(columnOrProp), dataRow);
255
255
  }
256
256
 
257
257
  /**
@@ -191,7 +191,7 @@ var DataSource = /*#__PURE__*/function () {
191
191
  }
192
192
  if (this.hot.hasHook('modifySourceData')) {
193
193
  var valueHolder = createObjectPropListener(value);
194
- this.hot.runHooks('modifySourceData', row, this.propToCol(column), valueHolder, 'set');
194
+ this.hot.runHooks('modifySourceData', row, column, valueHolder, 'set');
195
195
  if (valueHolder.isTouched()) {
196
196
  value = valueHolder.value;
197
197
  }
@@ -228,7 +228,7 @@ var DataSource = /*#__PURE__*/function () {
228
228
  }
229
229
  if (this.hot.hasHook('modifySourceData')) {
230
230
  var valueHolder = createObjectPropListener(result);
231
- this.hot.runHooks('modifySourceData', row, this.colToProp(column), valueHolder, 'get');
231
+ this.hot.runHooks('modifySourceData', row, column, valueHolder, 'get');
232
232
  if (valueHolder.isTouched()) {
233
233
  result = valueHolder.value;
234
234
  }
@@ -240,14 +240,14 @@ var DataSource = /*#__PURE__*/function () {
240
240
  * Returns a single value from the data.
241
241
  *
242
242
  * @param {number} row Physical row index.
243
- * @param {number} column Visual column index.
243
+ * @param {number} columnOrProp Visual column index or property.
244
244
  * @returns {*}
245
245
  */
246
246
  }, {
247
247
  key: "getAtCell",
248
- value: function getAtCell(row, column) {
248
+ value: function getAtCell(row, columnOrProp) {
249
249
  var dataRow = this.modifyRowData(row);
250
- return this.getAtPhysicalCell(row, this.colToProp(column), dataRow);
250
+ return this.getAtPhysicalCell(row, this.colToProp(columnOrProp), dataRow);
251
251
  }
252
252
 
253
253
  /**
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  require("core-js/modules/es.array.from.js");
4
+ require("core-js/modules/es.regexp.to-string.js");
4
5
  require("core-js/modules/es.function.name.js");
5
6
  require("core-js/modules/es.regexp.exec.js");
6
7
  exports.__esModule = true;
@@ -21,6 +21,7 @@ import "core-js/modules/es.symbol.to-primitive.js";
21
21
  import "core-js/modules/es.date.to-primitive.js";
22
22
  import "core-js/modules/es.number.constructor.js";
23
23
  import "core-js/modules/es.array.from.js";
24
+ import "core-js/modules/es.regexp.to-string.js";
24
25
  import "core-js/modules/es.function.name.js";
25
26
  import "core-js/modules/es.regexp.exec.js";
26
27
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -2,6 +2,7 @@
2
2
 
3
3
  require("core-js/modules/es.symbol.iterator.js");
4
4
  require("core-js/modules/es.array.slice.js");
5
+ require("core-js/modules/es.regexp.to-string.js");
5
6
  require("core-js/modules/es.function.name.js");
6
7
  require("core-js/modules/es.regexp.exec.js");
7
8
  exports.__esModule = true;
@@ -18,6 +18,7 @@ import "core-js/modules/es.symbol.description.js";
18
18
  import "core-js/modules/es.number.constructor.js";
19
19
  import "core-js/modules/es.symbol.iterator.js";
20
20
  import "core-js/modules/es.array.slice.js";
21
+ import "core-js/modules/es.regexp.to-string.js";
21
22
  import "core-js/modules/es.function.name.js";
22
23
  import "core-js/modules/es.regexp.exec.js";
23
24
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -21,7 +21,7 @@ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" =
21
21
  * [Configuration options](@/guides/getting-started/configuration-options.md) let you heavily customize your Handsontable instance. For example, you can:
22
22
  *
23
23
  * - Enable and disable built-in features
24
- * - Enable and configure additional [plugins](@/guides/tools-and-building/custom-plugins.md)
24
+ * - Enable and configure additional [plugins](@/api/plugins.md)
25
25
  * - Personalize Handsontable's look
26
26
  * - Adjust Handsontable's behavior
27
27
  * - Implement your own custom features
@@ -945,8 +945,7 @@ var _default = function _default() {
945
945
  /**
946
946
  * The `colWidths` option sets columns' widths, in pixels.
947
947
  *
948
- * In the rendering process, the default column width is 50px. To change it,
949
- * set the `colWidths` option to one of the following:
948
+ * The default column width is 50px. To change it, set the `colWidths` option to one of the following:
950
949
  *
951
950
  * | Setting | Description | Example |
952
951
  * | ----------- | ---------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
@@ -956,7 +955,10 @@ var _default = function _default() {
956
955
  * | A function | Set column widths dynamically,<br>on each render | `colWidths(visualColumnIndex) { return visualColumnIndex * 10; }` |
957
956
  * | `undefined` | Used by the [modifyColWidth](@/api/hooks.md#modifyColWidth) hook,<br>to detect column width changes. | `colWidths: undefined` |
958
957
  *
959
- * Setting the `colWidths` option disables the {@link AutoColumnSize} plugin.
958
+ * Setting `colWidths` even for a single column disables the {@link AutoColumnSize} plugin
959
+ * for all columns. For this reason, if you use `colWidths`, we recommend you set a width for each one
960
+ * of your columns. Otherwise, every column with an undefined width defaults back to 50px,
961
+ * which may cut longer columns names.
960
962
  *
961
963
  * Read more:
962
964
  * - [Column width](@/guides/columns/column-width.md)
@@ -978,8 +980,8 @@ var _default = function _default() {
978
980
  *
979
981
  * // set the first (by visual index) column's width to 100
980
982
  * // set the second (by visual index) column's width to 120
981
- * // set the third (by visual index) column's width to `undefined`
982
- * // set any other column's width to the default 50px
983
+ * // set the third (by visual index) column's width to `undefined`, so that it defaults to 50px
984
+ * // set any other column's width to the default 50px (note that longer cell values and column names can get cut)
983
985
  * colWidths: [100, 120, undefined],
984
986
  *
985
987
  * // set each column's width individually, using a function
@@ -1114,15 +1116,15 @@ var _default = function _default() {
1114
1116
  * contextMenu: {
1115
1117
  * items: {
1116
1118
  * 'option1': {
1117
- * name: 'option1'
1119
+ * name: 'Option 1'
1118
1120
  * },
1119
1121
  * 'option2': {
1120
- * name: 'option2',
1122
+ * name: 'Option 2',
1121
1123
  * submenu: {
1122
1124
  * items: [
1123
1125
  * {
1124
1126
  * key: 'option2:suboption1',
1125
- * name: 'option2:suboption1',
1127
+ * name: 'Suboption 1',
1126
1128
  * callback: function(key, options) {
1127
1129
  * ...
1128
1130
  * }
@@ -1772,15 +1774,15 @@ var _default = function _default() {
1772
1774
  * dropdownMenu: {
1773
1775
  * items: {
1774
1776
  * 'option1': {
1775
- * name: 'option1'
1777
+ * name: 'Option 1'
1776
1778
  * },
1777
1779
  * 'option2': {
1778
- * name: 'option2',
1780
+ * name: 'Option 2',
1779
1781
  * submenu: {
1780
1782
  * items: [
1781
1783
  * {
1782
1784
  * key: 'option2:suboption1',
1783
- * name: 'option2:suboption1',
1785
+ * name: 'Suboption 1',
1784
1786
  * callback(key, options) {
1785
1787
  * ...
1786
1788
  * }
@@ -2437,18 +2439,6 @@ var _default = function _default() {
2437
2439
  * ```
2438
2440
  */
2439
2441
  invalidCellClassName: 'htInvalid',
2440
- /**
2441
- * The `imeFastEdit` option allows using the "fast edit" feature for the IME users. It's disabled by default
2442
- * because of its incompatibility with some of the accessibility features.
2443
- *
2444
- * Enabling this option can make a negative impact on how some screen readers handle reading the table cells.
2445
- *
2446
- * @since 13.0.0
2447
- * @memberof Options#
2448
- * @type {boolean}
2449
- * @category Core
2450
- */
2451
- imeFastEdit: false,
2452
2442
  /**
2453
2443
  * The `isEmptyCol` option lets you define your own custom method
2454
2444
  * for checking if a column at a given visual index is empty.
@@ -3122,6 +3112,25 @@ var _default = function _default() {
3122
3112
  * ```
3123
3113
  */
3124
3114
  multiColumnSorting: void 0,
3115
+ /**
3116
+ * When set to `true`, the `navigableHeaders` option lets you navigate [row headers](@/guides/rows/row-header.md) and [column headers](@/guides/columns/column-header.md), using the arrow keys or the <kbd>**Tab**</kbd> key (if the [`disableTabNavigation`](#disabletabnavigation) option is set to `false`).
3117
+ *
3118
+ * @since 14.0.0
3119
+ * @memberof Options#
3120
+ * @type {boolean}
3121
+ * @default false
3122
+ * @category Core
3123
+ *
3124
+ * @example
3125
+ * ```js
3126
+ * // you can navigate row and column headers with the keyboard
3127
+ * navigableHeaders: true,
3128
+ *
3129
+ * // default behavior: you can't navigate row and column headers with the keyboard
3130
+ * navigableHeaders: false,
3131
+ * ```
3132
+ */
3133
+ navigableHeaders: false,
3125
3134
  /**
3126
3135
  * @description
3127
3136
  * The `nestedHeaders` option configures the [`NestedHeaders`](@/api/nestedHeaders.md) plugin.
@@ -17,7 +17,7 @@ import { isObjectEqual } from "../../helpers/object.mjs";
17
17
  * [Configuration options](@/guides/getting-started/configuration-options.md) let you heavily customize your Handsontable instance. For example, you can:
18
18
  *
19
19
  * - Enable and disable built-in features
20
- * - Enable and configure additional [plugins](@/guides/tools-and-building/custom-plugins.md)
20
+ * - Enable and configure additional [plugins](@/api/plugins.md)
21
21
  * - Personalize Handsontable's look
22
22
  * - Adjust Handsontable's behavior
23
23
  * - Implement your own custom features
@@ -941,8 +941,7 @@ export default (function () {
941
941
  /**
942
942
  * The `colWidths` option sets columns' widths, in pixels.
943
943
  *
944
- * In the rendering process, the default column width is 50px. To change it,
945
- * set the `colWidths` option to one of the following:
944
+ * The default column width is 50px. To change it, set the `colWidths` option to one of the following:
946
945
  *
947
946
  * | Setting | Description | Example |
948
947
  * | ----------- | ---------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
@@ -952,7 +951,10 @@ export default (function () {
952
951
  * | A function | Set column widths dynamically,<br>on each render | `colWidths(visualColumnIndex) { return visualColumnIndex * 10; }` |
953
952
  * | `undefined` | Used by the [modifyColWidth](@/api/hooks.md#modifyColWidth) hook,<br>to detect column width changes. | `colWidths: undefined` |
954
953
  *
955
- * Setting the `colWidths` option disables the {@link AutoColumnSize} plugin.
954
+ * Setting `colWidths` even for a single column disables the {@link AutoColumnSize} plugin
955
+ * for all columns. For this reason, if you use `colWidths`, we recommend you set a width for each one
956
+ * of your columns. Otherwise, every column with an undefined width defaults back to 50px,
957
+ * which may cut longer columns names.
956
958
  *
957
959
  * Read more:
958
960
  * - [Column width](@/guides/columns/column-width.md)
@@ -974,8 +976,8 @@ export default (function () {
974
976
  *
975
977
  * // set the first (by visual index) column's width to 100
976
978
  * // set the second (by visual index) column's width to 120
977
- * // set the third (by visual index) column's width to `undefined`
978
- * // set any other column's width to the default 50px
979
+ * // set the third (by visual index) column's width to `undefined`, so that it defaults to 50px
980
+ * // set any other column's width to the default 50px (note that longer cell values and column names can get cut)
979
981
  * colWidths: [100, 120, undefined],
980
982
  *
981
983
  * // set each column's width individually, using a function
@@ -1110,15 +1112,15 @@ export default (function () {
1110
1112
  * contextMenu: {
1111
1113
  * items: {
1112
1114
  * 'option1': {
1113
- * name: 'option1'
1115
+ * name: 'Option 1'
1114
1116
  * },
1115
1117
  * 'option2': {
1116
- * name: 'option2',
1118
+ * name: 'Option 2',
1117
1119
  * submenu: {
1118
1120
  * items: [
1119
1121
  * {
1120
1122
  * key: 'option2:suboption1',
1121
- * name: 'option2:suboption1',
1123
+ * name: 'Suboption 1',
1122
1124
  * callback: function(key, options) {
1123
1125
  * ...
1124
1126
  * }
@@ -1768,15 +1770,15 @@ export default (function () {
1768
1770
  * dropdownMenu: {
1769
1771
  * items: {
1770
1772
  * 'option1': {
1771
- * name: 'option1'
1773
+ * name: 'Option 1'
1772
1774
  * },
1773
1775
  * 'option2': {
1774
- * name: 'option2',
1776
+ * name: 'Option 2',
1775
1777
  * submenu: {
1776
1778
  * items: [
1777
1779
  * {
1778
1780
  * key: 'option2:suboption1',
1779
- * name: 'option2:suboption1',
1781
+ * name: 'Suboption 1',
1780
1782
  * callback(key, options) {
1781
1783
  * ...
1782
1784
  * }
@@ -2433,18 +2435,6 @@ export default (function () {
2433
2435
  * ```
2434
2436
  */
2435
2437
  invalidCellClassName: 'htInvalid',
2436
- /**
2437
- * The `imeFastEdit` option allows using the "fast edit" feature for the IME users. It's disabled by default
2438
- * because of its incompatibility with some of the accessibility features.
2439
- *
2440
- * Enabling this option can make a negative impact on how some screen readers handle reading the table cells.
2441
- *
2442
- * @since 13.0.0
2443
- * @memberof Options#
2444
- * @type {boolean}
2445
- * @category Core
2446
- */
2447
- imeFastEdit: false,
2448
2438
  /**
2449
2439
  * The `isEmptyCol` option lets you define your own custom method
2450
2440
  * for checking if a column at a given visual index is empty.
@@ -3118,6 +3108,25 @@ export default (function () {
3118
3108
  * ```
3119
3109
  */
3120
3110
  multiColumnSorting: void 0,
3111
+ /**
3112
+ * When set to `true`, the `navigableHeaders` option lets you navigate [row headers](@/guides/rows/row-header.md) and [column headers](@/guides/columns/column-header.md), using the arrow keys or the <kbd>**Tab**</kbd> key (if the [`disableTabNavigation`](#disabletabnavigation) option is set to `false`).
3113
+ *
3114
+ * @since 14.0.0
3115
+ * @memberof Options#
3116
+ * @type {boolean}
3117
+ * @default false
3118
+ * @category Core
3119
+ *
3120
+ * @example
3121
+ * ```js
3122
+ * // you can navigate row and column headers with the keyboard
3123
+ * navigableHeaders: true,
3124
+ *
3125
+ * // default behavior: you can't navigate row and column headers with the keyboard
3126
+ * navigableHeaders: false,
3127
+ * ```
3128
+ */
3129
+ navigableHeaders: false,
3121
3130
  /**
3122
3131
  * @description
3123
3132
  * The `nestedHeaders` option configures the [`NestedHeaders`](@/api/nestedHeaders.md) plugin.
@@ -25,8 +25,8 @@
25
25
  * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
26
26
  * USE OR INABILITY TO USE THIS SOFTWARE.
27
27
  *
28
- * Version: 0.0.0-next-a1e4b4f-20230628
29
- * Release date: 28/03/2023 (built at 28/06/2023 13:54:50)
28
+ * Version: 0.0.0-next-e697250-20230707
29
+ * Release date: 22/06/2023 (built at 07/07/2023 07:19:59)
30
30
  */
31
31
  /**
32
32
  * Fix for bootstrap styles
@@ -804,7 +804,7 @@ TextRenderer placeholder value
804
804
  cursor: pointer;
805
805
  -webkit-box-shadow: 0 0 0 6px rgb(238, 238, 238);
806
806
  -moz-box-shadow: 0 0 0 6px rgb(238, 238, 238);
807
- box-shadow: 0 0 0 6px rgb(238, 238, 238);
807
+ box-shadow: 0 0 0 3px rgb(238, 238, 238);
808
808
  background: #eee;
809
809
  text-align: center;
810
810
  }
@@ -1069,10 +1069,21 @@ CheckboxRenderer
1069
1069
  margin-right: 6px;
1070
1070
  }
1071
1071
 
1072
+ [dir=rtl].htContextMenu table tbody tr td .htItemWrapper {
1073
+ margin-right: 10px;
1074
+ margin-left: 6px;
1075
+ }
1076
+
1072
1077
  .htContextMenu table tbody tr td div span.selected {
1073
1078
  margin-top: -2px;
1074
1079
  position: absolute;
1075
1080
  left: 4px;
1081
+ right: 0;
1082
+ }
1083
+
1084
+ [dir=rtl].htContextMenu table tbody tr td div span.selected {
1085
+ right: 4px;
1086
+ left: 0;
1076
1087
  }
1077
1088
 
1078
1089
  .htContextMenu .ht_master .wtHolder {
@@ -1207,10 +1218,21 @@ textarea.HandsontableCopyPaste {
1207
1218
  margin-right: 10px;
1208
1219
  }
1209
1220
 
1221
+ [dir=rtl].htDropdownMenu table tbody tr td .htItemWrapper {
1222
+ margin-right: 10px;
1223
+ margin-left: 10px;
1224
+ }
1225
+
1210
1226
  .htDropdownMenu table tbody tr td div span.selected {
1211
1227
  margin-top: -2px;
1212
1228
  position: absolute;
1213
1229
  left: 4px;
1230
+ right: 0;
1231
+ }
1232
+
1233
+ [dir=rtl].htDropdownMenu table tbody tr td div span.selected {
1234
+ right: 4px;
1235
+ left: 0;
1214
1236
  }
1215
1237
 
1216
1238
  .htDropdownMenu .ht_master .wtHolder {
@@ -25,8 +25,8 @@
25
25
  * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
26
26
  * USE OR INABILITY TO USE THIS SOFTWARE.
27
27
  *
28
- * Version: 0.0.0-next-a1e4b4f-20230628
29
- * Release date: 28/03/2023 (built at 28/06/2023 13:54:50)
28
+ * Version: 0.0.0-next-e697250-20230707
29
+ * Release date: 22/06/2023 (built at 07/07/2023 07:19:59)
30
30
  */
31
31
  /**
32
32
  * Fix for bootstrap styles
@@ -804,7 +804,7 @@ TextRenderer placeholder value
804
804
  cursor: pointer;
805
805
  -webkit-box-shadow: 0 0 0 6px rgb(238, 238, 238);
806
806
  -moz-box-shadow: 0 0 0 6px rgb(238, 238, 238);
807
- box-shadow: 0 0 0 6px rgb(238, 238, 238);
807
+ box-shadow: 0 0 0 3px rgb(238, 238, 238);
808
808
  background: #eee;
809
809
  text-align: center;
810
810
  }
@@ -1302,10 +1302,21 @@ CheckboxRenderer
1302
1302
  margin-right: 6px;
1303
1303
  }
1304
1304
 
1305
+ [dir=rtl].htContextMenu table tbody tr td .htItemWrapper {
1306
+ margin-right: 10px;
1307
+ margin-left: 6px;
1308
+ }
1309
+
1305
1310
  .htContextMenu table tbody tr td div span.selected {
1306
1311
  margin-top: -2px;
1307
1312
  position: absolute;
1308
1313
  left: 4px;
1314
+ right: 0;
1315
+ }
1316
+
1317
+ [dir=rtl].htContextMenu table tbody tr td div span.selected {
1318
+ right: 4px;
1319
+ left: 0;
1309
1320
  }
1310
1321
 
1311
1322
  .htContextMenu .ht_master .wtHolder {
@@ -1440,10 +1451,21 @@ textarea.HandsontableCopyPaste {
1440
1451
  margin-right: 10px;
1441
1452
  }
1442
1453
 
1454
+ [dir=rtl].htDropdownMenu table tbody tr td .htItemWrapper {
1455
+ margin-right: 10px;
1456
+ margin-left: 10px;
1457
+ }
1458
+
1443
1459
  .htDropdownMenu table tbody tr td div span.selected {
1444
1460
  margin-top: -2px;
1445
1461
  position: absolute;
1446
1462
  left: 4px;
1463
+ right: 0;
1464
+ }
1465
+
1466
+ [dir=rtl].htDropdownMenu table tbody tr td div span.selected {
1467
+ right: 4px;
1468
+ left: 0;
1447
1469
  }
1448
1470
 
1449
1471
  .htDropdownMenu .ht_master .wtHolder {