diff --git a/android/app/src/main/java/com/cakewallet/cake_wallet/MainActivity.java b/android/app/src/main/java/com/cakewallet/cake_wallet/MainActivity.java
index cf650375f..26cc56187 100644
--- a/android/app/src/main/java/com/cakewallet/cake_wallet/MainActivity.java
+++ b/android/app/src/main/java/com/cakewallet/cake_wallet/MainActivity.java
@@ -1,15 +1,49 @@
package com.cakewallet.cake_wallet;
import androidx.annotation.NonNull;
+
import io.flutter.embedding.android.FlutterFragmentActivity;
import io.flutter.embedding.engine.FlutterEngine;
import io.flutter.plugins.GeneratedPluginRegistrant;
+import io.flutter.plugin.common.MethodCall;
+import io.flutter.plugin.common.MethodChannel;
+
+import android.os.AsyncTask;
+import android.os.Handler;
+import android.os.Looper;
+
+import java.security.SecureRandom;
public class MainActivity extends FlutterFragmentActivity {
+ final String UTILS_CHANNEL = "com.cake_wallet/native_utils";
@Override
public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
GeneratedPluginRegistrant.registerWith(flutterEngine);
+
+ MethodChannel utilsChannel =
+ new MethodChannel(flutterEngine.getDartExecutor().getBinaryMessenger(),
+ UTILS_CHANNEL);
+
+ utilsChannel.setMethodCallHandler(this::handle);
+ }
+
+ private void handle(@NonNull MethodCall call, @NonNull MethodChannel.Result result) {
+ Handler handler = new Handler(Looper.getMainLooper());
+
+ try {
+ if (call.method.equals("sec_random")) {
+ int count = call.argument("count");
+ SecureRandom random = new SecureRandom();
+ byte bytes[] = new byte[count];
+ random.nextBytes(bytes);
+ handler.post(() -> result.success(bytes));
+ } else {
+ handler.post(() -> result.notImplemented());
+ }
+ } catch (Exception e) {
+ handler.post(() -> result.error("UNCAUGHT_ERROR", e.getMessage(), null));
+ }
}
}
diff --git a/android/app/src/main/kotlin/com/cakewallet/cake_wallet/MainActivity.kt b/android/app/src/main/kotlin/com/cakewallet/cake_wallet/MainActivity.kt
deleted file mode 100644
index b5c933268..000000000
--- a/android/app/src/main/kotlin/com/cakewallet/cake_wallet/MainActivity.kt
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.cakewallet.cake_wallet
-
-import androidx.annotation.NonNull;
-import io.flutter.embedding.android.FlutterActivity
-import io.flutter.embedding.android.FlutterFragmentActivity
-import io.flutter.embedding.engine.FlutterEngine
-import io.flutter.plugins.GeneratedPluginRegistrant
-
-class MainActivity: FlutterActivity() {
- override fun configureFlutterEngine(@NonNull flutterEngine: FlutterEngine){
- GeneratedPluginRegistrant.registerWith(flutterEngine);
- }
-}
diff --git a/android/app/src/main/res/drawable/ic_launcher.png b/android/app/src/main/res/drawable/ic_launcher.png
new file mode 100755
index 000000000..a96724f1c
Binary files /dev/null and b/android/app/src/main/res/drawable/ic_launcher.png differ
diff --git a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
new file mode 100644
index 000000000..b2c4ad887
--- /dev/null
+++ b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
index 5d9200d0a..b11806d56 100644
Binary files a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png and b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
index 83a98b56d..b76508e83 100644
Binary files a/android/app/src/main/res/mipmap-mdpi/ic_launcher.png and b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
index c8cbe84dd..1d32c2836 100644
Binary files a/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png and b/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
index c4352f579..d5b7374a7 100644
Binary files a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png and b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
index 73fe04234..af40ea947 100644
Binary files a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png and b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/assets/images/2.0x/cake_logo.png b/assets/images/2.0x/cake_logo.png
index c464cdcd4..277816813 100644
Binary files a/assets/images/2.0x/cake_logo.png and b/assets/images/2.0x/cake_logo.png differ
diff --git a/assets/images/3.0x/cake_logo.png b/assets/images/3.0x/cake_logo.png
index 5da47a539..87dd05ce2 100644
Binary files a/assets/images/3.0x/cake_logo.png and b/assets/images/3.0x/cake_logo.png differ
diff --git a/assets/images/app_logo.png b/assets/images/app_logo.png
index 4540659cf..bf6896ad2 100644
Binary files a/assets/images/app_logo.png and b/assets/images/app_logo.png differ
diff --git a/assets/images/cake_logo.png b/assets/images/cake_logo.png
index fb5267a79..8a85bf225 100644
Binary files a/assets/images/cake_logo.png and b/assets/images/cake_logo.png differ
diff --git a/ios/CakeWallet/secRandom.swift b/ios/CakeWallet/secRandom.swift
new file mode 100644
index 000000000..c9b2e3593
--- /dev/null
+++ b/ios/CakeWallet/secRandom.swift
@@ -0,0 +1,12 @@
+import Foundation
+
+func secRandom(count: Int) -> Data? {
+ var bytes = [Int8](repeating: 0, count: count)
+ let status = SecRandomCopyBytes(kSecRandomDefault, bytes.count, &bytes)
+
+ if status == errSecSuccess {
+ return Data(bytes: bytes, count: bytes.count)
+ }
+
+ return nil
+}
diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj
index 4dc5104c4..9deb7b43a 100644
--- a/ios/Runner.xcodeproj/project.pbxproj
+++ b/ios/Runner.xcodeproj/project.pbxproj
@@ -8,6 +8,7 @@
/* Begin PBXBuildFile section */
0C44A71A2518EF8000B570ED /* decrypt.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C44A7192518EF8000B570ED /* decrypt.swift */; };
+ 0C9D68C9264854B60011B691 /* secRandom.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C9D68C8264854B60011B691 /* secRandom.swift */; };
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
20ED0868E1BD7E12278C0CB3 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B26E3F56D69167FBB1DC160A /* Pods_Runner.framework */; };
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
@@ -21,6 +22,7 @@
0C400E0F25B21ABB0025E469 /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = ""; };
0C44A7192518EF8000B570ED /* decrypt.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = decrypt.swift; sourceTree = ""; };
0C9986A3251A932F00D566FD /* CryptoSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = CryptoSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ 0C9D68C8264854B60011B691 /* secRandom.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = secRandom.swift; sourceTree = ""; };
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; };
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; };
20F67A1B2C2FCB2A3BB048C1 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; };
@@ -65,6 +67,7 @@
isa = PBXGroup;
children = (
0C44A7192518EF8000B570ED /* decrypt.swift */,
+ 0C9D68C8264854B60011B691 /* secRandom.swift */,
);
path = CakeWallet;
sourceTree = "";
@@ -274,6 +277,7 @@
files = (
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */,
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */,
+ 0C9D68C9264854B60011B691 /* secRandom.swift in Sources */,
0C44A71A2518EF8000B570ED /* decrypt.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -358,7 +362,7 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
- CURRENT_PROJECT_VERSION = 36;
+ CURRENT_PROJECT_VERSION = 38;
DEVELOPMENT_TEAM = 32J6BB6VUS;
ENABLE_BITCODE = NO;
FRAMEWORK_SEARCH_PATHS = (
@@ -501,7 +505,7 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
- CURRENT_PROJECT_VERSION = 36;
+ CURRENT_PROJECT_VERSION = 38;
DEVELOPMENT_TEAM = 32J6BB6VUS;
ENABLE_BITCODE = NO;
FRAMEWORK_SEARCH_PATHS = (
@@ -536,7 +540,7 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
- CURRENT_PROJECT_VERSION = 36;
+ CURRENT_PROJECT_VERSION = 38;
DEVELOPMENT_TEAM = 32J6BB6VUS;
ENABLE_BITCODE = NO;
FRAMEWORK_SEARCH_PATHS = (
diff --git a/ios/Runner/AppDelegate.swift b/ios/Runner/AppDelegate.swift
index 01aa14195..e7c300079 100644
--- a/ios/Runner/AppDelegate.swift
+++ b/ios/Runner/AppDelegate.swift
@@ -8,9 +8,10 @@ import Flutter
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
let controller : FlutterViewController = window?.rootViewController as! FlutterViewController
- let batteryChannel = FlutterMethodChannel(name: "com.cakewallet.cakewallet/legacy_wallet_migration",
- binaryMessenger: controller.binaryMessenger)
- batteryChannel.setMethodCallHandler({
+ let legacyMigrationChannel = FlutterMethodChannel(
+ name: "com.cakewallet.cakewallet/legacy_wallet_migration",
+ binaryMessenger: controller.binaryMessenger)
+ legacyMigrationChannel.setMethodCallHandler({
(call: FlutterMethodCall, result: @escaping FlutterResult) -> Void in
switch call.method {
@@ -52,6 +53,24 @@ import Flutter
}
})
+ let utilsChannel = FlutterMethodChannel(
+ name: "com.cake_wallet/native_utils",
+ binaryMessenger: controller.binaryMessenger)
+ utilsChannel.setMethodCallHandler({ (call: FlutterMethodCall, result: @escaping FlutterResult) -> Void in
+ switch call.method {
+ case "sec_random":
+ guard let args = call.arguments as? Dictionary,
+ let count = args["count"] as? Int else {
+ result(nil)
+ return
+ }
+
+ result(secRandom(count: count))
+ default:
+ result(FlutterMethodNotImplemented)
+ }
+ })
+
GeneratedPluginRegistrant.register(with: self)
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}
diff --git a/lib/bitcoin/bitcoin_mnemonic.dart b/lib/bitcoin/bitcoin_mnemonic.dart
index 7f4bcd13c..4f56161e0 100644
--- a/lib/bitcoin/bitcoin_mnemonic.dart
+++ b/lib/bitcoin/bitcoin_mnemonic.dart
@@ -4,23 +4,11 @@ import 'dart:typed_data';
import 'package:crypto/crypto.dart';
import 'package:unorm_dart/unorm_dart.dart' as unorm;
import 'package:cryptography/cryptography.dart' as cryptography;
+import 'package:cake_wallet/core/sec_random_native.dart';
const segwit = '100';
final wordlist = englishWordlist;
-Uint8List randomBytes(int length, {bool secure = false}) {
- assert(length > 0);
-
- final random = secure ? Random.secure() : Random();
- final ret = Uint8List(length);
-
- for (var i = 0; i < length; i++) {
- ret[i] = random.nextInt(256);
- }
-
- return ret;
-}
-
double logBase(num x, num base) => log(x) / log(base);
String mnemonicEncode(int i) {
@@ -102,14 +90,15 @@ List prefixMatches(String source, List prefixes) {
return prefixes.map((prefix) => hx.startsWith(prefix.toLowerCase())).toList();
}
-String generateMnemonic({int strength = 132, String prefix = segwit}) {
+Future generateMnemonic(
+ {int strength = 264, String prefix = segwit}) async {
final wordBitlen = logBase(wordlist.length, 2).ceil();
final wordCount = strength / wordBitlen;
final byteCount = ((wordCount * wordBitlen).ceil() / 8).ceil();
var result = '';
do {
- final bytes = randomBytes(byteCount);
+ final bytes = await secRandom(byteCount);
maskBytes(bytes, strength);
result = encode(bytes);
} while (!prefixMatches(result, [prefix]).first);
@@ -134,7 +123,7 @@ bool matchesAnyPrefix(String mnemonic) =>
bool validateMnemonic(String mnemonic, {String prefix = segwit}) {
try {
return matchesAnyPrefix(mnemonic);
- } catch(e) {
+ } catch (e) {
return false;
}
}
diff --git a/lib/bitcoin/bitcoin_mnemonic_is_incorrect_exception.dart b/lib/bitcoin/bitcoin_mnemonic_is_incorrect_exception.dart
index 761b02601..5171a4f05 100644
--- a/lib/bitcoin/bitcoin_mnemonic_is_incorrect_exception.dart
+++ b/lib/bitcoin/bitcoin_mnemonic_is_incorrect_exception.dart
@@ -1,5 +1,5 @@
class BitcoinMnemonicIsIncorrectException implements Exception {
@override
String toString() =>
- 'Bitcoin mnemonic has incorrect format. Mnemonic should contain 12 words separated by space.';
+ 'Bitcoin mnemonic has incorrect format. Mnemonic should contain 24 words separated by space.';
}
diff --git a/lib/bitcoin/bitcoin_wallet_service.dart b/lib/bitcoin/bitcoin_wallet_service.dart
index 8b09accd3..aefe0fadf 100644
--- a/lib/bitcoin/bitcoin_wallet_service.dart
+++ b/lib/bitcoin/bitcoin_wallet_service.dart
@@ -24,7 +24,7 @@ class BitcoinWalletService extends WalletService<
@override
Future create(BitcoinNewWalletCredentials credentials) async {
final wallet = BitcoinWallet(
- mnemonic: generateMnemonic(),
+ mnemonic: await generateMnemonic(),
password: credentials.password,
walletInfo: credentials.walletInfo);
await wallet.save();
diff --git a/lib/core/sec_random_native.dart b/lib/core/sec_random_native.dart
new file mode 100644
index 000000000..b9800fd71
--- /dev/null
+++ b/lib/core/sec_random_native.dart
@@ -0,0 +1,13 @@
+import 'dart:typed_data';
+
+import 'package:flutter/services.dart';
+
+const utils = const MethodChannel('com.cake_wallet/native_utils');
+
+Future secRandom(int count) async {
+ try {
+ return await utils.invokeMethod('sec_random', {'count': count});
+ } on PlatformException catch (_) {
+ return Uint8List.fromList([]);
+ }
+}
diff --git a/lib/entities/crypto_currency.dart b/lib/entities/crypto_currency.dart
index d5f23a0fa..7f27da7d6 100644
--- a/lib/entities/crypto_currency.dart
+++ b/lib/entities/crypto_currency.dart
@@ -19,7 +19,6 @@ class CryptoCurrency extends EnumerableItem with Serializable {
CryptoCurrency.eos,
CryptoCurrency.eth,
CryptoCurrency.ltc,
- CryptoCurrency.nano,
CryptoCurrency.trx,
CryptoCurrency.usdt,
CryptoCurrency.usdterc20,
@@ -29,7 +28,7 @@ class CryptoCurrency extends EnumerableItem with Serializable {
static const xmr = CryptoCurrency(title: 'XMR', raw: 0);
static const ada = CryptoCurrency(title: 'ADA', raw: 1);
static const bch = CryptoCurrency(title: 'BCH', raw: 2);
- static const bnb = CryptoCurrency(title: 'BNB', raw: 3);
+ static const bnb = CryptoCurrency(title: 'BNB BEP2', raw: 3);
static const btc = CryptoCurrency(title: 'BTC', raw: 4);
static const dai = CryptoCurrency(title: 'DAI', raw: 5);
static const dash = CryptoCurrency(title: 'DASH', raw: 6);
@@ -90,7 +89,7 @@ class CryptoCurrency extends EnumerableItem with Serializable {
return CryptoCurrency.ada;
case 'bch':
return CryptoCurrency.bch;
- case 'bnb':
+ case 'bnbmainnet':
return CryptoCurrency.bnb;
case 'btc':
return CryptoCurrency.btc;
diff --git a/lib/entities/language_service.dart b/lib/entities/language_service.dart
index e405522c0..33e5ca5be 100644
--- a/lib/entities/language_service.dart
+++ b/lib/entities/language_service.dart
@@ -15,7 +15,9 @@ class LanguageService {
'pt': 'Português (Portuguese)',
'ru': 'Русский (Russian)',
'uk': 'Українська (Ukrainian)',
- 'zh': '中文 (Chinese)'
+ 'zh': '中文 (Chinese)',
+ 'hr': 'Hrvatski (Croatian)',
+ 'it': 'Italiano (Italian)'
};
static final list = {};
diff --git a/lib/exchange/changenow/changenow_exchange_provider.dart b/lib/exchange/changenow/changenow_exchange_provider.dart
index 69674131d..0adaf6c83 100644
--- a/lib/exchange/changenow/changenow_exchange_provider.dart
+++ b/lib/exchange/changenow/changenow_exchange_provider.dart
@@ -48,7 +48,9 @@ class ChangeNowExchangeProvider extends ExchangeProvider {
@override
Future fetchLimits({CryptoCurrency from, CryptoCurrency to,
bool isFixedRateMode}) async {
- final symbol = from.toString() + '_' + to.toString();
+ final fromTitle = defineCurrencyTitle(from);
+ final toTitle = defineCurrencyTitle(to);
+ final symbol = fromTitle + '_' + toTitle;
final url = isFixedRateMode
? apiUri + _marketInfoUriSufix + _fixedRateUriSufix + apiKey
: apiUri + _minAmountUriSufix + symbol;
@@ -61,8 +63,7 @@ class ChangeNowExchangeProvider extends ExchangeProvider {
final elemFrom = elem["from"] as String;
final elemTo = elem["to"] as String;
- if ((elemFrom == from.toString().toLowerCase()) &&
- (elemTo == to.toString().toLowerCase())) {
+ if ((elemFrom == fromTitle) && (elemTo == toTitle)) {
final min = elem["min"] as double;
final max = elem["max"] as double;
@@ -84,9 +85,11 @@ class ChangeNowExchangeProvider extends ExchangeProvider {
? apiUri + _transactionsUriSufix + _fixedRateUriSufix + apiKey
: apiUri + _transactionsUriSufix + apiKey;
final _request = request as ChangeNowRequest;
+ final fromTitle = defineCurrencyTitle(_request.from);
+ final toTitle = defineCurrencyTitle(_request.to);
final body = {
- 'from': _request.from.toString(),
- 'to': _request.to.toString(),
+ 'from': fromTitle,
+ 'to': toTitle,
'address': _request.address,
'amount': _request.amount,
'refundAddress': _request.refundAddress
@@ -182,6 +185,8 @@ class ChangeNowExchangeProvider extends ExchangeProvider {
final url = apiUri + _marketInfoUriSufix + _fixedRateUriSufix + apiKey;
final response = await get(url);
final responseJSON = json.decode(response.body) as List;
+ final fromTitle = defineCurrencyTitle(from);
+ final toTitle = defineCurrencyTitle(to);
var rate = 0.0;
var fee = 0.0;
@@ -189,8 +194,7 @@ class ChangeNowExchangeProvider extends ExchangeProvider {
final elemFrom = elem["from"] as String;
final elemTo = elem["to"] as String;
- if ((elemFrom == to.toString().toLowerCase()) &&
- (elemTo == from.toString().toLowerCase())) {
+ if ((elemFrom == toTitle) && (elemTo == fromTitle)) {
rate = elem["rate"] as double;
fee = elem["minerFee"] as double;
break;
@@ -216,22 +220,32 @@ class ChangeNowExchangeProvider extends ExchangeProvider {
CryptoCurrency to,
double amount,
bool isFixedRateMode) {
+ final fromTitle = defineCurrencyTitle(from);
+ final toTitle = defineCurrencyTitle(to);
+
return isFixedRateMode
? apiUri +
_exchangeAmountUriSufix +
_fixedRateUriSufix +
amount.toString() +
'/' +
- from.toString() +
+ fromTitle +
'_' +
- to.toString() +
+ toTitle +
'?api_key=' + apiKey
: apiUri +
_exchangeAmountUriSufix +
amount.toString() +
'/' +
- from.toString() +
+ fromTitle +
'_' +
- to.toString();
+ toTitle;
+ }
+
+ static String defineCurrencyTitle(CryptoCurrency currency) {
+ const bnbTitle = 'bnbmainnet';
+ final currencyTitle = currency == CryptoCurrency.bnb
+ ? bnbTitle : currency.title.toLowerCase();
+ return currencyTitle;
}
}
diff --git a/lib/monero/monero_wallet_service.dart b/lib/monero/monero_wallet_service.dart
index 669c83593..7795b8700 100644
--- a/lib/monero/monero_wallet_service.dart
+++ b/lib/monero/monero_wallet_service.dart
@@ -221,7 +221,7 @@ class MoneroWalletService extends WalletService<
final name = f.path.split('/').last;
final newPath = newWalletDirPath + '/$name';
final newFile = File(newPath);
- print(file.path);
+
if (!newFile.existsSync()) {
newFile.createSync();
}
diff --git a/lib/router.dart b/lib/router.dart
index 0474758e3..19a6b760f 100644
--- a/lib/router.dart
+++ b/lib/router.dart
@@ -237,9 +237,11 @@ Route createRoute(RouteSettings settings) {
case Routes.unlock:
return MaterialPageRoute(
fullscreenDialog: true,
- builder: (_) => getIt.get(
- param1: settings.arguments as OnAuthenticationFinished,
- param2: false));
+ builder: (_) => WillPopScope(
+ child: getIt.get(
+ param1: settings.arguments as OnAuthenticationFinished,
+ param2: false),
+ onWillPop: () async => false));
case Routes.nodeList:
return CupertinoPageRoute(
diff --git a/lib/src/screens/dashboard/dashboard_page.dart b/lib/src/screens/dashboard/dashboard_page.dart
index 172483ed0..400b34060 100644
--- a/lib/src/screens/dashboard/dashboard_page.dart
+++ b/lib/src/screens/dashboard/dashboard_page.dart
@@ -1,7 +1,9 @@
import 'package:cake_wallet/entities/wallet_type.dart';
import 'package:cake_wallet/generated/i18n.dart';
import 'package:cake_wallet/routes.dart';
+import 'package:cake_wallet/src/widgets/alert_with_one_action.dart';
import 'package:cake_wallet/themes/theme_base.dart';
+import 'package:cake_wallet/utils/show_pop_up.dart';
import 'package:flutter/material.dart';
import 'package:flutter/cupertino.dart';
import 'package:cake_wallet/view_model/dashboard/dashboard_view_model.dart';
@@ -42,7 +44,7 @@ class DashboardPage extends BasePage {
child: scaffold);
@override
- bool get resizeToAvoidBottomPadding => false;
+ bool get resizeToAvoidBottomInset => false;
@override
Widget get endDrawer => MenuWidget(walletViewModel);
@@ -114,7 +116,7 @@ class DashboardPage extends BasePage {
)),
Container(
padding: EdgeInsets.only(left: 45, right: 45, bottom: 24),
- child: Observer(builder: (_) => Row(
+ child: Row(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [
ActionButton(
@@ -125,7 +127,7 @@ class DashboardPage extends BasePage {
image: exchangeImage,
title: S.of(context).exchange,
route: Routes.exchange),
- if (walletViewModel.type == WalletType.bitcoin) Observer(
+ Observer(
builder: (_) => Stack(
clipBehavior: Clip.none,
alignment: Alignment.topCenter,
@@ -143,23 +145,11 @@ class DashboardPage extends BasePage {
title: S.of(context).buy,
onClick: walletViewModel.isRunningWebView
? null
- : () async {
- try {
- walletViewModel.isRunningWebView = true;
- final url =
- await walletViewModel.wyreViewModel.wyreUrl;
- await Navigator.of(context)
- .pushNamed(Routes.wyre, arguments: url);
- walletViewModel.isRunningWebView = false;
- } catch(e) {
- print(e.toString());
- walletViewModel.isRunningWebView = false;
- }
- })
+ : () async => await _onClickBuyButton(context))
],
)),
],
- )),
+ ),
)
],
));
@@ -176,4 +166,32 @@ class DashboardPage extends BasePage {
_isEffectsInstalled = true;
}
+
+ Future _onClickBuyButton(BuildContext context) async {
+ final walletType = walletViewModel.type;
+
+ switch (walletType) {
+ case WalletType.monero:
+ await showPopUp(
+ context: context,
+ builder: (BuildContext context) {
+ return AlertWithOneAction(
+ alertTitle: S.of(context).buy,
+ alertContent: S.of(context).buy_alert_content,
+ buttonText: S.of(context).ok,
+ buttonAction: () => Navigator.of(context).pop());
+ });
+ break;
+ default:
+ try {
+ walletViewModel.isRunningWebView = true;
+ final url = await walletViewModel.wyreViewModel.wyreUrl;
+ await Navigator.of(context).pushNamed(Routes.wyre, arguments: url);
+ walletViewModel.isRunningWebView = false;
+ } catch(_) {
+ walletViewModel.isRunningWebView = false;
+ }
+ break;
+ }
+ }
}
diff --git a/lib/src/screens/seed/pre_seed_page.dart b/lib/src/screens/seed/pre_seed_page.dart
index 03fc17425..0a12b752a 100644
--- a/lib/src/screens/seed/pre_seed_page.dart
+++ b/lib/src/screens/seed/pre_seed_page.dart
@@ -13,7 +13,7 @@ class PreSeedPage extends BasePage {
imageDark = Image.asset('assets/images/pre_seed_dark.png'),
wordsCount = type == WalletType.monero
? 25
- : 12; // FIXME: Stupid fast implementation
+ : 24; // FIXME: Stupid fast implementation
final Image imageDark;
final Image imageLight;
@@ -49,7 +49,9 @@ class PreSeedPage extends BasePage {
Padding(
padding: EdgeInsets.only(top: 70, left: 16, right: 16),
child: Text(
- S.of(context).pre_seed_description(wordsCount.toString()),
+ S
+ .of(context)
+ .pre_seed_description(wordsCount.toString()),
textAlign: TextAlign.center,
style: TextStyle(
fontSize: 14,
diff --git a/lib/view_model/auth_view_model.dart b/lib/view_model/auth_view_model.dart
index 5bf5c25a1..76df95283 100644
--- a/lib/view_model/auth_view_model.dart
+++ b/lib/view_model/auth_view_model.dart
@@ -110,8 +110,6 @@ abstract class AuthViewModelBase with Store {
if (isAuthenticated) {
state = ExecutedSuccessfullyState();
- } else {
- state = FailureState('Failure biometric authentication');
}
}
} catch(e) {
diff --git a/lib/view_model/exchange/exchange_view_model.dart b/lib/view_model/exchange/exchange_view_model.dart
index 026bec348..f3f00cd77 100644
--- a/lib/view_model/exchange/exchange_view_model.dart
+++ b/lib/view_model/exchange/exchange_view_model.dart
@@ -33,8 +33,8 @@ class ExchangeViewModel = ExchangeViewModelBase with _$ExchangeViewModel;
abstract class ExchangeViewModelBase with Store {
ExchangeViewModelBase(this.wallet, this.trades, this._exchangeTemplateStore,
this.tradesStore, this._settingsStore) {
+ const excludeCurrencies = [CryptoCurrency.xlm, CryptoCurrency.xrp, CryptoCurrency.bnb];
providerList = [ChangeNowExchangeProvider()];
-
_initialPairBasedOnWallet();
isDepositAddressEnabled = !(depositCurrency == wallet.currency);
isReceiveAddressEnabled = !(receiveCurrency == wallet.currency);
@@ -56,10 +56,8 @@ abstract class ExchangeViewModelBase with Store {
}
});
receiveCurrencies = CryptoCurrency.all
- .where((cryptoCurrency) =>
- (cryptoCurrency != CryptoCurrency.xlm) &&
- (cryptoCurrency != CryptoCurrency.xrp))
- .toList();
+ .where((cryptoCurrency) => !excludeCurrencies.contains(cryptoCurrency))
+ .toList();
_defineIsReceiveAmountEditable();
isFixedRateMode = false;
isReceiveAmountEntered = false;
diff --git a/pubspec.yaml b/pubspec.yaml
index 13c73338a..ee63a7b68 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -11,7 +11,7 @@ description: Cake Wallet.
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
-version: 4.2.0+46
+version: 4.2.0+48
environment:
sdk: ">=2.7.0 <3.0.0"
diff --git a/res/values/strings_de.arb b/res/values/strings_de.arb
index 6d1d66b84..c9836f13b 100644
--- a/res/values/strings_de.arb
+++ b/res/values/strings_de.arb
@@ -170,7 +170,7 @@
"restore_wallet_restore_description" : "Beschreibung zur Wiederherstellung der Brieftasche",
"restore_new_seed" : "Neuer Seed",
"restore_active_seed" : "Aktives Seed",
- "restore_bitcoin_description_from_seed" : "Stellen Sie Ihre Brieftasche aus dem 12-Wort-Kombinationscode wieder her",
+ "restore_bitcoin_description_from_seed" : "Stellen Sie Ihre Brieftasche aus dem 24-Wort-Kombinationscode wieder her",
"restore_bitcoin_description_from_keys" : "Stellen Sie Ihre Brieftasche aus der generierten WIF-Zeichenfolge aus Ihren privaten Schlüsseln wieder her",
"restore_bitcoin_title_from_keys" : "Aus WIF wiederherstellen",
"restore_from_date_or_blockheight" : "Bitte geben Sie einige Tage vor dem Erstellen dieser Brieftasche ein Datum ein. Oder wenn Sie die Blockhöhe kennen, geben Sie sie stattdessen ein",
@@ -469,5 +469,7 @@
"unconfirmed" : "Unbestätigt",
"displayable" : "Anzeigebar",
- "submit_request" : "Einen Antrag stellen"
+ "submit_request" : "Einen Antrag stellen",
+
+ "buy_alert_content" : "Derzeit unterstützen wir nur den Kauf von Bitcoin. Um Bitcoin zu kaufen, erstellen Sie bitte Ihre Bitcoin-Brieftasche oder wechseln Sie zu dieser"
}
\ No newline at end of file
diff --git a/res/values/strings_en.arb b/res/values/strings_en.arb
index b0d98b7c9..2364bca10 100644
--- a/res/values/strings_en.arb
+++ b/res/values/strings_en.arb
@@ -170,7 +170,7 @@
"restore_wallet_restore_description" : "Wallet restore description",
"restore_new_seed" : "New seed",
"restore_active_seed" : "Active seed",
- "restore_bitcoin_description_from_seed" : "Restore your wallet from 12 word combination code",
+ "restore_bitcoin_description_from_seed" : "Restore your wallet from 24 word combination code",
"restore_bitcoin_description_from_keys" : "Restore your wallet from generated WIF string from your private keys",
"restore_bitcoin_title_from_keys" : "Restore from WIF",
"restore_from_date_or_blockheight" : "Please enter a date a few days before you created this wallet. Or if you know the blockheight, please enter it instead",
@@ -469,5 +469,7 @@
"unconfirmed" : "Unconfirmed",
"displayable" : "Displayable",
- "submit_request" : "submit a request"
+ "submit_request" : "submit a request",
+
+ "buy_alert_content" : "Currently we only support the purchase of Bitcoin. To buy Bitcoin, please create or switch to your Bitcoin wallet"
}
\ No newline at end of file
diff --git a/res/values/strings_es.arb b/res/values/strings_es.arb
index 190ad4304..a57886fe8 100644
--- a/res/values/strings_es.arb
+++ b/res/values/strings_es.arb
@@ -170,7 +170,7 @@
"restore_wallet_restore_description" : "Restaurar billetera",
"restore_new_seed" : "Nueva semilla",
"restore_active_seed" : "Semilla activa",
- "restore_bitcoin_description_from_seed" : "Restaure su billetera a partir del código de combinación de 12 palabras",
+ "restore_bitcoin_description_from_seed" : "Restaure su billetera a partir del código de combinación de 24 palabras",
"restore_bitcoin_description_from_keys" : "Restaure su billetera a partir de una cadena WIF generada a partir de sus claves privadas",
"restore_bitcoin_title_from_keys" : "Restaurar desde WIF",
"restore_from_date_or_blockheight" : "Ingrese una fecha unos días antes de crear esta billetera. O si conoce la altura del bloque, ingréselo en su lugar",
@@ -469,5 +469,7 @@
"unconfirmed" : "Inconfirmado",
"displayable" : "Visualizable",
- "submit_request" : "presentar una solicitud"
+ "submit_request" : "presentar una solicitud",
+
+ "buy_alert_content" : "Actualmente solo apoyamos la compra de Bitcoin. Para comprar Bitcoin, cree o cambie a su billetera Bitcoin"
}
\ No newline at end of file
diff --git a/res/values/strings_hi.arb b/res/values/strings_hi.arb
index 6eac14e99..852e249c9 100644
--- a/res/values/strings_hi.arb
+++ b/res/values/strings_hi.arb
@@ -170,7 +170,7 @@
"restore_wallet_restore_description" : "बटुआ विवरण पुनर्स्थापित करें",
"restore_new_seed" : "नया बीज",
"restore_active_seed" : "सक्रिय बीज",
- "restore_bitcoin_description_from_seed" : "12 शब्द संयोजन कोड से अपने वॉलेट को पुनर्स्थापित करें",
+ "restore_bitcoin_description_from_seed" : "24 शब्द संयोजन कोड से अपने वॉलेट को पुनर्स्थापित करें",
"restore_bitcoin_description_from_keys" : "अपने निजी कुंजी से उत्पन्न WIF स्ट्रिंग से अपने वॉलेट को पुनर्स्थापित करें",
"restore_bitcoin_title_from_keys" : "WIF से पुनर्स्थापित करें",
"restore_from_date_or_blockheight" : "कृपया इस वॉलेट को बनाने से कुछ दिन पहले एक तारीख दर्ज करें। या यदि आप ब्लॉकचेट जानते हैं, तो कृपया इसके बजाय इसे दर्ज करें",
@@ -469,5 +469,7 @@
"unconfirmed" : "अपुष्ट",
"displayable" : "प्रदर्शन योग्य",
- "submit_request" : "एक अनुरोध सबमिट करें"
+ "submit_request" : "एक अनुरोध सबमिट करें",
+
+ "buy_alert_content" : "वर्तमान में हम केवल बिटकॉइन की खरीद का समर्थन करते हैं। बिटकॉइन खरीदने के लिए, कृपया अपना बिटकॉइन वॉलेट बनाएं या स्विच करें"
}
\ No newline at end of file
diff --git a/res/values/strings_hr.arb b/res/values/strings_hr.arb
new file mode 100644
index 000000000..a27384dde
--- /dev/null
+++ b/res/values/strings_hr.arb
@@ -0,0 +1,473 @@
+{
+ "welcome" : "Dobrodošli na",
+ "cake_wallet" : "Cake Wallet",
+ "first_wallet_text" : "Odličan novčanik za Monero i Bitcoin",
+ "please_make_selection" : "Molimo odaberite opcije niže za izradu novog novčanika ili za oporavak postojećeg.",
+ "create_new" : "Izradi novi novčanik",
+ "restore_wallet" : "Oporavi novčanik",
+
+
+ "accounts" : "Računi",
+ "edit" : "Uredi",
+ "account" : "Račun",
+ "add" : "Dodaj",
+
+
+ "address_book" : "Imenik",
+ "contact" : "Kontakt",
+ "please_select" : "Molimo odaberite:",
+ "cancel" : "Poništi",
+ "ok" : "OK",
+ "contact_name" : "Ime kontakta",
+ "reset" : "Resetiraj",
+ "save" : "Spremi",
+ "address_remove_contact" : "Ukloni kontakt",
+ "address_remove_content" : "Jeste li sigurni da želite ukloniti odabrani kontakt?",
+
+
+ "authenticated" : "Autentificiran",
+ "authentication" : "Autentifikacija",
+ "failed_authentication" : "Autentifikacija neuspješna. ${state_error}",
+
+
+ "wallet_menu" : "Izbornik",
+ "Blocks_remaining" : "${status} preostalih blokova",
+ "please_try_to_connect_to_another_node" : "Molimo pokušajte se spojiti na drugi node.",
+ "xmr_hidden" : "Sakriven",
+ "xmr_available_balance" : "Raspoloživ iznos",
+ "xmr_full_balance" : "Ukupan iznos",
+ "send" : "Pošalji",
+ "receive" : "Primi",
+ "transactions" : "Transakcije",
+ "incoming" : "Dolazno",
+ "outgoing" : "Odlazno",
+ "transactions_by_date" : "Transakcije prema datumu",
+ "trades" : "Razmjene",
+ "filters" : "Filter",
+ "today" : "Danas",
+ "yesterday" : "Jučer",
+ "received" : "Primljeno",
+ "sent" : "Poslano",
+ "pending" : " (u tijeku)",
+ "rescan" : "Ponovno skeniranje",
+ "reconnect" : "Ponovno povezivanje",
+ "wallets" : "Novčanici",
+ "show_seed" : "Prikaži pristupni izraz",
+ "show_keys" : "Prikaži pristupni izraz/ključ",
+ "address_book_menu" : "Imenik",
+ "reconnection" : "Ponovno povezivanje",
+ "reconnect_alert_text" : "Jeste li sigurni da se želite ponovno povezati?",
+
+
+ "exchange" : "Razmijeni",
+ "clear" : "Izbriši",
+ "refund_address" : "Adresa za povrat",
+ "change_exchange_provider" : "Promjena davatelja usluge razmjene",
+ "you_will_send" : "Razmijeni iz",
+ "you_will_get" : "Razmijeni u",
+ "amount_is_guaranteed" : "Iznos koji ćete primiti je zajamčen",
+ "amount_is_estimate" : "Iznos koji ćete primiti je okviran",
+ "powered_by" : "Omogućio ${title}",
+ "error" : "Greška",
+ "estimated" : "procijenjen",
+ "min_value" : "Min.: ${value} ${currency}",
+ "max_value" : "Maks.: ${value} ${currency}",
+ "change_currency" : "Promijenite valutu",
+
+
+ "copy_id" : "Kopirati ID",
+ "exchange_result_write_down_trade_id" : "Molimo kopirajte ili zapišite transakcijski ID za nastavak.",
+ "trade_id" : "Transakcijski ID:",
+ "copied_to_clipboard" : "Kopirano u međuspremnik",
+ "saved_the_trade_id" : "Spremio/la sam transakcijski ID",
+ "fetching" : "Dohvaćanje",
+ "id" : "ID: ",
+ "amount" : "Iznos: ",
+ "payment_id" : "ID plaćanja: ",
+ "status" : "Status: ",
+ "offer_expires_in" : "Ponuda istječe za: ",
+ "trade_is_powered_by" : "Razmjenu je omogućio ${provider}",
+ "copy_address" : "Kopiraj adresu",
+ "exchange_result_confirm" : "Pritiskom na potvrdi, poslat ćete ${fetchingLabel} ${from} sa svog novčanika pod nazivom ${walletName} na adresu prikazanu ispod ili iznos možete poslati s vanjskog novčanika na niže navedenu adresu. /QR code.\n\nMolimo potvrdite za nastavak ili se vratite natrag za promjenu iznosa.",
+ "exchange_result_description" : "Potrebno poslati minimalno ${fetchingLabel} ${from} na adresu prikazanu na sljedećoj stranici. Ukoliko pošaljete iznos manji od ${fetchingLabel} ${from}, postoji mogućnost da razmjena neće biti uspješna i da iznos neće biti vraćen.",
+ "exchange_result_write_down_ID" : "*Molimo kopirajte ili zapišite svoj ID prikazan ispod.",
+ "confirm" : "Potvrdi",
+ "confirm_sending" : "Potvrdi slanje",
+ "commit_transaction_amount_fee" : "Izvrši transakciju \nAmount: ${amount}\nFee: ${fee}",
+ "sending" : "Slanje",
+ "transaction_sent" : "Transakcija provedena!",
+ "expired" : "Isteklo",
+ "time" : "${minutes}m ${seconds}s",
+ "send_xmr" : "Pošalji XMR",
+ "exchange_new_template" : "Novi predložak",
+
+ "faq" : "FAQ",
+
+
+ "enter_your_pin" : "Upišite PIN",
+ "loading_your_wallet" : "Novčanik se učitava",
+
+
+ "new_wallet" : "Novi novčanik",
+ "wallet_name" : "Ime novčanika",
+ "continue_text" : "Nastavak",
+ "choose_wallet_currency" : "Molimo odaberite valutu novčanika:",
+
+
+ "node_new" : "Novi node",
+ "node_address" : "Node adresa",
+ "node_port" : "Node port",
+ "login" : "Prijava",
+ "password" : "Lozinka",
+ "nodes" : "Nodes",
+ "node_reset_settings_title" : "Resetiraj postavke",
+ "nodes_list_reset_to_default_message" : "Jeste li sigurni da se želite vratiti na početne postavke?",
+ "change_current_node" : "Jeste li sigurni da želite promijeniti trenutni node na ${node}?",
+ "change" : "Promijeni",
+ "remove_node" : "Ukloni node",
+ "remove_node_message" : "Jeste li sigurni da želite ukloniti odabrani node?",
+ "remove" : "Ukloni",
+ "delete" : "Izbriši",
+ "add_new_node" : "Dodaj novi node",
+ "change_current_node_title" : "Promijeni trenutni node",
+ "node_test" : "Provjeri",
+ "node_connection_successful" : "Uspješno spajanje",
+ "node_connection_failed" : "Neuspješno spajanje",
+ "new_node_testing" : "Provjera novog nodea",
+
+
+ "use" : "Prebaci na",
+ "digit_pin" : "-znamenkasti PIN",
+
+
+ "share_address" : "Podijeli adresu",
+ "receive_amount" : "Iznos",
+ "subaddresses" : "Podadrese",
+ "addresses" : "Adrese",
+ "scan_qr_code" : "Skeniraj QR kod za dobivanje adrese",
+ "rename" : "Preimenuj",
+ "choose_account" : "Odaberi račun",
+ "create_new_account" : "Izradi novi račun",
+ "accounts_subaddresses" : "Računi i podadrese",
+
+
+ "restore_restore_wallet" : "Oporavi novčanik",
+ "restore_title_from_seed_keys" : "Oporavi pomoću pristupnog izraza/ključa",
+ "restore_description_from_seed_keys" : "Oporavi novčanik pomoću pristupnog izraza/ključa spremljenog na sigurno mjesto",
+ "restore_next" : "Dalje",
+ "restore_title_from_backup" : "Oporavak pomoću sigurnosne kopije",
+ "restore_description_from_backup" : "Možete oporaviti cijelu Cake Wallet aplikaciju pomoću vlastite datoteke sa sigurnosnom kopijom",
+ "restore_seed_keys_restore" : "Oporavak pomoću pristupnog izraza/ključa",
+ "restore_title_from_seed" : "Oporavi pomoću pristupnog izraza",
+ "restore_description_from_seed" : "Oporavi novčanik pomoću koda koji sadrži kombinaciju od 25 ili 13 riječi",
+ "restore_title_from_keys" : "Oporavi pomoću ključa",
+ "restore_description_from_keys" : "Oporavi novčanik pomoću generiranih pritisaka na tipke spremljenih od vlastitih privatnih ključeva (keys)",
+ "restore_wallet_name" : "Ime novčanika",
+ "restore_address" : "Adresa",
+ "restore_view_key_private" : "View key (privatni)",
+ "restore_spend_key_private" : "Spend key (privatni)",
+ "restore_recover" : "Oporavi",
+ "restore_wallet_restore_description" : "Opis oporavka novčanika",
+ "restore_new_seed" : "Novi pristupi izraz",
+ "restore_active_seed" : "Aktivan pristupni izraz",
+ "restore_bitcoin_description_from_seed" : "Oporavi novčanik pomoću koda od 12 riječi",
+ "restore_bitcoin_description_from_keys" : "Oporavi novčanik pomoću WIF niza generiranog iz vlastitih privatnih ključeva (keys)",
+ "restore_bitcoin_title_from_keys" : "Oporavi pomoću formata uvoza novčanika (WIF)",
+ "restore_from_date_or_blockheight" : "Molimo unesite datum od nekoliko dana prije nego što ste izradili ovaj novčanik ili ako znate visinu bloka, molimo unesite je.",
+
+
+ "seed_reminder" : "Molimo zapišite ih u slučaju da izgubite mobitel ili izbrišete podatke",
+ "seed_title" : "Prisupni izraz",
+ "seed_share" : "Podijeli pristupni izraz",
+ "copy" : "Kopiraj",
+
+
+ "seed_language_choose" : "Molimo odaberite jezik pristupnog izraza:",
+ "seed_choose" : "Odaberi jezik pristupnog izraza",
+ "seed_language_next" : "Dalje",
+ "seed_language_english" : "Engleski",
+ "seed_language_chinese" : "Kineski",
+ "seed_language_dutch" : "Nizozemski",
+ "seed_language_german" : "Njemački",
+ "seed_language_japanese" : "Japanski",
+ "seed_language_portuguese" : "Portugalski",
+ "seed_language_russian" : "Ruski",
+ "seed_language_spanish" : "Španjolski",
+
+
+ "send_title" : "Pošalji",
+ "send_your_wallet" : "Tvoj novčanik",
+ "send_address" : "${cryptoCurrency} adresa",
+ "send_payment_id" : "ID plaćanja (nije obvezno)",
+ "all" : "SVE",
+ "send_error_minimum_value" : "Minimalna vrijednost iznosa je 0.01",
+ "send_error_currency" : "Iznos smije sadržavati samo brojeve",
+ "send_estimated_fee" : "Procijenjena naknada:",
+ "send_priority" : "Trenutno se naknada nalazi na ${transactionPriority} mjestu prioriteta.\nPrioritet transakcije moguće je prilagoditi u postavkama",
+ "send_creating_transaction" : "Izrada transakcije",
+ "send_templates" : "Predlošci",
+ "send_new" : "Novi",
+ "send_amount" : "Iznos:",
+ "send_fee" : "Naknada:",
+ "send_name" : "Ime",
+ "send_got_it" : "U redu",
+ "send_sending" : "Slanje...",
+ "send_success" : "Vaš ${crypto} je uspješno poslan",
+
+
+ "settings_title" : "Postavke",
+ "settings_nodes" : "Nodovi",
+ "settings_current_node" : "Trenutni node",
+ "settings_wallets" : "Novčanik",
+ "settings_display_balance_as" : "Prikaži stanje računa kao",
+ "settings_currency" : "Valuta",
+ "settings_fee_priority" : "Prioritet naknade",
+ "settings_save_recipient_address" : "Spremi primateljevu adresu",
+ "settings_personal" : "Osobni",
+ "settings_change_pin" : "Promijeni PIN",
+ "settings_change_language" : "Promijeni jezik",
+ "settings_allow_biometrical_authentication" : "Dopusti biometrijsku autentifikaciju",
+ "settings_dark_mode" : "Tamni način rada",
+ "settings_transactions" : "Transakcije",
+ "settings_trades" : "Razmjene",
+ "settings_display_on_dashboard_list" : "Prikaži na listi kontrolne ploče",
+ "settings_all" : "SVE",
+ "settings_only_trades" : "Samo razmjene",
+ "settings_only_transactions" : "Samo transakcije",
+ "settings_none" : "Nijedno",
+ "settings_support" : "Podrška",
+ "settings_terms_and_conditions" : "Uvjeti i odredbe",
+ "pin_is_incorrect" : "Netočan PIN",
+
+
+ "setup_pin" : "Podesi PIN",
+ "enter_your_pin_again" : "Ponovno upišite pin",
+ "setup_successful" : "Vaš je pin uspješno postavljen!",
+
+
+ "wallet_keys" : "Pristupni izraz/ključ novčanika",
+ "wallet_seed" : "Pristupni izraz novčanika",
+ "private_key" : "Privatni ključ",
+ "public_key" : "Javni ključ",
+ "view_key_private" : "View key (privatni)",
+ "view_key_public" : "View key (javni)",
+ "spend_key_private" : "Spend key (privatni)",
+ "spend_key_public" : "Spend key (javni)",
+ "copied_key_to_clipboard" : "${key} kopiran u međuspremnik",
+
+
+ "new_subaddress_title" : "Nova adresa",
+ "new_subaddress_label_name" : "Oznaka",
+ "new_subaddress_create" : "Izradi",
+
+
+ "subaddress_title" : "Lista podadresa",
+
+
+ "trade_details_title" : "Detalji razmjene",
+ "trade_details_id" : "ID",
+ "trade_details_state" : "Stanje",
+ "trade_details_fetching" : "Dohvaćanje",
+ "trade_details_provider" : "Pružatelj",
+ "trade_details_created_at" : "Stvoreno u",
+ "trade_details_pair" : "Upari",
+ "trade_details_copied" : "${title} kopiran u međuspremnik",
+
+
+ "trade_history_title" : "Povijest razmjena",
+
+
+ "transaction_details_title" : "Detalji transakcije",
+ "transaction_details_transaction_id" : "Transakcijski ID",
+ "transaction_details_date" : "Datum",
+ "transaction_details_height" : "Visina",
+ "transaction_details_amount" : "Iznos",
+ "transaction_details_fee" : "Naknada",
+ "transaction_details_copied" : "${title} kopiran u međuspremnik",
+ "transaction_details_recipient_address" : "Primateljeva adresa",
+
+
+ "wallet_list_title" : "Monero novčanik",
+ "wallet_list_create_new_wallet" : "Izradi novi novčanik",
+ "wallet_list_restore_wallet" : "Oporavi novčanik",
+ "wallet_list_load_wallet" : "Učitaj novčanik",
+ "wallet_list_loading_wallet" : "Učitavanje novčanika ${wallet_name}",
+ "wallet_list_failed_to_load" : "Neuspješno učitavanje novčanika ${wallet_name}. ${error}",
+ "wallet_list_removing_wallet" : "Uklanjanje novčanika ${wallet_name}",
+ "wallet_list_failed_to_remove" : "Neuspješno uklanjanje novčanika ${wallet_name}. ${error}",
+
+
+ "widgets_address" : "Adresa",
+ "widgets_restore_from_blockheight" : "Oporavi pomoću visine bloka",
+ "widgets_restore_from_date" : "Oporavi pomoću datuma",
+ "widgets_or" : "ili",
+ "widgets_seed" : "pristupnog izraza",
+
+
+ "router_no_route" : "Nije definirana ruta za ${name}",
+
+
+ "error_text_account_name" : "Ime računa smije sadržavati samo slova i brojeve\nte mora biti dužine između 1 i 15 znakova",
+ "error_text_contact_name" : "Ime kontakta ne smije sadržavati znakove ` , ' \" \ni mora biti dužine između 1 i 32 znaka",
+ "error_text_address" : "Adresa novčanika mora odgovarati\nvrsti kriptovalute",
+ "error_text_node_address" : "Molimo unesite iPv4 adresu",
+ "error_text_node_port" : "Node port smije sadržavati samo brojeve između 0 i 65535",
+ "error_text_payment_id" : "ID plaćanja smije sadržavati samo od 16 do 64 znakova hex vrijednosti",
+ "error_text_xmr" : "XMR vrijednost ne smije biti veća od raspoloživog iznosa.\nBroj decimala smije biti 12 ili manji.",
+ "error_text_fiat" : "Vrijednost iznosa ne smije biti veća od raspoloživog iznosa.\nBroj decimala smije biti 2 ili manji.",
+ "error_text_subaddress_name" : "Ime podadrese ne smije sadržavati znakove ` , ' \" \ni mora biti dužine između 1 i 20 znakova",
+ "error_text_amount" : "Iznos smije sadržavati samo brojeve",
+ "error_text_wallet_name" : "Ime novčanika smije sadržavati samo slova i brojeve\nte mora biti dužine između 1 i 15 znakova",
+ "error_text_keys" : "Novčanik smije sadržavati samo 64 znakova hex vrijednosti",
+ "error_text_crypto_currency" : "Broj decimala mora\nbiti 12 ili manji",
+ "error_text_minimal_limit" : "Razmjena za ${provider} nije izrađena. Iznos je manji od minimalnog: ${min} ${currency}",
+ "error_text_maximum_limit" : "Razmjena za ${provider} nije izrađena. Iznos je veći od maskimalnog: ${max} ${currency}",
+ "error_text_limits_loading_failed" : "Razmjena za ${provider} nije izrađena. Neuspješno učitavanje limita",
+ "error_text_template" : "Ime i adresa predloška ne smiju sadržavati znakove ` , ' \" \ni moraju biti dužine između 1 i 106 znakova",
+
+
+ "auth_store_ban_timeout" : "ban_timeout",
+ "auth_store_banned_for" : "Suspendiran na ",
+ "auth_store_banned_minutes" : " minute",
+ "auth_store_incorrect_password" : "Pogrešan PIN",
+ "wallet_store_monero_wallet" : "Monero novčanik",
+ "wallet_restoration_store_incorrect_seed_length" : "Netočna dužina pristupnog izraza",
+
+
+ "full_balance" : "Pun iznos",
+ "available_balance" : "Raspoloživ iznos",
+ "hidden_balance" : "Skriven iznos",
+
+
+ "sync_status_syncronizing" : "SINKRONIZIRANJE",
+ "sync_status_syncronized" : "SINKRONIZIRANO",
+ "sync_status_not_connected" : "NIJE POVEZANO",
+ "sync_status_starting_sync" : "ZAPOČINJEMO SINKRONIZIRANJE",
+ "sync_status_failed_connect" : "ISKLJUČENO",
+ "sync_status_connecting" : "SPAJANJE",
+ "sync_status_connected" : "SPOJENO",
+
+
+ "transaction_priority_slow" : "Sporo",
+ "transaction_priority_regular" : "Uobičajeno",
+ "transaction_priority_medium" : "Srednje",
+ "transaction_priority_fast" : "Brzo",
+ "transaction_priority_fastest" : "Najbrže",
+
+
+ "trade_for_not_created" : "Razmjena za ${title} nije izrađena.",
+ "trade_not_created" : "Razmjena nije izrađena.",
+ "trade_id_not_found" : "Razmjena ${tradeId} za ${title} nije pronađena.",
+ "trade_not_found" : "Razmjena nije pronađena.",
+
+
+ "trade_state_pending" : "U tijeku",
+ "trade_state_confirming" : "Potvrđivanje",
+ "trade_state_trading" : "Razmjenjivanje",
+ "trade_state_traded" : "Razmijenjeno",
+ "trade_state_complete" : "Dovršeno",
+ "trade_state_to_be_created" : "Stvaranje",
+ "trade_state_unpaid" : "Neplaćen",
+ "trade_state_underpaid" : "Nedovoljno plaćen",
+ "trade_state_paid_unconfirmed" : "Plaćanje nije potrđeno",
+ "trade_state_paid" : "Plaćen",
+ "trade_state_btc_sent" : "BTC poslan",
+ "trade_state_timeout" : "Isteklo",
+ "trade_state_created" : "Stvoreno",
+ "trade_state_finished" : "Završeno",
+
+ "change_language" : "Promijeni jezik",
+ "change_language_to" : "Promijeni jezik u ${language}?",
+
+ "paste" : "Zalijepi",
+ "restore_from_seed_placeholder" : "Molimo unesite ili zalijepite svoj pristupni izraz ovdje",
+ "add_new_word" : "Dodaj novu riječ",
+ "incorrect_seed" : "Uneseni tekst nije valjan.",
+
+ "biometric_auth_reason" : "Skenirajte svoj otisak prsta za autentifikaciju",
+ "version" : "Verzija ${currentVersion}",
+
+ "openalias_alert_title" : "XMR primatelj otkriven",
+ "openalias_alert_content" : "Poslat ćete sredstva primatelju\n${recipient_name}",
+
+ "card_address" : "Adresa:",
+ "buy" : "Kupi",
+
+ "placeholder_transactions" : "Vaše će transakcije biti prikazane ovdje",
+ "placeholder_contacts" : "Vaši će kontakti biti prikazani ovdje",
+
+ "template" : "Predložak",
+ "confirm_delete_template" : "Ovom ćete radnjom izbrisati ovaj predložak. Želite li nastaviti?",
+ "confirm_delete_wallet" : "Ovom ćete radnjom izbrisati ovaj novčanik. Želite li nastaviti?",
+
+ "picker_description" : "Da biste odabrali ChangeNOW ili MorphToken, molimo da prvo odabete dvije valute za trgovanje",
+
+ "change_wallet_alert_title" : "Izmijeni trenutni novčanik",
+ "change_wallet_alert_content" : "Želite li promijeniti trenutni novčanik u ${wallet_name}?",
+
+ "creating_new_wallet" : "Stvaranje novog novčanika",
+ "creating_new_wallet_error" : "Greška: ${description}",
+
+ "seed_alert_title" : "Upozorenje",
+ "seed_alert_content" : "Pristupni izraz jedini je način za oporavak novčanika. Jeste li ga zapisali?",
+ "seed_alert_back" : "Vrati se natrag",
+ "seed_alert_yes" : "Jesam",
+
+ "exchange_sync_alert_content" : "Molimo pričekajte dok se Vaš novčanik ne sinkronizira.",
+
+ "pre_seed_title" : "VAŽNO",
+ "pre_seed_description" : "Na sljedećoj ćete stranici vidjeti niz ${words} riječi. Radi se o Vašem jedinstvenom i tajnom pristupnom izrazu koji je ujedno i JEDINI način na koji možete oporaviti svoj novčanik u slučaju gubitka ili kvara. VAŠA je odgovornost zapisati ga te pohraniti na sigurno mjesto izvan Cake Wallet aplikacije.",
+ "pre_seed_button_text" : "Razumijem. Prikaži mi moj pristupni izraz",
+
+ "xmr_to_error" : "XMR.TO greška",
+ "xmr_to_error_description" : "Nevažeći iznos. Dopušteno je najviše 8 znamenki iza točke",
+
+ "provider_error" : "${provider} greška",
+
+ "use_ssl" : "Koristi SSL",
+
+ "color_theme" : "Shema boja",
+ "light_theme" : "Svijetla",
+ "bright_theme" : "Jarka",
+ "dark_theme" : "Tamna",
+ "enter_your_note" : "Unesite svoju poruku…",
+ "note_optional" : "Poruka (nije obvezno)",
+ "note_tap_to_change" : "Poruka (dodirnite za promjenu)",
+ "transaction_key" : "Transakcijski ključ",
+ "confirmations" : "Potvrde",
+ "recipient_address" : "Primateljeva adresa",
+
+ "extra_id" : "Dodatni ID:",
+ "destination_tag" : "Odredišna oznaka:",
+ "memo" : "Memo:",
+
+ "backup" : "Sigurnosna kopija",
+ "change_password" : "Promijeni lozinku",
+ "backup_password" : "Lozinka za sigurnosnu kopiju",
+ "write_down_backup_password" : "Molimo zapišite svoju lozinku za sigurnosnu kopiju koja se koristi za uvoz datoteka sigurnosne kopije.",
+ "export_backup" : "Izvezi sigurnosnu kopiju",
+ "save_backup_password" : "Molimo pobrinite se da spremite svoju lozinku za sigurnosnu kopiju. Bez nje nećete moći uvesti datoteke sigurnosne kopije.",
+ "backup_file" : "Sigurnosna kopija datoteke",
+
+ "edit_backup_password" : "Uredi lozinku za sigurnosnu kopiju",
+ "save_backup_password_alert" : "Spremi lozinku za sigurnosnu kopiju",
+ "change_backup_password_alert" : "Nećemo moći uvesti Vaše prethodne datoteke sigurnosne kopije s novom lozinkom za sigurnosnu kopiju. Novu lozinku za sigurnosnu kopiju moći ćete koristiti samo za nove datoteke sigurnosne kopije. Jeste li sigurni da želite promijeniti lozinku za sigurnosnu kopiju?",
+
+ "enter_backup_password" : "Unesite svoju lozinku za sigurnosnu kopiju ovdje",
+ "select_backup_file" : "Odaberite datoteku sigurnosne kopije",
+ "import" : "Uvezi",
+ "please_select_backup_file" : "Molimo odaberite datoteku sigurnosne kopije i unesite lozinku za sigurnosnu kopiju.",
+
+ "fixed_rate" : "Fiksna stopa",
+ "fixed_rate_alert" : "Moći ćete unijeti iznos koji želite primiti nakon što označite način rada fiksne stope. Želite li se prebaciti na način rada fiksne stope?",
+
+ "xlm_extra_info" : "Molimo ne zaboravite navesti memo ID prilikom slanja XLM transakcije na razmjenu",
+ "xrp_extra_info" : "Molimo ne zaboravite navesti odredišnu oznaku prilikom slanja XRP transakcije na razmjenu",
+
+ "exchange_incorrect_current_wallet_for_xmr" : "Ako želite razmijeniti XMR s vlastitog Monero računa na Cake Wallet novčaniku, molimo prvo se prebacite na svoj Monero novčanik.",
+ "confirmed" : "Potvrđeno",
+ "unconfirmed" : "Nepotvrđeno",
+ "displayable" : "Dostupno za prikaz",
+
+ "submit_request" : "podnesi zahtjev"
+}
\ No newline at end of file
diff --git a/res/values/strings_it.arb b/res/values/strings_it.arb
new file mode 100644
index 000000000..21f61ec6f
--- /dev/null
+++ b/res/values/strings_it.arb
@@ -0,0 +1,473 @@
+{
+ "welcome" : "Benvenuto",
+ "cake_wallet" : "Cake Wallet",
+ "first_wallet_text" : "Fantastico portafoglio per Monero e Bitcoin",
+ "please_make_selection" : "Gentilmente seleziona se vuoi generare o recuperare il tuo portafoglio.",
+ "create_new" : "Genera nuovo Portafoglio",
+ "restore_wallet" : "Recupera Portafoglio",
+
+
+ "accounts" : "Accounts",
+ "edit" : "Modifica",
+ "account" : "Account",
+ "add" : "Aggiungi",
+
+
+ "address_book" : "Rubrica indirizzi",
+ "contact" : "Contatta",
+ "please_select" : "Gentilmente seleziona:",
+ "cancel" : "Cancella",
+ "ok" : "OK",
+ "contact_name" : "Nome Contatto",
+ "reset" : "Resetta",
+ "save" : "Salva",
+ "address_remove_contact" : "Rimuovi contatto",
+ "address_remove_content" : "Sei sicuro di voler eliminare il contatto selezionato?",
+
+
+ "authenticated" : "Autenticato",
+ "authentication" : "Autenticazione",
+ "failed_authentication" : "Autenticazione fallita. ${state_error}",
+
+
+ "wallet_menu" : "Menu",
+ "Blocks_remaining" : "${status} Blocchi Rimanenti",
+ "please_try_to_connect_to_another_node" : "Gentilmente prova a connetterti ad un altro nodo",
+ "xmr_hidden" : "Nascosto",
+ "xmr_available_balance" : "Saldo Disponibile",
+ "xmr_full_balance" : "Saldo Completo",
+ "send" : "Invia",
+ "receive" : "Ricevi",
+ "transactions" : "Transazioni",
+ "incoming" : "In arrivo",
+ "outgoing" : "In uscita",
+ "transactions_by_date" : "Transazioni per data",
+ "trades" : "Scambi",
+ "filters" : "Filtri",
+ "today" : "Oggi",
+ "yesterday" : "Ieri",
+ "received" : "Ricevuto",
+ "sent" : "Inviato",
+ "pending" : " (pendente)",
+ "rescan" : "Scansiona di nuovo",
+ "reconnect" : "Riconnetti",
+ "wallets" : "Portafogli",
+ "show_seed" : "Mostra seme",
+ "show_keys" : "Mostra seme/chiavi",
+ "address_book_menu" : "Rubrica indirizzi",
+ "reconnection" : "Riconnessione",
+ "reconnect_alert_text" : "Sei sicuro di volerti riconnettere?",
+
+
+ "exchange" : "Scambia",
+ "clear" : "Pulisci",
+ "refund_address" : "Indirizzo di rimborso",
+ "change_exchange_provider" : "Cambia Exchange",
+ "you_will_send" : "Conveti da",
+ "you_will_get" : "Converti a",
+ "amount_is_guaranteed" : "L'ammonare da ricevere è fissato",
+ "amount_is_estimate" : "L'ammontare da ricevere è una stima",
+ "powered_by" : "Sviluppato da ${title}",
+ "error" : "Errore",
+ "estimated" : "Stimato",
+ "min_value" : "Min: ${value} ${currency}",
+ "max_value" : "Max: ${value} ${currency}",
+ "change_currency" : "Cambia Moneta",
+
+
+ "copy_id" : "Copia ID",
+ "exchange_result_write_down_trade_id" : "Gentilmente fai una copia o trascrivi l'ID dello scambio per continuare.",
+ "trade_id" : "ID Scambio:",
+ "copied_to_clipboard" : "Copiato negli Appunti",
+ "saved_the_trade_id" : "Ho salvato l'ID dello scambio",
+ "fetching" : "Recupero",
+ "id" : "ID: ",
+ "amount" : "Ammontare: ",
+ "payment_id" : "ID Pagamento: ",
+ "status" : "Stato: ",
+ "offer_expires_in" : "Offerta termina tra: ",
+ "trade_is_powered_by" : "Questo scambio è fornito da ${provider}",
+ "copy_address" : "Copia Indirizzo",
+ "exchange_result_confirm" : "Cliccando su Conferma, invierai ${fetchingLabel} ${from} dal tuo portafoglio chiamato ${walletName} all'indirizzo mostrato qui in basso. O puoi inviare dal tuo portafoglio esterno all'indirizzo/codice QR mostrato in basso.\n\nGentilmente clicca su Conferma per continuare o torna indietro per cambiare l'ammontare.",
+ "exchange_result_description" : "Devi inviare un minimo di ${fetchingLabel} ${from} all'indirizzo mostrato nella pagina seguente. Se invii un ammontare inferiore a ${fetchingLabel} ${from} la conversione potrebbe non andare a buon fine e l'indirizzo potrebbe non essere rimborsato.",
+ "exchange_result_write_down_ID" : "*Gentilmente fai una copia o trascrivi il tuo ID mostrato in alto.",
+ "confirm" : "Conferma",
+ "confirm_sending" : "Conferma l'invio",
+ "commit_transaction_amount_fee" : "Invia transazione\nAmmontare: ${amount}\nCommissione: ${fee}",
+ "sending" : "Invio",
+ "transaction_sent" : "Transazione inviata!",
+ "expired" : "Scaduta",
+ "time" : "${minutes}m ${seconds}s",
+ "send_xmr" : "Invia XMR",
+ "exchange_new_template" : "Nuovo modello",
+
+ "faq" : "Domande Frequenti",
+
+
+ "enter_your_pin" : "Inserisci il tuo PIN",
+ "loading_your_wallet" : "Caricamento portafoglio",
+
+
+ "new_wallet" : "Nuovo Portafoglio",
+ "wallet_name" : "Nome del Portafoglio",
+ "continue_text" : "Continua",
+ "choose_wallet_currency" : "Gentilmente scegli la moneta del portafoglio:",
+
+
+ "node_new" : "Nuovo Nodo",
+ "node_address" : "Indirizzo Nodo",
+ "node_port" : "Porta Nodo",
+ "login" : "Accedi",
+ "password" : "Password",
+ "nodes" : "Nodi",
+ "node_reset_settings_title" : "Ripristina impostazioni",
+ "nodes_list_reset_to_default_message" : "Sei sicuro di voler ripristinare le impostazioni predefinite?",
+ "change_current_node" : "Sei sicuro di voler cambiare il nodo corrente con ${node}?",
+ "change" : "Cambia",
+ "remove_node" : "Rimuovi nodo",
+ "remove_node_message" : "Sei sicuro di voler rimuovere il nodo selezionato?",
+ "remove" : "Remuovi",
+ "delete" : "Elimina",
+ "add_new_node" : "Aggiungi nuovo nodo",
+ "change_current_node_title" : "Cambia nodo corrente",
+ "node_test" : "Test",
+ "node_connection_successful" : "Connessione avvenuta con successo",
+ "node_connection_failed" : "Connessione fallita",
+ "new_node_testing" : "Test novo nodo",
+
+
+ "use" : "Passa a ",
+ "digit_pin" : "-cifre PIN",
+
+
+ "share_address" : "Condividi indirizzo",
+ "receive_amount" : "Ammontare",
+ "subaddresses" : "Sottoindirizzi",
+ "addresses" : "Indirizzi",
+ "scan_qr_code" : "Scansiona il codice QR per ottenere l'indirizzo",
+ "rename" : "Rinomina",
+ "choose_account" : "Scegli account",
+ "create_new_account" : "Crea nuovo account",
+ "accounts_subaddresses" : "Accounts e sottoindirizzi",
+
+
+ "restore_restore_wallet" : "Recupera Portafoglio",
+ "restore_title_from_seed_keys" : "Recupera dal seme/chiavi",
+ "restore_description_from_seed_keys" : "Recupera il tuo portafoglio dal seme/chiavi che hai salvato in un posto sicuro",
+ "restore_next" : "Prossimo",
+ "restore_title_from_backup" : "Recupera da backup",
+ "restore_description_from_backup" : "Puoi recuperare l'app Cake Wallet per intero dal tuo file di backup",
+ "restore_seed_keys_restore" : "Recupera Seme/Chiavi",
+ "restore_title_from_seed" : "Recupera dal seme",
+ "restore_description_from_seed" : "Recupera il tuo portafoglio da una combinazione di 25 o 13 parole",
+ "restore_title_from_keys" : "Recupera dalle chiavi",
+ "restore_description_from_keys" : "Recupera il tuo portafoglio da una sequenza di caratteri generati dalle tue chiavi private",
+ "restore_wallet_name" : "Nome Portafoglio",
+ "restore_address" : "Indirizzo",
+ "restore_view_key_private" : "Chiave di Visualizzazione (privata)",
+ "restore_spend_key_private" : "Chiave di Spesa (privata)",
+ "restore_recover" : "Recupera",
+ "restore_wallet_restore_description" : "Descrizione recupero Portafoglio",
+ "restore_new_seed" : "Nuovo seme",
+ "restore_active_seed" : "Seme attivo",
+ "restore_bitcoin_description_from_seed" : "Recupera il tuo portafoglio da una combinazione di 12 parole",
+ "restore_bitcoin_description_from_keys" : "Recupera il tuo portafoglio da una stringa WIF generata dalle tue chiavi private",
+ "restore_bitcoin_title_from_keys" : "Recupera da WIF",
+ "restore_from_date_or_blockheight" : "Gentilmente inserisci la data di un paio di giorni prima che hai creato questo portafoglio. Oppure inserisci l'altezza del blocco se la conosci",
+
+
+ "seed_reminder" : "Gentilmente trascrivi le parole. Ti tornerà utie in caso perdessi o ripristinassi il tuo telefono",
+ "seed_title" : "Seme",
+ "seed_share" : "Condividi seme",
+ "copy" : "Copia",
+
+
+ "seed_language_choose" : "Gentilmente scegli la lingua del seme:",
+ "seed_choose" : "Scegli la lingua del seme",
+ "seed_language_next" : "Prossimo",
+ "seed_language_english" : "Inglese",
+ "seed_language_chinese" : "Cinese",
+ "seed_language_dutch" : "Olandese",
+ "seed_language_german" : "Tedesco",
+ "seed_language_japanese" : "Giapponese",
+ "seed_language_portuguese" : "Portoghese",
+ "seed_language_russian" : "Russo",
+ "seed_language_spanish" : "Spagnolo",
+
+
+ "send_title" : "Invia",
+ "send_your_wallet" : "Il tuo portafoglio",
+ "send_address" : "${cryptoCurrency} indirizzo",
+ "send_payment_id" : "ID Pagamento (opzionale)",
+ "all" : "TUTTO",
+ "send_error_minimum_value" : "L'ammontare minimo è 0.01",
+ "send_error_currency" : "L'ammontare può contenere solo numeri",
+ "send_estimated_fee" : "Commissione stimata:",
+ "send_priority" : "Attualmente la commissione è impostata a priorità ${transactionPriority} .\nLa priorità della transazione può essere modificata nelle impostazioni",
+ "send_creating_transaction" : "Creazione della transazione",
+ "send_templates" : "Modelli",
+ "send_new" : "Nuovo",
+ "send_amount" : "Ammontare:",
+ "send_fee" : "Commissione:",
+ "send_name" : "Nome",
+ "send_got_it" : "Ho capito",
+ "send_sending" : "Invio...",
+ "send_success" : " ${crypto} inviati con successo",
+
+
+ "settings_title" : "Impostazioni",
+ "settings_nodes" : "Nodi",
+ "settings_current_node" : "Nodo attuale",
+ "settings_wallets" : "Portafogli",
+ "settings_display_balance_as" : "Mostra saldo come",
+ "settings_currency" : "Moneta",
+ "settings_fee_priority" : "Priorità commissione",
+ "settings_save_recipient_address" : "Salva indirizzo di destinazione",
+ "settings_personal" : "Personali",
+ "settings_change_pin" : "Cambia PIN",
+ "settings_change_language" : "Cambia lingua",
+ "settings_allow_biometrical_authentication" : "Consenti autenticazione biometrica",
+ "settings_dark_mode" : "Tema scuro",
+ "settings_transactions" : "Transazioni",
+ "settings_trades" : "Scambi",
+ "settings_display_on_dashboard_list" : "Mostra nella lista della pagina principale",
+ "settings_all" : "TUTTO",
+ "settings_only_trades" : "Solo scambi",
+ "settings_only_transactions" : "Solo transazioni",
+ "settings_none" : "Nessuno",
+ "settings_support" : "Supporto",
+ "settings_terms_and_conditions" : "Termini e condizioni",
+ "pin_is_incorrect" : "Il PIN non è corretto",
+
+
+ "setup_pin" : "Imposta PIN",
+ "enter_your_pin_again" : "Inserisci il tuo pin di nuovo",
+ "setup_successful" : "Il tuo PIN è stato impostato con successo!",
+
+
+ "wallet_keys" : "Seme Portafoglio /chiavi",
+ "wallet_seed" : "Seme Portafoglio",
+ "private_key" : "Chiave privata",
+ "public_key" : "Chiave pubblica",
+ "view_key_private" : "Chiave di visualizzazione (privata)",
+ "view_key_public" : "Chiave di visualizzazione (pubblica)",
+ "spend_key_private" : "Chiave di spesa (privata)",
+ "spend_key_public" : "Chiave di spesa (pubblica)",
+ "copied_key_to_clipboard" : " ${key} copiata negli Appunti",
+
+
+ "new_subaddress_title" : "Nuovo indirizzo",
+ "new_subaddress_label_name" : "Nome etichetta",
+ "new_subaddress_create" : "Crea",
+
+
+ "subaddress_title" : "Lista sottoindirizzi",
+
+
+ "trade_details_title" : "Dettagli Scambio",
+ "trade_details_id" : "ID",
+ "trade_details_state" : "Stato",
+ "trade_details_fetching" : "Recupero",
+ "trade_details_provider" : "Fornitore",
+ "trade_details_created_at" : "Creato alle",
+ "trade_details_pair" : "Coppia",
+ "trade_details_copied" : "${title} copiati negli Appunti",
+
+
+ "trade_history_title" : "Storico scambi",
+
+
+ "transaction_details_title" : "Dettagli Transazione",
+ "transaction_details_transaction_id" : "ID Transazione",
+ "transaction_details_date" : "Data",
+ "transaction_details_height" : "Altezza",
+ "transaction_details_amount" : "Ammontare",
+ "transaction_details_fee" : "Commissione",
+ "transaction_details_copied" : "${title} copiati negli Appunti",
+ "transaction_details_recipient_address" : "Indirizzo destinatario",
+
+
+ "wallet_list_title" : "Portafoglio Monero",
+ "wallet_list_create_new_wallet" : "Crea Nuovo Portafoglio",
+ "wallet_list_restore_wallet" : "Recupera Portafoglio",
+ "wallet_list_load_wallet" : "Caricamento Portafoglio",
+ "wallet_list_loading_wallet" : "Caricamento portafoglio ${wallet_name}",
+ "wallet_list_failed_to_load" : "Caricamento portafoglio ${wallet_name} fallito. ${error}",
+ "wallet_list_removing_wallet" : "Rimozione portafoglio ${wallet_name}",
+ "wallet_list_failed_to_remove" : "Rimozione portafoglio ${wallet_name} fallita. ${error}",
+
+
+ "widgets_address" : "Indirizzo",
+ "widgets_restore_from_blockheight" : "Recupera da altezza blocco",
+ "widgets_restore_from_date" : "Recupera da data",
+ "widgets_or" : "o",
+ "widgets_seed" : "Seme",
+
+
+ "router_no_route" : "Nessun percorso definito per ${name}",
+
+
+ "error_text_account_name" : "Il nome dell'Account può contenere solo lettere, numeri\ne deve avere una lunghezza compresa tra 1 e 15 caratteri",
+ "error_text_contact_name" : "Il nome del Contatto non può contenere i simboli ` , ' \" \ne deve avere una lunghezza compresa tra 1 e 32 caratteri",
+ "error_text_address" : "L'indirizzo del Portafoglio deve corrispondere alla tipologia\ndi criptovaluta",
+ "error_text_node_address" : "Gentilmente inserisci un indirizzo iPv4",
+ "error_text_node_port" : "La porta del nodo può contenere solo numeri compresi tra 0 e 65535",
+ "error_text_payment_id" : "l'ID del pagamento può contenere solo da 16 a 64 caratteri in hex",
+ "error_text_xmr" : "Il valore XMR non può eccedere il saldo disponibile.\nIl numero delle cifre decimali deve essere inferiore o uguale a 12",
+ "error_text_fiat" : "L'ammontare non può eccedere il saldo dispoinibile.\nIl numero di cifre decimali deve essere inferiore o uguale a 2",
+ "error_text_subaddress_name" : "Il nome del sottoindirizzo non può contenere i simboli ` , ' \" \ne deve avere una lunghezza compresa tra 1 e 20 caratteri",
+ "error_text_amount" : "L'ammontare può contenere solo numeri",
+ "error_text_wallet_name" : "Il nome del portafoglio può contenere solo lettere, numeri\ne deve avere una lunghezza compresa tra 1 e 15 caratteri",
+ "error_text_keys" : "Le chiavi del portafoglio possono contenere solo 64 caratteri in hex",
+ "error_text_crypto_currency" : "Il numero delle cifre decimali\ndeve essere inferiore o uguale a 12",
+ "error_text_minimal_limit" : "Lo scambio per ${provider} non è stato creato. L'ammontare è inferiore al minimo: ${min} ${currency}",
+ "error_text_maximum_limit" : "Lo scambio per ${provider} non è stato creato. L'ammontare è superiore al massimo: ${max} ${currency}",
+ "error_text_limits_loading_failed" : "Lo scambio per ${provider} non è stato creato. Caricamento dei limiti fallito",
+ "error_text_template" : "Il nome del modello e l'indirizzo non possono contenere i simboli ` , ' \" \ne devono avere una lunghezza compresa tra 1 e 106 caratteri",
+
+
+ "auth_store_ban_timeout" : "ban_timeout",
+ "auth_store_banned_for" : "Bannato per ",
+ "auth_store_banned_minutes" : " minuti",
+ "auth_store_incorrect_password" : "PIN non corretto",
+ "wallet_store_monero_wallet" : "Portafoglio Monero",
+ "wallet_restoration_store_incorrect_seed_length" : "Lunghezza seme non corretta",
+
+
+ "full_balance" : "Saldo Completo",
+ "available_balance" : "Saldo Disponibile",
+ "hidden_balance" : "Saldo Nascosto",
+
+
+ "sync_status_syncronizing" : "SINCRONIZZAZIONE",
+ "sync_status_syncronized" : "SINCRONIZZATO",
+ "sync_status_not_connected" : "NON CONNESSO",
+ "sync_status_starting_sync" : "INIZIO SINC",
+ "sync_status_failed_connect" : "DISCONNESSO",
+ "sync_status_connecting" : "CONNESSIONE",
+ "sync_status_connected" : "CONNESSO",
+
+
+ "transaction_priority_slow" : "Bassa",
+ "transaction_priority_regular" : "Regolare",
+ "transaction_priority_medium" : "Media",
+ "transaction_priority_fast" : "Alta",
+ "transaction_priority_fastest" : "Massima",
+
+
+ "trade_for_not_created" : "Lo scambio per ${title} non è stato creato.",
+ "trade_not_created" : "Scambio non creato.",
+ "trade_id_not_found" : "Scambio ${tradeId} di ${title} not trovato.",
+ "trade_not_found" : "Scambio non trovato.",
+
+
+ "trade_state_pending" : "In corso",
+ "trade_state_confirming" : "Conferma",
+ "trade_state_trading" : "Scambio",
+ "trade_state_traded" : "Scambiato",
+ "trade_state_complete" : "Completato",
+ "trade_state_to_be_created" : "Da creare",
+ "trade_state_unpaid" : "Non pagato",
+ "trade_state_underpaid" : "Sottopagato",
+ "trade_state_paid_unconfirmed" : "Pagato non confermato",
+ "trade_state_paid" : "Pagato",
+ "trade_state_btc_sent" : "Btc inviati",
+ "trade_state_timeout" : "Timeout",
+ "trade_state_created" : "Creato",
+ "trade_state_finished" : "Finito",
+
+ "change_language" : "Cambia lingua",
+ "change_language_to" : "Cambia lingua in ${language}?",
+
+ "paste" : "Incolla",
+ "restore_from_seed_placeholder" : "Gentilmente inserisci o incolla il tuo seme qui",
+ "add_new_word" : "Aggiungi nuova parola",
+ "incorrect_seed" : "Il testo inserito non è valido.",
+
+ "biometric_auth_reason" : "Scansiona la tua impronta per autenticarti",
+ "version" : "Versione ${currentVersion}",
+
+ "openalias_alert_title" : "XMR Destinatario Rilevato",
+ "openalias_alert_content" : "Invierai i tuoi fondi a\n${recipient_name}",
+
+ "card_address" : "Indirizzo:",
+ "buy" : "Compra",
+
+ "placeholder_transactions" : "Le tue transazioni saranno mostrate qui",
+ "placeholder_contacts" : "I tuoi contatti saranno mostrati qui",
+
+ "template" : "Modello",
+ "confirm_delete_template" : "Questa azione cancellerà questo modello. Desideri continuare?",
+ "confirm_delete_wallet" : "Questa azione cancellerà questo portafoglio. Desideri continuare?",
+
+ "picker_description" : "Per scegliere ChangeNOW o MorphToken, gentilmente cambia prima la tua coppia di valute",
+
+ "change_wallet_alert_title" : "Cambia portafoglio attuale",
+ "change_wallet_alert_content" : "Sei sicuro di voler cambiare il portafoglio attuale con ${wallet_name}?",
+
+ "creating_new_wallet" : "Creazione nuovo portafoglio",
+ "creating_new_wallet_error" : "Errore: ${description}",
+
+ "seed_alert_title" : "Attenzione",
+ "seed_alert_content" : "Il seme è l'unico modo per recuperare il tuo portafoglio. L'hai trascritto?",
+ "seed_alert_back" : "Torna indietro",
+ "seed_alert_yes" : "Sì, l'ho fatto",
+
+ "exchange_sync_alert_content" : "Gentilmente aspetta che il tuo portafoglio sia sincronizzato",
+
+ "pre_seed_title" : "IMPORTANTE",
+ "pre_seed_description" : "Nella pagina seguente ti sarà mostrata una serie di parole ${words}. Questo è il tuo seme unico e privato ed è l'UNICO modo per recuperare il tuo portafoglio in caso di perdita o malfunzionamento. E' TUA responsabilità trascriverlo e conservarlo in un posto sicuro fuori dall'app Cake Wallet.",
+ "pre_seed_button_text" : "Ho capito. Mostrami il seme",
+
+ "xmr_to_error" : "XMR.TO errore",
+ "xmr_to_error_description" : "Ammontare invalido. Il limite massimo è 8 cifre dopo il punto decimale",
+
+ "provider_error" : "${provider} errore",
+
+ "use_ssl" : "Usa SSL",
+
+ "color_theme" : "Colore tema",
+ "light_theme" : "Bianco",
+ "bright_theme" : "Colorato",
+ "dark_theme" : "Scuro",
+ "enter_your_note" : "Inserisci la tua nota…",
+ "note_optional" : "Nota (opzionale)",
+ "note_tap_to_change" : "Nota (clicca per cambiare)",
+ "transaction_key" : "Chiave Transazione",
+ "confirmations" : "Conferme",
+ "recipient_address" : "Indirizzo di destinazione",
+
+ "extra_id" : "Extra ID:",
+ "destination_tag" : "Tag destinazione:",
+ "memo" : "Memo:",
+
+ "backup" : "Backup",
+ "change_password" : "Cambia password",
+ "backup_password" : "Backup password",
+ "write_down_backup_password" : "Gentilmente trascrivi la password del backup, che è usata per importare i tuoi file di backup.",
+ "export_backup" : "Esporta backup",
+ "save_backup_password" : "Gentilmente assicurati di aver salvato la password del tuo backup. Senza questa non sarai in grado di importare i tuoi file di backup.",
+ "backup_file" : "Backup file",
+
+ "edit_backup_password" : "Modifica Password Backup",
+ "save_backup_password_alert" : "Salva password Backup",
+ "change_backup_password_alert" : "I precedenti file di backup non potranno essere importati con la nuova password di backup. La nuova password di backup verrà usata soltanto per i nuovi file di backup. Sei sicuro di voler cambiare la tua password di backup?",
+
+ "enter_backup_password" : "Inserisci la password di backup qui",
+ "select_backup_file" : "Seleziona file di backup",
+ "import" : "Importa",
+ "please_select_backup_file" : "Gentilmente seleziona il file di backup e inserisci la password di backup.",
+
+ "fixed_rate" : "Tasso fisso",
+ "fixed_rate_alert" : "Potrai inserire l'ammontare da ricevere quando il tasso è fisso. Vuoi cambiare alla modalità tasso fisso?",
+
+ "xlm_extra_info" : "Gentilmente ricorda di indicare il Memo ID quando invii la transazione XLM per lo scambio",
+ "xrp_extra_info" : "Gentilmente ricorda di indicare il Tag di Destinazione quando invii una transazione XRP per lo scambio",
+
+ "exchange_incorrect_current_wallet_for_xmr" : "Se vuoi scambiare XMR dal tuo saldo Cake Wallet Monero, gentilmente passa al tuo portafoglio Monero.",
+ "confirmed" : "Confermato",
+ "unconfirmed" : "Non confermato",
+ "displayable" : "Visualizzabile",
+
+ "submit_request" : "invia una richiesta"
+}
\ No newline at end of file
diff --git a/res/values/strings_ja.arb b/res/values/strings_ja.arb
index 291d5afd3..0df4e9dda 100644
--- a/res/values/strings_ja.arb
+++ b/res/values/strings_ja.arb
@@ -170,7 +170,7 @@
"restore_wallet_restore_description" : "ウォレットの復元",
"restore_new_seed" : "新しい種",
"restore_active_seed" : "アクティブシード",
- "restore_bitcoin_description_from_seed" : "12ワードの組み合わせコードからウォレットを復元する",
+ "restore_bitcoin_description_from_seed" : "24ワードの組み合わせコードからウォレットを復元する",
"restore_bitcoin_description_from_keys" : "秘密鍵から生成されたWIF文字列からウォレットを復元します",
"restore_bitcoin_title_from_keys" : "WIFから復元",
"restore_from_date_or_blockheight" : "このウォレットを作成する数日前に日付を入力してください。 または、ブロックの高さがわかっている場合は、代わりに入力してください",
@@ -469,5 +469,7 @@
"unconfirmed" : "未確認",
"displayable" : "表示可能",
- "submit_request" : "リクエストを送信する"
+ "submit_request" : "リクエストを送信する",
+
+ "buy_alert_content" : "現在、ビットコインの購入のみをサポートしています。 ビットコインを購入するには、ビットコインウォレットを作成するか切り替えてください"
}
\ No newline at end of file
diff --git a/res/values/strings_ko.arb b/res/values/strings_ko.arb
index 781df8d8a..ade3cc847 100644
--- a/res/values/strings_ko.arb
+++ b/res/values/strings_ko.arb
@@ -170,7 +170,7 @@
"restore_wallet_restore_description" : "월렛 복원 설명",
"restore_new_seed" : "새로운 씨앗",
"restore_active_seed" : "활성 종자",
- "restore_bitcoin_description_from_seed" : "12 단어 조합 코드에서 지갑 복원",
+ "restore_bitcoin_description_from_seed" : "24 단어 조합 코드에서 지갑 복원",
"restore_bitcoin_description_from_keys" : "개인 키에서 생성 된 WIF 문자열에서 지갑 복원",
"restore_bitcoin_title_from_keys" : "WIF에서 복원",
"restore_from_date_or_blockheight" : "이 지갑을 생성하기 며칠 전에 날짜를 입력하십시오. 또는 블록 높이를 알고있는 경우 대신 입력하십시오.",
@@ -469,5 +469,7 @@
"unconfirmed" : "미확인",
"displayable" : "표시 가능",
- "submit_request" : "요청을 제출"
+ "submit_request" : "요청을 제출",
+
+ "buy_alert_content" : "현재 우리는 비트 코인 구매 만 지원합니다. 비트 코인을 구매하려면 비트 코인 지갑을 생성하거나 전환하십시오"
}
\ No newline at end of file
diff --git a/res/values/strings_nl.arb b/res/values/strings_nl.arb
index 9a6183efb..8f50f7102 100644
--- a/res/values/strings_nl.arb
+++ b/res/values/strings_nl.arb
@@ -170,7 +170,7 @@
"restore_wallet_restore_description" : "Portemonnee-herstelbeschrijving",
"restore_new_seed" : "Nieuw zaad",
"restore_active_seed" : "Actief zaad",
- "restore_bitcoin_description_from_seed" : "Herstel uw portemonnee met een combinatiecode van 12 woorden",
+ "restore_bitcoin_description_from_seed" : "Herstel uw portemonnee met een combinatiecode van 24 woorden",
"restore_bitcoin_description_from_keys" : "Herstel uw portemonnee van de gegenereerde WIF-string van uw privésleutels",
"restore_bitcoin_title_from_keys" : "Herstel van WIF",
"restore_from_date_or_blockheight" : "Voer een datum in een paar dagen voordat u deze portemonnee heeft gemaakt. Of als u de blokhoogte kent, voert u deze in",
@@ -469,5 +469,7 @@
"unconfirmed" : "Niet bevestigd",
"displayable" : "Weer te geven",
- "submit_request" : "een verzoek indienen"
+ "submit_request" : "een verzoek indienen",
+
+ "buy_alert_content" : "Momenteel ondersteunen we alleen de aankoop van Bitcoin. Om Bitcoin te kopen, moet u uw Bitcoin-portemonnee aanmaken of naar uw Bitcoin-portemonnee overschakelen"
}
\ No newline at end of file
diff --git a/res/values/strings_pl.arb b/res/values/strings_pl.arb
index 6db66958e..84a8ba338 100644
--- a/res/values/strings_pl.arb
+++ b/res/values/strings_pl.arb
@@ -170,7 +170,7 @@
"restore_wallet_restore_description" : "Opis przywracania portfela",
"restore_new_seed" : "Nowe nasienie",
"restore_active_seed" : "Aktywne nasiona",
- "restore_bitcoin_description_from_seed" : "Przywróć swój portfel z kodu złożonego z 12 słów",
+ "restore_bitcoin_description_from_seed" : "Przywróć swój portfel z kodu złożonego z 24 słów",
"restore_bitcoin_description_from_keys" : "Przywróć swój portfel z wygenerowanego ciągu WIF z kluczy prywatnych",
"restore_bitcoin_title_from_keys" : "Przywróć z WIF",
"restore_from_date_or_blockheight" : "Wprowadź datę na kilka dni przed utworzeniem tego portfela. Lub jeśli znasz wysokość bloku, wprowadź go zamiast tego",
@@ -469,5 +469,7 @@
"unconfirmed" : "Niepotwierdzony",
"displayable" : "Wyświetlane",
- "submit_request" : "złożyć wniosek"
+ "submit_request" : "złożyć wniosek",
+
+ "buy_alert_content" : "Obecnie obsługujemy tylko zakup Bitcoinów. Aby kupić Bitcoin, utwórz lub przełącz się na swój portfel Bitcoin"
}
\ No newline at end of file
diff --git a/res/values/strings_pt.arb b/res/values/strings_pt.arb
index 631be8f42..18a5ad9b5 100644
--- a/res/values/strings_pt.arb
+++ b/res/values/strings_pt.arb
@@ -170,7 +170,7 @@
"restore_wallet_restore_description" : "Restauração da carteira",
"restore_new_seed" : "Nova semente",
"restore_active_seed" : "Semente ativa",
- "restore_bitcoin_description_from_seed" : "Restaure sua carteira a partir de um código de combinação de 12 palavras",
+ "restore_bitcoin_description_from_seed" : "Restaure sua carteira a partir de um código de combinação de 24 palavras",
"restore_bitcoin_description_from_keys" : "Restaure sua carteira a partir da string WIF gerada de suas chaves privadas",
"restore_bitcoin_title_from_keys" : "Restaurar de WIF",
"restore_from_date_or_blockheight" : "Insira uma data alguns dias antes de criar esta carteira. Ou se você souber a altura do bloco, insira-o",
@@ -469,5 +469,7 @@
"unconfirmed" : "Não confirmado",
"displayable" : "Exibível",
- "submit_request" : "enviar um pedido"
+ "submit_request" : "enviar um pedido",
+
+ "buy_alert_content" : "Atualmente, apoiamos apenas a compra de Bitcoin. Para comprar Bitcoin, crie ou mude para sua carteira Bitcoin"
}
\ No newline at end of file
diff --git a/res/values/strings_ru.arb b/res/values/strings_ru.arb
index 333a823d8..711d4fa07 100644
--- a/res/values/strings_ru.arb
+++ b/res/values/strings_ru.arb
@@ -170,7 +170,7 @@
"restore_wallet_restore_description" : "Описание восстановления кошелька",
"restore_new_seed" : "Новая мнемоническая фраза",
"restore_active_seed" : "Активная мнемоническая фраза",
- "restore_bitcoin_description_from_seed" : "Вы можете восстановить кошелёк используя 12-ти значную мнемоническую фразу",
+ "restore_bitcoin_description_from_seed" : "Вы можете восстановить кошелёк используя 24-ти значную мнемоническую фразу",
"restore_bitcoin_description_from_keys" : "Вы можете восстановить кошелёк с помощью WIF",
"restore_bitcoin_title_from_keys" : "Восстановить с помощью WIF",
"restore_from_date_or_blockheight" : "Пожалуйста, введите дату за несколько дней до создания этого кошелька. Или, если вы знаете высоту блока, введите ее значение",
@@ -469,5 +469,7 @@
"unconfirmed" : "Неподтвержденный",
"displayable" : "Отображаемый",
- "submit_request" : "отправить запрос"
+ "submit_request" : "отправить запрос",
+
+ "buy_alert_content" : "В настоящее время мы поддерживаем только покупку Bitcoin. Чтобы купить Bitcoin, создайте или переключитесь на ваш Bitcoin кошелек"
}
\ No newline at end of file
diff --git a/res/values/strings_uk.arb b/res/values/strings_uk.arb
index cc10a2d89..46c82da58 100644
--- a/res/values/strings_uk.arb
+++ b/res/values/strings_uk.arb
@@ -170,7 +170,7 @@
"restore_wallet_restore_description" : "Опис відновлюваного гаманця",
"restore_new_seed" : "Нова мнемонічна фраза",
"restore_active_seed" : "Активна мнемонічна фраза",
- "restore_bitcoin_description_from_seed" : "Ви можете відновити гаманець використовуючи 12-ти слівну мнемонічну фразу",
+ "restore_bitcoin_description_from_seed" : "Ви можете відновити гаманець використовуючи 24-ти слівну мнемонічну фразу",
"restore_bitcoin_description_from_keys" : "Ви можете відновити гаманець за допомогою WIF",
"restore_bitcoin_title_from_keys" : "Відновити за допомогою WIF",
"restore_from_date_or_blockheight" : "Будь ласка, введіть дату за кілька днів до створення цього гаманця. Або, якщо ви знаєте висоту блоку, введіть її значення",
@@ -469,5 +469,7 @@
"unconfirmed" : "Непідтверджений",
"displayable" : "Відображуваний",
- "submit_request" : "надіслати запит"
+ "submit_request" : "надіслати запит",
+
+ "buy_alert_content" : "На даний час ми підтримуємо тільки покупку Bitcoin. Щоб купити Bitcoin, будь ласка, створіть або переключіться на ваш Bitcoin гаманець"
}
\ No newline at end of file
diff --git a/res/values/strings_zh.arb b/res/values/strings_zh.arb
index 639babcbc..cff7833b1 100644
--- a/res/values/strings_zh.arb
+++ b/res/values/strings_zh.arb
@@ -1,28 +1,28 @@
{
- "welcome" : "歡迎來到",
+ "welcome" : "欢迎使用",
"cake_wallet" : "Cake Wallet",
- "first_wallet_text" : "很棒的Monero和比特幣錢包",
+ "first_wallet_text" : "很棒的门罗币和比特币钱包",
"please_make_selection" : "请在下面进行选择 创建或恢复您的钱包.",
"create_new" : "创建新钱包",
"restore_wallet" : "恢复钱包",
- "accounts" : "帐目",
+ "accounts" : "账户",
"edit" : "编辑",
"account" : "帐户",
- "add" : "加",
+ "add" : "添加",
"address_book" : "地址簿",
"contact" : "联系",
"please_select" : "请选择:",
"cancel" : "取消",
- "ok" : "好",
+ "ok" : "确认",
"contact_name" : "联系人姓名",
- "reset" : "重启",
+ "reset" : "重置",
"save" : "保存",
- "address_remove_contact" : "刪除聯繫人",
- "address_remove_content" : "您確定要刪除所選的聯繫人嗎?",
+ "address_remove_contact" : "刪除联系人",
+ "address_remove_content" : "您确定要刪除所选的联系人吗?",
"authenticated" : "已认证",
@@ -32,18 +32,18 @@
"wallet_menu" : "钱包菜单",
"Blocks_remaining" : "${status} 剩余的块",
- "please_try_to_connect_to_another_node" : "请尝试连接到另一个节点",
- "xmr_hidden" : "隱",
+ "please_try_to_connect_to_another_node" : "请尝试连接到其他节点",
+ "xmr_hidden" : "隐藏",
"xmr_available_balance" : "可用余额 ",
"xmr_full_balance" : "全部余额",
"send" : "发送",
"receive" : "接收",
- "transactions" : "交易次数",
- "incoming" : "传入",
- "outgoing" : "外向",
+ "transactions" : "交易情况",
+ "incoming" : "收到",
+ "outgoing" : "发送",
"transactions_by_date" : "按日期交易",
"trades" : "交易",
- "filters" : "過濾",
+ "filters" : "过滤",
"today" : "今天",
"yesterday" : "昨天",
"received" : "已收到",
@@ -51,67 +51,67 @@
"pending" : " (待定)",
"rescan" : "重新扫描",
"reconnect" : "重新连接",
- "wallets" : "皮夹",
+ "wallets" : "钱包",
"show_seed" : "显示种子",
- "show_keys" : "顯示種子/密鑰",
+ "show_keys" : "显示种子/密钥",
"address_book_menu" : "地址簿",
- "reconnection" : "重新连线",
+ "reconnection" : "重新连接",
"reconnect_alert_text" : "您确定要重新连接吗?",
- "exchange" : "交换",
- "clear" : "明确",
+ "exchange" : "兑换",
+ "clear" : "清空",
"refund_address" : "退款地址",
- "change_exchange_provider" : "更改交易所提供商",
- "you_will_send" : "從轉換",
- "you_will_get" : "轉換成",
- "amount_is_guaranteed" : "接收金額有保證",
+ "change_exchange_provider" : "更改交易所",
+ "you_will_send" : "转换自",
+ "you_will_get" : "转换到",
+ "amount_is_guaranteed" : "保证收到的金额",
"amount_is_estimate" : "收款金额为估算值",
- "powered_by" : "供电 ${title}",
+ "powered_by" : "Powered by ${title}",
"error" : "错误",
- "estimated" : "估计的",
- "min_value" : "敏: ${value} ${currency}",
+ "estimated" : "估计值",
+ "min_value" : "最低: ${value} ${currency}",
"max_value" : "最高: ${value} ${currency}",
"change_currency" : "更改币种",
- "copy_id" : "复印ID",
+ "copy_id" : "复制ID",
"exchange_result_write_down_trade_id" : "请复制或写下交易编号以继续.",
- "trade_id" : "贸易编号:",
+ "trade_id" : "交易编号:",
"copied_to_clipboard" : "复制到剪贴板",
- "saved_the_trade_id" : "我已经保存了交易ID",
- "fetching" : "正在取得",
+ "saved_the_trade_id" : "我已经保存了交易编号",
+ "fetching" : "正在获取",
"id" : "ID: ",
- "amount" : "量: ",
+ "amount" : "金额: ",
"payment_id" : "付款 ID: ",
"status" : "状态: ",
"offer_expires_in" : "优惠有效期至 ",
"trade_is_powered_by" : "该交易由 ${provider}",
"copy_address" : "复制地址",
- "exchange_result_confirm" : "点击确认 您将发送 ${fetchingLabel} ${from} 从你的钱包里 ${walletName} 到下面顯示的地址。 或者您可以從外部錢包發送到以下地址/ QR码。\n\n请按确认继续或返回以更改金额",
- "exchange_result_description" : "您必須至少發送 ${fetchingLabel} ${from} 到下一頁上顯示的地址。 如果您發送的金額少於 ${fetchingLabel} ${from},則可能無法轉換,因此無法退還。",
+ "exchange_result_confirm" : "点击确认 您将发送 ${fetchingLabel} ${from} 从你的钱包里 ${walletName} 到下面显示的地址。 或者您可以从外部钱包发送到以下地址/ QR码。\n\n请按确认继续或返回以更改金额",
+ "exchange_result_description" : "您必須至少发送 ${fetchingLabel} ${from} 到下一页上显示的地址。 如果您发送的金额少于 ${fetchingLabel} ${from},则可能无法转换,因此无法退还。",
"exchange_result_write_down_ID" : "*请复制或写下您上面显示的ID.",
"confirm" : "确认",
"confirm_sending" : "确认发送",
- "commit_transaction_amount_fee" : "提交交易\n量: ${amount}\nFee: ${fee}",
+ "commit_transaction_amount_fee" : "提交交易\n金额: ${amount}\n手续费: ${fee}",
"sending" : "正在发送",
"transaction_sent" : "交易已发送",
"expired" : "已过期",
"time" : "${minutes}m ${seconds}s",
"send_xmr" : "发送 XMR",
- "exchange_new_template" : "新範本",
+ "exchange_new_template" : "新模板",
"faq" : "FAQ",
"enter_your_pin" : "输入密码",
- "loading_your_wallet" : "装钱包",
+ "loading_your_wallet" : "加载您的钱包",
"new_wallet" : "新钱包",
"wallet_name" : "钱包名称",
"continue_text" : "继续",
- "choose_wallet_currency" : "請選擇錢包貨幣:",
+ "choose_wallet_currency" : "请选择钱包货币:",
"node_new" : "新节点",
@@ -128,27 +128,27 @@
"remove_node_message" : "您确定要删除所选节点吗?",
"remove" : "去掉",
"delete" : "删除",
- "add_new_node" : "添加新節點",
- "change_current_node_title" : "更改當前節點",
- "node_test" : "測試",
- "node_connection_successful" : "連接成功",
- "node_connection_failed" : "連接失敗",
- "new_node_testing" : "新節點測試",
+ "add_new_node" : "添加新节点",
+ "change_current_node_title" : "更改当前节点",
+ "node_test" : "测试",
+ "node_connection_successful" : "连接成功",
+ "node_connection_failed" : "连接失敗",
+ "new_node_testing" : "新节点测试",
- "use" : "採用 ",
- "digit_pin" : "数字别针",
+ "use" : "使用 ",
+ "digit_pin" : "位 PIN",
"share_address" : "分享地址",
- "receive_amount" : "量",
+ "receive_amount" : "金额",
"subaddresses" : "子地址",
"addresses" : "地址",
- "scan_qr_code" : "掃描二維碼獲取地址",
- "rename" : "改名",
- "choose_account" : "選擇帳號",
- "create_new_account" : "建立新帳戶",
- "accounts_subaddresses" : "帳戶和子地址",
+ "scan_qr_code" : "扫描二维码获取地址",
+ "rename" : "重命名",
+ "choose_account" : "选择账户",
+ "create_new_account" : "建立新账户",
+ "accounts_subaddresses" : "账户和子地址",
"restore_restore_wallet" : "恢复钱包",
@@ -161,41 +161,40 @@
"restore_title_from_seed" : "从种子还原",
"restore_description_from_seed" : "从25个字中恢复您的钱包或13个字的组合码",
"restore_title_from_keys" : "从密钥还原",
- "restore_description_from_keys" : "R从生成的电子钱包从您的私钥中保存的击键",
+ "restore_description_from_keys" : "使用私钥恢复钱包",
"restore_wallet_name" : "钱包名称",
"restore_address" : "地址",
- "restore_view_key_private" : "查看金钥 (私人的)",
- "restore_spend_key_private" : "支出金钥 (私人的)",
+ "restore_view_key_private" : "View私钥",
+ "restore_spend_key_private" : "Spend私钥",
"restore_recover" : "恢复",
"restore_wallet_restore_description" : "钱包还原说明",
- "restore_new_seed" : "新種子",
- "restore_active_seed" : "活性種子",
- "restore_bitcoin_description_from_seed" : "從12個單詞的組合碼恢復您的錢包",
- "restore_bitcoin_description_from_keys" : "從私鑰中生成的WIF字符串還原您的錢包",
- "restore_bitcoin_title_from_keys" : "從WIF還原",
- "restore_from_date_or_blockheight" : "請在創建此錢包之前幾天輸入一個日期。 或者,如果您知道塊高,請改為輸入",
+ "restore_new_seed" : "新种子",
+ "restore_active_seed" : "活性种子",
+ "restore_bitcoin_description_from_seed" : "从24个文字的组成码恢复您的钱包",
+ "restore_bitcoin_description_from_keys" : "从私钥中生成的WIF字符串恢复您钱包",
+ "restore_bitcoin_title_from_keys" : "从WIF还原",
+ "restore_from_date_or_blockheight" : "请输入您创建这个钱包前几天的日期。或者如果您知道区块高度,请输入区块高度",
-
- "seed_reminder" : "請寫下這些,以防丟失或擦拭手機",
+ "seed_reminder" : "请记下这些内容,以防丟失或数据损坏",
"seed_title" : "种子",
"seed_share" : "分享种子",
"copy" : "复制",
- "seed_language_choose" : "請選擇種子語言:",
- "seed_choose" : "選擇種子語言",
+ "seed_language_choose" : "请选择种子语言:",
+ "seed_choose" : "选择种子语言",
"seed_language_next" : "下一个",
- "seed_language_english" : "英語",
+ "seed_language_english" : "英文",
"seed_language_chinese" : "中文",
- "seed_language_dutch" : "荷蘭人",
- "seed_language_german" : "德語",
- "seed_language_japanese" : "日本",
- "seed_language_portuguese" : "葡萄牙語",
- "seed_language_russian" : "俄語",
+ "seed_language_dutch" : "荷兰文",
+ "seed_language_german" : "德文",
+ "seed_language_japanese" : "日文",
+ "seed_language_portuguese" : "葡萄牙文",
+ "seed_language_russian" : "俄文",
"seed_language_spanish" : "西班牙文",
- "send_title" : "發送",
+ "send_title" : "发送",
"send_your_wallet" : "你的钱包",
"send_address" : "${cryptoCurrency} 地址",
"send_payment_id" : "付款编号 (可选的)",
@@ -205,37 +204,37 @@
"send_estimated_fee" : "预估费用:",
"send_priority" : "目前,费用设置为 ${transactionPriority} 优先.\n交易优先级可以在设置中进行调整",
"send_creating_transaction" : "创建交易",
- "send_templates" : "範本",
- "send_new" : "新",
- "send_amount" : "量:",
- "send_fee" : "費用:",
- "send_name" : "名稱",
- "send_got_it" : "得到它了",
- "send_sending" : "正在發送...",
- "send_success" : "你${crypto}已成功發送",
+ "send_templates" : "模板",
+ "send_new" : "新建",
+ "send_amount" : "金额:",
+ "send_fee" : "手续费:",
+ "send_name" : "名称",
+ "send_got_it" : "明白",
+ "send_sending" : "正在发送...",
+ "send_success" : "您的${crypto}已成功发送",
"settings_title" : "设定值",
"settings_nodes" : "节点数",
"settings_current_node" : "当前节点",
- "settings_wallets" : "皮夹",
+ "settings_wallets" : "钱包",
"settings_display_balance_as" : "将余额显示为",
"settings_currency" : "货币",
- "settings_fee_priority" : "费用优先",
+ "settings_fee_priority" : "交易优先级",
"settings_save_recipient_address" : "保存收件人地址",
"settings_personal" : "个人",
"settings_change_pin" : "更改密码",
- "settings_change_language" : "改变语言",
- "settings_allow_biometrical_authentication" : "允许生物特征认证",
- "settings_dark_mode" : "暗模式",
- "settings_transactions" : "交易次数",
+ "settings_change_language" : "修改语言",
+ "settings_allow_biometrical_authentication" : "允许生物识别认证",
+ "settings_dark_mode" : "黑暗模式",
+ "settings_transactions" : "交易情况",
"settings_trades" : "交易",
"settings_display_on_dashboard_list" : "显示在仪表板上",
"settings_all" : "所有",
"settings_only_trades" : "只交易",
"settings_only_transactions" : "仅交易",
"settings_none" : "没有",
- "settings_support" : "支持",
+ "settings_support" : "帮助",
"settings_terms_and_conditions" : "条款和条件",
"pin_is_incorrect" : "PIN码不正确",
@@ -245,14 +244,14 @@
"setup_successful" : "您的PIN码已成功设置!",
- "wallet_keys" : "錢包種子/鑰匙",
- "wallet_seed" : "錢包種子",
- "private_key" : "私鑰",
- "public_key" : "公鑰",
- "view_key_private" : "查看金钥 (私人的)",
- "view_key_public" : "查看金钥 (public)",
- "spend_key_private" : "支出金钥 (私人的)",
- "spend_key_public" : "支出金钥 (public)",
+ "wallet_keys" : "钱包种子/密钥",
+ "wallet_seed" : "钱包种子",
+ "private_key" : "私钥",
+ "public_key" : "公钥",
+ "view_key_private" : "View 密钥(私钥)",
+ "view_key_public" : "View 密钥(公钥)",
+ "spend_key_private" : "Spend 密钥 (私钥)",
+ "spend_key_public" : "Spend 密钥 (公钥)",
"copied_key_to_clipboard" : "复制 ${key} 到剪贴板",
@@ -261,7 +260,7 @@
"new_subaddress_create" : "创建",
- "subaddress_title" : "子地址清单",
+ "subaddress_title" : "子地址列表",
"trade_details_title" : "交易明细",
@@ -280,9 +279,9 @@
"transaction_details_title" : "交易明细",
"transaction_details_transaction_id" : "交易编号",
"transaction_details_date" : "日期",
- "transaction_details_height" : "高度",
- "transaction_details_amount" : "量",
- "transaction_details_fee" : "費用",
+ "transaction_details_height" : "区块高度",
+ "transaction_details_amount" : "金额",
+ "transaction_details_fee" : "手续费",
"transaction_details_copied" : "${title} 复制到剪贴板",
"transaction_details_recipient_address" : "收件人地址",
@@ -290,17 +289,17 @@
"wallet_list_title" : "Monero 钱包",
"wallet_list_create_new_wallet" : "创建新钱包",
"wallet_list_restore_wallet" : "恢复钱包",
- "wallet_list_load_wallet" : "装入钱包",
+ "wallet_list_load_wallet" : "加载钱包",
"wallet_list_loading_wallet" : "载入中 ${wallet_name} 钱包",
"wallet_list_failed_to_load" : "加载失败 ${wallet_name} 钱包. ${error}",
- "wallet_list_removing_wallet" : "拆下 ${wallet_name} 钱包",
+ "wallet_list_removing_wallet" : "删除 ${wallet_name} 钱包",
"wallet_list_failed_to_remove" : "删除失败 ${wallet_name} 钱包. ${error}",
"widgets_address" : "地址",
"widgets_restore_from_blockheight" : "从块高还原",
"widgets_restore_from_date" : "从日期还原",
- "widgets_or" : "要么",
+ "widgets_or" : "或者",
"widgets_seed" : "种子",
@@ -310,7 +309,7 @@
"error_text_account_name" : "帐户名称只能包含字母数字\n且必须介于1到15个字符之间",
"error_text_contact_name" : "联系人姓名不能包含`,' \" 符号\n并且必须介于1到32个字符之间",
"error_text_address" : "钱包地址必须与类型对应\n加密货币",
- "error_text_node_address" : "请输入一个iPv4地址",
+ "error_text_node_address" : "请输入一个IPv4地址",
"error_text_node_port" : "节点端口只能包含0到65535之间的数字",
"error_text_payment_id" : "付款ID只能包含16到64个字符(十六进制)",
"error_text_xmr" : "XMR值不能超过可用余额.\n小数位数必须小于或等于12",
@@ -320,10 +319,10 @@
"error_text_wallet_name" : "钱包名称只能包含字母,数字\n且必须介于1到15个字符之间",
"error_text_keys" : "钱包密钥只能包含16个字符的十六进制字符",
"error_text_crypto_currency" : "小数位数\n必须小于或等于12",
- "error_text_minimal_limit" : "未創建 ${provider} 交易。 金額少於最小值:${min} ${currency}",
- "error_text_maximum_limit" : "未創建 ${provider} 交易。 金額大於最大值:${max} ${currency}",
- "error_text_limits_loading_failed" : "未創建 ${provider} 交易。 限制加載失敗",
- "error_text_template" : "模板名稱和地址不能包含`,' \" 符号\n并且必须在1到106个字符之间",
+ "error_text_minimal_limit" : "未创建 ${provider} 交易。 金额小于最小值:${min} ${currency}",
+ "error_text_maximum_limit" : "未创建 ${provider} 交易。 金额大于最大值:${max} ${currency}",
+ "error_text_limits_loading_failed" : "未创建 ${provider} 交易。 限制加载失敗",
+ "error_text_template" : "模板名称和地址不能包含`,' \" 符号\n并且必须在1到106个字符之间",
"auth_store_ban_timeout" : "禁止超时",
@@ -339,32 +338,32 @@
"hidden_balance" : "隐藏余额",
- "sync_status_syncronizing" : "同步化",
+ "sync_status_syncronizing" : "正在同步",
"sync_status_syncronized" : "已同步",
"sync_status_not_connected" : "未连接",
"sync_status_starting_sync" : "开始同步",
- "sync_status_failed_connect" : "斷線",
+ "sync_status_failed_connect" : "断线",
"sync_status_connecting" : "连接中",
- "sync_status_connected" : "连接的",
+ "sync_status_connected" : "已连接",
- "transaction_priority_slow" : "慢",
- "transaction_priority_regular" : "定期",
- "transaction_priority_medium" : "介质",
+ "transaction_priority_slow" : "慢速",
+ "transaction_priority_regular" : "常规",
+ "transaction_priority_medium" : "中等",
"transaction_priority_fast" : "快速",
- "transaction_priority_fastest" : "最快的",
+ "transaction_priority_fastest" : "最快",
"trade_for_not_created" : "交易 ${title} 未创建.",
"trade_not_created" : "未建立交易.",
- "trade_id_not_found" : "贸易方式 ${tradeId} 的 ${title} 未找到.",
+ "trade_id_not_found" : "交易方式 ${tradeId} 的 ${title} 未找到.",
"trade_not_found" : "找不到交易.",
"trade_state_pending" : "待定",
"trade_state_confirming" : "确认中",
- "trade_state_trading" : "贸易",
- "trade_state_traded" : "交易",
+ "trade_state_trading" : "交易",
+ "trade_state_traded" : "已交易",
"trade_state_complete" : "完成",
"trade_state_to_be_created" : "待创建",
"trade_state_unpaid" : "未付",
@@ -376,98 +375,98 @@
"trade_state_created" : "已建立",
"trade_state_finished" : "已完成",
- "change_language" : "改變語言",
- "change_language_to" : "將語言更改為 ${language}?",
+ "change_language" : "修改语言",
+ "change_language_to" : "修改语言为 ${language}?",
- "paste" : "糊",
+ "paste" : "粘贴",
"restore_from_seed_placeholder" : "请在此处输入或粘贴您的代码短语",
"add_new_word" : "添加新词",
"incorrect_seed" : "输入的文字无效。",
- "biometric_auth_reason" : "掃描指紋以進行身份驗證",
- "version" : "版 ${currentVersion}",
+ "biometric_auth_reason" : "扫描指纹进行身份认证",
+ "version" : "版本 ${currentVersion}",
- "openalias_alert_title" : "檢測到XMR收件人",
- "openalias_alert_content" : "您將匯款至\n${recipient_name}",
+ "openalias_alert_title" : "检测到XMR收件人",
+ "openalias_alert_content" : "您将汇款至\n${recipient_name}",
"card_address" : "地址:",
- "buy" : "購買",
+ "buy" : "购买",
- "placeholder_transactions" : "您的交易將顯示在這裡",
- "placeholder_contacts" : "您的聯繫人將顯示在這裡",
+ "placeholder_transactions" : "您的交易将显示在这里",
+ "placeholder_contacts" : "您的联系人将显示在这里",
"template" : "模板",
- "confirm_delete_template" : "此操作將刪除此模板。 你想繼續嗎?",
- "confirm_delete_wallet" : "此操作將刪除此錢包。 你想繼續嗎?",
+ "confirm_delete_template" : "此操作将刪除此模板。 确定吗?",
+ "confirm_delete_wallet" : "此操作将刪除此钱包。确定吗?",
- "picker_description" : "要選擇ChangeNOW或MorphToken,請先更改您的交易對",
+ "picker_description" : "要选择ChangeNOW或MorphToken,请先更改您的交易币",
- "change_wallet_alert_title" : "更換當前錢包",
- "change_wallet_alert_content" : "您要將當前的錢包更改為 ${wallet_name}?",
+ "change_wallet_alert_title" : "更换当前钱包",
+ "change_wallet_alert_content" : "您是否想将当前钱包改为 ${wallet_name}?",
- "creating_new_wallet" : "創建新錢包",
- "creating_new_wallet_error" : "錯誤: ${description}",
+ "creating_new_wallet" : "创建新钱包",
+ "creating_new_wallet_error" : "错误: ${description}",
"seed_alert_title" : "注意",
- "seed_alert_content" : "種子是恢復錢包的唯一方法。 你寫下來了嗎?",
- "seed_alert_back" : "回去",
- "seed_alert_yes" : "是的,我有",
+ "seed_alert_content" : "种子是恢复钱包的唯一方法。记住了吗?",
+ "seed_alert_back" : "返回",
+ "seed_alert_yes" : "确定",
- "exchange_sync_alert_content" : "請等待,直到您的錢包同步",
+ "exchange_sync_alert_content" : "请等待,直到您的钱包同步",
"pre_seed_title" : "重要",
- "pre_seed_description" : "在下一頁上,您將看到一系列${words}個單詞。 這是您獨特的私人種子,是丟失或出現故障時恢復錢包的唯一方法。 您有責任將其寫下並存儲在Cake Wallet應用程序外部的安全地方。",
- "pre_seed_button_text" : "我明白。 給我看我的種子",
+ "pre_seed_description" : "在下一页上,您将看到${words}个文字。 这是您独有的种子,是丟失或出现故障时恢复钱包的唯一方法。 您有必须将其写下并储存在Cake Wallet应用程序以外的安全地方。",
+ "pre_seed_button_text" : "我明白。 查看种子",
- "xmr_to_error" : "XMR.TO錯誤",
- "xmr_to_error_description" : "無效的金額。 小數點後最多8位數字",
+ "xmr_to_error" : "XMR.TO 错误",
+ "xmr_to_error_description" : "无效的金额。 小数点后最多8位数字",
- "provider_error" : "${provider} 錯誤",
+ "provider_error" : "${provider} 错误",
"use_ssl" : "使用SSL",
- "color_theme" : "顏色主題",
- "light_theme" : "光",
- "bright_theme" : "亮",
+ "color_theme" : "主題",
+ "light_theme" : "艳丽",
+ "bright_theme" : "明亮",
"dark_theme" : "黑暗",
- "enter_your_note" : "輸入您的筆記...",
- "note_optional" : "注意(可選)",
- "note_tap_to_change" : "注意(輕按即可更改)",
- "transaction_key" : "交易密碼",
- "confirmations" : "確認書",
+ "enter_your_note" : "输入您的笔记...",
+ "note_optional" : "注意(可选)",
+ "note_tap_to_change" : "注意(轻按即可更改)",
+ "transaction_key" : "交易密码",
+ "confirmations" : "确认",
"recipient_address" : "收件人地址",
- "extra_id" : "額外編號:",
- "destination_tag" : "目標標籤:",
- "memo" : "備忘錄:",
+ "extra_id" : "额外ID:",
+ "destination_tag" : "目标Tag:",
+ "memo" : "备忘录:",
- "backup" : "後備",
- "change_password" : "更改密碼",
- "backup_password" : "備用密碼",
- "write_down_backup_password" : "請寫下您的備份密碼,該密碼用於導入備份文件。",
- "export_backup" : "導出備份",
- "save_backup_password" : "請確保您已保存備份密碼。 沒有它,您將無法導入備份文件。",
- "backup_file" : "備份檔案",
+ "backup" : "备份",
+ "change_password" : "更改密码",
+ "backup_password" : "备份密码",
+ "write_down_backup_password" : "请写下您的备份密码,该密码用于导入备份文件。",
+ "export_backup" : "导出备份",
+ "save_backup_password" : "请确保您已保存备份密码。 沒有它,您将无法导入备份文件。",
+ "backup_file" : "备份文件",
- "edit_backup_password" : "編輯備份密碼",
- "save_backup_password_alert" : "保存備份密碼",
- "change_backup_password_alert" : "您以前的備份文件將無法使用新的備份密碼導入。 新的備份密碼將僅用於新的備份文件。 您確定要更改備份密碼嗎?",
+ "edit_backup_password" : "编辑备份密码",
+ "save_backup_password_alert" : "保存备份密码",
+ "change_backup_password_alert" : "您以前的备份文件将无法使用新的备份密码導入。 新的备份密码将仅用于新的备份文件。 您确定要更改备份密码吗?",
- "enter_backup_password" : "在此處輸入備用密碼",
- "select_backup_file" : "選擇備份文件",
- "import" : "進口",
- "please_select_backup_file" : "請選擇備份文件,然後輸入備份密碼。",
+ "enter_backup_password" : "在此处输入備用密码",
+ "select_backup_file" : "选择备份文件",
+ "import" : "导入",
+ "please_select_backup_file" : "请选择备份文件,然后输入备份密码。",
- "fixed_rate" : "固定利率",
- "fixed_rate_alert" : "選中固定費率模式後,您將可以輸入接收金額。 您要切換到固定速率模式嗎?",
+ "fixed_rate" : "固定汇率",
+ "fixed_rate_alert" : "选中固定汇率模式后,您将可以输入接收金额。 您要切换到固定汇率模式吗?",
- "xlm_extra_info" : "發送用於交換的XLM交易時,請不要忘記指定備忘錄ID",
- "xrp_extra_info" : "發送用於交換的XRP交易時,請不要忘記指定目標標記",
+ "xlm_extra_info" : "发送用于交换的XLM交易时,请不要忘记指定备忘录ID",
+ "xrp_extra_info" : "发送用于交换的XRP交易时,请不要忘记指定目标Tag",
"exchange_incorrect_current_wallet_for_xmr" : "如果要从Cake Wallet Monero余额中兑换XMR,请先切换到Monero钱包。",
"confirmed" : "已确认",
"unconfirmed" : "未经证实",
"displayable" : "可显示",
-
- "submit_request" : "提交請求"
+ "submit_request" : "提交请求",
+ "buy_alert_content" : "目前,我們僅支持購買比特幣。 要購買比特幣,請創建或切換到您的比特幣錢包"
}
\ No newline at end of file