|
- import 'package:flutter/material.dart';
-
- import '../presentation/screens/login/login_page.dart';
- import '../presentation/screens/tabbar/tabbar.dart';
- import 'route_name.dart';
-
- class Routes {
- static Route buildRoutes(RouteSettings settings) {
- switch (settings.name) {
- case RouteName.loginPage:
- return buildRoute(settings, const LoginPage());
- case RouteName.dashboardPage:
- return buildRoute(settings, TabbarScreen());
-
- default:
- return _errorRoute();
- }
- }
-
- static Route login() {
- return PageRouteBuilder(
- pageBuilder: (context, animation, secondaryAnimation) => const LoginPage(),
- transitionsBuilder: (context, animation, secondaryAnimation, child) {
- return child;
- },
- transitionDuration: const Duration(seconds: 0),
- );
- }
-
- static Route dashboard() {
- return PageRouteBuilder(
- pageBuilder: (context, animation, secondaryAnimation) => TabbarScreen(),
- transitionsBuilder: (context, animation, secondaryAnimation, child) {
- return child;
- },
- transitionDuration: const Duration(seconds: 0),
- );
- }
-
- static Route homeRoute(RouteSettings settings) {
- return buildRoutes(settings);
- }
-
- static Route _errorRoute() {
- return MaterialPageRoute(builder: (_) {
- return const Scaffold(
- body: Center(
- child: Text(''),
- ),
- );
- });
- }
-
- static MaterialPageRoute buildRoute(RouteSettings settings, Widget builder) {
- return MaterialPageRoute(
- settings: settings,
- builder: (BuildContext context) => builder,
- );
- }
- }
|