import React from 'react'; import { Navigate, useNavigate } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; import { YStack, XStack } from '@tamagui/stacks'; import { SizableText as Text } from '@tamagui/text'; import { Pressable } from '@tamagui/react-native-web-lite'; import { MobileShell } from './components/MobileShell'; import { MobileCard, CTAButton } from './components/Primitives'; import { useEventContext } from '../context/EventContext'; import { formatEventDate, resolveEventDisplayName } from '../lib/events'; import { adminPath } from '../constants'; import { useTheme } from '@tamagui/core'; export default function MobileUploadsTabPage() { const { events, activeEvent, hasEvents, selectEvent } = useEventContext(); const { t, i18n } = useTranslation('management'); const navigate = useNavigate(); const theme = useTheme(); const text = String(theme.color?.val ?? '#111827'); const muted = String(theme.gray?.val ?? '#4b5563'); const border = String(theme.borderColor?.val ?? '#e5e7eb'); const primary = String(theme.primary?.val ?? '#007AFF'); if (activeEvent?.slug) { return ; } if (!hasEvents) { return ( {t('mobileUploads.emptyTitle', 'Create an event first')} {t('mobileUploads.emptyBody', 'Add your first event to review uploads and manage QR sharing.')} navigate(adminPath('/mobile/events/new'))} /> ); } const locale = i18n.language?.startsWith('en') ? 'en-GB' : 'de-DE'; return ( {t('mobileUploads.pickEvent', 'Pick an event to manage uploads')} {events.map((event) => ( { selectEvent(event.slug ?? null); if (event.slug) { navigate(adminPath(`/mobile/events/${event.slug}/photos`)); } }} > {resolveEventDisplayName(event)} {formatEventDate(event.event_date, locale) ?? t('mobileDashboard.status.draft', 'Draft')} {t('mobileUploads.open', 'Open')} ))} ); }