UNPKG

@rdsaude/pulso-react-components

Version:

Biblioteca de componentes React do Pulso Design System da RD Saúde oferece componentes consistentes e de alto desempenho, alinhados com os padrões da RDSaúde. Ideal para desenvolver aplicações modernas e acessíveis.

1 lines 29.9 kB
{"version":3,"sources":["../../../src/components/checkbox/index.ts","../../../src/components/checkbox/checkbox.tsx","../../../src/components/icon/index.tsx","../../../src/hooks/use-theme.ts","../../../src/components/theme-provider/index.tsx","../../../src/utils/tv.ts","../../../src/components/checkbox/checkbox.styles.ts","../../../src/components/checkbox/components/checkbox-label/checkbox.label.styles.ts","../../../src/components/checkbox/components/checkbox-label/index.tsx","../../../src/components/checkbox/components/helper-text/helper-text.styles.ts","../../../src/components/checkbox/components/helper-text/index.tsx"],"sourcesContent":["export { Checkbox } from './checkbox'\nexport type { TCheckboxProps } from './types'\n","import type { IconName } from '@raiadrogasil/pulso-icons'\nimport { Children, cloneElement, forwardRef, isValidElement } from 'react'\nimport { Icon } from '~/components/icon'\nimport {\n actionsContainerVariants,\n actionsVariants,\n checkboxIconNoChildrenVariants,\n checkboxIconVariants,\n checkboxVariants,\n helperTextNoChildrenVariants,\n helperTextVariants,\n noChildrenVariants,\n parentVariants,\n} from './checkbox.styles'\nimport { CheckboxLabel } from './components/checkbox-label'\nimport { CheckboxHelperText } from './components/helper-text'\nimport type { TCheckboxProps, TCheckboxSizes } from './types'\n\nconst DISPLAY_NAME = 'Checkbox'\n\nconst mapSizeToIconSize = (size: TCheckboxSizes) => {\n const sizeMap: Record<\n TCheckboxSizes,\n 'tiny' | 'extra-small' | 'small' | 'medium'\n > = {\n md: 'tiny',\n ml: 'small',\n lg: 'medium',\n xl: 'medium',\n }\n\n return sizeMap[size] || 'medium'\n}\n\nconst CheckboxIconCheck = ({\n symbol,\n size = 'md',\n disabled,\n readonly,\n hasLabelText,\n}: {\n symbol: IconName\n size?: TCheckboxProps['size']\n disabled?: boolean\n readonly?: boolean\n hasLabelText?: boolean\n}) => {\n const iconSize = mapSizeToIconSize(size)\n\n const iconClasses = hasLabelText\n ? checkboxIconVariants({ size })\n : checkboxIconNoChildrenVariants({ size })\n\n const iconColor = disabled\n ? 'colorTextNeutralDisabled'\n : readonly\n ? 'colorTextNeutralReadonly'\n : 'colorTextNeutralDefault'\n\n return (\n <div className={iconClasses}>\n <Icon symbol={symbol} size={iconSize} color={iconColor} />\n </div>\n )\n}\n\nconst CheckboxActions = ({\n children,\n size,\n disabled,\n readonly,\n error,\n}: {\n children: React.ReactNode\n size?: TCheckboxProps['size']\n disabled?: boolean\n readonly?: boolean\n error?: boolean\n}) => {\n const hasChildren = Boolean(\n Children.toArray(children).find(\n child =>\n isValidElement(child) &&\n child.type === CheckboxLabel &&\n child.props.children\n )\n )\n\n const containerClassName = hasChildren\n ? actionsContainerVariants({\n size,\n hasDisabled: disabled,\n hasReadonly: readonly,\n hasError: !!error,\n })\n : noChildrenVariants({\n size,\n hasDisabled: disabled,\n hasReadonly: readonly,\n hasError: !!error,\n })\n\n return (\n <div\n className={actionsVariants({\n size,\n hasError: !!error,\n })}\n >\n {/* biome-ignore lint/a11y/noNoninteractiveTabindex: <explanation> */}\n <div className={containerClassName} tabIndex={0}>\n {children}\n </div>\n </div>\n )\n}\n\nconst CheckboxRoot = forwardRef<HTMLDivElement, TCheckboxProps>(\n (props, ref) => {\n const {\n size = 'md',\n checked = false,\n indeterminate = false,\n onClick,\n error,\n disabled,\n readonly,\n children,\n feedbackMessage,\n hasFeedbackMessage = true,\n icon,\n ...rest\n } = props\n\n const currentStateSymbol: IconName = indeterminate\n ? 'rdicon-checkbox-indeterminate'\n : checked\n ? 'rdicon-checkbox-checked'\n : 'rdicon-checkbox-unchecked'\n\n const handleClick = (e: React.MouseEvent) => {\n e.stopPropagation()\n\n if (!(disabled || readonly) && typeof onClick === 'function') {\n onClick(!checked)\n }\n }\n\n const renderInternalLabel = Children.toArray(children).find(\n child => isValidElement(child) && child.type === CheckboxLabel\n ) as React.ReactElement | undefined\n\n const renderInternalHelperText = Children.toArray(children).find(\n child => isValidElement(child) && child.type === CheckboxHelperText\n ) as React.ReactElement | undefined\n\n const renderParent = Children.toArray(children).find(\n child => isValidElement(child) && child.type === CheckboxParent\n ) as React.ReactElement | undefined\n\n const filteredProps = rest as TCheckboxProps\n const { feedbackMessage: _, ...propsForDom } = filteredProps\n\n const shouldDisplayFeedback =\n error || (hasFeedbackMessage && feedbackMessage)\n\n return (\n <div\n ref={ref}\n {...propsForDom}\n role=\"checkbox\"\n aria-checked={checked || indeterminate}\n aria-disabled={disabled || readonly}\n onClick={handleClick}\n className={checkboxVariants({\n size,\n hasError: !!error,\n hasDisabled: !!disabled,\n hasReadonly: !!readonly,\n })}\n >\n <CheckboxActions\n size={size}\n disabled={disabled}\n readonly={readonly}\n error={error}\n >\n <CheckboxIconCheck\n symbol={currentStateSymbol}\n size={size}\n disabled={disabled}\n readonly={readonly}\n hasLabelText={!!renderInternalLabel?.props.children}\n />\n {renderInternalLabel &&\n cloneElement(renderInternalLabel, {\n size,\n disabled: disabled,\n readonly: readonly,\n error,\n })}\n </CheckboxActions>\n {(renderInternalHelperText || shouldDisplayFeedback) &&\n renderInternalLabel && (\n <div\n className={\n renderInternalHelperText?.props.children ||\n shouldDisplayFeedback\n ? helperTextVariants({ size, hasError: !!error })\n : helperTextNoChildrenVariants({ size, hasError: !!error })\n }\n >\n {cloneElement(\n renderInternalHelperText || (\n <CheckboxHelperText\n icon={error ? 'rdicon-warning-circle' : icon}\n isError={error}\n >\n {feedbackMessage}\n </CheckboxHelperText>\n ),\n { size }\n )}\n </div>\n )}\n {renderParent &&\n cloneElement(renderParent, {\n size,\n disabled: disabled || readonly,\n error,\n })}\n </div>\n )\n }\n)\n\nconst CheckboxParent = ({\n children,\n size = 'md',\n}: {\n children: React.ReactNode\n size?: TCheckboxProps['size']\n}) => <div className={parentVariants({ size })}>{children}</div>\n\nCheckboxRoot.displayName = DISPLAY_NAME\n\nexport const Checkbox = {\n Root: CheckboxRoot,\n Label: CheckboxLabel,\n HelperText: CheckboxHelperText,\n Parent: CheckboxParent,\n Actions: CheckboxActions,\n IconCheck: CheckboxIconCheck,\n}\n","import * as React from 'react'\n\nimport type { RDSAUDESISTEMAS_TOKENS } from '@raiadrogasil/pulso-design-tokens'\nimport type { IconName } from '@raiadrogasil/pulso-icons'\n\nimport { useTheme } from '~/hooks/use-theme'\n\ntype IconVisualSize = 'tiny' | 'extra-small' | 'small' | 'medium'\ntype DesignTokens = typeof RDSAUDESISTEMAS_TOKENS\n\ntype TokenColorKeys = {\n [K in keyof DesignTokens as K extends `color${string}`\n ? K\n : never]: DesignTokens[K]\n}\n\n/**\n * Propriedades do componente Icon.\n */\nexport type IconProps = React.ComponentProps<'i'> & {\n /**\n * Define o ícone a ser exibido, com base na lista de nomes disponíveis em `@raiadrogasil/pulso-icons`.\n *\n * @default 'rdicon-default'\n */\n symbol?: IconName\n\n /**\n * Define o tamanho visual do ícone, controlando o `font-size` com base nos tokens de espaçamento.\n *\n * Valores possíveis: 'tiny', 'extra-small', 'small', 'medium'.\n *\n * @default 'small'\n */\n size?: IconVisualSize\n\n /**\n * Define a cor do ícone usando uma chave de token de cor do design system.\n * A cor é aplicada via `style.color`.\n *\n * @default 'colorActionFillBrandPrimaryEnabled'\n */\n color?: keyof TokenColorKeys\n}\n\nexport function Icon({\n symbol = 'rdicon-default',\n size = 'small',\n color = 'colorActionFillBrandPrimaryEnabled',\n ...props\n}: IconProps) {\n const theme = useTheme()\n\n const resolvedFontSizes = React.useMemo(() => {\n return {\n tiny: theme.sizingTiny,\n 'extra-small': theme.sizingExtrasmall,\n small: theme.sizingSmall,\n medium: theme.sizingMedium,\n }\n }, [])\n\n return (\n <i\n {...props}\n className={symbol}\n style={{\n fontSize: resolvedFontSizes[size],\n color: theme[color],\n display: 'inline-flex',\n }}\n />\n )\n}\n\nIcon.displayName = 'Icon'\n\nexport * from './deprecated'\n","import * as React from 'react'\n\nimport {\n DROGASIL_TOKENS,\n GLOBALS_TOKENS,\n PRIME_TOKENS,\n RAIA_TOKENS,\n RDSAUDESISTEMAS_TOKENS,\n SUBSCRIPTION_TOKENS,\n} from '@raiadrogasil/pulso-design-tokens'\n\nimport { ThemeContext } from '~/components/theme-provider'\n\ntype ThemeTokens = typeof RDSAUDESISTEMAS_TOKENS & typeof GLOBALS_TOKENS\n\nexport function useTheme(): ThemeTokens {\n const mappedTheme = React.useMemo(() => {\n return {\n rdsaudesistemas: RDSAUDESISTEMAS_TOKENS,\n drogasil: DROGASIL_TOKENS,\n raia: RAIA_TOKENS,\n subscription: SUBSCRIPTION_TOKENS,\n prime: PRIME_TOKENS,\n }\n }, [])\n\n const context = React.useContext(ThemeContext)\n\n if (!context) {\n throw new Error(\n '[Pulso] useTheme precisa estar dentro de um <ThemeProvider>. Verifique se o provedor está corretamente configurado na raiz da aplicação.'\n )\n }\n\n const { currentTheme } = context\n\n const result = {\n ...GLOBALS_TOKENS,\n ...mappedTheme[currentTheme],\n } as ThemeTokens\n\n return result\n}\n","import * as React from 'react'\n\nimport type { Themes } from '@raiadrogasil/pulso-design-tokens'\n\nexport const ThemeContext = React.createContext({\n currentTheme: 'rdsaudesistemas',\n} as {\n currentTheme: Themes\n})\n\ntype ThemeProviderProps = {\n children: React.ReactNode\n theme?: Themes\n}\n\nexport function ThemeProvider({\n children,\n theme = 'rdsaudesistemas',\n}: ThemeProviderProps) {\n if (typeof window !== 'undefined') {\n document.documentElement.setAttribute('class', theme)\n }\n\n return (\n <ThemeContext.Provider\n value={{\n currentTheme: theme,\n }}\n >\n {children}\n </ThemeContext.Provider>\n )\n}\n","import { type VariantProps, createTV } from 'tailwind-variants'\n\nexport const tv = createTV({\n twMerge: true,\n twMergeConfig: {\n extend: {\n classGroups: {\n 'font-size': [\n {\n text: ['threepulse', 'threeandhalfpulse'],\n },\n ],\n 'border-width': [\n {\n border: ['quarterpulse', 'halfpulse'],\n },\n ],\n '--tw-ring-inset': [\n {\n ring: ['none', 'quarterpulse', 'halfpulse'],\n },\n ],\n },\n },\n },\n})\n\nexport type { VariantProps }\n","import { tv } from '~/utils/tv'\n\nexport const checkboxVariants = tv({\n base: 'flex flex-col items-start justify-center gap-none rounded-pill font-rdmodern',\n variants: {\n size: {\n md: '',\n ml: '',\n lg: '',\n xl: '',\n },\n hasError: {\n true: 'h-full outline-none',\n false: '',\n },\n hasReadonly: {\n true: 'border-action-border-neutral-tertiary-readonly border-none bg-action-fill-neutral-tertiary-readonly',\n false: '',\n },\n hasDisabled: {\n true: 'border-none bg-action-fill-neutral-tertiary-disabled',\n false: '',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n\nexport const checkboxIconVariants = tv({\n base: 'flex items-center justify-center',\n variants: {\n size: {\n md: 'pr-onepulse',\n ml: 'pr-twopulse',\n lg: 'pr-twopulse',\n xl: 'pr-twopulse',\n },\n },\n defaultVariants: {\n size: 'md',\n hasLabelText: true,\n },\n})\n\nexport const checkboxIconNoChildrenVariants = tv({\n base: 'flex items-center justify-center outline-none',\n variants: {\n size: {\n md: 'h-tiny w-tiny pr-none',\n ml: 'h-small w-small pr-none',\n lg: 'h-medium w-medium pr-none',\n xl: 'h-medium w-medium pr-none',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n\nexport const actionsVariants = tv({\n base: `\n mb-twopulse h-full cursor-pointer items-center justify-center rounded-pill\n p-halfpulse text-text-neutral bg-action-fill-neutral-tertiary-enabled [&:not(:focus-visisble)]:outline-none\n `,\n\n variants: {\n size: {\n md: '',\n ml: '',\n lg: '',\n xl: '',\n },\n hasError: {\n true: 'outline-none ring-forms-border-error ring-halfpulse focus:ring-forms-border-error',\n false: `\n hover:border-action-border-neutral-tertiary-hovered focus-visible:border-action-border-focused\n `,\n },\n hasDisabled: {\n true: `outline-none\n `,\n },\n hasReadonly: {\n true: `outline-none\n `,\n },\n },\n defaultVariants: {\n size: 'md',\n },\n compoundVariants: [\n {\n hasDisabled: false,\n hasReadonly: false,\n hasError: false,\n class: `\n focus-visible:ring-action-border-focused focus-visible:ring-halfpulse\n `,\n },\n ],\n})\n\nexport const actionsContainerVariants = tv({\n base: `flex bg-action-fill-neutral-tertiary-enabled rounded-pill min-w-[128px] border-action-border-neutral-tertiary-enabled\n hover:bg-action-fill-neutral-tertiary-hovered hover:border-action-fill-neutral-tertiary-hovered outline-none\n `,\n variants: {\n size: {\n md: 'min-h-medium px-fourpulse py-onepulse',\n ml: 'min-h-mediumlarge px-fourpulse py-twopulse',\n lg: 'min-h-large px-fivepulse py-twopulse',\n xl: 'min-h-extralarge px-sixpulse py-threepulse',\n },\n hasReadonly: {\n true: `border-action-border-neutral-tertiary-readonly border-none bg-action-fill-neutral-tertiary-readonly text-text-neutral-readonly\n hover:bg-action-fill-neutral-tertiary-readonly active:bg-action-fill-neutral-tertiary-readonly\n outline-none\n `,\n },\n hasDisabled: {\n true: `border-action-border-neutral-tertiary-disabled border-none bg-action-fill-neutral-tertiary-disabled text-text-neutral-disabled\n hover:bg-action-fill-neutral-tertiary-disabled active:bg-action-fill-neutral-tertiary-disabled\n outline-none\n `,\n },\n hasError: {\n true: 'h-full outline-none',\n false: '',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n compoundVariants: [\n {\n hasDisabled: false,\n hasReadonly: false,\n hasError: false,\n class: `\n active:bg-action-fill-neutral-tertiary-pressed active:border-none\n active:border-action-border-neutral-tertiary-pressed active:outline-none\n focus-visible:ring-action-border-focused focus-visible:ring-halfpulse [&:not(:focus-visisble)]:outline-none\n `,\n },\n ],\n})\n\nexport const noChildrenVariants = tv({\n base: `w-full flex bg-action-fill-neutral-tertiary-enabled rounded-pill\n hover:bg-action-fill-neutral-tertiary-hovered\n active:bg-action-fill-neutral-tertiary-pressed active:border-action-border-neutral-tertiary-pressed outline-none`,\n variants: {\n size: {\n md: 'p-twopulse',\n ml: 'p-twopulse',\n lg: 'p-twopulse',\n xl: 'p-threepulse',\n },\n hasReadonly: {\n true: `border-action-border-neutral-tertiary-readonly border-none bg-action-fill-neutral-tertiary-readonly text-text-neutral-readonly\n hover:bg-action-fill-neutral-tertiary-readonly active:bg-action-fill-neutral-tertiary-readonly\n outline-none\n `,\n },\n hasDisabled: {\n true: `border-action-border-neutral-tertiary-disabled border-none bg-action-fill-neutral-tertiary-disabled text-text-neutral-disabled\n hover:bg-action-fill-neutral-tertiary-disabled active:bg-action-fill-neutral-tertiary-disabled outline-none`,\n },\n hasError: {\n true: 'h-full outline-none',\n false: '',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n compoundVariants: [\n {\n hasDisabled: false,\n hasReadonly: false,\n hasError: false,\n class: `\n focus-visible:ring-action-border-focused focus-visible:ring-halfpulse\n `,\n },\n ],\n})\n\nexport const helperTextVariants = tv({\n base: 'ml-halfpulse flex items-center bg-transparent',\n variants: {\n size: {\n md: 'px-fourpulse',\n ml: 'px-fourpulse',\n lg: 'px-fivepulse',\n xl: 'px-sixpulse',\n },\n hasError: {\n true: 'font-semibold text-threepulse leading-medium tracking-tiny',\n false: 'font-semibold text-threepulse leading-medium tracking-tiny',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n\nexport const helperTextNoChildrenVariants = tv({\n base: 'flex items-center bg-transparent',\n variants: {\n size: {\n md: 'px-threepulse',\n ml: 'px-fourpulse',\n lg: 'px-fivepulse',\n xl: 'px-sixpulse',\n },\n hasError: {\n true: 'font-semibold text-text-danger-alternative text-threepulse leading-medium tracking-tiny',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n\nexport const parentVariants = tv({\n base: 'flex flex-col pl-eightpulse',\n variants: {\n size: {\n md: '',\n ml: '',\n lg: '',\n xl: '',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n","import { tv } from '~/utils/tv'\n\nexport const checkboxLabelVariants = tv({\n base: 'line-clamp-4 min-h-small overflow-hidden text-left font-family-modern font-regular text-neutral-default',\n variants: {\n size: {\n md: 'pt-halfpulse text-threepulse leading-medium',\n ml: 'pt-halfpulse text-threeandhalfpulse leading-small',\n lg: 'pt-onepulse text-fourpulse leading-small',\n xl: 'pt-onepulse text-fourpulse leading-small',\n },\n hasError: {\n true: 'font-semibold',\n },\n hasDisabled: {\n true: 'text-neutral-disabled',\n },\n hasReadonly: {\n true: 'text-neutral-readonly',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n","import type { TCheckboxSizes } from '../../types'\nimport { checkboxLabelVariants } from './checkbox.label.styles'\n\ntype TCheckboxLabelProps = {\n children: string\n size?: TCheckboxSizes\n error?: boolean\n disabled?: boolean\n readonly?: boolean\n}\n\nexport function CheckboxLabel({\n children: label,\n size = 'md',\n error = false,\n disabled = false,\n readonly = false,\n}: TCheckboxLabelProps) {\n return (\n <span\n className={checkboxLabelVariants({\n size,\n hasError: error,\n hasDisabled: disabled,\n hasReadonly: readonly,\n className: !label && 'hidden',\n })}\n >\n {label}\n </span>\n )\n}\n","import { tv } from '~/utils/tv'\n\nexport const helperTextRootVariants = tv({\n base: 'flex flex-row items-center justify-start gap-half-pulse text-ellipsis',\n})\n\nexport const helperTextLabelVariants = tv({\n base: 'line-clamp-2 pl-onepulse text-left font-family-modern font-semibold text-text-neutral',\n})\n\nexport const helperTextLabelErrorVariants = tv({\n base: 'line-clamp-2 pl-onepulse text-left font-family-modern font-semibold text-text-danger-alternative',\n})\n","import type { IconName } from '@raiadrogasil/pulso-icons'\nimport { Icon } from '~/components/icon'\nimport {\n helperTextLabelErrorVariants,\n helperTextLabelVariants,\n helperTextRootVariants,\n} from './helper-text.styles'\n\ntype IHelperTextProps = {\n icon?: IconName\n children: React.ReactNode\n isError?: boolean\n}\n\nexport function CheckboxHelperText({\n icon,\n children,\n isError = false,\n}: IHelperTextProps) {\n return (\n <div className={helperTextRootVariants()}>\n {icon && (\n <Icon\n size=\"tiny\"\n symbol={icon}\n color={\n isError ? 'colorTextDangerAlternative' : 'colorTextNeutralDefault'\n }\n />\n )}\n <span\n className={\n isError ? helperTextLabelErrorVariants() : helperTextLabelVariants()\n }\n >\n {children}\n </span>\n </div>\n )\n}\n"],"mappings":"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","names":["checkbox_exports","__export","Checkbox","__toCommonJS","import_react","React","React","import_pulso_design_tokens","React","import_jsx_runtime","ThemeContext","useTheme","mappedTheme","context","ThemeContext","currentTheme","__spreadValues","import_jsx_runtime","Icon","_a","_b","symbol","size","color","props","__objRest","theme","useTheme","resolvedFontSizes","__spreadProps","__spreadValues","import_tailwind_variants","tv","checkboxVariants","tv","checkboxIconVariants","checkboxIconNoChildrenVariants","actionsVariants","actionsContainerVariants","noChildrenVariants","helperTextVariants","helperTextNoChildrenVariants","parentVariants","checkboxLabelVariants","tv","import_jsx_runtime","CheckboxLabel","label","size","error","disabled","readonly","checkboxLabelVariants","helperTextRootVariants","tv","helperTextLabelVariants","helperTextLabelErrorVariants","import_jsx_runtime","CheckboxHelperText","icon","children","isError","helperTextRootVariants","Icon","helperTextLabelErrorVariants","helperTextLabelVariants","import_jsx_runtime","DISPLAY_NAME","mapSizeToIconSize","size","CheckboxIconCheck","symbol","disabled","readonly","hasLabelText","iconSize","iconClasses","checkboxIconVariants","checkboxIconNoChildrenVariants","Icon","CheckboxActions","children","error","containerClassName","child","CheckboxLabel","actionsContainerVariants","noChildrenVariants","actionsVariants","CheckboxRoot","props","ref","_a","checked","indeterminate","onClick","feedbackMessage","hasFeedbackMessage","icon","rest","__objRest","currentStateSymbol","handleClick","e","renderInternalLabel","renderInternalHelperText","CheckboxHelperText","renderParent","CheckboxParent","_b","_","propsForDom","shouldDisplayFeedback","__spreadProps","__spreadValues","checkboxVariants","helperTextVariants","helperTextNoChildrenVariants","parentVariants","Checkbox"]}