import React from 'react' import { View, Text, TouchableOpacity } from 'react-native' import settingsViews from './settings' import { menuTitles } from '../i18n/en/labels' import styles, { iconStyles, secondaryColor } from '../styles' import Icon from 'react-native-vector-icons/MaterialCommunityIcons' const menuTitlesLowerCase = Object.keys(menuTitles).reduce((acc, curr) => { acc[curr] = menuTitles[curr].toLowerCase() return acc }, {}) const menuItems = [ { labelKey: 'Home', icon: 'home', component: 'Home', }, { labelKey: 'Calendar', icon: 'calendar-range', component: 'Calendar', }, { labelKey: 'Chart', icon: 'chart-line', component: 'Chart', }, { labelKey: 'Stats', icon: 'chart-pie', component: 'Stats', }, { labelKey: 'Settings', icon: 'settings', component: 'SettingsMenu', children: Object.keys(settingsViews), } ] const MenuItem = ({ icon, labelKey, active, onPress }) => { const styleActive = active ? { color: secondaryColor } : null return ( {menuTitlesLowerCase[labelKey]} ) } const Menu = ({ currentPage, navigate }) => { return ( { menuItems.map(({ icon, labelKey, component, children }) => { const isActive = (component === currentPage) || (children && children.indexOf(currentPage) !== -1) return ( navigate(component)} /> )} )} ) } export default Menu