diff --git a/assets/images/bc_Intro.svg b/assets/images/bc_Intro.svg new file mode 100644 index 0000000..deb4ffa --- /dev/null +++ b/assets/images/bc_Intro.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/images/bn_Intro.png b/assets/images/bn_Intro.png new file mode 100644 index 0000000..8c342d2 Binary files /dev/null and b/assets/images/bn_Intro.png differ diff --git a/lib/extensions/string_extensions.dart b/lib/extensions/string_extensions.dart index 64e3c73..fe9b90d 100644 --- a/lib/extensions/string_extensions.dart +++ b/lib/extensions/string_extensions.dart @@ -42,7 +42,12 @@ extension EmailValidator on String { style: TextStyle(fontSize: 13, fontWeight: FontWeight.w600, color: color ?? MyColors.darkTextColor, letterSpacing: -0.52, decoration: isUnderLine ? TextDecoration.underline : null), ); - Widget toText14({Color? color, bool isBold = false, TextAlign? textAlign,}) => Text( + Widget toText14({ + Color? color, + bool isBold = false, + TextAlign? textAlign, + }) => + Text( this, textAlign: textAlign, style: TextStyle(color: color ?? MyColors.darkTextColor, fontSize: 14, letterSpacing: -0.48, fontWeight: isBold ? FontWeight.bold : FontWeight.w600), @@ -58,9 +63,16 @@ extension EmailValidator on String { style: TextStyle(color: color ?? MyColors.darkTextColor, fontSize: 17, letterSpacing: -0.68, fontWeight: isBold ? FontWeight.bold : FontWeight.w600), ); - Widget toText20({Color? color, bool isBold = false}) => Text( + Widget toText20({Color? color, bool isBold = false, FontWeight? fontWeight}) => Text( this, - style: TextStyle(height: 23 / 24, color: color ?? MyColors.darkTextColor, fontSize: 20, letterSpacing: -1.44, fontWeight: isBold ? FontWeight.bold : FontWeight.w600), + style: TextStyle( + height: 23 / 24, + color: color ?? MyColors.darkTextColor, + fontSize: 20, + letterSpacing: -1.44, + fontWeight: fontWeight ?? (isBold + ? FontWeight.bold + : FontWeight.w600)), ); Widget toText22({Color? color, bool isBold = false}) => Text( diff --git a/lib/generated/codegen_loader.g.dart b/lib/generated/codegen_loader.g.dart index 08efbb6..fe0fd26 100644 --- a/lib/generated/codegen_loader.g.dart +++ b/lib/generated/codegen_loader.g.dart @@ -16,7 +16,7 @@ class CodegenLoader extends AssetLoader{ static const Map ar_SA = { "firstTimeLogIn": "تسجيل الدخول لأول مره", - "signUp": "تسجيل دخول", + "signUp": "التسجيل", "changeMobile": "تغيير رقم الجوال", "notifications": "الاشعارات", "general": "عام", @@ -26,6 +26,7 @@ class CodegenLoader extends AssetLoader{ "retrievePassword": "استرجاع كلمة المرور", "changeEmail": "تغيير الايميل", "verify": "تحقق", + "verified": "تم التحقق", "signOut": "تسجيل خروج", "enterEmail": "ادخل الايميل", "enterNewEmail": "ادخل ايميل جديد", @@ -45,16 +46,28 @@ class CodegenLoader extends AssetLoader{ "createPass": "انشاء كلمة مرور جديده *", "newPassword": " كلمة مرور جديده", "forgetPassword": "نسيت كلمة المرور", + "forgetPasswordQ": "نسيت كلمة المرور؟", + "recover": "استعادة", + "forgetPasswordRecover": "نسيت كلمة المرور؟ استعادة", "editAccount": "تعديل الحساب", "change": "تغيير", "verifyAccount": "التحقق من الحساب", "login": "تسجيل دخول", + "log_in": "تسجيل الدخول", "welcomeMessage": "مرحبا", + "welcomeDes": "أنت مكان واحد لكل ما تحتاجه سيارتك", "forgetPass": "نسيت كلمة المرور ؟", "enterPhoneNumber": "رقم جوال ", "phoneNumberVerified": "تم التحقق من الجوال", "verifyNewPassword": "التحقق من كلمة المرور", "EnterPass": "ادخل كلمة المرور", + "send": "إرسال", + "retrivePassword": "استرجع كلمة المرور بإحدى الطرق التالية", + "retriveOnPhone": "سوف نرسل الاختيار إلى رقم هاتفك المحمول المسجل", + "retriveOnEmail": "سوف نرسل الاختيار إلى عنوان بريدك الإلكتروني المسجل", + "enterPhoneForVerfication": "الرجاء إدخال رقم هاتفك وسنرسل لك رمز التحقق", + "selectYourCountry": "اختر بلدك", + "welcomeBack": "مرحبًا بعودتك!!!", "alreadySigned": " تم تسجيل الدخول", "emailChangedSuccessfully": "تم تغيير الايميل بنجاح", "passwordIsUpdated": "تم تحجيث كلمة المرور", @@ -90,6 +103,7 @@ class CodegenLoader extends AssetLoader{ "defineProviders": "تحديد الموفرين", "closeAccount": "اغلاق الحساب", "createBranch": "انشاء فرع", + "updateBranch": "فرع التحديث", "address": "العنوان", "branchDescription": "وصف الفرع", "branchName": "اسم الفرع", @@ -99,7 +113,9 @@ class CodegenLoader extends AssetLoader{ "somethingWrong": "هناك خطأ ما", "documentsUploaded": "تم ارفاق الملف بنجاح", "update": "تحديث", - "termsOfService": "من خلال إنشاء حساب فإنك توافق على شروط الخدمة و\n سياسة الخصوصية", + "termsOfService": "من خلال إنشاء حساب فإنك توافق على", + "terms": "بنود الخدمة وخصوصية السياسة", + "profileMsg": "أدخل التفاصيل أدناه وأكمل معلومات الملف الشخصي", "branchInfo": "معلومات الفرع و الخدمات", "profileCompleted": "الملف الشخصي مكتمل", "selectLocationMap": "اختر الموقع", @@ -108,6 +124,15 @@ class CodegenLoader extends AssetLoader{ "completeProfile2": "اكمل الملف الشخصي 2/3", "completeProfile3": "اكمل الملف الشخصي 3/3", "userInformation": "معلومات المتسخدم", + "faceRecognition": "تحقق مع بصمة الوجه", + "fingerPrint": "تحقق مع بصمة الاصبع", + "whatsapp": "تحقق مع Whatsapp", + "SMS": "رسائل قصيره", + "selectRole": "حدد الدور", + "userRoleOrTitle": "عنوان المستخدم", + "codeSentToEmail": "تم ارسال الرمز للايميل", + "number": "موبايل", + "english": "English", "provider": "Provider", "title": "Hello", "msg": "Hello {} in the {} world ", @@ -144,22 +169,48 @@ class CodegenLoader extends AssetLoader{ "female": "Hello girl :) {}" } }, - "reset_locale": "Reset Language" + "reset_locale": "Reset Language", + "insert_otp_code": "ادخل الرمز", + "type_code": "الرجاء كتابة الرمز الذي أرسلناه إلى", + "resend_code": "أعد إرسال الرمز", + "check_code": "التحقق من الشفرة", + "time_will_expire": "إعادة إرسال الرمز بتنسيق", + "sec": "ثانية", + "no_city_available": "لا توجد مدينة متاحة لهذا البلد", + "branch_created": "تم إنشاء الفرع بنجاح", + "branch_updated": "تم تحديث الفرع بنجاح", + "branch_deleted": "تم حذف الفرع بنجاح", + "dashboard_main": "لوحة القيادة / الصفحة الرئيسية", + "logo_brand": "الشعار / العلامة التجارية", + "remove": "إزالة", + "no_branch": "لم يتم إضافة فرع حتى الآن", + "login_once": "الرجاء تسجيل الدخول مرة واحدة", + "defineLicenese": "تحميل التراخيص والشهادات", + "description": "وصف", + "attachFile": "أرفق ملف", + "branchLocation": "معلومات الفرع والموقع", + "tapToEdit": "انقر للتعديل", + "myServiceBranches": "فروع خدمتي", + "enter_licence_detail": "الرجاء إدخال تفاصيل السجلات التجارية وإرفاق صور الترخيص", + "country": "بلد", + "city": "مدينة", + "editServices": "تحرير الخدمات" }; static const Map en_US = { "firstTimeLogIn": "First Time Log In", - "signUp": "Sing Up", + "signUp": "Register", "changeMobile": "Change Mobile", "notifications": "Notifications", "general": "General", - "defineLicences": "Define Licences", + "defineLicences": "Register Licences", "dealershipSettings": "Dealership Settings", "changePassword": "Change Password", "retrievePassword": "Retrieve Password", "changeEmail": "Change Email", "verify": "Verify", + "verified": "Verified", "signOut": "Sign Out", - "enterEmail": "Enter Email", + "enterEmail": "Enter Email and Password", "enterNewEmail": "Enter New Email", "enterNewPassword": "Enter New Password", "enterCurrentPassword": "Enter Current Password", @@ -167,7 +218,7 @@ static const Map en_US = { "confirm": "Confirm", "completeProfile": "Complete Profile", "enterNewPhoneNumber": "Enter New Phone Number", - "enterPhoneNumber": "Enter Phone Number", + "enterPhoneNumber": "Enter the login credentials", "continu": "Continue", "confirmPassword": "Confirm Password", "createPassword": "Create Password", @@ -178,15 +229,27 @@ static const Map en_US = { "createPass": "Create Password *", "newPassword": "New Password", "forgetPassword": "Forget Password", + "forgetPasswordQ": "Forget Password?", + "recover": "Recover", + "forgetPasswordRecover": "Forget Password? Recover", "editAccount": "Edit Account", "change": "Change", "verifyAccount": "Verify Account", - "login": "Log In", - "welcomeMessage": "Welcome Message", + "login": "Login", + "log_in": "Log In", + "welcomeMessage": "Welcome To Mowater", + "welcomeDes": "You one stop place all your car needs", "forgetPass": "Forget Password ?", "phoneNumberVerified": "Phone Number Verified", "verifyNewPassword": "Verify New Password", + "send": "Send", "EnterPass": "Enter Password ?", + "retrivePassword": "Retrive password by one of following method", + "retriveOnPhone": "We will send the opt to your registered mobile number", + "retriveOnEmail": "We will send the opt to your registered email address", + "enterPhoneForVerfication": "Please enter your phone number We will send you the verification code", + "selectYourCountry": "Select Your Country", + "welcomeBack": "Welcome Back!!!", "alreadySigned": " Already Signed Up and Logged In", "emailChangedSuccessfully": "Email is Changed Successfully", "passwordIsUpdated": "Password is Updated", @@ -222,16 +285,19 @@ static const Map en_US = { "defineProviders": "Define Providers", "closeAccount": "Close Account", "createBranch": "Create Branch", + "updateBranch": "Update Branch", "address": "Address", "branchDescription": "Branch Description", "branchName": "Branch Name", - "chooseCity": "Choose City", + "chooseCity": "Select City", "chooseCountry": "Choose Country", "selectAttachment": "Select Attachment", "somethingWrong": "Something went wrong", "documentsUploaded": "Documents uploaded successfully", "update": "Update", - "termsOfService": "By creating an account you agree to our Terms of Service and\n Privacy Policy", + "termsOfService": "By creating an account you agree to our", + "terms": "Terms of Service and Privacy Policy", + "profileMsg": "Enter the details below and complete the profile info", "branchInfo": "Branch Info and Services", "profileCompleted": "Profile is Completed", "selectLocationMap": "Select Location Map", @@ -241,6 +307,15 @@ static const Map en_US = { "completeProfile3": "Complete Profile 3/3", "userInformation": "User Information", "provider": "Provider", + "faceRecognition": "Face Recognition", + "fingerPrint": "Finger Print", + "whatsapp": "With Whatsapp", + "SMS": "With SMS", + "selectRole": "Choose Role", + "userRoleOrTitle": "User role or title", + "codeSentToEmail": "Code is sent to email", + "number": "Number", + "english": "عربي", "title": "Hello", "msg": "Hello {} in the {} world ", "msg_named": "{} are written in the {lang} language", @@ -276,7 +351,32 @@ static const Map en_US = { "female": "Hello girl :) {}" } }, - "reset_locale": "Reset Language" + "reset_locale": "Reset Language", + "insert_otp_code": "Enter the code", + "type_code": "Please type the code we sent to", + "resend_code": "Resend Code", + "check_code": "Check Code", + "time_will_expire": "Resend code in", + "sec": "sec", + "no_city_available": "No City Available for this country", + "branch_created": "Branch is successfully created", + "branch_updated": "Branch is successfully Updated", + "branch_deleted": "Branch is successfully Deleted", + "dashboard_main": "Dashboard/Main Page", + "logo_brand": "Logo/Brand", + "remove": "Remove", + "no_branch": "No Branch Added Yet", + "login_once": "Please login once", + "defineLicenese": "Upload Licenses and Certificates", + "description": "Description", + "attachFile": "Attach File", + "branchLocation": "Branch info and Location", + "tapToEdit": "Tap to edit", + "myServiceBranches": "My Service Branches", + "enter_licence_detail": "Please enter the detail for commercial records and attach the license images", + "country": "country", + "city": "city", + "editServices": "Edit Services" }; static const Map> mapLocales = {"ar_SA": ar_SA, "en_US": en_US}; } diff --git a/lib/generated/locale_keys.g.dart b/lib/generated/locale_keys.g.dart index b3cdffb..b3e0e18 100644 --- a/lib/generated/locale_keys.g.dart +++ b/lib/generated/locale_keys.g.dart @@ -32,6 +32,8 @@ abstract class LocaleKeys { static const createPass = 'createPass'; static const newPassword = 'newPassword'; static const forgetPassword = 'forgetPassword'; + static const forgetPasswordQ = 'forgetPasswordQ'; + static const recover = 'recover'; static const forgetPasswordRecover = 'forgetPasswordRecover'; static const editAccount = 'editAccount'; static const change = 'change'; @@ -116,6 +118,7 @@ abstract class LocaleKeys { static const userRoleOrTitle = 'userRoleOrTitle'; static const codeSentToEmail = 'codeSentToEmail'; static const number = 'number'; + static const phoneNumber = 'phoneNumber'; static const english = 'english'; static const provider = 'provider'; static const title = 'title'; diff --git a/lib/pages/dashboard/dashboard_page.dart b/lib/pages/dashboard/dashboard_page.dart index fbca3e4..e945e89 100644 --- a/lib/pages/dashboard/dashboard_page.dart +++ b/lib/pages/dashboard/dashboard_page.dart @@ -266,8 +266,8 @@ class _DashboardPageState extends State { showDialog( context: context, builder: (context) => AlertDialog(content: Text("Choose image source"), actions: [ - FlatButton(child: Text("Camera"), onPressed: () => cameraImage()), - FlatButton(child: Text("Gallery"), onPressed: () => gallaryImage()), + TextButton(child: Text("Camera"), onPressed: () => cameraImage()), + TextButton(child: Text("Gallery"), onPressed: () => gallaryImage()), ]), // .then((ImageSource source) async { // if (source != null) { diff --git a/lib/pages/user/edit_account_page.dart b/lib/pages/user/edit_account_page.dart index dab56f2..d1131d8 100644 --- a/lib/pages/user/edit_account_page.dart +++ b/lib/pages/user/edit_account_page.dart @@ -53,7 +53,12 @@ class _EditAccountPageState extends State { ), 20.width, Expanded(child: LocaleKeys.changePassword.tr().toText12(isBold: true)), - RaisedButton( + ElevatedButton( + style: ElevatedButton.styleFrom( + textStyle: const TextStyle(color: Colors.white), + backgroundColor: MyColors.darkPrimaryColor, + padding: EdgeInsets.symmetric(horizontal: 8, vertical: 8), + ), onPressed: () { navigateWithName(context, AppRoutes.changePassword); }, @@ -64,9 +69,6 @@ class _EditAccountPageState extends State { fontWeight: FontWeight.w600, ), ), - color: MyColors.darkPrimaryColor, - textColor: Colors.white, - padding: EdgeInsets.symmetric(horizontal: 8, vertical: 8), ), ], ), @@ -84,7 +86,12 @@ class _EditAccountPageState extends State { Expanded(child: LocaleKeys.changeMobile.tr().toText12(isBold: true)), LocaleKeys.verify.tr().toText12(color: Colors.green), 20.width, - RaisedButton( + ElevatedButton( + style: ElevatedButton.styleFrom( + textStyle: const TextStyle(color: Colors.white), + backgroundColor: MyColors.darkPrimaryColor, + padding: EdgeInsets.symmetric(horizontal: 8, vertical: 8), + ), onPressed: () { navigateWithName(context, AppRoutes.changeMobilePage); }, @@ -95,9 +102,6 @@ class _EditAccountPageState extends State { fontWeight: FontWeight.w600, ), ), - textColor: Colors.white, - color: MyColors.darkPrimaryColor, - padding: EdgeInsets.symmetric(horizontal: 8, vertical: 8), ) ], ), @@ -122,20 +126,23 @@ class _EditAccountPageState extends State { }, ), 20.width, - RaisedButton( - onPressed: () { - navigateWithName(context, AppRoutes.changeEmailPage); - }, - child: Text( - LocaleKeys.change.tr(), - style: TextStyle( - fontSize: 14, - fontWeight: FontWeight.w600, - ), + ElevatedButton( + style: ElevatedButton.styleFrom( + textStyle: const TextStyle(color: Colors.white), + backgroundColor: MyColors.darkPrimaryColor, + padding: EdgeInsets.symmetric(horizontal: 8, vertical: 8), + ), + onPressed: () { + navigateWithName(context, AppRoutes.changeEmailPage); + }, + child: Text( + LocaleKeys.change.tr(), + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w600, ), - textColor: Colors.white, - color: MyColors.darkPrimaryColor, - padding: EdgeInsets.symmetric(horizontal: 8, vertical: 8)) + ), + ), ], ) diff --git a/lib/pages/user/forget_password_page.dart b/lib/pages/user/forget_password_page.dart index b7ef43b..9b81392 100644 --- a/lib/pages/user/forget_password_page.dart +++ b/lib/pages/user/forget_password_page.dart @@ -41,7 +41,7 @@ class _ForgetPasswordPageState extends State { int otpType = 1; String userName = ""; - ClassType type = ClassType.NUMBER; + ClassType type = ClassType.EMAIL; Country? _country; String countryCode = ""; diff --git a/lib/pages/user/login_with_password_page.dart b/lib/pages/user/login_with_password_page.dart index 9427ee4..47085c5 100644 --- a/lib/pages/user/login_with_password_page.dart +++ b/lib/pages/user/login_with_password_page.dart @@ -39,7 +39,7 @@ class LoginWithPassword extends StatefulWidget { class _LoginWithPasswordState extends State { int otpType = 1; - ClassType type = ClassType.NUMBER; + ClassType type = ClassType.EMAIL; String phoneNum = "", password = ""; String email = ""; String countryCode = ""; @@ -69,11 +69,11 @@ class _LoginWithPasswordState extends State { children: [ 12.height, LocaleKeys.login.tr().toText20(), - 20.height, - (type == ClassType.NUMBER ? LocaleKeys.enterPhoneNumber.tr() : LocaleKeys.enterEmail.tr()).toText14( - color: MyColors.lightTextColor, - textAlign: TextAlign.center, - ), + // 20.height, + // (type == ClassType.NUMBER ? LocaleKeys.enterPhoneNumber.tr() : LocaleKeys.enterEmail.tr()).toText14( + // color: MyColors.lightTextColor, + // textAlign: TextAlign.center, + // ), 30.height, LoginEmailTab( onSelection: (ClassType type) { @@ -108,12 +108,14 @@ class _LoginWithPasswordState extends State { ), ], ), - 10.height, + 20.height, + LocaleKeys.forgetPasswordQ.tr().toText14(color: MyColors.textColor), ShowFillButton( - title: LocaleKeys.forgetPasswordRecover.tr(), + title: LocaleKeys.recover.tr(), isFlatButton: true, isBold: false, fontSize: 14, + maxHeight: 24, txtColor: MyColors.darkPrimaryColor, onPressed: () { navigateWithName(context, AppRoutes.forgetPassword); diff --git a/lib/pages/user/register_page.dart b/lib/pages/user/register_page.dart index a3801bc..2b09f6f 100644 --- a/lib/pages/user/register_page.dart +++ b/lib/pages/user/register_page.dart @@ -20,14 +20,23 @@ import 'package:car_provider_app/extensions/widget_extensions.dart'; import 'package:car_provider_app/widgets/txt_field.dart'; import 'package:easy_localization/easy_localization.dart'; import 'package:flutter/material.dart'; +import 'package:sizer/sizer.dart'; import '../../classes/colors.dart'; import '../../generated/locale_keys.g.dart'; -class RegisterPage extends StatelessWidget { +class RegisterPage extends StatefulWidget { + @override + State createState() => _RegisterPageState(); +} + +class _RegisterPageState extends State { String phoneNum = "", countryCode = ""; + int role = -1, countryId = -1; + TextEditingController emailController = TextEditingController(); + @override Widget build(BuildContext context) { return Scaffold( @@ -55,7 +64,7 @@ class RegisterPage extends StatelessWidget { if (snapshot.hasData) { List dropList = []; snapshot.data?.data?.forEach((element) { - dropList.add(new DropValue(element.id ?? 0, EasyLocalization.of(context)?.currentLocale?.countryCode == "SA" ? element.roleNameN ?? "" : element.roleName ?? "", "")); + dropList.add(DropValue(element.id ?? 0, EasyLocalization.of(context)?.currentLocale?.countryCode == "SA" ? element.roleNameN ?? "" : element.roleName ?? "", "")); }); return DropdownField((DropValue value) { role = value.id; @@ -72,7 +81,7 @@ class RegisterPage extends StatelessWidget { if (snapshot.hasData) { List dropList = []; snapshot.data?.data?.forEach((element) { - dropList.add(new DropValue( + dropList.add(DropValue( element.id ?? 0, EasyLocalization.of(context)?.currentLocale?.countryCode == "SA" ? (element.countryNameN ?? "") + " " + (element.countryCode ?? "") @@ -82,14 +91,20 @@ class RegisterPage extends StatelessWidget { return Column( children: [ LocaleKeys.selectYourCountry.tr().toText14( - color: MyColors.lightTextColor, - textAlign: TextAlign.center, - ), + color: MyColors.lightTextColor, + textAlign: TextAlign.center, + ), 10.height, - DropdownField((DropValue value) { - countryCode = value.subValue; - countryId = value.id; - }, list: dropList, hint: LocaleKeys.chooseCountry.tr()), + DropdownField( + (DropValue value) { + setState(() { + countryCode = value.subValue; + countryId = value.id; + }); + }, + list: dropList, + hint: LocaleKeys.chooseCountry.tr(), + ), ], ); } else { @@ -99,16 +114,58 @@ class RegisterPage extends StatelessWidget { ), 18.height, LocaleKeys.enterPhoneForVerfication.tr().toText14( - color: MyColors.lightTextColor, - textAlign: TextAlign.center, - ), + color: MyColors.lightTextColor, + textAlign: TextAlign.center, + ), 10.height, - TxtField( - hint: "5********", - value: phoneNum, - onChanged: (v) { - phoneNum = v; - }, + Row( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + mExp(1), + Expanded( + flex: 3, + child: Row( + children: [ + Text( + (countryCode.isEmpty ? "+00" : "+" + countryCode), + style: const TextStyle( + fontSize: 20, + color: MyColors.black, + fontWeight: FontWeight.bold, + ), + ), + const Text( + " | ", + style: TextStyle( + fontSize: 20, + color: MyColors.black, + fontWeight: FontWeight.bold, + ), + ), + Flexible( + child: TextField( + controller: emailController, + onChanged: (v){ + phoneNum=v; + }, + style: const TextStyle( + fontSize: 20, + color: MyColors.black, + ), + decoration: const InputDecoration( + hintStyle: TextStyle(color: MyColors.lightTextColor, fontSize: 20), + hintText: "546758594", + contentPadding: EdgeInsets.zero, + border: InputBorder.none, + ), + ), + ), + ], + ), + ), + mExp(1), + ], ), 40.height, ShowFillButton( diff --git a/lib/pages/user/register_selection_page.dart b/lib/pages/user/register_selection_page.dart index 239f14d..423c1bb 100644 --- a/lib/pages/user/register_selection_page.dart +++ b/lib/pages/user/register_selection_page.dart @@ -20,14 +20,20 @@ class RegisterSelectionPage extends StatelessWidget { body: Container( width: double.infinity, height: double.infinity, + decoration: BoxDecoration( + image: DecorationImage( + image: AssetImage("assets/images/bn_Intro.png"), + fit: BoxFit.cover, + ), + ), child: Column( children: [ - mFlex(4), + mFlex(6), SvgPicture.asset("assets/images/logo.svg"), - mFlex(3), + mFlex(4), LocaleKeys.welcomeMessage.tr().toText20(), LocaleKeys.welcomeDes.tr().toText14(color: MyColors.lightTextColor), - mFlex(4), + mFlex(1), ShowFillButton( title: LocaleKeys.login.tr(), maxWidth: double.infinity, @@ -57,11 +63,19 @@ class RegisterSelectionPage extends StatelessWidget { // navigateWithName(context, AppRoutes.forgetPassword); // }, // ), - mFlex(2), - SvgPicture.asset( - "assets/images/bn_logo.svg", - fit: BoxFit.cover, - ) + mFlex(3), + TextButton( + onPressed: () {}, + child: const Text( + "Continue as Guest", + style: TextStyle( + color: MyColors.darkPrimaryColor, + fontWeight: FontWeight.bold, + decoration: TextDecoration.underline, + ), + ), + ), + mFlex(3), ], ), ), diff --git a/lib/utils/utils.dart b/lib/utils/utils.dart index 1235dab..1bf3639 100644 --- a/lib/utils/utils.dart +++ b/lib/utils/utils.dart @@ -114,6 +114,15 @@ Widget mExp(int f) { ); } +Widget mExpHorizontal(int f) { + return Expanded( + flex: f, + child: Container( + width: double.infinity, + ), + ); +} + spacer() { return SizedBox( height: 8, diff --git a/lib/widgets/dialog/otp_dialog.dart b/lib/widgets/dialog/otp_dialog.dart index 0e0707f..b5c0146 100644 --- a/lib/widgets/dialog/otp_dialog.dart +++ b/lib/widgets/dialog/otp_dialog.dart @@ -87,7 +87,7 @@ class _OtpDialogState extends State { }); }, countDownTimerStyle: TextStyle( - color: Colors.blue, + color: MyColors.darkPrimaryColor, height: 1.2, ), ), @@ -106,10 +106,10 @@ class _OtpDialogState extends State { padding: const EdgeInsets.all(12.0), child: Text( LocaleKeys.resend_code.tr(), - style: TextStyle( + style: const TextStyle( decoration: TextDecoration.underline, fontWeight: FontWeight.bold, - color: Colors.blue, + color: MyColors.darkPrimaryColor, ), ), ), diff --git a/lib/widgets/tab/login_email_tab.dart b/lib/widgets/tab/login_email_tab.dart index 7c38669..fcdaf42 100644 --- a/lib/widgets/tab/login_email_tab.dart +++ b/lib/widgets/tab/login_email_tab.dart @@ -18,7 +18,7 @@ class LoginEmailTab extends StatefulWidget { } class _LoginEmailTabState extends State { - ClassType type = ClassType.NUMBER; + ClassType type = ClassType.EMAIL; @override Widget build(BuildContext context) { @@ -29,22 +29,22 @@ class _LoginEmailTabState extends State { Expanded( child: InkWell( onTap: () { - type = ClassType.NUMBER; - widget.onSelection(ClassType.NUMBER); + type = ClassType.EMAIL; + widget.onSelection(ClassType.EMAIL); }, child: Container( width: double.infinity, height: 45, decoration: BoxDecoration( - color: type == ClassType.NUMBER ? MyColors.darkPrimaryColor : Colors.grey[200], + color: type == ClassType.EMAIL ? MyColors.darkPrimaryColor : Colors.grey[200], // border: Border.all(color: type == ClassType.NUMBER ? MyColors.darkPrimaryColor : Colors.transparent, width: 2), borderRadius: BorderRadius.all(Radius.circular(0)), ), child: Center( child: Text( - LocaleKeys.number.tr(), + LocaleKeys.email.tr(), style: TextStyle( - color: type == ClassType.NUMBER ? MyColors.white : Colors.black, + color: type == ClassType.EMAIL ? MyColors.white : Colors.black, ), ), ), @@ -55,22 +55,22 @@ class _LoginEmailTabState extends State { Expanded( child: InkWell( onTap: () { - type = ClassType.EMAIL; - widget.onSelection(ClassType.EMAIL); + type = ClassType.NUMBER; + widget.onSelection(ClassType.NUMBER); }, child: Container( width: double.infinity, height: 45, decoration: BoxDecoration( - color: type == ClassType.EMAIL ? MyColors.darkPrimaryColor : Colors.grey[200], + color: type == ClassType.NUMBER ? MyColors.darkPrimaryColor : Colors.grey[200], // border: Border.all(color: type == ClassType.NUMBER ? MyColors.darkPrimaryColor : Colors.transparent, width: 2), borderRadius: BorderRadius.all(Radius.circular(0)), ), child: Center( child: Text( - LocaleKeys.email.tr(), + LocaleKeys.phoneNumber.tr(), style: TextStyle( - color: type == ClassType.EMAIL ? MyColors.white : Colors.black, + color: type == ClassType.NUMBER ? MyColors.white : Colors.black, ), ), ), diff --git a/pubspec.lock b/pubspec.lock index ef0305a..28ca39b 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -14,7 +14,7 @@ packages: name: async url: "https://pub.dartlang.org" source: hosted - version: "2.8.2" + version: "2.9.0" boolean_selector: dependency: transitive description: @@ -28,21 +28,14 @@ packages: name: characters url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.1" + version: "1.2.1" clock: dependency: transitive description: name: clock url: "https://pub.dartlang.org" source: hosted - version: "1.1.0" + version: "1.1.1" collection: dependency: transitive description: @@ -98,7 +91,7 @@ packages: name: fake_async url: "https://pub.dartlang.org" source: hosted - version: "1.3.0" + version: "1.3.1" ffi: dependency: transitive description: @@ -321,21 +314,21 @@ packages: name: matcher url: "https://pub.dartlang.org" source: hosted - version: "0.12.11" + version: "0.12.12" material_color_utilities: dependency: transitive description: name: material_color_utilities url: "https://pub.dartlang.org" source: hosted - version: "0.1.4" + version: "0.1.5" meta: dependency: transitive description: name: meta url: "https://pub.dartlang.org" source: hosted - version: "1.7.0" + version: "1.8.0" nested: dependency: transitive description: @@ -349,7 +342,7 @@ packages: name: path url: "https://pub.dartlang.org" source: hosted - version: "1.8.1" + version: "1.8.2" path_drawing: dependency: transitive description: @@ -557,7 +550,7 @@ packages: name: source_span url: "https://pub.dartlang.org" source: hosted - version: "1.8.2" + version: "1.9.0" stack_trace: dependency: transitive description: @@ -585,21 +578,21 @@ packages: name: string_scanner url: "https://pub.dartlang.org" source: hosted - version: "1.1.0" + version: "1.1.1" term_glyph: dependency: transitive description: name: term_glyph url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "1.2.1" test_api: dependency: transitive description: name: test_api url: "https://pub.dartlang.org" source: hosted - version: "0.4.9" + version: "0.4.12" typed_data: dependency: transitive description: diff --git a/resources/langs/ar-SA.json b/resources/langs/ar-SA.json index c21e6fe..9a1099b 100644 --- a/resources/langs/ar-SA.json +++ b/resources/langs/ar-SA.json @@ -30,6 +30,8 @@ "createPass": "انشاء كلمة مرور جديده *", "newPassword": " كلمة مرور جديده", "forgetPassword": "نسيت كلمة المرور", + "forgetPasswordQ": "نسيت كلمة المرور؟", + "recover": "استعادة", "forgetPasswordRecover": "نسيت كلمة المرور؟ استعادة", "editAccount": "تعديل الحساب", "change": "تغيير", @@ -114,6 +116,7 @@ "userRoleOrTitle": "عنوان المستخدم", "codeSentToEmail": "تم ارسال الرمز للايميل", "number": "موبايل", + "phoneNumber": "رقم الهاتف", "english": "English", "provider": "Provider", "title": "Hello", diff --git a/resources/langs/en-US.json b/resources/langs/en-US.json index c814df6..6eb9fc0 100644 --- a/resources/langs/en-US.json +++ b/resources/langs/en-US.json @@ -31,6 +31,8 @@ "createPass": "Create Password *", "newPassword": "New Password", "forgetPassword": "Forget Password", + "forgetPasswordQ": "Forget Password?", + "recover": "Recover", "forgetPasswordRecover": "Forget Password? Recover", "editAccount": "Edit Account", "change": "Change", @@ -115,6 +117,7 @@ "userRoleOrTitle": "User role or title", "codeSentToEmail": "Code is sent to email", "number": "Number", + "phoneNumber": "Phone Number", "english": "عربي", "title": "Hello", "msg": "Hello {} in the {} world ",