feat: splash page done

This commit is contained in:
jahongireshonqulov
2025-10-31 12:29:30 +05:00
parent ab1ac6e6fa
commit 077ea23416
229 changed files with 3187 additions and 13517 deletions

View File

@@ -4,7 +4,9 @@ abstract class AppLocaleKeys {
static const String browseSearchHistory = 'browse-search-history';
static const String token = 'token';
static const String fontBlack = "fontBlack";
static const String fontBold = "fontBold";
static const String fontSemiBold = "fontSemiBold";
static const String fontMedium = "fontMedium";
static const String fontRegular = "fontRegular";
static const String fontLight = "fontLight";

View File

@@ -4,5 +4,6 @@ abstract class TimeDelayConst {
static const Duration durationMill800 = Duration(milliseconds: 800);
static const Duration durationMill3500 = Duration(milliseconds: 3500);
static const Duration duration1 = Duration(seconds: 1);
static const Duration duration2 = Duration(seconds: 2);
static const Duration duration3 = Duration(seconds: 3);
}

View File

@@ -13,42 +13,12 @@ import 'package:dio/dio.dart' as _i361;
import 'package:get_it/get_it.dart' as _i174;
import 'package:injectable/injectable.dart' as _i526;
import '../../feature/auth/data/datasource/auth_datasource.dart' as _i246;
import '../../feature/auth/data/repository/auth_repository_impl.dart' as _i648;
import '../../feature/auth/domain/repository/auth_repository.dart' as _i884;
import '../../feature/auth/domain/usecases/login_usecase.dart' as _i241;
import '../../feature/auth/domain/usecases/register_usecase.dart' as _i607;
import '../../feature/auth/domain/usecases/reset_password_usecase.dart'
as _i694;
import '../../feature/auth/domain/usecases/verify_otp_code_login_usecase.dart'
as _i318;
import '../../feature/auth/domain/usecases/verify_otp_code_register_usecase.dart'
as _i406;
import '../../feature/auth/domain/usecases/verify_phone_login_usecase.dart'
as _i801;
import '../../feature/auth/domain/usecases/verify_phone_register_usecase.dart'
as _i664;
import '../../feature/auth/presentation/blocs/login_bloc/login_bloc.dart'
as _i1065;
import '../../feature/auth/presentation/blocs/register_bloc/register_bloc.dart'
as _i1050;
import '../../feature/auth/presentation/blocs/reset_password_bloc/reset_password_bloc.dart'
as _i97;
import '../../feature/auth/presentation/blocs/verify_otp_bloc/verify_otp_bloc.dart'
as _i323;
import '../../feature/auth/presentation/blocs/verify_phone_bloc/verify_phone_bloc.dart'
as _i224;
import '../../feature/basket/presentation/blocs/basket_bloc.dart' as _i728;
import '../../feature/browse/presentation/blocs/browse_bloc/browse_bloc.dart'
as _i991;
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 '../../feature/onboarding/presentation/blocs/splash_bloc/splash_bloc.dart'
as _i28;
import '../../food_delivery_client.dart' as _i321;
import '../network/dio_client.dart' as _i667;
import '../router/app_routes.dart' as _i152;
@@ -63,78 +33,20 @@ extension GetItInjectableX on _i174.GetIt {
}) {
final gh = _i526.GetItHelper(this, environment, environmentFilter);
final dioModule = _$DioModule();
gh.factory<_i1007.HomeBloc>(() => _i1007.HomeBloc());
gh.factory<_i728.BasketBloc>(() => _i728.BasketBloc());
gh.factory<_i991.BrowseBloc>(() => _i991.BrowseBloc());
gh.factory<_i580.MainBloc>(() => _i580.MainBloc());
gh.factory<_i311.SplashBloc>(() => _i311.SplashBloc());
gh.singleton<_i306.StorageService>(() => _i306.StorageService());
gh.singleton<_i152.AppRoutes>(() => _i152.AppRoutes());
gh.lazySingleton<_i667.DioClient>(() => _i667.DioClient());
gh.factory<_i942.LanguageBloc>(
() => _i942.LanguageBloc(gh<_i321.StorageService>()),
);
gh.factory<_i28.SplashBloc>(
() => _i28.SplashBloc(gh<_i321.StorageService>()),
);
gh.lazySingleton<_i361.Dio>(() => dioModule.dio(gh<_i667.DioClient>()));
gh.singleton<_i354.RequestHandlerService>(
() => _i354.RequestHandlerService(gh<_i361.Dio>()),
);
gh.lazySingleton<_i246.AuthDatasource>(
() => _i246.AuthDatasourceImpl(gh<_i354.RequestHandlerService>()),
);
gh.lazySingleton<_i884.AuthRepository>(
() => _i648.AuthRepositoryImpl(
gh<_i354.RequestHandlerService>(),
gh<_i246.AuthDatasource>(),
),
);
gh.factory<_i607.RegisterUseCase>(
() => _i607.RegisterUseCase(gh<_i884.AuthRepository>()),
);
gh.factory<_i241.LoginUseCase>(
() => _i241.LoginUseCase(gh<_i884.AuthRepository>()),
);
gh.factory<_i694.ResetPasswordUseCase>(
() => _i694.ResetPasswordUseCase(gh<_i884.AuthRepository>()),
);
gh.factory<_i318.VerifyOtpCodeForgotPasswordUseCase>(
() =>
_i318.VerifyOtpCodeForgotPasswordUseCase(gh<_i884.AuthRepository>()),
);
gh.factory<_i801.VerifyPhoneNumberLoginUseCase>(
() => _i801.VerifyPhoneNumberLoginUseCase(gh<_i884.AuthRepository>()),
);
gh.factory<_i664.VerifyPhoneRegisterUseCase>(
() => _i664.VerifyPhoneRegisterUseCase(gh<_i884.AuthRepository>()),
);
gh.factory<_i406.VerifyOtpCodeRegisterUseCase>(
() => _i406.VerifyOtpCodeRegisterUseCase(gh<_i884.AuthRepository>()),
);
gh.factory<_i323.VerifyOtpBloc>(
() => _i323.VerifyOtpBloc(
gh<_i406.VerifyOtpCodeRegisterUseCase>(),
gh<_i318.VerifyOtpCodeForgotPasswordUseCase>(),
gh<_i664.VerifyPhoneRegisterUseCase>(),
gh<_i801.VerifyPhoneNumberLoginUseCase>(),
),
);
gh.factory<_i224.VerifyPhoneBloc>(
() => _i224.VerifyPhoneBloc(
gh<_i801.VerifyPhoneNumberLoginUseCase>(),
gh<_i664.VerifyPhoneRegisterUseCase>(),
),
);
gh.factory<_i1050.RegisterBloc>(
() => _i1050.RegisterBloc(gh<_i607.RegisterUseCase>()),
);
gh.factory<_i97.ResetPasswordBloc>(
() => _i97.ResetPasswordBloc(gh<_i694.ResetPasswordUseCase>()),
);
gh.factory<_i1065.LoginBloc>(
() => _i1065.LoginBloc(
gh<_i241.LoginUseCase>(),
gh<_i321.StorageService>(),
),
);
return this;
}
}

View File

@@ -1,5 +1,7 @@
import 'package:flutter/cupertino.dart';
import 'package:food_delivery_client/core/l10n/app_localizations.dart';
import 'package:food_delivery_client/core/theme/app_theme_textstyles.dart';
import 'package:food_delivery_client/core/theme/theme_icons.dart';
import '../../food_delivery_client.dart';
extension BuildContextExtensions on BuildContext {
MediaQueryData get mq => MediaQuery.of(this);
@@ -9,4 +11,11 @@ extension BuildContextExtensions on BuildContext {
double get h => mq.size.height;
AppLocalizations get loc => AppLocalizations.of(this)!;
ThemeData get theme => Theme.of(this);
AppThemeIcons get appThemeIcons => theme.extension<AppThemeIcons>()!;
AppThemeTextStyles get appThemeTextStyles =>
theme.extension<AppThemeTextStyles>()!;
}

View File

@@ -100,809 +100,41 @@ abstract class AppLocalizations {
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 havent 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;
/// No description provided for @orderDetails.
///
/// In en, this message translates to:
/// **'Order details'**
String get orderDetails;
/// No description provided for @deliverNow.
///
/// In en, this message translates to:
/// **'Deliver now'**
String get deliverNow;
/// No description provided for @schedule.
///
/// In en, this message translates to:
/// **'Schedule'**
String get schedule;
/// No description provided for @enterNewAddress.
///
/// In en, this message translates to:
/// **'Enter a new address'**
String get enterNewAddress;
/// No description provided for @nearby.
///
/// In en, this message translates to:
/// **'Nearby'**
String get nearby;
/// No description provided for @currentLocation.
///
/// In en, this message translates to:
/// **'Current location'**
String get currentLocation;
/// No description provided for @enable.
///
/// In en, this message translates to:
/// **'Enable'**
String get enable;
/// No description provided for @recentLocations.
///
/// In en, this message translates to:
/// **'Recent locations'**
String get recentLocations;
/// No description provided for @allFilters.
///
/// In en, this message translates to:
/// **'All filters'**
String get allFilters;
/// No description provided for @sort.
///
/// In en, this message translates to:
/// **'Sort'**
String get sort;
/// No description provided for @pickedForYou.
///
/// In en, this message translates to:
/// **'Picked for you (default)'**
String get pickedForYou;
/// No description provided for @mostPopular.
///
/// In en, this message translates to:
/// **'Most popular'**
String get mostPopular;
/// No description provided for @rating.
///
/// In en, this message translates to:
/// **'Rating'**
String get rating;
/// No description provided for @deliveryTime.
///
/// In en, this message translates to:
/// **'Delivery time'**
String get deliveryTime;
/// No description provided for @fromUberEats.
///
/// In en, this message translates to:
/// **'From {name}'**
String fromUberEats(String name);
/// No description provided for @deals.
///
/// In en, this message translates to:
/// **'Deals'**
String get deals;
/// No description provided for @bestOverall.
///
/// In en, this message translates to:
/// **'Best Overall'**
String get bestOverall;
/// No description provided for @priceRange.
///
/// In en, this message translates to:
/// **'Price range'**
String get priceRange;
/// No description provided for @maxDeliveryFee.
///
/// In en, this message translates to:
/// **'Max. Delivery Fee'**
String get maxDeliveryFee;
/// No description provided for @dietary.
///
/// In en, this message translates to:
/// **'Dietary'**
String get dietary;
/// No description provided for @vegetarian.
///
/// In en, this message translates to:
/// **'Vegetarian'**
String get vegetarian;
/// No description provided for @vegan.
///
/// In en, this message translates to:
/// **'Vegan'**
String get vegan;
/// No description provided for @glutenFree.
///
/// In en, this message translates to:
/// **'Gluten-free'**
String get glutenFree;
/// No description provided for @allergyFriendly.
///
/// In en, this message translates to:
/// **'Allergy friendly'**
String get allergyFriendly;
/// No description provided for @atLeast.
///
/// In en, this message translates to:
/// **'At least'**
String get atLeast;
/// No description provided for @apply.
///
/// In en, this message translates to:
/// **'Apply'**
String get apply;
/// No description provided for @pickedForYouDefault.
///
/// In en, this message translates to:
/// **'Picked for you (default)'**
String get pickedForYouDefault;
/// No description provided for @popular.
///
/// In en, this message translates to:
/// **'Most popular'**
String get popular;
/// No description provided for @topRated.
///
/// In en, this message translates to:
/// **'Top rated'**
String get topRated;
/// No description provided for @fast.
///
/// In en, this message translates to:
/// **'Fast'**
String get fast;
/// No description provided for @featuredStores.
///
/// In en, this message translates to:
/// **'Featured stores'**
String get featuredStores;
/// No description provided for @opensAt.
///
/// In en, this message translates to:
/// **'Opens at {time}'**
String opensAt(String time);
/// No description provided for @spendAndSave.
///
/// In en, this message translates to:
/// **'Spend {spend}, save {save}'**
String spendAndSave(String spend, String save);
/// No description provided for @cartsTitle.
///
/// In en, this message translates to:
/// **'Carts'**
String get cartsTitle;
/// No description provided for @addItemsStartBasket.
///
/// In en, this message translates to:
/// **'Add items to start a basket'**
String get addItemsStartBasket;
/// No description provided for @basketHint.
///
/// In en, this message translates to:
/// **'Once you add items from a restaurant or store, your basket will appear here.'**
String get basketHint;
/// No description provided for @startShopping.
///
/// In en, this message translates to:
/// **'Start Shopping'**
String get startShopping;
/// No description provided for @orders.
///
/// In en, this message translates to:
/// **'Orders'**
String get orders;
/// No description provided for @recentSearches.
///
/// In en, this message translates to:
/// **'Recent searches'**
String get recentSearches;
/// No description provided for @cafe.
///
/// In en, this message translates to:
/// **'Cafe'**
String get cafe;
/// No description provided for @irish.
///
/// In en, this message translates to:
/// **'Irish'**
String get irish;
/// No description provided for @topCategories.
///
/// In en, this message translates to:
/// **'Top Categories'**
String get topCategories;
/// No description provided for @breakfastAndBrunch.
///
/// In en, this message translates to:
/// **'Breakfast and Brunch'**
String get breakfastAndBrunch;
/// No description provided for @coffeeAndTea.
///
/// In en, this message translates to:
/// **'Coffee and Tea'**
String get coffeeAndTea;
/// No description provided for @latestDeals.
///
/// In en, this message translates to:
/// **'Latest Deals'**
String get latestDeals;
/// No description provided for @restaurantRewards.
///
/// In en, this message translates to:
/// **'Restaurant Rewards'**
String get restaurantRewards;
/// No description provided for @nationwideShipping.
///
/// In en, this message translates to:
/// **'Nationwide Shipping'**
String get nationwideShipping;
/// No description provided for @mexican.
///
/// In en, this message translates to:
/// **'Mexican'**
String get mexican;
/// No description provided for @fastFood.
///
/// In en, this message translates to:
/// **'Fast Food'**
String get fastFood;
/// No description provided for @healthy.
///
/// In en, this message translates to:
/// **'Healthy'**
String get healthy;
/// No description provided for @pizza.
///
/// In en, this message translates to:
/// **'Pizza'**
String get pizza;
/// No description provided for @sandwich.
///
/// In en, this message translates to:
/// **'Sandwich'**
String get sandwich;
/// No description provided for @bakery.
///
/// In en, this message translates to:
/// **'Bakery'**
String get bakery;
/// No description provided for @categoriesShort.
///
/// In en, this message translates to:
/// **'Food, shopping, drinks, etc.'**
String get categoriesShort;
/// No description provided for @yourFavourites.
///
/// In en, this message translates to:
/// **'Your favourites'**
String get yourFavourites;
/// No description provided for @wallet.
///
/// In en, this message translates to:
/// **'Wallet'**
String get wallet;
/// No description provided for @sendAGift.
///
/// In en, this message translates to:
/// **'Send a gift'**
String get sendAGift;
/// No description provided for @businessPreferences.
///
/// In en, this message translates to:
/// **'Business preferences'**
String get businessPreferences;
/// No description provided for @businessSub.
///
/// In en, this message translates to:
/// **'Make work meals quicker and easier'**
String get businessSub;
/// No description provided for @help.
///
/// In en, this message translates to:
/// **'Help'**
String get help;
/// No description provided for @promotions.
///
/// In en, this message translates to:
/// **'Promotions'**
String get promotions;
/// No description provided for @uberPass.
///
/// In en, this message translates to:
/// **'Uber Pass'**
String get uberPass;
/// No description provided for @uberPassSub.
///
/// In en, this message translates to:
/// **'Join free for 1 month'**
String get uberPassSub;
/// No description provided for @deliverWithUber.
///
/// In en, this message translates to:
/// **'Deliver with Uber'**
String get deliverWithUber;
/// No description provided for @settings.
///
/// In en, this message translates to:
/// **'Settings'**
String get settings;
/// No description provided for @home.
///
/// In en, this message translates to:
/// **'Home'**
String get home;
/// No description provided for @browse.
///
/// In en, this message translates to:
/// **'Browse'**
String get browse;
/// No description provided for @baskets.
///
/// In en, this message translates to:
/// **'Baskets'**
String get baskets;
/// No description provided for @account.
///
/// In en, this message translates to:
/// **'Account'**
String get account;
/// No description provided for @changeLanguage.
///
/// In en, this message translates to:
/// **'Change language'**
String get changeLanguage;
/// No description provided for @language.
///
/// In en, this message translates to:
/// **'Language'**
String get language;
/// No description provided for @login.
///
/// In en, this message translates to:
/// **'Login'**
String get login;
/// No description provided for @phone_number.
///
/// In en, this message translates to:
/// **'Phone number'**
String get phone_number;
/// No description provided for @enter_phone_number.
///
/// In en, this message translates to:
/// **'Enter phone number'**
String get enter_phone_number;
/// No description provided for @password.
///
/// In en, this message translates to:
/// **'Password'**
String get password;
/// No description provided for @enter_password.
///
/// In en, this message translates to:
/// **'Enter password'**
String get enter_password;
/// No description provided for @forgot_password.
///
/// In en, this message translates to:
/// **'Forgot password'**
String get forgot_password;
/// No description provided for @continue_str.
///
/// In en, this message translates to:
/// **'Continue'**
String get continue_str;
/// No description provided for @dont_have_account.
///
/// In en, this message translates to:
/// **'Don\'t have an account?'**
String get dont_have_account;
/// No description provided for @sign_up.
///
/// In en, this message translates to:
/// **'SignUp'**
String get sign_up;
/// No description provided for @field_cannot_be_empty.
///
/// In en, this message translates to:
/// **'This field cannot be empty'**
String get field_cannot_be_empty;
/// No description provided for @password_too_short.
///
/// In en, this message translates to:
/// **'Password must be at least 6 characters long'**
String get password_too_short;
/// No description provided for @invalid_phone_format.
///
/// In en, this message translates to:
/// **'Invalid phone number format'**
String get invalid_phone_format;
/// No description provided for @first_name.
/// No description provided for @password_too_short.
///
/// In en, this message translates to:
/// **'First name'**
String get first_name;
/// No description provided for @enter_first_name.
///
/// In en, this message translates to:
/// **'Enter first name'**
String get enter_first_name;
/// No description provided for @repeat_password.
///
/// In en, this message translates to:
/// **'Repeat password'**
String get repeat_password;
/// No description provided for @enter_repeat_password.
///
/// In en, this message translates to:
/// **'Enter repeat password'**
String get enter_repeat_password;
/// No description provided for @already_has_account.
///
/// In en, this message translates to:
/// **'Already have an account?'**
String get already_has_account;
/// No description provided for @unexpected_error.
///
/// In en, this message translates to:
/// **'Unexpected error'**
String get unexpected_error;
/// No description provided for @consent_message.
///
/// In en, this message translates to:
/// **'By proceeding, you consent to get calls or SMS messages, including by automated means, from {appName} and its affiliates to the number provided.'**
String consent_message(String appName);
/// No description provided for @otp_code_incomplete.
///
/// In en, this message translates to:
/// **'Code is incomplete. Please enter the full code.'**
String get otp_code_incomplete;
/// **'Password must be at least 6 characters long'**
String get password_too_short;
/// No description provided for @passwords_do_not_match.
///
/// In en, this message translates to:
/// **'Passwords do not match.'**
/// **'Passwords do not match'**
String get passwords_do_not_match;
/// No description provided for @reset_password.
/// No description provided for @otp_code_incomplete.
///
/// In en, this message translates to:
/// **'Reset password'**
String get reset_password;
/// **'OTP code is incomplete'**
String get otp_code_incomplete;
/// No description provided for @new_password.
/// No description provided for @unexpected_error.
///
/// In en, this message translates to:
/// **'New password'**
String get new_password;
/// No description provided for @enter_otp_code.
///
/// In en, this message translates to:
/// **'Enter the 5-digit code sent to you at {phoneNumber}'**
String enter_otp_code(String phoneNumber);
/// No description provided for @resend_otp_after.
///
/// In en, this message translates to:
/// **'You can resend OTP after'**
String get resend_otp_after;
/// **'An unexpected error occurred. Please try again.'**
String get unexpected_error;
}
class _AppLocalizationsDelegate

View File

@@ -8,423 +8,23 @@ import 'app_localizations.dart';
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 havent 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';
@override
String get orderDetails => 'Order details';
@override
String get deliverNow => 'Deliver now';
@override
String get schedule => 'Schedule';
@override
String get enterNewAddress => 'Enter a new address';
@override
String get nearby => 'Nearby';
@override
String get currentLocation => 'Current location';
@override
String get enable => 'Enable';
@override
String get recentLocations => 'Recent locations';
@override
String get allFilters => 'All filters';
@override
String get sort => 'Sort';
@override
String get pickedForYou => 'Picked for you (default)';
@override
String get mostPopular => 'Most popular';
@override
String get rating => 'Rating';
@override
String get deliveryTime => 'Delivery time';
@override
String fromUberEats(String name) {
return 'From $name';
}
@override
String get deals => 'Deals';
@override
String get bestOverall => 'Best Overall';
@override
String get priceRange => 'Price range';
@override
String get maxDeliveryFee => 'Max. Delivery Fee';
@override
String get dietary => 'Dietary';
@override
String get vegetarian => 'Vegetarian';
@override
String get vegan => 'Vegan';
@override
String get glutenFree => 'Gluten-free';
@override
String get allergyFriendly => 'Allergy friendly';
@override
String get atLeast => 'At least';
@override
String get apply => 'Apply';
@override
String get pickedForYouDefault => 'Picked for you (default)';
@override
String get popular => 'Most popular';
@override
String get topRated => 'Top rated';
@override
String get fast => 'Fast';
@override
String get featuredStores => 'Featured stores';
@override
String opensAt(String time) {
return 'Opens at $time';
}
@override
String spendAndSave(String spend, String save) {
return 'Spend $spend, save $save';
}
@override
String get cartsTitle => 'Carts';
@override
String get addItemsStartBasket => 'Add items to start a basket';
@override
String get basketHint =>
'Once you add items from a restaurant or store, your basket will appear here.';
@override
String get startShopping => 'Start Shopping';
@override
String get orders => 'Orders';
@override
String get recentSearches => 'Recent searches';
@override
String get cafe => 'Cafe';
@override
String get irish => 'Irish';
@override
String get topCategories => 'Top Categories';
@override
String get breakfastAndBrunch => 'Breakfast and Brunch';
@override
String get coffeeAndTea => 'Coffee and Tea';
@override
String get latestDeals => 'Latest Deals';
@override
String get restaurantRewards => 'Restaurant Rewards';
@override
String get nationwideShipping => 'Nationwide Shipping';
@override
String get mexican => 'Mexican';
@override
String get fastFood => 'Fast Food';
@override
String get healthy => 'Healthy';
@override
String get pizza => 'Pizza';
@override
String get sandwich => 'Sandwich';
@override
String get bakery => 'Bakery';
@override
String get categoriesShort => 'Food, shopping, drinks, etc.';
@override
String get yourFavourites => 'Your favourites';
@override
String get wallet => 'Wallet';
@override
String get sendAGift => 'Send a gift';
@override
String get businessPreferences => 'Business preferences';
@override
String get businessSub => 'Make work meals quicker and easier';
@override
String get help => 'Help';
@override
String get promotions => 'Promotions';
@override
String get uberPass => 'Uber Pass';
@override
String get uberPassSub => 'Join free for 1 month';
@override
String get deliverWithUber => 'Deliver with Uber';
@override
String get settings => 'Settings';
@override
String get home => 'Home';
@override
String get browse => 'Browse';
@override
String get baskets => 'Baskets';
@override
String get account => 'Account';
@override
String get changeLanguage => 'Change language';
@override
String get language => 'Language';
@override
String get login => 'Login';
@override
String get phone_number => 'Phone number';
@override
String get enter_phone_number => 'Enter phone number';
@override
String get password => 'Password';
@override
String get enter_password => 'Enter password';
@override
String get forgot_password => 'Forgot password';
@override
String get continue_str => 'Continue';
@override
String get dont_have_account => 'Don\'t have an account?';
@override
String get sign_up => 'SignUp';
@override
String get field_cannot_be_empty => 'This field cannot be empty';
@override
String get invalid_phone_format => 'Invalid phone number format';
@override
String get password_too_short =>
'Password must be at least 6 characters long';
@override
String get invalid_phone_format => 'Invalid phone number format';
String get passwords_do_not_match => 'Passwords do not match';
@override
String get first_name => 'First name';
String get otp_code_incomplete => 'OTP code is incomplete';
@override
String get enter_first_name => 'Enter first name';
@override
String get repeat_password => 'Repeat password';
@override
String get enter_repeat_password => 'Enter repeat password';
@override
String get already_has_account => 'Already have an account?';
@override
String get unexpected_error => 'Unexpected error';
@override
String consent_message(String appName) {
return 'By proceeding, you consent to get calls or SMS messages, including by automated means, from $appName and its affiliates to the number provided.';
}
@override
String get otp_code_incomplete =>
'Code is incomplete. Please enter the full code.';
@override
String get passwords_do_not_match => 'Passwords do not match.';
@override
String get reset_password => 'Reset password';
@override
String get new_password => 'New password';
@override
String enter_otp_code(String phoneNumber) {
return 'Enter the 5-digit code sent to you at $phoneNumber';
}
@override
String get resend_otp_after => 'You can resend OTP after';
String get unexpected_error =>
'An unexpected error occurred. Please try again.';
}

View File

@@ -9,422 +9,22 @@ 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 => 'Ещё';
@override
String get orderDetails => 'Детали заказа';
@override
String get deliverNow => 'Доставить сейчас';
@override
String get schedule => 'Запланировать';
@override
String get enterNewAddress => 'Введите новый адрес';
@override
String get nearby => 'Рядом';
@override
String get currentLocation => 'Текущее местоположение';
@override
String get enable => 'Включить';
@override
String get recentLocations => 'Недавние адреса';
@override
String get allFilters => 'Все фильтры';
@override
String get sort => 'Сортировка';
@override
String get pickedForYou => 'Подобрано для вас (по умолчанию)';
@override
String get mostPopular => 'Самые популярные';
@override
String get rating => 'Рейтинг';
@override
String get deliveryTime => 'Время доставки';
@override
String fromUberEats(String name) {
return 'От $name';
}
@override
String get deals => 'Скидки';
@override
String get bestOverall => 'Лучшие варианты';
@override
String get priceRange => 'Диапазон цен';
@override
String get maxDeliveryFee => 'Макс. стоимость доставки';
@override
String get dietary => 'Диета';
@override
String get vegetarian => 'Вегетарианское';
@override
String get vegan => 'Веганское';
@override
String get glutenFree => 'Без глютена';
@override
String get allergyFriendly => 'Без аллергенов';
@override
String get atLeast => 'Kак минимум';
@override
String get apply => 'Применить';
@override
String get pickedForYouDefault => 'Выбрано для вас (по умолчанию)';
@override
String get popular => 'Самые популярные';
@override
String get topRated => 'Высокий рейтинг';
@override
String get fast => 'Быстро';
@override
String get featuredStores => 'Популярные магазины';
@override
String opensAt(String time) {
return 'Открывается в $time';
}
@override
String spendAndSave(String spend, String save) {
return 'Потратьте $spend, сэкономьте $save';
}
@override
String get cartsTitle => 'Корзины';
@override
String get addItemsStartBasket => 'Добавьте товары, чтобы создать корзину';
@override
String get basketHint =>
'Когда вы добавите товары из ресторана или магазина, ваша корзина появится здесь.';
@override
String get startShopping => 'Начать покупки';
@override
String get orders => 'Заказы';
@override
String get recentSearches => 'Недавние запросы';
@override
String get cafe => 'Кафе';
@override
String get irish => 'Ирландская кухня';
@override
String get topCategories => 'Популярные категории';
@override
String get breakfastAndBrunch => 'Завтрак и бранч';
@override
String get coffeeAndTea => 'Кофе и чай';
@override
String get latestDeals => 'Новые предложения';
@override
String get restaurantRewards => 'Бонусы ресторанов';
@override
String get nationwideShipping => 'Доставка по всей стране';
@override
String get mexican => 'Мексиканская кухня';
@override
String get fastFood => 'Фастфуд';
@override
String get healthy => 'Здоровая еда';
@override
String get pizza => 'Пицца';
@override
String get sandwich => 'Сэндвич';
@override
String get bakery => 'Пекарня';
@override
String get categoriesShort => 'Еда, покупки, напитки и т.д.';
@override
String get yourFavourites => 'Избранное';
@override
String get wallet => 'Кошелёк';
@override
String get sendAGift => 'Отправить подарок';
@override
String get businessPreferences => 'Рабочие предпочтения';
@override
String get businessSub => 'Сделайте рабочие обеды быстрее и проще';
@override
String get help => 'Помощь';
@override
String get promotions => 'Акции';
@override
String get uberPass => 'Uber Pass';
@override
String get uberPassSub => 'Присоединяйтесь бесплатно на 1 месяц';
@override
String get deliverWithUber => 'Доставляйте с Uber';
@override
String get settings => 'Настройки';
@override
String get home => 'Главная';
@override
String get browse => 'Категории';
@override
String get baskets => 'Корзина';
@override
String get account => 'Аккаунт';
@override
String get changeLanguage => 'Сменить язык';
@override
String get language => 'Язык';
@override
String get login => 'Вход';
@override
String get phone_number => 'Номер телефона';
@override
String get enter_phone_number => 'Введите номер телефона';
@override
String get password => 'Пароль';
@override
String get enter_password => 'Введите пароль';
@override
String get forgot_password => 'Забыли пароль';
@override
String get continue_str => 'Продолжить';
@override
String get dont_have_account => 'У вас нет аккаунта?';
@override
String get sign_up => 'Зарегистрироваться';
@override
String get field_cannot_be_empty => 'Это поле не может быть пустым';
@override
String get password_too_short => 'Пароль не может быть короче 6 символов';
String get field_cannot_be_empty => 'Поле не может быть пустым';
@override
String get invalid_phone_format => 'Неверный формат номера телефона';
@override
String get first_name => 'Имя';
String get password_too_short =>
'Пароль должен содержать не менее 6 символов';
@override
String get enter_first_name => 'Введите имя';
String get passwords_do_not_match => 'Пароли не совпадают';
@override
String get repeat_password => 'Повторите пароль';
String get otp_code_incomplete => 'Код подтверждения введён не полностью';
@override
String get enter_repeat_password => 'Введите пароль ещё раз';
@override
String get already_has_account => 'Уже есть аккаунт?';
@override
String get unexpected_error => 'Неожиданная ошибка';
@override
String consent_message(String appName) {
return 'Продолжая, вы соглашаетесь получать звонки или SMS-сообщения, включая автоматические, от $appName и его партнёров на указанный номер.';
}
@override
String get otp_code_incomplete =>
'Код неполный. Пожалуйста, введите полный код.';
@override
String get passwords_do_not_match => 'Пароли не совпадают.';
@override
String get reset_password => 'Восстановить пароль';
@override
String get new_password => 'Новый пароль';
@override
String enter_otp_code(String phoneNumber) {
return 'Введите 5-значный код, отправленный на номер $phoneNumber';
}
@override
String get resend_otp_after => 'Вы можете повторно отправить код через';
String get unexpected_error =>
'Произошла непредвиденная ошибка. Пожалуйста, попробуйте снова.';
}

View File

@@ -9,423 +9,22 @@ class AppLocalizationsUz extends AppLocalizations {
AppLocalizationsUz([String locale = 'uz']) : super(locale);
@override
String get useYourTAxiAccount =>
'Boshlash uchun Uber hisobingizdan foydalaning';
String get field_cannot_be_empty => 'Maydon bosh bolishi mumkin emas';
@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 qongiroqlar, 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 => 'Yetkazish';
@override
String get pickUp => 'Olib ketish';
@override
String get dineIn => 'Joyida';
@override
String get allCategories => 'Barcha toifalar';
@override
String get convenience => 'Dokon';
@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 taomlari';
@override
String get iceCream => 'Muzqaymoq';
@override
String get halal => 'Halol';
@override
String get retails => 'Dokonlar';
@override
String get caribbean => 'Karib';
@override
String get indian => 'Hind taomlari';
@override
String get french => 'Fransuz';
@override
String get fastFoods => 'Fast-fud';
@override
String get burger => 'Burger';
@override
String get ride => 'Yol';
@override
String get chinese => 'Xitoy taomlari';
@override
String get dessert => 'Desert';
@override
String get more => 'Ko\'proq';
@override
String get orderDetails => 'Buyurtma tafsilotlari';
@override
String get deliverNow => 'Hozir yetkazish';
@override
String get schedule => 'Rejalashtirish';
@override
String get enterNewAddress => 'Yangi manzil kiriting';
@override
String get nearby => 'Yaqin joylar';
@override
String get currentLocation => 'Joriy joylashuv';
@override
String get enable => 'Yoqqish';
@override
String get recentLocations => 'Yaqinda ishlatilgan manzillar';
@override
String get allFilters => 'Barcha filtrlar';
@override
String get sort => 'Saralash';
@override
String get pickedForYou => 'Siz uchun';
@override
String get mostPopular => 'Eng ommabop';
@override
String get rating => 'Reyting';
@override
String get deliveryTime => 'Yetkazib berish vaqti';
@override
String fromUberEats(String name) {
return '$name tomonidan';
}
@override
String get deals => 'Aksiyalar';
@override
String get bestOverall => 'Eng yaxshilari';
@override
String get priceRange => 'Narx oraligi';
@override
String get maxDeliveryFee => 'Maks. yetkazish narxi';
@override
String get dietary => 'Parhez';
@override
String get vegetarian => 'Vegetarian';
@override
String get vegan => 'Vegan';
@override
String get glutenFree => 'Glutensiz';
@override
String get allergyFriendly => 'Allergiyaga mos';
@override
String get atLeast => 'Kаmida';
@override
String get apply => 'Qollash';
@override
String get pickedForYouDefault => 'Siz uchun tanlangan (standart)';
@override
String get popular => 'Eng ommabop';
@override
String get topRated => 'Yuqori reytingli';
@override
String get fast => 'Tezkor';
@override
String get featuredStores => 'Mashhur dokonlar';
@override
String opensAt(String time) {
return 'Soat $time dan ochiladi';
}
@override
String spendAndSave(String spend, String save) {
return '$spend sarflang, $save tejang';
}
@override
String get cartsTitle => 'Savatlar';
@override
String get addItemsStartBasket => 'Savatni boshlash uchun mahsulot qoshing';
@override
String get basketHint =>
'Restorandan yoki do\'kondan mahsulot qoshsangiz, savatingiz shu yerda paydo boladi.';
@override
String get startShopping => 'Xaridni boshlash';
@override
String get orders => 'Buyurtmalar';
@override
String get recentSearches => 'Yaqinda qidirilganlar';
@override
String get cafe => 'Kafe';
@override
String get irish => 'Irlandcha';
@override
String get topCategories => 'Eng ommabop toifalar';
@override
String get breakfastAndBrunch => 'Nonushta va bransh';
@override
String get coffeeAndTea => 'Qahva va choy';
@override
String get latestDeals => 'Yangi chegirmalar';
@override
String get restaurantRewards => 'Restoran bonuslari';
@override
String get nationwideShipping => 'Butun mamlakat boylab yetkazib berish';
@override
String get mexican => 'Meksika taomlari';
@override
String get fastFood => 'Tezkor ovqatlar';
@override
String get healthy => 'Soglom ovqatlar';
@override
String get pizza => 'Pitsa';
@override
String get sandwich => 'Sendvich';
@override
String get bakery => 'Qandolatxona';
@override
String get categoriesShort => 'Ovqat, xaridlar, ichimliklar va boshqalar.';
@override
String get yourFavourites => 'Sevimlilar';
@override
String get wallet => 'Hamyon';
@override
String get sendAGift => 'Sovga yuborish';
@override
String get businessPreferences => 'Biznes sozlamalari';
@override
String get businessSub => 'Ishdagi ovqatlarni tezroq va osonroq qiling';
@override
String get help => 'Yordam';
@override
String get promotions => 'Aksiyalar';
@override
String get uberPass => 'Uber Pass';
@override
String get uberPassSub => '1 oy bepul ulaning';
@override
String get deliverWithUber => 'Uber bilan yetkazib bering';
@override
String get settings => 'Sozlamalar';
@override
String get home => 'Bosh sahifa';
@override
String get browse => 'Kategoriya';
@override
String get baskets => 'Savatcha';
@override
String get account => 'Profil';
@override
String get changeLanguage => 'Tilni o\'zgartirish';
@override
String get language => 'Til';
@override
String get login => 'Kirish';
@override
String get phone_number => 'Telefon raqami';
@override
String get enter_phone_number => 'Telefon raqamingizni kiriting';
@override
String get password => 'Parol';
@override
String get enter_password => 'Parolni kiriting';
@override
String get forgot_password => 'Parolni unutdingizmi';
@override
String get continue_str => 'Davom etish';
@override
String get dont_have_account => 'Hisobingiz yoqmi?';
@override
String get sign_up => 'Royxatdan otish';
@override
String get field_cannot_be_empty => 'Bu maydon bo\'sh bo\'lishi mumkin emas';
String get invalid_phone_format => 'Telefon raqami formati notogri';
@override
String get password_too_short =>
'Parol 6 ta belgidan kam bo\'lishi mumkin emas';
'Parol kamida 6 ta belgidan iborat bolishi kerak';
@override
String get invalid_phone_format => 'Noto\'g\'ri telefon raqam formati';
String get passwords_do_not_match => 'Parollar mos emas';
@override
String get first_name => 'Ism';
String get otp_code_incomplete => 'OTP kodi toliq kiritilmagan';
@override
String get enter_first_name => 'Ismingizni kiriting';
@override
String get repeat_password => 'Parolni takrorlang';
@override
String get enter_repeat_password => 'Parolni qayta kiriting';
@override
String get already_has_account => 'Akkountingiz bormi?';
@override
String get unexpected_error => 'Kutilmagan xatolik';
@override
String consent_message(String appName) {
return 'Davom etish orqali siz $appName va uning hamkorlaridan siz kiritgan raqamga, shu jumladan avtomatik vositalar orqali, qongiroqlar yoki SMS xabarlar olishingizga rozilik bildirasiz.';
}
@override
String get otp_code_incomplete =>
'Kod yetarli emas. Iltimos, toliq kodni kiriting.';
@override
String get passwords_do_not_match => 'Parollar mos kelmadi.';
@override
String get reset_password => 'Parolni qayta tiklash';
@override
String get new_password => 'Yangi parol';
@override
String enter_otp_code(String phoneNumber) {
return '$phoneNumber raqamiga yuborilgan 5 xonali kodni kiriting';
}
@override
String get resend_otp_after => 'OTP kodni qayta yuborish mumkin boladi';
String get unexpected_error =>
'Kutilmagan xatolik yuz berdi. Iltimos, qayta urinib koring.';
}

View File

@@ -1,12 +1,6 @@
import 'package:flutter/cupertino.dart';
import 'package:food_delivery_client/feature/auth/domain/usecases/verify_otp_code_login_usecase.dart';
import 'package:food_delivery_client/feature/auth/presentation/pages/forgot_password_page/forgot_password_page.dart';
import 'package:food_delivery_client/feature/auth/presentation/pages/login_page/login_page.dart';
import 'package:food_delivery_client/feature/auth/presentation/pages/register_page/register_page.dart';
import 'package:food_delivery_client/feature/auth/presentation/pages/reset_password_page/reset_password_page.dart';
import 'package:food_delivery_client/feature/auth/presentation/pages/verify_otp_code_page/verify_otp_code_page.dart';
import 'package:food_delivery_client/feature/auth/presentation/pages/verify_phone_number_page/verify_phone_page.dart';
import 'package:food_delivery_client/feature/home/presentation/pages/restaurants_by_category_page/restaurants_by_category_page.dart';
import 'package:food_delivery_client/feature/onboarding/presentation/pages/onboarding_page/onboarding_page.dart';
import 'package:food_delivery_client/feature/onboarding/presentation/pages/splash_page/splash_page.dart';
import '../../food_delivery_client.dart';
@@ -18,67 +12,13 @@ class AppRoutes {
navigatorKey: navigatorKey,
initialLocation: Routes.splash,
routes: [
GoRoute(path: Routes.splash, builder: (context, state) => SplashPage()),
GoRoute(
path: Routes.login,
pageBuilder: (context, state) => CupertinoPage(child: LoginPage()),
),
GoRoute(
path: Routes.register,
pageBuilder: (context, state) => CupertinoPage(
child: RegisterPage(phoneNumber: state.extra as String),
),
path: Routes.splash,
pageBuilder: (context, state) => CupertinoPage(child: SplashPage()),
),
GoRoute(
path: Routes.forgotPassword,
pageBuilder: (context, state) =>
CupertinoPage(child: ForgotPasswordPage()),
),
GoRoute(
path: Routes.verifyPhoneNumber,
pageBuilder: (context, state) => CupertinoPage(
child: VerifyPhoneNumberPage(isRegister: state.extra as bool),
),
),
GoRoute(
path: Routes.verifyOtpCode,
pageBuilder: (context, state) => CupertinoPage(
child: VerifyOtpCodePage(params: state.extra as OtpCodePageParams),
),
),
GoRoute(
path: Routes.resetPassword,
pageBuilder: (context, state) => CupertinoPage(
child: ResetPasswordPage(phoneNumber: state.extra as String),
),
),
GoRoute(
path: Routes.main,
pageBuilder: (context, state) => CupertinoPage(child: MainPage()),
),
GoRoute(
path: Routes.categories,
pageBuilder: (context, state) => CupertinoPage(child: CategoriesPage()),
),
GoRoute(
path: Routes.filters,
pageBuilder: (context, state) => CupertinoPage(
child: FiltersPage(homeBloc: state.extra as HomeBloc),
),
),
GoRoute(
path: Routes.restaurantsByCategory,
pageBuilder: (context, state) => CupertinoPage(
child: RestaurantsByCategoryPage(categoryName: state.extra as String),
),
),
GoRoute(
path: Routes.browse,
pageBuilder: (context, state) => CupertinoPage(child: BrowsePage()),
path: Routes.onBoarding,
pageBuilder: (context, state) => CupertinoPage(child: OnboardingPage()),
),
],
);

View File

@@ -1,5 +1,6 @@
abstract class Routes {
static const String splash = '/splash';
static const String onBoarding = '/onboarding';
static const String login = '/login';
static const String register = '/register';
static const String main = '/main';

View File

@@ -28,5 +28,24 @@ abstract class AppColors {
static const Color c7F7F7F = Color(0xFF7F7F7F);
static const Color c888888 = Color(0xFF888888);
/*
New figma colors
*/
static const Color c0A0D13 = Color(0xFF0A0D13);
static const Color cFF6F00 = Color(0xFFFF6F00);
static const Color cFF9D3F = Color(0xFFFF9D3F);
static const Color cFFB966 = Color(0xFFFFB966);
static const Color cFFB669 = Color(0xFFFFB699);
static const Color cFFEDCC = Color(0xFFFFEDCC);
static const Color c2C3131 = Color(0xFF2C3131);
static const Color c626262 = Color(0xFF626262);
static const Color cA9A9A9 = Color(0xFFA9A9A9);
static const Color cCACACA = Color(0xFFCACACA);
static const Color cE9E9E9 = Color(0xFFE9E9E9);
static const Color c292F3D = Color(0xFF292F3D);
static const Color c131720 = Color(0xFF131720);
static const Color cBD3325 = Color(0xFFBD3325);
static const Color c9EA5B7 = Color(0xFF9EA5B7);
static const Color c479B36 = Color(0xFF479B36);
static const Color cFFAB40 = Color(0xFFFFAB40);
}

View File

@@ -1,64 +1,15 @@
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 icDislikeGrey = "$baseUrl/ic_dislike_grey.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";
static const String icEmptyBasket = "$baseUrl/ic_empty_basket.svg";
static const String icPicked = "$baseUrl/ic_picked.svg";
static const String icMostPopular = "$baseUrl/ic_popular.svg";
static const String icStar = "$baseUrl/ic_rating.svg";
static const String icDeliveryTime = "$baseUrl/ic_delivery_time.svg";
static const String icDeals = "$baseUrl/ic_deals.svg";
static const String icClose = "$baseUrl/ic_close.svg";
static const String icCurrentLocation = "$baseUrl/ic_current_loc.svg";
static const String icEdit = "$baseUrl/ic_edit.svg";
static const String icSearch = "$baseUrl/ic_search.svg";
static const String icCheck = "$baseUrl/ic_check.svg";
static const String icCheck1 = "$baseUrl/ic_check1.svg";
static const String icArrowRight = "$baseUrl/ic_arrow_right.svg";
static const String icDeliver = "$baseUrl/ic_deliver.svg";
static const String icGift = "$baseUrl/ic_gift.svg";
static const String icHelp = "$baseUrl/ic_help.svg";
static const String icLike = "$baseUrl/ic_like.svg";
static const String icPromotions = "$baseUrl/ic_promotions.svg";
static const String icSettings = "$baseUrl/ic_settings.svg";
static const String icRewards = "$baseUrl/ic_rewards.svg";
static const String icUberPass = "$baseUrl/ic_uber_pass.svg";
static const String icWallet = "$baseUrl/ic_wallet.svg";
static const String icOrdersSvg = "$baseUrl/ic_orders_svg.svg";
static const String icLanguage = "$baseUrl/ic_language.svg";
static const String icArrowRightLight = "$baseUrl/ic_arrow_right_light.svg";
///.png icons
static const String icBestOverall = "$baseUrl/ic_best.png";
static const String icVegetarian = "$baseUrl/ic_vegetarian.png";
static const String icVegen = "$baseUrl/ic_vegen.png";
static const String icGlutenFree = "$baseUrl/ic_gluten_free.png";
static const String icAllergyFriendly = "$baseUrl/ic_allergy_friendly.png";
static const String icClock = "$baseUrl/ic_clock.svg";
static const String icOrders = "$baseUrl/ic_orders.png";
static const String icUz = "$baseUrl/ic_uzb.png";
static const String icRu = "$baseUrl/ic_rus.png";
static const String icEn = "$baseUrl/ic_eng.png";
static const String baseUrl = "assets/icons/common";
static const String icLogo = "$baseUrl/ic_logo.svg";
}
abstract class AppLightSvgs {
static const String baseUrl = "assets/icons/light";
static const String icSplash = "$baseUrl/ic_splash.svg";
}
abstract class AppDarkSvgs {
static const String baseUrl = "assets/icons/dark";
static const String icSplash = "$baseUrl/ic_splash.svg";
}

View File

@@ -1,8 +1,12 @@
import 'package:food_delivery_client/core/theme/app_theme_textstyles.dart';
import 'package:food_delivery_client/core/theme/theme_icons.dart';
import '../../food_delivery_client.dart';
abstract class AppTheme {
static ThemeData get lightTheme => ThemeData.light().copyWith(
brightness: Brightness.light,
extensions: [AppThemeIcons.light, AppThemeTextStyles.light],
// colorScheme: ColorScheme(
// brightness: Brightness.light,
@@ -22,6 +26,93 @@ abstract class AppTheme {
surfaceTintColor: AppColors.cTransparent,
),
scaffoldBackgroundColor: AppColors.cFFFFFF,
progressIndicatorTheme: ProgressIndicatorThemeData(
color: AppColors.cFFFFFF,
circularTrackColor: AppColors.cFFFFFF,
linearTrackColor: AppColors.cFFFFFF,
borderRadius: BorderRadiusGeometry.circular(30),
),
pageTransitionsTheme: PageTransitionsTheme(
builders: {
TargetPlatform.android: CupertinoPageTransitionsBuilder(),
TargetPlatform.iOS: CupertinoPageTransitionsBuilder(),
},
),
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),
// ),
// ),
);
static ThemeData get darkTheme => ThemeData.light().copyWith(
brightness: Brightness.dark,
extensions: [AppThemeIcons.dark, AppThemeTextStyles.dark],
// colorScheme: ColorScheme(
// brightness: Brightness.light,
// primary: AppColors.cFFFFFF,
// onPrimary:AppColors.cFFFFFF,
// secondary: AppColors.cFFFFFF,
// onSecondary: AppColors.cFFFFFF,
// error:AppColors.cRed,
// onError: AppColors.cRed,
// surface: AppColors.cFFFFFF,
// onSurface: AppColors.cFFFFFF,
// ),
appBarTheme: AppBarTheme(
elevation: 0,
backgroundColor: AppColors.cFFFFFF,
foregroundColor: AppColors.cFFFFFF,
surfaceTintColor: AppColors.cTransparent,
),
scaffoldBackgroundColor: AppColors.c0A0D13,
progressIndicatorTheme: ProgressIndicatorThemeData(
color: AppColors.cFFFFFF,

View File

@@ -0,0 +1,157 @@
import 'package:flutter/material.dart';
import 'package:food_delivery_client/core/constants/app_locale_keys.dart';
import 'package:food_delivery_client/core/core.dart';
class AppThemeTextStyles extends ThemeExtension<AppThemeTextStyles> {
//Regular fonts
final TextStyle size14Regular;
//Medium
final TextStyle size16Medium;
//SemiBold
final TextStyle size16SemiBold;
final TextStyle size24SemiBold;
//Bold
final TextStyle size14Bold;
final TextStyle size24Bold;
//Black
final TextStyle size64Black;
AppThemeTextStyles({
required this.size14Regular,
required this.size16Medium,
required this.size16SemiBold,
required this.size24SemiBold,
required this.size14Bold,
required this.size24Bold,
required this.size64Black,
});
static const String _fontBlack = AppLocaleKeys.fontBlack;
static const String _fontBold = AppLocaleKeys.fontBold;
static const String _fontSemiBold = AppLocaleKeys.fontSemiBold;
static const String _fontMedium = AppLocaleKeys.fontMedium;
static const String _fontRegular = AppLocaleKeys.fontRegular;
static AppThemeTextStyles light = AppThemeTextStyles(
size14Regular: TextStyle(
fontSize: 14,
fontWeight: FontWeight.w400,
fontFamily: _fontRegular,
),
size16Medium: TextStyle(
fontSize: 16,
fontWeight: FontWeight.w500,
fontFamily: _fontMedium,
),
size16SemiBold: TextStyle(
fontSize: 16,
fontWeight: FontWeight.w600,
fontFamily: _fontSemiBold,
),
size24SemiBold: TextStyle(
fontSize: 24,
fontWeight: FontWeight.w600,
fontFamily: _fontSemiBold,
),
size14Bold: TextStyle(
fontSize: 14,
fontWeight: FontWeight.w700,
fontFamily: _fontBold,
),
size24Bold: TextStyle(
fontSize: 24,
fontWeight: FontWeight.w700,
fontFamily: _fontBold,
),
size64Black: TextStyle(
fontSize: 64,
fontWeight: FontWeight.w900,
fontFamily: _fontBlack,
color: AppColors.cFFFFFF,
),
);
static AppThemeTextStyles dark = AppThemeTextStyles(
size14Regular: TextStyle(
fontSize: 14,
fontWeight: FontWeight.w400,
fontFamily: _fontRegular,
),
size16Medium: TextStyle(
fontSize: 16,
fontWeight: FontWeight.w500,
fontFamily: _fontMedium,
),
size16SemiBold: TextStyle(
fontSize: 16,
fontWeight: FontWeight.w600,
fontFamily: _fontSemiBold,
),
size24SemiBold: TextStyle(
fontSize: 24,
fontWeight: FontWeight.w600,
fontFamily: _fontSemiBold,
),
size14Bold: TextStyle(
fontSize: 14,
fontWeight: FontWeight.w700,
fontFamily: _fontBold,
),
size24Bold: TextStyle(
fontSize: 24,
fontWeight: FontWeight.w700,
fontFamily: _fontBold,
),
size64Black: TextStyle(
fontSize: 64,
fontWeight: FontWeight.w900,
fontFamily: _fontBlack,
color: AppColors.cFFFFFF,
),
);
@override
ThemeExtension<AppThemeTextStyles> copyWith({
TextStyle? size14Regular,
TextStyle? size16Medium,
TextStyle? size16SemiBold,
TextStyle? size24SemiBold,
TextStyle? size14Bold,
TextStyle? size24Bold,
TextStyle? size64Black,
}) {
return AppThemeTextStyles(
size14Regular: size14Regular ?? this.size14Regular,
size16Medium: size16Medium ?? this.size16Medium,
size16SemiBold: size16SemiBold ?? this.size16SemiBold,
size24SemiBold: size24SemiBold ?? this.size24SemiBold,
size14Bold: size14Bold ?? this.size14Bold,
size24Bold: size24Bold ?? this.size24Bold,
size64Black: size64Black ?? this.size64Black,
);
}
@override
ThemeExtension<AppThemeTextStyles> lerp(
covariant ThemeExtension<AppThemeTextStyles>? other,
double t,
) {
if (other is! AppThemeTextStyles) return this;
return AppThemeTextStyles(
size14Regular: TextStyle.lerp(size14Regular, other.size14Regular, t)!,
size16Medium: TextStyle.lerp(size16Medium, other.size16Medium, t)!,
size16SemiBold: TextStyle.lerp(size16SemiBold, other.size16SemiBold, t)!,
size24SemiBold: TextStyle.lerp(size24SemiBold, other.size24SemiBold, t)!,
size14Bold: TextStyle.lerp(size14Bold, other.size14Bold, t)!,
size24Bold: TextStyle.lerp(size24Bold, other.size24Bold, t)!,
size64Black: TextStyle.lerp(size64Black, other.size64Black, t)!,
);
}
}

View File

@@ -0,0 +1,26 @@
import 'package:flutter/material.dart';
import 'package:food_delivery_client/core/core.dart';
class AppThemeIcons extends ThemeExtension<AppThemeIcons> {
final String icSplash;
AppThemeIcons({required this.icSplash});
static AppThemeIcons light = AppThemeIcons(icSplash: AppLightSvgs.icSplash);
static AppThemeIcons dark = AppThemeIcons(icSplash: AppDarkSvgs.icSplash);
@override
ThemeExtension<AppThemeIcons> copyWith({String? icSplash}) {
return AppThemeIcons(icSplash: icSplash ?? this.icSplash);
}
@override
ThemeExtension<AppThemeIcons> lerp(
covariant ThemeExtension<AppThemeIcons>? other,
double t,
) {
if (other is! AppThemeIcons) return this;
return t < 0.5 ? this : other;
}
}