import { useKeyboard } from "@opentui/solid"; import { onMount, onCleanup } from "solid-js"; import { useKeyboardNav } from "../context/keyboard.js"; interface ConfirmOverlayProps { message: string; onConfirm: () => void; onCancel: () => void; } export function ConfirmOverlay(props: ConfirmOverlayProps) { const { setOverlayActive } = useKeyboardNav(); onMount(() => setOverlayActive(true)); onCleanup(() => setOverlayActive(false)); useKeyboard((event) => { event.preventDefault(); const key = event.name.toLowerCase(); if (key === 'y') { props.onConfirm(); } else if (key === 'n' || key === 'escape') { props.onCancel(); } }); return ( {props.message} (y/N) ); }