Add optional KYC flow and service-backed account limits
This commit is contained in:
1 parent
61ccfc1844
commit
3397f04ab7
38 files changed
+3443
-36
No files matched your search
@@ -535,6 +535,462 @@ abstract class AppLocalizations {
|
||||
/// In en, this message translates to:
|
||||
/// **'Prepare demo email again'**
|
||||
String get demoResend;
|
||||
|
||||
/// No description provided for @kycTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Verification & limits'**
|
||||
String get kycTitle;
|
||||
|
||||
/// No description provided for @kycIntro.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your account, at your pace. Verify your identity when you need higher limits.'**
|
||||
String get kycIntro;
|
||||
|
||||
/// No description provided for @kycDemo.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'DEMO · Use sample images only. Photos stay in memory, are never uploaded, and disappear when you leave or reload. Review decisions are simulated.'**
|
||||
String get kycDemo;
|
||||
|
||||
/// No description provided for @kycUnverified.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Not verified'**
|
||||
String get kycUnverified;
|
||||
|
||||
/// No description provided for @kycPending.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'In review'**
|
||||
String get kycPending;
|
||||
|
||||
/// No description provided for @kycApproved.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Identity verified'**
|
||||
String get kycApproved;
|
||||
|
||||
/// No description provided for @kycChanges.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'New photos needed'**
|
||||
String get kycChanges;
|
||||
|
||||
/// No description provided for @kycDenied.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Verification declined'**
|
||||
String get kycDenied;
|
||||
|
||||
/// No description provided for @kycUnverifiedBody.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'You can keep using your account with basic limits. Submit a passport photo and a selfie holding it to request an upgrade.'**
|
||||
String get kycUnverifiedBody;
|
||||
|
||||
/// No description provided for @kycPendingBody.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your submission is awaiting a human review. Basic limits remain active until approval. You do not need to submit again.'**
|
||||
String get kycPendingBody;
|
||||
|
||||
/// No description provided for @kycApprovedBody.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your review is complete. Check your current limits below.'**
|
||||
String get kycApprovedBody;
|
||||
|
||||
/// No description provided for @kycChangesBody.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your account remains available with basic limits. Replace the photos and submit a new review request.'**
|
||||
String get kycChangesBody;
|
||||
|
||||
/// No description provided for @kycDeniedBody.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Basic limits remain available. If you believe this decision is incorrect, contact support for a review.'**
|
||||
String get kycDeniedBody;
|
||||
|
||||
/// No description provided for @kycPassportReason.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'The passport details could not be read. Retake the photo in good light, with every edge visible.'**
|
||||
String get kycPassportReason;
|
||||
|
||||
/// No description provided for @kycSelfieReason.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your face or passport was not clear in the selfie. Keep both visible and in focus.'**
|
||||
String get kycSelfieReason;
|
||||
|
||||
/// No description provided for @kycExpiredReason.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'The passport has expired. Use a valid passport and take both photos again.'**
|
||||
String get kycExpiredReason;
|
||||
|
||||
/// No description provided for @kycDeniedReason.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'We could not verify your identity from this submission.'**
|
||||
String get kycDeniedReason;
|
||||
|
||||
/// No description provided for @kycStart.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Verify identity'**
|
||||
String get kycStart;
|
||||
|
||||
/// No description provided for @kycResubmit.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Replace photos'**
|
||||
String get kycResubmit;
|
||||
|
||||
/// No description provided for @kycRefresh.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Refresh status & limits'**
|
||||
String get kycRefresh;
|
||||
|
||||
/// No description provided for @kycSupport.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Contact support'**
|
||||
String get kycSupport;
|
||||
|
||||
/// No description provided for @kycSupportBody.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Support is not connected in this preview. In the live app, you will be able to request a review here without submitting documents again.'**
|
||||
String get kycSupportBody;
|
||||
|
||||
/// No description provided for @kycBasic.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Basic'**
|
||||
String get kycBasic;
|
||||
|
||||
/// No description provided for @kycVerifiedTier.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Verified'**
|
||||
String get kycVerifiedTier;
|
||||
|
||||
/// No description provided for @kycLimits.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your limits'**
|
||||
String get kycLimits;
|
||||
|
||||
/// No description provided for @kycLimitsDemo.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Illustrative limits from the demo service. These are not a live offer.'**
|
||||
String get kycLimitsDemo;
|
||||
|
||||
/// No description provided for @kycDay.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Daily volume'**
|
||||
String get kycDay;
|
||||
|
||||
/// No description provided for @kycMonth.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Monthly volume'**
|
||||
String get kycMonth;
|
||||
|
||||
/// No description provided for @kycCurrent.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Current cap'**
|
||||
String get kycCurrent;
|
||||
|
||||
/// No description provided for @kycRemaining.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Available'**
|
||||
String get kycRemaining;
|
||||
|
||||
/// No description provided for @kycAfter.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'After approval'**
|
||||
String get kycAfter;
|
||||
|
||||
/// No description provided for @kycLimitsError.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Limits could not be refreshed. Any values below are out of date. Retry to see your current access.'**
|
||||
String get kycLimitsError;
|
||||
|
||||
/// No description provided for @kycLimitsEmpty.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'No limits were returned. Refresh or check with support before making a transaction.'**
|
||||
String get kycLimitsEmpty;
|
||||
|
||||
/// No description provided for @kycLoading.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Loading your status…'**
|
||||
String get kycLoading;
|
||||
|
||||
/// No description provided for @kycPassport.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Passport photo'**
|
||||
String get kycPassport;
|
||||
|
||||
/// No description provided for @kycSelfie.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Selfie with passport'**
|
||||
String get kycSelfie;
|
||||
|
||||
/// No description provided for @kycReview.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Review your photos'**
|
||||
String get kycReview;
|
||||
|
||||
/// No description provided for @kycPassportHelp.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Open your valid passport to the photo page. Show all four edges and keep text sharp. Avoid glare, blur and covered details.'**
|
||||
String get kycPassportHelp;
|
||||
|
||||
/// No description provided for @kycSelfieHelp.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Hold the open passport beside your face. Show your whole face and the photo page in the same image. Keep both sharp and uncovered.'**
|
||||
String get kycSelfieHelp;
|
||||
|
||||
/// No description provided for @kycFileRules.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'JPEG or PNG · up to 10 MB · at least 600 × 600 pixels. Take a photo with your camera, then choose it here.'**
|
||||
String get kycFileRules;
|
||||
|
||||
/// No description provided for @kycChoose.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Choose photo'**
|
||||
String get kycChoose;
|
||||
|
||||
/// No description provided for @kycReplace.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Choose a different photo'**
|
||||
String get kycReplace;
|
||||
|
||||
/// No description provided for @kycRemove.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Remove photo'**
|
||||
String get kycRemove;
|
||||
|
||||
/// No description provided for @kycNext.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Continue'**
|
||||
String get kycNext;
|
||||
|
||||
/// No description provided for @kycBack.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Back'**
|
||||
String get kycBack;
|
||||
|
||||
/// No description provided for @kycSkip.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Keep basic limits'**
|
||||
String get kycSkip;
|
||||
|
||||
/// No description provided for @kycClose.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Back to account preview'**
|
||||
String get kycClose;
|
||||
|
||||
/// No description provided for @kycReviewHelp.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Check that both photos are readable and show the same passport. A staff member will review them; submission does not immediately raise your limits.'**
|
||||
String get kycReviewHelp;
|
||||
|
||||
/// No description provided for @kycConfirm.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'These photos show me and my own valid passport.'**
|
||||
String get kycConfirm;
|
||||
|
||||
/// No description provided for @kycSubmit.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Submit for review'**
|
||||
String get kycSubmit;
|
||||
|
||||
/// No description provided for @kycSubmitDemo.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Simulate submission'**
|
||||
String get kycSubmitDemo;
|
||||
|
||||
/// No description provided for @kycWorking.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Processing… Please keep this page open.'**
|
||||
String get kycWorking;
|
||||
|
||||
/// No description provided for @kycDiscardTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Discard these photos?'**
|
||||
String get kycDiscardTitle;
|
||||
|
||||
/// No description provided for @kycDiscardBody.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your draft is only in memory. Leaving will remove the selected photos; you can start again later.'**
|
||||
String get kycDiscardBody;
|
||||
|
||||
/// No description provided for @kycStay.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Keep editing'**
|
||||
String get kycStay;
|
||||
|
||||
/// No description provided for @kycDiscard.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Discard & leave'**
|
||||
String get kycDiscard;
|
||||
|
||||
/// No description provided for @kycErrorUnavailable.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'The service is unavailable. Your selected photos are still here. Try again.'**
|
||||
String get kycErrorUnavailable;
|
||||
|
||||
/// No description provided for @kycErrorInternal.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Something went wrong. Try again; your selected photos have been kept.'**
|
||||
String get kycErrorInternal;
|
||||
|
||||
/// No description provided for @kycErrorPermission.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'We could not open that photo. Check file access or choose another image.'**
|
||||
String get kycErrorPermission;
|
||||
|
||||
/// No description provided for @kycErrorFormat.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Choose a JPEG or PNG image. Other formats are not supported.'**
|
||||
String get kycErrorFormat;
|
||||
|
||||
/// No description provided for @kycErrorLarge.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'This image is too large. Choose one under 10 MB and 40 megapixels.'**
|
||||
String get kycErrorLarge;
|
||||
|
||||
/// No description provided for @kycErrorUnreadable.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'This image is damaged or cannot be read. Choose another photo.'**
|
||||
String get kycErrorUnreadable;
|
||||
|
||||
/// No description provided for @kycErrorSmall.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'The photo is too small. Use an image at least 600 pixels wide and high.'**
|
||||
String get kycErrorSmall;
|
||||
|
||||
/// No description provided for @kycErrorIncomplete.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Choose both photos and confirm they belong to you before submitting.'**
|
||||
String get kycErrorIncomplete;
|
||||
|
||||
/// No description provided for @kycErrorSession.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your session has expired. Return to login, then check your verification status.'**
|
||||
String get kycErrorSession;
|
||||
|
||||
/// No description provided for @kycErrorRate.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Too many requests. Wait a moment before trying again.'**
|
||||
String get kycErrorRate;
|
||||
|
||||
/// No description provided for @kycErrorConflict.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your review status has changed. Refresh it before continuing.'**
|
||||
String get kycErrorConflict;
|
||||
|
||||
/// No description provided for @kycDemoControls.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Demo: simulate a backoffice decision'**
|
||||
String get kycDemoControls;
|
||||
|
||||
/// No description provided for @kycDemoApprove.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Approve'**
|
||||
String get kycDemoApprove;
|
||||
|
||||
/// No description provided for @kycDemoCorrect.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Request clearer passport'**
|
||||
String get kycDemoCorrect;
|
||||
|
||||
/// No description provided for @kycDemoSelfie.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Request clearer selfie'**
|
||||
String get kycDemoSelfie;
|
||||
|
||||
/// No description provided for @kycDemoExpired.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Passport expired'**
|
||||
String get kycDemoExpired;
|
||||
|
||||
/// No description provided for @kycDemoDeny.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Decline'**
|
||||
String get kycDemoDeny;
|
||||
|
||||
/// No description provided for @kycPreview.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Explore verification & limits'**
|
||||
String get kycPreview;
|
||||
|
||||
/// No description provided for @kycChooseFirst.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Choose a photo to continue.'**
|
||||
String get kycChooseFirst;
|
||||
|
||||
/// No description provided for @kycStatusStale.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Status could not be refreshed. The status shown is the last known result.'**
|
||||
String get kycStatusStale;
|
||||
}
|
||||
|
||||
class _AppLocalizationsDelegate
|
||||
|
||||
@@ -242,4 +242,264 @@ class AppLocalizationsEn extends AppLocalizations {
|
||||
|
||||
@override
|
||||
String get demoResend => 'Prepare demo email again';
|
||||
|
||||
@override
|
||||
String get kycTitle => 'Verification & limits';
|
||||
|
||||
@override
|
||||
String get kycIntro =>
|
||||
'Your account, at your pace. Verify your identity when you need higher limits.';
|
||||
|
||||
@override
|
||||
String get kycDemo =>
|
||||
'DEMO · Use sample images only. Photos stay in memory, are never uploaded, and disappear when you leave or reload. Review decisions are simulated.';
|
||||
|
||||
@override
|
||||
String get kycUnverified => 'Not verified';
|
||||
|
||||
@override
|
||||
String get kycPending => 'In review';
|
||||
|
||||
@override
|
||||
String get kycApproved => 'Identity verified';
|
||||
|
||||
@override
|
||||
String get kycChanges => 'New photos needed';
|
||||
|
||||
@override
|
||||
String get kycDenied => 'Verification declined';
|
||||
|
||||
@override
|
||||
String get kycUnverifiedBody =>
|
||||
'You can keep using your account with basic limits. Submit a passport photo and a selfie holding it to request an upgrade.';
|
||||
|
||||
@override
|
||||
String get kycPendingBody =>
|
||||
'Your submission is awaiting a human review. Basic limits remain active until approval. You do not need to submit again.';
|
||||
|
||||
@override
|
||||
String get kycApprovedBody =>
|
||||
'Your review is complete. Check your current limits below.';
|
||||
|
||||
@override
|
||||
String get kycChangesBody =>
|
||||
'Your account remains available with basic limits. Replace the photos and submit a new review request.';
|
||||
|
||||
@override
|
||||
String get kycDeniedBody =>
|
||||
'Basic limits remain available. If you believe this decision is incorrect, contact support for a review.';
|
||||
|
||||
@override
|
||||
String get kycPassportReason =>
|
||||
'The passport details could not be read. Retake the photo in good light, with every edge visible.';
|
||||
|
||||
@override
|
||||
String get kycSelfieReason =>
|
||||
'Your face or passport was not clear in the selfie. Keep both visible and in focus.';
|
||||
|
||||
@override
|
||||
String get kycExpiredReason =>
|
||||
'The passport has expired. Use a valid passport and take both photos again.';
|
||||
|
||||
@override
|
||||
String get kycDeniedReason =>
|
||||
'We could not verify your identity from this submission.';
|
||||
|
||||
@override
|
||||
String get kycStart => 'Verify identity';
|
||||
|
||||
@override
|
||||
String get kycResubmit => 'Replace photos';
|
||||
|
||||
@override
|
||||
String get kycRefresh => 'Refresh status & limits';
|
||||
|
||||
@override
|
||||
String get kycSupport => 'Contact support';
|
||||
|
||||
@override
|
||||
String get kycSupportBody =>
|
||||
'Support is not connected in this preview. In the live app, you will be able to request a review here without submitting documents again.';
|
||||
|
||||
@override
|
||||
String get kycBasic => 'Basic';
|
||||
|
||||
@override
|
||||
String get kycVerifiedTier => 'Verified';
|
||||
|
||||
@override
|
||||
String get kycLimits => 'Your limits';
|
||||
|
||||
@override
|
||||
String get kycLimitsDemo =>
|
||||
'Illustrative limits from the demo service. These are not a live offer.';
|
||||
|
||||
@override
|
||||
String get kycDay => 'Daily volume';
|
||||
|
||||
@override
|
||||
String get kycMonth => 'Monthly volume';
|
||||
|
||||
@override
|
||||
String get kycCurrent => 'Current cap';
|
||||
|
||||
@override
|
||||
String get kycRemaining => 'Available';
|
||||
|
||||
@override
|
||||
String get kycAfter => 'After approval';
|
||||
|
||||
@override
|
||||
String get kycLimitsError =>
|
||||
'Limits could not be refreshed. Any values below are out of date. Retry to see your current access.';
|
||||
|
||||
@override
|
||||
String get kycLimitsEmpty =>
|
||||
'No limits were returned. Refresh or check with support before making a transaction.';
|
||||
|
||||
@override
|
||||
String get kycLoading => 'Loading your status…';
|
||||
|
||||
@override
|
||||
String get kycPassport => 'Passport photo';
|
||||
|
||||
@override
|
||||
String get kycSelfie => 'Selfie with passport';
|
||||
|
||||
@override
|
||||
String get kycReview => 'Review your photos';
|
||||
|
||||
@override
|
||||
String get kycPassportHelp =>
|
||||
'Open your valid passport to the photo page. Show all four edges and keep text sharp. Avoid glare, blur and covered details.';
|
||||
|
||||
@override
|
||||
String get kycSelfieHelp =>
|
||||
'Hold the open passport beside your face. Show your whole face and the photo page in the same image. Keep both sharp and uncovered.';
|
||||
|
||||
@override
|
||||
String get kycFileRules =>
|
||||
'JPEG or PNG · up to 10 MB · at least 600 × 600 pixels. Take a photo with your camera, then choose it here.';
|
||||
|
||||
@override
|
||||
String get kycChoose => 'Choose photo';
|
||||
|
||||
@override
|
||||
String get kycReplace => 'Choose a different photo';
|
||||
|
||||
@override
|
||||
String get kycRemove => 'Remove photo';
|
||||
|
||||
@override
|
||||
String get kycNext => 'Continue';
|
||||
|
||||
@override
|
||||
String get kycBack => 'Back';
|
||||
|
||||
@override
|
||||
String get kycSkip => 'Keep basic limits';
|
||||
|
||||
@override
|
||||
String get kycClose => 'Back to account preview';
|
||||
|
||||
@override
|
||||
String get kycReviewHelp =>
|
||||
'Check that both photos are readable and show the same passport. A staff member will review them; submission does not immediately raise your limits.';
|
||||
|
||||
@override
|
||||
String get kycConfirm => 'These photos show me and my own valid passport.';
|
||||
|
||||
@override
|
||||
String get kycSubmit => 'Submit for review';
|
||||
|
||||
@override
|
||||
String get kycSubmitDemo => 'Simulate submission';
|
||||
|
||||
@override
|
||||
String get kycWorking => 'Processing… Please keep this page open.';
|
||||
|
||||
@override
|
||||
String get kycDiscardTitle => 'Discard these photos?';
|
||||
|
||||
@override
|
||||
String get kycDiscardBody =>
|
||||
'Your draft is only in memory. Leaving will remove the selected photos; you can start again later.';
|
||||
|
||||
@override
|
||||
String get kycStay => 'Keep editing';
|
||||
|
||||
@override
|
||||
String get kycDiscard => 'Discard & leave';
|
||||
|
||||
@override
|
||||
String get kycErrorUnavailable =>
|
||||
'The service is unavailable. Your selected photos are still here. Try again.';
|
||||
|
||||
@override
|
||||
String get kycErrorInternal =>
|
||||
'Something went wrong. Try again; your selected photos have been kept.';
|
||||
|
||||
@override
|
||||
String get kycErrorPermission =>
|
||||
'We could not open that photo. Check file access or choose another image.';
|
||||
|
||||
@override
|
||||
String get kycErrorFormat =>
|
||||
'Choose a JPEG or PNG image. Other formats are not supported.';
|
||||
|
||||
@override
|
||||
String get kycErrorLarge =>
|
||||
'This image is too large. Choose one under 10 MB and 40 megapixels.';
|
||||
|
||||
@override
|
||||
String get kycErrorUnreadable =>
|
||||
'This image is damaged or cannot be read. Choose another photo.';
|
||||
|
||||
@override
|
||||
String get kycErrorSmall =>
|
||||
'The photo is too small. Use an image at least 600 pixels wide and high.';
|
||||
|
||||
@override
|
||||
String get kycErrorIncomplete =>
|
||||
'Choose both photos and confirm they belong to you before submitting.';
|
||||
|
||||
@override
|
||||
String get kycErrorSession =>
|
||||
'Your session has expired. Return to login, then check your verification status.';
|
||||
|
||||
@override
|
||||
String get kycErrorRate =>
|
||||
'Too many requests. Wait a moment before trying again.';
|
||||
|
||||
@override
|
||||
String get kycErrorConflict =>
|
||||
'Your review status has changed. Refresh it before continuing.';
|
||||
|
||||
@override
|
||||
String get kycDemoControls => 'Demo: simulate a backoffice decision';
|
||||
|
||||
@override
|
||||
String get kycDemoApprove => 'Approve';
|
||||
|
||||
@override
|
||||
String get kycDemoCorrect => 'Request clearer passport';
|
||||
|
||||
@override
|
||||
String get kycDemoSelfie => 'Request clearer selfie';
|
||||
|
||||
@override
|
||||
String get kycDemoExpired => 'Passport expired';
|
||||
|
||||
@override
|
||||
String get kycDemoDeny => 'Decline';
|
||||
|
||||
@override
|
||||
String get kycPreview => 'Explore verification & limits';
|
||||
|
||||
@override
|
||||
String get kycChooseFirst => 'Choose a photo to continue.';
|
||||
|
||||
@override
|
||||
String get kycStatusStale =>
|
||||
'Status could not be refreshed. The status shown is the last known result.';
|
||||
}
|
||||
@@ -243,4 +243,264 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
|
||||
@override
|
||||
String get demoResend => 'Подготовить демописьмо ещё раз';
|
||||
|
||||
@override
|
||||
String get kycTitle => 'Верификация и лимиты';
|
||||
|
||||
@override
|
||||
String get kycIntro =>
|
||||
'Ваш аккаунт — ваш темп. Подтвердите личность, когда понадобятся более высокие лимиты.';
|
||||
|
||||
@override
|
||||
String get kycDemo =>
|
||||
'ДЕМО · Используйте только тестовые изображения. Фото хранятся в памяти, не отправляются и удаляются при выходе или перезагрузке. Решения проверки имитируются.';
|
||||
|
||||
@override
|
||||
String get kycUnverified => 'Личность не подтверждена';
|
||||
|
||||
@override
|
||||
String get kycPending => 'На проверке';
|
||||
|
||||
@override
|
||||
String get kycApproved => 'Личность подтверждена';
|
||||
|
||||
@override
|
||||
String get kycChanges => 'Нужны новые фото';
|
||||
|
||||
@override
|
||||
String get kycDenied => 'Верификация отклонена';
|
||||
|
||||
@override
|
||||
String get kycUnverifiedBody =>
|
||||
'Вы можете пользоваться аккаунтом с базовыми лимитами. Для повышения отправьте фото паспорта и селфи с ним.';
|
||||
|
||||
@override
|
||||
String get kycPendingBody =>
|
||||
'Заявка ожидает проверки сотрудником. До одобрения действуют базовые лимиты. Повторная отправка не нужна.';
|
||||
|
||||
@override
|
||||
String get kycApprovedBody =>
|
||||
'Проверка завершена. Актуальные лимиты указаны ниже.';
|
||||
|
||||
@override
|
||||
String get kycChangesBody =>
|
||||
'Аккаунт доступен с базовыми лимитами. Замените фото и отправьте новую заявку.';
|
||||
|
||||
@override
|
||||
String get kycDeniedBody =>
|
||||
'Базовые лимиты остаются доступными. Если вы не согласны с решением, обратитесь в поддержку для пересмотра.';
|
||||
|
||||
@override
|
||||
String get kycPassportReason =>
|
||||
'Данные паспорта не удалось прочитать. Переснимите при хорошем освещении, чтобы все края были видны.';
|
||||
|
||||
@override
|
||||
String get kycSelfieReason =>
|
||||
'На селфи плохо видно лицо или паспорт. Оба должны быть в кадре и в фокусе.';
|
||||
|
||||
@override
|
||||
String get kycExpiredReason =>
|
||||
'Срок действия паспорта истёк. Используйте действующий паспорт и сделайте оба фото заново.';
|
||||
|
||||
@override
|
||||
String get kycDeniedReason =>
|
||||
'По этой заявке не удалось подтвердить вашу личность.';
|
||||
|
||||
@override
|
||||
String get kycStart => 'Подтвердить личность';
|
||||
|
||||
@override
|
||||
String get kycResubmit => 'Заменить фото';
|
||||
|
||||
@override
|
||||
String get kycRefresh => 'Обновить статус и лимиты';
|
||||
|
||||
@override
|
||||
String get kycSupport => 'Обратиться в поддержку';
|
||||
|
||||
@override
|
||||
String get kycSupportBody =>
|
||||
'В демоверсии поддержка не подключена. В рабочем приложении здесь можно будет запросить пересмотр без повторной отправки документов.';
|
||||
|
||||
@override
|
||||
String get kycBasic => 'Базовый';
|
||||
|
||||
@override
|
||||
String get kycVerifiedTier => 'Подтверждённый';
|
||||
|
||||
@override
|
||||
String get kycLimits => 'Ваши лимиты';
|
||||
|
||||
@override
|
||||
String get kycLimitsDemo =>
|
||||
'Пример лимитов из демосервиса. Это не действующее предложение.';
|
||||
|
||||
@override
|
||||
String get kycDay => 'Объём за день';
|
||||
|
||||
@override
|
||||
String get kycMonth => 'Объём за месяц';
|
||||
|
||||
@override
|
||||
String get kycCurrent => 'Текущий лимит';
|
||||
|
||||
@override
|
||||
String get kycRemaining => 'Доступно';
|
||||
|
||||
@override
|
||||
String get kycAfter => 'После одобрения';
|
||||
|
||||
@override
|
||||
String get kycLimitsError =>
|
||||
'Не удалось обновить лимиты. Значения ниже могут быть устаревшими. Повторите запрос.';
|
||||
|
||||
@override
|
||||
String get kycLimitsEmpty =>
|
||||
'Сервис не вернул лимиты. Обновите данные или уточните их в поддержке перед операцией.';
|
||||
|
||||
@override
|
||||
String get kycLoading => 'Загружаем ваш статус…';
|
||||
|
||||
@override
|
||||
String get kycPassport => 'Фото паспорта';
|
||||
|
||||
@override
|
||||
String get kycSelfie => 'Селфи с паспортом';
|
||||
|
||||
@override
|
||||
String get kycReview => 'Проверьте фото';
|
||||
|
||||
@override
|
||||
String get kycPassportHelp =>
|
||||
'Откройте действующий паспорт на странице с фото. Все четыре края и текст должны быть чётко видны. Избегайте бликов и размытия, не закрывайте данные.';
|
||||
|
||||
@override
|
||||
String get kycSelfieHelp =>
|
||||
'Держите открытый паспорт рядом с лицом. Лицо целиком и страница с фото должны быть в одном кадре, чёткими и ничем не закрытыми.';
|
||||
|
||||
@override
|
||||
String get kycFileRules =>
|
||||
'JPEG или PNG · до 10 МБ · не менее 600 × 600 пикселей. Сделайте фото камерой, затем выберите его здесь.';
|
||||
|
||||
@override
|
||||
String get kycChoose => 'Выбрать фото';
|
||||
|
||||
@override
|
||||
String get kycReplace => 'Выбрать другое фото';
|
||||
|
||||
@override
|
||||
String get kycRemove => 'Удалить фото';
|
||||
|
||||
@override
|
||||
String get kycNext => 'Продолжить';
|
||||
|
||||
@override
|
||||
String get kycBack => 'Назад';
|
||||
|
||||
@override
|
||||
String get kycSkip => 'Оставить базовые лимиты';
|
||||
|
||||
@override
|
||||
String get kycClose => 'К демоаккаунту';
|
||||
|
||||
@override
|
||||
String get kycReviewHelp =>
|
||||
'Убедитесь, что оба фото читаемы и на них один паспорт. Их проверит сотрудник. Отправка не повышает лимиты сразу.';
|
||||
|
||||
@override
|
||||
String get kycConfirm => 'На фото я и мой действующий паспорт.';
|
||||
|
||||
@override
|
||||
String get kycSubmit => 'Отправить на проверку';
|
||||
|
||||
@override
|
||||
String get kycSubmitDemo => 'Имитировать отправку';
|
||||
|
||||
@override
|
||||
String get kycWorking => 'Обработка… Не закрывайте страницу.';
|
||||
|
||||
@override
|
||||
String get kycDiscardTitle => 'Удалить выбранные фото?';
|
||||
|
||||
@override
|
||||
String get kycDiscardBody =>
|
||||
'Черновик хранится только в памяти. При выходе выбранные фото будут удалены. Позже можно начать заново.';
|
||||
|
||||
@override
|
||||
String get kycStay => 'Продолжить';
|
||||
|
||||
@override
|
||||
String get kycDiscard => 'Удалить и выйти';
|
||||
|
||||
@override
|
||||
String get kycErrorUnavailable =>
|
||||
'Сервис недоступен. Выбранные фото сохранены в памяти. Повторите попытку.';
|
||||
|
||||
@override
|
||||
String get kycErrorInternal =>
|
||||
'Произошла ошибка. Повторите попытку; выбранные фото сохранены.';
|
||||
|
||||
@override
|
||||
String get kycErrorPermission =>
|
||||
'Не удалось открыть фото. Проверьте доступ к файлам или выберите другое изображение.';
|
||||
|
||||
@override
|
||||
String get kycErrorFormat =>
|
||||
'Выберите изображение JPEG или PNG. Другие форматы не поддерживаются.';
|
||||
|
||||
@override
|
||||
String get kycErrorLarge =>
|
||||
'Изображение слишком большое. Выберите файл до 10 МБ и 40 мегапикселей.';
|
||||
|
||||
@override
|
||||
String get kycErrorUnreadable =>
|
||||
'Изображение повреждено или не читается. Выберите другое фото.';
|
||||
|
||||
@override
|
||||
String get kycErrorSmall =>
|
||||
'Фото слишком маленькое. Ширина и высота должны быть не менее 600 пикселей.';
|
||||
|
||||
@override
|
||||
String get kycErrorIncomplete =>
|
||||
'Выберите оба фото и подтвердите, что на них вы и ваш паспорт.';
|
||||
|
||||
@override
|
||||
String get kycErrorSession =>
|
||||
'Сессия истекла. Войдите снова и проверьте статус верификации.';
|
||||
|
||||
@override
|
||||
String get kycErrorRate =>
|
||||
'Слишком много запросов. Немного подождите и повторите попытку.';
|
||||
|
||||
@override
|
||||
String get kycErrorConflict =>
|
||||
'Статус проверки изменился. Обновите его, прежде чем продолжить.';
|
||||
|
||||
@override
|
||||
String get kycDemoControls => 'Демо: имитация решения сотрудника';
|
||||
|
||||
@override
|
||||
String get kycDemoApprove => 'Одобрить';
|
||||
|
||||
@override
|
||||
String get kycDemoCorrect => 'Запросить чёткое фото паспорта';
|
||||
|
||||
@override
|
||||
String get kycDemoSelfie => 'Запросить чёткое селфи';
|
||||
|
||||
@override
|
||||
String get kycDemoExpired => 'Паспорт просрочен';
|
||||
|
||||
@override
|
||||
String get kycDemoDeny => 'Отклонить';
|
||||
|
||||
@override
|
||||
String get kycPreview => 'Посмотреть верификацию и лимиты';
|
||||
|
||||
@override
|
||||
String get kycChooseFirst => 'Выберите фото для продолжения.';
|
||||
|
||||
@override
|
||||
String get kycStatusStale =>
|
||||
'Не удалось обновить статус. Показан последний известный результат.';
|
||||
}
|
||||
Reference in new issue
Block a user