From e73ccc7f25b63255464220bf816393cd455fce59 Mon Sep 17 00:00:00 2001 From: rashmi rai Date: Thu, 3 Feb 2022 15:27:08 +0530 Subject: [PATCH] fix: props is now required in type Validator (#10854) --- app/client/src/constants/WidgetValidation.ts | 2 +- app/client/src/workers/evaluationUtils.ts | 2 +- app/client/src/workers/validations.ts | 36 +++++++++----------- 3 files changed, 18 insertions(+), 22 deletions(-) diff --git a/app/client/src/constants/WidgetValidation.ts b/app/client/src/constants/WidgetValidation.ts index c69b4c86d4..585eb2b4b4 100644 --- a/app/client/src/constants/WidgetValidation.ts +++ b/app/client/src/constants/WidgetValidation.ts @@ -28,7 +28,7 @@ export type ValidationResponse = { export type Validator = ( config: ValidationConfig, value: unknown, - props?: Record, + props: Record, ) => ValidationResponse; export const ISO_DATE_FORMAT = "YYYY-MM-DDTHH:mm:ss.sssZ"; diff --git a/app/client/src/workers/evaluationUtils.ts b/app/client/src/workers/evaluationUtils.ts index 2808024ef8..748ae9de7d 100644 --- a/app/client/src/workers/evaluationUtils.ts +++ b/app/client/src/workers/evaluationUtils.ts @@ -361,7 +361,7 @@ export function validateActionProperty( parsed: value, }; } - return validate(config, value, undefined); + return validate(config, value, {}); } export function getValidatedTree(tree: DataTree) { diff --git a/app/client/src/workers/validations.ts b/app/client/src/workers/validations.ts index 2372d16808..543394faef 100644 --- a/app/client/src/workers/validations.ts +++ b/app/client/src/workers/validations.ts @@ -53,7 +53,7 @@ function getPropertyEntry( function validatePlainObject( config: ValidationConfig, value: Record, - props?: Record, + props: Record, ) { if (config.params?.allowedKeys) { let _valid = true; @@ -216,7 +216,7 @@ function validateArray( export const validate = ( config: ValidationConfig, value: unknown, - props: undefined | Record, + props: Record, ): ValidationResponse => { const _result = VALIDATORS[config.type as ValidationTypes]( config, @@ -300,7 +300,7 @@ export const VALIDATORS: Record = { [ValidationTypes.TEXT]: ( config: ValidationConfig, value: unknown, - props?: Record, + props: Record, ): ValidationResponse => { if (value === undefined || value === null || value === "") { if (config.params && config.params.required) { @@ -377,7 +377,7 @@ export const VALIDATORS: Record = { [ValidationTypes.REGEX]: ( config: ValidationConfig, value: unknown, - props?: Record, + props: Record, ): ValidationResponse => { const { isValid, messages, parsed } = VALIDATORS[ValidationTypes.TEXT]( config, @@ -400,7 +400,7 @@ export const VALIDATORS: Record = { [ValidationTypes.NUMBER]: ( config: ValidationConfig, value: unknown, - props?: Record, + props: Record, ): ValidationResponse => { if (value === undefined || value === null || value === "") { if (config.params?.required) { @@ -490,7 +490,7 @@ export const VALIDATORS: Record = { [ValidationTypes.BOOLEAN]: ( config: ValidationConfig, value: unknown, - props?: Record, + props: Record, ): ValidationResponse => { if (value === undefined || value === null || value === "") { if (config.params && config.params.required) { @@ -534,7 +534,7 @@ export const VALIDATORS: Record = { [ValidationTypes.OBJECT]: ( config: ValidationConfig, value: unknown, - props?: Record, + props: Record, ): ValidationResponse => { if ( value === undefined || @@ -589,7 +589,7 @@ export const VALIDATORS: Record = { [ValidationTypes.ARRAY]: ( config: ValidationConfig, value: unknown, - props?: Record, + props: Record, ): ValidationResponse => { const invalidResponse = { isValid: false, @@ -630,11 +630,7 @@ export const VALIDATORS: Record = { try { const _value = JSON.parse(value); if (Array.isArray(_value)) { - const result = validateArray( - config, - _value, - props as Record, - ); + const result = validateArray(config, _value, props); return result; } } catch (e) { @@ -643,7 +639,7 @@ export const VALIDATORS: Record = { } if (Array.isArray(value)) { - return validateArray(config, value, props as Record); + return validateArray(config, value, props); } return invalidResponse; @@ -651,7 +647,7 @@ export const VALIDATORS: Record = { [ValidationTypes.OBJECT_ARRAY]: ( config: ValidationConfig, value: unknown, - props?: Record, + props: Record, ): ValidationResponse => { const invalidResponse = { isValid: false, @@ -712,7 +708,7 @@ export const VALIDATORS: Record = { [ValidationTypes.NESTED_OBJECT_ARRAY]: ( config: ValidationConfig, value: unknown, - props?: Record, + props: Record, ): ValidationResponse => { let response: ValidationResponse = { isValid: false, @@ -749,7 +745,7 @@ export const VALIDATORS: Record = { [ValidationTypes.DATE_ISO_STRING]: ( config: ValidationConfig, value: unknown, - props?: Record, + props: Record, ): ValidationResponse => { const invalidResponse = { isValid: false, @@ -794,7 +790,7 @@ export const VALIDATORS: Record = { [ValidationTypes.FUNCTION]: ( config: ValidationConfig, value: unknown, - props?: Record, + props: Record, ): ValidationResponse => { const invalidResponse = { isValid: false, @@ -819,7 +815,7 @@ export const VALIDATORS: Record = { [ValidationTypes.IMAGE_URL]: ( config: ValidationConfig, value: unknown, - props?: Record, + props: Record, ): ValidationResponse => { const invalidResponse = { isValid: false, @@ -884,7 +880,7 @@ export const VALIDATORS: Record = { [ValidationTypes.TABLE_PROPERTY]: ( config: ValidationConfig, value: unknown, - props?: Record, + props: Record, ): ValidationResponse => { if (!config.params?.type) return {