import { cn } from "@core/utils/cn.ts"; import { AlignLeftIcon, type LucideIcon } from "lucide-react"; import Footer from "@components/UI/Footer.tsx"; import { Spinner } from "@components/UI/Spinner.tsx"; import { ErrorBoundary } from "react-error-boundary"; import { ErrorPage } from "@components/UI/ErrorPage.tsx"; export interface PageLayoutProps { label: string; noPadding?: boolean; children: React.ReactNode; className?: string; actions?: { icon: LucideIcon; iconClasses?: string; onClick: () => void; disabled?: boolean; isLoading?: boolean; }[]; } export const PageLayout = ({ label, noPadding, actions, className, children, }: PageLayoutProps) => { return (
{label}
{actions?.map((action) => ( ))}
{children}
); };