32 lines
1.1 KiB
Dart
32 lines
1.1 KiB
Dart
import 'package:backend_dart/application/service/service_provider.dart';
|
|
import 'package:riverpod/riverpod.dart';
|
|
import 'package:shelf/shelf.dart';
|
|
import 'package:shelf_router/shelf_router.dart';
|
|
|
|
Router getRouter(ProviderContainer container) {
|
|
final router = Router();
|
|
|
|
// Welcome and health routes
|
|
router.get('/', (Request request) {
|
|
return Response.ok('Welcome to ActaTempus!');
|
|
});
|
|
|
|
router.get('/health', (Request request) {
|
|
return Response.ok('Server is running');
|
|
});
|
|
|
|
// Services
|
|
final userService = container.read(userServiceProvider);
|
|
final projectService = container.read(projectServiceProvider);
|
|
final projectTaskService = container.read(projectTaskServiceProvider);
|
|
final timeEntryService = container.read(timeEntryServiceProvider);
|
|
|
|
// UserService-Router
|
|
router.mount('/api/users/', userService.router.call);
|
|
router.mount('/api/projects/', projectService.router.call);
|
|
router.mount('/api/project-tasks/', projectTaskService.router.call);
|
|
router.mount('/api/time-entries/', timeEntryService.router.call);
|
|
|
|
return router;
|
|
}
|