choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
46 lines (45 loc) • 1.69 kB
TypeScript
import { ReactNode } from 'react';
import Validity from './Validity';
import ValidationResult from './ValidationResult';
import Record from '../data-set/Record';
import Form from '../form/Form';
import { validationRule, ValidatorProps } from './rules';
import Field from '../data-set/Field';
import { FormField } from '../field/FormField';
export declare type CustomValidator = (value: any, name?: string, record?: Record | Form) => Promise<boolean | string | undefined>;
export interface ValidationMessages {
badInput?: ReactNode;
patternMismatch?: ReactNode;
rangeOverflow?: ReactNode;
rangeUnderflow?: ReactNode;
stepMismatch?: ReactNode;
stepMismatchBetween?: ReactNode;
tooLong?: ReactNode;
tooShort?: ReactNode;
typeMismatch?: ReactNode;
valueMissing?: ReactNode;
valueMissingNoLabel?: ReactNode;
customError?: ReactNode;
uniqueError?: ReactNode;
unknown?: ReactNode;
}
export default class Validator {
private field?;
private control?;
private innerValidationResults?;
get props(): ValidatorProps;
private get uniqueRefFields();
private get uniqueRefValidationResult();
get validationResults(): ValidationResult[];
get currentValidationResult(): ValidationResult | undefined;
get validity(): Validity;
get injectionOptions(): object;
get validationMessage(): ReactNode;
constructor(field?: Field, control?: FormField<any>);
reset(): void;
report(ret: ValidationResult): Promise<void>;
clearErrors(): void;
addError(result: ValidationResult): void;
execute(rules: validationRule[], value: any[]): Promise<any>;
checkValidity(value?: any): Promise<boolean>;
}