ldc-ovoteam/resources/ts/back/Components/FieldsetWrapper.tsx

53 lines
1.1 KiB
TypeScript
Raw Permalink Normal View History

import { type ReactNode } from "react";
2026-03-30 14:17:31 +02:00
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import { cn } from "@/lib/utils";
export default function FieldsetWrapper({
title,
icon,
description,
className,
inline,
children,
}: Readonly<{
2026-03-30 14:17:31 +02:00
title: string;
icon: ReactNode;
description: string;
className?: string;
inline?: boolean;
children: ReactNode;
}>) {
2026-03-30 14:17:31 +02:00
return (
<Card
className={cn("col-span-2", {
"sm:col-span-1 grid grid-cols-1 lg:grid-cols-2 items-center": inline,
2026-03-30 14:17:31 +02:00
})}
>
<CardHeader>
<CardTitle className="flex flex-row w-full items-start">
{icon && icon}
{title}
</CardTitle>
<CardDescription>{description}</CardDescription>
</CardHeader>
<CardContent
className={cn(
inline
? "flex justify-start lg:justify-end items-center lg:pt-5"
: "grid grid-cols-1",
className,
)}
>
{children}
</CardContent>
</Card>
);
}