Files
clawdbot/src/tui/tui-overlays.ts
2026-01-15 01:59:05 +00:00

20 lines
513 B
TypeScript

import type { Component, TUI } from "@mariozechner/pi-tui";
type OverlayHost = Pick<TUI, "showOverlay" | "hideOverlay" | "hasOverlay" | "setFocus">;
export function createOverlayHandlers(host: OverlayHost, fallbackFocus: Component) {
const openOverlay = (component: Component) => {
host.showOverlay(component);
};
const closeOverlay = () => {
if (host.hasOverlay()) {
host.hideOverlay();
return;
}
host.setFocus(fallbackFocus);
};
return { openOverlay, closeOverlay };
}