From 682c9cd49d64e7c09e8824ae0e184e5e5ba3d938 Mon Sep 17 00:00:00 2001 From: Rajat Khurana Date: Tue, 10 Mar 2026 12:15:47 +0530 Subject: [PATCH 1/4] focus on first invalid field for wizard --- .../form/wizard/v1/wizard/clientlibs/site/js/wizardview.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ui.af.apps/src/main/content/jcr_root/apps/core/fd/components/form/wizard/v1/wizard/clientlibs/site/js/wizardview.js b/ui.af.apps/src/main/content/jcr_root/apps/core/fd/components/form/wizard/v1/wizard/clientlibs/site/js/wizardview.js index 43591923cc..e3710f0475 100644 --- a/ui.af.apps/src/main/content/jcr_root/apps/core/fd/components/form/wizard/v1/wizard/clientlibs/site/js/wizardview.js +++ b/ui.af.apps/src/main/content/jcr_root/apps/core/fd/components/form/wizard/v1/wizard/clientlibs/site/js/wizardview.js @@ -61,7 +61,8 @@ constructor(params) { super(params); - const {element} = params; + const {element, formContainer} = params; + this.formContainer = formContainer; this.cacheElements(element); this.setActive(this.getCachedTabs()) this._active = this.getActiveIndex(this.getCachedTabs()); @@ -232,6 +233,9 @@ if (tabs && nextVisibleIndex >= 0) { this.#navigateAndFocusTab(nextVisibleIndex); } + } else { + console.log('validationErrorList', validationErrorList); + this.formContainer.setFocus(validationErrorList[0].fieldName); } this.#hideUnhideNavButtons(this._active); } From 22e0f48863fb6d15d29ff9fa5bc18eee72ed5480 Mon Sep 17 00:00:00 2001 From: Rajat Khurana Date: Fri, 13 Mar 2026 16:20:48 +0530 Subject: [PATCH 2/4] removed console log --- .../form/wizard/v1/wizard/clientlibs/site/js/wizardview.js | 1 - 1 file changed, 1 deletion(-) diff --git a/ui.af.apps/src/main/content/jcr_root/apps/core/fd/components/form/wizard/v1/wizard/clientlibs/site/js/wizardview.js b/ui.af.apps/src/main/content/jcr_root/apps/core/fd/components/form/wizard/v1/wizard/clientlibs/site/js/wizardview.js index e3710f0475..1e5d989332 100644 --- a/ui.af.apps/src/main/content/jcr_root/apps/core/fd/components/form/wizard/v1/wizard/clientlibs/site/js/wizardview.js +++ b/ui.af.apps/src/main/content/jcr_root/apps/core/fd/components/form/wizard/v1/wizard/clientlibs/site/js/wizardview.js @@ -234,7 +234,6 @@ this.#navigateAndFocusTab(nextVisibleIndex); } } else { - console.log('validationErrorList', validationErrorList); this.formContainer.setFocus(validationErrorList[0].fieldName); } this.#hideUnhideNavButtons(this._active); From 27652b831d0c9187e9367d5e55add4d239ebfebd Mon Sep 17 00:00:00 2001 From: Rajat Khurana Date: Mon, 16 Mar 2026 16:07:33 +0530 Subject: [PATCH 3/4] test case added --- .../test-module/specs/wizard/wizard.runtime.cy.js | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/ui.tests/test-module/specs/wizard/wizard.runtime.cy.js b/ui.tests/test-module/specs/wizard/wizard.runtime.cy.js index 3e9dfdae42..1d24d5399c 100644 --- a/ui.tests/test-module/specs/wizard/wizard.runtime.cy.js +++ b/ui.tests/test-module/specs/wizard/wizard.runtime.cy.js @@ -223,6 +223,20 @@ describe("Form with Wizard Layout Container With Validation", () => { }) }) }); + + it.only("should stay on current tab and show validation errors when next is clicked with invalid fields", () => { + getTabs().should('have.length', 5); + getWizardPanels().should('have.length', 5); + getTabAtIndex(0).should('have.class', 'cmp-adaptiveform-wizard__tab--active'); + getWizardPanelAtIndex(0).should('have.class', 'cmp-adaptiveform-wizard__wizardpanel--active'); + + getNextButton().click({force: true}).then(() => { + getTabAtIndex(0).should('have.class', 'cmp-adaptiveform-wizard__tab--active'); + getWizardPanelAtIndex(0).should('have.class', 'cmp-adaptiveform-wizard__wizardpanel--active'); + getWizardPanelAtIndex(0).find('.cmp-adaptiveform-numberinput__errormessage').should('be.visible'); + getWizardPanelAtIndex(0).find('.cmp-adaptiveform-datepicker__errormessage').should('be.visible'); + }); + }); }); describe("Form with Wizard Layout Container with focus", () => { From c23080b77f38ae2ac742432f884c8ca995380470 Mon Sep 17 00:00:00 2001 From: Rajat Khurana Date: Mon, 16 Mar 2026 16:08:04 +0530 Subject: [PATCH 4/4] only removed --- ui.tests/test-module/specs/wizard/wizard.runtime.cy.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui.tests/test-module/specs/wizard/wizard.runtime.cy.js b/ui.tests/test-module/specs/wizard/wizard.runtime.cy.js index 1d24d5399c..140e8aa497 100644 --- a/ui.tests/test-module/specs/wizard/wizard.runtime.cy.js +++ b/ui.tests/test-module/specs/wizard/wizard.runtime.cy.js @@ -224,7 +224,7 @@ describe("Form with Wizard Layout Container With Validation", () => { }) }); - it.only("should stay on current tab and show validation errors when next is clicked with invalid fields", () => { + it("should stay on current tab and show validation errors when next is clicked with invalid fields", () => { getTabs().should('have.length', 5); getWizardPanels().should('have.length', 5); getTabAtIndex(0).should('have.class', 'cmp-adaptiveform-wizard__tab--active');