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, resolveEngagementMode, resolveEventDisplayName } from '../lib/events';
import { adminPath } from '../constants';
import { useAdminTheme } from './theme';
export default function MobileTasksTabPage() {
const { events, activeEvent, hasEvents, selectEvent } = useEventContext();
const { t, i18n } = useTranslation('management');
const navigate = useNavigate();
const { text, muted, border, primary } = useAdminTheme();
const tasksEnabled = resolveEngagementMode(activeEvent ?? null) !== 'photo_only';
if (activeEvent?.slug && tasksEnabled) {
return ;
}
if (activeEvent?.slug && !tasksEnabled) {
return (
{t('events.tasks.disabledTitle', 'Task mode is off for this event')}
{t('events.tasks.disabledBody', 'Guests see only the photo feed. Enable tasks in the event settings to show them again.')}
navigate(adminPath(`/mobile/events/${activeEvent.slug}/edit`))}
/>
);
}
if (!hasEvents) {
return (
{t('events.tasks.emptyTitle', 'Create an event first')}
{t('events.tasks.emptyBody', 'Start an event to add tasks, challenges, and checklists.')}
navigate(adminPath('/mobile/events/new'))}
/>
);
}
const locale = i18n.language?.startsWith('en') ? 'en-GB' : 'de-DE';
return (
{t('events.tasks.pickEvent', 'Pick an event to manage tasks')}
{events.map((event) => (
{
selectEvent(event.slug ?? null);
if (event.slug) {
navigate(adminPath(`/mobile/events/${event.slug}/tasks`));
}
}}
>
{resolveEventDisplayName(event)}
{formatEventDate(event.event_date, locale) ?? t('events.status.draft', 'Draft')}
{t('events.actions.open', 'Open')}
))}
);
}