Files
kvm/ui/src/components/EmptyCard.tsx
luckfox-eng29 9a4e604c61 Update App version to 0.1.1
Signed-off-by: luckfox-eng29 <eng29@luckfox.com>
2026-02-05 13:59:33 +08:00

50 lines
1.2 KiB
TypeScript

import React from "react";
import { GridCard } from "@components/Card";
import { cx } from "../cva.config";
interface Props {
IconElm?: React.FC<{ className: string | undefined }>;
headline: string;
description?: string | React.ReactNode;
BtnElm?: React.ReactNode;
className?: string;
iconClassName?: string;
}
export default function EmptyCard({
IconElm,
headline,
description,
BtnElm,
className,
iconClassName,
}: Props) {
return (
<GridCard>
<div
className={cx(
"flex min-h-[256px] w-full flex-col items-center justify-center gap-y-4 px-4 py-5 text-center",
className,
)}
>
<div className="max-w-[90%] space-y-1.5 text-center md:max-w-[60%]">
<div className="space-y-2">
{IconElm && (
<IconElm className={cx("mx-auto h-5 w-5 text-blue-600 dark:text-blue-600", iconClassName)} />
)}
<h4 className="text-base font-bold leading-none text-black dark:text-white">
{headline}
</h4>
</div>
<p className="mx-auto text-sm text-slate-600 dark:text-[#ffffff]">
{description}
</p>
</div>
{BtnElm}
</div>
</GridCard>
);
}