AgendaTasks/lib/routing/app_router.dart
m3mo cb308bbf68 Initial project setup with Clean Architecture
- Flutter frontend with Provider state management
- FastAPI backend with SQLAlchemy ORM
- Internationalization support (EN/DE)
- Clean Architecture folder structure
- GoRouter for navigation
- GetIt for dependency injection
2026-02-02 16:43:37 +01:00

46 lines
1.3 KiB
Dart

import 'package:go_router/go_router.dart';
import '../features/tasks/presentation/pages/daily_agenda_page.dart';
import '../features/tasks/presentation/pages/calendar_page.dart';
import '../features/tasks/presentation/pages/task_form_page.dart';
import '../features/settings/presentation/pages/settings_page.dart';
class AppRouter {
static final router = GoRouter(
initialLocation: '/',
routes: [
GoRoute(
path: '/',
name: 'daily',
builder: (context, state) => const DailyAgendaPage(),
),
GoRoute(
path: '/calendar',
name: 'calendar',
builder: (context, state) => const CalendarPage(),
),
GoRoute(
path: '/task/new',
name: 'task-new',
builder: (context, state) {
final dateStr = state.uri.queryParameters['date'];
return TaskFormPage(initialDate: dateStr);
},
),
GoRoute(
path: '/task/:id/edit',
name: 'task-edit',
builder: (context, state) {
final taskId = state.pathParameters['id']!;
return TaskFormPage(taskId: taskId);
},
),
GoRoute(
path: '/settings',
name: 'settings',
builder: (context, state) => const SettingsPage(),
),
],
);
}