diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index beb32d21..02e1915a 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -365,7 +365,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 16; + CURRENT_PROJECT_VERSION = 44; DEVELOPMENT_TEAM = VL68C36HYS; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( @@ -383,7 +383,7 @@ "$(inherited)", "$(PROJECT_DIR)/Flutter", ); - MARKETING_VERSION = 2.0.0; + MARKETING_VERSION = 1.0.44; PRODUCT_BUNDLE_IDENTIFIER = com.eatvioapp.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -514,7 +514,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 16; + CURRENT_PROJECT_VERSION = 44; DEVELOPMENT_TEAM = VL68C36HYS; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( @@ -532,7 +532,7 @@ "$(inherited)", "$(PROJECT_DIR)/Flutter", ); - MARKETING_VERSION = 2.0.0; + MARKETING_VERSION = 1.0.44; PRODUCT_BUNDLE_IDENTIFIER = com.eatvioapp.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -551,7 +551,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 16; + CURRENT_PROJECT_VERSION = 44; DEVELOPMENT_TEAM = VL68C36HYS; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( @@ -569,7 +569,7 @@ "$(inherited)", "$(PROJECT_DIR)/Flutter", ); - MARKETING_VERSION = 2.0.0; + MARKETING_VERSION = 1.0.44; PRODUCT_BUNDLE_IDENTIFIER = com.eatvioapp.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; diff --git a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index 5e31d3d3..c53e2b31 100644 --- a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -48,6 +48,7 @@ ignoresPersistentStateOnLaunch = "NO" debugDocumentVersioning = "YES" debugServiceExtension = "internal" + enableGPUValidationMode = "1" allowLocationSimulation = "YES"> diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index d5b22884..cab95de7 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -2,6 +2,8 @@ + ITSAppUsesNonExemptEncryption + CADisableMinimumFrameDurationOnPhone CFBundleDevelopmentRegion diff --git a/lib/features/consultations/presentation/widgets/consultation_card_widget.dart b/lib/features/consultations/presentation/widgets/consultation_card_widget.dart index 74238726..84bc8e68 100644 --- a/lib/features/consultations/presentation/widgets/consultation_card_widget.dart +++ b/lib/features/consultations/presentation/widgets/consultation_card_widget.dart @@ -1,7 +1,9 @@ import 'package:eatvio_app/core/theme/theme_helper.dart'; import 'package:eatvio_app/core/widgets/custom_divider.dart'; import 'package:eatvio_app/features/consultations/entities/consultations_entity.dart'; +import 'package:eatvio_app/features/user_details/presentation/user_details_screen.dart'; import 'package:flutter/material.dart'; +import 'package:go_router/go_router.dart'; import 'package:table_calendar/table_calendar.dart'; class ConsultationCardWidget extends StatelessWidget { @@ -71,14 +73,19 @@ class ConsultationCardWidget extends StatelessWidget { ], ), const SizedBox(height: 12), - Text( - 'Анкета пользователя', - style: TextStyle( - color: appTheme.blueA400, - decoration: TextDecoration.underline, - decorationColor: appTheme.blueA400, - fontWeight: FontWeight.w500, - height: 1, + GestureDetector( + onTap: () { + GoRouter.of(context).pushNamed(UserDetailsScreen.name, extra: "id-754786b9-4ae6-4677-b847-1d05db44dfb9"); + }, + child: Text( + 'Анкета пользователя', + style: TextStyle( + color: appTheme.blueA400, + decoration: TextDecoration.underline, + decorationColor: appTheme.blueA400, + fontWeight: FontWeight.w500, + height: 1, + ), ), ), const SizedBox(height: 12), diff --git a/lib/features/user_details/presentation/user_details_screen.dart b/lib/features/user_details/presentation/user_details_screen.dart index 345bc895..49f90f1f 100644 --- a/lib/features/user_details/presentation/user_details_screen.dart +++ b/lib/features/user_details/presentation/user_details_screen.dart @@ -104,298 +104,300 @@ class _UserDetailsContentState extends State { ), ], ), - body: SingleChildScrollView( - controller: ScrollController() - ..addListener(() { - setState(() { - isMoreOptionsVisible = false; - }); - }), - child: Column( - mainAxisAlignment: MainAxisAlignment.start, - spacing: 12, - children: [ - SizedBox.shrink(), - _charts(), - ExpandableBouble( - initiallyExpanded: true, - title: s.general_info, - children: [ - Text( - s.date_of_birth, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: DateTime.parse(profileDetails.birthdate).format('dd.MM.yyyy')), - ), - SizedBox(height: 16), - Text( - s.sex, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.gender.parseGender()), - ), - SizedBox(height: 16), - ], - ), - ExpandableBouble( - title: s.physical_fitness, - children: [ - Row( - children: [ - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - s.height, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.height.toString()), - ), - ], - ), - ), - SizedBox(width: 8), - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - s.weight, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.weight.toStringAsFixed(0)), - ), - ], - ), - ), - ], - ), - SizedBox(height: 16), - Row( - children: [ - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - s.chest_circumference, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.chestCircumference.toString()), - ), - ], - ), - ), - SizedBox(width: 8), - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - s.waist_circumference, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.waistCircumference.toString()), - ), - ], - ), - ), - SizedBox(width: 8), - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - s.hip_circumference, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.hipCircumference.toString()), - ), - ], - ), - ), - ], - ), - SizedBox(height: 16), - ], - ), - ExpandableBouble( - title: s.pressure, - children: [ - Row( - children: [ - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - s.upper, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.bloodPressureUp.toString()), - ), - ], - ), - ), - SizedBox(width: 8), - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - s.lower, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.bloodPressureDown.toStringAsFixed(0)), - ), - ], - ), - ), - ], - ), - SizedBox(height: 16), - Row( - children: [ - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - s.has_hypo, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.hasHypo.toString()), - ), - ], - ), - ), - SizedBox(width: 8), - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - s.has_hyper, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.hasHyper.toString()), - ), - ], - ), - ), - ], - ), - SizedBox(height: 16), - ], - ), - ExpandableBouble( - title: s.other_info, - children: [ - Text( - s.has_alergy, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.aboutAlergy), - ), - SizedBox(height: 16), - Text( - s.takes_pills, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.aboutTakingPils), - ), - SizedBox(height: 16), - Text( - s.sport_hobbies, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.aboutSportHobbies), - ), - SizedBox(height: 16), - Text( - s.liked_groceries, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.favoriteFoods), - ), - SizedBox(height: 16), - Text( - s.not_liked_groceries, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - CustomTextFormField( - readOnly: true, - controller: TextEditingController(text: profileDetails.unfavoriteFoods), - ), - SizedBox(height: 16), - Text( - s.additional_information, - style: TextStyles.textSMedium.copyWith(color: appTheme.black), - ), - SizedBox(height: 4), - SizedBox( - height: 112, - child: CustomTextFormField( - readOnly: true, - maxLength: 1000, - maxLines: null, - minLines: null, - expands: true, - textAlignVertical: TextAlignVertical.top, - controller: TextEditingController(text: profileDetails.additionalInfo), + body: SafeArea( + child: SingleChildScrollView( + controller: ScrollController() + ..addListener(() { + setState(() { + isMoreOptionsVisible = false; + }); + }), + child: Column( + mainAxisAlignment: MainAxisAlignment.start, + spacing: 12, + children: [ + SizedBox.shrink(), + _charts(), + ExpandableBouble( + initiallyExpanded: true, + title: s.general_info, + children: [ + Text( + s.date_of_birth, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), ), - ), - SizedBox(height: 16), - ], - ), - ], + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: DateTime.parse(profileDetails.birthdate).format('dd.MM.yyyy')), + ), + SizedBox(height: 16), + Text( + s.sex, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.gender.parseGender()), + ), + SizedBox(height: 16), + ], + ), + ExpandableBouble( + title: s.physical_fitness, + children: [ + Row( + children: [ + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + s.height, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.height.toString()), + ), + ], + ), + ), + SizedBox(width: 8), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + s.weight, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.weight.toStringAsFixed(0)), + ), + ], + ), + ), + ], + ), + SizedBox(height: 16), + Row( + children: [ + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + s.chest_circumference, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.chestCircumference.toString()), + ), + ], + ), + ), + SizedBox(width: 8), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + s.waist_circumference, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.waistCircumference.toString()), + ), + ], + ), + ), + SizedBox(width: 8), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + s.hip_circumference, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.hipCircumference.toString()), + ), + ], + ), + ), + ], + ), + SizedBox(height: 16), + ], + ), + ExpandableBouble( + title: s.pressure, + children: [ + Row( + children: [ + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + s.upper, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.bloodPressureUp.toString()), + ), + ], + ), + ), + SizedBox(width: 8), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + s.lower, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.bloodPressureDown.toStringAsFixed(0)), + ), + ], + ), + ), + ], + ), + SizedBox(height: 16), + Row( + children: [ + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + s.has_hypo, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.hasHypo.toString()), + ), + ], + ), + ), + SizedBox(width: 8), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + s.has_hyper, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.hasHyper.toString()), + ), + ], + ), + ), + ], + ), + SizedBox(height: 16), + ], + ), + ExpandableBouble( + title: s.other_info, + children: [ + Text( + s.has_alergy, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.aboutAlergy), + ), + SizedBox(height: 16), + Text( + s.takes_pills, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.aboutTakingPils), + ), + SizedBox(height: 16), + Text( + s.sport_hobbies, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.aboutSportHobbies), + ), + SizedBox(height: 16), + Text( + s.liked_groceries, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.favoriteFoods), + ), + SizedBox(height: 16), + Text( + s.not_liked_groceries, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + CustomTextFormField( + readOnly: true, + controller: TextEditingController(text: profileDetails.unfavoriteFoods), + ), + SizedBox(height: 16), + Text( + s.additional_information, + style: TextStyles.textSMedium.copyWith(color: appTheme.black), + ), + SizedBox(height: 4), + SizedBox( + height: 112, + child: CustomTextFormField( + readOnly: true, + maxLength: 1000, + maxLines: null, + minLines: null, + expands: true, + textAlignVertical: TextAlignVertical.top, + controller: TextEditingController(text: profileDetails.additionalInfo), + ), + ), + SizedBox(height: 16), + ], + ), + ], + ), ), ), ); diff --git a/pubspec.yaml b/pubspec.yaml index 652a2efd..1f33f933 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: eatvio_app description: A new Flutter project. -version: 1.0.41+40 +version: 1.0.44+44 publish_to: 'none' environment: