added notifications and change in forgot password

This commit is contained in:
amirrezaghabeli
2025-09-02 10:16:37 +03:30
parent 865d166a59
commit 22d1f03b6e
18 changed files with 397 additions and 17 deletions
+24 -1
View File
@@ -5,6 +5,7 @@ import 'package:tm_app/views/home/pages/home_screen.dart';
import 'package:tm_app/views/login/pages/login_screen.dart';
import '../../views/forgot_password/pages/forgot_password_screen.dart';
import '../../views/notification/pages/notification_screen.dart';
import '../../views/profile/pages/profile_screen.dart';
import '../../views/tenders/pages/tenders_screen.dart';
import '../../views/your_tenders/pages/your_tenders_screen.dart';
@@ -19,11 +20,13 @@ final GlobalKey<NavigatorState> tendersNavigatorKey =
GlobalKey<NavigatorState>();
final GlobalKey<NavigatorState> profileNavigatorKey =
GlobalKey<NavigatorState>();
final GlobalKey<NavigatorState> notificationNavigatorKey =
GlobalKey<NavigatorState>();
// Main app router
final GoRouter appRouter = GoRouter(
routes: $appRoutes,
initialLocation: '/login',
initialLocation: '/notification',
navigatorKey: rootNavigatorKey,
);
@@ -56,6 +59,11 @@ class LoginScreenRoute extends GoRouteData with _$LoginScreenRoute {
TypedGoRoute<ProfileRouteData>(path: '/profile'),
],
),
TypedStatefulShellBranch<NotificationBranch>(
routes: <TypedRoute<RouteData>>[
TypedGoRoute<NotificationRouteData>(path: '/notification'),
],
),
],
)
class AppShellRouteData extends StatefulShellRouteData {
@@ -89,6 +97,12 @@ class ProfileBranch extends StatefulShellBranchData {
static final GlobalKey<NavigatorState> $navigatorKey = profileNavigatorKey;
}
class NotificationBranch extends StatefulShellBranchData {
const NotificationBranch();
static final GlobalKey<NavigatorState> $navigatorKey =
notificationNavigatorKey;
}
// Route data classes
class HomeRouteData extends GoRouteData with _$HomeRouteData {
const HomeRouteData();
@@ -138,6 +152,15 @@ class ProfileRouteData extends GoRouteData with _$ProfileRouteData {
}
}
class NotificationRouteData extends GoRouteData with _$NotificationRouteData {
const NotificationRouteData();
@override
Widget build(BuildContext context, GoRouterState state) {
return const NotificationScreen();
}
}
@TypedGoRoute<YourTendersRouteData>(path: '/your-tenders')
class YourTendersRouteData extends GoRouteData with _$YourTendersRouteData {
const YourTendersRouteData();