mirror of
https://github.com/getcompanion-ai/co-mono.git
synced 2026-04-16 14:01:06 +00:00
feat(tui): overlay positioning API with CSS-like values
Add OverlayOptions for configurable positioning (anchor, margins, offsets, percentages). Add OverlayHandle for programmatic visibility control with hide/setHidden/isHidden. Add visible callback for responsive overlays. Extension API: ctx.ui.custom() now accepts overlayOptions and onHandle callback. Examples: overlay-qa-tests.ts (10 test commands), doom-overlay (DOOM at 35 FPS).
This commit is contained in:
parent
d29f268f46
commit
a4ccff382c
22 changed files with 1344 additions and 103 deletions
|
|
@ -15,7 +15,15 @@ import type {
|
|||
ThinkingLevel,
|
||||
} from "@mariozechner/pi-agent-core";
|
||||
import type { ImageContent, Model, TextContent, ToolResultMessage } from "@mariozechner/pi-ai";
|
||||
import type { Component, EditorComponent, EditorTheme, KeyId, OverlayOptions, TUI } from "@mariozechner/pi-tui";
|
||||
import type {
|
||||
Component,
|
||||
EditorComponent,
|
||||
EditorTheme,
|
||||
KeyId,
|
||||
OverlayHandle,
|
||||
OverlayOptions,
|
||||
TUI,
|
||||
} from "@mariozechner/pi-tui";
|
||||
import type { Static, TSchema } from "@sinclair/typebox";
|
||||
import type { Theme } from "../../modes/interactive/theme/theme.js";
|
||||
import type { BashResult } from "../bash-executor.js";
|
||||
|
|
@ -116,6 +124,8 @@ export interface ExtensionUIContext {
|
|||
overlay?: boolean;
|
||||
/** Overlay positioning/sizing options. Can be static or a function for dynamic updates. */
|
||||
overlayOptions?: OverlayOptions | (() => OverlayOptions);
|
||||
/** Called with the overlay handle after the overlay is shown. Use to control visibility. */
|
||||
onHandle?: (handle: OverlayHandle) => void;
|
||||
},
|
||||
): Promise<T>;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue