import { ElementProps, Badge as MantineBadge, BadgeProps as MantineBadgeProps, } from '@mantine/core'; import { useMemo } from 'react'; import styles from './badge.module.css'; import { createPolymorphicComponent } from '/@/shared/utils/create-polymorphic-component'; export interface BadgeProps extends ElementProps<'div', keyof MantineBadgeProps>, MantineBadgeProps {} const BaseBadge = ({ children, classNames, variant = 'default', ...props }: BadgeProps) => { const memoizedClassNames = useMemo( () => ({ root: styles.root, ...classNames, }), [classNames], ); return ( {children} ); }; export const Badge = createPolymorphicComponent<'div', BadgeProps>(BaseBadge);