// Wrapper for any main-area pane: header (title + subtitle + close) + body. // The text-editor pane passes closable={false} so it has no close button. "use client"; import { ReactNode } from "react"; interface PaneFrameProps { title: string; subtitle?: string; right?: ReactNode; closable?: boolean; onClose?: () => void; children: ReactNode; } export function PaneFrame({ title, subtitle, right, closable = true, onClose, children }: PaneFrameProps) { return (
{title} {subtitle ? {subtitle} : null}
{right} {closable ? ( ) : null}
{children}
); }