/* * Menu * Simple expandable menu. * * Dependencies: * styles/components/_menu.scss * * Version: * 1.0.0 - 2018/03/01 */ import React from 'react'; import FontAwesomeIcon from '@fortawesome/react-fontawesome' import { NavLink } from 'react-router-dom'; import { faBars } from '@fortawesome/fontawesome-free-solid' import { connect } from 'react-redux'; import Language from './../../language/Language'; const MenuItems = { "navbar.contact.title": { "navbar.contact.about": "/about", "navbar.contact.contact": "/contact" }, "navbar.legal.title": { "navbar.legal.privacy": "/privacy-policy" } } const MenuGroup = function(props) { return ( ) } const MenuItem = function(props) { return ( {props.children} ) } class Menu extends React.Component { constructor(props) { super(props); this.state = { open: false } } toggleMenu() { this.setState({ open: !this.state.open }); } openMenu() { this.setState({ open: true }); } closeMenu() { this.setState({ open: false }) } render() { if(this.state.open) { document.body.classList.add('is-menu-open'); } else { document.body.classList.remove('is-menu-open'); } let menu = []; let keys = Object.keys(MenuItems); for(var i = 0; i < keys.length; i++) { let k = keys[i]; let sKeys = Object.keys(MenuItems[k]); let menuItems = []; for(var x = 0; x < sKeys.length; x++) { let sKey = sKeys[x]; console.log(sKey); menuItems.push({Language.get(sKey)}) } menu.push( {menuItems} ); } return ( ) } } const mapStateToProps = function(state) { return { code: state.language.code } } export default connect(mapStateToProps)(Menu);