handsontable 16.0.1 → 16.1.0-next-91b8a0f-20250905

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (489) hide show
  1. package/3rdparty/walkontable/src/overlays.js +12 -2
  2. package/3rdparty/walkontable/src/overlays.mjs +12 -2
  3. package/3rdparty/walkontable/src/viewport.js +2 -6
  4. package/3rdparty/walkontable/src/viewport.mjs +2 -6
  5. package/CHANGELOG.md +37 -0
  6. package/base.js +2 -2
  7. package/base.mjs +2 -2
  8. package/cellTypes/autocompleteType/accessors/index.js +7 -0
  9. package/cellTypes/autocompleteType/accessors/index.mjs +2 -0
  10. package/cellTypes/autocompleteType/accessors/valueGetter.js +14 -0
  11. package/cellTypes/autocompleteType/accessors/valueGetter.mjs +10 -0
  12. package/cellTypes/autocompleteType/accessors/valueSetter.js +25 -0
  13. package/cellTypes/autocompleteType/accessors/valueSetter.mjs +21 -0
  14. package/cellTypes/autocompleteType/autocompleteType.js +4 -1
  15. package/cellTypes/autocompleteType/autocompleteType.mjs +4 -1
  16. package/cellTypes/checkboxType/accessors/index.js +5 -0
  17. package/cellTypes/checkboxType/accessors/index.mjs +1 -0
  18. package/cellTypes/checkboxType/accessors/valueSetter.js +26 -0
  19. package/cellTypes/checkboxType/accessors/valueSetter.mjs +22 -0
  20. package/cellTypes/checkboxType/checkboxType.js +3 -1
  21. package/cellTypes/checkboxType/checkboxType.mjs +3 -1
  22. package/cellTypes/dropdownType/accessors/index.js +7 -0
  23. package/cellTypes/dropdownType/accessors/index.mjs +2 -0
  24. package/cellTypes/dropdownType/accessors/valueGetter.js +14 -0
  25. package/cellTypes/dropdownType/accessors/valueGetter.mjs +10 -0
  26. package/cellTypes/dropdownType/accessors/valueSetter.js +17 -0
  27. package/cellTypes/dropdownType/accessors/valueSetter.mjs +13 -0
  28. package/cellTypes/dropdownType/dropdownType.js +4 -1
  29. package/cellTypes/dropdownType/dropdownType.mjs +4 -1
  30. package/cellTypes/numericType/accessors/index.js +5 -0
  31. package/cellTypes/numericType/accessors/index.mjs +1 -0
  32. package/cellTypes/numericType/accessors/valueSetter.js +19 -0
  33. package/cellTypes/numericType/accessors/valueSetter.mjs +15 -0
  34. package/cellTypes/numericType/numericType.js +3 -1
  35. package/cellTypes/numericType/numericType.mjs +3 -1
  36. package/core/focusCatcher/index.js +37 -112
  37. package/core/focusCatcher/index.mjs +35 -110
  38. package/core/focusCatcher/utils.js +31 -0
  39. package/core/focusCatcher/utils.mjs +27 -0
  40. package/core/hooks/constants.js +242 -0
  41. package/core/hooks/constants.mjs +242 -0
  42. package/core/hooks/index.d.ts +22 -0
  43. package/core/viewportScroll/scrollStrategies/focusScroll.js +5 -1
  44. package/core/viewportScroll/scrollStrategies/focusScroll.mjs +5 -1
  45. package/core/viewportScroll/utils.js +1 -1
  46. package/core/viewportScroll/utils.mjs +1 -1
  47. package/core.d.ts +4 -0
  48. package/core.js +237 -139
  49. package/core.mjs +240 -142
  50. package/dataMap/dataMap.js +13 -3
  51. package/dataMap/dataMap.mjs +14 -4
  52. package/dataMap/dataSource.js +16 -0
  53. package/dataMap/dataSource.mjs +16 -0
  54. package/dataMap/metaManager/lazyFactoryMap.js +4 -3
  55. package/dataMap/metaManager/lazyFactoryMap.mjs +2 -1
  56. package/dataMap/metaManager/metaLayers/cellMeta.js +3 -2
  57. package/dataMap/metaManager/metaLayers/cellMeta.mjs +3 -2
  58. package/dataMap/metaManager/metaSchema.js +289 -4
  59. package/dataMap/metaManager/metaSchema.mjs +289 -4
  60. package/dataMap/metaManager/utils.js +0 -11
  61. package/dataMap/metaManager/utils.mjs +0 -10
  62. package/dataMap/replaceData.js +1 -0
  63. package/dataMap/replaceData.mjs +1 -0
  64. package/dist/handsontable.css +281 -4
  65. package/dist/handsontable.full.css +281 -4
  66. package/dist/handsontable.full.js +7842 -2990
  67. package/dist/handsontable.full.min.css +4 -5
  68. package/dist/handsontable.full.min.js +167 -165
  69. package/dist/handsontable.js +9638 -4807
  70. package/dist/handsontable.min.css +4 -4
  71. package/dist/handsontable.min.js +52 -50
  72. package/dist/languages/all.js +231 -21
  73. package/dist/languages/all.min.js +1 -1
  74. package/dist/languages/ar-AR.js +11 -1
  75. package/dist/languages/ar-AR.min.js +1 -1
  76. package/dist/languages/cs-CZ.js +11 -1
  77. package/dist/languages/cs-CZ.min.js +1 -1
  78. package/dist/languages/de-CH.js +11 -1
  79. package/dist/languages/de-CH.min.js +1 -1
  80. package/dist/languages/de-DE.js +11 -1
  81. package/dist/languages/de-DE.min.js +1 -1
  82. package/dist/languages/en-US.js +11 -1
  83. package/dist/languages/en-US.min.js +1 -1
  84. package/dist/languages/es-MX.js +11 -1
  85. package/dist/languages/es-MX.min.js +1 -1
  86. package/dist/languages/fa-IR.js +11 -1
  87. package/dist/languages/fa-IR.min.js +1 -1
  88. package/dist/languages/fr-FR.js +11 -1
  89. package/dist/languages/fr-FR.min.js +1 -1
  90. package/dist/languages/hr-HR.js +11 -1
  91. package/dist/languages/hr-HR.min.js +1 -1
  92. package/dist/languages/it-IT.js +11 -1
  93. package/dist/languages/it-IT.min.js +1 -1
  94. package/dist/languages/ja-JP.js +11 -1
  95. package/dist/languages/ja-JP.min.js +1 -1
  96. package/dist/languages/ko-KR.js +11 -1
  97. package/dist/languages/ko-KR.min.js +1 -1
  98. package/dist/languages/lv-LV.js +11 -1
  99. package/dist/languages/lv-LV.min.js +1 -1
  100. package/dist/languages/nb-NO.js +11 -1
  101. package/dist/languages/nb-NO.min.js +1 -1
  102. package/dist/languages/nl-NL.js +11 -1
  103. package/dist/languages/nl-NL.min.js +1 -1
  104. package/dist/languages/pl-PL.js +11 -1
  105. package/dist/languages/pl-PL.min.js +1 -1
  106. package/dist/languages/pt-BR.js +11 -1
  107. package/dist/languages/pt-BR.min.js +1 -1
  108. package/dist/languages/ru-RU.js +11 -1
  109. package/dist/languages/ru-RU.min.js +1 -1
  110. package/dist/languages/sr-SP.js +11 -1
  111. package/dist/languages/sr-SP.min.js +1 -1
  112. package/dist/languages/zh-CN.js +11 -1
  113. package/dist/languages/zh-CN.min.js +1 -1
  114. package/dist/languages/zh-TW.js +11 -1
  115. package/dist/languages/zh-TW.min.js +1 -1
  116. package/editorManager.js +4 -4
  117. package/editorManager.mjs +4 -4
  118. package/editors/autocompleteEditor/autocompleteEditor.js +50 -112
  119. package/editors/autocompleteEditor/autocompleteEditor.mjs +51 -113
  120. package/editors/baseEditor/baseEditor.js +10 -6
  121. package/editors/baseEditor/baseEditor.mjs +10 -6
  122. package/editors/handsontableEditor/handsontableEditor.js +9 -9
  123. package/editors/handsontableEditor/handsontableEditor.mjs +9 -9
  124. package/editors/textEditor/textEditor.js +0 -7
  125. package/editors/textEditor/textEditor.mjs +0 -7
  126. package/focusManager.js +2 -2
  127. package/focusManager.mjs +2 -2
  128. package/helpers/a11y.js +15 -2
  129. package/helpers/a11y.mjs +10 -2
  130. package/helpers/console.js +12 -0
  131. package/helpers/console.mjs +11 -0
  132. package/helpers/dom/element.js +4 -4
  133. package/helpers/dom/element.mjs +4 -4
  134. package/helpers/mixed.js +65 -2
  135. package/helpers/mixed.mjs +63 -2
  136. package/helpers/number.js +28 -0
  137. package/helpers/number.mjs +26 -0
  138. package/helpers/object.js +35 -0
  139. package/helpers/object.mjs +34 -0
  140. package/helpers/string.js +19 -0
  141. package/helpers/string.mjs +18 -0
  142. package/helpers/templateLiteralTag.js +57 -1
  143. package/helpers/templateLiteralTag.mjs +56 -1
  144. package/i18n/constants.js +13 -1
  145. package/i18n/constants.mjs +13 -1
  146. package/i18n/languages/ar-AR.js +11 -1
  147. package/i18n/languages/ar-AR.mjs +11 -1
  148. package/i18n/languages/cs-CZ.js +11 -1
  149. package/i18n/languages/cs-CZ.mjs +11 -1
  150. package/i18n/languages/de-CH.js +11 -1
  151. package/i18n/languages/de-CH.mjs +11 -1
  152. package/i18n/languages/de-DE.js +11 -1
  153. package/i18n/languages/de-DE.mjs +11 -1
  154. package/i18n/languages/en-US.js +11 -1
  155. package/i18n/languages/en-US.mjs +11 -1
  156. package/i18n/languages/es-MX.js +11 -1
  157. package/i18n/languages/es-MX.mjs +11 -1
  158. package/i18n/languages/fa-IR.js +11 -1
  159. package/i18n/languages/fa-IR.mjs +11 -1
  160. package/i18n/languages/fr-FR.js +11 -1
  161. package/i18n/languages/fr-FR.mjs +11 -1
  162. package/i18n/languages/hr-HR.js +11 -1
  163. package/i18n/languages/hr-HR.mjs +11 -1
  164. package/i18n/languages/it-IT.js +11 -1
  165. package/i18n/languages/it-IT.mjs +11 -1
  166. package/i18n/languages/ja-JP.js +11 -1
  167. package/i18n/languages/ja-JP.mjs +11 -1
  168. package/i18n/languages/ko-KR.js +11 -1
  169. package/i18n/languages/ko-KR.mjs +11 -1
  170. package/i18n/languages/lv-LV.js +11 -1
  171. package/i18n/languages/lv-LV.mjs +11 -1
  172. package/i18n/languages/nb-NO.js +11 -1
  173. package/i18n/languages/nb-NO.mjs +11 -1
  174. package/i18n/languages/nl-NL.js +11 -1
  175. package/i18n/languages/nl-NL.mjs +11 -1
  176. package/i18n/languages/pl-PL.js +11 -1
  177. package/i18n/languages/pl-PL.mjs +11 -1
  178. package/i18n/languages/pt-BR.js +11 -1
  179. package/i18n/languages/pt-BR.mjs +11 -1
  180. package/i18n/languages/ru-RU.js +11 -1
  181. package/i18n/languages/ru-RU.mjs +11 -1
  182. package/i18n/languages/sr-SP.js +11 -1
  183. package/i18n/languages/sr-SP.mjs +11 -1
  184. package/i18n/languages/zh-CN.js +11 -1
  185. package/i18n/languages/zh-CN.mjs +11 -1
  186. package/i18n/languages/zh-TW.js +11 -1
  187. package/i18n/languages/zh-TW.mjs +11 -1
  188. package/i18n/phraseFormatters/index.js +3 -1
  189. package/i18n/phraseFormatters/index.mjs +3 -1
  190. package/i18n/registry.js +5 -6
  191. package/i18n/registry.mjs +5 -6
  192. package/index.d.ts +27 -0
  193. package/languages/all.js +231 -21
  194. package/languages/ar-AR.js +11 -1
  195. package/languages/ar-AR.mjs +11 -1
  196. package/languages/cs-CZ.js +11 -1
  197. package/languages/cs-CZ.mjs +11 -1
  198. package/languages/de-CH.js +11 -1
  199. package/languages/de-CH.mjs +11 -1
  200. package/languages/de-DE.js +11 -1
  201. package/languages/de-DE.mjs +11 -1
  202. package/languages/en-US.js +11 -1
  203. package/languages/en-US.mjs +11 -1
  204. package/languages/es-MX.js +11 -1
  205. package/languages/es-MX.mjs +11 -1
  206. package/languages/fa-IR.js +11 -1
  207. package/languages/fa-IR.mjs +11 -1
  208. package/languages/fr-FR.js +11 -1
  209. package/languages/fr-FR.mjs +11 -1
  210. package/languages/hr-HR.js +11 -1
  211. package/languages/hr-HR.mjs +11 -1
  212. package/languages/index.js +231 -21
  213. package/languages/it-IT.js +11 -1
  214. package/languages/it-IT.mjs +11 -1
  215. package/languages/ja-JP.js +11 -1
  216. package/languages/ja-JP.mjs +11 -1
  217. package/languages/ko-KR.js +11 -1
  218. package/languages/ko-KR.mjs +11 -1
  219. package/languages/lv-LV.js +11 -1
  220. package/languages/lv-LV.mjs +11 -1
  221. package/languages/nb-NO.js +11 -1
  222. package/languages/nb-NO.mjs +11 -1
  223. package/languages/nl-NL.js +11 -1
  224. package/languages/nl-NL.mjs +11 -1
  225. package/languages/pl-PL.js +11 -1
  226. package/languages/pl-PL.mjs +11 -1
  227. package/languages/pt-BR.js +11 -1
  228. package/languages/pt-BR.mjs +11 -1
  229. package/languages/ru-RU.js +11 -1
  230. package/languages/ru-RU.mjs +11 -1
  231. package/languages/sr-SP.js +11 -1
  232. package/languages/sr-SP.mjs +11 -1
  233. package/languages/zh-CN.js +11 -1
  234. package/languages/zh-CN.mjs +11 -1
  235. package/languages/zh-TW.js +11 -1
  236. package/languages/zh-TW.mjs +11 -1
  237. package/mixins/localHooks.js +16 -0
  238. package/mixins/localHooks.mjs +16 -0
  239. package/package.json +19 -1
  240. package/plugins/autoRowSize/autoRowSize.js +43 -6
  241. package/plugins/autoRowSize/autoRowSize.mjs +43 -6
  242. package/plugins/autofill/autofill.js +50 -3
  243. package/plugins/autofill/autofill.mjs +50 -3
  244. package/plugins/base/base.js +86 -15
  245. package/plugins/base/base.mjs +87 -16
  246. package/plugins/collapsibleColumns/collapsibleColumns.js +4 -4
  247. package/plugins/collapsibleColumns/collapsibleColumns.mjs +4 -4
  248. package/plugins/columnSorting/columnSorting.js +3 -3
  249. package/plugins/columnSorting/columnSorting.mjs +3 -3
  250. package/plugins/comments/comments.js +52 -22
  251. package/plugins/comments/comments.mjs +52 -22
  252. package/plugins/comments/contextMenuItem/addEditComment.js +3 -3
  253. package/plugins/comments/contextMenuItem/addEditComment.mjs +3 -3
  254. package/plugins/comments/contextMenuItem/readOnlyComment.js +2 -2
  255. package/plugins/comments/contextMenuItem/readOnlyComment.mjs +2 -2
  256. package/plugins/comments/contextMenuItem/removeComment.js +2 -2
  257. package/plugins/comments/contextMenuItem/removeComment.mjs +2 -2
  258. package/plugins/contextMenu/contextMenu.js +4 -5
  259. package/plugins/contextMenu/contextMenu.mjs +4 -5
  260. package/plugins/contextMenu/menu/cursor.js +1 -1
  261. package/plugins/contextMenu/menu/cursor.mjs +1 -1
  262. package/plugins/contextMenu/menu/defaultShortcutsList.js +5 -5
  263. package/plugins/contextMenu/menu/defaultShortcutsList.mjs +5 -5
  264. package/plugins/contextMenu/menu/menu.js +3 -3
  265. package/plugins/contextMenu/menu/menu.mjs +3 -3
  266. package/plugins/contextMenu/menu/positioner.js +1 -1
  267. package/plugins/contextMenu/menu/positioner.mjs +1 -1
  268. package/plugins/contextMenu/predefinedItems/alignment.js +1 -1
  269. package/plugins/contextMenu/predefinedItems/alignment.mjs +1 -1
  270. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -1
  271. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -1
  272. package/plugins/contextMenu/predefinedItems/columnLeft.js +3 -3
  273. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +3 -3
  274. package/plugins/contextMenu/predefinedItems/columnRight.js +3 -3
  275. package/plugins/contextMenu/predefinedItems/columnRight.mjs +3 -3
  276. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -1
  277. package/plugins/contextMenu/predefinedItems/readOnly.mjs +1 -1
  278. package/plugins/contextMenu/predefinedItems/removeColumn.js +1 -1
  279. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +1 -1
  280. package/plugins/contextMenu/predefinedItems/removeRow.js +1 -1
  281. package/plugins/contextMenu/predefinedItems/removeRow.mjs +1 -1
  282. package/plugins/contextMenu/predefinedItems/rowAbove.js +3 -3
  283. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +3 -3
  284. package/plugins/contextMenu/predefinedItems/rowBelow.js +3 -3
  285. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +3 -3
  286. package/plugins/copyPaste/contextMenuItem/copy.js +1 -1
  287. package/plugins/copyPaste/contextMenuItem/copy.mjs +1 -1
  288. package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.js +3 -3
  289. package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.mjs +3 -3
  290. package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.js +3 -3
  291. package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.mjs +3 -3
  292. package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.js +3 -3
  293. package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.mjs +3 -3
  294. package/plugins/copyPaste/contextMenuItem/cut.js +1 -1
  295. package/plugins/copyPaste/contextMenuItem/cut.mjs +1 -1
  296. package/plugins/copyPaste/copyPaste.js +75 -40
  297. package/plugins/copyPaste/copyPaste.mjs +76 -41
  298. package/plugins/customBorders/customBorders.js +1 -1
  299. package/plugins/customBorders/customBorders.mjs +1 -1
  300. package/plugins/dialog/dialog.d.ts +23 -0
  301. package/plugins/dialog/dialog.js +489 -0
  302. package/plugins/dialog/dialog.mjs +485 -0
  303. package/plugins/dialog/index.d.ts +1 -0
  304. package/plugins/dialog/index.js +7 -0
  305. package/plugins/dialog/index.mjs +1 -0
  306. package/plugins/dialog/ui.js +264 -0
  307. package/plugins/dialog/ui.mjs +259 -0
  308. package/plugins/dropdownMenu/dropdownMenu.js +5 -4
  309. package/plugins/dropdownMenu/dropdownMenu.mjs +5 -4
  310. package/plugins/filters/filters.js +2 -2
  311. package/plugins/filters/filters.mjs +2 -2
  312. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +3 -3
  313. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +3 -3
  314. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +4 -4
  315. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +4 -4
  316. package/plugins/hiddenRows/contextMenuItem/hideRow.js +3 -3
  317. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +3 -3
  318. package/plugins/hiddenRows/contextMenuItem/showRow.js +4 -4
  319. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +4 -4
  320. package/plugins/index.d.ts +9 -0
  321. package/plugins/index.js +9 -0
  322. package/plugins/index.mjs +7 -1
  323. package/plugins/loading/content.js +36 -0
  324. package/plugins/loading/content.mjs +31 -0
  325. package/plugins/loading/index.d.ts +1 -0
  326. package/plugins/loading/index.js +7 -0
  327. package/plugins/loading/index.mjs +1 -0
  328. package/plugins/loading/loading.d.ts +19 -0
  329. package/plugins/loading/loading.js +290 -0
  330. package/plugins/loading/loading.mjs +285 -0
  331. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
  332. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
  333. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
  334. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
  335. package/plugins/manualColumnMove/manualColumnMove.js +3 -3
  336. package/plugins/manualColumnMove/manualColumnMove.mjs +3 -3
  337. package/plugins/manualColumnResize/manualColumnResize.js +3 -3
  338. package/plugins/manualColumnResize/manualColumnResize.mjs +3 -3
  339. package/plugins/manualRowMove/manualRowMove.js +4 -4
  340. package/plugins/manualRowMove/manualRowMove.mjs +4 -4
  341. package/plugins/manualRowResize/manualRowResize.js +5 -2
  342. package/plugins/manualRowResize/manualRowResize.mjs +5 -2
  343. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +15 -15
  344. package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +15 -15
  345. package/plugins/mergeCells/focusOrder.js +75 -39
  346. package/plugins/mergeCells/focusOrder.mjs +75 -39
  347. package/plugins/mergeCells/mergeCells.js +26 -19
  348. package/plugins/mergeCells/mergeCells.mjs +26 -19
  349. package/plugins/mergeCells/renderer.js +14 -8
  350. package/plugins/mergeCells/renderer.mjs +14 -8
  351. package/plugins/multiColumnSorting/multiColumnSorting.js +3 -3
  352. package/plugins/multiColumnSorting/multiColumnSorting.mjs +3 -3
  353. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +3 -3
  354. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +3 -3
  355. package/plugins/nestedHeaders/nestedHeaders.js +47 -41
  356. package/plugins/nestedHeaders/nestedHeaders.mjs +47 -41
  357. package/plugins/nestedRows/nestedRows.js +3 -3
  358. package/plugins/nestedRows/nestedRows.mjs +3 -3
  359. package/plugins/nestedRows/ui/collapsing.js +1 -2
  360. package/plugins/nestedRows/ui/collapsing.mjs +1 -2
  361. package/plugins/nestedRows/ui/contextMenu.js +4 -4
  362. package/plugins/nestedRows/ui/contextMenu.mjs +4 -4
  363. package/plugins/nestedRows/ui/headers.js +4 -1
  364. package/plugins/nestedRows/ui/headers.mjs +4 -1
  365. package/plugins/pagination/focusController.js +27 -0
  366. package/plugins/pagination/focusController.mjs +23 -0
  367. package/plugins/pagination/index.d.ts +1 -0
  368. package/plugins/pagination/index.js +7 -0
  369. package/plugins/pagination/index.mjs +1 -0
  370. package/plugins/pagination/pagination.d.ts +52 -0
  371. package/plugins/pagination/pagination.js +1034 -0
  372. package/plugins/pagination/pagination.mjs +1030 -0
  373. package/plugins/pagination/strategies/autoPageSize.js +96 -0
  374. package/plugins/pagination/strategies/autoPageSize.mjs +92 -0
  375. package/plugins/pagination/strategies/fixedPageSize.js +88 -0
  376. package/plugins/pagination/strategies/fixedPageSize.mjs +84 -0
  377. package/plugins/pagination/strategies/index.js +22 -0
  378. package/plugins/pagination/strategies/index.mjs +18 -0
  379. package/plugins/pagination/ui.js +449 -0
  380. package/plugins/pagination/ui.mjs +443 -0
  381. package/plugins/pagination/utils.js +28 -0
  382. package/plugins/pagination/utils.mjs +24 -0
  383. package/plugins/stretchColumns/calculator.js +4 -0
  384. package/plugins/stretchColumns/calculator.mjs +4 -0
  385. package/plugins/stretchColumns/stretchColumns.js +1 -1
  386. package/plugins/stretchColumns/stretchColumns.mjs +1 -1
  387. package/plugins/undoRedo/actions/dataChange.js +17 -15
  388. package/plugins/undoRedo/actions/dataChange.mjs +17 -15
  389. package/renderers/checkboxRenderer/checkboxRenderer.js +3 -3
  390. package/renderers/checkboxRenderer/checkboxRenderer.mjs +3 -3
  391. package/selection/range.js +11 -0
  392. package/selection/range.mjs +11 -0
  393. package/selection/selection.js +163 -124
  394. package/selection/selection.mjs +163 -124
  395. package/selection/transformation/_base.js +448 -0
  396. package/selection/transformation/_base.mjs +443 -0
  397. package/selection/transformation/extender.js +55 -0
  398. package/selection/transformation/extender.mjs +51 -0
  399. package/selection/transformation/focus.js +77 -0
  400. package/selection/transformation/focus.mjs +73 -0
  401. package/selection/transformation/index.js +7 -0
  402. package/selection/transformation/index.mjs +2 -0
  403. package/selection/utils.js +2 -1
  404. package/selection/utils.mjs +2 -1
  405. package/settings.d.ts +10 -1
  406. package/shortcutContexts/commands/editor/fastOpen.js +1 -1
  407. package/shortcutContexts/commands/editor/fastOpen.mjs +1 -1
  408. package/shortcutContexts/commands/editor/open.js +10 -4
  409. package/shortcutContexts/commands/editor/open.mjs +10 -4
  410. package/shortcutContexts/commands/extendCellsSelection/down.js +1 -1
  411. package/shortcutContexts/commands/extendCellsSelection/down.mjs +1 -1
  412. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.js +2 -2
  413. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.mjs +2 -2
  414. package/shortcutContexts/commands/extendCellsSelection/left.js +1 -1
  415. package/shortcutContexts/commands/extendCellsSelection/left.mjs +1 -1
  416. package/shortcutContexts/commands/extendCellsSelection/right.js +1 -1
  417. package/shortcutContexts/commands/extendCellsSelection/right.mjs +1 -1
  418. package/shortcutContexts/commands/extendCellsSelection/toColumns.js +1 -1
  419. package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +1 -1
  420. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +1 -1
  421. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +1 -1
  422. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +1 -1
  423. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +1 -1
  424. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +1 -1
  425. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +1 -1
  426. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +1 -1
  427. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +1 -1
  428. package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +1 -1
  429. package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +1 -1
  430. package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +1 -1
  431. package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +1 -1
  432. package/shortcutContexts/commands/extendCellsSelection/toRows.js +1 -1
  433. package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +1 -1
  434. package/shortcutContexts/commands/extendCellsSelection/up.js +1 -1
  435. package/shortcutContexts/commands/extendCellsSelection/up.mjs +1 -1
  436. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.js +2 -2
  437. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.mjs +2 -2
  438. package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.js +2 -2
  439. package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.mjs +2 -2
  440. package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +5 -2
  441. package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +5 -2
  442. package/shortcutContexts/commands/moveCellSelection/inlineStart.js +5 -2
  443. package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +5 -2
  444. package/shortcutContexts/commands/moveCellSelection/toMostBottom.js +1 -1
  445. package/shortcutContexts/commands/moveCellSelection/toMostBottom.mjs +1 -1
  446. package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.js +1 -1
  447. package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.mjs +1 -1
  448. package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.js +1 -1
  449. package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.mjs +1 -1
  450. package/shortcutContexts/commands/moveCellSelection/toMostLeft.js +1 -1
  451. package/shortcutContexts/commands/moveCellSelection/toMostLeft.mjs +1 -1
  452. package/shortcutContexts/commands/moveCellSelection/toMostRight.js +1 -1
  453. package/shortcutContexts/commands/moveCellSelection/toMostRight.mjs +1 -1
  454. package/shortcutContexts/commands/moveCellSelection/toMostTop.js +1 -1
  455. package/shortcutContexts/commands/moveCellSelection/toMostTop.mjs +1 -1
  456. package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.js +2 -2
  457. package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.mjs +2 -2
  458. package/shortcutContexts/commands/scrollToFocusedCell.js +1 -1
  459. package/shortcutContexts/commands/scrollToFocusedCell.mjs +1 -1
  460. package/shortcutContexts/grid.js +3 -3
  461. package/shortcutContexts/grid.mjs +3 -3
  462. package/shortcuts/context.js +4 -1
  463. package/shortcuts/context.mjs +4 -1
  464. package/shortcuts/manager.js +17 -3
  465. package/shortcuts/manager.mjs +17 -3
  466. package/styles/handsontable.css +288 -22
  467. package/styles/handsontable.min.css +3 -3
  468. package/styles/ht-theme-classic.css +828 -0
  469. package/styles/ht-theme-classic.min.css +30 -0
  470. package/styles/ht-theme-horizon.css +122 -26
  471. package/styles/ht-theme-horizon.min.css +3 -3
  472. package/styles/ht-theme-main.css +124 -28
  473. package/styles/ht-theme-main.min.css +3 -3
  474. package/tableView.js +61 -25
  475. package/tableView.mjs +61 -25
  476. package/utils/a11yAnnouncer.js +70 -0
  477. package/utils/a11yAnnouncer.mjs +64 -0
  478. package/{core/focusCatcher → utils}/focusDetector.js +30 -12
  479. package/{core/focusCatcher → utils}/focusDetector.mjs +30 -12
  480. package/utils/samplesGenerator.js +17 -1
  481. package/utils/samplesGenerator.mjs +17 -1
  482. package/utils/stylesHandler.js +23 -8
  483. package/utils/stylesHandler.mjs +23 -8
  484. package/utils/valueAccessors.js +45 -0
  485. package/utils/valueAccessors.mjs +40 -0
  486. package/validators/autocompleteValidator/autocompleteValidator.js +2 -1
  487. package/validators/autocompleteValidator/autocompleteValidator.mjs +2 -1
  488. package/selection/transformation.js +0 -335
  489. package/selection/transformation.mjs +0 -331
@@ -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: 16.0.1
29
- * Release date: 10/07/2025 (built at 10/07/2025 10:59:04)
28
+ * Version: 16.1.0-next-91b8a0f-20250905
29
+ * Release date: 11/09/2025 (built at 05/09/2025 09:35:31)
30
30
  */
31
31
  .ht-root-wrapper:not([class*=ht-theme]),
32
32
  .ht-portal:not([class*=ht-theme]) {
@@ -52,9 +52,19 @@
52
52
  --ht-header-row-active-foreground-color: #fff;
53
53
  --ht-header-row-active-background-color: #1a42e8;
54
54
  --ht-cell-selection-border-color: #1a42e8;
55
+ --ht-scrollbar-track-color: #f7f7f9;
56
+ --ht-scrollbar-thumb-color: #a3a3a3;
55
57
  }
56
58
 
57
- .ht-root-wrapper .htFocusCatcher {
59
+ .ht-root-wrapper {
60
+ font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Helvetica Neue, Arial, sans-serif;
61
+ position: relative;
62
+ display: flex;
63
+ flex-direction: column;
64
+ height: 100%;
65
+ }
66
+
67
+ .htFocusCatcher {
58
68
  position: absolute;
59
69
  width: 0;
60
70
  height: 0;
@@ -65,6 +75,11 @@
65
75
  z-index: -1;
66
76
  }
67
77
 
78
+ .ht-grid {
79
+ flex: 1 1 auto;
80
+ min-height: 0;
81
+ }
82
+
68
83
  .handsontable {
69
84
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Helvetica Neue, Arial, sans-serif;
70
85
  position: relative;
@@ -111,6 +126,10 @@
111
126
  .handsontable.htGhostTable table thead th {
112
127
  border-bottom-width: 0;
113
128
  }
129
+ .handsontable.htGhostTable table tbody tr:first-of-type th:first-child,
130
+ .handsontable.htGhostTable table tbody tr:first-of-type td:first-child {
131
+ height: calc(var(--ht-cell-vertical-padding) * 2 + var(--ht-line-height) + 1px);
132
+ }
114
133
  .handsontable.htGhostTable table tbody tr th,
115
134
  .handsontable.htGhostTable table tbody tr td {
116
135
  border-top-width: 0;
@@ -121,10 +140,12 @@
121
140
  border-top-width: 1px;
122
141
  height: calc(var(--ht-cell-vertical-padding) * 2 + var(--ht-line-height) + 2px);
123
142
  }
124
- .handsontable.htHasScrollX .ht_master .wtHolder, .handsontable.htHasScrollY .ht_master .wtHolder {
125
- background-color: var(--ht-background-color);
143
+ .handsontable.htHasScrollX:not(.htHorizontallyScrollableByWindow) .ht_master .wtHolder, .handsontable.htHasScrollY:not(.htVerticallyScrollableByWindow) .ht_master .wtHolder {
126
144
  border-radius: var(--ht-wrapper-border-radius, 0);
127
145
  }
146
+ .handsontable:not(.htHorizontallyScrollableByWindow) .ht_master .wtHolder, .handsontable:not(.htVerticallyScrollableByWindow) .ht_master .wtHolder {
147
+ background-color: var(--ht-background-color);
148
+ }
128
149
  .handsontable tr.ht__row_even th {
129
150
  background-color: var(--ht-row-header-even-background-color);
130
151
  }
@@ -224,8 +245,8 @@
224
245
  color: var(--ht-header-row-active-foreground-color);
225
246
  background-color: var(--ht-header-row-active-background-color);
226
247
  }
227
- .handsontable tbody tr:first-of-type th,
228
- .handsontable tbody tr:first-of-type td {
248
+ .handsontable tbody tr:first-of-type th:first-child,
249
+ .handsontable tbody tr:first-of-type td:first-child {
229
250
  height: calc(var(--ht-cell-vertical-padding) * 2 + var(--ht-line-height) + 2px);
230
251
  }
231
252
  .handsontable tbody tr th {
@@ -403,6 +424,14 @@
403
424
  .handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr.lastChild th, .handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) ~ .handsontable thead tr.lastChild th {
404
425
  border-bottom-width: 0;
405
426
  }
427
+ .handsontable .ht_master.innerBorderTop tbody tr:first-child th,
428
+ .handsontable .ht_master.innerBorderTop tbody tr:first-child td {
429
+ border-top-width: 0;
430
+ }
431
+ .handsontable .ht_master.innerBorderTop ~ .ht_clone_inline_start tbody tr:first-child th,
432
+ .handsontable .ht_master.innerBorderTop ~ .ht_clone_inline_start tbody tr:first-child td {
433
+ border-top-width: 0;
434
+ }
406
435
  .handsontable .ht_master table.htCore > thead,
407
436
  .handsontable .ht_master table.htCore > tbody > tr > th,
408
437
  .handsontable .ht_clone_inline_start table.htCore > thead {
@@ -543,18 +572,18 @@
543
572
  .handsontable.ht-wrapper.htHasScrollX .htCore tbody tr:last-child th:last-child {
544
573
  border-end-end-radius: 0 !important;
545
574
  }
546
- .handsontable.ht-wrapper.htHasScrollY .htCore {
575
+ .handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore {
547
576
  border-start-end-radius: 0;
548
577
  border-end-end-radius: 0;
549
578
  }
550
- .handsontable.ht-wrapper.htHasScrollY .htCore thead tr:first-child th:last-child,
551
- .handsontable.ht-wrapper.htHasScrollY .htCore tbody tr:first-child td:last-child,
552
- .handsontable.ht-wrapper.htHasScrollY .htCore tbody tr:first-child th:last-child {
579
+ .handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore thead tr:first-child th:last-child,
580
+ .handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore tbody tr:first-child td:last-child,
581
+ .handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore tbody tr:first-child th:last-child {
553
582
  border-start-end-radius: 0 !important;
554
583
  }
555
- .handsontable.ht-wrapper.htHasScrollY .htCore thead tr:last-child th:last-child,
556
- .handsontable.ht-wrapper.htHasScrollY .htCore tbody tr:last-child td:last-child,
557
- .handsontable.ht-wrapper.htHasScrollY .htCore tbody tr:last-child th:last-child {
584
+ .handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore thead tr:last-child th:last-child,
585
+ .handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore tbody tr:last-child td:last-child,
586
+ .handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore tbody tr:last-child th:last-child {
558
587
  border-end-end-radius: 0 !important;
559
588
  }
560
589
 
@@ -762,8 +791,8 @@
762
791
  .hot-display-license-info {
763
792
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Helvetica Neue, Arial, sans-serif;
764
793
  padding: var(--ht-license-vertical-padding, 16px) var(--ht-license-horizontal-padding, 16px);
765
- font-size: calc(var(--ht-font-size) - 2px);
766
- line-height: calc(var(--ht-line-height) - 2px);
794
+ font-size: var(--ht-font-size-small);
795
+ line-height: var(--ht-line-height-small);
767
796
  color: var(--ht-license-foreground-color);
768
797
  background-color: var(--ht-license-background-color, #f7f7f9);
769
798
  text-align: left;
@@ -788,6 +817,7 @@
788
817
  float: right;
789
818
  top: calc((var(--ht-line-height) - var(--ht-icon-size)) / 2);
790
819
  margin-inline-start: calc(var(--ht-gap-size) * 2);
820
+ margin-inline-end: 1px;
791
821
  }
792
822
  .handsontable .htAutocompleteArrow::after {
793
823
  content: "";
@@ -822,6 +852,9 @@
822
852
  .handsontable .htCheckboxRendererInput::before {
823
853
  content: "";
824
854
  display: inline-block;
855
+ position: absolute;
856
+ top: 0;
857
+ left: 0;
825
858
  width: var(--ht-checkbox-size);
826
859
  height: var(--ht-checkbox-size);
827
860
  border-radius: var(--ht-checkbox-border-radius);
@@ -839,6 +872,8 @@
839
872
  left: 0;
840
873
  color: var(--ht-checkbox-icon-color);
841
874
  pointer-events: none;
875
+ width: var(--ht-checkbox-size) !important;
876
+ height: var(--ht-checkbox-size) !important;
842
877
  }
843
878
  .handsontable .htCheckboxRendererInput:checked::before {
844
879
  border-color: var(--ht-checkbox-checked-border-color);
@@ -1488,6 +1523,7 @@
1488
1523
  .handsontable .collapsibleIndicator {
1489
1524
  top: calc((var(--ht-line-height) - var(--ht-icon-size)) / 2);
1490
1525
  margin-inline-start: var(--ht-gap-size);
1526
+ margin-inline-end: 1px;
1491
1527
  }
1492
1528
  .handsontable .collapsibleIndicator,
1493
1529
  .handsontable .ht_nestingButton {
@@ -1691,6 +1727,7 @@
1691
1727
  float: right;
1692
1728
  top: calc((var(--ht-line-height) - var(--ht-icon-size)) / 2);
1693
1729
  margin-inline-start: var(--ht-gap-size);
1730
+ margin-inline-end: 1px;
1694
1731
  }
1695
1732
  .handsontable .changeType::before {
1696
1733
  content: "";
@@ -1772,6 +1809,9 @@
1772
1809
  .handsontable.htDropdownMenu .wtBorder, .handsontable.htContextMenu .wtBorder, .handsontable.htFiltersConditionsMenu .wtBorder {
1773
1810
  visibility: hidden;
1774
1811
  }
1812
+ .handsontable.htDropdownMenu tbody tr:first-of-type td:first-child, .handsontable.htDropdownMenu tbody tr:first-of-type th:first-child, .handsontable.htContextMenu tbody tr:first-of-type td:first-child, .handsontable.htContextMenu tbody tr:first-of-type th:first-child, .handsontable.htFiltersConditionsMenu tbody tr:first-of-type td:first-child, .handsontable.htFiltersConditionsMenu tbody tr:first-of-type th:first-child {
1813
+ height: calc(var(--ht-cell-vertical-padding) * 2 + var(--ht-line-height) + 1px);
1814
+ }
1775
1815
  .handsontable.htDropdownMenu table tbody tr td, .handsontable.htContextMenu table tbody tr td, .handsontable.htFiltersConditionsMenu table tbody tr td {
1776
1816
  position: relative;
1777
1817
  padding: var(--ht-menu-item-vertical-padding, 4px) var(--ht-menu-item-horizontal-padding, 8px);
@@ -1900,8 +1940,8 @@
1900
1940
  padding-top: calc(var(--ht-menu-item-vertical-padding, 4px) * 2);
1901
1941
  }
1902
1942
  .handsontable .htFiltersMenuLabel {
1903
- font-size: calc(var(--ht-font-size) - 2px);
1904
- line-height: calc(var(--ht-line-height) - 4px);
1943
+ font-size: var(--ht-font-size-small);
1944
+ line-height: var(--ht-line-height-small);
1905
1945
  font-weight: var(--ht-font-weight);
1906
1946
  margin-bottom: calc(var(--ht-gap-size, 2px) * 2);
1907
1947
  }
@@ -1959,7 +1999,7 @@
1959
1999
  padding: calc(var(--ht-gap-size) * 2) 0;
1960
2000
  }
1961
2001
  .handsontable .htUIMultipleSelectHot .wtHolder td {
1962
- height: auto;
2002
+ height: auto !important;
1963
2003
  padding: 4px var(--ht-cell-horizontal-padding);
1964
2004
  }
1965
2005
  .handsontable .htUIClearAll,
@@ -2184,6 +2224,7 @@
2184
2224
  width: 2px;
2185
2225
  height: calc(100% - 12px);
2186
2226
  max-height: 16px;
2227
+ margin-top: 0.5px;
2187
2228
  background: var(--ht-resize-indicator-color);
2188
2229
  border-radius: 2px;
2189
2230
  transform: translateY(-50%);
@@ -2367,11 +2408,9 @@
2367
2408
  display: none;
2368
2409
  }
2369
2410
  .handsontable .ht__manualRowMove--guideline, .handsontable.ht__manualRowMove--guideline {
2370
- height: 1px;
2411
+ border-top: 1px solid var(--ht-move-indicator-color);
2371
2412
  left: 0;
2372
- margin-top: -0.5px;
2373
2413
  z-index: 205;
2374
- background: var(--ht-move-indicator-color);
2375
2414
  }
2376
2415
  .handsontable .ht__manualRowMove--backlight, .handsontable.ht__manualRowMove--backlight {
2377
2416
  display: none;
@@ -2384,3 +2423,230 @@
2384
2423
  .handsontable.on-moving--rows .ht__manualRowMove--backlight {
2385
2424
  display: block;
2386
2425
  }
2426
+
2427
+ .ht-dialog {
2428
+ position: absolute;
2429
+ top: 0;
2430
+ left: 0;
2431
+ display: none;
2432
+ font-size: var(--ht-font-size);
2433
+ line-height: var(--ht-line-height);
2434
+ letter-spacing: var(--ht-letter-spacing);
2435
+ width: 100%;
2436
+ height: 100%;
2437
+ z-index: 1060;
2438
+ opacity: 0;
2439
+ overflow-y: auto;
2440
+ border-radius: var(--ht-wrapper-border-radius);
2441
+ border: 1px solid var(--ht-border-color);
2442
+ box-sizing: border-box !important;
2443
+ }
2444
+ .ht-dialog[dir=rtl] {
2445
+ left: auto;
2446
+ right: 0;
2447
+ }
2448
+ .ht-dialog:focus {
2449
+ border: 1px solid var(--ht-accent-color);
2450
+ outline: none;
2451
+ }
2452
+ .ht-dialog:has(.htFocusCatcher:focus) {
2453
+ border: 1px solid var(--ht-accent-color);
2454
+ outline: none;
2455
+ }
2456
+ .ht-dialog * {
2457
+ box-sizing: border-box !important;
2458
+ }
2459
+ .ht-dialog--background-solid {
2460
+ background-color: var(--ht-dialog-solid-background-color);
2461
+ }
2462
+ .ht-dialog--background-semi-transparent {
2463
+ background-color: var(--ht-dialog-semi-transparent-background-color);
2464
+ }
2465
+ .ht-dialog--animation {
2466
+ transition: opacity var(--ht-table-transition) ease-in-out;
2467
+ }
2468
+ .ht-dialog--show {
2469
+ opacity: 1;
2470
+ }
2471
+ .ht-dialog__content-wrapper {
2472
+ display: flex;
2473
+ align-items: center;
2474
+ justify-content: center;
2475
+ width: 100%;
2476
+ min-height: 100%;
2477
+ padding: calc(var(--ht-gap-size) * 4);
2478
+ border-radius: var(--ht-wrapper-border-radius);
2479
+ }
2480
+ .ht-dialog__content {
2481
+ position: relative;
2482
+ padding: var(--ht-dialog-content-padding-horizontal) var(--ht-dialog-content-padding-vertical);
2483
+ max-width: 480px;
2484
+ color: var(--ht-foreground-color);
2485
+ }
2486
+ .ht-dialog__content--background {
2487
+ box-shadow: var(--ht-shadow-x, 0) var(--ht-shadow-y, 0) var(--ht-shadow-blur, 8px) var(--ht-shadow-color, rgba(0, 0, 0, 0.08));
2488
+ border-radius: var(--ht-dialog-content-border-radius);
2489
+ background-color: var(--ht-dialog-content-background-color);
2490
+ }
2491
+
2492
+ .handsontable.ht-pagination {
2493
+ color: var(--ht-pagination-bar-foreground-color);
2494
+ background: var(--ht-pagination-bar-background-color);
2495
+ border: 1px solid var(--ht-wrapper-border-color);
2496
+ border-top-color: transparent;
2497
+ border-radius: 0 0 var(--ht-wrapper-border-radius) var(--ht-wrapper-border-radius);
2498
+ font-size: var(--ht-font-size);
2499
+ line-height: var(--ht-line-height);
2500
+ box-sizing: border-box;
2501
+ overflow-x: auto;
2502
+ }
2503
+ .handsontable.ht-pagination--bordered {
2504
+ border-top-color: var(--ht-wrapper-border-color);
2505
+ }
2506
+ .handsontable.ht-pagination .ht-pagination__inner {
2507
+ display: flex;
2508
+ justify-content: space-between;
2509
+ align-items: center;
2510
+ flex-wrap: wrap;
2511
+ gap: calc(var(--ht-gap-size) * 4);
2512
+ border-radius: 0 0 var(--ht-wrapper-border-radius) var(--ht-wrapper-border-radius);
2513
+ padding-inline: var(--ht-pagination-bar-horizontal-padding);
2514
+ padding-block: var(--ht-pagination-bar-vertical-padding);
2515
+ min-width: 230px;
2516
+ }
2517
+ .handsontable.ht-pagination .ht-page-size-section {
2518
+ display: flex;
2519
+ align-items: center;
2520
+ gap: calc(var(--ht-gap-size) * 2);
2521
+ }
2522
+ .handsontable.ht-pagination .ht-page-size-section__label {
2523
+ white-space: nowrap;
2524
+ }
2525
+ .handsontable.ht-pagination .ht-page-size-section__select-wrapper {
2526
+ position: relative;
2527
+ border-radius: var(--ht-input-border-radius);
2528
+ border: 1px solid var(--ht-input-border-color);
2529
+ }
2530
+ .handsontable.ht-pagination .ht-page-size-section__select-wrapper select {
2531
+ padding-inline-start: var(--ht-gap-size);
2532
+ padding-inline-end: calc(var(--ht-gap-size) + var(--ht-icon-size));
2533
+ padding-top: var(--ht-gap-size);
2534
+ padding-bottom: var(--ht-gap-size);
2535
+ border-radius: var(--ht-input-border-radius);
2536
+ color: var(--ht-input-foreground-color);
2537
+ background-color: var(--ht-input-background-color);
2538
+ line-height: calc(var(--ht-line-height) - 4px);
2539
+ border: none;
2540
+ -webkit-appearance: none;
2541
+ font-size: inherit;
2542
+ cursor: pointer;
2543
+ }
2544
+ .handsontable.ht-pagination .ht-page-size-section__select-wrapper select:disabled {
2545
+ opacity: 0.4;
2546
+ cursor: default;
2547
+ }
2548
+ .handsontable.ht-pagination .ht-page-size-section__select-wrapper select:hover:not(:disabled) {
2549
+ background-color: var(--ht-secondary-button-hover-background-color);
2550
+ }
2551
+ .handsontable.ht-pagination .ht-page-size-section__select-wrapper select:focus {
2552
+ background-color: var(--ht-input-focus-background-color);
2553
+ outline: 1px solid var(--ht-accent-color);
2554
+ }
2555
+ .handsontable.ht-pagination .ht-page-size-section__select-wrapper::after {
2556
+ content: "";
2557
+ display: block;
2558
+ position: absolute;
2559
+ inset-inline-end: var(--ht-gap-size);
2560
+ inset-block-end: 50%;
2561
+ transform: translateY(50%);
2562
+ background-color: var(--ht-foreground-color);
2563
+ pointer-events: none;
2564
+ }
2565
+ .handsontable.ht-pagination .ht-page-counter-section {
2566
+ margin-inline-end: auto;
2567
+ }
2568
+ .handsontable.ht-pagination .ht-page-navigation-section {
2569
+ display: flex;
2570
+ align-items: center;
2571
+ gap: 1px;
2572
+ }
2573
+ .handsontable.ht-pagination .ht-page-navigation-section__button {
2574
+ font-size: inherit;
2575
+ color: var(--ht-foreground-color);
2576
+ background-color: var(--ht-pagination-bar-background-color);
2577
+ border: none;
2578
+ border-radius: var(--ht-icon-button-large-border-radius);
2579
+ padding: var(--ht-icon-button-large-padding);
2580
+ cursor: pointer;
2581
+ }
2582
+ .handsontable.ht-pagination .ht-page-navigation-section__button::before {
2583
+ content: "";
2584
+ display: block;
2585
+ }
2586
+ .handsontable.ht-pagination .ht-page-navigation-section__button--disabled {
2587
+ opacity: 0.4;
2588
+ cursor: default;
2589
+ pointer-events: none;
2590
+ }
2591
+ .handsontable.ht-pagination .ht-page-navigation-section__button:hover:not(:disabled) {
2592
+ background-color: var(--ht-secondary-button-hover-background-color);
2593
+ }
2594
+ .handsontable.ht-pagination .ht-page-navigation-section__button:focus {
2595
+ outline: 1px solid var(--ht-accent-color);
2596
+ }
2597
+ .handsontable.ht-pagination .ht-page-navigation-section__label {
2598
+ white-space: nowrap;
2599
+ min-width: 100px;
2600
+ text-align: center;
2601
+ }
2602
+ .handsontable.ht-wrapper.htPagination {
2603
+ border-end-start-radius: 0;
2604
+ border-end-end-radius: 0;
2605
+ }
2606
+ .handsontable.ht-wrapper.htPagination .htCore {
2607
+ border-end-start-radius: 0;
2608
+ border-end-end-radius: 0;
2609
+ }
2610
+ .handsontable.ht-wrapper.htPagination .htCore thead tr:last-child th:first-child,
2611
+ .handsontable.ht-wrapper.htPagination .htCore tbody tr:last-child td:first-child,
2612
+ .handsontable.ht-wrapper.htPagination .htCore tbody tr:last-child th:first-child {
2613
+ border-end-start-radius: 0 !important;
2614
+ }
2615
+ .handsontable.ht-wrapper.htPagination .htCore thead tr:last-child th:last-child,
2616
+ .handsontable.ht-wrapper.htPagination .htCore tbody tr:last-child td:last-child,
2617
+ .handsontable.ht-wrapper.htPagination .htCore tbody tr:last-child th:last-child {
2618
+ border-end-end-radius: 0 !important;
2619
+ }
2620
+
2621
+ .ht-loading__icon-svg {
2622
+ display: block;
2623
+ width: var(--ht-icon-size);
2624
+ height: var(--ht-icon-size);
2625
+ color: var(--ht-accent-color);
2626
+ animation: ht-loading-spin 1s linear infinite;
2627
+ transform-origin: 50% 50%;
2628
+ }
2629
+ .ht-loading__content {
2630
+ display: flex;
2631
+ align-items: center;
2632
+ gap: calc(var(--ht-gap-size) * 2);
2633
+ }
2634
+ .ht-loading__title {
2635
+ margin: 0;
2636
+ font-size: var(--ht-font-size);
2637
+ font-weight: var(--ht-font-weight);
2638
+ line-height: var(--ht-line-height);
2639
+ }
2640
+ .ht-loading__description {
2641
+ margin: 0;
2642
+ color: var(--ht-foreground-secondary-color);
2643
+ font-size: var(--ht-font-size-small);
2644
+ line-height: var(--ht-line-height-small);
2645
+ font-weight: var(--ht-font-weight);
2646
+ }
2647
+
2648
+ @keyframes ht-loading-spin {
2649
+ to {
2650
+ transform: rotate(360deg);
2651
+ }
2652
+ }