diff --git a/.changeset/loud-planes-doubt.md b/.changeset/loud-planes-doubt.md new file mode 100644 index 000000000..9763cc441 --- /dev/null +++ b/.changeset/loud-planes-doubt.md @@ -0,0 +1,5 @@ +--- +'@lion/form-core': patch +--- + +Make sure prev validation result is always an array (of validators) and not undefined. diff --git a/packages/form-core/src/validate/ResultValidator.js b/packages/form-core/src/validate/ResultValidator.js index b7413f56f..014eaf290 100644 --- a/packages/form-core/src/validate/ResultValidator.js +++ b/packages/form-core/src/validate/ResultValidator.js @@ -10,7 +10,7 @@ export class ResultValidator extends Validator { /** * @param {Object} context * @param {Validator[]} context.regularValidationResult - * @param {Validator[] | undefined} context.prevValidationResult + * @param {Validator[]} context.prevValidationResult * @param {Validator[]} [context.validators] * @returns {boolean} */ diff --git a/packages/form-core/src/validate/ValidateMixin.js b/packages/form-core/src/validate/ValidateMixin.js index c129ad3c4..83d04884c 100644 --- a/packages/form-core/src/validate/ValidateMixin.js +++ b/packages/form-core/src/validate/ValidateMixin.js @@ -161,6 +161,8 @@ export const ValidateMixinImplementation = superclass => * @type {Validator[]} */ this.__validationResult = []; + /** @type {Validator[]} */ + this.__prevValidationResult = []; this.__onValidatorUpdated = this.__onValidatorUpdated.bind(this); this._updateFeedbackComponent = this._updateFeedbackComponent.bind(this);