import Chip, { type ChipProps } from "@mui/material/Chip";

type StatusChipProps = Omit<ChipProps, "color"> & {
  color?: "default" | "success" | "error" | "warning" | "info";
};

/** Semantic status chip. Pass onClick to make it a clickable toggle. */
export default function StatusChip({
  color = "default",
  size = "small",
  onClick,
  sx,
  ...props
}: StatusChipProps) {
  return (
    <Chip
      color={color}
      size={size}
      onClick={onClick}
      sx={[
        { fontWeight: 600, ...(onClick ? { cursor: "pointer" } : {}) },
        ...(Array.isArray(sx) ? sx : sx ? [sx] : []),
      ]}
      {...props}
    />
  );
}
