@effect-tui/react 0.15.2 → 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.
- package/README.md +2 -2
- package/dist/src/components/ListView.d.ts +4 -4
- package/dist/src/components/ListView.d.ts.map +1 -1
- package/dist/src/components/ListView.js +16 -17
- package/dist/src/components/ListView.js.map +1 -1
- package/dist/src/console/ConsolePopover.d.ts +7 -1
- package/dist/src/console/ConsolePopover.d.ts.map +1 -1
- package/dist/src/console/ConsolePopover.js +55 -74
- package/dist/src/console/ConsolePopover.js.map +1 -1
- package/dist/src/debug/DebugOverlay.d.ts.map +1 -1
- package/dist/src/debug/DebugOverlay.js +3 -57
- package/dist/src/debug/DebugOverlay.js.map +1 -1
- package/dist/src/debug/DiagnosticsPanel.js +1 -1
- package/dist/src/debug/DiagnosticsPanel.js.map +1 -1
- package/dist/src/dev.d.ts +5 -117
- package/dist/src/dev.d.ts.map +1 -1
- package/dist/src/dev.js +3 -333
- package/dist/src/dev.js.map +1 -1
- package/dist/src/hooks/use-scroll.d.ts +31 -35
- package/dist/src/hooks/use-scroll.d.ts.map +1 -1
- package/dist/src/hooks/use-scroll.js +51 -90
- package/dist/src/hooks/use-scroll.js.map +1 -1
- package/dist/src/hosts/canvas.d.ts +2 -2
- package/dist/src/hosts/canvas.d.ts.map +1 -1
- package/dist/src/hosts/canvas.js +8 -10
- package/dist/src/hosts/canvas.js.map +1 -1
- package/dist/src/hosts/codeblock.d.ts +2 -2
- package/dist/src/hosts/codeblock.js +2 -2
- package/dist/src/hosts/flex-container.d.ts +1 -1
- package/dist/src/hosts/flex-container.d.ts.map +1 -1
- package/dist/src/hosts/flex-container.js +3 -3
- package/dist/src/hosts/flex-container.js.map +1 -1
- package/dist/src/hosts/index.d.ts +2 -1
- package/dist/src/hosts/index.d.ts.map +1 -1
- package/dist/src/hosts/index.js +2 -1
- package/dist/src/hosts/index.js.map +1 -1
- package/dist/src/hosts/layout-helpers.d.ts +10 -0
- package/dist/src/hosts/layout-helpers.d.ts.map +1 -0
- package/dist/src/hosts/layout-helpers.js +10 -0
- package/dist/src/hosts/layout-helpers.js.map +1 -0
- package/dist/src/hosts/leaf.d.ts +14 -0
- package/dist/src/hosts/leaf.d.ts.map +1 -0
- package/dist/src/hosts/leaf.js +31 -0
- package/dist/src/hosts/leaf.js.map +1 -0
- package/dist/src/hosts/overlay.d.ts.map +1 -1
- package/dist/src/hosts/overlay.js +4 -7
- package/dist/src/hosts/overlay.js.map +1 -1
- package/dist/src/hosts/scroll.d.ts +47 -24
- package/dist/src/hosts/scroll.d.ts.map +1 -1
- package/dist/src/hosts/scroll.js +68 -51
- package/dist/src/hosts/scroll.js.map +1 -1
- package/dist/src/hosts/spacer.d.ts +2 -2
- package/dist/src/hosts/spacer.js +2 -2
- package/dist/src/hosts/text.d.ts +2 -3
- package/dist/src/hosts/text.d.ts.map +1 -1
- package/dist/src/hosts/text.js +5 -61
- package/dist/src/hosts/text.js.map +1 -1
- package/dist/src/hosts/vstack.js +1 -1
- package/dist/src/hosts/vstack.js.map +1 -1
- package/dist/src/hosts/zstack.d.ts +1 -1
- package/dist/src/hosts/zstack.d.ts.map +1 -1
- package/dist/src/hosts/zstack.js +6 -6
- package/dist/src/hosts/zstack.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/internal/dev/hmr.d.ts +20 -0
- package/dist/src/internal/dev/hmr.d.ts.map +1 -0
- package/dist/src/internal/dev/hmr.js +93 -0
- package/dist/src/internal/dev/hmr.js.map +1 -0
- package/dist/src/internal/dev/runtime.d.ts +24 -0
- package/dist/src/internal/dev/runtime.d.ts.map +1 -0
- package/dist/src/internal/dev/runtime.js +135 -0
- package/dist/src/internal/dev/runtime.js.map +1 -0
- package/dist/src/internal/dev/ui.d.ts +13 -0
- package/dist/src/internal/dev/ui.d.ts.map +1 -0
- package/dist/src/internal/dev/ui.js +51 -0
- package/dist/src/internal/dev/ui.js.map +1 -0
- package/dist/src/internal/renderer/context.d.ts +9 -0
- package/dist/src/internal/renderer/context.d.ts.map +1 -0
- package/dist/src/internal/renderer/context.js +22 -0
- package/dist/src/internal/renderer/context.js.map +1 -0
- package/dist/src/internal/renderer/core/FrameBuilder.d.ts +18 -0
- package/dist/src/internal/renderer/core/FrameBuilder.d.ts.map +1 -0
- package/dist/src/internal/renderer/core/FrameBuilder.js +40 -0
- package/dist/src/internal/renderer/core/FrameBuilder.js.map +1 -0
- package/dist/src/internal/renderer/core/RendererState.d.ts +41 -0
- package/dist/src/internal/renderer/core/RendererState.d.ts.map +1 -0
- package/dist/src/internal/renderer/core/RendererState.js +70 -0
- package/dist/src/internal/renderer/core/RendererState.js.map +1 -0
- package/dist/src/internal/renderer/core/index.d.ts +3 -0
- package/dist/src/internal/renderer/core/index.d.ts.map +1 -0
- package/dist/src/internal/renderer/core/index.js +3 -0
- package/dist/src/internal/renderer/core/index.js.map +1 -0
- package/dist/src/internal/renderer/index.d.ts +40 -0
- package/dist/src/internal/renderer/index.d.ts.map +1 -0
- package/dist/src/internal/renderer/index.js +518 -0
- package/dist/src/internal/renderer/index.js.map +1 -0
- package/dist/src/internal/renderer/input/InputProcessor.d.ts +30 -0
- package/dist/src/internal/renderer/input/InputProcessor.d.ts.map +1 -0
- package/dist/src/internal/renderer/input/InputProcessor.js +122 -0
- package/dist/src/internal/renderer/input/InputProcessor.js.map +1 -0
- package/dist/src/internal/renderer/input/index.d.ts +2 -0
- package/dist/src/internal/renderer/input/index.d.ts.map +1 -0
- package/dist/src/internal/renderer/input/index.js +2 -0
- package/dist/src/internal/renderer/input/index.js.map +1 -0
- package/dist/src/internal/renderer/lifecycle/EventBus.d.ts +42 -0
- package/dist/src/internal/renderer/lifecycle/EventBus.d.ts.map +1 -0
- package/dist/src/internal/renderer/lifecycle/EventBus.js +97 -0
- package/dist/src/internal/renderer/lifecycle/EventBus.js.map +1 -0
- package/dist/src/internal/renderer/lifecycle/ProcessLifecycle.d.ts +13 -0
- package/dist/src/internal/renderer/lifecycle/ProcessLifecycle.d.ts.map +1 -0
- package/dist/src/internal/renderer/lifecycle/ProcessLifecycle.js +111 -0
- package/dist/src/internal/renderer/lifecycle/ProcessLifecycle.js.map +1 -0
- package/dist/src/internal/renderer/lifecycle/RenderCache.d.ts +3 -0
- package/dist/src/internal/renderer/lifecycle/RenderCache.d.ts.map +1 -0
- package/dist/src/internal/renderer/lifecycle/RenderCache.js +9 -0
- package/dist/src/internal/renderer/lifecycle/RenderCache.js.map +1 -0
- package/dist/src/internal/renderer/lifecycle/index.d.ts +4 -0
- package/dist/src/internal/renderer/lifecycle/index.d.ts.map +1 -0
- package/dist/src/internal/renderer/lifecycle/index.js +4 -0
- package/dist/src/internal/renderer/lifecycle/index.js.map +1 -0
- package/dist/src/internal/renderer/modes/FullscreenRenderer.d.ts +12 -0
- package/dist/src/internal/renderer/modes/FullscreenRenderer.d.ts.map +1 -0
- package/dist/src/internal/renderer/modes/FullscreenRenderer.js +54 -0
- package/dist/src/internal/renderer/modes/FullscreenRenderer.js.map +1 -0
- package/dist/src/internal/renderer/modes/InlineRenderer.d.ts +25 -0
- package/dist/src/internal/renderer/modes/InlineRenderer.d.ts.map +1 -0
- package/dist/src/internal/renderer/modes/InlineRenderer.js +166 -0
- package/dist/src/internal/renderer/modes/InlineRenderer.js.map +1 -0
- package/dist/src/internal/renderer/modes/RendererMode.d.ts +42 -0
- package/dist/src/internal/renderer/modes/RendererMode.d.ts.map +1 -0
- package/dist/src/internal/renderer/modes/RendererMode.js +2 -0
- package/dist/src/internal/renderer/modes/RendererMode.js.map +1 -0
- package/dist/src/internal/renderer/modes/StaticContentRenderer.d.ts +25 -0
- package/dist/src/internal/renderer/modes/StaticContentRenderer.d.ts.map +1 -0
- package/dist/src/internal/renderer/modes/StaticContentRenderer.js +49 -0
- package/dist/src/internal/renderer/modes/StaticContentRenderer.js.map +1 -0
- package/dist/src/internal/renderer/modes/index.d.ts +5 -0
- package/dist/src/internal/renderer/modes/index.d.ts.map +1 -0
- package/dist/src/internal/renderer/modes/index.js +4 -0
- package/dist/src/internal/renderer/modes/index.js.map +1 -0
- package/dist/src/internal/renderer/terminal/KeyboardCapabilityProbe.d.ts +13 -0
- package/dist/src/internal/renderer/terminal/KeyboardCapabilityProbe.d.ts.map +1 -0
- package/dist/src/internal/renderer/terminal/KeyboardCapabilityProbe.js +75 -0
- package/dist/src/internal/renderer/terminal/KeyboardCapabilityProbe.js.map +1 -0
- package/dist/src/internal/renderer/terminal/TerminalSetup.d.ts +29 -0
- package/dist/src/internal/renderer/terminal/TerminalSetup.d.ts.map +1 -0
- package/dist/src/internal/renderer/terminal/TerminalSetup.js +82 -0
- package/dist/src/internal/renderer/terminal/TerminalSetup.js.map +1 -0
- package/dist/src/internal/renderer/terminal/index.d.ts +3 -0
- package/dist/src/internal/renderer/terminal/index.d.ts.map +1 -0
- package/dist/src/internal/renderer/terminal/index.js +3 -0
- package/dist/src/internal/renderer/terminal/index.js.map +1 -0
- package/dist/src/internal/renderer/types.d.ts +118 -0
- package/dist/src/internal/renderer/types.d.ts.map +1 -0
- package/dist/src/internal/renderer/types.js +2 -0
- package/dist/src/internal/renderer/types.js.map +1 -0
- package/dist/src/renderer-context.d.ts +1 -8
- package/dist/src/renderer-context.d.ts.map +1 -1
- package/dist/src/renderer-context.js +1 -21
- package/dist/src/renderer-context.js.map +1 -1
- package/dist/src/renderer-types.d.ts +1 -115
- package/dist/src/renderer-types.d.ts.map +1 -1
- package/dist/src/renderer.d.ts +1 -31
- package/dist/src/renderer.d.ts.map +1 -1
- package/dist/src/renderer.js +1 -495
- package/dist/src/renderer.js.map +1 -1
- package/dist/src/test/render-tui.d.ts +3 -3
- package/dist/src/test/render-tui.d.ts.map +1 -1
- package/dist/src/test/render-tui.js +16 -9
- package/dist/src/test/render-tui.js.map +1 -1
- package/dist/src/utils/alignment.d.ts +1 -1
- package/dist/src/utils/alignment.d.ts.map +1 -1
- package/dist/src/utils/alignment.js +0 -2
- package/dist/src/utils/alignment.js.map +1 -1
- package/dist/src/utils/console-helpers.d.ts +19 -0
- package/dist/src/utils/console-helpers.d.ts.map +1 -0
- package/dist/src/utils/console-helpers.js +61 -0
- package/dist/src/utils/console-helpers.js.map +1 -0
- package/dist/src/utils/index.d.ts +1 -1
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +1 -1
- package/dist/src/utils/index.js.map +1 -1
- package/dist/src/utils/styles.d.ts +8 -1
- package/dist/src/utils/styles.d.ts.map +1 -1
- package/dist/src/utils/styles.js +10 -8
- package/dist/src/utils/styles.js.map +1 -1
- package/dist/src/utils/text-wrap.d.ts +5 -0
- package/dist/src/utils/text-wrap.d.ts.map +1 -1
- package/dist/src/utils/text-wrap.js +110 -48
- package/dist/src/utils/text-wrap.js.map +1 -1
- package/dist/src/visualize/index.js +1 -1
- package/dist/src/visualize/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/components/ListView.tsx +21 -23
- package/src/console/ConsolePopover.tsx +124 -107
- package/src/debug/DebugOverlay.ts +15 -74
- package/src/debug/DiagnosticsPanel.tsx +1 -1
- package/src/dev.tsx +5 -458
- package/src/hooks/use-scroll.ts +85 -145
- package/src/hosts/canvas.ts +8 -11
- package/src/hosts/codeblock.ts +2 -2
- package/src/hosts/flex-container.ts +4 -4
- package/src/hosts/index.ts +10 -1
- package/src/hosts/layout-helpers.ts +20 -0
- package/src/hosts/leaf.ts +36 -0
- package/src/hosts/overlay.ts +11 -9
- package/src/hosts/scroll.ts +94 -69
- package/src/hosts/spacer.ts +2 -2
- package/src/hosts/text.ts +5 -58
- package/src/hosts/vstack.ts +1 -1
- package/src/hosts/zstack.ts +7 -7
- package/src/index.ts +1 -1
- package/src/internal/dev/hmr.ts +101 -0
- package/src/internal/dev/runtime.ts +170 -0
- package/src/internal/dev/ui.tsx +87 -0
- package/src/internal/renderer/context.ts +27 -0
- package/src/{renderer → internal/renderer}/core/FrameBuilder.ts +2 -2
- package/src/internal/renderer/index.ts +656 -0
- package/src/{renderer → internal/renderer}/input/InputProcessor.ts +10 -1
- package/src/{renderer → internal/renderer}/lifecycle/EventBus.ts +9 -1
- package/src/internal/renderer/lifecycle/ProcessLifecycle.ts +125 -0
- package/src/internal/renderer/lifecycle/index.ts +3 -0
- package/src/{renderer → internal/renderer}/modes/InlineRenderer.ts +5 -2
- package/src/{renderer → internal/renderer}/modes/RendererMode.ts +1 -1
- package/src/{renderer → internal/renderer}/modes/StaticContentRenderer.ts +5 -2
- package/src/internal/renderer/terminal/KeyboardCapabilityProbe.ts +91 -0
- package/src/{renderer/lifecycle → internal/renderer/terminal}/TerminalSetup.ts +4 -22
- package/src/internal/renderer/terminal/index.ts +2 -0
- package/src/internal/renderer/types.ts +125 -0
- package/src/renderer-context.ts +1 -27
- package/src/renderer-types.ts +10 -123
- package/src/renderer.ts +1 -619
- package/src/test/render-tui.ts +16 -10
- package/src/utils/alignment.ts +1 -3
- package/src/utils/console-helpers.ts +86 -0
- package/src/utils/index.ts +1 -1
- package/src/utils/styles.ts +16 -4
- package/src/utils/text-wrap.ts +139 -48
- package/src/visualize/index.tsx +1 -1
- package/src/renderer/lifecycle/ResizeManager.ts +0 -65
- package/src/renderer/lifecycle/index.ts +0 -4
- /package/src/{renderer → internal/renderer}/core/RendererState.ts +0 -0
- /package/src/{renderer → internal/renderer}/core/index.ts +0 -0
- /package/src/{renderer → internal/renderer}/input/index.ts +0 -0
- /package/src/{renderer → internal/renderer}/lifecycle/RenderCache.ts +0 -0
- /package/src/{renderer → internal/renderer}/modes/FullscreenRenderer.ts +0 -0
- /package/src/{renderer → internal/renderer}/modes/index.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flex-container.js","sourceRoot":"","sources":["../../../src/hosts/flex-container.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAEnD,OAAO,EAGN,UAAU,EACV,WAAW,EAGX,cAAc,EACd,cAAc,GACd,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAcpC,gDAAgD;AAChD,SAAS,eAAe,CAAqB,IAAO,EAAE,SAA4B;IACjF,IAAI,SAAS,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAA;IAC3C,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACzB,OAAO,SAAS,KAAK,
|
|
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,
|
|
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"}
|
package/dist/src/hosts/index.js
CHANGED
|
@@ -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,
|
|
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;
|
|
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
|
-
|
|
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
|
-
|
|
58
|
-
|
|
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,
|
|
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?:
|
|
7
|
-
/**
|
|
8
|
-
|
|
9
|
-
/** Horizontal offset
|
|
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
|
-
/**
|
|
12
|
-
|
|
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
|
|
23
|
-
|
|
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:
|
|
35
|
-
|
|
59
|
+
axis: ScrollAxis;
|
|
60
|
+
offsetY: number;
|
|
36
61
|
offsetX: number;
|
|
37
|
-
align
|
|
62
|
+
align?: ScrollAlign;
|
|
38
63
|
bg?: Color;
|
|
39
64
|
showScrollbar: boolean;
|
|
40
65
|
sticky: boolean;
|
|
41
66
|
greedy: boolean | number | undefined;
|
|
42
|
-
|
|
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":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAElF,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,MAAM,
|
|
1
|
+
{"version":3,"file":"scroll.d.ts","sourceRoot":"","sources":["../../../src/hosts/scroll.ts"],"names":[],"mappings":"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"}
|
package/dist/src/hosts/scroll.js
CHANGED
|
@@ -1,20 +1,36 @@
|
|
|
1
1
|
import { fillRectWithInheritedBg } from "../utils/index.js";
|
|
2
2
|
import { SingleChildHost } from "./single-child.js";
|
|
3
|
+
const isAlignX = (value) => value === "left" || value === "center" || value === "right";
|
|
4
|
+
const isAlignY = (value) => value === "top" || value === "center" || value === "bottom";
|
|
5
|
+
const resolveAlign = (align) => {
|
|
6
|
+
let x;
|
|
7
|
+
let y;
|
|
8
|
+
if (typeof align === "string") {
|
|
9
|
+
if (isAlignX(align))
|
|
10
|
+
x = align;
|
|
11
|
+
if (isAlignY(align))
|
|
12
|
+
y = align;
|
|
13
|
+
}
|
|
14
|
+
else if (align) {
|
|
15
|
+
x = align.x;
|
|
16
|
+
y = align.y;
|
|
17
|
+
}
|
|
18
|
+
return {
|
|
19
|
+
x: x ?? "left",
|
|
20
|
+
y: y ?? "top",
|
|
21
|
+
};
|
|
22
|
+
};
|
|
3
23
|
export class ScrollHost extends SingleChildHost {
|
|
4
24
|
axis = "vertical";
|
|
5
|
-
|
|
25
|
+
offsetY = 0;
|
|
6
26
|
offsetX = 0;
|
|
7
|
-
align
|
|
27
|
+
align;
|
|
8
28
|
bg;
|
|
9
29
|
showScrollbar = true;
|
|
10
30
|
sticky = false;
|
|
11
31
|
// Scroll is greedy by default - expands to fill available space
|
|
12
32
|
greedy = 1;
|
|
13
|
-
|
|
14
|
-
onViewportSize;
|
|
15
|
-
onEffectiveOffset;
|
|
16
|
-
onEffectiveOffsetX;
|
|
17
|
-
onRect;
|
|
33
|
+
onScrollLayoutChange;
|
|
18
34
|
// Measured content dimensions (full size before clipping)
|
|
19
35
|
contentWidth = 0;
|
|
20
36
|
contentHeight = 0;
|
|
@@ -27,6 +43,8 @@ export class ScrollHost extends SingleChildHost {
|
|
|
27
43
|
lastRectY = -1;
|
|
28
44
|
lastRectW = -1;
|
|
29
45
|
lastRectH = -1;
|
|
46
|
+
lastOffsetY = -1;
|
|
47
|
+
lastOffsetX = -1;
|
|
30
48
|
// Track if we were at end (for sticky behavior)
|
|
31
49
|
wasAtEnd = true;
|
|
32
50
|
wasAtEndX = true;
|
|
@@ -55,7 +73,7 @@ export class ScrollHost extends SingleChildHost {
|
|
|
55
73
|
const childSize = child.measure(childMaxW, childMaxH);
|
|
56
74
|
this.contentWidth = childSize.w;
|
|
57
75
|
this.contentHeight = childSize.h;
|
|
58
|
-
// Note:
|
|
76
|
+
// Note: onScrollLayoutChange callback is deferred to layout() to keep measure() pure
|
|
59
77
|
}
|
|
60
78
|
// Report natural content size (clamped to constrained bounds)
|
|
61
79
|
// Greedy expansion happens in layout phase via layoutFlex
|
|
@@ -65,29 +83,13 @@ export class ScrollHost extends SingleChildHost {
|
|
|
65
83
|
}
|
|
66
84
|
layout(rect) {
|
|
67
85
|
const layoutRect = this.layoutWithConstraints(rect);
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
this.onContentSize?.(this.contentWidth, this.contentHeight);
|
|
73
|
-
}
|
|
74
|
-
// Report viewport size if changed (for useScroll hook)
|
|
75
|
-
if (this.onViewportSize && (layoutRect.w !== this.lastViewportW || layoutRect.h !== this.lastViewportH)) {
|
|
76
|
-
this.lastViewportW = layoutRect.w;
|
|
77
|
-
this.lastViewportH = layoutRect.h;
|
|
78
|
-
this.onViewportSize(layoutRect.w, layoutRect.h);
|
|
79
|
-
}
|
|
80
|
-
// Report rect if position changed (for hit testing)
|
|
81
|
-
if (layoutRect.x !== this.lastRectX ||
|
|
86
|
+
const { x: alignX, y: alignY } = resolveAlign(this.align);
|
|
87
|
+
const contentChanged = this.contentWidth !== this.lastReportedContentW || this.contentHeight !== this.lastReportedContentH;
|
|
88
|
+
const viewportChanged = layoutRect.w !== this.lastViewportW || layoutRect.h !== this.lastViewportH;
|
|
89
|
+
const rectChanged = layoutRect.x !== this.lastRectX ||
|
|
82
90
|
layoutRect.y !== this.lastRectY ||
|
|
83
91
|
layoutRect.w !== this.lastRectW ||
|
|
84
|
-
layoutRect.h !== this.lastRectH
|
|
85
|
-
this.lastRectX = layoutRect.x;
|
|
86
|
-
this.lastRectY = layoutRect.y;
|
|
87
|
-
this.lastRectW = layoutRect.w;
|
|
88
|
-
this.lastRectH = layoutRect.h;
|
|
89
|
-
this.onRect?.(layoutRect.x, layoutRect.y, layoutRect.w, layoutRect.h);
|
|
90
|
-
}
|
|
92
|
+
layoutRect.h !== this.lastRectH;
|
|
91
93
|
const child = this.child;
|
|
92
94
|
if (!child)
|
|
93
95
|
return;
|
|
@@ -95,14 +97,14 @@ export class ScrollHost extends SingleChildHost {
|
|
|
95
97
|
const maxScrollY = Math.max(0, this.contentHeight - layoutRect.h);
|
|
96
98
|
const maxScrollX = Math.max(0, this.contentWidth - layoutRect.w);
|
|
97
99
|
// Start with the offset from props (controlled by useScroll)
|
|
98
|
-
let scrollY = this.
|
|
100
|
+
let scrollY = this.offsetY;
|
|
99
101
|
let scrollX = this.offsetX;
|
|
100
102
|
// Sticky scroll logic (vertical):
|
|
101
103
|
// - If user manually scrolled away from end (offset < effectiveOffset), unstick
|
|
102
104
|
// - If at end (or was at end and content grew), stay stuck
|
|
103
105
|
if (this.sticky && (this.axis === "vertical" || this.axis === "both")) {
|
|
104
106
|
// Detect if user scrolled away (offset prop is less than where we rendered)
|
|
105
|
-
const userScrolledAway = this.
|
|
107
|
+
const userScrolledAway = this.offsetY < this.effectiveOffset - 1;
|
|
106
108
|
if (userScrolledAway) {
|
|
107
109
|
// User scrolled up - unstick
|
|
108
110
|
this.wasAtEnd = false;
|
|
@@ -129,25 +131,25 @@ export class ScrollHost extends SingleChildHost {
|
|
|
129
131
|
scrollY = Math.max(0, Math.min(maxScrollY, scrollY));
|
|
130
132
|
scrollX = Math.max(0, Math.min(maxScrollX, scrollX));
|
|
131
133
|
// Store effective offsets for rendering (scrollbar position)
|
|
132
|
-
// Report back if clamped or changed (keep controller in sync)
|
|
133
|
-
if (scrollY !== this.effectiveOffset || scrollY !== this.offset) {
|
|
134
|
-
this.onEffectiveOffset?.(scrollY);
|
|
135
|
-
}
|
|
136
|
-
if (scrollX !== this.effectiveOffsetX || scrollX !== this.offsetX) {
|
|
137
|
-
this.onEffectiveOffsetX?.(scrollX);
|
|
138
|
-
}
|
|
139
134
|
this.effectiveOffset = scrollY;
|
|
140
135
|
this.effectiveOffsetX = scrollX;
|
|
136
|
+
const offsetChanged = this.effectiveOffset !== this.lastOffsetY || this.effectiveOffsetX !== this.lastOffsetX;
|
|
141
137
|
// Handle alignment when content is smaller than viewport
|
|
142
|
-
if (this.
|
|
143
|
-
if (
|
|
144
|
-
// Align to bottom
|
|
138
|
+
if (this.contentHeight < layoutRect.h && (this.axis === "vertical" || this.axis === "both")) {
|
|
139
|
+
if (alignY === "bottom") {
|
|
145
140
|
scrollY = -(layoutRect.h - this.contentHeight);
|
|
146
141
|
}
|
|
147
|
-
if (
|
|
148
|
-
|
|
142
|
+
else if (alignY === "center") {
|
|
143
|
+
scrollY = -Math.floor((layoutRect.h - this.contentHeight) / 2);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
if (this.contentWidth < layoutRect.w && (this.axis === "horizontal" || this.axis === "both")) {
|
|
147
|
+
if (alignX === "right") {
|
|
149
148
|
scrollX = -(layoutRect.w - this.contentWidth);
|
|
150
149
|
}
|
|
150
|
+
else if (alignX === "center") {
|
|
151
|
+
scrollX = -Math.floor((layoutRect.w - this.contentWidth) / 2);
|
|
152
|
+
}
|
|
151
153
|
}
|
|
152
154
|
// Layout child at offset position
|
|
153
155
|
const childRect = {
|
|
@@ -157,6 +159,25 @@ export class ScrollHost extends SingleChildHost {
|
|
|
157
159
|
h: this.contentHeight,
|
|
158
160
|
};
|
|
159
161
|
child.layout(childRect);
|
|
162
|
+
if (this.onScrollLayoutChange && (contentChanged || viewportChanged || rectChanged || offsetChanged)) {
|
|
163
|
+
this.lastReportedContentW = this.contentWidth;
|
|
164
|
+
this.lastReportedContentH = this.contentHeight;
|
|
165
|
+
this.lastViewportW = layoutRect.w;
|
|
166
|
+
this.lastViewportH = layoutRect.h;
|
|
167
|
+
this.lastRectX = layoutRect.x;
|
|
168
|
+
this.lastRectY = layoutRect.y;
|
|
169
|
+
this.lastRectW = layoutRect.w;
|
|
170
|
+
this.lastRectH = layoutRect.h;
|
|
171
|
+
this.lastOffsetY = this.effectiveOffset;
|
|
172
|
+
this.lastOffsetX = this.effectiveOffsetX;
|
|
173
|
+
this.onScrollLayoutChange({
|
|
174
|
+
content: { width: this.contentWidth, height: this.contentHeight },
|
|
175
|
+
viewport: { width: layoutRect.w, height: layoutRect.h },
|
|
176
|
+
offset: { x: this.effectiveOffsetX, y: this.effectiveOffset },
|
|
177
|
+
rect: { x: layoutRect.x, y: layoutRect.y, w: layoutRect.w, h: layoutRect.h },
|
|
178
|
+
axis: this.axis,
|
|
179
|
+
});
|
|
180
|
+
}
|
|
160
181
|
}
|
|
161
182
|
render(buffer, palette) {
|
|
162
183
|
if (!this.rect)
|
|
@@ -219,22 +240,18 @@ export class ScrollHost extends SingleChildHost {
|
|
|
219
240
|
this.applyGreedyDefault(props, 1);
|
|
220
241
|
if (props.axis !== undefined)
|
|
221
242
|
this.axis = props.axis ?? "vertical";
|
|
222
|
-
if (props.
|
|
223
|
-
this.
|
|
243
|
+
if (props.offsetY !== undefined)
|
|
244
|
+
this.offsetY = props.offsetY;
|
|
224
245
|
if (props.offsetX !== undefined)
|
|
225
246
|
this.offsetX = props.offsetX;
|
|
226
247
|
if (props.align !== undefined)
|
|
227
|
-
this.align = props.align
|
|
248
|
+
this.align = props.align;
|
|
228
249
|
this.bg = props.bg;
|
|
229
250
|
if (props.showScrollbar !== undefined)
|
|
230
251
|
this.showScrollbar = props.showScrollbar;
|
|
231
252
|
if (props.sticky !== undefined)
|
|
232
253
|
this.sticky = props.sticky;
|
|
233
|
-
this.
|
|
234
|
-
this.onViewportSize = props.onViewportSize;
|
|
235
|
-
this.onEffectiveOffset = props.onEffectiveOffset;
|
|
236
|
-
this.onEffectiveOffsetX = props.onEffectiveOffsetX;
|
|
237
|
-
this.onRect = props.onRect;
|
|
254
|
+
this.onScrollLayoutChange = props.onScrollLayoutChange;
|
|
238
255
|
}
|
|
239
256
|
}
|
|
240
257
|
//# sourceMappingURL=scroll.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroll.js","sourceRoot":"","sources":["../../../src/hosts/scroll.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scroll.js","sourceRoot":"","sources":["../../../src/hosts/scroll.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import type { CellBuffer, Palette } from "@effect-tui/core";
|
|
2
2
|
import type { CommonProps, HostContext, Size } from "../reconciler/types.js";
|
|
3
|
-
import {
|
|
3
|
+
import { LeafHost } from "./leaf.js";
|
|
4
4
|
export interface SpacerProps extends CommonProps {
|
|
5
5
|
/** Minimum width (default 0) */
|
|
6
6
|
minWidth?: number;
|
|
7
7
|
/** Minimum height (default 0) */
|
|
8
8
|
minHeight?: number;
|
|
9
9
|
}
|
|
10
|
-
export declare class SpacerHost extends
|
|
10
|
+
export declare class SpacerHost extends LeafHost {
|
|
11
11
|
minWidth: number;
|
|
12
12
|
minHeight: number;
|
|
13
13
|
greedy: boolean | number | undefined;
|
package/dist/src/hosts/spacer.js
CHANGED