From 64bddf79b48bf304ed8b24a45ac0d766862d87d5 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Wed, 11 Sep 2024 16:22:12 +0300 Subject: [PATCH] refactor: --- lib/core/app_export.dart | 13 - .../{constants/constants.dart => const.dart} | 0 .../initialization_cubit.dart | 3 +- .../presentation/pages/blog_post_screen.dart | 5 +- .../pages/blog_post_create_screen.dart | 12 +- .../new_messages_cubit.dart | 2 +- .../notifications_cubit.dart | 2 +- .../widgets/bottom_navigation_bar_widget.dart | 29 +- .../presentation/bloc/calendar_cubit.dart | 2 +- .../presentation/pages/calendar_screen.dart | 126 ++++--- .../bloc/chat_room_cubit/chat_room_cubit.dart | 2 +- .../chat_select_cubit/chat_select_cubit.dart | 2 +- .../chat/presentation/pages/chat_screen.dart | 5 +- .../pages/chat_select_screen.dart | 3 +- .../presentation/pages/photo_view_screen.dart | 4 +- .../widgets/chat_bubble_widget.dart | 4 +- .../widgets/chat_entry_widget.dart | 4 +- .../widgets/chat_search_bar_widget.dart | 3 +- .../diary/presentation/bloc/diary_bloc.dart | 6 +- .../pages/diary_recommendations_scree.dart | 2 +- .../presentation/pages/diary_screen.dart | 67 ++-- .../presentation/pages/about_diet_screen.dart | 5 +- .../bloc/comments_cubit/comments_cubit.dart | 2 +- .../bloc/feed_cubit/feed_cubit.dart | 2 +- .../feed/presentation/pages/feed_screen.dart | 309 ++++++++++-------- .../widgets/blog_post_widget.dart | 5 +- .../presentation/widgets/comments_widget.dart | 4 +- .../presentation/widgets/diets_widget.dart | 3 +- .../presentation/widgets/plan_widget.dart | 2 +- .../presentation/widgets/recipes_widget.dart | 3 +- .../menu/presentation/pages/menu_screen.dart | 5 +- .../pages/notifications_screen.dart | 2 +- .../bloc/plans_cubit/plans_cubit.dart | 2 +- .../bloc/profile_cubit/profile_cubit.dart | 2 +- .../presentation/pages/profile_screen.dart | 4 +- .../widgets/circumference_chart_widget.dart | 2 +- .../widgets/weight_chart_widget.dart | 2 +- .../bloc/recipe_create_cubit.dart | 3 +- .../pages/about_recipes_screen.dart | 5 +- .../pages/recipe_create_screen.dart | 68 ++-- .../pages/recipe_edit_screen.dart | 7 +- .../registration_cubit.dart | 3 +- .../pages/additional_information_screen.dart | 2 +- .../presentation/pages/allergies_screen.dart | 3 +- .../pages/blood_pressure_screen.dart | 6 +- .../pages/body_circumferences_screen.dart | 3 +- .../pages/city_of_living_screen.dart | 4 +- .../pages/credentials_screen.dart | 3 +- .../pages/date_of_birth_screen.dart | 5 +- .../pages/favorite_foods_screen.dart | 3 +- .../pages/favorite_sports_screen.dart | 3 +- .../presentation/pages/gender_screen.dart | 2 +- .../presentation/pages/height_screen.dart | 3 +- .../pages/language_select_screen.dart | 4 +- .../pages/medicine_intake_screen.dart | 3 +- .../presentation/pages/name_screen.dart | 3 +- .../pages/registration_screen.dart | 5 +- .../presentation/pages/weight_screen.dart | 3 +- lib/locator_service.dart | 5 +- lib/main.dart | 30 +- lib/old/auth/auth_screen/auth_screen.dart | 8 +- lib/old/auth/auth_screen/bloc/auth_bloc.dart | 4 +- .../diary_edit_screen/diary_edit_screen.dart | 2 +- .../bloc/diet_create_bloc.dart | 4 +- .../diet_create_screen.dart | 3 +- .../diet_edit_screen/bloc/diet_edit_bloc.dart | 4 +- .../diet_edit_screen/diet_edit_screen.dart | 5 +- .../bloc/diet_select_bloc.dart | 4 +- .../diet_select_screen.dart | 6 +- .../diet_show_screen/bloc/diet_show_bloc.dart | 4 +- .../diet_show_screen/diet_show_screen.dart | 6 +- .../bloc/blog_post_create_bloc.dart | 5 +- .../bloc/blog_post_edit_bloc.dart | 4 +- .../blog_post_edit_screen.dart | 5 +- .../models/comment_model.dart | 5 +- .../widgets/comment_widget.dart | 7 +- .../feed_screen/widgets/feed_scroll_item.dart | 2 +- .../feed_screen/widgets/feed_search_view.dart | 2 +- .../bloc/glossary_screen_bloc.dart | 5 +- .../glossary_screen/glossary_screen.dart | 7 +- .../widgets/glossary_scroll_item.dart | 2 +- .../widgets/glossary_search_widget.dart | 2 +- .../bloc/plan_create_bloc.dart | 4 +- .../plan_create_screen.dart | 3 +- .../plan_edit_screen/bloc/plan_edit_bloc.dart | 4 +- .../plan_edit_screen/plan_edit_screen.dart | 5 +- .../bloc/plan_select_bloc.dart | 4 +- .../plan_select_screen.dart | 6 +- .../plan_show_screen/bloc/plan_show_bloc.dart | 4 +- .../plan_show_screen/plan_show_screen.dart | 6 +- .../bloc/my_profile_bloc.dart | 9 +- .../my_profile_screen/my_profile_screen.dart | 8 +- .../my_profile_screen/my_settings_screen.dart | 3 +- .../bloc/recipe_edit_bloc.dart | 5 +- .../recipe_edit_screen.dart | 9 +- .../bloc/recipe_select_bloc.dart | 5 +- .../recipe_select_screen.dart | 6 +- .../bloc/recipe_show_bloc.dart | 6 +- .../recipe_show_screen.dart | 10 +- .../widgets/comment_widget.dart | 15 +- .../bloc/subscribers_bloc.dart | 6 +- .../subscribers_screen.dart | 7 +- lib/theme/app_decoration.dart | 2 +- lib/theme/custom_button_style.dart | 2 +- lib/theme/custom_text_style.dart | 3 +- lib/widgets/app_bar/appbar_leading_image.dart | 18 +- lib/widgets/app_bar/appbar_subtitle.dart | 19 +- .../app_bar/appbar_title_circleimage.dart | 16 +- lib/widgets/app_bar/appbar_title_image.dart | 3 +- lib/widgets/app_bar/exit_button.dart | 18 +- lib/widgets/custom_drop_down.dart | 3 +- lib/widgets/custom_edit_drop_down.dart | 2 +- lib/widgets/custom_expandable_list.dart | 6 +- lib/widgets/custom_hyper_switch.dart | 2 +- lib/widgets/custom_hypo_switch.dart | 2 +- lib/widgets/custom_navigation_menu_item.dart | 3 +- lib/widgets/custom_notification_screen.dart | 2 +- lib/widgets/custom_outlined_button.dart | 2 +- lib/widgets/custom_text_form_field.dart | 2 +- lib/widgets/next_step_button.dart | 2 +- lib/widgets/nutrition_chart.dart | 2 +- pubspec.yaml | 12 +- test/auth_test.dart | 6 +- 123 files changed, 652 insertions(+), 522 deletions(-) delete mode 100644 lib/core/app_export.dart rename lib/core/{constants/constants.dart => const.dart} (100%) diff --git a/lib/core/app_export.dart b/lib/core/app_export.dart deleted file mode 100644 index c9a9c59f..00000000 --- a/lib/core/app_export.dart +++ /dev/null @@ -1,13 +0,0 @@ -export 'package:eatvio_app/core/constants/constants.dart'; -export 'package:eatvio_app/core/errors/exceptions.dart'; -export 'package:eatvio_app/core/utils/date_time_utils.dart'; -export 'package:eatvio_app/core/utils/image_constant.dart'; -export 'package:eatvio_app/core/utils/logger.dart'; -export 'package:eatvio_app/data/models/selectionPopupModel/selection_popup_model.dart'; -export 'package:eatvio_app/localization/app_localization.dart'; -export 'package:eatvio_app/theme/app_decoration.dart'; -export 'package:eatvio_app/theme/custom_text_style.dart'; -export 'package:eatvio_app/theme/theme_helper.dart'; -export 'package:eatvio_app/widgets/custom_image_view.dart'; -export 'package:flutter_bloc/flutter_bloc.dart'; -export '../theme/custom_button_style.dart'; diff --git a/lib/core/constants/constants.dart b/lib/core/const.dart similarity index 100% rename from lib/core/constants/constants.dart rename to lib/core/const.dart diff --git a/lib/core/initialization_cubit/initialization_cubit.dart b/lib/core/initialization_cubit/initialization_cubit.dart index 518abeba..da7588cd 100644 --- a/lib/core/initialization_cubit/initialization_cubit.dart +++ b/lib/core/initialization_cubit/initialization_cubit.dart @@ -1,11 +1,12 @@ import 'package:dart_pusher_channels/dart_pusher_channels.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/initialization_cubit/initialization_state.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/new_messages_cubit/new_messages_cubit.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/notifications_cubit/notifications_cubit.dart'; import 'package:eatvio_app/features/chat/repositories/chat_repository.dart'; import 'package:eatvio_app/locator_service.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class InitializationCubit extends Cubit { final ChatRepository chatRepository; diff --git a/lib/features/blog_post/presentation/pages/blog_post_screen.dart b/lib/features/blog_post/presentation/pages/blog_post_screen.dart index 1fcacce8..3f6004fd 100644 --- a/lib/features/blog_post/presentation/pages/blog_post_screen.dart +++ b/lib/features/blog_post/presentation/pages/blog_post_screen.dart @@ -1,13 +1,16 @@ import 'dart:io'; import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/core/utils/date_time_utils.dart'; import 'package:eatvio_app/features/feed/models/feed_blog_post_model.dart'; import 'package:eatvio_app/features/feed/presentation/bloc/comments_cubit/comments_cubit.dart'; import 'package:eatvio_app/features/feed/presentation/bloc/comments_cubit/comments_state.dart'; import 'package:eatvio_app/features/feed/presentation/bloc/feed_cubit/feed_cubit.dart'; import 'package:eatvio_app/features/feed/presentation/widgets/comments_widget.dart'; import 'package:eatvio_app/locator_service.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_html/flutter_html.dart'; import 'package:go_router/go_router.dart'; import 'package:share_plus/share_plus.dart'; diff --git a/lib/features/blog_post_create/presentation/pages/blog_post_create_screen.dart b/lib/features/blog_post_create/presentation/pages/blog_post_create_screen.dart index cbd8f03c..baf87e0f 100644 --- a/lib/features/blog_post_create/presentation/pages/blog_post_create_screen.dart +++ b/lib/features/blog_post_create/presentation/pages/blog_post_create_screen.dart @@ -1,11 +1,12 @@ import 'dart:async'; import 'dart:io'; - -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/old/feed/blog_post_create_screen/bloc/blog_post_create_bloc.dart'; import 'package:eatvio_app/old/feed/blog_post_create_screen/models/blog_post_create_model.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_keyboard_visibility/flutter_keyboard_visibility.dart'; import 'package:image_picker/image_picker.dart'; @@ -121,9 +122,10 @@ class _BlogPostCreateScreenState extends State { SizedBox(height: 16), if (state.image == null) Text('Ссылка на видео'), if (state.image == null) SizedBox(height: 8), - if (state.image == null) CustomTextFormField( - controller: state.youtubeURL, - ), + if (state.image == null) + CustomTextFormField( + controller: state.youtubeURL, + ), SizedBox(height: 80), ], ), diff --git a/lib/features/bottom_navigation_bar/presentation/bloc/new_messages_cubit/new_messages_cubit.dart b/lib/features/bottom_navigation_bar/presentation/bloc/new_messages_cubit/new_messages_cubit.dart index 8b2a0f5a..6f31b94b 100644 --- a/lib/features/bottom_navigation_bar/presentation/bloc/new_messages_cubit/new_messages_cubit.dart +++ b/lib/features/bottom_navigation_bar/presentation/bloc/new_messages_cubit/new_messages_cubit.dart @@ -1,5 +1,5 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/new_messages_cubit/new_messages_state.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class NewMessagesCubit extends Cubit { int _messagesCount = 0; diff --git a/lib/features/bottom_navigation_bar/presentation/bloc/notifications_cubit/notifications_cubit.dart b/lib/features/bottom_navigation_bar/presentation/bloc/notifications_cubit/notifications_cubit.dart index 8a22b6d5..d862efa7 100644 --- a/lib/features/bottom_navigation_bar/presentation/bloc/notifications_cubit/notifications_cubit.dart +++ b/lib/features/bottom_navigation_bar/presentation/bloc/notifications_cubit/notifications_cubit.dart @@ -1,5 +1,5 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/notifications_cubit/notifications_state.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class NotificationsCubit extends Cubit { int _notificationsCount = 0; diff --git a/lib/features/bottom_navigation_bar/presentation/widgets/bottom_navigation_bar_widget.dart b/lib/features/bottom_navigation_bar/presentation/widgets/bottom_navigation_bar_widget.dart index 6f730432..8bc6bb3d 100644 --- a/lib/features/bottom_navigation_bar/presentation/widgets/bottom_navigation_bar_widget.dart +++ b/lib/features/bottom_navigation_bar/presentation/widgets/bottom_navigation_bar_widget.dart @@ -1,12 +1,16 @@ import 'package:badges/badges.dart' as badges; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/new_messages_cubit/new_messages_cubit.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/new_messages_cubit/new_messages_state.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/notifications_cubit/notifications_cubit.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/notifications_cubit/notifications_state.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/profile_avatar_cubit/profile_avatar_cubit.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/profile_avatar_cubit/profile_avatar_state.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; +import 'package:eatvio_app/locator_service.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:go_router/go_router.dart'; @@ -188,19 +192,22 @@ class _BottomNavigationBarWidgetState extends State { ), BottomNavigationBarItem( label: '', - icon: BlocBuilder( - builder: (BuildContext context, ProfileAvatarState state) { - if (state is ProfileAvatarStateLoaded) { + icon: BlocProvider( + create: (context) => sl()..getMyProfile(), + child: BlocBuilder( + builder: (BuildContext context, ProfileAvatarState state) { + if (state is ProfileAvatarStateLoaded) { + return CircleAvatar( + backgroundImage: NetworkImage(state.profile.profilePhotoUrl), + radius: 16, + ); + } return CircleAvatar( - backgroundImage: NetworkImage(state.profile.profilePhotoUrl), radius: 16, + backgroundColor: Colors.black12, ); - } - return CircleAvatar( - radius: 16, - backgroundColor: Colors.black12, - ); - }, + }, + ), ), ), ], diff --git a/lib/features/calendar/presentation/bloc/calendar_cubit.dart b/lib/features/calendar/presentation/bloc/calendar_cubit.dart index cfbc5b07..01a16da9 100644 --- a/lib/features/calendar/presentation/bloc/calendar_cubit.dart +++ b/lib/features/calendar/presentation/bloc/calendar_cubit.dart @@ -1,6 +1,6 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/features/calendar/presentation/bloc/calendar_state.dart'; import 'package:eatvio_app/features/calendar/repositories/calendar_repository.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class CalendarCubit extends Cubit { final CalendarRepository calendarRepository; diff --git a/lib/features/calendar/presentation/pages/calendar_screen.dart b/lib/features/calendar/presentation/pages/calendar_screen.dart index ddcc04ab..31342896 100644 --- a/lib/features/calendar/presentation/pages/calendar_screen.dart +++ b/lib/features/calendar/presentation/pages/calendar_screen.dart @@ -1,46 +1,52 @@ -// ignore_for_file: unused_local_variable - import 'package:eatvio_app/features/calendar/presentation/bloc/calendar_cubit.dart'; import 'package:eatvio_app/features/calendar/presentation/bloc/calendar_state.dart'; -import 'package:eatvio_app/core/app_export.dart'; + +import 'package:eatvio_app/locator_service.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:intl/intl.dart'; import 'package:flutter/material.dart'; import 'package:flutter_form_builder/flutter_form_builder.dart'; -// ignore: must_be_immutable class CalendarScreen extends StatelessWidget { CalendarScreen({Key? key}) : super(key: key); + Widget build(BuildContext context) { - return BlocBuilder( - builder: (context, state) { - if (state is CalendarStateLoaded) { - return _buildCalendar(context, state); - } else if (state is CalendarStateLoading) { - return Scaffold( - body: Center( - child: CircularProgressIndicator(), - ), - ); - } else if (state is CalendarStateError) { - return Scaffold( - body: Padding( - padding: const EdgeInsets.all(16), - child: Center( - child: Text(state.errorMessage), + return BlocProvider( + create: (context) => sl()..loadCalendarList(), + child: BlocBuilder( + builder: (context, state) { + if (state is CalendarStateLoaded) { + return _buildCalendar(context, state); + } else if (state is CalendarStateLoading) { + return Scaffold( + body: Center( + child: CircularProgressIndicator(), ), - ), - ); - } else - return Scaffold( - body: Padding( - padding: const EdgeInsets.all(16), - child: Center( - child: Text("Неопределенная ошибка"), + ); + } else if (state is CalendarStateError) { + return Scaffold( + body: Padding( + padding: const EdgeInsets.all(16), + child: Center( + child: Text(state.errorMessage), + ), ), - ), - ); - }, + ); + } else + return Scaffold( + body: Padding( + padding: const EdgeInsets.all(16), + child: Center( + child: Text("Неопределенная ошибка"), + ), + ), + ); + }, + ), ); } @@ -101,8 +107,7 @@ class CalendarScreen extends StatelessWidget { padding: EdgeInsets.all(8), decoration: BoxDecoration( borderRadius: BorderRadiusStyle.circleBorder8, - color: state.calendarList[index] - .is_current_day_included_in_the_chosen_diet_progression + color: state.calendarList[index].is_current_day_included_in_the_chosen_diet_progression ? Color.fromRGBO(59, 130, 246, .2) : Color.fromRGBO(126, 136, 151, .1), ), @@ -119,36 +124,28 @@ class CalendarScreen extends StatelessWidget { style: theme.textTheme.titleMedium, ), SizedBox(height: 4), - if (state.calendarList[index] - .is_current_day_included_in_the_chosen_diet_progression) + if (state.calendarList[index].is_current_day_included_in_the_chosen_diet_progression) Container( - padding: EdgeInsets.all( - 4.0), // Отступы внутри контейнера + padding: EdgeInsets.all(4.0), // Отступы внутри контейнера decoration: BoxDecoration( color: Color.fromRGBO(13, 110, 253, 1), - borderRadius: BorderRadius.circular( - 24.0), // Закругленные углы + borderRadius: BorderRadius.circular(24.0), // Закругленные углы ), child: Text( 'Посмотреть диету на день', - style: CustomTextStyles - .titleSmallBold, // Предполагается, что текст белый + style: CustomTextStyles.titleSmallBold, // Предполагается, что текст белый ), ), - if (!state.calendarList[index] - .is_current_day_included_in_the_chosen_diet_progression) + if (!state.calendarList[index].is_current_day_included_in_the_chosen_diet_progression) Container( - padding: EdgeInsets.all( - 4.0), // Отступы внутри контейнера + padding: EdgeInsets.all(4.0), // Отступы внутри контейнера decoration: BoxDecoration( color: Color.fromRGBO(108, 117, 125, 1), - borderRadius: BorderRadius.circular( - 24.0), // Закругленные углы + borderRadius: BorderRadius.circular(24.0), // Закругленные углы ), child: Text( 'Cкоро', - style: CustomTextStyles - .titleSmallBold, // Предполагается, что текст белый + style: CustomTextStyles.titleSmallBold, // Предполагается, что текст белый ), ), ], @@ -188,50 +185,39 @@ class CalendarScreen extends StatelessWidget { SizedBox(height: 4), Row(children: [ Container( - padding: EdgeInsets.all( - 4.0), // Отступы внутри контейнера + padding: EdgeInsets.all(4.0), // Отступы внутри контейнера decoration: BoxDecoration( - color: diary['state'] == 'finished' - ? Color.fromRGBO(1, 154, 62, 1) - : Color.fromRGBO(154, 74, 1, 1), - borderRadius: BorderRadius.circular( - 24.0), // Закругленные углы + color: diary['state'] == 'finished' ? Color.fromRGBO(1, 154, 62, 1) : Color.fromRGBO(154, 74, 1, 1), + borderRadius: BorderRadius.circular(24.0), // Закругленные углы ), child: Text( _getStateText(diary['state'] ?? ''), - style: CustomTextStyles - .titleSmallBold, // Предполагается, что текст белый + style: CustomTextStyles.titleSmallBold, // Предполагается, что текст белый ), ), SizedBox(width: 4), if (diary['state'] == 'started') Container( - padding: EdgeInsets.all( - 4.0), // Отступы внутри контейнера + padding: EdgeInsets.all(4.0), // Отступы внутри контейнера decoration: BoxDecoration( color: Color.fromRGBO(13, 110, 253, 1), - borderRadius: BorderRadius.circular( - 24.0), // Закругленные углы + borderRadius: BorderRadius.circular(24.0), // Закругленные углы ), child: Text( 'Заполнить отчет', - style: CustomTextStyles - .titleSmallBold, // Предполагается, что текст белый + style: CustomTextStyles.titleSmallBold, // Предполагается, что текст белый ), ), if (diary['state'] == 'finished') Container( - padding: EdgeInsets.all( - 4.0), // Отступы внутри контейнера + padding: EdgeInsets.all(4.0), // Отступы внутри контейнера decoration: BoxDecoration( color: Color.fromRGBO(13, 110, 253, 1), - borderRadius: BorderRadius.circular( - 24.0), // Закругленные углы + borderRadius: BorderRadius.circular(24.0), // Закругленные углы ), child: Text( 'Изменить отчет', - style: CustomTextStyles - .titleSmallBold, // Предполагается, что текст белый + style: CustomTextStyles.titleSmallBold, // Предполагается, что текст белый ), ), ]), diff --git a/lib/features/chat/presentation/bloc/chat_room_cubit/chat_room_cubit.dart b/lib/features/chat/presentation/bloc/chat_room_cubit/chat_room_cubit.dart index 9140a6bd..413ff885 100644 --- a/lib/features/chat/presentation/bloc/chat_room_cubit/chat_room_cubit.dart +++ b/lib/features/chat/presentation/bloc/chat_room_cubit/chat_room_cubit.dart @@ -4,7 +4,7 @@ import 'dart:io'; import 'package:audioplayers/audioplayers.dart'; import 'package:dart_pusher_channels/dart_pusher_channels.dart'; import 'package:easy_debounce/easy_debounce.dart'; -import 'package:eatvio_app/core/constants/constants.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/initialization_cubit/initialization_cubit.dart'; import 'package:eatvio_app/core/initialization_cubit/initialization_state.dart'; import 'package:eatvio_app/core/token_storage.dart'; diff --git a/lib/features/chat/presentation/bloc/chat_select_cubit/chat_select_cubit.dart b/lib/features/chat/presentation/bloc/chat_select_cubit/chat_select_cubit.dart index fc92f22d..d3edddc8 100644 --- a/lib/features/chat/presentation/bloc/chat_select_cubit/chat_select_cubit.dart +++ b/lib/features/chat/presentation/bloc/chat_select_cubit/chat_select_cubit.dart @@ -1,6 +1,6 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/features/chat/presentation/bloc/chat_select_cubit/chat_select_state.dart'; import 'package:eatvio_app/features/chat/repositories/chat_repository.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class ChatSelectCubit extends Cubit { final ChatRepository chatRepository; diff --git a/lib/features/chat/presentation/pages/chat_screen.dart b/lib/features/chat/presentation/pages/chat_screen.dart index 9a1fb838..53220865 100644 --- a/lib/features/chat/presentation/pages/chat_screen.dart +++ b/lib/features/chat/presentation/pages/chat_screen.dart @@ -1,6 +1,9 @@ import 'dart:io'; +import 'package:eatvio_app/theme/custom_text_style.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:intl/intl.dart'; -import 'package:eatvio_app/core/app_export.dart'; + import 'package:eatvio_app/features/chat/presentation/bloc/chat_room_cubit/chat_room_cubit.dart'; import 'package:eatvio_app/features/chat/presentation/bloc/chat_room_cubit/chat_room_state.dart'; import 'package:eatvio_app/features/chat/presentation/widgets/chat_bubble_widget.dart'; diff --git a/lib/features/chat/presentation/pages/chat_select_screen.dart b/lib/features/chat/presentation/pages/chat_select_screen.dart index 245b9f25..6c14e46d 100644 --- a/lib/features/chat/presentation/pages/chat_select_screen.dart +++ b/lib/features/chat/presentation/pages/chat_select_screen.dart @@ -1,11 +1,12 @@ import 'package:easy_debounce/easy_debounce.dart'; -import 'package:eatvio_app/core/app_export.dart'; + import 'package:eatvio_app/features/chat/presentation/bloc/chat_select_cubit/chat_select_cubit.dart'; import 'package:eatvio_app/features/chat/presentation/bloc/chat_select_cubit/chat_select_state.dart'; import 'package:eatvio_app/features/chat/presentation/widgets/chat_entry_widget.dart'; import 'package:eatvio_app/features/chat/presentation/widgets/chat_search_bar_widget.dart'; import 'package:eatvio_app/locator_service.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class ChatSelectScreen extends StatefulWidget { const ChatSelectScreen({Key? key}) : super(key: key); diff --git a/lib/features/chat/presentation/pages/photo_view_screen.dart b/lib/features/chat/presentation/pages/photo_view_screen.dart index a070103d..fab2f064 100644 --- a/lib/features/chat/presentation/pages/photo_view_screen.dart +++ b/lib/features/chat/presentation/pages/photo_view_screen.dart @@ -1,6 +1,8 @@ import 'package:cached_network_image/cached_network_image.dart'; import 'package:dismissible_page/dismissible_page.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; + import 'package:flutter/material.dart'; import 'package:go_router/go_router.dart'; import 'package:photo_view/photo_view.dart'; diff --git a/lib/features/chat/presentation/widgets/chat_bubble_widget.dart b/lib/features/chat/presentation/widgets/chat_bubble_widget.dart index ce24b69a..5c12f9b4 100644 --- a/lib/features/chat/presentation/widgets/chat_bubble_widget.dart +++ b/lib/features/chat/presentation/widgets/chat_bubble_widget.dart @@ -1,6 +1,8 @@ import 'package:cached_network_image/cached_network_image.dart'; import 'package:dismissible_page/dismissible_page.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/core/utils/date_time_utils.dart'; + import 'package:eatvio_app/features/chat/presentation/pages/photo_view_screen.dart'; import 'package:flutter/material.dart'; import 'package:url_launcher/url_launcher.dart'; diff --git a/lib/features/chat/presentation/widgets/chat_entry_widget.dart b/lib/features/chat/presentation/widgets/chat_entry_widget.dart index b496047d..e8150dc1 100644 --- a/lib/features/chat/presentation/widgets/chat_entry_widget.dart +++ b/lib/features/chat/presentation/widgets/chat_entry_widget.dart @@ -1,5 +1,7 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/utils/date_time_utils.dart'; import 'package:eatvio_app/features/chat/models/chat_room_preview_model.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; import 'package:go_router/go_router.dart'; diff --git a/lib/features/chat/presentation/widgets/chat_search_bar_widget.dart b/lib/features/chat/presentation/widgets/chat_search_bar_widget.dart index 955e697f..3480c923 100644 --- a/lib/features/chat/presentation/widgets/chat_search_bar_widget.dart +++ b/lib/features/chat/presentation/widgets/chat_search_bar_widget.dart @@ -1,4 +1,5 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; class ChatSearchBarWidget extends StatelessWidget { diff --git a/lib/features/diary/presentation/bloc/diary_bloc.dart b/lib/features/diary/presentation/bloc/diary_bloc.dart index 747f9ee8..74742144 100644 --- a/lib/features/diary/presentation/bloc/diary_bloc.dart +++ b/lib/features/diary/presentation/bloc/diary_bloc.dart @@ -1,5 +1,5 @@ import 'dart:async'; - +import 'package:eatvio_app/data/models/selectionPopupModel/selection_popup_model.dart'; import 'package:eatvio_app/features/diary/models/diary_model.dart'; import 'package:eatvio_app/features/diary/models/meal.dart'; import 'package:eatvio_app/features/diary/models/product.dart'; @@ -7,11 +7,9 @@ import 'package:eatvio_app/features/diary/presentation/bloc/diary_state.dart'; import 'package:eatvio_app/features/diary/repositories/diary_repository.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:image_picker/image_picker.dart'; import 'package:intl/intl.dart'; - -import '/core/app_export.dart'; - part 'diary_event.dart'; /// A bloc that manages the state of a Diary according to the event that is dispatched to it. diff --git a/lib/features/diary/presentation/pages/diary_recommendations_scree.dart b/lib/features/diary/presentation/pages/diary_recommendations_scree.dart index 5b454a04..5211eeed 100644 --- a/lib/features/diary/presentation/pages/diary_recommendations_scree.dart +++ b/lib/features/diary/presentation/pages/diary_recommendations_scree.dart @@ -3,9 +3,9 @@ import 'package:eatvio_app/features/diary/models/portion.dart'; import 'package:eatvio_app/features/diary/presentation/bloc/diary_bloc.dart'; import 'package:eatvio_app/features/diary/presentation/bloc/diary_state.dart'; -import 'package:eatvio_app/core/app_export.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_form_builder/flutter_form_builder.dart'; // ignore: must_be_immutable diff --git a/lib/features/diary/presentation/pages/diary_screen.dart b/lib/features/diary/presentation/pages/diary_screen.dart index 23c7503d..8e537a20 100644 --- a/lib/features/diary/presentation/pages/diary_screen.dart +++ b/lib/features/diary/presentation/pages/diary_screen.dart @@ -1,6 +1,8 @@ // ignore_for_file: unused_local_variable import 'package:carousel_slider_plus/carousel_slider_plus.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/data/models/selectionPopupModel/selection_popup_model.dart'; import 'package:eatvio_app/features/diary/models/diary_model.dart'; import 'package:eatvio_app/features/diary/models/meal.dart'; import 'package:eatvio_app/features/diary/models/photo.dart'; @@ -8,13 +10,19 @@ import 'package:eatvio_app/features/diary/models/portion.dart'; import 'package:eatvio_app/features/diary/models/product.dart'; import 'package:eatvio_app/features/diary/presentation/bloc/diary_bloc.dart'; import 'package:eatvio_app/features/diary/presentation/bloc/diary_state.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; + +import 'package:eatvio_app/locator_service.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:eatvio_app/widgets/custom_edit_text_form_field.dart'; import 'package:eatvio_app/widgets/custom_edit_drop_down.dart'; import 'package:eatvio_app/widgets/custom_scale_element.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_form_builder/flutter_form_builder.dart'; import 'package:image_picker/image_picker.dart'; import 'package:syncfusion_flutter_charts/charts.dart'; @@ -31,35 +39,38 @@ class DiaryScreen extends StatelessWidget { if (diaryID != "0") { context.read().add(LoadDiaryById(diaryID)); } - return BlocBuilder( - builder: (context, state) { - if (state is DiaryStateLoaded) { - return _buildDiary(context, state); - } else if (state is DiaryStateLoading) { - return Scaffold( - body: Center( - child: CircularProgressIndicator(), - ), - ); - } else if (state is DiaryStateError) { - return Scaffold( - body: Padding( - padding: const EdgeInsets.all(16), - child: Center( - child: Text(state.errorMessage), + return BlocProvider( + create: (context) => sl()..add(LoadDiary()), + child: BlocBuilder( + builder: (context, state) { + if (state is DiaryStateLoaded) { + return _buildDiary(context, state); + } else if (state is DiaryStateLoading) { + return Scaffold( + body: Center( + child: CircularProgressIndicator(), ), - ), - ); - } else - return Scaffold( - body: Padding( - padding: const EdgeInsets.all(16), - child: Center( - child: Text("Неопределенная ошибка"), + ); + } else if (state is DiaryStateError) { + return Scaffold( + body: Padding( + padding: const EdgeInsets.all(16), + child: Center( + child: Text(state.errorMessage), + ), ), - ), - ); - }, + ); + } else + return Scaffold( + body: Padding( + padding: const EdgeInsets.all(16), + child: Center( + child: Text("Неопределенная ошибка"), + ), + ), + ); + }, + ), ); } diff --git a/lib/features/diets/presentation/pages/about_diet_screen.dart b/lib/features/diets/presentation/pages/about_diet_screen.dart index e78dab2c..d2ee8bd2 100644 --- a/lib/features/diets/presentation/pages/about_diet_screen.dart +++ b/lib/features/diets/presentation/pages/about_diet_screen.dart @@ -1,12 +1,15 @@ import 'dart:io'; import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; + import 'package:eatvio_app/features/feed/models/diets_pagination_model.dart'; import 'package:eatvio_app/features/feed/presentation/bloc/comments_cubit/comments_cubit.dart'; import 'package:eatvio_app/features/feed/presentation/bloc/comments_cubit/comments_state.dart'; import 'package:eatvio_app/features/feed/presentation/widgets/comments_widget.dart'; import 'package:eatvio_app/locator_service.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_html/flutter_html.dart'; import 'package:go_router/go_router.dart'; diff --git a/lib/features/feed/presentation/bloc/comments_cubit/comments_cubit.dart b/lib/features/feed/presentation/bloc/comments_cubit/comments_cubit.dart index 9c7b009d..41a00d05 100644 --- a/lib/features/feed/presentation/bloc/comments_cubit/comments_cubit.dart +++ b/lib/features/feed/presentation/bloc/comments_cubit/comments_cubit.dart @@ -1,7 +1,7 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/features/feed/presentation/bloc/comments_cubit/comments_state.dart'; import 'package:eatvio_app/features/feed/presentation/widgets/comments_widget.dart'; import 'package:eatvio_app/features/feed/repositories/feed_repository.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class CommentsCubit extends Cubit { final FeedRepository feedRepository; diff --git a/lib/features/feed/presentation/bloc/feed_cubit/feed_cubit.dart b/lib/features/feed/presentation/bloc/feed_cubit/feed_cubit.dart index 3320c71c..11cbd4e2 100644 --- a/lib/features/feed/presentation/bloc/feed_cubit/feed_cubit.dart +++ b/lib/features/feed/presentation/bloc/feed_cubit/feed_cubit.dart @@ -1,6 +1,6 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/features/feed/presentation/bloc/feed_cubit/feed_state.dart'; import 'package:eatvio_app/features/feed/repositories/feed_repository.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class FeedCubit extends Cubit { final FeedRepository feedRepository; diff --git a/lib/features/feed/presentation/pages/feed_screen.dart b/lib/features/feed/presentation/pages/feed_screen.dart index 957ea8a5..02691888 100644 --- a/lib/features/feed/presentation/pages/feed_screen.dart +++ b/lib/features/feed/presentation/pages/feed_screen.dart @@ -12,6 +12,7 @@ import 'package:eatvio_app/features/feed/presentation/widgets/recipes_widget.dar import 'package:eatvio_app/features/feed/presentation/widgets/tags_modal_widget.dart'; import 'package:eatvio_app/features/plans/presentation/bloc/plans_cubit/plans_cubit.dart'; import 'package:eatvio_app/features/plans/presentation/bloc/plans_cubit/plans_state.dart'; +import 'package:eatvio_app/locator_service.dart'; import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; @@ -27,6 +28,11 @@ class FeedScreen extends StatefulWidget { } class _FeedScreenState extends State { + final FeedCubit feedCubit = sl()..loadFeedBlogPostList(); + final RecipesCubit recipesCubit = sl()..loadRecipesList(); + final DietsCubit dietsCubit = sl()..loadDiets(); + final PlansCubit plansCubit = sl()..loadPlans(); + final searchController = TextEditingController(); final List chipsLabelList = ['Все', 'Рецепты', 'Диеты', 'Планы питания', 'Консультанты']; int _selectedChipIndex = 0; @@ -46,7 +52,7 @@ class _FeedScreenState extends State { _onScrollBlogPosts() { if (blogPostsScrollController.offset >= blogPostsScrollController.position.maxScrollExtent && !blogPostsScrollController.position.outOfRange) { - context.read().loadNextPage(); + feedCubit.loadNextPage(); } } @@ -154,168 +160,183 @@ class _FeedScreenState extends State { } _buildAllBlogPosts() { - return RefreshIndicator( - onRefresh: () => context.read().loadFeedBlogPostList(), - child: BlocBuilder( - builder: (BuildContext context, FeedState state) { - if (state is FeedStateLoaded) { - return ListView.separated( - padding: EdgeInsets.symmetric(vertical: 8), - shrinkWrap: true, - physics: BouncingScrollPhysics(), - itemBuilder: (context, index) { - if (index == state.feedBlogPostList.length) { - return CircularProgressIndicator(); - } - return BlogPostWidget(feedBlogPostModel: state.feedBlogPostList[index]); - }, - separatorBuilder: (context, index) { - return SizedBox(height: 8); - }, - itemCount: state.isLoading ? state.feedBlogPostList.length + 1 : state.feedBlogPostList.length, - ); - } else if (state is FeedStateError) { - return Scaffold( - backgroundColor: Colors.grey.shade200, - body: Padding( - padding: const EdgeInsets.all(16), - child: Center( - child: Text(state.errorMessage), + return BlocProvider( + create: (context) => feedCubit, + child: RefreshIndicator( + onRefresh: () => feedCubit.loadFeedBlogPostList(), + child: BlocBuilder( + builder: (BuildContext context, FeedState state) { + if (state is FeedStateLoaded) { + return ListView.separated( + padding: EdgeInsets.symmetric(vertical: 8), + shrinkWrap: true, + physics: BouncingScrollPhysics(), + itemBuilder: (context, index) { + if (index == state.feedBlogPostList.length) { + return Container( + alignment: Alignment.center, + child: CircularProgressIndicator(), + ); + } + return BlogPostWidget(feedBlogPostModel: state.feedBlogPostList[index]); + }, + separatorBuilder: (context, index) { + return SizedBox(height: 8); + }, + itemCount: state.isLoading ? state.feedBlogPostList.length + 1 : state.feedBlogPostList.length, + ); + } else if (state is FeedStateError) { + return Scaffold( + backgroundColor: Colors.grey.shade200, + body: Padding( + padding: const EdgeInsets.all(16), + child: Center( + child: Text(state.errorMessage), + ), ), - ), - ); - } else { - return Scaffold( - backgroundColor: Colors.grey.shade200, - body: Center( - child: CircularProgressIndicator(), - ), - ); - } - }, + ); + } else { + return Scaffold( + backgroundColor: Colors.grey.shade200, + body: Center( + child: CircularProgressIndicator(), + ), + ); + } + }, + ), ), ); } _buildAllRecipes() { - return RefreshIndicator( - onRefresh: () => context.read().loadRecipesList(), - child: BlocBuilder( - builder: (BuildContext context, RecipesState state) { - if (state is RecipesStateLoaded) { - return ListView.separated( - padding: EdgeInsets.symmetric(vertical: 8), - shrinkWrap: true, - physics: BouncingScrollPhysics(), - itemBuilder: (context, index) { - return RecipesWidget(recipes: state.recipesList[index]); - }, - separatorBuilder: (context, index) { - return SizedBox(height: 8); - }, - itemCount: state.recipesList.length, - ); - } else if (state is RecipesStateError) { - return Scaffold( - backgroundColor: Colors.grey.shade200, - body: Padding( - padding: const EdgeInsets.all(16), - child: Center( - child: Text(state.errorMessage), + return BlocProvider( + create: (context) => recipesCubit, + child: RefreshIndicator( + onRefresh: () => recipesCubit.loadRecipesList(), + child: BlocBuilder( + builder: (BuildContext context, RecipesState state) { + if (state is RecipesStateLoaded) { + return ListView.separated( + padding: EdgeInsets.symmetric(vertical: 8), + shrinkWrap: true, + physics: BouncingScrollPhysics(), + itemBuilder: (context, index) { + return RecipesWidget(recipes: state.recipesList[index]); + }, + separatorBuilder: (context, index) { + return SizedBox(height: 8); + }, + itemCount: state.recipesList.length, + ); + } else if (state is RecipesStateError) { + return Scaffold( + backgroundColor: Colors.grey.shade200, + body: Padding( + padding: const EdgeInsets.all(16), + child: Center( + child: Text(state.errorMessage), + ), ), - ), - ); - } else { - return Scaffold( - backgroundColor: Colors.grey.shade200, - body: Center( - child: CircularProgressIndicator(), - ), - ); - } - }, + ); + } else { + return Scaffold( + backgroundColor: Colors.grey.shade200, + body: Center( + child: CircularProgressIndicator(), + ), + ); + } + }, + ), ), ); } _buildDiets() { - return RefreshIndicator( - onRefresh: () => context.read().loadDiets(), - child: BlocBuilder( - builder: (BuildContext context, DietsState state) { - if (state is DietsStateLoaded) { - return ListView.separated( - padding: EdgeInsets.symmetric(vertical: 8), - shrinkWrap: true, - physics: BouncingScrollPhysics(), - itemBuilder: (context, index) { - return DietsWidget(diet: state.diets.data[index]); - }, - separatorBuilder: (context, index) { - return SizedBox(height: 8); - }, - itemCount: state.diets.data.length, - ); - } else if (state is DietsStateError) { - return Scaffold( - backgroundColor: Colors.grey.shade200, - body: Padding( - padding: const EdgeInsets.all(16), - child: Center( - child: Text(state.errorMessage), + return BlocProvider( + create: (context) => dietsCubit, + child: RefreshIndicator( + onRefresh: () => dietsCubit.loadDiets(), + child: BlocBuilder( + builder: (BuildContext context, DietsState state) { + if (state is DietsStateLoaded) { + return ListView.separated( + padding: EdgeInsets.symmetric(vertical: 8), + shrinkWrap: true, + physics: BouncingScrollPhysics(), + itemBuilder: (context, index) { + return DietsWidget(diet: state.diets.data[index]); + }, + separatorBuilder: (context, index) { + return SizedBox(height: 8); + }, + itemCount: state.diets.data.length, + ); + } else if (state is DietsStateError) { + return Scaffold( + backgroundColor: Colors.grey.shade200, + body: Padding( + padding: const EdgeInsets.all(16), + child: Center( + child: Text(state.errorMessage), + ), ), - ), - ); - } else { - return Scaffold( - backgroundColor: Colors.grey.shade200, - body: Center( - child: CircularProgressIndicator(), - ), - ); - } - }, + ); + } else { + return Scaffold( + backgroundColor: Colors.grey.shade200, + body: Center( + child: CircularProgressIndicator(), + ), + ); + } + }, + ), ), ); } _buildPlans() { - return RefreshIndicator( - onRefresh: () => context.read().getPlans(), - child: BlocBuilder( - builder: (BuildContext context, PlansState state) { - if (state is PlansStateLoaded) { - return ListView.separated( - padding: EdgeInsets.symmetric(vertical: 8), - shrinkWrap: true, - physics: BouncingScrollPhysics(), - itemBuilder: (context, index) { - return PlanWidget(planModel: state.plansModel.data[index]); - }, - separatorBuilder: (context, index) { - return SizedBox(height: 8); - }, - itemCount: state.plansModel.data.length, - ); - } else if (state is PlansStateError) { - return Scaffold( - backgroundColor: Colors.grey.shade200, - body: Padding( - padding: const EdgeInsets.all(16), - child: Center( - child: Text(state.errorMessage), + return BlocProvider( + create: (context) => plansCubit, + child: RefreshIndicator( + onRefresh: () => plansCubit.loadPlans(), + child: BlocBuilder( + builder: (BuildContext context, PlansState state) { + if (state is PlansStateLoaded) { + return ListView.separated( + padding: EdgeInsets.symmetric(vertical: 8), + shrinkWrap: true, + physics: BouncingScrollPhysics(), + itemBuilder: (context, index) { + return PlanWidget(planModel: state.plansModel.data[index]); + }, + separatorBuilder: (context, index) { + return SizedBox(height: 8); + }, + itemCount: state.plansModel.data.length, + ); + } else if (state is PlansStateError) { + return Scaffold( + backgroundColor: Colors.grey.shade200, + body: Padding( + padding: const EdgeInsets.all(16), + child: Center( + child: Text(state.errorMessage), + ), ), - ), - ); - } else { - return Scaffold( - backgroundColor: Colors.grey.shade200, - body: Center( - child: CircularProgressIndicator(), - ), - ); - } - }, + ); + } else { + return Scaffold( + backgroundColor: Colors.grey.shade200, + body: Center( + child: CircularProgressIndicator(), + ), + ); + } + }, + ), ), ); } diff --git a/lib/features/feed/presentation/widgets/blog_post_widget.dart b/lib/features/feed/presentation/widgets/blog_post_widget.dart index 9d097936..b3b6024c 100644 --- a/lib/features/feed/presentation/widgets/blog_post_widget.dart +++ b/lib/features/feed/presentation/widgets/blog_post_widget.dart @@ -1,10 +1,13 @@ import 'package:cached_network_image/cached_network_image.dart'; import 'package:dismissible_page/dismissible_page.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/core/utils/date_time_utils.dart'; import 'package:eatvio_app/features/chat/presentation/pages/photo_view_screen.dart'; import 'package:eatvio_app/features/feed/models/feed_blog_post_model.dart'; import 'package:eatvio_app/features/feed/presentation/bloc/feed_cubit/feed_cubit.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_html/flutter_html.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:go_router/go_router.dart'; diff --git a/lib/features/feed/presentation/widgets/comments_widget.dart b/lib/features/feed/presentation/widgets/comments_widget.dart index b530a7d8..695c5459 100644 --- a/lib/features/feed/presentation/widgets/comments_widget.dart +++ b/lib/features/feed/presentation/widgets/comments_widget.dart @@ -1,7 +1,9 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/utils/date_time_utils.dart'; import 'package:eatvio_app/features/feed/models/comment_model.dart'; import 'package:eatvio_app/features/feed/presentation/bloc/comments_cubit/comments_cubit.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; enum CommentSourceType { blogPost, recipe, diet } diff --git a/lib/features/feed/presentation/widgets/diets_widget.dart b/lib/features/feed/presentation/widgets/diets_widget.dart index c327c2a4..82069967 100644 --- a/lib/features/feed/presentation/widgets/diets_widget.dart +++ b/lib/features/feed/presentation/widgets/diets_widget.dart @@ -1,5 +1,6 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; + import 'package:eatvio_app/features/feed/models/diets_pagination_model.dart'; import 'package:flutter/material.dart'; import 'package:flutter_html/flutter_html.dart'; diff --git a/lib/features/feed/presentation/widgets/plan_widget.dart b/lib/features/feed/presentation/widgets/plan_widget.dart index fc4bb8cb..0364dbb0 100644 --- a/lib/features/feed/presentation/widgets/plan_widget.dart +++ b/lib/features/feed/presentation/widgets/plan_widget.dart @@ -1,5 +1,5 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/constants/constants.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/features/plans/models/plan_pagination_model.dart'; import 'package:flutter/material.dart'; import 'package:flutter_html/flutter_html.dart'; diff --git a/lib/features/feed/presentation/widgets/recipes_widget.dart b/lib/features/feed/presentation/widgets/recipes_widget.dart index 151831f8..a982a6f2 100644 --- a/lib/features/feed/presentation/widgets/recipes_widget.dart +++ b/lib/features/feed/presentation/widgets/recipes_widget.dart @@ -1,5 +1,6 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; + import 'package:eatvio_app/features/feed/models/recipes_model.dart'; import 'package:flutter/material.dart'; import 'package:flutter_html/flutter_html.dart'; diff --git a/lib/features/menu/presentation/pages/menu_screen.dart b/lib/features/menu/presentation/pages/menu_screen.dart index 6f46ac9c..80e06835 100644 --- a/lib/features/menu/presentation/pages/menu_screen.dart +++ b/lib/features/menu/presentation/pages/menu_screen.dart @@ -1,7 +1,10 @@ import 'package:dio/dio.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; + import 'package:eatvio_app/core/token_storage.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; import 'package:eatvio_app/locator_service.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:go_router/go_router.dart'; diff --git a/lib/features/notifications/presentation/pages/notifications_screen.dart b/lib/features/notifications/presentation/pages/notifications_screen.dart index 10947cbf..69058bf0 100644 --- a/lib/features/notifications/presentation/pages/notifications_screen.dart +++ b/lib/features/notifications/presentation/pages/notifications_screen.dart @@ -1,7 +1,7 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/notifications_cubit/notifications_cubit.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/notifications_cubit/notifications_state.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class NotificationsScreen extends StatelessWidget { const NotificationsScreen({super.key}); diff --git a/lib/features/plans/presentation/bloc/plans_cubit/plans_cubit.dart b/lib/features/plans/presentation/bloc/plans_cubit/plans_cubit.dart index fb885fe7..2190654a 100644 --- a/lib/features/plans/presentation/bloc/plans_cubit/plans_cubit.dart +++ b/lib/features/plans/presentation/bloc/plans_cubit/plans_cubit.dart @@ -9,7 +9,7 @@ class PlansCubit extends Cubit { required this.plansRepository, }) : super(PlansState.loading()); - getPlans() async { + loadPlans() async { try { emit(PlansState.loaded(plansModel: await plansRepository.getPlans())); } catch (e) { diff --git a/lib/features/profile/presentation/bloc/profile_cubit/profile_cubit.dart b/lib/features/profile/presentation/bloc/profile_cubit/profile_cubit.dart index 05f33fe7..6cdcff7a 100644 --- a/lib/features/profile/presentation/bloc/profile_cubit/profile_cubit.dart +++ b/lib/features/profile/presentation/bloc/profile_cubit/profile_cubit.dart @@ -1,6 +1,6 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/features/profile/presentation/bloc/profile_cubit/profile_state.dart'; import 'package:eatvio_app/features/profile/repositories/profile_repository.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class ProfileCubit extends Cubit { final ProfileRepository profileRepository; diff --git a/lib/features/profile/presentation/pages/profile_screen.dart b/lib/features/profile/presentation/pages/profile_screen.dart index af8cf4ec..c31a7d2f 100644 --- a/lib/features/profile/presentation/pages/profile_screen.dart +++ b/lib/features/profile/presentation/pages/profile_screen.dart @@ -1,10 +1,12 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/features/feed/models/diets_pagination_model.dart'; import 'package:eatvio_app/features/feed/presentation/widgets/blog_post_widget.dart'; import 'package:eatvio_app/features/profile/presentation/bloc/profile_cubit/profile_cubit.dart'; import 'package:eatvio_app/features/profile/presentation/bloc/profile_cubit/profile_state.dart'; import 'package:eatvio_app/locator_service.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:go_router/go_router.dart'; import 'package:share_plus/share_plus.dart'; diff --git a/lib/features/profile/presentation/widgets/circumference_chart_widget.dart b/lib/features/profile/presentation/widgets/circumference_chart_widget.dart index 4d718b9b..560266d4 100644 --- a/lib/features/profile/presentation/widgets/circumference_chart_widget.dart +++ b/lib/features/profile/presentation/widgets/circumference_chart_widget.dart @@ -1,4 +1,4 @@ -// import 'package:eatvio_app/core/app_export.dart'; +// // import 'package:eatvio_app/features/profile/models/profile_model.dart'; // import 'package:eatvio_app/features/profile/presentation/bloc/profile_cubit/profile_cubit.dart'; // import 'package:flutter/cupertino.dart'; diff --git a/lib/features/profile/presentation/widgets/weight_chart_widget.dart b/lib/features/profile/presentation/widgets/weight_chart_widget.dart index 7c9dca82..fea255cc 100644 --- a/lib/features/profile/presentation/widgets/weight_chart_widget.dart +++ b/lib/features/profile/presentation/widgets/weight_chart_widget.dart @@ -1,4 +1,4 @@ -// import 'package:eatvio_app/core/app_export.dart'; +// // import 'package:eatvio_app/features/profile/models/profile_model.dart'; // import 'package:eatvio_app/features/profile/presentation/bloc/profile_cubit/profile_cubit.dart'; // import 'package:flutter/cupertino.dart'; diff --git a/lib/features/recipes/presentation/bloc/recipe_create_cubit.dart b/lib/features/recipes/presentation/bloc/recipe_create_cubit.dart index 5507c0ea..727317bc 100644 --- a/lib/features/recipes/presentation/bloc/recipe_create_cubit.dart +++ b/lib/features/recipes/presentation/bloc/recipe_create_cubit.dart @@ -1,10 +1,11 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/data/models/selectionPopupModel/selection_popup_model.dart'; import 'package:eatvio_app/features/recipes/models/ingredient.dart'; import 'package:eatvio_app/features/recipes/models/recipe_model.dart'; import 'package:eatvio_app/features/recipes/presentation/bloc/recipe_create_state.dart'; import 'package:eatvio_app/features/recipes/reporitories/recipe_repository.dart'; import 'package:eatvio_app/features/diary/models/product.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:image_picker/image_picker.dart'; class RecipeCreateCubit extends Cubit { diff --git a/lib/features/recipes/presentation/pages/about_recipes_screen.dart b/lib/features/recipes/presentation/pages/about_recipes_screen.dart index 397147bd..130317e2 100644 --- a/lib/features/recipes/presentation/pages/about_recipes_screen.dart +++ b/lib/features/recipes/presentation/pages/about_recipes_screen.dart @@ -1,13 +1,16 @@ import 'dart:io'; import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; + import 'package:eatvio_app/features/feed/models/recipes_model.dart' as step; import 'package:eatvio_app/features/feed/models/recipes_model.dart'; import 'package:eatvio_app/features/feed/presentation/bloc/comments_cubit/comments_cubit.dart'; import 'package:eatvio_app/features/feed/presentation/bloc/comments_cubit/comments_state.dart'; import 'package:eatvio_app/features/feed/presentation/widgets/comments_widget.dart'; import 'package:eatvio_app/locator_service.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_html/flutter_html.dart'; import 'package:go_router/go_router.dart'; diff --git a/lib/features/recipes/presentation/pages/recipe_create_screen.dart b/lib/features/recipes/presentation/pages/recipe_create_screen.dart index 778e2b4b..e4ac3b8b 100644 --- a/lib/features/recipes/presentation/pages/recipe_create_screen.dart +++ b/lib/features/recipes/presentation/pages/recipe_create_screen.dart @@ -1,52 +1,60 @@ import 'dart:convert'; import 'dart:io'; -import 'package:eatvio_app/core/app_export.dart'; + import 'package:eatvio_app/features/diary/models/product.dart'; import 'package:eatvio_app/features/recipes/models/ingredient.dart'; import 'package:eatvio_app/features/recipes/models/recipe_model.dart'; import 'package:eatvio_app/features/recipes/models/step.dart' as step; import 'package:eatvio_app/features/recipes/presentation/bloc/recipe_create_cubit.dart'; import 'package:eatvio_app/features/recipes/presentation/bloc/recipe_create_state.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; +import 'package:eatvio_app/locator_service.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:eatvio_app/widgets/custom_drop_down.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:image_picker/image_picker.dart'; -// ignore: must_be_immutable class RecipeCreateScreen extends StatelessWidget { RecipeCreateScreen({Key? key}) : super(key: key); + Widget build(BuildContext context) { - context.read().loadRecipeCreate(); - return BlocBuilder( - builder: (context, state) { - if (state is RecipeCreateStateLoaded) { - return _buildRecipeCreate(context, state); - } else if (state is RecipeCreateStateLoading) { - return Scaffold( - body: Center( - child: CircularProgressIndicator(), - ), - ); - } else if (state is RecipeCreateStateError) { - return Scaffold( - body: Padding( - padding: const EdgeInsets.all(16), - child: Center( - child: Text(state.errorMessage), + return BlocProvider( + create: (context) => sl()..loadRecipeCreate(), + child: BlocBuilder( + builder: (context, state) { + if (state is RecipeCreateStateLoaded) { + return _buildRecipeCreate(context, state); + } else if (state is RecipeCreateStateLoading) { + return Scaffold( + body: Center( + child: CircularProgressIndicator(), ), - ), - ); - } else - return Scaffold( - body: Padding( - padding: const EdgeInsets.all(16), - child: Center( - child: Text("Неопределенная ошибка"), + ); + } else if (state is RecipeCreateStateError) { + return Scaffold( + body: Padding( + padding: const EdgeInsets.all(16), + child: Center( + child: Text(state.errorMessage), + ), ), - ), - ); - }, + ); + } else + return Scaffold( + body: Padding( + padding: const EdgeInsets.all(16), + child: Center( + child: Text("Неопределенная ошибка"), + ), + ), + ); + }, + ), ); } diff --git a/lib/features/recipes/presentation/pages/recipe_edit_screen.dart b/lib/features/recipes/presentation/pages/recipe_edit_screen.dart index a0c79776..28387374 100644 --- a/lib/features/recipes/presentation/pages/recipe_edit_screen.dart +++ b/lib/features/recipes/presentation/pages/recipe_edit_screen.dart @@ -1,14 +1,19 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/features/diary/models/product.dart'; import 'package:eatvio_app/features/recipes/models/ingredient.dart'; import 'package:eatvio_app/features/recipes/models/recipe_model.dart'; import 'package:eatvio_app/features/recipes/models/step.dart' as step; import 'package:eatvio_app/features/recipes/presentation/bloc/recipe_create_cubit.dart'; import 'package:eatvio_app/features/recipes/presentation/bloc/recipe_create_state.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:eatvio_app/widgets/custom_drop_down.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:image_picker/image_picker.dart'; // ignore: must_be_immutable diff --git a/lib/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart b/lib/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart index cbb2e16d..e016a36c 100644 --- a/lib/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart +++ b/lib/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart @@ -1,9 +1,10 @@ import 'package:eatvio_app/app_router.dart'; -import 'package:eatvio_app/core/app_export.dart'; + import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_state.dart'; import 'package:eatvio_app/features/registration/repositories/registration_repository.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; class RegistrationCubit extends Cubit { diff --git a/lib/features/registration/presentation/pages/additional_information_screen.dart b/lib/features/registration/presentation/pages/additional_information_screen.dart index 159a599f..e0a4edbf 100644 --- a/lib/features/registration/presentation/pages/additional_information_screen.dart +++ b/lib/features/registration/presentation/pages/additional_information_screen.dart @@ -1,8 +1,8 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class AdditionalInformationScreen extends StatefulWidget { final UserRegistrationSheet sheet; diff --git a/lib/features/registration/presentation/pages/allergies_screen.dart b/lib/features/registration/presentation/pages/allergies_screen.dart index 5a4e4bc3..f0d4c61e 100644 --- a/lib/features/registration/presentation/pages/allergies_screen.dart +++ b/lib/features/registration/presentation/pages/allergies_screen.dart @@ -1,8 +1,9 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class AllergiesScreen extends StatefulWidget { final UserRegistrationSheet sheet; diff --git a/lib/features/registration/presentation/pages/blood_pressure_screen.dart b/lib/features/registration/presentation/pages/blood_pressure_screen.dart index e773c3eb..7baac4f6 100644 --- a/lib/features/registration/presentation/pages/blood_pressure_screen.dart +++ b/lib/features/registration/presentation/pages/blood_pressure_screen.dart @@ -1,10 +1,14 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; +import 'package:eatvio_app/data/models/selectionPopupModel/selection_popup_model.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/widgets/custom_drop_down.dart'; +import 'package:eatvio_app/widgets/custom_image_view.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class BloodPressureScreen extends StatefulWidget { final UserRegistrationSheet sheet; diff --git a/lib/features/registration/presentation/pages/body_circumferences_screen.dart b/lib/features/registration/presentation/pages/body_circumferences_screen.dart index a086da35..5078be08 100644 --- a/lib/features/registration/presentation/pages/body_circumferences_screen.dart +++ b/lib/features/registration/presentation/pages/body_circumferences_screen.dart @@ -1,9 +1,10 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class BodyCircumferencesScreen extends StatefulWidget { final UserRegistrationSheet sheet; diff --git a/lib/features/registration/presentation/pages/city_of_living_screen.dart b/lib/features/registration/presentation/pages/city_of_living_screen.dart index edaf94fe..b901e3b2 100644 --- a/lib/features/registration/presentation/pages/city_of_living_screen.dart +++ b/lib/features/registration/presentation/pages/city_of_living_screen.dart @@ -1,8 +1,10 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/data/models/selectionPopupModel/selection_popup_model.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:eatvio_app/widgets/custom_edit_text_form_field.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_typeahead/flutter_typeahead.dart'; import 'package:location/location.dart'; diff --git a/lib/features/registration/presentation/pages/credentials_screen.dart b/lib/features/registration/presentation/pages/credentials_screen.dart index 25b0a2a1..5a2c51ca 100644 --- a/lib/features/registration/presentation/pages/credentials_screen.dart +++ b/lib/features/registration/presentation/pages/credentials_screen.dart @@ -1,8 +1,9 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class CredentialsScreen extends StatefulWidget { final UserRegistrationSheet sheet; diff --git a/lib/features/registration/presentation/pages/date_of_birth_screen.dart b/lib/features/registration/presentation/pages/date_of_birth_screen.dart index 8d510c15..c980111b 100644 --- a/lib/features/registration/presentation/pages/date_of_birth_screen.dart +++ b/lib/features/registration/presentation/pages/date_of_birth_screen.dart @@ -1,8 +1,11 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/utils/date_time_utils.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:intl/intl.dart'; class DateOfBirthScreen extends StatefulWidget { diff --git a/lib/features/registration/presentation/pages/favorite_foods_screen.dart b/lib/features/registration/presentation/pages/favorite_foods_screen.dart index bab999ab..570f9d15 100644 --- a/lib/features/registration/presentation/pages/favorite_foods_screen.dart +++ b/lib/features/registration/presentation/pages/favorite_foods_screen.dart @@ -1,8 +1,9 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class FavoriteFoodsScreen extends StatefulWidget { final UserRegistrationSheet sheet; diff --git a/lib/features/registration/presentation/pages/favorite_sports_screen.dart b/lib/features/registration/presentation/pages/favorite_sports_screen.dart index 2856ea75..53742fc7 100644 --- a/lib/features/registration/presentation/pages/favorite_sports_screen.dart +++ b/lib/features/registration/presentation/pages/favorite_sports_screen.dart @@ -1,8 +1,9 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class FavoriteSportsScreen extends StatefulWidget { final UserRegistrationSheet sheet; diff --git a/lib/features/registration/presentation/pages/gender_screen.dart b/lib/features/registration/presentation/pages/gender_screen.dart index d1bec2f7..66549ac2 100644 --- a/lib/features/registration/presentation/pages/gender_screen.dart +++ b/lib/features/registration/presentation/pages/gender_screen.dart @@ -1,7 +1,7 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class GenderScreen extends StatefulWidget { final UserRegistrationSheet sheet; diff --git a/lib/features/registration/presentation/pages/height_screen.dart b/lib/features/registration/presentation/pages/height_screen.dart index 2aea3690..38a721ba 100644 --- a/lib/features/registration/presentation/pages/height_screen.dart +++ b/lib/features/registration/presentation/pages/height_screen.dart @@ -1,9 +1,10 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class HeightScreen extends StatefulWidget { final UserRegistrationSheet sheet; diff --git a/lib/features/registration/presentation/pages/language_select_screen.dart b/lib/features/registration/presentation/pages/language_select_screen.dart index 4d95033e..d1e1f885 100644 --- a/lib/features/registration/presentation/pages/language_select_screen.dart +++ b/lib/features/registration/presentation/pages/language_select_screen.dart @@ -1,8 +1,10 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/data/models/selectionPopupModel/selection_popup_model.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/widgets/custom_drop_down.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class LanguageSelectScreen extends StatefulWidget { final UserRegistrationSheet sheet; diff --git a/lib/features/registration/presentation/pages/medicine_intake_screen.dart b/lib/features/registration/presentation/pages/medicine_intake_screen.dart index fc09d084..878d418d 100644 --- a/lib/features/registration/presentation/pages/medicine_intake_screen.dart +++ b/lib/features/registration/presentation/pages/medicine_intake_screen.dart @@ -1,8 +1,9 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class MedicineIntakeScreen extends StatefulWidget { final UserRegistrationSheet sheet; diff --git a/lib/features/registration/presentation/pages/name_screen.dart b/lib/features/registration/presentation/pages/name_screen.dart index ae817ed8..cebd4cd4 100644 --- a/lib/features/registration/presentation/pages/name_screen.dart +++ b/lib/features/registration/presentation/pages/name_screen.dart @@ -1,8 +1,9 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class NameScreen extends StatefulWidget { final UserRegistrationSheet sheet; diff --git a/lib/features/registration/presentation/pages/registration_screen.dart b/lib/features/registration/presentation/pages/registration_screen.dart index e95639a8..1b01acda 100644 --- a/lib/features/registration/presentation/pages/registration_screen.dart +++ b/lib/features/registration/presentation/pages/registration_screen.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_state.dart'; import 'package:eatvio_app/features/registration/presentation/pages/additional_information_screen.dart'; @@ -16,9 +16,12 @@ import 'package:eatvio_app/features/registration/presentation/pages/language_sel import 'package:eatvio_app/features/registration/presentation/pages/medicine_intake_screen.dart'; import 'package:eatvio_app/features/registration/presentation/pages/name_screen.dart'; import 'package:eatvio_app/features/registration/presentation/pages/weight_screen.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/locator_service.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:eatvio_app/widgets/app_bar/appbar_title_image.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:validators/validators.dart'; diff --git a/lib/features/registration/presentation/pages/weight_screen.dart b/lib/features/registration/presentation/pages/weight_screen.dart index 300296d6..c67cfee9 100644 --- a/lib/features/registration/presentation/pages/weight_screen.dart +++ b/lib/features/registration/presentation/pages/weight_screen.dart @@ -1,9 +1,10 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; import 'package:eatvio_app/features/registration/presentation/bloc/registration_cubit/registration_cubit.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; class WeightScreen extends StatefulWidget { final UserRegistrationSheet sheet; diff --git a/lib/locator_service.dart b/lib/locator_service.dart index beafd9b2..37c53064 100644 --- a/lib/locator_service.dart +++ b/lib/locator_service.dart @@ -1,5 +1,5 @@ import 'package:dio/dio.dart'; -import 'package:eatvio_app/core/constants/constants.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/initialization_cubit/initialization_cubit.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/new_messages_cubit/new_messages_cubit.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/notifications_cubit/notifications_cubit.dart'; @@ -37,11 +37,12 @@ import 'package:get_it/get_it.dart'; final sl = GetIt.instance; Future init() async { - // BLoC / Cubit + // Cubit singletons sl.registerLazySingleton(() => InitializationCubit(chatRepository: sl())); sl.registerLazySingleton(() => NewMessagesCubit()); sl.registerLazySingleton(() => NotificationsCubit()); + // Cubit factories sl.registerFactory(() => RegistrationCubit(registrationRepository: sl())); sl.registerFactory(() => ChatRoomCubit(chatRepository: sl(), initializationCubit: sl())); sl.registerFactory(() => FeedCubit(feedRepository: sl())); diff --git a/lib/main.dart b/lib/main.dart index 5a24fa1e..7191b2b0 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -2,22 +2,14 @@ import 'package:eatvio_app/app_router.dart'; import 'package:eatvio_app/core/initialization_cubit/initialization_cubit.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/new_messages_cubit/new_messages_cubit.dart'; import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/notifications_cubit/notifications_cubit.dart'; -import 'package:eatvio_app/features/bottom_navigation_bar/presentation/bloc/profile_avatar_cubit/profile_avatar_cubit.dart'; -import 'package:eatvio_app/features/calendar/presentation/bloc/calendar_cubit.dart'; -import 'package:eatvio_app/features/diary/presentation/bloc/diary_bloc.dart'; -import 'package:eatvio_app/features/feed/presentation/bloc/diets_cubit/diets_cubit.dart'; -import 'package:eatvio_app/features/feed/presentation/bloc/feed_cubit/feed_cubit.dart'; -import 'package:eatvio_app/features/feed/presentation/bloc/recipes_cubit/recipes_cubit.dart'; -import 'package:eatvio_app/features/plans/presentation/bloc/plans_cubit/plans_cubit.dart'; -import 'package:eatvio_app/features/recipes/presentation/bloc/recipe_create_cubit.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/locator_service.dart' as di; import 'package:eatvio_app/locator_service.dart'; -import 'package:eatvio_app/old/profile/my_profile_screen/bloc/my_profile_bloc.dart'; -import 'package:eatvio_app/old/profile/my_profile_screen/models/my_profile_model.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_localizations/flutter_localizations.dart'; import 'package:keyboard_dismisser/keyboard_dismisser.dart'; -import 'core/app_export.dart'; var globalMessengerKey = GlobalKey(); @@ -35,20 +27,14 @@ class MyApp extends StatelessWidget { BlocProvider(create: (context) => sl()), BlocProvider(create: (context) => sl()), BlocProvider(create: (context) => sl()), - BlocProvider(create: (context) => sl()..getMyProfile()), - BlocProvider(create: (context) => sl()..loadFeedBlogPostList()), - BlocProvider(create: (context) => sl()..loadRecipesList()), - BlocProvider(create: (context) => sl()..loadDiets()), - BlocProvider(create: (context) => sl()..getPlans()), - BlocProvider(create: (context) => MyProfileBloc(MyProfileState(myProfileModelObj: MyProfileModel()))..add(MyProfileInitialEvent())), - BlocProvider(create: (context) => sl()..add(LoadDiary())), - BlocProvider(create: (context) => sl()..loadCalendarList()), - BlocProvider(create: (context) => sl()..loadRecipeCreate()), ], child: KeyboardDismisser( child: MaterialApp.router( - theme: theme, - themeMode: ThemeMode.light, + theme: ThemeData.light().copyWith( + colorScheme: ColorScheme.fromSeed(seedColor: appTheme.blueA400), + ), + // darkTheme: ThemeData.dark().copyWith(), + themeMode: ThemeMode.system, routerConfig: AppRouter.appRouter, debugShowCheckedModeBanner: false, localizationsDelegates: [ diff --git a/lib/old/auth/auth_screen/auth_screen.dart b/lib/old/auth/auth_screen/auth_screen.dart index 502eff15..f13d77cd 100644 --- a/lib/old/auth/auth_screen/auth_screen.dart +++ b/lib/old/auth/auth_screen/auth_screen.dart @@ -1,15 +1,17 @@ import 'dart:convert'; - -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:eatvio_app/widgets/app_bar/appbar_title_image.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; import 'package:url_launcher/url_launcher.dart'; import 'package:validators/validators.dart'; - import 'bloc/auth_bloc.dart'; import 'models/auth_model.dart'; diff --git a/lib/old/auth/auth_screen/bloc/auth_bloc.dart b/lib/old/auth/auth_screen/bloc/auth_bloc.dart index cc7fb9d4..9d7b76a2 100644 --- a/lib/old/auth/auth_screen/bloc/auth_bloc.dart +++ b/lib/old/auth/auth_screen/bloc/auth_bloc.dart @@ -1,9 +1,7 @@ import 'package:eatvio_app/old/auth/auth_screen/models/auth_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; - -import '/core/app_export.dart'; - +import 'package:flutter_bloc/flutter_bloc.dart'; part 'auth_event.dart'; part 'auth_state.dart'; diff --git a/lib/old/diary/diary_edit_screen/diary_edit_screen.dart b/lib/old/diary/diary_edit_screen/diary_edit_screen.dart index 5237efb6..57e167d7 100644 --- a/lib/old/diary/diary_edit_screen/diary_edit_screen.dart +++ b/lib/old/diary/diary_edit_screen/diary_edit_screen.dart @@ -8,7 +8,7 @@ import 'package:flutter_form_builder/flutter_form_builder.dart'; import 'package:fl_chart/fl_chart.dart'; import 'package:image_picker/image_picker.dart'; import 'package:flutter_dotenv/flutter_dotenv.dart'; -import 'package:eatvio_app/core/app_export.dart'; + import 'package:eatvio_app/widgets/custom_edit_text_form_field.dart'; import 'package:eatvio_app/widgets/custom_edit_drop_down.dart'; import 'package:eatvio_app/widgets/custom_outlined_button.dart'; diff --git a/lib/old/diets/diet_create_screen/bloc/diet_create_bloc.dart b/lib/old/diets/diet_create_screen/bloc/diet_create_bloc.dart index 6f14062d..34900450 100644 --- a/lib/old/diets/diet_create_screen/bloc/diet_create_bloc.dart +++ b/lib/old/diets/diet_create_screen/bloc/diet_create_bloc.dart @@ -2,14 +2,16 @@ import 'dart:async'; import 'dart:convert'; import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/old/diets/diet_create_screen/models/diet_create_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; -import '/core/app_export.dart'; + part 'diet_create_event.dart'; part 'diet_create_state.dart'; diff --git a/lib/old/diets/diet_create_screen/diet_create_screen.dart b/lib/old/diets/diet_create_screen/diet_create_screen.dart index 0abc3aba..bad75b05 100644 --- a/lib/old/diets/diet_create_screen/diet_create_screen.dart +++ b/lib/old/diets/diet_create_screen/diet_create_screen.dart @@ -1,5 +1,6 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'bloc/diet_create_bloc.dart'; import 'models/diet_create_model.dart'; diff --git a/lib/old/diets/diet_edit_screen/bloc/diet_edit_bloc.dart b/lib/old/diets/diet_edit_screen/bloc/diet_edit_bloc.dart index 4635fc11..cb0c87bf 100644 --- a/lib/old/diets/diet_edit_screen/bloc/diet_edit_bloc.dart +++ b/lib/old/diets/diet_edit_screen/bloc/diet_edit_bloc.dart @@ -2,14 +2,16 @@ import 'dart:async'; import 'dart:convert'; import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/old/diets/diet_edit_screen/models/diet_edit_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; -import '/core/app_export.dart'; + part 'diet_edit_event.dart'; part 'diet_edit_state.dart'; diff --git a/lib/old/diets/diet_edit_screen/diet_edit_screen.dart b/lib/old/diets/diet_edit_screen/diet_edit_screen.dart index ea43dd45..e5b5052e 100644 --- a/lib/old/diets/diet_edit_screen/diet_edit_screen.dart +++ b/lib/old/diets/diet_edit_screen/diet_edit_screen.dart @@ -1,6 +1,9 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; + import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'bloc/diet_edit_bloc.dart'; import 'models/diet_edit_model.dart'; diff --git a/lib/old/diets/diet_select_screen/bloc/diet_select_bloc.dart b/lib/old/diets/diet_select_screen/bloc/diet_select_bloc.dart index 26622a74..2c49b95f 100644 --- a/lib/old/diets/diet_select_screen/bloc/diet_select_bloc.dart +++ b/lib/old/diets/diet_select_screen/bloc/diet_select_bloc.dart @@ -3,15 +3,17 @@ import 'dart:async'; import 'dart:convert'; import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/old/diets/diet_select_screen/models/diet_select_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; import 'package:image_picker/image_picker.dart'; -import '/core/app_export.dart'; + part 'diet_select_event.dart'; part 'diet_select_state.dart'; diff --git a/lib/old/diets/diet_select_screen/diet_select_screen.dart b/lib/old/diets/diet_select_screen/diet_select_screen.dart index 18ea53cb..dd332673 100644 --- a/lib/old/diets/diet_select_screen/diet_select_screen.dart +++ b/lib/old/diets/diet_select_screen/diet_select_screen.dart @@ -1,9 +1,13 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; + import 'package:eatvio_app/widgets/app_bar/appbar_leading_image.dart'; import 'package:eatvio_app/widgets/app_bar/appbar_subtitle.dart'; import 'package:eatvio_app/widgets/app_bar/custom_app_bar.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'bloc/diet_select_bloc.dart'; diff --git a/lib/old/diets/diet_show_screen/bloc/diet_show_bloc.dart b/lib/old/diets/diet_show_screen/bloc/diet_show_bloc.dart index 008e566a..0fd6c0c4 100644 --- a/lib/old/diets/diet_show_screen/bloc/diet_show_bloc.dart +++ b/lib/old/diets/diet_show_screen/bloc/diet_show_bloc.dart @@ -2,14 +2,16 @@ import 'dart:async'; import 'dart:convert'; import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/old/diets/diet_show_screen/models/diet_show_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; -import '/core/app_export.dart'; + part 'diet_show_event.dart'; part 'diet_show_state.dart'; diff --git a/lib/old/diets/diet_show_screen/diet_show_screen.dart b/lib/old/diets/diet_show_screen/diet_show_screen.dart index 1220fea9..84d87ced 100644 --- a/lib/old/diets/diet_show_screen/diet_show_screen.dart +++ b/lib/old/diets/diet_show_screen/diet_show_screen.dart @@ -1,6 +1,10 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; + import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'bloc/diet_show_bloc.dart'; diff --git a/lib/old/feed/blog_post_create_screen/bloc/blog_post_create_bloc.dart b/lib/old/feed/blog_post_create_screen/bloc/blog_post_create_bloc.dart index 5133d85b..b0b4f10f 100644 --- a/lib/old/feed/blog_post_create_screen/bloc/blog_post_create_bloc.dart +++ b/lib/old/feed/blog_post_create_screen/bloc/blog_post_create_bloc.dart @@ -1,17 +1,16 @@ import 'dart:async'; - import 'package:dio/dio.dart'; import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/locator_service.dart'; import 'package:eatvio_app/old/feed/blog_post_create_screen/models/blog_post_create_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:image_picker/image_picker.dart'; -import '/core/app_export.dart'; - part 'blog_post_create_event.dart'; part 'blog_post_create_state.dart'; diff --git a/lib/old/feed/blog_post_edit_screen/bloc/blog_post_edit_bloc.dart b/lib/old/feed/blog_post_edit_screen/bloc/blog_post_edit_bloc.dart index fd369ec2..4869330e 100644 --- a/lib/old/feed/blog_post_edit_screen/bloc/blog_post_edit_bloc.dart +++ b/lib/old/feed/blog_post_edit_screen/bloc/blog_post_edit_bloc.dart @@ -2,14 +2,16 @@ import 'dart:async'; import 'dart:convert'; import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/old/feed/blog_post_edit_screen/models/blog_post_edit_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; -import '/core/app_export.dart'; + part 'blog_post_edit_event.dart'; part 'blog_post_edit_state.dart'; diff --git a/lib/old/feed/blog_post_edit_screen/blog_post_edit_screen.dart b/lib/old/feed/blog_post_edit_screen/blog_post_edit_screen.dart index 0770341d..223c6ce6 100644 --- a/lib/old/feed/blog_post_edit_screen/blog_post_edit_screen.dart +++ b/lib/old/feed/blog_post_edit_screen/blog_post_edit_screen.dart @@ -1,6 +1,9 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; + import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'bloc/blog_post_edit_bloc.dart'; import 'models/blog_post_edit_model.dart'; diff --git a/lib/old/feed/blog_post_screen/models/comment_model.dart b/lib/old/feed/blog_post_screen/models/comment_model.dart index 2b9c7133..f5bb4131 100644 --- a/lib/old/feed/blog_post_screen/models/comment_model.dart +++ b/lib/old/feed/blog_post_screen/models/comment_model.dart @@ -1,7 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; - -/// This class is used in the [userprofile_item_widget] screen. -// ignore_for_file: must_be_immutable +import 'package:eatvio_app/core/utils/image_constant.dart'; class CommentModel { CommentModel({ diff --git a/lib/old/feed/blog_post_screen/widgets/comment_widget.dart b/lib/old/feed/blog_post_screen/widgets/comment_widget.dart index 5eb3d53a..b47f34d6 100644 --- a/lib/old/feed/blog_post_screen/widgets/comment_widget.dart +++ b/lib/old/feed/blog_post_screen/widgets/comment_widget.dart @@ -1,8 +1,13 @@ // ignore_for_file: must_be_immutable import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; + import 'package:eatvio_app/old/feed/blog_post_screen/models/comment_model.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; +import 'package:eatvio_app/widgets/custom_image_view.dart'; import 'package:flutter/material.dart'; class CommentWidget extends StatelessWidget { diff --git a/lib/old/feed/feed_screen/widgets/feed_scroll_item.dart b/lib/old/feed/feed_screen/widgets/feed_scroll_item.dart index bc3b1613..da1ca390 100644 --- a/lib/old/feed/feed_screen/widgets/feed_scroll_item.dart +++ b/lib/old/feed/feed_screen/widgets/feed_scroll_item.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; import 'package:flutter/material.dart'; class ScrollItem extends StatelessWidget { diff --git a/lib/old/feed/feed_screen/widgets/feed_search_view.dart b/lib/old/feed/feed_screen/widgets/feed_search_view.dart index 1918aeaa..579a0a29 100644 --- a/lib/old/feed/feed_screen/widgets/feed_search_view.dart +++ b/lib/old/feed/feed_screen/widgets/feed_search_view.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; import 'package:flutter/material.dart'; class CustomSearchView extends StatelessWidget { diff --git a/lib/old/glossary/glossary_screen/bloc/glossary_screen_bloc.dart b/lib/old/glossary/glossary_screen/bloc/glossary_screen_bloc.dart index f642ee1d..61a8efeb 100644 --- a/lib/old/glossary/glossary_screen/bloc/glossary_screen_bloc.dart +++ b/lib/old/glossary/glossary_screen/bloc/glossary_screen_bloc.dart @@ -2,14 +2,17 @@ import 'dart:async'; import 'dart:convert'; import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; +import 'package:eatvio_app/data/models/selectionPopupModel/selection_popup_model.dart'; import 'package:eatvio_app/old/glossary/glossary_screen/models/glossary_screen_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; -import '/core/app_export.dart'; + part 'glossary_screen_event.dart'; part 'glossary_screen_state.dart'; diff --git a/lib/old/glossary/glossary_screen/glossary_screen.dart b/lib/old/glossary/glossary_screen/glossary_screen.dart index 0e56aaaa..5a49cc2e 100644 --- a/lib/old/glossary/glossary_screen/glossary_screen.dart +++ b/lib/old/glossary/glossary_screen/glossary_screen.dart @@ -1,10 +1,15 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/data/models/selectionPopupModel/selection_popup_model.dart'; + import 'package:eatvio_app/old/glossary/glossary_screen/widgets/glossary_scroll_item.dart'; import 'package:eatvio_app/old/glossary/glossary_screen/widgets/glossary_search_widget.dart'; +import 'package:eatvio_app/theme/custom_button_style.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; import 'package:eatvio_app/widgets/custom_drop_down.dart'; import 'package:eatvio_app/widgets/custom_outlined_button.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'bloc/glossary_screen_bloc.dart'; import 'models/glossary_screen_model.dart'; diff --git a/lib/old/glossary/glossary_screen/widgets/glossary_scroll_item.dart b/lib/old/glossary/glossary_screen/widgets/glossary_scroll_item.dart index bc3b1613..da1ca390 100644 --- a/lib/old/glossary/glossary_screen/widgets/glossary_scroll_item.dart +++ b/lib/old/glossary/glossary_screen/widgets/glossary_scroll_item.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; import 'package:flutter/material.dart'; class ScrollItem extends StatelessWidget { diff --git a/lib/old/glossary/glossary_screen/widgets/glossary_search_widget.dart b/lib/old/glossary/glossary_screen/widgets/glossary_search_widget.dart index 1918aeaa..579a0a29 100644 --- a/lib/old/glossary/glossary_screen/widgets/glossary_search_widget.dart +++ b/lib/old/glossary/glossary_screen/widgets/glossary_search_widget.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; import 'package:flutter/material.dart'; class CustomSearchView extends StatelessWidget { diff --git a/lib/old/plans/plan_create_screen/bloc/plan_create_bloc.dart b/lib/old/plans/plan_create_screen/bloc/plan_create_bloc.dart index 09eb839b..abd758fa 100644 --- a/lib/old/plans/plan_create_screen/bloc/plan_create_bloc.dart +++ b/lib/old/plans/plan_create_screen/bloc/plan_create_bloc.dart @@ -2,14 +2,16 @@ import 'dart:async'; import 'dart:convert'; import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/old/plans/plan_create_screen/models/plan_create_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; -import '/core/app_export.dart'; + part 'plan_create_event.dart'; part 'plan_create_state.dart'; diff --git a/lib/old/plans/plan_create_screen/plan_create_screen.dart b/lib/old/plans/plan_create_screen/plan_create_screen.dart index f369e4a0..284d94b2 100644 --- a/lib/old/plans/plan_create_screen/plan_create_screen.dart +++ b/lib/old/plans/plan_create_screen/plan_create_screen.dart @@ -1,5 +1,6 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'bloc/plan_create_bloc.dart'; import 'models/plan_create_model.dart'; diff --git a/lib/old/plans/plan_edit_screen/bloc/plan_edit_bloc.dart b/lib/old/plans/plan_edit_screen/bloc/plan_edit_bloc.dart index 4c8949c3..55f3a9a4 100644 --- a/lib/old/plans/plan_edit_screen/bloc/plan_edit_bloc.dart +++ b/lib/old/plans/plan_edit_screen/bloc/plan_edit_bloc.dart @@ -2,14 +2,16 @@ import 'dart:async'; import 'dart:convert'; import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/old/plans/plan_edit_screen/models/plan_edit_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; -import '/core/app_export.dart'; + part 'plan_edit_event.dart'; part 'plan_edit_state.dart'; diff --git a/lib/old/plans/plan_edit_screen/plan_edit_screen.dart b/lib/old/plans/plan_edit_screen/plan_edit_screen.dart index 4936da7d..39d29424 100644 --- a/lib/old/plans/plan_edit_screen/plan_edit_screen.dart +++ b/lib/old/plans/plan_edit_screen/plan_edit_screen.dart @@ -1,6 +1,9 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; + import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'bloc/plan_edit_bloc.dart'; import 'models/plan_edit_model.dart'; diff --git a/lib/old/plans/plan_select_screen/bloc/plan_select_bloc.dart b/lib/old/plans/plan_select_screen/bloc/plan_select_bloc.dart index d2ffb5be..6bfd7331 100644 --- a/lib/old/plans/plan_select_screen/bloc/plan_select_bloc.dart +++ b/lib/old/plans/plan_select_screen/bloc/plan_select_bloc.dart @@ -3,15 +3,17 @@ import 'dart:async'; import 'dart:convert'; import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/old/plans/plan_select_screen/models/plan_select_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; import 'package:image_picker/image_picker.dart'; -import '/core/app_export.dart'; + part 'plan_select_event.dart'; part 'plan_select_state.dart'; diff --git a/lib/old/plans/plan_select_screen/plan_select_screen.dart b/lib/old/plans/plan_select_screen/plan_select_screen.dart index d5b3d06d..c75c3c98 100644 --- a/lib/old/plans/plan_select_screen/plan_select_screen.dart +++ b/lib/old/plans/plan_select_screen/plan_select_screen.dart @@ -1,9 +1,13 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; + import 'package:eatvio_app/widgets/app_bar/appbar_leading_image.dart'; import 'package:eatvio_app/widgets/app_bar/appbar_subtitle.dart'; import 'package:eatvio_app/widgets/app_bar/custom_app_bar.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'bloc/plan_select_bloc.dart'; diff --git a/lib/old/plans/plan_show_screen/bloc/plan_show_bloc.dart b/lib/old/plans/plan_show_screen/bloc/plan_show_bloc.dart index 48b16f9b..82314d7e 100644 --- a/lib/old/plans/plan_show_screen/bloc/plan_show_bloc.dart +++ b/lib/old/plans/plan_show_screen/bloc/plan_show_bloc.dart @@ -2,14 +2,16 @@ import 'dart:async'; import 'dart:convert'; import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/old/plans/plan_show_screen/models/plan_show_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; -import '/core/app_export.dart'; + part 'plan_show_event.dart'; part 'plan_show_state.dart'; diff --git a/lib/old/plans/plan_show_screen/plan_show_screen.dart b/lib/old/plans/plan_show_screen/plan_show_screen.dart index 67565f96..ab173bc3 100644 --- a/lib/old/plans/plan_show_screen/plan_show_screen.dart +++ b/lib/old/plans/plan_show_screen/plan_show_screen.dart @@ -1,6 +1,10 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; + import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'bloc/plan_show_bloc.dart'; diff --git a/lib/old/profile/my_profile_screen/bloc/my_profile_bloc.dart b/lib/old/profile/my_profile_screen/bloc/my_profile_bloc.dart index 6179d623..430730a7 100644 --- a/lib/old/profile/my_profile_screen/bloc/my_profile_bloc.dart +++ b/lib/old/profile/my_profile_screen/bloc/my_profile_bloc.dart @@ -1,18 +1,15 @@ -//import 'package:eatvio_app/old/auth/auth_screen/auth_screen.dart'; import 'dart:async'; import 'dart:convert'; - import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/old/profile/my_profile_screen/models/my_profile_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; import 'package:image_picker/image_picker.dart'; - -import '/core/app_export.dart'; - part 'my_profile_event.dart'; part 'my_profile_state.dart'; @@ -31,8 +28,6 @@ class MyProfileBloc extends Bloc { if (!await TokenStorage.haveTokenInStorage()) { AppRouter.navigatorKey.currentContext?.goNamed('authScreen'); } - //final token = - // "9|laravel_sanctum_KFXbccDcWEvTPfJmV99EQv1ne AggmpR2TidVGDPN34fa201a"; final response = await http.get( Uri.parse(baseUrl + '/api/profile/index'), headers: { diff --git a/lib/old/profile/my_profile_screen/my_profile_screen.dart b/lib/old/profile/my_profile_screen/my_profile_screen.dart index ca88e2e0..6bc818e3 100644 --- a/lib/old/profile/my_profile_screen/my_profile_screen.dart +++ b/lib/old/profile/my_profile_screen/my_profile_screen.dart @@ -3,12 +3,18 @@ import 'dart:math'; import 'package:cached_network_image/cached_network_image.dart'; import 'package:carousel_slider_plus/carousel_slider_plus.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; + import 'package:eatvio_app/widgets/app_bar/appbar_subtitle.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:fl_chart/fl_chart.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; import 'package:image_picker/image_picker.dart'; diff --git a/lib/old/profile/my_profile_screen/my_settings_screen.dart b/lib/old/profile/my_profile_screen/my_settings_screen.dart index f9a28356..4b7a7740 100644 --- a/lib/old/profile/my_profile_screen/my_settings_screen.dart +++ b/lib/old/profile/my_profile_screen/my_settings_screen.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; import 'package:eatvio_app/widgets/app_bar/appbar_leading_image.dart'; import 'package:eatvio_app/widgets/app_bar/appbar_subtitle.dart'; import 'package:eatvio_app/widgets/app_bar/custom_app_bar.dart'; @@ -8,6 +8,7 @@ import 'package:eatvio_app/widgets/custom_language_drop_down.dart'; import 'package:eatvio_app/widgets/custom_notification_screen.dart'; import 'package:eatvio_app/widgets/custom_section_title.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'bloc/my_profile_bloc.dart'; diff --git a/lib/old/recipe/recipe_edit_screen/bloc/recipe_edit_bloc.dart b/lib/old/recipe/recipe_edit_screen/bloc/recipe_edit_bloc.dart index 33ee84ff..f07114d5 100644 --- a/lib/old/recipe/recipe_edit_screen/bloc/recipe_edit_bloc.dart +++ b/lib/old/recipe/recipe_edit_screen/bloc/recipe_edit_bloc.dart @@ -1,16 +1,15 @@ import 'dart:async'; import 'dart:convert'; - import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/old/recipe/recipe_edit_screen/models/recipe_edit_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; -import '/core/app_export.dart'; - part 'recipe_edit_event.dart'; part 'recipe_edit_state.dart'; diff --git a/lib/old/recipe/recipe_edit_screen/recipe_edit_screen.dart b/lib/old/recipe/recipe_edit_screen/recipe_edit_screen.dart index c0675b62..607521cc 100644 --- a/lib/old/recipe/recipe_edit_screen/recipe_edit_screen.dart +++ b/lib/old/recipe/recipe_edit_screen/recipe_edit_screen.dart @@ -1,11 +1,18 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; +import 'package:eatvio_app/theme/custom_button_style.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; + import 'package:eatvio_app/widgets/app_bar/appbar_leading_image.dart'; import 'package:eatvio_app/widgets/app_bar/appbar_subtitle.dart'; import 'package:eatvio_app/widgets/app_bar/custom_app_bar.dart'; import 'package:eatvio_app/widgets/custom_outlined_button.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'bloc/recipe_edit_bloc.dart'; diff --git a/lib/old/recipe/recipe_select_screen/bloc/recipe_select_bloc.dart b/lib/old/recipe/recipe_select_screen/bloc/recipe_select_bloc.dart index 70bab591..8ce71b7d 100644 --- a/lib/old/recipe/recipe_select_screen/bloc/recipe_select_bloc.dart +++ b/lib/old/recipe/recipe_select_screen/bloc/recipe_select_bloc.dart @@ -1,17 +1,16 @@ import 'dart:async'; - import 'package:dio/dio.dart'; import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/locator_service.dart'; import 'package:eatvio_app/old/recipe/recipe_select_screen/models/recipe_select_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:image_picker/image_picker.dart'; -import '/core/app_export.dart'; - part 'recipe_select_event.dart'; part 'recipe_select_state.dart'; diff --git a/lib/old/recipe/recipe_select_screen/recipe_select_screen.dart b/lib/old/recipe/recipe_select_screen/recipe_select_screen.dart index d1320268..a871aa7f 100644 --- a/lib/old/recipe/recipe_select_screen/recipe_select_screen.dart +++ b/lib/old/recipe/recipe_select_screen/recipe_select_screen.dart @@ -1,9 +1,13 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; + import 'package:eatvio_app/widgets/app_bar/appbar_leading_image.dart'; import 'package:eatvio_app/widgets/app_bar/appbar_subtitle.dart'; import 'package:eatvio_app/widgets/app_bar/custom_app_bar.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'bloc/recipe_select_bloc.dart'; diff --git a/lib/old/recipe/recipe_show_screen/bloc/recipe_show_bloc.dart b/lib/old/recipe/recipe_show_screen/bloc/recipe_show_bloc.dart index bfd81864..763f68bf 100644 --- a/lib/old/recipe/recipe_show_screen/bloc/recipe_show_bloc.dart +++ b/lib/old/recipe/recipe_show_screen/bloc/recipe_show_bloc.dart @@ -1,18 +1,16 @@ import 'dart:async'; import 'dart:convert'; - import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/old/feed/blog_post_screen/models/comment_model.dart'; import 'package:eatvio_app/old/recipe/recipe_show_screen/models/recipe_show_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; import 'package:intl/intl.dart'; - -import '/core/app_export.dart'; - part 'recipe_show_event.dart'; part 'recipe_show_state.dart'; diff --git a/lib/old/recipe/recipe_show_screen/recipe_show_screen.dart b/lib/old/recipe/recipe_show_screen/recipe_show_screen.dart index 0a5b67ad..688e73c0 100644 --- a/lib/old/recipe/recipe_show_screen/recipe_show_screen.dart +++ b/lib/old/recipe/recipe_show_screen/recipe_show_screen.dart @@ -1,9 +1,17 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; + import 'package:eatvio_app/old/feed/blog_post_screen/widgets/comment_widget.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; +import 'package:eatvio_app/theme/custom_button_style.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:eatvio_app/widgets/custom_edit_text_form_field.dart'; +import 'package:eatvio_app/widgets/custom_image_view.dart'; import 'package:eatvio_app/widgets/custom_outlined_button.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:intl/intl.dart'; diff --git a/lib/old/recipe/recipe_show_screen/widgets/comment_widget.dart b/lib/old/recipe/recipe_show_screen/widgets/comment_widget.dart index 5eb3d53a..1ff8e7b8 100644 --- a/lib/old/recipe/recipe_show_screen/widgets/comment_widget.dart +++ b/lib/old/recipe/recipe_show_screen/widgets/comment_widget.dart @@ -1,17 +1,16 @@ -// ignore_for_file: must_be_immutable - import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; import 'package:eatvio_app/old/feed/blog_post_screen/models/comment_model.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; +import 'package:eatvio_app/widgets/custom_image_view.dart'; import 'package:flutter/material.dart'; class CommentWidget extends StatelessWidget { - CommentWidget(this.commentModelObj, {Key? key}) - : super( - key: key, - ); + const CommentWidget(this.commentModelObj); - CommentModel commentModelObj; + final CommentModel commentModelObj; @override Widget build(BuildContext context) { diff --git a/lib/old/users/subscribers_screen/bloc/subscribers_bloc.dart b/lib/old/users/subscribers_screen/bloc/subscribers_bloc.dart index d4adda62..e0087256 100644 --- a/lib/old/users/subscribers_screen/bloc/subscribers_bloc.dart +++ b/lib/old/users/subscribers_screen/bloc/subscribers_bloc.dart @@ -1,17 +1,15 @@ //import 'package:eatvio_app/old/auth/auth_screen/auth_screen.dart'; import 'dart:async'; import 'dart:convert'; - import 'package:eatvio_app/app_router.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; import 'package:eatvio_app/old/users/subscribers_screen/models/subscribers_model.dart'; import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; - -import '/core/app_export.dart'; - part 'subscribers_event.dart'; part 'subscribers_state.dart'; diff --git a/lib/old/users/subscribers_screen/subscribers_screen.dart b/lib/old/users/subscribers_screen/subscribers_screen.dart index 4d1caf23..cf1210fd 100644 --- a/lib/old/users/subscribers_screen/subscribers_screen.dart +++ b/lib/old/users/subscribers_screen/subscribers_screen.dart @@ -1,11 +1,16 @@ import 'package:cached_network_image/cached_network_image.dart'; -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; +import 'package:eatvio_app/core/utils/image_constant.dart'; + import 'package:eatvio_app/old/feed/feed_screen/widgets/feed_search_view.dart'; +import 'package:eatvio_app/theme/custom_button_style.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; import 'package:eatvio_app/widgets/app_bar/appbar_leading_image.dart'; import 'package:eatvio_app/widgets/app_bar/appbar_subtitle.dart'; import 'package:eatvio_app/widgets/app_bar/custom_app_bar.dart'; import 'package:eatvio_app/widgets/custom_outlined_button.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'bloc/subscribers_bloc.dart'; diff --git a/lib/theme/app_decoration.dart b/lib/theme/app_decoration.dart index c9d30536..bb6c590f 100644 --- a/lib/theme/app_decoration.dart +++ b/lib/theme/app_decoration.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; class AppDecoration { diff --git a/lib/theme/custom_button_style.dart b/lib/theme/custom_button_style.dart index a5eb6f88..57e3ca9e 100644 --- a/lib/theme/custom_button_style.dart +++ b/lib/theme/custom_button_style.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; /// A class that offers pre-defined button styles for customizing button appearance. diff --git a/lib/theme/custom_text_style.dart b/lib/theme/custom_text_style.dart index ee624454..7cf7b69e 100644 --- a/lib/theme/custom_text_style.dart +++ b/lib/theme/custom_text_style.dart @@ -1,7 +1,6 @@ +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; -import '../core/app_export.dart'; - /// A collection of pre-defined text styles for customizing text appearance, /// categorized by different font families and weights. /// Additionally, this class includes extensions on [TextStyle] to easily apply specific font families to text. diff --git a/lib/widgets/app_bar/appbar_leading_image.dart b/lib/widgets/app_bar/appbar_leading_image.dart index 5a2273a6..0f930dcb 100644 --- a/lib/widgets/app_bar/appbar_leading_image.dart +++ b/lib/widgets/app_bar/appbar_leading_image.dart @@ -1,22 +1,16 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/widgets/custom_image_view.dart'; import 'package:flutter/material.dart'; -// ignore: must_be_immutable class AppbarLeadingImage extends StatelessWidget { - AppbarLeadingImage({ - Key? key, + const AppbarLeadingImage({ this.imagePath, this.margin, this.onTap, - }) : super( - key: key, - ); + }); - String? imagePath; - - EdgeInsetsGeometry? margin; - - Function? onTap; + final String? imagePath; + final EdgeInsetsGeometry? margin; + final Function? onTap; @override Widget build(BuildContext context) { diff --git a/lib/widgets/app_bar/appbar_subtitle.dart b/lib/widgets/app_bar/appbar_subtitle.dart index 75784abc..ff1325f7 100644 --- a/lib/widgets/app_bar/appbar_subtitle.dart +++ b/lib/widgets/app_bar/appbar_subtitle.dart @@ -1,22 +1,17 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; -// ignore: must_be_immutable class AppbarSubtitle extends StatelessWidget { - AppbarSubtitle({ - Key? key, + const AppbarSubtitle({ required this.text, this.margin, this.onTap, - }) : super( - key: key, - ); + }); - String text; - - EdgeInsetsGeometry? margin; - - Function? onTap; + final String text; + final EdgeInsetsGeometry? margin; + final Function? onTap; @override Widget build(BuildContext context) { diff --git a/lib/widgets/app_bar/appbar_title_circleimage.dart b/lib/widgets/app_bar/appbar_title_circleimage.dart index bc6eb32d..3bf6925e 100644 --- a/lib/widgets/app_bar/appbar_title_circleimage.dart +++ b/lib/widgets/app_bar/appbar_title_circleimage.dart @@ -1,19 +1,15 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/app_decoration.dart'; +import 'package:eatvio_app/widgets/custom_image_view.dart'; import 'package:flutter/material.dart'; -// ignore: must_be_immutable class AppbarTitleCircleimage extends StatelessWidget { - AppbarTitleCircleimage({ - Key? key, + const AppbarTitleCircleimage({ this.imagePath, this.margin, - }) : super( - key: key, - ); + }); - String? imagePath; - - EdgeInsetsGeometry? margin; + final String? imagePath; + final EdgeInsetsGeometry? margin; @override Widget build(BuildContext context) { diff --git a/lib/widgets/app_bar/appbar_title_image.dart b/lib/widgets/app_bar/appbar_title_image.dart index 429ab4d8..cf7fedcf 100644 --- a/lib/widgets/app_bar/appbar_title_image.dart +++ b/lib/widgets/app_bar/appbar_title_image.dart @@ -1,7 +1,6 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/widgets/custom_image_view.dart'; import 'package:flutter/material.dart'; -// ignore: must_be_immutable class AppbarTitleImage extends StatelessWidget { const AppbarTitleImage({required this.imagePath, super.key}); diff --git a/lib/widgets/app_bar/exit_button.dart b/lib/widgets/app_bar/exit_button.dart index ee0d27dd..04cd6eac 100644 --- a/lib/widgets/app_bar/exit_button.dart +++ b/lib/widgets/app_bar/exit_button.dart @@ -1,22 +1,16 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; import 'package:flutter/material.dart'; -// ignore: must_be_immutable class ExitButton extends StatelessWidget { - ExitButton({ - Key? key, + const ExitButton({ required this.text, this.margin, this.onTap, - }) : super( - key: key, - ); + }); - String text; - - EdgeInsetsGeometry? margin; - - Function? onTap; + final String text; + final EdgeInsetsGeometry? margin; + final Function? onTap; @override Widget build(BuildContext context) { diff --git a/lib/widgets/custom_drop_down.dart b/lib/widgets/custom_drop_down.dart index 96367d61..9cc045b3 100644 --- a/lib/widgets/custom_drop_down.dart +++ b/lib/widgets/custom_drop_down.dart @@ -1,4 +1,5 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/data/models/selectionPopupModel/selection_popup_model.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; class CustomDropDown extends StatelessWidget { diff --git a/lib/widgets/custom_edit_drop_down.dart b/lib/widgets/custom_edit_drop_down.dart index 7f56bbd8..bc27e307 100644 --- a/lib/widgets/custom_edit_drop_down.dart +++ b/lib/widgets/custom_edit_drop_down.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/data/models/selectionPopupModel/selection_popup_model.dart'; import 'package:flutter/material.dart'; class CustomDropDown extends StatelessWidget { diff --git a/lib/widgets/custom_expandable_list.dart b/lib/widgets/custom_expandable_list.dart index d6a5c649..e6f3878a 100644 --- a/lib/widgets/custom_expandable_list.dart +++ b/lib/widgets/custom_expandable_list.dart @@ -1,13 +1,15 @@ import 'dart:convert'; - -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/token_storage.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:eatvio_app/old/profile/my_profile_screen/bloc/my_profile_bloc.dart'; +import 'package:eatvio_app/theme/custom_button_style.dart'; import 'package:eatvio_app/widgets/custom_hyper_switch.dart'; import 'package:eatvio_app/widgets/custom_hypo_switch.dart'; import 'package:eatvio_app/widgets/next_step_button.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; import 'package:http/http.dart' as http; import 'package:intl/intl.dart'; diff --git a/lib/widgets/custom_hyper_switch.dart b/lib/widgets/custom_hyper_switch.dart index b67f553a..93b1a340 100644 --- a/lib/widgets/custom_hyper_switch.dart +++ b/lib/widgets/custom_hyper_switch.dart @@ -1,5 +1,5 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/old/profile/my_profile_screen/bloc/my_profile_bloc.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; class HyperSwitch extends StatefulWidget { diff --git a/lib/widgets/custom_hypo_switch.dart b/lib/widgets/custom_hypo_switch.dart index 14a926fd..ab5e11ab 100644 --- a/lib/widgets/custom_hypo_switch.dart +++ b/lib/widgets/custom_hypo_switch.dart @@ -1,5 +1,5 @@ -import 'package:eatvio_app/core/app_export.dart'; import 'package:eatvio_app/old/profile/my_profile_screen/bloc/my_profile_bloc.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; class HypoSwitch extends StatefulWidget { diff --git a/lib/widgets/custom_navigation_menu_item.dart b/lib/widgets/custom_navigation_menu_item.dart index 3307daaf..44522866 100644 --- a/lib/widgets/custom_navigation_menu_item.dart +++ b/lib/widgets/custom_navigation_menu_item.dart @@ -1,4 +1,5 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; +import 'package:eatvio_app/widgets/custom_image_view.dart'; import 'package:flutter/material.dart'; class MenuItem extends StatelessWidget { diff --git a/lib/widgets/custom_notification_screen.dart b/lib/widgets/custom_notification_screen.dart index 72fd860b..20c2055b 100644 --- a/lib/widgets/custom_notification_screen.dart +++ b/lib/widgets/custom_notification_screen.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; class NotificationSwitch extends StatefulWidget { diff --git a/lib/widgets/custom_outlined_button.dart b/lib/widgets/custom_outlined_button.dart index 723cdbc0..549052f8 100644 --- a/lib/widgets/custom_outlined_button.dart +++ b/lib/widgets/custom_outlined_button.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/custom_text_style.dart'; import 'package:eatvio_app/widgets/base_button.dart'; import 'package:flutter/material.dart'; diff --git a/lib/widgets/custom_text_form_field.dart b/lib/widgets/custom_text_form_field.dart index a2b6c74f..60260b84 100644 --- a/lib/widgets/custom_text_form_field.dart +++ b/lib/widgets/custom_text_form_field.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; diff --git a/lib/widgets/next_step_button.dart b/lib/widgets/next_step_button.dart index 3fe62f86..05332f15 100644 --- a/lib/widgets/next_step_button.dart +++ b/lib/widgets/next_step_button.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:eatvio_app/widgets/base_button.dart'; import 'package:flutter/material.dart'; diff --git a/lib/widgets/nutrition_chart.dart b/lib/widgets/nutrition_chart.dart index 3fe62f86..05332f15 100644 --- a/lib/widgets/nutrition_chart.dart +++ b/lib/widgets/nutrition_chart.dart @@ -1,4 +1,4 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:eatvio_app/widgets/base_button.dart'; import 'package:flutter/material.dart'; diff --git a/pubspec.yaml b/pubspec.yaml index b894118d..3d91e2f8 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -17,14 +17,20 @@ dependencies: flutter_bloc: ^8.1.6 cached_network_image: ^3.4.1 flutter_svg: ^2.0.10+1 + # remove equatable: ^2.0.5 freezed_annotation: ^2.4.4 json_annotation: ^4.9.0 + # remove? validators: ^3.0.0 path_provider: ^2.1.4 + # remove? fl_chart: ^0.69.0 + # remove? flutter_spinkit: ^5.2.1 + # remove? carousel_slider_plus: ^7.0.1 + # remove? flutter_form_builder: ^9.4.1 image_picker: ^1.1.2 flutter_typeahead: ^5.2.0 @@ -50,10 +56,10 @@ dependencies: audioplayers: ^6.1.0 dev_dependencies: - build_runner: ^2.4.11 - freezed: ^2.5.2 + build_runner: ^2.4.12 + freezed: ^2.5.7 json_serializable: ^6.8.0 - retrofit_generator: ^8.2.0 + retrofit_generator: ^9.1.2 flutter_test: sdk: flutter diff --git a/test/auth_test.dart b/test/auth_test.dart index 49a9f19c..bc637b82 100644 --- a/test/auth_test.dart +++ b/test/auth_test.dart @@ -1,5 +1,6 @@ -import 'package:eatvio_app/core/app_export.dart'; +import 'package:eatvio_app/localization/app_localization.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_localizations/flutter_localizations.dart'; import 'package:eatvio_app/old/auth/auth_screen/auth_screen.dart'; @@ -8,8 +9,7 @@ import 'package:eatvio_app/old/auth/auth_screen/models/auth_model.dart'; void main() { group('AuthScreen', () { - testWidgets('renders AuthScreen with initial state', - (WidgetTester tester) async { + testWidgets('renders AuthScreen with initial state', (WidgetTester tester) async { final authBloc = AuthBloc(AuthState(authModelObj: AuthModel())); await tester.pumpWidget(