mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2024-12-22 19:49:22 +00:00
CW-608-Fetch-And-Save-Icons-Of-ERC20-And-SPL-Tokens-When-Adding-Them (#1365)
* feat: Fetch and save icons of SPL tokens when adding them * feat: Implement fetch and save icons for ERC20 tokens when adding them * fix: Add moralisApiKey to evm secrets * Add check to ensure decimals cannot be zero * - Fallback to adding erc20 token from web3dart - Wrap fetching spl token icon in a try/catch block --------- Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
This commit is contained in:
parent
d4b317b3a0
commit
2877cc160c
41 changed files with 182 additions and 69 deletions
1
.github/workflows/pr_test_build.yml
vendored
1
.github/workflows/pr_test_build.yml
vendored
|
@ -140,6 +140,7 @@ jobs:
|
||||||
echo "const fiatApiKey = '${{ secrets.FIAT_API_KEY }}';" >> lib/.secrets.g.dart
|
echo "const fiatApiKey = '${{ secrets.FIAT_API_KEY }}';" >> lib/.secrets.g.dart
|
||||||
echo "const payfuraApiKey = '${{ secrets.PAYFURA_API_KEY }}';" >> lib/.secrets.g.dart
|
echo "const payfuraApiKey = '${{ secrets.PAYFURA_API_KEY }}';" >> lib/.secrets.g.dart
|
||||||
echo "const etherScanApiKey = '${{ secrets.ETHER_SCAN_API_KEY }}';" >> cw_evm/lib/.secrets.g.dart
|
echo "const etherScanApiKey = '${{ secrets.ETHER_SCAN_API_KEY }}';" >> cw_evm/lib/.secrets.g.dart
|
||||||
|
echo "const moralisApiKey = '${{ secrets.MORALIS_API_KEY }}';" >> cw_evm/lib/.secrets.g.dart
|
||||||
echo "const chatwootWebsiteToken = '${{ secrets.CHATWOOT_WEBSITE_TOKEN }}';" >> lib/.secrets.g.dart
|
echo "const chatwootWebsiteToken = '${{ secrets.CHATWOOT_WEBSITE_TOKEN }}';" >> lib/.secrets.g.dart
|
||||||
echo "const exolixApiKey = '${{ secrets.EXOLIX_API_KEY }}';" >> lib/.secrets.g.dart
|
echo "const exolixApiKey = '${{ secrets.EXOLIX_API_KEY }}';" >> lib/.secrets.g.dart
|
||||||
echo "const robinhoodApplicationId = '${{ secrets.ROBINHOOD_APPLICATION_ID }}';" >> lib/.secrets.g.dart
|
echo "const robinhoodApplicationId = '${{ secrets.ROBINHOOD_APPLICATION_ID }}';" >> lib/.secrets.g.dart
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
|
import 'dart:convert';
|
||||||
import 'dart:developer';
|
import 'dart:developer';
|
||||||
|
|
||||||
import 'package:cw_core/node.dart';
|
import 'package:cw_core/node.dart';
|
||||||
|
@ -9,6 +10,7 @@ import 'package:cw_evm/evm_erc20_balance.dart';
|
||||||
import 'package:cw_evm/evm_chain_transaction_model.dart';
|
import 'package:cw_evm/evm_chain_transaction_model.dart';
|
||||||
import 'package:cw_evm/pending_evm_chain_transaction.dart';
|
import 'package:cw_evm/pending_evm_chain_transaction.dart';
|
||||||
import 'package:cw_evm/evm_chain_transaction_priority.dart';
|
import 'package:cw_evm/evm_chain_transaction_priority.dart';
|
||||||
|
import 'package:cw_evm/.secrets.g.dart' as secrets;
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
|
|
||||||
import 'package:http/http.dart';
|
import 'package:http/http.dart';
|
||||||
|
@ -211,7 +213,40 @@ abstract class EVMChainClient {
|
||||||
return EVMChainERC20Balance(balance, exponent: exponent);
|
return EVMChainERC20Balance(balance, exponent: exponent);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<Erc20Token?> getErc20Token(String contractAddress) async {
|
Future<Erc20Token?> getErc20Token(String contractAddress, String chainName) async {
|
||||||
|
try {
|
||||||
|
final uri = Uri.https(
|
||||||
|
'deep-index.moralis.io',
|
||||||
|
'/api/v2.2/erc20/metadata',
|
||||||
|
{
|
||||||
|
"chain": chainName,
|
||||||
|
"addresses": contractAddress,
|
||||||
|
},
|
||||||
|
);
|
||||||
|
|
||||||
|
final response = await httpClient.get(
|
||||||
|
uri,
|
||||||
|
headers: {
|
||||||
|
"Accept": "application/json",
|
||||||
|
"X-API-Key": secrets.moralisApiKey,
|
||||||
|
},
|
||||||
|
);
|
||||||
|
|
||||||
|
final decodedResponse = jsonDecode(response.body)[0] as Map<String, dynamic>;
|
||||||
|
|
||||||
|
final name = decodedResponse['name'] ?? '';
|
||||||
|
final symbol = decodedResponse['symbol'] ?? '';
|
||||||
|
final decimal = decodedResponse['decimals'] ?? '0';
|
||||||
|
final iconPath = decodedResponse['logo'] ?? '';
|
||||||
|
|
||||||
|
return Erc20Token(
|
||||||
|
name: name,
|
||||||
|
symbol: symbol,
|
||||||
|
contractAddress: contractAddress,
|
||||||
|
decimal: int.tryParse(decimal) ?? 0,
|
||||||
|
iconPath: iconPath,
|
||||||
|
);
|
||||||
|
} catch (e) {
|
||||||
try {
|
try {
|
||||||
final erc20 = ERC20(address: EthereumAddress.fromHex(contractAddress), client: _client!);
|
final erc20 = ERC20(address: EthereumAddress.fromHex(contractAddress), client: _client!);
|
||||||
final name = await erc20.name();
|
final name = await erc20.name();
|
||||||
|
@ -224,13 +259,15 @@ abstract class EVMChainClient {
|
||||||
contractAddress: contractAddress,
|
contractAddress: contractAddress,
|
||||||
decimal: decimal.toInt(),
|
decimal: decimal.toInt(),
|
||||||
);
|
);
|
||||||
} catch (e) {
|
} catch (_) {}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Uint8List hexToBytes(String hexString) {
|
Uint8List hexToBytes(String hexString) {
|
||||||
return Uint8List.fromList(hex.HEX.decode(hexString.startsWith('0x') ? hexString.substring(2) : hexString));
|
return Uint8List.fromList(
|
||||||
|
hex.HEX.decode(hexString.startsWith('0x') ? hexString.substring(2) : hexString));
|
||||||
}
|
}
|
||||||
|
|
||||||
void stop() {
|
void stop() {
|
||||||
|
|
|
@ -439,11 +439,16 @@ abstract class EVMChainWalletBase
|
||||||
|
|
||||||
Future<void> addErc20Token(Erc20Token token) async {
|
Future<void> addErc20Token(Erc20Token token) async {
|
||||||
String? iconPath;
|
String? iconPath;
|
||||||
|
|
||||||
|
if (token.iconPath == null || token.iconPath!.isEmpty) {
|
||||||
try {
|
try {
|
||||||
iconPath = CryptoCurrency.all
|
iconPath = CryptoCurrency.all
|
||||||
.firstWhere((element) => element.title.toUpperCase() == token.symbol.toUpperCase())
|
.firstWhere((element) => element.title.toUpperCase() == token.symbol.toUpperCase())
|
||||||
.iconPath;
|
.iconPath;
|
||||||
} catch (_) {}
|
} catch (_) {}
|
||||||
|
} else {
|
||||||
|
iconPath = token.iconPath;
|
||||||
|
}
|
||||||
|
|
||||||
final newToken = createNewErc20TokenObject(token, iconPath);
|
final newToken = createNewErc20TokenObject(token, iconPath);
|
||||||
|
|
||||||
|
@ -466,8 +471,8 @@ abstract class EVMChainWalletBase
|
||||||
_updateBalance();
|
_updateBalance();
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<Erc20Token?> getErc20Token(String contractAddress) async =>
|
Future<Erc20Token?> getErc20Token(String contractAddress, String chainName) async =>
|
||||||
await _client.getErc20Token(contractAddress);
|
await _client.getErc20Token(contractAddress, chainName);
|
||||||
|
|
||||||
void _onNewTransaction() {
|
void _onNewTransaction() {
|
||||||
_updateBalance();
|
_updateBalance();
|
||||||
|
|
|
@ -533,4 +533,21 @@ class SolanaWalletClient {
|
||||||
throw Exception(e);
|
throw Exception(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Future<String?> getIconImageFromTokenUri(String uri) async {
|
||||||
|
try {
|
||||||
|
final response = await httpClient.get(Uri.parse(uri));
|
||||||
|
|
||||||
|
final jsonResponse = json.decode(response.body) as Map<String, dynamic>;
|
||||||
|
|
||||||
|
if (response.statusCode >= 200 && response.statusCode < 300) {
|
||||||
|
return jsonResponse['image'];
|
||||||
|
} else {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
print('Error occurred while fetching token image: \n${e.toString()}');
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -464,11 +464,17 @@ abstract class SolanaWalletBase
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String? iconPath;
|
||||||
|
try {
|
||||||
|
iconPath = await _client.getIconImageFromTokenUri(token.uri);
|
||||||
|
} catch (_) {}
|
||||||
|
|
||||||
return SPLToken.fromMetadata(
|
return SPLToken.fromMetadata(
|
||||||
name: token.name,
|
name: token.name,
|
||||||
mint: token.mint,
|
mint: token.mint,
|
||||||
symbol: token.symbol,
|
symbol: token.symbol,
|
||||||
mintAddress: mintAddress,
|
mintAddress: mintAddress,
|
||||||
|
iconPath: iconPath,
|
||||||
);
|
);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
return null;
|
return null;
|
||||||
|
|
|
@ -55,6 +55,7 @@ class SPLToken extends CryptoCurrency with HiveObjectMixin {
|
||||||
required String mint,
|
required String mint,
|
||||||
required String symbol,
|
required String symbol,
|
||||||
required String mintAddress,
|
required String mintAddress,
|
||||||
|
String? iconPath
|
||||||
}) {
|
}) {
|
||||||
return SPLToken(
|
return SPLToken(
|
||||||
name: name,
|
name: name,
|
||||||
|
@ -62,7 +63,7 @@ class SPLToken extends CryptoCurrency with HiveObjectMixin {
|
||||||
mintAddress: mintAddress,
|
mintAddress: mintAddress,
|
||||||
decimal: 0,
|
decimal: 0,
|
||||||
mint: mint,
|
mint: mint,
|
||||||
iconPath: '',
|
iconPath: iconPath,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -131,7 +131,7 @@ class CWEthereum extends Ethereum {
|
||||||
@override
|
@override
|
||||||
Future<Erc20Token?> getErc20Token(WalletBase wallet, String contractAddress) async {
|
Future<Erc20Token?> getErc20Token(WalletBase wallet, String contractAddress) async {
|
||||||
final ethereumWallet = wallet as EthereumWallet;
|
final ethereumWallet = wallet as EthereumWallet;
|
||||||
return await ethereumWallet.getErc20Token(contractAddress);
|
return await ethereumWallet.getErc20Token(contractAddress, 'eth');
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|
|
@ -129,7 +129,7 @@ class CWPolygon extends Polygon {
|
||||||
@override
|
@override
|
||||||
Future<Erc20Token?> getErc20Token(WalletBase wallet, String contractAddress) async {
|
Future<Erc20Token?> getErc20Token(WalletBase wallet, String contractAddress) async {
|
||||||
final polygonWallet = wallet as PolygonWallet;
|
final polygonWallet = wallet as PolygonWallet;
|
||||||
return await polygonWallet.getErc20Token(contractAddress);
|
return await polygonWallet.getErc20Token(contractAddress, 'polygon');
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|
|
@ -86,6 +86,7 @@ class CWSolana extends Solana {
|
||||||
decimal: token.decimals,
|
decimal: token.decimals,
|
||||||
mint: token.name.toUpperCase(),
|
mint: token.name.toUpperCase(),
|
||||||
enabled: token.enabled,
|
enabled: token.enabled,
|
||||||
|
iconPath: token.iconPath,
|
||||||
);
|
);
|
||||||
|
|
||||||
await (wallet as SolanaWallet).addSPLToken(splToken);
|
await (wallet as SolanaWallet).addSPLToken(splToken);
|
||||||
|
|
|
@ -59,6 +59,7 @@ class _EditTokenPageBodyState extends State<EditTokenPageBody> {
|
||||||
final TextEditingController _tokenNameController = TextEditingController();
|
final TextEditingController _tokenNameController = TextEditingController();
|
||||||
final TextEditingController _tokenSymbolController = TextEditingController();
|
final TextEditingController _tokenSymbolController = TextEditingController();
|
||||||
final TextEditingController _tokenDecimalController = TextEditingController();
|
final TextEditingController _tokenDecimalController = TextEditingController();
|
||||||
|
final TextEditingController _tokenIconPathController = TextEditingController();
|
||||||
|
|
||||||
final FocusNode _contractAddressFocusNode = FocusNode();
|
final FocusNode _contractAddressFocusNode = FocusNode();
|
||||||
final FocusNode _tokenNameFocusNode = FocusNode();
|
final FocusNode _tokenNameFocusNode = FocusNode();
|
||||||
|
@ -83,6 +84,7 @@ class _EditTokenPageBodyState extends State<EditTokenPageBody> {
|
||||||
_tokenNameController.text = widget.token!.name;
|
_tokenNameController.text = widget.token!.name;
|
||||||
_tokenSymbolController.text = widget.token!.title;
|
_tokenSymbolController.text = widget.token!.title;
|
||||||
_tokenDecimalController.text = widget.token!.decimals.toString();
|
_tokenDecimalController.text = widget.token!.decimals.toString();
|
||||||
|
_tokenIconPathController.text = widget.token?.iconPath ?? '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (widget.initialContractAddress != null) {
|
if (widget.initialContractAddress != null) {
|
||||||
|
@ -200,6 +202,7 @@ class _EditTokenPageBodyState extends State<EditTokenPageBody> {
|
||||||
name: _tokenNameController.text,
|
name: _tokenNameController.text,
|
||||||
title: _tokenSymbolController.text.toUpperCase(),
|
title: _tokenSymbolController.text.toUpperCase(),
|
||||||
decimals: int.parse(_tokenDecimalController.text),
|
decimals: int.parse(_tokenDecimalController.text),
|
||||||
|
iconPath: _tokenIconPathController.text,
|
||||||
),
|
),
|
||||||
contractAddress: _contractAddressController.text,
|
contractAddress: _contractAddressController.text,
|
||||||
);
|
);
|
||||||
|
@ -228,6 +231,8 @@ class _EditTokenPageBodyState extends State<EditTokenPageBody> {
|
||||||
if (token != null) {
|
if (token != null) {
|
||||||
if (_tokenNameController.text.isEmpty) _tokenNameController.text = token.name;
|
if (_tokenNameController.text.isEmpty) _tokenNameController.text = token.name;
|
||||||
if (_tokenSymbolController.text.isEmpty) _tokenSymbolController.text = token.title;
|
if (_tokenSymbolController.text.isEmpty) _tokenSymbolController.text = token.title;
|
||||||
|
if (_tokenIconPathController.text.isEmpty)
|
||||||
|
_tokenIconPathController.text = token.iconPath ?? '';
|
||||||
if (_tokenDecimalController.text.isEmpty)
|
if (_tokenDecimalController.text.isEmpty)
|
||||||
_tokenDecimalController.text = token.decimals.toString();
|
_tokenDecimalController.text = token.decimals.toString();
|
||||||
}
|
}
|
||||||
|
@ -305,10 +310,15 @@ class _EditTokenPageBodyState extends State<EditTokenPageBody> {
|
||||||
if (text?.isEmpty ?? true) {
|
if (text?.isEmpty ?? true) {
|
||||||
return S.of(context).field_required;
|
return S.of(context).field_required;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (int.tryParse(text!) == null) {
|
if (int.tryParse(text!) == null) {
|
||||||
return S.of(context).invalid_input;
|
return S.of(context).invalid_input;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (int.tryParse(text) == 0) {
|
||||||
|
return S.current.decimals_cannot_be_zero;
|
||||||
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
|
|
|
@ -129,7 +129,10 @@ class HomeSettingsPage extends BasePage {
|
||||||
'token': token,
|
'token': token,
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
leading: CakeImageWidget(
|
leading: Container(
|
||||||
|
clipBehavior: Clip.hardEdge,
|
||||||
|
decoration: BoxDecoration(shape: BoxShape.circle),
|
||||||
|
child: CakeImageWidget(
|
||||||
imageUrl: token.iconPath,
|
imageUrl: token.iconPath,
|
||||||
height: 40,
|
height: 40,
|
||||||
width: 40,
|
width: 40,
|
||||||
|
@ -148,6 +151,7 @@ class HomeSettingsPage extends BasePage {
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
),
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: Theme.of(context).cardColor,
|
color: Theme.of(context).cardColor,
|
||||||
borderRadius: BorderRadius.circular(30),
|
borderRadius: BorderRadius.circular(30),
|
||||||
|
|
|
@ -334,7 +334,10 @@ class BalanceRowWidget extends StatelessWidget {
|
||||||
child: Center(
|
child: Center(
|
||||||
child: Column(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
CakeImageWidget(
|
Container(
|
||||||
|
clipBehavior: Clip.antiAlias,
|
||||||
|
decoration: BoxDecoration(shape: BoxShape.circle),
|
||||||
|
child: CakeImageWidget(
|
||||||
imageUrl: currency.iconPath,
|
imageUrl: currency.iconPath,
|
||||||
height: 40,
|
height: 40,
|
||||||
width: 40,
|
width: 40,
|
||||||
|
@ -353,6 +356,7 @@ class BalanceRowWidget extends StatelessWidget {
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
),
|
||||||
const SizedBox(height: 10),
|
const SizedBox(height: 10),
|
||||||
Text(
|
Text(
|
||||||
currency.title,
|
currency.title,
|
||||||
|
@ -410,9 +414,7 @@ class BalanceRowWidget extends StatelessWidget {
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
fontFamily: 'Lato',
|
fontFamily: 'Lato',
|
||||||
fontWeight: FontWeight.w400,
|
fontWeight: FontWeight.w400,
|
||||||
color: Theme.of(context)
|
color: Theme.of(context).extension<BalancePageTheme>()!.balanceAmountColor,
|
||||||
.extension<BalancePageTheme>()!
|
|
||||||
.balanceAmountColor,
|
|
||||||
height: 1,
|
height: 1,
|
||||||
),
|
),
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
|
|
|
@ -18,7 +18,7 @@ class CakeImageWidget extends StatelessWidget {
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
try {
|
try {
|
||||||
if (imageUrl == null) return _displayOnError!;
|
if (imageUrl == null || imageUrl!.isEmpty) return _displayOnError!;
|
||||||
|
|
||||||
if (imageUrl!.contains('assets/images')) {
|
if (imageUrl!.contains('assets/images')) {
|
||||||
return Image.asset(
|
return Image.asset(
|
||||||
|
|
|
@ -54,6 +54,7 @@ abstract class HomeSettingsViewModelBase with Store {
|
||||||
symbol: token.title,
|
symbol: token.title,
|
||||||
decimal: token.decimals,
|
decimal: token.decimals,
|
||||||
contractAddress: contractAddress,
|
contractAddress: contractAddress,
|
||||||
|
iconPath: token.iconPath,
|
||||||
);
|
);
|
||||||
|
|
||||||
await ethereum!.addErc20Token(_balanceViewModel.wallet, erc20token);
|
await ethereum!.addErc20Token(_balanceViewModel.wallet, erc20token);
|
||||||
|
@ -65,6 +66,7 @@ abstract class HomeSettingsViewModelBase with Store {
|
||||||
symbol: token.title,
|
symbol: token.title,
|
||||||
decimal: token.decimals,
|
decimal: token.decimals,
|
||||||
contractAddress: contractAddress,
|
contractAddress: contractAddress,
|
||||||
|
iconPath: token.iconPath,
|
||||||
);
|
);
|
||||||
await polygon!.addErc20Token(_balanceViewModel.wallet, polygonToken);
|
await polygon!.addErc20Token(_balanceViewModel.wallet, polygonToken);
|
||||||
}
|
}
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "بطاقة ائتمان",
|
"debit_card": "بطاقة ائتمان",
|
||||||
"debit_card_terms": "يخضع تخزين واستخدام رقم بطاقة الدفع الخاصة بك (وبيانات الاعتماد المقابلة لرقم بطاقة الدفع الخاصة بك) في هذه المحفظة الرقمية لشروط وأحكام اتفاقية حامل البطاقة المعمول بها مع جهة إصدار بطاقة الدفع ، كما هو معمول به من وقت لآخر.",
|
"debit_card_terms": "يخضع تخزين واستخدام رقم بطاقة الدفع الخاصة بك (وبيانات الاعتماد المقابلة لرقم بطاقة الدفع الخاصة بك) في هذه المحفظة الرقمية لشروط وأحكام اتفاقية حامل البطاقة المعمول بها مع جهة إصدار بطاقة الدفع ، كما هو معمول به من وقت لآخر.",
|
||||||
"decimal_places_error": "عدد كبير جدًا من المنازل العشرية",
|
"decimal_places_error": "عدد كبير جدًا من المنازل العشرية",
|
||||||
|
"decimals_cannot_be_zero": "الرمز العشري لا يمكن أن يكون الصفر.",
|
||||||
"default_buy_provider": "مزود شراء الافتراضي",
|
"default_buy_provider": "مزود شراء الافتراضي",
|
||||||
"default_sell_provider": "ﻲﺿﺍﺮﺘﻓﻻﺍ ﻊﻴﺒﻟﺍ ﺩﻭﺰﻣ",
|
"default_sell_provider": "ﻲﺿﺍﺮﺘﻓﻻﺍ ﻊﻴﺒﻟﺍ ﺩﻭﺰﻣ",
|
||||||
"delete": "حذف",
|
"delete": "حذف",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Дебитна карта",
|
"debit_card": "Дебитна карта",
|
||||||
"debit_card_terms": "Съхранението и използването на данните от вашата платежна карта в този дигитален портфейл подлежат на условията на съответното съгласие за картодържец от издателя на картата.",
|
"debit_card_terms": "Съхранението и използването на данните от вашата платежна карта в този дигитален портфейл подлежат на условията на съответното съгласие за картодържец от издателя на картата.",
|
||||||
"decimal_places_error": "Твърде много знаци след десетичната запетая",
|
"decimal_places_error": "Твърде много знаци след десетичната запетая",
|
||||||
|
"decimals_cannot_be_zero": "Десетичната точка не може да бъде нула.",
|
||||||
"default_buy_provider": "Доставчик по подразбиране купува",
|
"default_buy_provider": "Доставчик по подразбиране купува",
|
||||||
"default_sell_provider": "Доставчик за продажба по подразбиране",
|
"default_sell_provider": "Доставчик за продажба по подразбиране",
|
||||||
"delete": "Изтрий",
|
"delete": "Изтрий",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Debetní karta",
|
"debit_card": "Debetní karta",
|
||||||
"debit_card_terms": "Uložení a použití vašeho čísla platební karty (a přihlašovací údaje k vašemu číslu karty) v této digitální peněžence se řídí Obchodními podmínkami smlouvy příslušného držitele karty s vydavatelem karty (v jejich nejaktuálnější verzi).",
|
"debit_card_terms": "Uložení a použití vašeho čísla platební karty (a přihlašovací údaje k vašemu číslu karty) v této digitální peněžence se řídí Obchodními podmínkami smlouvy příslušného držitele karty s vydavatelem karty (v jejich nejaktuálnější verzi).",
|
||||||
"decimal_places_error": "Příliš mnoho desetinných míst",
|
"decimal_places_error": "Příliš mnoho desetinných míst",
|
||||||
|
"decimals_cannot_be_zero": "Desetinná desetinná škola nemůže být nulová.",
|
||||||
"default_buy_provider": "Výchozí poskytovatel nákupu",
|
"default_buy_provider": "Výchozí poskytovatel nákupu",
|
||||||
"default_sell_provider": "Výchozí poskytovatel prodeje",
|
"default_sell_provider": "Výchozí poskytovatel prodeje",
|
||||||
"delete": "Smazat",
|
"delete": "Smazat",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Debitkarte",
|
"debit_card": "Debitkarte",
|
||||||
"debit_card_terms": "Die Speicherung und Nutzung Ihrer Zahlungskartennummer (und Ihrer Zahlungskartennummer entsprechenden Anmeldeinformationen) in dieser digitalen Geldbörse unterliegt den Allgemeinen Geschäftsbedingungen des geltenden Karteninhabervertrags mit dem Zahlungskartenaussteller, gültig ab von Zeit zu Zeit.",
|
"debit_card_terms": "Die Speicherung und Nutzung Ihrer Zahlungskartennummer (und Ihrer Zahlungskartennummer entsprechenden Anmeldeinformationen) in dieser digitalen Geldbörse unterliegt den Allgemeinen Geschäftsbedingungen des geltenden Karteninhabervertrags mit dem Zahlungskartenaussteller, gültig ab von Zeit zu Zeit.",
|
||||||
"decimal_places_error": "Zu viele Nachkommastellen",
|
"decimal_places_error": "Zu viele Nachkommastellen",
|
||||||
|
"decimals_cannot_be_zero": "Token -Dezimalzahl kann nicht Null sein.",
|
||||||
"default_buy_provider": "Standard-Kaufanbieter",
|
"default_buy_provider": "Standard-Kaufanbieter",
|
||||||
"default_sell_provider": "Standard-Verkaufsanbieter",
|
"default_sell_provider": "Standard-Verkaufsanbieter",
|
||||||
"delete": "Löschen",
|
"delete": "Löschen",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Debit Card",
|
"debit_card": "Debit Card",
|
||||||
"debit_card_terms": "The storage and usage of your payment card number (and credentials corresponding to your payment card number) in this digital wallet are subject to the Terms and Conditions of the applicable cardholder agreement with the payment card issuer, as in effect from time to time.",
|
"debit_card_terms": "The storage and usage of your payment card number (and credentials corresponding to your payment card number) in this digital wallet are subject to the Terms and Conditions of the applicable cardholder agreement with the payment card issuer, as in effect from time to time.",
|
||||||
"decimal_places_error": "Too many decimal places",
|
"decimal_places_error": "Too many decimal places",
|
||||||
|
"decimals_cannot_be_zero": "Token decimal cannot be zero.",
|
||||||
"default_buy_provider": "Default Buy Provider",
|
"default_buy_provider": "Default Buy Provider",
|
||||||
"default_sell_provider": "Default Sell Provider",
|
"default_sell_provider": "Default Sell Provider",
|
||||||
"delete": "Delete",
|
"delete": "Delete",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Tarjeta de Débito",
|
"debit_card": "Tarjeta de Débito",
|
||||||
"debit_card_terms": "El almacenamiento y el uso de su número de tarjeta de pago (y las credenciales correspondientes a su número de tarjeta de pago) en esta billetera digital están sujetos a los Términos y condiciones del acuerdo del titular de la tarjeta aplicable con el emisor de la tarjeta de pago, en vigor desde tiempo al tiempo.",
|
"debit_card_terms": "El almacenamiento y el uso de su número de tarjeta de pago (y las credenciales correspondientes a su número de tarjeta de pago) en esta billetera digital están sujetos a los Términos y condiciones del acuerdo del titular de la tarjeta aplicable con el emisor de la tarjeta de pago, en vigor desde tiempo al tiempo.",
|
||||||
"decimal_places_error": "Demasiados lugares decimales",
|
"decimal_places_error": "Demasiados lugares decimales",
|
||||||
|
"decimals_cannot_be_zero": "Token Decimal no puede ser cero.",
|
||||||
"default_buy_provider": "Proveedor de compra predeterminado",
|
"default_buy_provider": "Proveedor de compra predeterminado",
|
||||||
"default_sell_provider": "Proveedor de venta predeterminado",
|
"default_sell_provider": "Proveedor de venta predeterminado",
|
||||||
"delete": "Borrar",
|
"delete": "Borrar",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Carte de débit",
|
"debit_card": "Carte de débit",
|
||||||
"debit_card_terms": "Le stockage et l'utilisation de votre numéro de carte de paiement (et des informations d'identification correspondant à votre numéro de carte de paiement) dans ce portefeuille (wallet) numérique peuvent être soumis aux conditions générales de l'accord du titulaire de carte parfois en vigueur avec l'émetteur de la carte de paiement.",
|
"debit_card_terms": "Le stockage et l'utilisation de votre numéro de carte de paiement (et des informations d'identification correspondant à votre numéro de carte de paiement) dans ce portefeuille (wallet) numérique peuvent être soumis aux conditions générales de l'accord du titulaire de carte parfois en vigueur avec l'émetteur de la carte de paiement.",
|
||||||
"decimal_places_error": "Trop de décimales",
|
"decimal_places_error": "Trop de décimales",
|
||||||
|
"decimals_cannot_be_zero": "La décimale du jeton ne peut pas être nulle.",
|
||||||
"default_buy_provider": "Fournisseur d'achat par défaut",
|
"default_buy_provider": "Fournisseur d'achat par défaut",
|
||||||
"default_sell_provider": "Fournisseur de vente par défaut",
|
"default_sell_provider": "Fournisseur de vente par défaut",
|
||||||
"delete": "Effacer",
|
"delete": "Effacer",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Katin Zare kudi",
|
"debit_card": "Katin Zare kudi",
|
||||||
"debit_card_terms": "Adana da amfani da lambar katin kuɗin ku (da takaddun shaida masu dacewa da lambar katin kuɗin ku) a cikin wannan walat ɗin dijital suna ƙarƙashin Sharuɗɗa da Sharuɗɗa na yarjejeniya mai amfani da katin tare da mai fitar da katin biyan kuɗi, kamar yadda yake aiki daga lokaci zuwa lokaci.",
|
"debit_card_terms": "Adana da amfani da lambar katin kuɗin ku (da takaddun shaida masu dacewa da lambar katin kuɗin ku) a cikin wannan walat ɗin dijital suna ƙarƙashin Sharuɗɗa da Sharuɗɗa na yarjejeniya mai amfani da katin tare da mai fitar da katin biyan kuɗi, kamar yadda yake aiki daga lokaci zuwa lokaci.",
|
||||||
"decimal_places_error": "Wadannan suna da tsawon harsuna",
|
"decimal_places_error": "Wadannan suna da tsawon harsuna",
|
||||||
|
"decimals_cannot_be_zero": "Alamar alama ba zata iya zama sifili ba.",
|
||||||
"default_buy_provider": "Tsohuwar Siyarwa",
|
"default_buy_provider": "Tsohuwar Siyarwa",
|
||||||
"default_sell_provider": "Tsohuwar Mai Bayar Siyarwa",
|
"default_sell_provider": "Tsohuwar Mai Bayar Siyarwa",
|
||||||
"delete": "Share",
|
"delete": "Share",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "डेबिट कार्ड",
|
"debit_card": "डेबिट कार्ड",
|
||||||
"debit_card_terms": "इस डिजिटल वॉलेट में आपके भुगतान कार्ड नंबर (और आपके भुगतान कार्ड नंबर से संबंधित क्रेडेंशियल) का भंडारण और उपयोग भुगतान कार्ड जारीकर्ता के साथ लागू कार्डधारक समझौते के नियमों और शर्तों के अधीन है, जैसा कि प्रभावी है समय - समय पर।",
|
"debit_card_terms": "इस डिजिटल वॉलेट में आपके भुगतान कार्ड नंबर (और आपके भुगतान कार्ड नंबर से संबंधित क्रेडेंशियल) का भंडारण और उपयोग भुगतान कार्ड जारीकर्ता के साथ लागू कार्डधारक समझौते के नियमों और शर्तों के अधीन है, जैसा कि प्रभावी है समय - समय पर।",
|
||||||
"decimal_places_error": "बहुत अधिक दशमलव स्थान",
|
"decimal_places_error": "बहुत अधिक दशमलव स्थान",
|
||||||
|
"decimals_cannot_be_zero": "टोकन दशमलव शून्य नहीं हो सकता।",
|
||||||
"default_buy_provider": "डिफ़ॉल्ट खरीद प्रदाता",
|
"default_buy_provider": "डिफ़ॉल्ट खरीद प्रदाता",
|
||||||
"default_sell_provider": "डिफ़ॉल्ट विक्रय प्रदाता",
|
"default_sell_provider": "डिफ़ॉल्ट विक्रय प्रदाता",
|
||||||
"delete": "हटाएं",
|
"delete": "हटाएं",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Debitna kartica",
|
"debit_card": "Debitna kartica",
|
||||||
"debit_card_terms": "Pohranjivanje i korištenje broja vaše platne kartice (i vjerodajnica koje odgovaraju broju vaše platne kartice) u ovom digitalnom novčaniku podliježu Uvjetima i odredbama važećeg ugovora vlasnika kartice s izdavateljem platne kartice, koji su na snazi od S vremena na vrijeme.",
|
"debit_card_terms": "Pohranjivanje i korištenje broja vaše platne kartice (i vjerodajnica koje odgovaraju broju vaše platne kartice) u ovom digitalnom novčaniku podliježu Uvjetima i odredbama važećeg ugovora vlasnika kartice s izdavateljem platne kartice, koji su na snazi od S vremena na vrijeme.",
|
||||||
"decimal_places_error": "Previše decimalnih mjesta",
|
"decimal_places_error": "Previše decimalnih mjesta",
|
||||||
|
"decimals_cannot_be_zero": "Token Decimal ne može biti nula.",
|
||||||
"default_buy_provider": "Zadani davatelj kupnje",
|
"default_buy_provider": "Zadani davatelj kupnje",
|
||||||
"default_sell_provider": "Zadani dobavljač prodaje",
|
"default_sell_provider": "Zadani dobavljač prodaje",
|
||||||
"delete": "Izbriši",
|
"delete": "Izbriši",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Kartu Debit",
|
"debit_card": "Kartu Debit",
|
||||||
"debit_card_terms": "Penyimpanan dan penggunaan nomor kartu pembayaran Anda (dan kredensial yang sesuai dengan nomor kartu pembayaran Anda) dalam dompet digital ini tertakluk pada Syarat dan Ketentuan persetujuan pemegang kartu yang berlaku dengan penerbit kartu pembayaran, seperti yang berlaku dari waktu ke waktu.",
|
"debit_card_terms": "Penyimpanan dan penggunaan nomor kartu pembayaran Anda (dan kredensial yang sesuai dengan nomor kartu pembayaran Anda) dalam dompet digital ini tertakluk pada Syarat dan Ketentuan persetujuan pemegang kartu yang berlaku dengan penerbit kartu pembayaran, seperti yang berlaku dari waktu ke waktu.",
|
||||||
"decimal_places_error": "Terlalu banyak tempat desimal",
|
"decimal_places_error": "Terlalu banyak tempat desimal",
|
||||||
|
"decimals_cannot_be_zero": "Token desimal tidak bisa nol.",
|
||||||
"default_buy_provider": "Penyedia beli default",
|
"default_buy_provider": "Penyedia beli default",
|
||||||
"default_sell_provider": "Penyedia Penjualan Default",
|
"default_sell_provider": "Penyedia Penjualan Default",
|
||||||
"delete": "Hapus",
|
"delete": "Hapus",
|
||||||
|
|
|
@ -176,6 +176,7 @@
|
||||||
"debit_card": "Carta di debito",
|
"debit_card": "Carta di debito",
|
||||||
"debit_card_terms": "L'archiviazione e l'utilizzo del numero della carta di pagamento (e delle credenziali corrispondenti al numero della carta di pagamento) in questo portafoglio digitale sono soggetti ai Termini e condizioni del contratto applicabile con il titolare della carta con l'emittente della carta di pagamento, come in vigore da tempo al tempo.",
|
"debit_card_terms": "L'archiviazione e l'utilizzo del numero della carta di pagamento (e delle credenziali corrispondenti al numero della carta di pagamento) in questo portafoglio digitale sono soggetti ai Termini e condizioni del contratto applicabile con il titolare della carta con l'emittente della carta di pagamento, come in vigore da tempo al tempo.",
|
||||||
"decimal_places_error": "Troppe cifre decimali",
|
"decimal_places_error": "Troppe cifre decimali",
|
||||||
|
"decimals_cannot_be_zero": "Il decimale token non può essere zero.",
|
||||||
"default_buy_provider": "Provider di acquisto predefinito",
|
"default_buy_provider": "Provider di acquisto predefinito",
|
||||||
"default_sell_provider": "Fornitore di vendita predefinito",
|
"default_sell_provider": "Fornitore di vendita predefinito",
|
||||||
"delete": "Elimina",
|
"delete": "Elimina",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "デビットカード",
|
"debit_card": "デビットカード",
|
||||||
"debit_card_terms": "このデジタルウォレットでの支払いカード番号(および支払いカード番号に対応する資格情報)の保存と使用には、支払いカード発行者との該当するカード所有者契約の利用規約が適用されます。時々。",
|
"debit_card_terms": "このデジタルウォレットでの支払いカード番号(および支払いカード番号に対応する資格情報)の保存と使用には、支払いカード発行者との該当するカード所有者契約の利用規約が適用されます。時々。",
|
||||||
"decimal_places_error": "小数点以下の桁数が多すぎる",
|
"decimal_places_error": "小数点以下の桁数が多すぎる",
|
||||||
|
"decimals_cannot_be_zero": "トークン小数はゼロにすることはできません。",
|
||||||
"default_buy_provider": "デフォルトの購入プロバイダー",
|
"default_buy_provider": "デフォルトの購入プロバイダー",
|
||||||
"default_sell_provider": "デフォルトの販売プロバイダー",
|
"default_sell_provider": "デフォルトの販売プロバイダー",
|
||||||
"delete": "削除する",
|
"delete": "削除する",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "직불 카드",
|
"debit_card": "직불 카드",
|
||||||
"debit_card_terms": "이 디지털 지갑에 있는 귀하의 지불 카드 번호(및 귀하의 지불 카드 번호에 해당하는 자격 증명)의 저장 및 사용은 부터 발효되는 지불 카드 발행자와의 해당 카드 소지자 계약의 이용 약관을 따릅니다. 수시로.",
|
"debit_card_terms": "이 디지털 지갑에 있는 귀하의 지불 카드 번호(및 귀하의 지불 카드 번호에 해당하는 자격 증명)의 저장 및 사용은 부터 발효되는 지불 카드 발행자와의 해당 카드 소지자 계약의 이용 약관을 따릅니다. 수시로.",
|
||||||
"decimal_places_error": "소수점 이하 자릿수가 너무 많습니다.",
|
"decimal_places_error": "소수점 이하 자릿수가 너무 많습니다.",
|
||||||
|
"decimals_cannot_be_zero": "토큰 소수점은 0이 될 수 없습니다.",
|
||||||
"default_buy_provider": "기본 구매 제공자",
|
"default_buy_provider": "기본 구매 제공자",
|
||||||
"default_sell_provider": "기본 판매 공급자",
|
"default_sell_provider": "기본 판매 공급자",
|
||||||
"delete": "지우다",
|
"delete": "지우다",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "ဒက်ဘစ်ကတ်",
|
"debit_card": "ဒက်ဘစ်ကတ်",
|
||||||
"debit_card_terms": "ဤဒစ်ဂျစ်တယ်ပိုက်ဆံအိတ်ရှိ သင့်ငွေပေးချေမှုကတ်နံပါတ် (နှင့် သင့်ငွေပေးချေကတ်နံပါတ်နှင့် သက်ဆိုင်သောအထောက်အထားများ) ၏ သိုလှောင်မှုနှင့် အသုံးပြုမှုသည် အချိန်အခါနှင့်အမျှ သက်ရောက်မှုရှိသကဲ့သို့ ကတ်ကိုင်ဆောင်ထားသူ၏ သဘောတူညီချက်၏ စည်းကမ်းသတ်မှတ်ချက်များနှင့် ကိုက်ညီပါသည်။",
|
"debit_card_terms": "ဤဒစ်ဂျစ်တယ်ပိုက်ဆံအိတ်ရှိ သင့်ငွေပေးချေမှုကတ်နံပါတ် (နှင့် သင့်ငွေပေးချေကတ်နံပါတ်နှင့် သက်ဆိုင်သောအထောက်အထားများ) ၏ သိုလှောင်မှုနှင့် အသုံးပြုမှုသည် အချိန်အခါနှင့်အမျှ သက်ရောက်မှုရှိသကဲ့သို့ ကတ်ကိုင်ဆောင်ထားသူ၏ သဘောတူညီချက်၏ စည်းကမ်းသတ်မှတ်ချက်များနှင့် ကိုက်ညီပါသည်။",
|
||||||
"decimal_places_error": "ဒဿမနေရာများ များလွန်းသည်။",
|
"decimal_places_error": "ဒဿမနေရာများ များလွန်းသည်။",
|
||||||
|
"decimals_cannot_be_zero": "တိုကင်ဒ decimal မသုညမဖြစ်နိုင်ပါ။",
|
||||||
"default_buy_provider": "Default Provider ကိုဝယ်ပါ",
|
"default_buy_provider": "Default Provider ကိုဝယ်ပါ",
|
||||||
"default_sell_provider": "ပုံသေရောင်းချပေးသူ",
|
"default_sell_provider": "ပုံသေရောင်းချပေးသူ",
|
||||||
"delete": "ဖျက်ပါ။",
|
"delete": "ဖျက်ပါ။",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Debetkaart",
|
"debit_card": "Debetkaart",
|
||||||
"debit_card_terms": "De opslag en het gebruik van uw betaalkaartnummer (en inloggegevens die overeenkomen met uw betaalkaartnummer) in deze digitale portemonnee zijn onderworpen aan de Algemene voorwaarden van de toepasselijke kaarthouderovereenkomst met de uitgever van de betaalkaart, zoals van kracht vanaf tijd tot tijd.",
|
"debit_card_terms": "De opslag en het gebruik van uw betaalkaartnummer (en inloggegevens die overeenkomen met uw betaalkaartnummer) in deze digitale portemonnee zijn onderworpen aan de Algemene voorwaarden van de toepasselijke kaarthouderovereenkomst met de uitgever van de betaalkaart, zoals van kracht vanaf tijd tot tijd.",
|
||||||
"decimal_places_error": "Te veel decimalen",
|
"decimal_places_error": "Te veel decimalen",
|
||||||
|
"decimals_cannot_be_zero": "Token decimaal kan niet nul zijn.",
|
||||||
"default_buy_provider": "Standaard Koopprovider",
|
"default_buy_provider": "Standaard Koopprovider",
|
||||||
"default_sell_provider": "Standaard verkoopaanbieder",
|
"default_sell_provider": "Standaard verkoopaanbieder",
|
||||||
"delete": "Delete",
|
"delete": "Delete",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Karta debetowa",
|
"debit_card": "Karta debetowa",
|
||||||
"debit_card_terms": "Przechowywanie i używanie numeru karty płatniczej (oraz danych uwierzytelniających odpowiadających numerowi karty płatniczej) w tym portfelu cyfrowym podlega Warunkom odpowiedniej umowy posiadacza karty z wydawcą karty płatniczej, zgodnie z obowiązującym od od czasu do czasu.",
|
"debit_card_terms": "Przechowywanie i używanie numeru karty płatniczej (oraz danych uwierzytelniających odpowiadających numerowi karty płatniczej) w tym portfelu cyfrowym podlega Warunkom odpowiedniej umowy posiadacza karty z wydawcą karty płatniczej, zgodnie z obowiązującym od od czasu do czasu.",
|
||||||
"decimal_places_error": "Za dużo miejsc dziesiętnych",
|
"decimal_places_error": "Za dużo miejsc dziesiętnych",
|
||||||
|
"decimals_cannot_be_zero": "Token dziesiętny nie może być zerowy.",
|
||||||
"default_buy_provider": "Domyślny dostawca zakupu",
|
"default_buy_provider": "Domyślny dostawca zakupu",
|
||||||
"default_sell_provider": "Domyślny dostawca sprzedaży",
|
"default_sell_provider": "Domyślny dostawca sprzedaży",
|
||||||
"delete": "Skasuj",
|
"delete": "Skasuj",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Cartão de débito",
|
"debit_card": "Cartão de débito",
|
||||||
"debit_card_terms": "O armazenamento e uso do número do cartão de pagamento (e credenciais correspondentes ao número do cartão de pagamento) nesta carteira digital estão sujeitos aos Termos e Condições do contrato do titular do cartão aplicável com o emissor do cartão de pagamento, em vigor a partir de tempo ao tempo.",
|
"debit_card_terms": "O armazenamento e uso do número do cartão de pagamento (e credenciais correspondentes ao número do cartão de pagamento) nesta carteira digital estão sujeitos aos Termos e Condições do contrato do titular do cartão aplicável com o emissor do cartão de pagamento, em vigor a partir de tempo ao tempo.",
|
||||||
"decimal_places_error": "Muitas casas decimais",
|
"decimal_places_error": "Muitas casas decimais",
|
||||||
|
"decimals_cannot_be_zero": "Decimal de token não pode ser zero.",
|
||||||
"default_buy_provider": "Provedor de compra padrão",
|
"default_buy_provider": "Provedor de compra padrão",
|
||||||
"default_sell_provider": "Provedor de venda padrão",
|
"default_sell_provider": "Provedor de venda padrão",
|
||||||
"delete": "Excluir",
|
"delete": "Excluir",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Дебетовая карта",
|
"debit_card": "Дебетовая карта",
|
||||||
"debit_card_terms": "Хранение и использование номера вашей платежной карты (и учетных данных, соответствующих номеру вашей платежной карты) в этом цифровом кошельке регулируются положениями и условиями применимого соглашения держателя карты с эмитентом платежной карты, действующим с время от времени.",
|
"debit_card_terms": "Хранение и использование номера вашей платежной карты (и учетных данных, соответствующих номеру вашей платежной карты) в этом цифровом кошельке регулируются положениями и условиями применимого соглашения держателя карты с эмитентом платежной карты, действующим с время от времени.",
|
||||||
"decimal_places_error": "Слишком много десятичных знаков",
|
"decimal_places_error": "Слишком много десятичных знаков",
|
||||||
|
"decimals_cannot_be_zero": "Десятичный токен не может быть нулевым.",
|
||||||
"default_buy_provider": "По умолчанию поставщик покупки",
|
"default_buy_provider": "По умолчанию поставщик покупки",
|
||||||
"default_sell_provider": "Поставщик продаж по умолчанию",
|
"default_sell_provider": "Поставщик продаж по умолчанию",
|
||||||
"delete": "Удалить",
|
"delete": "Удалить",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "บัตรเดบิต",
|
"debit_card": "บัตรเดบิต",
|
||||||
"debit_card_terms": "การเก็บรักษาและใช้หมายเลขบัตรจ่ายเงิน (และข้อมูลประจำตัวที่เกี่ยวข้องกับหมายเลขบัตรจ่ายเงิน) ในกระเป๋าดิจิทัลนี้ จะต้องยึดถือข้อกำหนดและเงื่อนไขของข้อตกลงผู้ใช้บัตรของผู้ถือบัตรที่เกี่ยวข้องกับบัตรผู้ถือบัตร ซึ่งจะมีผลตั้งแต่เวลานั้น",
|
"debit_card_terms": "การเก็บรักษาและใช้หมายเลขบัตรจ่ายเงิน (และข้อมูลประจำตัวที่เกี่ยวข้องกับหมายเลขบัตรจ่ายเงิน) ในกระเป๋าดิจิทัลนี้ จะต้องยึดถือข้อกำหนดและเงื่อนไขของข้อตกลงผู้ใช้บัตรของผู้ถือบัตรที่เกี่ยวข้องกับบัตรผู้ถือบัตร ซึ่งจะมีผลตั้งแต่เวลานั้น",
|
||||||
"decimal_places_error": "ทศนิยมมากเกินไป",
|
"decimal_places_error": "ทศนิยมมากเกินไป",
|
||||||
|
"decimals_cannot_be_zero": "ทศนิยมโทเค็นไม่สามารถเป็นศูนย์ได้",
|
||||||
"default_buy_provider": "ผู้ให้บริการซื้อเริ่มต้น",
|
"default_buy_provider": "ผู้ให้บริการซื้อเริ่มต้น",
|
||||||
"default_sell_provider": "ผู้ให้บริการการขายเริ่มต้น",
|
"default_sell_provider": "ผู้ให้บริการการขายเริ่มต้น",
|
||||||
"delete": "ลบ",
|
"delete": "ลบ",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Debit card",
|
"debit_card": "Debit card",
|
||||||
"debit_card_terms": "Ang pag -iimbak at paggamit ng numero ng iyong card ng pagbabayad (at mga kredensyal na naaayon sa iyong numero ng card ng pagbabayad) sa digital na pitaka na ito ay napapailalim sa mga termino at kundisyon ng naaangkop na kasunduan sa cardholder kasama ang nagbigay ng card ng pagbabayad, tulad ng sa oras -oras.",
|
"debit_card_terms": "Ang pag -iimbak at paggamit ng numero ng iyong card ng pagbabayad (at mga kredensyal na naaayon sa iyong numero ng card ng pagbabayad) sa digital na pitaka na ito ay napapailalim sa mga termino at kundisyon ng naaangkop na kasunduan sa cardholder kasama ang nagbigay ng card ng pagbabayad, tulad ng sa oras -oras.",
|
||||||
"decimal_places_error": "Masyadong maraming mga lugar na desimal",
|
"decimal_places_error": "Masyadong maraming mga lugar na desimal",
|
||||||
|
"decimals_cannot_be_zero": "Ang Token Decimal ay hindi maaaring maging zero.",
|
||||||
"default_buy_provider": "Default na Provider ng Pagbili",
|
"default_buy_provider": "Default na Provider ng Pagbili",
|
||||||
"default_sell_provider": "Default na Sell Provider",
|
"default_sell_provider": "Default na Sell Provider",
|
||||||
"delete": "Tanggalin",
|
"delete": "Tanggalin",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Ön ödemeli Kart",
|
"debit_card": "Ön ödemeli Kart",
|
||||||
"debit_card_terms": "Ödeme kartı numaranızın (ve kart numaranıza karşılık gelen kimlik bilgilerinin) bu dijital cüzdanda saklanması ve kullanılması, zaman zaman yürürlükte olan ödeme kartı veren kuruluşla yapılan ilgili kart sahibi sözleşmesinin Hüküm ve Koşullarına tabidir.",
|
"debit_card_terms": "Ödeme kartı numaranızın (ve kart numaranıza karşılık gelen kimlik bilgilerinin) bu dijital cüzdanda saklanması ve kullanılması, zaman zaman yürürlükte olan ödeme kartı veren kuruluşla yapılan ilgili kart sahibi sözleşmesinin Hüküm ve Koşullarına tabidir.",
|
||||||
"decimal_places_error": "Çok fazla ondalık basamak",
|
"decimal_places_error": "Çok fazla ondalık basamak",
|
||||||
|
"decimals_cannot_be_zero": "Token oncial sıfır olamaz.",
|
||||||
"default_buy_provider": "Varsayılan Satın Alma Sağlayıcısı",
|
"default_buy_provider": "Varsayılan Satın Alma Sağlayıcısı",
|
||||||
"default_sell_provider": "Varsayılan Satış Sağlayıcısı",
|
"default_sell_provider": "Varsayılan Satış Sağlayıcısı",
|
||||||
"delete": "Sil",
|
"delete": "Sil",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Дебетова картка",
|
"debit_card": "Дебетова картка",
|
||||||
"debit_card_terms": "Зберігання та використання номера вашої платіжної картки (та облікових даних, які відповідають номеру вашої платіжної картки) у цьому цифровому гаманці регулюються Умовами відповідної угоди власника картки з емітентом платіжної картки, що діє з час від часу.",
|
"debit_card_terms": "Зберігання та використання номера вашої платіжної картки (та облікових даних, які відповідають номеру вашої платіжної картки) у цьому цифровому гаманці регулюються Умовами відповідної угоди власника картки з емітентом платіжної картки, що діє з час від часу.",
|
||||||
"decimal_places_error": "Забагато знаків після коми",
|
"decimal_places_error": "Забагато знаків після коми",
|
||||||
|
"decimals_cannot_be_zero": "Десятковий знак не може бути нульовим.",
|
||||||
"default_buy_provider": "Постачальник покупки за замовчуванням",
|
"default_buy_provider": "Постачальник покупки за замовчуванням",
|
||||||
"default_sell_provider": "Постачальник продажу за замовчуванням",
|
"default_sell_provider": "Постачальник продажу за замовчуванням",
|
||||||
"delete": "Видалити",
|
"delete": "Видалити",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "ڈیبٹ کارڈ",
|
"debit_card": "ڈیبٹ کارڈ",
|
||||||
"debit_card_terms": "اس ڈیجیٹل والیٹ میں آپ کے ادائیگی کارڈ نمبر (اور آپ کے ادائیگی کارڈ نمبر سے متعلقہ اسناد) کا ذخیرہ اور استعمال ادائیگی کارڈ جاری کنندہ کے ساتھ قابل اطلاق کارڈ ہولڈر کے معاہدے کی شرائط و ضوابط کے ساتھ مشروط ہے، جیسا کہ وقتاً فوقتاً نافذ ہوتا ہے۔",
|
"debit_card_terms": "اس ڈیجیٹل والیٹ میں آپ کے ادائیگی کارڈ نمبر (اور آپ کے ادائیگی کارڈ نمبر سے متعلقہ اسناد) کا ذخیرہ اور استعمال ادائیگی کارڈ جاری کنندہ کے ساتھ قابل اطلاق کارڈ ہولڈر کے معاہدے کی شرائط و ضوابط کے ساتھ مشروط ہے، جیسا کہ وقتاً فوقتاً نافذ ہوتا ہے۔",
|
||||||
"decimal_places_error": "بہت زیادہ اعشاریہ جگہیں۔",
|
"decimal_places_error": "بہت زیادہ اعشاریہ جگہیں۔",
|
||||||
|
"decimals_cannot_be_zero": "ٹوکن اعشاریہ صفر نہیں ہوسکتا۔",
|
||||||
"default_buy_provider": "پہلے سے طے شدہ خریدنے والا",
|
"default_buy_provider": "پہلے سے طے شدہ خریدنے والا",
|
||||||
"default_sell_provider": " ﮦﺪﻨﻨﮐ ﻢﮨﺍﺮﻓ ﻞﯿﺳ ﭧﻟﺎﻔﯾﮈ",
|
"default_sell_provider": " ﮦﺪﻨﻨﮐ ﻢﮨﺍﺮﻓ ﻞﯿﺳ ﭧﻟﺎﻔﯾﮈ",
|
||||||
"delete": "حذف کریں۔",
|
"delete": "حذف کریں۔",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "Káàdì ìrajà",
|
"debit_card": "Káàdì ìrajà",
|
||||||
"debit_card_terms": "Òfin ti olùṣe àjọrò káàdì ìrajà bójú irú ọ̀nà t'á pamọ́ àti a lo òǹkà ti káàdì ìrajà yín (àti ọ̀rọ̀ ìdánimọ̀ tí káàdì náà) nínú àpamọ́wọ́ yìí.",
|
"debit_card_terms": "Òfin ti olùṣe àjọrò káàdì ìrajà bójú irú ọ̀nà t'á pamọ́ àti a lo òǹkà ti káàdì ìrajà yín (àti ọ̀rọ̀ ìdánimọ̀ tí káàdì náà) nínú àpamọ́wọ́ yìí.",
|
||||||
"decimal_places_error": "Oọ̀rọ̀ ayipada ti o wa ni o dara julọ",
|
"decimal_places_error": "Oọ̀rọ̀ ayipada ti o wa ni o dara julọ",
|
||||||
|
"decimals_cannot_be_zero": "Token eleemel ko le jẹ odo.",
|
||||||
"default_buy_provider": "Aiyipada Ra Olupese",
|
"default_buy_provider": "Aiyipada Ra Olupese",
|
||||||
"default_sell_provider": "Aiyipada Olupese Tita",
|
"default_sell_provider": "Aiyipada Olupese Tita",
|
||||||
"delete": "Pa á",
|
"delete": "Pa á",
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
"debit_card": "借记卡",
|
"debit_card": "借记卡",
|
||||||
"debit_card_terms": "您的支付卡号(以及与您的支付卡号对应的凭证)在此数字钱包中的存储和使用受适用的持卡人与支付卡发卡机构签订的协议的条款和条件的约束,自时不时。",
|
"debit_card_terms": "您的支付卡号(以及与您的支付卡号对应的凭证)在此数字钱包中的存储和使用受适用的持卡人与支付卡发卡机构签订的协议的条款和条件的约束,自时不时。",
|
||||||
"decimal_places_error": "小数位太多",
|
"decimal_places_error": "小数位太多",
|
||||||
|
"decimals_cannot_be_zero": "代币十进制不能为零。",
|
||||||
"default_buy_provider": "默认购买提供商",
|
"default_buy_provider": "默认购买提供商",
|
||||||
"default_sell_provider": "默认销售提供商",
|
"default_sell_provider": "默认销售提供商",
|
||||||
"delete": "删除",
|
"delete": "删除",
|
||||||
|
|
|
@ -42,6 +42,7 @@ class SecretKey {
|
||||||
static final evmChainsSecrets = [
|
static final evmChainsSecrets = [
|
||||||
SecretKey('etherScanApiKey', () => ''),
|
SecretKey('etherScanApiKey', () => ''),
|
||||||
SecretKey('polygonScanApiKey', () => ''),
|
SecretKey('polygonScanApiKey', () => ''),
|
||||||
|
SecretKey('moralisApiKey', () => ''),
|
||||||
];
|
];
|
||||||
|
|
||||||
static final solanaSecrets = [
|
static final solanaSecrets = [
|
||||||
|
|
Loading…
Reference in a new issue