From 41d8a384715749f9ce10e7b66280cdba7f31a9a9 Mon Sep 17 00:00:00 2001 From: jahongireshonqulov Date: Thu, 23 Oct 2025 19:34:54 +0500 Subject: [PATCH] Initial commit --- .gitignore | 45 + .metadata | 33 + README.md | 19 + analysis_options.yaml | 28 + android/.gitignore | 14 + android/app/build.gradle.kts | 44 + android/app/src/debug/AndroidManifest.xml | 7 + android/app/src/main/AndroidManifest.xml | 45 + .../food_delivery_client/MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values-night/styles.xml | 18 + android/app/src/main/res/values/styles.xml | 18 + android/app/src/profile/AndroidManifest.xml | 7 + android/build.gradle.kts | 24 + android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 5 + android/settings.gradle.kts | 26 + assets/fonts/UberMoveTextBold.otf | Bin 0 -> 57888 bytes assets/fonts/UberMoveTextLight.otf | Bin 0 -> 56292 bytes assets/fonts/UberMoveTextMedium.otf | Bin 0 -> 56560 bytes assets/fonts/UberMoveTextRegular.otf | Bin 0 -> 56072 bytes assets/icons/ic_account.svg | 3 + assets/icons/ic_account_active.svg | 3 + assets/icons/ic_allergy_friendly.png | Bin 0 -> 23371 bytes assets/icons/ic_arrow_btm.svg | 3 + assets/icons/ic_back.svg | 3 + assets/icons/ic_basket.svg | 3 + assets/icons/ic_basket_active.svg | 3 + assets/icons/ic_best.png | Bin 0 -> 16039 bytes assets/icons/ic_browse.svg | 6 + assets/icons/ic_browse_active.svg | 6 + assets/icons/ic_check.svg | 3 + assets/icons/ic_deals.svg | 3 + assets/icons/ic_delivery_time.svg | 8 + assets/icons/ic_dislike.svg | 3 + assets/icons/ic_eat.svg | 3 + assets/icons/ic_edit.svg | 3 + assets/icons/ic_empty_basket.svg | 38 + assets/icons/ic_eye.svg | 10 + assets/icons/ic_filter.svg | 6 + assets/icons/ic_gluten_free.png | Bin 0 -> 23780 bytes assets/icons/ic_home.svg | 5 + assets/icons/ic_home_active.svg | 3 + assets/icons/ic_location.svg | 3 + assets/icons/ic_next.svg | 3 + assets/icons/ic_next_grey.svg | 3 + assets/icons/ic_orders.png | Bin 0 -> 16608 bytes assets/icons/ic_oval.svg | 3 + assets/icons/ic_picked.svg | 6 + assets/icons/ic_popular.svg | 3 + assets/icons/ic_rating.svg | 3 + assets/icons/ic_uber.svg | 3 + assets/icons/ic_vegen.png | Bin 0 -> 22826 bytes assets/icons/ic_vegetarian.png | Bin 0 -> 18724 bytes assets/images/img_alcohol.png | Bin 0 -> 3101 bytes assets/images/img_american.png | Bin 0 -> 5821 bytes assets/images/img_asian.png | Bin 0 -> 8109 bytes assets/images/img_burger.png | Bin 0 -> 6850 bytes assets/images/img_carribean.png | Bin 0 -> 10515 bytes assets/images/img_chinese.png | Bin 0 -> 8373 bytes assets/images/img_convenience.png | Bin 0 -> 6583 bytes assets/images/img_desert.png | Bin 0 -> 6629 bytes assets/images/img_fast_food.png | Bin 0 -> 7880 bytes assets/images/img_flowers.png | Bin 0 -> 27117 bytes assets/images/img_french.png | Bin 0 -> 9038 bytes assets/images/img_grocery.png | Bin 0 -> 3682 bytes assets/images/img_halal.png | Bin 0 -> 10054 bytes assets/images/img_ice_cream.png | Bin 0 -> 7531 bytes assets/images/img_indian.png | Bin 0 -> 8903 bytes assets/images/img_pet_supplies.png | Bin 0 -> 24505 bytes assets/images/img_pick_up.png | Bin 0 -> 52838 bytes assets/images/img_retails.png | Bin 0 -> 23089 bytes assets/images/img_ride.png | Bin 0 -> 81878 bytes assets/images/img_speciality.jpg | Bin 0 -> 4655 bytes assets/images/img_takeout.png | Bin 0 -> 4191 bytes assets/translations/app_en.arb | 56 + assets/translations/app_ru.arb | 62 ++ assets/translations/app_uz.arb | 61 ++ devtools_options.yaml | 3 + ios/.gitignore | 34 + ios/Flutter/AppFrameworkInfo.plist | 26 + ios/Flutter/Debug.xcconfig | 2 + ios/Flutter/Release.xcconfig | 2 + ios/Podfile | 43 + ios/Podfile.lock | 37 + ios/Runner.xcodeproj/project.pbxproj | 731 +++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 101 ++ .../contents.xcworkspacedata | 10 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 +++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 1418 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + ios/Runner/Base.lproj/LaunchScreen.storyboard | 37 + ios/Runner/Base.lproj/Main.storyboard | 26 + ios/Runner/Info.plist | 49 + ios/Runner/Runner-Bridging-Header.h | 1 + ios/RunnerTests/RunnerTests.swift | 12 + l10n.yaml | 4 + lib/core/constants/app_locale_keys.dart | 12 + lib/core/constants/constants.dart | 4 + lib/core/constants/l10n.dart | 9 + lib/core/constants/sizes_consts.dart | 803 +++++++++++++++ lib/core/constants/time_delay_cons.dart | 6 + lib/core/core.dart | 14 + lib/core/di/injection_container.config.dart | 44 + lib/core/di/injection_container.dart | 13 + .../extensions/build_context_extensions.dart | 12 + lib/core/extensions/color_extensions.dart | 12 + lib/core/extensions/extensions.dart | 4 + lib/core/extensions/padding_extensions.dart | 43 + lib/core/extensions/size_extensions.dart | 7 + lib/core/helpers/bloc_observer.dart | 28 + lib/core/helpers/enum_helpers.dart | 20 + lib/core/helpers/helpers.dart | 2 + lib/core/l10n/app_localizations.dart | 366 +++++++ lib/core/l10n/app_localizations_en.dart | 129 +++ lib/core/l10n/app_localizations_ru.dart | 130 +++ lib/core/l10n/app_localizations_uz.dart | 130 +++ lib/core/router/app_routes.dart | 27 + lib/core/router/routes_name.dart | 8 + lib/core/services/services.dart | 1 + lib/core/services/storage_service.dart | 32 + lib/core/theme/app_colors.dart | 23 + lib/core/theme/app_icons.dart | 27 + lib/core/theme/app_images.dart | 27 + lib/core/theme/app_textstyles.dart | 87 ++ lib/core/theme/app_theme.dart | 64 ++ lib/core/theme/theme.dart | 5 + lib/core/utils/app_utils.dart | 90 ++ lib/feature/account/account.dart | 1 + .../pages/account_page/account_page.dart | 42 + lib/feature/basket/basket.dart | 1 + .../pages/basket_page/basket_page.dart | 12 + lib/feature/browse/browse.dart | 1 + .../pages/browse_page/browse_page.dart | 12 + lib/feature/common/common.dart | 2 + .../blocs/language_bloc/language_bloc.dart | 36 + .../language_bloc/language_bloc.freezed.dart | 535 ++++++++++ .../blocs/language_bloc/language_event.dart | 8 + .../blocs/language_bloc/language_state.dart | 7 + .../presentation/widgets/w_divider.dart | 25 + .../presentation/widgets/w_food_item.dart | 144 +++ .../common/presentation/widgets/w_layout.dart | 24 + .../presentation/widgets/w_see_all_raw.dart | 21 + .../widgets/w_stories_list_item.dart | 33 + .../common/presentation/widgets/widgets.dart | 5 + lib/feature/home/home.dart | 11 + .../blocs/home_bloc/home_bloc.dart | 17 + .../blocs/home_bloc/home_bloc.freezed.dart | 535 ++++++++++ .../blocs/home_bloc/home_event.dart | 8 + .../blocs/home_bloc/home_state.dart | 8 + .../presentation/mixins/categories_mixin.dart | 26 + .../presentation/mixins/home_page_mixins.dart | 3 + .../categories_page/categories_page.dart | 73 ++ .../pages/home_page/home_page.dart | 34 + .../home_page/widgets/pick_it_for_free.dart | 121 +++ .../widgets/w_categories_header_item.dart | 51 + .../home_page/widgets/w_delivery_header.dart | 72 ++ .../home_page/widgets/w_discount_part.dart | 25 + .../home_page/widgets/w_home_headers.dart | 54 + .../widgets/w_offers_carouseL_slider.dart | 103 ++ .../home_page/widgets/w_popular_near_you.dart | 58 ++ .../pages/home_page/widgets/w_quick_eats.dart | 0 .../home_page/widgets/w_todays_offers.dart | 66 ++ .../presentation/widgets/w_category_item.dart | 47 + lib/feature/main/main.dart | 3 + .../blocs/main_bloc/main_bloc.dart | 18 + .../blocs/main_bloc/main_bloc.freezed.dart | 538 ++++++++++ .../blocs/main_bloc/main_event.dart | 8 + .../blocs/main_bloc/main_state.dart | 10 + .../presentation/mixins/main_page_mixin.dart | 28 + .../pages/main_page/main_page.dart | 40 + lib/feature/on_boarding/on_boarding.dart | 0 .../blocs/splash_bloc/splash_bloc.dart | 19 + .../splash_bloc/splash_bloc.freezed.dart | 463 +++++++++ .../blocs/splash_bloc/splash_event.dart | 6 + .../blocs/splash_bloc/splash_state.dart | 8 + .../pages/splash_page/splash_page.dart | 37 + lib/food_delivery_client.dart | 21 + lib/main.dart | 75 ++ pubspec.lock | 967 ++++++++++++++++++ pubspec.yaml | 80 ++ test/widget_test.dart | 30 + 212 files changed, 8757 insertions(+) create mode 100644 .gitignore create mode 100644 .metadata create mode 100644 README.md create mode 100644 analysis_options.yaml create mode 100755 android/.gitignore create mode 100644 android/app/build.gradle.kts create mode 100644 android/app/src/debug/AndroidManifest.xml create mode 100644 android/app/src/main/AndroidManifest.xml create mode 100644 android/app/src/main/kotlin/com/example/food_delivery_client/MainActivity.kt create mode 100755 android/app/src/main/res/drawable-v21/launch_background.xml create mode 100755 android/app/src/main/res/drawable/launch_background.xml create mode 100755 android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100755 android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100755 android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100755 android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100755 android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100755 android/app/src/main/res/values-night/styles.xml create mode 100755 android/app/src/main/res/values/styles.xml create mode 100644 android/app/src/profile/AndroidManifest.xml create mode 100644 android/build.gradle.kts create mode 100644 android/gradle.properties create mode 100644 android/gradle/wrapper/gradle-wrapper.properties create mode 100644 android/settings.gradle.kts create mode 100644 assets/fonts/UberMoveTextBold.otf create mode 100644 assets/fonts/UberMoveTextLight.otf create mode 100644 assets/fonts/UberMoveTextMedium.otf create mode 100644 assets/fonts/UberMoveTextRegular.otf create mode 100644 assets/icons/ic_account.svg create mode 100644 assets/icons/ic_account_active.svg create mode 100644 assets/icons/ic_allergy_friendly.png create mode 100644 assets/icons/ic_arrow_btm.svg create mode 100644 assets/icons/ic_back.svg create mode 100644 assets/icons/ic_basket.svg create mode 100644 assets/icons/ic_basket_active.svg create mode 100644 assets/icons/ic_best.png create mode 100644 assets/icons/ic_browse.svg create mode 100644 assets/icons/ic_browse_active.svg create mode 100644 assets/icons/ic_check.svg create mode 100644 assets/icons/ic_deals.svg create mode 100644 assets/icons/ic_delivery_time.svg create mode 100644 assets/icons/ic_dislike.svg create mode 100644 assets/icons/ic_eat.svg create mode 100644 assets/icons/ic_edit.svg create mode 100644 assets/icons/ic_empty_basket.svg create mode 100644 assets/icons/ic_eye.svg create mode 100644 assets/icons/ic_filter.svg create mode 100644 assets/icons/ic_gluten_free.png create mode 100644 assets/icons/ic_home.svg create mode 100644 assets/icons/ic_home_active.svg create mode 100644 assets/icons/ic_location.svg create mode 100644 assets/icons/ic_next.svg create mode 100644 assets/icons/ic_next_grey.svg create mode 100644 assets/icons/ic_orders.png create mode 100644 assets/icons/ic_oval.svg create mode 100644 assets/icons/ic_picked.svg create mode 100644 assets/icons/ic_popular.svg create mode 100644 assets/icons/ic_rating.svg create mode 100644 assets/icons/ic_uber.svg create mode 100644 assets/icons/ic_vegen.png create mode 100644 assets/icons/ic_vegetarian.png create mode 100644 assets/images/img_alcohol.png create mode 100644 assets/images/img_american.png create mode 100644 assets/images/img_asian.png create mode 100644 assets/images/img_burger.png create mode 100644 assets/images/img_carribean.png create mode 100644 assets/images/img_chinese.png create mode 100644 assets/images/img_convenience.png create mode 100644 assets/images/img_desert.png create mode 100644 assets/images/img_fast_food.png create mode 100644 assets/images/img_flowers.png create mode 100644 assets/images/img_french.png create mode 100644 assets/images/img_grocery.png create mode 100644 assets/images/img_halal.png create mode 100644 assets/images/img_ice_cream.png create mode 100644 assets/images/img_indian.png create mode 100644 assets/images/img_pet_supplies.png create mode 100644 assets/images/img_pick_up.png create mode 100644 assets/images/img_retails.png create mode 100644 assets/images/img_ride.png create mode 100644 assets/images/img_speciality.jpg create mode 100644 assets/images/img_takeout.png create mode 100644 assets/translations/app_en.arb create mode 100644 assets/translations/app_ru.arb create mode 100644 assets/translations/app_uz.arb create mode 100644 devtools_options.yaml create mode 100755 ios/.gitignore create mode 100755 ios/Flutter/AppFrameworkInfo.plist create mode 100755 ios/Flutter/Debug.xcconfig create mode 100755 ios/Flutter/Release.xcconfig create mode 100755 ios/Podfile create mode 100644 ios/Podfile.lock create mode 100644 ios/Runner.xcodeproj/project.pbxproj create mode 100755 ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100755 ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100755 ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100755 ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100755 ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100755 ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100755 ios/Runner/AppDelegate.swift create mode 100755 ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100755 ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100755 ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100755 ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100755 ios/Runner/Base.lproj/Main.storyboard create mode 100644 ios/Runner/Info.plist create mode 100755 ios/Runner/Runner-Bridging-Header.h create mode 100644 ios/RunnerTests/RunnerTests.swift create mode 100644 l10n.yaml create mode 100644 lib/core/constants/app_locale_keys.dart create mode 100644 lib/core/constants/constants.dart create mode 100644 lib/core/constants/l10n.dart create mode 100644 lib/core/constants/sizes_consts.dart create mode 100644 lib/core/constants/time_delay_cons.dart create mode 100644 lib/core/core.dart create mode 100644 lib/core/di/injection_container.config.dart create mode 100644 lib/core/di/injection_container.dart create mode 100644 lib/core/extensions/build_context_extensions.dart create mode 100644 lib/core/extensions/color_extensions.dart create mode 100644 lib/core/extensions/extensions.dart create mode 100644 lib/core/extensions/padding_extensions.dart create mode 100644 lib/core/extensions/size_extensions.dart create mode 100644 lib/core/helpers/bloc_observer.dart create mode 100644 lib/core/helpers/enum_helpers.dart create mode 100644 lib/core/helpers/helpers.dart create mode 100644 lib/core/l10n/app_localizations.dart create mode 100644 lib/core/l10n/app_localizations_en.dart create mode 100644 lib/core/l10n/app_localizations_ru.dart create mode 100644 lib/core/l10n/app_localizations_uz.dart create mode 100644 lib/core/router/app_routes.dart create mode 100644 lib/core/router/routes_name.dart create mode 100644 lib/core/services/services.dart create mode 100644 lib/core/services/storage_service.dart create mode 100644 lib/core/theme/app_colors.dart create mode 100644 lib/core/theme/app_icons.dart create mode 100644 lib/core/theme/app_images.dart create mode 100644 lib/core/theme/app_textstyles.dart create mode 100644 lib/core/theme/app_theme.dart create mode 100644 lib/core/theme/theme.dart create mode 100644 lib/core/utils/app_utils.dart create mode 100644 lib/feature/account/account.dart create mode 100644 lib/feature/account/presentation/pages/account_page/account_page.dart create mode 100644 lib/feature/basket/basket.dart create mode 100644 lib/feature/basket/presentation/pages/basket_page/basket_page.dart create mode 100644 lib/feature/browse/browse.dart create mode 100644 lib/feature/browse/presentation/pages/browse_page/browse_page.dart create mode 100644 lib/feature/common/common.dart create mode 100644 lib/feature/common/presentation/blocs/language_bloc/language_bloc.dart create mode 100644 lib/feature/common/presentation/blocs/language_bloc/language_bloc.freezed.dart create mode 100644 lib/feature/common/presentation/blocs/language_bloc/language_event.dart create mode 100644 lib/feature/common/presentation/blocs/language_bloc/language_state.dart create mode 100644 lib/feature/common/presentation/widgets/w_divider.dart create mode 100644 lib/feature/common/presentation/widgets/w_food_item.dart create mode 100644 lib/feature/common/presentation/widgets/w_layout.dart create mode 100644 lib/feature/common/presentation/widgets/w_see_all_raw.dart create mode 100644 lib/feature/common/presentation/widgets/w_stories_list_item.dart create mode 100644 lib/feature/common/presentation/widgets/widgets.dart create mode 100644 lib/feature/home/home.dart create mode 100644 lib/feature/home/presentation/blocs/home_bloc/home_bloc.dart create mode 100644 lib/feature/home/presentation/blocs/home_bloc/home_bloc.freezed.dart create mode 100644 lib/feature/home/presentation/blocs/home_bloc/home_event.dart create mode 100644 lib/feature/home/presentation/blocs/home_bloc/home_state.dart create mode 100644 lib/feature/home/presentation/mixins/categories_mixin.dart create mode 100644 lib/feature/home/presentation/mixins/home_page_mixins.dart create mode 100644 lib/feature/home/presentation/pages/categories_page/categories_page.dart create mode 100644 lib/feature/home/presentation/pages/home_page/home_page.dart create mode 100644 lib/feature/home/presentation/pages/home_page/widgets/pick_it_for_free.dart create mode 100644 lib/feature/home/presentation/pages/home_page/widgets/w_categories_header_item.dart create mode 100644 lib/feature/home/presentation/pages/home_page/widgets/w_delivery_header.dart create mode 100644 lib/feature/home/presentation/pages/home_page/widgets/w_discount_part.dart create mode 100644 lib/feature/home/presentation/pages/home_page/widgets/w_home_headers.dart create mode 100644 lib/feature/home/presentation/pages/home_page/widgets/w_offers_carouseL_slider.dart create mode 100644 lib/feature/home/presentation/pages/home_page/widgets/w_popular_near_you.dart create mode 100644 lib/feature/home/presentation/pages/home_page/widgets/w_quick_eats.dart create mode 100644 lib/feature/home/presentation/pages/home_page/widgets/w_todays_offers.dart create mode 100644 lib/feature/home/presentation/widgets/w_category_item.dart create mode 100644 lib/feature/main/main.dart create mode 100644 lib/feature/main/presentation/blocs/main_bloc/main_bloc.dart create mode 100644 lib/feature/main/presentation/blocs/main_bloc/main_bloc.freezed.dart create mode 100644 lib/feature/main/presentation/blocs/main_bloc/main_event.dart create mode 100644 lib/feature/main/presentation/blocs/main_bloc/main_state.dart create mode 100644 lib/feature/main/presentation/mixins/main_page_mixin.dart create mode 100644 lib/feature/main/presentation/pages/main_page/main_page.dart create mode 100644 lib/feature/on_boarding/on_boarding.dart create mode 100644 lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_bloc.dart create mode 100644 lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_bloc.freezed.dart create mode 100644 lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_event.dart create mode 100644 lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_state.dart create mode 100644 lib/feature/on_boarding/presentation/pages/splash_page/splash_page.dart create mode 100644 lib/food_delivery_client.dart create mode 100644 lib/main.dart create mode 100644 pubspec.lock create mode 100644 pubspec.yaml create mode 100644 test/widget_test.dart diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3820a95 --- /dev/null +++ b/.gitignore @@ -0,0 +1,45 @@ +# Miscellaneous +*.class +*.log +*.pyc +*.swp +.DS_Store +.atom/ +.build/ +.buildlog/ +.history +.svn/ +.swiftpm/ +migrate_working_dir/ + +# IntelliJ related +*.iml +*.ipr +*.iws +.idea/ + +# The .vscode folder contains launch configuration and tasks you configure in +# VS Code which you may wish to be included in version control, so this line +# is commented out by default. +#.vscode/ + +# Flutter/Dart/Pub related +**/doc/api/ +**/ios/Flutter/.last_build_id +.dart_tool/ +.flutter-plugins-dependencies +.pub-cache/ +.pub/ +/build/ +/coverage/ + +# Symbolication related +app.*.symbols + +# Obfuscation related +app.*.map.json + +# Android Studio will place build artifacts here +/android/app/debug +/android/app/profile +/android/app/release diff --git a/.metadata b/.metadata new file mode 100644 index 0000000..a574790 --- /dev/null +++ b/.metadata @@ -0,0 +1,33 @@ +# This file tracks properties of this Flutter project. +# Used by Flutter tool to assess capabilities and perform upgrades etc. +# +# This file should be version controlled and should not be manually edited. + +version: + revision: "05db9689081f091050f01aed79f04dce0c750154" + channel: "stable" + +project_type: app + +# Tracks metadata for the flutter migrate command +migration: + platforms: + - platform: root + create_revision: 05db9689081f091050f01aed79f04dce0c750154 + base_revision: 05db9689081f091050f01aed79f04dce0c750154 + - platform: android + create_revision: 05db9689081f091050f01aed79f04dce0c750154 + base_revision: 05db9689081f091050f01aed79f04dce0c750154 + - platform: ios + create_revision: 05db9689081f091050f01aed79f04dce0c750154 + base_revision: 05db9689081f091050f01aed79f04dce0c750154 + + # User provided section + + # List of Local paths (relative to this file) that should be + # ignored by the migrate tool. + # + # Files that are not part of the templates will be ignored by default. + unmanaged_files: + - 'lib/main.dart' + - 'ios/Runner.xcodeproj/project.pbxproj' diff --git a/README.md b/README.md new file mode 100644 index 0000000..9d48a7f --- /dev/null +++ b/README.md @@ -0,0 +1,19 @@ +# food_delivery_client + +A new Flutter project. + +## Getting Started + +This project is a starting point for a Flutter application. + +A few resources to get you started if this is your first Flutter project: + +- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) +- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) + +For help getting started with Flutter development, view the +[online documentation](https://docs.flutter.dev/), which offers tutorials, +samples, guidance on mobile development, and a full API reference. + +flutter packages pub run build_runner watch + diff --git a/analysis_options.yaml b/analysis_options.yaml new file mode 100644 index 0000000..0d29021 --- /dev/null +++ b/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/android/.gitignore b/android/.gitignore new file mode 100755 index 0000000..be3943c --- /dev/null +++ b/android/.gitignore @@ -0,0 +1,14 @@ +gradle-wrapper.jar +/.gradle +/captures/ +/gradlew +/gradlew.bat +/local.properties +GeneratedPluginRegistrant.java +.cxx/ + +# Remember to never publicly share your keystore. +# See https://flutter.dev/to/reference-keystore +key.properties +**/*.keystore +**/*.jks diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts new file mode 100644 index 0000000..164e5f0 --- /dev/null +++ b/android/app/build.gradle.kts @@ -0,0 +1,44 @@ +plugins { + id("com.android.application") + id("kotlin-android") + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id("dev.flutter.flutter-gradle-plugin") +} + +android { + namespace = "com.example.food_delivery_client" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11.toString() + } + + defaultConfig { + // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). + applicationId = "com.example.food_delivery_client" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = flutter.minSdkVersion + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig = signingConfigs.getByName("debug") + } + } +} + +flutter { + source = "../.." +} diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 0000000..399f698 --- /dev/null +++ b/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..c9fac6b --- /dev/null +++ b/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/android/app/src/main/kotlin/com/example/food_delivery_client/MainActivity.kt b/android/app/src/main/kotlin/com/example/food_delivery_client/MainActivity.kt new file mode 100644 index 0000000..ea18492 --- /dev/null +++ b/android/app/src/main/kotlin/com/example/food_delivery_client/MainActivity.kt @@ -0,0 +1,5 @@ +package com.example.food_delivery_client + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity : FlutterActivity() diff --git a/android/app/src/main/res/drawable-v21/launch_background.xml b/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100755 index 0000000..f74085f --- /dev/null +++ b/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/android/app/src/main/res/drawable/launch_background.xml b/android/app/src/main/res/drawable/launch_background.xml new file mode 100755 index 0000000..304732f --- /dev/null +++ b/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/values-night/styles.xml b/android/app/src/main/res/values-night/styles.xml new file mode 100755 index 0000000..06952be --- /dev/null +++ b/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml new file mode 100755 index 0000000..cb1ef88 --- /dev/null +++ b/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/android/app/src/profile/AndroidManifest.xml b/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 0000000..399f698 --- /dev/null +++ b/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/android/build.gradle.kts b/android/build.gradle.kts new file mode 100644 index 0000000..dbee657 --- /dev/null +++ b/android/build.gradle.kts @@ -0,0 +1,24 @@ +allprojects { + repositories { + google() + mavenCentral() + } +} + +val newBuildDir: Directory = + rootProject.layout.buildDirectory + .dir("../../build") + .get() +rootProject.layout.buildDirectory.value(newBuildDir) + +subprojects { + val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name) + project.layout.buildDirectory.value(newSubprojectBuildDir) +} +subprojects { + project.evaluationDependsOn(":app") +} + +tasks.register("clean") { + delete(rootProject.layout.buildDirectory) +} diff --git a/android/gradle.properties b/android/gradle.properties new file mode 100644 index 0000000..f018a61 --- /dev/null +++ b/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..ac3b479 --- /dev/null +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-all.zip diff --git a/android/settings.gradle.kts b/android/settings.gradle.kts new file mode 100644 index 0000000..fb605bc --- /dev/null +++ b/android/settings.gradle.kts @@ -0,0 +1,26 @@ +pluginManagement { + val flutterSdkPath = + run { + val properties = java.util.Properties() + file("local.properties").inputStream().use { properties.load(it) } + val flutterSdkPath = properties.getProperty("flutter.sdk") + require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" } + flutterSdkPath + } + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id("dev.flutter.flutter-plugin-loader") version "1.0.0" + id("com.android.application") version "8.9.1" apply false + id("org.jetbrains.kotlin.android") version "2.1.0" apply false +} + +include(":app") diff --git a/assets/fonts/UberMoveTextBold.otf b/assets/fonts/UberMoveTextBold.otf new file mode 100644 index 0000000000000000000000000000000000000000..979fbc156fa1f5de8e28be55af29bc2d99b45729 GIT binary patch literal 57888 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 Gm;En^Z@{Ji literal 0 HcmV?d00001 diff --git a/assets/fonts/UberMoveTextLight.otf b/assets/fonts/UberMoveTextLight.otf new file mode 100644 index 0000000000000000000000000000000000000000..75ca07e6cd4bae617618197feb515280e745ee35 GIT binary patch literal 56292 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 z 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 Nj469#On;5b{vY530TBQI literal 0 HcmV?d00001 diff --git a/assets/fonts/UberMoveTextRegular.otf b/assets/fonts/UberMoveTextRegular.otf new file mode 100644 index 0000000000000000000000000000000000000000..834b0de8a39a2e39138d365b2e11a04ef5c01599 GIT binary patch literal 56072 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 + + diff --git a/assets/icons/ic_account_active.svg b/assets/icons/ic_account_active.svg new file mode 100644 index 0000000..c71af2c --- /dev/null +++ b/assets/icons/ic_account_active.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_allergy_friendly.png b/assets/icons/ic_allergy_friendly.png new file mode 100644 index 0000000000000000000000000000000000000000..589a2815d8a5528dcbc8c781f8c03cd18c78ed37 GIT binary patch literal 23371 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 ZjVR)U-DgG%Ja)j3;OupV + + diff --git a/assets/icons/ic_back.svg b/assets/icons/ic_back.svg new file mode 100644 index 0000000..03ec0db --- /dev/null +++ b/assets/icons/ic_back.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_basket.svg b/assets/icons/ic_basket.svg new file mode 100644 index 0000000..ace7342 --- /dev/null +++ b/assets/icons/ic_basket.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_basket_active.svg b/assets/icons/ic_basket_active.svg new file mode 100644 index 0000000..0f9f559 --- /dev/null +++ b/assets/icons/ic_basket_active.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_best.png b/assets/icons/ic_best.png new file mode 100644 index 0000000000000000000000000000000000000000..8bcea146dfe59d87a5528b17ddfe5d698dae273b GIT binary patch literal 16039 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 + + + + + diff --git a/assets/icons/ic_browse_active.svg b/assets/icons/ic_browse_active.svg new file mode 100644 index 0000000..4f9beea --- /dev/null +++ b/assets/icons/ic_browse_active.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/assets/icons/ic_check.svg b/assets/icons/ic_check.svg new file mode 100644 index 0000000..82387ec --- /dev/null +++ b/assets/icons/ic_check.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_deals.svg b/assets/icons/ic_deals.svg new file mode 100644 index 0000000..a6210fb --- /dev/null +++ b/assets/icons/ic_deals.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_delivery_time.svg b/assets/icons/ic_delivery_time.svg new file mode 100644 index 0000000..fdc8a5b --- /dev/null +++ b/assets/icons/ic_delivery_time.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/assets/icons/ic_dislike.svg b/assets/icons/ic_dislike.svg new file mode 100644 index 0000000..9f571ac --- /dev/null +++ b/assets/icons/ic_dislike.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_eat.svg b/assets/icons/ic_eat.svg new file mode 100644 index 0000000..66c47ee --- /dev/null +++ b/assets/icons/ic_eat.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_edit.svg b/assets/icons/ic_edit.svg new file mode 100644 index 0000000..e4e6747 --- /dev/null +++ b/assets/icons/ic_edit.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_empty_basket.svg b/assets/icons/ic_empty_basket.svg new file mode 100644 index 0000000..4d06763 --- /dev/null +++ b/assets/icons/ic_empty_basket.svg @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/icons/ic_eye.svg b/assets/icons/ic_eye.svg new file mode 100644 index 0000000..9c30879 --- /dev/null +++ b/assets/icons/ic_eye.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/assets/icons/ic_filter.svg b/assets/icons/ic_filter.svg new file mode 100644 index 0000000..6562b91 --- /dev/null +++ b/assets/icons/ic_filter.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/assets/icons/ic_gluten_free.png b/assets/icons/ic_gluten_free.png new file mode 100644 index 0000000000000000000000000000000000000000..f355f5b1f2dbbe974ddf3186b8e9259fefc4ab23 GIT binary patch literal 23780 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 + + diff --git a/assets/icons/ic_home_active.svg b/assets/icons/ic_home_active.svg new file mode 100644 index 0000000..c9fac1a --- /dev/null +++ b/assets/icons/ic_home_active.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_location.svg b/assets/icons/ic_location.svg new file mode 100644 index 0000000..364bb1a --- /dev/null +++ b/assets/icons/ic_location.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_next.svg b/assets/icons/ic_next.svg new file mode 100644 index 0000000..9323e92 --- /dev/null +++ b/assets/icons/ic_next.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_next_grey.svg b/assets/icons/ic_next_grey.svg new file mode 100644 index 0000000..8d523a4 --- /dev/null +++ b/assets/icons/ic_next_grey.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_orders.png b/assets/icons/ic_orders.png new file mode 100644 index 0000000000000000000000000000000000000000..6878743f367db1b607682d70aa5b3a915d762e88 GIT binary patch literal 16608 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 U?HeHsaHHbCDbVNc#;}Zk0pB7B*8l(j literal 0 HcmV?d00001 diff --git a/assets/icons/ic_oval.svg b/assets/icons/ic_oval.svg new file mode 100644 index 0000000..1c71a06 --- /dev/null +++ b/assets/icons/ic_oval.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_picked.svg b/assets/icons/ic_picked.svg new file mode 100644 index 0000000..714d1a8 --- /dev/null +++ b/assets/icons/ic_picked.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/assets/icons/ic_popular.svg b/assets/icons/ic_popular.svg new file mode 100644 index 0000000..a11c4c7 --- /dev/null +++ b/assets/icons/ic_popular.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_rating.svg b/assets/icons/ic_rating.svg new file mode 100644 index 0000000..9eab005 --- /dev/null +++ b/assets/icons/ic_rating.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_uber.svg b/assets/icons/ic_uber.svg new file mode 100644 index 0000000..cf4720e --- /dev/null +++ b/assets/icons/ic_uber.svg @@ -0,0 +1,3 @@ + + + diff --git a/assets/icons/ic_vegen.png b/assets/icons/ic_vegen.png new file mode 100644 index 0000000000000000000000000000000000000000..3098f774cc8b0c3cfa6548c0c0c6d4f117267609 GIT binary patch literal 22826 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 WzrzfJ=i~BYwFMr2^UCIi{rE5a)tk@& literal 0 HcmV?d00001 diff --git a/assets/icons/ic_vegetarian.png b/assets/icons/ic_vegetarian.png new file mode 100644 index 0000000000000000000000000000000000000000..a00aca35fdedf929e9e66b4904a1e1e6fc2708c5 GIT binary patch literal 18724 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 H)7Ae6HcG`V literal 0 HcmV?d00001 diff --git a/assets/images/img_alcohol.png b/assets/images/img_alcohol.png new file mode 100644 index 0000000000000000000000000000000000000000..daeb0cc59f05707ad9db879188752a8ebfc98664 GIT binary patch literal 3101 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⋘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 QrKaH&WK^ZACCx+s517q6GXMYp literal 0 HcmV?d00001 diff --git a/assets/images/img_flowers.png b/assets/images/img_flowers.png new file mode 100644 index 0000000000000000000000000000000000000000..8ea892389a0c9967878ddaa76ca0ff16b4413194 GIT binary patch literal 27117 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 literal 0 HcmV?d00001 diff --git a/assets/images/img_french.png b/assets/images/img_french.png new file mode 100644 index 0000000000000000000000000000000000000000..3d5d01744cb396a166b2029e514966b08501db92 GIT binary patch literal 9038 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 KSSx89^8WzSkdPAq literal 0 HcmV?d00001 diff --git a/assets/images/img_grocery.png b/assets/images/img_grocery.png new file mode 100644 index 0000000000000000000000000000000000000000..560aa8ca80517d44c311b4ff55fb54d5f10aa7c0 GIT binary patch literal 3682 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 literal 0 HcmV?d00001 diff --git a/assets/images/img_indian.png b/assets/images/img_indian.png new file mode 100644 index 0000000000000000000000000000000000000000..cda49b1961a36ad947af2ca28054aebbd66d49f8 GIT binary patch literal 8903 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%0A_9 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 literal 0 HcmV?d00001 diff --git a/assets/images/img_retails.png b/assets/images/img_retails.png new file mode 100644 index 0000000000000000000000000000000000000000..0e92e77ca5107fd05967d3b738f7d61d2bb190c7 GIT binary patch literal 23089 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 S5R~5s;ApDqsZ=XjhyDi&)W9kL literal 0 HcmV?d00001 diff --git a/assets/images/img_ride.png b/assets/images/img_ride.png new file mode 100644 index 0000000000000000000000000000000000000000..a0f9c3832d13df56935ed549a8f10244bf4b1f91 GIT binary patch literal 81878 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�=IZv)tPvF-o;Jp*xy2BY>#Kide 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 literal 0 HcmV?d00001 diff --git a/assets/images/img_speciality.jpg b/assets/images/img_speciality.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9c028329bfb43b36d47bc662a53134d43f704a39 GIT binary patch literal 4655 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 YjcEHoPZw-F7$+jc3P(->il-C*1I$J@D*ylh literal 0 HcmV?d00001 diff --git a/assets/images/img_takeout.png b/assets/images/img_takeout.png new file mode 100644 index 0000000000000000000000000000000000000000..0599c6c0b393b59c903df4b61547e0787acdb5f0 GIT binary patch literal 4191 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 literal 0 HcmV?d00001 diff --git a/assets/translations/app_en.arb b/assets/translations/app_en.arb new file mode 100644 index 0000000..e8782f2 --- /dev/null +++ b/assets/translations/app_en.arb @@ -0,0 +1,56 @@ +{ + "useYourTAxiAccount":"Use your uber account to get started", + "enterYourMobileNumber":"Enter your mobile number", + "mobileNumber":"Mobile number", + "next":"Next", + "contestToGetCallAndSms":"By proceeding, you consent to get calls, Whatsapp or SMS messages, including by automated means, from uber and its affiliates to the number provided.", + "continueWithGoogle":"Continue with google", + "or":"or", + "welcomeBack":"Welcome back, John", + "pleaseEnterYourPassword":"Please enter your password", + "iHaveForgotPassword":"I've forgotten my password", + "iCantSignIn":"I cant sign in", + "enter4DigitCodeSentYou":"Enter the 4-digit code sent to you at {phone}", + "@enter4DigitCodeSentYou":{ + "placeholders":{ + "phone":{ + "type":"String" + } + } + }, + "iHavenRecievedCode":"I haven’t recieved a code (${time})", + "@iHavenRecievedCode":{ + "placeholders":{ + "time":{ + "type":"String" + } + } + }, + "delivery":"Delivery", + "pickUp":"Pickup", + "dineIn":"Dine-in", + "allCategories": "All categories", + "convenience": "Convenience", + "alcohol": "Alcohol", + "petSupplies": "Pet Supplies", + "flowers": "Flowers", + "grocery": "Grocery", + "american": "American", + "speciality": "Speciality", + "takeout": "Takeout", + "asian": "Asian", + "iceCream": "Ice Cream", + "halal": "Halal", + "retails": "Retails", + "caribbean": "Caribbean", + "indian": "Indian", + "french": "French", + "fastFoods": "Fast Foods", + "burger": "Burger", + "ride": "Ride", + "chinese": "Chinese", + "dessert": "Dessert", + "more":"More" + + +} \ No newline at end of file diff --git a/assets/translations/app_ru.arb b/assets/translations/app_ru.arb new file mode 100644 index 0000000..d358b51 --- /dev/null +++ b/assets/translations/app_ru.arb @@ -0,0 +1,62 @@ +{ + "useYourTAxiAccount": "Используйте свой аккаунт Uber, чтобы начать", + "enterYourMobileNumber": "Введите свой номер телефона", + "mobileNumber": "Номер телефона", + "next": "Далее", + "contestToGetCallAndSms": "Продолжая, вы соглашаетесь получать звонки, сообщения WhatsApp или SMS, включая автоматические, от Uber и его партнеров на указанный номер.", + "continueWithGoogle": "Продолжить через Google", + "or": "или", + "welcomeBack": "С возвращением, {name}", + "@welcomeBack": { + "placeholders": { + "name": { + "type": "String" + } + } + }, + "pleaseEnterYourPassword": "Пожалуйста, введите свой пароль", + "iHaveForgotPassword": "Я забыл пароль", + "iCantSignIn": "Не могу войти в систему", + "enter4DigitCodeSentYou": "Введите 4-значный код, отправленный на номер {phone}", + "@enter4DigitCodeSentYou": { + "placeholders": { + "phone": { + "type": "String" + } + } + }, + "iHavenRecievedCode": "Я не получил код (${time})", + "@iHavenRecievedCode": { + "placeholders": { + "time": { + "type": "String" + } + } + }, + "delivery": "Доставка", + "pickUp": "Самовывоз", + "dineIn": "На месте", + "allCategories": "Все категории", + "convenience": "Магазин", + "alcohol": "Алкоголь", + "petSupplies": "Для питомцев", + "flowers": "Цветы", + "grocery": "Продукты", + "american": "Американская", + "speciality": "Особенная", + "takeout": "На вынос", + "asian": "Азиатская", + "iceCream": "Мороженое", + "halal": "Халяль", + "retails": "Розница", + "caribbean": "Карибская", + "indian": "Индийская", + "french": "Французская", + "fastFoods": "Фастфуд", + "burger": "Бургер", + "ride": "Поездка", + "chinese": "Китайская", + "dessert": "Десерт", + "more":"Ещё" + +} diff --git a/assets/translations/app_uz.arb b/assets/translations/app_uz.arb new file mode 100644 index 0000000..027eab4 --- /dev/null +++ b/assets/translations/app_uz.arb @@ -0,0 +1,61 @@ +{ + "useYourTAxiAccount": "Boshlash uchun Uber hisobingizdan foydalaning", + "enterYourMobileNumber": "Telefon raqamingizni kiriting", + "mobileNumber": "Telefon raqami", + "next": "Keyingi", + "contestToGetCallAndSms": "Davom etish orqali siz Uber va uning hamkorlaridan avtomatlashtirilgan qo‘ng‘iroqlar, WhatsApp yoki SMS xabarlarini olishga rozilik bildirasiz.", + "continueWithGoogle": "Google orqali davom etish", + "or": "yoki", + "welcomeBack": "Xush kelibsiz, {name}", + "@welcomeBack": { + "placeholders": { + "name": { + "type": "String" + } + } + }, + "pleaseEnterYourPassword": "Iltimos, parolingizni kiriting", + "iHaveForgotPassword": "Parolimni unutdim", + "iCantSignIn": "Kirishda muammo bor", + "enter4DigitCodeSentYou": "Sizga {phone} raqamiga yuborilgan 4 xonali kodni kiriting", + "@enter4DigitCodeSentYou": { + "placeholders": { + "phone": { + "type": "String" + } + } + }, + "iHavenRecievedCode": "Men hali kodni olmabman (${time})", + "@iHavenRecievedCode": { + "placeholders": { + "time": { + "type": "String" + } + } + }, + "delivery": "Yetkazib berish", + "pickUp": "Olib ketish", + "dineIn": "Joyida", + "allCategories": "Barcha toifalar", + "convenience": "Do‘kon", + "alcohol": "Alkogol", + "petSupplies": "Uy hayvoni uchun", + "flowers": "Gullar", + "grocery": "Bozor", + "american": "Amerika", + "speciality": "Maxsus", + "takeout": "Olib ketish", + "asian": "Osiyo", + "iceCream": "Muzqaymoq", + "halal": "Halol", + "retails": "Do‘konlar", + "caribbean": "Karib", + "indian": "Hind", + "french": "Fransuz", + "fastFoods": "Fast-fud", + "burger": "Burger", + "ride": "Yo‘l", + "chinese": "Xitoy", + "dessert": "Desert", + "more":"Ko'proq" +} diff --git a/devtools_options.yaml b/devtools_options.yaml new file mode 100644 index 0000000..fa0b357 --- /dev/null +++ b/devtools_options.yaml @@ -0,0 +1,3 @@ +description: This file stores settings for Dart & Flutter DevTools. +documentation: https://docs.flutter.dev/tools/devtools/extensions#configure-extension-enablement-states +extensions: diff --git a/ios/.gitignore b/ios/.gitignore new file mode 100755 index 0000000..7a7f987 --- /dev/null +++ b/ios/.gitignore @@ -0,0 +1,34 @@ +**/dgph +*.mode1v3 +*.mode2v3 +*.moved-aside +*.pbxuser +*.perspectivev3 +**/*sync/ +.sconsign.dblite +.tags* +**/.vagrant/ +**/DerivedData/ +Icon? +**/Pods/ +**/.symlinks/ +profile +xcuserdata +**/.generated/ +Flutter/App.framework +Flutter/Flutter.framework +Flutter/Flutter.podspec +Flutter/Generated.xcconfig +Flutter/ephemeral/ +Flutter/app.flx +Flutter/app.zip +Flutter/flutter_assets/ +Flutter/flutter_export_environment.sh +ServiceDefinitions.json +Runner/GeneratedPluginRegistrant.* + +# Exceptions to above rules. +!default.mode1v3 +!default.mode2v3 +!default.pbxuser +!default.perspectivev3 diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist new file mode 100755 index 0000000..1dc6cf7 --- /dev/null +++ b/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 13.0 + + diff --git a/ios/Flutter/Debug.xcconfig b/ios/Flutter/Debug.xcconfig new file mode 100755 index 0000000..ec97fc6 --- /dev/null +++ b/ios/Flutter/Debug.xcconfig @@ -0,0 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" +#include "Generated.xcconfig" diff --git a/ios/Flutter/Release.xcconfig b/ios/Flutter/Release.xcconfig new file mode 100755 index 0000000..c4855bf --- /dev/null +++ b/ios/Flutter/Release.xcconfig @@ -0,0 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" +#include "Generated.xcconfig" diff --git a/ios/Podfile b/ios/Podfile new file mode 100755 index 0000000..620e46e --- /dev/null +++ b/ios/Podfile @@ -0,0 +1,43 @@ +# Uncomment this line to define a global platform for your project +# platform :ios, '13.0' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_ios_podfile_setup + +target 'Runner' do + use_frameworks! + + flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) + target 'RunnerTests' do + inherit! :search_paths + end +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_ios_build_settings(target) + end +end diff --git a/ios/Podfile.lock b/ios/Podfile.lock new file mode 100644 index 0000000..837cf98 --- /dev/null +++ b/ios/Podfile.lock @@ -0,0 +1,37 @@ +PODS: + - Flutter (1.0.0) + - path_provider_foundation (0.0.1): + - Flutter + - FlutterMacOS + - shared_preferences_foundation (0.0.1): + - Flutter + - FlutterMacOS + - sqflite_darwin (0.0.4): + - Flutter + - FlutterMacOS + +DEPENDENCIES: + - Flutter (from `Flutter`) + - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`) + - shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`) + - sqflite_darwin (from `.symlinks/plugins/sqflite_darwin/darwin`) + +EXTERNAL SOURCES: + Flutter: + :path: Flutter + path_provider_foundation: + :path: ".symlinks/plugins/path_provider_foundation/darwin" + shared_preferences_foundation: + :path: ".symlinks/plugins/shared_preferences_foundation/darwin" + sqflite_darwin: + :path: ".symlinks/plugins/sqflite_darwin/darwin" + +SPEC CHECKSUMS: + Flutter: cabc95a1d2626b1b06e7179b784ebcf0c0cde467 + path_provider_foundation: 0b743cbb62d8e47eab856f09262bb8c1ddcfe6ba + shared_preferences_foundation: 5086985c1d43c5ba4d5e69a4e8083a389e2909e6 + sqflite_darwin: 5a7236e3b501866c1c9befc6771dfd73ffb8702d + +PODFILE CHECKSUM: 3c63482e143d1b91d2d2560aee9fb04ecc74ac7e + +COCOAPODS: 1.16.2 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 0000000..971e1e1 --- /dev/null +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,731 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXBuildFile section */ + 0D549A3C2BF55E9816B11237 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 26825AE1ED5121A57276DA4B /* Pods_Runner.framework */; }; + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; + A3A749C6DA3FE581E4CDD427 /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3B2120DD933BF0721A71966A /* Pods_RunnerTests.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 97C146E61CF9000F007C117D /* Project object */; + proxyType = 1; + remoteGlobalIDString = 97C146ED1CF9000F007C117D; + remoteInfo = Runner; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 26825AE1ED5121A57276DA4B /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 2E7E24E60AFADFCF9F06731F /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B2120DD933BF0721A71966A /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 6CE00853D794CDBF16C046E7 /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 8075E7BCFC9D4EB04122EA5A /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = ""; }; + 84B6A68A500EE13805A746C6 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + AC27D6C24982266F44D9A596 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; + CE72955320D724BB54D77A6F /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 4926290A563EF1395C1C21A8 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + A3A749C6DA3FE581E4CDD427 /* Pods_RunnerTests.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 0D549A3C2BF55E9816B11237 /* Pods_Runner.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 00550C93FB0A36AEBA86FFA1 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 26825AE1ED5121A57276DA4B /* Pods_Runner.framework */, + 3B2120DD933BF0721A71966A /* Pods_RunnerTests.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + 331C8082294A63A400263BE5 /* RunnerTests */, + F113EF56A93FF5FF56F6AE28 /* Pods */, + 00550C93FB0A36AEBA86FFA1 /* Frameworks */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; + F113EF56A93FF5FF56F6AE28 /* Pods */ = { + isa = PBXGroup; + children = ( + 84B6A68A500EE13805A746C6 /* Pods-Runner.debug.xcconfig */, + AC27D6C24982266F44D9A596 /* Pods-Runner.release.xcconfig */, + CE72955320D724BB54D77A6F /* Pods-Runner.profile.xcconfig */, + 6CE00853D794CDBF16C046E7 /* Pods-RunnerTests.debug.xcconfig */, + 8075E7BCFC9D4EB04122EA5A /* Pods-RunnerTests.release.xcconfig */, + 2E7E24E60AFADFCF9F06731F /* Pods-RunnerTests.profile.xcconfig */, + ); + name = Pods; + path = Pods; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C8080294A63A400263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 02ACBDC033ED08F989F9D3BE /* [CP] Check Pods Manifest.lock */, + 331C807D294A63A400263BE5 /* Sources */, + 331C807F294A63A400263BE5 /* Resources */, + 4926290A563EF1395C1C21A8 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 331C8086294A63A400263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 82205AE9033C2CF8CE6E5365 /* [CP] Check Pods Manifest.lock */, + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + 593245A504393588B07CA843 /* [CP] Embed Pods Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C8080294A63A400263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 97C146ED1CF9000F007C117D; + }; + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + 331C8080294A63A400263BE5 /* RunnerTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C807F294A63A400263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 02ACBDC033ED08F989F9D3BE /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 593245A504393588B07CA843 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + 82205AE9033C2CF8CE6E5365 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C807D294A63A400263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 97C146ED1CF9000F007C117D /* Runner */; + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + DEVELOPMENT_TEAM = KN284MBC8G; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.foodDeliveryClient; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 331C8088294A63A400263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6CE00853D794CDBF16C046E7 /* Pods-RunnerTests.debug.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.foodDeliveryClient.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Debug; + }; + 331C8089294A63A400263BE5 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 8075E7BCFC9D4EB04122EA5A /* Pods-RunnerTests.release.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.foodDeliveryClient.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Release; + }; + 331C808A294A63A400263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2E7E24E60AFADFCF9F06731F /* Pods-RunnerTests.profile.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.foodDeliveryClient.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + DEVELOPMENT_TEAM = KN284MBC8G; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.foodDeliveryClient; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + DEVELOPMENT_TEAM = KN284MBC8G; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.foodDeliveryClient; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C8088294A63A400263BE5 /* Debug */, + 331C8089294A63A400263BE5 /* Release */, + 331C808A294A63A400263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100755 index 0000000..919434a --- /dev/null +++ b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100755 index 0000000..18d9810 --- /dev/null +++ b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100755 index 0000000..f9b0d7c --- /dev/null +++ b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 0000000..e3773d4 --- /dev/null +++ b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/Runner.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100755 index 0000000..21a3cc1 --- /dev/null +++ b/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,10 @@ + + + + + + + diff --git a/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100755 index 0000000..18d9810 --- /dev/null +++ b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100755 index 0000000..f9b0d7c --- /dev/null +++ b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/ios/Runner/AppDelegate.swift b/ios/Runner/AppDelegate.swift new file mode 100755 index 0000000..6266644 --- /dev/null +++ b/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Flutter +import UIKit + +@main +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100755 index 0000000..d36b1fa --- /dev/null +++ b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332 GIT binary patch literal 10932 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..797d452e458972bab9d994556c8305db4c827017 GIT binary patch literal 406 zcmV;H0crk;P))>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed2d933e1120817fe9182483a228007b18ab6ae GIT binary patch literal 450 zcmV;z0X_bSP)iGWQ_5NJQ_~rNh*z)}eT%KUb z`7gNk0#AwF^#0T0?hIa^`~Ck;!}#m+_uT050aTR(J!bU#|IzRL%^UsMS#KsYnTF*!YeDOytlP4VhV?b} z%rz_<=#CPc)tU1MZTq~*2=8~iZ!lSa<{9b@2Jl;?IEV8)=fG217*|@)CCYgFze-x? zIFODUIA>nWKpE+bn~n7;-89sa>#DR>TSlqWk*!2hSN6D~Qb#VqbP~4Fk&m`@1$JGr zXPIdeRE&b2Thd#{MtDK$px*d3-Wx``>!oimf%|A-&-q*6KAH)e$3|6JV%HX{Hig)k suLT-RhftRq8b9;(V=235Wa|I=027H2wCDra;{X5v07*qoM6N<$f;9x^2LJ#7 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd7b0099ca80c806f8fe495613e8d6c69460d76 GIT binary patch literal 282 zcmV+#0p(^bcu7P-R4C8Q z&e;xxFbF_Vrezo%_kH*OKhshZ6BFpG-Y1e10`QXJKbND7AMQ&cMj60B5TNObaZxYybcN07*qoM6N<$g3m;S%K!iX literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fe730945a01f64a61e2235dbe3f45b08f7729182 GIT binary patch literal 462 zcmV;<0WtoGP)-}iV`2<;=$?g5M=KQbZ{F&YRNy7Nn@%_*5{gvDM0aKI4?ESmw z{NnZg)A0R`+4?NF_RZexyVB&^^ZvN!{I28tr{Vje;QNTz`dG&Jz0~Ek&f2;*Z7>B|cg}xYpxEFY+0YrKLF;^Q+-HreN0P{&i zK~zY`?b7ECf-n?@;d<&orQ*Q7KoR%4|C>{W^h6@&01>0SKS`dn{Q}GT%Qj_{PLZ_& zs`MFI#j-(>?bvdZ!8^xTwlY{qA)T4QLbY@j(!YJ7aXJervHy6HaG_2SB`6CC{He}f zHVw(fJWApwPq!6VY7r1w-Fs)@ox~N+q|w~e;JI~C4Vf^@d>Wvj=fl`^u9x9wd9 zR%3*Q+)t%S!MU_`id^@&Y{y7-r98lZX0?YrHlfmwb?#}^1b{8g&KzmkE(L>Z&)179 zp<)v6Y}pRl100G2FL_t(o!|l{-Q-VMg#&MKg7c{O0 z2wJImOS3Gy*Z2Qifdv~JYOp;v+U)a|nLoc7hNH;I$;lzDt$}rkaFw1mYK5_0Q(Sut zvbEloxON7$+HSOgC9Z8ltuC&0OSF!-mXv5caV>#bc3@hBPX@I$58-z}(ZZE!t-aOG zpjNkbau@>yEzH(5Yj4kZiMH32XI!4~gVXNnjAvRx;Sdg^`>2DpUEwoMhTs_st8pKG z(%SHyHdU&v%f36~uERh!bd`!T2dw;z6PrOTQ7Vt*#9F2uHlUVnb#ev_o^fh}Dzmq} zWtlk35}k=?xj28uO|5>>$yXadTUE@@IPpgH`gJ~Ro4>jd1IF|(+IX>8M4Ps{PNvmI zNj4D+XgN83gPt_Gm}`Ybv{;+&yu-C(Grdiahmo~BjG-l&mWM+{e5M1sm&=xduwgM9 z`8OEh`=F3r`^E{n_;%9weN{cf2%7=VzC@cYj+lg>+3|D|_1C@{hcU(DyQG_BvBWe? zvTv``=%b1zrol#=R`JB)>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..502f463a9bc882b461c96aadf492d1729e49e725 GIT binary patch literal 586 zcmV-Q0=4~#P)+}#`wDE{8-2Mebf5<{{PqV{TgVcv*r8?UZ3{-|G?_}T*&y;@cqf{ z{Q*~+qr%%p!1pS*_Uicl#q9lc(D`!D`LN62sNwq{oYw(Wmhk)k<@f$!$@ng~_5)Ru z0Z)trIA5^j{DIW^c+vT2%lW+2<(RtE2wR;4O@)Tm`Xr*?A(qYoM}7i5Yxw>D(&6ou zxz!_Xr~yNF+waPe00049Nkl*;a!v6h%{rlvIH#gW3s8p;bFr=l}mRqpW2h zw=OA%hdyL~z+UHOzl0eKhEr$YYOL-c-%Y<)=j?(bzDweB7{b+%_ypvm_cG{SvM=DK zhv{K@m>#Bw>2W$eUI#iU)Wdgs8Y3U+A$Gd&{+j)d)BmGKx+43U_!tik_YlN)>$7G! zhkE!s;%oku3;IwG3U^2kw?z+HM)jB{@zFhK8P#KMSytSthr+4!c(5c%+^UBn`0X*2 zy3(k600_CSZj?O$Qu%&$;|TGUJrptR(HzyIx>5E(2r{eA(<6t3e3I0B)7d6s7?Z5J zZ!rtKvA{MiEBm&KFtoifx>5P^Z=vl)95XJn()aS5%ad(s?4-=Tkis9IGu{`Fy8r+H07*qoM6N<$f20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec303439225b78712f49115768196d8d76f6790 GIT binary patch literal 862 zcmV-k1EKthP)20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..e9f5fea27c705180eb716271f41b582e76dcbd90 GIT binary patch literal 1674 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0467bf12aa4d28f374bb26596605a46dcbb3e7c8 GIT binary patch literal 1418 zcmV;51$Fv~P)q zKfU)WzW*n(@|xWGCA9ScMt*e9`2kdxPQ&&>|-UCa7_51w+ zLUsW@ZzZSW0y$)Hp~e9%PvP|a03ks1`~K?q{u;6NC8*{AOqIUq{CL&;p56Lf$oQGq z^={4hPQv)y=I|4n+?>7Fim=dxt1 z2H+Dm+1+fh+IF>G0SjJMkQQre1x4|G*Z==(Ot&kCnUrL4I(rf(ucITwmuHf^hXiJT zkdTm&kdTm&kdTm&kdP`esgWG0BcWCVkVZ&2dUwN`cgM8QJb`Z7Z~e<&Yj2(}>Tmf` zm1{eLgw!b{bXkjWbF%dTkTZEJWyWOb##Lfw4EK2}<0d6%>AGS{po>WCOy&f$Tay_> z?NBlkpo@s-O;0V%Y_Xa-G#_O08q5LR*~F%&)}{}r&L%Sbs8AS4t7Y0NEx*{soY=0MZExqA5XHQkqi#4gW3 zqODM^iyZl;dvf)-bOXtOru(s)Uc7~BFx{w-FK;2{`VA?(g&@3z&bfLFyctOH!cVsF z7IL=fo-qBndRUm;kAdXR4e6>k-z|21AaN%ubeVrHl*<|s&Ax@W-t?LR(P-24A5=>a z*R9#QvjzF8n%@1Nw@?CG@6(%>+-0ASK~jEmCV|&a*7-GKT72W<(TbSjf)&Eme6nGE z>Gkj4Sq&2e+-G%|+NM8OOm5zVl9{Z8Dd8A5z3y8mZ=4Bv4%>as_{9cN#bm~;h>62( zdqY93Zy}v&c4n($Vv!UybR8ocs7#zbfX1IY-*w~)p}XyZ-SFC~4w>BvMVr`dFbelV{lLL0bx7@*ZZdebr3`sP;? zVImji)kG)(6Juv0lz@q`F!k1FE;CQ(D0iG$wchPbKZQELlsZ#~rt8#90Y_Xh&3U-< z{s<&cCV_1`^TD^ia9!*mQDq& zn2{r`j};V|uV%_wsP!zB?m%;FeaRe+X47K0e+KE!8C{gAWF8)lCd1u1%~|M!XNRvw zvtqy3iz0WSpWdhn6$hP8PaRBmp)q`#PCA`Vd#Tc$@f1tAcM>f_I@bC)hkI9|o(Iqv zo}Piadq!j76}004RBio<`)70k^`K1NK)q>w?p^C6J2ZC!+UppiK6&y3Kmbv&O!oYF z34$0Z;QO!JOY#!`qyGH<3Pd}Pt@q*A0V=3SVtWKRR8d8Z&@)3qLPA19LPA19LPEUC YUoZo%k(ykuW&i*H07*qoM6N<$f+CH{y8r+H literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json new file mode 100755 index 0000000..0bedcf2 --- /dev/null +++ b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "LaunchImage.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100755 index 0000000..89c2725 --- /dev/null +++ b/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/ios/Runner/Base.lproj/LaunchScreen.storyboard b/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100755 index 0000000..f2e259c --- /dev/null +++ b/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/Runner/Base.lproj/Main.storyboard b/ios/Runner/Base.lproj/Main.storyboard new file mode 100755 index 0000000..f3c2851 --- /dev/null +++ b/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist new file mode 100644 index 0000000..6c3051c --- /dev/null +++ b/ios/Runner/Info.plist @@ -0,0 +1,49 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Food Delivery Client + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + food_delivery_client + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + + + diff --git a/ios/Runner/Runner-Bridging-Header.h b/ios/Runner/Runner-Bridging-Header.h new file mode 100755 index 0000000..308a2a5 --- /dev/null +++ b/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/ios/RunnerTests/RunnerTests.swift b/ios/RunnerTests/RunnerTests.swift new file mode 100644 index 0000000..86a7c3b --- /dev/null +++ b/ios/RunnerTests/RunnerTests.swift @@ -0,0 +1,12 @@ +import Flutter +import UIKit +import XCTest + +class RunnerTests: XCTestCase { + + func testExample() { + // If you add code to the Runner application, consider adding tests here. + // See https://developer.apple.com/documentation/xctest for more information about using XCTest. + } + +} diff --git a/l10n.yaml b/l10n.yaml new file mode 100644 index 0000000..2b9fac5 --- /dev/null +++ b/l10n.yaml @@ -0,0 +1,4 @@ +arb-dir: assets/translations +template-arb-file: app_en.arb +output-localization-file: app_localizations.dart +output-dir: lib/core/l10n \ No newline at end of file diff --git a/lib/core/constants/app_locale_keys.dart b/lib/core/constants/app_locale_keys.dart new file mode 100644 index 0000000..4e608a0 --- /dev/null +++ b/lib/core/constants/app_locale_keys.dart @@ -0,0 +1,12 @@ +abstract class AppLocaleKeys { + ///Storage keys + static const String language = 'language'; + + static const String fontBold = "fontBold"; + static const String fontMedium = "fontMedium"; + static const String fontRegular = "fontRegular"; + static const String fontLight = "fontLight"; + + static const String imageUrl = + "https://xsznseejebbai1lj.public.blob.vercel-storage.com/homepage/hero/hero-1.webp"; +} diff --git a/lib/core/constants/constants.dart b/lib/core/constants/constants.dart new file mode 100644 index 0000000..876da0a --- /dev/null +++ b/lib/core/constants/constants.dart @@ -0,0 +1,4 @@ +export 'app_locale_keys.dart'; +export 'sizes_consts.dart'; +export 'l10n.dart'; +export 'time_delay_cons.dart'; \ No newline at end of file diff --git a/lib/core/constants/l10n.dart b/lib/core/constants/l10n.dart new file mode 100644 index 0000000..2cccd32 --- /dev/null +++ b/lib/core/constants/l10n.dart @@ -0,0 +1,9 @@ +import 'dart:ui'; + +abstract class L10n { + static List locales = const [ + Locale('en'), + Locale('uz'), + Locale('ru'), + ]; +} diff --git a/lib/core/constants/sizes_consts.dart b/lib/core/constants/sizes_consts.dart new file mode 100644 index 0000000..196599a --- /dev/null +++ b/lib/core/constants/sizes_consts.dart @@ -0,0 +1,803 @@ +abstract class SizesCons { + + static const double size_0 = 0.0; + + static const double size_1 = 1.0; + + static const double size_2 = 2.0; + + static const double size_3 = 3.0; + + static const double size_4 = 4.0; + + static const double size_5 = 5.0; + + static const double size_6 = 6.0; + + static const double size_7 = 7.0; + + static const double size_8 = 8.0; + + static const double size_9 = 9.0; + + static const double size_10 = 10.0; + + static const double size_11 = 11.0; + + static const double size_12 = 12.0; + + static const double size_13 = 13.0; + + static const double size_14 = 14.0; + + static const double size_15 = 15.0; + + static const double size_16 = 16.0; + + static const double size_17 = 17.0; + + static const double size_18 = 18.0; + + static const double size_19 = 19.0; + + static const double size_20 = 20.0; + + static const double size_21 = 21.0; + + static const double size_22 = 22.0; + + static const double size_23 = 23.0; + + static const double size_24 = 24.0; + + static const double size_25 = 25.0; + + static const double size_26 = 26.0; + + static const double size_27 = 27.0; + + static const double size_28 = 28.0; + + static const double size_29 = 29.0; + + static const double size_30 = 30.0; + + static const double size_31 = 31.0; + + static const double size_32 = 32.0; + + static const double size_33 = 33.0; + + static const double size_34 = 34.0; + + static const double size_35 = 35.0; + + static const double size_36 = 36.0; + + static const double size_37 = 37.0; + + static const double size_38 = 38.0; + + static const double size_39 = 39.0; + + static const double size_40 = 40.0; + + static const double size_41 = 41.0; + + static const double size_42 = 42.0; + + static const double size_43 = 43.0; + + static const double size_44 = 44.0; + + static const double size_45 = 45.0; + + static const double size_46 = 46.0; + + static const double size_47 = 47.0; + + static const double size_48 = 48.0; + + static const double size_49 = 49.0; + + static const double size_50 = 50.0; + + static const double size_51 = 51.0; + + static const double size_52 = 52.0; + + static const double size_53 = 53.0; + + static const double size_54 = 54.0; + + static const double size_55 = 55.0; + + static const double size_56 = 56.0; + + static const double size_57 = 57.0; + + static const double size_58 = 58.0; + + static const double size_59 = 59.0; + + static const double size_60 = 60.0; + + static const double size_61 = 61.0; + + static const double size_62 = 62.0; + + static const double size_63 = 63.0; + + static const double size_64 = 64.0; + + static const double size_65 = 65.0; + + static const double size_66 = 66.0; + + static const double size_67 = 67.0; + + static const double size_68 = 68.0; + + static const double size_69 = 69.0; + + static const double size_70 = 70.0; + + static const double size_71 = 71.0; + + static const double size_72 = 72.0; + + static const double size_73 = 73.0; + + static const double size_74 = 74.0; + + static const double size_75 = 75.0; + + static const double size_76 = 76.0; + + static const double size_77 = 77.0; + + static const double size_78 = 78.0; + + static const double size_79 = 79.0; + + static const double size_80 = 80.0; + + static const double size_81 = 81.0; + + static const double size_82 = 82.0; + + static const double size_83 = 83.0; + + static const double size_84 = 84.0; + + static const double size_85 = 85.0; + + static const double size_86 = 86.0; + + static const double size_87 = 87.0; + + static const double size_88 = 88.0; + + static const double size_89 = 89.0; + + static const double size_90 = 90.0; + + static const double size_91 = 91.0; + + static const double size_92 = 92.0; + + static const double size_93 = 93.0; + + static const double size_94 = 94.0; + + static const double size_95 = 95.0; + + static const double size_96 = 96.0; + + static const double size_97 = 97.0; + + static const double size_98 = 98.0; + + static const double size_99 = 99.0; + + static const double size_100 = 100.0; + + static const double size_101 = 101.0; + + static const double size_102 = 102.0; + + static const double size_103 = 103.0; + + static const double size_104 = 104.0; + + static const double size_105 = 105.0; + + static const double size_106 = 106.0; + + static const double size_107 = 107.0; + + static const double size_108 = 108.0; + + static const double size_109 = 109.0; + + static const double size_110 = 110.0; + + static const double size_111 = 111.0; + + static const double size_112 = 112.0; + + static const double size_113 = 113.0; + + static const double size_114 = 114.0; + + static const double size_115 = 115.0; + + static const double size_116 = 116.0; + + static const double size_117 = 117.0; + + static const double size_118 = 118.0; + + static const double size_119 = 119.0; + + static const double size_120 = 120.0; + + static const double size_121 = 121.0; + + static const double size_122 = 122.0; + + static const double size_123 = 123.0; + + static const double size_124 = 124.0; + + static const double size_125 = 125.0; + + static const double size_126 = 126.0; + + static const double size_127 = 127.0; + + static const double size_128 = 128.0; + + static const double size_129 = 129.0; + + static const double size_130 = 130.0; + + static const double size_131 = 131.0; + + static const double size_132 = 132.0; + + static const double size_133 = 133.0; + + static const double size_134 = 134.0; + + static const double size_135 = 135.0; + + static const double size_136 = 136.0; + + static const double size_137 = 137.0; + + static const double size_138 = 138.0; + + static const double size_139 = 139.0; + + static const double size_140 = 140.0; + + static const double size_141 = 141.0; + + static const double size_142 = 142.0; + + static const double size_143 = 143.0; + + static const double size_144 = 144.0; + + static const double size_145 = 145.0; + + static const double size_146 = 146.0; + + static const double size_147 = 147.0; + + static const double size_148 = 148.0; + + static const double size_149 = 149.0; + + static const double size_150 = 150.0; + + static const double size_151 = 151.0; + + static const double size_152 = 152.0; + + static const double size_153 = 153.0; + + static const double size_154 = 154.0; + + static const double size_155 = 155.0; + + static const double size_156 = 156.0; + + static const double size_157 = 157.0; + + static const double size_158 = 158.0; + + static const double size_159 = 159.0; + + static const double size_160 = 160.0; + + static const double size_161 = 161.0; + + static const double size_162 = 162.0; + + static const double size_163 = 163.0; + + static const double size_164 = 164.0; + + static const double size_165 = 165.0; + + static const double size_166 = 166.0; + + static const double size_167 = 167.0; + + static const double size_168 = 168.0; + + static const double size_169 = 169.0; + + static const double size_170 = 170.0; + + static const double size_171 = 171.0; + + static const double size_172 = 172.0; + + static const double size_173 = 173.0; + + static const double size_174 = 174.0; + + static const double size_175 = 175.0; + + static const double size_176 = 176.0; + + static const double size_177 = 177.0; + + static const double size_178 = 178.0; + + static const double size_179 = 179.0; + + static const double size_180 = 180.0; + + static const double size_181 = 181.0; + + static const double size_182 = 182.0; + + static const double size_183 = 183.0; + + static const double size_184 = 184.0; + + static const double size_185 = 185.0; + + static const double size_186 = 186.0; + + static const double size_187 = 187.0; + + static const double size_188 = 188.0; + + static const double size_189 = 189.0; + + static const double size_190 = 190.0; + + static const double size_191 = 191.0; + + static const double size_192 = 192.0; + + static const double size_193 = 193.0; + + static const double size_194 = 194.0; + + static const double size_195 = 195.0; + + static const double size_196 = 196.0; + + static const double size_197 = 197.0; + + static const double size_198 = 198.0; + + static const double size_199 = 199.0; + + static const double size_200 = 200.0; + + static const double size_201 = 201.0; + + static const double size_202 = 202.0; + + static const double size_203 = 203.0; + + static const double size_204 = 204.0; + + static const double size_205 = 205.0; + + static const double size_206 = 206.0; + + static const double size_207 = 207.0; + + static const double size_208 = 208.0; + + static const double size_209 = 209.0; + + static const double size_210 = 210.0; + + static const double size_211 = 211.0; + + static const double size_212 = 212.0; + + static const double size_213 = 213.0; + + static const double size_214 = 214.0; + + static const double size_215 = 215.0; + + static const double size_216 = 216.0; + + static const double size_217 = 217.0; + + static const double size_218 = 218.0; + + static const double size_219 = 219.0; + + static const double size_220 = 220.0; + + static const double size_221 = 221.0; + + static const double size_222 = 222.0; + + static const double size_223 = 223.0; + + static const double size_224 = 224.0; + + static const double size_225 = 225.0; + + static const double size_226 = 226.0; + + static const double size_227 = 227.0; + + static const double size_228 = 228.0; + + static const double size_229 = 229.0; + + static const double size_230 = 230.0; + + static const double size_231 = 231.0; + + static const double size_232 = 232.0; + + static const double size_233 = 233.0; + + static const double size_234 = 234.0; + + static const double size_235 = 235.0; + + static const double size_236 = 236.0; + + static const double size_237 = 237.0; + + static const double size_238 = 238.0; + + static const double size_239 = 239.0; + + static const double size_240 = 240.0; + + static const double size_241 = 241.0; + + static const double size_242 = 242.0; + + static const double size_243 = 243.0; + + static const double size_244 = 244.0; + + static const double size_245 = 245.0; + + static const double size_246 = 246.0; + + static const double size_247 = 247.0; + + static const double size_248 = 248.0; + + static const double size_249 = 249.0; + + static const double size_250 = 250.0; + + static const double size_251 = 251.0; + + static const double size_252 = 252.0; + + static const double size_253 = 253.0; + + static const double size_254 = 254.0; + + static const double size_255 = 255.0; + + static const double size_256 = 256.0; + + static const double size_257 = 257.0; + + static const double size_258 = 258.0; + + static const double size_259 = 259.0; + + static const double size_260 = 260.0; + + static const double size_261 = 261.0; + + static const double size_262 = 262.0; + + static const double size_263 = 263.0; + + static const double size_264 = 264.0; + + static const double size_265 = 265.0; + + static const double size_266 = 266.0; + + static const double size_267 = 267.0; + + static const double size_268 = 268.0; + + static const double size_269 = 269.0; + + static const double size_270 = 270.0; + + static const double size_271 = 271.0; + + static const double size_272 = 272.0; + + static const double size_273 = 273.0; + + static const double size_274 = 274.0; + + static const double size_275 = 275.0; + + static const double size_276 = 276.0; + + static const double size_277 = 277.0; + + static const double size_278 = 278.0; + + static const double size_279 = 279.0; + + static const double size_280 = 280.0; + + static const double size_281 = 281.0; + + static const double size_282 = 282.0; + + static const double size_283 = 283.0; + + static const double size_284 = 284.0; + + static const double size_285 = 285.0; + + static const double size_286 = 286.0; + + static const double size_287 = 287.0; + + static const double size_288 = 288.0; + + static const double size_289 = 289.0; + + static const double size_290 = 290.0; + + static const double size_291 = 291.0; + + static const double size_292 = 292.0; + + static const double size_293 = 293.0; + + static const double size_294 = 294.0; + + static const double size_295 = 295.0; + + static const double size_296 = 296.0; + + static const double size_297 = 297.0; + + static const double size_298 = 298.0; + + static const double size_299 = 299.0; + + static const double size_300 = 300.0; + + static const double size_301 = 301.0; + + static const double size_302 = 302.0; + + static const double size_303 = 303.0; + + static const double size_304 = 304.0; + + static const double size_305 = 305.0; + + static const double size_306 = 306.0; + + static const double size_307 = 307.0; + + static const double size_308 = 308.0; + + static const double size_309 = 309.0; + + static const double size_310 = 310.0; + + static const double size_311 = 311.0; + + static const double size_312 = 312.0; + + static const double size_313 = 313.0; + + static const double size_314 = 314.0; + + static const double size_315 = 315.0; + + static const double size_316 = 316.0; + + static const double size_317 = 317.0; + + static const double size_318 = 318.0; + + static const double size_319 = 319.0; + + static const double size_320 = 320.0; + + static const double size_321 = 321.0; + + static const double size_322 = 322.0; + + static const double size_323 = 323.0; + + static const double size_324 = 324.0; + + static const double size_325 = 325.0; + + static const double size_326 = 326.0; + + static const double size_327 = 327.0; + + static const double size_328 = 328.0; + + static const double size_329 = 329.0; + + static const double size_330 = 330.0; + + static const double size_331 = 331.0; + + static const double size_332 = 332.0; + + static const double size_333 = 333.0; + + static const double size_334 = 334.0; + + static const double size_335 = 335.0; + + static const double size_336 = 336.0; + + static const double size_337 = 337.0; + + static const double size_338 = 338.0; + + static const double size_339 = 339.0; + + static const double size_340 = 340.0; + + static const double size_341 = 341.0; + + static const double size_342 = 342.0; + + static const double size_343 = 343.0; + + static const double size_344 = 344.0; + + static const double size_345 = 345.0; + + static const double size_346 = 346.0; + + static const double size_347 = 347.0; + + static const double size_348 = 348.0; + + static const double size_349 = 349.0; + + static const double size_350 = 350.0; + + static const double size_351 = 351.0; + + static const double size_352 = 352.0; + + static const double size_353 = 353.0; + + static const double size_354 = 354.0; + + static const double size_355 = 355.0; + + static const double size_356 = 356.0; + + static const double size_357 = 357.0; + + static const double size_358 = 358.0; + + static const double size_359 = 359.0; + + static const double size_360 = 360.0; + + static const double size_361 = 361.0; + + static const double size_362 = 362.0; + + static const double size_363 = 363.0; + + static const double size_364 = 364.0; + + static const double size_365 = 365.0; + + static const double size_366 = 366.0; + + static const double size_367 = 367.0; + + static const double size_368 = 368.0; + + static const double size_369 = 369.0; + + static const double size_370 = 370.0; + + static const double size_371 = 371.0; + + static const double size_372 = 372.0; + + static const double size_373 = 373.0; + + static const double size_374 = 374.0; + + static const double size_375 = 375.0; + + static const double size_376 = 376.0; + + static const double size_377 = 377.0; + + static const double size_378 = 378.0; + + static const double size_379 = 379.0; + + static const double size_380 = 380.0; + + static const double size_381 = 381.0; + + static const double size_382 = 382.0; + + static const double size_383 = 383.0; + + static const double size_384 = 384.0; + + static const double size_385 = 385.0; + + static const double size_386 = 386.0; + + static const double size_387 = 387.0; + + static const double size_388 = 388.0; + + static const double size_389 = 389.0; + + static const double size_390 = 390.0; + + static const double size_391 = 391.0; + + static const double size_392 = 392.0; + + static const double size_393 = 393.0; + + static const double size_394 = 394.0; + + static const double size_395 = 395.0; + + static const double size_396 = 396.0; + + static const double size_397 = 397.0; + + static const double size_398 = 398.0; + + static const double size_399 = 399.0; +/**/ +} \ No newline at end of file diff --git a/lib/core/constants/time_delay_cons.dart b/lib/core/constants/time_delay_cons.dart new file mode 100644 index 0000000..a81b840 --- /dev/null +++ b/lib/core/constants/time_delay_cons.dart @@ -0,0 +1,6 @@ +abstract class TimeDelayConst { + static const Duration durationMill300 = Duration(milliseconds: 300); + static const Duration durationMill800 = Duration(milliseconds: 800); + + static const Duration duration3 = Duration(seconds: 3); +} diff --git a/lib/core/core.dart b/lib/core/core.dart new file mode 100644 index 0000000..23b99b1 --- /dev/null +++ b/lib/core/core.dart @@ -0,0 +1,14 @@ +export 'router/routes_name.dart'; +export 'router/app_routes.dart'; +export 'di/injection_container.dart'; +export 'di/injection_container.config.dart'; +export 'constants/constants.dart'; +export 'theme/theme.dart'; +export 'helpers/helpers.dart'; +export 'extensions/extensions.dart'; +export 'l10n/app_localizations.dart'; +export 'l10n/app_localizations_en.dart'; +export 'l10n/app_localizations_ru.dart'; +export 'l10n/app_localizations_uz.dart'; +export 'services/services.dart'; +export 'utils/app_utils.dart'; \ No newline at end of file diff --git a/lib/core/di/injection_container.config.dart b/lib/core/di/injection_container.config.dart new file mode 100644 index 0000000..2dd17c2 --- /dev/null +++ b/lib/core/di/injection_container.config.dart @@ -0,0 +1,44 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// dart format width=80 + +// ************************************************************************** +// InjectableConfigGenerator +// ************************************************************************** + +// ignore_for_file: type=lint +// coverage:ignore-file + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:get_it/get_it.dart' as _i174; +import 'package:injectable/injectable.dart' as _i526; + +import '../../feature/common/presentation/blocs/language_bloc/language_bloc.dart' + as _i942; +import '../../feature/home/presentation/blocs/home_bloc/home_bloc.dart' + as _i1007; +import '../../feature/main/presentation/blocs/main_bloc/main_bloc.dart' + as _i580; +import '../../feature/on_boarding/presentation/blocs/splash_bloc/splash_bloc.dart' + as _i311; +import '../../food_delivery_client.dart' as _i321; +import '../router/app_routes.dart' as _i152; +import '../services/storage_service.dart' as _i306; + +extension GetItInjectableX on _i174.GetIt { + // initializes the registration of main-scope dependencies inside of GetIt + _i174.GetIt init({ + String? environment, + _i526.EnvironmentFilter? environmentFilter, + }) { + final gh = _i526.GetItHelper(this, environment, environmentFilter); + gh.factory<_i580.MainBloc>(() => _i580.MainBloc()); + gh.factory<_i311.SplashBloc>(() => _i311.SplashBloc()); + gh.factory<_i1007.HomeBloc>(() => _i1007.HomeBloc()); + gh.singleton<_i306.StorageService>(() => _i306.StorageService()); + gh.singleton<_i152.AppRoutes>(() => _i152.AppRoutes()); + gh.factory<_i942.LanguageBloc>( + () => _i942.LanguageBloc(gh<_i321.StorageService>()), + ); + return this; + } +} diff --git a/lib/core/di/injection_container.dart b/lib/core/di/injection_container.dart new file mode 100644 index 0000000..24d8cef --- /dev/null +++ b/lib/core/di/injection_container.dart @@ -0,0 +1,13 @@ +import '../../food_delivery_client.dart'; + +final sl = GetIt.instance; + +@InjectableInit( + initializerName: 'init', // default + preferRelativeImports: true, // default + asExtension: true, // default +) +Future configureDependencies() async { + sl.init(); + await sl().initialize(); +} diff --git a/lib/core/extensions/build_context_extensions.dart b/lib/core/extensions/build_context_extensions.dart new file mode 100644 index 0000000..bd69877 --- /dev/null +++ b/lib/core/extensions/build_context_extensions.dart @@ -0,0 +1,12 @@ +import 'package:flutter/cupertino.dart'; +import 'package:food_delivery_client/core/l10n/app_localizations.dart'; + +extension BuildContextExtensions on BuildContext { + MediaQueryData get mq => MediaQuery.of(this); + + double get w => mq.size.width; + + double get h => mq.size.height; + + AppLocalizations get loc => AppLocalizations.of(this)!; +} diff --git a/lib/core/extensions/color_extensions.dart b/lib/core/extensions/color_extensions.dart new file mode 100644 index 0000000..0c7187d --- /dev/null +++ b/lib/core/extensions/color_extensions.dart @@ -0,0 +1,12 @@ +import '../../food_delivery_client.dart'; + +extension ColorOpacityExtension on Color { + Color newWithOpacity(double amount) { + assert( + amount >= 0.0 && amount <= 1.0, + "Opacity must be between 0.0 and 1.0", + ); + final int alpha = (amount * 255).round(); + return withAlpha(alpha); + } +} \ No newline at end of file diff --git a/lib/core/extensions/extensions.dart b/lib/core/extensions/extensions.dart new file mode 100644 index 0000000..7e7dfe0 --- /dev/null +++ b/lib/core/extensions/extensions.dart @@ -0,0 +1,4 @@ +export 'build_context_extensions.dart'; +export 'padding_extensions.dart'; +export 'color_extensions.dart'; +export 'size_extensions.dart'; \ No newline at end of file diff --git a/lib/core/extensions/padding_extensions.dart b/lib/core/extensions/padding_extensions.dart new file mode 100644 index 0000000..7dd50f3 --- /dev/null +++ b/lib/core/extensions/padding_extensions.dart @@ -0,0 +1,43 @@ + + +import '../../food_delivery_client.dart'; + +extension WidgetPaddingExtension on Widget { + Widget paddingAll(double padding) => Padding( + padding: EdgeInsets.all(padding), + child: this, + ); + + Widget paddingSymmetric({ + double horizontal = 0.0, + double vertical = 0.0, + }) => + Padding( + padding: EdgeInsets.symmetric( + horizontal: horizontal, + vertical: vertical, + ), + child: this, + ); + + Widget paddingOnly({ + double left = 0.0, + double top = 0.0, + double right = 0.0, + double bottom = 0.0, + }) => + Padding( + padding: EdgeInsets.only( + top: top, + left: left, + right: right, + bottom: bottom, + ), + child: this, + ); + + Widget get paddingZero => Padding( + padding: EdgeInsets.zero, + child: this, + ); +} \ No newline at end of file diff --git a/lib/core/extensions/size_extensions.dart b/lib/core/extensions/size_extensions.dart new file mode 100644 index 0000000..d4d5d72 --- /dev/null +++ b/lib/core/extensions/size_extensions.dart @@ -0,0 +1,7 @@ +import 'package:flutter/cupertino.dart'; + +extension SizedBoxExtensions on num { + SizedBox get verticalSpace => SizedBox(height: toDouble()); + + SizedBox get horizontalSpace => SizedBox(width: toDouble()); +} diff --git a/lib/core/helpers/bloc_observer.dart b/lib/core/helpers/bloc_observer.dart new file mode 100644 index 0000000..3d1b7a9 --- /dev/null +++ b/lib/core/helpers/bloc_observer.dart @@ -0,0 +1,28 @@ +import '../../food_delivery_client.dart'; + +class AppBlocObserver extends BlocObserver { + @override + void onEvent(Bloc bloc, Object? event) { + super.onEvent(bloc, event); + log('🟢 Event: ${bloc.runtimeType}, $event'); + } + + @override + void onChange(BlocBase bloc, Change change) { + super.onChange(bloc, change); + log('🟡 Change: ${bloc.runtimeType}, $change'); + } + + @override + void onError(BlocBase bloc, Object error, StackTrace stackTrace) { + log('🔴 Error in ${bloc.runtimeType}: $error'); + log(stackTrace.toString()); + super.onError(bloc, error, stackTrace); + } + + @override + void onTransition(Bloc bloc, Transition transition) { + super.onTransition(bloc, transition); + log('🔵 Transition: ${bloc.runtimeType}, $transition'); + } +} diff --git a/lib/core/helpers/enum_helpers.dart b/lib/core/helpers/enum_helpers.dart new file mode 100644 index 0000000..4c14691 --- /dev/null +++ b/lib/core/helpers/enum_helpers.dart @@ -0,0 +1,20 @@ +enum RequestStatus { + initial, + loading, + loaded, + error, + warning, + loadingMore; + + bool isInitial() => this == RequestStatus.initial; + + bool isLoading() => this == RequestStatus.loading; + + bool isLoaded() => this == RequestStatus.loaded; + + bool isError() => this == RequestStatus.error; + + bool isWarning() => this == RequestStatus.warning; + + bool isLoadingMore() => this == RequestStatus.loadingMore; +} \ No newline at end of file diff --git a/lib/core/helpers/helpers.dart b/lib/core/helpers/helpers.dart new file mode 100644 index 0000000..841453b --- /dev/null +++ b/lib/core/helpers/helpers.dart @@ -0,0 +1,2 @@ +export 'enum_helpers.dart'; +export 'bloc_observer.dart'; \ No newline at end of file diff --git a/lib/core/l10n/app_localizations.dart b/lib/core/l10n/app_localizations.dart new file mode 100644 index 0000000..4262cb9 --- /dev/null +++ b/lib/core/l10n/app_localizations.dart @@ -0,0 +1,366 @@ +import 'dart:async'; + +import 'package:flutter/foundation.dart'; +import 'package:flutter/widgets.dart'; +import 'package:flutter_localizations/flutter_localizations.dart'; +import 'package:intl/intl.dart' as intl; + +import 'app_localizations_en.dart'; +import 'app_localizations_ru.dart'; +import 'app_localizations_uz.dart'; + +// ignore_for_file: type=lint + +/// Callers can lookup localized strings with an instance of AppLocalizations +/// returned by `AppLocalizations.of(context)`. +/// +/// Applications need to include `AppLocalizations.delegate()` in their app's +/// `localizationDelegates` list, and the locales they support in the app's +/// `supportedLocales` list. For example: +/// +/// ```dart +/// import 'l10n/app_localizations.dart'; +/// +/// return MaterialApp( +/// localizationsDelegates: AppLocalizations.localizationsDelegates, +/// supportedLocales: AppLocalizations.supportedLocales, +/// home: MyApplicationHome(), +/// ); +/// ``` +/// +/// ## Update pubspec.yaml +/// +/// Please make sure to update your pubspec.yaml to include the following +/// packages: +/// +/// ```yaml +/// dependencies: +/// # Internationalization support. +/// flutter_localizations: +/// sdk: flutter +/// intl: any # Use the pinned version from flutter_localizations +/// +/// # Rest of dependencies +/// ``` +/// +/// ## iOS Applications +/// +/// iOS applications define key application metadata, including supported +/// locales, in an Info.plist file that is built into the application bundle. +/// To configure the locales supported by your app, you’ll need to edit this +/// file. +/// +/// First, open your project’s ios/Runner.xcworkspace Xcode workspace file. +/// Then, in the Project Navigator, open the Info.plist file under the Runner +/// project’s Runner folder. +/// +/// Next, select the Information Property List item, select Add Item from the +/// Editor menu, then select Localizations from the pop-up menu. +/// +/// Select and expand the newly-created Localizations item then, for each +/// locale your application supports, add a new item and select the locale +/// you wish to add from the pop-up menu in the Value field. This list should +/// be consistent with the languages listed in the AppLocalizations.supportedLocales +/// property. +abstract class AppLocalizations { + AppLocalizations(String locale) + : localeName = intl.Intl.canonicalizedLocale(locale.toString()); + + final String localeName; + + static AppLocalizations? of(BuildContext context) { + return Localizations.of(context, AppLocalizations); + } + + static const LocalizationsDelegate delegate = + _AppLocalizationsDelegate(); + + /// A list of this localizations delegate along with the default localizations + /// delegates. + /// + /// Returns a list of localizations delegates containing this delegate along with + /// GlobalMaterialLocalizations.delegate, GlobalCupertinoLocalizations.delegate, + /// and GlobalWidgetsLocalizations.delegate. + /// + /// Additional delegates can be added by appending to this list in + /// MaterialApp. This list does not have to be used at all if a custom list + /// of delegates is preferred or required. + static const List> localizationsDelegates = + >[ + delegate, + GlobalMaterialLocalizations.delegate, + GlobalCupertinoLocalizations.delegate, + GlobalWidgetsLocalizations.delegate, + ]; + + /// A list of this localizations delegate's supported locales. + static const List supportedLocales = [ + Locale('en'), + Locale('ru'), + Locale('uz'), + ]; + + /// No description provided for @useYourTAxiAccount. + /// + /// In en, this message translates to: + /// **'Use your uber account to get started'** + String get useYourTAxiAccount; + + /// No description provided for @enterYourMobileNumber. + /// + /// In en, this message translates to: + /// **'Enter your mobile number'** + String get enterYourMobileNumber; + + /// No description provided for @mobileNumber. + /// + /// In en, this message translates to: + /// **'Mobile number'** + String get mobileNumber; + + /// No description provided for @next. + /// + /// In en, this message translates to: + /// **'Next'** + String get next; + + /// No description provided for @contestToGetCallAndSms. + /// + /// In en, this message translates to: + /// **'By proceeding, you consent to get calls, Whatsapp or SMS messages, including by automated means, from uber and its affiliates to the number provided.'** + String get contestToGetCallAndSms; + + /// No description provided for @continueWithGoogle. + /// + /// In en, this message translates to: + /// **'Continue with google'** + String get continueWithGoogle; + + /// No description provided for @or. + /// + /// In en, this message translates to: + /// **'or'** + String get or; + + /// No description provided for @welcomeBack. + /// + /// In en, this message translates to: + /// **'Welcome back, John'** + String get welcomeBack; + + /// No description provided for @pleaseEnterYourPassword. + /// + /// In en, this message translates to: + /// **'Please enter your password'** + String get pleaseEnterYourPassword; + + /// No description provided for @iHaveForgotPassword. + /// + /// In en, this message translates to: + /// **'I\'ve forgotten my password'** + String get iHaveForgotPassword; + + /// No description provided for @iCantSignIn. + /// + /// In en, this message translates to: + /// **'I cant sign in'** + String get iCantSignIn; + + /// No description provided for @enter4DigitCodeSentYou. + /// + /// In en, this message translates to: + /// **'Enter the 4-digit code sent to you at {phone}'** + String enter4DigitCodeSentYou(String phone); + + /// No description provided for @iHavenRecievedCode. + /// + /// In en, this message translates to: + /// **'I haven’t recieved a code (\${time})'** + String iHavenRecievedCode(String time); + + /// No description provided for @delivery. + /// + /// In en, this message translates to: + /// **'Delivery'** + String get delivery; + + /// No description provided for @pickUp. + /// + /// In en, this message translates to: + /// **'Pickup'** + String get pickUp; + + /// No description provided for @dineIn. + /// + /// In en, this message translates to: + /// **'Dine-in'** + String get dineIn; + + /// No description provided for @allCategories. + /// + /// In en, this message translates to: + /// **'All categories'** + String get allCategories; + + /// No description provided for @convenience. + /// + /// In en, this message translates to: + /// **'Convenience'** + String get convenience; + + /// No description provided for @alcohol. + /// + /// In en, this message translates to: + /// **'Alcohol'** + String get alcohol; + + /// No description provided for @petSupplies. + /// + /// In en, this message translates to: + /// **'Pet Supplies'** + String get petSupplies; + + /// No description provided for @flowers. + /// + /// In en, this message translates to: + /// **'Flowers'** + String get flowers; + + /// No description provided for @grocery. + /// + /// In en, this message translates to: + /// **'Grocery'** + String get grocery; + + /// No description provided for @american. + /// + /// In en, this message translates to: + /// **'American'** + String get american; + + /// No description provided for @speciality. + /// + /// In en, this message translates to: + /// **'Speciality'** + String get speciality; + + /// No description provided for @takeout. + /// + /// In en, this message translates to: + /// **'Takeout'** + String get takeout; + + /// No description provided for @asian. + /// + /// In en, this message translates to: + /// **'Asian'** + String get asian; + + /// No description provided for @iceCream. + /// + /// In en, this message translates to: + /// **'Ice Cream'** + String get iceCream; + + /// No description provided for @halal. + /// + /// In en, this message translates to: + /// **'Halal'** + String get halal; + + /// No description provided for @retails. + /// + /// In en, this message translates to: + /// **'Retails'** + String get retails; + + /// No description provided for @caribbean. + /// + /// In en, this message translates to: + /// **'Caribbean'** + String get caribbean; + + /// No description provided for @indian. + /// + /// In en, this message translates to: + /// **'Indian'** + String get indian; + + /// No description provided for @french. + /// + /// In en, this message translates to: + /// **'French'** + String get french; + + /// No description provided for @fastFoods. + /// + /// In en, this message translates to: + /// **'Fast Foods'** + String get fastFoods; + + /// No description provided for @burger. + /// + /// In en, this message translates to: + /// **'Burger'** + String get burger; + + /// No description provided for @ride. + /// + /// In en, this message translates to: + /// **'Ride'** + String get ride; + + /// No description provided for @chinese. + /// + /// In en, this message translates to: + /// **'Chinese'** + String get chinese; + + /// No description provided for @dessert. + /// + /// In en, this message translates to: + /// **'Dessert'** + String get dessert; + + /// No description provided for @more. + /// + /// In en, this message translates to: + /// **'More'** + String get more; +} + +class _AppLocalizationsDelegate + extends LocalizationsDelegate { + const _AppLocalizationsDelegate(); + + @override + Future load(Locale locale) { + return SynchronousFuture(lookupAppLocalizations(locale)); + } + + @override + bool isSupported(Locale locale) => + ['en', 'ru', 'uz'].contains(locale.languageCode); + + @override + bool shouldReload(_AppLocalizationsDelegate old) => false; +} + +AppLocalizations lookupAppLocalizations(Locale locale) { + // Lookup logic when only language code is specified. + switch (locale.languageCode) { + case 'en': + return AppLocalizationsEn(); + case 'ru': + return AppLocalizationsRu(); + case 'uz': + return AppLocalizationsUz(); + } + + throw FlutterError( + 'AppLocalizations.delegate failed to load unsupported locale "$locale". This is likely ' + 'an issue with the localizations generation tool. Please file an issue ' + 'on GitHub with a reproducible sample app and the gen-l10n configuration ' + 'that was used.', + ); +} diff --git a/lib/core/l10n/app_localizations_en.dart b/lib/core/l10n/app_localizations_en.dart new file mode 100644 index 0000000..b931f9e --- /dev/null +++ b/lib/core/l10n/app_localizations_en.dart @@ -0,0 +1,129 @@ +// ignore: unused_import +import 'package:intl/intl.dart' as intl; +import 'app_localizations.dart'; + +// ignore_for_file: type=lint + +/// The translations for English (`en`). +class AppLocalizationsEn extends AppLocalizations { + AppLocalizationsEn([String locale = 'en']) : super(locale); + + @override + String get useYourTAxiAccount => 'Use your uber account to get started'; + + @override + String get enterYourMobileNumber => 'Enter your mobile number'; + + @override + String get mobileNumber => 'Mobile number'; + + @override + String get next => 'Next'; + + @override + String get contestToGetCallAndSms => + 'By proceeding, you consent to get calls, Whatsapp or SMS messages, including by automated means, from uber and its affiliates to the number provided.'; + + @override + String get continueWithGoogle => 'Continue with google'; + + @override + String get or => 'or'; + + @override + String get welcomeBack => 'Welcome back, John'; + + @override + String get pleaseEnterYourPassword => 'Please enter your password'; + + @override + String get iHaveForgotPassword => 'I\'ve forgotten my password'; + + @override + String get iCantSignIn => 'I cant sign in'; + + @override + String enter4DigitCodeSentYou(String phone) { + return 'Enter the 4-digit code sent to you at $phone'; + } + + @override + String iHavenRecievedCode(String time) { + return 'I haven’t recieved a code (\$$time)'; + } + + @override + String get delivery => 'Delivery'; + + @override + String get pickUp => 'Pickup'; + + @override + String get dineIn => 'Dine-in'; + + @override + String get allCategories => 'All categories'; + + @override + String get convenience => 'Convenience'; + + @override + String get alcohol => 'Alcohol'; + + @override + String get petSupplies => 'Pet Supplies'; + + @override + String get flowers => 'Flowers'; + + @override + String get grocery => 'Grocery'; + + @override + String get american => 'American'; + + @override + String get speciality => 'Speciality'; + + @override + String get takeout => 'Takeout'; + + @override + String get asian => 'Asian'; + + @override + String get iceCream => 'Ice Cream'; + + @override + String get halal => 'Halal'; + + @override + String get retails => 'Retails'; + + @override + String get caribbean => 'Caribbean'; + + @override + String get indian => 'Indian'; + + @override + String get french => 'French'; + + @override + String get fastFoods => 'Fast Foods'; + + @override + String get burger => 'Burger'; + + @override + String get ride => 'Ride'; + + @override + String get chinese => 'Chinese'; + + @override + String get dessert => 'Dessert'; + + @override + String get more => 'More'; +} diff --git a/lib/core/l10n/app_localizations_ru.dart b/lib/core/l10n/app_localizations_ru.dart new file mode 100644 index 0000000..3798ca9 --- /dev/null +++ b/lib/core/l10n/app_localizations_ru.dart @@ -0,0 +1,130 @@ +// ignore: unused_import +import 'package:intl/intl.dart' as intl; +import 'app_localizations.dart'; + +// ignore_for_file: type=lint + +/// The translations for Russian (`ru`). +class AppLocalizationsRu extends AppLocalizations { + AppLocalizationsRu([String locale = 'ru']) : super(locale); + + @override + String get useYourTAxiAccount => + 'Используйте свой аккаунт Uber, чтобы начать'; + + @override + String get enterYourMobileNumber => 'Введите свой номер телефона'; + + @override + String get mobileNumber => 'Номер телефона'; + + @override + String get next => 'Далее'; + + @override + String get contestToGetCallAndSms => + 'Продолжая, вы соглашаетесь получать звонки, сообщения WhatsApp или SMS, включая автоматические, от Uber и его партнеров на указанный номер.'; + + @override + String get continueWithGoogle => 'Продолжить через Google'; + + @override + String get or => 'или'; + + @override + String get welcomeBack => 'С возвращением, null'; + + @override + String get pleaseEnterYourPassword => 'Пожалуйста, введите свой пароль'; + + @override + String get iHaveForgotPassword => 'Я забыл пароль'; + + @override + String get iCantSignIn => 'Не могу войти в систему'; + + @override + String enter4DigitCodeSentYou(String phone) { + return 'Введите 4-значный код, отправленный на номер $phone'; + } + + @override + String iHavenRecievedCode(String time) { + return 'Я не получил код (\$$time)'; + } + + @override + String get delivery => 'Доставка'; + + @override + String get pickUp => 'Самовывоз'; + + @override + String get dineIn => 'На месте'; + + @override + String get allCategories => 'Все категории'; + + @override + String get convenience => 'Магазин'; + + @override + String get alcohol => 'Алкоголь'; + + @override + String get petSupplies => 'Для питомцев'; + + @override + String get flowers => 'Цветы'; + + @override + String get grocery => 'Продукты'; + + @override + String get american => 'Американская'; + + @override + String get speciality => 'Особенная'; + + @override + String get takeout => 'На вынос'; + + @override + String get asian => 'Азиатская'; + + @override + String get iceCream => 'Мороженое'; + + @override + String get halal => 'Халяль'; + + @override + String get retails => 'Розница'; + + @override + String get caribbean => 'Карибская'; + + @override + String get indian => 'Индийская'; + + @override + String get french => 'Французская'; + + @override + String get fastFoods => 'Фастфуд'; + + @override + String get burger => 'Бургер'; + + @override + String get ride => 'Поездка'; + + @override + String get chinese => 'Китайская'; + + @override + String get dessert => 'Десерт'; + + @override + String get more => 'Ещё'; +} diff --git a/lib/core/l10n/app_localizations_uz.dart b/lib/core/l10n/app_localizations_uz.dart new file mode 100644 index 0000000..4f53b63 --- /dev/null +++ b/lib/core/l10n/app_localizations_uz.dart @@ -0,0 +1,130 @@ +// ignore: unused_import +import 'package:intl/intl.dart' as intl; +import 'app_localizations.dart'; + +// ignore_for_file: type=lint + +/// The translations for Uzbek (`uz`). +class AppLocalizationsUz extends AppLocalizations { + AppLocalizationsUz([String locale = 'uz']) : super(locale); + + @override + String get useYourTAxiAccount => + 'Boshlash uchun Uber hisobingizdan foydalaning'; + + @override + String get enterYourMobileNumber => 'Telefon raqamingizni kiriting'; + + @override + String get mobileNumber => 'Telefon raqami'; + + @override + String get next => 'Keyingi'; + + @override + String get contestToGetCallAndSms => + 'Davom etish orqali siz Uber va uning hamkorlaridan avtomatlashtirilgan qo‘ng‘iroqlar, WhatsApp yoki SMS xabarlarini olishga rozilik bildirasiz.'; + + @override + String get continueWithGoogle => 'Google orqali davom etish'; + + @override + String get or => 'yoki'; + + @override + String get welcomeBack => 'Xush kelibsiz, null'; + + @override + String get pleaseEnterYourPassword => 'Iltimos, parolingizni kiriting'; + + @override + String get iHaveForgotPassword => 'Parolimni unutdim'; + + @override + String get iCantSignIn => 'Kirishda muammo bor'; + + @override + String enter4DigitCodeSentYou(String phone) { + return 'Sizga $phone raqamiga yuborilgan 4 xonali kodni kiriting'; + } + + @override + String iHavenRecievedCode(String time) { + return 'Men hali kodni olmabman (\$$time)'; + } + + @override + String get delivery => 'Yetkazib berish'; + + @override + String get pickUp => 'Olib ketish'; + + @override + String get dineIn => 'Joyida'; + + @override + String get allCategories => 'Barcha toifalar'; + + @override + String get convenience => 'Do‘kon'; + + @override + String get alcohol => 'Alkogol'; + + @override + String get petSupplies => 'Uy hayvoni uchun'; + + @override + String get flowers => 'Gullar'; + + @override + String get grocery => 'Bozor'; + + @override + String get american => 'Amerika'; + + @override + String get speciality => 'Maxsus'; + + @override + String get takeout => 'Olib ketish'; + + @override + String get asian => 'Osiyo'; + + @override + String get iceCream => 'Muzqaymoq'; + + @override + String get halal => 'Halol'; + + @override + String get retails => 'Do‘konlar'; + + @override + String get caribbean => 'Karib'; + + @override + String get indian => 'Hind'; + + @override + String get french => 'Fransuz'; + + @override + String get fastFoods => 'Fast-fud'; + + @override + String get burger => 'Burger'; + + @override + String get ride => 'Yo‘l'; + + @override + String get chinese => 'Xitoy'; + + @override + String get dessert => 'Desert'; + + @override + String get more => 'Ko\'proq'; +} diff --git a/lib/core/router/app_routes.dart b/lib/core/router/app_routes.dart new file mode 100644 index 0000000..27faa14 --- /dev/null +++ b/lib/core/router/app_routes.dart @@ -0,0 +1,27 @@ +import 'package:flutter/cupertino.dart'; +import 'package:food_delivery_client/feature/home/presentation/pages/categories_page/categories_page.dart'; +import 'package:food_delivery_client/feature/on_boarding/presentation/pages/splash_page/splash_page.dart'; + +import '../../food_delivery_client.dart'; + +final GlobalKey navigatorKey = GlobalKey(); + +@singleton +class AppRoutes { + final GoRouter router = GoRouter( + navigatorKey: navigatorKey, + initialLocation: Routes.splash, + + routes: [ + GoRoute(path: Routes.splash, builder: (context, state) => SplashPage()), + GoRoute( + path: Routes.main, + pageBuilder: (context, state) => CupertinoPage(child: MainPage()), + ), + GoRoute( + path: Routes.categories, + pageBuilder: (context, state) => CupertinoPage(child: CategoriesPage()), + ), + ], + ); +} diff --git a/lib/core/router/routes_name.dart b/lib/core/router/routes_name.dart new file mode 100644 index 0000000..46c0f2d --- /dev/null +++ b/lib/core/router/routes_name.dart @@ -0,0 +1,8 @@ +abstract class Routes { + static const String splash = '/splash'; + static const String login = '/login'; + static const String register = '/register'; + static const String main = '/main'; + static const String categories = '/categories'; + +} diff --git a/lib/core/services/services.dart b/lib/core/services/services.dart new file mode 100644 index 0000000..8650db9 --- /dev/null +++ b/lib/core/services/services.dart @@ -0,0 +1 @@ +export 'storage_service.dart'; \ No newline at end of file diff --git a/lib/core/services/storage_service.dart b/lib/core/services/storage_service.dart new file mode 100644 index 0000000..6df56ae --- /dev/null +++ b/lib/core/services/storage_service.dart @@ -0,0 +1,32 @@ +import 'package:food_delivery_client/food_delivery_client.dart'; + +@singleton +class StorageService { + static late SharedPreferences _sharedPreference; + + Future initialize() async { + _sharedPreference = await SharedPreferences.getInstance(); + } + + void setString({required String key, required String value}) { + _sharedPreference.setString(key, value); + } + + String? getString({required String key}) { + return _sharedPreference.getString(key); + } +} + +/* +static StorageService? _instance; + + const StorageService._(); + + static Future initialize() async { + if (_instance == null) { + _sharedPreference = await SharedPreferences.getInstance(); + _instance = StorageService._(); + } + return _instance!; + } + */ diff --git a/lib/core/theme/app_colors.dart b/lib/core/theme/app_colors.dart new file mode 100644 index 0000000..0774c90 --- /dev/null +++ b/lib/core/theme/app_colors.dart @@ -0,0 +1,23 @@ +import '../../food_delivery_client.dart'; + +abstract class AppColors { + static const Color cTransparent = Colors.transparent; + static const Color cRed = Colors.red; + + static const Color cFFFFFF = Color(0xFFFFFFFF); + static const Color c000000 = Color(0xFF000000); + static const Color cB5B5B5 = Color(0xFFB5B5B5); + static const Color c142328 = Color(0xFF142328); + static const Color cE6E6E6 = Color(0xFFE6E6E6); + static const Color cF6F6F6 = Color(0xFFF6F6F6); + static const Color cEEEEEE = Color(0xFFEEEEEE); + static const Color c6B6B6B = Color(0xFF6B6B6B); + static const Color c34A853 = Color(0xFF34A853); + static const Color cD2D7F0 = Color(0xFFD2D7F0); + static const Color c9EE2B8 = Color(0xFF9EE2B8); + static const Color cE2CC9E = Color(0xFFE2CC9E); + static const Color cC99EE2 = Color(0xFFC99EE2); + static const Color cE29EC7 = Color(0xFFE29EC7); + static const Color c545454 = Color(0xFF545454); + +} diff --git a/lib/core/theme/app_icons.dart b/lib/core/theme/app_icons.dart new file mode 100644 index 0000000..9b53a26 --- /dev/null +++ b/lib/core/theme/app_icons.dart @@ -0,0 +1,27 @@ +abstract class AppIcons { + //baseurl + static const String baseUrl = 'assets/icons'; + + //icons + static const String icHome = "$baseUrl/ic_home.svg"; + static const String icBrowse = "$baseUrl/ic_browse.svg"; + static const String icBasket = "$baseUrl/ic_basket.svg"; + static const String icAccount = "$baseUrl/ic_account.svg"; + static const String icHomeActive = "$baseUrl/ic_home_active.svg"; + static const String icBrowseActive = "$baseUrl/ic_browse_active.svg"; + static const String icBasketActive = "$baseUrl/ic_basket_active.svg"; + static const String icAccountActive = "$baseUrl/ic_account_active.svg"; + static const String icBack = "$baseUrl/ic_back.svg"; + static const String icDislike = "$baseUrl/ic_dislike.svg"; + static const String icEat = "$baseUrl/ic_eat.svg"; + static const String icEye = "$baseUrl/ic_eye.svg"; + static const String icFilter = "$baseUrl/ic_filter.svg"; + static const String icNext = "$baseUrl/ic_next.svg"; + static const String icNextGrey = "$baseUrl/ic_next_grey.svg"; + static const String icOval = "$baseUrl/ic_oval.svg"; + static const String icUber = "$baseUrl/ic_uber.svg"; + static const String icLocation = "$baseUrl/ic_location.svg"; + static const String icArrowBottom = "$baseUrl/ic_arrow_btm.svg"; + + ///.png icons +} diff --git a/lib/core/theme/app_images.dart b/lib/core/theme/app_images.dart new file mode 100644 index 0000000..4fe7cbd --- /dev/null +++ b/lib/core/theme/app_images.dart @@ -0,0 +1,27 @@ +abstract class AppImages { + static const String baseUrl = "assets/images"; + + static const String imgConvenience = "$baseUrl/img_convenience.png"; + static const String imgAlcohol = "$baseUrl/img_alcohol.png"; + static const String imgPetSupplies = "$baseUrl/img_pet_supplies.png"; + static const String imgFlowers = "$baseUrl/img_flowers.png"; + static const String imgGrocery = "$baseUrl/img_grocery.png"; + static const String imgAmerican = "$baseUrl/img_american.png"; + static const String imgSpeciality = "$baseUrl/img_speciality.jpg"; + static const String imgTakeout = "$baseUrl/img_takeout.png"; + static const String imgAsian = "$baseUrl/img_asian.png"; + static const String imgIceCream = "$baseUrl/img_ice_cream.png"; + static const String imgHalal= "$baseUrl/img_halal.png"; + static const String imgRetails= "$baseUrl/img_retails.png"; + static const String imgCarribean= "$baseUrl/img_carribean.png"; + static const String imgIndian= "$baseUrl/img_indian.png"; + static const String imgFrench = "$baseUrl/img_french.png"; + static const String imgFastFoods = "$baseUrl/img_fast_food.png"; + static const String imgBurger = "$baseUrl/img_burger.png"; + static const String imgRide = "$baseUrl/img_ride.png"; + static const String imgChinese= "$baseUrl/img_chinese.png"; + static const String imgDesert = "$baseUrl/img_desert.png"; + static const String imgPickUp= "$baseUrl/img_pick_up.png"; + + +} diff --git a/lib/core/theme/app_textstyles.dart b/lib/core/theme/app_textstyles.dart new file mode 100644 index 0000000..7eaa8a5 --- /dev/null +++ b/lib/core/theme/app_textstyles.dart @@ -0,0 +1,87 @@ +import '../../food_delivery_client.dart'; + +abstract class AppTextStyles { + static const Color _defaultColor = AppColors.c000000; + static const String _fontRegular = AppLocaleKeys.fontRegular; + static const String _fontMedium = AppLocaleKeys.fontMedium; + static const String _fontBold = AppLocaleKeys.fontBold; + static const String _fontLight = AppLocaleKeys.fontLight; + + static const TextStyle size10Regular = TextStyle( + color: _defaultColor, + fontSize: SizesCons.size_10, + fontFamily: _fontRegular, + fontWeight: FontWeight.w400, + ); + + static const TextStyle size12Regular = TextStyle( + color: _defaultColor, + fontSize: SizesCons.size_12, + fontFamily: _fontRegular, + fontWeight: FontWeight.w400, + ); + + static const TextStyle size14Regular = TextStyle( + color: _defaultColor, + fontSize: SizesCons.size_14, + fontFamily: _fontRegular, + fontWeight: FontWeight.w400, + ); + + static const TextStyle size20Regular = TextStyle( + color: _defaultColor, + fontSize: SizesCons.size_20, + fontFamily: _fontRegular, + fontWeight: FontWeight.w400, + ); + + static const TextStyle size14Medium = TextStyle( + color: _defaultColor, + fontSize: SizesCons.size_14, + fontFamily: _fontMedium, + fontWeight: FontWeight.w500, + ); + + static const TextStyle size15Medium = TextStyle( + color: _defaultColor, + fontSize: SizesCons.size_15, + fontFamily: _fontMedium, + fontWeight: FontWeight.w500, + ); + + static const TextStyle size16Medium = TextStyle( + color: _defaultColor, + fontSize: SizesCons.size_16, + fontFamily: _fontMedium, + fontWeight: FontWeight.w500, + ); + + static const TextStyle size18Medium = TextStyle( + color: _defaultColor, + fontSize: SizesCons.size_18, + fontFamily: _fontMedium, + fontWeight: FontWeight.w500, + ); + + static const TextStyle size17Bold = TextStyle( + color: _defaultColor, + fontSize: SizesCons.size_17, + fontFamily: _fontBold, + fontWeight: FontWeight.w700, + ); + + static const TextStyle size24Bold = TextStyle( + color: _defaultColor, + fontSize: SizesCons.size_24, + fontFamily: _fontBold, + fontWeight: FontWeight.w700, + ); +} + +/* +TextStyle( + color: _defaultColor, + fontSize: SizesCons.size_10, + fontFamily: _fontRegular, + ); + */ diff --git a/lib/core/theme/app_theme.dart b/lib/core/theme/app_theme.dart new file mode 100644 index 0000000..b51a9fa --- /dev/null +++ b/lib/core/theme/app_theme.dart @@ -0,0 +1,64 @@ +import '../../food_delivery_client.dart'; + +abstract class AppTheme { + static ThemeData get lightTheme => ThemeData.light().copyWith( + brightness: Brightness.light, + appBarTheme: AppBarTheme( + elevation: 0, + backgroundColor: AppColors.cFFFFFF, + foregroundColor: AppColors.cFFFFFF, + surfaceTintColor: AppColors.cTransparent, + ), + scaffoldBackgroundColor: AppColors.cFFFFFF, + bottomNavigationBarTheme: BottomNavigationBarThemeData( + elevation:0, + showSelectedLabels: true, + showUnselectedLabels: true, + backgroundColor: AppColors.cFFFFFF, + type: BottomNavigationBarType.fixed, + unselectedItemColor: AppColors.cB5B5B5, + selectedItemColor:AppColors.c000000, + selectedLabelStyle: AppTextStyles.size10Regular.copyWith( + color: Colors.red, + ), + unselectedLabelStyle: AppTextStyles.size10Regular.copyWith( + color: AppColors.c000000, + ), + // unselectedLabelStyle: AppTextStyles.size14Medium.copyWith( + // color: AppColors.c888888, + // fontFamily: "fontNorms", + // ), + ), + // inputDecorationTheme: InputDecorationTheme( + // filled: true, + // fillColor: AppColors.cMainBg, + // hintStyle: AppTextStyles.size15Medium.copyWith(color: AppColors.c888888), + // contentPadding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 10.h), + // errorStyle: AppTextStyles.size12Medium.copyWith(color: AppColors.cRed), + // errorBorder: OutlineInputBorder( + // borderRadius: BorderRadius.circular(12.sp), + // borderSide: BorderSide(color: AppColors.cRed, width: 1.5.r), + // ), + // focusedBorder: OutlineInputBorder( + // borderRadius: BorderRadius.circular(12.sp), + // borderSide: BorderSide(color: AppColors.cFF9914, width: 1.5.r), + // ), + // enabledBorder: OutlineInputBorder( + // borderRadius: BorderRadius.circular(12.sp), + // borderSide: BorderSide(color: AppColors.cEDEDED, width: 1.5.r), + // ), + // focusedErrorBorder: OutlineInputBorder( + // borderRadius: BorderRadius.circular(12.sp), + // borderSide: BorderSide(color: AppColors.cRed, width: 1.5.r), + // ), + // disabledBorder: OutlineInputBorder( + // borderRadius: BorderRadius.circular(12.sp), + // borderSide: BorderSide(color: AppColors.cEDEDED, width: 1.5.r), + // ), + // border: OutlineInputBorder( + // borderRadius: BorderRadius.circular(12.sp), + // borderSide: BorderSide(color: AppColors.cEDEDED, width: 1.5.r), + // ), + // ), + ); +} diff --git a/lib/core/theme/theme.dart b/lib/core/theme/theme.dart new file mode 100644 index 0000000..bdffd6d --- /dev/null +++ b/lib/core/theme/theme.dart @@ -0,0 +1,5 @@ +export 'app_icons.dart'; +export 'app_images.dart'; +export 'app_textstyles.dart'; +export 'app_theme.dart'; +export 'app_colors.dart'; \ No newline at end of file diff --git a/lib/core/utils/app_utils.dart b/lib/core/utils/app_utils.dart new file mode 100644 index 0000000..773c076 --- /dev/null +++ b/lib/core/utils/app_utils.dart @@ -0,0 +1,90 @@ +import '../../food_delivery_client.dart'; + +abstract class AppUtils { + static const Radius kRadius = Radius.zero; + static const Radius kRadius8 = Radius.circular(8); + static const Radius kRadius12 = Radius.circular(12); + static const Radius kRadius14 = Radius.circular(14); + static const Radius kRadius15 = Radius.circular(15); + static const Radius kRadius16 = Radius.circular(16); + static const Radius kRadius20 = Radius.circular(20); + static const Radius kRadius22 = Radius.circular(22); + static const Radius kRadius24 = Radius.circular(24); + static const Radius kRadius25 = Radius.circular(25); + static const BorderRadius kBorderRadius = BorderRadius.zero; + static const BorderRadius kBorderRadius2 = BorderRadius.all( + Radius.circular(2), + ); + static const BorderRadius kBorderRadius4 = BorderRadius.all( + Radius.circular(4), + ); + static const BorderRadius kBorderRadius6 = BorderRadius.all( + Radius.circular(6), + ); + static const BorderRadius kBorderRadius8 = BorderRadius.all( + Radius.circular(8), + ); + static const BorderRadius kBorderRadius9 = BorderRadius.all( + Radius.circular(9), + ); + static const BorderRadius kBorderRadius10 = BorderRadius.all( + Radius.circular(10), + ); + static const BorderRadius kBorderRadius12 = BorderRadius.all( + Radius.circular(12), + ); + static const BorderRadius kBorderRadius14 = BorderRadius.all( + Radius.circular(14), + ); + static const BorderRadius kBorderRadius16 = BorderRadius.all( + Radius.circular(16), + ); + static const BorderRadius kBorderRadius18 = BorderRadius.all( + Radius.circular(18), + ); + static const BorderRadius kBorderRadius20 = BorderRadius.all( + Radius.circular(20), + ); + static const BorderRadius kBorderRadius22 = BorderRadius.all( + Radius.circular(22), + ); + static const BorderRadius kBorderRadius24 = BorderRadius.all( + Radius.circular(24), + ); + + static const BorderRadius kBorderRadius25 = BorderRadius.all( + Radius.circular(25), + ); + static const BorderRadius kBorderRadius26 = BorderRadius.all( + Radius.circular(26), + ); + static const BorderRadius kBorderRadius28 = BorderRadius.all( + Radius.circular(28), + ); + static const BorderRadius kBorderRadius30 = BorderRadius.all( + Radius.circular(30), + ); + static const BorderRadius kBorderRadius32 = BorderRadius.all( + Radius.circular(32), + ); + static const BorderRadius kBorderRadius34 = BorderRadius.all( + Radius.circular(34), + ); + static const BorderRadius kBorderRadius36 = BorderRadius.all( + Radius.circular(36), + ); + static const BorderRadius kBorderRadius38 = BorderRadius.all( + Radius.circular(38), + ); + static const BorderRadius kBorderRadius40 = BorderRadius.all( + Radius.circular(40), + ); + static const BorderRadius kBorderRadiusTop20Bottom20 = BorderRadius.only( + bottomRight: kRadius20, + topRight: kRadius20, + ); + static const BorderRadius kBorderRadiusTop15Bottom15 = BorderRadius.only( + bottomRight: kRadius15, + topRight: kRadius15, + ); +} diff --git a/lib/feature/account/account.dart b/lib/feature/account/account.dart new file mode 100644 index 0000000..704a6f0 --- /dev/null +++ b/lib/feature/account/account.dart @@ -0,0 +1 @@ +export 'presentation/pages/account_page/account_page.dart'; diff --git a/lib/feature/account/presentation/pages/account_page/account_page.dart b/lib/feature/account/presentation/pages/account_page/account_page.dart new file mode 100644 index 0000000..55f6449 --- /dev/null +++ b/lib/feature/account/presentation/pages/account_page/account_page.dart @@ -0,0 +1,42 @@ +import '../../../../../food_delivery_client.dart'; + +class AccountPage extends StatelessWidget { + const AccountPage({super.key}); + + @override + Widget build(BuildContext context) { + return BlocBuilder( + builder: (context, state) { + return WLayout( + child: Scaffold( + body: Center( + child: Column( + children: [ + Text(context.loc.iCantSignIn), + TextButton( + onPressed: () { + if (state.currentLocale == Locale("uz")) { + context.read().add( + LanguageEvent.changed(Locale('ru')), + ); + } else if (state.currentLocale == Locale("ru")) { + context.read().add( + LanguageEvent.changed(Locale('en')), + ); + } else { + context.read().add( + LanguageEvent.changed(Locale('uz')), + ); + } + }, + child: Text("changelang"), + ), + ], + ), + ), + ), + ); + }, + ); + } +} diff --git a/lib/feature/basket/basket.dart b/lib/feature/basket/basket.dart new file mode 100644 index 0000000..559d8b5 --- /dev/null +++ b/lib/feature/basket/basket.dart @@ -0,0 +1 @@ +export 'presentation/pages/basket_page/basket_page.dart'; \ No newline at end of file diff --git a/lib/feature/basket/presentation/pages/basket_page/basket_page.dart b/lib/feature/basket/presentation/pages/basket_page/basket_page.dart new file mode 100644 index 0000000..1cbaca7 --- /dev/null +++ b/lib/feature/basket/presentation/pages/basket_page/basket_page.dart @@ -0,0 +1,12 @@ +import '../../../../../food_delivery_client.dart'; + +class BasketPage extends StatelessWidget { + const BasketPage({super.key}); + + @override + Widget build(BuildContext context) { + return WLayout( + child: Scaffold(body: Center(child: Text(context.loc.useYourTAxiAccount))), + ); + } +} diff --git a/lib/feature/browse/browse.dart b/lib/feature/browse/browse.dart new file mode 100644 index 0000000..f4d8b77 --- /dev/null +++ b/lib/feature/browse/browse.dart @@ -0,0 +1 @@ +export 'presentation/pages/browse_page/browse_page.dart'; diff --git a/lib/feature/browse/presentation/pages/browse_page/browse_page.dart b/lib/feature/browse/presentation/pages/browse_page/browse_page.dart new file mode 100644 index 0000000..5ac8dcb --- /dev/null +++ b/lib/feature/browse/presentation/pages/browse_page/browse_page.dart @@ -0,0 +1,12 @@ +import '../../../../../food_delivery_client.dart'; + +class BrowsePage extends StatelessWidget { + const BrowsePage({super.key}); + + @override + Widget build(BuildContext context) { + return WLayout( + child: Scaffold(body: Center(child: Text(context.loc.mobileNumber))), + ); + } +} diff --git a/lib/feature/common/common.dart b/lib/feature/common/common.dart new file mode 100644 index 0000000..e024ca3 --- /dev/null +++ b/lib/feature/common/common.dart @@ -0,0 +1,2 @@ +export 'presentation/widgets/widgets.dart'; +export 'presentation/blocs/language_bloc/language_bloc.dart'; \ No newline at end of file diff --git a/lib/feature/common/presentation/blocs/language_bloc/language_bloc.dart b/lib/feature/common/presentation/blocs/language_bloc/language_bloc.dart new file mode 100644 index 0000000..aba65b2 --- /dev/null +++ b/lib/feature/common/presentation/blocs/language_bloc/language_bloc.dart @@ -0,0 +1,36 @@ + +import '../../../../../food_delivery_client.dart'; + +part 'language_event.dart'; + +part 'language_state.dart'; + +part 'language_bloc.freezed.dart'; +@injectable +class LanguageBloc extends Bloc { + final StorageService _storageService; + + LanguageBloc(this._storageService) : super(const LanguageState()) { + on<_Started>(_onStarted); + + on<_Changeded>(_onChanged); + } + + Future _onStarted(_Started event, Emitter emit) async { + final lang = _storageService.getString(key: AppLocaleKeys.language); + + if (lang != null) { + emit(state.copyWith(currentLocale: Locale(lang))); + } else { + emit(state.copyWith(currentLocale: Locale("en"))); + } + } + + Future _onChanged(_Changeded event, Emitter emit) async { + _storageService.setString( + key: AppLocaleKeys.language, + value: event.locale.languageCode, + ); + emit(state.copyWith(currentLocale: event.locale)); + } +} diff --git a/lib/feature/common/presentation/blocs/language_bloc/language_bloc.freezed.dart b/lib/feature/common/presentation/blocs/language_bloc/language_bloc.freezed.dart new file mode 100644 index 0000000..b4a8b4d --- /dev/null +++ b/lib/feature/common/presentation/blocs/language_bloc/language_bloc.freezed.dart @@ -0,0 +1,535 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// coverage:ignore-file +// ignore_for_file: type=lint +// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark + +part of 'language_bloc.dart'; + +// ************************************************************************** +// FreezedGenerator +// ************************************************************************** + +// dart format off +T _$identity(T value) => value; +/// @nodoc +mixin _$LanguageEvent { + + + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is LanguageEvent); +} + + +@override +int get hashCode => runtimeType.hashCode; + +@override +String toString() { + return 'LanguageEvent()'; +} + + +} + +/// @nodoc +class $LanguageEventCopyWith<$Res> { +$LanguageEventCopyWith(LanguageEvent _, $Res Function(LanguageEvent) __); +} + + +/// Adds pattern-matching-related methods to [LanguageEvent]. +extension LanguageEventPatterns on LanguageEvent { +/// A variant of `map` that fallback to returning `orElse`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeMap({TResult Function( _Started value)? started,TResult Function( _Changeded value)? changed,required TResult orElse(),}){ +final _that = this; +switch (_that) { +case _Started() when started != null: +return started(_that);case _Changeded() when changed != null: +return changed(_that);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// Callbacks receives the raw object, upcasted. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case final Subclass2 value: +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult map({required TResult Function( _Started value) started,required TResult Function( _Changeded value) changed,}){ +final _that = this; +switch (_that) { +case _Started(): +return started(_that);case _Changeded(): +return changed(_that);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `map` that fallback to returning `null`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? mapOrNull({TResult? Function( _Started value)? started,TResult? Function( _Changeded value)? changed,}){ +final _that = this; +switch (_that) { +case _Started() when started != null: +return started(_that);case _Changeded() when changed != null: +return changed(_that);case _: + return null; + +} +} +/// A variant of `when` that fallback to an `orElse` callback. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeWhen({TResult Function()? started,TResult Function( Locale locale)? changed,required TResult orElse(),}) {final _that = this; +switch (_that) { +case _Started() when started != null: +return started();case _Changeded() when changed != null: +return changed(_that.locale);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// As opposed to `map`, this offers destructuring. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case Subclass2(:final field2): +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult when({required TResult Function() started,required TResult Function( Locale locale) changed,}) {final _that = this; +switch (_that) { +case _Started(): +return started();case _Changeded(): +return changed(_that.locale);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `when` that fallback to returning `null` +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? whenOrNull({TResult? Function()? started,TResult? Function( Locale locale)? changed,}) {final _that = this; +switch (_that) { +case _Started() when started != null: +return started();case _Changeded() when changed != null: +return changed(_that.locale);case _: + return null; + +} +} + +} + +/// @nodoc + + +class _Started implements LanguageEvent { + const _Started(); + + + + + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is _Started); +} + + +@override +int get hashCode => runtimeType.hashCode; + +@override +String toString() { + return 'LanguageEvent.started()'; +} + + +} + + + + +/// @nodoc + + +class _Changeded implements LanguageEvent { + const _Changeded(this.locale); + + + final Locale locale; + +/// Create a copy of LanguageEvent +/// with the given fields replaced by the non-null parameter values. +@JsonKey(includeFromJson: false, includeToJson: false) +@pragma('vm:prefer-inline') +_$ChangededCopyWith<_Changeded> get copyWith => __$ChangededCopyWithImpl<_Changeded>(this, _$identity); + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is _Changeded&&(identical(other.locale, locale) || other.locale == locale)); +} + + +@override +int get hashCode => Object.hash(runtimeType,locale); + +@override +String toString() { + return 'LanguageEvent.changed(locale: $locale)'; +} + + +} + +/// @nodoc +abstract mixin class _$ChangededCopyWith<$Res> implements $LanguageEventCopyWith<$Res> { + factory _$ChangededCopyWith(_Changeded value, $Res Function(_Changeded) _then) = __$ChangededCopyWithImpl; +@useResult +$Res call({ + Locale locale +}); + + + + +} +/// @nodoc +class __$ChangededCopyWithImpl<$Res> + implements _$ChangededCopyWith<$Res> { + __$ChangededCopyWithImpl(this._self, this._then); + + final _Changeded _self; + final $Res Function(_Changeded) _then; + +/// Create a copy of LanguageEvent +/// with the given fields replaced by the non-null parameter values. +@pragma('vm:prefer-inline') $Res call({Object? locale = null,}) { + return _then(_Changeded( +null == locale ? _self.locale : locale // ignore: cast_nullable_to_non_nullable +as Locale, + )); +} + + +} + +/// @nodoc +mixin _$LanguageState { + + Locale get currentLocale; +/// Create a copy of LanguageState +/// with the given fields replaced by the non-null parameter values. +@JsonKey(includeFromJson: false, includeToJson: false) +@pragma('vm:prefer-inline') +$LanguageStateCopyWith get copyWith => _$LanguageStateCopyWithImpl(this as LanguageState, _$identity); + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is LanguageState&&(identical(other.currentLocale, currentLocale) || other.currentLocale == currentLocale)); +} + + +@override +int get hashCode => Object.hash(runtimeType,currentLocale); + +@override +String toString() { + return 'LanguageState(currentLocale: $currentLocale)'; +} + + +} + +/// @nodoc +abstract mixin class $LanguageStateCopyWith<$Res> { + factory $LanguageStateCopyWith(LanguageState value, $Res Function(LanguageState) _then) = _$LanguageStateCopyWithImpl; +@useResult +$Res call({ + Locale currentLocale +}); + + + + +} +/// @nodoc +class _$LanguageStateCopyWithImpl<$Res> + implements $LanguageStateCopyWith<$Res> { + _$LanguageStateCopyWithImpl(this._self, this._then); + + final LanguageState _self; + final $Res Function(LanguageState) _then; + +/// Create a copy of LanguageState +/// with the given fields replaced by the non-null parameter values. +@pragma('vm:prefer-inline') @override $Res call({Object? currentLocale = null,}) { + return _then(_self.copyWith( +currentLocale: null == currentLocale ? _self.currentLocale : currentLocale // ignore: cast_nullable_to_non_nullable +as Locale, + )); +} + +} + + +/// Adds pattern-matching-related methods to [LanguageState]. +extension LanguageStatePatterns on LanguageState { +/// A variant of `map` that fallback to returning `orElse`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeMap(TResult Function( _LanguageState value)? $default,{required TResult orElse(),}){ +final _that = this; +switch (_that) { +case _LanguageState() when $default != null: +return $default(_that);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// Callbacks receives the raw object, upcasted. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case final Subclass2 value: +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult map(TResult Function( _LanguageState value) $default,){ +final _that = this; +switch (_that) { +case _LanguageState(): +return $default(_that);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `map` that fallback to returning `null`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? mapOrNull(TResult? Function( _LanguageState value)? $default,){ +final _that = this; +switch (_that) { +case _LanguageState() when $default != null: +return $default(_that);case _: + return null; + +} +} +/// A variant of `when` that fallback to an `orElse` callback. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeWhen(TResult Function( Locale currentLocale)? $default,{required TResult orElse(),}) {final _that = this; +switch (_that) { +case _LanguageState() when $default != null: +return $default(_that.currentLocale);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// As opposed to `map`, this offers destructuring. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case Subclass2(:final field2): +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult when(TResult Function( Locale currentLocale) $default,) {final _that = this; +switch (_that) { +case _LanguageState(): +return $default(_that.currentLocale);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `when` that fallback to returning `null` +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? whenOrNull(TResult? Function( Locale currentLocale)? $default,) {final _that = this; +switch (_that) { +case _LanguageState() when $default != null: +return $default(_that.currentLocale);case _: + return null; + +} +} + +} + +/// @nodoc + + +class _LanguageState implements LanguageState { + const _LanguageState({this.currentLocale = const Locale('en')}); + + +@override@JsonKey() final Locale currentLocale; + +/// Create a copy of LanguageState +/// with the given fields replaced by the non-null parameter values. +@override @JsonKey(includeFromJson: false, includeToJson: false) +@pragma('vm:prefer-inline') +_$LanguageStateCopyWith<_LanguageState> get copyWith => __$LanguageStateCopyWithImpl<_LanguageState>(this, _$identity); + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is _LanguageState&&(identical(other.currentLocale, currentLocale) || other.currentLocale == currentLocale)); +} + + +@override +int get hashCode => Object.hash(runtimeType,currentLocale); + +@override +String toString() { + return 'LanguageState(currentLocale: $currentLocale)'; +} + + +} + +/// @nodoc +abstract mixin class _$LanguageStateCopyWith<$Res> implements $LanguageStateCopyWith<$Res> { + factory _$LanguageStateCopyWith(_LanguageState value, $Res Function(_LanguageState) _then) = __$LanguageStateCopyWithImpl; +@override @useResult +$Res call({ + Locale currentLocale +}); + + + + +} +/// @nodoc +class __$LanguageStateCopyWithImpl<$Res> + implements _$LanguageStateCopyWith<$Res> { + __$LanguageStateCopyWithImpl(this._self, this._then); + + final _LanguageState _self; + final $Res Function(_LanguageState) _then; + +/// Create a copy of LanguageState +/// with the given fields replaced by the non-null parameter values. +@override @pragma('vm:prefer-inline') $Res call({Object? currentLocale = null,}) { + return _then(_LanguageState( +currentLocale: null == currentLocale ? _self.currentLocale : currentLocale // ignore: cast_nullable_to_non_nullable +as Locale, + )); +} + + +} + +// dart format on diff --git a/lib/feature/common/presentation/blocs/language_bloc/language_event.dart b/lib/feature/common/presentation/blocs/language_bloc/language_event.dart new file mode 100644 index 0000000..a41caed --- /dev/null +++ b/lib/feature/common/presentation/blocs/language_bloc/language_event.dart @@ -0,0 +1,8 @@ +part of 'language_bloc.dart'; + +@freezed +class LanguageEvent with _$LanguageEvent { + const factory LanguageEvent.started() = _Started; + + const factory LanguageEvent.changed(Locale locale) = _Changeded; +} diff --git a/lib/feature/common/presentation/blocs/language_bloc/language_state.dart b/lib/feature/common/presentation/blocs/language_bloc/language_state.dart new file mode 100644 index 0000000..7b3b329 --- /dev/null +++ b/lib/feature/common/presentation/blocs/language_bloc/language_state.dart @@ -0,0 +1,7 @@ +part of 'language_bloc.dart'; + +@freezed +abstract class LanguageState with _$LanguageState { + const factory LanguageState({@Default(Locale('en')) Locale currentLocale}) = + _LanguageState; +} diff --git a/lib/feature/common/presentation/widgets/w_divider.dart b/lib/feature/common/presentation/widgets/w_divider.dart new file mode 100644 index 0000000..5372571 --- /dev/null +++ b/lib/feature/common/presentation/widgets/w_divider.dart @@ -0,0 +1,25 @@ +import '../../../../food_delivery_client.dart'; + +class WDivider extends StatelessWidget { + const WDivider({ + super.key, + this.height = 10, + this.endIndent = 0, + this.indent = 0, + }); + + final double height; + final double endIndent; + final double indent; + + @override + Widget build(BuildContext context) { + return Divider( + color: AppColors.cF6F6F6, + height: height, + thickness: height, + endIndent: 0, + indent: 0, + ); + } +} diff --git a/lib/feature/common/presentation/widgets/w_food_item.dart b/lib/feature/common/presentation/widgets/w_food_item.dart new file mode 100644 index 0000000..5bd7472 --- /dev/null +++ b/lib/feature/common/presentation/widgets/w_food_item.dart @@ -0,0 +1,144 @@ +import 'dart:ui'; + +import 'package:flutter_bounceable/flutter_bounceable.dart'; +import 'package:flutter_svg/flutter_svg.dart'; + +import '../../../../food_delivery_client.dart'; + +class WFoodItem extends StatelessWidget { + const WFoodItem({ + super.key, + this.imageHeight, + this.textStyle1, + this.textStyle2, + this.enableTag = false, + }); + + final double? imageHeight; + final TextStyle? textStyle1; + final TextStyle? textStyle2; + final bool enableTag; + + @override + Widget build(BuildContext context) { + return Bounceable( + onTap: () {}, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // CachedNetworkImage( + // imageUrl: AppLocaleKeys.imageUrl, + // width: 200, + // height: 155, + // fit: BoxFit.cover, + // placeholder: (context, url) => CircularProgressIndicator(), + // errorWidget: (context, url, error) => Icon(Icons.error), + // + // ), + SizedBox( + height: imageHeight ?? 155, + width: context.w, + child: Stack( + children: [ + Positioned.fill( + child: CachedNetworkImage( + imageUrl: AppLocaleKeys.imageUrl, + width: 200, + height: 155, + fit: BoxFit.cover, + placeholder: (context, url) => + Center(child: CircularProgressIndicator.adaptive()), + errorWidget: (context, url, error) => Icon(Icons.error), + ), + ), + Positioned( + top: 10, + right: 8, + left: 0, + child: Row( + children: [ + if (enableTag) + DecoratedBox( + decoration: BoxDecoration( + color: AppColors.c34A853, + borderRadius: AppUtils.kBorderRadiusTop20Bottom20, + ), + child: Text( + "5 orders until \$8 reward", + style: AppTextStyles.size14Medium.copyWith( + color: AppColors.cFFFFFF, + ), + ).paddingOnly(top: 2, bottom: 2, left: 20, right: 40), + ), + const Spacer(), + IconButton( + onPressed: () {}, + icon: SvgPicture.asset(AppIcons.icDislike), + ), + ], + ), + ), + ], + ), + ), + 8.verticalSpace, + Row( + children: [ + Expanded( + child: Text( + "Adenine Kitchen", + style: textStyle1 ?? AppTextStyles.size16Medium, + ), + ), + SizedBox( + height: 24, + width: 24, + child: DecoratedBox( + decoration: BoxDecoration( + color: AppColors.cEEEEEE, + borderRadius: AppUtils.kBorderRadius28, + ), + child: Center( + child: Text("4.4", style: AppTextStyles.size12Regular), + ), + ), + ), + ], + ), + // RichText( + // text: TextSpan( + // text: "\$0.29 Delivery Fee", + // children: [TextSpan(text: "10-25 min")], + // style: AppTextStyles.size14Regular.copyWith( + // color: AppColors.c6B6B6B, + // ), + // ), + // ), + Row( + children: [ + Text( + "\$0.29 Delivery Fee", + style: + textStyle2 ?? + AppTextStyles.size14Regular.copyWith( + color: AppColors.c6B6B6B, + ), + ), + 5.horizontalSpace, + Icon(Icons.circle, size: 5, color: AppColors.c6B6B6B), + 5.horizontalSpace, + Text( + "10-25 min", + style: + textStyle2 ?? + AppTextStyles.size14Regular.copyWith( + color: AppColors.c6B6B6B, + ), + ), + ], + ), + ], + ).paddingSymmetric(horizontal: 15), + ); + } +} diff --git a/lib/feature/common/presentation/widgets/w_layout.dart b/lib/feature/common/presentation/widgets/w_layout.dart new file mode 100644 index 0000000..ea1565b --- /dev/null +++ b/lib/feature/common/presentation/widgets/w_layout.dart @@ -0,0 +1,24 @@ +import '../../../../food_delivery_client.dart'; + +class WLayout extends StatelessWidget { + const WLayout({ + super.key, + this.bgColor = AppColors.cFFFFFF, + this.bottom = true, + this.top = true, + required this.child, + }); + + final Color bgColor; + final bool bottom; + final bool top; + final Widget child; + + @override + Widget build(BuildContext context) { + return Container( + color: bgColor, + child: SafeArea(top: top, bottom: bottom, child: child), + ); + } +} diff --git a/lib/feature/common/presentation/widgets/w_see_all_raw.dart b/lib/feature/common/presentation/widgets/w_see_all_raw.dart new file mode 100644 index 0000000..f261d65 --- /dev/null +++ b/lib/feature/common/presentation/widgets/w_see_all_raw.dart @@ -0,0 +1,21 @@ +import '../../../../food_delivery_client.dart'; + +class WSeeAllRaw extends StatelessWidget { + const WSeeAllRaw({super.key, required this.title, required this.onPressed}); + + final String title; + final VoidCallback onPressed; + + @override + Widget build(BuildContext context) { + return Row( + children: [ + Expanded(child: Text(title, style: AppTextStyles.size24Bold)), + TextButton( + onPressed: onPressed, + child: Text("see all", style: AppTextStyles.size16Medium), + ), + ], + ).paddingOnly(left: 15, right: 8); + } +} diff --git a/lib/feature/common/presentation/widgets/w_stories_list_item.dart b/lib/feature/common/presentation/widgets/w_stories_list_item.dart new file mode 100644 index 0000000..5f37c23 --- /dev/null +++ b/lib/feature/common/presentation/widgets/w_stories_list_item.dart @@ -0,0 +1,33 @@ +import '../../../../food_delivery_client.dart'; + +class WStoriesListItem extends StatelessWidget { + const WStoriesListItem({super.key}); + + @override + Widget build(BuildContext context) { + return Stack( + children: [ + SizedBox( + height: 200, + width: 155, + child: ClipRRect( + borderRadius: AppUtils.kBorderRadius10, + child: CachedNetworkImage( + imageUrl: AppLocaleKeys.imageUrl, + fit: BoxFit.cover, + ), + ), + ), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + + + + ], + ) + + ], + ); + } +} diff --git a/lib/feature/common/presentation/widgets/widgets.dart b/lib/feature/common/presentation/widgets/widgets.dart new file mode 100644 index 0000000..8de4376 --- /dev/null +++ b/lib/feature/common/presentation/widgets/widgets.dart @@ -0,0 +1,5 @@ +export 'w_layout.dart'; +export 'w_food_item.dart'; +export 'w_divider.dart'; +export 'w_see_all_raw.dart'; +export 'w_stories_list_item.dart'; diff --git a/lib/feature/home/home.dart b/lib/feature/home/home.dart new file mode 100644 index 0000000..be74602 --- /dev/null +++ b/lib/feature/home/home.dart @@ -0,0 +1,11 @@ +export 'presentation/pages/home_page/home_page.dart'; +export 'presentation/blocs/home_bloc/home_bloc.dart'; +export 'presentation/pages/home_page/widgets/w_home_headers.dart'; +export 'presentation/widgets/w_category_item.dart'; +export "presentation/pages/home_page/widgets/w_categories_header_item.dart"; +export 'presentation/pages/home_page/widgets/w_delivery_header.dart'; +export 'presentation/pages/home_page/widgets/w_discount_part.dart'; +export 'presentation/pages/home_page/widgets/w_offers_carouseL_slider.dart'; +export 'presentation/pages/home_page/widgets/w_popular_near_you.dart'; +export 'presentation/pages/home_page/widgets/w_todays_offers.dart'; +export 'package:food_delivery_client/feature/home/presentation/pages/home_page/widgets/pick_it_for_free.dart'; diff --git a/lib/feature/home/presentation/blocs/home_bloc/home_bloc.dart b/lib/feature/home/presentation/blocs/home_bloc/home_bloc.dart new file mode 100644 index 0000000..1f98db5 --- /dev/null +++ b/lib/feature/home/presentation/blocs/home_bloc/home_bloc.dart @@ -0,0 +1,17 @@ +import 'package:food_delivery_client/food_delivery_client.dart'; + +part 'home_event.dart'; + +part 'home_state.dart'; + +part 'home_bloc.freezed.dart'; +@injectable +class HomeBloc extends Bloc { + HomeBloc() : super(const HomeState()) { + on<_Changed>(_onChanged); + } + + void _onChanged(_Changed event, Emitter emit) { + emit(state.copyWith(currentIndex: event.index)); + } +} diff --git a/lib/feature/home/presentation/blocs/home_bloc/home_bloc.freezed.dart b/lib/feature/home/presentation/blocs/home_bloc/home_bloc.freezed.dart new file mode 100644 index 0000000..3365c1f --- /dev/null +++ b/lib/feature/home/presentation/blocs/home_bloc/home_bloc.freezed.dart @@ -0,0 +1,535 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// coverage:ignore-file +// ignore_for_file: type=lint +// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark + +part of 'home_bloc.dart'; + +// ************************************************************************** +// FreezedGenerator +// ************************************************************************** + +// dart format off +T _$identity(T value) => value; +/// @nodoc +mixin _$HomeEvent { + + + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is HomeEvent); +} + + +@override +int get hashCode => runtimeType.hashCode; + +@override +String toString() { + return 'HomeEvent()'; +} + + +} + +/// @nodoc +class $HomeEventCopyWith<$Res> { +$HomeEventCopyWith(HomeEvent _, $Res Function(HomeEvent) __); +} + + +/// Adds pattern-matching-related methods to [HomeEvent]. +extension HomeEventPatterns on HomeEvent { +/// A variant of `map` that fallback to returning `orElse`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeMap({TResult Function( _Started value)? started,TResult Function( _Changed value)? changed,required TResult orElse(),}){ +final _that = this; +switch (_that) { +case _Started() when started != null: +return started(_that);case _Changed() when changed != null: +return changed(_that);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// Callbacks receives the raw object, upcasted. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case final Subclass2 value: +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult map({required TResult Function( _Started value) started,required TResult Function( _Changed value) changed,}){ +final _that = this; +switch (_that) { +case _Started(): +return started(_that);case _Changed(): +return changed(_that);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `map` that fallback to returning `null`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? mapOrNull({TResult? Function( _Started value)? started,TResult? Function( _Changed value)? changed,}){ +final _that = this; +switch (_that) { +case _Started() when started != null: +return started(_that);case _Changed() when changed != null: +return changed(_that);case _: + return null; + +} +} +/// A variant of `when` that fallback to an `orElse` callback. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeWhen({TResult Function()? started,TResult Function( int index)? changed,required TResult orElse(),}) {final _that = this; +switch (_that) { +case _Started() when started != null: +return started();case _Changed() when changed != null: +return changed(_that.index);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// As opposed to `map`, this offers destructuring. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case Subclass2(:final field2): +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult when({required TResult Function() started,required TResult Function( int index) changed,}) {final _that = this; +switch (_that) { +case _Started(): +return started();case _Changed(): +return changed(_that.index);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `when` that fallback to returning `null` +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? whenOrNull({TResult? Function()? started,TResult? Function( int index)? changed,}) {final _that = this; +switch (_that) { +case _Started() when started != null: +return started();case _Changed() when changed != null: +return changed(_that.index);case _: + return null; + +} +} + +} + +/// @nodoc + + +class _Started implements HomeEvent { + const _Started(); + + + + + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is _Started); +} + + +@override +int get hashCode => runtimeType.hashCode; + +@override +String toString() { + return 'HomeEvent.started()'; +} + + +} + + + + +/// @nodoc + + +class _Changed implements HomeEvent { + const _Changed(this.index); + + + final int index; + +/// Create a copy of HomeEvent +/// with the given fields replaced by the non-null parameter values. +@JsonKey(includeFromJson: false, includeToJson: false) +@pragma('vm:prefer-inline') +_$ChangedCopyWith<_Changed> get copyWith => __$ChangedCopyWithImpl<_Changed>(this, _$identity); + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is _Changed&&(identical(other.index, index) || other.index == index)); +} + + +@override +int get hashCode => Object.hash(runtimeType,index); + +@override +String toString() { + return 'HomeEvent.changed(index: $index)'; +} + + +} + +/// @nodoc +abstract mixin class _$ChangedCopyWith<$Res> implements $HomeEventCopyWith<$Res> { + factory _$ChangedCopyWith(_Changed value, $Res Function(_Changed) _then) = __$ChangedCopyWithImpl; +@useResult +$Res call({ + int index +}); + + + + +} +/// @nodoc +class __$ChangedCopyWithImpl<$Res> + implements _$ChangedCopyWith<$Res> { + __$ChangedCopyWithImpl(this._self, this._then); + + final _Changed _self; + final $Res Function(_Changed) _then; + +/// Create a copy of HomeEvent +/// with the given fields replaced by the non-null parameter values. +@pragma('vm:prefer-inline') $Res call({Object? index = null,}) { + return _then(_Changed( +null == index ? _self.index : index // ignore: cast_nullable_to_non_nullable +as int, + )); +} + + +} + +/// @nodoc +mixin _$HomeState { + + int get currentIndex; +/// Create a copy of HomeState +/// with the given fields replaced by the non-null parameter values. +@JsonKey(includeFromJson: false, includeToJson: false) +@pragma('vm:prefer-inline') +$HomeStateCopyWith get copyWith => _$HomeStateCopyWithImpl(this as HomeState, _$identity); + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is HomeState&&(identical(other.currentIndex, currentIndex) || other.currentIndex == currentIndex)); +} + + +@override +int get hashCode => Object.hash(runtimeType,currentIndex); + +@override +String toString() { + return 'HomeState(currentIndex: $currentIndex)'; +} + + +} + +/// @nodoc +abstract mixin class $HomeStateCopyWith<$Res> { + factory $HomeStateCopyWith(HomeState value, $Res Function(HomeState) _then) = _$HomeStateCopyWithImpl; +@useResult +$Res call({ + int currentIndex +}); + + + + +} +/// @nodoc +class _$HomeStateCopyWithImpl<$Res> + implements $HomeStateCopyWith<$Res> { + _$HomeStateCopyWithImpl(this._self, this._then); + + final HomeState _self; + final $Res Function(HomeState) _then; + +/// Create a copy of HomeState +/// with the given fields replaced by the non-null parameter values. +@pragma('vm:prefer-inline') @override $Res call({Object? currentIndex = null,}) { + return _then(_self.copyWith( +currentIndex: null == currentIndex ? _self.currentIndex : currentIndex // ignore: cast_nullable_to_non_nullable +as int, + )); +} + +} + + +/// Adds pattern-matching-related methods to [HomeState]. +extension HomeStatePatterns on HomeState { +/// A variant of `map` that fallback to returning `orElse`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeMap(TResult Function( _HomeState value)? $default,{required TResult orElse(),}){ +final _that = this; +switch (_that) { +case _HomeState() when $default != null: +return $default(_that);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// Callbacks receives the raw object, upcasted. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case final Subclass2 value: +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult map(TResult Function( _HomeState value) $default,){ +final _that = this; +switch (_that) { +case _HomeState(): +return $default(_that);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `map` that fallback to returning `null`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? mapOrNull(TResult? Function( _HomeState value)? $default,){ +final _that = this; +switch (_that) { +case _HomeState() when $default != null: +return $default(_that);case _: + return null; + +} +} +/// A variant of `when` that fallback to an `orElse` callback. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeWhen(TResult Function( int currentIndex)? $default,{required TResult orElse(),}) {final _that = this; +switch (_that) { +case _HomeState() when $default != null: +return $default(_that.currentIndex);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// As opposed to `map`, this offers destructuring. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case Subclass2(:final field2): +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult when(TResult Function( int currentIndex) $default,) {final _that = this; +switch (_that) { +case _HomeState(): +return $default(_that.currentIndex);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `when` that fallback to returning `null` +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? whenOrNull(TResult? Function( int currentIndex)? $default,) {final _that = this; +switch (_that) { +case _HomeState() when $default != null: +return $default(_that.currentIndex);case _: + return null; + +} +} + +} + +/// @nodoc + + +class _HomeState implements HomeState { + const _HomeState({this.currentIndex = 0}); + + +@override@JsonKey() final int currentIndex; + +/// Create a copy of HomeState +/// with the given fields replaced by the non-null parameter values. +@override @JsonKey(includeFromJson: false, includeToJson: false) +@pragma('vm:prefer-inline') +_$HomeStateCopyWith<_HomeState> get copyWith => __$HomeStateCopyWithImpl<_HomeState>(this, _$identity); + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is _HomeState&&(identical(other.currentIndex, currentIndex) || other.currentIndex == currentIndex)); +} + + +@override +int get hashCode => Object.hash(runtimeType,currentIndex); + +@override +String toString() { + return 'HomeState(currentIndex: $currentIndex)'; +} + + +} + +/// @nodoc +abstract mixin class _$HomeStateCopyWith<$Res> implements $HomeStateCopyWith<$Res> { + factory _$HomeStateCopyWith(_HomeState value, $Res Function(_HomeState) _then) = __$HomeStateCopyWithImpl; +@override @useResult +$Res call({ + int currentIndex +}); + + + + +} +/// @nodoc +class __$HomeStateCopyWithImpl<$Res> + implements _$HomeStateCopyWith<$Res> { + __$HomeStateCopyWithImpl(this._self, this._then); + + final _HomeState _self; + final $Res Function(_HomeState) _then; + +/// Create a copy of HomeState +/// with the given fields replaced by the non-null parameter values. +@override @pragma('vm:prefer-inline') $Res call({Object? currentIndex = null,}) { + return _then(_HomeState( +currentIndex: null == currentIndex ? _self.currentIndex : currentIndex // ignore: cast_nullable_to_non_nullable +as int, + )); +} + + +} + +// dart format on diff --git a/lib/feature/home/presentation/blocs/home_bloc/home_event.dart b/lib/feature/home/presentation/blocs/home_bloc/home_event.dart new file mode 100644 index 0000000..051abcd --- /dev/null +++ b/lib/feature/home/presentation/blocs/home_bloc/home_event.dart @@ -0,0 +1,8 @@ +part of 'home_bloc.dart'; + +@freezed +class HomeEvent with _$HomeEvent { + const factory HomeEvent.started() = _Started; + const factory HomeEvent.changed(int index) = _Changed; + +} diff --git a/lib/feature/home/presentation/blocs/home_bloc/home_state.dart b/lib/feature/home/presentation/blocs/home_bloc/home_state.dart new file mode 100644 index 0000000..2890caf --- /dev/null +++ b/lib/feature/home/presentation/blocs/home_bloc/home_state.dart @@ -0,0 +1,8 @@ +part of 'home_bloc.dart'; + +@freezed +abstract class HomeState with _$HomeState { + const factory HomeState({ + @Default(0) int currentIndex +}) = _HomeState; +} diff --git a/lib/feature/home/presentation/mixins/categories_mixin.dart b/lib/feature/home/presentation/mixins/categories_mixin.dart new file mode 100644 index 0000000..007aa8c --- /dev/null +++ b/lib/feature/home/presentation/mixins/categories_mixin.dart @@ -0,0 +1,26 @@ +import 'package:food_delivery_client/core/core.dart'; + +mixin CategoriesMixin { + List images = [ + AppImages.imgConvenience, + AppImages.imgAlcohol, + AppImages.imgPetSupplies, + AppImages.imgFlowers, + AppImages.imgGrocery, + AppImages.imgAmerican, + AppImages.imgSpeciality, + AppImages.imgTakeout, + AppImages.imgAsian, + AppImages.imgIceCream, + AppImages.imgHalal, + AppImages.imgRetails, + AppImages.imgCarribean, + AppImages.imgIndian, + AppImages.imgFrench, + AppImages.imgFastFoods, + AppImages.imgBurger, + AppImages.imgRide, + AppImages.imgChinese, + AppImages.imgDesert, + ]; +} diff --git a/lib/feature/home/presentation/mixins/home_page_mixins.dart b/lib/feature/home/presentation/mixins/home_page_mixins.dart new file mode 100644 index 0000000..fc4f9a5 --- /dev/null +++ b/lib/feature/home/presentation/mixins/home_page_mixins.dart @@ -0,0 +1,3 @@ +mixin HomePageMixins { + static const headers = []; +} diff --git a/lib/feature/home/presentation/pages/categories_page/categories_page.dart b/lib/feature/home/presentation/pages/categories_page/categories_page.dart new file mode 100644 index 0000000..c782c7a --- /dev/null +++ b/lib/feature/home/presentation/pages/categories_page/categories_page.dart @@ -0,0 +1,73 @@ +import 'package:food_delivery_client/feature/home/presentation/mixins/categories_mixin.dart'; + +import '../../../../../food_delivery_client.dart'; + +class CategoriesPage extends StatelessWidget with CategoriesMixin { + CategoriesPage({super.key}); + + show(BuildContext context) { + showModalBottomSheet( + context: context, + isScrollControlled: true, + + builder: (context) => Wrap(children: [this]), + ); + } + + @override + Widget build(BuildContext context) { + List _titles = [ + context.loc.convenience, + context.loc.alcohol, + context.loc.petSupplies, + context.loc.flowers, + context.loc.grocery, + context.loc.american, + context.loc.speciality, + context.loc.takeout, + context.loc.asian, + context.loc.iceCream, + context.loc.halal, + context.loc.retails, + context.loc.caribbean, + context.loc.indian, + context.loc.french, + context.loc.fastFoods, + context.loc.burger, + context.loc.ride, + context.loc.chinese, + context.loc.dessert, + ]; + return Material( + color: AppColors.cFFFFFF, + borderRadius: AppUtils.kBorderRadius20, + child: SafeArea( + child: Column( + children: [ + 24.verticalSpace, + Text(context.loc.allCategories, style: AppTextStyles.size20Regular), + 30.verticalSpace, + GridView.builder( + itemCount: images.length, + padding: EdgeInsets.zero, + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + gridDelegate: SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 4, + crossAxisSpacing: 5, + mainAxisSpacing: 10, + childAspectRatio: 78 / 100, + ), + itemBuilder: (context, index) => WCategoryItem( + onTap: () {}, + imgUrl: images[index], + text: _titles[index], + ), + ), + 40.verticalSpace, + ], + ).paddingSymmetric(horizontal: 15), + ), + ); + } +} diff --git a/lib/feature/home/presentation/pages/home_page/home_page.dart b/lib/feature/home/presentation/pages/home_page/home_page.dart new file mode 100644 index 0000000..de651c2 --- /dev/null +++ b/lib/feature/home/presentation/pages/home_page/home_page.dart @@ -0,0 +1,34 @@ +import '../../../../../food_delivery_client.dart'; + +class HomePage extends StatelessWidget { + const HomePage({super.key}); + + @override + Widget build(BuildContext context) { + return BlocProvider( + create: (context) => sl(), + child: BlocBuilder( + builder: (context, state) { + return WLayout( + child: Scaffold( + body: CustomScrollView( + slivers: [ + SliverToBoxAdapter(child: WHomeHeader()), + SliverToBoxAdapter(child: Column(children: [ + WDeliveryHeader(), + WDiscountPart(), + WOffersCarouselSlider(), + WDiscountPart(), + WPopularNearYou(), + WTodayOffers(), + WPickItUpForFree() + ])), + ], + ), + ), + ); + }, + ), + ); + } +} diff --git a/lib/feature/home/presentation/pages/home_page/widgets/pick_it_for_free.dart b/lib/feature/home/presentation/pages/home_page/widgets/pick_it_for_free.dart new file mode 100644 index 0000000..41d0649 --- /dev/null +++ b/lib/feature/home/presentation/pages/home_page/widgets/pick_it_for_free.dart @@ -0,0 +1,121 @@ +import '../../../../../../food_delivery_client.dart'; + +class WPickItUpForFree extends StatelessWidget { + const WPickItUpForFree({super.key}); + + @override + Widget build(BuildContext context) { + return Column( + mainAxisAlignment:MainAxisAlignment.start, + + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + 12.verticalSpace, + Column( + mainAxisAlignment:MainAxisAlignment.start, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text('Pick it up for free', style: AppTextStyles.size24Bold), + Text( + "Skip the fees when you order pick-up", + style: AppTextStyles.size14Regular.copyWith( + color: AppColors.c545454, + ), + ), + 7.verticalSpace, + ], + ).paddingSymmetric(horizontal: 15), + Container( + height: 210, + width: context.w, + decoration: BoxDecoration( + image: DecorationImage( + image: AssetImage(AppImages.imgPickUp), + fit: BoxFit.cover, + ), + ), + child: Align( + alignment: AlignmentGeometry.topCenter, + child: CarouselSlider.builder( + options: CarouselOptions( + height: 100.0, + reverse: false, + viewportFraction: 0.9, + animateToClosest: true, + autoPlay: true, + autoPlayCurve: Curves.easeIn, + initialPage: 0, + padEnds: false, + enableInfiniteScroll: true, + scrollPhysics: const AlwaysScrollableScrollPhysics(), + scrollDirection: Axis.horizontal, + ), + itemCount: 5, + itemBuilder: (context, index, realIndex) { + return Builder( + builder: (BuildContext context) { + return PickItUpItem().paddingOnly(left: 15); + }, + ); + }, + ), + ), + ), + 10.verticalSpace, + WFoodItem(), + 40.verticalSpace + + + ], + ); + } +} + +class PickItUpItem extends StatelessWidget { + const PickItUpItem({super.key}); + + @override + Widget build(BuildContext context) { + return Material( + color: AppColors.cTransparent, + child: InkWell( + onTap: () {}, + child: Ink( + decoration: BoxDecoration( + color: AppColors.cFFFFFF, + boxShadow: [ + BoxShadow( + color: AppColors.c000000.newWithOpacity(.25), + offset: const Offset(0, 1), + blurRadius: 2, + ), + ], + ), + child: Row( + spacing: 6, + children: [ + Image.network( + AppLocaleKeys.imageUrl, + height: 88, + width: 96, + fit: BoxFit.cover, + ).paddingAll(4), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Island Takeway", style: AppTextStyles.size17Bold), + Text( + "10-20 min", + style: AppTextStyles.size14Medium.copyWith( + color: AppColors.c6B6B6B, + ), + ), + ], + ).paddingOnly(top: 4, bottom: 4, right: 40), + ], + ), + ), + ), + ); + } +} diff --git a/lib/feature/home/presentation/pages/home_page/widgets/w_categories_header_item.dart b/lib/feature/home/presentation/pages/home_page/widgets/w_categories_header_item.dart new file mode 100644 index 0000000..7a9467e --- /dev/null +++ b/lib/feature/home/presentation/pages/home_page/widgets/w_categories_header_item.dart @@ -0,0 +1,51 @@ +import 'package:flutter_bounceable/flutter_bounceable.dart'; + +import '../../../../../../food_delivery_client.dart'; + +class WCategoriesHeaderItem extends StatelessWidget { + const WCategoriesHeaderItem({ + super.key, + required this.text, + required this.imageUrl, + required this.onTap, + }); + + final String text; + final String imageUrl; + final VoidCallback onTap; + + @override + Widget build(BuildContext context) { + return Expanded( + child: InkWell( + onTap: onTap, + borderRadius: AppUtils.kBorderRadius10, + child: Ink( + height: 88, + decoration: BoxDecoration( + borderRadius: AppUtils.kBorderRadius10, + color: AppColors.cE6E6E6.newWithOpacity(.4), + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Expanded( + flex: 2, + child: Align( + alignment: AlignmentGeometry.topRight, + child: Image.asset(imageUrl).paddingOnly(top: 5, right: 5), + ), + ), + Expanded( + child: Text( + text, + style: AppTextStyles.size18Medium, + ).paddingOnly(left: 12, bottom: 6), + ), + ], + ), + ), + ), + ); + } +} diff --git a/lib/feature/home/presentation/pages/home_page/widgets/w_delivery_header.dart b/lib/feature/home/presentation/pages/home_page/widgets/w_delivery_header.dart new file mode 100644 index 0000000..87839a6 --- /dev/null +++ b/lib/feature/home/presentation/pages/home_page/widgets/w_delivery_header.dart @@ -0,0 +1,72 @@ +import 'package:food_delivery_client/feature/home/presentation/pages/categories_page/categories_page.dart'; + +import '../../../../../../food_delivery_client.dart'; + +class WDeliveryHeader extends StatelessWidget { + const WDeliveryHeader({super.key}); + + @override + Widget build(BuildContext context) { + List _titles = [ + context.loc.convenience, + context.loc.alcohol, + context.loc.petSupplies, + context.loc.more, + ]; + return Column( + children: [ + 15.verticalSpace, + Row( + spacing: 12, + children: [ + WCategoriesHeaderItem( + onTap: () {}, + text: context.loc.american, + imageUrl: AppImages.imgAmerican, + ), + WCategoriesHeaderItem( + onTap: () {}, + text: context.loc.grocery, + imageUrl: AppImages.imgGrocery, + ), + ], + ), + 8.verticalSpace, + GridView.builder( + shrinkWrap: true, + itemCount: _titles.length, + padding: EdgeInsets.zero, + scrollDirection: Axis.vertical, + physics: const NeverScrollableScrollPhysics(), + keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag, + gridDelegate: SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 4, + crossAxisSpacing: 5, + mainAxisSpacing: 10, + childAspectRatio: 78 / 100, + ), + itemBuilder: (context, index) => WCategoryItem( + onTap: () { + if (index == 3) { + CategoriesPage().show(context); + } + }, + imgUrl: index != 3 ? _images[index] : null, + text: _titles[index], + child: index == 3 + ? SizedBox(height: 55, width: 55, child: Icon(Icons.more_horiz)) + : null, + ), + ), + 8.verticalSpace, + WDivider() + ], + ).paddingSymmetric(horizontal: 15); + } +} + +List _images = [ + AppImages.imgConvenience, + AppImages.imgAlcohol, + AppImages.imgPetSupplies, +]; diff --git a/lib/feature/home/presentation/pages/home_page/widgets/w_discount_part.dart b/lib/feature/home/presentation/pages/home_page/widgets/w_discount_part.dart new file mode 100644 index 0000000..b7fe859 --- /dev/null +++ b/lib/feature/home/presentation/pages/home_page/widgets/w_discount_part.dart @@ -0,0 +1,25 @@ +import '../../../../../../food_delivery_client.dart'; + +class WDiscountPart extends StatelessWidget { + const WDiscountPart({super.key}); + + @override + Widget build(BuildContext context) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + ListView.separated( + shrinkWrap: true, + padding: EdgeInsets.symmetric(vertical: 12), + scrollDirection: Axis.vertical, + keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag, + physics: const NeverScrollableScrollPhysics(), + itemBuilder: (context, index) => WFoodItem(enableTag: true), + separatorBuilder: (context, index) => 20.verticalSpace, + itemCount: 3, + ), + WDivider(), + ], + ); + } +} diff --git a/lib/feature/home/presentation/pages/home_page/widgets/w_home_headers.dart b/lib/feature/home/presentation/pages/home_page/widgets/w_home_headers.dart new file mode 100644 index 0000000..cede191 --- /dev/null +++ b/lib/feature/home/presentation/pages/home_page/widgets/w_home_headers.dart @@ -0,0 +1,54 @@ +import 'package:flutter_svg/flutter_svg.dart'; + +import '../../../../../../food_delivery_client.dart'; + +class WHomeHeader extends StatelessWidget { + const WHomeHeader({super.key}); + + @override + Widget build(BuildContext context) { + return BlocBuilder( + builder: (context, state) { + return DecoratedBox( + decoration: BoxDecoration(color: AppColors.cFFFFFF), + child: Column( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + 15.verticalSpace, + Stack( + alignment: AlignmentGeometry.center, + children: [ + TextButton( + onPressed: () {}, + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + mainAxisSize: MainAxisSize.min, + children: [ + SvgPicture.asset(AppIcons.icLocation, height: 20), + 8.horizontalSpace, + Text("London Hall", style: AppTextStyles.size18Medium), + 5.horizontalSpace, + SvgPicture.asset(AppIcons.icArrowBottom), + ], + ), + ), + Align( + alignment: AlignmentGeometry.topRight, + child: IconButton( + onPressed: () {}, + icon: SvgPicture.asset( + AppIcons.icFilter, + height: 36, + width: 36, + ), + ), + ), + ], + ), + ], + ).paddingSymmetric(horizontal: 15), + ); + }, + ); + } +} diff --git a/lib/feature/home/presentation/pages/home_page/widgets/w_offers_carouseL_slider.dart b/lib/feature/home/presentation/pages/home_page/widgets/w_offers_carouseL_slider.dart new file mode 100644 index 0000000..675bffb --- /dev/null +++ b/lib/feature/home/presentation/pages/home_page/widgets/w_offers_carouseL_slider.dart @@ -0,0 +1,103 @@ +import '../../../../../../food_delivery_client.dart'; + +class WOffersCarouselSlider extends StatelessWidget { + WOffersCarouselSlider({super.key}); + + List _colors = [ + AppColors.cD2D7F0, + AppColors.c9EE2B8, + AppColors.cE2CC9E, + AppColors.cC99EE2, + AppColors.cE29EC7, + ]; + + @override + Widget build(BuildContext context) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + 16.verticalSpace, + CarouselSlider.builder( + options: CarouselOptions( + height: 170.0, + reverse: false, + viewportFraction: 0.9, + animateToClosest: true, + autoPlay: true, + autoPlayCurve: Curves.easeIn, + initialPage: 0, + padEnds: false, + enableInfiniteScroll: true, + scrollPhysics: const AlwaysScrollableScrollPhysics(), + scrollDirection: Axis.horizontal, + ), + itemBuilder: (context, index, realIndex) => Builder( + builder: (BuildContext context) { + return Container( + width: MediaQuery.of(context).size.width, + margin: EdgeInsets.only(left: 15), + decoration: BoxDecoration( + color: _colors[index], + borderRadius: AppUtils.kBorderRadius16, + ), + child: Row( + children: [ + Expanded( + flex: 3, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + "Order from these restaurants and save", + style: AppTextStyles.size17Bold, + ), + const Spacer(), + Material( + color: AppColors.cTransparent, + child: InkWell( + onTap: () {}, + borderRadius: AppUtils.kBorderRadius30, + child: Ink( + decoration: BoxDecoration( + color: AppColors.cFFFFFF, + borderRadius: AppUtils.kBorderRadius30, + ), + child: Row( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.start, + children: [Text('Browse offer')], + ).paddingSymmetric(horizontal: 8, vertical: 4), + ), + ), + ), + ], + ).paddingSymmetric(horizontal: 15, vertical: 15), + ), + Expanded( + flex: 2, + child: Column( + children: [ + ClipRRect( + borderRadius: AppUtils.kBorderRadiusTop15Bottom15, + child: Image.network( + AppLocaleKeys.imageUrl, + height: 170, + fit: BoxFit.cover, + ), + ), + ], + ), + ), + ], + ), + ); + }, + ), + itemCount: _colors.length, + ), + 8.verticalSpace, + WDivider(), + ], + ); + } +} diff --git a/lib/feature/home/presentation/pages/home_page/widgets/w_popular_near_you.dart b/lib/feature/home/presentation/pages/home_page/widgets/w_popular_near_you.dart new file mode 100644 index 0000000..1c0cfd7 --- /dev/null +++ b/lib/feature/home/presentation/pages/home_page/widgets/w_popular_near_you.dart @@ -0,0 +1,58 @@ +import '../../../../../../food_delivery_client.dart'; + +class WPopularNearYou extends StatelessWidget { + const WPopularNearYou({super.key}); + + @override + Widget build(BuildContext context) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + 10.verticalSpace, + WSeeAllRaw(title: "Popular near you", onPressed: () {}), + 10.verticalSpace, + CarouselSlider.builder( + options: CarouselOptions( + height: 180.0, + reverse: false, + viewportFraction: 0.9, + animateToClosest: true, + autoPlay: true, + autoPlayCurve: Curves.easeIn, + initialPage: 0, + padEnds: false, + enableInfiniteScroll: true, + scrollPhysics: const AlwaysScrollableScrollPhysics(), + scrollDirection: Axis.horizontal, + ), + itemCount: 5, + itemBuilder: (context, index, realIndex) { + return Builder( + builder: (BuildContext context) { + return WFoodItem( + imageHeight: 130, + textStyle1: AppTextStyles.size14Medium, + textStyle2: AppTextStyles.size12Regular, + ); + }, + ); + }, + ), + 13.verticalSpace, + WDivider(), + 10.verticalSpace, + ListView.separated( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag, + scrollDirection: Axis.vertical, + itemBuilder: (context, index) => WFoodItem(), + separatorBuilder: (context, index) => 25.verticalSpace, + itemCount: 5, + ), + 25.verticalSpace, + WDivider(), + ], + ); + } +} diff --git a/lib/feature/home/presentation/pages/home_page/widgets/w_quick_eats.dart b/lib/feature/home/presentation/pages/home_page/widgets/w_quick_eats.dart new file mode 100644 index 0000000..e69de29 diff --git a/lib/feature/home/presentation/pages/home_page/widgets/w_todays_offers.dart b/lib/feature/home/presentation/pages/home_page/widgets/w_todays_offers.dart new file mode 100644 index 0000000..29167d3 --- /dev/null +++ b/lib/feature/home/presentation/pages/home_page/widgets/w_todays_offers.dart @@ -0,0 +1,66 @@ +import '../../../../../../food_delivery_client.dart'; + +class WTodayOffers extends StatelessWidget { + const WTodayOffers({super.key}); + + @override + Widget build(BuildContext context) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + 12.verticalSpace, + WSeeAllRaw( + title: "Today's offers", + onPressed: () {}, + ), + 10.verticalSpace, + CarouselSlider.builder( + options: CarouselOptions( + height: 180.0, + reverse: false, + viewportFraction: 0.9, + animateToClosest: true, + autoPlay: true, + autoPlayCurve: Curves.easeIn, + initialPage: 0, + padEnds: false, + enableInfiniteScroll: true, + scrollPhysics: const AlwaysScrollableScrollPhysics(), + scrollDirection: Axis.horizontal, + ), + itemCount: 5, + itemBuilder: (context, index, realIndex) { + return Builder( + builder: (BuildContext context) { + return WFoodItem( + imageHeight: 130, + enableTag: true, + textStyle1: AppTextStyles.size14Medium, + textStyle2: AppTextStyles.size12Regular, + ); + }, + ); + }, + ), + 10.verticalSpace, + WDivider(), + 10.verticalSpace, + ListView.separated( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag, + scrollDirection: Axis.vertical, + itemBuilder: (context, index) => WFoodItem(), + separatorBuilder: (context, index) => 25.verticalSpace, + itemCount: 3, + ), + 25.verticalSpace, + WDivider() + + + + + ], + ); + } +} diff --git a/lib/feature/home/presentation/widgets/w_category_item.dart b/lib/feature/home/presentation/widgets/w_category_item.dart new file mode 100644 index 0000000..e6eab35 --- /dev/null +++ b/lib/feature/home/presentation/widgets/w_category_item.dart @@ -0,0 +1,47 @@ +import '../../../../food_delivery_client.dart'; + +class WCategoryItem extends StatelessWidget { + const WCategoryItem({ + super.key, + required this.onTap, + this.text, + this.imgUrl, + this.child, + }); + + final VoidCallback onTap; + final String? text; + final String? imgUrl; + final Widget? child; + + @override + Widget build(BuildContext context) { + return Column( + children: [ + InkWell( + onTap: onTap, + borderRadius: AppUtils.kBorderRadius10, + child: Ink( + decoration: BoxDecoration( + borderRadius: AppUtils.kBorderRadius10, + color: AppColors.cE6E6E6.newWithOpacity(.4), + ), + child: SizedBox( + height: 55, + width: 55, + child: child ?? Image.asset(imgUrl!, fit: BoxFit.cover), + ).paddingSymmetric(vertical: 8, horizontal: 12), + ), + ), + 3.verticalSpace, + if (text != null) + Text( + text!, + maxLines: 2, + style: AppTextStyles.size14Medium, + textAlign: TextAlign.center, + ), + ], + ); + } +} diff --git a/lib/feature/main/main.dart b/lib/feature/main/main.dart new file mode 100644 index 0000000..adbfac6 --- /dev/null +++ b/lib/feature/main/main.dart @@ -0,0 +1,3 @@ +export 'package:food_delivery_client/feature/main/presentation/pages/main_page/main_page.dart'; +export 'presentation/mixins/main_page_mixin.dart'; +export 'package:food_delivery_client/feature/main/presentation/blocs/main_bloc/main_bloc.dart'; diff --git a/lib/feature/main/presentation/blocs/main_bloc/main_bloc.dart b/lib/feature/main/presentation/blocs/main_bloc/main_bloc.dart new file mode 100644 index 0000000..54007fc --- /dev/null +++ b/lib/feature/main/presentation/blocs/main_bloc/main_bloc.dart @@ -0,0 +1,18 @@ +import 'package:bloc/bloc.dart'; +import 'package:food_delivery_client/food_delivery_client.dart'; +import 'package:freezed_annotation/freezed_annotation.dart'; + +part 'main_event.dart'; + +part 'main_state.dart'; + +part 'main_bloc.freezed.dart'; + +@injectable +class MainBloc extends Bloc { + MainBloc() : super(const MainState()) { + on<_Loaded>((event, emit) { + emit(state.copyWith(currentIndex: event.index)); + }); + } +} diff --git a/lib/feature/main/presentation/blocs/main_bloc/main_bloc.freezed.dart b/lib/feature/main/presentation/blocs/main_bloc/main_bloc.freezed.dart new file mode 100644 index 0000000..0e85b8a --- /dev/null +++ b/lib/feature/main/presentation/blocs/main_bloc/main_bloc.freezed.dart @@ -0,0 +1,538 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// coverage:ignore-file +// ignore_for_file: type=lint +// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark + +part of 'main_bloc.dart'; + +// ************************************************************************** +// FreezedGenerator +// ************************************************************************** + +// dart format off +T _$identity(T value) => value; +/// @nodoc +mixin _$MainEvent { + + + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is MainEvent); +} + + +@override +int get hashCode => runtimeType.hashCode; + +@override +String toString() { + return 'MainEvent()'; +} + + +} + +/// @nodoc +class $MainEventCopyWith<$Res> { +$MainEventCopyWith(MainEvent _, $Res Function(MainEvent) __); +} + + +/// Adds pattern-matching-related methods to [MainEvent]. +extension MainEventPatterns on MainEvent { +/// A variant of `map` that fallback to returning `orElse`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeMap({TResult Function( _Started value)? started,TResult Function( _Loaded value)? loaded,required TResult orElse(),}){ +final _that = this; +switch (_that) { +case _Started() when started != null: +return started(_that);case _Loaded() when loaded != null: +return loaded(_that);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// Callbacks receives the raw object, upcasted. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case final Subclass2 value: +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult map({required TResult Function( _Started value) started,required TResult Function( _Loaded value) loaded,}){ +final _that = this; +switch (_that) { +case _Started(): +return started(_that);case _Loaded(): +return loaded(_that);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `map` that fallback to returning `null`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? mapOrNull({TResult? Function( _Started value)? started,TResult? Function( _Loaded value)? loaded,}){ +final _that = this; +switch (_that) { +case _Started() when started != null: +return started(_that);case _Loaded() when loaded != null: +return loaded(_that);case _: + return null; + +} +} +/// A variant of `when` that fallback to an `orElse` callback. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeWhen({TResult Function()? started,TResult Function( int index)? loaded,required TResult orElse(),}) {final _that = this; +switch (_that) { +case _Started() when started != null: +return started();case _Loaded() when loaded != null: +return loaded(_that.index);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// As opposed to `map`, this offers destructuring. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case Subclass2(:final field2): +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult when({required TResult Function() started,required TResult Function( int index) loaded,}) {final _that = this; +switch (_that) { +case _Started(): +return started();case _Loaded(): +return loaded(_that.index);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `when` that fallback to returning `null` +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? whenOrNull({TResult? Function()? started,TResult? Function( int index)? loaded,}) {final _that = this; +switch (_that) { +case _Started() when started != null: +return started();case _Loaded() when loaded != null: +return loaded(_that.index);case _: + return null; + +} +} + +} + +/// @nodoc + + +class _Started implements MainEvent { + const _Started(); + + + + + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is _Started); +} + + +@override +int get hashCode => runtimeType.hashCode; + +@override +String toString() { + return 'MainEvent.started()'; +} + + +} + + + + +/// @nodoc + + +class _Loaded implements MainEvent { + const _Loaded(this.index); + + + final int index; + +/// Create a copy of MainEvent +/// with the given fields replaced by the non-null parameter values. +@JsonKey(includeFromJson: false, includeToJson: false) +@pragma('vm:prefer-inline') +_$LoadedCopyWith<_Loaded> get copyWith => __$LoadedCopyWithImpl<_Loaded>(this, _$identity); + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is _Loaded&&(identical(other.index, index) || other.index == index)); +} + + +@override +int get hashCode => Object.hash(runtimeType,index); + +@override +String toString() { + return 'MainEvent.loaded(index: $index)'; +} + + +} + +/// @nodoc +abstract mixin class _$LoadedCopyWith<$Res> implements $MainEventCopyWith<$Res> { + factory _$LoadedCopyWith(_Loaded value, $Res Function(_Loaded) _then) = __$LoadedCopyWithImpl; +@useResult +$Res call({ + int index +}); + + + + +} +/// @nodoc +class __$LoadedCopyWithImpl<$Res> + implements _$LoadedCopyWith<$Res> { + __$LoadedCopyWithImpl(this._self, this._then); + + final _Loaded _self; + final $Res Function(_Loaded) _then; + +/// Create a copy of MainEvent +/// with the given fields replaced by the non-null parameter values. +@pragma('vm:prefer-inline') $Res call({Object? index = null,}) { + return _then(_Loaded( +null == index ? _self.index : index // ignore: cast_nullable_to_non_nullable +as int, + )); +} + + +} + +/// @nodoc +mixin _$MainState { + + RequestStatus get status; int get currentIndex; +/// Create a copy of MainState +/// with the given fields replaced by the non-null parameter values. +@JsonKey(includeFromJson: false, includeToJson: false) +@pragma('vm:prefer-inline') +$MainStateCopyWith get copyWith => _$MainStateCopyWithImpl(this as MainState, _$identity); + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is MainState&&(identical(other.status, status) || other.status == status)&&(identical(other.currentIndex, currentIndex) || other.currentIndex == currentIndex)); +} + + +@override +int get hashCode => Object.hash(runtimeType,status,currentIndex); + +@override +String toString() { + return 'MainState(status: $status, currentIndex: $currentIndex)'; +} + + +} + +/// @nodoc +abstract mixin class $MainStateCopyWith<$Res> { + factory $MainStateCopyWith(MainState value, $Res Function(MainState) _then) = _$MainStateCopyWithImpl; +@useResult +$Res call({ + RequestStatus status, int currentIndex +}); + + + + +} +/// @nodoc +class _$MainStateCopyWithImpl<$Res> + implements $MainStateCopyWith<$Res> { + _$MainStateCopyWithImpl(this._self, this._then); + + final MainState _self; + final $Res Function(MainState) _then; + +/// Create a copy of MainState +/// with the given fields replaced by the non-null parameter values. +@pragma('vm:prefer-inline') @override $Res call({Object? status = null,Object? currentIndex = null,}) { + return _then(_self.copyWith( +status: null == status ? _self.status : status // ignore: cast_nullable_to_non_nullable +as RequestStatus,currentIndex: null == currentIndex ? _self.currentIndex : currentIndex // ignore: cast_nullable_to_non_nullable +as int, + )); +} + +} + + +/// Adds pattern-matching-related methods to [MainState]. +extension MainStatePatterns on MainState { +/// A variant of `map` that fallback to returning `orElse`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeMap(TResult Function( _MainState value)? $default,{required TResult orElse(),}){ +final _that = this; +switch (_that) { +case _MainState() when $default != null: +return $default(_that);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// Callbacks receives the raw object, upcasted. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case final Subclass2 value: +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult map(TResult Function( _MainState value) $default,){ +final _that = this; +switch (_that) { +case _MainState(): +return $default(_that);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `map` that fallback to returning `null`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? mapOrNull(TResult? Function( _MainState value)? $default,){ +final _that = this; +switch (_that) { +case _MainState() when $default != null: +return $default(_that);case _: + return null; + +} +} +/// A variant of `when` that fallback to an `orElse` callback. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeWhen(TResult Function( RequestStatus status, int currentIndex)? $default,{required TResult orElse(),}) {final _that = this; +switch (_that) { +case _MainState() when $default != null: +return $default(_that.status,_that.currentIndex);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// As opposed to `map`, this offers destructuring. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case Subclass2(:final field2): +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult when(TResult Function( RequestStatus status, int currentIndex) $default,) {final _that = this; +switch (_that) { +case _MainState(): +return $default(_that.status,_that.currentIndex);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `when` that fallback to returning `null` +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? whenOrNull(TResult? Function( RequestStatus status, int currentIndex)? $default,) {final _that = this; +switch (_that) { +case _MainState() when $default != null: +return $default(_that.status,_that.currentIndex);case _: + return null; + +} +} + +} + +/// @nodoc + + +class _MainState implements MainState { + const _MainState({this.status = RequestStatus.initial, this.currentIndex = 0}); + + +@override@JsonKey() final RequestStatus status; +@override@JsonKey() final int currentIndex; + +/// Create a copy of MainState +/// with the given fields replaced by the non-null parameter values. +@override @JsonKey(includeFromJson: false, includeToJson: false) +@pragma('vm:prefer-inline') +_$MainStateCopyWith<_MainState> get copyWith => __$MainStateCopyWithImpl<_MainState>(this, _$identity); + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is _MainState&&(identical(other.status, status) || other.status == status)&&(identical(other.currentIndex, currentIndex) || other.currentIndex == currentIndex)); +} + + +@override +int get hashCode => Object.hash(runtimeType,status,currentIndex); + +@override +String toString() { + return 'MainState(status: $status, currentIndex: $currentIndex)'; +} + + +} + +/// @nodoc +abstract mixin class _$MainStateCopyWith<$Res> implements $MainStateCopyWith<$Res> { + factory _$MainStateCopyWith(_MainState value, $Res Function(_MainState) _then) = __$MainStateCopyWithImpl; +@override @useResult +$Res call({ + RequestStatus status, int currentIndex +}); + + + + +} +/// @nodoc +class __$MainStateCopyWithImpl<$Res> + implements _$MainStateCopyWith<$Res> { + __$MainStateCopyWithImpl(this._self, this._then); + + final _MainState _self; + final $Res Function(_MainState) _then; + +/// Create a copy of MainState +/// with the given fields replaced by the non-null parameter values. +@override @pragma('vm:prefer-inline') $Res call({Object? status = null,Object? currentIndex = null,}) { + return _then(_MainState( +status: null == status ? _self.status : status // ignore: cast_nullable_to_non_nullable +as RequestStatus,currentIndex: null == currentIndex ? _self.currentIndex : currentIndex // ignore: cast_nullable_to_non_nullable +as int, + )); +} + + +} + +// dart format on diff --git a/lib/feature/main/presentation/blocs/main_bloc/main_event.dart b/lib/feature/main/presentation/blocs/main_bloc/main_event.dart new file mode 100644 index 0000000..5a39d27 --- /dev/null +++ b/lib/feature/main/presentation/blocs/main_bloc/main_event.dart @@ -0,0 +1,8 @@ +part of 'main_bloc.dart'; + +@freezed +class MainEvent with _$MainEvent { + const factory MainEvent.started() = _Started; + const factory MainEvent.loaded(int index) = _Loaded; + +} diff --git a/lib/feature/main/presentation/blocs/main_bloc/main_state.dart b/lib/feature/main/presentation/blocs/main_bloc/main_state.dart new file mode 100644 index 0000000..2535c73 --- /dev/null +++ b/lib/feature/main/presentation/blocs/main_bloc/main_state.dart @@ -0,0 +1,10 @@ +part of 'main_bloc.dart'; + +@freezed +abstract class MainState with _$MainState { + const factory MainState({ + @Default(RequestStatus.initial) RequestStatus status, + @Default(0) int currentIndex, + + }) = _MainState; +} diff --git a/lib/feature/main/presentation/mixins/main_page_mixin.dart b/lib/feature/main/presentation/mixins/main_page_mixin.dart new file mode 100644 index 0000000..21dbbfb --- /dev/null +++ b/lib/feature/main/presentation/mixins/main_page_mixin.dart @@ -0,0 +1,28 @@ +import 'package:flutter_svg/flutter_svg.dart'; + +import '../../../../food_delivery_client.dart'; + +mixin MainPageMixin { + final List pages = [ + HomePage(), + BrowsePage(), + BasketPage(), + AccountPage(), + ]; + + final List defaultIcons = [ + SvgPicture.asset(AppIcons.icHome), + SvgPicture.asset(AppIcons.icBrowse), + SvgPicture.asset(AppIcons.icBasket), + SvgPicture.asset(AppIcons.icAccount), + ]; + + final List activeIcons = [ + SvgPicture.asset(AppIcons.icHomeActive), + SvgPicture.asset(AppIcons.icBrowseActive), + SvgPicture.asset(AppIcons.icBasketActive), + SvgPicture.asset(AppIcons.icAccountActive), + ]; + + final List labels = ["Home", "Browse", "Baskets", 'Account']; +} diff --git a/lib/feature/main/presentation/pages/main_page/main_page.dart b/lib/feature/main/presentation/pages/main_page/main_page.dart new file mode 100644 index 0000000..ff2ab0d --- /dev/null +++ b/lib/feature/main/presentation/pages/main_page/main_page.dart @@ -0,0 +1,40 @@ +import '../../../../../food_delivery_client.dart'; + +class MainPage extends StatelessWidget with MainPageMixin { + MainPage({super.key}); + + @override + Widget build(BuildContext context) { + return BlocProvider( + create: (context) => sl(), + child: BlocBuilder( + builder: (context, state) { + return Scaffold( + body: IndexedStack( + index: state.currentIndex, + sizing: StackFit.expand, + alignment: AlignmentGeometry.center, + children: pages, + ), + bottomNavigationBar: BottomNavigationBar( + onTap: (value) { + context.read().add(MainEvent.loaded(value)); + }, + currentIndex: state.currentIndex, + items: List.generate( + defaultIcons.length, + (index) => BottomNavigationBarItem( + icon: defaultIcons[index].paddingOnly(bottom: 4.85), + activeIcon: activeIcons[index].paddingOnly(bottom: 4.85), + label: labels[index], + tooltip: labels[index], + backgroundColor: AppColors.cFFFFFF, + ), + ), + ), + ); + }, + ), + ); + } +} diff --git a/lib/feature/on_boarding/on_boarding.dart b/lib/feature/on_boarding/on_boarding.dart new file mode 100644 index 0000000..e69de29 diff --git a/lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_bloc.dart b/lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_bloc.dart new file mode 100644 index 0000000..c6a5fad --- /dev/null +++ b/lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_bloc.dart @@ -0,0 +1,19 @@ +import 'package:food_delivery_client/food_delivery_client.dart'; + +part 'splash_event.dart'; + +part 'splash_state.dart'; + +part 'splash_bloc.freezed.dart'; + +@injectable +class SplashBloc extends Bloc { + SplashBloc() : super(const SplashState()) { + on<_Started>(_onStarted); + } + + Future _onStarted(_Started event, Emitter emit) async { + await Future.delayed(TimeDelayConst.duration3); + emit(state.copyWith(status: RequestStatus.loaded)); + } +} diff --git a/lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_bloc.freezed.dart b/lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_bloc.freezed.dart new file mode 100644 index 0000000..2b3f223 --- /dev/null +++ b/lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_bloc.freezed.dart @@ -0,0 +1,463 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// coverage:ignore-file +// ignore_for_file: type=lint +// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark + +part of 'splash_bloc.dart'; + +// ************************************************************************** +// FreezedGenerator +// ************************************************************************** + +// dart format off +T _$identity(T value) => value; +/// @nodoc +mixin _$SplashEvent { + + + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is SplashEvent); +} + + +@override +int get hashCode => runtimeType.hashCode; + +@override +String toString() { + return 'SplashEvent()'; +} + + +} + +/// @nodoc +class $SplashEventCopyWith<$Res> { +$SplashEventCopyWith(SplashEvent _, $Res Function(SplashEvent) __); +} + + +/// Adds pattern-matching-related methods to [SplashEvent]. +extension SplashEventPatterns on SplashEvent { +/// A variant of `map` that fallback to returning `orElse`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeMap({TResult Function( _Started value)? started,required TResult orElse(),}){ +final _that = this; +switch (_that) { +case _Started() when started != null: +return started(_that);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// Callbacks receives the raw object, upcasted. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case final Subclass2 value: +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult map({required TResult Function( _Started value) started,}){ +final _that = this; +switch (_that) { +case _Started(): +return started(_that);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `map` that fallback to returning `null`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? mapOrNull({TResult? Function( _Started value)? started,}){ +final _that = this; +switch (_that) { +case _Started() when started != null: +return started(_that);case _: + return null; + +} +} +/// A variant of `when` that fallback to an `orElse` callback. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeWhen({TResult Function()? started,required TResult orElse(),}) {final _that = this; +switch (_that) { +case _Started() when started != null: +return started();case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// As opposed to `map`, this offers destructuring. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case Subclass2(:final field2): +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult when({required TResult Function() started,}) {final _that = this; +switch (_that) { +case _Started(): +return started();case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `when` that fallback to returning `null` +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? whenOrNull({TResult? Function()? started,}) {final _that = this; +switch (_that) { +case _Started() when started != null: +return started();case _: + return null; + +} +} + +} + +/// @nodoc + + +class _Started implements SplashEvent { + const _Started(); + + + + + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is _Started); +} + + +@override +int get hashCode => runtimeType.hashCode; + +@override +String toString() { + return 'SplashEvent.started()'; +} + + +} + + + + +/// @nodoc +mixin _$SplashState { + + RequestStatus get status; +/// Create a copy of SplashState +/// with the given fields replaced by the non-null parameter values. +@JsonKey(includeFromJson: false, includeToJson: false) +@pragma('vm:prefer-inline') +$SplashStateCopyWith get copyWith => _$SplashStateCopyWithImpl(this as SplashState, _$identity); + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is SplashState&&(identical(other.status, status) || other.status == status)); +} + + +@override +int get hashCode => Object.hash(runtimeType,status); + +@override +String toString() { + return 'SplashState(status: $status)'; +} + + +} + +/// @nodoc +abstract mixin class $SplashStateCopyWith<$Res> { + factory $SplashStateCopyWith(SplashState value, $Res Function(SplashState) _then) = _$SplashStateCopyWithImpl; +@useResult +$Res call({ + RequestStatus status +}); + + + + +} +/// @nodoc +class _$SplashStateCopyWithImpl<$Res> + implements $SplashStateCopyWith<$Res> { + _$SplashStateCopyWithImpl(this._self, this._then); + + final SplashState _self; + final $Res Function(SplashState) _then; + +/// Create a copy of SplashState +/// with the given fields replaced by the non-null parameter values. +@pragma('vm:prefer-inline') @override $Res call({Object? status = null,}) { + return _then(_self.copyWith( +status: null == status ? _self.status : status // ignore: cast_nullable_to_non_nullable +as RequestStatus, + )); +} + +} + + +/// Adds pattern-matching-related methods to [SplashState]. +extension SplashStatePatterns on SplashState { +/// A variant of `map` that fallback to returning `orElse`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeMap(TResult Function( _SplashState value)? $default,{required TResult orElse(),}){ +final _that = this; +switch (_that) { +case _SplashState() when $default != null: +return $default(_that);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// Callbacks receives the raw object, upcasted. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case final Subclass2 value: +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult map(TResult Function( _SplashState value) $default,){ +final _that = this; +switch (_that) { +case _SplashState(): +return $default(_that);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `map` that fallback to returning `null`. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case final Subclass value: +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? mapOrNull(TResult? Function( _SplashState value)? $default,){ +final _that = this; +switch (_that) { +case _SplashState() when $default != null: +return $default(_that);case _: + return null; + +} +} +/// A variant of `when` that fallback to an `orElse` callback. +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return orElse(); +/// } +/// ``` + +@optionalTypeArgs TResult maybeWhen(TResult Function( RequestStatus status)? $default,{required TResult orElse(),}) {final _that = this; +switch (_that) { +case _SplashState() when $default != null: +return $default(_that.status);case _: + return orElse(); + +} +} +/// A `switch`-like method, using callbacks. +/// +/// As opposed to `map`, this offers destructuring. +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case Subclass2(:final field2): +/// return ...; +/// } +/// ``` + +@optionalTypeArgs TResult when(TResult Function( RequestStatus status) $default,) {final _that = this; +switch (_that) { +case _SplashState(): +return $default(_that.status);case _: + throw StateError('Unexpected subclass'); + +} +} +/// A variant of `when` that fallback to returning `null` +/// +/// It is equivalent to doing: +/// ```dart +/// switch (sealedClass) { +/// case Subclass(:final field): +/// return ...; +/// case _: +/// return null; +/// } +/// ``` + +@optionalTypeArgs TResult? whenOrNull(TResult? Function( RequestStatus status)? $default,) {final _that = this; +switch (_that) { +case _SplashState() when $default != null: +return $default(_that.status);case _: + return null; + +} +} + +} + +/// @nodoc + + +class _SplashState implements SplashState { + const _SplashState({this.status = RequestStatus.initial}); + + +@override@JsonKey() final RequestStatus status; + +/// Create a copy of SplashState +/// with the given fields replaced by the non-null parameter values. +@override @JsonKey(includeFromJson: false, includeToJson: false) +@pragma('vm:prefer-inline') +_$SplashStateCopyWith<_SplashState> get copyWith => __$SplashStateCopyWithImpl<_SplashState>(this, _$identity); + + + +@override +bool operator ==(Object other) { + return identical(this, other) || (other.runtimeType == runtimeType&&other is _SplashState&&(identical(other.status, status) || other.status == status)); +} + + +@override +int get hashCode => Object.hash(runtimeType,status); + +@override +String toString() { + return 'SplashState(status: $status)'; +} + + +} + +/// @nodoc +abstract mixin class _$SplashStateCopyWith<$Res> implements $SplashStateCopyWith<$Res> { + factory _$SplashStateCopyWith(_SplashState value, $Res Function(_SplashState) _then) = __$SplashStateCopyWithImpl; +@override @useResult +$Res call({ + RequestStatus status +}); + + + + +} +/// @nodoc +class __$SplashStateCopyWithImpl<$Res> + implements _$SplashStateCopyWith<$Res> { + __$SplashStateCopyWithImpl(this._self, this._then); + + final _SplashState _self; + final $Res Function(_SplashState) _then; + +/// Create a copy of SplashState +/// with the given fields replaced by the non-null parameter values. +@override @pragma('vm:prefer-inline') $Res call({Object? status = null,}) { + return _then(_SplashState( +status: null == status ? _self.status : status // ignore: cast_nullable_to_non_nullable +as RequestStatus, + )); +} + + +} + +// dart format on diff --git a/lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_event.dart b/lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_event.dart new file mode 100644 index 0000000..b2fcaf7 --- /dev/null +++ b/lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_event.dart @@ -0,0 +1,6 @@ +part of 'splash_bloc.dart'; + +@freezed +class SplashEvent with _$SplashEvent { + const factory SplashEvent.started() = _Started; +} diff --git a/lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_state.dart b/lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_state.dart new file mode 100644 index 0000000..926f529 --- /dev/null +++ b/lib/feature/on_boarding/presentation/blocs/splash_bloc/splash_state.dart @@ -0,0 +1,8 @@ +part of 'splash_bloc.dart'; + +@freezed +abstract class SplashState with _$SplashState { + const factory SplashState({ + @Default(RequestStatus.initial) RequestStatus status, + }) = _SplashState; +} diff --git a/lib/feature/on_boarding/presentation/pages/splash_page/splash_page.dart b/lib/feature/on_boarding/presentation/pages/splash_page/splash_page.dart new file mode 100644 index 0000000..567c2fd --- /dev/null +++ b/lib/feature/on_boarding/presentation/pages/splash_page/splash_page.dart @@ -0,0 +1,37 @@ +import 'package:flutter_svg/flutter_svg.dart'; +import 'package:food_delivery_client/feature/on_boarding/presentation/blocs/splash_bloc/splash_bloc.dart'; + +import '../../../../../food_delivery_client.dart'; + +class SplashPage extends StatelessWidget { + const SplashPage({super.key}); + + @override + Widget build(BuildContext context) { + return BlocProvider( + create: (context) => sl()..add(SplashEvent.started()), + child: BlocListener( + listener: (context, state) { + if (state.status.isLoaded()) { + context.go(Routes.main); + } + }, + child: Scaffold( + backgroundColor: AppColors.c142328, + body: Align( + alignment: AlignmentGeometry.center, + child: Column( + mainAxisSize: MainAxisSize.max, + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SvgPicture.asset(AppIcons.icUber), + SvgPicture.asset(AppIcons.icEat), + ], + ), + ), + ), + ), + ); + } +} diff --git a/lib/food_delivery_client.dart b/lib/food_delivery_client.dart new file mode 100644 index 0000000..4605f52 --- /dev/null +++ b/lib/food_delivery_client.dart @@ -0,0 +1,21 @@ +export 'feature/main/main.dart'; +export 'package:flutter/material.dart'; +export 'package:get_it/get_it.dart'; +export 'package:injectable/injectable.dart'; +export 'package:food_delivery_client/core/router/routes_name.dart'; +export 'package:go_router/go_router.dart'; +export 'core/core.dart'; +export 'feature/common/common.dart'; +export 'feature/home/home.dart'; +export 'feature/browse/browse.dart'; +export 'feature/basket/basket.dart'; +export 'feature/account/account.dart'; +export 'package:flutter_bloc/flutter_bloc.dart'; +export 'package:flutter_localizations/flutter_localizations.dart'; +export 'package:flutter/services.dart'; +export 'dart:async'; +export 'dart:developer' show log; +export 'package:freezed_annotation/freezed_annotation.dart'; +export 'package:shared_preferences/shared_preferences.dart'; +export 'package:cached_network_image/cached_network_image.dart'; +export 'package:carousel_slider/carousel_slider.dart'; diff --git a/lib/main.dart b/lib/main.dart new file mode 100644 index 0000000..020c6bf --- /dev/null +++ b/lib/main.dart @@ -0,0 +1,75 @@ +import 'package:food_delivery_client/feature/common/presentation/blocs/language_bloc/language_bloc.dart'; + +import 'food_delivery_client.dart'; + +void main() { + runZonedGuarded( + () async{ + WidgetsFlutterBinding.ensureInitialized(); + FlutterError.onError = (details) { + FlutterError.presentError(details); + log("Flutter.onError $details"); + }; + Bloc.observer = AppBlocObserver(); + await configureDependencies(); + runApp( + BlocProvider(create: (context) => sl(), child: MyApp()), + ); + }, + (error, stack) { + log("RunZoneGuard Error $error"); + }, + ); +} + +class MyApp extends StatefulWidget { + const MyApp({super.key}); + + @override + State createState() => _MyAppState(); +} + +class _MyAppState extends State { + @override + void initState() { + SystemChrome.setPreferredOrientations([ + DeviceOrientation.portraitUp, + DeviceOrientation.portraitDown, + ]); + super.initState(); + } + + @override + Widget build(BuildContext context) { + return BlocBuilder( + bloc: context.read()..add(LanguageEvent.started()), + builder: (context, state) { + return MaterialApp.router( + title: "Uber Eats", + debugShowCheckedModeBanner: false, + theme: AppTheme.lightTheme, + routerConfig: sl().router, + locale: state.currentLocale, + supportedLocales: L10n.locales, + localizationsDelegates: [ + AppLocalizations.delegate, + GlobalMaterialLocalizations.delegate, + GlobalWidgetsLocalizations.delegate, + GlobalCupertinoLocalizations.delegate, + ], + builder: (context, child) => GestureDetector( + onTap: () { + FocusManager.instance.primaryFocus?.unfocus(); + }, + child: MediaQuery( + data: MediaQuery.of( + context, + ).copyWith(textScaler: const TextScaler.linear(1)), + child: child!, + ), + ), + ); + }, + ); + } +} diff --git a/pubspec.lock b/pubspec.lock new file mode 100644 index 0000000..51e70cc --- /dev/null +++ b/pubspec.lock @@ -0,0 +1,967 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + _fe_analyzer_shared: + dependency: transitive + description: + name: _fe_analyzer_shared + sha256: c209688d9f5a5f26b2fb47a188131a6fb9e876ae9e47af3737c0b4f58a93470d + url: "https://pub.dev" + source: hosted + version: "91.0.0" + analyzer: + dependency: transitive + description: + name: analyzer + sha256: a40a0cee526a7e1f387c6847bd8a5ccbf510a75952ef8a28338e989558072cb0 + url: "https://pub.dev" + source: hosted + version: "8.4.0" + args: + dependency: transitive + description: + name: args + sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 + url: "https://pub.dev" + source: hosted + version: "2.7.0" + async: + dependency: transitive + description: + name: async + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" + url: "https://pub.dev" + source: hosted + version: "2.13.0" + bloc: + dependency: "direct main" + description: + name: bloc + sha256: a2cebb899f91d36eeeaa55c7b20b5915db5a9df1b8fd4a3c9c825e22e474537d + url: "https://pub.dev" + source: hosted + version: "9.1.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + build: + dependency: transitive + description: + name: build + sha256: dfb67ccc9a78c642193e0c2d94cb9e48c2c818b3178a86097d644acdcde6a8d9 + url: "https://pub.dev" + source: hosted + version: "4.0.2" + build_config: + dependency: transitive + description: + name: build_config + sha256: "4f64382b97504dc2fcdf487d5aae33418e08b4703fc21249e4db6d804a4d0187" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + build_daemon: + dependency: transitive + description: + name: build_daemon + sha256: "409002f1adeea601018715d613115cfaf0e31f512cb80ae4534c79867ae2363d" + url: "https://pub.dev" + source: hosted + version: "4.1.0" + build_runner: + dependency: "direct dev" + description: + name: build_runner + sha256: "8cd45bdd6217138f4cfbaf6286c93f270ae4b3e2e281e69c904bd00cdf8aa626" + url: "https://pub.dev" + source: hosted + version: "2.10.0" + built_collection: + dependency: transitive + description: + name: built_collection + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" + url: "https://pub.dev" + source: hosted + version: "5.1.1" + built_value: + dependency: transitive + description: + name: built_value + sha256: a30f0a0e38671e89a492c44d005b5545b830a961575bbd8336d42869ff71066d + url: "https://pub.dev" + source: hosted + version: "8.12.0" + cached_network_image: + dependency: "direct main" + description: + name: cached_network_image + sha256: "7c1183e361e5c8b0a0f21a28401eecdbde252441106a9816400dd4c2b2424916" + url: "https://pub.dev" + source: hosted + version: "3.4.1" + cached_network_image_platform_interface: + dependency: transitive + description: + name: cached_network_image_platform_interface + sha256: "35814b016e37fbdc91f7ae18c8caf49ba5c88501813f73ce8a07027a395e2829" + url: "https://pub.dev" + source: hosted + version: "4.1.1" + cached_network_image_web: + dependency: transitive + description: + name: cached_network_image_web + sha256: "980842f4e8e2535b8dbd3d5ca0b1f0ba66bf61d14cc3a17a9b4788a3685ba062" + url: "https://pub.dev" + source: hosted + version: "1.3.1" + carousel_slider: + dependency: "direct main" + description: + name: carousel_slider + sha256: bcc61735345c9ab5cb81073896579e735f81e35fd588907a393143ea986be8ff + url: "https://pub.dev" + source: hosted + version: "5.1.1" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + checked_yaml: + dependency: transitive + description: + name: checked_yaml + sha256: "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f" + url: "https://pub.dev" + source: hosted + version: "2.0.4" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + code_builder: + dependency: transitive + description: + name: code_builder + sha256: "11654819532ba94c34de52ff5feb52bd81cba1de00ef2ed622fd50295f9d4243" + url: "https://pub.dev" + source: hosted + version: "4.11.0" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + convert: + dependency: transitive + description: + name: convert + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 + url: "https://pub.dev" + source: hosted + version: "3.1.2" + crypto: + dependency: transitive + description: + name: crypto + sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855" + url: "https://pub.dev" + source: hosted + version: "3.0.6" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + dart_style: + dependency: transitive + description: + name: dart_style + sha256: c87dfe3d56f183ffe9106a18aebc6db431fc7c98c31a54b952a77f3d54a85697 + url: "https://pub.dev" + source: hosted + version: "3.1.2" + dio: + dependency: "direct main" + description: + name: dio + sha256: d90ee57923d1828ac14e492ca49440f65477f4bb1263575900be731a3dac66a9 + url: "https://pub.dev" + source: hosted + version: "5.9.0" + dio_web_adapter: + dependency: transitive + description: + name: dio_web_adapter + sha256: "7586e476d70caecaf1686d21eee7247ea43ef5c345eab9e0cc3583ff13378d78" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" + url: "https://pub.dev" + source: hosted + version: "1.3.3" + ffi: + dependency: transitive + description: + name: ffi + sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be + url: "https://pub.dev" + source: hosted + version: "1.1.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_bloc: + dependency: "direct main" + description: + name: flutter_bloc + sha256: cf51747952201a455a1c840f8171d273be009b932c75093020f9af64f2123e38 + url: "https://pub.dev" + source: hosted + version: "9.1.1" + flutter_bounceable: + dependency: "direct main" + description: + name: flutter_bounceable + sha256: "2e46ad87e5870188a459d1e88f5acbf7bf0217651a6655f9ff079bc0c5976010" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + flutter_cache_manager: + dependency: transitive + description: + name: flutter_cache_manager + sha256: "400b6592f16a4409a7f2bb929a9a7e38c72cceb8ffb99ee57bbf2cb2cecf8386" + url: "https://pub.dev" + source: hosted + version: "3.4.1" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_localizations: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_svg: + dependency: "direct main" + description: + name: flutter_svg + sha256: b9c2ad5872518a27507ab432d1fb97e8813b05f0fc693f9d40fad06d073e0678 + url: "https://pub.dev" + source: hosted + version: "2.2.1" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + freezed: + dependency: "direct main" + description: + name: freezed + sha256: "13065f10e135263a4f5a4391b79a8efc5fb8106f8dd555a9e49b750b45393d77" + url: "https://pub.dev" + source: hosted + version: "3.2.3" + freezed_annotation: + dependency: "direct main" + description: + name: freezed_annotation + sha256: "7294967ff0a6d98638e7acb774aac3af2550777accd8149c90af5b014e6d44d8" + url: "https://pub.dev" + source: hosted + version: "3.1.0" + get_it: + dependency: "direct main" + description: + name: get_it + sha256: a4292e7cf67193f8e7c1258203104eb2a51ec8b3a04baa14695f4064c144297b + url: "https://pub.dev" + source: hosted + version: "8.2.0" + glob: + dependency: transitive + description: + name: glob + sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de + url: "https://pub.dev" + source: hosted + version: "2.1.3" + go_router: + dependency: "direct main" + description: + name: go_router + sha256: e1d7ffb0db475e6e845eb58b44768f50b830e23960e3df6908924acd8f7f70ea + url: "https://pub.dev" + source: hosted + version: "16.2.5" + graphs: + dependency: transitive + description: + name: graphs + sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" + url: "https://pub.dev" + source: hosted + version: "2.3.2" + http: + dependency: transitive + description: + name: http + sha256: bb2ce4590bc2667c96f318d68cac1b5a7987ec819351d32b1c987239a815e007 + url: "https://pub.dev" + source: hosted + version: "1.5.0" + http_multi_server: + dependency: transitive + description: + name: http_multi_server + sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 + url: "https://pub.dev" + source: hosted + version: "3.2.2" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" + url: "https://pub.dev" + source: hosted + version: "4.1.2" + injectable: + dependency: "direct main" + description: + name: injectable + sha256: f71ef28f5ed30603ab9be004425fd5cd4a473806f5de269d35deb33b61917534 + url: "https://pub.dev" + source: hosted + version: "2.5.2" + injectable_generator: + dependency: "direct main" + description: + name: injectable_generator + sha256: beac1179932b589ae1bc530c7f7dc4dedec4674d84aa452efa24f30b34495e00 + url: "https://pub.dev" + source: hosted + version: "2.9.0" + intl: + dependency: "direct main" + description: + name: intl + sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5" + url: "https://pub.dev" + source: hosted + version: "0.20.2" + io: + dependency: transitive + description: + name: io + sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b + url: "https://pub.dev" + source: hosted + version: "1.0.5" + json_annotation: + dependency: transitive + description: + name: json_annotation + sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" + url: "https://pub.dev" + source: hosted + version: "4.9.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" + url: "https://pub.dev" + source: hosted + version: "11.0.2" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" + url: "https://pub.dev" + source: hosted + version: "3.0.10" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1" + url: "https://pub.dev" + source: hosted + version: "3.0.2" + lints: + dependency: transitive + description: + name: lints + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 + url: "https://pub.dev" + source: hosted + version: "5.1.1" + logging: + dependency: transitive + description: + name: logging + sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 + url: "https://pub.dev" + source: hosted + version: "1.3.0" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + mime: + dependency: transitive + description: + name: mime + sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" + url: "https://pub.dev" + source: hosted + version: "2.0.0" + nested: + dependency: transitive + description: + name: nested + sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" + url: "https://pub.dev" + source: hosted + version: "1.0.0" + octo_image: + dependency: transitive + description: + name: octo_image + sha256: "34faa6639a78c7e3cbe79be6f9f96535867e879748ade7d17c9b1ae7536293bd" + url: "https://pub.dev" + source: hosted + version: "2.1.0" + package_config: + dependency: transitive + description: + name: package_config + sha256: f096c55ebb7deb7e384101542bfba8c52696c1b56fca2eb62827989ef2353bbc + url: "https://pub.dev" + source: hosted + version: "2.2.0" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + path_parsing: + dependency: transitive + description: + name: path_parsing + sha256: "883402936929eac138ee0a45da5b0f2c80f89913e6dc3bf77eb65b84b409c6ca" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + path_provider: + dependency: transitive + description: + name: path_provider + sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd" + url: "https://pub.dev" + source: hosted + version: "2.1.5" + path_provider_android: + dependency: transitive + description: + name: path_provider_android + sha256: e122c5ea805bb6773bb12ce667611265980940145be920cd09a4b0ec0285cb16 + url: "https://pub.dev" + source: hosted + version: "2.2.20" + path_provider_foundation: + dependency: transitive + description: + name: path_provider_foundation + sha256: efaec349ddfc181528345c56f8eda9d6cccd71c177511b132c6a0ddaefaa2738 + url: "https://pub.dev" + source: hosted + version: "2.4.3" + path_provider_linux: + dependency: transitive + description: + name: path_provider_linux + sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 + url: "https://pub.dev" + source: hosted + version: "2.2.1" + path_provider_platform_interface: + dependency: transitive + description: + name: path_provider_platform_interface + sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + path_provider_windows: + dependency: transitive + description: + name: path_provider_windows + sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 + url: "https://pub.dev" + source: hosted + version: "2.3.0" + petitparser: + dependency: transitive + description: + name: petitparser + sha256: "1a97266a94f7350d30ae522c0af07890c70b8e62c71e8e3920d1db4d23c057d1" + url: "https://pub.dev" + source: hosted + version: "7.0.1" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + pool: + dependency: transitive + description: + name: pool + sha256: "978783255c543aa3586a1b3c21f6e9d720eb315376a915872c61ef8b5c20177d" + url: "https://pub.dev" + source: hosted + version: "1.5.2" + provider: + dependency: transitive + description: + name: provider + sha256: "4e82183fa20e5ca25703ead7e05de9e4cceed1fbd1eadc1ac3cb6f565a09f272" + url: "https://pub.dev" + source: hosted + version: "6.1.5+1" + pub_semver: + dependency: transitive + description: + name: pub_semver + sha256: "5bfcf68ca79ef689f8990d1160781b4bad40a3bd5e5218ad4076ddb7f4081585" + url: "https://pub.dev" + source: hosted + version: "2.2.0" + pubspec_parse: + dependency: transitive + description: + name: pubspec_parse + sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082" + url: "https://pub.dev" + source: hosted + version: "1.5.0" + recase: + dependency: transitive + description: + name: recase + sha256: e4eb4ec2dcdee52dcf99cb4ceabaffc631d7424ee55e56f280bc039737f89213 + url: "https://pub.dev" + source: hosted + version: "4.1.0" + rxdart: + dependency: transitive + description: + name: rxdart + sha256: "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962" + url: "https://pub.dev" + source: hosted + version: "0.28.0" + shared_preferences: + dependency: "direct main" + description: + name: shared_preferences + sha256: "6e8bf70b7fef813df4e9a36f658ac46d107db4b4cfe1048b477d4e453a8159f5" + url: "https://pub.dev" + source: hosted + version: "2.5.3" + shared_preferences_android: + dependency: transitive + description: + name: shared_preferences_android + sha256: "34266009473bf71d748912da4bf62d439185226c03e01e2d9687bc65bbfcb713" + url: "https://pub.dev" + source: hosted + version: "2.4.15" + shared_preferences_foundation: + dependency: transitive + description: + name: shared_preferences_foundation + sha256: "1c33a907142607c40a7542768ec9badfd16293bac51da3a4482623d15845f88b" + url: "https://pub.dev" + source: hosted + version: "2.5.5" + shared_preferences_linux: + dependency: transitive + description: + name: shared_preferences_linux + sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_preferences_platform_interface: + dependency: transitive + description: + name: shared_preferences_platform_interface + sha256: "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_preferences_web: + dependency: transitive + description: + name: shared_preferences_web + sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019 + url: "https://pub.dev" + source: hosted + version: "2.4.3" + shared_preferences_windows: + dependency: transitive + description: + name: shared_preferences_windows + sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shelf: + dependency: transitive + description: + name: shelf + sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12 + url: "https://pub.dev" + source: hosted + version: "1.4.2" + shelf_web_socket: + dependency: transitive + description: + name: shelf_web_socket + sha256: "3632775c8e90d6c9712f883e633716432a27758216dfb61bd86a8321c0580925" + url: "https://pub.dev" + source: hosted + version: "3.0.0" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_gen: + dependency: transitive + description: + name: source_gen + sha256: "9098ab86015c4f1d8af6486b547b11100e73b193e1899015033cb3e14ad20243" + url: "https://pub.dev" + source: hosted + version: "4.0.2" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + sprintf: + dependency: transitive + description: + name: sprintf + sha256: "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23" + url: "https://pub.dev" + source: hosted + version: "7.0.0" + sqflite: + dependency: transitive + description: + name: sqflite + sha256: e2297b1da52f127bc7a3da11439985d9b536f75070f3325e62ada69a5c585d03 + url: "https://pub.dev" + source: hosted + version: "2.4.2" + sqflite_android: + dependency: transitive + description: + name: sqflite_android + sha256: ecd684501ebc2ae9a83536e8b15731642b9570dc8623e0073d227d0ee2bfea88 + url: "https://pub.dev" + source: hosted + version: "2.4.2+2" + sqflite_common: + dependency: transitive + description: + name: sqflite_common + sha256: "6ef422a4525ecc601db6c0a2233ff448c731307906e92cabc9ba292afaae16a6" + url: "https://pub.dev" + source: hosted + version: "2.5.6" + sqflite_darwin: + dependency: transitive + description: + name: sqflite_darwin + sha256: "279832e5cde3fe99e8571879498c9211f3ca6391b0d818df4e17d9fff5c6ccb3" + url: "https://pub.dev" + source: hosted + version: "2.4.2" + sqflite_platform_interface: + dependency: transitive + description: + name: sqflite_platform_interface + sha256: "8dd4515c7bdcae0a785b0062859336de775e8c65db81ae33dd5445f35be61920" + url: "https://pub.dev" + source: hosted + version: "2.4.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + stream_transform: + dependency: transitive + description: + name: stream_transform + sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871 + url: "https://pub.dev" + source: hosted + version: "2.1.1" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + synchronized: + dependency: transitive + description: + name: synchronized + sha256: c254ade258ec8282947a0acbbc90b9575b4f19673533ee46f2f6e9b3aeefd7c0 + url: "https://pub.dev" + source: hosted + version: "3.4.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: "522f00f556e73044315fa4585ec3270f1808a4b186c936e612cab0b565ff1e00" + url: "https://pub.dev" + source: hosted + version: "0.7.6" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + uuid: + dependency: transitive + description: + name: uuid + sha256: a5be9ef6618a7ac1e964353ef476418026db906c4facdedaa299b7a2e71690ff + url: "https://pub.dev" + source: hosted + version: "4.5.1" + vector_graphics: + dependency: transitive + description: + name: vector_graphics + sha256: a4f059dc26fc8295b5921376600a194c4ec7d55e72f2fe4c7d2831e103d461e6 + url: "https://pub.dev" + source: hosted + version: "1.1.19" + vector_graphics_codec: + dependency: transitive + description: + name: vector_graphics_codec + sha256: "99fd9fbd34d9f9a32efd7b6a6aae14125d8237b10403b422a6a6dfeac2806146" + url: "https://pub.dev" + source: hosted + version: "1.1.13" + vector_graphics_compiler: + dependency: transitive + description: + name: vector_graphics_compiler + sha256: d354a7ec6931e6047785f4db12a1f61ec3d43b207fc0790f863818543f8ff0dc + url: "https://pub.dev" + source: hosted + version: "1.1.19" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b + url: "https://pub.dev" + source: hosted + version: "2.2.0" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "45caa6c5917fa127b5dbcfbd1fa60b14e583afdc08bfc96dda38886ca252eb60" + url: "https://pub.dev" + source: hosted + version: "15.0.2" + watcher: + dependency: transitive + description: + name: watcher + sha256: "592ab6e2892f67760543fb712ff0177f4ec76c031f02f5b4ff8d3fc5eb9fb61a" + url: "https://pub.dev" + source: hosted + version: "1.1.4" + web: + dependency: transitive + description: + name: web + sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" + url: "https://pub.dev" + source: hosted + version: "1.1.1" + web_socket: + dependency: transitive + description: + name: web_socket + sha256: "34d64019aa8e36bf9842ac014bb5d2f5586ca73df5e4d9bf5c936975cae6982c" + url: "https://pub.dev" + source: hosted + version: "1.0.1" + web_socket_channel: + dependency: transitive + description: + name: web_socket_channel + sha256: d645757fb0f4773d602444000a8131ff5d48c9e47adfe9772652dd1a4f2d45c8 + url: "https://pub.dev" + source: hosted + version: "3.0.3" + xdg_directories: + dependency: transitive + description: + name: xdg_directories + sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + xml: + dependency: transitive + description: + name: xml + sha256: "971043b3a0d3da28727e40ed3e0b5d18b742fa5a68665cca88e74b7876d5e025" + url: "https://pub.dev" + source: hosted + version: "6.6.1" + yaml: + dependency: transitive + description: + name: yaml + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce + url: "https://pub.dev" + source: hosted + version: "3.1.3" +sdks: + dart: ">=3.9.0 <4.0.0" + flutter: ">=3.35.0" diff --git a/pubspec.yaml b/pubspec.yaml new file mode 100644 index 0000000..393175c --- /dev/null +++ b/pubspec.yaml @@ -0,0 +1,80 @@ +name: food_delivery_client +description: "A new Flutter project" +version: 1.0.0+1 + +environment: + sdk: ^3.9.0 + +dependencies: + flutter: + sdk: flutter + flutter_localizations: + sdk: flutter + + cupertino_icons: ^1.0.8 + #navigation + go_router: ^16.2.5 + + #helpers + intl: ^0.20.2 + flutter_bounceable: ^1.2.0 + cached_network_image: ^3.4.1 + carousel_slider: ^5.1.1 + + #DI + get_it: ^8.2.0 + injectable: ^2.5.2 + injectable_generator: ^2.9.0 + + #network + dio: ^5.9.0 + + #to use svgs + flutter_svg: ^2.2.1 + + #storage + shared_preferences: ^2.5.3 + + + #state_manegement + bloc: ^9.1.0 + flutter_bloc: ^9.1.1 + freezed: ^3.2.3 + freezed_annotation: ^3.1.0 + + +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^5.0.0 + build_runner: ^2.10.0 + + +flutter: + generate: true + uses-material-design: true + + + assets: + - assets/images/ + - assets/icons/ + - assets/fonts/ + - assets/translations/ + + fonts: + - family: fontBold + fonts: + - asset: assets/fonts/UberMoveTextBold.otf + weight: 700 + - family: fontMedium + fonts: + - asset: assets/fonts/UberMoveTextMedium.otf + weight: 500 + - family: fontRegular + fonts: + - asset: assets/fonts/UberMoveTextRegular.otf + weight: 400 + - family: fontLight + fonts: + - asset: assets/fonts/UberMoveTextLight.otf + weight: 300 diff --git a/test/widget_test.dart b/test/widget_test.dart new file mode 100644 index 0000000..5640e60 --- /dev/null +++ b/test/widget_test.dart @@ -0,0 +1,30 @@ +// This is a basic Flutter widget test. +// +// To perform an interaction with a widget in your test, use the WidgetTester +// utility in the flutter_test package. For example, you can send tap and scroll +// gestures. You can also use WidgetTester to find child widgets in the widget +// tree, read text, and verify that the values of widget properties are correct. + +import 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; + +import 'package:food_delivery_client/main.dart'; + +void main() { + testWidgets('Counter increments smoke test', (WidgetTester tester) async { + // Build our app and trigger a frame. + await tester.pumpWidget(const MyApp()); + + // Verify that our counter starts at 0. + expect(find.text('0'), findsOneWidget); + expect(find.text('1'), findsNothing); + + // Tap the '+' icon and trigger a frame. + await tester.tap(find.byIcon(Icons.add)); + await tester.pump(); + + // Verify that our counter has incremented. + expect(find.text('0'), findsNothing); + expect(find.text('1'), findsOneWidget); + }); +}