Merge pull request #89 from WDI-Ideas/jayeshjain25
language localization
This commit is contained in:
@@ -1,72 +1,68 @@
|
||||
class AppText {
|
||||
//Splash
|
||||
static const String splashVersionText = "APP: v.";
|
||||
static const String splashCopyrightText = '© 2024 Tanami';
|
||||
static const String splashVersionText = "splashVersionText";
|
||||
static const String splashCopyrightText = "splashCopyrightText";
|
||||
|
||||
//Welcome
|
||||
static const String welcomeTitle1Text = "Tanami offers";
|
||||
static const String welcomeTitle2Text = "Invest alongside";
|
||||
static const String welcomeTitle3Text = "Start investing today ";
|
||||
static const String welcomeDescription1Text =
|
||||
"access to best-in-class, exclusive, global private investments";
|
||||
static const String welcomeDescription2Text =
|
||||
"experienced investment experts with a long-standing track record";
|
||||
static const String welcomeDescription3Text = "with only SAR 1,000";
|
||||
static const String loginText = "Log In";
|
||||
static const String signUpText = "Sign Up";
|
||||
static const String welcomeTitle1Text = "welcomeTitle1Text";
|
||||
static const String welcomeTitle2Text = "welcomeTitle2Text";
|
||||
static const String welcomeTitle3Text = "welcomeTitle3Text";
|
||||
static const String welcomeDescription1Text = "welcomeDescription1Text";
|
||||
static const String welcomeDescription2Text = "welcomeDescription2Text";
|
||||
static const String welcomeDescription3Text = "welcomeDescription3Text";
|
||||
static const String loginText = "loginText";
|
||||
static const String signUpText = "signUpText";
|
||||
|
||||
//Login
|
||||
static const String welcomeText = "Welcome back!";
|
||||
static const String pleaseEnterLoginDetails =
|
||||
"Please enter your login details to get started";
|
||||
static const String welcomeText = "welcomeText";
|
||||
static const String pleaseEnterLoginDetails = "pleaseEnterLoginDetails";
|
||||
static const String toGetYourAccountPleaseSetYourInfo =
|
||||
"To get your account please set your info";
|
||||
static const String countryOfResidence = "Country of residence";
|
||||
static const String chooseCountry = "Choose country";
|
||||
static const String phoneNumber = "Phone number";
|
||||
static const String password = "Password";
|
||||
static const String enterPassword = "Enter Password";
|
||||
static const String invalidPhoneNo = "Invalid phone number";
|
||||
static const String enterPhoneNo = "Enter phone number";
|
||||
static const String invalidPassword = "Invalid password";
|
||||
static const String forgotPassword = "Forgot password";
|
||||
"toGetYourAccountPleaseSetYourInfo";
|
||||
static const String countryOfResidence = "countryOfResidence";
|
||||
static const String chooseCountry = "chooseCountry";
|
||||
static const String phoneNumber = "phoneNumber";
|
||||
static const String password = "password";
|
||||
static const String enterPassword = "enterPassword";
|
||||
static const String invalidPhoneNo = "invalidPhoneNo";
|
||||
static const String enterPhoneNo = "enterPhoneNo";
|
||||
static const String invalidPassword = "invalidPassword";
|
||||
static const String forgotPassword = "forgotPassword";
|
||||
|
||||
//Register
|
||||
static const String getStartedToday = "Get started today";
|
||||
static const String getStartedToday = "getStartedToday";
|
||||
static const String setupYourTanamiAccountToBegin =
|
||||
"Setup your Tanami account to begin investing in a few simple steps";
|
||||
static const String step1 = "Step 1";
|
||||
static const String step2 = "Step 2";
|
||||
static const String step3 = "Step 3";
|
||||
"setupYourTanamiAccountToBegin";
|
||||
static const String step1 = "step1";
|
||||
static const String step2 = "step2";
|
||||
static const String step3 = "step3";
|
||||
static const String enterYourCountryOfResidence =
|
||||
"Enter your country of residence and mobile number";
|
||||
static const String enterNameEmailPassword =
|
||||
"Enter your name, email and password";
|
||||
"enterYourCountryOfResidence";
|
||||
static const String enterNameEmailPassword = "enterNameEmailPassword";
|
||||
static const String enterNameEmailUniquePassword =
|
||||
"Enter your name and email and choose a unique password";
|
||||
"enterNameEmailUniquePassword";
|
||||
static const String enableBiometricAuthentication =
|
||||
"Enable biometric authentication and select a unique pin code for easy access";
|
||||
static const String getStarted = "Get started";
|
||||
static const String welcome = "Welcome!";
|
||||
"enableBiometricAuthentication";
|
||||
static const String getStarted = "getStarted";
|
||||
static const String welcome = "welcome";
|
||||
static const String selectYourCountryOfResidence =
|
||||
"Select your country of residence and enter your mobile number";
|
||||
static const String nextText = "Next";
|
||||
static const String backText = "Back";
|
||||
static const String firstNameText = "First Name";
|
||||
static const String lastNameText = "Last Name";
|
||||
static const String emailText = "Email";
|
||||
static const String repeatPasswordText = "Repeat Password";
|
||||
"selectYourCountryOfResidence";
|
||||
static const String nextText = "nextText";
|
||||
static const String backText = "backText";
|
||||
static const String firstNameText = "firstNameText";
|
||||
static const String lastNameText = "lastNameText";
|
||||
static const String emailText = "emailText";
|
||||
static const String repeatPasswordText = "repeatPasswordText";
|
||||
static const String min8CharactersSpecialCharctersText =
|
||||
"Min 8 characters, special characters required";
|
||||
static const String enterFirstName = "Enter first name";
|
||||
static const String enterLastName = "Enter last name";
|
||||
static const String enterEmail = "Enter email";
|
||||
static const String cantBeEmptyText = "Can't be empty";
|
||||
static const String passwordMismatch = "Password mismatch";
|
||||
static const String iAgreeToThe = "I agree to the ";
|
||||
static const String termsAndCondition = "Terms & Conditions";
|
||||
static const String andThe = " and the";
|
||||
static const String privacyPolicy = "Privacy Policy";
|
||||
"min8CharactersSpecialCharctersText";
|
||||
static const String enterFirstName = "enterFirstName";
|
||||
static const String enterLastName = "enterLastName";
|
||||
static const String enterEmail = "enterEmail";
|
||||
static const String cantBeEmptyText = "cantBeEmptyText";
|
||||
static const String passwordMismatch = "passwordMismatch";
|
||||
static const String iAgreeToThe = "iAgreeToThe";
|
||||
static const String termsAndCondition = "termsAndCondition";
|
||||
static const String andThe = "andThe";
|
||||
static const String privacyPolicy = "privacyPolicy";
|
||||
|
||||
//Country Name
|
||||
static const String bahrainCountryText = "Bahrain";
|
||||
@@ -75,255 +71,242 @@ class AppText {
|
||||
static const String qatarCountryText = "Qatar";
|
||||
static const String saudiArabiaCountryText = "Saudi Arabia";
|
||||
static const String uaeCountryText = "United Arab Emirates";
|
||||
static const String confirmSelectionText = "Confirm selection";
|
||||
static const String confirmSelectionText = "confirmSelectionText";
|
||||
|
||||
//Portfolio
|
||||
static const String portfolioText = "Portfolio Value";
|
||||
static const String portfolio = "Portfolio Value: ";
|
||||
static const String investmentamount = "Investment Amount";
|
||||
static const String currentval = "Current valuation";
|
||||
static const String totalreturn = "Total return";
|
||||
static const String disttodate = "Distributions to date";
|
||||
static const String includeddocs = "Investment Documents";
|
||||
static const String portfolioText = "portfolioText";
|
||||
static const String portfolio = "portfolio";
|
||||
static const String investmentamount = "investmentamount";
|
||||
static const String currentval = "currentval";
|
||||
static const String totalreturn = "totalreturn";
|
||||
static const String disttodate = "disttodate";
|
||||
static const String includeddocs = "includeddocs";
|
||||
|
||||
//Academy
|
||||
static const String videosTitle = "Videos";
|
||||
static const String academyText = "Academy";
|
||||
static const String videosTitle = "videosTitle";
|
||||
static const String academyText = "academyText";
|
||||
|
||||
//Dialog
|
||||
static const String exitText = "Exit";
|
||||
static const String cancelText = "Cancel";
|
||||
static const String exitText = "exitText";
|
||||
static const String cancelText = "cancelText";
|
||||
static const String areYouSureYouWantToExitText =
|
||||
"Are you sure you want to Exit?";
|
||||
"areYouSureYouWantToExitText";
|
||||
|
||||
//FAQ
|
||||
static const String faqTitle = "Frequently Asked Questions:";
|
||||
static const String faqTitle = "faqTitle";
|
||||
|
||||
//Security
|
||||
static const String unlockText = "Unlock";
|
||||
static const String tanamiAppIsLocked = "Tanami Capital is locked";
|
||||
static const String securityMssgText =
|
||||
"For your security, you can only use Tanami Capital when it's unlocked";
|
||||
static const String faceIdText = "Face Id";
|
||||
static const String appAskPermissionText =
|
||||
"Tanami App ask permission to use Face ID (or Fingerprint)";
|
||||
static const String unlockText = "unlockText";
|
||||
static const String tanamiAppIsLocked = "tanamiAppIsLocked";
|
||||
static const String securityMssgText = "securityMssgText";
|
||||
static const String faceIdText = "faceIdText";
|
||||
static const String appAskPermissionText = "appAskPermissionText";
|
||||
|
||||
//OTP
|
||||
static const String checkYourMessages = "Check your messages";
|
||||
static const String referToSameOtpMessage =
|
||||
"Enter the 6-digit code sent to your mobile";
|
||||
static const String resendSms = "Resend SMS";
|
||||
static const String otpVerifiedSucessfully = "OTP Verified Successfully!";
|
||||
static const String otpVerifiedFailed = "OTP Verification Failed:";
|
||||
static const String checkYourMessages = "checkYourMessages";
|
||||
static const String referToSameOtpMessage = "referToSameOtpMessage";
|
||||
static const String resendSms = "resendSms";
|
||||
static const String otpVerifiedSucessfully = "otpVerifiedSucessfully";
|
||||
static const String otpVerifiedFailed = "otpVerifiedFailed";
|
||||
|
||||
//Pin Code
|
||||
static const String pinCode = "Pin Code";
|
||||
static const String createPinCode = "Create Pin Code";
|
||||
static const String changePinCode = "Change Pin Code";
|
||||
static const String confirmPinCode = "Confirm Pin Code";
|
||||
static const String incorrectPinCode = "Incorrect PIN. Please try again.";
|
||||
static const String welcomeBackText = "Welcome back";
|
||||
static const String pinCode = "pinCode";
|
||||
static const String createPinCode = "createPinCode";
|
||||
static const String changePinCode = "changePinCode";
|
||||
static const String confirmPinCode = "confirmPinCode";
|
||||
static const String incorrectPinCode = "incorrectPinCode";
|
||||
static const String welcomeBackText = "welcomeBackText";
|
||||
static const String userYourAppPinToLoginEnterTanami =
|
||||
"Use your app PIN to login to enter Tanami";
|
||||
static const String forgotPinCode = "Forgot Pin Code";
|
||||
static const String notificationText = "Notification";
|
||||
static const String allowNotificationText = "Allow notification";
|
||||
"userYourAppPinToLoginEnterTanami";
|
||||
static const String forgotPinCode = "forgotPinCode";
|
||||
static const String notificationText = "notificationText";
|
||||
static const String allowNotificationText = "allowNotificationText";
|
||||
static const String toRestorePinYouWillBeLoggedOut =
|
||||
"To restore PIN you will be Logged out";
|
||||
static const String allowText = "Allow";
|
||||
static const String declineText = "Decline";
|
||||
"toRestorePinYouWillBeLoggedOut";
|
||||
static const String allowText = "allowText";
|
||||
static const String declineText = "declineText";
|
||||
|
||||
//Forgot Password
|
||||
static const String almostHere = 'Almost here...';
|
||||
static const String completeAcc =
|
||||
'Complete account profile in 3 minutes to start investing';
|
||||
static const String almostHere = "almostHere";
|
||||
static const String completeAcc = "completeAcc";
|
||||
|
||||
//Forgot Password
|
||||
static const String restorePasswordText = "Restore password";
|
||||
static const String restorePasswordText = "restorePasswordText";
|
||||
static const String toRestorePasswordPleaseEnterPhoneNumber =
|
||||
"To restore password please enter phone number";
|
||||
static const String createNewPasswordText = "Create new password";
|
||||
static const String submitText = "Submit";
|
||||
"toRestorePasswordPleaseEnterPhoneNumber";
|
||||
static const String createNewPasswordText = "createNewPasswordText";
|
||||
static const String submitText = "submitText";
|
||||
|
||||
//Wallet
|
||||
static const String walletTitle = "Wallet balance";
|
||||
static const String walletText = "Wallet";
|
||||
static const String day = "Today";
|
||||
static const String filterTitle = "Filters";
|
||||
static const String onHold = "On Hold";
|
||||
static const String deposit = "Deposit";
|
||||
static const String withdraw = "Withdraw";
|
||||
static const String withdrawal = "Withdrawal";
|
||||
static const String yield = "Yield";
|
||||
static const String refund = "Refund";
|
||||
static const String investment = "Investment";
|
||||
static const String walletDetailsTitle = "Details";
|
||||
static const String withdrawalScreenTitle = 'Enter bank details';
|
||||
static const String depositScreenTitle = 'Deposit notification';
|
||||
static const String status = "Status";
|
||||
static const String paymentMethod = "Payment Method";
|
||||
static const String accountName = "Account Name";
|
||||
static const String accountHolderName =
|
||||
'Account Holder Name/Beneficiary Name';
|
||||
static const String iban = "IBAN";
|
||||
static const String beneficiaryAddress = "Beneficiary Address";
|
||||
static const String bankName = "Bank Name";
|
||||
static const String branchAddress = "Branch Address";
|
||||
static const String SWIFTcode = "SWIFT/BIC code";
|
||||
static const String refid = "Reference ID";
|
||||
static const String previewTitle = "Withdrawal confirmation";
|
||||
static const String info =
|
||||
'Your withdrawal request has been received and is currently being processed.';
|
||||
static const String info1 =
|
||||
'Please confirm the withdrawal amount and verify the accuracy of your bank details.';
|
||||
static const String workingDays =
|
||||
'Processing times vary from 3-7 working days';
|
||||
static const String balance = 'Wallet Balance';
|
||||
static const String withdrawTitle = 'Withdrawal';
|
||||
static const String depositTitle = 'Deposit';
|
||||
static const String withdrawDetails = 'Withdrawal details';
|
||||
static const String depositDetails = 'Deposit details';
|
||||
static const String required = 'Fields with * are required';
|
||||
static const String withdrawAmt = 'Total Withdrawal amount:';
|
||||
static const String depositAmt = 'Total Deposit amount:';
|
||||
static const String info2 =
|
||||
'Payment can include transfer fee from your bank ';
|
||||
static const String info3 =
|
||||
'To accomplish payment please use payment details and Reference ID in tour Bank';
|
||||
static const String next = 'Next';
|
||||
static const String depositNoti = 'Create deposit notification';
|
||||
static const String payWithAppleText = 'Pay with Apple Pay';
|
||||
static const String submit = 'Submit request';
|
||||
static const String Submit = 'Submit';
|
||||
static const String submitDeposit = 'Submit deposit';
|
||||
static const String cont = 'Continue';
|
||||
static const String later = 'Later';
|
||||
static const String back = 'Back to change';
|
||||
static const String clear = 'Clear All';
|
||||
static const String bankTransfer = 'Bank Transfer';
|
||||
static const String amtTrans = 'Amount of transaction';
|
||||
static const String date1 = 'Newest first';
|
||||
static const String date2 = 'Oldest first';
|
||||
static const String all = 'All';
|
||||
static const String byDate = 'By date';
|
||||
static const String byAction = 'By type of action';
|
||||
static const String byStatus = 'By status';
|
||||
static const String walletTitle = "walletTitle";
|
||||
static const String walletText = "walletText";
|
||||
static const String day = "day";
|
||||
static const String filterTitle = "filterTitle";
|
||||
static const String onHold = "onHold";
|
||||
static const String deposit = "deposit";
|
||||
static const String withdraw = "withdraw";
|
||||
static const String withdrawal = "withdrawal";
|
||||
static const String yield = "yield";
|
||||
static const String refund = "refund";
|
||||
static const String investment = "investment";
|
||||
static const String walletDetailsTitle = "walletDetailsTitle";
|
||||
static const String withdrawalScreenTitle = "withdrawalScreenTitle";
|
||||
static const String depositScreenTitle = "depositScreenTitle";
|
||||
static const String status = "status";
|
||||
static const String paymentMethod = "paymentMethod";
|
||||
static const String accountName = "accountName";
|
||||
static const String accountHolderName = "accountHolderName";
|
||||
static const String iban = "iban";
|
||||
static const String beneficiaryAddress = "beneficiaryAddress";
|
||||
static const String bankName = "bankName";
|
||||
static const String branchAddress = "branchAddress";
|
||||
static const String SWIFTcode = "SWIFTcode";
|
||||
static const String refid = "refid";
|
||||
static const String previewTitle = "previewTitle";
|
||||
static const String info = "info";
|
||||
static const String info1 = "info1";
|
||||
static const String workingDays = "workingDays";
|
||||
static const String balance = "balance";
|
||||
static const String withdrawTitle = "withdrawTitle";
|
||||
static const String depositTitle = "depositTitle";
|
||||
static const String withdrawDetails = "withdrawDetails";
|
||||
static const String depositDetails = "depositDetails";
|
||||
static const String required = "required";
|
||||
static const String withdrawAmt = "withdrawAmt";
|
||||
static const String depositAmt = "depositAmt";
|
||||
static const String info2 = "info2";
|
||||
static const String info3 = "info3";
|
||||
static const String next = "next";
|
||||
static const String depositNoti = "depositNoti";
|
||||
static const String payWithAppleText = "payWithAppleText";
|
||||
static const String submit = "submit";
|
||||
static const String Submit = "Submit";
|
||||
static const String submitDeposit = "submitDeposit";
|
||||
static const String cont = "cont";
|
||||
static const String later = "later";
|
||||
static const String back = "back";
|
||||
static const String clear = "clear";
|
||||
static const String bankTransfer = "bankTransfer";
|
||||
static const String amtTrans = "amtTrans";
|
||||
static const String date1 = "date1";
|
||||
static const String date2 = "date2";
|
||||
static const String all = "all";
|
||||
static const String byDate = "byDate";
|
||||
static const String byAction = "byAction";
|
||||
static const String byStatus = "byStatus";
|
||||
|
||||
//Settings
|
||||
static const String settingsText = "Settings";
|
||||
static const String experiencedInvestorText = "Experienced investor?";
|
||||
static const String removeInvestmentText = "Remove investment thresholds";
|
||||
static const String upgradeText =
|
||||
"Upgrade your investor status today in a few simple steps to allows investments higher than SAR 200,000";
|
||||
static const String generalText = "General";
|
||||
static const String notificationsText = "Notifications";
|
||||
static const String languageText = "Language";
|
||||
static const String settingsText = "settingsText";
|
||||
static const String experiencedInvestorText = "experiencedInvestorText";
|
||||
static const String removeInvestmentText = "removeInvestmentText";
|
||||
static const String upgradeText = "upgradeText";
|
||||
static const String generalText = "generalText";
|
||||
static const String notificationsText = "notificationsText";
|
||||
static const String languageText = "languageText";
|
||||
static const String englishText = "English";
|
||||
static const String privacySettingsText = "Privacy Settings";
|
||||
static const String biometricText = "Biometric ID";
|
||||
static const String resetPasswordText = "Reset Password";
|
||||
static const String resetPinCodeText = "Reset PIN-code";
|
||||
static const String supportText = "Support";
|
||||
static const String contactAdminText = "Contact Admin";
|
||||
static const String privacyPolicyText = "Privacy Policy";
|
||||
static const String termsAndConditionText = "Terms & Conditions";
|
||||
static const String faqText = "FAQ";
|
||||
static const String logoutText = "Log Out";
|
||||
static const String deleteAccountText = "Delete account";
|
||||
static const String areYouSureWantToLogoutText =
|
||||
"Are you sure you want to Logout?";
|
||||
static const String noText = "No";
|
||||
static const String yesText = "Yes";
|
||||
static const String pinUpdatedSucess = "Pin updated Sucessfully !";
|
||||
static const String pinVerifiedSucess = "Pin verified Sucessfully !";
|
||||
static const String passwordUpdatedSucess = "Password updated Sucessfully !";
|
||||
static const String changePasswordText = "Change Password";
|
||||
static const String newPasswordText = "New Password";
|
||||
static const String currentPsswordText = "Current Password";
|
||||
static const String privacySettingsText = "privacySettingsText";
|
||||
static const String biometricText = "biometricText";
|
||||
static const String resetPasswordText = "resetPasswordText";
|
||||
static const String resetPinCodeText = "resetPinCodeText";
|
||||
static const String supportText = "supportText";
|
||||
static const String contactAdminText = "contactAdminText";
|
||||
static const String privacyPolicyText = "privacyPolicyText";
|
||||
static const String termsAndConditionText = "termsAndConditionText";
|
||||
static const String faqText = "faqText";
|
||||
static const String logoutText = "logoutText";
|
||||
static const String deleteAccountText = "deleteAccountText";
|
||||
static const String areYouSureWantToLogoutText = "areYouSureWantToLogoutText";
|
||||
static const String noText = "noText";
|
||||
static const String yesText = "yesText";
|
||||
static const String pinUpdatedSucess = "pinUpdatedSucess";
|
||||
static const String pinVerifiedSucess = "pinVerifiedSucess";
|
||||
static const String passwordUpdatedSucess = "passwordUpdatedSucess";
|
||||
static const String changePasswordText = "changePasswordText";
|
||||
static const String newPasswordText = "newPasswordText";
|
||||
static const String currentPsswordText = "currentPsswordText";
|
||||
|
||||
//Contact Admin
|
||||
static const String byPhoneText = "By phone";
|
||||
static const String byEmailText = "By-mail";
|
||||
static const String weAreHereToHelp = "We are here to help!";
|
||||
static const String byPhoneText = "byPhoneText";
|
||||
static const String byEmailText = "byEmailText";
|
||||
static const String weAreHereToHelp = "weAreHereToHelp";
|
||||
|
||||
//Language Screen
|
||||
static const String arabicText = "اللغة العربية";
|
||||
static const String chooseTheLanguageText = "Choose the language";
|
||||
static const String chooseTheLanguageText = "chooseTheLanguageText";
|
||||
static const String changingTheLanguageWillReloadApp =
|
||||
"Changing the language will reload the application";
|
||||
"changingTheLanguageWillReloadApp";
|
||||
|
||||
//Delete Screen
|
||||
static const String weAreSadToSeeYouGo = "We're sad to see you go :(";
|
||||
static const String enterAdescription = "Enter a description...";
|
||||
static const String weAreSadToSeeYouGo = "weAreSadToSeeYouGo";
|
||||
static const String enterAdescription = "enterAdescription";
|
||||
static const String toHelpUsImprovePleaseLetusKnowWhyYouWantToDeleteAccount =
|
||||
"To help us improve, please let us know why you want to delete your account";
|
||||
static const String charactersLeft = "characters left";
|
||||
"toHelpUsImprovePleaseLetusKnowWhyYouWantToDeleteAccount";
|
||||
static const String charactersLeft = "charactersLeft";
|
||||
static const String iUnderstandAndAgreeThatmyDataWillBeDeleted =
|
||||
"I understand and agree that my data will be deleted";
|
||||
static const String noIWantToStay = "No, i want to stay";
|
||||
static const String pleaseEnteraDescription = "Please enter a description";
|
||||
static const String pleaseCheckThisField = "Please check this field";
|
||||
"iUnderstandAndAgreeThatmyDataWillBeDeleted";
|
||||
static const String noIWantToStay = "noIWantToStay";
|
||||
static const String pleaseEnteraDescription = "pleaseEnteraDescription";
|
||||
static const String pleaseCheckThisField = "pleaseCheckThisField";
|
||||
static const String weHaveReceivedYourRequestToDeleteAccount =
|
||||
"We have received your request to delete your account";
|
||||
static const String theRequestWillBeProcessed =
|
||||
"The request will be processed within 72 hours";
|
||||
static const closeText = "Close";
|
||||
"weHaveReceivedYourRequestToDeleteAccount";
|
||||
static const String theRequestWillBeProcessed = "theRequestWillBeProcessed";
|
||||
static const String closeText = "closeText";
|
||||
|
||||
//Invest
|
||||
static const String investText = "Invest";
|
||||
static const String availableText = "Available";
|
||||
static const String closedText = "Closed";
|
||||
static const String completeYourVerification = "Complete your verification";
|
||||
static const String investText = "investText";
|
||||
static const String availableText = "availableText";
|
||||
static const String closedText = "closedText";
|
||||
static const String completeYourVerification = "completeYourVerification";
|
||||
static const String verifyYourAccountInUnderMinutesToStartInvestingToday =
|
||||
"Verify your account in under 10 minutes to start investing today!";
|
||||
static const String closingDateText = "Closing Date";
|
||||
static const String closedDateText = "Closed Date";
|
||||
static const String fundedText = "funded";
|
||||
static const String sponsorNameText = "Sponsor name";
|
||||
static const String estimatedReturnText = "Estimated return";
|
||||
static const String originalEstimatedReturnText = "Original estimated return";
|
||||
static const String actualEstimatedReturnText = "Actual return";
|
||||
static const String actualReturnToDate = "Actual return to date";
|
||||
static const String holdingPeriodText = "Holding period";
|
||||
static const String payoutDateText = "Payout Date";
|
||||
static const String expectedExitDate = "Expected Exit Date";
|
||||
static const String minimumInvestmentText = "Minimum investment";
|
||||
static const String keyMeritsOfInvestmentText = "Key Merits";
|
||||
static const String investmentDetailsText = "Investment details";
|
||||
static const String enterInvestmentAmountText = "Enter investment amount";
|
||||
"verifyYourAccountInUnderMinutesToStartInvestingToday";
|
||||
static const String closingDateText = "closingDateText";
|
||||
static const String closedDateText = "closedDateText";
|
||||
static const String fundedText = "fundedText";
|
||||
static const String sponsorNameText = "sponsorNameText";
|
||||
static const String estimatedReturnText = "estimatedReturnText";
|
||||
static const String originalEstimatedReturnText =
|
||||
"originalEstimatedReturnText";
|
||||
static const String actualEstimatedReturnText = "actualEstimatedReturnText";
|
||||
static const String actualReturnToDate = "actualReturnToDate";
|
||||
static const String holdingPeriodText = "holdingPeriodText";
|
||||
static const String payoutDateText = "payoutDateText";
|
||||
static const String expectedExitDate = "expectedExitDate";
|
||||
static const String minimumInvestmentText = "minimumInvestmentText";
|
||||
static const String keyMeritsOfInvestmentText = "keyMeritsOfInvestmentText";
|
||||
static const String investmentDetailsText = "investmentDetailsText";
|
||||
static const String enterInvestmentAmountText = "enterInvestmentAmountText";
|
||||
static const String thisIsUsdInvestmentOpportunityText =
|
||||
"This is a USD investment opportunity. Funds will be converted into USD at a rate of x upon confirmation";
|
||||
static const String choosePaymentMethodText = "Choose payment method";
|
||||
static const String balanceText = "Balance";
|
||||
static const String applePayText = "Apple Pay";
|
||||
static const String gPayText = "Gpay Pay";
|
||||
static const String bankTransferText =
|
||||
"Directly transfer funds from your bank account into your Tanami wallet.";
|
||||
"thisIsUsdInvestmentOpportunityText";
|
||||
static const String choosePaymentMethodText = "choosePaymentMethodText";
|
||||
static const String balanceText = "balanceText";
|
||||
static const String applePayText = "applePayText";
|
||||
static const String gPayText = "gPayText";
|
||||
static const String bankTransferText = "bankTransferText";
|
||||
static const String instantTransferFundsApplePayText =
|
||||
"Instant transfer of funds using Apple Pay!";
|
||||
"instantTransferFundsApplePayText";
|
||||
static const String instantTransferFundsGpayPayText =
|
||||
"Instant transfer of funds using Gpay Pay!";
|
||||
"instantTransferFundsGpayPayText";
|
||||
static const String retailInvestirCanInvestMaxText =
|
||||
"Retail investors can invest a maximum of SAR 200,000 in this opportunity.";
|
||||
"retailInvestirCanInvestMaxText";
|
||||
static const String upgradeYourInvestorStatusToIncreaseText =
|
||||
"Upgrade your investor status to increase your investment limit.";
|
||||
static const String currentExchangeText = "Current Exchange";
|
||||
static const String feeText = "Fee";
|
||||
static const String processingFees = "Processing fee";
|
||||
static const String debitedAmountText = "Debited amount";
|
||||
static const String totalInvestmentAmountText = "Total Investment amount";
|
||||
static const String confirmInvestmentText = "Confirm investment";
|
||||
static const String paymentMethodText = "Payment method";
|
||||
static const String totalDebitedAmountText = "Total debited amount";
|
||||
"upgradeYourInvestorStatusToIncreaseText";
|
||||
static const String currentExchangeText = "currentExchangeText";
|
||||
static const String feeText = "feeText";
|
||||
static const String processingFees = "processingFees";
|
||||
static const String debitedAmountText = "debitedAmountText";
|
||||
static const String totalInvestmentAmountText = "totalInvestmentAmountText";
|
||||
static const String confirmInvestmentText = "confirmInvestmentText";
|
||||
static const String paymentMethodText = "paymentMethodText";
|
||||
static const String totalDebitedAmountText = "totalDebitedAmountText";
|
||||
static const String unableToProcessTransactionText =
|
||||
"Unable to process transaction";
|
||||
"unableToProcessTransactionText";
|
||||
static const String investmentOpportunityHasReachedMaxcapText =
|
||||
"Investment opportunity has reached maximum capacity";
|
||||
static const String backToInvestmentText = "Back to Investment";
|
||||
static const String otpCheckIsFailedText = "OTP Check is failed...";
|
||||
static const String pleaseTryAgainText = "Please try again";
|
||||
static const String tryAgainText = "Try again";
|
||||
static const String investmentConfirmationText = "Investment confirmation";
|
||||
static const String enterAmountText = "Enter Amount";
|
||||
static const String pleaseEnterAmountText = "Please Enter Amount";
|
||||
"investmentOpportunityHasReachedMaxcapText";
|
||||
static const String backToInvestmentText = "backToInvestmentText";
|
||||
static const String otpCheckIsFailedText = "otpCheckIsFailedText";
|
||||
static const String pleaseTryAgainText = "pleaseTryAgainText";
|
||||
static const String tryAgainText = "tryAgainText";
|
||||
static const String investmentConfirmationText = "investmentConfirmationText";
|
||||
static const String enterAmountText = "enterAmountText";
|
||||
static const String pleaseEnterAmountText = "pleaseEnterAmountText";
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ class SettingsLayout extends StatelessWidget {
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
kycCard(),
|
||||
kycCard(context),
|
||||
const Gap(15),
|
||||
const GeneralSettingsSection(),
|
||||
const Gap(15),
|
||||
|
||||
@@ -9,6 +9,7 @@ import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/bloc/toggle/toggle_bloc.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../../shared/components/toggle_widget.dart';
|
||||
import 'settings_list_tile_item.dart';
|
||||
|
||||
@@ -17,6 +18,7 @@ class GeneralSettingsSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Padding(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
horizontal: 16,
|
||||
@@ -25,7 +27,7 @@ class GeneralSettingsSection extends StatelessWidget {
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
TextWidget().text14W600(
|
||||
AppText.generalText,
|
||||
localizations.translate(AppText.generalText),
|
||||
clr: AppColor.hintTextColor,
|
||||
),
|
||||
const Gap(5),
|
||||
@@ -33,7 +35,7 @@ class GeneralSettingsSection extends StatelessWidget {
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
TextWidget().text14W600(
|
||||
AppText.allowNotificationText,
|
||||
localizations.translate(AppText.allowNotificationText),
|
||||
clr: AppColor.textLabelColor,
|
||||
),
|
||||
BlocProvider(
|
||||
@@ -47,7 +49,7 @@ class GeneralSettingsSection extends StatelessWidget {
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
TextWidget().text14W600(
|
||||
AppText.biometricText,
|
||||
localizations.translate(AppText.biometricText),
|
||||
clr: AppColor.textLabelColor,
|
||||
),
|
||||
BlocProvider(
|
||||
@@ -62,8 +64,8 @@ class GeneralSettingsSection extends StatelessWidget {
|
||||
goRouter.pushNamed(RouteName.languageChangeScreen);
|
||||
},
|
||||
icon: AppImages.languageIcon,
|
||||
title: AppText.languageText,
|
||||
trailing: AppText.englishText,
|
||||
title: localizations.translate(AppText.languageText),
|
||||
trailing: localizations.translate(AppText.englishText),
|
||||
),
|
||||
const Gap(10),
|
||||
const Divider(
|
||||
|
||||
@@ -6,7 +6,10 @@ import 'package:tanami_app/core/styles/app_images.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
Widget kycCard() {
|
||||
import '../../../../../core/utils/language/localizations_delegate.dart';
|
||||
|
||||
Widget kycCard(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Padding(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
horizontal: 16,
|
||||
@@ -49,11 +52,11 @@ Widget kycCard() {
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
TextWidget().text14W600(
|
||||
AppText.removeInvestmentText,
|
||||
localizations.translate(AppText.removeInvestmentText),
|
||||
clr: AppColor.kycCardTextColor,
|
||||
),
|
||||
TextWidget().text11W500(
|
||||
AppText.upgradeText,
|
||||
localizations.translate(AppText.upgradeText),
|
||||
clr: AppColor.kycCardTextColor,
|
||||
),
|
||||
],
|
||||
|
||||
@@ -7,6 +7,7 @@ import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../../core/routes/route_name.dart';
|
||||
import '../../../../../core/routes/routes.dart';
|
||||
import '../../../../../core/utils/language/localizations_delegate.dart';
|
||||
import 'settings_list_tile_item.dart';
|
||||
|
||||
class PrivacySettingsSection extends StatelessWidget {
|
||||
@@ -14,6 +15,7 @@ class PrivacySettingsSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Padding(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
horizontal: 16,
|
||||
@@ -22,7 +24,7 @@ class PrivacySettingsSection extends StatelessWidget {
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
TextWidget().text14W600(
|
||||
AppText.privacySettingsText,
|
||||
localizations.translate(AppText.privacySettingsText),
|
||||
clr: AppColor.hintTextColor,
|
||||
),
|
||||
const Gap(5),
|
||||
@@ -33,7 +35,7 @@ class PrivacySettingsSection extends StatelessWidget {
|
||||
);
|
||||
},
|
||||
icon: AppImages.resetPasswordIcon,
|
||||
title: AppText.resetPasswordText,
|
||||
title: localizations.translate(AppText.resetPasswordText),
|
||||
trailing: "",
|
||||
),
|
||||
const Gap(8),
|
||||
@@ -44,7 +46,7 @@ class PrivacySettingsSection extends StatelessWidget {
|
||||
});
|
||||
},
|
||||
icon: AppImages.resetPinIcon,
|
||||
title: AppText.resetPinCodeText,
|
||||
title: localizations.translate(AppText.resetPinCodeText),
|
||||
trailing: "",
|
||||
),
|
||||
const Gap(10),
|
||||
|
||||
@@ -7,6 +7,7 @@ import 'package:tanami_app/core/routes/routes.dart';
|
||||
|
||||
import '../../../../../core/styles/app_color.dart';
|
||||
import '../../../../../core/styles/app_text.dart';
|
||||
import '../../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../../shared/components/button_widget.dart';
|
||||
import '../../../../../shared/components/log_out_dialog.dart';
|
||||
|
||||
@@ -15,6 +16,7 @@ class SettingsBottomSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
children: [
|
||||
const Gap(36),
|
||||
@@ -29,7 +31,7 @@ class SettingsBottomSection extends StatelessWidget {
|
||||
function: () {
|
||||
buildprofilelogoutdialog(context);
|
||||
},
|
||||
text: AppText.logoutText,
|
||||
text: localizations.translate(AppText.logoutText),
|
||||
clr: AppColor.primaryColor2,
|
||||
),
|
||||
),
|
||||
@@ -43,7 +45,7 @@ class SettingsBottomSection extends StatelessWidget {
|
||||
function: () {
|
||||
goRouter.pushNamed(RouteName.deleteAccountScreen);
|
||||
},
|
||||
text: AppText.deleteAccountText,
|
||||
text: localizations.translate(AppText.deleteAccountText),
|
||||
clr: AppColor.plainWhite,
|
||||
),
|
||||
),
|
||||
|
||||
@@ -4,6 +4,8 @@ import 'package:gap/gap.dart';
|
||||
import 'package:google_fonts/google_fonts.dart';
|
||||
import 'package:tanami_app/core/styles/app_color.dart';
|
||||
|
||||
import '../../../../../core/utils/language/localizations_delegate.dart';
|
||||
|
||||
class SettingsListItem extends StatelessWidget {
|
||||
final String icon;
|
||||
final String title;
|
||||
@@ -20,6 +22,7 @@ class SettingsListItem extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Container(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
vertical: 8.0,
|
||||
@@ -32,7 +35,7 @@ class SettingsListItem extends StatelessWidget {
|
||||
onTap: onTapFunc,
|
||||
leading: SvgPicture.asset(icon),
|
||||
title: Text(
|
||||
title,
|
||||
localizations.translate(title),
|
||||
style: GoogleFonts.dmSans(
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.w600,
|
||||
@@ -42,7 +45,7 @@ class SettingsListItem extends StatelessWidget {
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
Text(
|
||||
trailing,
|
||||
localizations.translate(trailing),
|
||||
style: GoogleFonts.dmSans(
|
||||
fontSize: 15,
|
||||
fontWeight: FontWeight.w500,
|
||||
|
||||
@@ -7,6 +7,7 @@ import 'package:tanami_app/core/styles/app_images.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../../core/utils/language/localizations_delegate.dart';
|
||||
import 'settings_list_tile_item.dart';
|
||||
|
||||
class SupportSettingsSection extends StatelessWidget {
|
||||
@@ -14,6 +15,7 @@ class SupportSettingsSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Padding(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
horizontal: 16,
|
||||
@@ -22,7 +24,7 @@ class SupportSettingsSection extends StatelessWidget {
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
TextWidget().text14W600(
|
||||
AppText.supportText,
|
||||
localizations.translate(AppText.supportText),
|
||||
clr: AppColor.hintTextColor,
|
||||
),
|
||||
const Gap(8),
|
||||
|
||||
@@ -5,6 +5,7 @@ import 'package:google_fonts/google_fonts.dart';
|
||||
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../bloc/change_password_bloc.dart';
|
||||
import 'change_password_layout.dart';
|
||||
|
||||
@@ -13,6 +14,7 @@ class ChangePasswordScreen extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Scaffold(
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
appBar: AppBar(
|
||||
@@ -21,7 +23,7 @@ class ChangePasswordScreen extends StatelessWidget {
|
||||
scrolledUnderElevation: 0.0,
|
||||
centerTitle: true,
|
||||
title: Text(
|
||||
AppText.changePasswordText,
|
||||
localizations.translate(AppText.changePasswordText),
|
||||
style: GoogleFonts.dmSans(
|
||||
color: const Color(0xFF272727),
|
||||
fontSize: 20.sp,
|
||||
|
||||
@@ -8,6 +8,7 @@ import 'package:tanami_app/shared/components/toast_message.dart';
|
||||
import '../../../../core/routes/routes.dart';
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/button_widget.dart';
|
||||
import '../bloc/change_password_bloc.dart';
|
||||
import '../bloc/change_password_event.dart';
|
||||
@@ -20,6 +21,7 @@ class RestorePasswordBottomSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
@@ -77,7 +79,7 @@ class RestorePasswordBottomSection extends StatelessWidget {
|
||||
)
|
||||
: null;
|
||||
},
|
||||
text: AppText.submitText,
|
||||
text: localizations.translate(AppText.submitText),
|
||||
clr: isButtonEnabled
|
||||
? AppColor.primaryColor2
|
||||
: AppColor.inactiveBtnColor,
|
||||
@@ -92,7 +94,7 @@ class RestorePasswordBottomSection extends StatelessWidget {
|
||||
function: () {
|
||||
goRouter.pop();
|
||||
},
|
||||
text: AppText.cancelText,
|
||||
text: localizations.translate(AppText.cancelText),
|
||||
),
|
||||
const Gap(10),
|
||||
],
|
||||
|
||||
@@ -6,6 +6,7 @@ import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import '../../../../core/routes/route_name.dart';
|
||||
import '../../../../core/routes/routes.dart';
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/bloc/password_field/password_visibility_bloc.dart';
|
||||
import '../../../../shared/components/button_widget.dart';
|
||||
import '../../../../shared/components/form_label_textfield.dart';
|
||||
@@ -17,6 +18,7 @@ class RestorePasswordForm extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final restorePasswordBloc = context.read<ChangePasswordBloc>();
|
||||
|
||||
// Reset fields when the screen is built
|
||||
@@ -37,8 +39,8 @@ class RestorePasswordForm extends StatelessWidget {
|
||||
BlocProvider(
|
||||
create: (_) => PasswordVisibilityBloc(),
|
||||
child: FormLabelTextField(
|
||||
hintText: AppText.enterPassword,
|
||||
title: AppText.currentPsswordText,
|
||||
hintText: localizations.translate(AppText.enterPassword),
|
||||
title: localizations.translate(AppText.currentPsswordText),
|
||||
type: AppText.password.toLowerCase(),
|
||||
textEditingController:
|
||||
restorePasswordBloc.currentPasswordTextField,
|
||||
@@ -48,8 +50,8 @@ class RestorePasswordForm extends StatelessWidget {
|
||||
BlocProvider(
|
||||
create: (_) => PasswordVisibilityBloc(),
|
||||
child: FormLabelTextField(
|
||||
hintText: AppText.enterPassword,
|
||||
title: AppText.newPasswordText,
|
||||
hintText: localizations.translate(AppText.enterPassword),
|
||||
title: localizations.translate(AppText.newPasswordText),
|
||||
type: AppText.password.toLowerCase(),
|
||||
textEditingController: restorePasswordBloc.passwordTextField,
|
||||
),
|
||||
@@ -58,8 +60,8 @@ class RestorePasswordForm extends StatelessWidget {
|
||||
BlocProvider(
|
||||
create: (_) => PasswordVisibilityBloc(),
|
||||
child: FormLabelTextField(
|
||||
hintText: AppText.enterPassword,
|
||||
title: AppText.repeatPasswordText,
|
||||
hintText: localizations.translate(AppText.enterPassword),
|
||||
title: localizations.translate(AppText.repeatPasswordText),
|
||||
type: AppText.password.toLowerCase(),
|
||||
textEditingController:
|
||||
restorePasswordBloc.repeatPasswordTextField,
|
||||
@@ -73,7 +75,8 @@ class RestorePasswordForm extends StatelessWidget {
|
||||
goRouter.pushNamed(
|
||||
RouteName.forgotPasswordPhoneVerificationScreen);
|
||||
},
|
||||
text: TextWidget().text15W400(AppText.forgotPassword,
|
||||
text: TextWidget().text15W400(
|
||||
localizations.translate(AppText.forgotPassword),
|
||||
clr: AppColor.forgotPassButtonColor,
|
||||
textDecoration: TextDecoration.underline),
|
||||
),
|
||||
|
||||
@@ -19,8 +19,8 @@ class ContactAdminScreen extends StatelessWidget {
|
||||
),
|
||||
body: ListView(
|
||||
children: [
|
||||
topSection(),
|
||||
bottomSection(),
|
||||
topSection(context),
|
||||
bottomSection(context),
|
||||
],
|
||||
),
|
||||
);
|
||||
|
||||
@@ -6,9 +6,11 @@ import 'package:tanami_app/core/styles/app_images.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/core/utils/url_launcher/url_launcher.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/text_widget.dart';
|
||||
|
||||
Widget bottomSection() {
|
||||
Widget bottomSection(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Padding(
|
||||
padding: const EdgeInsets.all(22.0),
|
||||
child: Column(
|
||||
@@ -16,7 +18,7 @@ Widget bottomSection() {
|
||||
const Gap(50.0),
|
||||
contactOption(
|
||||
icon: AppImages.byPhoneIcon,
|
||||
title: AppText.byPhoneText,
|
||||
title: localizations.translate(AppText.byPhoneText),
|
||||
subtitle: '+973 12345678',
|
||||
onTap: () {
|
||||
launchPhone('+973 12345678');
|
||||
@@ -25,7 +27,7 @@ Widget bottomSection() {
|
||||
const Gap(16.0),
|
||||
contactOption(
|
||||
icon: AppImages.byMailIcon,
|
||||
title: AppText.byEmailText,
|
||||
title: localizations.translate(AppText.byEmailText),
|
||||
subtitle: 'info@tanamicapital.com',
|
||||
onTap: () {
|
||||
launchEmail('info@tanamicapital.com');
|
||||
|
||||
@@ -5,9 +5,11 @@ import 'package:gap/gap.dart';
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_images.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/text_widget.dart';
|
||||
|
||||
Widget topSection() {
|
||||
Widget topSection(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
children: [
|
||||
const Gap(85),
|
||||
@@ -18,7 +20,7 @@ Widget topSection() {
|
||||
),
|
||||
const Gap(24),
|
||||
TextWidget().text17W700(
|
||||
AppText.weAreHereToHelp,
|
||||
localizations.translate(AppText.weAreHereToHelp),
|
||||
clr: AppColor.textLabelColor,
|
||||
),
|
||||
const Gap(10),
|
||||
|
||||
@@ -5,6 +5,7 @@ import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/appbar_widget.dart';
|
||||
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/button_widget.dart';
|
||||
import '../widgets/country_selection_list.dart';
|
||||
|
||||
@@ -13,6 +14,7 @@ class ChooseCountryLayout extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Scaffold(
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
bottomNavigationBar: Container(
|
||||
@@ -27,13 +29,13 @@ class ChooseCountryLayout extends StatelessWidget {
|
||||
function: () {
|
||||
goRouter.pop();
|
||||
},
|
||||
text: AppText.confirmSelectionText,
|
||||
text: localizations.translate(AppText.confirmSelectionText),
|
||||
clr: AppColor.primaryColor2,
|
||||
),
|
||||
),
|
||||
appBar: const AppBarWidget(
|
||||
appBar: AppBarWidget(
|
||||
height: 75,
|
||||
titleTxt: AppText.chooseCountry,
|
||||
titleTxt: localizations.translate(AppText.chooseCountry),
|
||||
),
|
||||
body: const CountrySelectionList(),
|
||||
);
|
||||
|
||||
@@ -6,6 +6,7 @@ import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/bloc/checkbox/checkbox_bloc.dart';
|
||||
import '../bloc/delete_account_bloc.dart';
|
||||
|
||||
@@ -14,6 +15,7 @@ class DeleteAccountScreen extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Scaffold(
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
appBar: AppBar(
|
||||
@@ -21,7 +23,7 @@ class DeleteAccountScreen extends StatelessWidget {
|
||||
elevation: 0,
|
||||
scrolledUnderElevation: 0,
|
||||
title: TextWidget().text20W700(
|
||||
AppText.deleteAccountText,
|
||||
localizations.translate(AppText.deleteAccountText),
|
||||
clr: AppColor.plainBlack,
|
||||
),
|
||||
centerTitle: true,
|
||||
|
||||
@@ -6,6 +6,7 @@ import 'package:gap/gap.dart';
|
||||
import '../../../../core/routes/routes.dart';
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/bloc/checkbox/checkbox_bloc.dart';
|
||||
import '../../../../shared/components/bloc/checkbox/checkbox_event.dart';
|
||||
import '../../../../shared/components/bloc/checkbox/checkbox_state.dart';
|
||||
@@ -19,6 +20,7 @@ import 'delete_account_dialog.dart';
|
||||
|
||||
Widget bottomSection(BuildContext context) {
|
||||
final deleteAccountBloc = context.read<DeleteAccountBloc>();
|
||||
var localizations = AppLocalizations.of(context);
|
||||
|
||||
return Column(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
@@ -35,7 +37,7 @@ Widget bottomSection(BuildContext context) {
|
||||
function: () {
|
||||
goRouter.pop();
|
||||
},
|
||||
text: AppText.noIWantToStay,
|
||||
text: localizations.translate(AppText.noIWantToStay),
|
||||
clr: AppColor.primaryColor2,
|
||||
),
|
||||
),
|
||||
@@ -83,7 +85,7 @@ Widget bottomSection(BuildContext context) {
|
||||
}
|
||||
}
|
||||
},
|
||||
text: AppText.deleteAccountText,
|
||||
text: localizations.translate(AppText.deleteAccountText),
|
||||
clr: AppColor.plainWhite,
|
||||
),
|
||||
);
|
||||
|
||||
@@ -4,6 +4,7 @@ import 'package:tanami_app/core/routes/routes.dart';
|
||||
import 'package:tanami_app/core/styles/app_color.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/text_widget.dart';
|
||||
|
||||
class AccountDeletionDialog extends StatelessWidget {
|
||||
@@ -11,6 +12,7 @@ class AccountDeletionDialog extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return AlertDialog(
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
shape: RoundedRectangleBorder(
|
||||
@@ -29,7 +31,8 @@ class AccountDeletionDialog extends StatelessWidget {
|
||||
},
|
||||
),
|
||||
TextWidget().text17W700(
|
||||
AppText.weHaveReceivedYourRequestToDeleteAccount,
|
||||
localizations
|
||||
.translate(AppText.weHaveReceivedYourRequestToDeleteAccount),
|
||||
clr: AppColor.textLabelColor,
|
||||
),
|
||||
],
|
||||
@@ -38,7 +41,7 @@ class AccountDeletionDialog extends StatelessWidget {
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
TextWidget().text15W500(
|
||||
AppText.theRequestWillBeProcessed,
|
||||
localizations.translate(AppText.theRequestWillBeProcessed),
|
||||
clr: AppColor.hintTextColor,
|
||||
),
|
||||
const Gap(20),
|
||||
@@ -46,7 +49,8 @@ class AccountDeletionDialog extends StatelessWidget {
|
||||
onTap: () {
|
||||
goRouter.pop();
|
||||
},
|
||||
child: TextWidget().text14W500(AppText.closeText,
|
||||
child: TextWidget().text14W500(
|
||||
localizations.translate(AppText.closeText),
|
||||
textDecoration: TextDecoration.underline,
|
||||
clr: AppColor.otpTextColor),
|
||||
),
|
||||
|
||||
@@ -7,6 +7,7 @@ import 'package:tanami_app/core/styles/app_color.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/bloc/checkbox/checkbox_bloc.dart';
|
||||
import '../../../../shared/components/bloc/checkbox/checkbox_state.dart';
|
||||
import '../../../../shared/components/checkbox_widget.dart';
|
||||
@@ -21,6 +22,7 @@ class FormSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final deleteAccountBloc = context.read<DeleteAccountBloc>();
|
||||
return Form(
|
||||
key: deleteAccountBloc.formKey,
|
||||
@@ -44,11 +46,12 @@ class FormSection extends StatelessWidget {
|
||||
deleteAccountBloc.descriptionTextField.text,
|
||||
));
|
||||
},
|
||||
hintText: AppText.enterAdescription,
|
||||
hintText:
|
||||
localizations.translate(AppText.enterAdescription),
|
||||
textEditingController:
|
||||
deleteAccountBloc.descriptionTextField,
|
||||
title: AppText
|
||||
.toHelpUsImprovePleaseLetusKnowWhyYouWantToDeleteAccount,
|
||||
title: localizations.translate(AppText
|
||||
.toHelpUsImprovePleaseLetusKnowWhyYouWantToDeleteAccount),
|
||||
type: "description",
|
||||
);
|
||||
},
|
||||
@@ -58,11 +61,11 @@ class FormSection extends StatelessWidget {
|
||||
builder: (context, state) {
|
||||
if (state is TextUpdated) {
|
||||
return TextWidget().text14W400(
|
||||
"${state.charactersLeft} ${AppText.charactersLeft}",
|
||||
"${state.charactersLeft} ${localizations.translate(AppText.charactersLeft)}",
|
||||
clr: AppColor.descriptionText);
|
||||
}
|
||||
return TextWidget().text14W400(
|
||||
"350 ${AppText.charactersLeft}",
|
||||
"350 ${localizations.translate(AppText.charactersLeft)}",
|
||||
clr: AppColor.descriptionText);
|
||||
},
|
||||
),
|
||||
@@ -82,7 +85,8 @@ class FormSection extends StatelessWidget {
|
||||
child: SizedBox(
|
||||
width: 0.85.sw,
|
||||
child: TextWidget().text14W500(
|
||||
AppText.iUnderstandAndAgreeThatmyDataWillBeDeleted,
|
||||
localizations.translate(
|
||||
AppText.iUnderstandAndAgreeThatmyDataWillBeDeleted),
|
||||
clr: AppColor.charcoalColor,
|
||||
txtAlign: TextAlign.start,
|
||||
),
|
||||
@@ -97,7 +101,7 @@ class FormSection extends StatelessWidget {
|
||||
child: SizedBox(
|
||||
width: 0.75.sw,
|
||||
child: TextWidget().text14W500(
|
||||
AppText.pleaseCheckThisField,
|
||||
localizations.translate(AppText.pleaseCheckThisField),
|
||||
clr: AppColor.txtErrorColor,
|
||||
txtAlign: TextAlign.start,
|
||||
),
|
||||
|
||||
@@ -6,6 +6,8 @@ import 'package:tanami_app/core/styles/app_images.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
|
||||
class TopSection extends StatelessWidget {
|
||||
const TopSection({
|
||||
super.key,
|
||||
@@ -13,6 +15,7 @@ class TopSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
@@ -24,7 +27,7 @@ class TopSection extends StatelessWidget {
|
||||
),
|
||||
const Gap(30),
|
||||
TextWidget().text20W700(
|
||||
AppText.weAreSadToSeeYouGo,
|
||||
localizations.translate(AppText.weAreSadToSeeYouGo),
|
||||
clr: AppColor.charcoalColor,
|
||||
),
|
||||
],
|
||||
|
||||
@@ -6,6 +6,7 @@ import 'package:google_fonts/google_fonts.dart';
|
||||
import 'package:tanami_app/core/styles/app_color.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/appbar_widget.dart';
|
||||
|
||||
class FAQScreen extends StatefulWidget {
|
||||
@@ -20,6 +21,7 @@ class _AccountappState extends State<FAQScreen> {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Scaffold(
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
appBar: const AppBarWidget(
|
||||
@@ -35,7 +37,7 @@ class _AccountappState extends State<FAQScreen> {
|
||||
Padding(
|
||||
padding: EdgeInsets.only(left: 16.w, top: 23.h),
|
||||
child: Text(
|
||||
AppText.faqTitle,
|
||||
localizations.translate(AppText.faqTitle),
|
||||
style: GoogleFonts.dmSans(
|
||||
fontSize: 18.sp,
|
||||
color: AppColor.charcoalColor,
|
||||
|
||||
@@ -9,6 +9,7 @@ import '../../../../core/routes/route_name.dart';
|
||||
import '../../../../core/routes/routes.dart';
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/button_widget.dart';
|
||||
import '../../../../shared/components/text_widget.dart';
|
||||
import '../../../countrySelection/presentation/bloc/choose_country_bloc.dart';
|
||||
@@ -23,6 +24,7 @@ class RestorePasswordBottomSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final radioBloc = context.read<RadioBloc>();
|
||||
return Column(
|
||||
children: [
|
||||
@@ -75,7 +77,7 @@ class RestorePasswordBottomSection extends StatelessWidget {
|
||||
)
|
||||
: null;
|
||||
},
|
||||
text: AppText.submitText,
|
||||
text: localizations.translate(AppText.submitText),
|
||||
clr: isButtonEnabled
|
||||
? AppColor.primaryColor2
|
||||
: AppColor.inactiveBtnColor,
|
||||
@@ -88,7 +90,8 @@ class RestorePasswordBottomSection extends StatelessWidget {
|
||||
function: () {
|
||||
goRouter.pop();
|
||||
},
|
||||
text: TextWidget().text14W700(AppText.backText,
|
||||
text: TextWidget().text14W700(
|
||||
localizations.translate(AppText.backText),
|
||||
clr: AppColor.textLabelColor,
|
||||
textDecoration: TextDecoration.underline)),
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@ import 'package:gap/gap.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/features/forgotPassword/presentation/bloc/restore_password_bloc.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/bloc/password_field/password_visibility_bloc.dart';
|
||||
import '../../../../shared/components/form_label_textfield.dart';
|
||||
|
||||
@@ -12,6 +13,7 @@ class RestorePasswordForm extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final restorePasswordBloc = context.read<RestorePasswordBloc>();
|
||||
|
||||
// Reset fields when the screen is built
|
||||
@@ -32,7 +34,7 @@ class RestorePasswordForm extends StatelessWidget {
|
||||
BlocProvider(
|
||||
create: (_) => PasswordVisibilityBloc(),
|
||||
child: FormLabelTextField(
|
||||
hintText: AppText.enterPassword,
|
||||
hintText: localizations.translate(AppText.enterPassword),
|
||||
title: "New Password",
|
||||
type: AppText.password.toLowerCase(),
|
||||
textEditingController: restorePasswordBloc.passwordTextField,
|
||||
@@ -42,8 +44,8 @@ class RestorePasswordForm extends StatelessWidget {
|
||||
BlocProvider(
|
||||
create: (_) => PasswordVisibilityBloc(),
|
||||
child: FormLabelTextField(
|
||||
hintText: AppText.repeatPasswordText,
|
||||
title: AppText.repeatPasswordText,
|
||||
hintText: localizations.translate(AppText.repeatPasswordText),
|
||||
title: localizations.translate(AppText.repeatPasswordText),
|
||||
type: AppText.password.toLowerCase(),
|
||||
textEditingController:
|
||||
restorePasswordBloc.repeatPasswordTextField,
|
||||
|
||||
@@ -9,6 +9,7 @@ import '../../../../core/routes/route_name.dart';
|
||||
import '../../../../core/routes/routes.dart';
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/button_widget.dart';
|
||||
import '../../../../shared/components/text_widget.dart';
|
||||
import '../../../countrySelection/presentation/bloc/choose_country_bloc.dart';
|
||||
@@ -23,6 +24,7 @@ class RestorePasswordPhoneVerificationBottomSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final radioBloc = context.read<RadioBloc>();
|
||||
return Column(
|
||||
children: [
|
||||
@@ -78,7 +80,7 @@ class RestorePasswordPhoneVerificationBottomSection extends StatelessWidget {
|
||||
)
|
||||
: null;
|
||||
},
|
||||
text: AppText.nextText,
|
||||
text: localizations.translate(AppText.nextText),
|
||||
clr: isButtonEnabled
|
||||
? AppColor.primaryColor2
|
||||
: AppColor.inactiveBtnColor,
|
||||
@@ -91,7 +93,8 @@ class RestorePasswordPhoneVerificationBottomSection extends StatelessWidget {
|
||||
function: () {
|
||||
goRouter.pop();
|
||||
},
|
||||
text: TextWidget().text14W700(AppText.backText,
|
||||
text: TextWidget().text14W700(
|
||||
localizations.translate(AppText.backText),
|
||||
clr: AppColor.textLabelColor,
|
||||
textDecoration: TextDecoration.underline)),
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@ import 'package:gap/gap.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/core/utils/constant/country_flag_data.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/form_label_textfield.dart';
|
||||
import '../../../countrySelection/presentation/bloc/choose_country_bloc.dart';
|
||||
import '../../../countrySelection/presentation/bloc/choose_country_state.dart';
|
||||
@@ -14,6 +15,7 @@ class RestorePasswordPhoneVerificationForm extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final restorePasswordBloc =
|
||||
context.read<RestorePasswordPhoneVerificationBloc>();
|
||||
|
||||
@@ -54,8 +56,8 @@ class RestorePasswordPhoneVerificationForm extends StatelessWidget {
|
||||
width: 20,
|
||||
height: 20,
|
||||
),
|
||||
hintText: AppText.chooseCountry,
|
||||
title: AppText.countryOfResidence,
|
||||
hintText: localizations.translate(AppText.chooseCountry),
|
||||
title: localizations.translate(AppText.countryOfResidence),
|
||||
type: "country selection",
|
||||
textEditingController:
|
||||
restorePasswordBloc.countrySelectionTextField,
|
||||
@@ -70,7 +72,7 @@ class RestorePasswordPhoneVerificationForm extends StatelessWidget {
|
||||
height: 20,
|
||||
),
|
||||
hintText: "+0 (000) 000 00 00",
|
||||
title: AppText.phoneNumber,
|
||||
title: localizations.translate(AppText.phoneNumber),
|
||||
type: "phone number",
|
||||
textEditingController:
|
||||
restorePasswordBloc.phoneNumberTextField,
|
||||
|
||||
@@ -6,6 +6,8 @@ import 'package:tanami_app/core/styles/app_images.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
|
||||
class RestorePasswordPhoneVerificationTopSection extends StatelessWidget {
|
||||
const RestorePasswordPhoneVerificationTopSection({
|
||||
super.key,
|
||||
@@ -13,6 +15,7 @@ class RestorePasswordPhoneVerificationTopSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
@@ -24,14 +27,15 @@ class RestorePasswordPhoneVerificationTopSection extends StatelessWidget {
|
||||
),
|
||||
const Gap(60),
|
||||
TextWidget().text20W700(
|
||||
AppText.restorePasswordText,
|
||||
localizations.translate(AppText.restorePasswordText),
|
||||
clr: AppColor.charcoalColor,
|
||||
),
|
||||
const Gap(10),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 75),
|
||||
child: TextWidget().text14W500(
|
||||
AppText.toRestorePasswordPleaseEnterPhoneNumber,
|
||||
localizations
|
||||
.translate(AppText.toRestorePasswordPleaseEnterPhoneNumber),
|
||||
clr: AppColor.smokeGrayColor,
|
||||
),
|
||||
),
|
||||
|
||||
@@ -6,6 +6,8 @@ import 'package:tanami_app/core/styles/app_images.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
|
||||
class RestorePasswordTopSection extends StatelessWidget {
|
||||
const RestorePasswordTopSection({
|
||||
super.key,
|
||||
@@ -13,6 +15,7 @@ class RestorePasswordTopSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
@@ -24,14 +27,14 @@ class RestorePasswordTopSection extends StatelessWidget {
|
||||
),
|
||||
const Gap(60),
|
||||
TextWidget().text20W700(
|
||||
AppText.restorePasswordText,
|
||||
localizations.translate(AppText.restorePasswordText),
|
||||
clr: AppColor.charcoalColor,
|
||||
),
|
||||
const Gap(10),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 75),
|
||||
child: TextWidget().text14W500(
|
||||
AppText.createNewPasswordText,
|
||||
localizations.translate(AppText.createNewPasswordText),
|
||||
clr: AppColor.smokeGrayColor,
|
||||
),
|
||||
),
|
||||
|
||||
@@ -7,6 +7,7 @@ import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/appbar_widget.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../widgets/bottom_section.dart';
|
||||
import '../widgets/language_change_list.dart';
|
||||
|
||||
@@ -15,12 +16,13 @@ class LanguageChangeLayout extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Scaffold(
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
bottomNavigationBar: bottomSection(),
|
||||
appBar: const AppBarWidget(
|
||||
bottomNavigationBar: bottomSection(context),
|
||||
appBar: AppBarWidget(
|
||||
height: 75,
|
||||
titleTxt: AppText.languageText,
|
||||
titleTxt: localizations.translate(AppText.languageText),
|
||||
),
|
||||
body: Padding(
|
||||
padding: const EdgeInsets.all(16.0),
|
||||
@@ -40,7 +42,8 @@ class LanguageChangeLayout extends StatelessWidget {
|
||||
SizedBox(
|
||||
width: 0.8.sw,
|
||||
child: TextWidget().text12W500(
|
||||
AppText.changingTheLanguageWillReloadApp,
|
||||
localizations
|
||||
.translate(AppText.changingTheLanguageWillReloadApp),
|
||||
clr: AppColor.languageTextColor,
|
||||
),
|
||||
)
|
||||
|
||||
@@ -1,14 +1,19 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:gap/gap.dart';
|
||||
|
||||
import '../../../../core/routes/routes.dart';
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/bloc/language/lng_bloc.dart';
|
||||
import '../../../../shared/components/bloc/language/lng_event.dart';
|
||||
import '../../../../shared/components/button_widget.dart';
|
||||
import '../../../../shared/components/text_widget.dart';
|
||||
|
||||
Widget bottomSection() {
|
||||
Widget bottomSection(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
@@ -22,9 +27,15 @@ Widget bottomSection() {
|
||||
child: ButtonWidget().elevatedBtn(
|
||||
txtClr: AppColor.plainWhite,
|
||||
function: () {
|
||||
var newLocale =
|
||||
context.read<LocalizationBloc>().state.locale.languageCode ==
|
||||
'en'
|
||||
? const Locale('ar')
|
||||
: const Locale('en');
|
||||
context.read<LocalizationBloc>().add(ChangeLanguage(newLocale));
|
||||
goRouter.pop();
|
||||
},
|
||||
text: AppText.submitText,
|
||||
text: localizations.translate(AppText.submitText),
|
||||
clr: AppColor.primaryColor2,
|
||||
),
|
||||
),
|
||||
@@ -32,7 +43,8 @@ Widget bottomSection() {
|
||||
function: () {
|
||||
goRouter.pop();
|
||||
},
|
||||
text: TextWidget().text14W700(AppText.backText,
|
||||
text: TextWidget().text14W700(
|
||||
localizations.translate(AppText.backText),
|
||||
clr: AppColor.textLabelColor,
|
||||
textDecoration: TextDecoration.underline)),
|
||||
const Gap(20),
|
||||
|
||||
@@ -10,6 +10,7 @@ import '../../../../core/routes/route_name.dart';
|
||||
import '../../../../core/routes/routes.dart';
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/button_widget.dart';
|
||||
import '../../../../shared/components/text_widget.dart';
|
||||
import '../../../countrySelection/presentation/bloc/choose_country_bloc.dart';
|
||||
@@ -26,6 +27,7 @@ class BottomSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
SecureStorageService secureStorageService = SecureStorageService();
|
||||
final radioBloc = context.read<RadioBloc>();
|
||||
return Column(
|
||||
@@ -38,7 +40,8 @@ class BottomSection extends StatelessWidget {
|
||||
goRouter
|
||||
.pushNamed(RouteName.forgotPasswordPhoneVerificationScreen);
|
||||
},
|
||||
text: TextWidget().text15W400(AppText.forgotPassword,
|
||||
text: TextWidget().text15W400(
|
||||
localizations.translate(AppText.forgotPassword),
|
||||
clr: AppColor.forgotPassButtonColor,
|
||||
textDecoration: TextDecoration.underline)),
|
||||
),
|
||||
@@ -98,7 +101,7 @@ class BottomSection extends StatelessWidget {
|
||||
)
|
||||
: null;
|
||||
},
|
||||
text: AppText.loginText,
|
||||
text: localizations.translate(AppText.loginText),
|
||||
clr: isButtonEnabled
|
||||
? AppColor.primaryColor2
|
||||
: AppColor.inactiveBtnColor,
|
||||
@@ -120,8 +123,8 @@ class BottomSection extends StatelessWidget {
|
||||
clr: AppColor.plainWhite,
|
||||
borderClr: AppColor.txtBorderColor,
|
||||
text: fromScreen == "forgot-pin"
|
||||
? AppText.backText
|
||||
: AppText.signUpText,
|
||||
? localizations.translate(AppText.backText)
|
||||
: localizations.translate(AppText.signUpText),
|
||||
),
|
||||
const Gap(15),
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@ import 'package:gap/gap.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/core/utils/constant/country_flag_data.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/bloc/password_field/password_visibility_bloc.dart';
|
||||
import '../../../../shared/components/form_label_textfield.dart';
|
||||
import '../../../countrySelection/presentation/bloc/choose_country_bloc.dart';
|
||||
@@ -15,6 +16,7 @@ class LoginForm extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final loginBloc = context.read<LoginBloc>();
|
||||
|
||||
// Reset fields when the screen is built
|
||||
@@ -53,8 +55,8 @@ class LoginForm extends StatelessWidget {
|
||||
width: 20,
|
||||
height: 20,
|
||||
),
|
||||
hintText: AppText.chooseCountry,
|
||||
title: AppText.countryOfResidence,
|
||||
hintText: localizations.translate(AppText.chooseCountry),
|
||||
title: localizations.translate(AppText.countryOfResidence),
|
||||
type: "country selection",
|
||||
textEditingController: loginBloc.countrySelectionTextField,
|
||||
),
|
||||
@@ -68,7 +70,7 @@ class LoginForm extends StatelessWidget {
|
||||
height: 20,
|
||||
),
|
||||
hintText: "+0 (000) 000 00 00",
|
||||
title: AppText.phoneNumber,
|
||||
title: localizations.translate(AppText.phoneNumber),
|
||||
type: "phone number",
|
||||
textEditingController: loginBloc.phoneNumberTextField,
|
||||
),
|
||||
@@ -76,8 +78,8 @@ class LoginForm extends StatelessWidget {
|
||||
BlocProvider(
|
||||
create: (_) => PasswordVisibilityBloc(),
|
||||
child: FormLabelTextField(
|
||||
hintText: AppText.enterPassword,
|
||||
title: AppText.password,
|
||||
hintText: localizations.translate(AppText.enterPassword),
|
||||
title: localizations.translate(AppText.password),
|
||||
type: "password",
|
||||
textEditingController: loginBloc.passwordTextField,
|
||||
),
|
||||
|
||||
@@ -6,6 +6,8 @@ import 'package:tanami_app/core/styles/app_images.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
|
||||
class TopSection extends StatelessWidget {
|
||||
final String fromScreen;
|
||||
const TopSection({
|
||||
@@ -15,6 +17,7 @@ class TopSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
@@ -26,7 +29,7 @@ class TopSection extends StatelessWidget {
|
||||
),
|
||||
const Gap(60),
|
||||
TextWidget().text20W700(
|
||||
AppText.welcomeText,
|
||||
localizations.translate(AppText.welcomeText),
|
||||
clr: AppColor.charcoalColor,
|
||||
),
|
||||
const Gap(10),
|
||||
@@ -34,8 +37,9 @@ class TopSection extends StatelessWidget {
|
||||
padding: const EdgeInsets.symmetric(horizontal: 75),
|
||||
child: TextWidget().text14W500(
|
||||
fromScreen == "forgot-pin"
|
||||
? AppText.toGetYourAccountPleaseSetYourInfo
|
||||
: AppText.pleaseEnterLoginDetails,
|
||||
? localizations
|
||||
.translate(AppText.toGetYourAccountPleaseSetYourInfo)
|
||||
: localizations.translate(AppText.pleaseEnterLoginDetails),
|
||||
clr: AppColor.smokeGrayColor,
|
||||
),
|
||||
),
|
||||
|
||||
@@ -9,6 +9,7 @@ import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/loader.dart';
|
||||
import 'package:tanami_app/shared/components/toast_message.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../bloc/otp_bloc.dart';
|
||||
import '../bloc/otp_event.dart';
|
||||
import '../bloc/otp_state.dart';
|
||||
@@ -22,6 +23,7 @@ class OtpFillSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return BlocConsumer<OtpBloc, OtpState>(
|
||||
listener: (context, state) {
|
||||
if (state is OtpSubmitting) {
|
||||
@@ -32,7 +34,7 @@ class OtpFillSection extends StatelessWidget {
|
||||
|
||||
successToastMessage(
|
||||
context,
|
||||
AppText.otpVerifiedSucessfully,
|
||||
localizations.translate(AppText.otpVerifiedSucessfully),
|
||||
);
|
||||
|
||||
if (fromScreen == "forgot-password") {
|
||||
@@ -48,8 +50,8 @@ class OtpFillSection extends StatelessWidget {
|
||||
}
|
||||
} else if (state is OtpSubmissionFailure) {
|
||||
goRouter.pop();
|
||||
errorToastMessage(
|
||||
context, '${AppText.otpVerifiedFailed} ${state.error}');
|
||||
errorToastMessage(context,
|
||||
'${localizations.translate(AppText.otpVerifiedFailed)} ${state.error}');
|
||||
}
|
||||
},
|
||||
builder: (context, state) {
|
||||
|
||||
@@ -5,6 +5,7 @@ import 'package:gap/gap.dart';
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_images.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/text_widget.dart';
|
||||
|
||||
class OtpTopSection extends StatelessWidget {
|
||||
@@ -12,6 +13,7 @@ class OtpTopSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
@@ -23,14 +25,14 @@ class OtpTopSection extends StatelessWidget {
|
||||
),
|
||||
const Gap(125),
|
||||
TextWidget().text20W700(
|
||||
AppText.checkYourMessages,
|
||||
localizations.translate(AppText.checkYourMessages),
|
||||
clr: AppColor.charcoalColor,
|
||||
),
|
||||
const Gap(25),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 35),
|
||||
child: TextWidget().text14W500(
|
||||
AppText.referToSameOtpMessage,
|
||||
localizations.translate(AppText.referToSameOtpMessage),
|
||||
clr: AppColor.smokeGrayColor,
|
||||
),
|
||||
),
|
||||
|
||||
@@ -5,6 +5,7 @@ import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
import 'package:tanami_app/shared/components/toast_message.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../bloc/timer/timer_bloc.dart';
|
||||
import '../bloc/timer/timer_state.dart';
|
||||
|
||||
@@ -13,6 +14,7 @@ class ResendOtpSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return BlocBuilder<TimerBloc, TimerState>(
|
||||
builder: (context, state) {
|
||||
return Padding(
|
||||
@@ -29,7 +31,7 @@ class ResendOtpSection extends StatelessWidget {
|
||||
successToastMessage(context, "OTP Resend Sucessfully !");
|
||||
},
|
||||
child: TextWidget().text14W500(
|
||||
AppText.resendSms,
|
||||
localizations.translate(AppText.resendSms),
|
||||
clr: AppColor.plainBlack,
|
||||
textDecoration: TextDecoration.underline,
|
||||
),
|
||||
|
||||
@@ -11,6 +11,7 @@ import '../../../../core/routes/route_name.dart';
|
||||
import '../../../../core/routes/routes.dart';
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/button_widget.dart';
|
||||
import '../../../countrySelection/presentation/bloc/choose_country_bloc.dart';
|
||||
import '../bloc/register_bloc.dart';
|
||||
@@ -22,6 +23,7 @@ class RegisterBottomSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final radioBloc = context.read<RadioBloc>();
|
||||
return Column(
|
||||
children: [
|
||||
@@ -79,7 +81,7 @@ class RegisterBottomSection extends StatelessWidget {
|
||||
)
|
||||
: null;
|
||||
},
|
||||
text: AppText.nextText,
|
||||
text: localizations.translate(AppText.nextText),
|
||||
clr: isButtonEnabled
|
||||
? AppColor.primaryColor2
|
||||
: AppColor.inactiveBtnColor,
|
||||
@@ -95,7 +97,7 @@ class RegisterBottomSection extends StatelessWidget {
|
||||
radioBloc.resetSelection();
|
||||
goRouter.pop();
|
||||
},
|
||||
text: AppText.backText,
|
||||
text: localizations.translate(AppText.backText),
|
||||
)
|
||||
],
|
||||
);
|
||||
|
||||
@@ -4,6 +4,7 @@ import 'package:gap/gap.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/core/utils/constant/country_flag_data.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/form_label_textfield.dart';
|
||||
import '../../../countrySelection/presentation/bloc/choose_country_bloc.dart';
|
||||
import '../../../countrySelection/presentation/bloc/choose_country_state.dart';
|
||||
@@ -14,6 +15,7 @@ class RegisterForm extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final loginBloc = context.read<RegisterBloc>();
|
||||
int selectedCountry = -1;
|
||||
return BlocConsumer<RadioBloc, RadioState>(listener: (context, state) {
|
||||
@@ -49,8 +51,8 @@ class RegisterForm extends StatelessWidget {
|
||||
width: 20,
|
||||
height: 20,
|
||||
),
|
||||
hintText: AppText.chooseCountry,
|
||||
title: AppText.countryOfResidence,
|
||||
hintText: localizations.translate(AppText.chooseCountry),
|
||||
title: localizations.translate(AppText.countryOfResidence),
|
||||
type: "country selection",
|
||||
textEditingController: loginBloc.countrySelectionTextField,
|
||||
),
|
||||
@@ -64,7 +66,7 @@ class RegisterForm extends StatelessWidget {
|
||||
height: 20,
|
||||
),
|
||||
hintText: "+0 (000) 000 00 00",
|
||||
title: AppText.phoneNumber,
|
||||
title: localizations.translate(AppText.phoneNumber),
|
||||
type: "phone number",
|
||||
textEditingController: loginBloc.phoneNumberTextField,
|
||||
),
|
||||
|
||||
@@ -7,12 +7,14 @@ import 'package:tanami_app/core/styles/app_color.dart';
|
||||
import 'package:tanami_app/shared/components/button_widget.dart';
|
||||
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
|
||||
class RegisterStepBottomSection extends StatelessWidget {
|
||||
const RegisterStepBottomSection({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Padding(
|
||||
padding: const EdgeInsets.symmetric(vertical: 40.0),
|
||||
child: Column(
|
||||
@@ -29,7 +31,7 @@ class RegisterStepBottomSection extends StatelessWidget {
|
||||
RouteName.registerScreen,
|
||||
);
|
||||
},
|
||||
text: AppText.getStarted,
|
||||
text: localizations.translate(AppText.getStarted),
|
||||
txtClr: AppColor.plainWhite,
|
||||
clr: AppColor.primaryColor2,
|
||||
),
|
||||
@@ -43,7 +45,7 @@ class RegisterStepBottomSection extends StatelessWidget {
|
||||
"fromScreen": "registerStep",
|
||||
});
|
||||
},
|
||||
text: AppText.loginText,
|
||||
text: localizations.translate(AppText.loginText),
|
||||
)
|
||||
],
|
||||
),
|
||||
|
||||
@@ -6,11 +6,14 @@ import 'package:tanami_app/core/styles/app_images.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
|
||||
class RegisterStepTopSection extends StatelessWidget {
|
||||
const RegisterStepTopSection({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
@@ -22,14 +25,14 @@ class RegisterStepTopSection extends StatelessWidget {
|
||||
),
|
||||
const Gap(30),
|
||||
TextWidget().text20W700(
|
||||
AppText.getStartedToday,
|
||||
localizations.translate(AppText.getStartedToday),
|
||||
clr: AppColor.charcoalColor,
|
||||
),
|
||||
const Gap(10),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 75),
|
||||
child: TextWidget().text14W500(
|
||||
AppText.setupYourTanamiAccountToBegin,
|
||||
localizations.translate(AppText.setupYourTanamiAccountToBegin),
|
||||
clr: AppColor.smokeGrayColor,
|
||||
),
|
||||
),
|
||||
|
||||
@@ -6,11 +6,14 @@ import 'package:tanami_app/core/styles/app_images.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
|
||||
class RegisterTopSection extends StatelessWidget {
|
||||
const RegisterTopSection({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
@@ -22,14 +25,14 @@ class RegisterTopSection extends StatelessWidget {
|
||||
),
|
||||
const Gap(60),
|
||||
TextWidget().text20W700(
|
||||
AppText.welcome,
|
||||
localizations.translate(AppText.welcome),
|
||||
clr: AppColor.charcoalColor,
|
||||
),
|
||||
const Gap(10),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 75),
|
||||
child: TextWidget().text14W500(
|
||||
AppText.selectYourCountryOfResidence,
|
||||
localizations.translate(AppText.selectYourCountryOfResidence),
|
||||
clr: AppColor.smokeGrayColor,
|
||||
),
|
||||
),
|
||||
|
||||
@@ -16,6 +16,7 @@ import 'package:tanami_app/shared/components/toast_message.dart';
|
||||
import '../../../../core/routes/routes.dart';
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/bloc/checkbox/checkbox_bloc.dart';
|
||||
import '../../../../shared/components/bloc/checkbox/checkbox_state.dart';
|
||||
import '../../../../shared/components/button_widget.dart';
|
||||
@@ -29,6 +30,7 @@ class RegisterUserBottomSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
children: [
|
||||
const Gap(40),
|
||||
@@ -39,7 +41,7 @@ class RegisterUserBottomSection extends StatelessWidget {
|
||||
Expanded(
|
||||
child: RichText(
|
||||
text: TextSpan(
|
||||
text: AppText.iAgreeToThe,
|
||||
text: localizations.translate(AppText.iAgreeToThe),
|
||||
style: GoogleFonts.dmSans(
|
||||
color: AppColor.charcoalColor,
|
||||
fontSize: 14,
|
||||
@@ -53,20 +55,21 @@ class RegisterUserBottomSection extends StatelessWidget {
|
||||
fontWeight: FontWeight.w500,
|
||||
decoration: TextDecoration.underline,
|
||||
),
|
||||
text: AppText.termsAndCondition,
|
||||
text:
|
||||
localizations.translate(AppText.termsAndCondition),
|
||||
recognizer: TapGestureRecognizer()
|
||||
..onTap = () => log('Tap Here onTap'),
|
||||
),
|
||||
const TextSpan(
|
||||
text: AppText.andThe,
|
||||
style: TextStyle(
|
||||
TextSpan(
|
||||
text: localizations.translate(AppText.andThe),
|
||||
style: const TextStyle(
|
||||
color: AppColor.charcoalColor,
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
),
|
||||
TextSpan(
|
||||
text: AppText.privacyPolicy,
|
||||
text: localizations.translate(AppText.privacyPolicy),
|
||||
recognizer: TapGestureRecognizer()
|
||||
..onTap = () => log('Tap Here onTap'),
|
||||
style: const TextStyle(
|
||||
@@ -152,7 +155,7 @@ class RegisterUserBottomSection extends StatelessWidget {
|
||||
)
|
||||
: null;
|
||||
},
|
||||
text: AppText.nextText,
|
||||
text: localizations.translate(AppText.nextText),
|
||||
clr: isButtonEnabled
|
||||
? AppColor.primaryColor2
|
||||
: AppColor.inactiveBtnColor,
|
||||
@@ -166,7 +169,7 @@ class RegisterUserBottomSection extends StatelessWidget {
|
||||
function: () {
|
||||
goRouter.pop();
|
||||
},
|
||||
text: AppText.backText,
|
||||
text: localizations.translate(AppText.backText),
|
||||
borderClr: AppColor.txtBorderColor,
|
||||
),
|
||||
],
|
||||
|
||||
@@ -3,6 +3,7 @@ import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:gap/gap.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/bloc/password_field/password_visibility_bloc.dart';
|
||||
import '../../../../shared/components/form_label_textfield.dart';
|
||||
import '../bloc/register_user_bloc.dart';
|
||||
@@ -12,6 +13,7 @@ class RegisterUserForm extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final registerUserBloc = context.read<RegisterUserBloc>();
|
||||
|
||||
return Form(
|
||||
@@ -27,22 +29,22 @@ class RegisterUserForm extends StatelessWidget {
|
||||
children: [
|
||||
const Gap(50),
|
||||
FormLabelTextField(
|
||||
hintText: AppText.enterFirstName,
|
||||
title: AppText.firstNameText,
|
||||
type: AppText.firstNameText,
|
||||
hintText: localizations.translate(AppText.enterFirstName),
|
||||
title: localizations.translate(AppText.firstNameText),
|
||||
type: localizations.translate(AppText.firstNameText),
|
||||
textEditingController: registerUserBloc.firstNameTextField,
|
||||
),
|
||||
const Gap(12),
|
||||
FormLabelTextField(
|
||||
hintText: AppText.enterLastName,
|
||||
title: AppText.lastNameText,
|
||||
hintText: localizations.translate(AppText.enterLastName),
|
||||
title: localizations.translate(AppText.lastNameText),
|
||||
type: AppText.lastNameText,
|
||||
textEditingController: registerUserBloc.lastNameTextField,
|
||||
),
|
||||
const Gap(12),
|
||||
FormLabelTextField(
|
||||
hintText: AppText.enterEmail,
|
||||
title: AppText.emailText,
|
||||
hintText: localizations.translate(AppText.enterEmail),
|
||||
title: localizations.translate(AppText.emailText),
|
||||
type: AppText.emailText,
|
||||
textEditingController: registerUserBloc.emailTextField,
|
||||
),
|
||||
@@ -50,8 +52,8 @@ class RegisterUserForm extends StatelessWidget {
|
||||
BlocProvider(
|
||||
create: (_) => PasswordVisibilityBloc(),
|
||||
child: FormLabelTextField(
|
||||
hintText: AppText.enterPassword,
|
||||
title: AppText.password,
|
||||
hintText: localizations.translate(AppText.enterPassword),
|
||||
title: localizations.translate(AppText.password),
|
||||
type: AppText.password.toLowerCase(),
|
||||
textEditingController: registerUserBloc.passwordTextField,
|
||||
),
|
||||
@@ -60,8 +62,8 @@ class RegisterUserForm extends StatelessWidget {
|
||||
BlocProvider(
|
||||
create: (_) => PasswordVisibilityBloc(),
|
||||
child: FormLabelTextField(
|
||||
hintText: AppText.repeatPasswordText,
|
||||
title: AppText.repeatPasswordText,
|
||||
hintText: localizations.translate(AppText.repeatPasswordText),
|
||||
title: localizations.translate(AppText.repeatPasswordText),
|
||||
type: AppText.password.toLowerCase(),
|
||||
textEditingController:
|
||||
registerUserBloc.repeatPasswordTextField,
|
||||
|
||||
@@ -6,11 +6,14 @@ import 'package:tanami_app/core/styles/app_images.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
|
||||
class RegisterUserTopSection extends StatelessWidget {
|
||||
const RegisterUserTopSection({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
@@ -24,7 +27,7 @@ class RegisterUserTopSection extends StatelessWidget {
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 75),
|
||||
child: TextWidget().text14W500(
|
||||
AppText.enterNameEmailUniquePassword,
|
||||
localizations.translate(AppText.enterNameEmailUniquePassword),
|
||||
clr: AppColor.smokeGrayColor,
|
||||
),
|
||||
),
|
||||
|
||||
@@ -3,6 +3,7 @@ import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../core/utils/secure/secure_storage_service.dart';
|
||||
import '../../../../shared/components/appbar_widget.dart';
|
||||
import '../bloc/pin_bloc.dart';
|
||||
@@ -13,12 +14,13 @@ class ConfirmPinScreen extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final secureStorageService = SecureStorageService();
|
||||
return Scaffold(
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
appBar: const AppBarWidget(
|
||||
appBar: AppBarWidget(
|
||||
height: 75,
|
||||
titleTxt: AppText.createPinCode,
|
||||
titleTxt: localizations.translate(AppText.createPinCode),
|
||||
showLeading: true,
|
||||
),
|
||||
resizeToAvoidBottomInset: true,
|
||||
|
||||
@@ -3,6 +3,7 @@ import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
|
||||
import '../../../../core/styles/app_color.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../core/utils/secure/secure_storage_service.dart';
|
||||
import '../../../../shared/components/appbar_widget.dart';
|
||||
import '../../../../shared/components/exit_app_dialog.dart';
|
||||
@@ -15,6 +16,7 @@ class PinScreen extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final secureStorageService = SecureStorageService();
|
||||
return WillPopScope(
|
||||
onWillPop: () async {
|
||||
@@ -31,8 +33,8 @@ class PinScreen extends StatelessWidget {
|
||||
? AppBarWidget(
|
||||
height: 75,
|
||||
titleTxt: fromScreen == "reset-pin"
|
||||
? AppText.changePinCode
|
||||
: AppText.createPinCode,
|
||||
? localizations.translate(AppText.changePinCode)
|
||||
: localizations.translate(AppText.createPinCode),
|
||||
showLeading: fromScreen == "reset-pin" ? true : false,
|
||||
)
|
||||
: null,
|
||||
|
||||
@@ -6,12 +6,14 @@ import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../core/styles/app_images.dart';
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
|
||||
class ConfirmPinTopSection extends StatelessWidget {
|
||||
const ConfirmPinTopSection({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
children: [
|
||||
const Gap(70),
|
||||
@@ -22,7 +24,7 @@ class ConfirmPinTopSection extends StatelessWidget {
|
||||
),
|
||||
const Gap(40),
|
||||
TextWidget().text14W500(
|
||||
AppText.confirmPinCode,
|
||||
localizations.translate(AppText.confirmPinCode),
|
||||
clr: AppColor.textLabelColor,
|
||||
)
|
||||
],
|
||||
|
||||
@@ -8,7 +8,10 @@ import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/button_widget.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
|
||||
void forgotPinDialog(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
showDialog(
|
||||
context: context,
|
||||
builder: (BuildContext context) {
|
||||
@@ -26,7 +29,8 @@ void forgotPinDialog(BuildContext context) {
|
||||
child: Column(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
TextWidget().text17W700(AppText.notificationText,
|
||||
TextWidget().text17W700(
|
||||
localizations.translate(AppText.notificationText),
|
||||
clr: AppColor.plainBlack),
|
||||
const Gap(25),
|
||||
Padding(
|
||||
@@ -34,7 +38,8 @@ void forgotPinDialog(BuildContext context) {
|
||||
horizontal: 25,
|
||||
),
|
||||
child: TextWidget().text15W500(
|
||||
AppText.toRestorePinYouWillBeLoggedOut,
|
||||
localizations
|
||||
.translate(AppText.toRestorePinYouWillBeLoggedOut),
|
||||
clr: AppColor.hintTextColor,
|
||||
),
|
||||
),
|
||||
@@ -44,7 +49,7 @@ void forgotPinDialog(BuildContext context) {
|
||||
height: 55.h,
|
||||
child: ButtonWidget().elevatedBtn(
|
||||
txtClr: AppColor.plainWhite,
|
||||
text: AppText.allowText,
|
||||
text: localizations.translate(AppText.allowText),
|
||||
clr: AppColor.primaryColor2,
|
||||
function: () {
|
||||
goRouter.pushNamed(RouteName.loginScreen, pathParameters: {
|
||||
@@ -57,7 +62,7 @@ void forgotPinDialog(BuildContext context) {
|
||||
const Gap(10),
|
||||
ButtonWidget().textBtn(
|
||||
text: TextWidget().text14W700(
|
||||
AppText.declineText,
|
||||
localizations.translate(AppText.declineText),
|
||||
textDecoration: TextDecoration.underline,
|
||||
clr: AppColor.textLabelColor,
|
||||
),
|
||||
|
||||
@@ -11,6 +11,7 @@ import 'package:tanami_app/features/securePin/presentation/widgets/forgot_pin_di
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
import 'package:tanami_app/shared/components/toast_message.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../bloc/pin_bloc.dart';
|
||||
|
||||
class PinKey extends StatelessWidget {
|
||||
@@ -22,6 +23,7 @@ class PinKey extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.end,
|
||||
children: [
|
||||
@@ -32,11 +34,13 @@ class PinKey extends StatelessWidget {
|
||||
state.error.isEmpty &&
|
||||
!state.verifiedOnce) {
|
||||
if (fromScreen == "login" || fromScreen == "LoginedInUser") {
|
||||
successToastMessage(context, AppText.pinVerifiedSucess);
|
||||
successToastMessage(context,
|
||||
localizations.translate(AppText.pinVerifiedSucess));
|
||||
goRouter.pushNamed(RouteName.mainScreen);
|
||||
} else if (fromScreen == "reset-pin") {
|
||||
log("Running this");
|
||||
successToastMessage(context, AppText.pinUpdatedSucess);
|
||||
successToastMessage(
|
||||
context, localizations.translate(AppText.pinUpdatedSucess));
|
||||
goRouter.pop();
|
||||
} else {
|
||||
context.read<PinBloc>().add(SavePinPressed());
|
||||
@@ -81,7 +85,7 @@ class PinKey extends StatelessWidget {
|
||||
right: 50,
|
||||
),
|
||||
child: TextWidget().text15W500(
|
||||
AppText.forgotPinCode,
|
||||
localizations.translate(AppText.forgotPinCode),
|
||||
clr: AppColor.hintTextColor,
|
||||
textDecoration: TextDecoration.underline,
|
||||
),
|
||||
|
||||
@@ -6,6 +6,7 @@ import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../../../core/styles/app_images.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
|
||||
class PinTopSection extends StatelessWidget {
|
||||
final String fromScreen;
|
||||
@@ -16,6 +17,7 @@ class PinTopSection extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
children: [
|
||||
const Gap(70),
|
||||
@@ -33,29 +35,31 @@ class PinTopSection extends StatelessWidget {
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
TextWidget().text14W500(AppText.welcomeBackText,
|
||||
TextWidget().text14W500(
|
||||
localizations.translate(AppText.welcomeBackText),
|
||||
clr: AppColor.smokeGrayColor),
|
||||
TextWidget()
|
||||
.text14W700(", Jayesh", clr: AppColor.plainBlack),
|
||||
],
|
||||
),
|
||||
TextWidget().text14W500(
|
||||
AppText.userYourAppPinToLoginEnterTanami,
|
||||
localizations
|
||||
.translate(AppText.userYourAppPinToLoginEnterTanami),
|
||||
clr: AppColor.smokeGrayColor),
|
||||
const Gap(25),
|
||||
TextWidget().text14W400(
|
||||
AppText.pinCode,
|
||||
localizations.translate(AppText.pinCode),
|
||||
clr: AppColor.textLabelColor,
|
||||
)
|
||||
],
|
||||
)
|
||||
: fromScreen == "forgot-pin" || fromScreen == "reset-pin"
|
||||
? TextWidget().text14W500(
|
||||
AppText.changePinCode,
|
||||
localizations.translate(AppText.changePinCode),
|
||||
clr: AppColor.textLabelColor,
|
||||
)
|
||||
: TextWidget().text14W500(
|
||||
AppText.createPinCode,
|
||||
localizations.translate(AppText.createPinCode),
|
||||
clr: AppColor.textLabelColor,
|
||||
)
|
||||
],
|
||||
|
||||
@@ -2,15 +2,18 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/text_widget.dart';
|
||||
import '../bloc/app_version/app_version_bloc.dart';
|
||||
import '../bloc/app_version/app_version_state.dart';
|
||||
import '../../../../shared/components/text_widget.dart';
|
||||
|
||||
class BottomVersionWidget extends StatelessWidget {
|
||||
const BottomVersionWidget({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
// A BlocBuilder widget that builds the UI based on the state of the AppVersionBloc
|
||||
return BlocBuilder<AppVersionBloc, AppVersionState>(
|
||||
builder: (context, state) {
|
||||
@@ -30,8 +33,9 @@ class BottomVersionWidget extends StatelessWidget {
|
||||
children: [
|
||||
// Display the application version text
|
||||
TextWidget().text12W400(
|
||||
'${AppText.splashVersionText}${state.version}'),
|
||||
TextWidget().text12W400(AppText.splashCopyrightText),
|
||||
'${localizations.translate(AppText.splashVersionText)}${state.version}'),
|
||||
TextWidget().text12W400(
|
||||
localizations.translate(AppText.splashCopyrightText)),
|
||||
],
|
||||
));
|
||||
// If the state is AppVersionError, display an error message
|
||||
|
||||
@@ -2,10 +2,12 @@ import 'package:flutter/material.dart';
|
||||
import 'package:tanami_app/core/styles/app_images.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import 'build_onboarding_page_widget.dart';
|
||||
|
||||
Widget buildPage(
|
||||
BuildContext context, int index, PageController pageController) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
switch (index) {
|
||||
case 0:
|
||||
return buildOnboardingPage(
|
||||
@@ -13,8 +15,8 @@ Widget buildPage(
|
||||
index: index,
|
||||
context,
|
||||
imageAsset: AppImages.firstWelcome,
|
||||
title: AppText.welcomeTitle1Text,
|
||||
description: AppText.welcomeDescription1Text,
|
||||
title: localizations.translate(AppText.welcomeTitle1Text),
|
||||
description: localizations.translate(AppText.welcomeDescription1Text),
|
||||
);
|
||||
case 1:
|
||||
return buildOnboardingPage(
|
||||
@@ -22,8 +24,8 @@ Widget buildPage(
|
||||
index: index,
|
||||
context,
|
||||
imageAsset: AppImages.secondWelcome,
|
||||
title: AppText.welcomeTitle2Text,
|
||||
description: AppText.welcomeDescription2Text,
|
||||
title: localizations.translate(AppText.welcomeTitle2Text),
|
||||
description: localizations.translate(AppText.welcomeDescription2Text),
|
||||
);
|
||||
case 2:
|
||||
return buildOnboardingPage(
|
||||
@@ -31,8 +33,8 @@ Widget buildPage(
|
||||
index: index,
|
||||
context,
|
||||
imageAsset: AppImages.thirdWelcome,
|
||||
title: AppText.welcomeTitle3Text,
|
||||
description: AppText.welcomeDescription3Text,
|
||||
title: localizations.translate(AppText.welcomeTitle3Text),
|
||||
description: localizations.translate(AppText.welcomeDescription3Text),
|
||||
isLastPage: true,
|
||||
);
|
||||
default:
|
||||
|
||||
@@ -7,6 +7,7 @@ import 'package:tanami_app/core/styles/app_color.dart';
|
||||
import 'package:tanami_app/shared/components/button_widget.dart';
|
||||
|
||||
import '../../../../core/styles/app_text.dart';
|
||||
import '../../../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../../../shared/components/text_widget.dart';
|
||||
|
||||
class LoginSignUpButton extends StatelessWidget {
|
||||
@@ -14,6 +15,7 @@ class LoginSignUpButton extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Padding(
|
||||
padding: const EdgeInsets.only(top: 20.0),
|
||||
child: Column(
|
||||
@@ -30,7 +32,7 @@ class LoginSignUpButton extends StatelessWidget {
|
||||
"fromScreentype": "welcome",
|
||||
});
|
||||
},
|
||||
text: AppText.signUpText,
|
||||
text: localizations.translate(AppText.signUpText),
|
||||
txtClr: AppColor.plainWhite,
|
||||
clr: AppColor.primaryColor,
|
||||
),
|
||||
@@ -43,7 +45,7 @@ class LoginSignUpButton extends StatelessWidget {
|
||||
});
|
||||
},
|
||||
text: TextWidget().text14W700(
|
||||
AppText.loginText,
|
||||
localizations.translate(AppText.loginText),
|
||||
clr: AppColor.darkGreyColor,
|
||||
textDecoration: TextDecoration.underline,
|
||||
))
|
||||
|
||||
@@ -8,6 +8,7 @@ import 'package:tanami_app/core/styles/app_color.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
import 'package:tanami_app/features/biometric/presentation/bloc/biometric_bloc.dart';
|
||||
|
||||
import '../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../features/biometric/presentation/bloc/biometric_event.dart';
|
||||
import '../../features/biometric/presentation/bloc/biometric_state.dart';
|
||||
import 'text_widget.dart';
|
||||
@@ -15,6 +16,7 @@ import 'text_widget.dart';
|
||||
deviceLockedDialog(
|
||||
context,
|
||||
) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return showDialog(
|
||||
barrierDismissible: false,
|
||||
context: context,
|
||||
@@ -60,7 +62,7 @@ deviceLockedDialog(
|
||||
child: Container(
|
||||
margin: const EdgeInsets.symmetric(horizontal: 30),
|
||||
child: TextWidget().text17W700(
|
||||
AppText.tanamiAppIsLocked,
|
||||
localizations.translate(AppText.tanamiAppIsLocked),
|
||||
clr: AppColor.textLabelColor,
|
||||
),
|
||||
),
|
||||
@@ -71,7 +73,7 @@ deviceLockedDialog(
|
||||
child: Container(
|
||||
// margin: const EdgeInsets.symmetric(horizontal: 30),
|
||||
child: TextWidget().text14W400(
|
||||
AppText.securityMssgText,
|
||||
localizations.translate(AppText.securityMssgText),
|
||||
clr: AppColor.textLabelColor,
|
||||
),
|
||||
),
|
||||
@@ -96,7 +98,7 @@ deviceLockedDialog(
|
||||
),
|
||||
child: Center(
|
||||
child: TextWidget().text18W700(
|
||||
AppText.cancelText,
|
||||
localizations.translate(AppText.cancelText),
|
||||
clr: AppColor.primaryColor2,
|
||||
),
|
||||
),
|
||||
@@ -118,7 +120,7 @@ deviceLockedDialog(
|
||||
color: AppColor.primaryColor),
|
||||
child: Center(
|
||||
child: TextWidget().text18W700(
|
||||
AppText.unlockText,
|
||||
localizations.translate(AppText.unlockText),
|
||||
clr: AppColor.plainWhite,
|
||||
),
|
||||
),
|
||||
|
||||
@@ -8,11 +8,13 @@ import 'package:tanami_app/core/styles/app_color.dart';
|
||||
import 'package:tanami_app/core/styles/app_images.dart';
|
||||
import 'package:tanami_app/core/styles/app_text.dart';
|
||||
|
||||
import '../../core/utils/language/localizations_delegate.dart';
|
||||
import 'text_widget.dart';
|
||||
|
||||
exitAppDialog(
|
||||
context,
|
||||
) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return showDialog(
|
||||
context: context,
|
||||
builder: (context) => Column(
|
||||
@@ -55,7 +57,8 @@ exitAppDialog(
|
||||
child: Container(
|
||||
margin: const EdgeInsets.symmetric(horizontal: 30),
|
||||
child: TextWidget().text17W700(
|
||||
AppText.areYouSureYouWantToExitText,
|
||||
localizations
|
||||
.translate(AppText.areYouSureYouWantToExitText),
|
||||
clr: AppColor.textLabelColor,
|
||||
),
|
||||
),
|
||||
@@ -80,7 +83,7 @@ exitAppDialog(
|
||||
),
|
||||
child: Center(
|
||||
child: TextWidget().text18W700(
|
||||
AppText.cancelText,
|
||||
localizations.translate(AppText.cancelText),
|
||||
clr: AppColor.primaryColor2,
|
||||
),
|
||||
),
|
||||
@@ -100,7 +103,7 @@ exitAppDialog(
|
||||
color: AppColor.primaryColor),
|
||||
child: Center(
|
||||
child: TextWidget().text18W700(
|
||||
AppText.exitText,
|
||||
localizations.translate(AppText.exitText),
|
||||
clr: AppColor.plainWhite,
|
||||
),
|
||||
),
|
||||
|
||||
@@ -8,6 +8,7 @@ import 'package:tanami_app/shared/components/text_widget.dart';
|
||||
|
||||
import '../../core/routes/route_name.dart';
|
||||
import '../../core/routes/routes.dart';
|
||||
import '../../core/utils/language/localizations_delegate.dart';
|
||||
import 'text_from_field_widget.dart';
|
||||
|
||||
class FormLabelTextField extends StatelessWidget {
|
||||
@@ -29,6 +30,7 @@ class FormLabelTextField extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
@@ -48,17 +50,18 @@ class FormLabelTextField extends StatelessWidget {
|
||||
validator: (value) {
|
||||
if (type == "phone number") {
|
||||
if (value != null && value.isEmpty) {
|
||||
return AppText.enterPhoneNo;
|
||||
return localizations.translate(AppText.enterPhoneNo);
|
||||
}
|
||||
return null;
|
||||
} else if (type == "country selection") {
|
||||
if (textEditingController.text.isEmpty) {
|
||||
return AppText.chooseCountry;
|
||||
return localizations.translate(AppText.chooseCountry);
|
||||
}
|
||||
return null;
|
||||
} else if (type == "description") {
|
||||
if (textEditingController.text.isEmpty) {
|
||||
return AppText.pleaseEnteraDescription;
|
||||
return localizations
|
||||
.translate(AppText.pleaseEnteraDescription);
|
||||
}
|
||||
return null;
|
||||
} else {
|
||||
|
||||
@@ -7,12 +7,14 @@ import '../../core/routes/route_name.dart';
|
||||
import '../../core/routes/routes.dart';
|
||||
import '../../core/styles/app_color.dart';
|
||||
import '../../core/styles/app_text.dart';
|
||||
import '../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../core/utils/secure/secure_storage_service.dart';
|
||||
import 'bloc/bottom_nav_bar/bottom_navigation_bloc.dart';
|
||||
import 'bloc/bottom_nav_bar/bottom_navigation_event.dart';
|
||||
import 'text_widget.dart';
|
||||
|
||||
buildprofilelogoutdialog(context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
SecureStorageService secureStorageService = SecureStorageService();
|
||||
return showDialog(
|
||||
context: context,
|
||||
@@ -52,7 +54,7 @@ buildprofilelogoutdialog(context) {
|
||||
child: Container(
|
||||
margin: const EdgeInsets.symmetric(horizontal: 20),
|
||||
child: TextWidget().text17W700(
|
||||
AppText.areYouSureWantToLogoutText,
|
||||
localizations.translate(AppText.areYouSureWantToLogoutText),
|
||||
clr: AppColor.textLabelColor,
|
||||
),
|
||||
),
|
||||
@@ -76,7 +78,7 @@ buildprofilelogoutdialog(context) {
|
||||
color: AppColor.plainWhite),
|
||||
child: Center(
|
||||
child: TextWidget().text18W700(
|
||||
AppText.noText,
|
||||
localizations.translate(AppText.noText),
|
||||
clr: AppColor.primaryColor2,
|
||||
),
|
||||
),
|
||||
@@ -99,7 +101,7 @@ buildprofilelogoutdialog(context) {
|
||||
color: AppColor.primaryColor),
|
||||
child: Center(
|
||||
child: TextWidget().text18W700(
|
||||
AppText.yesText,
|
||||
localizations.translate(AppText.yesText),
|
||||
clr: AppColor.plainWhite,
|
||||
),
|
||||
),
|
||||
|
||||
@@ -7,6 +7,7 @@ import 'package:tanami_app/core/styles/app_images.dart';
|
||||
|
||||
import '../../core/styles/app_color.dart';
|
||||
import '../../core/styles/app_text.dart';
|
||||
import '../../core/utils/language/localizations_delegate.dart';
|
||||
import 'bloc/password_field/password_visibility_bloc.dart';
|
||||
import 'bloc/password_field/password_visibility_event.dart';
|
||||
import 'bloc/password_field/password_visibility_state.dart';
|
||||
@@ -19,12 +20,13 @@ class PasswordField extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
return BlocBuilder<PasswordVisibilityBloc, PasswordVisibilityState>(
|
||||
builder: (context, state) {
|
||||
return TextFormField(
|
||||
validator: (value) {
|
||||
if (value != null && value.isEmpty) {
|
||||
return AppText.enterPassword;
|
||||
return localizations.translate(AppText.enterPassword);
|
||||
}
|
||||
return null;
|
||||
},
|
||||
|
||||
@@ -6,6 +6,7 @@ import 'package:tanami_app/core/styles/app_color.dart';
|
||||
import '../../core/routes/route_name.dart';
|
||||
import '../../core/routes/routes.dart';
|
||||
import '../../core/styles/app_text.dart';
|
||||
import '../../core/utils/language/localizations_delegate.dart';
|
||||
import '../../core/utils/secure/secure_storage_service.dart';
|
||||
import 'text_widget.dart';
|
||||
import 'toast_message.dart';
|
||||
@@ -13,6 +14,7 @@ import 'toast_message.dart';
|
||||
permissionDialog(
|
||||
context,
|
||||
) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
|
||||
return showDialog(
|
||||
@@ -49,7 +51,7 @@ permissionDialog(
|
||||
child: Container(
|
||||
margin: const EdgeInsets.symmetric(horizontal: 30),
|
||||
child: TextWidget().text17W600(
|
||||
AppText.biometricText,
|
||||
localizations.translate(AppText.biometricText),
|
||||
clr: AppColor.plainBlack,
|
||||
),
|
||||
),
|
||||
@@ -60,7 +62,8 @@ permissionDialog(
|
||||
child: Container(
|
||||
// margin: const EdgeInsets.symmetric(horizontal: 30),
|
||||
child: TextWidget().text13W400(
|
||||
AppText.appAskPermissionText,
|
||||
localizations
|
||||
.translate(AppText.appAskPermissionText),
|
||||
txtAlign: TextAlign.center,
|
||||
clr: AppColor.plainBlack,
|
||||
),
|
||||
@@ -92,7 +95,7 @@ permissionDialog(
|
||||
width: 140.w,
|
||||
child: Center(
|
||||
child: TextWidget().text17W600(
|
||||
AppText.declineText,
|
||||
localizations.translate(AppText.declineText),
|
||||
clr: AppColor.permissionTextClr,
|
||||
),
|
||||
),
|
||||
@@ -120,7 +123,7 @@ permissionDialog(
|
||||
width: 140.w,
|
||||
child: Center(
|
||||
child: TextWidget().text17W600(
|
||||
AppText.allowText,
|
||||
localizations.translate(AppText.allowText),
|
||||
clr: AppColor.permissionTextClr,
|
||||
),
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user