From 0e2d9c60a772ca004447937a4cdb333ad2991ded Mon Sep 17 00:00:00 2001 From: krm35 Date: Sun, 28 Jan 2024 22:30:53 +0100 Subject: [PATCH] Close the drawer on mobile when clicking on a item of the menu --- src/ui/NavMenu/NavMenu.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/ui/NavMenu/NavMenu.js b/src/ui/NavMenu/NavMenu.js index f3a1b74813..e13cdfbf9f 100644 --- a/src/ui/NavMenu/NavMenu.js +++ b/src/ui/NavMenu/NavMenu.js @@ -1,6 +1,7 @@ import React, { memo, useState } from 'react' import PropTypes from 'prop-types' import classNames from 'classnames' +import { useDispatch, useSelector } from 'react-redux' import { Menu, Collapse, @@ -15,6 +16,8 @@ import _castArray from 'lodash/castArray' import Icons from 'icons' import { getPath, getTarget } from 'state/query/utils' +import { toggleNavigationDrawer } from 'state/ui/actions' +import { getIsNavigationDrawerOpen } from 'state/ui/selectors' import menuTypes from './NavMenu.constants' import { getSections, getMenuItemChevron } from './NavMenu.helpers' @@ -35,6 +38,8 @@ const NavMenu = ({ const [isMyHistoryOpen, setIsMyHistoryOpen] = useState(true) const [isMarketHistoryOpen, setIsMarketHistoryOpen] = useState(false) const [isMerchantHistoryOpen, setIsMerchantHistoryOpen] = useState(false) + const dispatch = useDispatch() + const isNavigationDrawerOpen = useSelector(getIsNavigationDrawerOpen) const handleItemClick = (e, nextTarget) => { e.preventDefault() @@ -45,6 +50,9 @@ const NavMenu = ({ search: window.location.search, }) window.scrollTo(0, 0) // scroll to the top of the page on section change + if (isNavigationDrawerOpen) { + dispatch(toggleNavigationDrawer()) + } } const getMenuItems = (menuType, target) => (