update the app

This commit is contained in:
root
2026-05-25 15:56:00 -04:00
parent 277db06d26
commit 7ca43ba2f3
19 changed files with 1854 additions and 210 deletions
+49 -1
View File
@@ -10,10 +10,13 @@ import '../../features/auth/screens/employee_login_screen.dart';
import '../../features/dashboard/screens/home_screen.dart';
import '../../features/dashboard/screens/vehicles_screen.dart';
import '../../features/dashboard/screens/vehicle_detail_screen.dart';
import '../../features/dashboard/screens/vehicle_form_screen.dart';
import '../../features/dashboard/screens/reservations_screen.dart';
import '../../features/dashboard/screens/reservation_detail_screen.dart';
import '../../features/dashboard/screens/new_reservation_screen.dart';
import '../../features/dashboard/screens/customers_screen.dart';
import '../../features/dashboard/screens/customer_detail_screen.dart';
import '../../features/dashboard/screens/customer_form_screen.dart';
import '../../features/dashboard/screens/notifications_screen.dart';
import '../../features/dashboard/screens/online_reservations_screen.dart';
import '../../features/dashboard/screens/contract_screen.dart';
@@ -25,7 +28,10 @@ import '../../features/dashboard/screens/team_screen.dart';
import '../../features/client/screens/client_home_screen.dart';
import '../../features/client/screens/client_vehicle_detail_screen.dart';
import '../../features/client/screens/booking_screen.dart';
import '../../features/client/screens/booking_confirmation_screen.dart';
import '../../features/client/screens/my_bookings_screen.dart';
import '../../features/client/models/booking_result.dart';
import '../../features/agency_webview/screens/agency_dashboard_webview_screen.dart';
final routerProvider = Provider<GoRouter>((ref) {
final router = GoRouter(
@@ -52,7 +58,13 @@ final routerProvider = Provider<GoRouter>((ref) {
}
if (status == AuthStatus.unauthenticated) {
if (isLanding || isLogin || loc.startsWith('/client')) return null;
if (isLanding ||
isLogin ||
loc.startsWith('/client') ||
loc == '/role' ||
loc == '/agency') {
return null;
}
return '/landing';
}
@@ -156,6 +168,42 @@ final routerProvider = Provider<GoRouter>((ref) {
vehicle: state.extra as MarketplaceVehicle?,
),
),
GoRoute(
path: '/booking-confirmation',
builder: (_, state) {
final result = state.extra as BookingResult?;
if (result == null) return const ClientHomeScreen();
return BookingConfirmationScreen(result: result);
},
),
GoRoute(
path: '/agency',
builder: (context, _) => const AgencyDashboardWebViewScreen(),
),
GoRoute(
path: '/dashboard/reservations/new',
builder: (context, _) => const NewReservationScreen(),
),
GoRoute(
path: '/dashboard/vehicles/new',
builder: (context, _) => const VehicleFormScreen(),
),
GoRoute(
path: '/dashboard/vehicles/:id/edit',
builder: (_, state) => VehicleFormScreen(
vehicle: state.extra as dynamic,
),
),
GoRoute(
path: '/dashboard/customers/new',
builder: (context, _) => const CustomerFormScreen(),
),
GoRoute(
path: '/dashboard/customers/:id/edit',
builder: (_, state) => CustomerFormScreen(
customer: state.extra as dynamic,
),
),
],
);