@rabelo-digital/ds-rd 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/atoms/Button/Button.module.css","../src/components/atoms/Button/Button.tsx","../src/components/atoms/Input/Input.module.css","../src/components/atoms/Input/Input.tsx","../src/components/atoms/Textarea/Textarea.module.css","../src/components/atoms/Textarea/Textarea.tsx","../src/components/atoms/Badge/Badge.module.css","../src/components/atoms/Badge/Badge.tsx","../src/components/atoms/Avatar/Avatar.module.css","../src/components/atoms/Avatar/Avatar.tsx","../src/components/atoms/Checkbox/Checkbox.module.css","../src/components/atoms/Checkbox/Checkbox.tsx","../src/components/atoms/Radio/Radio.module.css","../src/components/atoms/Radio/Radio.tsx","../src/components/atoms/Select/Select.module.css","../src/components/atoms/Select/Select.tsx","../src/components/atoms/Tooltip/Tooltip.module.css","../src/components/atoms/Tooltip/Tooltip.tsx","../src/components/atoms/SocialIcons/SocialIcons.module.css","../src/components/atoms/SocialIcons/SocialIcons.tsx","../src/components/molecules/Card/Card.module.css","../src/components/molecules/Card/Card.tsx","../src/components/molecules/Modal/Modal.module.css","../src/components/molecules/Modal/Modal.tsx","../src/components/molecules/Drawer/Drawer.module.css","../src/components/molecules/Drawer/Drawer.tsx","../src/components/molecules/Tabs/Tabs.module.css","../src/components/molecules/Tabs/Tabs.tsx","../src/components/molecules/Accordion/Accordion.module.css","../src/components/molecules/Accordion/Accordion.tsx","../src/components/molecules/Toast/Toast.module.css","../src/components/molecules/Toast/Toast.tsx","../src/components/molecules/Table/Table.module.css","../src/components/molecules/Table/Table.tsx"],"names":["React","jsxs","jsx","useId","useState","Icon","elevation","Dialog2"],"mappings":"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","file":"index.mjs","sourcesContent":[".button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--ds-space-2);\n border: 1px solid transparent;\n border-radius: var(--ds-radius-md);\n font-family: var(--ds-font-family-base);\n font-weight: var(--ds-font-weight-medium);\n line-height: var(--ds-line-height-tight);\n cursor: pointer;\n text-decoration: none;\n transition:\n background-color var(--ds-motion-duration-fast) var(--ds-motion-easing-out),\n border-color var(--ds-motion-duration-fast) var(--ds-motion-easing-out),\n color var(--ds-motion-duration-fast) var(--ds-motion-easing-out),\n box-shadow var(--ds-motion-duration-fast) var(--ds-motion-easing-out);\n white-space: nowrap;\n user-select: none;\n}\n\n.button:focus-visible {\n outline: 2px solid var(--ds-color-border-focus);\n outline-offset: 2px;\n}\n\n/* Sizes */\n.sm {\n padding: var(--ds-space-1) var(--ds-space-3);\n font-size: var(--ds-font-size-sm);\n min-height: 32px;\n}\n\n.md {\n padding: var(--ds-space-2) var(--ds-space-4);\n font-size: var(--ds-font-size-md);\n min-height: 40px;\n}\n\n.lg {\n padding: var(--ds-space-3) var(--ds-space-6);\n font-size: var(--ds-font-size-lg);\n min-height: 48px;\n}\n\n/* Variants */\n.primary {\n background: var(--ds-color-primary);\n color: var(--ds-color-on-primary);\n border-color: var(--ds-color-primary);\n}\n\n.primary:hover:not(:disabled):not([aria-disabled=\"true\"]) {\n background: var(--ds-color-primary-hover);\n border-color: var(--ds-color-primary-hover);\n}\n\n.primary:active:not(:disabled) {\n background: var(--ds-color-primary-active);\n border-color: var(--ds-color-primary-active);\n}\n\n.secondary {\n background: var(--ds-color-secondary);\n color: var(--ds-color-on-secondary);\n border-color: var(--ds-color-secondary);\n}\n\n.secondary:hover:not(:disabled):not([aria-disabled=\"true\"]) {\n background: var(--ds-color-secondary-hover);\n border-color: var(--ds-color-secondary-hover);\n}\n\n.ghost {\n background: transparent;\n color: var(--ds-color-primary);\n border-color: var(--ds-color-border);\n}\n\n.ghost:hover:not(:disabled):not([aria-disabled=\"true\"]) {\n background: var(--ds-color-primary-subtle);\n border-color: var(--ds-color-primary);\n}\n\n.danger {\n background: var(--ds-color-error);\n color: var(--ds-color-on-error);\n border-color: var(--ds-color-error);\n}\n\n.danger:hover:not(:disabled):not([aria-disabled=\"true\"]) {\n background: var(--ds-color-error-hover);\n border-color: var(--ds-color-error-hover);\n}\n\n/* States */\n.button:disabled,\n.button[aria-disabled=\"true\"] {\n background: var(--ds-color-disabled-bg);\n color: var(--ds-color-disabled-text);\n border-color: var(--ds-color-disabled-border);\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* Loading */\n.loading {\n position: relative;\n cursor: wait;\n pointer-events: none;\n}\n\n.label {\n display: inline-flex;\n align-items: center;\n gap: var(--ds-space-2);\n}\n\n.labelHidden {\n visibility: hidden;\n}\n\n.spinner {\n position: absolute;\n width: 1em;\n height: 1em;\n border: 2px solid currentColor;\n border-top-color: transparent;\n border-radius: var(--ds-radius-full);\n animation: spin 0.6s linear infinite;\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n","import React from \"react\";\n\nimport styles from \"./Button.module.css\";\n\nexport type ButtonVariant = \"primary\" | \"secondary\" | \"ghost\" | \"danger\";\nexport type ButtonSize = \"sm\" | \"md\" | \"lg\";\n\nexport interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n variant?: ButtonVariant;\n size?: ButtonSize;\n loading?: boolean;\n children: React.ReactNode;\n}\n\nexport const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n variant = \"primary\",\n size = \"md\",\n loading = false,\n disabled,\n className,\n children,\n onClick,\n ...props\n },\n ref\n ) => {\n const isDisabled = disabled || loading;\n\n return (\n <button\n ref={ref}\n className={[\n styles.button,\n styles[variant],\n styles[size],\n loading ? styles.loading : \"\",\n className ?? \"\"\n ]\n .filter(Boolean)\n .join(\" \")}\n disabled={isDisabled}\n aria-disabled={isDisabled || undefined}\n aria-busy={loading || undefined}\n onClick={isDisabled ? undefined : onClick}\n {...props}\n >\n <span className={loading ? styles.labelHidden : styles.label}>{children}</span>\n {loading && <span className={styles.spinner} aria-hidden=\"true\" />}\n </button>\n );\n }\n);\n\nButton.displayName = \"Button\";\n",".wrapper {\n display: flex;\n flex-direction: column;\n gap: var(--ds-space-1);\n width: 100%;\n}\n\n.label {\n font-family: var(--ds-font-family-base);\n font-size: var(--ds-font-size-sm);\n font-weight: var(--ds-font-weight-medium);\n color: var(--ds-color-text);\n line-height: var(--ds-line-height-normal);\n}\n\n.input {\n width: 100%;\n font-family: var(--ds-font-family-base);\n font-size: var(--ds-font-size-md);\n color: var(--ds-color-text);\n background: var(--ds-color-bg);\n border: 1px solid var(--ds-color-border);\n border-radius: var(--ds-radius-md);\n transition:\n border-color var(--ds-motion-duration-fast) var(--ds-motion-easing-out),\n box-shadow var(--ds-motion-duration-fast) var(--ds-motion-easing-out);\n outline: none;\n box-sizing: border-box;\n}\n\n.input::placeholder {\n color: var(--ds-color-text-subtle);\n}\n\n.input:hover:not(:disabled) {\n border-color: var(--ds-color-border-strong);\n}\n\n.input:focus {\n border-color: var(--ds-color-border-focus);\n box-shadow: 0 0 0 3px var(--ds-color-primary-muted);\n}\n\n.input:disabled {\n background: var(--ds-color-disabled-bg);\n color: var(--ds-color-disabled-text);\n border-color: var(--ds-color-disabled-border);\n cursor: not-allowed;\n}\n\n.input.error {\n border-color: var(--ds-color-border-error);\n}\n\n.input.error:focus {\n box-shadow: 0 0 0 3px var(--ds-color-error-muted);\n}\n\n/* Sizes */\n.sm {\n padding: var(--ds-space-1) var(--ds-space-2);\n font-size: var(--ds-font-size-sm);\n min-height: 32px;\n}\n.md {\n padding: var(--ds-space-2) var(--ds-space-3);\n font-size: var(--ds-font-size-md);\n min-height: 40px;\n}\n.lg {\n padding: var(--ds-space-3) var(--ds-space-4);\n font-size: var(--ds-font-size-lg);\n min-height: 48px;\n}\n\n.helperText {\n font-size: var(--ds-font-size-xs);\n color: var(--ds-color-text-muted);\n line-height: var(--ds-line-height-normal);\n}\n\n.errorText {\n font-size: var(--ds-font-size-xs);\n color: var(--ds-color-error);\n line-height: var(--ds-line-height-normal);\n}\n","import React, { useId } from \"react\";\n\nimport styles from \"./Input.module.css\";\n\nexport type InputSize = \"sm\" | \"md\" | \"lg\";\n\nexport interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, \"size\"> {\n label?: string;\n error?: string;\n helperText?: string;\n size?: InputSize;\n}\n\nexport const Input = React.forwardRef<HTMLInputElement, InputProps>(\n ({ label, error, helperText, size = \"md\", className, id, ...props }, ref) => {\n const generatedId = useId();\n const inputId = id ?? generatedId;\n const errorId = `${inputId}-error`;\n const helperId = `${inputId}-helper`;\n\n return (\n <div className={styles.wrapper}>\n {label && (\n <label htmlFor={inputId} className={styles.label}>\n {label}\n </label>\n )}\n <input\n ref={ref}\n id={inputId}\n className={[styles.input, styles[size], error ? styles.error : \"\", className ?? \"\"]\n .filter(Boolean)\n .join(\" \")}\n aria-invalid={!!error}\n aria-describedby={\n [error ? errorId : null, helperText ? helperId : null].filter(Boolean).join(\" \") ||\n undefined\n }\n {...props}\n />\n {error && (\n <span id={errorId} className={styles.errorText} role=\"alert\">\n {error}\n </span>\n )}\n {helperText && !error && (\n <span id={helperId} className={styles.helperText}>\n {helperText}\n </span>\n )}\n </div>\n );\n }\n);\n\nInput.displayName = \"Input\";\n",".wrapper {\n display: flex;\n flex-direction: column;\n gap: var(--ds-space-1);\n width: 100%;\n}\n\n.label {\n font-family: var(--ds-font-family-base);\n font-size: var(--ds-font-size-sm);\n font-weight: var(--ds-font-weight-medium);\n color: var(--ds-color-text);\n}\n\n.textarea {\n width: 100%;\n min-height: 100px;\n padding: var(--ds-space-2) var(--ds-space-3);\n font-family: var(--ds-font-family-base);\n font-size: var(--ds-font-size-md);\n color: var(--ds-color-text);\n background: var(--ds-color-bg);\n border: 1px solid var(--ds-color-border);\n border-radius: var(--ds-radius-md);\n resize: vertical;\n outline: none;\n transition:\n border-color var(--ds-motion-duration-fast) var(--ds-motion-easing-out),\n box-shadow var(--ds-motion-duration-fast) var(--ds-motion-easing-out);\n box-sizing: border-box;\n}\n\n.textarea:focus {\n border-color: var(--ds-color-border-focus);\n box-shadow: 0 0 0 3px var(--ds-color-primary-muted);\n}\n.textarea:disabled {\n background: var(--ds-color-disabled-bg);\n color: var(--ds-color-disabled-text);\n cursor: not-allowed;\n}\n.textarea.error {\n border-color: var(--ds-color-border-error);\n}\n.textarea.error:focus {\n box-shadow: 0 0 0 3px var(--ds-color-error-muted);\n}\n\n.footer {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n}\n.helperText {\n font-size: var(--ds-font-size-xs);\n color: var(--ds-color-text-muted);\n}\n.errorText {\n font-size: var(--ds-font-size-xs);\n color: var(--ds-color-error);\n}\n.counter {\n font-size: var(--ds-font-size-xs);\n color: var(--ds-color-text-muted);\n margin-left: auto;\n}\n","import React, { useId, useState } from \"react\";\n\nimport styles from \"./Textarea.module.css\";\n\nexport interface TextareaProps extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {\n label?: string;\n error?: string;\n helperText?: string;\n showCount?: boolean;\n}\n\nexport const Textarea = React.forwardRef<HTMLTextAreaElement, TextareaProps>(\n (\n { label, error, helperText, showCount = false, maxLength, className, id, onChange, ...props },\n ref\n ) => {\n const generatedId = useId();\n const textareaId = id ?? generatedId;\n const errorId = `${textareaId}-error`;\n const helperId = `${textareaId}-helper`;\n const [count, setCount] = useState(typeof props.value === \"string\" ? props.value.length : 0);\n\n const handleChange = (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n setCount(e.target.value.length);\n onChange?.(e);\n };\n\n return (\n <div className={styles.wrapper}>\n {label && (\n <label htmlFor={textareaId} className={styles.label}>\n {label}\n </label>\n )}\n <textarea\n ref={ref}\n id={textareaId}\n className={[styles.textarea, error ? styles.error : \"\", className ?? \"\"]\n .filter(Boolean)\n .join(\" \")}\n maxLength={maxLength}\n onChange={handleChange}\n aria-invalid={!!error}\n aria-describedby={\n [error ? errorId : null, helperText ? helperId : null].filter(Boolean).join(\" \") ||\n undefined\n }\n {...props}\n />\n <div className={styles.footer}>\n {error && (\n <span id={errorId} className={styles.errorText} role=\"alert\">\n {error}\n </span>\n )}\n {helperText && !error && (\n <span id={helperId} className={styles.helperText}>\n {helperText}\n </span>\n )}\n {showCount && maxLength && (\n <span className={styles.counter} aria-live=\"polite\">\n {count}/{maxLength}\n </span>\n )}\n </div>\n </div>\n );\n }\n);\n\nTextarea.displayName = \"Textarea\";\n",".badge {\n display: inline-flex;\n align-items: center;\n font-family: var(--ds-font-family-base);\n font-weight: var(--ds-font-weight-medium);\n border-radius: var(--ds-radius-full);\n white-space: nowrap;\n}\n\n.sm {\n padding: 2px var(--ds-space-2);\n font-size: var(--ds-font-size-xs);\n}\n.md {\n padding: var(--ds-space-1) var(--ds-space-2);\n font-size: var(--ds-font-size-sm);\n}\n\n.default {\n background: var(--ds-color-bg-muted);\n color: var(--ds-color-text);\n}\n.primary {\n background: var(--ds-color-primary-muted);\n color: var(--ds-color-primary);\n}\n.success {\n background: var(--ds-color-success-muted);\n color: var(--ds-color-success);\n}\n.warning {\n background: var(--ds-color-warning-muted);\n color: var(--ds-color-warning-hover);\n}\n.error {\n background: var(--ds-color-error-muted);\n color: var(--ds-color-error);\n}\n.info {\n background: var(--ds-color-info-muted);\n color: var(--ds-color-info);\n}\n","import React from \"react\";\n\nimport styles from \"./Badge.module.css\";\n\nexport type BadgeVariant = \"default\" | \"primary\" | \"success\" | \"warning\" | \"error\" | \"info\";\nexport type BadgeSize = \"sm\" | \"md\";\n\nexport interface BadgeProps {\n variant?: BadgeVariant;\n size?: BadgeSize;\n children: React.ReactNode;\n className?: string;\n}\n\nexport const Badge: React.FC<BadgeProps> = ({\n variant = \"default\",\n size = \"md\",\n children,\n className\n}) => (\n <span\n className={[styles.badge, styles[variant], styles[size], className ?? \"\"]\n .filter(Boolean)\n .join(\" \")}\n >\n {children}\n </span>\n);\n\nBadge.displayName = \"Badge\";\n",".avatar {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n background: var(--ds-color-primary-muted);\n color: var(--ds-color-primary);\n font-family: var(--ds-font-family-base);\n font-weight: var(--ds-font-weight-semibold);\n overflow: hidden;\n flex-shrink: 0;\n}\n\n.circle {\n border-radius: var(--ds-radius-full);\n}\n.square {\n border-radius: var(--ds-radius-lg);\n}\n\n.xs {\n width: 24px;\n height: 24px;\n font-size: var(--ds-font-size-xs);\n}\n.sm {\n width: 32px;\n height: 32px;\n font-size: var(--ds-font-size-xs);\n}\n.md {\n width: 40px;\n height: 40px;\n font-size: var(--ds-font-size-sm);\n}\n.lg {\n width: 56px;\n height: 56px;\n font-size: var(--ds-font-size-md);\n}\n.xl {\n width: 80px;\n height: 80px;\n font-size: var(--ds-font-size-xl);\n}\n\n.image {\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n.initials {\n line-height: 1;\n}\n","import React, { useState } from \"react\";\n\nimport styles from \"./Avatar.module.css\";\n\nexport type AvatarSize = \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\";\nexport type AvatarShape = \"circle\" | \"square\";\n\nexport interface AvatarProps {\n src?: string;\n alt?: string;\n name?: string;\n size?: AvatarSize;\n shape?: AvatarShape;\n className?: string;\n}\n\nfunction getInitials(name: string): string {\n return name\n .split(\" \")\n .map((part) => part[0])\n .filter(Boolean)\n .slice(0, 2)\n .join(\"\")\n .toUpperCase();\n}\n\nexport const Avatar: React.FC<AvatarProps> = ({\n src,\n alt,\n name,\n size = \"md\",\n shape = \"circle\",\n className\n}) => {\n const [imgError, setImgError] = useState(false);\n const initials = name ? getInitials(name) : null;\n const showImage = src && !imgError;\n\n const wrapperClass = [styles.avatar, styles[size], styles[shape], className ?? \"\"]\n .filter(Boolean)\n .join(\" \");\n\n if (showImage) {\n return (\n <span className={wrapperClass}>\n <img\n src={src}\n alt={alt ?? name ?? \"\"}\n className={styles.image}\n onError={() => setImgError(true)}\n />\n </span>\n );\n }\n\n return (\n <span className={wrapperClass} role=\"img\" aria-label={alt ?? name ?? \"Avatar\"}>\n <span className={styles.initials} aria-hidden=\"true\">\n {initials ?? \"?\"}\n </span>\n </span>\n );\n};\n\nAvatar.displayName = \"Avatar\";\n",".wrapper {\n display: flex;\n align-items: center;\n gap: var(--ds-space-2);\n}\n\n.root {\n width: 18px;\n height: 18px;\n border: 2px solid var(--ds-color-border-strong);\n border-radius: var(--ds-radius-sm);\n background: var(--ds-color-bg);\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n flex-shrink: 0;\n transition:\n border-color var(--ds-motion-duration-fast) var(--ds-motion-easing-out),\n background var(--ds-motion-duration-fast) var(--ds-motion-easing-out);\n outline: none;\n}\n\n.root[data-state=\"checked\"],\n.root[data-state=\"indeterminate\"] {\n background: var(--ds-color-primary);\n border-color: var(--ds-color-primary);\n color: var(--ds-color-on-primary);\n}\n\n.root:focus-visible {\n outline: 2px solid var(--ds-color-border-focus);\n outline-offset: 2px;\n}\n.root:disabled {\n background: var(--ds-color-disabled-bg);\n border-color: var(--ds-color-disabled-border);\n cursor: not-allowed;\n}\n\n.indicator {\n display: flex;\n align-items: center;\n justify-content: center;\n color: currentColor;\n}\n.label {\n font-size: var(--ds-font-size-sm);\n color: var(--ds-color-text);\n cursor: pointer;\n line-height: var(--ds-line-height-normal);\n}\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\";\nimport React, { useId } from \"react\";\n\nimport styles from \"./Checkbox.module.css\";\n\nexport interface CheckboxProps {\n checked?: boolean | \"indeterminate\";\n defaultChecked?: boolean;\n onCheckedChange?: (checked: boolean | \"indeterminate\") => void;\n disabled?: boolean;\n label?: string;\n id?: string;\n className?: string;\n}\n\nexport const Checkbox: React.FC<CheckboxProps> = ({\n checked,\n defaultChecked,\n onCheckedChange,\n disabled,\n label,\n id,\n className\n}) => {\n const generatedId = useId();\n const checkboxId = id ?? generatedId;\n\n return (\n <div className={[styles.wrapper, className ?? \"\"].filter(Boolean).join(\" \")}>\n <RadixCheckbox.Root\n id={checkboxId}\n checked={checked}\n defaultChecked={defaultChecked}\n onCheckedChange={onCheckedChange}\n disabled={disabled}\n className={styles.root}\n >\n <RadixCheckbox.Indicator className={styles.indicator}>\n {checked === \"indeterminate\" ? (\n <svg width=\"10\" height=\"2\" viewBox=\"0 0 10 2\" fill=\"currentColor\" aria-hidden=\"true\">\n <rect width=\"10\" height=\"2\" rx=\"1\" />\n </svg>\n ) : (\n <svg width=\"10\" height=\"8\" viewBox=\"0 0 10 8\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"M1 4l2.5 2.5L9 1\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n )}\n </RadixCheckbox.Indicator>\n </RadixCheckbox.Root>\n {label && (\n <label htmlFor={checkboxId} className={styles.label}>\n {label}\n </label>\n )}\n </div>\n );\n};\n\nCheckbox.displayName = \"Checkbox\";\n",".group {\n display: flex;\n}\n.vertical {\n flex-direction: column;\n gap: var(--ds-space-2);\n}\n.horizontal {\n flex-direction: row;\n flex-wrap: wrap;\n gap: var(--ds-space-4);\n}\n\n.item {\n display: flex;\n align-items: center;\n gap: var(--ds-space-2);\n}\n\n.radio {\n width: 18px;\n height: 18px;\n border-radius: var(--ds-radius-full);\n border: 2px solid var(--ds-color-border-strong);\n background: var(--ds-color-bg);\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n flex-shrink: 0;\n outline: none;\n transition: border-color var(--ds-motion-duration-fast) var(--ds-motion-easing-out);\n}\n\n.radio[data-state=\"checked\"] {\n border-color: var(--ds-color-primary);\n}\n.radio:focus-visible {\n outline: 2px solid var(--ds-color-border-focus);\n outline-offset: 2px;\n}\n.radio:disabled {\n background: var(--ds-color-disabled-bg);\n border-color: var(--ds-color-disabled-border);\n cursor: not-allowed;\n}\n\n.indicator {\n width: 8px;\n height: 8px;\n border-radius: var(--ds-radius-full);\n background: var(--ds-color-primary);\n}\n\n.label {\n font-size: var(--ds-font-size-sm);\n color: var(--ds-color-text);\n cursor: pointer;\n}\n","import * as RadixRadio from \"@radix-ui/react-radio-group\";\nimport React, { useId } from \"react\";\n\nimport styles from \"./Radio.module.css\";\n\nexport interface RadioOption {\n value: string;\n label: string;\n disabled?: boolean;\n}\n\nexport interface RadioGroupProps {\n options: RadioOption[];\n value?: string;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n disabled?: boolean;\n name?: string;\n orientation?: \"horizontal\" | \"vertical\";\n className?: string;\n}\n\nexport const RadioGroup: React.FC<RadioGroupProps> = ({\n options,\n value,\n defaultValue,\n onValueChange,\n disabled,\n name,\n orientation = \"vertical\",\n className\n}) => {\n const baseId = useId();\n\n return (\n <RadixRadio.Root\n value={value}\n defaultValue={defaultValue}\n onValueChange={onValueChange}\n disabled={disabled}\n name={name}\n orientation={orientation}\n className={[styles.group, styles[orientation], className ?? \"\"].filter(Boolean).join(\" \")}\n >\n {options.map((option) => {\n const radioId = `${baseId}-${option.value}`;\n return (\n <div key={option.value} className={styles.item}>\n <RadixRadio.Item\n id={radioId}\n value={option.value}\n disabled={option.disabled ?? disabled}\n className={styles.radio}\n >\n <RadixRadio.Indicator className={styles.indicator} />\n </RadixRadio.Item>\n <label htmlFor={radioId} className={styles.label}>\n {option.label}\n </label>\n </div>\n );\n })}\n </RadixRadio.Root>\n );\n};\n\nRadioGroup.displayName = \"RadioGroup\";\n",".wrapper {\n display: flex;\n flex-direction: column;\n gap: var(--ds-space-1);\n width: 100%;\n}\n.label {\n font-size: var(--ds-font-size-sm);\n font-weight: var(--ds-font-weight-medium);\n color: var(--ds-color-text);\n}\n\n.trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--ds-space-2);\n width: 100%;\n font-family: var(--ds-font-family-base);\n color: var(--ds-color-text);\n background: var(--ds-color-bg);\n border: 1px solid var(--ds-color-border);\n border-radius: var(--ds-radius-md);\n cursor: pointer;\n outline: none;\n transition: border-color var(--ds-motion-duration-fast) var(--ds-motion-easing-out);\n}\n\n.trigger:hover:not(:disabled) {\n border-color: var(--ds-color-border-strong);\n}\n.trigger:focus {\n border-color: var(--ds-color-border-focus);\n box-shadow: 0 0 0 3px var(--ds-color-primary-muted);\n}\n.trigger[data-disabled] {\n background: var(--ds-color-disabled-bg);\n color: var(--ds-color-disabled-text);\n cursor: not-allowed;\n}\n.trigger.error {\n border-color: var(--ds-color-border-error);\n}\n\n.sm {\n padding: var(--ds-space-1) var(--ds-space-2);\n font-size: var(--ds-font-size-sm);\n min-height: 32px;\n}\n.md {\n padding: var(--ds-space-2) var(--ds-space-3);\n font-size: var(--ds-font-size-md);\n min-height: 40px;\n}\n.lg {\n padding: var(--ds-space-3) var(--ds-space-4);\n font-size: var(--ds-font-size-lg);\n min-height: 48px;\n}\n\n.icon {\n color: var(--ds-color-text-muted);\n flex-shrink: 0;\n}\n\n.content {\n background: var(--ds-color-surface);\n border: 1px solid var(--ds-color-border);\n border-radius: var(--ds-radius-lg);\n box-shadow: var(--ds-elevation-md);\n z-index: var(--ds-z-dropdown);\n min-width: var(--radix-select-trigger-width);\n max-height: var(--radix-select-content-available-height);\n overflow: hidden;\n}\n\n.viewport {\n padding: var(--ds-space-1);\n}\n\n.item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--ds-space-2);\n padding: var(--ds-space-2) var(--ds-space-3);\n border-radius: var(--ds-radius-md);\n font-size: var(--ds-font-size-sm);\n color: var(--ds-color-text);\n cursor: pointer;\n outline: none;\n transition: background var(--ds-motion-duration-fast) var(--ds-motion-easing-out);\n user-select: none;\n}\n\n.item[data-highlighted] {\n background: var(--ds-color-primary-subtle);\n color: var(--ds-color-primary);\n}\n.item[data-disabled] {\n color: var(--ds-color-disabled-text);\n cursor: not-allowed;\n}\n.itemIndicator {\n color: var(--ds-color-primary);\n}\n\n.errorText {\n font-size: var(--ds-font-size-xs);\n color: var(--ds-color-error);\n}\n.helperText {\n font-size: var(--ds-font-size-xs);\n color: var(--ds-color-text-muted);\n}\n","import * as RadixSelect from \"@radix-ui/react-select\";\nimport React, { useId } from \"react\";\n\nimport styles from \"./Select.module.css\";\n\nexport interface SelectOption {\n value: string;\n label: string;\n disabled?: boolean;\n}\n\nexport type SelectSize = \"sm\" | \"md\" | \"lg\";\n\nexport interface SelectProps {\n options: SelectOption[];\n value?: string;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n label?: string;\n placeholder?: string;\n error?: string;\n helperText?: string;\n disabled?: boolean;\n size?: SelectSize;\n id?: string;\n className?: string;\n}\n\nexport const Select: React.FC<SelectProps> = ({\n options,\n value,\n defaultValue,\n onValueChange,\n label,\n placeholder = \"Selecione...\",\n error,\n helperText,\n disabled,\n size = \"md\",\n id,\n className\n}) => {\n const generatedId = useId();\n const selectId = id ?? generatedId;\n\n return (\n <div className={[styles.wrapper, className ?? \"\"].filter(Boolean).join(\" \")}>\n {label && (\n <label id={`${selectId}-label`} className={styles.label}>\n {label}\n </label>\n )}\n <RadixSelect.Root\n value={value}\n defaultValue={defaultValue}\n onValueChange={onValueChange}\n disabled={disabled}\n >\n <RadixSelect.Trigger\n id={selectId}\n aria-labelledby={label ? `${selectId}-label` : undefined}\n aria-invalid={!!error}\n className={[styles.trigger, styles[size], error ? styles.error : \"\"]\n .filter(Boolean)\n .join(\" \")}\n >\n <RadixSelect.Value placeholder={placeholder} />\n <RadixSelect.Icon className={styles.icon}>\n <svg width=\"12\" height=\"8\" viewBox=\"0 0 12 8\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"M1 1l5 5 5-5\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </RadixSelect.Icon>\n </RadixSelect.Trigger>\n\n <RadixSelect.Portal>\n <RadixSelect.Content className={styles.content} position=\"popper\" sideOffset={4}>\n <RadixSelect.Viewport className={styles.viewport}>\n {options.map((option) => (\n <RadixSelect.Item\n key={option.value}\n value={option.value}\n disabled={option.disabled}\n className={styles.item}\n >\n <RadixSelect.ItemText>{option.label}</RadixSelect.ItemText>\n <RadixSelect.ItemIndicator className={styles.itemIndicator}>\n <svg width=\"12\" height=\"10\" viewBox=\"0 0 12 10\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"M1 5l3 3 7-7\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </RadixSelect.ItemIndicator>\n </RadixSelect.Item>\n ))}\n </RadixSelect.Viewport>\n </RadixSelect.Content>\n </RadixSelect.Portal>\n </RadixSelect.Root>\n\n {error && (\n <span className={styles.errorText} role=\"alert\">\n {error}\n </span>\n )}\n {helperText && !error && <span className={styles.helperText}>{helperText}</span>}\n </div>\n );\n};\n\nSelect.displayName = \"Select\";\n",".content {\n background: var(--ds-color-text);\n color: var(--ds-color-text-inverse);\n font-family: var(--ds-font-family-base);\n font-size: var(--ds-font-size-xs);\n line-height: var(--ds-line-height-normal);\n padding: var(--ds-space-1) var(--ds-space-2);\n border-radius: var(--ds-radius-md);\n box-shadow: var(--ds-elevation-md);\n z-index: var(--ds-z-tooltip);\n max-width: 250px;\n animation: fadeIn var(--ds-motion-duration-fast) var(--ds-motion-easing-out);\n}\n\n.arrow {\n fill: var(--ds-color-text);\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n transform: scale(0.96);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n","import * as RadixTooltip from \"@radix-ui/react-tooltip\";\nimport React from \"react\";\n\nimport styles from \"./Tooltip.module.css\";\n\nexport type TooltipSide = \"top\" | \"right\" | \"bottom\" | \"left\";\n\nexport interface TooltipProps {\n content: React.ReactNode;\n children: React.ReactElement;\n side?: TooltipSide;\n delayDuration?: number;\n}\n\nexport const TooltipProvider = RadixTooltip.Provider;\n\nexport const Tooltip: React.FC<TooltipProps> = ({\n content,\n children,\n side = \"top\",\n delayDuration = 300\n}) => (\n <RadixTooltip.Root delayDuration={delayDuration}>\n <RadixTooltip.Trigger asChild>{children}</RadixTooltip.Trigger>\n <RadixTooltip.Portal>\n <RadixTooltip.Content side={side} className={styles.content} sideOffset={6}>\n {content}\n <RadixTooltip.Arrow className={styles.arrow} />\n </RadixTooltip.Content>\n </RadixTooltip.Portal>\n </RadixTooltip.Root>\n);\n\nTooltip.displayName = \"Tooltip\";\n",".list {\n display: flex;\n gap: var(--ds-space-2);\n list-style: none;\n margin: 0;\n padding: 0;\n flex-wrap: wrap;\n}\n\n.link {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--ds-radius-full);\n color: var(--ds-color-text-muted);\n background: var(--ds-color-bg-subtle);\n transition:\n color var(--ds-motion-duration-fast) var(--ds-motion-easing-out),\n background var(--ds-motion-duration-fast) var(--ds-motion-easing-out);\n text-decoration: none;\n}\n\n.link:hover {\n color: var(--ds-color-primary);\n background: var(--ds-color-primary-subtle);\n}\n.link:focus-visible {\n outline: 2px solid var(--ds-color-border-focus);\n outline-offset: 2px;\n}\n\n.sm {\n width: 32px;\n height: 32px;\n font-size: 14px;\n}\n.md {\n width: 40px;\n height: 40px;\n font-size: 16px;\n}\n.lg {\n width: 48px;\n height: 48px;\n font-size: 20px;\n}\n","import React from \"react\";\nimport {\n FaLinkedinIn,\n FaInstagram,\n FaGithub,\n FaYoutube,\n FaWhatsapp,\n FaFacebookF,\n FaTwitter\n} from \"react-icons/fa\";\n\nimport styles from \"./SocialIcons.module.css\";\n\nexport type SocialPlatform =\n | \"linkedin\"\n | \"instagram\"\n | \"github\"\n | \"youtube\"\n | \"whatsapp\"\n | \"facebook\"\n | \"twitter\";\n\nexport type SocialIconSize = \"sm\" | \"md\" | \"lg\";\n\nexport interface SocialLink {\n platform: SocialPlatform;\n url: string;\n label?: string;\n}\n\nexport interface SocialIconsProps {\n links: SocialLink[];\n size?: SocialIconSize;\n className?: string;\n}\n\nconst ICON_MAP: Record<SocialPlatform, React.ElementType> = {\n linkedin: FaLinkedinIn,\n instagram: FaInstagram,\n github: FaGithub,\n youtube: FaYoutube,\n whatsapp: FaWhatsapp,\n facebook: FaFacebookF,\n twitter: FaTwitter\n};\n\nconst DEFAULT_LABELS: Record<SocialPlatform, string> = {\n linkedin: \"Seguir no LinkedIn\",\n instagram: \"Seguir no Instagram\",\n github: \"Ver no GitHub\",\n youtube: \"Assistir no YouTube\",\n whatsapp: \"Conversar no WhatsApp\",\n facebook: \"Seguir no Facebook\",\n twitter: \"Seguir no Twitter\"\n};\n\nexport const SocialIcons: React.FC<SocialIconsProps> = ({ links, size = \"md\", className }) => (\n <ul className={[styles.list, className ?? \"\"].filter(Boolean).join(\" \")}>\n {links.map(({ platform, url, label }) => {\n const Icon = ICON_MAP[platform];\n const ariaLabel = label ?? DEFAULT_LABELS[platform];\n return (\n <li key={platform}>\n <a\n href={url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n aria-label={ariaLabel}\n className={[styles.link, styles[size]].join(\" \")}\n >\n <Icon aria-hidden=\"true\" />\n </a>\n </li>\n );\n })}\n </ul>\n);\n\nSocialIcons.displayName = \"SocialIcons\";\n",".card {\n background: var(--ds-color-surface);\n border: 1px solid var(--ds-color-border);\n overflow: hidden;\n}\n\n.header {\n padding: var(--ds-space-4) var(--ds-space-6);\n border-bottom: 1px solid var(--ds-color-border-muted);\n font-weight: var(--ds-font-weight-semibold);\n font-size: var(--ds-font-size-lg);\n color: var(--ds-color-text);\n}\n\n.body {\n padding: var(--ds-space-6);\n color: var(--ds-color-text);\n}\n\n.footer {\n padding: var(--ds-space-4) var(--ds-space-6);\n border-top: 1px solid var(--ds-color-border-muted);\n background: var(--ds-color-bg-subtle);\n display: flex;\n align-items: center;\n gap: var(--ds-space-2);\n}\n","import React from \"react\";\n\nimport type { ElevationKey, RadiiKey } from \"../../../tokens\";\n\nimport styles from \"./Card.module.css\";\n\nexport interface CardProps {\n elevation?: ElevationKey;\n radius?: RadiiKey;\n className?: string;\n children: React.ReactNode;\n}\n\ninterface CardSectionProps {\n className?: string;\n children: React.ReactNode;\n}\n\nconst CardHeader: React.FC<CardSectionProps> = ({ children, className }) => (\n <div className={[styles.header, className ?? \"\"].filter(Boolean).join(\" \")}>{children}</div>\n);\n\nconst CardBody: React.FC<CardSectionProps> = ({ children, className }) => (\n <div className={[styles.body, className ?? \"\"].filter(Boolean).join(\" \")}>{children}</div>\n);\n\nconst CardFooter: React.FC<CardSectionProps> = ({ children, className }) => (\n <div className={[styles.footer, className ?? \"\"].filter(Boolean).join(\" \")}>{children}</div>\n);\n\nexport const Card: React.FC<CardProps> & {\n Header: typeof CardHeader;\n Body: typeof CardBody;\n Footer: typeof CardFooter;\n} = ({ elevation = \"sm\", radius = \"lg\", className, children }) => (\n <div\n className={[styles.card, className ?? \"\"].filter(Boolean).join(\" \")}\n style={{\n boxShadow: `var(--ds-elevation-${elevation})`,\n borderRadius: `var(--ds-radius-${radius})`\n }}\n >\n {children}\n </div>\n);\n\nCard.Header = CardHeader;\nCard.Body = CardBody;\nCard.Footer = CardFooter;\nCard.displayName = \"Card\";\n",".overlay {\n position: fixed;\n inset: 0;\n background: var(--ds-color-bg-overlay);\n z-index: var(--ds-z-overlay);\n animation: overlayIn var(--ds-motion-duration-normal) var(--ds-motion-easing-out);\n}\n\n.content {\n position: fixed;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background: var(--ds-color-surface);\n border-radius: var(--ds-radius-xl);\n box-shadow: var(--ds-elevation-xl);\n z-index: var(--ds-z-modal);\n max-height: 90vh;\n overflow-y: auto;\n display: flex;\n flex-direction: column;\n animation: contentIn var(--ds-motion-duration-normal) var(--ds-motion-easing-spring);\n}\n\n.sm {\n width: min(400px, 90vw);\n}\n.md {\n width: min(560px, 90vw);\n}\n.lg {\n width: min(720px, 90vw);\n}\n.xl {\n width: min(900px, 90vw);\n}\n.full {\n width: calc(100vw - 32px);\n height: calc(100vh - 32px);\n top: 16px;\n left: 16px;\n transform: none;\n}\n\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--ds-space-4);\n padding: var(--ds-space-4) var(--ds-space-6);\n border-bottom: 1px solid var(--ds-color-border-muted);\n}\n\n.title {\n font-family: var(--ds-font-family-heading);\n font-size: var(--ds-font-size-xl);\n font-weight: var(--ds-font-weight-semibold);\n color: var(--ds-color-text);\n margin: 0;\n}\n\n.description {\n padding: var(--ds-space-2) var(--ds-space-6) 0;\n font-size: var(--ds-font-size-sm);\n color: var(--ds-color-text-muted);\n}\n\n.body {\n padding: var(--ds-space-6);\n flex: 1;\n}\n\n.close {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border-radius: var(--ds-radius-md);\n border: none;\n background: transparent;\n color: var(--ds-color-text-muted);\n cursor: pointer;\n transition:\n background var(--ds-motion-duration-fast) var(--ds-motion-easing-out),\n color var(--ds-motion-duration-fast) var(--ds-motion-easing-out);\n flex-shrink: 0;\n}\n\n.close:hover {\n background: var(--ds-color-bg-subtle);\n color: var(--ds-color-text);\n}\n.close:focus-visible {\n outline: 2px solid var(--ds-color-border-focus);\n outline-offset: 2px;\n}\n\n@keyframes overlayIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes contentIn {\n from {\n opacity: 0;\n transform: translate(-50%, -48%) scale(0.96);\n }\n to {\n opacity: 1;\n transform: translate(-50%, -50%) scale(1);\n }\n}\n","import * as Dialog from \"@radix-ui/react-dialog\";\nimport React from \"react\";\n\nimport styles from \"./Modal.module.css\";\n\nexport type ModalSize = \"sm\" | \"md\" | \"lg\" | \"xl\" | \"full\";\n\nexport interface ModalProps {\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n title?: string;\n description?: string;\n size?: ModalSize;\n children: React.ReactNode;\n trigger?: React.ReactElement;\n}\n\nexport const Modal: React.FC<ModalProps> = ({\n open,\n onOpenChange,\n title,\n description,\n size = \"md\",\n children,\n trigger\n}) => (\n <Dialog.Root open={open} onOpenChange={onOpenChange}>\n {trigger && <Dialog.Trigger asChild>{trigger}</Dialog.Trigger>}\n <Dialog.Portal>\n <Dialog.Overlay className={styles.overlay} />\n <Dialog.Content\n className={[styles.content, styles[size]].join(\" \")}\n aria-describedby={description ? \"modal-description\" : undefined}\n >\n <div className={styles.header}>\n {title && <Dialog.Title className={styles.title}>{title}</Dialog.Title>}\n <Dialog.Close asChild>\n <button className={styles.close} aria-label=\"Fechar\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"M2 2l12 12M14 2L2 14\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n />\n </svg>\n </button>\n </Dialog.Close>\n </div>\n {description && (\n <Dialog.Description id=\"modal-description\" className={styles.description}>\n {description}\n </Dialog.Description>\n )}\n <div className={styles.body}>{children}</div>\n </Dialog.Content>\n </Dialog.Portal>\n </Dialog.Root>\n);\n\nModal.displayName = \"Modal\";\n",".overlay {\n position: fixed;\n inset: 0;\n background: var(--ds-color-bg-overlay);\n z-index: var(--ds-z-overlay);\n animation: fadeIn var(--ds-motion-duration-normal) var(--ds-motion-easing-out);\n}\n\n.content {\n position: fixed;\n background: var(--ds-color-surface);\n box-shadow: var(--ds-elevation-xl);\n z-index: var(--ds-z-modal);\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n}\n\n.right {\n top: 0;\n right: 0;\n bottom: 0;\n width: min(480px, 90vw);\n animation: slideInRight var(--ds-motion-duration-normal) var(--ds-motion-easing-out);\n}\n.left {\n top: 0;\n left: 0;\n bottom: 0;\n width: min(480px, 90vw);\n animation: slideInLeft var(--ds-motion-duration-normal) var(--ds-motion-easing-out);\n}\n.top {\n top: 0;\n left: 0;\n right: 0;\n height: min(360px, 60vh);\n animation: slideInTop var(--ds-motion-duration-normal) var(--ds-motion-easing-out);\n}\n.bottom {\n bottom: 0;\n left: 0;\n right: 0;\n height: min(360px, 60vh);\n animation: slideInBottom var(--ds-motion-duration-normal) var(--ds-motion-easing-out);\n}\n\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: var(--ds-space-4) var(--ds-space-6);\n border-bottom: 1px solid var(--ds-color-border-muted);\n}\n.title {\n font-size: var(--ds-font-size-xl);\n font-weight: var(--ds-font-weight-semibold);\n color: var(--ds-color-text);\n margin: 0;\n}\n.body {\n padding: var(--ds-space-6);\n flex: 1;\n}\n.close {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border-radius: var(--ds-radius-md);\n border: none;\n background: transparent;\n color: var(--ds-color-text-muted);\n cursor: pointer;\n}\n.close:hover {\n background: var(--ds-color-bg-subtle);\n color: var(--ds-color-text);\n}\n.close:focus-visible {\n outline: 2px solid var(--ds-color-border-focus);\n outline-offset: 2px;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes slideInRight {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0);\n }\n}\n@keyframes slideInLeft {\n from {\n transform: translateX(-100%);\n }\n to {\n transform: translateX(0);\n }\n}\n@keyframes slideInTop {\n from {\n transform: translateY(-100%);\n }\n to {\n transform: translateY(0);\n }\n}\n@keyframes slideInBottom {\n from {\n transform: translateY(100%);\n }\n to {\n transform: translateY(0);\n }\n}\n","import * as Dialog from \"@radix-ui/react-dialog\";\nimport React from \"react\";\n\nimport styles from \"./Drawer.module.css\";\n\nexport type DrawerSide = \"left\" | \"right\" | \"top\" | \"bottom\";\n\nexport interface DrawerProps {\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n title?: string;\n side?: DrawerSide;\n children: React.ReactNode;\n trigger?: React.ReactElement;\n}\n\nexport const Drawer: React.FC<DrawerProps> = ({\n open,\n onOpenChange,\n title,\n side = \"right\",\n children,\n trigger\n}) => (\n <Dialog.Root open={open} onOpenChange={onOpenChange}>\n {trigger && <Dialog.Trigger asChild>{trigger}</Dialog.Trigger>}\n <Dialog.Portal>\n <Dialog.Overlay className={styles.overlay} />\n <Dialog.Content className={[styles.content, styles[side]].join(\" \")}>\n <div className={styles.header}>\n {title && <Dialog.Title className={styles.title}>{title}</Dialog.Title>}\n <Dialog.Close asChild>\n <button className={styles.close} aria-label=\"Fechar\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"M2 2l12 12M14 2L2 14\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n />\n </svg>\n </button>\n </Dialog.Close>\n </div>\n <div className={styles.body}>{children}</div>\n </Dialog.Content>\n </Dialog.Portal>\n </Dialog.Root>\n);\n\nDrawer.displayName = \"Drawer\";\n",".root {\n display: flex;\n flex-direction: column;\n}\n.list {\n display: flex;\n border-bottom: 2px solid var(--ds-color-border);\n gap: 0;\n}\n.trigger {\n padding: var(--ds-space-2) var(--ds-space-4);\n font-family: var(--ds-font-family-base);\n font-size: var(--ds-font-size-sm);\n font-weight: var(--ds-font-weight-medium);\n color: var(--ds-color-text-muted);\n background: transparent;\n border: none;\n border-bottom: 2px solid transparent;\n margin-bottom: -2px;\n cursor: pointer;\n transition:\n color var(--ds-motion-duration-fast) var(--ds-motion-easing-out),\n border-color var(--ds-motion-duration-fast) var(--ds-motion-easing-out);\n outline: none;\n}\n.trigger:hover:not([disabled]) {\n color: var(--ds-color-text);\n}\n.trigger[data-state=\"active\"] {\n color: var(--ds-color-primary);\n border-bottom-color: var(--ds-color-primary);\n}\n.trigger[disabled] {\n color: var(--ds-color-disabled-text);\n cursor: not-allowed;\n}\n.trigger:focus-visible {\n outline: 2px solid var(--ds-color-border-focus);\n outline-offset: 2px;\n border-radius: var(--ds-radius-sm);\n}\n.content {\n padding: var(--ds-space-6) 0;\n}\n","import * as RadixTabs from \"@radix-ui/react-tabs\";\nimport React from \"react\";\n\nimport styles from \"./Tabs.module.css\";\n\nexport interface TabItem {\n value: string;\n label: string;\n content: React.ReactNode;\n disabled?: boolean;\n}\n\nexport interface TabsProps {\n tabs: TabItem[];\n defaultValue?: string;\n value?: string;\n onValueChange?: (value: string) => void;\n className?: string;\n}\n\nexport const Tabs: React.FC<TabsProps> = ({\n tabs,\n defaultValue,\n value,\n onValueChange,\n className\n}) => (\n <RadixTabs.Root\n defaultValue={defaultValue ?? tabs[0]?.value}\n value={value}\n onValueChange={onValueChange}\n className={[styles.root, className ?? \"\"].filter(Boolean).join(\" \")}\n >\n <RadixTabs.List className={styles.list} aria-label=\"Tabs\">\n {tabs.map((tab) => (\n <RadixTabs.Trigger\n key={tab.value}\n value={tab.value}\n disabled={tab.disabled}\n className={styles.trigger}\n >\n {tab.label}\n </RadixTabs.Trigger>\n ))}\n </RadixTabs.List>\n {tabs.map((tab) => (\n <RadixTabs.Content key={tab.value} value={tab.value} className={styles.content}>\n {tab.content}\n </RadixTabs.Content>\n ))}\n </RadixTabs.Root>\n);\n\nTabs.displayName = \"Tabs\";\n",".root {\n border: 1px solid var(--ds-color-border);\n border-radius: var(--ds-radius-lg);\n overflow: hidden;\n}\n.item {\n border-bottom: 1px solid var(--ds-color-border);\n}\n.item:last-child {\n border-bottom: none;\n}\n.item[data-disabled] {\n opacity: 0.5;\n}\n.trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--ds-space-4);\n width: 100%;\n padding: var(--ds-space-4) var(--ds-space-6);\n font-family: var(--ds-font-family-base);\n font-size: var(--ds-font-size-md);\n font-weight: var(--ds-font-weight-medium);\n color: var(--ds-color-text);\n background: transparent;\n border: none;\n cursor: pointer;\n text-align: left;\n transition: background var(--ds-motion-duration-fast) var(--ds-motion-easing-out);\n outline: none;\n}\n.trigger:hover {\n background: var(--ds-color-bg-subtle);\n}\n.trigger:focus-visible {\n outline: 2px solid var(--ds-color-border-focus);\n outline-offset: -2px;\n}\n.chevron {\n flex-shrink: 0;\n transition: transform var(--ds-motion-duration-normal) var(--ds-motion-easing-in-out);\n}\n.trigger[data-state=\"open\"] .chevron {\n transform: rotate(180deg);\n}\n.content {\n overflow: hidden;\n}\n.content[data-state=\"open\"] {\n animation: slideDown var(--ds-motion-duration-normal) var(--ds-motion-easing-out);\n}\n.content[data-state=\"closed\"] {\n animation: slideUp var(--ds-motion-duration-normal) var(--ds-motion-easing-out);\n}\n.contentInner {\n padding: 0 var(--ds-space-6) var(--ds-space-4);\n color: var(--ds-color-text-muted);\n font-size: var(--ds-font-size-md);\n}\n@keyframes slideDown {\n from {\n height: 0;\n }\n to {\n height: var(--radix-accordion-content-height);\n }\n}\n@keyframes slideUp {\n from {\n height: var(--radix-accordion-content-height);\n }\n to {\n height: 0;\n }\n}\n","import * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport React from \"react\";\n\nimport styles from \"./Accordion.module.css\";\n\nexport interface AccordionItem {\n value: string;\n trigger: React.ReactNode;\n content: React.ReactNode;\n disabled?: boolean;\n}\n\nexport interface AccordionProps {\n items: AccordionItem[];\n type?: \"single\" | \"multiple\";\n defaultValue?: string | string[];\n value?: string | string[];\n onValueChange?: (value: string | string[]) => void;\n collapsible?: boolean;\n className?: string;\n}\n\nexport const Accordion: React.FC<AccordionProps> = ({\n items,\n type = \"single\",\n defaultValue,\n value,\n onValueChange,\n collapsible = true,\n className\n}) => {\n const rootClassName = [styles.root, className ?? \"\"].filter(Boolean).join(\" \");\n\n const content = items.map((item) => (\n <RadixAccordion.Item\n key={item.value}\n value={item.value}\n disabled={item.disabled}\n className={styles.item}\n >\n <RadixAccordion.Header>\n <RadixAccordion.Trigger className={styles.trigger}>\n {item.trigger}\n <svg\n className={styles.chevron}\n width=\"14\"\n height=\"9\"\n viewBox=\"0 0 14 9\"\n fill=\"none\"\n aria-hidden=\"true\"\n >\n <path\n d=\"M1 1l6 6 6-6\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </RadixAccordion.Trigger>\n </RadixAccordion.Header>\n <RadixAccordion.Content className={styles.content}>\n <div className={styles.contentInner}>{item.content}</div>\n </RadixAccordion.Content>\n </RadixAccordion.Item>\n ));\n\n if (type === \"multiple\") {\n return (\n <RadixAccordion.Root\n type=\"multiple\"\n className={rootClassName}\n defaultValue={defaultValue as string[] | undefined}\n value={value as string[] | undefined}\n onValueChange={onValueChange as ((v: string[]) => void) | undefined}\n >\n {content}\n </RadixAccordion.Root>\n );\n }\n\n return (\n <RadixAccordion.Root\n type=\"single\"\n collapsible={collapsible}\n className={rootClassName}\n defaultValue={defaultValue as string | undefined}\n value={value as string | undefined}\n onValueChange={onValueChange as ((v: string) => void) | undefined}\n >\n {content}\n </RadixAccordion.Root>\n );\n};\n\nAccordion.displayName = \"Accordion\";\n",".viewport {\n position: fixed;\n bottom: var(--ds-space-6);\n right: var(--ds-space-6);\n display: flex;\n flex-direction: column;\n gap: var(--ds-space-2);\n width: 360px;\n max-width: calc(100vw - var(--ds-space-8));\n z-index: var(--ds-z-toast);\n list-style: none;\n padding: 0;\n margin: 0;\n outline: none;\n}\n\n.root {\n background: var(--ds-color-surface);\n border-radius: var(--ds-radius-lg);\n box-shadow: var(--ds-elevation-lg);\n border-left: 4px solid;\n animation: slideIn var(--ds-motion-duration-normal) var(--ds-motion-easing-out);\n}\n\n.root[data-state=\"closed\"] {\n animation: slideOut var(--ds-motion-duration-normal) var(--ds-motion-easing-in);\n}\n\n.default {\n border-color: var(--ds-color-border-strong);\n}\n.success {\n border-color: var(--ds-color-success);\n}\n.warning {\n border-color: var(--ds-color-warning);\n}\n.error {\n border-color: var(--ds-color-error);\n}\n.info {\n border-color: var(--ds-color-info);\n}\n\n.content {\n display: flex;\n align-items: flex-start;\n gap: var(--ds-space-3);\n padding: var(--ds-space-4);\n}\n.text {\n flex: 1;\n min-width: 0;\n}\n.title {\n font-size: var(--ds-font-size-sm);\n font-weight: var(--ds-font-weight-semibold);\n color: var(--ds-color-text);\n margin: 0;\n}\n.description {\n font-size: var(--ds-font-size-xs);\n color: var(--ds-color-text-muted);\n margin-top: var(--ds-space-1);\n}\n.close {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n border-radius: var(--ds-radius-sm);\n border: none;\n background: transparent;\n color: var(--ds-color-text-muted);\n cursor: pointer;\n flex-shrink: 0;\n padding: 0;\n}\n.close:hover {\n background: var(--ds-color-bg-subtle);\n}\n.close:focus-visible {\n outline: 2px solid var(--ds-color-border-focus);\n outline-offset: 2px;\n}\n\n@keyframes slideIn {\n from {\n transform: translateX(calc(100% + var(--ds-space-6)));\n opacity: 0;\n }\n to {\n transform: translateX(0);\n opacity: 1;\n }\n}\n@keyframes slideOut {\n from {\n transform: translateX(0);\n opacity: 1;\n }\n to {\n transform: translateX(calc(100% + var(--ds-space-6)));\n opacity: 0;\n }\n}\n","import * as RadixToast from \"@radix-ui/react-toast\";\nimport React, { createContext, useCallback, useContext, useState } from \"react\";\n\nimport styles from \"./Toast.module.css\";\n\nexport type ToastVariant = \"default\" | \"success\" | \"warning\" | \"error\" | \"info\";\n\nexport interface ToastMessage {\n id: string;\n title: string;\n description?: string;\n variant?: ToastVariant;\n duration?: number;\n}\n\ninterface ToastContextValue {\n show: (message: Omit<ToastMessage, \"id\">) => void;\n}\n\nconst ToastContext = createContext<ToastContextValue | null>(null);\n\nexport const useToast = (): ToastContextValue => {\n const ctx = useContext(ToastContext);\n if (!ctx) throw new Error(\"useToast must be used within ToastProvider\");\n return ctx;\n};\n\nexport const ToastProvider: React.FC<{ children: React.ReactNode }> = ({ children }) => {\n const [toasts, setToasts] = useState<ToastMessage[]>([]);\n\n const show = useCallback((message: Omit<ToastMessage, \"id\">) => {\n const id = Math.random().toString(36).slice(2);\n setToasts((prev) => [...prev, { ...message, id }]);\n }, []);\n\n const dismiss = useCallback((id: string) => {\n setToasts((prev) => prev.filter((t) => t.id !== id));\n }, []);\n\n return (\n <ToastContext.Provider value={{ show }}>\n <RadixToast.Provider swipeDirection=\"right\">\n {children}\n {toasts.map((toast) => (\n <RadixToast.Root\n key={toast.id}\n duration={toast.duration ?? 4000}\n className={[styles.root, styles[toast.variant ?? \"default\"]].join(\" \")}\n onOpenChange={(open) => {\n if (!open) dismiss(toast.id);\n }}\n >\n <div className={styles.content}>\n <div className={styles.text}>\n <RadixToast.Title className={styles.title}>{toast.title}</RadixToast.Title>\n {toast.description && (\n <RadixToast.Description className={styles.description}>\n {toast.description}\n </RadixToast.Description>\n )}\n </div>\n <RadixToast.Close asChild>\n <button className={styles.close} aria-label=\"Fechar notificação\">\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"M1 1l10 10M11 1L1 11\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n />\n </svg>\n </button>\n </RadixToast.Close>\n </div>\n </RadixToast.Root>\n ))}\n <RadixToast.Viewport className={styles.viewport} aria-label=\"Notificações\" role=\"region\" />\n </RadixToast.Provider>\n </ToastContext.Provider>\n );\n};\n",".wrapper {\n width: 100%;\n overflow-x: auto;\n border: 1px solid var(--ds-color-border);\n border-radius: var(--ds-radius-lg);\n}\n.table {\n width: 100%;\n border-collapse: collapse;\n font-family: var(--ds-font-family-base);\n font-size: var(--ds-font-size-sm);\n}\n.caption {\n padding: var(--ds-space-3) var(--ds-space-4);\n text-align: left;\n font-size: var(--ds-font-size-sm);\n color: var(--ds-color-text-muted);\n}\n.head {\n background: var(--ds-color-bg-subtle);\n}\n.stickyHeader .head {\n position: sticky;\n top: 0;\n z-index: var(--ds-z-raised);\n}\n.th {\n padding: var(--ds-space-3) var(--ds-space-4);\n text-align: left;\n font-weight: var(--ds-font-weight-semibold);\n color: var(--ds-color-text);\n border-bottom: 2px solid var(--ds-color-border);\n white-space: nowrap;\n}\n.td {\n padding: var(--ds-space-3) var(--ds-space-4);\n color: var(--ds-color-text);\n border-bottom: 1px solid var(--ds-color-border-muted);\n vertical-align: middle;\n}\n.row:last-child .td {\n border-bottom: none;\n}\n.body .row:hover {\n background: var(--ds-color-bg-subtle);\n}\n","import React from \"react\";\n\nimport styles from \"./Table.module.css\";\n\ntype TableHeadProps = React.HTMLAttributes<HTMLTableSectionElement>;\ntype TableBodyProps = React.HTMLAttributes<HTMLTableSectionElement>;\ntype TableRowProps = React.HTMLAttributes<HTMLTableRowElement>;\n\ninterface TableCellProps extends React.TdHTMLAttributes<HTMLTableCellElement> {\n as?: \"td\" | \"th\";\n scope?: \"col\" | \"row\" | \"colgroup\" | \"rowgroup\";\n}\n\ninterface TableRootProps extends React.TableHTMLAttributes<HTMLTableElement> {\n caption?: string;\n stickyHeader?: boolean;\n}\n\nconst TableHead: React.FC<TableHeadProps> = ({ className, children, ...props }) => (\n <thead className={[styles.head, className ?? \"\"].filter(Boolean).join(\" \")} {...props}>\n {children}\n </thead>\n);\n\nconst TableBody: React.FC<TableBodyProps> = ({ className, children, ...props }) => (\n <tbody className={[styles.body, className ?? \"\"].filter(Boolean).join(\" \")} {...props}>\n {children}\n </tbody>\n);\n\nconst TableRow: React.FC<TableRowProps> = ({ className, children, ...props }) => (\n <tr className={[styles.row, className ?? \"\"].filter(Boolean).join(\" \")} {...props}>\n {children}\n </tr>\n);\n\nconst TableCell: React.FC<TableCellProps> = ({\n as: Tag = \"td\",\n scope,\n className,\n children,\n ...props\n}) => {\n const cellClass = [Tag === \"th\" ? styles.th : styles.td, className ?? \"\"]\n .filter(Boolean)\n .join(\" \");\n return (\n <Tag\n className={cellClass}\n scope={scope}\n {...(props as React.HTMLAttributes<HTMLTableCellElement>)}\n >\n {children}\n </Tag>\n );\n};\n\nexport const Table: React.FC<TableRootProps> & {\n Head: typeof TableHead;\n Body: typeof TableBody;\n Row: typeof TableRow;\n Cell: typeof TableCell;\n} = ({ caption, stickyHeader, className, children, ...props }) => (\n <div className={styles.wrapper}>\n <table\n className={[styles.table, stickyHeader ? styles.stickyHeader : \"\", className ?? \"\"]\n .filter(Boolean)\n .join(\" \")}\n {...props}\n >\n {caption && <caption className={styles.caption}>{caption}</caption>}\n {children}\n </table>\n </div>\n);\n\nTable.Head = TableHead;\nTable.Body = TableBody;\nTable.Row = TableRow;\nTable.Cell = TableCell;\nTable.displayName = \"Table\";\n"]}
@@ -0,0 +1,295 @@
1
+ declare const primitiveColors: {
2
+ readonly blue: {
3
+ readonly 50: "#EAF4FB";
4
+ readonly 100: "#C5E0F2";
5
+ readonly 200: "#9BCCE9";
6
+ readonly 300: "#6DB7DF";
7
+ readonly 400: "#42A2D5";
8
+ readonly 500: "#1B8ECB";
9
+ readonly 600: "#1170A8";
10
+ readonly 700: "#02548B";
11
+ readonly 800: "#013E6A";
12
+ readonly 900: "#012849";
13
+ };
14
+ readonly teal: {
15
+ readonly 50: "#E9FAF6";
16
+ readonly 100: "#C0F1E6";
17
+ readonly 200: "#93E7D5";
18
+ readonly 300: "#62DAC2";
19
+ readonly 400: "#34CEAF";
20
+ readonly 500: "#16B597";
21
+ readonly 600: "#0E9278";
22
+ readonly 700: "#087059";
23
+ readonly 800: "#044E3D";
24
+ readonly 900: "#012E24";
25
+ };
26
+ readonly orange: {
27
+ readonly 50: "#FFF0EB";
28
+ readonly 100: "#FFDDD4";
29
+ readonly 200: "#FFC0AE";
30
+ readonly 300: "#FF9F87";
31
+ readonly 400: "#FF7358";
32
+ readonly 500: "#FF3C00";
33
+ readonly 600: "#D83200";
34
+ readonly 700: "#B02700";
35
+ readonly 800: "#881D00";
36
+ readonly 900: "#601300";
37
+ };
38
+ readonly red: {
39
+ readonly 50: "#FEF2F2";
40
+ readonly 100: "#FEE2E2";
41
+ readonly 200: "#FECACA";
42
+ readonly 300: "#FCA5A5";
43
+ readonly 400: "#F87171";
44
+ readonly 500: "#EF4444";
45
+ readonly 600: "#DC2626";
46
+ readonly 700: "#B91C1C";
47
+ readonly 800: "#991B1B";
48
+ readonly 900: "#7F1D1D";
49
+ };
50
+ readonly green: {
51
+ readonly 50: "#ECFDF5";
52
+ readonly 100: "#D1FAE5";
53
+ readonly 200: "#A7F3D0";
54
+ readonly 300: "#6EE7B7";
55
+ readonly 400: "#34D399";
56
+ readonly 500: "#10B981";
57
+ readonly 600: "#059669";
58
+ readonly 700: "#047857";
59
+ readonly 800: "#065F46";
60
+ readonly 900: "#064E3B";
61
+ };
62
+ readonly yellow: {
63
+ readonly 50: "#FFFBEB";
64
+ readonly 100: "#FEF3C7";
65
+ readonly 200: "#FDE68A";
66
+ readonly 300: "#FCD34D";
67
+ readonly 400: "#FBBF24";
68
+ readonly 500: "#F59E0B";
69
+ readonly 600: "#D97706";
70
+ readonly 700: "#B45309";
71
+ readonly 800: "#92400E";
72
+ readonly 900: "#78350F";
73
+ };
74
+ readonly gray: {
75
+ readonly 50: "#F8F9FA";
76
+ readonly 100: "#E9ECEF";
77
+ readonly 200: "#DEE2E6";
78
+ readonly 300: "#CED4DA";
79
+ readonly 400: "#ADB5BD";
80
+ readonly 500: "#6C757D";
81
+ readonly 600: "#495057";
82
+ readonly 700: "#343A40";
83
+ readonly 800: "#212529";
84
+ readonly 900: "#111315";
85
+ };
86
+ readonly white: "#FFFFFF";
87
+ readonly black: "#000000";
88
+ };
89
+ type PrimitiveColors = typeof primitiveColors;
90
+
91
+ declare const semanticColors: {
92
+ readonly primary: {
93
+ readonly default: "#02548B";
94
+ readonly hover: "#1170A8";
95
+ readonly active: "#013E6A";
96
+ readonly subtle: "#EAF4FB";
97
+ readonly muted: "#C5E0F2";
98
+ readonly on: "#FFFFFF";
99
+ };
100
+ readonly secondary: {
101
+ readonly default: "#16B597";
102
+ readonly hover: "#0E9278";
103
+ readonly active: "#087059";
104
+ readonly subtle: "#E9FAF6";
105
+ readonly muted: "#C0F1E6";
106
+ readonly on: "#FFFFFF";
107
+ };
108
+ readonly accent: {
109
+ readonly default: "#FF3C00";
110
+ readonly hover: "#D83200";
111
+ readonly active: "#B02700";
112
+ readonly subtle: "#FFF0EB";
113
+ readonly on: "#FFFFFF";
114
+ };
115
+ readonly success: {
116
+ readonly default: "#059669";
117
+ readonly hover: "#047857";
118
+ readonly subtle: "#ECFDF5";
119
+ readonly muted: "#D1FAE5";
120
+ readonly on: "#FFFFFF";
121
+ };
122
+ readonly warning: {
123
+ readonly default: "#F59E0B";
124
+ readonly hover: "#D97706";
125
+ readonly subtle: "#FFFBEB";
126
+ readonly muted: "#FEF3C7";
127
+ readonly on: "#111315";
128
+ };
129
+ readonly error: {
130
+ readonly default: "#DC2626";
131
+ readonly hover: "#B91C1C";
132
+ readonly subtle: "#FEF2F2";
133
+ readonly muted: "#FEE2E2";
134
+ readonly on: "#FFFFFF";
135
+ };
136
+ readonly info: {
137
+ readonly default: "#1B8ECB";
138
+ readonly hover: "#1170A8";
139
+ readonly subtle: "#EAF4FB";
140
+ readonly muted: "#C5E0F2";
141
+ readonly on: "#FFFFFF";
142
+ };
143
+ readonly background: {
144
+ readonly default: "#FFFFFF";
145
+ readonly subtle: "#F8F9FA";
146
+ readonly muted: "#E9ECEF";
147
+ readonly overlay: "rgba(0, 0, 0, 0.5)";
148
+ };
149
+ readonly surface: {
150
+ readonly default: "#FFFFFF";
151
+ readonly raised: "#FFFFFF";
152
+ readonly overlay: "#FFFFFF";
153
+ };
154
+ readonly text: {
155
+ readonly default: "#212529";
156
+ readonly muted: "#6C757D";
157
+ readonly subtle: "#ADB5BD";
158
+ readonly disabled: "#CED4DA";
159
+ readonly inverse: "#FFFFFF";
160
+ readonly link: "#02548B";
161
+ readonly linkHover: "#1170A8";
162
+ };
163
+ readonly border: {
164
+ readonly default: "#DEE2E6";
165
+ readonly strong: "#CED4DA";
166
+ readonly muted: "#E9ECEF";
167
+ readonly focus: "#1B8ECB";
168
+ readonly error: "#EF4444";
169
+ };
170
+ readonly disabled: {
171
+ readonly background: "#E9ECEF";
172
+ readonly text: "#ADB5BD";
173
+ readonly border: "#DEE2E6";
174
+ };
175
+ };
176
+ type SemanticColors = typeof semanticColors;
177
+
178
+ declare const spacing: {
179
+ readonly 0: "0px";
180
+ readonly 1: "4px";
181
+ readonly 2: "8px";
182
+ readonly 3: "12px";
183
+ readonly 4: "16px";
184
+ readonly 5: "20px";
185
+ readonly 6: "24px";
186
+ readonly 8: "32px";
187
+ readonly 10: "40px";
188
+ readonly 12: "48px";
189
+ readonly 16: "64px";
190
+ readonly 24: "96px";
191
+ readonly 32: "128px";
192
+ };
193
+ type SpacingKey = keyof typeof spacing;
194
+ type SpacingValue = (typeof spacing)[SpacingKey];
195
+
196
+ declare const typography: {
197
+ readonly fontFamily: {
198
+ readonly base: "'Inter', 'Segoe UI', system-ui, -apple-system, sans-serif";
199
+ readonly heading: "'Inter', 'Segoe UI', system-ui, -apple-system, sans-serif";
200
+ readonly mono: "'JetBrains Mono', 'Fira Code', 'Courier New', monospace";
201
+ };
202
+ readonly fontSize: {
203
+ readonly xs: "0.75rem";
204
+ readonly sm: "0.875rem";
205
+ readonly md: "1rem";
206
+ readonly lg: "1.125rem";
207
+ readonly xl: "1.25rem";
208
+ readonly "2xl": "1.5rem";
209
+ readonly "3xl": "1.875rem";
210
+ readonly "4xl": "2.25rem";
211
+ };
212
+ readonly fontWeight: {
213
+ readonly regular: "400";
214
+ readonly medium: "500";
215
+ readonly semibold: "600";
216
+ readonly bold: "700";
217
+ };
218
+ readonly lineHeight: {
219
+ readonly tight: "1.25";
220
+ readonly snug: "1.375";
221
+ readonly normal: "1.5";
222
+ readonly relaxed: "1.625";
223
+ readonly loose: "2";
224
+ };
225
+ readonly letterSpacing: {
226
+ readonly tight: "-0.025em";
227
+ readonly normal: "0em";
228
+ readonly wide: "0.025em";
229
+ readonly wider: "0.05em";
230
+ };
231
+ };
232
+ type Typography = typeof typography;
233
+
234
+ declare const radii: {
235
+ readonly none: "0px";
236
+ readonly sm: "2px";
237
+ readonly md: "4px";
238
+ readonly lg: "8px";
239
+ readonly xl: "12px";
240
+ readonly "2xl": "16px";
241
+ readonly full: "9999px";
242
+ };
243
+ type RadiiKey = keyof typeof radii;
244
+
245
+ declare const elevation: {
246
+ readonly none: "none";
247
+ readonly sm: "0 1px 2px 0 rgba(0, 0, 0, 0.05)";
248
+ readonly md: "0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)";
249
+ readonly lg: "0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)";
250
+ readonly xl: "0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)";
251
+ readonly "2xl": "0 25px 50px -12px rgba(0, 0, 0, 0.25)";
252
+ };
253
+ type ElevationKey = keyof typeof elevation;
254
+
255
+ declare const zIndex: {
256
+ readonly base: 0;
257
+ readonly raised: 1;
258
+ readonly dropdown: 1000;
259
+ readonly sticky: 1020;
260
+ readonly overlay: 1040;
261
+ readonly modal: 1050;
262
+ readonly toast: 1060;
263
+ readonly tooltip: 1070;
264
+ };
265
+ type ZIndexKey = keyof typeof zIndex;
266
+
267
+ declare const motion: {
268
+ readonly duration: {
269
+ readonly fast: "100ms";
270
+ readonly normal: "200ms";
271
+ readonly slow: "300ms";
272
+ readonly slower: "500ms";
273
+ };
274
+ readonly easing: {
275
+ readonly easeIn: "cubic-bezier(0.4, 0, 1, 1)";
276
+ readonly easeOut: "cubic-bezier(0, 0, 0.2, 1)";
277
+ readonly easeInOut: "cubic-bezier(0.4, 0, 0.2, 1)";
278
+ readonly linear: "linear";
279
+ readonly spring: "cubic-bezier(0.34, 1.56, 0.64, 1)";
280
+ };
281
+ };
282
+ type Motion = typeof motion;
283
+
284
+ declare const breakpoints: {
285
+ readonly xs: 0;
286
+ readonly sm: 576;
287
+ readonly md: 768;
288
+ readonly lg: 992;
289
+ readonly xl: 1200;
290
+ readonly xxl: 1400;
291
+ };
292
+ type BreakpointKey = keyof typeof breakpoints;
293
+ declare function mediaQuery(bp: BreakpointKey): string;
294
+
295
+ export { type BreakpointKey, type ElevationKey, type Motion, type PrimitiveColors, type RadiiKey, type SemanticColors, type SpacingKey, type SpacingValue, type Typography, type ZIndexKey, breakpoints, elevation, mediaQuery, motion, primitiveColors, radii, semanticColors, spacing, typography, zIndex };