forked from eatvio/eatvio_app
192 lines
10 KiB
Dart
192 lines
10 KiB
Dart
import 'package:eatvio_app/presentation/diets/diet_select_screen/diet_select_screen.dart';
|
|
import 'package:flutter/material.dart';
|
|
import 'package:eatvio_app/presentation/registration/date_of_birth_screen/date_of_birth_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/city_of_living_screen/city_of_living_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/body_circumferences_screen/body_circumferences_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/weight_screen/weight_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/allergies_screen/allergies_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/medicine_intake_screen/medicine_intake_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/splash_screen/splash_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/gender_screen/gender_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/blood_pressure_screen/blood_pressure_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/favorite_sports_screen/favorite_sports_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/favorite_foods_screen/favorite_foods_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/additional_information_screen/additional_information_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/language_select_screen/language_select_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/height_screen/height_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/credentials_screen/credentials_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/name_screen/name_screen.dart';
|
|
import 'package:eatvio_app/presentation/registration/app_navigation_screen/app_navigation_screen.dart';
|
|
import 'package:eatvio_app/presentation/profile/my_profile_screen/my_profile_screen.dart';
|
|
import 'package:eatvio_app/presentation/profile/my_profile_screen/my_settings_screen.dart';
|
|
import 'package:eatvio_app/presentation/diary/diary_edit_screen/diary_edit_screen.dart';
|
|
import 'package:eatvio_app/presentation/chat/chat_screen/chat_screen.dart';
|
|
import 'package:eatvio_app/presentation/chat/chat_select_screen/chat_select_screen.dart';
|
|
import 'package:eatvio_app/presentation/feed/feed_screen/feed_screen.dart';
|
|
import 'package:eatvio_app/presentation/recipe/recipe_select_screen/recipe_select_screen.dart';
|
|
import 'package:eatvio_app/presentation/plans/plan_select_screen/plan_select_screen.dart';
|
|
import 'package:eatvio_app/presentation/plans/plan_edit_screen/plan_edit_screen.dart';
|
|
import 'package:eatvio_app/presentation/plans/plan_create_screen/plan_create_screen.dart';
|
|
import 'package:eatvio_app/presentation/diets/diet_show_screen/diet_show_screen.dart';
|
|
import 'package:eatvio_app/presentation/diets/diet_edit_screen/diet_edit_screen.dart';
|
|
import 'package:eatvio_app/presentation/diets/diet_create_screen/diet_create_screen.dart';
|
|
import 'package:eatvio_app/presentation/plans/plan_show_screen/plan_show_screen.dart';
|
|
import 'package:eatvio_app/presentation/recipe/recipe_show_screen/recipe_show_screen.dart';
|
|
import 'package:eatvio_app/presentation/recipe/recipe_create_screen/recipe_create_screen.dart';
|
|
import 'package:eatvio_app/presentation/recipe/recipe_edit_screen/recipe_edit_screen.dart';
|
|
import 'package:eatvio_app/presentation/feed/blog_post_edit_screen/blog_post_edit_screen.dart';
|
|
import 'package:eatvio_app/presentation/feed/blog_post_create_screen/blog_post_create_screen.dart';
|
|
import 'package:eatvio_app/presentation/glossary/glossary_screen/glossary_screen.dart';
|
|
|
|
class AppRoutes {
|
|
// REGISTRATION
|
|
|
|
static const String dateOfBirthScreen = '/date_of_birth_screen';
|
|
|
|
static const String cityOfLivingScreen = '/city_of_living_screen';
|
|
|
|
static const String bodyCircumferencesScreen = '/body_circumferences_screen';
|
|
|
|
static const String weightScreen = '/weight_screen';
|
|
|
|
static const String heightScreen = '/height_screen';
|
|
|
|
static const String allergiesScreen = '/allergies_screen';
|
|
|
|
static const String medicineIntakeScreen = '/medicine_intake_screen';
|
|
|
|
static const String splashScreen = '/splash_screen';
|
|
|
|
static const String genderScreen = '/gender_screen';
|
|
|
|
static const String bloodPressureScreen = '/blood_pressure_screen';
|
|
|
|
static const String favoriteSportsScreen = '/favorite_sports_screen';
|
|
|
|
static const String favoriteFoodsScreen = '/favorite_foods_screen';
|
|
|
|
static const String scheduleScreen = '/schedule_screen';
|
|
|
|
static const String additionalInformationScreen = '/additional_information_screen';
|
|
|
|
static const String languageSelectScreen = '/language_select_screen';
|
|
|
|
static const String nameScreen = '/name_screen';
|
|
|
|
static const String credentialsScreen = '/credentials_screen';
|
|
|
|
static const String appNavigationScreen = '/app_navigation_screen';
|
|
|
|
static const String authScreen = '/auth_screen';
|
|
|
|
static const String initialRoute = '/initialRoute';
|
|
|
|
//PROFILE
|
|
static const String myProfile = '/myProfile';
|
|
|
|
static const String mySettings = '/mySettings';
|
|
|
|
static const String diaryEdit = '/diaryEdit';
|
|
|
|
static const String chatScreen = '/chat';
|
|
|
|
static const String chatSelectScreen = '/chatSelect';
|
|
|
|
static const String feedScreen = '/feed';
|
|
|
|
static const String blogPostScreen = '/blogPost';
|
|
|
|
static const String blogPostEditScreen = '/blogPostEdit';
|
|
|
|
static const String blogPostCreateScreen = '/blogPostCreate';
|
|
|
|
static const String recipeSelectScreen = '/recipeSelect';
|
|
|
|
static const String recipeScreen = '/recipe';
|
|
|
|
static const String recipeEditScreen = '/recipeEdit';
|
|
|
|
static const String recipeCreateScreen = '/recipeCreate';
|
|
|
|
static const String dietSelectScreen = '/dietSelect';
|
|
|
|
static const String dietScreen = '/diet';
|
|
|
|
static const String dietEditScreen = '/dietEdit';
|
|
|
|
static const String dietCreateScreen = '/dietCreate';
|
|
|
|
static const String planSelectScreen = '/planSelect';
|
|
|
|
static const String planScreen = '/plan';
|
|
|
|
static const String planEditScreen = '/planEdit';
|
|
|
|
static const String planCreateScreen = '/planCreate';
|
|
|
|
static const String glossaryScreen = '/glossary';
|
|
|
|
static Map<String, WidgetBuilder> get routes => {
|
|
dateOfBirthScreen: (context) => _buildFadeRoute(context, DateOfBirthScreen.builder),
|
|
cityOfLivingScreen: (context) => _buildFadeRoute(context, CityOfLivingScreen.builder),
|
|
bodyCircumferencesScreen: (context) => _buildFadeRoute(context, BodyCircumferencesScreen.builder),
|
|
weightScreen: (context) => _buildFadeRoute(context, WeightScreen.builder),
|
|
heightScreen: (context) => _buildFadeRoute(context, HeightScreen.builder),
|
|
nameScreen: (context) => _buildFadeRoute(context, NameScreen.builder),
|
|
credentialsScreen: (context) => _buildFadeRoute(context, CredentialsScreen.builder),
|
|
allergiesScreen: (context) => _buildFadeRoute(context, AllergiesScreen.builder),
|
|
medicineIntakeScreen: (context) => _buildFadeRoute(context, MedicineIntakeScreen.builder),
|
|
splashScreen: (context) => _buildFadeRoute(context, SplashScreen.builder),
|
|
genderScreen: (context) => _buildFadeRoute(context, GenderScreen.builder),
|
|
bloodPressureScreen: (context) => _buildFadeRoute(context, BloodPressureScreen.builder),
|
|
favoriteSportsScreen: (context) => _buildFadeRoute(context, FavoriteSportsScreen.builder),
|
|
favoriteFoodsScreen: (context) => _buildFadeRoute(context, FavoriteFoodsScreen.builder),
|
|
additionalInformationScreen: (context) => _buildFadeRoute(context, AdditionalInformationScreen.builder),
|
|
languageSelectScreen: (context) => _buildFadeRoute(context, LanguageSelectScreen.builder),
|
|
appNavigationScreen: (context) => _buildFadeRoute(context, AppNavigationScreen.builder),
|
|
initialRoute: (context) => _buildFadeRoute(context, SplashScreen.builder),
|
|
myProfile: (context) => _buildFadeRoute(context, MyProfileScreen.builder),
|
|
mySettings: (context) => _buildFadeRoute(context, MySettingsScreen.builder),
|
|
diaryEdit: (context) => _buildFadeRoute(context, DiaryEditScreen.builder),
|
|
chatScreen: (context) => _buildFadeRoute(context, ChatScreen.builder),
|
|
chatSelectScreen: (context) => _buildFadeRoute(context, ChatSelectScreen.builder),
|
|
recipeSelectScreen: (context) => _buildFadeRoute(context, RecipeSelectScreen.builder),
|
|
recipeScreen: (context) => _buildFadeRoute(context, RecipeScreen.builder),
|
|
recipeEditScreen: (context) => _buildFadeRoute(context, RecipeEditScreen.builder),
|
|
recipeCreateScreen: (context) => _buildFadeRoute(context, RecipeCreateScreen.builder),
|
|
dietSelectScreen: (context) => _buildFadeRoute(context, DietSelectScreen.builder),
|
|
dietScreen: (context) => _buildFadeRoute(context, DietScreen.builder),
|
|
dietEditScreen: (context) => _buildFadeRoute(context, DietEditScreen.builder),
|
|
dietCreateScreen: (context) => _buildFadeRoute(context, DietCreateScreen.builder),
|
|
planSelectScreen: (context) => _buildFadeRoute(context, PlanSelectScreen.builder),
|
|
planScreen: (context) => _buildFadeRoute(context, PlanScreen.builder),
|
|
planEditScreen: (context) => _buildFadeRoute(context, PlanEditScreen.builder),
|
|
planCreateScreen: (context) => _buildFadeRoute(context, PlanCreateScreen.builder),
|
|
feedScreen: (context) => _buildFadeRoute(context, FeedScreen.builder),
|
|
blogPostEditScreen: (context) => _buildFadeRoute(context, BlogPostEditScreen.builder),
|
|
blogPostCreateScreen: (context) => _buildFadeRoute(context, BlogPostCreateScreen.builder),
|
|
glossaryScreen: (context) => _buildFadeRoute(context, GlossaryScreen.builder),
|
|
};
|
|
|
|
static Widget _buildFadeRoute(BuildContext context, WidgetBuilder builder) {
|
|
return FadeTransition(
|
|
opacity: AlwaysStoppedAnimation<double>(1.0),
|
|
child: builder(context),
|
|
);
|
|
}
|
|
}
|
|
|
|
class FadeTransitionPage extends PageRouteBuilder {
|
|
final WidgetBuilder builder;
|
|
|
|
FadeTransitionPage({required this.builder})
|
|
: super(
|
|
pageBuilder: (BuildContext context, Animation<double> animation, Animation<double> secondaryAnimation) {
|
|
return builder(context);
|
|
},
|
|
transitionsBuilder: (BuildContext context, Animation<double> animation, Animation<double> secondaryAnimation, Widget child) {
|
|
return FadeTransition(opacity: animation, child: child);
|
|
},
|
|
);
|
|
}
|