mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2025-01-12 05:44:56 +00:00
Merge branch 'main' of https://github.com/cake-tech/cake_wallet into CW-328-Restore-wallet-from-QRCode-and-sweep-all-funds-in-a-new-wallet
This commit is contained in:
commit
f8f682dea3
8 changed files with 35 additions and 39 deletions
Before Width: | Height: | Size: 193 B After Width: | Height: | Size: 193 B |
|
@ -55,11 +55,11 @@ class LanguageService {
|
||||||
'cs': 'czk',
|
'cs': 'czk',
|
||||||
'ur': 'pak',
|
'ur': 'pak',
|
||||||
'id': 'idn',
|
'id': 'idn',
|
||||||
'yo': 'yor',
|
'yo': 'nga',
|
||||||
'ha': 'hau'
|
'ha': 'hau'
|
||||||
};
|
};
|
||||||
|
|
||||||
static final list = <String, String> {};
|
static final list = <String, String>{};
|
||||||
|
|
||||||
static void loadLocaleList() {
|
static void loadLocaleList() {
|
||||||
supportedLocales.forEach((key, value) {
|
supportedLocales.forEach((key, value) {
|
||||||
|
|
|
@ -4,7 +4,6 @@ import 'package:connectivity_plus/connectivity_plus.dart';
|
||||||
import 'package:cw_core/wallet_base.dart';
|
import 'package:cw_core/wallet_base.dart';
|
||||||
import 'package:cw_core/sync_status.dart';
|
import 'package:cw_core/sync_status.dart';
|
||||||
import 'package:cake_wallet/store/settings_store.dart';
|
import 'package:cake_wallet/store/settings_store.dart';
|
||||||
|
|
||||||
Timer? _checkConnectionTimer;
|
Timer? _checkConnectionTimer;
|
||||||
|
|
||||||
void startCheckConnectionReaction(
|
void startCheckConnectionReaction(
|
||||||
|
|
|
@ -43,26 +43,24 @@ class TotpAuthCodePageState extends State<TotpAuthCodePage> {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
_reaction ??= reaction((_) => widget.setup2FAViewModel.state, (ExecutionState state) {
|
if(widget.totpArguments.onTotpAuthenticationFinished != null) {
|
||||||
if (state is ExecutedSuccessfullyState) {
|
_reaction ??= reaction((_) => widget.setup2FAViewModel.state, (ExecutionState state) {
|
||||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||||
widget.totpArguments.onTotpAuthenticationFinished!(true, this);
|
if (state is ExecutedSuccessfullyState) {
|
||||||
});
|
widget.totpArguments.onTotpAuthenticationFinished!(true, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (state is FailureState) {
|
if (state is FailureState) {
|
||||||
print(state.error);
|
print(state.error);
|
||||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
widget.totpArguments.onTotpAuthenticationFinished!(false, this);
|
||||||
widget.totpArguments.onTotpAuthenticationFinished!(false, this);
|
}
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
if (state is AuthenticationBanned) {
|
if (state is AuthenticationBanned) {
|
||||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
widget.totpArguments.onTotpAuthenticationFinished!(false, this);
|
||||||
widget.totpArguments.onTotpAuthenticationFinished!(false, this);
|
}
|
||||||
});
|
});
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
|
||||||
super.initState();
|
super.initState();
|
||||||
}
|
}
|
||||||
|
|
|
@ -580,7 +580,6 @@ abstract class SettingsStoreBase with Store {
|
||||||
if (Platform.isAndroid) {
|
if (Platform.isAndroid) {
|
||||||
final androidInfo = await deviceInfoPlugin.androidInfo;
|
final androidInfo = await deviceInfoPlugin.androidInfo;
|
||||||
deviceName = '${androidInfo.brand}%20${androidInfo.manufacturer}%20${androidInfo.model}';
|
deviceName = '${androidInfo.brand}%20${androidInfo.manufacturer}%20${androidInfo.model}';
|
||||||
print(deviceName);
|
|
||||||
} else if (Platform.isIOS) {
|
} else if (Platform.isIOS) {
|
||||||
final iosInfo = await deviceInfoPlugin.iosInfo;
|
final iosInfo = await deviceInfoPlugin.iosInfo;
|
||||||
deviceName = iosInfo.model;
|
deviceName = iosInfo.model;
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
import FlutterMacOS
|
import FlutterMacOS
|
||||||
import Foundation
|
import Foundation
|
||||||
|
|
||||||
import connectivity_macos
|
import connectivity_plus_macos
|
||||||
import cw_monero
|
import cw_monero
|
||||||
import device_info_plus
|
import device_info_plus
|
||||||
import devicelocale
|
import devicelocale
|
||||||
|
|
|
@ -56,8 +56,8 @@ dependencies:
|
||||||
# password: ^1.0.0
|
# password: ^1.0.0
|
||||||
basic_utils: ^4.3.0
|
basic_utils: ^4.3.0
|
||||||
get_it: ^7.2.0
|
get_it: ^7.2.0
|
||||||
connectivity: ^3.0.3
|
# connectivity: ^3.0.3
|
||||||
# connectivity_plus: ^2.3.5
|
connectivity_plus: ^2.3.5
|
||||||
keyboard_actions: ^4.0.1
|
keyboard_actions: ^4.0.1
|
||||||
another_flushbar: ^1.12.29
|
another_flushbar: ^1.12.29
|
||||||
archive: ^3.3.0
|
archive: ^3.3.0
|
||||||
|
|
|
@ -685,14 +685,14 @@
|
||||||
"arrive_in_this_address" : "${currency} ${tag}arrivera à cette adresse",
|
"arrive_in_this_address" : "${currency} ${tag}arrivera à cette adresse",
|
||||||
"do_not_send": "Ne pas envoyer",
|
"do_not_send": "Ne pas envoyer",
|
||||||
"error_dialog_content": "Oups, nous avons rencontré une erreur.\n\nMerci d'envoyer le rapport d'erreur à notre équipe d'assistance afin de nous permettre d'améliorer l'application.",
|
"error_dialog_content": "Oups, nous avons rencontré une erreur.\n\nMerci d'envoyer le rapport d'erreur à notre équipe d'assistance afin de nous permettre d'améliorer l'application.",
|
||||||
"scan_qr_code": "Scannez le code QR",
|
"scan_qr_code": "Scannez le QR code",
|
||||||
"cold_or_recover_wallet": "Ajoutez un cold wallet ou récupérez un paper wallet",
|
"cold_or_recover_wallet": "Ajoutez un portefeuille froid (cold wallet) ou récupérez un portefeuille papier (paper wallet)",
|
||||||
"please_wait": "S'il vous plaît, attendez",
|
"please_wait": "Merci de patienter",
|
||||||
"sweeping_wallet": "Portefeuille de balayage",
|
"sweeping_wallet": "Portefeuille (wallet) de consolidation",
|
||||||
"sweeping_wallet_alert": "Cela ne devrait pas prendre longtemps. NE QUITTEZ PAS CET ÉCRAN OU LES FONDS BALAYÉS POURRAIENT ÊTRE PERDUS",
|
"sweeping_wallet_alert": "Cette opération ne devrait pas prendre longtemps. NE QUITTEZ PAS CET ÉCRAN OU LES FONDS CONSOLIDÉS POURRAIENT ÊTRE PERDUS",
|
||||||
"decimal_places_error": "Trop de décimales",
|
"decimal_places_error": "Trop de décimales",
|
||||||
"edit_node": "Modifier le nœud",
|
"edit_node": "Modifier le nœud",
|
||||||
"frozen_balance": "Équilibre gelé",
|
"frozen_balance": "Solde gelé",
|
||||||
"invoice_details": "Détails de la facture",
|
"invoice_details": "Détails de la facture",
|
||||||
"donation_link_details": "Détails du lien de don",
|
"donation_link_details": "Détails du lien de don",
|
||||||
"anonpay_description": "Générez ${type}. Le destinataire peut ${method} avec n'importe quelle crypto-monnaie prise en charge, et vous recevrez des fonds dans ce portefeuille (wallet).",
|
"anonpay_description": "Générez ${type}. Le destinataire peut ${method} avec n'importe quelle crypto-monnaie prise en charge, et vous recevrez des fonds dans ce portefeuille (wallet).",
|
||||||
|
@ -709,22 +709,22 @@
|
||||||
"error_text_input_above_maximum_limit" : "Le montant est supérieur au maximum",
|
"error_text_input_above_maximum_limit" : "Le montant est supérieur au maximum",
|
||||||
"show_market_place" :"Afficher la place de marché",
|
"show_market_place" :"Afficher la place de marché",
|
||||||
"prevent_screenshots": "Empêcher les captures d'écran et l'enregistrement d'écran",
|
"prevent_screenshots": "Empêcher les captures d'écran et l'enregistrement d'écran",
|
||||||
"modify_2fa": "Modifier le gâteau 2FA",
|
"modify_2fa": "Modifier les paramètres Cake 2FA",
|
||||||
"disable_cake_2fa": "Désactiver le gâteau 2FA",
|
"disable_cake_2fa": "Désactiver Cake 2FA",
|
||||||
"question_to_disable_2fa":"Êtes-vous sûr de vouloir désactiver Cake 2FA ? Un code 2FA ne sera plus nécessaire pour accéder au portefeuille et à certaines fonctions.",
|
"question_to_disable_2fa":"Êtes-vous sûr de vouloir désactiver Cake 2FA ? Un code 2FA ne sera plus nécessaire pour accéder au portefeuille (wallet) et à certaines fonctions.",
|
||||||
"disable": "Désactiver",
|
"disable": "Désactiver",
|
||||||
"setup_2fa": "Gâteau d'installation 2FA",
|
"setup_2fa": "Paramétrer Cake 2FA",
|
||||||
"verify_with_2fa": "Vérifier avec Cake 2FA",
|
"verify_with_2fa": "Vérifier avec Cake 2FA",
|
||||||
"totp_code": "Code TOTP",
|
"totp_code": "Code TOTP",
|
||||||
"please_fill_totp": "Veuillez renseigner le code à 8 chiffres présent sur votre autre appareil",
|
"please_fill_totp": "Veuillez renseigner le code à 8 chiffres affiché sur votre autre appareil",
|
||||||
"totp_2fa_success": "Succès! Cake 2FA activé pour ce portefeuille. N'oubliez pas de sauvegarder votre graine mnémonique au cas où vous perdriez l'accès au portefeuille.",
|
"totp_2fa_success": "Succès! Cake 2FA est activé pour ce portefeuille. N'oubliez pas de sauvegarder votre phrase secrète (seed) au cas où vous perdriez l'accès au portefeuille (wallet).",
|
||||||
"totp_verification_success" :"Vérification réussie !",
|
"totp_verification_success" :"Vérification réussie !",
|
||||||
"totp_2fa_failure": "Code incorrect. Veuillez essayer un code différent ou générer une nouvelle clé secrète. Utilisez une application 2FA compatible qui prend en charge les codes à 8 chiffres et SHA512.",
|
"totp_2fa_failure": "Code incorrect. Veuillez essayer un code différent ou générer un nouveau secret TOTP. Utilisez une application 2FA compatible qui prend en charge les codes à 8 chiffres et SHA512.",
|
||||||
"enter_totp_code": "Veuillez entrer le code TOTP.",
|
"enter_totp_code": "Veuillez entrer le code TOTP.",
|
||||||
"add_secret_code":"Ajouter ce code secret à un autre appareil",
|
"add_secret_code":"Configurer un autre appareil à l'aide de ce secret TOTP",
|
||||||
"totp_secret_code":"Code secret TOTP",
|
"totp_secret_code":"Secret TOTP",
|
||||||
"important_note": "Note importante",
|
"important_note": "Note importante",
|
||||||
"setup_2fa_text": "Cake 2FA n'est PAS aussi sûr que le stockage à froid. 2FA protège contre les types d'attaques de base, comme votre ami fournissant votre empreinte digitale pendant que vous dormez.\n\n Cake 2FA ne protège PAS contre un appareil compromis par un attaquant sophistiqué.\n\n Si vous perdez l'accès à vos codes 2FA , VOUS PERDREZ L'ACCÈS À CE PORTEFEUILLE. Vous devrez restaurer votre portefeuille à partir de graines mnémotechniques. VOUS DEVEZ DONC SAUVEGARDER VOS SEMENCES MNEMONIQUES ! De plus, quelqu'un ayant accès à vos graines mnémoniques pourra voler vos fonds, en contournant Cake 2FA.\n\n Le personnel d'assistance de Cake ne pourra pas vous aider si vous perdez l'accès à vos graines mnémoniques, puisque Cake est un portefeuille non dépositaire.",
|
"setup_2fa_text": "Cake 2FA (Authentification à 2 Facteurs) n'est PAS aussi sûr que le stockage à froid. Cake 2FA protège contre les attaques basiques, comme un ami fournissant votre empreinte digitale pendant que vous dormez.\n\n Cake 2FA ne protège PAS contre un appareil compromis par un attaquant sophistiqué.\n\n Si vous perdez l'accès à vos codes 2FA , VOUS PERDREZ L'ACCÈS À CE PORTEFEUILLE (WALLET). Vous devrez restaurer votre portefeuille à partir de sa phrase secrète (seed). VOUS DEVEZ DONC SAUVEGARDER VOTRE PHRASE SECRÈTE ! De plus, quelqu'un ayant accès à votre phrase secrète pourra voler vos fonds, en contournant Cake 2FA.\n\n Le personnel d'assistance de Cake ne pourra pas vous aider si vous perdez l'accès à votre phrase secrète, puisque Cake est un portefeuille non dépositaire (non custodial).",
|
||||||
"setup_totp_recommended": "Configurer TOTP (recommandé)",
|
"setup_totp_recommended": "Configurer TOTP (recommandé)",
|
||||||
"disable_buy": "Désactiver l'action d'achat",
|
"disable_buy": "Désactiver l'action d'achat",
|
||||||
"disable_sell": "Désactiver l'action de vente"
|
"disable_sell": "Désactiver l'action de vente"
|
||||||
|
|
Loading…
Reference in a new issue