UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

177 lines (171 loc) • 6.82 kB
/** * DevExtreme (ui/validator.d.ts) * Version: 19.2.6 * Build date: Thu Jan 30 2020 * * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ import '../jquery_augmentation'; import DOMComponent, { DOMComponentOptions } from '../core/dom_component'; import { AsyncRule, CompareRule, CustomRule, EmailRule, NumericRule, PatternRule, RangeRule, RequiredRule, StringLengthRule } from './validation_engine'; /** Warning! This type is used for internal purposes. Do not import it directly. */ export interface dxValidatorOptions extends DOMComponentOptions<dxValidator> { /** * @docid dxValidatorOptions.adapter * @type Object * @prevFileNamespace DevExpress.ui * @public */ adapter?: { applyValidationResults?: Function, bypass?: Function, focus?: Function, getValue?: Function, reset?: Function, validationRequestsCallbacks?: Array<Function> | JQueryCallback }; /** * @docid dxValidatorOptions.name * @type string * @prevFileNamespace DevExpress.ui * @public */ name?: string; /** * @docid dxValidatorOptions.onValidated * @type function(validatedInfo) * @type_function_param1 validatedInfo:Object * @type_function_param1_field1 name:string * @type_function_param1_field2 isValid:boolean * @type_function_param1_field3 value:Object * @type_function_param1_field4 validationRules:Array<RequiredRule,NumericRule,RangeRule,StringLengthRule,CustomRule,CompareRule,PatternRule,EmailRule,AsyncRule> * @type_function_param1_field5 brokenRule:RequiredRule|NumericRule|RangeRule|StringLengthRule|CustomRule|CompareRule|PatternRule|EmailRule|AsyncRule * @type_function_param1_field6 brokenRules:Array<RequiredRule,NumericRule,RangeRule,StringLengthRule,CustomRule,CompareRule,PatternRule,EmailRule,AsyncRule> * @type_function_param1_field7 status:Enums.ValidationStatus * @action * @prevFileNamespace DevExpress.ui * @public */ onValidated?: ((validatedInfo: { name?: string, isValid?: boolean, value?: any, validationRules?: Array<RequiredRule | NumericRule | RangeRule | StringLengthRule | CustomRule | CompareRule | PatternRule | EmailRule | AsyncRule>, brokenRule?: RequiredRule | NumericRule | RangeRule | StringLengthRule | CustomRule | CompareRule | PatternRule | EmailRule | AsyncRule, brokenRules?: Array<RequiredRule | NumericRule | RangeRule | StringLengthRule | CustomRule | CompareRule | PatternRule | EmailRule | AsyncRule>, status?: 'valid' | 'invalid' | 'pending' }) => any); /** * @docid dxValidatorOptions.validationGroup * @type string * @ref * @prevFileNamespace DevExpress.ui * @public */ validationGroup?: string; /** * @docid dxValidatorOptions.validationRules * @type Array<RequiredRule,NumericRule,RangeRule,StringLengthRule,CustomRule,CompareRule,PatternRule,EmailRule,AsyncRule> * @prevFileNamespace DevExpress.ui * @public */ validationRules?: Array<RequiredRule | NumericRule | RangeRule | StringLengthRule | CustomRule | CompareRule | PatternRule | EmailRule | AsyncRule>; } /** A widget that is used to validate the associated DevExtreme editors against the defined validation rules. */ export default class dxValidator extends DOMComponent { constructor(element: Element, options?: dxValidatorOptions) constructor(element: JQuery, options?: dxValidatorOptions) /** * @docid dxValidatorMethods.focus * @publicName focus() * @prevFileNamespace DevExpress.ui * @public */ focus(): void; /** * @docid dxValidatorMethods.reset * @publicName reset() * @prevFileNamespace DevExpress.ui * @public */ reset(): void; /** * @docid dxValidatorMethods.validate * @publicName validate() * @return dxValidatorResult * @prevFileNamespace DevExpress.ui * @public */ validate(): dxValidatorResult; } /** Warning! This type is used for internal purposes. Do not import it directly. */ export interface dxValidatorResult { /** * @docid dxValidatorResult.brokenRule * @type RequiredRule|NumericRule|RangeRule|StringLengthRule|CustomRule|CompareRule|PatternRule|EmailRule|AsyncRule * @prevFileNamespace DevExpress.ui * @public */ brokenRule?: RequiredRule | NumericRule | RangeRule | StringLengthRule | CustomRule | CompareRule | PatternRule | EmailRule | AsyncRule; /** * @docid dxValidatorResult.brokenRules * @type Array<RequiredRule,NumericRule,RangeRule,StringLengthRule,CustomRule,CompareRule,PatternRule,EmailRule,AsyncRule> * @prevFileNamespace DevExpress.ui * @public */ brokenRules?: Array<RequiredRule | NumericRule | RangeRule | StringLengthRule | CustomRule | CompareRule | PatternRule | EmailRule | AsyncRule>; /** * @docid dxValidatorResult.complete * @type Promise<dxValidatorResult> * @prevFileNamespace DevExpress.ui * @public */ complete?: Promise<dxValidatorResult> | JQueryPromise<dxValidatorResult>; /** * @docid dxValidatorResult.isValid * @type boolean * @prevFileNamespace DevExpress.ui * @public */ isValid?: boolean; /** * @docid dxValidatorResult.pendingRules * @type Array<AsyncRule> * @prevFileNamespace DevExpress.ui * @public */ pendingRules?: Array<AsyncRule>; /** * @docid dxValidatorResult.status * @type Enums.ValidationStatus * @prevFileNamespace DevExpress.ui * @public */ status?: 'valid' | 'invalid' | 'pending'; /** * @docid dxValidatorResult.validationRules * @type Array<RequiredRule,NumericRule,RangeRule,StringLengthRule,CustomRule,CompareRule,PatternRule,EmailRule,AsyncRule> * @prevFileNamespace DevExpress.ui * @public */ validationRules?: Array<RequiredRule | NumericRule | RangeRule | StringLengthRule | CustomRule | CompareRule | PatternRule | EmailRule | AsyncRule>; /** * @docid dxValidatorResult.value * @type any * @prevFileNamespace DevExpress.ui * @public */ value?: any; } declare global { interface JQuery { dxValidator(): JQuery; dxValidator(options: "instance"): dxValidator; dxValidator(options: string): any; dxValidator(options: string, ...params: any[]): any; dxValidator(options: dxValidatorOptions): JQuery; } } /** Warning! This type is used for internal purposes. Do not import it directly. */ export type Options = dxValidatorOptions; /** @deprecated use Options instead */ /** Warning! This type is used for internal purposes. Do not import it directly. */ export type IOptions = dxValidatorOptions;