feat(sw-187): Refactor dropdown to keep more logic in main-menu.ts

This commit is contained in:
Pontus Dreij
2024-09-11 11:41:26 +02:00
parent 76c7cfa6f0
commit 2734af5f3f
9 changed files with 104 additions and 77 deletions
+17 -14
View File
@@ -1,16 +1,19 @@
// TODO: When MyPagesMobileMenu is removed, also remove the
// isMyPagesMobileMenuOpen state
export enum DropdownType {
HeaderLanguage,
HeaderLanguageMobile,
FooterLanguage,
HamburgerMenu,
MyPagesMenu,
MyPagesMobileMenu,
}
export interface DropdownState {
openDropdown: DropdownType | null
toggleDropdown: (dropdown: DropdownType) => void
isHamburgerMenuOpen: boolean
isMyPagesMobileMenuOpen: boolean
isMyPagesMenuOpen: boolean
isHeaderLanguageSwitcherOpen: boolean
isHeaderLanguageSwitcherMobileOpen: boolean
isFooterLanguageSwitcherOpen: boolean
}
export enum DropdownTypeEnum {
HamburgerMenu = "hamburgerMenu",
MyPagesMobileMenu = "myPagesMobileMenu",
MyPagesMenu = "myPagesMenu",
HeaderLanguageSwitcher = "headerLanguageSwitcher",
HeaderLanguageSwitcherMobile = "headerLanguageSwitcherMobile",
FooterLanguageSwitcher = "footerLanguageSwitcher",
}
export type DropdownType = `${DropdownTypeEnum}`