{"version":3,"file":"Tag.cjs","names":[],"sources":["../../../src/components/Tag/Tag.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from \"react\";\nimport { cn } from \"@/utils/cn\";\nimport styles from \"./Tag.module.css\";\n\nexport type TagVariant = \"neutral\" | \"primary\" | \"success\" | \"warning\" | \"danger\" | \"info\";\nexport type TagSize = \"sm\" | \"md\" | \"lg\";\n\nexport interface TagProps extends Omit<HTMLAttributes<HTMLSpanElement>, \"onRemove\"> {\n    /** Visual variant. Default `\"neutral\"`. */\n    variant?: TagVariant;\n    /** Visual size. Default `\"md\"`. */\n    size?: TagSize;\n    /** When set, renders a close button that fires this callback. */\n    onRemove?: () => void;\n    /** Custom remove label for screen readers. Default `\"Remover\"`. */\n    removeLabel?: string;\n    children?: ReactNode;\n}\n\n/**\n * Removable chip — used for filter tokens, applied search filters,\n * selected entities. Different from `Badge` (status-only, not removable).\n *\n * @example\n * <Tag variant=\"primary\" onRemove={() => removeFilter(\"sao-paulo\")}>\n *     São Paulo\n * </Tag>\n */\nexport function Tag({\n    variant = \"neutral\",\n    size = \"md\",\n    onRemove,\n    removeLabel = \"Remover\",\n    className,\n    children,\n    ...props\n}: TagProps) {\n    return (\n        <span className={cn(styles.tag, styles[variant], styles[size], className)} {...props}>\n            <span className={styles.label}>{children}</span>\n            {onRemove && (\n                <button\n                    type=\"button\"\n                    className={styles.remove}\n                    aria-label={removeLabel}\n                    onClick={onRemove}\n                >\n                    ×\n                </button>\n            )}\n        </span>\n    );\n}\n"],"mappings":"uGA4BA,SAAgB,EAAI,CAChB,UAAU,UACV,OAAO,KACP,WACA,cAAc,UACd,YACA,WACA,GAAG,GACM,CACT,OACI,EAAA,EAAA,KAAA,CAAC,OAAD,CAAM,UAAW,EAAA,GAAG,EAAA,QAAO,IAAK,EAAA,QAAO,GAAU,EAAA,QAAO,GAAO,CAAS,EAAG,GAAI,EAA/E,SAAA,EACI,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAW,EAAA,QAAO,MAAQ,UAAe,CAAA,EAC9C,IACG,EAAA,EAAA,IAAA,CAAC,SAAD,CACI,KAAK,SACL,UAAW,EAAA,QAAO,OAClB,aAAY,EACZ,QAAS,EACZ,SAAA,GAEO,CAAA,CAEV,GAEd"}