feat(SW-187): Fixed toggling issue

This commit is contained in:
Pontus Dreij
2024-09-11 10:18:39 +02:00
parent 84fb10aa2c
commit 76c7cfa6f0
3 changed files with 15 additions and 10 deletions

View File

@@ -24,11 +24,16 @@ export default function MobileMenu({
}: MobileMenuProps) {
const intl = useIntl()
const { toggleDropdown, openDropdown } = useDropdownStore()
const isHamburgerMenuOpen = openDropdown === DropdownType.HamburgerMenu
const isHamburgerMenuOpen =
openDropdown === DropdownType.HamburgerMenu ||
openDropdown === DropdownType.HeaderLanguageMobile
const isMyPagesMobileMenuOpen =
openDropdown === DropdownType.MyPagesMobileMenu
const isHeaderLanguageSwitcherOpen =
openDropdown === DropdownType.HeaderLanguageMobile
const isFooterLanguageSwitcherOpen =
openDropdown === DropdownType.FooterLanguage
useHandleKeyUp((event: KeyboardEvent) => {
if (event.key === "Escape" && isHamburgerMenuOpen) {
@@ -43,8 +48,11 @@ export default function MobileMenu({
if (isHeaderLanguageSwitcherOpen) {
toggleDropdown(DropdownType.HeaderLanguageMobile)
}
toggleDropdown(DropdownType.HamburgerMenu)
if (!isFooterLanguageSwitcherOpen) {
toggleDropdown(DropdownType.HamburgerMenu)
} else {
toggleDropdown(DropdownType.FooterLanguage)
}
}
}
@@ -52,7 +60,7 @@ export default function MobileMenu({
<>
<button
type="button"
className={`${styles.hamburger} ${isHamburgerMenuOpen || isMyPagesMobileMenuOpen ? styles.isExpanded : ""}`}
className={`${styles.hamburger} ${isHamburgerMenuOpen || isMyPagesMobileMenuOpen || isFooterLanguageSwitcherOpen ? styles.isExpanded : ""}`}
aria-label={intl.formatMessage({
id: isHamburgerMenuOpen ? "Close menu" : "Open menu",
})}

View File

@@ -26,9 +26,7 @@ export default function LanguageSwitcherContent({
const languageSwitcherRef = useTrapFocus()
const urlKeys = Object.keys(urls) as Lang[]
const position =
type === "footer"
? DropdownType.FooterLanguage
: DropdownType.HeaderLanguage
type === "footer" ? DropdownType.FooterLanguage : DropdownType.HamburgerMenu
return (
<div className={styles.languageSwitcherContent} ref={languageSwitcherRef}>