mirror of
https://github.com/Since-3/since3-portal.git
synced 2026-10-12 21:41:16 +00:00
35 lines
898 B
TypeScript
35 lines
898 B
TypeScript
import { cva, type VariantProps } from "class-variance-authority"
|
|
import { cn } from "cn"
|
|
|
|
const badgeVariants = cva(
|
|
"inline-flex w-fit shrink-0 items-center justify-center rounded-full px-2.5 py-0.5 text-label whitespace-nowrap",
|
|
{
|
|
variants: {
|
|
variant: {
|
|
neutral: "bg-ink-100 text-ink-700 dark:bg-ink-800 dark:text-ink-300",
|
|
error: "bg-signal-error/12 text-signal-error",
|
|
success: "bg-signal-success/12 text-signal-success",
|
|
warning: "bg-signal-warning/12 text-signal-warning",
|
|
},
|
|
},
|
|
defaultVariants: {
|
|
variant: "neutral",
|
|
},
|
|
}
|
|
)
|
|
|
|
function Badge({
|
|
className,
|
|
variant,
|
|
...props
|
|
}: React.ComponentProps<"span"> & VariantProps<typeof badgeVariants>) {
|
|
return (
|
|
<span
|
|
data-slot="badge"
|
|
className={cn(badgeVariants({ variant, className }))}
|
|
{...props}
|
|
/>
|
|
)
|
|
}
|
|
|
|
export { Badge, badgeVariants }
|