@effect-tui/react 0.15.1 → 0.16.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 (253) hide show
  1. package/README.md +2 -2
  2. package/dist/src/components/ListView.d.ts +4 -4
  3. package/dist/src/components/ListView.d.ts.map +1 -1
  4. package/dist/src/components/ListView.js +16 -17
  5. package/dist/src/components/ListView.js.map +1 -1
  6. package/dist/src/console/ConsolePopover.d.ts +7 -1
  7. package/dist/src/console/ConsolePopover.d.ts.map +1 -1
  8. package/dist/src/console/ConsolePopover.js +55 -74
  9. package/dist/src/console/ConsolePopover.js.map +1 -1
  10. package/dist/src/debug/DebugOverlay.d.ts.map +1 -1
  11. package/dist/src/debug/DebugOverlay.js +3 -57
  12. package/dist/src/debug/DebugOverlay.js.map +1 -1
  13. package/dist/src/debug/DiagnosticsPanel.js +1 -1
  14. package/dist/src/debug/DiagnosticsPanel.js.map +1 -1
  15. package/dist/src/dev.d.ts +5 -117
  16. package/dist/src/dev.d.ts.map +1 -1
  17. package/dist/src/dev.js +3 -333
  18. package/dist/src/dev.js.map +1 -1
  19. package/dist/src/hooks/use-scroll.d.ts +31 -35
  20. package/dist/src/hooks/use-scroll.d.ts.map +1 -1
  21. package/dist/src/hooks/use-scroll.js +51 -90
  22. package/dist/src/hooks/use-scroll.js.map +1 -1
  23. package/dist/src/hosts/canvas.d.ts +2 -2
  24. package/dist/src/hosts/canvas.d.ts.map +1 -1
  25. package/dist/src/hosts/canvas.js +8 -10
  26. package/dist/src/hosts/canvas.js.map +1 -1
  27. package/dist/src/hosts/codeblock.d.ts +7 -4
  28. package/dist/src/hosts/codeblock.d.ts.map +1 -1
  29. package/dist/src/hosts/codeblock.js +26 -9
  30. package/dist/src/hosts/codeblock.js.map +1 -1
  31. package/dist/src/hosts/flex-container.d.ts +1 -1
  32. package/dist/src/hosts/flex-container.d.ts.map +1 -1
  33. package/dist/src/hosts/flex-container.js +3 -3
  34. package/dist/src/hosts/flex-container.js.map +1 -1
  35. package/dist/src/hosts/index.d.ts +2 -1
  36. package/dist/src/hosts/index.d.ts.map +1 -1
  37. package/dist/src/hosts/index.js +2 -1
  38. package/dist/src/hosts/index.js.map +1 -1
  39. package/dist/src/hosts/layout-helpers.d.ts +10 -0
  40. package/dist/src/hosts/layout-helpers.d.ts.map +1 -0
  41. package/dist/src/hosts/layout-helpers.js +10 -0
  42. package/dist/src/hosts/layout-helpers.js.map +1 -0
  43. package/dist/src/hosts/leaf.d.ts +14 -0
  44. package/dist/src/hosts/leaf.d.ts.map +1 -0
  45. package/dist/src/hosts/leaf.js +31 -0
  46. package/dist/src/hosts/leaf.js.map +1 -0
  47. package/dist/src/hosts/overlay.d.ts.map +1 -1
  48. package/dist/src/hosts/overlay.js +4 -7
  49. package/dist/src/hosts/overlay.js.map +1 -1
  50. package/dist/src/hosts/scroll.d.ts +47 -24
  51. package/dist/src/hosts/scroll.d.ts.map +1 -1
  52. package/dist/src/hosts/scroll.js +68 -51
  53. package/dist/src/hosts/scroll.js.map +1 -1
  54. package/dist/src/hosts/spacer.d.ts +3 -4
  55. package/dist/src/hosts/spacer.d.ts.map +1 -1
  56. package/dist/src/hosts/spacer.js +2 -5
  57. package/dist/src/hosts/spacer.js.map +1 -1
  58. package/dist/src/hosts/text.d.ts +2 -3
  59. package/dist/src/hosts/text.d.ts.map +1 -1
  60. package/dist/src/hosts/text.js +5 -61
  61. package/dist/src/hosts/text.js.map +1 -1
  62. package/dist/src/hosts/vstack.js +1 -1
  63. package/dist/src/hosts/vstack.js.map +1 -1
  64. package/dist/src/hosts/zstack.d.ts +1 -1
  65. package/dist/src/hosts/zstack.d.ts.map +1 -1
  66. package/dist/src/hosts/zstack.js +6 -6
  67. package/dist/src/hosts/zstack.js.map +1 -1
  68. package/dist/src/index.d.ts +1 -1
  69. package/dist/src/index.d.ts.map +1 -1
  70. package/dist/src/internal/dev/hmr.d.ts +20 -0
  71. package/dist/src/internal/dev/hmr.d.ts.map +1 -0
  72. package/dist/src/internal/dev/hmr.js +93 -0
  73. package/dist/src/internal/dev/hmr.js.map +1 -0
  74. package/dist/src/internal/dev/runtime.d.ts +24 -0
  75. package/dist/src/internal/dev/runtime.d.ts.map +1 -0
  76. package/dist/src/internal/dev/runtime.js +135 -0
  77. package/dist/src/internal/dev/runtime.js.map +1 -0
  78. package/dist/src/internal/dev/ui.d.ts +13 -0
  79. package/dist/src/internal/dev/ui.d.ts.map +1 -0
  80. package/dist/src/internal/dev/ui.js +51 -0
  81. package/dist/src/internal/dev/ui.js.map +1 -0
  82. package/dist/src/internal/renderer/context.d.ts +9 -0
  83. package/dist/src/internal/renderer/context.d.ts.map +1 -0
  84. package/dist/src/internal/renderer/context.js +22 -0
  85. package/dist/src/internal/renderer/context.js.map +1 -0
  86. package/dist/src/internal/renderer/core/FrameBuilder.d.ts +18 -0
  87. package/dist/src/internal/renderer/core/FrameBuilder.d.ts.map +1 -0
  88. package/dist/src/internal/renderer/core/FrameBuilder.js +40 -0
  89. package/dist/src/internal/renderer/core/FrameBuilder.js.map +1 -0
  90. package/dist/src/internal/renderer/core/RendererState.d.ts +41 -0
  91. package/dist/src/internal/renderer/core/RendererState.d.ts.map +1 -0
  92. package/dist/src/internal/renderer/core/RendererState.js +70 -0
  93. package/dist/src/internal/renderer/core/RendererState.js.map +1 -0
  94. package/dist/src/internal/renderer/core/index.d.ts +3 -0
  95. package/dist/src/internal/renderer/core/index.d.ts.map +1 -0
  96. package/dist/src/internal/renderer/core/index.js +3 -0
  97. package/dist/src/internal/renderer/core/index.js.map +1 -0
  98. package/dist/src/internal/renderer/index.d.ts +40 -0
  99. package/dist/src/internal/renderer/index.d.ts.map +1 -0
  100. package/dist/src/internal/renderer/index.js +518 -0
  101. package/dist/src/internal/renderer/index.js.map +1 -0
  102. package/dist/src/internal/renderer/input/InputProcessor.d.ts +30 -0
  103. package/dist/src/internal/renderer/input/InputProcessor.d.ts.map +1 -0
  104. package/dist/src/internal/renderer/input/InputProcessor.js +122 -0
  105. package/dist/src/internal/renderer/input/InputProcessor.js.map +1 -0
  106. package/dist/src/internal/renderer/input/index.d.ts +2 -0
  107. package/dist/src/internal/renderer/input/index.d.ts.map +1 -0
  108. package/dist/src/internal/renderer/input/index.js +2 -0
  109. package/dist/src/internal/renderer/input/index.js.map +1 -0
  110. package/dist/src/internal/renderer/lifecycle/EventBus.d.ts +42 -0
  111. package/dist/src/internal/renderer/lifecycle/EventBus.d.ts.map +1 -0
  112. package/dist/src/internal/renderer/lifecycle/EventBus.js +97 -0
  113. package/dist/src/internal/renderer/lifecycle/EventBus.js.map +1 -0
  114. package/dist/src/internal/renderer/lifecycle/ProcessLifecycle.d.ts +13 -0
  115. package/dist/src/internal/renderer/lifecycle/ProcessLifecycle.d.ts.map +1 -0
  116. package/dist/src/internal/renderer/lifecycle/ProcessLifecycle.js +111 -0
  117. package/dist/src/internal/renderer/lifecycle/ProcessLifecycle.js.map +1 -0
  118. package/dist/src/internal/renderer/lifecycle/RenderCache.d.ts +3 -0
  119. package/dist/src/internal/renderer/lifecycle/RenderCache.d.ts.map +1 -0
  120. package/dist/src/internal/renderer/lifecycle/RenderCache.js +9 -0
  121. package/dist/src/internal/renderer/lifecycle/RenderCache.js.map +1 -0
  122. package/dist/src/internal/renderer/lifecycle/index.d.ts +4 -0
  123. package/dist/src/internal/renderer/lifecycle/index.d.ts.map +1 -0
  124. package/dist/src/internal/renderer/lifecycle/index.js +4 -0
  125. package/dist/src/internal/renderer/lifecycle/index.js.map +1 -0
  126. package/dist/src/internal/renderer/modes/FullscreenRenderer.d.ts +12 -0
  127. package/dist/src/internal/renderer/modes/FullscreenRenderer.d.ts.map +1 -0
  128. package/dist/src/internal/renderer/modes/FullscreenRenderer.js +54 -0
  129. package/dist/src/internal/renderer/modes/FullscreenRenderer.js.map +1 -0
  130. package/dist/src/internal/renderer/modes/InlineRenderer.d.ts +25 -0
  131. package/dist/src/internal/renderer/modes/InlineRenderer.d.ts.map +1 -0
  132. package/dist/src/internal/renderer/modes/InlineRenderer.js +166 -0
  133. package/dist/src/internal/renderer/modes/InlineRenderer.js.map +1 -0
  134. package/dist/src/internal/renderer/modes/RendererMode.d.ts +42 -0
  135. package/dist/src/internal/renderer/modes/RendererMode.d.ts.map +1 -0
  136. package/dist/src/internal/renderer/modes/RendererMode.js +2 -0
  137. package/dist/src/internal/renderer/modes/RendererMode.js.map +1 -0
  138. package/dist/src/internal/renderer/modes/StaticContentRenderer.d.ts +25 -0
  139. package/dist/src/internal/renderer/modes/StaticContentRenderer.d.ts.map +1 -0
  140. package/dist/src/internal/renderer/modes/StaticContentRenderer.js +49 -0
  141. package/dist/src/internal/renderer/modes/StaticContentRenderer.js.map +1 -0
  142. package/dist/src/internal/renderer/modes/index.d.ts +5 -0
  143. package/dist/src/internal/renderer/modes/index.d.ts.map +1 -0
  144. package/dist/src/internal/renderer/modes/index.js +4 -0
  145. package/dist/src/internal/renderer/modes/index.js.map +1 -0
  146. package/dist/src/internal/renderer/terminal/KeyboardCapabilityProbe.d.ts +13 -0
  147. package/dist/src/internal/renderer/terminal/KeyboardCapabilityProbe.d.ts.map +1 -0
  148. package/dist/src/internal/renderer/terminal/KeyboardCapabilityProbe.js +75 -0
  149. package/dist/src/internal/renderer/terminal/KeyboardCapabilityProbe.js.map +1 -0
  150. package/dist/src/internal/renderer/terminal/TerminalSetup.d.ts +29 -0
  151. package/dist/src/internal/renderer/terminal/TerminalSetup.d.ts.map +1 -0
  152. package/dist/src/internal/renderer/terminal/TerminalSetup.js +82 -0
  153. package/dist/src/internal/renderer/terminal/TerminalSetup.js.map +1 -0
  154. package/dist/src/internal/renderer/terminal/index.d.ts +3 -0
  155. package/dist/src/internal/renderer/terminal/index.d.ts.map +1 -0
  156. package/dist/src/internal/renderer/terminal/index.js +3 -0
  157. package/dist/src/internal/renderer/terminal/index.js.map +1 -0
  158. package/dist/src/internal/renderer/types.d.ts +118 -0
  159. package/dist/src/internal/renderer/types.d.ts.map +1 -0
  160. package/dist/src/internal/renderer/types.js +2 -0
  161. package/dist/src/internal/renderer/types.js.map +1 -0
  162. package/dist/src/renderer-context.d.ts +1 -8
  163. package/dist/src/renderer-context.d.ts.map +1 -1
  164. package/dist/src/renderer-context.js +1 -21
  165. package/dist/src/renderer-context.js.map +1 -1
  166. package/dist/src/renderer-types.d.ts +1 -115
  167. package/dist/src/renderer-types.d.ts.map +1 -1
  168. package/dist/src/renderer.d.ts +1 -31
  169. package/dist/src/renderer.d.ts.map +1 -1
  170. package/dist/src/renderer.js +1 -468
  171. package/dist/src/renderer.js.map +1 -1
  172. package/dist/src/test/render-tui.d.ts +3 -3
  173. package/dist/src/test/render-tui.d.ts.map +1 -1
  174. package/dist/src/test/render-tui.js +16 -9
  175. package/dist/src/test/render-tui.js.map +1 -1
  176. package/dist/src/utils/alignment.d.ts +1 -1
  177. package/dist/src/utils/alignment.d.ts.map +1 -1
  178. package/dist/src/utils/alignment.js +0 -2
  179. package/dist/src/utils/alignment.js.map +1 -1
  180. package/dist/src/utils/console-helpers.d.ts +19 -0
  181. package/dist/src/utils/console-helpers.d.ts.map +1 -0
  182. package/dist/src/utils/console-helpers.js +61 -0
  183. package/dist/src/utils/console-helpers.js.map +1 -0
  184. package/dist/src/utils/index.d.ts +1 -1
  185. package/dist/src/utils/index.d.ts.map +1 -1
  186. package/dist/src/utils/index.js +1 -1
  187. package/dist/src/utils/index.js.map +1 -1
  188. package/dist/src/utils/styles.d.ts +8 -1
  189. package/dist/src/utils/styles.d.ts.map +1 -1
  190. package/dist/src/utils/styles.js +10 -8
  191. package/dist/src/utils/styles.js.map +1 -1
  192. package/dist/src/utils/text-wrap.d.ts +5 -0
  193. package/dist/src/utils/text-wrap.d.ts.map +1 -1
  194. package/dist/src/utils/text-wrap.js +110 -48
  195. package/dist/src/utils/text-wrap.js.map +1 -1
  196. package/dist/src/visualize/index.js +1 -1
  197. package/dist/src/visualize/index.js.map +1 -1
  198. package/dist/tsconfig.tsbuildinfo +1 -1
  199. package/package.json +2 -2
  200. package/src/components/ListView.tsx +21 -23
  201. package/src/console/ConsolePopover.tsx +124 -107
  202. package/src/debug/DebugOverlay.ts +15 -74
  203. package/src/debug/DiagnosticsPanel.tsx +1 -1
  204. package/src/dev.tsx +5 -458
  205. package/src/hooks/use-scroll.ts +85 -145
  206. package/src/hosts/canvas.ts +8 -11
  207. package/src/hosts/codeblock.ts +30 -11
  208. package/src/hosts/flex-container.ts +4 -4
  209. package/src/hosts/index.ts +10 -1
  210. package/src/hosts/layout-helpers.ts +20 -0
  211. package/src/hosts/leaf.ts +36 -0
  212. package/src/hosts/overlay.ts +11 -9
  213. package/src/hosts/scroll.ts +94 -69
  214. package/src/hosts/spacer.ts +3 -7
  215. package/src/hosts/text.ts +5 -58
  216. package/src/hosts/vstack.ts +1 -1
  217. package/src/hosts/zstack.ts +7 -7
  218. package/src/index.ts +1 -1
  219. package/src/internal/dev/hmr.ts +101 -0
  220. package/src/internal/dev/runtime.ts +170 -0
  221. package/src/internal/dev/ui.tsx +87 -0
  222. package/src/internal/renderer/context.ts +27 -0
  223. package/src/{renderer → internal/renderer}/core/FrameBuilder.ts +2 -2
  224. package/src/internal/renderer/index.ts +656 -0
  225. package/src/{renderer → internal/renderer}/input/InputProcessor.ts +10 -1
  226. package/src/{renderer → internal/renderer}/lifecycle/EventBus.ts +9 -1
  227. package/src/internal/renderer/lifecycle/ProcessLifecycle.ts +125 -0
  228. package/src/internal/renderer/lifecycle/index.ts +3 -0
  229. package/src/{renderer → internal/renderer}/modes/InlineRenderer.ts +5 -2
  230. package/src/{renderer → internal/renderer}/modes/RendererMode.ts +1 -1
  231. package/src/{renderer → internal/renderer}/modes/StaticContentRenderer.ts +5 -2
  232. package/src/internal/renderer/terminal/KeyboardCapabilityProbe.ts +91 -0
  233. package/src/{renderer/lifecycle → internal/renderer/terminal}/TerminalSetup.ts +4 -22
  234. package/src/internal/renderer/terminal/index.ts +2 -0
  235. package/src/internal/renderer/types.ts +125 -0
  236. package/src/renderer-context.ts +1 -27
  237. package/src/renderer-types.ts +10 -123
  238. package/src/renderer.ts +1 -590
  239. package/src/test/render-tui.ts +16 -10
  240. package/src/utils/alignment.ts +1 -3
  241. package/src/utils/console-helpers.ts +86 -0
  242. package/src/utils/index.ts +1 -1
  243. package/src/utils/styles.ts +16 -4
  244. package/src/utils/text-wrap.ts +139 -48
  245. package/src/visualize/index.tsx +1 -1
  246. package/src/renderer/lifecycle/ResizeManager.ts +0 -65
  247. package/src/renderer/lifecycle/index.ts +0 -4
  248. /package/src/{renderer → internal/renderer}/core/RendererState.ts +0 -0
  249. /package/src/{renderer → internal/renderer}/core/index.ts +0 -0
  250. /package/src/{renderer → internal/renderer}/input/index.ts +0 -0
  251. /package/src/{renderer → internal/renderer}/lifecycle/RenderCache.ts +0 -0
  252. /package/src/{renderer → internal/renderer}/modes/FullscreenRenderer.ts +0 -0
  253. /package/src/{renderer → internal/renderer}/modes/index.ts +0 -0
@@ -1,10 +1,10 @@
1
1
  import { Colors, displayWidth } from "@effect-tui/core";
2
2
  import { resolveBgStyle, resolvePadding, styleIdFromProps } from "../utils/index.js";
3
- import { BaseHost } from "./base.js";
3
+ import { LeafHost } from "./leaf.js";
4
4
  function lineDisplayWidth(line) {
5
5
  return line.reduce((w, token) => w + displayWidth(token.text), 0);
6
6
  }
7
- export class CodeBlockHost extends BaseHost {
7
+ export class CodeBlockHost extends LeafHost {
8
8
  lines = [[]];
9
9
  lineNumbers = false;
10
10
  padding = { top: 0, right: 0, bottom: 0, left: 0 };
@@ -13,6 +13,7 @@ export class CodeBlockHost extends BaseHost {
13
13
  lineNumberBackground;
14
14
  cachedLineWidths = [];
15
15
  gutterWidth = 0;
16
+ prepared = false;
16
17
  constructor(props, ctx) {
17
18
  super("codeblock", props, ctx);
18
19
  this.updateProps(props);
@@ -31,10 +32,22 @@ export class CodeBlockHost extends BaseHost {
31
32
  get insetY() {
32
33
  return this.padding.top + this.padding.bottom;
33
34
  }
35
+ prepareMetrics() {
36
+ this.cachedLineWidths = this.lines.map((line) => lineDisplayWidth(line));
37
+ this.gutterWidth = this.computeGutterWidth();
38
+ this.prepared = true;
39
+ }
40
+ ensurePrepared() {
41
+ if (this.prepared)
42
+ return;
43
+ this.prepareMetrics();
44
+ }
45
+ prepareSelf() {
46
+ this.ensurePrepared();
47
+ }
34
48
  measure(maxW, maxH) {
35
49
  const constrained = this.constrainProposal(maxW, maxH);
36
- this.cachedLineWidths = this.lines.map((l) => lineDisplayWidth(l));
37
- this.gutterWidth = this.computeGutterWidth();
50
+ this.ensurePrepared();
38
51
  const maxLineW = this.cachedLineWidths.reduce((max, w) => (w > max ? w : max), 0);
39
52
  const contentW = maxLineW + this.insetX;
40
53
  const innerHeight = Math.max(1, this.lines.length) + this.insetY;
@@ -43,9 +56,6 @@ export class CodeBlockHost extends BaseHost {
43
56
  h: Math.min(constrained.h, innerHeight),
44
57
  });
45
58
  }
46
- layout(rect) {
47
- super.layout(rect);
48
- }
49
59
  render(buffer, palette) {
50
60
  if (!this.rect)
51
61
  return;
@@ -93,10 +103,15 @@ export class CodeBlockHost extends BaseHost {
93
103
  }
94
104
  updateProps(props) {
95
105
  super.updateProps(props);
96
- if (props.lines !== undefined)
106
+ let invalidate = false;
107
+ if (props.lines !== undefined) {
97
108
  this.lines = props.lines;
98
- if (props.lineNumbers !== undefined)
109
+ invalidate = true;
110
+ }
111
+ if (props.lineNumbers !== undefined) {
99
112
  this.lineNumbers = !!props.lineNumbers;
113
+ invalidate = true;
114
+ }
100
115
  if (props.padding !== undefined)
101
116
  this.padding = resolvePadding(props.padding);
102
117
  if (props.background !== undefined)
@@ -105,6 +120,8 @@ export class CodeBlockHost extends BaseHost {
105
120
  this.lineNumberColor = props.lineNumberColor;
106
121
  if (props.lineNumberBackground !== undefined)
107
122
  this.lineNumberBackground = props.lineNumberBackground;
123
+ if (invalidate)
124
+ this.prepared = false;
108
125
  }
109
126
  }
110
127
  //# sourceMappingURL=codeblock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codeblock.js","sourceRoot":"","sources":["../../../src/hosts/codeblock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codeblock.js","sourceRoot":"","sources":["../../../src/hosts/codeblock.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import type { CellBuffer, Color, Palette } from "@effect-tui/core";
2
2
  import type { CommonProps, HostContext, Rect, Size } from "../reconciler/types.js";
3
3
  import { type FlexAxis, type Padding, type PaddingInput } from "../utils/index.js";
4
4
  import { BaseHost } from "./base.js";
5
- export type CrossAlignment<A extends FlexAxis> = A extends "vertical" ? "leading" | "center" | "trailing" : "top" | "center" | "bottom";
5
+ export type CrossAlignment<A extends FlexAxis> = A extends "vertical" ? "left" | "center" | "right" : "top" | "center" | "bottom";
6
6
  export interface FlexContainerProps<A extends FlexAxis> extends CommonProps {
7
7
  spacing?: number;
8
8
  alignment?: CrossAlignment<A>;
@@ -1 +1 @@
1
- {"version":3,"file":"flex-container.d.ts","sourceRoot":"","sources":["../../../src/hosts/flex-container.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAElE,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClF,OAAO,EAEN,KAAK,QAAQ,EAGb,KAAK,OAAO,EACZ,KAAK,YAAY,EAGjB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,QAAQ,IAAI,CAAC,SAAS,UAAU,GAClE,SAAS,GAAG,QAAQ,GAAG,UAAU,GACjC,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAE9B,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,QAAQ,CAAE,SAAQ,WAAW;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAA;IAC7B,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,yDAAyD;IACzD,EAAE,CAAC,EAAE,KAAK,CAAA;CACV;AAYD;;;GAGG;AACH,qBAAa,iBAAiB,CAAC,CAAC,SAAS,QAAQ,CAAE,SAAQ,QAAQ;IASjE,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAR3B,OAAO,SAAI;IACX,SAAS,EAAG,cAAc,CAAC,CAAC,CAAC,CAAA;IAC7B,EAAE,CAAC,EAAE,KAAK,CAAA;IACV,OAAO,EAAE,OAAO,CAA2C;IAC3D,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,cAAc,CAA2B;gBAG7B,IAAI,EAAE,CAAC,EAC1B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAC5B,GAAG,EAAE,WAAW,EAChB,gBAAgB,EAAE,cAAc,CAAC,CAAC,CAAC;IAOpC,4EAA4E;IAC5E,OAAO,CAAC,oBAAoB;IAI5B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAuBhC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAsBjC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAgBzC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;CAU1D"}
1
+ {"version":3,"file":"flex-container.d.ts","sourceRoot":"","sources":["../../../src/hosts/flex-container.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAElE,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClF,OAAO,EAEN,KAAK,QAAQ,EAGb,KAAK,OAAO,EACZ,KAAK,YAAY,EAGjB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,QAAQ,IAAI,CAAC,SAAS,UAAU,GAClE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAC3B,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAE9B,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,QAAQ,CAAE,SAAQ,WAAW;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAA;IAC7B,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,yDAAyD;IACzD,EAAE,CAAC,EAAE,KAAK,CAAA;CACV;AAYD;;;GAGG;AACH,qBAAa,iBAAiB,CAAC,CAAC,SAAS,QAAQ,CAAE,SAAQ,QAAQ;IASjE,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAR3B,OAAO,SAAI;IACX,SAAS,EAAG,cAAc,CAAC,CAAC,CAAC,CAAA;IAC7B,EAAE,CAAC,EAAE,KAAK,CAAA;IACV,OAAO,EAAE,OAAO,CAA2C;IAC3D,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,cAAc,CAA2B;gBAG7B,IAAI,EAAE,CAAC,EAC1B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAC5B,GAAG,EAAE,WAAW,EAChB,gBAAgB,EAAE,cAAc,CAAC,CAAC,CAAC;IAOpC,4EAA4E;IAC5E,OAAO,CAAC,oBAAoB;IAI5B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAuBhC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAsBjC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAgBzC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;CAU1D"}
@@ -6,7 +6,7 @@ function toFlexAlignment(axis, alignment) {
6
6
  if (alignment === "center")
7
7
  return "center";
8
8
  if (axis === "vertical") {
9
- return alignment === "leading" ? "start" : "end";
9
+ return alignment === "left" ? "start" : "end";
10
10
  }
11
11
  else {
12
12
  return alignment === "top" ? "start" : "end";
@@ -69,7 +69,7 @@ export class FlexContainerHost extends BaseHost {
69
69
  }
70
70
  layout(rect) {
71
71
  const layoutRect = this.layoutWithConstraints(rect);
72
- const stretchCross = this.axis === "vertical" ? this.alignment === "leading" : this.alignment === "top";
72
+ const stretchCross = this.axis === "vertical" ? this.alignment === "left" : this.alignment === "top";
73
73
  const insetX = this.padding.left + this.padding.right;
74
74
  const insetY = this.padding.top + this.padding.bottom;
75
75
  const innerRect = {
@@ -100,7 +100,7 @@ export class FlexContainerHost extends BaseHost {
100
100
  // Reset to axis-specific default when undefined
101
101
  this.alignment =
102
102
  props.alignment ??
103
- (this.axis === "vertical" ? "leading" : "top");
103
+ (this.axis === "vertical" ? "left" : "top");
104
104
  this.padding = resolvePadding(props.padding);
105
105
  this.bg = props.bg;
106
106
  }
@@ -1 +1 @@
1
- {"version":3,"file":"flex-container.js","sourceRoot":"","sources":["../../../src/hosts/flex-container.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flex-container.js","sourceRoot":"","sources":["../../../src/hosts/flex-container.ts"],"names":[],"mappings":"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"}
@@ -8,8 +8,9 @@ export { CodeBlockHost, type CodeBlockProps } from "./codeblock.js";
8
8
  export { HStackHost, type HStackProps } from "./hstack.js";
9
9
  export { OverlayHost, type OverlayProps } from "./overlay.js";
10
10
  export { OverlayItemHost, type OverlayItemProps } from "./overlay-item.js";
11
- export { ScrollHost, type ScrollProps } from "./scroll.js";
11
+ export { ScrollHost, type ScrollAlign, type ScrollAlignX, type ScrollAlignY, type ScrollAxis, type ScrollLayoutChange, type ScrollProps, } from "./scroll.js";
12
12
  export { SingleChildHost } from "./single-child.js";
13
+ export { LeafHost } from "./leaf.js";
13
14
  export { SpacerHost, type SpacerProps } from "./spacer.js";
14
15
  export { RawTextHost, SpanHost, TextHost, type SpanProps, type SpanStyle, type StyledSpan, type TextProps, } from "./text.js";
15
16
  export { VStackHost, type VStackProps } from "./vstack.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hosts/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACtE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AASzC,OAAO,EAAE,WAAW,EAAsB,MAAM,WAAW,CAAA;AAI3D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACnE,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAC1E,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,EACN,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,SAAS,GACd,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAI1D,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,KAAK,QAAQ,CAavF,CAAA;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,GAAG,QAAQ,CAM/F;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,GAAG,WAAW,CAE9E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hosts/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACtE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AASzC,OAAO,EAAE,WAAW,EAAsB,MAAM,WAAW,CAAA;AAI3D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACnE,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAC1E,OAAO,EACN,UAAU,EACV,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,WAAW,GAChB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,EACN,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,SAAS,GACd,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAI1D,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,KAAK,QAAQ,CAavF,CAAA;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,GAAG,QAAQ,CAM/F;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,GAAG,WAAW,CAE9E"}
@@ -16,8 +16,9 @@ export { CodeBlockHost } from "./codeblock.js";
16
16
  export { HStackHost } from "./hstack.js";
17
17
  export { OverlayHost } from "./overlay.js";
18
18
  export { OverlayItemHost } from "./overlay-item.js";
19
- export { ScrollHost } from "./scroll.js";
19
+ export { ScrollHost, } from "./scroll.js";
20
20
  export { SingleChildHost } from "./single-child.js";
21
+ export { LeafHost } from "./leaf.js";
21
22
  export { SpacerHost } from "./spacer.js";
22
23
  export { RawTextHost, SpanHost, TextHost, } from "./text.js";
23
24
  export { VStackHost } from "./vstack.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hosts/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,EAAiB,MAAM,UAAU,CAAA;AACjD,OAAO,EAAE,UAAU,EAAsC,MAAM,aAAa,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAuB,MAAM,gBAAgB,CAAA;AACnE,OAAO,EAAE,UAAU,EAAoB,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAqB,MAAM,cAAc,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAyB,MAAM,mBAAmB,CAAA;AAC1E,OAAO,EAAE,UAAU,EAAoB,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAoB,MAAM,aAAa,CAAA;AAC1D,OAAO,EACN,WAAW,EACX,QAAQ,EACR,QAAQ,GAKR,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,UAAU,EAAoB,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAoB,MAAM,aAAa,CAAA;AAE1D,uDAAuD;AACvD,8DAA8D;AAC9D,MAAM,CAAC,MAAM,YAAY,GAAmE;IAC3F,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,QAAQ;IACd,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,UAAU;IAClB,GAAG,EAAE,OAAO;IACZ,MAAM,EAAE,UAAU;IAClB,SAAS,EAAE,aAAa;IACxB,MAAM,EAAE,UAAU;IAClB,OAAO,EAAE,WAAW;IACpB,WAAW,EAAE,eAAe;CAC5B,CAAA;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,KAAkB,EAAE,GAAgB;IACpF,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IAC/B,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAA;IACxD,CAAC;IACD,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AAC5B,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,GAAgB;IAChE,OAAO,IAAI,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;AAClC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hosts/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,EAAiB,MAAM,UAAU,CAAA;AACjD,OAAO,EAAE,UAAU,EAAsC,MAAM,aAAa,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAuB,MAAM,gBAAgB,CAAA;AACnE,OAAO,EAAE,UAAU,EAAoB,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAqB,MAAM,cAAc,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAyB,MAAM,mBAAmB,CAAA;AAC1E,OAAO,EACN,UAAU,GAOV,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,UAAU,EAAoB,MAAM,aAAa,CAAA;AAC1D,OAAO,EACN,WAAW,EACX,QAAQ,EACR,QAAQ,GAKR,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,UAAU,EAAoB,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAoB,MAAM,aAAa,CAAA;AAE1D,uDAAuD;AACvD,8DAA8D;AAC9D,MAAM,CAAC,MAAM,YAAY,GAAmE;IAC3F,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,QAAQ;IACd,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,UAAU;IAClB,GAAG,EAAE,OAAO;IACZ,MAAM,EAAE,UAAU;IAClB,SAAS,EAAE,aAAa;IACxB,MAAM,EAAE,UAAU;IAClB,OAAO,EAAE,WAAW;IACpB,WAAW,EAAE,eAAe;CAC5B,CAAA;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,KAAkB,EAAE,GAAgB;IACpF,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IAC/B,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAA;IACxD,CAAC;IACD,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AAC5B,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,GAAgB;IAChE,OAAO,IAAI,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;AAClC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { Rect, Size } from "../reconciler/types.js";
2
+ import type { HostInstance } from "../reconciler/types.js";
3
+ import { type HAlign, type VAlign } from "../utils/index.js";
4
+ type Alignment = {
5
+ h?: HAlign;
6
+ v?: VAlign;
7
+ };
8
+ export declare function layoutAlignedChildren(layoutRect: Rect, children: HostInstance[], cachedSizes: Size[], alignmentForChild: (child: HostInstance, index: number) => Alignment, startIndex?: number): void;
9
+ export {};
10
+ //# sourceMappingURL=layout-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout-helpers.d.ts","sourceRoot":"","sources":["../../../src/hosts/layout-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAoB,KAAK,MAAM,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE9E,KAAK,SAAS,GAAG;IAAE,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE3C,wBAAgB,qBAAqB,CACpC,UAAU,EAAE,IAAI,EAChB,QAAQ,EAAE,YAAY,EAAE,EACxB,WAAW,EAAE,IAAI,EAAE,EACnB,iBAAiB,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,KAAK,SAAS,EACpE,UAAU,SAAI,GACZ,IAAI,CAON"}
@@ -0,0 +1,10 @@
1
+ import { alignedChildRect } from "../utils/index.js";
2
+ export function layoutAlignedChildren(layoutRect, children, cachedSizes, alignmentForChild, startIndex = 0) {
3
+ for (let i = startIndex; i < children.length; i++) {
4
+ const child = children[i];
5
+ const size = cachedSizes[i] ?? child.measure(layoutRect.w, layoutRect.h);
6
+ const alignment = alignmentForChild(child, i);
7
+ child.layout(alignedChildRect(layoutRect, size, alignment.h ?? "center", alignment.v ?? "center"));
8
+ }
9
+ }
10
+ //# sourceMappingURL=layout-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout-helpers.js","sourceRoot":"","sources":["../../../src/hosts/layout-helpers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAA4B,MAAM,mBAAmB,CAAA;AAI9E,MAAM,UAAU,qBAAqB,CACpC,UAAgB,EAChB,QAAwB,EACxB,WAAmB,EACnB,iBAAoE,EACpE,UAAU,GAAG,CAAC;IAEd,KAAK,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnD,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;QACzB,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;QACxE,MAAM,SAAS,GAAG,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QAC7C,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,IAAI,QAAQ,EAAE,SAAS,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAA;IACnG,CAAC;AACF,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { HostInstance } from "../reconciler/types.js";
2
+ import { BaseHost } from "./base.js";
3
+ /**
4
+ * Base host that rejects children.
5
+ * Any attempted child insertion is ignored with a warning (once).
6
+ */
7
+ export declare abstract class LeafHost extends BaseHost {
8
+ private warned;
9
+ appendChild(child: HostInstance): void;
10
+ insertBefore(child: HostInstance, _before: HostInstance): void;
11
+ removeChild(child: HostInstance): void;
12
+ private rejectChild;
13
+ }
14
+ //# sourceMappingURL=leaf.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"leaf.d.ts","sourceRoot":"","sources":["../../../src/hosts/leaf.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC;;;GAGG;AACH,8BAAsB,QAAS,SAAQ,QAAQ;IAC9C,OAAO,CAAC,MAAM,CAAQ;IAEb,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAItC,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAI9D,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAU/C,OAAO,CAAC,WAAW;CAOnB"}
@@ -0,0 +1,31 @@
1
+ import { BaseHost } from "./base.js";
2
+ /**
3
+ * Base host that rejects children.
4
+ * Any attempted child insertion is ignored with a warning (once).
5
+ */
6
+ export class LeafHost extends BaseHost {
7
+ warned = false;
8
+ appendChild(child) {
9
+ this.rejectChild(child);
10
+ }
11
+ insertBefore(child, _before) {
12
+ this.rejectChild(child);
13
+ }
14
+ removeChild(child) {
15
+ const idx = this.children.indexOf(child);
16
+ if (idx >= 0) {
17
+ this.children.splice(idx, 1);
18
+ }
19
+ if (child.parent === this) {
20
+ child.parent = null;
21
+ }
22
+ }
23
+ rejectChild(child) {
24
+ if (!this.warned) {
25
+ console.warn(`[effect-tui] <${this.type}> does not support children; child ignored.`);
26
+ this.warned = true;
27
+ }
28
+ child.parent = null;
29
+ }
30
+ }
31
+ //# sourceMappingURL=leaf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"leaf.js","sourceRoot":"","sources":["../../../src/hosts/leaf.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC;;;GAGG;AACH,MAAM,OAAgB,QAAS,SAAQ,QAAQ;IACtC,MAAM,GAAG,KAAK,CAAA;IAEb,WAAW,CAAC,KAAmB;QACvC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC;IAEQ,YAAY,CAAC,KAAmB,EAAE,OAAqB;QAC/D,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC;IAEQ,WAAW,CAAC,KAAmB;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACxC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;YACd,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QAC7B,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YAC3B,KAAK,CAAC,MAAM,GAAG,IAAI,CAAA;QACpB,CAAC;IACF,CAAC;IAEO,WAAW,CAAC,KAAmB;QACtC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,6CAA6C,CAAC,CAAA;YACrF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;QACnB,CAAC;QACD,KAAK,CAAC,MAAM,GAAG,IAAI,CAAA;IACpB,CAAC;CACD"}
@@ -1 +1 @@
1
- {"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../src/hosts/overlay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEtE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAGpC,MAAM,WAAW,YAAa,SAAQ,WAAW;CAAG;AAEpD,qBAAa,WAAY,SAAQ,QAAQ;IACxC,OAAO,CAAC,WAAW,CAAa;gBAEpB,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW;IAKxC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAwBzC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAoBxB,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;CAM3D"}
1
+ {"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../src/hosts/overlay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAIpC,MAAM,WAAW,YAAa,SAAQ,WAAW;CAAG;AAEpD,qBAAa,WAAY,SAAQ,QAAQ;IACxC,OAAO,CAAC,WAAW,CAAa;gBAEpB,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW;IAKxC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAwBzC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAsBxB,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;CAM3D"}
@@ -15,8 +15,8 @@
15
15
  * </Overlay>
16
16
  * ```
17
17
  */
18
- import { alignedChildRect } from "../utils/index.js";
19
18
  import { BaseHost } from "./base.js";
19
+ import { layoutAlignedChildren } from "./layout-helpers.js";
20
20
  export class OverlayHost extends BaseHost {
21
21
  cachedSizes = [];
22
22
  constructor(props, ctx) {
@@ -50,13 +50,10 @@ export class OverlayHost extends BaseHost {
50
50
  baseChild.layout(layoutRect);
51
51
  }
52
52
  // Layout overlay children with their alignment
53
- for (let i = 1; i < this.children.length; i++) {
54
- const child = this.children[i];
55
- const size = this.cachedSizes[i] ?? child.measure(layoutRect.w, layoutRect.h);
53
+ layoutAlignedChildren(layoutRect, this.children, this.cachedSizes, (child) => {
56
54
  // Read alignment from OverlayItemHost (use type check, not instanceof, for bundler compatibility)
57
- const alignment = child.type === "overlayItem" ? child.alignment : {};
58
- child.layout(alignedChildRect(layoutRect, size, alignment.h ?? "center", alignment.v ?? "center"));
59
- }
55
+ return child.type === "overlayItem" ? child.alignment : {};
56
+ }, 1);
60
57
  }
61
58
  render(buffer, palette) {
62
59
  // Render all children in order (base first, then overlays)
@@ -1 +1 @@
1
- {"version":3,"file":"overlay.js","sourceRoot":"","sources":["../../../src/hosts/overlay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAKpC,MAAM,OAAO,WAAY,SAAQ,QAAQ;IAChC,WAAW,GAAW,EAAE,CAAA;IAEhC,YAAY,KAAmB,EAAE,GAAgB;QAChD,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;QAC5B,IAAI,CAAC,WAAW,CAAC,KAA2C,CAAC,CAAA;IAC9D,CAAC;IAEQ,OAAO,CAAC,IAAY,EAAE,IAAY;QAC1C,yDAAyD;QACzD,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAEtD,uCAAuC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAClC,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QAC5C,CAAC;QAED,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;QAChE,IAAI,CAAC,WAAW,GAAG,CAAC,QAAQ,CAAC,CAAA;QAE7B,8CAA8C;QAC9C,iEAAiE;QACjE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;YAC7D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5B,CAAC;QAED,4DAA4D;QAC5D,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAA;IACtC,CAAC;IAEQ,MAAM,CAAC,IAAU;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAA;QAEnD,qCAAqC;QACrC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAClC,IAAI,SAAS,EAAE,CAAC;YACf,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAC7B,CAAC;QAED,+CAA+C;QAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;YAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;YAE7E,kGAAkG;YAClG,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAE,KAAyB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAA;YAC1F,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,IAAI,QAAQ,EAAE,SAAS,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAA;QACnG,CAAC;IACF,CAAC;IAEQ,MAAM,CAAC,MAAkB,EAAE,OAAgB;QACnD,2DAA2D;QAC3D,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QACjD,CAAC;IACF,CAAC;CACD"}
1
+ {"version":3,"file":"overlay.js","sourceRoot":"","sources":["../../../src/hosts/overlay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAK3D,MAAM,OAAO,WAAY,SAAQ,QAAQ;IAChC,WAAW,GAAW,EAAE,CAAA;IAEhC,YAAY,KAAmB,EAAE,GAAgB;QAChD,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;QAC5B,IAAI,CAAC,WAAW,CAAC,KAA2C,CAAC,CAAA;IAC9D,CAAC;IAEQ,OAAO,CAAC,IAAY,EAAE,IAAY;QAC1C,yDAAyD;QACzD,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAEtD,uCAAuC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAClC,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QAC5C,CAAC;QAED,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;QAChE,IAAI,CAAC,WAAW,GAAG,CAAC,QAAQ,CAAC,CAAA;QAE7B,8CAA8C;QAC9C,iEAAiE;QACjE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;YAC7D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5B,CAAC;QAED,4DAA4D;QAC5D,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAA;IACtC,CAAC;IAEQ,MAAM,CAAC,IAAU;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAA;QAEnD,qCAAqC;QACrC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAClC,IAAI,SAAS,EAAE,CAAC;YACf,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAC7B,CAAC;QAED,+CAA+C;QAC/C,qBAAqB,CACpB,UAAU,EACV,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,EAChB,CAAC,KAAK,EAAE,EAAE;YACT,kGAAkG;YAClG,OAAO,KAAK,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAE,KAAyB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAA;QAChF,CAAC,EACD,CAAC,CACD,CAAA;IACF,CAAC;IAEQ,MAAM,CAAC,MAAkB,EAAE,OAAgB;QACnD,2DAA2D;QAC3D,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QACjD,CAAC;IACF,CAAC;CACD"}
@@ -1,15 +1,48 @@
1
1
  import type { CellBuffer, Color, Palette } from "@effect-tui/core";
2
2
  import type { CommonProps, HostContext, Rect, Size } from "../reconciler/types.js";
3
3
  import { SingleChildHost } from "./single-child.js";
4
+ export type ScrollAxis = "vertical" | "horizontal" | "both";
5
+ export type ScrollAlignX = "left" | "center" | "right";
6
+ export type ScrollAlignY = "top" | "center" | "bottom";
7
+ export type ScrollAlign = ScrollAlignX | ScrollAlignY | {
8
+ x?: ScrollAlignX;
9
+ y?: ScrollAlignY;
10
+ };
11
+ export interface ScrollLayoutChange {
12
+ content: {
13
+ width: number;
14
+ height: number;
15
+ };
16
+ viewport: {
17
+ width: number;
18
+ height: number;
19
+ };
20
+ offset: {
21
+ x: number;
22
+ y: number;
23
+ };
24
+ rect: {
25
+ x: number;
26
+ y: number;
27
+ w: number;
28
+ h: number;
29
+ };
30
+ axis: ScrollAxis;
31
+ }
4
32
  export interface ScrollProps extends CommonProps {
5
33
  /** Scroll axis: "vertical" (default), "horizontal", or "both" */
6
- axis?: "vertical" | "horizontal" | "both";
7
- /** Current scroll offset in pixels (0 = start) */
8
- offset?: number;
9
- /** Horizontal offset when axis="both" */
34
+ axis?: ScrollAxis;
35
+ /** Vertical scroll offset in pixels (0 = top) */
36
+ offsetY?: number;
37
+ /** Horizontal scroll offset in pixels (0 = left) */
10
38
  offsetX?: number;
11
- /** Alignment when content is smaller than viewport */
12
- align?: "start" | "end";
39
+ /**
40
+ * Alignment when content is smaller than viewport.
41
+ * - axis="vertical": "top" | "center" | "bottom"
42
+ * - axis="horizontal": "left" | "center" | "right"
43
+ * - axis="both": { x, y }
44
+ */
45
+ align?: ScrollAlign;
13
46
  /** Background color for the scroll viewport */
14
47
  bg?: Color;
15
48
  /** Whether to show scrollbar indicators */
@@ -19,31 +52,19 @@ export interface ScrollProps extends CommonProps {
19
52
  * This is handled in the host itself for instant updates (no React roundtrip).
20
53
  */
21
54
  sticky?: boolean;
22
- /** Called when content size is measured (for useScroll) */
23
- onContentSize?: (width: number, height: number) => void;
24
- /** Called when viewport size changes (for useScroll) */
25
- onViewportSize?: (width: number, height: number) => void;
26
- /** Called when effective offset changes (for syncing with useScroll when sticky adjusts) */
27
- onEffectiveOffset?: (offset: number) => void;
28
- /** Called when effective horizontal offset changes */
29
- onEffectiveOffsetX?: (offsetX: number) => void;
30
- /** Called when layout rect changes (for hit testing) */
31
- onRect?: (x: number, y: number, w: number, h: number) => void;
55
+ /** Called when scroll layout changes (content/viewport/offset/rect). */
56
+ onScrollLayoutChange?: (event: ScrollLayoutChange) => void;
32
57
  }
33
58
  export declare class ScrollHost extends SingleChildHost {
34
- axis: "vertical" | "horizontal" | "both";
35
- offset: number;
59
+ axis: ScrollAxis;
60
+ offsetY: number;
36
61
  offsetX: number;
37
- align: "start" | "end";
62
+ align?: ScrollAlign;
38
63
  bg?: Color;
39
64
  showScrollbar: boolean;
40
65
  sticky: boolean;
41
66
  greedy: boolean | number | undefined;
42
- onContentSize?: (width: number, height: number) => void;
43
- onViewportSize?: (width: number, height: number) => void;
44
- onEffectiveOffset?: (offset: number) => void;
45
- onEffectiveOffsetX?: (offsetX: number) => void;
46
- onRect?: (x: number, y: number, w: number, h: number) => void;
67
+ onScrollLayoutChange?: (event: ScrollLayoutChange) => void;
47
68
  private contentWidth;
48
69
  private contentHeight;
49
70
  private lastReportedContentW;
@@ -54,6 +75,8 @@ export declare class ScrollHost extends SingleChildHost {
54
75
  private lastRectY;
55
76
  private lastRectW;
56
77
  private lastRectH;
78
+ private lastOffsetY;
79
+ private lastOffsetX;
57
80
  private wasAtEnd;
58
81
  private wasAtEndX;
59
82
  private effectiveOffset;
@@ -1 +1 @@
1
- {"version":3,"file":"scroll.d.ts","sourceRoot":"","sources":["../../../src/hosts/scroll.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scroll.d.ts","sourceRoot":"","sources":["../../../src/hosts/scroll.ts"],"names":[],"mappings":"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"}