@effect-tui/react 0.15.2 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (313) hide show
  1. package/README.md +11 -2
  2. package/dist/src/codeblock.d.ts +1 -1
  3. package/dist/src/codeblock.d.ts.map +1 -1
  4. package/dist/src/codeblock.js +2 -2
  5. package/dist/src/codeblock.js.map +1 -1
  6. package/dist/src/components/ListView.d.ts +4 -4
  7. package/dist/src/components/ListView.d.ts.map +1 -1
  8. package/dist/src/components/ListView.js +16 -17
  9. package/dist/src/components/ListView.js.map +1 -1
  10. package/dist/src/components/Markdown.js +3 -3
  11. package/dist/src/components/Markdown.js.map +1 -1
  12. package/dist/src/components/MultilineTextInput.d.ts.map +1 -1
  13. package/dist/src/components/MultilineTextInput.js +133 -305
  14. package/dist/src/components/MultilineTextInput.js.map +1 -1
  15. package/dist/src/components/TextInput.d.ts.map +1 -1
  16. package/dist/src/components/TextInput.js +51 -98
  17. package/dist/src/components/TextInput.js.map +1 -1
  18. package/dist/src/components/text-editing.d.ts +61 -0
  19. package/dist/src/components/text-editing.d.ts.map +1 -1
  20. package/dist/src/components/text-editing.js +131 -0
  21. package/dist/src/components/text-editing.js.map +1 -1
  22. package/dist/src/console/ConsolePopover.d.ts +7 -1
  23. package/dist/src/console/ConsolePopover.d.ts.map +1 -1
  24. package/dist/src/console/ConsolePopover.js +55 -74
  25. package/dist/src/console/ConsolePopover.js.map +1 -1
  26. package/dist/src/debug/DebugOverlay.d.ts.map +1 -1
  27. package/dist/src/debug/DebugOverlay.js +3 -57
  28. package/dist/src/debug/DebugOverlay.js.map +1 -1
  29. package/dist/src/debug/DiagnosticsPanel.js +1 -1
  30. package/dist/src/debug/DiagnosticsPanel.js.map +1 -1
  31. package/dist/src/dev.d.ts +5 -117
  32. package/dist/src/dev.d.ts.map +1 -1
  33. package/dist/src/dev.js +3 -333
  34. package/dist/src/dev.js.map +1 -1
  35. package/dist/src/hooks/use-scroll.d.ts +31 -35
  36. package/dist/src/hooks/use-scroll.d.ts.map +1 -1
  37. package/dist/src/hooks/use-scroll.js +51 -90
  38. package/dist/src/hooks/use-scroll.js.map +1 -1
  39. package/dist/src/hosts/base.d.ts +13 -2
  40. package/dist/src/hosts/base.d.ts.map +1 -1
  41. package/dist/src/hosts/base.js +74 -2
  42. package/dist/src/hosts/base.js.map +1 -1
  43. package/dist/src/hosts/box.d.ts +2 -2
  44. package/dist/src/hosts/box.d.ts.map +1 -1
  45. package/dist/src/hosts/box.js +29 -2
  46. package/dist/src/hosts/box.js.map +1 -1
  47. package/dist/src/hosts/canvas.d.ts +24 -4
  48. package/dist/src/hosts/canvas.d.ts.map +1 -1
  49. package/dist/src/hosts/canvas.js +107 -41
  50. package/dist/src/hosts/canvas.js.map +1 -1
  51. package/dist/src/hosts/codeblock.d.ts +10 -12
  52. package/dist/src/hosts/codeblock.d.ts.map +1 -1
  53. package/dist/src/hosts/codeblock.js +38 -35
  54. package/dist/src/hosts/codeblock.js.map +1 -1
  55. package/dist/src/hosts/flex-container.d.ts +3 -3
  56. package/dist/src/hosts/flex-container.d.ts.map +1 -1
  57. package/dist/src/hosts/flex-container.js +20 -5
  58. package/dist/src/hosts/flex-container.js.map +1 -1
  59. package/dist/src/hosts/index.d.ts +3 -2
  60. package/dist/src/hosts/index.d.ts.map +1 -1
  61. package/dist/src/hosts/index.js +2 -1
  62. package/dist/src/hosts/index.js.map +1 -1
  63. package/dist/src/hosts/layout-helpers.d.ts +10 -0
  64. package/dist/src/hosts/layout-helpers.d.ts.map +1 -0
  65. package/dist/src/hosts/layout-helpers.js +10 -0
  66. package/dist/src/hosts/layout-helpers.js.map +1 -0
  67. package/dist/src/hosts/leaf.d.ts +14 -0
  68. package/dist/src/hosts/leaf.d.ts.map +1 -0
  69. package/dist/src/hosts/leaf.js +31 -0
  70. package/dist/src/hosts/leaf.js.map +1 -0
  71. package/dist/src/hosts/overlay-item.d.ts +2 -2
  72. package/dist/src/hosts/overlay-item.d.ts.map +1 -1
  73. package/dist/src/hosts/overlay-item.js +7 -2
  74. package/dist/src/hosts/overlay-item.js.map +1 -1
  75. package/dist/src/hosts/overlay.d.ts +2 -2
  76. package/dist/src/hosts/overlay.d.ts.map +1 -1
  77. package/dist/src/hosts/overlay.js +6 -9
  78. package/dist/src/hosts/overlay.js.map +1 -1
  79. package/dist/src/hosts/scroll.d.ts +54 -26
  80. package/dist/src/hosts/scroll.d.ts.map +1 -1
  81. package/dist/src/hosts/scroll.js +185 -87
  82. package/dist/src/hosts/scroll.js.map +1 -1
  83. package/dist/src/hosts/single-child.d.ts.map +1 -1
  84. package/dist/src/hosts/single-child.js +2 -0
  85. package/dist/src/hosts/single-child.js.map +1 -1
  86. package/dist/src/hosts/spacer.d.ts +3 -3
  87. package/dist/src/hosts/spacer.d.ts.map +1 -1
  88. package/dist/src/hosts/spacer.js +8 -3
  89. package/dist/src/hosts/spacer.js.map +1 -1
  90. package/dist/src/hosts/text.d.ts +22 -18
  91. package/dist/src/hosts/text.d.ts.map +1 -1
  92. package/dist/src/hosts/text.js +108 -131
  93. package/dist/src/hosts/text.js.map +1 -1
  94. package/dist/src/hosts/vstack.js +1 -1
  95. package/dist/src/hosts/vstack.js.map +1 -1
  96. package/dist/src/hosts/zstack.d.ts +3 -3
  97. package/dist/src/hosts/zstack.d.ts.map +1 -1
  98. package/dist/src/hosts/zstack.js +13 -8
  99. package/dist/src/hosts/zstack.js.map +1 -1
  100. package/dist/src/index.d.ts +2 -2
  101. package/dist/src/index.d.ts.map +1 -1
  102. package/dist/src/internal/dev/hmr.d.ts +20 -0
  103. package/dist/src/internal/dev/hmr.d.ts.map +1 -0
  104. package/dist/src/internal/dev/hmr.js +93 -0
  105. package/dist/src/internal/dev/hmr.js.map +1 -0
  106. package/dist/src/internal/dev/runtime.d.ts +24 -0
  107. package/dist/src/internal/dev/runtime.d.ts.map +1 -0
  108. package/dist/src/internal/dev/runtime.js +135 -0
  109. package/dist/src/internal/dev/runtime.js.map +1 -0
  110. package/dist/src/internal/dev/ui.d.ts +13 -0
  111. package/dist/src/internal/dev/ui.d.ts.map +1 -0
  112. package/dist/src/internal/dev/ui.js +51 -0
  113. package/dist/src/internal/dev/ui.js.map +1 -0
  114. package/dist/src/internal/renderer/context.d.ts +9 -0
  115. package/dist/src/internal/renderer/context.d.ts.map +1 -0
  116. package/dist/src/internal/renderer/context.js +22 -0
  117. package/dist/src/internal/renderer/context.js.map +1 -0
  118. package/dist/src/internal/renderer/core/FrameBuilder.d.ts +18 -0
  119. package/dist/src/internal/renderer/core/FrameBuilder.d.ts.map +1 -0
  120. package/dist/src/internal/renderer/core/FrameBuilder.js +40 -0
  121. package/dist/src/internal/renderer/core/FrameBuilder.js.map +1 -0
  122. package/dist/src/internal/renderer/core/RendererState.d.ts +41 -0
  123. package/dist/src/internal/renderer/core/RendererState.d.ts.map +1 -0
  124. package/dist/src/internal/renderer/core/RendererState.js +70 -0
  125. package/dist/src/internal/renderer/core/RendererState.js.map +1 -0
  126. package/dist/src/internal/renderer/core/index.d.ts +3 -0
  127. package/dist/src/internal/renderer/core/index.d.ts.map +1 -0
  128. package/dist/src/internal/renderer/core/index.js +3 -0
  129. package/dist/src/internal/renderer/core/index.js.map +1 -0
  130. package/dist/src/internal/renderer/index.d.ts +40 -0
  131. package/dist/src/internal/renderer/index.d.ts.map +1 -0
  132. package/dist/src/internal/renderer/index.js +543 -0
  133. package/dist/src/internal/renderer/index.js.map +1 -0
  134. package/dist/src/internal/renderer/input/InputProcessor.d.ts +30 -0
  135. package/dist/src/internal/renderer/input/InputProcessor.d.ts.map +1 -0
  136. package/dist/src/internal/renderer/input/InputProcessor.js +122 -0
  137. package/dist/src/internal/renderer/input/InputProcessor.js.map +1 -0
  138. package/dist/src/internal/renderer/input/index.d.ts +2 -0
  139. package/dist/src/internal/renderer/input/index.d.ts.map +1 -0
  140. package/dist/src/internal/renderer/input/index.js +2 -0
  141. package/dist/src/internal/renderer/input/index.js.map +1 -0
  142. package/dist/src/internal/renderer/lifecycle/EventBus.d.ts +42 -0
  143. package/dist/src/internal/renderer/lifecycle/EventBus.d.ts.map +1 -0
  144. package/dist/src/internal/renderer/lifecycle/EventBus.js +97 -0
  145. package/dist/src/internal/renderer/lifecycle/EventBus.js.map +1 -0
  146. package/dist/src/internal/renderer/lifecycle/ProcessLifecycle.d.ts +13 -0
  147. package/dist/src/internal/renderer/lifecycle/ProcessLifecycle.d.ts.map +1 -0
  148. package/dist/src/internal/renderer/lifecycle/ProcessLifecycle.js +111 -0
  149. package/dist/src/internal/renderer/lifecycle/ProcessLifecycle.js.map +1 -0
  150. package/dist/src/internal/renderer/lifecycle/RenderCache.d.ts +3 -0
  151. package/dist/src/internal/renderer/lifecycle/RenderCache.d.ts.map +1 -0
  152. package/dist/src/internal/renderer/lifecycle/RenderCache.js +9 -0
  153. package/dist/src/internal/renderer/lifecycle/RenderCache.js.map +1 -0
  154. package/dist/src/internal/renderer/lifecycle/index.d.ts +4 -0
  155. package/dist/src/internal/renderer/lifecycle/index.d.ts.map +1 -0
  156. package/dist/src/internal/renderer/lifecycle/index.js +4 -0
  157. package/dist/src/internal/renderer/lifecycle/index.js.map +1 -0
  158. package/dist/src/internal/renderer/modes/FullscreenRenderer.d.ts +12 -0
  159. package/dist/src/internal/renderer/modes/FullscreenRenderer.d.ts.map +1 -0
  160. package/dist/src/internal/renderer/modes/FullscreenRenderer.js +54 -0
  161. package/dist/src/internal/renderer/modes/FullscreenRenderer.js.map +1 -0
  162. package/dist/src/internal/renderer/modes/InlineRenderer.d.ts +25 -0
  163. package/dist/src/internal/renderer/modes/InlineRenderer.d.ts.map +1 -0
  164. package/dist/src/internal/renderer/modes/InlineRenderer.js +166 -0
  165. package/dist/src/internal/renderer/modes/InlineRenderer.js.map +1 -0
  166. package/dist/src/internal/renderer/modes/RendererMode.d.ts +42 -0
  167. package/dist/src/internal/renderer/modes/RendererMode.d.ts.map +1 -0
  168. package/dist/src/internal/renderer/modes/RendererMode.js +2 -0
  169. package/dist/src/internal/renderer/modes/RendererMode.js.map +1 -0
  170. package/dist/src/internal/renderer/modes/StaticContentRenderer.d.ts +25 -0
  171. package/dist/src/internal/renderer/modes/StaticContentRenderer.d.ts.map +1 -0
  172. package/dist/src/internal/renderer/modes/StaticContentRenderer.js +49 -0
  173. package/dist/src/internal/renderer/modes/StaticContentRenderer.js.map +1 -0
  174. package/dist/src/internal/renderer/modes/index.d.ts +5 -0
  175. package/dist/src/internal/renderer/modes/index.d.ts.map +1 -0
  176. package/dist/src/internal/renderer/modes/index.js +4 -0
  177. package/dist/src/internal/renderer/modes/index.js.map +1 -0
  178. package/dist/src/internal/renderer/terminal/KeyboardCapabilityProbe.d.ts +13 -0
  179. package/dist/src/internal/renderer/terminal/KeyboardCapabilityProbe.d.ts.map +1 -0
  180. package/dist/src/internal/renderer/terminal/KeyboardCapabilityProbe.js +75 -0
  181. package/dist/src/internal/renderer/terminal/KeyboardCapabilityProbe.js.map +1 -0
  182. package/dist/src/internal/renderer/terminal/TerminalSetup.d.ts +29 -0
  183. package/dist/src/internal/renderer/terminal/TerminalSetup.d.ts.map +1 -0
  184. package/dist/src/internal/renderer/terminal/TerminalSetup.js +82 -0
  185. package/dist/src/internal/renderer/terminal/TerminalSetup.js.map +1 -0
  186. package/dist/src/internal/renderer/terminal/index.d.ts +3 -0
  187. package/dist/src/internal/renderer/terminal/index.d.ts.map +1 -0
  188. package/dist/src/internal/renderer/terminal/index.js +3 -0
  189. package/dist/src/internal/renderer/terminal/index.js.map +1 -0
  190. package/dist/src/internal/renderer/types.d.ts +122 -0
  191. package/dist/src/internal/renderer/types.d.ts.map +1 -0
  192. package/dist/src/internal/renderer/types.js +2 -0
  193. package/dist/src/internal/renderer/types.js.map +1 -0
  194. package/dist/src/motion/hooks.d.ts +1 -1
  195. package/dist/src/motion/hooks.js +1 -1
  196. package/dist/src/reconciler/host-config.js +2 -2
  197. package/dist/src/reconciler/host-config.js.map +1 -1
  198. package/dist/src/reconciler/types.d.ts +5 -1
  199. package/dist/src/reconciler/types.d.ts.map +1 -1
  200. package/dist/src/renderer-context.d.ts +1 -8
  201. package/dist/src/renderer-context.d.ts.map +1 -1
  202. package/dist/src/renderer-context.js +1 -21
  203. package/dist/src/renderer-context.js.map +1 -1
  204. package/dist/src/renderer-types.d.ts +1 -115
  205. package/dist/src/renderer-types.d.ts.map +1 -1
  206. package/dist/src/renderer.d.ts +1 -31
  207. package/dist/src/renderer.d.ts.map +1 -1
  208. package/dist/src/renderer.js +1 -495
  209. package/dist/src/renderer.js.map +1 -1
  210. package/dist/src/test/render-tui.d.ts +3 -3
  211. package/dist/src/test/render-tui.d.ts.map +1 -1
  212. package/dist/src/test/render-tui.js +16 -9
  213. package/dist/src/test/render-tui.js.map +1 -1
  214. package/dist/src/utils/alignment.d.ts +1 -1
  215. package/dist/src/utils/alignment.d.ts.map +1 -1
  216. package/dist/src/utils/alignment.js +0 -2
  217. package/dist/src/utils/alignment.js.map +1 -1
  218. package/dist/src/utils/border.d.ts +1 -1
  219. package/dist/src/utils/border.d.ts.map +1 -1
  220. package/dist/src/utils/border.js +2 -0
  221. package/dist/src/utils/border.js.map +1 -1
  222. package/dist/src/utils/console-helpers.d.ts +19 -0
  223. package/dist/src/utils/console-helpers.d.ts.map +1 -0
  224. package/dist/src/utils/console-helpers.js +61 -0
  225. package/dist/src/utils/console-helpers.js.map +1 -0
  226. package/dist/src/utils/index.d.ts +2 -1
  227. package/dist/src/utils/index.d.ts.map +1 -1
  228. package/dist/src/utils/index.js +2 -1
  229. package/dist/src/utils/index.js.map +1 -1
  230. package/dist/src/utils/styles.d.ts +8 -1
  231. package/dist/src/utils/styles.d.ts.map +1 -1
  232. package/dist/src/utils/styles.js +10 -8
  233. package/dist/src/utils/styles.js.map +1 -1
  234. package/dist/src/utils/text-layout.d.ts +22 -0
  235. package/dist/src/utils/text-layout.d.ts.map +1 -0
  236. package/dist/src/utils/text-layout.js +37 -0
  237. package/dist/src/utils/text-layout.js.map +1 -0
  238. package/dist/src/utils/text-wrap.d.ts +31 -1
  239. package/dist/src/utils/text-wrap.d.ts.map +1 -1
  240. package/dist/src/utils/text-wrap.js +205 -48
  241. package/dist/src/utils/text-wrap.js.map +1 -1
  242. package/dist/src/visualize/index.js +1 -1
  243. package/dist/src/visualize/index.js.map +1 -1
  244. package/dist/tsconfig.tsbuildinfo +1 -1
  245. package/package.json +2 -2
  246. package/src/codeblock.tsx +2 -2
  247. package/src/components/ListView.tsx +21 -23
  248. package/src/components/Markdown.tsx +3 -3
  249. package/src/components/MultilineTextInput.tsx +138 -344
  250. package/src/components/TextInput.tsx +54 -99
  251. package/src/components/text-editing.ts +180 -0
  252. package/src/console/ConsolePopover.tsx +124 -107
  253. package/src/debug/DebugOverlay.ts +15 -74
  254. package/src/debug/DiagnosticsPanel.tsx +1 -1
  255. package/src/dev.tsx +5 -458
  256. package/src/hooks/use-scroll.ts +85 -145
  257. package/src/hosts/base.ts +86 -3
  258. package/src/hosts/box.ts +37 -2
  259. package/src/hosts/canvas.ts +128 -42
  260. package/src/hosts/codeblock.ts +48 -35
  261. package/src/hosts/flex-container.ts +25 -6
  262. package/src/hosts/index.ts +11 -2
  263. package/src/hosts/layout-helpers.ts +20 -0
  264. package/src/hosts/leaf.ts +36 -0
  265. package/src/hosts/overlay-item.ts +8 -2
  266. package/src/hosts/overlay.ts +13 -11
  267. package/src/hosts/scroll.ts +228 -106
  268. package/src/hosts/single-child.ts +2 -0
  269. package/src/hosts/spacer.ts +8 -3
  270. package/src/hosts/text.ts +126 -132
  271. package/src/hosts/vstack.ts +1 -1
  272. package/src/hosts/zstack.ts +14 -9
  273. package/src/index.ts +2 -2
  274. package/src/internal/dev/hmr.ts +101 -0
  275. package/src/internal/dev/runtime.ts +170 -0
  276. package/src/internal/dev/ui.tsx +87 -0
  277. package/src/internal/renderer/context.ts +27 -0
  278. package/src/{renderer → internal/renderer}/core/FrameBuilder.ts +2 -2
  279. package/src/internal/renderer/index.ts +689 -0
  280. package/src/{renderer → internal/renderer}/input/InputProcessor.ts +10 -1
  281. package/src/{renderer → internal/renderer}/lifecycle/EventBus.ts +9 -1
  282. package/src/internal/renderer/lifecycle/ProcessLifecycle.ts +125 -0
  283. package/src/internal/renderer/lifecycle/index.ts +3 -0
  284. package/src/{renderer → internal/renderer}/modes/InlineRenderer.ts +5 -2
  285. package/src/{renderer → internal/renderer}/modes/RendererMode.ts +1 -1
  286. package/src/{renderer → internal/renderer}/modes/StaticContentRenderer.ts +5 -2
  287. package/src/internal/renderer/terminal/KeyboardCapabilityProbe.ts +91 -0
  288. package/src/{renderer/lifecycle → internal/renderer/terminal}/TerminalSetup.ts +4 -22
  289. package/src/internal/renderer/terminal/index.ts +2 -0
  290. package/src/internal/renderer/types.ts +129 -0
  291. package/src/motion/hooks.ts +1 -1
  292. package/src/reconciler/host-config.ts +2 -2
  293. package/src/reconciler/types.ts +7 -1
  294. package/src/renderer-context.ts +1 -27
  295. package/src/renderer-types.ts +10 -123
  296. package/src/renderer.ts +1 -619
  297. package/src/test/render-tui.ts +16 -10
  298. package/src/utils/alignment.ts +1 -3
  299. package/src/utils/border.ts +11 -1
  300. package/src/utils/console-helpers.ts +86 -0
  301. package/src/utils/index.ts +15 -1
  302. package/src/utils/styles.ts +16 -4
  303. package/src/utils/text-layout.ts +65 -0
  304. package/src/utils/text-wrap.ts +261 -48
  305. package/src/visualize/index.tsx +1 -1
  306. package/src/renderer/lifecycle/ResizeManager.ts +0 -65
  307. package/src/renderer/lifecycle/index.ts +0 -4
  308. /package/src/{renderer → internal/renderer}/core/RendererState.ts +0 -0
  309. /package/src/{renderer → internal/renderer}/core/index.ts +0 -0
  310. /package/src/{renderer → internal/renderer}/input/index.ts +0 -0
  311. /package/src/{renderer → internal/renderer}/lifecycle/RenderCache.ts +0 -0
  312. /package/src/{renderer → internal/renderer}/modes/FullscreenRenderer.ts +0 -0
  313. /package/src/{renderer → internal/renderer}/modes/index.ts +0 -0
@@ -129,21 +129,21 @@ const reduceScroll = (state, action) => {
129
129
  * ```
130
130
  */
131
131
  export function useScroll(options = {}) {
132
- const { axis = "vertical", contentSize, contentWidth, contentHeight, initialViewportSize, initialViewportWidth, initialViewportHeight, initialContentSize, initialContentWidth, initialContentHeight, initialOffset = 0, initialOffsetX = 0, align = "start", showScrollbar = true, enableKeyboard = true, enableMouseWheel = true, enableAcceleration = true, sticky = false, arrowSpeed = 1, pageSpeed = 0.5, } = options;
132
+ const { axis = "vertical", contentWidth, contentHeight, initialViewportWidth, initialViewportHeight, initialContentWidth, initialContentHeight, initialOffsetY = 0, initialOffsetX = 0, align, showScrollbar = true, enableKeyboard = true, enableMouseWheel = true, enableAcceleration = true, sticky = false, arrowSpeed = 1, pageSpeed = 0.5, onScrollLayoutChange, } = options;
133
133
  const { width: termWidth, height: termHeight } = useTerminalSize();
134
134
  const enableY = axis === "vertical" || axis === "both";
135
135
  const enableX = axis === "horizontal" || axis === "both";
136
- const primaryAxis = axis === "horizontal" ? "horizontal" : "vertical";
137
- const controlledContentHeight = contentHeight ?? (axis !== "horizontal" ? contentSize : undefined);
138
- const controlledContentWidth = contentWidth ?? (axis === "horizontal" ? contentSize : undefined);
139
- const baseViewportHeight = initialViewportHeight ?? (axis !== "horizontal" ? initialViewportSize : undefined) ?? termHeight;
140
- const baseViewportWidth = initialViewportWidth ?? (axis === "horizontal" ? initialViewportSize : undefined) ?? termWidth;
141
- const baseContentHeight = controlledContentHeight ?? initialContentHeight ?? (axis !== "horizontal" ? initialContentSize : undefined) ?? 0;
142
- const baseContentWidth = controlledContentWidth ?? initialContentWidth ?? (axis === "horizontal" ? initialContentSize : undefined) ?? 0;
143
- const initialOffsetY = axis === "horizontal" ? 0 : initialOffset;
144
- const initialOffsetXResolved = axis === "horizontal" ? initialOffset : initialOffsetX;
136
+ const useHorizontalPrimary = axis === "horizontal";
137
+ const controlledContentHeight = contentHeight;
138
+ const controlledContentWidth = contentWidth;
139
+ const baseViewportHeight = initialViewportHeight ?? termHeight;
140
+ const baseViewportWidth = initialViewportWidth ?? termWidth;
141
+ const baseContentHeight = controlledContentHeight ?? initialContentHeight ?? 0;
142
+ const baseContentWidth = controlledContentWidth ?? initialContentWidth ?? 0;
143
+ const initialOffsetYResolved = axis === "horizontal" ? 0 : initialOffsetY;
144
+ const initialOffsetXResolved = axis === "vertical" ? 0 : initialOffsetX;
145
145
  const [internalY, dispatchY] = useReducer(reduceScroll, {
146
- offset: clampOffset(initialOffsetY, baseContentHeight, baseViewportHeight),
146
+ offset: clampOffset(initialOffsetYResolved, baseContentHeight, baseViewportHeight),
147
147
  contentSize: baseContentHeight,
148
148
  viewportSize: baseViewportHeight,
149
149
  viewportMeasured: false,
@@ -195,14 +195,6 @@ export function useScroll(options = {}) {
195
195
  accumulatorXRef.current -= integerDelta;
196
196
  }
197
197
  }, [dispatchX, enableX]);
198
- const scrollBy = useCallback((delta) => {
199
- if (primaryAxis === "horizontal") {
200
- scrollByX(delta);
201
- }
202
- else {
203
- scrollByY(delta);
204
- }
205
- }, [primaryAxis, scrollByX, scrollByY]);
206
198
  const scrollToStartY = useCallback(() => {
207
199
  dispatchY({ type: "set-offset", offset: 0 });
208
200
  accumulatorYRef.current = 0;
@@ -213,14 +205,6 @@ export function useScroll(options = {}) {
213
205
  accumulatorXRef.current = 0;
214
206
  accelX.reset();
215
207
  }, [dispatchX, accelX]);
216
- const scrollToStart = useCallback(() => {
217
- if (primaryAxis === "horizontal") {
218
- scrollToStartX();
219
- }
220
- else {
221
- scrollToStartY();
222
- }
223
- }, [primaryAxis, scrollToStartX, scrollToStartY]);
224
208
  const scrollToEndY = useCallback(() => {
225
209
  const current = stateYRef.current;
226
210
  const maxOffset = Math.max(0, current.contentSize - current.viewportSize);
@@ -235,23 +219,6 @@ export function useScroll(options = {}) {
235
219
  accumulatorXRef.current = 0;
236
220
  accelX.reset();
237
221
  }, [dispatchX, accelX]);
238
- const scrollToEnd = useCallback(() => {
239
- if (primaryAxis === "horizontal") {
240
- scrollToEndX();
241
- }
242
- else {
243
- scrollToEndY();
244
- }
245
- }, [primaryAxis, scrollToEndX, scrollToEndY]);
246
- // Handle content size changes (for sticky scroll)
247
- const handleContentSize = useCallback((width, height) => {
248
- if (enableY && controlledContentHeight === undefined) {
249
- dispatchY({ type: "set-content", size: height });
250
- }
251
- if (enableX && controlledContentWidth === undefined) {
252
- dispatchX({ type: "set-content", size: width });
253
- }
254
- }, [controlledContentHeight, controlledContentWidth, dispatchX, dispatchY, enableX, enableY]);
255
222
  useLayoutEffect(() => {
256
223
  if (!enableY || controlledContentHeight === undefined)
257
224
  return;
@@ -262,23 +229,39 @@ export function useScroll(options = {}) {
262
229
  return;
263
230
  dispatchX({ type: "set-content", size: controlledContentWidth });
264
231
  }, [controlledContentWidth, dispatchX, enableX]);
265
- // Handle viewport size changes (reported by scroll component)
266
- const handleViewportSize = useCallback((width, height) => {
232
+ const handleScrollLayout = useCallback((event) => {
267
233
  if (enableY) {
268
- viewportYRef.current = height;
269
- dispatchY({ type: "set-viewport", size: height });
234
+ viewportYRef.current = event.viewport.height;
235
+ dispatchY({ type: "set-viewport", size: event.viewport.height });
236
+ if (controlledContentHeight === undefined) {
237
+ dispatchY({ type: "set-content", size: event.content.height });
238
+ }
239
+ dispatchY({ type: "sync-effective-offset", offset: event.offset.y });
270
240
  }
271
241
  if (enableX) {
272
- viewportXRef.current = width;
273
- dispatchX({ type: "set-viewport", size: width });
242
+ viewportXRef.current = event.viewport.width;
243
+ dispatchX({ type: "set-viewport", size: event.viewport.width });
244
+ if (controlledContentWidth === undefined) {
245
+ dispatchX({ type: "set-content", size: event.content.width });
246
+ }
247
+ dispatchX({ type: "sync-effective-offset", offset: event.offset.x });
274
248
  }
275
- }, [dispatchX, dispatchY, enableX, enableY]);
249
+ onScrollLayoutChange?.(event);
250
+ }, [
251
+ controlledContentHeight,
252
+ controlledContentWidth,
253
+ dispatchX,
254
+ dispatchY,
255
+ enableX,
256
+ enableY,
257
+ onScrollLayoutChange,
258
+ ]);
276
259
  // Keyboard handler
277
260
  const handleKey = useCallback((key) => {
278
261
  // Mouse wheel comes as pageup/pagedown with meta=true
279
262
  // Handle separately from keyboard since enableKeyboard shouldn't disable mouse
280
263
  if (key.meta && enableMouseWheel && (key.name === "pageup" || key.name === "pagedown")) {
281
- const multiplier = primaryAxis === "horizontal" && !enableY ? accelX.tick() : accelY.tick();
264
+ const multiplier = useHorizontalPrimary && !enableY ? accelX.tick() : accelY.tick();
282
265
  const delta = Math.ceil(arrowSpeed * multiplier);
283
266
  if (axis === "horizontal") {
284
267
  scrollByX(key.name === "pageup" ? -delta : delta);
@@ -350,7 +333,7 @@ export function useScroll(options = {}) {
350
333
  accelX,
351
334
  accelY,
352
335
  enableY,
353
- primaryAxis,
336
+ useHorizontalPrimary,
354
337
  scrollByX,
355
338
  scrollByY,
356
339
  scrollToEndX,
@@ -363,7 +346,7 @@ export function useScroll(options = {}) {
363
346
  // Uses refs to avoid stale closures, but re-creates when viewport size changes
364
347
  // so selection effects can re-run after measurement updates.
365
348
  // Bypasses clampOffset because it uses totalSize for accurate clamping
366
- const scrollToVisible = useCallback((position, itemSize = 1, padding = 0, totalSize, axisOverride = "vertical") => {
349
+ const scrollIntoView = useCallback((position, itemSize = 1, padding = 0, totalSize, axisOverride = "vertical") => {
367
350
  const useHorizontal = axisOverride === "horizontal";
368
351
  const current = useHorizontal ? stateXRef.current : stateYRef.current;
369
352
  const currentOffset = current.offset;
@@ -392,14 +375,6 @@ export function useScroll(options = {}) {
392
375
  const setOffsetX = useCallback((newOffset) => {
393
376
  dispatchX({ type: "set-offset", offset: newOffset });
394
377
  }, [dispatchX]);
395
- const setOffset = useCallback((newOffset) => {
396
- if (primaryAxis === "horizontal") {
397
- setOffsetX(newOffset);
398
- }
399
- else {
400
- setOffsetY(newOffset);
401
- }
402
- }, [primaryAxis, setOffsetX, setOffsetY]);
403
378
  // Calculate derived state
404
379
  const maxOffsetY = Math.max(0, internalY.contentSize - internalY.viewportSize);
405
380
  const maxOffsetX = Math.max(0, internalX.contentSize - internalX.viewportSize);
@@ -407,18 +382,14 @@ export function useScroll(options = {}) {
407
382
  const atEndY = internalY.offset >= maxOffsetY;
408
383
  const atStartX = internalX.offset <= 0;
409
384
  const atEndX = internalX.offset >= maxOffsetX;
410
- const primaryState = primaryAxis === "horizontal" ? internalX : internalY;
411
- const primaryMaxOffset = primaryAxis === "horizontal" ? maxOffsetX : maxOffsetY;
412
- const primaryAtStart = primaryAxis === "horizontal" ? atStartX : atStartY;
413
- const primaryAtEnd = primaryAxis === "horizontal" ? atEndX : atEndY;
414
385
  const state = {
415
- offset: primaryState.offset,
416
- maxOffset: primaryMaxOffset,
417
- viewportSize: primaryState.viewportSize,
418
- viewportMeasured: primaryState.viewportMeasured,
419
- contentSize: primaryState.contentSize,
420
- atStart: primaryAtStart,
421
- atEnd: primaryAtEnd,
386
+ offsetY: internalY.offset,
387
+ maxOffsetY,
388
+ viewportSizeY: internalY.viewportSize,
389
+ viewportMeasuredY: internalY.viewportMeasured,
390
+ contentSizeY: internalY.contentSize,
391
+ atStartY,
392
+ atEndY,
422
393
  offsetX: internalX.offset,
423
394
  maxOffsetX,
424
395
  viewportSizeX: internalX.viewportSize,
@@ -427,36 +398,26 @@ export function useScroll(options = {}) {
427
398
  atStartX,
428
399
  atEndX,
429
400
  };
430
- // Handle effective offset sync from host (when sticky adjusts the offset)
431
- const handleEffectiveOffset = useCallback((effectiveOffset) => {
432
- dispatchY({ type: "sync-effective-offset", offset: effectiveOffset });
433
- }, [dispatchY]);
434
- const handleEffectiveOffsetX = useCallback((effectiveOffsetX) => {
435
- dispatchX({ type: "sync-effective-offset", offset: effectiveOffsetX });
436
- }, [dispatchX]);
437
401
  const scrollProps = {
438
- offset: enableY ? internalY.offset : 0,
402
+ offsetY: enableY ? internalY.offset : 0,
439
403
  offsetX: enableX ? internalX.offset : 0,
440
404
  axis,
441
405
  align,
442
406
  sticky,
443
407
  showScrollbar,
444
- onContentSize: handleContentSize,
445
- onViewportSize: handleViewportSize,
446
- onEffectiveOffset: enableY ? handleEffectiveOffset : undefined,
447
- onEffectiveOffsetX: enableX ? handleEffectiveOffsetX : undefined,
408
+ onScrollLayoutChange: handleScrollLayout,
448
409
  };
449
410
  return {
450
411
  state,
451
- setOffset,
412
+ setOffsetY,
452
413
  setOffsetX,
453
- scrollBy,
414
+ scrollByY,
454
415
  scrollByX,
455
- scrollToStart,
456
- scrollToEnd,
416
+ scrollToStartY,
417
+ scrollToEndY,
457
418
  scrollToStartX,
458
419
  scrollToEndX,
459
- scrollToVisible,
420
+ scrollIntoView,
460
421
  scrollProps,
461
422
  };
462
423
  }
@@ -1 +1 @@
1
- {"version":3,"file":"use-scroll.js","sourceRoot":"","sources":["../../../src/hooks/use-scroll.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAG3E,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAEjF,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAW/C;;;;GAIG;AACH,MAAM,gBAAgB;IASZ;IARD,YAAY,GAAG,CAAC,CAAA;IAChB,eAAe,GAAa,EAAE,CAAA;IACrB,WAAW,GAAG,CAAC,CAAA;IACf,aAAa,GAAG,GAAG,CAAA;IACpC,sEAAsE;IACrD,eAAe,GAAG,CAAC,CAAA;IAEpC,YACS,OAIJ,EAAE;QAJE,SAAI,GAAJ,IAAI,CAIN;IACJ,CAAC;IAEJ,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;QACpB,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAA;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAA;QAC9B,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,CAAA;QAElD,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAA;QAEjE,gCAAgC;QAChC,IAAI,EAAE,KAAK,QAAQ,IAAI,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YAChD,IAAI,CAAC,YAAY,GAAG,GAAG,CAAA;YACvB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAA;YACzB,OAAO,CAAC,CAAA;QACT,CAAC;QAED,2CAA2C;QAC3C,IAAI,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YAC/B,OAAO,CAAC,CAAA;QACT,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,GAAG,CAAA;QACvB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC7B,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACpD,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAA;QAC7B,CAAC;QAED,wDAAwD;QACxD,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAA;QAEjG,sDAAsD;QACtD,MAAM,iBAAiB,GAAG,GAAG,CAAA;QAC7B,MAAM,QAAQ,GAAG,iBAAiB,GAAG,WAAW,CAAA;QAEhD,0BAA0B;QAC1B,MAAM,CAAC,GAAG,QAAQ,GAAG,GAAG,CAAA;QACxB,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QAE5C,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;IAC3C,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,YAAY,GAAG,CAAC,CAAA;QACrB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAA;IAC1B,CAAC;CACD;AAuID,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,WAAmB,EAAE,YAAoB,EAAU,EAAE;IACzF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,GAAG,YAAY,CAAC,CAAA;IACzD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;AAChD,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,KAA0B,EAAE,MAAoB,EAAuB,EAAE;IAC9F,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,cAAc,CAAC,CAAC,CAAC;YACrB,IAAI,KAAK,CAAC,YAAY,KAAK,MAAM,CAAC,IAAI,IAAI,KAAK,CAAC,gBAAgB;gBAAE,OAAO,KAAK,CAAA;YAC9E,MAAM,IAAI,GAAG;gBACZ,GAAG,KAAK;gBACR,YAAY,EAAE,MAAM,CAAC,IAAI;gBACzB,gBAAgB,EAAE,IAAI;aACtB,CAAA;YACD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;YAC9E,OAAO,OAAO,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;QACrE,CAAC;QACD,KAAK,aAAa,CAAC,CAAC,CAAC;YACpB,IAAI,KAAK,CAAC,WAAW,KAAK,MAAM,CAAC,IAAI;gBAAE,OAAO,KAAK,CAAA;YACnD,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,CAAA;YACzE,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,IAAI,aAAa,GAAG,CAAC,CAAA;YAClD,MAAM,IAAI,GAAG,EAAE,GAAG,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,IAAI,EAAE,CAAA;YACnD,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;gBAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC,YAAY,CAAC,CAAA;gBAC/D,OAAO,SAAS,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;YACzE,CAAC;YACD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,CAAA;YAC1E,OAAO,OAAO,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;QACrE,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YACnB,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,CAAC,CAAA;YACjF,IAAI,OAAO,KAAK,KAAK,CAAC,MAAM;gBAAE,OAAO,KAAK,CAAA;YAC1C,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;QACrC,CAAC;QACD,KAAK,WAAW,CAAC,CAAC,CAAC;YAClB,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAA;YACpC,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,CAAC,CAAA;YAC/F,IAAI,OAAO,KAAK,KAAK,CAAC,MAAM;gBAAE,OAAO,KAAK,CAAA;YAC1C,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;QACrC,CAAC;QACD,KAAK,uBAAuB,CAAC,CAAC,CAAC;YAC9B,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,CAAC,CAAA;YACjF,IAAI,OAAO,KAAK,KAAK,CAAC,MAAM;gBAAE,OAAO,KAAK,CAAA;YAC1C,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;QACrC,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YACnB,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;gBAAE,OAAO,KAAK,CAAA;YAChD,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAA;QAC3C,CAAC;IACF,CAAC;AACF,CAAC,CAAA;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,SAAS,CAAC,UAA4B,EAAE;IACvD,MAAM,EACL,IAAI,GAAG,UAAU,EACjB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,aAAa,GAAG,CAAC,EACjB,cAAc,GAAG,CAAC,EAClB,KAAK,GAAG,OAAO,EACf,aAAa,GAAG,IAAI,EACpB,cAAc,GAAG,IAAI,EACrB,gBAAgB,GAAG,IAAI,EACvB,kBAAkB,GAAG,IAAI,EACzB,MAAM,GAAG,KAAK,EACd,UAAU,GAAG,CAAC,EACd,SAAS,GAAG,GAAG,GACf,GAAG,OAAO,CAAA;IAEX,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,eAAe,EAAE,CAAA;IAClE,MAAM,OAAO,GAAG,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,MAAM,CAAA;IACtD,MAAM,OAAO,GAAG,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,MAAM,CAAA;IACxD,MAAM,WAAW,GAA8B,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAA;IAEhG,MAAM,uBAAuB,GAAG,aAAa,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAClG,MAAM,sBAAsB,GAAG,YAAY,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAEhG,MAAM,kBAAkB,GACvB,qBAAqB,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,UAAU,CAAA;IACjG,MAAM,iBAAiB,GACtB,oBAAoB,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,SAAS,CAAA;IAE/F,MAAM,iBAAiB,GACtB,uBAAuB,IAAI,oBAAoB,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IACjH,MAAM,gBAAgB,GACrB,sBAAsB,IAAI,mBAAmB,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IAE/G,MAAM,cAAc,GAAG,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAA;IAChE,MAAM,sBAAsB,GAAG,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAA;IAErF,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,UAAU,CAAC,YAAY,EAAE;QACvD,MAAM,EAAE,WAAW,CAAC,cAAc,EAAE,iBAAiB,EAAE,kBAAkB,CAAC;QAC1E,WAAW,EAAE,iBAAiB;QAC9B,YAAY,EAAE,kBAAkB;QAChC,gBAAgB,EAAE,KAAK;QACvB,MAAM;KACN,CAAC,CAAA;IACF,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,UAAU,CAAC,YAAY,EAAE;QACvD,MAAM,EAAE,WAAW,CAAC,sBAAsB,EAAE,gBAAgB,EAAE,iBAAiB,CAAC;QAChF,WAAW,EAAE,gBAAgB;QAC7B,YAAY,EAAE,iBAAiB;QAC/B,gBAAgB,EAAE,KAAK;QACvB,MAAM;KACN,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAA;IACnC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAA;IACnC,SAAS,CAAC,OAAO,GAAG,SAAS,CAAA;IAC7B,SAAS,CAAC,OAAO,GAAG,SAAS,CAAA;IAC7B,MAAM,YAAY,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAA;IAC/C,MAAM,YAAY,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAA;IAE9C,sBAAsB;IACtB,MAAM,MAAM,GAAG,OAAO,CACrB,GAAG,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC,EACxF,CAAC,kBAAkB,CAAC,CACpB,CAAA;IACD,MAAM,MAAM,GAAG,OAAO,CACrB,GAAG,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC,EACxF,CAAC,kBAAkB,CAAC,CACpB,CAAA;IAED,wDAAwD;IACxD,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IACjC,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IAEjC,gDAAgD;IAChD,eAAe,CAAC,GAAG,EAAE;QACpB,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAA;QACzC,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAA;IAC1C,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;IAEZ,4DAA4D;IAC5D,+EAA+E;IAC/E,MAAM,SAAS,GAAG,WAAW,CAC5B,CAAC,KAAa,EAAE,EAAE;QACjB,IAAI,CAAC,OAAO;YAAE,OAAM;QACpB,eAAe,CAAC,OAAO,IAAI,KAAK,CAAA;QAChC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QACxD,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;YACxB,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAA;YACrD,eAAe,CAAC,OAAO,IAAI,YAAY,CAAA;QACxC,CAAC;IACF,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,CAAC,CACpB,CAAA;IAED,MAAM,SAAS,GAAG,WAAW,CAC5B,CAAC,KAAa,EAAE,EAAE;QACjB,IAAI,CAAC,OAAO;YAAE,OAAM;QACpB,eAAe,CAAC,OAAO,IAAI,KAAK,CAAA;QAChC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QACxD,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;YACxB,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAA;YACrD,eAAe,CAAC,OAAO,IAAI,YAAY,CAAA;QACxC,CAAC;IACF,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,CAAC,CACpB,CAAA;IAED,MAAM,QAAQ,GAAG,WAAW,CAC3B,CAAC,KAAa,EAAE,EAAE;QACjB,IAAI,WAAW,KAAK,YAAY,EAAE,CAAC;YAClC,SAAS,CAAC,KAAK,CAAC,CAAA;QACjB,CAAC;aAAM,CAAC;YACP,SAAS,CAAC,KAAK,CAAC,CAAA;QACjB,CAAC;IACF,CAAC,EACD,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,CACnC,CAAA;IAED,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;QACvC,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;QAC5C,eAAe,CAAC,OAAO,GAAG,CAAC,CAAA;QAC3B,MAAM,CAAC,KAAK,EAAE,CAAA;IACf,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;IAEvB,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;QACvC,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;QAC5C,eAAe,CAAC,OAAO,GAAG,CAAC,CAAA;QAC3B,MAAM,CAAC,KAAK,EAAE,CAAA;IACf,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;IAEvB,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;QACtC,IAAI,WAAW,KAAK,YAAY,EAAE,CAAC;YAClC,cAAc,EAAE,CAAA;QACjB,CAAC;aAAM,CAAC;YACP,cAAc,EAAE,CAAA;QACjB,CAAC;IACF,CAAC,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC,CAAA;IAEjD,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QACrC,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAA;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;QACzE,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;QACpD,eAAe,CAAC,OAAO,GAAG,CAAC,CAAA;QAC3B,MAAM,CAAC,KAAK,EAAE,CAAA;IACf,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;IAEvB,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QACrC,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAA;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;QACzE,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;QACpD,eAAe,CAAC,OAAO,GAAG,CAAC,CAAA;QAC3B,MAAM,CAAC,KAAK,EAAE,CAAA;IACf,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;IAEvB,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE;QACpC,IAAI,WAAW,KAAK,YAAY,EAAE,CAAC;YAClC,YAAY,EAAE,CAAA;QACf,CAAC;aAAM,CAAC;YACP,YAAY,EAAE,CAAA;QACf,CAAC;IACF,CAAC,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAA;IAE7C,kDAAkD;IAClD,MAAM,iBAAiB,GAAG,WAAW,CACpC,CAAC,KAAa,EAAE,MAAc,EAAE,EAAE;QACjC,IAAI,OAAO,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;YACtD,SAAS,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QACjD,CAAC;QACD,IAAI,OAAO,IAAI,sBAAsB,KAAK,SAAS,EAAE,CAAC;YACrD,SAAS,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;QAChD,CAAC;IACF,CAAC,EACD,CAAC,uBAAuB,EAAE,sBAAsB,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CACzF,CAAA;IAED,eAAe,CAAC,GAAG,EAAE;QACpB,IAAI,CAAC,OAAO,IAAI,uBAAuB,KAAK,SAAS;YAAE,OAAM;QAC7D,SAAS,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC,CAAA;IAClE,CAAC,EAAE,CAAC,uBAAuB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;IAEjD,eAAe,CAAC,GAAG,EAAE;QACpB,IAAI,CAAC,OAAO,IAAI,sBAAsB,KAAK,SAAS;YAAE,OAAM;QAC5D,SAAS,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAA;IACjE,CAAC,EAAE,CAAC,sBAAsB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;IAEhD,8DAA8D;IAC9D,MAAM,kBAAkB,GAAG,WAAW,CACrC,CAAC,KAAa,EAAE,MAAc,EAAE,EAAE;QACjC,IAAI,OAAO,EAAE,CAAC;YACb,YAAY,CAAC,OAAO,GAAG,MAAM,CAAA;YAC7B,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QAClD,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YACb,YAAY,CAAC,OAAO,GAAG,KAAK,CAAA;YAC5B,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;QACjD,CAAC;IACF,CAAC,EACD,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CACxC,CAAA;IAED,mBAAmB;IACnB,MAAM,SAAS,GAAG,WAAW,CAC5B,CAAC,GAAW,EAAE,EAAE;QACf,sDAAsD;QACtD,+EAA+E;QAC/E,IAAI,GAAG,CAAC,IAAI,IAAI,gBAAgB,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC,EAAE,CAAC;YACxF,MAAM,UAAU,GAAG,WAAW,KAAK,YAAY,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;YAC3F,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,CAAA;YAChD,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC3B,SAAS,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;YAClD,CAAC;iBAAM,CAAC;gBACP,SAAS,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;YAClD,CAAC;YACD,OAAM;QACP,CAAC;QAED,IAAI,CAAC,cAAc;YAAE,OAAM;QAE3B,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;YAC3B,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;gBAClB,KAAK,MAAM;oBACV,SAAS,CAAC,CAAC,UAAU,CAAC,CAAA;oBACtB,MAAK;gBACN,KAAK,OAAO;oBACX,SAAS,CAAC,UAAU,CAAC,CAAA;oBACrB,MAAK;gBACN,KAAK,QAAQ;oBACZ,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC,CAAA;oBACxD,MAAK;gBACN,KAAK,UAAU;oBACd,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC,CAAA;oBACvD,MAAK;gBACN,KAAK,MAAM;oBACV,cAAc,EAAE,CAAA;oBAChB,MAAK;gBACN,KAAK,KAAK;oBACT,YAAY,EAAE,CAAA;oBACd,MAAK;YACP,CAAC;YACD,OAAM;QACP,CAAC;QAED,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,IAAI;gBACR,SAAS,CAAC,CAAC,UAAU,CAAC,CAAA;gBACtB,MAAK;YACN,KAAK,MAAM;gBACV,SAAS,CAAC,UAAU,CAAC,CAAA;gBACrB,MAAK;YACN,KAAK,MAAM;gBACV,IAAI,IAAI,KAAK,MAAM;oBAAE,SAAS,CAAC,CAAC,UAAU,CAAC,CAAA;gBAC3C,MAAK;YACN,KAAK,OAAO;gBACX,IAAI,IAAI,KAAK,MAAM;oBAAE,SAAS,CAAC,UAAU,CAAC,CAAA;gBAC1C,MAAK;YACN,KAAK,QAAQ;gBACZ,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC,CAAA;gBACxD,MAAK;YACN,KAAK,UAAU;gBACd,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC,CAAA;gBACvD,MAAK;YACN,KAAK,MAAM;gBACV,cAAc,EAAE,CAAA;gBAChB,MAAK;YACN,KAAK,KAAK;gBACT,YAAY,EAAE,CAAA;gBACd,MAAK;QACP,CAAC;IACF,CAAC,EACD;QACC,cAAc;QACd,IAAI;QACJ,UAAU;QACV,SAAS;QACT,gBAAgB;QAChB,MAAM;QACN,MAAM;QACN,OAAO;QACP,WAAW;QACX,SAAS;QACT,SAAS;QACT,YAAY;QACZ,YAAY;QACZ,cAAc;QACd,cAAc;KACd,CACD,CAAA;IAED,WAAW,CAAC,SAAS,CAAC,CAAA;IAEtB,oEAAoE;IACpE,+EAA+E;IAC/E,6DAA6D;IAC7D,uEAAuE;IACvE,MAAM,eAAe,GAAG,WAAW,CAClC,CACC,QAAgB,EAChB,QAAQ,GAAG,CAAC,EACZ,OAAO,GAAG,CAAC,EACX,SAAkB,EAClB,eAA0C,UAAU,EACnD,EAAE;QACH,MAAM,aAAa,GAAG,YAAY,KAAK,YAAY,CAAA;QACnD,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAA;QACrE,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAA;QACpC,MAAM,mBAAmB,GAAG,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAA;QACvF,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAA;QACrC,MAAM,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAA;QACpC,yFAAyF;QACzF,MAAM,oBAAoB,GAAG,SAAS,IAAI,OAAO,CAAC,WAAW,CAAA;QAC7D,MAAM,OAAO,GAAG,SAAS,GAAG,aAAa,GAAG,OAAO,CAAA;QACnD,MAAM,OAAO,GAAG,OAAO,GAAG,aAAa,GAAG,mBAAmB,GAAG,OAAO,CAAA;QAEvE,kDAAkD;QAClD,IAAI,OAAO,EAAE,CAAC;YACb,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,CACjD;YAAA,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;QACpF,CAAC;QACD,oDAAoD;aAC/C,IAAI,OAAO,EAAE,CAAC;YAClB,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,GAAG,mBAAmB,CAAC,CAAA;YAChF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,GAAG,mBAAmB,GAAG,OAAO,CAAC,CACpF;YAAA,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;QACpF,CAAC;IACF,CAAC,EACD,CAAC,SAAS,EAAE,SAAS,CAAC,CACtB,CAAA;IAED,MAAM,UAAU,GAAG,WAAW,CAC7B,CAAC,SAAiB,EAAE,EAAE;QACrB,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;IACrD,CAAC,EACD,CAAC,SAAS,CAAC,CACX,CAAA;IAED,MAAM,UAAU,GAAG,WAAW,CAC7B,CAAC,SAAiB,EAAE,EAAE;QACrB,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;IACrD,CAAC,EACD,CAAC,SAAS,CAAC,CACX,CAAA;IAED,MAAM,SAAS,GAAG,WAAW,CAC5B,CAAC,SAAiB,EAAE,EAAE;QACrB,IAAI,WAAW,KAAK,YAAY,EAAE,CAAC;YAClC,UAAU,CAAC,SAAS,CAAC,CAAA;QACtB,CAAC;aAAM,CAAC;YACP,UAAU,CAAC,SAAS,CAAC,CAAA;QACtB,CAAC;IACF,CAAC,EACD,CAAC,WAAW,EAAE,UAAU,EAAE,UAAU,CAAC,CACrC,CAAA;IAED,0BAA0B;IAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,SAAS,CAAC,YAAY,CAAC,CAAA;IAC9E,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,SAAS,CAAC,YAAY,CAAC,CAAA;IAC9E,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,IAAI,CAAC,CAAA;IACtC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,IAAI,UAAU,CAAA;IAC7C,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,IAAI,CAAC,CAAA;IACtC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,IAAI,UAAU,CAAA;IAE7C,MAAM,YAAY,GAAG,WAAW,KAAK,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;IACzE,MAAM,gBAAgB,GAAG,WAAW,KAAK,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAA;IAC/E,MAAM,cAAc,GAAG,WAAW,KAAK,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAA;IACzE,MAAM,YAAY,GAAG,WAAW,KAAK,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAA;IAEnE,MAAM,KAAK,GAAgB;QAC1B,MAAM,EAAE,YAAY,CAAC,MAAM;QAC3B,SAAS,EAAE,gBAAgB;QAC3B,YAAY,EAAE,YAAY,CAAC,YAAY;QACvC,gBAAgB,EAAE,YAAY,CAAC,gBAAgB;QAC/C,WAAW,EAAE,YAAY,CAAC,WAAW;QACrC,OAAO,EAAE,cAAc;QACvB,KAAK,EAAE,YAAY;QACnB,OAAO,EAAE,SAAS,CAAC,MAAM;QACzB,UAAU;QACV,aAAa,EAAE,SAAS,CAAC,YAAY;QACrC,iBAAiB,EAAE,SAAS,CAAC,gBAAgB;QAC7C,YAAY,EAAE,SAAS,CAAC,WAAW;QACnC,QAAQ;QACR,MAAM;KACN,CAAA;IAED,0EAA0E;IAC1E,MAAM,qBAAqB,GAAG,WAAW,CAAC,CAAC,eAAuB,EAAE,EAAE;QACrE,SAAS,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAA;IACtE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,MAAM,sBAAsB,GAAG,WAAW,CAAC,CAAC,gBAAwB,EAAE,EAAE;QACvE,SAAS,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAA;IACvE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,MAAM,WAAW,GAAgB;QAChC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACtC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACvC,IAAI;QACJ,KAAK;QACL,MAAM;QACN,aAAa;QACb,aAAa,EAAE,iBAAiB;QAChC,cAAc,EAAE,kBAAkB;QAClC,iBAAiB,EAAE,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS;QAC9D,kBAAkB,EAAE,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,SAAS;KAChE,CAAA;IAED,OAAO;QACN,KAAK;QACL,SAAS;QACT,UAAU;QACV,QAAQ;QACR,SAAS;QACT,aAAa;QACb,WAAW;QACX,cAAc;QACd,YAAY;QACZ,eAAe;QACf,WAAW;KACX,CAAA;AACF,CAAC"}
1
+ {"version":3,"file":"use-scroll.js","sourceRoot":"","sources":["../../../src/hooks/use-scroll.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,12 @@ export declare abstract class BaseHost implements HostInstance {
14
14
  parent: HostInstance | null;
15
15
  children: HostInstance[];
16
16
  rect: Rect | null;
17
+ private _layoutDirty;
18
+ private _renderDirty;
19
+ private _lastMeasureW;
20
+ private _lastMeasureH;
21
+ private _lastMeasuredSize;
22
+ private _lastLayoutRect;
17
23
  greedy: boolean | number | undefined;
18
24
  frameWidth?: number;
19
25
  frameHeight?: number;
@@ -39,7 +45,10 @@ export declare abstract class BaseHost implements HostInstance {
39
45
  */
40
46
  prepareFrame(): void;
41
47
  /** Override in subclasses to precompute caches once per frame. */
42
- protected prepareSelf(): void;
48
+ protected prepareSelf(_layoutDirty: boolean, _renderDirty: boolean): void;
49
+ protected ensurePrepared(): void;
50
+ invalidateLayout(): void;
51
+ invalidateRender(): void;
43
52
  /**
44
53
  * Resolve a prop that may be a MotionValue/ColorMotionValue.
45
54
  * If it's a spring, subscribes to changes and returns current value.
@@ -57,9 +66,11 @@ export declare abstract class BaseHost implements HostInstance {
57
66
  * Called automatically in destroy().
58
67
  */
59
68
  protected clearSpringSubscriptions(): void;
60
- abstract measure(maxW: number, maxH: number): Size;
69
+ measure(maxW: number, maxH: number): Size;
70
+ protected abstract measureSelf(maxW: number, maxH: number): Size;
61
71
  abstract render(buffer: CellBuffer, palette: Palette): void;
62
72
  layout(rect: Rect): void;
73
+ protected layoutSelf(rect: Rect): void;
63
74
  /**
64
75
  * Apply frame constraints and update this.rect.
65
76
  * Returns the constrained rect for convenience in subclasses.
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/hosts/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/hosts/base.ts"],"names":[],"mappings":"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"}
@@ -52,6 +52,12 @@ export class BaseHost {
52
52
  parent = null;
53
53
  children = [];
54
54
  rect = null;
55
+ _layoutDirty = true;
56
+ _renderDirty = true;
57
+ _lastMeasureW = -1;
58
+ _lastMeasureH = -1;
59
+ _lastMeasuredSize = null;
60
+ _lastLayoutRect = null;
55
61
  // Greedy layout - expands to fill remaining space
56
62
  // undefined = not greedy (hug content)
57
63
  // true or 1 = 1 share
@@ -94,15 +100,34 @@ export class BaseHost {
94
100
  * Optional pre-frame hook. BaseHost will call prepareSelf() and then recurse into children.
95
101
  */
96
102
  prepareFrame() {
97
- this.prepareSelf();
103
+ this.ensurePrepared();
98
104
  for (const child of this.children) {
99
105
  child.prepareFrame?.();
100
106
  }
101
107
  }
102
108
  /** Override in subclasses to precompute caches once per frame. */
103
- prepareSelf() {
109
+ prepareSelf(_layoutDirty, _renderDirty) {
104
110
  // Default no-op
105
111
  }
112
+ ensurePrepared() {
113
+ if (!this._layoutDirty && !this._renderDirty)
114
+ return;
115
+ const layoutDirty = this._layoutDirty;
116
+ const renderDirty = this._renderDirty;
117
+ this._renderDirty = false;
118
+ this.prepareSelf(layoutDirty, renderDirty);
119
+ }
120
+ invalidateLayout() {
121
+ this._layoutDirty = true;
122
+ this._renderDirty = true;
123
+ this._lastMeasuredSize = null;
124
+ this.ctx.requestRender();
125
+ this.parent?.invalidateLayout?.();
126
+ }
127
+ invalidateRender() {
128
+ this._renderDirty = true;
129
+ this.ctx.requestRender();
130
+ }
106
131
  /**
107
132
  * Resolve a prop that may be a MotionValue/ColorMotionValue.
108
133
  * If it's a spring, subscribes to changes and returns current value.
@@ -168,7 +193,30 @@ export class BaseHost {
168
193
  }
169
194
  this._springSubscriptions.clear();
170
195
  }
196
+ measure(maxW, maxH) {
197
+ const constraintsUnchanged = this._lastMeasureW === maxW && this._lastMeasureH === maxH;
198
+ if (!this._layoutDirty && constraintsUnchanged && this._lastMeasuredSize) {
199
+ return this._lastMeasuredSize;
200
+ }
201
+ if (!constraintsUnchanged) {
202
+ this._layoutDirty = true;
203
+ }
204
+ const size = this.measureSelf(maxW, maxH);
205
+ this._lastMeasureW = maxW;
206
+ this._lastMeasureH = maxH;
207
+ this._lastMeasuredSize = size;
208
+ return size;
209
+ }
171
210
  layout(rect) {
211
+ const prev = this._lastLayoutRect;
212
+ const rectUnchanged = prev?.x === rect.x && prev?.y === rect.y && prev?.w === rect.w && prev?.h === rect.h;
213
+ if (!this._layoutDirty && rectUnchanged)
214
+ return;
215
+ this.layoutSelf(rect);
216
+ this._layoutDirty = false;
217
+ this._lastLayoutRect = this.rect ?? rect;
218
+ }
219
+ layoutSelf(rect) {
172
220
  this.layoutWithConstraints(rect);
173
221
  }
174
222
  /**
@@ -283,6 +331,7 @@ export class BaseHost {
283
331
  updateProps(props) {
284
332
  // Greedy layout - reset to undefined unless explicitly set
285
333
  // Subclasses like Spacer/Scroll set their own default before calling super
334
+ const prevGreedy = this.greedy;
286
335
  if ("greedy" in props) {
287
336
  const greedy = props.greedy;
288
337
  if (greedy === true) {
@@ -302,6 +351,12 @@ export class BaseHost {
302
351
  this.greedy = undefined;
303
352
  }
304
353
  // Frame constraints - only accept valid numbers (ignore strings like "100%")
354
+ const prevFrameWidth = this.frameWidth;
355
+ const prevFrameHeight = this.frameHeight;
356
+ const prevFrameMinWidth = this.frameMinWidth;
357
+ const prevFrameMaxWidth = this.frameMaxWidth;
358
+ const prevFrameMinHeight = this.frameMinHeight;
359
+ const prevFrameMaxHeight = this.frameMaxHeight;
305
360
  this.frameWidth = typeof props.width === "number" ? props.width : undefined;
306
361
  this.frameHeight = typeof props.height === "number" ? props.height : undefined;
307
362
  this.frameMinWidth = typeof props.minWidth === "number" ? props.minWidth : undefined;
@@ -310,6 +365,16 @@ export class BaseHost {
310
365
  this.frameMaxHeight = typeof props.maxHeight === "number" ? props.maxHeight : undefined;
311
366
  // onLayout callback
312
367
  this.onLayout = typeof props.onLayout === "function" ? props.onLayout : undefined;
368
+ const layoutChanged = prevGreedy !== this.greedy ||
369
+ prevFrameWidth !== this.frameWidth ||
370
+ prevFrameHeight !== this.frameHeight ||
371
+ prevFrameMinWidth !== this.frameMinWidth ||
372
+ prevFrameMaxWidth !== this.frameMaxWidth ||
373
+ prevFrameMinHeight !== this.frameMinHeight ||
374
+ prevFrameMaxHeight !== this.frameMaxHeight;
375
+ if (layoutChanged) {
376
+ this.invalidateLayout();
377
+ }
313
378
  }
314
379
  /**
315
380
  * Apply a default greedy value when the prop is omitted.
@@ -317,7 +382,11 @@ export class BaseHost {
317
382
  */
318
383
  applyGreedyDefault(props, fallback) {
319
384
  if (!("greedy" in props)) {
385
+ const prevGreedy = this.greedy;
320
386
  this.greedy = fallback;
387
+ if (prevGreedy !== this.greedy) {
388
+ this.invalidateLayout();
389
+ }
321
390
  }
322
391
  }
323
392
  destroy() {
@@ -328,6 +397,7 @@ export class BaseHost {
328
397
  appendChild(child) {
329
398
  this.children.push(child);
330
399
  child.parent = this;
400
+ this.invalidateLayout();
331
401
  }
332
402
  removeChild(child) {
333
403
  const idx = this.children.indexOf(child);
@@ -335,6 +405,7 @@ export class BaseHost {
335
405
  this.children.splice(idx, 1);
336
406
  child.parent = null;
337
407
  }
408
+ this.invalidateLayout();
338
409
  }
339
410
  insertBefore(child, before) {
340
411
  const existingIdx = this.children.indexOf(child);
@@ -349,6 +420,7 @@ export class BaseHost {
349
420
  this.children.push(child);
350
421
  }
351
422
  child.parent = this;
423
+ this.invalidateLayout();
352
424
  }
353
425
  /**
354
426
  * Render a child with optional clipping to its rect.
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/hosts/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/hosts/base.ts"],"names":[],"mappings":"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"}
@@ -33,8 +33,8 @@ export declare class BoxHost extends SingleChildHost {
33
33
  private get borderThickness();
34
34
  private get insetX();
35
35
  private get insetY();
36
- measure(maxW: number, maxH: number): Size;
37
- layout(rect: Rect): void;
36
+ protected measureSelf(maxW: number, maxH: number): Size;
37
+ protected layoutSelf(rect: Rect): void;
38
38
  render(buffer: CellBuffer, palette: Palette): void;
39
39
  updateProps(props: Record<string, unknown>): void;
40
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../../../src/hosts/box.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAElE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClF,OAAO,EACN,KAAK,UAAU,EAIf,KAAK,OAAO,EACZ,KAAK,YAAY,EAIjB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,YAAY,EAAE,UAAU,EAAE,CAAA;AAE1B,kFAAkF;AAClF,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,gBAAgB,CAAA;AAEhD,MAAM,WAAW,QAAS,SAAQ,WAAW;IAC5C,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,EAAE,CAAC,EAAE,SAAS,CAAA;IACd,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,iDAAiD;IACjD,UAAU,CAAC,EAAE,SAAS,CAAA;IACtB,sBAAsB;IACtB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,qDAAqD;IACrD,YAAY,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,qBAAa,OAAQ,SAAQ,eAAe;IAC3C,OAAO,EAAE,OAAO,CAA2C;IAC3D,MAAM,EAAE,UAAU,CAAS;IAC3B,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,EAAE,CAAC,EAAE,KAAK,CAAA;IACV,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,KAAK,CAAA;IAClB,SAAS,UAAQ;IACjB,YAAY,UAAQ;gBAER,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,WAAW;IAK7C,OAAO,KAAK,eAAe,GAE1B;IAED,OAAO,KAAK,MAAM,GAEjB;IAED,OAAO,KAAK,MAAM,GAKjB;IAED,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IA0BhC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAoBjC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IA4DzC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;CAkB1D"}
1
+ {"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../../../src/hosts/box.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAElE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClF,OAAO,EACN,KAAK,UAAU,EAIf,KAAK,OAAO,EACZ,KAAK,YAAY,EAIjB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,YAAY,EAAE,UAAU,EAAE,CAAA;AAE1B,kFAAkF;AAClF,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,gBAAgB,CAAA;AAEhD,MAAM,WAAW,QAAS,SAAQ,WAAW;IAC5C,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,EAAE,CAAC,EAAE,SAAS,CAAA;IACd,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,iDAAiD;IACjD,UAAU,CAAC,EAAE,SAAS,CAAA;IACtB,sBAAsB;IACtB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,qDAAqD;IACrD,YAAY,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,qBAAa,OAAQ,SAAQ,eAAe;IAC3C,OAAO,EAAE,OAAO,CAA2C;IAC3D,MAAM,EAAE,UAAU,CAAS;IAC3B,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,EAAE,CAAC,EAAE,KAAK,CAAA;IACV,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,KAAK,CAAA;IAClB,SAAS,UAAQ;IACjB,YAAY,UAAQ;gBAER,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,WAAW;IAK7C,OAAO,KAAK,eAAe,GAE1B;IAED,OAAO,KAAK,MAAM,GAEjB;IAED,OAAO,KAAK,MAAM,GAKjB;IAED,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;cA0BpC,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAoB/C,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IA4DzC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;CAqD1D"}