handsontable 18.0.0 → 18.1.0-rc1

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 (1238) hide show
  1. package/3rdparty/walkontable/src/axisSizing/axisSizeSource.d.mts +1 -0
  2. package/3rdparty/walkontable/src/axisSizing/axisSizeSource.d.ts +55 -0
  3. package/3rdparty/walkontable/src/axisSizing/axisSizeSource.js +15 -0
  4. package/3rdparty/walkontable/src/axisSizing/axisSizeSource.mjs +14 -0
  5. package/3rdparty/walkontable/src/axisSizing/boxModel.d.mts +1 -0
  6. package/3rdparty/walkontable/src/axisSizing/boxModel.d.ts +32 -0
  7. package/3rdparty/walkontable/src/axisSizing/boxModel.js +45 -0
  8. package/3rdparty/walkontable/src/axisSizing/boxModel.mjs +33 -0
  9. package/3rdparty/walkontable/src/axisSizing/columnUtils.d.mts +2 -0
  10. package/3rdparty/walkontable/src/{utils/column.d.ts → axisSizing/columnUtils.d.ts} +12 -10
  11. package/3rdparty/walkontable/src/axisSizing/columnUtils.js +142 -0
  12. package/3rdparty/walkontable/src/axisSizing/columnUtils.mjs +137 -0
  13. package/3rdparty/walkontable/src/axisSizing/defaultSizeSource.d.mts +1 -0
  14. package/3rdparty/walkontable/src/axisSizing/defaultSizeSource.d.ts +58 -0
  15. package/3rdparty/walkontable/src/axisSizing/defaultSizeSource.js +124 -0
  16. package/3rdparty/walkontable/src/axisSizing/defaultSizeSource.mjs +114 -0
  17. package/3rdparty/walkontable/src/axisSizing/oversizedRows.d.mts +1 -0
  18. package/3rdparty/walkontable/src/axisSizing/oversizedRows.d.ts +162 -0
  19. package/3rdparty/walkontable/src/axisSizing/oversizedRows.js +424 -0
  20. package/3rdparty/walkontable/src/axisSizing/oversizedRows.mjs +522 -0
  21. package/3rdparty/walkontable/src/axisSizing/positionCache/index.d.ts +130 -0
  22. package/3rdparty/walkontable/src/axisSizing/positionCache/index.js +251 -0
  23. package/3rdparty/walkontable/src/axisSizing/positionCache/index.mjs +257 -0
  24. package/3rdparty/walkontable/src/axisSizing/positionCache/prefixSumStrategy.d.mts +1 -0
  25. package/3rdparty/walkontable/src/axisSizing/positionCache/prefixSumStrategy.d.ts +51 -0
  26. package/3rdparty/walkontable/src/axisSizing/positionCache/prefixSumStrategy.js +116 -0
  27. package/3rdparty/walkontable/src/axisSizing/positionCache/prefixSumStrategy.mjs +112 -0
  28. package/3rdparty/walkontable/src/axisSizing/positionCache/sparseStrategy.d.mts +1 -0
  29. package/3rdparty/walkontable/src/axisSizing/positionCache/sparseStrategy.d.ts +53 -0
  30. package/3rdparty/walkontable/src/axisSizing/positionCache/sparseStrategy.js +199 -0
  31. package/3rdparty/walkontable/src/axisSizing/positionCache/sparseStrategy.mjs +196 -0
  32. package/3rdparty/walkontable/src/axisSizing/positionCache/strategy.d.mts +1 -0
  33. package/3rdparty/walkontable/src/axisSizing/positionCache/strategy.d.ts +53 -0
  34. package/3rdparty/walkontable/src/axisSizing/positionCache/strategy.js +40 -0
  35. package/3rdparty/walkontable/src/axisSizing/positionCache/strategy.mjs +41 -0
  36. package/3rdparty/walkontable/src/axisSizing/positionCache/uniformStrategy.d.mts +1 -0
  37. package/3rdparty/walkontable/src/axisSizing/positionCache/uniformStrategy.d.ts +47 -0
  38. package/3rdparty/walkontable/src/axisSizing/positionCache/uniformStrategy.js +116 -0
  39. package/3rdparty/walkontable/src/axisSizing/positionCache/uniformStrategy.mjs +110 -0
  40. package/3rdparty/walkontable/src/axisSizing/rowUtils.d.mts +2 -0
  41. package/3rdparty/walkontable/src/{utils/row.d.ts → axisSizing/rowUtils.d.ts} +11 -9
  42. package/3rdparty/walkontable/src/axisSizing/rowUtils.js +106 -0
  43. package/3rdparty/walkontable/src/axisSizing/rowUtils.mjs +101 -0
  44. package/3rdparty/walkontable/src/axisSizing/sizeGetters.d.mts +2 -0
  45. package/3rdparty/walkontable/src/axisSizing/sizeGetters.d.ts +84 -0
  46. package/3rdparty/walkontable/src/axisSizing/sizeGetters.js +102 -0
  47. package/3rdparty/walkontable/src/axisSizing/sizeGetters.mjs +92 -0
  48. package/3rdparty/walkontable/src/calculator/axisCalculation.d.ts +1 -1
  49. package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.d.ts +10 -0
  50. package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.js +10 -1
  51. package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.mjs +10 -1
  52. package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.d.ts +9 -0
  53. package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.js +9 -1
  54. package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.mjs +9 -1
  55. package/3rdparty/walkontable/src/calculator/viewportColumns.d.ts +1 -1
  56. package/3rdparty/walkontable/src/calculator/viewportRows.d.ts +1 -1
  57. package/3rdparty/walkontable/src/cell/coords.js +4 -9
  58. package/3rdparty/walkontable/src/cell/coords.mjs +4 -9
  59. package/3rdparty/walkontable/src/cell/range.d.ts +10 -0
  60. package/3rdparty/walkontable/src/cell/range.js +19 -15
  61. package/3rdparty/walkontable/src/cell/range.mjs +16 -12
  62. package/3rdparty/walkontable/src/core/_base.d.ts +21 -21
  63. package/3rdparty/walkontable/src/core/_base.js +47 -147
  64. package/3rdparty/walkontable/src/core/_base.mjs +17 -147
  65. package/3rdparty/walkontable/src/core/clone.d.ts +4 -14
  66. package/3rdparty/walkontable/src/core/clone.js +40 -5
  67. package/3rdparty/walkontable/src/core/clone.mjs +10 -5
  68. package/3rdparty/walkontable/src/core/core.d.ts +1 -5
  69. package/3rdparty/walkontable/src/core/core.js +41 -47
  70. package/3rdparty/walkontable/src/core/core.mjs +12 -48
  71. package/3rdparty/walkontable/src/domMeasure/geometryReader.d.mts +1 -0
  72. package/3rdparty/walkontable/src/domMeasure/geometryReader.d.ts +172 -0
  73. package/3rdparty/walkontable/src/domMeasure/geometryReader.js +19 -0
  74. package/3rdparty/walkontable/src/domMeasure/geometryReader.mjs +16 -0
  75. package/3rdparty/walkontable/src/domMeasure/liveGeometryReader.d.mts +1 -0
  76. package/3rdparty/walkontable/src/domMeasure/liveGeometryReader.d.ts +134 -0
  77. package/3rdparty/walkontable/src/domMeasure/liveGeometryReader.js +195 -0
  78. package/3rdparty/walkontable/src/domMeasure/liveGeometryReader.mjs +193 -0
  79. package/3rdparty/walkontable/src/event.d.ts +25 -12
  80. package/3rdparty/walkontable/src/event.js +96 -236
  81. package/3rdparty/walkontable/src/event.mjs +95 -236
  82. package/3rdparty/walkontable/src/facade/core.d.ts +6 -6
  83. package/3rdparty/walkontable/src/index.d.ts +1 -1
  84. package/3rdparty/walkontable/src/index.js +10 -21
  85. package/3rdparty/walkontable/src/index.mjs +1 -1
  86. package/3rdparty/walkontable/src/overlay/index.d.ts +6 -6
  87. package/3rdparty/walkontable/src/overlay/index.js +11 -11
  88. package/3rdparty/walkontable/src/overlay/index.mjs +6 -6
  89. package/3rdparty/walkontable/src/overlay/overlays.d.ts +375 -0
  90. package/3rdparty/walkontable/src/overlay/overlays.js +605 -0
  91. package/3rdparty/walkontable/src/overlay/overlays.mjs +594 -0
  92. package/3rdparty/walkontable/src/overlay/{_base.d.ts → regions/_base.d.ts} +65 -16
  93. package/3rdparty/walkontable/src/overlay/{_base.js → regions/_base.js} +155 -50
  94. package/3rdparty/walkontable/src/overlay/{_base.mjs → regions/_base.mjs} +158 -47
  95. package/3rdparty/walkontable/src/overlay/regions/bottomInlineStartCornerOverlay.d.mts +1 -0
  96. package/3rdparty/walkontable/src/overlay/{bottomInlineStartCorner.d.ts → regions/bottomInlineStartCornerOverlay.d.ts} +5 -10
  97. package/3rdparty/walkontable/src/overlay/{bottomInlineStartCorner.js → regions/bottomInlineStartCornerOverlay.js} +18 -20
  98. package/3rdparty/walkontable/src/overlay/{bottomInlineStartCorner.mjs → regions/bottomInlineStartCornerOverlay.mjs} +18 -20
  99. package/3rdparty/walkontable/src/overlay/regions/bottomOverlay.d.mts +1 -0
  100. package/3rdparty/walkontable/src/overlay/{bottom.d.ts → regions/bottomOverlay.d.ts} +16 -11
  101. package/3rdparty/walkontable/src/overlay/{bottom.js → regions/bottomOverlay.js} +111 -66
  102. package/3rdparty/walkontable/src/overlay/{bottom.mjs → regions/bottomOverlay.mjs} +111 -66
  103. package/3rdparty/walkontable/src/overlay/regions/inlineStartOverlay.d.mts +1 -0
  104. package/3rdparty/walkontable/src/overlay/{inlineStart.d.ts → regions/inlineStartOverlay.d.ts} +17 -11
  105. package/3rdparty/walkontable/src/overlay/{inlineStart.js → regions/inlineStartOverlay.js} +120 -67
  106. package/3rdparty/walkontable/src/overlay/{inlineStart.mjs → regions/inlineStartOverlay.mjs} +120 -67
  107. package/3rdparty/walkontable/src/overlay/regions/topInlineStartCornerOverlay.d.mts +1 -0
  108. package/3rdparty/walkontable/src/overlay/{topInlineStartCorner.d.ts → regions/topInlineStartCornerOverlay.d.ts} +5 -10
  109. package/3rdparty/walkontable/src/overlay/{topInlineStartCorner.js → regions/topInlineStartCornerOverlay.js} +13 -16
  110. package/3rdparty/walkontable/src/overlay/{topInlineStartCorner.mjs → regions/topInlineStartCornerOverlay.mjs} +13 -16
  111. package/3rdparty/walkontable/src/overlay/regions/topOverlay.d.mts +1 -0
  112. package/3rdparty/walkontable/src/overlay/{top.d.ts → regions/topOverlay.d.ts} +32 -11
  113. package/3rdparty/walkontable/src/overlay/{top.js → regions/topOverlay.js} +161 -77
  114. package/3rdparty/walkontable/src/overlay/{top.mjs → regions/topOverlay.mjs} +161 -77
  115. package/3rdparty/walkontable/src/overlay/resizeMonitor.d.mts +1 -0
  116. package/3rdparty/walkontable/src/overlay/resizeMonitor.d.ts +49 -0
  117. package/3rdparty/walkontable/src/overlay/resizeMonitor.js +149 -0
  118. package/3rdparty/walkontable/src/overlay/resizeMonitor.mjs +148 -0
  119. package/3rdparty/walkontable/src/overlay/scroll/nativeScrollInput.d.mts +1 -0
  120. package/3rdparty/walkontable/src/overlay/scroll/nativeScrollInput.d.ts +62 -0
  121. package/3rdparty/walkontable/src/overlay/scroll/nativeScrollInput.js +283 -0
  122. package/3rdparty/walkontable/src/overlay/scroll/nativeScrollInput.mjs +288 -0
  123. package/3rdparty/walkontable/src/overlay/scroll/scrollSync.d.mts +1 -0
  124. package/3rdparty/walkontable/src/overlay/scroll/scrollSync.d.ts +176 -0
  125. package/3rdparty/walkontable/src/overlay/scroll/scrollSync.js +542 -0
  126. package/3rdparty/walkontable/src/overlay/scroll/scrollSync.mjs +550 -0
  127. package/3rdparty/walkontable/src/overlay/spreaderSize.d.mts +1 -0
  128. package/3rdparty/walkontable/src/overlay/spreaderSize.d.ts +67 -0
  129. package/3rdparty/walkontable/src/overlay/spreaderSize.js +173 -0
  130. package/3rdparty/walkontable/src/overlay/spreaderSize.mjs +174 -0
  131. package/3rdparty/walkontable/src/{stickyScrollStrategy.d.ts → overlay/strategies/stickyScrollStrategy.d.ts} +33 -21
  132. package/3rdparty/walkontable/src/{stickyScrollStrategy.js → overlay/strategies/stickyScrollStrategy.js} +65 -53
  133. package/3rdparty/walkontable/src/{stickyScrollStrategy.mjs → overlay/strategies/stickyScrollStrategy.mjs} +63 -50
  134. package/3rdparty/walkontable/src/ports.d.mts +1 -0
  135. package/3rdparty/walkontable/src/ports.d.ts +54 -0
  136. package/3rdparty/walkontable/src/ports.js +23 -0
  137. package/3rdparty/walkontable/src/ports.mjs +24 -0
  138. package/3rdparty/walkontable/src/{renderer → render}/_base.d.ts +1 -1
  139. package/3rdparty/walkontable/src/{renderer → render}/cells.js +1 -1
  140. package/3rdparty/walkontable/src/{renderer → render}/cells.mjs +1 -1
  141. package/3rdparty/walkontable/src/{renderer → render}/columnHeaders.d.ts +1 -0
  142. package/3rdparty/walkontable/src/{renderer → render}/columnHeaders.js +41 -1
  143. package/3rdparty/walkontable/src/{renderer → render}/columnHeaders.mjs +42 -2
  144. package/3rdparty/walkontable/src/render/index.d.mts +1 -0
  145. package/3rdparty/walkontable/src/{renderer → render}/index.d.ts +11 -3
  146. package/3rdparty/walkontable/src/{renderer → render}/index.js +13 -3
  147. package/3rdparty/walkontable/src/{renderer → render}/index.mjs +11 -1
  148. package/3rdparty/walkontable/src/{renderer → render}/rows.js +1 -1
  149. package/3rdparty/walkontable/src/{renderer → render}/rows.mjs +1 -1
  150. package/3rdparty/walkontable/src/render/tableRenderer.d.mts +1 -0
  151. package/3rdparty/walkontable/src/{renderer/table.d.ts → render/tableRenderer.d.ts} +12 -2
  152. package/3rdparty/walkontable/src/render/tableRenderer.js +375 -0
  153. package/3rdparty/walkontable/src/{renderer/table.mjs → render/tableRenderer.mjs} +152 -6
  154. package/3rdparty/walkontable/src/{scroll.d.ts → scroll/scroll.d.ts} +27 -10
  155. package/3rdparty/walkontable/src/{scroll.js → scroll/scroll.js} +104 -35
  156. package/3rdparty/walkontable/src/{scroll.mjs → scroll/scroll.mjs} +102 -32
  157. package/3rdparty/walkontable/src/selection/border/border.d.ts +313 -5
  158. package/3rdparty/walkontable/src/selection/border/border.js +861 -51
  159. package/3rdparty/walkontable/src/selection/border/border.mjs +863 -53
  160. package/3rdparty/walkontable/src/selection/border/types.d.ts +30 -0
  161. package/3rdparty/walkontable/src/selection/manager.js +242 -12
  162. package/3rdparty/walkontable/src/selection/manager.mjs +243 -13
  163. package/3rdparty/walkontable/src/selection/scanner.js +5 -12
  164. package/3rdparty/walkontable/src/selection/scanner.mjs +5 -12
  165. package/3rdparty/walkontable/src/settings/accessor.d.mts +2 -0
  166. package/3rdparty/walkontable/src/settings/accessor.d.ts +74 -0
  167. package/3rdparty/walkontable/src/settings/accessor.js +78 -0
  168. package/3rdparty/walkontable/src/settings/accessor.mjs +71 -0
  169. package/3rdparty/walkontable/src/settings/defaults.d.mts +1 -0
  170. package/3rdparty/walkontable/src/{settings.d.ts → settings/defaults.d.ts} +16 -77
  171. package/3rdparty/walkontable/src/settings/defaults.js +146 -0
  172. package/3rdparty/walkontable/src/settings/defaults.mjs +225 -0
  173. package/3rdparty/walkontable/src/settings/index.d.mts +1 -0
  174. package/3rdparty/walkontable/src/settings/index.d.ts +6 -0
  175. package/3rdparty/walkontable/src/settings/index.js +20 -0
  176. package/3rdparty/walkontable/src/settings/index.mjs +5 -0
  177. package/3rdparty/walkontable/src/table/baseTable.d.mts +2 -0
  178. package/3rdparty/walkontable/src/table/baseTable.d.ts +284 -0
  179. package/3rdparty/walkontable/src/table/baseTable.js +290 -0
  180. package/3rdparty/walkontable/src/table/baseTable.mjs +278 -0
  181. package/3rdparty/walkontable/src/table/cellAccess.d.mts +1 -0
  182. package/3rdparty/walkontable/src/table/cellAccess.d.ts +101 -0
  183. package/3rdparty/walkontable/src/table/cellAccess.js +238 -0
  184. package/3rdparty/walkontable/src/table/cellAccess.mjs +229 -0
  185. package/3rdparty/walkontable/src/table/domScaffold.d.mts +1 -0
  186. package/3rdparty/walkontable/src/table/domScaffold.d.ts +37 -0
  187. package/3rdparty/walkontable/src/table/domScaffold.js +145 -0
  188. package/3rdparty/walkontable/src/table/domScaffold.mjs +136 -0
  189. package/3rdparty/walkontable/src/table/drawCycle.d.mts +1 -0
  190. package/3rdparty/walkontable/src/table/drawCycle.d.ts +16 -0
  191. package/3rdparty/walkontable/src/table/drawCycle.js +405 -0
  192. package/3rdparty/walkontable/src/table/drawCycle.mjs +403 -0
  193. package/3rdparty/walkontable/src/table/rangeQuery/renderedRange.d.mts +1 -0
  194. package/3rdparty/walkontable/src/table/rangeQuery/renderedRange.d.ts +38 -0
  195. package/3rdparty/walkontable/src/table/rangeQuery/renderedRange.js +15 -0
  196. package/3rdparty/walkontable/src/table/rangeQuery/renderedRange.mjs +14 -0
  197. package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyColumnsStart.d.ts +1 -1
  198. package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyColumnsStart.js +1 -1
  199. package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyColumnsStart.mjs +1 -1
  200. package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsBottom.d.ts +1 -1
  201. package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsTop.d.ts +1 -1
  202. package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsTop.js +1 -1
  203. package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsTop.mjs +1 -1
  204. package/3rdparty/walkontable/src/table/rangeQuery/viewportPredicates.d.mts +2 -0
  205. package/3rdparty/walkontable/src/table/rangeQuery/viewportPredicates.d.ts +226 -0
  206. package/3rdparty/walkontable/src/table/rangeQuery/viewportPredicates.js +251 -0
  207. package/3rdparty/walkontable/src/table/rangeQuery/viewportPredicates.mjs +241 -0
  208. package/3rdparty/walkontable/src/table/rangeQuery/virtualRange.d.mts +1 -0
  209. package/3rdparty/walkontable/src/table/rangeQuery/virtualRange.d.ts +14 -0
  210. package/3rdparty/walkontable/src/table/rangeQuery/virtualRange.js +196 -0
  211. package/3rdparty/walkontable/src/table/rangeQuery/virtualRange.mjs +179 -0
  212. package/3rdparty/walkontable/src/table/regions/bottomInlineStartCornerTable.d.mts +2 -0
  213. package/3rdparty/walkontable/src/table/regions/bottomInlineStartCornerTable.d.ts +16 -0
  214. package/3rdparty/walkontable/src/table/{bottomInlineStartCorner.js → regions/bottomInlineStartCornerTable.js} +9 -12
  215. package/3rdparty/walkontable/src/table/regions/bottomInlineStartCornerTable.mjs +21 -0
  216. package/3rdparty/walkontable/src/table/regions/bottomTable.d.mts +2 -0
  217. package/3rdparty/walkontable/src/table/regions/bottomTable.d.ts +15 -0
  218. package/3rdparty/walkontable/src/table/regions/bottomTable.js +35 -0
  219. package/3rdparty/walkontable/src/table/regions/bottomTable.mjs +20 -0
  220. package/3rdparty/walkontable/src/table/regions/inlineStartTable.d.mts +2 -0
  221. package/3rdparty/walkontable/src/table/regions/inlineStartTable.d.ts +12 -0
  222. package/3rdparty/walkontable/src/table/regions/inlineStartTable.js +32 -0
  223. package/3rdparty/walkontable/src/table/regions/inlineStartTable.mjs +17 -0
  224. package/3rdparty/walkontable/src/table/regions/masterTable.d.mts +2 -0
  225. package/3rdparty/walkontable/src/table/{master.d.ts → regions/masterTable.d.ts} +4 -13
  226. package/3rdparty/walkontable/src/table/{master.js → regions/masterTable.js} +27 -57
  227. package/3rdparty/walkontable/src/table/{master.mjs → regions/masterTable.mjs} +26 -56
  228. package/3rdparty/walkontable/src/table/regions/topInlineStartCornerTable.d.mts +2 -0
  229. package/3rdparty/walkontable/src/table/regions/topInlineStartCornerTable.d.ts +16 -0
  230. package/3rdparty/walkontable/src/table/{topInlineStartCorner.js → regions/topInlineStartCornerTable.js} +9 -12
  231. package/3rdparty/walkontable/src/table/regions/topInlineStartCornerTable.mjs +21 -0
  232. package/3rdparty/walkontable/src/table/regions/topTable.d.mts +2 -0
  233. package/3rdparty/walkontable/src/table/regions/topTable.d.ts +15 -0
  234. package/3rdparty/walkontable/src/table/regions/topTable.js +35 -0
  235. package/3rdparty/walkontable/src/table/regions/topTable.mjs +20 -0
  236. package/3rdparty/walkontable/src/types.d.ts +7 -69
  237. package/3rdparty/walkontable/src/types.mjs +2 -1
  238. package/3rdparty/walkontable/src/utils/pointerToCoords.d.mts +1 -0
  239. package/3rdparty/walkontable/src/utils/{cellCoords.d.ts → pointerToCoords.d.ts} +24 -0
  240. package/3rdparty/walkontable/src/utils/pointerToCoords.js +181 -0
  241. package/3rdparty/walkontable/src/utils/pointerToCoords.mjs +186 -0
  242. package/3rdparty/walkontable/src/viewport/boxLayout/gatherLayoutInput.d.mts +1 -0
  243. package/3rdparty/walkontable/src/viewport/boxLayout/gatherLayoutInput.d.ts +40 -0
  244. package/3rdparty/walkontable/src/viewport/boxLayout/gatherLayoutInput.js +139 -0
  245. package/3rdparty/walkontable/src/viewport/boxLayout/gatherLayoutInput.mjs +131 -0
  246. package/3rdparty/walkontable/src/viewport/boxLayout/layoutSnapshot.d.mts +1 -0
  247. package/3rdparty/walkontable/src/viewport/boxLayout/layoutSnapshot.d.ts +133 -0
  248. package/3rdparty/walkontable/src/viewport/boxLayout/layoutSnapshot.js +18 -0
  249. package/3rdparty/walkontable/src/viewport/boxLayout/layoutSnapshot.mjs +18 -0
  250. package/3rdparty/walkontable/src/viewport/boxLayout/resolveLayout.d.mts +1 -0
  251. package/3rdparty/walkontable/src/viewport/boxLayout/resolveLayout.d.ts +17 -0
  252. package/3rdparty/walkontable/src/viewport/boxLayout/resolveLayout.js +104 -0
  253. package/3rdparty/walkontable/src/viewport/boxLayout/resolveLayout.mjs +99 -0
  254. package/3rdparty/walkontable/src/viewport/calculatorFactory.d.mts +1 -0
  255. package/3rdparty/walkontable/src/viewport/calculatorFactory.d.ts +84 -0
  256. package/3rdparty/walkontable/src/viewport/calculatorFactory.js +588 -0
  257. package/3rdparty/walkontable/src/viewport/calculatorFactory.mjs +601 -0
  258. package/3rdparty/walkontable/src/viewport/viewport.d.ts +267 -0
  259. package/3rdparty/walkontable/src/viewport/viewport.js +363 -0
  260. package/3rdparty/walkontable/src/viewport/viewport.mjs +355 -0
  261. package/3rdparty/walkontable/src/viewport/workspaceSize.d.mts +1 -0
  262. package/3rdparty/walkontable/src/viewport/workspaceSize.d.ts +59 -0
  263. package/3rdparty/walkontable/src/viewport/workspaceSize.js +284 -0
  264. package/3rdparty/walkontable/src/viewport/workspaceSize.mjs +282 -0
  265. package/3rdparty/walkontable/src/wire.d.mts +1 -0
  266. package/3rdparty/walkontable/src/wire.d.ts +81 -0
  267. package/3rdparty/walkontable/src/wire.js +56 -0
  268. package/3rdparty/walkontable/src/wire.mjs +56 -0
  269. package/LICENSE.txt +1 -1
  270. package/README.md +2 -2
  271. package/base.d.ts +10 -2
  272. package/base.js +2 -2
  273. package/base.mjs +2 -2
  274. package/cellTypes/checkboxType/accessors/valueSetter.d.ts +1 -1
  275. package/cellTypes/checkboxType/accessors/valueSetter.js +3 -1
  276. package/cellTypes/checkboxType/accessors/valueSetter.mjs +3 -1
  277. package/cellTypes/index.d.ts +3 -2
  278. package/cellTypes/index.js +9 -0
  279. package/cellTypes/index.mjs +5 -2
  280. package/cellTypes/intlDatetimeType/index.d.mts +1 -0
  281. package/cellTypes/intlDatetimeType/index.d.ts +1 -0
  282. package/cellTypes/intlDatetimeType/index.js +19 -0
  283. package/cellTypes/intlDatetimeType/index.mjs +1 -0
  284. package/cellTypes/intlDatetimeType/intlDatetimeType.d.mts +1 -0
  285. package/cellTypes/intlDatetimeType/intlDatetimeType.d.ts +16 -0
  286. package/cellTypes/intlDatetimeType/intlDatetimeType.js +31 -0
  287. package/cellTypes/intlDatetimeType/intlDatetimeType.mjs +15 -0
  288. package/cellTypes/multiSelectType/index.d.ts +1 -1
  289. package/cellTypes/multiSelectType/index.js +3 -0
  290. package/cellTypes/multiSelectType/index.mjs +1 -1
  291. package/cellTypes/multiSelectType/multiSelectType.d.ts +1 -0
  292. package/cellTypes/multiSelectType/multiSelectType.js +4 -0
  293. package/cellTypes/multiSelectType/multiSelectType.mjs +1 -0
  294. package/cellTypes/numericType/accessors/valueSetter.js +30 -2
  295. package/cellTypes/numericType/accessors/valueSetter.mjs +31 -3
  296. package/core/coordsMapper/rangeToRenderableMapper.js +5 -12
  297. package/core/coordsMapper/rangeToRenderableMapper.mjs +5 -12
  298. package/core/hooks/bucket.d.ts +40 -6
  299. package/core/hooks/bucket.js +113 -84
  300. package/core/hooks/bucket.mjs +118 -84
  301. package/core/hooks/constants.js +254 -16
  302. package/core/hooks/constants.mjs +254 -16
  303. package/core/hooks/index.js +28 -25
  304. package/core/hooks/index.mjs +28 -25
  305. package/core/layout/constants.d.ts +11 -0
  306. package/core/layout/constants.js +6 -0
  307. package/core/layout/constants.mjs +12 -0
  308. package/core/layout/domSlot.d.ts +3 -1
  309. package/core/layout/domSlot.js +21 -14
  310. package/core/layout/domSlot.mjs +21 -14
  311. package/core/layout/index.d.ts +2 -2
  312. package/core/layout/index.js +6 -0
  313. package/core/layout/index.mjs +2 -2
  314. package/core/layout/layoutManager.d.ts +13 -0
  315. package/core/layout/layoutManager.js +25 -13
  316. package/core/layout/layoutManager.mjs +26 -11
  317. package/core/settings.d.ts +59 -6
  318. package/core/types.d.ts +15 -1
  319. package/core/types.mjs +9 -0
  320. package/core.js +481 -85
  321. package/core.mjs +483 -87
  322. package/dataMap/dataMap.d.ts +3 -13
  323. package/dataMap/dataMap.js +101 -44
  324. package/dataMap/dataMap.mjs +102 -45
  325. package/dataMap/dataSource.js +4 -1
  326. package/dataMap/dataSource.mjs +4 -1
  327. package/dataMap/metaManager/index.d.ts +62 -8
  328. package/dataMap/metaManager/index.js +66 -0
  329. package/dataMap/metaManager/index.mjs +66 -0
  330. package/dataMap/metaManager/lazyFactoryMap.d.ts +68 -43
  331. package/dataMap/metaManager/lazyFactoryMap.js +490 -110
  332. package/dataMap/metaManager/lazyFactoryMap.mjs +504 -111
  333. package/dataMap/metaManager/metaLayers/cellMeta.d.ts +55 -8
  334. package/dataMap/metaManager/metaLayers/cellMeta.js +112 -17
  335. package/dataMap/metaManager/metaLayers/cellMeta.mjs +112 -17
  336. package/dataMap/metaManager/metaLayers/columnMeta.d.ts +2 -1
  337. package/dataMap/metaManager/metaLayers/columnMeta.js +1 -0
  338. package/dataMap/metaManager/metaLayers/columnMeta.mjs +1 -0
  339. package/dataMap/metaManager/metaSchema.js +712 -31
  340. package/dataMap/metaManager/metaSchema.mjs +712 -31
  341. package/dataMap/metaManager/mods/dynamicCellMeta.d.ts +24 -10
  342. package/dataMap/metaManager/mods/dynamicCellMeta.js +245 -28
  343. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +246 -29
  344. package/dataMap/metaManager/mods/extendMetaProperties.js +4 -9
  345. package/dataMap/metaManager/mods/extendMetaProperties.mjs +4 -9
  346. package/dataMap/sourceDataValidator.d.ts +13 -21
  347. package/dataMap/sourceDataValidator.js +39 -29
  348. package/dataMap/sourceDataValidator.mjs +50 -33
  349. package/dist/handsontable.full.js +34553 -9903
  350. package/dist/handsontable.full.min.js +168 -112
  351. package/dist/handsontable.js +31541 -13409
  352. package/dist/handsontable.min.js +172 -116
  353. package/dist/languages/all.js +2 -1
  354. package/dist/languages/all.min.js +1 -1
  355. package/dist/languages/fa-IR.js +2 -1
  356. package/dist/languages/fa-IR.min.js +1 -1
  357. package/dist/themes/classic.js +9 -3
  358. package/dist/themes/classic.min.js +4 -4
  359. package/dist/themes/horizon.js +9 -3
  360. package/dist/themes/horizon.min.js +4 -4
  361. package/dist/themes/main.js +9 -3
  362. package/dist/themes/main.min.js +4 -4
  363. package/dist/themes/static/variables/colors/ant.js +3 -3
  364. package/dist/themes/static/variables/colors/ant.min.js +3 -3
  365. package/dist/themes/static/variables/colors/classic.js +3 -3
  366. package/dist/themes/static/variables/colors/classic.min.js +3 -3
  367. package/dist/themes/static/variables/colors/horizon.js +3 -3
  368. package/dist/themes/static/variables/colors/horizon.min.js +3 -3
  369. package/dist/themes/static/variables/colors/main.js +3 -3
  370. package/dist/themes/static/variables/colors/main.min.js +3 -3
  371. package/dist/themes/static/variables/colors/material.js +3 -3
  372. package/dist/themes/static/variables/colors/material.min.js +3 -3
  373. package/dist/themes/static/variables/colors/shadcn.js +3 -3
  374. package/dist/themes/static/variables/colors/shadcn.min.js +3 -3
  375. package/dist/themes/static/variables/density.js +3 -3
  376. package/dist/themes/static/variables/density.min.js +3 -3
  377. package/dist/themes/static/variables/helpers/iconsMap.js +4 -9
  378. package/dist/themes/static/variables/helpers/iconsMap.min.js +4 -9
  379. package/dist/themes/static/variables/icons/horizon.js +3 -3
  380. package/dist/themes/static/variables/icons/horizon.min.js +3 -3
  381. package/dist/themes/static/variables/icons/main.js +3 -3
  382. package/dist/themes/static/variables/icons/main.min.js +3 -3
  383. package/dist/themes/static/variables/sizing.js +3 -3
  384. package/dist/themes/static/variables/sizing.min.js +3 -3
  385. package/dist/themes/static/variables/tokens/classic.js +9 -3
  386. package/dist/themes/static/variables/tokens/classic.min.js +4 -4
  387. package/dist/themes/static/variables/tokens/horizon.js +9 -3
  388. package/dist/themes/static/variables/tokens/horizon.min.js +4 -4
  389. package/dist/themes/static/variables/tokens/main.js +9 -3
  390. package/dist/themes/static/variables/tokens/main.min.js +4 -4
  391. package/editorManager.js +1 -3
  392. package/editorManager.mjs +1 -3
  393. package/editors/autocompleteEditor/autocompleteEditor.js +48 -22
  394. package/editors/autocompleteEditor/autocompleteEditor.mjs +48 -22
  395. package/editors/baseEditor/baseEditor.d.ts +15 -3
  396. package/editors/baseEditor/baseEditor.js +6 -6
  397. package/editors/baseEditor/baseEditor.mjs +16 -6
  398. package/editors/factory.js +5 -2
  399. package/editors/factory.mjs +5 -2
  400. package/editors/index.d.ts +3 -2
  401. package/editors/index.js +8 -0
  402. package/editors/index.mjs +3 -1
  403. package/editors/intlDatetimeEditor/index.d.mts +1 -0
  404. package/editors/intlDatetimeEditor/index.d.ts +1 -0
  405. package/editors/intlDatetimeEditor/index.js +19 -0
  406. package/editors/intlDatetimeEditor/index.mjs +1 -0
  407. package/editors/intlDatetimeEditor/intlDatetimeEditor.d.mts +1 -0
  408. package/editors/intlDatetimeEditor/intlDatetimeEditor.d.ts +42 -0
  409. package/editors/intlDatetimeEditor/intlDatetimeEditor.js +108 -0
  410. package/editors/intlDatetimeEditor/intlDatetimeEditor.mjs +93 -0
  411. package/editors/multiSelectEditor/controllers/dropdownController.js +5 -12
  412. package/editors/multiSelectEditor/controllers/dropdownController.mjs +5 -12
  413. package/editors/multiSelectEditor/controllers/inputController.js +1 -3
  414. package/editors/multiSelectEditor/controllers/inputController.mjs +1 -3
  415. package/editors/multiSelectEditor/multiSelectEditor.js +16 -21
  416. package/editors/multiSelectEditor/multiSelectEditor.mjs +17 -22
  417. package/editors/passwordEditor/passwordEditor.js +5 -12
  418. package/editors/passwordEditor/passwordEditor.mjs +5 -12
  419. package/editors/registry.js +4 -9
  420. package/editors/registry.mjs +4 -9
  421. package/editors/textEditor/textEditor.js +1 -1
  422. package/editors/textEditor/textEditor.mjs +2 -2
  423. package/eventManager.d.ts +3 -3
  424. package/focusManager/grid.d.ts +28 -0
  425. package/focusManager/grid.js +84 -14
  426. package/focusManager/grid.mjs +80 -15
  427. package/focusManager/scopeManager.js +1 -1
  428. package/focusManager/scopeManager.mjs +2 -2
  429. package/handsontable-non-commercial-license.pdf +0 -0
  430. package/helpers/array.d.ts +25 -0
  431. package/helpers/array.js +41 -4
  432. package/helpers/array.mjs +56 -4
  433. package/helpers/dateTime.d.ts +14 -0
  434. package/helpers/dateTime.js +74 -2
  435. package/helpers/dateTime.mjs +73 -2
  436. package/helpers/dom/cellCoords.js +156 -13
  437. package/helpers/dom/cellCoords.mjs +156 -13
  438. package/helpers/dom/element.d.ts +27 -3
  439. package/helpers/dom/element.js +92 -16
  440. package/helpers/dom/element.mjs +107 -17
  441. package/helpers/dom/event.d.ts +58 -0
  442. package/helpers/dom/event.js +39 -0
  443. package/helpers/dom/event.mjs +63 -0
  444. package/helpers/errors.d.ts +5 -0
  445. package/helpers/errors.js +10 -6
  446. package/helpers/errors.mjs +10 -6
  447. package/helpers/feature.d.ts +19 -0
  448. package/helpers/feature.js +21 -0
  449. package/helpers/feature.mjs +30 -0
  450. package/helpers/function.d.ts +1 -1
  451. package/helpers/function.js +4 -1
  452. package/helpers/function.mjs +4 -1
  453. package/helpers/mixed.d.ts +103 -0
  454. package/helpers/mixed.js +373 -4
  455. package/helpers/mixed.mjs +413 -4
  456. package/helpers/moves.js +2 -1
  457. package/helpers/moves.mjs +2 -1
  458. package/helpers/number.d.ts +22 -0
  459. package/helpers/number.js +49 -0
  460. package/helpers/number.mjs +66 -0
  461. package/i18n/languages/ar-AR.js +8 -19
  462. package/i18n/languages/cs-CZ.js +8 -19
  463. package/i18n/languages/de-CH.js +8 -19
  464. package/i18n/languages/de-DE.js +8 -19
  465. package/i18n/languages/en-US.js +8 -19
  466. package/i18n/languages/es-MX.js +8 -19
  467. package/i18n/languages/fa-IR.d.ts +1 -0
  468. package/i18n/languages/fa-IR.js +9 -19
  469. package/i18n/languages/fa-IR.mjs +1 -0
  470. package/i18n/languages/fr-FR.js +8 -19
  471. package/i18n/languages/hr-HR.js +8 -19
  472. package/i18n/languages/it-IT.js +8 -19
  473. package/i18n/languages/ja-JP.js +8 -19
  474. package/i18n/languages/ko-KR.js +8 -19
  475. package/i18n/languages/lv-LV.js +8 -19
  476. package/i18n/languages/nb-NO.js +8 -19
  477. package/i18n/languages/nl-NL.js +8 -19
  478. package/i18n/languages/pl-PL.js +8 -19
  479. package/i18n/languages/pt-BR.js +8 -19
  480. package/i18n/languages/ru-RU.js +8 -19
  481. package/i18n/languages/sr-SP.js +8 -19
  482. package/i18n/languages/zh-CN.js +8 -19
  483. package/i18n/languages/zh-TW.js +8 -19
  484. package/i18n/registry.js +8 -19
  485. package/index.d.ts +2 -2
  486. package/index.js +8 -19
  487. package/languages/all.js +2 -1
  488. package/languages/fa-IR.js +2 -1
  489. package/languages/fa-IR.mjs +1 -0
  490. package/languages/index.js +2 -1
  491. package/package.json +61 -1
  492. package/plugins/autoColumnSize/autoColumnSize.d.ts +24 -1
  493. package/plugins/autoColumnSize/autoColumnSize.js +506 -94
  494. package/plugins/autoColumnSize/autoColumnSize.mjs +513 -95
  495. package/plugins/autoRowSize/autoRowSize.d.ts +40 -5
  496. package/plugins/autoRowSize/autoRowSize.js +73 -36
  497. package/plugins/autoRowSize/autoRowSize.mjs +103 -41
  498. package/plugins/autofill/autofill.js +35 -24
  499. package/plugins/autofill/autofill.mjs +35 -24
  500. package/plugins/base/base.d.ts +10 -0
  501. package/plugins/base/base.js +5 -12
  502. package/plugins/base/base.mjs +5 -12
  503. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +4 -9
  504. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +4 -9
  505. package/plugins/collapsibleColumns/collapsibleColumns.d.ts +4 -0
  506. package/plugins/collapsibleColumns/collapsibleColumns.js +94 -20
  507. package/plugins/collapsibleColumns/collapsibleColumns.mjs +98 -20
  508. package/plugins/columnSorting/columnSorting.d.ts +31 -2
  509. package/plugins/columnSorting/columnSorting.js +153 -33
  510. package/plugins/columnSorting/columnSorting.mjs +155 -35
  511. package/plugins/columnSorting/columnStatesManager.d.ts +1 -1
  512. package/plugins/columnSorting/columnStatesManager.js +1 -7
  513. package/plugins/columnSorting/columnStatesManager.mjs +1 -7
  514. package/plugins/columnSorting/domHelpers.d.ts +3 -0
  515. package/plugins/columnSorting/domHelpers.js +9 -0
  516. package/plugins/columnSorting/domHelpers.mjs +3 -3
  517. package/plugins/columnSorting/rootComparator.js +21 -16
  518. package/plugins/columnSorting/rootComparator.mjs +21 -16
  519. package/plugins/columnSorting/sortFunction/checkbox.js +7 -5
  520. package/plugins/columnSorting/sortFunction/checkbox.mjs +7 -5
  521. package/plugins/columnSorting/sortFunction/default.js +15 -4
  522. package/plugins/columnSorting/sortFunction/default.mjs +15 -4
  523. package/plugins/columnSorting/sortFunction/intlDatetime.d.mts +1 -0
  524. package/plugins/columnSorting/sortFunction/intlDatetime.d.ts +10 -0
  525. package/plugins/columnSorting/sortFunction/intlDatetime.js +23 -0
  526. package/plugins/columnSorting/sortFunction/intlDatetime.mjs +12 -0
  527. package/plugins/columnSorting/sortService/registry.js +2 -0
  528. package/plugins/columnSorting/sortService/registry.mjs +2 -0
  529. package/plugins/columnSorting/utils.d.ts +8 -0
  530. package/plugins/columnSorting/utils.js +37 -45
  531. package/plugins/columnSorting/utils.mjs +42 -47
  532. package/plugins/columnSummary/columnSummary.js +13 -14
  533. package/plugins/columnSummary/columnSummary.mjs +13 -14
  534. package/plugins/columnSummary/endpoints.d.ts +69 -2
  535. package/plugins/columnSummary/endpoints.js +176 -29
  536. package/plugins/columnSummary/endpoints.mjs +176 -29
  537. package/plugins/comments/commentEditor.js +5 -10
  538. package/plugins/comments/commentEditor.mjs +6 -11
  539. package/plugins/comments/comments.js +5 -12
  540. package/plugins/comments/comments.mjs +5 -12
  541. package/plugins/comments/contextMenuItem/addEditComment.js +8 -19
  542. package/plugins/comments/contextMenuItem/readOnlyComment.js +8 -19
  543. package/plugins/comments/contextMenuItem/removeComment.js +8 -19
  544. package/plugins/comments/editorResizeObserver.js +5 -12
  545. package/plugins/comments/editorResizeObserver.mjs +5 -12
  546. package/plugins/contextMenu/contextMenu.d.ts +12 -1
  547. package/plugins/contextMenu/contextMenu.js +34 -15
  548. package/plugins/contextMenu/contextMenu.mjs +34 -15
  549. package/plugins/contextMenu/index.d.ts +1 -1
  550. package/plugins/contextMenu/menu/menu.d.ts +22 -1
  551. package/plugins/contextMenu/menu/menu.js +216 -15
  552. package/plugins/contextMenu/menu/menu.mjs +217 -16
  553. package/plugins/contextMenu/menu/positioner.js +4 -9
  554. package/plugins/contextMenu/menu/positioner.mjs +4 -9
  555. package/plugins/contextMenu/predefinedItems/alignment.js +22 -33
  556. package/plugins/contextMenu/predefinedItems/alignment.mjs +14 -14
  557. package/plugins/contextMenu/predefinedItems/clearColumn.js +9 -20
  558. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -1
  559. package/plugins/contextMenu/predefinedItems/columnLeft.js +8 -19
  560. package/plugins/contextMenu/predefinedItems/columnRight.js +8 -19
  561. package/plugins/contextMenu/predefinedItems/index.js +8 -19
  562. package/plugins/contextMenu/predefinedItems/readOnly.js +11 -22
  563. package/plugins/contextMenu/predefinedItems/readOnly.mjs +3 -3
  564. package/plugins/contextMenu/predefinedItems/redo.js +8 -19
  565. package/plugins/contextMenu/predefinedItems/removeColumn.js +8 -19
  566. package/plugins/contextMenu/predefinedItems/removeRow.js +8 -19
  567. package/plugins/contextMenu/predefinedItems/rowAbove.js +8 -19
  568. package/plugins/contextMenu/predefinedItems/rowBelow.js +8 -19
  569. package/plugins/contextMenu/predefinedItems/undo.js +8 -19
  570. package/plugins/contextMenu/utils.js +1 -1
  571. package/plugins/contextMenu/utils.mjs +1 -1
  572. package/plugins/copyPaste/contextMenuItem/cut.js +8 -19
  573. package/plugins/copyPaste/copyPaste.js +62 -20
  574. package/plugins/copyPaste/copyPaste.mjs +63 -21
  575. package/plugins/copyPaste/copyableRanges.js +11 -14
  576. package/plugins/copyPaste/copyableRanges.mjs +11 -14
  577. package/plugins/copyPaste/pasteEvent.d.ts +1 -1
  578. package/plugins/customBorders/contextMenuItem/bottom.js +8 -19
  579. package/plugins/customBorders/contextMenuItem/left.js +8 -19
  580. package/plugins/customBorders/contextMenuItem/noBorders.js +8 -19
  581. package/plugins/customBorders/contextMenuItem/right.js +8 -19
  582. package/plugins/customBorders/contextMenuItem/top.js +8 -19
  583. package/plugins/customBorders/customBorders.d.ts +21 -40
  584. package/plugins/customBorders/customBorders.js +1084 -223
  585. package/plugins/customBorders/customBorders.mjs +1078 -206
  586. package/plugins/customBorders/utils.d.ts +71 -0
  587. package/plugins/customBorders/utils.js +63 -0
  588. package/plugins/customBorders/utils.mjs +101 -0
  589. package/plugins/dataProvider/dataProvider.js +35 -38
  590. package/plugins/dataProvider/dataProvider.mjs +27 -19
  591. package/plugins/dataProvider/query/crud.js +1 -1
  592. package/plugins/dataProvider/query/crud.mjs +1 -1
  593. package/plugins/dialog/dialog.js +15 -33
  594. package/plugins/dialog/dialog.mjs +7 -14
  595. package/plugins/dialog/ui.js +5 -12
  596. package/plugins/dialog/ui.mjs +5 -12
  597. package/plugins/dragToScroll/autoScroller.js +4 -9
  598. package/plugins/dragToScroll/autoScroller.mjs +4 -9
  599. package/plugins/dragToScroll/dragToScroll.d.ts +2 -2
  600. package/plugins/dragToScroll/dragToScroll.js +155 -26
  601. package/plugins/dragToScroll/dragToScroll.mjs +156 -27
  602. package/plugins/dragToScroll/scrollTimer.js +4 -9
  603. package/plugins/dragToScroll/scrollTimer.mjs +4 -9
  604. package/plugins/dropdownMenu/dropdownMenu.d.ts +5 -1
  605. package/plugins/dropdownMenu/dropdownMenu.js +50 -15
  606. package/plugins/dropdownMenu/dropdownMenu.mjs +51 -16
  607. package/plugins/dropdownMenu/index.d.ts +1 -0
  608. package/plugins/emptyDataState/emptyDataState.js +15 -33
  609. package/plugins/emptyDataState/emptyDataState.mjs +7 -14
  610. package/plugins/emptyDataState/ui.js +4 -9
  611. package/plugins/emptyDataState/ui.mjs +4 -9
  612. package/plugins/exportFile/dataProvider.js +5 -1
  613. package/plugins/exportFile/dataProvider.mjs +5 -1
  614. package/plugins/exportFile/exportFile.js +13 -31
  615. package/plugins/exportFile/exportFile.mjs +5 -12
  616. package/plugins/exportFile/types/csv.js +1 -3
  617. package/plugins/exportFile/types/csv.mjs +1 -3
  618. package/plugins/exportFile/types/xlsx/cell-style.js +4 -2
  619. package/plugins/exportFile/types/xlsx/cell-style.mjs +4 -2
  620. package/plugins/exportFile/types/xlsx/date-utils.d.ts +15 -0
  621. package/plugins/exportFile/types/xlsx/date-utils.js +31 -0
  622. package/plugins/exportFile/types/xlsx/date-utils.mjs +36 -0
  623. package/plugins/exportFile/types/xlsx.js +10 -3
  624. package/plugins/exportFile/types/xlsx.mjs +11 -4
  625. package/plugins/filters/component/_base.d.ts +1 -2
  626. package/plugins/filters/component/_base.js +1 -2
  627. package/plugins/filters/component/_base.mjs +1 -2
  628. package/plugins/filters/component/actionBar.js +9 -22
  629. package/plugins/filters/component/actionBar.mjs +1 -3
  630. package/plugins/filters/component/condition.d.ts +1 -0
  631. package/plugins/filters/component/condition.js +11 -22
  632. package/plugins/filters/component/condition.mjs +3 -3
  633. package/plugins/filters/component/operators.js +1 -3
  634. package/plugins/filters/component/operators.mjs +1 -3
  635. package/plugins/filters/component/value.d.ts +5 -6
  636. package/plugins/filters/component/value.js +62 -56
  637. package/plugins/filters/component/value.mjs +55 -38
  638. package/plugins/filters/condition/beginsWith.js +8 -19
  639. package/plugins/filters/condition/between.js +8 -19
  640. package/plugins/filters/condition/contains.js +8 -19
  641. package/plugins/filters/condition/date/after.js +10 -20
  642. package/plugins/filters/condition/date/after.mjs +2 -1
  643. package/plugins/filters/condition/date/afterOrEqual.js +10 -20
  644. package/plugins/filters/condition/date/afterOrEqual.mjs +2 -1
  645. package/plugins/filters/condition/date/before.js +10 -20
  646. package/plugins/filters/condition/date/before.mjs +2 -1
  647. package/plugins/filters/condition/date/beforeOrEqual.js +10 -20
  648. package/plugins/filters/condition/date/beforeOrEqual.mjs +2 -1
  649. package/plugins/filters/condition/date/today.js +8 -19
  650. package/plugins/filters/condition/date/tomorrow.js +8 -19
  651. package/plugins/filters/condition/date/yesterday.js +8 -19
  652. package/plugins/filters/condition/empty.js +8 -19
  653. package/plugins/filters/condition/endsWith.js +8 -19
  654. package/plugins/filters/condition/equal.d.ts +7 -0
  655. package/plugins/filters/condition/equal.js +12 -19
  656. package/plugins/filters/condition/equal.mjs +10 -0
  657. package/plugins/filters/condition/greaterThan.js +8 -19
  658. package/plugins/filters/condition/greaterThanOrEqual.js +8 -19
  659. package/plugins/filters/condition/intlDate/after.js +8 -19
  660. package/plugins/filters/condition/intlDate/afterOrEqual.js +8 -19
  661. package/plugins/filters/condition/intlDate/before.js +8 -19
  662. package/plugins/filters/condition/intlDate/beforeOrEqual.js +8 -19
  663. package/plugins/filters/condition/intlDate/between.js +8 -19
  664. package/plugins/filters/condition/intlDate/today.js +8 -19
  665. package/plugins/filters/condition/intlDate/tomorrow.js +8 -19
  666. package/plugins/filters/condition/intlDate/yesterday.js +8 -19
  667. package/plugins/filters/condition/intlDatetime/after.d.mts +1 -0
  668. package/plugins/filters/condition/intlDatetime/after.d.ts +18 -0
  669. package/plugins/filters/condition/intlDatetime/after.js +66 -0
  670. package/plugins/filters/condition/intlDatetime/after.mjs +22 -0
  671. package/plugins/filters/condition/intlDatetime/afterOrEqual.d.mts +1 -0
  672. package/plugins/filters/condition/intlDatetime/afterOrEqual.d.ts +18 -0
  673. package/plugins/filters/condition/intlDatetime/afterOrEqual.js +66 -0
  674. package/plugins/filters/condition/intlDatetime/afterOrEqual.mjs +22 -0
  675. package/plugins/filters/condition/intlDatetime/before.d.mts +1 -0
  676. package/plugins/filters/condition/intlDatetime/before.d.ts +18 -0
  677. package/plugins/filters/condition/intlDatetime/before.js +66 -0
  678. package/plugins/filters/condition/intlDatetime/before.mjs +22 -0
  679. package/plugins/filters/condition/intlDatetime/beforeOrEqual.d.mts +1 -0
  680. package/plugins/filters/condition/intlDatetime/beforeOrEqual.d.ts +18 -0
  681. package/plugins/filters/condition/intlDatetime/beforeOrEqual.js +66 -0
  682. package/plugins/filters/condition/intlDatetime/beforeOrEqual.mjs +22 -0
  683. package/plugins/filters/condition/intlDatetime/between.d.mts +1 -0
  684. package/plugins/filters/condition/intlDatetime/between.d.ts +18 -0
  685. package/plugins/filters/condition/intlDatetime/between.js +67 -0
  686. package/plugins/filters/condition/intlDatetime/between.mjs +23 -0
  687. package/plugins/filters/condition/intlDatetime/today.d.mts +1 -0
  688. package/plugins/filters/condition/intlDatetime/today.d.ts +17 -0
  689. package/plugins/filters/condition/intlDatetime/today.js +65 -0
  690. package/plugins/filters/condition/intlDatetime/today.mjs +20 -0
  691. package/plugins/filters/condition/intlDatetime/tomorrow.d.mts +1 -0
  692. package/plugins/filters/condition/intlDatetime/tomorrow.d.ts +17 -0
  693. package/plugins/filters/condition/intlDatetime/tomorrow.js +66 -0
  694. package/plugins/filters/condition/intlDatetime/tomorrow.mjs +21 -0
  695. package/plugins/filters/condition/intlDatetime/yesterday.d.mts +1 -0
  696. package/plugins/filters/condition/intlDatetime/yesterday.d.ts +17 -0
  697. package/plugins/filters/condition/intlDatetime/yesterday.js +66 -0
  698. package/plugins/filters/condition/intlDatetime/yesterday.mjs +21 -0
  699. package/plugins/filters/condition/intlTime/after.js +8 -19
  700. package/plugins/filters/condition/intlTime/afterOrEqual.js +8 -19
  701. package/plugins/filters/condition/intlTime/before.js +8 -19
  702. package/plugins/filters/condition/intlTime/beforeOrEqual.js +8 -19
  703. package/plugins/filters/condition/intlTime/between.js +8 -19
  704. package/plugins/filters/condition/lessThan.js +8 -19
  705. package/plugins/filters/condition/lessThanOrEqual.js +8 -19
  706. package/plugins/filters/condition/none.js +8 -19
  707. package/plugins/filters/condition/notBetween.js +8 -19
  708. package/plugins/filters/condition/notContains.js +8 -19
  709. package/plugins/filters/condition/notEmpty.js +8 -19
  710. package/plugins/filters/condition/notEqual.js +8 -19
  711. package/plugins/filters/conditionCollection.js +4 -7
  712. package/plugins/filters/conditionCollection.mjs +4 -7
  713. package/plugins/filters/conditionUpdateObserver.d.ts +2 -2
  714. package/plugins/filters/conditionUpdateObserver.js +144 -52
  715. package/plugins/filters/conditionUpdateObserver.mjs +144 -52
  716. package/plugins/filters/constants.d.ts +1 -0
  717. package/plugins/filters/constants.js +31 -0
  718. package/plugins/filters/constants.mjs +28 -0
  719. package/plugins/filters/dataFilter.d.ts +4 -12
  720. package/plugins/filters/dataFilter.js +7 -19
  721. package/plugins/filters/dataFilter.mjs +8 -20
  722. package/plugins/filters/filters.d.ts +33 -9
  723. package/plugins/filters/filters.js +104 -62
  724. package/plugins/filters/filters.mjs +97 -44
  725. package/plugins/filters/logicalOperations/conjunction.js +8 -19
  726. package/plugins/filters/logicalOperations/disjunction.js +8 -19
  727. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +8 -19
  728. package/plugins/filters/sortComparators.d.ts +9 -2
  729. package/plugins/filters/sortComparators.js +34 -1
  730. package/plugins/filters/sortComparators.mjs +38 -3
  731. package/plugins/filters/ui/_base.js +8 -19
  732. package/plugins/filters/ui/input.d.ts +4 -0
  733. package/plugins/filters/ui/input.js +23 -18
  734. package/plugins/filters/ui/input.mjs +23 -18
  735. package/plugins/filters/ui/link.js +4 -9
  736. package/plugins/filters/ui/link.mjs +4 -9
  737. package/plugins/filters/ui/multipleSelect.js +40 -35
  738. package/plugins/filters/ui/multipleSelect.mjs +32 -16
  739. package/plugins/filters/ui/radioInput.js +4 -9
  740. package/plugins/filters/ui/radioInput.mjs +4 -9
  741. package/plugins/filters/ui/select.js +14 -32
  742. package/plugins/filters/ui/select.mjs +6 -13
  743. package/plugins/formulas/engine/register.d.ts +5 -4
  744. package/plugins/formulas/engine/register.js +5 -2
  745. package/plugins/formulas/engine/register.mjs +9 -5
  746. package/plugins/formulas/engine/settings.d.ts +2 -6
  747. package/plugins/formulas/engine/settings.js +29 -4
  748. package/plugins/formulas/engine/settings.mjs +29 -4
  749. package/plugins/formulas/engine/types.d.ts +12 -2
  750. package/plugins/formulas/formulas.d.ts +39 -0
  751. package/plugins/formulas/formulas.js +748 -55
  752. package/plugins/formulas/formulas.mjs +752 -57
  753. package/plugins/formulas/hyperlinkUrl.d.mts +1 -0
  754. package/plugins/formulas/hyperlinkUrl.d.ts +12 -0
  755. package/plugins/formulas/hyperlinkUrl.js +32 -0
  756. package/plugins/formulas/hyperlinkUrl.mjs +32 -0
  757. package/plugins/formulas/indexSyncer/axisSyncer.d.ts +1 -0
  758. package/plugins/formulas/indexSyncer/axisSyncer.js +77 -27
  759. package/plugins/formulas/indexSyncer/axisSyncer.mjs +77 -27
  760. package/plugins/formulas/indexSyncer/index.js +4 -9
  761. package/plugins/formulas/indexSyncer/index.mjs +4 -9
  762. package/plugins/formulas/utils.d.ts +9 -0
  763. package/plugins/formulas/utils.js +21 -0
  764. package/plugins/formulas/utils.mjs +25 -0
  765. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +8 -19
  766. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +14 -20
  767. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +6 -1
  768. package/plugins/hiddenColumns/hiddenColumns.js +11 -15
  769. package/plugins/hiddenColumns/hiddenColumns.mjs +11 -15
  770. package/plugins/hiddenRows/contextMenuItem/hideRow.js +8 -19
  771. package/plugins/hiddenRows/contextMenuItem/showRow.js +14 -20
  772. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +6 -1
  773. package/plugins/hiddenRows/hiddenRows.js +11 -15
  774. package/plugins/hiddenRows/hiddenRows.mjs +11 -15
  775. package/plugins/index.d.ts +5 -1
  776. package/plugins/index.js +10 -0
  777. package/plugins/index.mjs +5 -1
  778. package/plugins/loading/loading.js +13 -31
  779. package/plugins/loading/loading.mjs +5 -12
  780. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +8 -19
  781. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +8 -19
  782. package/plugins/manualColumnFreeze/manualColumnFreeze.js +5 -12
  783. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +5 -12
  784. package/plugins/manualColumnMove/manualColumnMove.d.ts +10 -0
  785. package/plugins/manualColumnMove/manualColumnMove.js +128 -33
  786. package/plugins/manualColumnMove/manualColumnMove.mjs +129 -34
  787. package/plugins/manualColumnResize/manualColumnResize.d.ts +12 -1
  788. package/plugins/manualColumnResize/manualColumnResize.js +28 -17
  789. package/plugins/manualColumnResize/manualColumnResize.mjs +28 -17
  790. package/plugins/manualRowMove/manualRowMove.js +5 -12
  791. package/plugins/manualRowMove/manualRowMove.mjs +5 -12
  792. package/plugins/manualRowResize/manualRowResize.d.ts +13 -2
  793. package/plugins/manualRowResize/manualRowResize.js +29 -18
  794. package/plugins/manualRowResize/manualRowResize.mjs +29 -18
  795. package/plugins/mergeCells/cellCoords.d.ts +8 -0
  796. package/plugins/mergeCells/cellCoords.js +15 -9
  797. package/plugins/mergeCells/cellCoords.mjs +15 -9
  798. package/plugins/mergeCells/cellsCollection.d.ts +46 -2
  799. package/plugins/mergeCells/cellsCollection.js +190 -71
  800. package/plugins/mergeCells/cellsCollection.mjs +190 -71
  801. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +8 -19
  802. package/plugins/mergeCells/focusOrder.d.ts +26 -20
  803. package/plugins/mergeCells/focusOrder.js +363 -189
  804. package/plugins/mergeCells/focusOrder.mjs +368 -184
  805. package/plugins/mergeCells/mergeCells.d.ts +13 -8
  806. package/plugins/mergeCells/mergeCells.js +327 -76
  807. package/plugins/mergeCells/mergeCells.mjs +327 -76
  808. package/plugins/moveCells/helpers.d.mts +1 -0
  809. package/plugins/moveCells/helpers.d.ts +21 -0
  810. package/plugins/moveCells/helpers.js +20 -0
  811. package/plugins/moveCells/helpers.mjs +15 -0
  812. package/plugins/moveCells/index.d.mts +1 -0
  813. package/plugins/moveCells/index.d.ts +1 -0
  814. package/plugins/moveCells/index.js +22 -0
  815. package/plugins/moveCells/index.mjs +1 -0
  816. package/plugins/moveCells/moveCells.d.mts +1 -0
  817. package/plugins/moveCells/moveCells.d.ts +80 -0
  818. package/plugins/moveCells/moveCells.js +595 -0
  819. package/plugins/moveCells/moveCells.mjs +580 -0
  820. package/plugins/multiColumnSorting/multiColumnSorting.d.ts +8 -8
  821. package/plugins/multiColumnSorting/multiColumnSorting.js +11 -16
  822. package/plugins/multiColumnSorting/multiColumnSorting.mjs +11 -16
  823. package/plugins/multiColumnSorting/rootComparator.js +26 -19
  824. package/plugins/multiColumnSorting/rootComparator.mjs +26 -19
  825. package/plugins/multipleSelectionHandles/multipleSelectionHandles.d.ts +19 -4
  826. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +266 -58
  827. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +266 -58
  828. package/plugins/nestedHeaders/nestedHeaders.d.ts +10 -1
  829. package/plugins/nestedHeaders/nestedHeaders.js +227 -35
  830. package/plugins/nestedHeaders/nestedHeaders.mjs +227 -35
  831. package/plugins/nestedHeaders/stateManager/columnArrangement.d.mts +1 -0
  832. package/plugins/nestedHeaders/stateManager/columnArrangement.d.ts +37 -0
  833. package/plugins/nestedHeaders/stateManager/columnArrangement.js +35 -0
  834. package/plugins/nestedHeaders/stateManager/columnArrangement.mjs +30 -0
  835. package/plugins/nestedHeaders/stateManager/deriveSettings.d.mts +1 -0
  836. package/plugins/nestedHeaders/stateManager/deriveSettings.d.ts +57 -0
  837. package/plugins/nestedHeaders/stateManager/deriveSettings.js +115 -0
  838. package/plugins/nestedHeaders/stateManager/deriveSettings.mjs +135 -0
  839. package/plugins/nestedHeaders/stateManager/headersTree.d.ts +14 -1
  840. package/plugins/nestedHeaders/stateManager/headersTree.js +4 -9
  841. package/plugins/nestedHeaders/stateManager/headersTree.mjs +4 -9
  842. package/plugins/nestedHeaders/stateManager/index.d.ts +76 -13
  843. package/plugins/nestedHeaders/stateManager/index.js +386 -50
  844. package/plugins/nestedHeaders/stateManager/index.mjs +387 -51
  845. package/plugins/nestedHeaders/stateManager/matrixGenerator.js +3 -2
  846. package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +3 -2
  847. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -1
  848. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +5 -1
  849. package/plugins/nestedHeaders/stateManager/sourceSettings.d.ts +23 -6
  850. package/plugins/nestedHeaders/stateManager/sourceSettings.js +24 -13
  851. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +24 -13
  852. package/plugins/nestedHeaders/stateManager/utils.d.ts +17 -1
  853. package/plugins/nestedHeaders/stateManager/utils.js +6 -1
  854. package/plugins/nestedHeaders/stateManager/utils.mjs +6 -1
  855. package/plugins/nestedHeaders/utils/ghostTable.js +1 -3
  856. package/plugins/nestedHeaders/utils/ghostTable.mjs +1 -3
  857. package/plugins/nestedRows/data/dataManager.d.ts +4 -1
  858. package/plugins/nestedRows/data/dataManager.js +10 -4
  859. package/plugins/nestedRows/data/dataManager.mjs +10 -4
  860. package/plugins/nestedRows/nestedRows.d.ts +127 -1
  861. package/plugins/nestedRows/nestedRows.js +332 -17
  862. package/plugins/nestedRows/nestedRows.mjs +332 -17
  863. package/plugins/nestedRows/ui/collapsing.d.ts +58 -0
  864. package/plugins/nestedRows/ui/collapsing.js +234 -40
  865. package/plugins/nestedRows/ui/collapsing.mjs +234 -40
  866. package/plugins/nestedRows/ui/contextMenu.js +12 -28
  867. package/plugins/nestedRows/ui/contextMenu.mjs +4 -9
  868. package/plugins/notification/notification.js +13 -31
  869. package/plugins/notification/notification.mjs +5 -12
  870. package/plugins/notification/ui.js +4 -9
  871. package/plugins/notification/ui.mjs +4 -9
  872. package/plugins/pagination/pagination.js +7 -14
  873. package/plugins/pagination/pagination.mjs +7 -14
  874. package/plugins/pagination/ui.js +13 -31
  875. package/plugins/pagination/ui.mjs +5 -12
  876. package/plugins/search/search.js +27 -11
  877. package/plugins/search/search.mjs +27 -11
  878. package/plugins/selectionHandles/helpers.d.mts +1 -0
  879. package/plugins/selectionHandles/helpers.d.ts +17 -0
  880. package/plugins/selectionHandles/helpers.js +16 -0
  881. package/plugins/selectionHandles/helpers.mjs +11 -0
  882. package/plugins/selectionHandles/index.d.mts +1 -0
  883. package/plugins/selectionHandles/index.d.ts +1 -0
  884. package/plugins/selectionHandles/index.js +22 -0
  885. package/plugins/selectionHandles/index.mjs +1 -0
  886. package/plugins/selectionHandles/selectionHandles.d.mts +1 -0
  887. package/plugins/selectionHandles/selectionHandles.d.ts +52 -0
  888. package/plugins/selectionHandles/selectionHandles.js +335 -0
  889. package/plugins/selectionHandles/selectionHandles.mjs +316 -0
  890. package/plugins/stretchColumns/calculator.js +5 -12
  891. package/plugins/stretchColumns/calculator.mjs +5 -12
  892. package/plugins/stretchColumns/strategies/last.js +4 -9
  893. package/plugins/stretchColumns/strategies/last.mjs +4 -9
  894. package/plugins/stretchColumns/stretchColumns.js +4 -9
  895. package/plugins/stretchColumns/stretchColumns.mjs +4 -9
  896. package/plugins/touchScroll/touchScroll.js +4 -9
  897. package/plugins/touchScroll/touchScroll.mjs +4 -9
  898. package/plugins/trimRows/trimRows.d.ts +1 -1
  899. package/plugins/trimRows/trimRows.js +10 -11
  900. package/plugins/trimRows/trimRows.mjs +10 -11
  901. package/plugins/types.d.ts +4 -0
  902. package/plugins/undoRedo/actions/cellAlignment.js +1 -1
  903. package/plugins/undoRedo/actions/cellAlignment.mjs +1 -1
  904. package/plugins/undoRedo/actions/createColumn.js +4 -1
  905. package/plugins/undoRedo/actions/createColumn.mjs +4 -1
  906. package/plugins/undoRedo/actions/createRow.js +4 -1
  907. package/plugins/undoRedo/actions/createRow.mjs +4 -1
  908. package/plugins/undoRedo/actions/fixedCounts.d.mts +1 -0
  909. package/plugins/undoRedo/actions/fixedCounts.d.ts +36 -0
  910. package/plugins/undoRedo/actions/fixedCounts.js +63 -0
  911. package/plugins/undoRedo/actions/fixedCounts.mjs +62 -0
  912. package/plugins/undoRedo/actions/index.js +2 -0
  913. package/plugins/undoRedo/actions/index.mjs +2 -0
  914. package/plugins/undoRedo/actions/moveCells.d.mts +1 -0
  915. package/plugins/undoRedo/actions/moveCells.d.ts +104 -0
  916. package/plugins/undoRedo/actions/moveCells.js +225 -0
  917. package/plugins/undoRedo/actions/moveCells.mjs +227 -0
  918. package/plugins/undoRedo/actions/removeColumn.d.ts +18 -2
  919. package/plugins/undoRedo/actions/removeColumn.js +11 -4
  920. package/plugins/undoRedo/actions/removeColumn.mjs +12 -5
  921. package/plugins/undoRedo/actions/removeRow.js +2 -57
  922. package/plugins/undoRedo/actions/removeRow.mjs +2 -57
  923. package/plugins/undoRedo/undoRedo.d.ts +26 -0
  924. package/plugins/undoRedo/undoRedo.js +40 -11
  925. package/plugins/undoRedo/undoRedo.mjs +40 -11
  926. package/plugins/undoRedo/utils.d.ts +29 -0
  927. package/plugins/undoRedo/utils.js +55 -3
  928. package/plugins/undoRedo/utils.mjs +59 -0
  929. package/renderSizeProbe.d.mts +1 -0
  930. package/renderSizeProbe.d.ts +60 -0
  931. package/renderSizeProbe.js +161 -0
  932. package/renderSizeProbe.mjs +174 -0
  933. package/renderers/checkboxRenderer/checkboxRenderer.js +9 -4
  934. package/renderers/checkboxRenderer/checkboxRenderer.mjs +9 -4
  935. package/renderers/index.d.ts +3 -2
  936. package/renderers/index.js +8 -0
  937. package/renderers/index.mjs +3 -1
  938. package/renderers/intlDatetimeRenderer/index.d.mts +1 -0
  939. package/renderers/intlDatetimeRenderer/index.d.ts +1 -0
  940. package/renderers/intlDatetimeRenderer/index.js +22 -0
  941. package/renderers/intlDatetimeRenderer/index.mjs +1 -0
  942. package/renderers/intlDatetimeRenderer/intlDatetimeRenderer.d.mts +1 -0
  943. package/renderers/intlDatetimeRenderer/intlDatetimeRenderer.d.ts +26 -0
  944. package/renderers/intlDatetimeRenderer/intlDatetimeRenderer.js +82 -0
  945. package/renderers/intlDatetimeRenderer/intlDatetimeRenderer.mjs +67 -0
  946. package/renderers/multiSelectRenderer/multiSelectRenderer.js +2 -3
  947. package/renderers/multiSelectRenderer/multiSelectRenderer.mjs +2 -3
  948. package/renderers/multiSelectRenderer/utils/utils.d.ts +1 -1
  949. package/renderers/multiSelectRenderer/utils/utils.js +11 -8
  950. package/renderers/multiSelectRenderer/utils/utils.mjs +11 -8
  951. package/renderers/renderCell.d.mts +1 -0
  952. package/renderers/renderCell.d.ts +37 -0
  953. package/renderers/renderCell.js +43 -0
  954. package/renderers/renderCell.mjs +48 -0
  955. package/selection/highlight/highlight.js +1 -3
  956. package/selection/highlight/highlight.mjs +1 -3
  957. package/selection/highlight/types/areaLayered.d.ts +3 -1
  958. package/selection/highlight/types/areaLayered.js +4 -2
  959. package/selection/highlight/types/areaLayered.mjs +6 -2
  960. package/selection/highlight/types/focus.d.ts +3 -1
  961. package/selection/highlight/types/focus.js +3 -2
  962. package/selection/highlight/types/focus.mjs +5 -2
  963. package/selection/mouseEventHandler.js +29 -26
  964. package/selection/mouseEventHandler.mjs +29 -26
  965. package/selection/moveCells.d.mts +1 -0
  966. package/selection/moveCells.d.ts +15 -0
  967. package/selection/moveCells.js +13 -0
  968. package/selection/moveCells.mjs +9 -0
  969. package/selection/selection.d.ts +56 -2
  970. package/selection/selection.js +162 -36
  971. package/selection/selection.mjs +154 -17
  972. package/selection/transformation/_base.js +5 -12
  973. package/selection/transformation/_base.mjs +5 -12
  974. package/selection/types.d.ts +3 -0
  975. package/settings.d.ts +24 -3
  976. package/shortcuts/context.d.ts +4 -0
  977. package/shortcuts/context.js +16 -8
  978. package/shortcuts/context.mjs +20 -8
  979. package/shortcuts/contexts/commands/populateSelectedCellsData.js +1 -1
  980. package/shortcuts/contexts/commands/populateSelectedCellsData.mjs +1 -1
  981. package/styles/handsontable.css +504 -158
  982. package/styles/handsontable.min.css +4 -4
  983. package/styles/handsontableStyles.js +1 -1
  984. package/styles/handsontableStyles.mjs +1 -1
  985. package/styles/ht-icons-horizon.css +1 -10
  986. package/styles/ht-icons-horizon.min.css +4 -4
  987. package/styles/ht-icons-main.css +1 -10
  988. package/styles/ht-icons-main.min.css +4 -4
  989. package/styles/ht-theme-classic-no-icons.css +6 -0
  990. package/styles/ht-theme-classic-no-icons.min.css +4 -4
  991. package/styles/ht-theme-classic.css +7 -10
  992. package/styles/ht-theme-classic.min.css +4 -4
  993. package/styles/ht-theme-horizon-no-icons.css +6 -0
  994. package/styles/ht-theme-horizon-no-icons.min.css +4 -4
  995. package/styles/ht-theme-horizon.css +7 -10
  996. package/styles/ht-theme-horizon.min.css +4 -4
  997. package/styles/ht-theme-main-no-icons.css +6 -0
  998. package/styles/ht-theme-main-no-icons.min.css +4 -4
  999. package/styles/ht-theme-main.css +7 -10
  1000. package/styles/ht-theme-main.min.css +4 -4
  1001. package/tableView.d.ts +17 -4
  1002. package/tableView.js +211 -53
  1003. package/tableView.mjs +212 -54
  1004. package/themes/engine/builder.js +5 -12
  1005. package/themes/engine/builder.mjs +5 -12
  1006. package/themes/engine/index.d.ts +2 -1
  1007. package/themes/engine/index.js +3 -0
  1008. package/themes/engine/index.mjs +1 -1
  1009. package/themes/engine/manager.d.ts +75 -3
  1010. package/themes/engine/manager.js +247 -18
  1011. package/themes/engine/manager.mjs +254 -18
  1012. package/themes/engine/utils/cssVariables.d.ts +18 -1
  1013. package/themes/engine/utils/cssVariables.js +27 -11
  1014. package/themes/engine/utils/cssVariables.mjs +28 -11
  1015. package/themes/engine/utils/validation.js +7 -0
  1016. package/themes/engine/utils/validation.mjs +7 -0
  1017. package/themes/static/variables/helpers/iconsMap.js +1 -6
  1018. package/themes/static/variables/helpers/iconsMap.mjs +1 -6
  1019. package/themes/static/variables/tokens/classic.js +6 -0
  1020. package/themes/static/variables/tokens/classic.mjs +6 -0
  1021. package/themes/static/variables/tokens/horizon.js +6 -0
  1022. package/themes/static/variables/tokens/horizon.mjs +6 -0
  1023. package/themes/static/variables/tokens/main.js +6 -0
  1024. package/themes/static/variables/tokens/main.mjs +6 -0
  1025. package/themes/types.d.ts +1 -1
  1026. package/translations/changesObservable/observable.js +4 -9
  1027. package/translations/changesObservable/observable.mjs +4 -9
  1028. package/translations/changesObservable/observer.js +4 -9
  1029. package/translations/changesObservable/observer.mjs +4 -9
  1030. package/translations/indexMapper.d.ts +14 -9
  1031. package/translations/indexMapper.js +109 -49
  1032. package/translations/indexMapper.mjs +109 -49
  1033. package/translations/mapCollections/aggregatedCollection.js +20 -35
  1034. package/translations/mapCollections/aggregatedCollection.mjs +20 -35
  1035. package/translations/mapCollections/mapCollection.d.ts +10 -4
  1036. package/translations/mapCollections/mapCollection.js +2 -2
  1037. package/translations/mapCollections/mapCollection.mjs +2 -2
  1038. package/translations/maps/booleanMap.d.mts +1 -0
  1039. package/translations/maps/booleanMap.d.ts +86 -0
  1040. package/translations/maps/booleanMap.js +293 -0
  1041. package/translations/maps/booleanMap.mjs +301 -0
  1042. package/translations/maps/hidingMap.d.ts +5 -2
  1043. package/translations/maps/hidingMap.js +8 -3
  1044. package/translations/maps/hidingMap.mjs +8 -3
  1045. package/translations/maps/index.d.ts +5 -2
  1046. package/translations/maps/index.js +7 -3
  1047. package/translations/maps/index.mjs +10 -2
  1048. package/translations/maps/indexMap.d.ts +26 -2
  1049. package/translations/maps/indexMap.js +73 -6
  1050. package/translations/maps/indexMap.mjs +73 -6
  1051. package/translations/maps/indexesSequence.d.ts +53 -2
  1052. package/translations/maps/indexesSequence.js +218 -3
  1053. package/translations/maps/indexesSequence.mjs +226 -3
  1054. package/translations/maps/trimmingMap.d.ts +5 -2
  1055. package/translations/maps/trimmingMap.js +8 -3
  1056. package/translations/maps/trimmingMap.mjs +8 -3
  1057. package/translations/maps/utils/actionsOnIndexes.js +20 -1
  1058. package/translations/maps/utils/actionsOnIndexes.mjs +20 -1
  1059. package/translations/maps/utils/indexesSequence.js +12 -3
  1060. package/translations/maps/utils/indexesSequence.mjs +12 -3
  1061. package/translations/maps/utils/physicallyIndexed.js +12 -1
  1062. package/translations/maps/utils/physicallyIndexed.mjs +12 -1
  1063. package/utils/entitlementLicenseKey/classify.d.mts +1 -0
  1064. package/utils/entitlementLicenseKey/classify.d.ts +34 -0
  1065. package/utils/entitlementLicenseKey/classify.js +97 -0
  1066. package/utils/entitlementLicenseKey/classify.mjs +96 -0
  1067. package/utils/entitlementLicenseKey/constants.d.mts +1 -0
  1068. package/utils/entitlementLicenseKey/constants.d.ts +69 -0
  1069. package/utils/entitlementLicenseKey/constants.js +54 -0
  1070. package/utils/entitlementLicenseKey/constants.mjs +66 -0
  1071. package/utils/entitlementLicenseKey/detectFormat.d.mts +1 -0
  1072. package/utils/entitlementLicenseKey/detectFormat.d.ts +23 -0
  1073. package/utils/entitlementLicenseKey/detectFormat.js +60 -0
  1074. package/utils/entitlementLicenseKey/detectFormat.mjs +60 -0
  1075. package/utils/entitlementLicenseKey/encoding.d.mts +1 -0
  1076. package/utils/entitlementLicenseKey/encoding.d.ts +58 -0
  1077. package/utils/entitlementLicenseKey/encoding.js +161 -0
  1078. package/utils/entitlementLicenseKey/encoding.mjs +172 -0
  1079. package/utils/entitlementLicenseKey/extractKeyData.d.mts +1 -0
  1080. package/utils/entitlementLicenseKey/extractKeyData.d.ts +47 -0
  1081. package/utils/entitlementLicenseKey/extractKeyData.js +213 -0
  1082. package/utils/entitlementLicenseKey/extractKeyData.mjs +232 -0
  1083. package/utils/entitlementLicenseKey/grants.d.mts +1 -0
  1084. package/utils/entitlementLicenseKey/grants.d.ts +54 -0
  1085. package/utils/entitlementLicenseKey/grants.js +68 -0
  1086. package/utils/entitlementLicenseKey/grants.mjs +84 -0
  1087. package/utils/entitlementLicenseKey/index.d.mts +1 -0
  1088. package/utils/entitlementLicenseKey/index.d.ts +8 -0
  1089. package/utils/entitlementLicenseKey/index.js +53 -0
  1090. package/utils/entitlementLicenseKey/index.mjs +6 -0
  1091. package/utils/entitlementLicenseKey/sha512.d.mts +1 -0
  1092. package/utils/entitlementLicenseKey/sha512.d.ts +11 -0
  1093. package/utils/entitlementLicenseKey/sha512.js +328 -0
  1094. package/utils/entitlementLicenseKey/sha512.mjs +327 -0
  1095. package/utils/entitlementLicenseKey/types.d.mts +1 -0
  1096. package/utils/entitlementLicenseKey/types.d.ts +84 -0
  1097. package/utils/entitlementLicenseKey/types.js +8 -0
  1098. package/utils/entitlementLicenseKey/types.mjs +10 -0
  1099. package/utils/ghostTable.d.ts +1 -0
  1100. package/utils/ghostTable.js +58 -11
  1101. package/utils/ghostTable.mjs +58 -11
  1102. package/utils/interval.js +5 -12
  1103. package/utils/interval.mjs +5 -12
  1104. package/utils/licenseBranding/badge.d.mts +1 -0
  1105. package/utils/licenseBranding/badge.d.ts +21 -0
  1106. package/utils/licenseBranding/badge.js +237 -0
  1107. package/utils/licenseBranding/badge.mjs +244 -0
  1108. package/utils/licenseBranding/content.d.mts +1 -0
  1109. package/utils/licenseBranding/content.d.ts +54 -0
  1110. package/utils/licenseBranding/content.js +93 -0
  1111. package/utils/licenseBranding/content.mjs +79 -0
  1112. package/utils/licenseBranding/index.d.mts +1 -0
  1113. package/utils/licenseBranding/index.d.ts +14 -0
  1114. package/utils/licenseBranding/index.js +55 -0
  1115. package/utils/licenseBranding/index.mjs +56 -0
  1116. package/utils/licenseBranding/lockScreen.d.mts +1 -0
  1117. package/utils/licenseBranding/lockScreen.d.ts +23 -0
  1118. package/utils/licenseBranding/lockScreen.js +150 -0
  1119. package/utils/licenseBranding/lockScreen.mjs +159 -0
  1120. package/utils/licenseNotification.d.ts +19 -0
  1121. package/utils/licenseNotification.js +56 -29
  1122. package/utils/licenseNotification.mjs +61 -29
  1123. package/utils/movableMeta.d.mts +1 -0
  1124. package/utils/movableMeta.d.ts +40 -0
  1125. package/utils/movableMeta.js +47 -0
  1126. package/utils/movableMeta.mjs +46 -0
  1127. package/utils/parseTable.js +1 -1
  1128. package/utils/parseTable.mjs +1 -1
  1129. package/utils/samplesGenerator.d.ts +41 -14
  1130. package/utils/samplesGenerator.js +112 -42
  1131. package/utils/samplesGenerator.mjs +112 -42
  1132. package/utils/stylesHandler.d.ts +13 -0
  1133. package/utils/stylesHandler.js +60 -14
  1134. package/utils/stylesHandler.mjs +60 -14
  1135. package/validators/autocompleteValidator/autocompleteValidator.js +3 -0
  1136. package/validators/autocompleteValidator/autocompleteValidator.mjs +3 -0
  1137. package/validators/index.d.ts +3 -2
  1138. package/validators/index.js +8 -0
  1139. package/validators/index.mjs +3 -1
  1140. package/validators/intlDatetimeValidator/index.d.mts +1 -0
  1141. package/validators/intlDatetimeValidator/index.d.ts +1 -0
  1142. package/validators/intlDatetimeValidator/index.js +25 -0
  1143. package/validators/intlDatetimeValidator/index.mjs +1 -0
  1144. package/validators/intlDatetimeValidator/intlDatetimeValidator.d.mts +1 -0
  1145. package/validators/intlDatetimeValidator/intlDatetimeValidator.d.ts +28 -0
  1146. package/validators/intlDatetimeValidator/intlDatetimeValidator.js +49 -0
  1147. package/validators/intlDatetimeValidator/intlDatetimeValidator.mjs +37 -0
  1148. package/3rdparty/walkontable/src/overlay/bottom.d.mts +0 -1
  1149. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.d.mts +0 -1
  1150. package/3rdparty/walkontable/src/overlay/inlineStart.d.mts +0 -1
  1151. package/3rdparty/walkontable/src/overlay/top.d.mts +0 -1
  1152. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.d.mts +0 -1
  1153. package/3rdparty/walkontable/src/overlays.d.ts +0 -329
  1154. package/3rdparty/walkontable/src/overlays.js +0 -870
  1155. package/3rdparty/walkontable/src/overlays.mjs +0 -860
  1156. package/3rdparty/walkontable/src/renderer/table.d.mts +0 -1
  1157. package/3rdparty/walkontable/src/renderer/table.js +0 -229
  1158. package/3rdparty/walkontable/src/settings.d.mts +0 -2
  1159. package/3rdparty/walkontable/src/settings.js +0 -196
  1160. package/3rdparty/walkontable/src/settings.mjs +0 -263
  1161. package/3rdparty/walkontable/src/table/bottom.d.mts +0 -2
  1162. package/3rdparty/walkontable/src/table/bottom.d.ts +0 -19
  1163. package/3rdparty/walkontable/src/table/bottom.js +0 -38
  1164. package/3rdparty/walkontable/src/table/bottom.mjs +0 -23
  1165. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.d.mts +0 -2
  1166. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.d.ts +0 -20
  1167. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +0 -24
  1168. package/3rdparty/walkontable/src/table/inlineStart.d.mts +0 -2
  1169. package/3rdparty/walkontable/src/table/inlineStart.d.ts +0 -16
  1170. package/3rdparty/walkontable/src/table/inlineStart.js +0 -35
  1171. package/3rdparty/walkontable/src/table/inlineStart.mjs +0 -20
  1172. package/3rdparty/walkontable/src/table/master.d.mts +0 -2
  1173. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.d.mts +0 -2
  1174. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.d.ts +0 -75
  1175. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +0 -122
  1176. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +0 -112
  1177. package/3rdparty/walkontable/src/table/mixin/calculatedRows.d.mts +0 -2
  1178. package/3rdparty/walkontable/src/table/mixin/calculatedRows.d.ts +0 -75
  1179. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +0 -122
  1180. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +0 -112
  1181. package/3rdparty/walkontable/src/table/top.d.mts +0 -2
  1182. package/3rdparty/walkontable/src/table/top.d.ts +0 -19
  1183. package/3rdparty/walkontable/src/table/top.js +0 -38
  1184. package/3rdparty/walkontable/src/table/top.mjs +0 -23
  1185. package/3rdparty/walkontable/src/table/topInlineStartCorner.d.mts +0 -2
  1186. package/3rdparty/walkontable/src/table/topInlineStartCorner.d.ts +0 -20
  1187. package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +0 -24
  1188. package/3rdparty/walkontable/src/table.d.mts +0 -2
  1189. package/3rdparty/walkontable/src/table.d.ts +0 -741
  1190. package/3rdparty/walkontable/src/table.js +0 -1120
  1191. package/3rdparty/walkontable/src/table.mjs +0 -1105
  1192. package/3rdparty/walkontable/src/utils/cellCoords.d.mts +0 -1
  1193. package/3rdparty/walkontable/src/utils/cellCoords.js +0 -54
  1194. package/3rdparty/walkontable/src/utils/cellCoords.mjs +0 -54
  1195. package/3rdparty/walkontable/src/utils/column.d.mts +0 -2
  1196. package/3rdparty/walkontable/src/utils/column.js +0 -75
  1197. package/3rdparty/walkontable/src/utils/column.mjs +0 -70
  1198. package/3rdparty/walkontable/src/utils/positionCache.d.mts +0 -1
  1199. package/3rdparty/walkontable/src/utils/positionCache.d.ts +0 -91
  1200. package/3rdparty/walkontable/src/utils/positionCache.js +0 -193
  1201. package/3rdparty/walkontable/src/utils/positionCache.mjs +0 -194
  1202. package/3rdparty/walkontable/src/utils/row.d.mts +0 -2
  1203. package/3rdparty/walkontable/src/utils/row.js +0 -46
  1204. package/3rdparty/walkontable/src/utils/row.mjs +0 -41
  1205. package/3rdparty/walkontable/src/viewport.d.ts +0 -254
  1206. package/3rdparty/walkontable/src/viewport.js +0 -533
  1207. package/3rdparty/walkontable/src/viewport.mjs +0 -523
  1208. /package/3rdparty/walkontable/src/{renderer → axisSizing/positionCache}/index.d.mts +0 -0
  1209. /package/3rdparty/walkontable/src/{overlays.d.mts → overlay/overlays.d.mts} +0 -0
  1210. /package/3rdparty/walkontable/src/overlay/{_base.d.mts → regions/_base.d.mts} +0 -0
  1211. /package/3rdparty/walkontable/src/{stickyScrollStrategy.d.mts → overlay/strategies/stickyScrollStrategy.d.mts} +0 -0
  1212. /package/3rdparty/walkontable/src/{renderer → render}/_base.d.mts +0 -0
  1213. /package/3rdparty/walkontable/src/{renderer → render}/_base.js +0 -0
  1214. /package/3rdparty/walkontable/src/{renderer → render}/_base.mjs +0 -0
  1215. /package/3rdparty/walkontable/src/{renderer → render}/cells.d.mts +0 -0
  1216. /package/3rdparty/walkontable/src/{renderer → render}/cells.d.ts +0 -0
  1217. /package/3rdparty/walkontable/src/{renderer → render}/colGroup.d.mts +0 -0
  1218. /package/3rdparty/walkontable/src/{renderer → render}/colGroup.d.ts +0 -0
  1219. /package/3rdparty/walkontable/src/{renderer → render}/colGroup.js +0 -0
  1220. /package/3rdparty/walkontable/src/{renderer → render}/colGroup.mjs +0 -0
  1221. /package/3rdparty/walkontable/src/{renderer → render}/columnHeaderRows.d.mts +0 -0
  1222. /package/3rdparty/walkontable/src/{renderer → render}/columnHeaderRows.d.ts +0 -0
  1223. /package/3rdparty/walkontable/src/{renderer → render}/columnHeaderRows.js +0 -0
  1224. /package/3rdparty/walkontable/src/{renderer → render}/columnHeaderRows.mjs +0 -0
  1225. /package/3rdparty/walkontable/src/{renderer → render}/columnHeaders.d.mts +0 -0
  1226. /package/3rdparty/walkontable/src/{renderer → render}/rowHeaders.d.mts +0 -0
  1227. /package/3rdparty/walkontable/src/{renderer → render}/rowHeaders.d.ts +0 -0
  1228. /package/3rdparty/walkontable/src/{renderer → render}/rowHeaders.js +0 -0
  1229. /package/3rdparty/walkontable/src/{renderer → render}/rowHeaders.mjs +0 -0
  1230. /package/3rdparty/walkontable/src/{renderer → render}/rows.d.mts +0 -0
  1231. /package/3rdparty/walkontable/src/{renderer → render}/rows.d.ts +0 -0
  1232. /package/3rdparty/walkontable/src/{scroll.d.mts → scroll/scroll.d.mts} +0 -0
  1233. /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyColumnsStart.d.mts +0 -0
  1234. /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsBottom.d.mts +0 -0
  1235. /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsBottom.js +0 -0
  1236. /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsBottom.mjs +0 -0
  1237. /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsTop.d.mts +0 -0
  1238. /package/3rdparty/walkontable/src/{viewport.d.mts → viewport/viewport.d.mts} +0 -0
@@ -1,9 +1,30 @@
1
- import { addClass, getScrollbarWidth, getScrollLeft, getMaximumScrollLeft, hasClass, outerWidth, removeClass, setOverlayPosition, resetCssTransform } from '../../../../helpers/dom/element.mjs';
2
- import InlineStartOverlayTable from '../table/inlineStart.mjs';
1
+ function _check_private_redeclaration(obj, privateCollection) {
2
+ if (privateCollection.has(obj)) {
3
+ throw new TypeError("Cannot initialize the same private elements twice on an object");
4
+ }
5
+ }
6
+ function _class_private_method_get(receiver, privateSet, fn) {
7
+ if (!privateSet.has(receiver)) throw new TypeError("attempted to get private field on non-instance");
8
+ return fn;
9
+ }
10
+ function _class_private_method_init(obj, privateSet) {
11
+ _check_private_redeclaration(obj, privateSet);
12
+ privateSet.add(obj);
13
+ }
14
+ import { addClass, getScrollLeft, hasClass, removeClass, setOverlayPosition, resetCssTransform } from '../../../../../helpers/dom/element.mjs';
15
+ import InlineStartOverlayTable from '../../table/regions/inlineStartTable.mjs';
3
16
  import { Overlay } from './_base.mjs';
4
- import { getCornerStyle } from '../selection/index.mjs';
5
- import { CLONE_INLINE_START } from './constants.mjs';
6
- import { throwWithCause } from '../../../../helpers/errors.mjs';
17
+ import { getCornerStyle } from '../../selection/index.mjs';
18
+ import { CLONE_INLINE_START } from '../constants.mjs';
19
+ import { throwWithCause } from '../../../../../helpers/errors.mjs';
20
+ var /**
21
+ * Computes the inline-start overlay's header-border state without mutating the DOM. Pure: reads
22
+ * settings and the current class state only. Splitting the decision from the write lets the
23
+ * single-pass draw resolve the `innerBorderInlineStart` toggle before rendering, instead of after.
24
+ *
25
+ * @param {number} position The overlay offset that decides whether the inline-start border is shown.
26
+ * @returns {{ hasEmptyRows: boolean, innerBorder: string, positionChanged: boolean }}
27
+ */ _computeHeaderBordersState = /*#__PURE__*/ new WeakSet();
7
28
  /**
8
29
  * @class InlineStartOverlay
9
30
  */ export class InlineStartOverlay extends Overlay {
@@ -13,8 +34,8 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
13
34
  * @see Table#constructor
14
35
  * @param {...*} args Parameters that will be forwarded to the `Table` constructor.
15
36
  * @returns {InlineStartOverlayTable}
16
- */ createTable(...args) {
17
- return new InlineStartOverlayTable(...args);
37
+ */ createTable(deps) {
38
+ return new InlineStartOverlayTable(deps);
18
39
  }
19
40
  /**
20
41
  * Checks if overlay should be fully rendered.
@@ -28,7 +49,7 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
28
49
  *
29
50
  * @returns {boolean}
30
51
  */ resetFixedPosition() {
31
- const { wtTable } = this.wot;
52
+ const wtTable = this.deps.getWtTable();
32
53
  if (!this.needFullRender || !this.shouldBeRendered() || !wtTable.holder.parentNode) {
33
54
  // removed from DOM
34
55
  return false;
@@ -36,7 +57,7 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
36
57
  if (!this.clone) {
37
58
  return false;
38
59
  }
39
- const { rootWindow } = this.domBindings;
60
+ const { rootWindow } = this.deps;
40
61
  const overlayRoot = this.clone.wtTable.holder.parentNode;
41
62
  const preventOverflow = this.wtSettings.getSetting('preventOverflow');
42
63
  let overlayPosition = 0;
@@ -57,7 +78,7 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
57
78
  * @param {number} pos The scroll position.
58
79
  * @returns {boolean}
59
80
  */ setScrollPosition(pos) {
60
- const { rootWindow } = this.domBindings;
81
+ const { rootWindow } = this.deps;
61
82
  const scrollableElement = this.mainTableScrollableElement;
62
83
  const scrollEl = scrollableElement;
63
84
  const getScrollPosition = ()=>{
@@ -87,7 +108,11 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
87
108
  this.wtSettings.getSetting('onScrollVertically');
88
109
  }
89
110
  /**
90
- * Calculates total sum cells width.
111
+ * Calculates total sum cells width. Walks the columns live instead of reading the column-width
112
+ * prefix-sum cache: stretched widths (`stretchH`) are derived from the workspace width, which in
113
+ * turn depends on this sum — the live read resolves that cycle fresh on every call, while a
114
+ * cached read would freeze pre-stretch widths (nothing invalidates the cache when stretching
115
+ * recomputes). Column counts stay far below row counts, so this walk is not a scroll hotspot.
91
116
  *
92
117
  * @param {number} from Column index which calculates started from.
93
118
  * @param {number} to Column index where calculation is finished.
@@ -97,7 +122,7 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
97
122
  let column = from;
98
123
  let sum = 0;
99
124
  while(column < to){
100
- sum += this.wot.wtTable.getColumnWidth(column) || defaultColumnWidth;
125
+ sum += this.deps.getWtTable().getColumnWidth(column) || defaultColumnWidth;
101
126
  column += 1;
102
127
  }
103
128
  return sum;
@@ -117,8 +142,9 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
117
142
  if (!this.clone) {
118
143
  return;
119
144
  }
120
- const { wtTable, wtViewport } = this.wot;
121
- const { rootDocument, rootWindow } = this.domBindings;
145
+ const wtTable = this.deps.getWtTable();
146
+ const wtViewport = this.deps.getWtViewport();
147
+ const { rootDocument, rootWindow } = this.deps;
122
148
  const overlayRoot = this.clone.wtTable.holder.parentNode;
123
149
  const overlayRootStyle = overlayRoot.style;
124
150
  const preventOverflow = this.wtSettings.getSetting('preventOverflow');
@@ -131,16 +157,16 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
131
157
  // from the real scrollbar size, giving the frozen overlay a different vertical scroll range
132
158
  // than the master. That mismatch clamps the overlay's scrollTop ~1px short at the bottom and
133
159
  // shifts the frozen rows out of alignment (#12632).
134
- const masterClientHeight = wtTable.holder.clientHeight;
135
- height = masterClientHeight > 0 ? masterClientHeight : height - getScrollbarWidth(rootDocument);
160
+ const masterClientHeight = this.deps.geometryReader.clientHeight(wtTable.holder);
161
+ height = masterClientHeight > 0 ? masterClientHeight : height - this.deps.geometryReader.getScrollbarWidth(rootDocument);
136
162
  }
137
- height = Math.min(height, wtTable.wtRootElement.scrollHeight);
163
+ height = Math.min(height, this.deps.geometryReader.scrollHeight(wtTable.wtRootElement));
138
164
  overlayRootStyle.height = `${height}px`;
139
165
  } else {
140
166
  overlayRootStyle.height = '';
141
167
  }
142
168
  this.clone.wtTable.holder.style.height = overlayRootStyle.height;
143
- const tableWidth = outerWidth(this.clone.wtTable.TABLE);
169
+ const tableWidth = this.deps.geometryReader.outerWidth(this.clone.wtTable.TABLE);
144
170
  overlayRootStyle.width = `${tableWidth}px`;
145
171
  }
146
172
  /**
@@ -151,7 +177,7 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
151
177
  }
152
178
  const { holder } = this.clone.wtTable;
153
179
  const cornerStyle = getCornerStyle(this.wot);
154
- const selectionCornerOffset = this.wot.selectionManager.getFocusSelection() ? parseInt(cornerStyle.width, 10) / 2 : 0;
180
+ const selectionCornerOffset = this.deps.getSelectionManager().getFocusSelection() ? parseInt(cornerStyle.width, 10) / 2 : 0;
155
181
  this.clone.wtTable.hider.style.height = this.hider.style.height;
156
182
  const holderParent = holder.parentNode;
157
183
  holder.style.height = holderParent.style.height;
@@ -164,9 +190,12 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
164
190
  */ applyToDOM() {
165
191
  const total = this.wtSettings.getSetting('totalColumns');
166
192
  const styleProperty = this.isRtl() ? 'right' : 'left';
167
- if (typeof this.wot.wtViewport.columnsRenderCalculator?.startPosition === 'number') {
168
- this.spreader.style[styleProperty] = `${this.wot.wtViewport.columnsRenderCalculator.startPosition}px`;
169
- } else if (total === 0) {
193
+ const columnsRenderCalculator = this.deps.getWtViewport().columnsRenderCalculator;
194
+ if (typeof columnsRenderCalculator?.startPosition === 'number') {
195
+ this.spreader.style[styleProperty] = `${columnsRenderCalculator.startPosition}px`;
196
+ } else if (total === 0 || columnsRenderCalculator === null) {
197
+ // 0 columns, or nothing rendered yet — a `null` calculator is the drawn-but-never-rendered state
198
+ // a skipped first draw leaves behind (see `restoreRenderedStateIfSafe` in `table/drawCycle.ts`).
170
199
  this.spreader.style[styleProperty] = '0';
171
200
  } else {
172
201
  throwWithCause('Incorrect value of the columnsRenderCalculator');
@@ -186,8 +215,9 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
186
215
  if (!this.clone) {
187
216
  return;
188
217
  }
189
- if (typeof this.wot.wtViewport.rowsRenderCalculator?.startPosition === 'number') {
190
- this.clone.wtTable.spreader.style.top = `${this.wot.wtViewport.rowsRenderCalculator.startPosition}px`;
218
+ const rowsRenderCalculator = this.deps.getWtViewport().rowsRenderCalculator;
219
+ if (typeof rowsRenderCalculator?.startPosition === 'number') {
220
+ this.clone.wtTable.spreader.style.top = `${rowsRenderCalculator.startPosition}px`;
191
221
  } else {
192
222
  this.clone.wtTable.spreader.style.top = '';
193
223
  }
@@ -201,6 +231,7 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
201
231
  * @returns {boolean}
202
232
  */ scrollTo(sourceCol, beyondRendered) {
203
233
  const { wtSettings } = this;
234
+ const { geometryReader } = this.deps;
204
235
  const rowHeaders = wtSettings.getSetting('rowHeaders');
205
236
  const fixedColumnsStart = wtSettings.getSetting('fixedColumnsStart');
206
237
  const sourceInstance = this.wot.cloneSource ? this.wot.cloneSource : this.wot;
@@ -209,18 +240,18 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
209
240
  let newX = this.getTableParentOffset();
210
241
  let scrollbarCompensation = 0;
211
242
  if (beyondRendered) {
212
- const columnWidth = this.wot.wtTable.getColumnWidth(sourceCol);
213
- const viewportWidth = this.wot.wtViewport.getViewportWidth();
243
+ const columnWidth = this.deps.getWtTable().getColumnWidth(sourceCol);
244
+ const viewportWidth = this.deps.getWtViewport().getViewportWidth();
214
245
  if (columnWidth > viewportWidth) {
215
246
  beyondRendered = false;
216
247
  }
217
248
  }
218
- if (beyondRendered && mainHolder.offsetWidth !== mainHolder.clientWidth) {
219
- scrollbarCompensation = getScrollbarWidth(this.domBindings.rootDocument);
249
+ if (beyondRendered && geometryReader.offsetWidth(mainHolder) !== geometryReader.clientWidth(mainHolder)) {
250
+ scrollbarCompensation = geometryReader.getScrollbarWidth(this.deps.rootDocument);
220
251
  }
221
252
  if (beyondRendered) {
222
253
  newX += this.sumCellSizes(0, sourceCol + 1);
223
- newX -= this.wot.wtViewport.getViewportWidth();
254
+ newX -= this.deps.getWtViewport().getViewportWidth();
224
255
  // Compensate for the right header border if scrolled from the absolute left.
225
256
  newX += rowHeaderBorderCompensation;
226
257
  } else {
@@ -229,8 +260,8 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
229
260
  newX += scrollbarCompensation;
230
261
  // If the table is scrolled all the way left when starting the scroll and going to be scrolled to the far right,
231
262
  // we need to compensate for the potential header border width.
232
- if (getMaximumScrollLeft(this.mainTableScrollableElement) === newX - rowHeaderBorderCompensation && rowHeaderBorderCompensation > 0) {
233
- this.wot.wtOverlays.expandHiderHorizontallyBy(rowHeaderBorderCompensation);
263
+ if (geometryReader.getMaximumScrollLeft(this.mainTableScrollableElement) === newX - rowHeaderBorderCompensation && rowHeaderBorderCompensation > 0) {
264
+ this.deps.getWtOverlays().expandHiderHorizontallyBy(rowHeaderBorderCompensation);
234
265
  }
235
266
  return this.setScrollPosition(newX);
236
267
  }
@@ -241,8 +272,8 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
241
272
  */ getTableParentOffset() {
242
273
  const preventOverflow = this.wtSettings.getSetting('preventOverflow');
243
274
  let offset = 0;
244
- if (!preventOverflow && this.trimmingContainer === this.domBindings.rootWindow) {
245
- offset = this.wot.wtTable.holderOffset.left;
275
+ if (!preventOverflow && this.trimmingContainer === this.deps.rootWindow) {
276
+ offset = this.deps.getWtTable().holderOffset.left;
246
277
  }
247
278
  return offset;
248
279
  }
@@ -251,14 +282,14 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
251
282
  *
252
283
  * @returns {number} Main table's horizontal scroll position.
253
284
  */ getScrollPosition() {
254
- return Math.abs(getScrollLeft(this.mainTableScrollableElement, this.domBindings.rootWindow));
285
+ return Math.abs(getScrollLeft(this.mainTableScrollableElement, this.deps.rootWindow));
255
286
  }
256
287
  /**
257
288
  * Gets the main overlay's horizontal overlay offset.
258
289
  *
259
290
  * @returns {number} Main table's horizontal overlay offset.
260
291
  */ getOverlayOffset() {
261
- const { rootWindow } = this.domBindings;
292
+ const { rootWindow } = this.deps;
262
293
  const preventOverflow = this.wtSettings.getSetting('preventOverflow');
263
294
  let overlayOffset = 0;
264
295
  if (this.trimmingContainer === rootWindow && (!preventOverflow || preventOverflow !== 'horizontal')) {
@@ -267,7 +298,7 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
267
298
  } else {
268
299
  overlayOffset = Math.max(this.getScrollPosition() - this.getTableParentOffset(), 0);
269
300
  }
270
- const rootWidth = this.wot.wtTable.getTotalWidth();
301
+ const rootWidth = this.deps.getWtTable().getTotalWidth();
271
302
  const overlayRootWidth = this.clone ? this.clone.wtTable.getTotalWidth() : 0;
272
303
  const maxOffset = rootWidth - overlayRootWidth;
273
304
  if (overlayOffset > maxOffset) {
@@ -277,46 +308,68 @@ import { throwWithCause } from '../../../../helpers/errors.mjs';
277
308
  return overlayOffset;
278
309
  }
279
310
  /**
311
+ * Pre-applies the `innerBorderInlineStart` class before the cell render (single-pass gated
312
+ * path), so the post-render `resetFixedPosition` toggle is a no-op and the nested re-draw is
313
+ * skipped. Element mode only — see `TopOverlay#prepareHeaderBorders`.
314
+ */ prepareHeaderBorders() {
315
+ if (!this.needFullRender || !this.shouldBeRendered() || !this.deps.getWtTable().holder.parentNode || !this.clone || this.trimmingContainer === this.deps.rootWindow) {
316
+ return;
317
+ }
318
+ this.adjustHeaderBordersPosition(this.getScrollPosition());
319
+ }
320
+ /**
280
321
  * Adds css classes to hide the header border's header (cell-selection border hiding issue).
281
322
  *
282
323
  * @param {number} position Header X position if trimming container is window or scroll top if not.
283
324
  * @returns {boolean}
284
325
  */ adjustHeaderBordersPosition(position) {
285
- const { wtSettings } = this;
286
- const masterParent = this.wot.wtTable.holder.parentNode;
287
- const rowHeaders = wtSettings.getSetting('rowHeaders');
288
- const fixedColumnsStart = wtSettings.getSetting('fixedColumnsStart');
289
- const totalRows = wtSettings.getSetting('totalRows');
290
- const preventVerticalOverflow = wtSettings.getSetting('preventOverflow') === 'vertical';
291
- if (totalRows) {
292
- removeClass(masterParent, 'emptyRows');
293
- } else {
326
+ const masterParent = this.deps.getWtTable().holder.parentNode;
327
+ const state = _class_private_method_get(this, _computeHeaderBordersState, computeHeaderBordersState).call(this, position);
328
+ if (state.hasEmptyRows) {
294
329
  addClass(masterParent, 'emptyRows');
330
+ } else {
331
+ removeClass(masterParent, 'emptyRows');
295
332
  }
296
- let positionChanged = false;
297
- if (!preventVerticalOverflow) {
298
- if (fixedColumnsStart && !rowHeaders.length) {
299
- // "innerBorderLeft" is for backward compatibility
300
- addClass(masterParent, 'innerBorderLeft innerBorderInlineStart');
301
- } else if (!fixedColumnsStart && rowHeaders.length) {
302
- const previousState = hasClass(masterParent, 'innerBorderInlineStart');
303
- if (position) {
304
- addClass(masterParent, 'innerBorderLeft innerBorderInlineStart');
305
- positionChanged = !previousState;
306
- } else {
307
- removeClass(masterParent, 'innerBorderLeft innerBorderInlineStart');
308
- positionChanged = previousState;
309
- }
310
- }
333
+ // "innerBorderLeft" is for backward compatibility.
334
+ if (state.innerBorder === 'add') {
335
+ addClass(masterParent, 'innerBorderLeft innerBorderInlineStart');
336
+ } else if (state.innerBorder === 'remove') {
337
+ removeClass(masterParent, 'innerBorderLeft innerBorderInlineStart');
311
338
  }
312
- return positionChanged;
339
+ return state.positionChanged;
313
340
  }
314
341
  /**
315
- * @param {Walkontable} wotInstance The Walkontable instance. @TODO refactoring: check if can be deleted.
316
- * @param {FacadeGetter} facadeGetter Function which return proper facade.
317
- * @param {Settings} wtSettings The Walkontable settings.
318
- * @param {DomBindings} domBindings Dom elements bound to the current instance.
319
- */ constructor(wotInstance, facadeGetter, wtSettings, domBindings){
320
- super(wotInstance, facadeGetter, CLONE_INLINE_START, wtSettings, domBindings);
342
+ */ constructor(deps){
343
+ super(deps, CLONE_INLINE_START), _class_private_method_init(this, _computeHeaderBordersState);
344
+ }
345
+ }
346
+ function computeHeaderBordersState(position) {
347
+ const { wtSettings } = this;
348
+ const masterParent = this.deps.getWtTable().holder.parentNode;
349
+ const rowHeaders = wtSettings.getSetting('rowHeaders');
350
+ const fixedColumnsStart = wtSettings.getSetting('fixedColumnsStart');
351
+ const totalRows = wtSettings.getSetting('totalRows');
352
+ const preventVerticalOverflow = wtSettings.getSetting('preventOverflow') === 'vertical';
353
+ const hasEmptyRows = !totalRows;
354
+ let innerBorder = 'keep';
355
+ let positionChanged = false;
356
+ if (!preventVerticalOverflow) {
357
+ if (fixedColumnsStart && !rowHeaders.length) {
358
+ innerBorder = 'add';
359
+ } else if (!fixedColumnsStart && rowHeaders.length) {
360
+ const previousState = hasClass(masterParent, 'innerBorderInlineStart');
361
+ if (position) {
362
+ innerBorder = 'add';
363
+ positionChanged = !previousState;
364
+ } else {
365
+ innerBorder = 'remove';
366
+ positionChanged = previousState;
367
+ }
368
+ }
321
369
  }
370
+ return {
371
+ hasEmptyRows,
372
+ innerBorder,
373
+ positionChanged
374
+ };
322
375
  }
@@ -0,0 +1 @@
1
+ export * from './topInlineStartCornerOverlay.js';
@@ -1,7 +1,6 @@
1
- import type { DataAccessObject, DomBindings, WalkontableInstance } from '../types';
2
- import type Settings from '../settings';
3
- import TopInlineStartCornerOverlayTable from '../table/topInlineStartCorner';
4
- import { Overlay } from './_base';
1
+ import type { TableDeps } from '../../table/baseTable';
2
+ import TopInlineStartCornerOverlayTable from '../../table/regions/topInlineStartCornerTable';
3
+ import { Overlay, type OverlayDeps } from './_base';
5
4
  /**
6
5
  * @class TopInlineStartCornerOverlay
7
6
  */
@@ -19,14 +18,10 @@ export declare class TopInlineStartCornerOverlay extends Overlay {
19
18
  */
20
19
  inlineStartOverlay: Overlay;
21
20
  /**
22
- * @param {Walkontable} wotInstance The Walkontable instance. @TODO refactoring: check if can be deleted.
23
- * @param {FacadeGetter} facadeGetter Function which return proper facade.
24
- * @param {Settings} wtSettings The Walkontable settings.
25
- * @param {DomBindings} domBindings Dom elements bound to the current instance.
26
21
  * @param {TopOverlay} topOverlay The instance of the Top overlay.
27
22
  * @param {InlineStartOverlay} inlineStartOverlay The instance of the InlineStart overlay.
28
23
  */
29
- constructor(wotInstance: WalkontableInstance, facadeGetter: Function, wtSettings: Settings, domBindings: DomBindings, topOverlay: Overlay, inlineStartOverlay: Overlay);
24
+ constructor(deps: OverlayDeps, topOverlay: Overlay, inlineStartOverlay: Overlay);
30
25
  /**
31
26
  * Factory method to create a subclass of `Table` that is relevant to this overlay.
32
27
  *
@@ -34,7 +29,7 @@ export declare class TopInlineStartCornerOverlay extends Overlay {
34
29
  * @param {...*} args Parameters that will be forwarded to the `Table` constructor.
35
30
  * @returns {TopInlineStartCornerOverlayTable}
36
31
  */
37
- createTable(...args: [DataAccessObject, Function, DomBindings, Settings]): TopInlineStartCornerOverlayTable;
32
+ createTable(deps: TableDeps): TopInlineStartCornerOverlayTable;
38
33
  /**
39
34
  * Checks if overlay should be fully rendered.
40
35
  *
@@ -8,10 +8,10 @@ Object.defineProperty(exports, "TopInlineStartCornerOverlay", {
8
8
  return TopInlineStartCornerOverlay;
9
9
  }
10
10
  });
11
- const _element = require("../../../../helpers/dom/element");
12
- const _topInlineStartCorner = /*#__PURE__*/ _interop_require_default(require("../table/topInlineStartCorner"));
11
+ const _element = require("../../../../../helpers/dom/element");
12
+ const _topInlineStartCornerTable = /*#__PURE__*/ _interop_require_default(require("../../table/regions/topInlineStartCornerTable"));
13
13
  const _base = require("./_base");
14
- const _constants = require("./constants");
14
+ const _constants = require("../constants");
15
15
  function _interop_require_default(obj) {
16
16
  return obj && obj.__esModule ? obj : {
17
17
  default: obj
@@ -24,8 +24,8 @@ class TopInlineStartCornerOverlay extends _base.Overlay {
24
24
  * @see Table#constructor
25
25
  * @param {...*} args Parameters that will be forwarded to the `Table` constructor.
26
26
  * @returns {TopInlineStartCornerOverlayTable}
27
- */ createTable(...args) {
28
- return new _topInlineStartCorner.default(...args);
27
+ */ createTable(deps) {
28
+ return new _topInlineStartCornerTable.default(deps);
29
29
  }
30
30
  /**
31
31
  * Checks if overlay should be fully rendered.
@@ -90,21 +90,22 @@ class TopInlineStartCornerOverlay extends _base.Overlay {
90
90
  * @returns {boolean}
91
91
  */ resetFixedPosition() {
92
92
  this.updateTrimmingContainer();
93
- if (!this.wot.wtTable.holder.parentNode || !this.clone) {
93
+ if (!this.deps.getWtTable().holder.parentNode || !this.clone) {
94
94
  // removed from DOM
95
95
  return false;
96
96
  }
97
97
  const overlayRoot = this.clone.wtTable.holder.parentNode;
98
- if (this.trimmingContainer === this.domBindings.rootWindow) {
98
+ if (this.trimmingContainer === this.deps.rootWindow) {
99
99
  const left = this.inlineStartOverlay.getOverlayOffset() * (this.isRtl() ? -1 : 1);
100
100
  const top = this.topOverlay.getOverlayOffset();
101
101
  (0, _element.setOverlayPosition)(overlayRoot, `${left}px`, `${top}px`);
102
102
  } else {
103
103
  (0, _element.resetCssTransform)(overlayRoot);
104
104
  }
105
- let tableHeight = (0, _element.outerHeight)(this.clone.wtTable.TABLE);
106
- const tableWidth = (0, _element.outerWidth)(this.clone.wtTable.TABLE);
107
- if (!this.wot.wtTable.hasDefinedSize()) {
105
+ const { geometryReader } = this.deps;
106
+ let tableHeight = geometryReader.outerHeight(this.clone.wtTable.TABLE);
107
+ const tableWidth = geometryReader.outerWidth(this.clone.wtTable.TABLE);
108
+ if (!this.deps.getWtTable().hasDefinedSize()) {
108
109
  tableHeight = 0;
109
110
  }
110
111
  overlayRoot.style.height = `${tableHeight}px`;
@@ -112,14 +113,10 @@ class TopInlineStartCornerOverlay extends _base.Overlay {
112
113
  return true;
113
114
  }
114
115
  /**
115
- * @param {Walkontable} wotInstance The Walkontable instance. @TODO refactoring: check if can be deleted.
116
- * @param {FacadeGetter} facadeGetter Function which return proper facade.
117
- * @param {Settings} wtSettings The Walkontable settings.
118
- * @param {DomBindings} domBindings Dom elements bound to the current instance.
119
116
  * @param {TopOverlay} topOverlay The instance of the Top overlay.
120
117
  * @param {InlineStartOverlay} inlineStartOverlay The instance of the InlineStart overlay.
121
- */ constructor(wotInstance, facadeGetter, wtSettings, domBindings, topOverlay, inlineStartOverlay){
122
- super(wotInstance, facadeGetter, _constants.CLONE_TOP_INLINE_START_CORNER, wtSettings, domBindings);
118
+ */ constructor(deps, topOverlay, inlineStartOverlay){
119
+ super(deps, _constants.CLONE_TOP_INLINE_START_CORNER);
123
120
  this.topOverlay = topOverlay;
124
121
  this.inlineStartOverlay = inlineStartOverlay;
125
122
  }
@@ -1,7 +1,7 @@
1
- import { outerHeight, outerWidth, setOverlayPosition, resetCssTransform } from '../../../../helpers/dom/element.mjs';
2
- import TopInlineStartCornerOverlayTable from '../table/topInlineStartCorner.mjs';
1
+ import { setOverlayPosition, resetCssTransform } from '../../../../../helpers/dom/element.mjs';
2
+ import TopInlineStartCornerOverlayTable from '../../table/regions/topInlineStartCornerTable.mjs';
3
3
  import { Overlay } from './_base.mjs';
4
- import { CLONE_TOP_INLINE_START_CORNER } from './constants.mjs';
4
+ import { CLONE_TOP_INLINE_START_CORNER } from '../constants.mjs';
5
5
  /**
6
6
  * @class TopInlineStartCornerOverlay
7
7
  */ export class TopInlineStartCornerOverlay extends Overlay {
@@ -11,8 +11,8 @@ import { CLONE_TOP_INLINE_START_CORNER } from './constants.mjs';
11
11
  * @see Table#constructor
12
12
  * @param {...*} args Parameters that will be forwarded to the `Table` constructor.
13
13
  * @returns {TopInlineStartCornerOverlayTable}
14
- */ createTable(...args) {
15
- return new TopInlineStartCornerOverlayTable(...args);
14
+ */ createTable(deps) {
15
+ return new TopInlineStartCornerOverlayTable(deps);
16
16
  }
17
17
  /**
18
18
  * Checks if overlay should be fully rendered.
@@ -77,21 +77,22 @@ import { CLONE_TOP_INLINE_START_CORNER } from './constants.mjs';
77
77
  * @returns {boolean}
78
78
  */ resetFixedPosition() {
79
79
  this.updateTrimmingContainer();
80
- if (!this.wot.wtTable.holder.parentNode || !this.clone) {
80
+ if (!this.deps.getWtTable().holder.parentNode || !this.clone) {
81
81
  // removed from DOM
82
82
  return false;
83
83
  }
84
84
  const overlayRoot = this.clone.wtTable.holder.parentNode;
85
- if (this.trimmingContainer === this.domBindings.rootWindow) {
85
+ if (this.trimmingContainer === this.deps.rootWindow) {
86
86
  const left = this.inlineStartOverlay.getOverlayOffset() * (this.isRtl() ? -1 : 1);
87
87
  const top = this.topOverlay.getOverlayOffset();
88
88
  setOverlayPosition(overlayRoot, `${left}px`, `${top}px`);
89
89
  } else {
90
90
  resetCssTransform(overlayRoot);
91
91
  }
92
- let tableHeight = outerHeight(this.clone.wtTable.TABLE);
93
- const tableWidth = outerWidth(this.clone.wtTable.TABLE);
94
- if (!this.wot.wtTable.hasDefinedSize()) {
92
+ const { geometryReader } = this.deps;
93
+ let tableHeight = geometryReader.outerHeight(this.clone.wtTable.TABLE);
94
+ const tableWidth = geometryReader.outerWidth(this.clone.wtTable.TABLE);
95
+ if (!this.deps.getWtTable().hasDefinedSize()) {
95
96
  tableHeight = 0;
96
97
  }
97
98
  overlayRoot.style.height = `${tableHeight}px`;
@@ -99,14 +100,10 @@ import { CLONE_TOP_INLINE_START_CORNER } from './constants.mjs';
99
100
  return true;
100
101
  }
101
102
  /**
102
- * @param {Walkontable} wotInstance The Walkontable instance. @TODO refactoring: check if can be deleted.
103
- * @param {FacadeGetter} facadeGetter Function which return proper facade.
104
- * @param {Settings} wtSettings The Walkontable settings.
105
- * @param {DomBindings} domBindings Dom elements bound to the current instance.
106
103
  * @param {TopOverlay} topOverlay The instance of the Top overlay.
107
104
  * @param {InlineStartOverlay} inlineStartOverlay The instance of the InlineStart overlay.
108
- */ constructor(wotInstance, facadeGetter, wtSettings, domBindings, topOverlay, inlineStartOverlay){
109
- super(wotInstance, facadeGetter, CLONE_TOP_INLINE_START_CORNER, wtSettings, domBindings);
105
+ */ constructor(deps, topOverlay, inlineStartOverlay){
106
+ super(deps, CLONE_TOP_INLINE_START_CORNER);
110
107
  this.topOverlay = topOverlay;
111
108
  this.inlineStartOverlay = inlineStartOverlay;
112
109
  }
@@ -0,0 +1 @@
1
+ export * from './topOverlay.js';
@@ -1,11 +1,12 @@
1
- import type { DataAccessObject, DomBindings, WalkontableInstance } from '../types';
2
- import type Settings from '../settings';
3
- import TopOverlayTable from './../table/top';
4
- import { Overlay } from './_base';
1
+ import type { TableDeps } from '../../table/baseTable';
2
+ import TopOverlayTable from '../../table/regions/topTable';
3
+ import { Overlay, type OverlayDeps } from './_base';
4
+ import type { Selection } from '../../selection';
5
5
  /**
6
6
  * @class TopOverlay
7
7
  */
8
8
  export declare class TopOverlay extends Overlay {
9
+ #private;
9
10
  /**
10
11
  * Cached value which holds the previous value of the `fixedRowsTop` option.
11
12
  * It is used as a comparison value that can be used to detect changes in this value.
@@ -14,12 +15,8 @@ export declare class TopOverlay extends Overlay {
14
15
  */
15
16
  cachedFixedRowsTop: number;
16
17
  /**
17
- * @param {Walkontable} wotInstance The Walkontable instance. @TODO refactoring: check if can be deleted.
18
- * @param {FacadeGetter} facadeGetter Function which return proper facade.
19
- * @param {Settings} wtSettings The Walkontable settings.
20
- * @param {DomBindings} domBindings Dom elements bound to the current instance.
21
18
  */
22
- constructor(wotInstance: WalkontableInstance, facadeGetter: Function, wtSettings: Settings, domBindings: DomBindings);
19
+ constructor(deps: OverlayDeps);
23
20
  /**
24
21
  * Factory method to create a subclass of `Table` that is relevant to this overlay.
25
22
  *
@@ -27,7 +24,7 @@ export declare class TopOverlay extends Overlay {
27
24
  * @param {...*} args Parameters that will be forwarded to the `Table` constructor.
28
25
  * @returns {TopOverlayTable}
29
26
  */
30
- createTable(...args: [DataAccessObject, Function, DomBindings, Settings]): TopOverlayTable;
27
+ createTable(deps: TableDeps): TopOverlayTable;
31
28
  /**
32
29
  * Checks if overlay should be fully rendered.
33
30
  *
@@ -52,7 +49,10 @@ export declare class TopOverlay extends Overlay {
52
49
  */
53
50
  onScroll(): void;
54
51
  /**
55
- * Calculates total sum cells height.
52
+ * Calculates total sum cells height. Delegates to the viewport's row-height prefix-sum cache
53
+ * (`Viewport#sumRowHeights`), so a call costs O(1) instead of walking every row in the
54
+ * `[from, to)` range — `scrollTo` passes ranges that start at row 0, which made keyboard
55
+ * navigation near the bottom of a large grid re-sum the whole dataset on every keypress.
56
56
  *
57
57
  * @param {number} from Row index which calculates started from.
58
58
  * @param {number} to Row index where calculation is finished.
@@ -67,6 +67,18 @@ export declare class TopOverlay extends Overlay {
67
67
  * Adjust overlay root element size (width and height).
68
68
  */
69
69
  adjustRootElementSize(): void;
70
+ /**
71
+ * Tells whether the holder must reserve the selection corner's protruding half-height (#6937),
72
+ * needed only when the selection's bottom-end corner falls within the frozen top rows this overlay
73
+ * renders — otherwise the reserved strip leaves a leftover top border at the seam. On mobile the
74
+ * handles always protrude so the range check suffices; on desktop the fill handle must also be
75
+ * enabled (`cornerVisible` truthy), mirroring `Border#appear`.
76
+ *
77
+ * @private
78
+ * @param {Selection|null} focusSelection The focus Selection instance (or `null` when none).
79
+ * @returns {boolean}
80
+ */
81
+ shouldReserveSelectionCornerOffset(focusSelection: Selection | null): boolean;
70
82
  /**
71
83
  * Adjust overlay root childs size.
72
84
  */
@@ -105,6 +117,15 @@ export declare class TopOverlay extends Overlay {
105
117
  * @returns {number} Main table's vertical overlay offset.
106
118
  */
107
119
  getOverlayOffset(): number;
120
+ /**
121
+ * Pre-applies the `innerBorderTop` class before the cell render, from the pre-render scroll
122
+ * position and settings. On the single-pass gated path the border is then already in its final
123
+ * state when cells render, so the post-render `resetFixedPosition` toggle becomes a no-op
124
+ * (`positionChanged` stays `false`) and the nested `wot.draw(true)` re-render is never triggered.
125
+ * Element mode only — the window path resolves the border from post-render geometry
126
+ * (`getOverlayOffset` + the #7256 guard) and is excluded by the single-pass gate.
127
+ */
128
+ prepareHeaderBorders(): void;
108
129
  /**
109
130
  * Adds css classes to hide the header border's header (cell-selection border hiding issue).
110
131
  *