Beginners – Best Practices for CSS and Javascript for a Basic Navigation Bar?

Everything I try to optimize my code for navigation. I have tried and followed the BEM naming convention for CSS, although I want it to be reviewed for best practices.
I've also used javascript arrow functions on my list to avoid repeating the list item, which also needs to be checked because I have a nested list with a workaround.

Here is my code for the list of navigation drawers: –

import Reacting & # 39; Respond & # 39 ;;
PropTypes from & # 39; Prop Types & # 39; import;
import {withStyles, Button} from & # 39; @ material-ui / core & # 39 ;;
List Subheader from & # 39; @ material-ui / core / ListSubheader & # 39; import;
Import list from & # 39; @ material-ui / core / List & # 39 ;;
ListItem from & # 39; @ material-ui / core / ListItem & # 39; import;
Import Collapse from & # 39; @ material-ui / core / Collapse & # 39 ;;
ExpandLess from & # 39; @ material-ui / icons / ExpandLess & # 39; import;
ExpandMore from & # 39; @ material-ui / icons / ExpandMore & # 39; import;
Import MenuIcon from & # 39; @ material-ui / icons / ArrowForward & # 39 ;;
IconButton off & # 39; @ material-ui / core / IconButton & # 39; import;
Divider from & # 39; @ material-ui / core / divider & # 39; import;
Typography from & # 39; @ material-ui / core / Typography & # 39; import;
Link from & # 39; next / link & # 39; import;

const fbIcon = & # 39; ../ static / facebook-icon.png & # 39 ;;
const twitterIcon = & # 39; ../ static / twitter-icon.png & # 39 ;;
const linkedinIcon = & # 39; ../ static / linkedin-icon.png & # 39 ;;
const androidIcon = & # 39; ../ static / androidIcon.png & # 39 ;;
const iosIcon = & # 39; ../ static / iosIcon.png & # 39 ;;

const styles = theme => ({
& # 39; list container & # 39 ;: {
Width: & # 39; 100% & # 39 ;,
maxWidth: 360,
backgroundColor: & # 39; # 2ec3d2 & # 39 ;,
    [theme.breakpoints.down('sm')]: {
maxWidth: & # 39; 15rem & # 39 ;,
}
},
& # 39; list-container__subheader & # 39 ;: {
Display: "Flex",
flexDirection: & # 39; column & # 39 ;,
backgroundColor: # 2ec3d2 & # 39;
},
& # 39; list-container__nested & # 39 ;: {
paddingLeft: theme.spacing.unit * 4
},
& # 39; list-container__button & # 39 ;: {
color: theme.palette.getContrastText (& # 39; # fff & # 39;),
backgroundColor: & # 39; # fff & # 39 ;,
marginBottom: 20,
},
#List-container__arrowicon #: {
Width: 50,
Height: 50,
Color: & # 39; # fff & # 39;
},
#List-container__arrow-container #: {
Display: "Flex",
justifyContent: "Flex-End",
marginTop: 31,
marginBottom: 22,
    [theme.breakpoints.down('sm')]: {
marginTop: 11,
marginBottom: 11
}
},
#List-container__row #: {
Display: "Flex",
flexDirection: "row",
alignItems: & # 39; flex-end & # 39;
},
& # 39; list-container__expicon & # 39 ;: {
MarginLeft: 20,
Color: & # 39; # fff & # 39;
},
#List-container__headertxt #: {
fontSize: & # 39; 14px & # 39 ;,
fontFamily: & # 39; montserrat, sans-serif & # 39 ;,
lineHeight: 1,
textAlign: & # 39; left & # 39 ;,
Color: # fff #,
textTransform: & # 39; uppercase letters & # 39;
},
& # 39; social container & # 39 ;: {
Display: "Flex",
flexDirection: "row",
justifyContent: & # 39; space-around & # 39 ;,
paddingLinks: 10,
marginTop: 10
},
& # 39; social-container__icon & # 39 ;: {
Width: 30,
Height: 30
},
& # 39; social-container__psicon & # 39 ;: {
Width: "145px",
Height: "45px",
Display: "Flex",
alignItems: & # 39; left & # 39 ;,
marginBottom: & # 39; 5% & # 39 ;,
marginTop: & # 39; 8% & # 39 ;,
    [theme.breakpoints.down('sm')]: {
marginTop: & # 39; 10% & # 39 ;,
Width: "104px",
Height: & # 39; 32px & # 39;
},
    [theme.breakpoints.down('xs')]: {
marginTop: & # 39; 10% & # 39 ;,
Width: "94px",
Height: & # 39; 30px & # 39;
}

}
});

const getNavigationLinks = (navigationObj, classes) => Object.keys (navigationObj)
.map (linkName => (
    
      {/ * eslint-disable-next-line jsx-a11y / anchor-is-valid * /}
      
        
          
          
          
          {Link name}
        
      

    
  
  
  
  ));

const getNestedLinks = (navigationObj, classes) => Object.keys (navigationObj)
.map (linkName => (
    
      {/ * eslint-disable-next-line jsx-a11y / anchor-is-valid * /}
      
        
          
          
          
          {Link name}
        
      

    
  
  
  
  ));

Class NavigationList extends React.Component {
State = {
open: wrong
};

handleClick = () => {
this.setState (state => ({open: state.open}));
};

render () {
const {classes} = this.props;
const {open} = this.state;
Return (
        
<list Component = "nav" subheader = {(
)} > {getNavigationLinks ( { HOME: & # 39; / & # 39 ;, "EXISTING CUSTOMER LOGIN": "https: // somelink /", & # 39; aboutus & # 39; / aboutus & # 39 ;, about us & # 39; CAREER: "/ careers", }, classes )}
PRODUCTS {open? : }
{getNestedLinks ( { "IMMEDIATE CASH": "/", "SHOP ON AMAZON": "https: // somelink /", & # 39; SHOP AT BIG BAZAAR & # 39; / bigbazaar & # 39 ;, "School fees": "https: // somelink /" }, classes )} {getNavigationLinks ( { BLOGS: & # 39; https: // somelink / & # 39 ;, NEWS: "https: // somelink", FAQs: & # 39; / faqs & # 39 ;, & # 39; START YOUR APPLICATION & # 39 ;: & # 39; https: // somelink / & # 39; }, classes )}
Facebook Twitter linkedin
Android ios
); } } NavigationList.propTypes = { Classes: PropTypes.object.isRequired }; export standard withStyles (styles) (navigation list);

Any help or suggestion will be appreciated. Many Thanks!