import React from 'react'; import { createBottomTabNavigator } from '@react-navigation/bottom-tabs'; import MaterialCommunityIcons from 'react-native-vector-icons/MaterialCommunityIcons'; import { BottomTabParamList } from '@navigation/navigationTypes'; import { EarningsScreen, JobsScreen, InboxScreen, ProfileScreen, DashboardScreen, } from '@features/screens'; import { useAppTheme } from '@theme'; import { RouteNames } from '@utils/constants'; const Tab = createBottomTabNavigator(); const BottomTabNavigator: React.FC = () => { const { colors } = useAppTheme(); return ( ({ headerShown: false, tabBarActiveTintColor: colors.primary, tabBarInactiveTintColor: colors.textSecondary, tabBarStyle: { backgroundColor: colors.background, }, tabBarIcon: ({ color, size, focused }) => { let iconName: string; switch (route.name) { case RouteNames.Dashboard: iconName = focused ? 'home' : 'home-outline'; break; case RouteNames.Earnings: iconName = focused ? 'cash' : 'cash-multiple'; break; case RouteNames.Jobs: iconName = focused ? 'briefcase' : 'briefcase-outline'; break; case RouteNames.Inbox: iconName = focused ? 'message' : 'message-outline'; break; case RouteNames.Profile: iconName = focused ? 'account' : 'account-outline'; break; default: iconName = 'circle'; } return ( ); }, })} > ); }; export default BottomTabNavigator;