diff --git a/packages/form-core/src/validate/ValidateMixin.js b/packages/form-core/src/validate/ValidateMixin.js index 05a1d7143..65f8ea1e5 100644 --- a/packages/form-core/src/validate/ValidateMixin.js +++ b/packages/form-core/src/validate/ValidateMixin.js @@ -644,7 +644,6 @@ export const ValidateMixinImplementation = superclass => * @private */ async __getFeedbackMessages(validators) { - await localize.loadingComplete; let fieldName = await this.fieldName; return Promise.all( validators.map(async validator => { diff --git a/packages/form-integrations/test/form-validation-integrations.test.js b/packages/form-integrations/test/form-validation-integrations.test.js index 2002ff562..f2701afe6 100644 --- a/packages/form-integrations/test/form-validation-integrations.test.js +++ b/packages/form-integrations/test/form-validation-integrations.test.js @@ -127,7 +127,6 @@ describe('Form Validation Integrations', () => { } async updateLabel() { - await localize.loadingComplete; this.label = localize.msg('test-default-label:label'); } @@ -143,8 +142,14 @@ describe('Form Validation Integrations', () => { }, }); this.boundUpdateLabel = this.updateLabel.bind(this); - this.boundUpdateLabel(); + + // localeChanged is fired AFTER localize has finished loading missing translations + // so no need to await localize.loadingComplete localize.addEventListener('localeChanged', this.boundUpdateLabel); + + // Wait for it to complete when updating the label for the first time + await localize.loadingComplete; + this.boundUpdateLabel(); } } const elTagString = defineCE(DefaultLabelInput);