Update admin PWA events, branding, and packages
This commit is contained in:
@@ -13,14 +13,34 @@ vi.mock('react-router-dom', () => ({
|
||||
|
||||
vi.mock('react-i18next', () => ({
|
||||
useTranslation: () => ({
|
||||
t: (key: string, fallback?: string | Record<string, unknown>) => {
|
||||
if (typeof fallback === 'string') {
|
||||
return fallback;
|
||||
}
|
||||
if (fallback && typeof fallback === 'object' && typeof fallback.defaultValue === 'string') {
|
||||
return fallback.defaultValue;
|
||||
}
|
||||
return key;
|
||||
t: (key: string) => {
|
||||
const translations: Record<string, string> = {
|
||||
'events.list.title': 'Your events',
|
||||
'events.list.subtitle': 'Plan memorable moments. Manage everything around your events here.',
|
||||
'events.list.overview.title': 'Overview',
|
||||
'events.list.overview.empty': 'No events yet – create your first one to get started.',
|
||||
'events.list.filters.all': 'All',
|
||||
'events.list.filters.upcoming': 'Upcoming',
|
||||
'events.list.filters.draft': 'Draft',
|
||||
'events.list.filters.past': 'Past',
|
||||
'events.list.actions.create': 'New event',
|
||||
'events.list.actions.open': 'Open event',
|
||||
'events.list.empty.filtered': 'No events match this filter.',
|
||||
'events.list.empty.filteredHint': 'Try a different status or clear your search.',
|
||||
'events.list.stats.photos': 'Photos',
|
||||
'events.list.stats.guests': 'Guests',
|
||||
'events.list.stats.tasks': 'Tasks',
|
||||
'events.workspace.fields.status': 'Status',
|
||||
'events.detail.pickEvent': 'Select event',
|
||||
'events.detail.dateTbd': 'Date tbd',
|
||||
'events.detail.locationPlaceholder': 'Location',
|
||||
'events.placeholders.untitled': 'Untitled event',
|
||||
'events.errors.loadFailed': 'Event konnte nicht geladen werden.',
|
||||
};
|
||||
return translations[key] ?? key;
|
||||
},
|
||||
i18n: {
|
||||
language: 'en',
|
||||
},
|
||||
}),
|
||||
}));
|
||||
@@ -136,7 +156,7 @@ describe('MobileEventsPage', () => {
|
||||
it('renders filters and event list', async () => {
|
||||
render(<MobileEventsPage />);
|
||||
|
||||
expect(await screen.findByText('Filters & Search')).toBeInTheDocument();
|
||||
expect(await screen.findByText('Overview')).toBeInTheDocument();
|
||||
expect(screen.getByText('Status')).toBeInTheDocument();
|
||||
expect(screen.getByText('Demo Event')).toBeInTheDocument();
|
||||
});
|
||||
@@ -147,7 +167,7 @@ describe('MobileEventsPage', () => {
|
||||
render(<MobileEventsPage />);
|
||||
|
||||
expect(await screen.findByText('Demo Event')).toBeInTheDocument();
|
||||
expect(screen.queryByText('Create New Event')).not.toBeInTheDocument();
|
||||
expect(screen.queryByText('New event')).not.toBeInTheDocument();
|
||||
|
||||
authState.user = { role: 'tenant_admin' };
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user