Skip to content

Commit b20dcba

Browse files
fix: Tabs list in desktop (#1526)
* fix: resolve issue with hamburgermenu hiding the tabs list in desktop view * fix: tabs were getting hidden in desktop view * fix: tabs were getting hidden in desktop view and removed unused code * feat(hamburgerMenu): test case added * feat(hamburgerMenu): test case added and html on server side * fix: tabs were getting hidden in desktop view * feat(hamburgerMenu): test case added --------- Co-authored-by: Rajat Khurana <rajatkhurana@adobe.com>
1 parent f5bdc05 commit b20dcba

File tree

4 files changed

+10
-23
lines changed

4 files changed

+10
-23
lines changed

ui.af.apps/src/main/content/jcr_root/apps/core/fd/components/form/container/v2/container/README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,3 +92,5 @@ Applying `data-cmp-custom-functions-module-url` attribute to the div to point to
9292
This Url should whitelist the AEM author/publish domain in the Cross Origin Resource Sharing (CORS) configuration.
9393

9494
Applying `data-cmp-auto-save` attribute to the `cmp-adaptiveform-container` block to control the auto-save functionality. If the attribute's value is set to true, auto-save will be enabled for the form; otherwise, it will not be triggered. This attribute will be set to true in published mode if enableAutoSave is enabled.
95+
96+
Applying `data-cmp-hamburger-menu-enabled` attribute to the `cmp-adaptiveform-container` block to control the hamburger meu. If the attribute's value is set to true, hamburger menu will be enabled in the mobile view.

ui.af.apps/src/main/content/jcr_root/apps/core/fd/components/form/container/v2/container/clientlibs/site/js/hamburgerMenu.js

Lines changed: 1 addition & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -334,27 +334,6 @@ if (typeof window.HamburgerMenu === 'undefined') {
334334
return ul;
335335
}
336336

337-
#hideIndividualComponentsNavigation() {
338-
// hide all the horizontal tabs list
339-
const tabsLists = document.getElementsByClassName('cmp-tabs__tablist');
340-
Array.from(tabsLists).forEach(tabsList => {
341-
tabsList.style.display = 'none';
342-
});
343-
344-
// hide all the vertical tabs list
345-
const verticalTabsLists = document.getElementsByClassName('cmp-verticaltabs__tablist');
346-
Array.from(verticalTabsLists).forEach(tabsList => {
347-
tabsList.style.display = 'none';
348-
});
349-
// hide all the wizard tabs list
350-
const wizardTabsLists = document.getElementsByClassName('cmp-adaptiveform-wizard__tabList');
351-
const wizardTabsNavButton = document.querySelector('.cmp-adaptiveform-wizard__containerNav');
352-
if(wizardTabsNavButton) wizardTabsNavButton.style.display = 'none';
353-
Array.from(wizardTabsLists).forEach(tabsList => {
354-
tabsList.style.display = 'none';
355-
});
356-
}
357-
358337
// Function to find the currently active li
359338
#findActiveLi() {
360339
return document.querySelector(HamburgerMenu.selectors.active).parentElement;
@@ -492,8 +471,6 @@ if (typeof window.HamburgerMenu === 'undefined') {
492471

493472
this.#attachHamburgerEventListeners(hamburgerIcon, menu);
494473
this.#attachOutsideClickHandler(hamburgerIcon, menu);
495-
496-
this.#hideIndividualComponentsNavigation();
497474
this.#attachMenuEventListeners(menu);
498475
this.#styleSubmenuItems(menu);
499476
parentContainer.innerHTML='';
@@ -566,6 +543,7 @@ if (typeof window.HamburgerMenu === 'undefined') {
566543

567544
init() {
568545
if(this.formContainer?.getModel()?.properties?.['fd:isHamburgerMenuEnabled']) {
546+
document.querySelector('.cmp-adaptiveform-container')?.setAttribute('data-cmp-hamburger-menu-enabled', 'true');
569547
const panels = this.#getAllPanels();
570548
this.#renderHamburgerItems(panels);
571549
}

ui.af.apps/src/main/content/jcr_root/apps/core/fd/components/form/container/v2/container/container.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
data-cmp-context-path="${request.contextPath}"
4242
data-cmp-page-lang="${container.containingPageLang}"
4343
data-cmp-path="${resource.path}"
44+
data-cmp-hamburger-menu-enabled="${container.isHamburgerMenuEnabled ? 'true' : 'false'}"
4445
class="cmp-adaptiveform-container cmp-container ${wcmmode.edit ? 'cmp-adaptiveform-container--edit' : ''}"
4546
data-cmp-custom-functions-module-url="${configurationProvider.customFunctionModuleUrl}"
4647
dir="${container.languageDirection}"

ui.tests/test-module/specs/formContainer/formContainer.runtime.cy.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,12 @@ describe("Form Runtime with Hamburger Menu", () => {
4343
cy.get(selectors.hamburgerMenuWidget.hamburgerMenu).should("be.visible");
4444
})
4545

46+
it(`Test data-cmp-hamburger-menu-enabled attribute when hamburger menu is enabled`, () => {
47+
cy.viewport('iphone-x');
48+
cy.get('form')
49+
.should('have.attr', 'data-cmp-hamburger-menu-enabled', 'true');
50+
})
51+
4652
it(`Test hamburger menu should render exact number of items`, () => {
4753
cy.viewport('iphone-x');
4854
cy.get(selectors.hamburgerMenuTopContainer.hamburgerMenuIcon).click();

0 commit comments

Comments
 (0)