This repository has been archived on 2024-10-29. You can view files and clone it, but cannot push or open issues or pull requests.
scoresaber-reloadedv3/projects/website/src/components/stat-value.tsx
2024-10-08 15:32:02 +01:00

41 lines
845 B
TypeScript

import clsx from "clsx";
type Props = {
/**
* The stat name.
*/
name?: string;
/**
* The background color of the stat.
*/
color?: string;
/**
* The value of the stat.
*/
value: React.ReactNode;
};
export default function StatValue({ name, color, value }: Props) {
return (
<div
className={clsx(
"flex min-w-16 gap-2 h-[28px] p-1 items-center justify-center rounded-md text-sm cursor-default",
color ? color : "bg-accent"
)}
style={{
backgroundColor: (!color?.includes("bg") && color) || undefined,
}}
>
{name && (
<>
<p>{name}</p>
<div className="h-4 w-[1px] bg-primary" />
</>
)}
<div className="flex gap-1 items-center">{typeof value === "string" ? <p>{value}</p> : value}</div>
</div>
);
}