diff --git a/lib/main.dart b/lib/main.dart index c93245d..12d9574 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -18,9 +18,38 @@ final _router = GoRouter( initialLocation: '/', routes: [ GoRoute(name: 'index', path: '/', builder: (context, state) => const IndexPage()), - GoRoute(name: 'login', path: '/login', builder: (context, state) => const LoginPage()), + GoRoute( + name: 'login', + path: '/login', + builder: (context, state) => const LoginPage(), + pageBuilder: (BuildContext context, GoRouterState state) => CustomTransitionPage( + key: state.pageKey, + child: const LoginPage(), + transitionsBuilder: (context, animation, secondaryAnimation, child) { + return SlideTransition( + position: Tween(begin: Offset(-1.0, 0.0), end: Offset.zero).animate(animation), + child: child, + ); + }, + ), + ), GoRoute(name: 'approval', path: '/approval', builder: (context, state) => const ApprovalPage()), - GoRoute(name: 'validate', path: '/validate', builder: (context, state) => const ValidatePage()), + GoRoute( + name: 'validate', + path: '/validate', + builder: (context, state) => const ValidatePage(), + pageBuilder: (BuildContext context, GoRouterState state) => CustomTransitionPage( + key: state.pageKey, + child: const ValidatePage(), + transitionsBuilder: (context, animation, secondaryAnimation, child) { + return SlideTransition( + position: Tween(begin: Offset(1.0, 0.0), end: Offset.zero).animate(animation), + child: child, + ); + }, + ), + ), + // GoRoute(name: 'validate', path: '/validate', builder: (context, state) => const ValidatePage()), GoRoute(name: 'result', path: '/result', builder: (context, state) => const ValidationResultPage()), ], );