Migrate to auto_router

This commit is contained in:
2022-09-03 14:46:00 -04:00
parent 7ca45d2f70
commit 1c7f353e5f
11 changed files with 625 additions and 463 deletions

View File

@@ -1,15 +1,22 @@
import 'package:flutter/material.dart';
import 'package:auto_route/auto_route.dart';
import 'package:furman_now/src/screens/events/index.dart';
import 'package:furman_now/src/screens/home/index.dart';
import 'package:furman_now/src/screens/info/index.dart';
import 'package:furman_now/src/screens/map/index.dart';
import 'package:furman_now/src/screens/student_id/index.dart';
Route routes(RouteSettings settings) {
switch (settings.name) {
case '/':
return MaterialPageRoute(builder: (_) => const HomeScreen());
// case '/home':
// return MaterialPageRoute(builder: (_) => HomeScreen());
// case '/auth':
// return MaterialPageRoute(builder: (_) => AuthenticationScreen());
default:
return MaterialPageRoute(builder: (_) => const HomeScreen());
}
}
import '../layouts/main/index.dart';
@MaterialAutoRouter(
replaceInRouteName: 'Screen,Route',
routes: <AutoRoute>[
AutoRoute(path: "/", page: MainLayout, children: [
AutoRoute(path: "home", page: HomeScreen),
AutoRoute(path: "map", page: MapScreen),
AutoRoute(path: "student-id", page: StudentIdScreen),
AutoRoute(path: "events", page: EventsScreen),
AutoRoute(path: "info", page: InfoScreen),
]),
],
)
class $AppRouter {}

View File

@@ -0,0 +1,118 @@
// **************************************************************************
// AutoRouteGenerator
// **************************************************************************
// GENERATED CODE - DO NOT MODIFY BY HAND
// **************************************************************************
// AutoRouteGenerator
// **************************************************************************
//
// ignore_for_file: type=lint
// ignore_for_file: no_leading_underscores_for_library_prefixes
import 'package:auto_route/auto_route.dart' as _i7;
import 'package:flutter/material.dart' as _i8;
import '../layouts/main/index.dart' as _i1;
import '../screens/events/index.dart' as _i5;
import '../screens/home/index.dart' as _i2;
import '../screens/info/index.dart' as _i6;
import '../screens/map/index.dart' as _i3;
import '../screens/student_id/index.dart' as _i4;
class AppRouter extends _i7.RootStackRouter {
AppRouter([_i8.GlobalKey<_i8.NavigatorState>? navigatorKey])
: super(navigatorKey);
@override
final Map<String, _i7.PageFactory> pagesMap = {
MainLayout.name: (routeData) {
return _i7.MaterialPageX<dynamic>(
routeData: routeData, child: const _i1.MainLayout());
},
HomeRoute.name: (routeData) {
return _i7.MaterialPageX<dynamic>(
routeData: routeData, child: const _i2.HomeScreen());
},
MapRoute.name: (routeData) {
return _i7.MaterialPageX<dynamic>(
routeData: routeData, child: const _i3.MapScreen());
},
StudentIdRoute.name: (routeData) {
return _i7.MaterialPageX<dynamic>(
routeData: routeData, child: const _i4.StudentIdScreen());
},
EventsRoute.name: (routeData) {
return _i7.MaterialPageX<dynamic>(
routeData: routeData, child: const _i5.EventsScreen());
},
InfoRoute.name: (routeData) {
return _i7.MaterialPageX<dynamic>(
routeData: routeData, child: const _i6.InfoScreen());
}
};
@override
List<_i7.RouteConfig> get routes => [
_i7.RouteConfig(MainLayout.name, path: '/', children: [
_i7.RouteConfig(HomeRoute.name,
path: 'home', parent: MainLayout.name),
_i7.RouteConfig(MapRoute.name, path: 'map', parent: MainLayout.name),
_i7.RouteConfig(StudentIdRoute.name,
path: 'student-id', parent: MainLayout.name),
_i7.RouteConfig(EventsRoute.name,
path: 'events', parent: MainLayout.name),
_i7.RouteConfig(InfoRoute.name, path: 'info', parent: MainLayout.name)
])
];
}
/// generated route for
/// [_i1.MainLayout]
class MainLayout extends _i7.PageRouteInfo<void> {
const MainLayout({List<_i7.PageRouteInfo>? children})
: super(MainLayout.name, path: '/', initialChildren: children);
static const String name = 'MainLayout';
}
/// generated route for
/// [_i2.HomeScreen]
class HomeRoute extends _i7.PageRouteInfo<void> {
const HomeRoute() : super(HomeRoute.name, path: 'home');
static const String name = 'HomeRoute';
}
/// generated route for
/// [_i3.MapScreen]
class MapRoute extends _i7.PageRouteInfo<void> {
const MapRoute() : super(MapRoute.name, path: 'map');
static const String name = 'MapRoute';
}
/// generated route for
/// [_i4.StudentIdScreen]
class StudentIdRoute extends _i7.PageRouteInfo<void> {
const StudentIdRoute() : super(StudentIdRoute.name, path: 'student-id');
static const String name = 'StudentIdRoute';
}
/// generated route for
/// [_i5.EventsScreen]
class EventsRoute extends _i7.PageRouteInfo<void> {
const EventsRoute() : super(EventsRoute.name, path: 'events');
static const String name = 'EventsRoute';
}
/// generated route for
/// [_i6.InfoScreen]
class InfoRoute extends _i7.PageRouteInfo<void> {
const InfoRoute() : super(InfoRoute.name, path: 'info');
static const String name = 'InfoRoute';
}