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.

114 lines (109 loc) 3.76 kB
import * as React$1 from 'react'; import React__default, { InputHTMLAttributes } from 'react'; import { Scope } from '@radix-ui/react-context'; import { T as TIconProps } from '../../deprecated-C8F8FhFr.cjs'; import { C as ContentProps } from '../../index-Bmt-FnzV.cjs'; import * as react_jsx_runtime from 'react/jsx-runtime'; import '@raiadrogasil/pulso-design-tokens'; import '@raiadrogasil/pulso-icons'; type SelectSize = 'md' | 'ml' | 'lg' | 'xl'; /** * Representa as props para o componente InputSelect. * * Essa interface estende as atributos padrão do HTML input, excluindo 'size' e 'id' para acomodar propriedades de tamanho e id personalizadas. * Ela também inclui propriedades adicionais específicas do componente InputSelect. */ interface SelectProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'id'> { /** * O id do input. */ id?: string; /** * Indica se o input tem um erro. */ hasError?: boolean; /** * Indica se o input é um componente filho. */ asChild?: boolean; /** * A variante de tamanho do input. */ size?: SelectSize; /** * A variante dos dados do OptionMenu. */ options: ContentProps[]; /** * A altura do OptionMenu. */ optionsHeight?: number | string; } /** * Representa as props para o componente Select.Label. * * Essa interface inclui propriedades específicas do componente Select.Label. */ interface SelectLabelProps { htmlFor: string; children: React__default.ReactNode; } interface SelectFieldContainerProps { children: React__default.ReactNode; } /** * Representa as props para o componente Select.HelperSelect. * * Essa interface inclui propriedades específicas do componente Select.HelperSelect. */ interface SelectHelperTextProps { /** * Indica se o componente deve renderizar o ícone. */ withIcon?: boolean; /** * O ícone exibido no feedback. */ iconName?: TIconProps['symbol']; children: React__default.ReactNode; } /** * Representa as props para o componente Select.Actions. * * Essa interface inclui propriedades específicas do componente Select.Actions. */ interface SelectActionsProps { children?: React__default.ReactNode; } /** * Representa as props para o componente Select.Icon. * * Essa interface inclui propriedades específicas do componente Select.Icon. */ interface SelectIconProps extends Pick<TIconProps, 'symbol' | 'color'> { } /** * Define o escopo do radix-context */ type SelectScopedProps<P> = P & { __scopeInputSelect?: Scope; }; declare function SelectIcon({ __scopeInputSelect, color, ...props }: SelectScopedProps<SelectIconProps>): react_jsx_runtime.JSX.Element; declare const Select: { Root: { (props: SelectScopedProps<SelectProps>): react_jsx_runtime.JSX.Element; displayName: string; }; Label: ({ htmlFor, __scopeInputSelect, children, }: SelectScopedProps<SelectLabelProps>) => react_jsx_runtime.JSX.Element; FieldContainer: ({ __scopeInputSelect, children, }: SelectScopedProps<SelectFieldContainerProps>) => react_jsx_runtime.JSX.Element; Icon: typeof SelectIcon; Field: React$1.ForwardRefExoticComponent<Omit<React$1.SelectHTMLAttributes<HTMLSelectElement>, "size"> & { children?: React.ReactNode; placeholder?: string; optionMaxHeight?: number | string; onChangeSelectionValue?(value: string): void; } & React$1.RefAttributes<HTMLDivElement>>; Actions: React$1.FC<SelectActionsProps>; HelperText: ({ withIcon, iconName, __scopeInputSelect, children, ...props }: SelectScopedProps<SelectHelperTextProps>) => react_jsx_runtime.JSX.Element | null; }; export { Select, type SelectProps };