jamis
Version:
一种支持通过JSON配置方式生成页面的组件库
26 lines (25 loc) • 1.04 kB
TypeScript
import type { LocaleProps, ThemeProps } from 'jamis-core';
import type { ControllerProps as ReactHookFormControllerProps, RegisterOptions } from 'react-hook-form';
export interface FormFieldProps extends LocaleProps, ThemeProps {
mode?: 'normal' | 'horizontal';
horizontal?: {
left?: number;
right?: number;
leftFixed?: boolean | number | 'xs' | 'sm' | 'md' | 'lg';
justify?: boolean;
};
label?: string;
description?: string;
isRequired?: boolean;
hasError?: boolean;
errors?: string | Array<string>;
children?: JSX.Element;
}
declare function FormField(props: FormFieldProps): JSX.Element;
export default FormField;
export interface ControllerProps extends ReactHookFormControllerProps, Omit<FormFieldProps, keyof ThemeProps | keyof LocaleProps> {
rules?: Omit<RegisterOptions, 'valueAsNumber' | 'valueAsDate' | 'setValueAs' | 'disabled'> & {
[propName: string]: any;
};
}
export declare function FormFieldController(props: ControllerProps): JSX.Element;