import React, { useState } from 'react'; import { View, Text, FlatList, TouchableOpacity, } from 'react-native'; import { useNavigation, CompositeNavigationProp } from '@react-navigation/native'; import { BottomTabNavigationProp } from '@react-navigation/bottom-tabs'; import { StackNavigationProp } from '@react-navigation/stack'; import { getStyles } from './myOrdersScreen.styles'; import { Header, OrderHistoryCard } from '@components'; import { useAppTheme } from '@theme'; import { AppStackParamList } from '../../../navigation/appStack'; import { MainTabParamList } from '../../../navigation/mainTabNavigator'; type MyOrdersNavProp = CompositeNavigationProp< BottomTabNavigationProp, StackNavigationProp >; const TABS = ['All', 'Ongoing', 'Completed']; const mockOrders = [ { id: 'ORD-591283', providerName: 'Pizza Planet', providerImage: '', orderDate: '29 Jun 2026', status: 'Delivered', total: 599 }, { id: 'ORD-771239', providerName: 'Fresh Mart', providerImage: '', orderDate: '28 Jun 2026', status: 'Ongoing', total: 349 }, { id: 'ORD-108239', providerName: 'Burger Barn', providerImage: '', orderDate: '27 Jun 2026', status: 'Delivered', total: 449 }, ]; export const MyOrdersScreen: React.FC = () => { const { colors } = useAppTheme(); const styles = getStyles(colors); const navigation = useNavigation(); const [activeTab, setActiveTab] = useState('All'); const filteredOrders = activeTab === 'All' ? mockOrders : activeTab === 'Ongoing' ? mockOrders.filter((o) => o.status === 'Ongoing') : mockOrders.filter((o) => o.status === 'Delivered'); return (
{TABS.map((tab) => ( setActiveTab(tab)} activeOpacity={0.7} > {tab} ))} item.id} renderItem={({ item }) => ( { navigation.navigate('ProviderDetailsScreen', { providerId: 'p1', providerName: item.providerName, }); }} onDetails={() => { if (item.status === 'Ongoing') { navigation.navigate('OrderTrackingScreen', { orderId: item.id }); } else { navigation.navigate('OrderDeliveredScreen', { orderId: item.id }); } }} /> )} contentContainerStyle={styles.list} ListEmptyComponent={ No orders found } /> ); };