import { Input, Kbd } from "@heroui/react"; import { useAtom } from "jotai"; import { IconSearch } from "@tabler/icons-react"; import type { ReactNode } from "react"; import { filterAtom } from "../state/atoms"; export function ViewShell({ title, subtitle, actions, searchPlaceholder, children, }: { title: string; subtitle?: string; actions?: ReactNode; searchPlaceholder?: string; children: ReactNode; }) { const [filter, setFilter] = useAtom(filterAtom); return (

{title}

{subtitle && (

{subtitle}

)}
f } startContent={} className="max-w-64" classNames={{ inputWrapper: "bg-content2/60 border border-white/10" }} /> {actions}
{children}
); } export function EmptyState({ icon, title, hint, action, }: { icon: ReactNode; title: string; hint?: string; action?: ReactNode; }) { return (
{icon}
{title}
{hint && (

{hint}

)} {action &&
{action}
}
); }