UNPKG

norma-library

Version:

Olos/Norma-DS. Design System based on Material UI, developed with TypeScript and Styled Components to create reusable and consistent components in web applications.

45 lines (41 loc) 1.73 kB
import React, { ReactNode } from 'react'; import { TextFieldPropsColorOverrides, TextFieldPropsSizeOverrides } from '@mui/material/TextField'; import { FormHelperTextProps, InputBaseProps, InputLabelProps, OutlinedInputProps, SelectProps, SxProps, Theme } from '@mui/material'; import { InputProps as StandardInputProps } from '@mui/material/Input'; import { OverridableStringUnion } from '@mui/types'; import { TextField } from '@mui/material'; import { TextFieldColorVariant, MuiTextFieldBaseProps, TextFieldSizeVariant, TextFieldVariant } from '../types'; export interface TextFieldBaseProps extends MuiTextFieldBaseProps { id?: string; name?: string; defaultValue?: string; disabled?: boolean; required?: boolean; type?: React.InputHTMLAttributes<unknown>['type']; hasError?: boolean; label?: ReactNode; children?: ReactNode; error?: boolean; variant?: TextFieldVariant; helperText?: React.ReactNode; InputLabelProps?: Partial<InputLabelProps>; InputProps?: Partial<OutlinedInputProps>; autoComplete?: string; placeholder?: string; multiline?: boolean; rows?: string | number; maxRows?: string | number; minRows?: string | number; select?: boolean; SelectProps?: Partial<SelectProps>; onChange?: OutlinedInputProps['onChange']; onClick?: InputBaseProps['onClick']; onBlur?: InputBaseProps['onBlur']; onFocus?: StandardInputProps['onFocus']; size?: OverridableStringUnion<TextFieldSizeVariant, TextFieldPropsSizeOverrides>; FormHelperTextProps?: Partial<FormHelperTextProps>; color?: OverridableStringUnion<TextFieldColorVariant, TextFieldPropsColorOverrides>; value?: unknown; sx?: SxProps<Theme> | undefined } export type TextFieldType = keyof typeof TextField;