- added navigation, utils, design system and shared packages - implemented go router in entiered app - implemented flutter riverpod instead provider
53 lines
1.4 KiB
Dart
53 lines
1.4 KiB
Dart
import 'package:auth/auth.dart';
|
|
import 'package:dashboard_shell/dashboard_builder.dart';
|
|
import 'package:flutter/material.dart';
|
|
import 'package:go_router/go_router.dart';
|
|
|
|
import 'package:navigation/navigation.dart';
|
|
import 'package:get_it/get_it.dart';
|
|
|
|
final GlobalKey<NavigatorState> navigatorKey = GlobalKey<NavigatorState>();
|
|
|
|
late GoRouter appRouter;
|
|
|
|
void configureAppRouter() {
|
|
appRouter = GoRouter(
|
|
navigatorKey: navigatorKey,
|
|
initialLocation: '/login',
|
|
routes: [
|
|
GoRoute(
|
|
path: '/onboarding',
|
|
pageBuilder: (context, state) =>
|
|
OnboardingBuilder().buildPage(context, state),
|
|
),
|
|
GoRoute(
|
|
path: '/link_phone',
|
|
pageBuilder: (context, state) =>
|
|
LinkPhoneBuilder().buildPage(context, state),
|
|
),
|
|
GoRoute(
|
|
path: '/phone_code',
|
|
pageBuilder: (context, state) =>
|
|
PhoneCodeBuilder().buildPage(context, state),
|
|
),
|
|
GoRoute(
|
|
path: '/login',
|
|
pageBuilder: (context, state) =>
|
|
LoginBuilder().buildPage(context, state),
|
|
),
|
|
GoRoute(
|
|
path: '/recover_password',
|
|
pageBuilder: (context, state) =>
|
|
RecoverPasswordBuilder().buildPage(context, state),
|
|
),
|
|
GoRoute(
|
|
path: '/dashboard_shell',
|
|
pageBuilder: (context, state) =>
|
|
DashboardBuilder().buildPage(context, state),
|
|
),
|
|
],
|
|
);
|
|
|
|
GetIt.I<NavigationContract>().setRouter(appRouter);
|
|
}
|