diff --git a/src/shared/ui/Badge/ui/Badge.tsx b/src/shared/ui/Badge/ui/Badge.tsx index 9150fd5..0f79939 100644 --- a/src/shared/ui/Badge/ui/Badge.tsx +++ b/src/shared/ui/Badge/ui/Badge.tsx @@ -1,14 +1,10 @@ -import type { ReactNode } from 'react'; +import type { ComponentPropsWithoutRef } from 'react'; import { cn } from '$shared/lib'; export type BadgeVariant = 'default' | 'primary' | 'secondary' | 'outline'; export type BadgeSize = 'xs' | 'sm' | 'md'; -interface Props { - /** - * Badge content - */ - children: ReactNode; +interface Props extends Pick, 'children' | 'className' | 'style'> { /** * Visual variant * @default 'default' @@ -19,10 +15,6 @@ interface Props { * @default 'sm' */ size?: BadgeSize; - /** - * Additional CSS classes - */ - className?: string; } const VARIANTS: Record = { @@ -41,9 +33,17 @@ const SIZES: Record = { /** * Small label for categorization or status. */ -export function Badge({ children, variant = 'default', size = 'sm', className }: Props) { +export function Badge({ children, variant = 'default', size = 'sm', className, ...rest }: Props) { return ( - + {children} );