From 43f2225e0c2b5e4c3f07eca7e7667fdefc1c077f Mon Sep 17 00:00:00 2001 From: Konstantin Ullrich Date: Sat, 19 Jul 2025 00:47:06 +0200 Subject: [PATCH 01/16] CW-1130-deuro-fixes-improvements (#2392) * feat: add support for Ethereum EIP-681 URIs in PaymentRequest and implement test coverage * test: add unit test for EIP-681 URI handling with contract and no chainId [skip-ci] * fix(CW-1114): rounding error for really large numbers * fix: wrong decimals for eth fee display * fix: limit fractional digits to a maximum of `decimals` in `format_fixed` function [skip-ci] * test: add unit tests for `formatFixed` function * refactor: replace custom balance formatting with `formatFixed` utility function * refactor: improve dEuroViewModel formatting and computation logic * refactor: extract and simplify interest action handlers in dEuro savings page * fix: deuro add should show edit Add bottom sheet * feat: block user from entering amount bigger than the max * feat: use new tooltip bottomsheet for dEuro * feat: add pull down to refresh dEuro savings --------- Co-authored-by: Omar Hatem --- cw_evm/lib/evm_erc20_balance.dart | 14 +- .../integrations/deuro/savings_page.dart | 174 ++++++++++-------- .../deuro/widgets/savings_edit_sheet.dart | 45 ++++- .../bottom_sheet/tooltip_bottom_sheet.dart | 46 +++++ .../integrations/deuro_view_model.dart | 91 +++++---- 5 files changed, 221 insertions(+), 149 deletions(-) create mode 100644 lib/src/widgets/bottom_sheet/tooltip_bottom_sheet.dart diff --git a/cw_evm/lib/evm_erc20_balance.dart b/cw_evm/lib/evm_erc20_balance.dart index 952d50ba8..a29b74188 100644 --- a/cw_evm/lib/evm_erc20_balance.dart +++ b/cw_evm/lib/evm_erc20_balance.dart @@ -1,6 +1,5 @@ import 'dart:convert'; -import 'dart:math'; -import 'package:intl/intl.dart'; +import 'package:cw_core/format_fixed.dart'; import 'package:cw_core/balance.dart'; @@ -12,17 +11,10 @@ class EVMChainERC20Balance extends Balance { final int exponent; @override - String get formattedAdditionalBalance => _balance(); + String get formattedAdditionalBalance => formatFixed(balance, exponent, fractionalDigits: 12); @override - String get formattedAvailableBalance => _balance(); - - String _balance() { - NumberFormat formatter = NumberFormat('0.00##########', 'en_US'); - double numBalance = (balance / BigInt.from(10).pow(exponent)).toDouble(); - String formattedBalance = formatter.format(numBalance); - return formattedBalance; - } + String get formattedAvailableBalance => formatFixed(balance, exponent, fractionalDigits: 12); String toJSON() => json.encode({ 'balanceInWei': balance.toString(), diff --git a/lib/src/screens/integrations/deuro/savings_page.dart b/lib/src/screens/integrations/deuro/savings_page.dart index 38054c09d..8aee7fd83 100644 --- a/lib/src/screens/integrations/deuro/savings_page.dart +++ b/lib/src/screens/integrations/deuro/savings_page.dart @@ -9,7 +9,9 @@ import 'package:cake_wallet/src/widgets/alert_with_one_action.dart'; import 'package:cake_wallet/src/widgets/bottom_sheet/base_bottom_sheet_widget.dart'; import 'package:cake_wallet/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart'; import 'package:cake_wallet/src/widgets/bottom_sheet/info_bottom_sheet_widget.dart'; +import 'package:cake_wallet/src/widgets/bottom_sheet/tooltip_bottom_sheet.dart'; import 'package:cake_wallet/src/widgets/gradient_background.dart'; +import 'package:cake_wallet/utils/responsive_layout_util.dart'; import 'package:cake_wallet/utils/show_pop_up.dart'; import 'package:cake_wallet/view_model/integrations/deuro_view_model.dart'; import 'package:cake_wallet/view_model/send/send_view_model_state.dart'; @@ -37,86 +39,71 @@ class DEuroSavingsPage extends BasePage { @override String get title => S.current.deuro_savings; - Widget trailing(BuildContext context) => MergeSemantics( - child: SizedBox( - height: 37, - width: 37, - child: ButtonTheme( - minWidth: double.minPositive, - child: Semantics( - label: "Refresh", - child: TextButton( - style: TextButton.styleFrom( - foregroundColor: Theme.of(context).colorScheme.onSurface, - overlayColor: WidgetStateColor.resolveWith((states) => Colors.transparent), - ), - onPressed: _dEuroViewModel.reloadSavingsUserData, - child: Icon( - Icons.refresh, - color: pageIconColor(context), - size: 20, - ), - ), - ), - ), - ), - ); - @override Widget body(BuildContext context) { WidgetsBinding.instance.addPostFrameCallback((_) => _setReactions(context, _dEuroViewModel)); - return Container( - width: double.infinity, - child: Column( - children: [ - Observer( - builder: (_) => SavingsCard( - isDarkTheme: currentTheme.isDark, - interestRate: "${_dEuroViewModel.interestRate}%", - savingsBalance: _dEuroViewModel.savingsBalance, - fiatSavingsBalance: _dEuroViewModel.fiatSavingsBalance, - currency: CryptoCurrency.deuro, - fiatCurrency: _dEuroViewModel.isFiatDisabled ? null : _dEuroViewModel.fiat, - onAddSavingsPressed: () => _onSavingsAdd(context), - onRemoveSavingsPressed: () => _onSavingsRemove(context), - onApproveSavingsPressed: _dEuroViewModel.prepareApproval, - onTooltipPressed: () => _onSavingsTooltipPressed(context), - isEnabled: _dEuroViewModel.isEnabled, - isLoading: _dEuroViewModel.isLoading, - ), - ), - Observer( - builder: (_) => InterestCardWidget( - isDarkTheme: currentTheme.isDark, - title: S.of(context).deuro_savings_collect_interest, - fiatAccruedInterest: _dEuroViewModel.fiatAccruedInterest, - fiatCurrency: _dEuroViewModel.isFiatDisabled ? null : _dEuroViewModel.fiat, - accruedInterest: _dEuroViewModel.accruedInterest, - onCollectInterest: _dEuroViewModel.prepareCollectInterest, - onReinvestInterest: _dEuroViewModel.prepareReinvestInterest, - onTooltipPressed: () => _onInterestTooltipPressed(context), - isEnabled: _dEuroViewModel.isEnabled, - ), - ), - Spacer(), - SafeArea( - child: Padding( - padding: EdgeInsets.only(bottom: 30), - child: Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - InfoChip( - label: S.of(context).deuro_about_deuro, - icon: CupertinoIcons.info, - onPressed: () => _showWelcomeTooltip(context), + return RefreshIndicator( + displacement: responsiveLayoutUtil.screenHeight * 0.1, + onRefresh: _dEuroViewModel.reloadSavingsUserData, + child: CustomScrollView( + slivers: [ + SliverFillRemaining( + child: SizedBox( + width: double.infinity, + child: Column( + children: [ + Observer( + builder: (_) => SavingsCard( + isDarkTheme: currentTheme.isDark, + interestRate: "${_dEuroViewModel.interestRateFormated}%", + savingsBalance: _dEuroViewModel.savingsBalanceFormated, + fiatSavingsBalance: _dEuroViewModel.fiatSavingsBalanceFormated, + currency: CryptoCurrency.deuro, + fiatCurrency: _dEuroViewModel.isFiatDisabled ? null : _dEuroViewModel.fiat, + onAddSavingsPressed: () => _onSavingsAdd(context), + onRemoveSavingsPressed: () => _onSavingsRemove(context), + onApproveSavingsPressed: _dEuroViewModel.prepareApproval, + onTooltipPressed: () => _onSavingsTooltipPressed(context), + isEnabled: _dEuroViewModel.isEnabled, + isLoading: _dEuroViewModel.isLoading, + ), + ), + Observer( + builder: (_) => InterestCardWidget( + isDarkTheme: currentTheme.isDark, + title: S.of(context).deuro_savings_collect_interest, + fiatAccruedInterest: _dEuroViewModel.fiatAccruedInterestFormated, + fiatCurrency: _dEuroViewModel.isFiatDisabled ? null : _dEuroViewModel.fiat, + accruedInterest: _dEuroViewModel.accruedInterestFormated, + onCollectInterest: _onCollectInterest, + onReinvestInterest: _onReinvestInterest, + onTooltipPressed: () => _onInterestTooltipPressed(context), + isEnabled: _dEuroViewModel.isSavingsActionsEnabled, + ), + ), + Spacer(), + SafeArea( + child: Padding( + padding: EdgeInsets.only(bottom: 30), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + InfoChip( + label: S.of(context).deuro_about_deuro, + icon: CupertinoIcons.info, + onPressed: () => _showWelcomeTooltip(context), + ), + SizedBox(width: 10), + InfoChip( + label: S.of(context).website, + icon: CupertinoIcons.globe, + onPressed: () => launchUrlString("https://deuro.com/"), + ) + ], + ), + ), ), - SizedBox(width: 10), - InfoChip( - label: S.of(context).website, - icon: CupertinoIcons.globe, - onPressed: () => launchUrlString("https://deuro.com/"), - ) ], ), ), @@ -126,14 +113,36 @@ class DEuroSavingsPage extends BasePage { ); } + bool _editSheetIsOpen = false; + Future _onSavingsAdd(BuildContext context) async { + if (_editSheetIsOpen) return; + _editSheetIsOpen = true; final amount = await _showEditBottomSheet(context, isAdding: true); if (amount != null) _dEuroViewModel.prepareSavingsEdit(amount, true); + _editSheetIsOpen = false; } Future _onSavingsRemove(BuildContext context) async { + if (_editSheetIsOpen) return; + _editSheetIsOpen = true; final amount = await _showEditBottomSheet(context, isAdding: false); if (amount != null) _dEuroViewModel.prepareSavingsEdit(amount, false); + _editSheetIsOpen = false; + } + + Future _onReinvestInterest() async { + if (_editSheetIsOpen) return; + _editSheetIsOpen = true; + await _dEuroViewModel.prepareReinvestInterest(); + _editSheetIsOpen = false; + } + + Future _onCollectInterest() async { + if (_editSheetIsOpen) return; + _editSheetIsOpen = true; + await _dEuroViewModel.prepareCollectInterest(); + _editSheetIsOpen = false; } bool _isReactionsSet = false; @@ -175,10 +184,10 @@ class DEuroSavingsPage extends BasePage { currency: CryptoCurrency.deuro, amount: S.of(bottomSheetContext).send_amount, amountValue: _dEuroViewModel.actionType == DEuroActionType.reinvest - ? _dEuroViewModel.accruedInterest + ? _dEuroViewModel.accruedInterestFormated : tx.amountFormatted, fiatAmountValue: _dEuroViewModel.actionType == DEuroActionType.reinvest - ? _dEuroViewModel.fiatAccruedInterest + ? _dEuroViewModel.fiatAccruedInterestFormated : _dEuroViewModel.pendingTransactionFiatAmountFormatted, fee: S.of(bottomSheetContext).send_estimated_fee, feeValue: tx.feeFormatted, @@ -301,11 +310,11 @@ class DEuroSavingsPage extends BasePage { showModalBottomSheet( context: context, - builder: (BuildContext bottomSheetContext) => InfoBottomSheet( + builder: (BuildContext bottomSheetContext) => TooltipSheet( currentTheme: currentTheme, titleText: title, titleIconPath: CryptoCurrency.deuro.iconPath, - content: content, + tooltip: content, footerType: FooterType.doubleActionButton, doubleActionRightButtonText: S.of(context).close, rightActionButtonKey: ValueKey('deuro_page_tooltip_dialog_${key}_ok_button_key'), @@ -358,7 +367,8 @@ class DEuroSavingsPage extends BasePage { content: S.of(context).deuro_tooltip_no_eth, singleActionButtonKey: ValueKey('deuro_page_tooltip_dialog_no_eth_ok_button_key'), singleActionButtonText: S.of(context).close, - onSingleActionButtonPressed: () => Navigator.of(bottomSheetContext).pop(), footerType: FooterType.singleActionButton, + onSingleActionButtonPressed: () => Navigator.of(bottomSheetContext).pop(), + footerType: FooterType.singleActionButton, ), ); } @@ -375,7 +385,9 @@ class DEuroSavingsPage extends BasePage { balanceTitle: isAdding ? S.of(context).deuro_savings_available_to_add : S.of(context).deuro_savings_available_to_remove, - balance: isAdding ? _dEuroViewModel.accountBalance : _dEuroViewModel.savingsBalance, + balance: isAdding + ? _dEuroViewModel.accountBalanceFormated + : _dEuroViewModel.savingsBalanceFormated, footerType: FooterType.none, maxHeight: MediaQuery.of(context).size.height * 0.8, ), diff --git a/lib/src/screens/integrations/deuro/widgets/savings_edit_sheet.dart b/lib/src/screens/integrations/deuro/widgets/savings_edit_sheet.dart index 2c9b66d57..558a39182 100644 --- a/lib/src/screens/integrations/deuro/widgets/savings_edit_sheet.dart +++ b/lib/src/screens/integrations/deuro/widgets/savings_edit_sheet.dart @@ -3,6 +3,7 @@ import 'package:cake_wallet/generated/i18n.dart'; import 'package:cake_wallet/src/screens/integrations/deuro/widgets/numpad.dart'; import 'package:cake_wallet/src/widgets/bottom_sheet/base_bottom_sheet_widget.dart'; import 'package:cake_wallet/src/widgets/primary_button.dart'; +import 'package:cw_core/parse_fixed.dart'; import 'package:flutter/material.dart'; class SavingsEditSheet extends BaseBottomSheet { @@ -14,7 +15,8 @@ class SavingsEditSheet extends BaseBottomSheet { super.titleIconPath, this.balance, this.balanceTitle, - required super.footerType, required super.maxHeight, + required super.footerType, + required super.maxHeight, }); @override @@ -53,8 +55,35 @@ class _SavingsEditBodyState extends State<_SavingsEditBody> { } String amount = '0'; + bool isValid = false; final FocusNode _numpadFocusNode = FocusNode(); + void _onPressedAll() => setState(() { + amount = widget.balance!; + isValid = _validate(); + }); + + void _onNumberPressed(int i) => setState(() { + amount = amount == '0' ? i.toString() : '${amount}${i}'; + isValid = _validate(); + }); + + void _onDeletePressed() => setState(() { + amount = amount.length > 1 ? amount.substring(0, amount.length - 1) : '0'; + isValid = _validate(); + }); + + void _onDecimalPressed() => setState(() { + amount = '${amount.replaceAll('.', '')}.'; + isValid = _validate(); + }); + + bool _validate() { + final amountBigInt = parseFixed(amount, 18); + final balanceBigInt = parseFixed(widget.balance!, 18); + return balanceBigInt >= amountBigInt && amountBigInt > BigInt.zero; + } + @override Widget build(BuildContext context) => SafeArea( child: Column(children: [ @@ -80,18 +109,14 @@ class _SavingsEditBodyState extends State<_SavingsEditBody> { AssetBalanceRow( title: widget.balanceTitle!, amount: widget.balance!, - onAllPressed: () => setState(() => amount = widget.balance!), + onAllPressed: _onPressedAll, ), ], NumberPad( focusNode: _numpadFocusNode, - onNumberPressed: (i) => setState( - () => amount = amount == '0' ? i.toString() : '${amount}${i}', - ), - onDeletePressed: () => setState( - () => amount = amount.length > 1 ? amount.substring(0, amount.length - 1) : '0', - ), - onDecimalPressed: () => setState(() => amount = '${amount.replaceAll('.', '')}.'), + onNumberPressed: _onNumberPressed, + onDeletePressed: _onDeletePressed, + onDecimalPressed: _onDecimalPressed, ), Padding( padding: const EdgeInsets.fromLTRB(16, 12, 16, 0), @@ -101,7 +126,7 @@ class _SavingsEditBodyState extends State<_SavingsEditBody> { color: Theme.of(context).colorScheme.primary, textColor: Theme.of(context).colorScheme.onPrimary, isLoading: false, - isDisabled: false, + isDisabled: !isValid, ), ) ]), diff --git a/lib/src/widgets/bottom_sheet/tooltip_bottom_sheet.dart b/lib/src/widgets/bottom_sheet/tooltip_bottom_sheet.dart new file mode 100644 index 000000000..6b75d3753 --- /dev/null +++ b/lib/src/widgets/bottom_sheet/tooltip_bottom_sheet.dart @@ -0,0 +1,46 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:cake_wallet/src/widgets/bottom_sheet/base_bottom_sheet_widget.dart'; +import 'package:flutter/material.dart'; + +class TooltipSheet extends BaseBottomSheet { + final String tooltip; + + const TooltipSheet({ + required super.currentTheme, + required super.titleText, + super.titleIconPath, + required this.tooltip, + required super.footerType, + super.maxHeight = 900, + super.singleActionButtonText, + super.onSingleActionButtonPressed, + super.singleActionButtonKey, + super.doubleActionLeftButtonText, + super.doubleActionRightButtonText, + super.onLeftActionButtonPressed, + super.onRightActionButtonPressed, + super.leftActionButtonKey, + super.rightActionButtonKey, + }); + + @override + Widget contentWidget(BuildContext context) => Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(10), + color: Theme.of(context).colorScheme.surfaceContainer), + margin: const EdgeInsets.all(12), + padding: const EdgeInsets.all(12), + child: AutoSizeText( + tooltip, + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.bodyMedium!.copyWith( + fontSize: 16, + fontWeight: FontWeight.w500, + color: Theme.of(context).colorScheme.onSurfaceVariant, + decoration: TextDecoration.none, + ), + ), + ); + + Widget footerWidget(BuildContext context) => SizedBox.shrink(); +} diff --git a/lib/view_model/integrations/deuro_view_model.dart b/lib/view_model/integrations/deuro_view_model.dart index 5d989233a..31c3ff4a6 100644 --- a/lib/view_model/integrations/deuro_view_model.dart +++ b/lib/view_model/integrations/deuro_view_model.dart @@ -21,6 +21,8 @@ class DEuroViewModel = DEuroViewModelBase with _$DEuroViewModel; abstract class DEuroViewModelBase with Store { final AppStore _appStore; + static BigInt get MIN_ACCRUED_INTEREST => BigInt.parse("1000000000000"); + DEuroViewModelBase( this._appStore, this.balanceViewModel, @@ -44,39 +46,31 @@ abstract class DEuroViewModelBase with Store { @action void acceptDisclaimer() => _settingsStore.shouldShowDEuroDisclaimer = false; - @computed - String get pendingTransactionFiatAmountFormatted => - isFiatDisabled ? '' : '$pendingTransactionFiatAmount ${fiat.title}'; - - @computed - String get pendingTransactionFeeFiatAmountFormatted => - isFiatDisabled ? '' : '$pendingTransactionFeeFiatAmount ${fiat.title}'; - FiatCurrency get fiat => _settingsStore.fiatCurrency; @computed - String get pendingTransactionFiatAmount => - transaction == null ? '0.00' : _getDEuroFiatAmount(transaction!.amountFormatted); - - @computed - String get pendingTransactionFeeFiatAmount { - try { - if (transaction != null) { - final currency = CryptoCurrency.eth; - return calculateFiatAmount( - price: _fiatConversationStore.prices[currency]!, - cryptoAmount: transaction!.feeFormattedValue, - ); - } else { - return '0.00'; - } - } catch (_) { - return '0.00'; - } + String get pendingTransactionFiatAmountFormatted { + final amount = transaction == null ? '0.00' : _getDEuroFiatAmount(transaction!.amountFormatted); + return isFiatDisabled ? '' : '$amount ${fiat.title}'; } @computed - String get accountBalance { + String get pendingTransactionFeeFiatAmountFormatted { + var amount = '0.00'; + try { + if (transaction != null) { + final feeCurrency = CryptoCurrency.eth; + amount = calculateFiatAmount( + price: _fiatConversationStore.prices[feeCurrency]!, + cryptoAmount: transaction!.feeFormattedValue, + ); + } + } catch (_) {} + return isFiatDisabled ? '' : '$amount ${fiat.title}'; + } + + @computed + String get accountBalanceFormated { final dEuroKey = balanceViewModel.balances.keys .firstWhereOrNull((e) => e.title == CryptoCurrency.deuro.title); if (dEuroKey == null) return '0.00'; @@ -84,22 +78,30 @@ abstract class DEuroViewModelBase with Store { } @observable - String savingsBalance = '0.00'; + BigInt savingsBalance = BigInt.zero; @computed - String get fiatSavingsBalance => _getDEuroFiatAmount(savingsBalance); + String get savingsBalanceFormated => + ethereum!.formatterEthereumAmountToDouble(amount: savingsBalance).toStringAsFixed(6); + + @computed + String get fiatSavingsBalanceFormated => _getDEuroFiatAmount(savingsBalanceFormated); @observable ExecutionState state = InitialExecutionState(); @observable - String interestRate = '0'; + String interestRateFormated = '0'; @observable - String accruedInterest = '0.00'; + BigInt accruedInterest = BigInt.zero; @computed - String get fiatAccruedInterest => _getDEuroFiatAmount(accruedInterest); + String get accruedInterestFormated => + ethereum!.formatterEthereumAmountToDouble(amount: accruedInterest).toStringAsFixed(6); + + @computed + String get fiatAccruedInterestFormated => _getDEuroFiatAmount(accruedInterestFormated); @observable BigInt approvedTokens = BigInt.zero; @@ -107,6 +109,9 @@ abstract class DEuroViewModelBase with Store { @computed bool get isEnabled => approvedTokens > BigInt.zero; + @computed + bool get isSavingsActionsEnabled => isEnabled && accruedInterest >= MIN_ACCRUED_INTEREST; + @observable bool isLoading = true; @@ -121,17 +126,9 @@ abstract class DEuroViewModelBase with Store { @action Future reloadSavingsUserData() async { - final savingsBalanceRaw = ethereum!.getDEuroSavingsBalance(_appStore.wallet!); - final accruedInterestRaw = ethereum!.getDEuroAccruedInterest(_appStore.wallet!); - approvedTokens = await ethereum!.getDEuroSavingsApproved(_appStore.wallet!); - - savingsBalance = ethereum! - .formatterEthereumAmountToDouble(amount: await savingsBalanceRaw) - .toStringAsFixed(6); - accruedInterest = ethereum! - .formatterEthereumAmountToDouble(amount: await accruedInterestRaw) - .toStringAsFixed(6); + savingsBalance = await ethereum!.getDEuroSavingsBalance(_appStore.wallet!); + accruedInterest = await ethereum!.getDEuroAccruedInterest(_appStore.wallet!); isLoading = false; } @@ -139,7 +136,7 @@ abstract class DEuroViewModelBase with Store { Future reloadInterestRate() async { final interestRateRaw = await ethereum!.getDEuroInterestRate(_appStore.wallet!); - interestRate = (interestRateRaw / BigInt.from(10000)).toString(); + interestRateFormated = (interestRateRaw / BigInt.from(10000)).toString(); } @action @@ -175,7 +172,7 @@ abstract class DEuroViewModelBase with Store { } } - Future prepareCollectInterest() => prepareSavingsEdit(accruedInterest, false); + Future prepareCollectInterest() => prepareSavingsEdit(accruedInterestFormated, false); Future prepareReinvestInterest() async { try { @@ -230,13 +227,13 @@ abstract class DEuroViewModelBase with Store { String _getDEuroFiatAmount(String amount) { try { - CryptoCurrency deuro = CryptoCurrency.deuro; + var dEuro = CryptoCurrency.deuro; final keys = _fiatConversationStore.prices.keys.toList(); for (final key in keys) { - if (key.title == "DEURO") deuro = key; + if (key.title == "DEURO") dEuro = key; } return calculateFiatAmount( - price: _fiatConversationStore.prices[deuro]!, + price: _fiatConversationStore.prices[dEuro]!, cryptoAmount: amount, ); } catch (_) { From 9b768e8ff1cae5c371f6e93a8b62671d8015387d Mon Sep 17 00:00:00 2001 From: Konstantin Ullrich Date: Sat, 19 Jul 2025 00:47:28 +0200 Subject: [PATCH 02/16] Better windows installer (#2387) * feat: Add redist to windows installer * feat: Add new windows icon --- pubspec_base.yaml | 10 ++++++++++ scripts/windows/.gitignore | 3 ++- scripts/windows/README.md | 21 +++++++++++++++++++++ scripts/windows/build_exe_installer.iss | 3 ++- windows/runner/resources/app_icon.ico | Bin 17470 -> 17515 bytes 5 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 scripts/windows/README.md diff --git a/pubspec_base.yaml b/pubspec_base.yaml index 928f1b18f..cb35f2d46 100644 --- a/pubspec_base.yaml +++ b/pubspec_base.yaml @@ -150,6 +150,7 @@ dev_dependencies: git: url: https://github.com/cake-tech/google-translator.git version: 1.0.0 + msix: ^3.16.9 dependency_overrides: bech32: @@ -221,3 +222,12 @@ flutter: - asset: assets/fonts/Lato-Medium.ttf - asset: assets/fonts/Lato-Semibold.ttf - asset: assets/fonts/Lato-Bold.ttf + +msix_config: + display_name: Cake Wallet + publisher_display_name: Cake Labs + identity_name: com.cakewallet.wallet + msix_version: 1.0.0.1 + logo_path: assets/images/app_logo.png + trim_logo: false + capabilities: internetClient diff --git a/scripts/windows/.gitignore b/scripts/windows/.gitignore index bb28076cd..83d395f3c 100644 --- a/scripts/windows/.gitignore +++ b/scripts/windows/.gitignore @@ -1 +1,2 @@ -actions-runner \ No newline at end of file +actions-runner +vc_redist.x64.exe diff --git a/scripts/windows/README.md b/scripts/windows/README.md new file mode 100644 index 000000000..d1decf74f --- /dev/null +++ b/scripts/windows/README.md @@ -0,0 +1,21 @@ +# Windows Build Instructions + +## Prerequisites + +Before building the Windows installer, make sure you have the following prerequisites: + +1. Inno Setup installed on your system +2. Microsoft Visual C++ Redistributable for Visual Studio 2022 (x64) installer + +## Downloading the VC++ Redistributable Installer + +The Windows installer requires the Microsoft Visual C++ Redistributable for Visual Studio 2022 (x64) installer. You need to download it from Microsoft's website and place it in the same directory as the Inno Setup script (`build_exe_installer.iss`). + +1. Download the VC++ Redistributable installer from: https://aka.ms/vs/17/release/vc_redist.x64.exe +2. Save the file as `vc_redist.x64.exe` in the `scripts\windows` directory + +## Building the Installer + +Once you have downloaded the VC++ Redistributable installer, you can build the Windows installer by running the Inno Setup script. + +The installer will include the VC++ Redistributable and install it during the Cake Wallet installation process. diff --git a/scripts/windows/build_exe_installer.iss b/scripts/windows/build_exe_installer.iss index 1425b614b..9cde4090e 100644 --- a/scripts/windows/build_exe_installer.iss +++ b/scripts/windows/build_exe_installer.iss @@ -33,6 +33,7 @@ Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{ [Files] Source: "..\..\build\windows\x64\runner\Release\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs +Source: "vc_redist.x64.exe"; DestDir: "{tmp}"; Flags: deleteafterinstall ; NOTE: Don't use "Flags: ignoreversion" on any shared system files [Icons] @@ -40,5 +41,5 @@ Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon [Run] +Filename: "{tmp}\vc_redist.x64.exe"; Parameters: "/install /quiet /norestart"; StatusMsg: "Installing VC++ Redistributable..."; Flags: waituntilterminated Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent - diff --git a/windows/runner/resources/app_icon.ico b/windows/runner/resources/app_icon.ico index 242fb9cb5f35992d02996c591a2bc69a08b5ac94..96713d7574e400c2d477a2046153171a4dba8d00 100644 GIT binary patch literal 17515 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 literal 17470 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 Date: Mon, 21 Jul 2025 19:49:08 +0300 Subject: [PATCH 03/16] ui: add copy button --- ...ake_pay_transaction_sent_bottom_sheet.dart | 161 +++++++++++++++--- .../confirm_sending_bottom_sheet_widget.dart | 91 ++++++++-- 2 files changed, 210 insertions(+), 42 deletions(-) diff --git a/lib/src/widgets/bottom_sheet/cake_pay_transaction_sent_bottom_sheet.dart b/lib/src/widgets/bottom_sheet/cake_pay_transaction_sent_bottom_sheet.dart index 6be6d389f..358ad93d8 100644 --- a/lib/src/widgets/bottom_sheet/cake_pay_transaction_sent_bottom_sheet.dart +++ b/lib/src/widgets/bottom_sheet/cake_pay_transaction_sent_bottom_sheet.dart @@ -4,6 +4,7 @@ import 'package:cake_wallet/utils/image_utill.dart'; import 'package:cake_wallet/view_model/send/output.dart'; import 'package:cw_core/crypto_currency.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; class CakePayTransactionSentBottomSheet extends StatelessWidget { const CakePayTransactionSentBottomSheet({ @@ -39,18 +40,36 @@ class CakePayTransactionSentBottomSheet extends StatelessWidget { final String paymentId; final String paymentIdValue; - TextStyle _titleStyle(BuildContext ctx) => Theme.of(ctx).textTheme.bodyLarge!; + TextStyle _titleStyle(BuildContext ctx) => + Theme + .of(ctx) + .textTheme + .bodyLarge!; - TextStyle _valueStyle(BuildContext ctx) => Theme.of(ctx).textTheme.titleMedium!.copyWith( + TextStyle _valueStyle(BuildContext ctx) => + Theme + .of(ctx) + .textTheme + .titleMedium! + .copyWith( fontSize: 18, fontWeight: FontWeight.w600, ); - TextStyle _subStyle(BuildContext ctx) => Theme.of(ctx).textTheme.labelSmall!.copyWith( - color: Theme.of(ctx).colorScheme.onSurfaceVariant, + TextStyle _subStyle(BuildContext ctx) => + Theme + .of(ctx) + .textTheme + .labelSmall! + .copyWith( + color: Theme + .of(ctx) + .colorScheme + .onSurfaceVariant, ); - Widget _buildHeader(BuildContext ctx) => Column( + Widget _buildHeader(BuildContext ctx) => + Column( children: [ const SizedBox(height: 12), Container( @@ -58,7 +77,10 @@ class CakePayTransactionSentBottomSheet extends StatelessWidget { height: 5, decoration: BoxDecoration( borderRadius: BorderRadius.circular(4), - color: Theme.of(ctx).colorScheme.onSurface, + color: Theme + .of(ctx) + .colorScheme + .onSurface, ), ), const SizedBox(height: 20), @@ -69,11 +91,15 @@ class CakePayTransactionSentBottomSheet extends StatelessWidget { const SizedBox(width: 6), Text( titleText, - style: Theme.of(ctx).textTheme.titleLarge!.copyWith( - fontSize: 20, - fontWeight: FontWeight.w600, - decoration: TextDecoration.none, - ), + style: Theme + .of(ctx) + .textTheme + .titleLarge! + .copyWith( + fontSize: 20, + fontWeight: FontWeight.w600, + decoration: TextDecoration.none, + ), ), ], ), @@ -81,7 +107,8 @@ class CakePayTransactionSentBottomSheet extends StatelessWidget { ], ); - Widget _buildBody(BuildContext context) => Padding( + Widget _buildBody(BuildContext context) => + Padding( padding: const EdgeInsets.symmetric(horizontal: 8), child: Column( children: [ @@ -112,25 +139,49 @@ class CakePayTransactionSentBottomSheet extends StatelessWidget { itemSubTitleStyle: _subStyle(context), imagePath: output.parsedAddress.profileImageUrl, ), + const SizedBox(height: 8), + _StandardTile( + itemTitle: paymentId + ': \n' + paymentIdValue, + titleStyle: _titleStyle(context).copyWith( + fontSize: 14 + ), + itemValue: '', + itemValueStyle: _valueStyle(context), + copyButton: true, + copyButtonOnPressed: () async => + await Clipboard.setData(ClipboardData(text: paymentIdValue)), + ), + Padding( padding: const EdgeInsets.symmetric(horizontal: 24, vertical: 16), child: Column( children: [ - Text(paymentId + ': ' + paymentIdValue, - style: Theme.of(context).textTheme.bodyLarge, textAlign: TextAlign.center), const SizedBox(height: 18), Image.asset('assets/images/envelope.png'), const SizedBox(height: 18), Text( - S.of(context).cake_pay_card_email_delivered_message, - style: Theme.of(context).textTheme.bodyLarge, + S + .of(context) + .cake_pay_card_email_delivered_message, + style: Theme + .of(context) + .textTheme + .bodyLarge, textAlign: TextAlign.center, ), const SizedBox(height: 24), PrimaryButton( - text: S.of(context).close, - color: Theme.of(context).colorScheme.primary, - textColor: Theme.of(context).colorScheme.onPrimaryContainer, + text: S + .of(context) + .close, + color: Theme + .of(context) + .colorScheme + .primary, + textColor: Theme + .of(context) + .colorScheme + .onPrimaryContainer, onPressed: onClose, ), ], @@ -142,12 +193,18 @@ class CakePayTransactionSentBottomSheet extends StatelessWidget { @override Widget build(BuildContext context) { - final maxHeight = MediaQuery.of(context).size.height * 0.9; + final maxHeight = MediaQuery + .of(context) + .size + .height * 0.9; return ClipRRect( borderRadius: const BorderRadius.vertical(top: Radius.circular(30)), child: Material( - color: Theme.of(context).colorScheme.surface, + color: Theme + .of(context) + .colorScheme + .surface, child: ConstrainedBox( constraints: BoxConstraints(maxHeight: maxHeight), child: SingleChildScrollView( @@ -174,6 +231,8 @@ class _StandardTile extends StatelessWidget { this.itemSubTitle, this.itemSubTitleStyle, this.imagePath, + this.copyButton = false, + this.copyButtonOnPressed, }); final String itemTitle; @@ -183,6 +242,8 @@ class _StandardTile extends StatelessWidget { final String? itemSubTitle; final TextStyle? itemSubTitleStyle; final String? imagePath; + final bool copyButton; + final VoidCallback? copyButtonOnPressed; @override Widget build(BuildContext context) { @@ -193,12 +254,17 @@ class _StandardTile extends StatelessWidget { padding: const EdgeInsets.symmetric(horizontal: 14, vertical: 8), decoration: BoxDecoration( borderRadius: BorderRadius.circular(10), - color: Theme.of(context).colorScheme.surfaceContainerLowest.withAlpha(80)), + color: Theme + .of(context) + .colorScheme + .surfaceContainerLowest + .withAlpha(80)), child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Expanded( child: Row( + mainAxisAlignment: copyButton ? MainAxisAlignment.spaceBetween : MainAxisAlignment.start, children: [ if (imagePath != null) Padding( @@ -216,10 +282,19 @@ class _StandardTile extends StatelessWidget { itemTitle, style: titleStyle, overflow: TextOverflow.ellipsis, - maxLines: 1, - softWrap: false, + maxLines: 2, + softWrap: true, )), ), + SizedBox(width: 8), + if (copyButton) + RoundedIconButton( + icon: Icons.copy_all_outlined, + onPressed: copyButtonOnPressed ?? () {}, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(5), + ), + ), ], ), ), @@ -237,3 +312,41 @@ class _StandardTile extends StatelessWidget { ); } } + +class RoundedIconButton extends StatelessWidget { + const RoundedIconButton({this.icon, + this.iconWidget, + required this.onPressed, + this.shape, + this.width, + this.height, + this.iconSize, + this.fillColor}); + + final IconData? icon; + final Widget? iconWidget; + final VoidCallback onPressed; + final ShapeBorder? shape; + final double? width; + final double? height; + final double? iconSize; + final Color? fillColor; + + @override + Widget build(BuildContext context) { + final colorScheme = Theme + .of(context) + .colorScheme; + return RawMaterialButton( + onPressed: onPressed, + fillColor: fillColor ?? colorScheme.surfaceContainerHighest, + elevation: 0, + constraints: BoxConstraints.tightFor(width: width ?? 30, height: height ?? 30), + padding: EdgeInsets.zero, + materialTapTargetSize: MaterialTapTargetSize.shrinkWrap, + shape: shape ?? const CircleBorder(), + child: icon != null + ? Icon(icon, size: iconSize ?? 14, color: colorScheme.onSurface) + : iconWidget); + } +} diff --git a/lib/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart b/lib/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart index a8c643ac4..e71cd76af 100644 --- a/lib/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart +++ b/lib/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart @@ -10,6 +10,7 @@ import 'package:cw_core/crypto_currency.dart'; import 'package:cw_core/pending_transaction.dart'; import 'package:cw_core/wallet_type.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; import 'package:flutter_mobx/flutter_mobx.dart'; import 'base_bottom_sheet_widget.dart'; @@ -45,7 +46,7 @@ class ConfirmSendingBottomSheet extends BaseBottomSheet { _currentTheme = currentTheme, super( titleText: titleText, - maxHeight: 900, + maxHeight: 900, titleIconPath: titleIconPath, currentTheme: currentTheme, footerType: footerType, @@ -115,6 +116,7 @@ class ConfirmSendingBottomSheet extends BaseBottomSheet { itemSubTitleTextStyle: itemSubTitleTextStyle, tileBackgroundColor: tileBackgroundColor, applyAddressFormatting: false, + copyButton: true, )), ), if (explanation != null) @@ -307,20 +309,20 @@ class StandardInfoTile extends StatelessWidget { } class AddressTile extends StatelessWidget { - const AddressTile({ - super.key, - required this.itemTitle, - required this.itemTitleTextStyle, - required this.address, - required this.itemSubTitleTextStyle, - required this.tileBackgroundColor, - required this.walletType, - this.amountTextStyle, - this.applyAddressFormatting = true, - this.imagePath, - this.amount, - this.itemSubTitle, - }); + const AddressTile( + {super.key, + required this.itemTitle, + required this.itemTitleTextStyle, + required this.address, + required this.itemSubTitleTextStyle, + required this.tileBackgroundColor, + required this.walletType, + this.amountTextStyle, + this.applyAddressFormatting = true, + this.imagePath, + this.amount, + this.itemSubTitle, + this.copyButton = false}); final String itemTitle; final TextStyle itemTitleTextStyle; @@ -333,6 +335,7 @@ class AddressTile extends StatelessWidget { final bool applyAddressFormatting; final String? imagePath; final String? itemSubTitle; + final bool copyButton; @override Widget build(BuildContext context) { @@ -387,9 +390,24 @@ class AddressTile extends StatelessWidget { fontWeight: FontWeight.w600, decoration: TextDecoration.none, )) - : Text( - address, - style: itemTitleTextStyle, + : Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text(address, + style: copyButton + ? itemTitleTextStyle.copyWith(fontSize: 12) + : itemTitleTextStyle), + SizedBox(width: 8), + if (copyButton) + RoundedIconButton( + icon: Icons.copy_all_outlined, + onPressed: () async => + await Clipboard.setData(ClipboardData(text: address)), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(5), + ), + ), + ], ), itemSubTitle == null ? Container() @@ -490,3 +508,40 @@ class ExpansionAddressTile extends StatelessWidget { ); } } + +class RoundedIconButton extends StatelessWidget { + const RoundedIconButton( + {this.icon, + this.iconWidget, + required this.onPressed, + this.shape, + this.width, + this.height, + this.iconSize, + this.fillColor}); + + final IconData? icon; + final Widget? iconWidget; + final VoidCallback onPressed; + final ShapeBorder? shape; + final double? width; + final double? height; + final double? iconSize; + final Color? fillColor; + + @override + Widget build(BuildContext context) { + final colorScheme = Theme.of(context).colorScheme; + return RawMaterialButton( + onPressed: onPressed, + fillColor: fillColor ?? colorScheme.surfaceContainerHighest, + elevation: 0, + constraints: BoxConstraints.tightFor(width: width ?? 30, height: height ?? 30), + padding: EdgeInsets.zero, + materialTapTargetSize: MaterialTapTargetSize.shrinkWrap, + shape: shape ?? const CircleBorder(), + child: icon != null + ? Icon(icon, size: iconSize ?? 14, color: colorScheme.onSurface) + : iconWidget); + } +} From 37e9d2c6e362f19a8a106375acad499733fefb7b Mon Sep 17 00:00:00 2001 From: Serhii Date: Tue, 22 Jul 2025 11:46:26 +0300 Subject: [PATCH 04/16] ui: extract RoundedIconButton --- ...ake_pay_transaction_sent_bottom_sheet.dart | 39 +------------------ .../confirm_sending_bottom_sheet_widget.dart | 38 +----------------- lib/src/widgets/rounded_icon_button.dart | 38 ++++++++++++++++++ 3 files changed, 40 insertions(+), 75 deletions(-) create mode 100644 lib/src/widgets/rounded_icon_button.dart diff --git a/lib/src/widgets/bottom_sheet/cake_pay_transaction_sent_bottom_sheet.dart b/lib/src/widgets/bottom_sheet/cake_pay_transaction_sent_bottom_sheet.dart index 358ad93d8..da91926b2 100644 --- a/lib/src/widgets/bottom_sheet/cake_pay_transaction_sent_bottom_sheet.dart +++ b/lib/src/widgets/bottom_sheet/cake_pay_transaction_sent_bottom_sheet.dart @@ -1,5 +1,6 @@ import 'package:cake_wallet/generated/i18n.dart'; import 'package:cake_wallet/src/widgets/primary_button.dart'; +import 'package:cake_wallet/src/widgets/rounded_icon_button.dart'; import 'package:cake_wallet/utils/image_utill.dart'; import 'package:cake_wallet/view_model/send/output.dart'; import 'package:cw_core/crypto_currency.dart'; @@ -312,41 +313,3 @@ class _StandardTile extends StatelessWidget { ); } } - -class RoundedIconButton extends StatelessWidget { - const RoundedIconButton({this.icon, - this.iconWidget, - required this.onPressed, - this.shape, - this.width, - this.height, - this.iconSize, - this.fillColor}); - - final IconData? icon; - final Widget? iconWidget; - final VoidCallback onPressed; - final ShapeBorder? shape; - final double? width; - final double? height; - final double? iconSize; - final Color? fillColor; - - @override - Widget build(BuildContext context) { - final colorScheme = Theme - .of(context) - .colorScheme; - return RawMaterialButton( - onPressed: onPressed, - fillColor: fillColor ?? colorScheme.surfaceContainerHighest, - elevation: 0, - constraints: BoxConstraints.tightFor(width: width ?? 30, height: height ?? 30), - padding: EdgeInsets.zero, - materialTapTargetSize: MaterialTapTargetSize.shrinkWrap, - shape: shape ?? const CircleBorder(), - child: icon != null - ? Icon(icon, size: iconSize ?? 14, color: colorScheme.onSurface) - : iconWidget); - } -} diff --git a/lib/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart b/lib/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart index e71cd76af..c5c59d80e 100644 --- a/lib/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart +++ b/lib/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart @@ -1,4 +1,5 @@ import 'package:cake_wallet/generated/i18n.dart'; +import 'package:cake_wallet/src/widgets/rounded_icon_button.dart'; import 'package:cake_wallet/src/widgets/standard_slide_button_widget.dart'; import 'package:cake_wallet/themes/core/material_base_theme.dart'; import 'package:cake_wallet/themes/utils/custom_theme_colors.dart'; @@ -508,40 +509,3 @@ class ExpansionAddressTile extends StatelessWidget { ); } } - -class RoundedIconButton extends StatelessWidget { - const RoundedIconButton( - {this.icon, - this.iconWidget, - required this.onPressed, - this.shape, - this.width, - this.height, - this.iconSize, - this.fillColor}); - - final IconData? icon; - final Widget? iconWidget; - final VoidCallback onPressed; - final ShapeBorder? shape; - final double? width; - final double? height; - final double? iconSize; - final Color? fillColor; - - @override - Widget build(BuildContext context) { - final colorScheme = Theme.of(context).colorScheme; - return RawMaterialButton( - onPressed: onPressed, - fillColor: fillColor ?? colorScheme.surfaceContainerHighest, - elevation: 0, - constraints: BoxConstraints.tightFor(width: width ?? 30, height: height ?? 30), - padding: EdgeInsets.zero, - materialTapTargetSize: MaterialTapTargetSize.shrinkWrap, - shape: shape ?? const CircleBorder(), - child: icon != null - ? Icon(icon, size: iconSize ?? 14, color: colorScheme.onSurface) - : iconWidget); - } -} diff --git a/lib/src/widgets/rounded_icon_button.dart b/lib/src/widgets/rounded_icon_button.dart new file mode 100644 index 000000000..72d5491f3 --- /dev/null +++ b/lib/src/widgets/rounded_icon_button.dart @@ -0,0 +1,38 @@ +import 'package:flutter/material.dart'; + +class RoundedIconButton extends StatelessWidget { + const RoundedIconButton( + {this.icon, + this.iconWidget, + required this.onPressed, + this.shape, + this.width, + this.height, + this.iconSize, + this.fillColor}); + + final IconData? icon; + final Widget? iconWidget; + final VoidCallback onPressed; + final ShapeBorder? shape; + final double? width; + final double? height; + final double? iconSize; + final Color? fillColor; + + @override + Widget build(BuildContext context) { + final colorScheme = Theme.of(context).colorScheme; + return RawMaterialButton( + onPressed: onPressed, + fillColor: fillColor ?? colorScheme.surfaceContainerHighest, + elevation: 0, + constraints: BoxConstraints.tightFor(width: width ?? 30, height: height ?? 30), + padding: EdgeInsets.zero, + materialTapTargetSize: MaterialTapTargetSize.shrinkWrap, + shape: shape ?? const CircleBorder(), + child: icon != null + ? Icon(icon, size: iconSize ?? 14, color: colorScheme.onSurface) + : iconWidget); + } +} From ce5b838d963b2e91f7df46eefb21201f62a05430 Mon Sep 17 00:00:00 2001 From: Konstantin Ullrich Date: Wed, 23 Jul 2025 00:51:35 +0200 Subject: [PATCH 05/16] fix: improve German translations and button color logic in exchange trade page (#2400) --- .../exchange_trade/exchange_trade_page.dart | 33 +++++++++++-------- res/values/strings_de.arb | 6 ++-- 2 files changed, 22 insertions(+), 17 deletions(-) diff --git a/lib/src/screens/exchange_trade/exchange_trade_page.dart b/lib/src/screens/exchange_trade/exchange_trade_page.dart index 961d2ad8c..a3ab59be5 100644 --- a/lib/src/screens/exchange_trade/exchange_trade_page.dart +++ b/lib/src/screens/exchange_trade/exchange_trade_page.dart @@ -174,8 +174,12 @@ class ExchangeTradeState extends State { onPressed: () async { Navigator.of(context).pushNamed(Routes.exchangeTradeExternalSendPage); }, - color: Theme.of(context).colorScheme.surfaceContainer, - textColor: Theme.of(context).colorScheme.onSecondaryContainer, + color: widget.exchangeTradeViewModel.isSendable + ? Theme.of(context).colorScheme.surfaceContainer + : Theme.of(context).colorScheme.primary, + textColor: widget.exchangeTradeViewModel.isSendable + ? Theme.of(context).colorScheme.onSecondaryContainer + : Theme.of(context).colorScheme.onPrimary, ), SizedBox(height: 16), Observer( @@ -183,18 +187,19 @@ class ExchangeTradeState extends State { final trade = widget.exchangeTradeViewModel.trade; final sendingState = widget.exchangeTradeViewModel.sendViewModel.state; - return widget.exchangeTradeViewModel.isSendable && - !(sendingState is TransactionCommitted) - ? LoadingPrimaryButton( - key: ValueKey('exchange_trade_page_send_from_cake_button_key'), - isDisabled: trade.inputAddress == null || trade.inputAddress!.isEmpty, - isLoading: sendingState is IsExecutingState, - onPressed: () => widget.exchangeTradeViewModel.confirmSending(), - text: S.current.send_from_cake_wallet, - color: Theme.of(context).colorScheme.primary, - textColor: Theme.of(context).colorScheme.onPrimary, - ) - : Offstage(); + return Offstage( + offstage: !(widget.exchangeTradeViewModel.isSendable && + !(sendingState is TransactionCommitted)), + child: LoadingPrimaryButton( + key: ValueKey('exchange_trade_page_send_from_cake_button_key'), + isDisabled: trade.inputAddress == null || trade.inputAddress!.isEmpty, + isLoading: sendingState is IsExecutingState, + onPressed: () => widget.exchangeTradeViewModel.confirmSending(), + text: S.current.send_from_cake_wallet, + color: Theme.of(context).colorScheme.primary, + textColor: Theme.of(context).colorScheme.onPrimary, + ), + ); }, ), ], diff --git a/res/values/strings_de.arb b/res/values/strings_de.arb index c46872106..ca9e443f7 100644 --- a/res/values/strings_de.arb +++ b/res/values/strings_de.arb @@ -782,8 +782,8 @@ "send_error_minimum_value": "Der Mindestbetrag ist 0,01", "send_estimated_fee": "Geschätzte Gebühr:", "send_fee": "Gebühr:", - "send_from_cake_wallet": "Senden Sie aus Kuchenbrieftasche", - "send_from_external_wallet": "Senden Sie aus der Außenschreibe", + "send_from_cake_wallet": "Aus Cake Wallet senden", + "send_from_external_wallet": "Aus externer Wallet senden", "send_name": "Name", "send_new": "Neu", "send_payjoin": "Payjoin senden", @@ -1128,4 +1128,4 @@ "you_will_send": "Konvertieren von", "youCanGoBackToYourDapp": "Sie können jetzt zu Ihrem Dapp zurückkehren", "yy": "YY" -} \ No newline at end of file +} From 15f1b95dd2bf730a33d78e798ed57358290b4093 Mon Sep 17 00:00:00 2001 From: David Adegoke <64401859+Blazebrain@users.noreply.github.com> Date: Wed, 23 Jul 2025 20:13:40 +0100 Subject: [PATCH 06/16] fix: Confirm Send Button Blank in Accessible Navigation Mode (#2406) --- lib/src/screens/send/send_page.dart | 1 + .../bottom_sheet/confirm_sending_bottom_sheet_widget.dart | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/src/screens/send/send_page.dart b/lib/src/screens/send/send_page.dart index 032ed0a89..32951a7af 100644 --- a/lib/src/screens/send/send_page.dart +++ b/lib/src/screens/send/send_page.dart @@ -570,6 +570,7 @@ class SendPage extends BasePage { return ConfirmSendingBottomSheet( key: ValueKey('send_page_confirm_sending_bottom_sheet_key'), titleText: S.of(bottomSheetContext).confirm_transaction, + accessibleNavigationModeSlideActionButtonText: S.of(bottomSheetContext).send, currentTheme: currentTheme, footerType: FooterType.slideActionButton, walletType: sendViewModel.walletType, diff --git a/lib/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart b/lib/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart index c5c59d80e..47cacea1e 100644 --- a/lib/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart +++ b/lib/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart @@ -1,6 +1,5 @@ import 'package:cake_wallet/generated/i18n.dart'; import 'package:cake_wallet/src/widgets/rounded_icon_button.dart'; -import 'package:cake_wallet/src/widgets/standard_slide_button_widget.dart'; import 'package:cake_wallet/themes/core/material_base_theme.dart'; import 'package:cake_wallet/themes/utils/custom_theme_colors.dart'; import 'package:cake_wallet/utils/address_formatter.dart'; From dea9f3d8a1d9460fff23091380ed064cf73334b0 Mon Sep 17 00:00:00 2001 From: Konstantin Ullrich Date: Wed, 23 Jul 2025 22:48:09 +0200 Subject: [PATCH 07/16] feat: add NDEPS and DEPS ERC20 Tokens (#2403) --- assets/images/deps_icon.png | Bin 0 -> 31798 bytes assets/images/ndeps_icon.png | Bin 0 -> 30938 bytes cw_core/lib/crypto_currency.dart | 5 +++++ .../lib/default_ethereum_erc20_tokens.dart | 14 ++++++++++++++ 4 files changed, 19 insertions(+) create mode 100644 assets/images/deps_icon.png create mode 100644 assets/images/ndeps_icon.png diff --git a/assets/images/deps_icon.png b/assets/images/deps_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c281b43b9e452616ddeb5698ce5db7fdf57ec8d1 GIT binary patch literal 31798 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 literal 0 HcmV?d00001 diff --git a/assets/images/ndeps_icon.png b/assets/images/ndeps_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..be8287bc1f1f9209a4120af236361421ffc6ca00 GIT binary patch literal 30938 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

0m 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 with Serializable implemen CryptoCurrency.flip, CryptoCurrency.deuro, CryptoCurrency.usdtbsc, + CryptoCurrency.ndeps, + CryptoCurrency.deps, ]; static const havenCurrencies = [ @@ -235,6 +237,9 @@ class CryptoCurrency extends EnumerableItem with Serializable implemen static const flip = CryptoCurrency(title: 'FLIP', tag: 'ETH', fullName: 'Chainflip', raw: 97, name: 'flip', iconPath: 'assets/images/flip_icon.png', decimals: 18); static const deuro = CryptoCurrency(title: 'DEURO', tag: 'ETH', fullName: 'Decentralized Euro', raw: 98, name: 'deuro', iconPath: 'assets/images/deuro_icon.png', decimals: 18); static const usdtbsc = CryptoCurrency(title: 'USDT', tag: 'BSC', fullName: 'USDT Binance coin', raw: 99, name: 'usdtbsc', iconPath: 'assets/images/usdtbsc_icon.png', decimals: 18); + static const ndeps = CryptoCurrency(title: 'NDEPS', tag: 'ETH', fullName: 'Native Decentralized Euro Protocol Share', raw: 100, name: 'ndeps', iconPath: 'assets/images/ndeps_icon.png', decimals: 18); + static const deps = CryptoCurrency(title: 'DEPS', tag: 'ETH', fullName: 'Decentralized Euro Protocol Share', raw: 101, name: 'deps', iconPath: 'assets/images/deps_icon.png', decimals: 18); + static final Map _rawCurrencyMap = [...all, ...havenCurrencies].fold>({}, (acc, item) { diff --git a/cw_ethereum/lib/default_ethereum_erc20_tokens.dart b/cw_ethereum/lib/default_ethereum_erc20_tokens.dart index 630424967..dac309389 100644 --- a/cw_ethereum/lib/default_ethereum_erc20_tokens.dart +++ b/cw_ethereum/lib/default_ethereum_erc20_tokens.dart @@ -304,6 +304,20 @@ class DefaultEthereumErc20Tokens { decimal: 18, enabled: false, ), + Erc20Token( + name: "Native Decentralized Euro Protocol Share", + symbol: "NDEPS", + contractAddress: "0xc71104001A3CCDA1BEf1177d765831Bd1bfE8eE6", + decimal: 18, + enabled: false, + ), + Erc20Token( + name: "Decentralized Euro Protocol Share", + symbol: "DEPS", + contractAddress: "0x103747924e74708139a9400e4ab4bea79fffa380", + decimal: 18, + enabled: false, + ), ]; List get initialErc20Tokens => _defaultTokens.map((token) { From b24ebd8ba9bac485ff62865cb16b8a18d0bbfa09 Mon Sep 17 00:00:00 2001 From: rottenwheel <92872541+rottenwheel@users.noreply.github.com> Date: Wed, 23 Jul 2025 20:12:57 -0500 Subject: [PATCH 08/16] spanish: miscellaneous fixes (#2408) * fix: remove comma in OpenAlias title * spanish: some necessary, minor rewording for new background sync strings * en: fix unmetered network typo * en: fix 'Estabilishing Tor connection' typo start-up screen * readme: update Cake Wallet logo in banner * spanish: miscellaneous fixes --- .github/assets/Logo_CakeWallet.png | Bin 159969 -> 359551 bytes res/values/strings_es.arb | 22 +++++++++++----------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/assets/Logo_CakeWallet.png b/.github/assets/Logo_CakeWallet.png index 459a6b37cf2a93b7da5d11bfe23a0fd0fc31de46..9c9d52d1abba80b68d5d877c062e84f0acbb2846 100644 GIT binary patch literal 359551 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

$?|HM!E1>|>&fCEXD&rctMLRliTntCz3Tk5PU; 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 z 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 literal 159969 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%0AxcKM)XJNBVRNB^88&$)x{4-`k1P5Rgwn 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�s=xuIZ~)Oa(Zc#OpZAsH2`)So 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 F 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 CPow() diff --git a/res/values/strings_es.arb b/res/values/strings_es.arb index da3724ac3..c9b630479 100644 --- a/res/values/strings_es.arb +++ b/res/values/strings_es.arb @@ -458,23 +458,23 @@ "ledger_please_enable_bluetooth": "Habilita tu Bluetooth para detectar tu ledger", "legacy": "Legado", "light_theme": "Ligero", - "litecoin_enable_mweb_sync": "Habilitar el escaneo mweb", + "litecoin_enable_mweb_sync": "Habilitar el escaneo MWEB", "litecoin_mweb": "Mweb", - "litecoin_mweb_allow_coins": "Permitir monedas mweb", - "litecoin_mweb_always_scan": "Establecer mweb siempre escaneo", + "litecoin_mweb_allow_coins": "Permitir monedas MWEB", + "litecoin_mweb_always_scan": "Establecer escaneo permanente de MWEB", "litecoin_mweb_description": "Mweb es un nuevo protocolo que trae transacciones más rápidas, más baratas y más privadas a Litecoin", "litecoin_mweb_dismiss": "Despedir", "litecoin_mweb_display_card": "Mostrar tarjeta MWEB", "litecoin_mweb_enable": "Habilitar mweb", "litecoin_mweb_enable_later": "Puede elegir habilitar MWEB nuevamente en la configuración de visualización.", - "litecoin_mweb_logs": "Registros de mweb", - "litecoin_mweb_node": "Nodo mweb", + "litecoin_mweb_logs": "Registros de MWEB", + "litecoin_mweb_node": "Nodo MWEB", "litecoin_mweb_pegin": "Convertir", "litecoin_mweb_pegout": "Recuperar", - "litecoin_mweb_scanning": "Escaneo mweb", + "litecoin_mweb_scanning": "Escaneo MWEB", "litecoin_mweb_settings": "Configuración de MWEB", "litecoin_mweb_warning": "El uso de MWEB inicialmente descargará ~ 600 MB de datos, y puede tomar hasta 30 minutos según la velocidad de la red. Estos datos iniciales solo se descargarán una vez y estarán disponibles para todas las billeteras de Litecoin", - "litecoin_what_is_mweb": "¿Qué es mweb?", + "litecoin_what_is_mweb": "¿Qué es MWEB?", "live_fee_rates": "Tasas de tarifas en vivo a través de API", "load_more": "Carga más", "loading_your_wallet": "Cargando tu billetera", @@ -511,8 +511,8 @@ "moralis_nft_error": "Se produjo un error al alcanzar las NFT. Por favor, consulte su conexión a Internet y vuelva a intentarlo.", "more_options": "Más Opciones", "multiple_addresses_detected": "Múltiples direcciones detectadas", - "mweb_confirmed": "Confirmado mweb", - "mweb_unconfirmed": "Mweb no confirmado", + "mweb_confirmed": "MWEB confirmado", + "mweb_unconfirmed": "MWEB no confirmado", "name": "Nombre", "nano_current_rep": "Representante actual", "nano_gpt_thanks_message": "¡Gracias por usar nanogpt! ¡Recuerda regresar al navegador después de que se complete su transacción!", @@ -800,7 +800,7 @@ "sent": "Expedido", "service_health_disabled": "El boletín de salud del servicio está deshabilitado", "service_health_disabled_message": "Esta es la página del Boletín de Salud del Servicio, puede habilitar esta página en Configuración -> Privacidad", - "set_a_pin": "Poner un PIN", + "set_a_pin": "Establecer un PIN", "set_up_a_wallet": "Establecer una billetera", "settings": "Configuraciones", "settings_all": "TODOS", @@ -1127,4 +1127,4 @@ "you_will_send": "Convertir de", "youCanGoBackToYourDapp": "Puedes volver a tu dapp ahora", "yy": "YY" -} \ No newline at end of file +} From 93d3582e8e54c6425b81ac66ae14aef3c55b137b Mon Sep 17 00:00:00 2001 From: Konstantin Ullrich Date: Fri, 25 Jul 2025 14:07:17 +0200 Subject: [PATCH 09/16] Cw 1106 enable ledger for desktop through ble (#2410) * fix: remove redundant mobile check for hardware wallet support and add macOS BLE permission handling * fix: update connect_device_page platform check and add macOS Bluetooth entitlements * fix: Ledger Monero on Windows --- cw_monero/lib/ledger.dart | 3 ++- cw_monero/pubspec.yaml | 2 +- cw_wownero/pubspec.yaml | 2 +- cw_zano/pubspec.yaml | 2 +- lib/src/screens/connect_device/connect_device_page.dart | 6 +++--- lib/src/screens/restore/restore_options_page.dart | 4 ---- lib/view_model/hardware_wallet/ledger_view_model.dart | 7 ++----- macos/Runner/DebugProfileBase.entitlements | 2 ++ macos/Runner/ReleaseBase.entitlements | 2 ++ macos/Runner/RunnerBase.entitlements | 4 +++- 10 files changed, 17 insertions(+), 17 deletions(-) diff --git a/cw_monero/lib/ledger.dart b/cw_monero/lib/ledger.dart index 6e32d4d68..7a3c95a27 100644 --- a/cw_monero/lib/ledger.dart +++ b/cw_monero/lib/ledger.dart @@ -34,7 +34,8 @@ void enableLedgerExchange(LedgerConnection connection) { api.MoneroWallet.setDeviceReceivedData( result.cast(), response.length); - api.MoneroFree().free(result.cast()); + malloc.free(result); + // api.MoneroFree().free(result.cast()); } callable = NativeCallable.listener(callback); diff --git a/cw_monero/pubspec.yaml b/cw_monero/pubspec.yaml index a11e85b6c..98a4045ec 100644 --- a/cw_monero/pubspec.yaml +++ b/cw_monero/pubspec.yaml @@ -26,7 +26,7 @@ dependencies: monero: git: url: https://github.com/mrcyjanek/monero_c - ref: a27fbcb24d91143715ed930a05aaa4d853fba1f2 + ref: b576312e4d466569cd03482b61c597b39a9f4dc3 path: impls/monero.dart mutex: ^3.1.0 ledger_flutter_plus: ^1.4.1 diff --git a/cw_wownero/pubspec.yaml b/cw_wownero/pubspec.yaml index 4fda054b5..63f6251a3 100644 --- a/cw_wownero/pubspec.yaml +++ b/cw_wownero/pubspec.yaml @@ -24,7 +24,7 @@ dependencies: monero: git: url: https://github.com/mrcyjanek/monero_c - ref: a27fbcb24d91143715ed930a05aaa4d853fba1f2 # monero_c hash + ref: b576312e4d466569cd03482b61c597b39a9f4dc3 # monero_c hash path: impls/monero.dart mutex: ^3.1.0 diff --git a/cw_zano/pubspec.yaml b/cw_zano/pubspec.yaml index 529fe04eb..c57c72a24 100644 --- a/cw_zano/pubspec.yaml +++ b/cw_zano/pubspec.yaml @@ -25,7 +25,7 @@ dependencies: monero: git: url: https://github.com/mrcyjanek/monero_c - ref: a27fbcb24d91143715ed930a05aaa4d853fba1f2 # monero_c hash + ref: b576312e4d466569cd03482b61c597b39a9f4dc3 # monero_c hash path: impls/monero.dart dev_dependencies: flutter_test: diff --git a/lib/src/screens/connect_device/connect_device_page.dart b/lib/src/screens/connect_device/connect_device_page.dart index 9e332369e..ffa9e5470 100644 --- a/lib/src/screens/connect_device/connect_device_page.dart +++ b/lib/src/screens/connect_device/connect_device_page.dart @@ -197,9 +197,9 @@ class ConnectDevicePageBodyState extends State { Padding( padding: EdgeInsets.only(left: 20, right: 20, bottom: 20), child: Text( - Platform.isIOS - ? S.of(context).connect_your_hardware_wallet_ios - : S.of(context).connect_your_hardware_wallet, + Platform.isAndroid + ? S.of(context).connect_your_hardware_wallet + : S.of(context).connect_your_hardware_wallet_ios, style: Theme.of(context) .textTheme.titleMedium, textAlign: TextAlign.center, diff --git a/lib/src/screens/restore/restore_options_page.dart b/lib/src/screens/restore/restore_options_page.dart index ee8347f25..7f6e1f814 100644 --- a/lib/src/screens/restore/restore_options_page.dart +++ b/lib/src/screens/restore/restore_options_page.dart @@ -45,10 +45,6 @@ class _RestoreOptionsBodyState extends State<_RestoreOptionsBody> { bool isRestoring = false; bool get _doesSupportHardwareWallets { - if (!DeviceInfo.instance.isMobile) { - return false; - } - if (isMoneroOnly) { return DeviceConnectionType.supportedConnectionTypes(WalletType.monero, Platform.isIOS) .isNotEmpty; diff --git a/lib/view_model/hardware_wallet/ledger_view_model.dart b/lib/view_model/hardware_wallet/ledger_view_model.dart index 132a5deb9..1bc00fb02 100644 --- a/lib/view_model/hardware_wallet/ledger_view_model.dart +++ b/lib/view_model/hardware_wallet/ledger_view_model.dart @@ -9,7 +9,6 @@ import 'package:cake_wallet/monero/monero.dart'; import 'package:cake_wallet/polygon/polygon.dart'; import 'package:cake_wallet/routes.dart'; import 'package:cake_wallet/src/screens/connect_device/connect_device_page.dart'; -import 'package:cake_wallet/utils/device_info.dart'; import 'package:cake_wallet/wallet_type_utils.dart'; import 'package:cw_core/hardware/device_connection_type.dart'; import 'package:cw_core/utils/print_verbose.dart'; @@ -30,10 +29,6 @@ abstract class LedgerViewModelBase with Store { late final sdk.LedgerInterface ledgerPlusUSB; bool get _doesSupportHardwareWallets { - if (!DeviceInfo.instance.isMobile) { - return false; - } - if (isMoneroOnly) { return DeviceConnectionType.supportedConnectionTypes( WalletType.monero, Platform.isIOS) @@ -65,6 +60,8 @@ abstract class LedgerViewModelBase with Store { if (bleIsEnabled && !_bleIsInitialized) { ledgerPlusBLE = sdk.LedgerInterface.ble( onPermissionRequest: (_) async { + if (Platform.isMacOS) return true; + Map statuses = await [ Permission.bluetoothScan, Permission.bluetoothConnect, diff --git a/macos/Runner/DebugProfileBase.entitlements b/macos/Runner/DebugProfileBase.entitlements index c1b4345fe..d6b74b4aa 100644 --- a/macos/Runner/DebugProfileBase.entitlements +++ b/macos/Runner/DebugProfileBase.entitlements @@ -8,6 +8,8 @@ com.apple.security.network.server + com.apple.security.device.bluetooth + keychain-access-groups $(AppIdentifierPrefix)${BUNDLE_ID} diff --git a/macos/Runner/ReleaseBase.entitlements b/macos/Runner/ReleaseBase.entitlements index aef6ac342..c942c3aa9 100644 --- a/macos/Runner/ReleaseBase.entitlements +++ b/macos/Runner/ReleaseBase.entitlements @@ -4,6 +4,8 @@ com.apple.security.app-sandbox + com.apple.security.device.bluetooth + keychain-access-groups $(AppIdentifierPrefix)${BUNDLE_ID} diff --git a/macos/Runner/RunnerBase.entitlements b/macos/Runner/RunnerBase.entitlements index 22be818c6..5e6cc995d 100644 --- a/macos/Runner/RunnerBase.entitlements +++ b/macos/Runner/RunnerBase.entitlements @@ -6,9 +6,11 @@ com.apple.security.network.client + com.apple.security.device.bluetooth + keychain-access-groups $(AppIdentifierPrefix)${BUNDLE_ID} - \ No newline at end of file + From 8f4eed4d9b44bb9177d2ffaaec0141c3dde12330 Mon Sep 17 00:00:00 2001 From: Jorge Date: Fri, 25 Jul 2025 14:09:34 +0200 Subject: [PATCH 10/16] Fixes to Spanish translation (#2407) --- res/values/strings_es.arb | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/res/values/strings_es.arb b/res/values/strings_es.arb index c9b630479..9b74a0155 100644 --- a/res/values/strings_es.arb +++ b/res/values/strings_es.arb @@ -158,7 +158,7 @@ "choose_one": "Elige uno", "choose_relay": "Por favor elige un relay para usar", "choose_wallet_currency": "Por favor, elige la moneda de la billetera:", - "choose_wallet_group": "Elige el grupo de billetera", + "choose_wallet_group": "Elige el grupo de billeteras", "clear": "Limpiar", "clearnet_link": "enlace Clearnet", "close": "Cerca", @@ -186,7 +186,7 @@ "connect_hw_info_step_1": "Asegúrese de que su dispositivo esté encendido.", "connect_hw_info_step_2": "Encienda Bluetooth para ambos dispositivos y combínelos desde el teléfono o conecte sus dispositivos con un cable USB.", "connect_hw_info_step_3": "Desbloquee su dispositivo y navegue a la aplicación de cifrado deseada.", - "connect_hw_info_step_4": "Seleccione su dispositivo en la billetera de pastel y continúe con la configuración.", + "connect_hw_info_step_4": "Seleccione su dispositivo en Cake Wallet y continúe con la configuración.", "connect_yats": "Conectar Yats", "connect_your_hardware_wallet": "Conecta tu billetera de hardware con Bluetooth o USB", "connect_your_hardware_wallet_ios": "Conecta tu billetera de hardware con Bluetooth", @@ -355,7 +355,7 @@ "event": "Evento", "events": "Eventos", "exchange": "Intercambiar", - "exchange_incorrect_current_wallet_for_xmr": "Si desea intercambiar XMR desde su billetera de pastel Monero Balance, primero cambie a su billetera Monero.", + "exchange_incorrect_current_wallet_for_xmr": "Si desea intercambiar XMR desde su balance de Monero en Cake Wallet, primero cambie a su billetera de Monero.", "exchange_new_template": "Nueva plantilla", "exchange_provider_unsupported": "¡${providerName} ya no es compatible!", "exchange_result_confirm": "Al presionar confirmar, enviará ${fetchingLabel} ${from} desde su billetera llamada ${walletName} a la dirección que se muestra a continuación. O puede enviar desde su billetera externa a la siguiente dirección / código QR anterior.\n\nPresione confirmar para continuar o regrese para cambiar los montos.", @@ -753,8 +753,8 @@ "seed_language_russian": "Ruso", "seed_language_spanish": "Español", "seed_phrase_length": "Longitud de la frase inicial", - "seed_position_question_one": "¿Qué es el", - "seed_position_question_two": "¿Palabra de tu frase de semillas?", + "seed_position_question_one": "¿Cuál es la", + "seed_position_question_two": "palabra de tu frase de semillas?", "seed_reminder": "Anótalos en caso de que pierdas o borres tu aplicación", "seed_share": "Compartir semillas", "seed_title": "Semilla", @@ -782,7 +782,7 @@ "send_error_minimum_value": "El valor mínimo de la cantidad es 0.01", "send_estimated_fee": "Tarifa estimada:", "send_fee": "Cuota:", - "send_from_cake_wallet": "Enviar desde la billetera de pastel", + "send_from_cake_wallet": "Enviar desde Cake Wallet", "send_from_external_wallet": "Enviar desde la billetera externa", "send_name": "Nombre", "send_new": "Nuevo", @@ -835,7 +835,7 @@ "setup_your_debit_card": "Configura tu tarjeta de débito", "share": "Compartir", "share_address": "Compartir dirección", - "shared_seed_wallet_groups": "Grupos de billetera de semillas compartidas", + "shared_seed_wallet_groups": "Grupos de billeteras de semillas compartidas", "show": "Mostrar", "show_address_book_popup": "Mostrar la ventana emergente de la libreta de direcciones", "show_balance": "Pulsación larga para mostrar balance", @@ -934,7 +934,7 @@ "ton_extra_info": "No olvide especificar el ID de memo mientras envía la transacción TON para el intercambio", "tor_connection": "conexión tor", "tor_connection_timeout": "Tiempo de espera de conexión de Tor", - "tor_experimental": "Esta es una característica experimental, no todas las conexiones hechas con el enrutamiento de soporte para la billetera de pastel: algunas conexiones pueden usar ClearNet, para enrutar completamente el tráfico de aplicaciones Uso Tor con el modo VPN.", + "tor_experimental": "Esta es una característica experimental, no todas las conexiones hechas desde Cake Wallet soportan el enrutamiento por Tor. Algunas conexiones pueden usar el Internet normal. Para enrutar completamente el tráfico de la aplicación use Tor con el modo VPN.", "tor_only": "solo Tor", "total": "Total", "total_saving": "Ahorro Total", @@ -1054,15 +1054,15 @@ "voting_weight": "Peso de votación", "waitFewSecondForTxUpdate": "Espera unos segundos para que la transacción se refleje en el historial de transacciones.", "wallet": "Billetera", - "wallet_group": "Grupo de billetera", + "wallet_group": "Grupo de billeteras", "wallet_group_description_existing_seed": "Ha elegido usar una semilla existente para esta billetera. Puede verificar la semilla nuevamente si necesita confirmarla o escribirla.", - "wallet_group_description_four": "Para crear una billetera con una semilla completamente nueva.", - "wallet_group_description_one": "En la billetera de pastel, puedes crear un", + "wallet_group_description_four": "para crear una billetera con una semilla completamente nueva.", + "wallet_group_description_one": "En Cake Wallet, puedes crear un", "wallet_group_description_open_wallet": "De lo contrario, puede continuar abriendo la billetera", - "wallet_group_description_three": "Para ver las billeteras disponibles y/o la pantalla de grupos de billeteras. O elegir", - "wallet_group_description_two": "Seleccionando una billetera existente para compartir una semilla con. Cada grupo de billetera puede contener una sola billetera de cada tipo de moneda. \n\n puedes seleccionar", + "wallet_group_description_three": "para ver las billeteras disponibles y/o la pantalla de grupos de billeteras. O elegir", + "wallet_group_description_two": "seleccionando una billetera existente con la que compartir una semilla. Cada grupo de billeteras puede contener una sola billetera de cada tipo de moneda. \n\n Puedes seleccionar", "wallet_group_description_view_seed": "Siempre puedes ver esta semilla nuevamente debajo", - "wallet_group_empty_state_text_one": "Parece que no tienes ningún grupo de billetera compatible !\n\n toque", + "wallet_group_empty_state_text_one": "¡Parece que no tienes ningún grupo de billeteras compatible!\n\n toque", "wallet_group_empty_state_text_two": "a continuación para hacer uno nuevo.", "wallet_has_passphrase": "Esta billetera tiene una frase de pases", "wallet_keys": "Billetera semilla/claves", From 4b2af63fa5dc24432dbc86ff0d69c66e17ccbaf1 Mon Sep 17 00:00:00 2001 From: David Adegoke <64401859+Blazebrain@users.noreply.github.com> Date: Fri, 25 Jul 2025 14:42:59 +0100 Subject: [PATCH 11/16] CW-974: Add support for automatic node switching. (#2361) * feat: Add support for automatic node switching. This change: - Adds isTrustedNodeForSwitching property to Node class. - Adds UI Checkbox to mark a node as trusted for automatic switching in Node create or edit form. - Implements checkNodeHealth method in wallet classes to verify node connectivity. - Adds NodeSwitchingService for managing automatic node switching based on health checks. - Adds setting option for user to enable/disable automated node switching * fix(automatic-node-switch): Set node health check interval to 5 minutes in NodeSwitchingService * refactor: Update handler method * feat: Automatic Node Switching Improvements This change: - Moves enable automatic node switch to the Manage Nodes Page - Adds check to verify node health before attempting to sync in EVM, Sol and Tron Wallets. - Modifies trusted ndoes list for monero - Adds trigger for Node Health Check when app resumes from background * fix: Increase default request timeout for Tron and update health check interval for node switch * feat: Enhance Node health check functionality. This change adds additional checks for token balance in EVM, Solana and Tron Wallets in checkNodeHealth. * fix: Update health check interval to 30 seconds in NodeSwitchingService * Update bitcoin_electrum_server_list.yml * fix: Electru wallet not connecting to new node after switching * fix: Automated Node Switch not working on Decred Wallet * fix: Add more nodes for AutoSwitching This change: - Enables more nodes across wallet types for auto switching - Modifies CTA for checkbox - Renames flags to fit * fix: Add migration function for setting up default nodes for autoswitching * fix: Review and testing fixes * chore: Adjust balance and history fetch timer --- assets/banano_node_list.yml | 3 +- assets/bitcoin_cash_electrum_server_list.yml | 2 + assets/bitcoin_electrum_server_list.yml | 6 + assets/decred_node_list.yml | 4 +- assets/ethereum_server_list.yml | 2 + assets/litecoin_electrum_server_list.yml | 2 + assets/nano_node_list.yml | 3 + assets/nano_pow_node_list.yml | 3 + assets/node_list.yml | 3 + assets/polygon_node_list.yml | 4 +- assets/solana_node_list.yml | 5 +- assets/tron_node_list.yml | 4 +- assets/wownero_node_list.yml | 2 + assets/zano_node_list.yml | 4 +- cw_bitcoin/lib/electrum.dart | 28 ++-- cw_bitcoin/lib/electrum_wallet.dart | 20 +++ cw_core/lib/node.dart | 7 +- cw_core/lib/wallet_base.dart | 5 + cw_decred/lib/api/libdcrwallet.dart | 5 +- cw_decred/lib/wallet.dart | 4 +- cw_evm/lib/evm_chain_client.dart | 5 +- cw_evm/lib/evm_chain_wallet.dart | 42 +++++- cw_monero/lib/monero_wallet.dart | 18 +++ cw_nano/lib/nano_client.dart | 5 +- cw_nano/lib/nano_wallet.dart | 11 ++ cw_solana/lib/solana_client.dart | 56 ++++---- cw_solana/lib/solana_wallet.dart | 26 +++- cw_tron/lib/tron_client.dart | 10 +- cw_tron/lib/tron_wallet.dart | 23 ++++ cw_wownero/lib/wownero_wallet.dart | 18 +++ cw_zano/lib/zano_wallet.dart | 11 ++ lib/core/node_switching_service.dart | 126 ++++++++++++++++++ lib/di.dart | 7 + lib/entities/default_settings_migration.dart | 53 +++++++- lib/entities/preferences_key.dart | 1 + lib/main.dart | 5 +- lib/reactions/bootstrap.dart | 3 + lib/src/screens/nodes/widgets/node_form.dart | 20 +++ lib/src/screens/root/root.dart | 8 ++ .../screens/settings/manage_nodes_page.dart | 19 ++- .../screens/settings/other_settings_page.dart | 28 ++-- lib/store/settings_store.dart | 16 +++ .../node_create_or_edit_view_model.dart | 10 ++ .../node_list/node_list_view_model.dart | 7 + .../node_list/pow_node_list_view_model.dart | 7 + res/values/strings_ar.arb | 2 + res/values/strings_bg.arb | 2 + res/values/strings_cs.arb | 2 + res/values/strings_de.arb | 2 + res/values/strings_en.arb | 2 + res/values/strings_es.arb | 2 + res/values/strings_fr.arb | 2 + res/values/strings_ha.arb | 2 + res/values/strings_hi.arb | 2 + res/values/strings_hr.arb | 2 + res/values/strings_hy.arb | 2 + res/values/strings_id.arb | 2 + res/values/strings_it.arb | 2 + res/values/strings_ja.arb | 2 + res/values/strings_ko.arb | 2 + res/values/strings_my.arb | 2 + res/values/strings_nl.arb | 2 + res/values/strings_pl.arb | 2 + res/values/strings_pt.arb | 2 + res/values/strings_ru.arb | 2 + res/values/strings_th.arb | 2 + res/values/strings_tl.arb | 2 + res/values/strings_tr.arb | 2 + res/values/strings_uk.arb | 2 + res/values/strings_ur.arb | 2 + res/values/strings_vi.arb | 2 + res/values/strings_yo.arb | 2 + res/values/strings_zh.arb | 2 + 73 files changed, 639 insertions(+), 68 deletions(-) create mode 100644 lib/core/node_switching_service.dart diff --git a/assets/banano_node_list.yml b/assets/banano_node_list.yml index dc6852867..a7178963f 100644 --- a/assets/banano_node_list.yml +++ b/assets/banano_node_list.yml @@ -2,4 +2,5 @@ uri: kaliumapi.appditto.com path: /api useSSL: true - is_default: true \ No newline at end of file + is_default: true + isEnabledForAutoSwitching: true \ No newline at end of file diff --git a/assets/bitcoin_cash_electrum_server_list.yml b/assets/bitcoin_cash_electrum_server_list.yml index 948e5f3dc..770bdbc05 100644 --- a/assets/bitcoin_cash_electrum_server_list.yml +++ b/assets/bitcoin_cash_electrum_server_list.yml @@ -2,9 +2,11 @@ uri: bitcoincash.stackwallet.com:50002 is_default: true useSSL: true + isEnabledForAutoSwitching: true - uri: bch.aftrek.org:50002 useSSL: true + isEnabledForAutoSwitching: true - uri: node.minisatoshi.cash:50002 useSSL: true diff --git a/assets/bitcoin_electrum_server_list.yml b/assets/bitcoin_electrum_server_list.yml index 83da6a0b2..c3a92e948 100644 --- a/assets/bitcoin_electrum_server_list.yml +++ b/assets/bitcoin_electrum_server_list.yml @@ -2,8 +2,14 @@ uri: btc-electrum.cakewallet.com:50002 useSSL: true isDefault: true + isEnabledForAutoSwitching: true - uri: electrs.cakewallet.com:50001 - uri: fulcrum.sethforprivacy.com:50002 useSSL: true + isEnabledForAutoSwitching: true +- + uri: electrum.cakewallet.com:50002 + useSSL: true + isEnabledForAutoSwitching: true diff --git a/assets/decred_node_list.yml b/assets/decred_node_list.yml index cb171e701..9f5938e8c 100644 --- a/assets/decred_node_list.yml +++ b/assets/decred_node_list.yml @@ -1,6 +1,8 @@ - uri: default-spv-nodes is_default: true + isEnabledForAutoSwitching: true - uri: dcrd.sethforprivacy.com:9108 - useSSL: true \ No newline at end of file + useSSL: true + isEnabledForAutoSwitching: true \ No newline at end of file diff --git a/assets/ethereum_server_list.yml b/assets/ethereum_server_list.yml index ed425c3c7..2eae58bc5 100644 --- a/assets/ethereum_server_list.yml +++ b/assets/ethereum_server_list.yml @@ -2,6 +2,7 @@ uri: ethereum-rpc.publicnode.com useSSL: true isDefault: true + isEnabledForAutoSwitching: true - uri: eth.llamarpc.com - @@ -10,5 +11,6 @@ uri: eth-mainnet.public.blastapi.io - uri: eth.nownodes.io + isEnabledForAutoSwitching: true - uri: ethereum.publicnode.com \ No newline at end of file diff --git a/assets/litecoin_electrum_server_list.yml b/assets/litecoin_electrum_server_list.yml index 550b900e1..18b982aa1 100644 --- a/assets/litecoin_electrum_server_list.yml +++ b/assets/litecoin_electrum_server_list.yml @@ -2,9 +2,11 @@ uri: ltc-electrum.cakewallet.com:50002 useSSL: true isDefault: true + isEnabledForAutoSwitching: true - uri: litecoin.stackwallet.com:20063 useSSL: true + isEnabledForAutoSwitching: true - uri: electrum-ltc.bysh.me:50002 useSSL: true diff --git a/assets/nano_node_list.yml b/assets/nano_node_list.yml index cda931b5e..aa1d8e3c9 100644 --- a/assets/nano_node_list.yml +++ b/assets/nano_node_list.yml @@ -1,14 +1,17 @@ - uri: nano.nownodes.io useSSL: true + isEnabledForAutoSwitching: true - uri: rpc.nano.to is_default: true useSSL: true + isEnabledForAutoSwitching: true - uri: node.nautilus.io path: /api useSSL: true + isEnabledForAutoSwitching: true - uri: app.natrium.io path: /api diff --git a/assets/nano_pow_node_list.yml b/assets/nano_pow_node_list.yml index 3bbc7c3fb..ec1b10ff9 100644 --- a/assets/nano_pow_node_list.yml +++ b/assets/nano_pow_node_list.yml @@ -2,8 +2,11 @@ uri: rpc.nano.to useSSL: true is_default: true + isEnabledForAutoSwitching: true - uri: workers.perish.co + isEnabledForAutoSwitching: true - uri: worker.nanoriver.cc useSSL: true + isEnabledForAutoSwitching: true diff --git a/assets/node_list.yml b/assets/node_list.yml index 917dadfd9..851d69042 100644 --- a/assets/node_list.yml +++ b/assets/node_list.yml @@ -3,6 +3,7 @@ is_default: true trusted: true useSSL: true + isEnabledForAutoSwitching: true - uri: cakexmrl7bonq7ovjka5kuwuyd3f7qnkz6z6s6dmsy3uckwra7bvggyd.onion:18081 is_default: false @@ -10,6 +11,8 @@ uri: node.sethforprivacy.com:443 useSSL: true is_default: false + isEnabledForAutoSwitching: true - uri: nodes.hashvault.pro:18081 is_default: false + isEnabledForAutoSwitching: true diff --git a/assets/polygon_node_list.yml b/assets/polygon_node_list.yml index 3b2cdcdc3..74dc23ef4 100644 --- a/assets/polygon_node_list.yml +++ b/assets/polygon_node_list.yml @@ -4,7 +4,9 @@ uri: polygon-bor-rpc.publicnode.com useSSL: true isDefault: true + isEnabledForAutoSwitching: true - uri: polygon.llamarpc.com - - uri: matic.nownodes.io \ No newline at end of file + uri: matic.nownodes.io + isEnabledForAutoSwitching: true \ No newline at end of file diff --git a/assets/solana_node_list.yml b/assets/solana_node_list.yml index 3ba74d980..e1d7971c6 100644 --- a/assets/solana_node_list.yml +++ b/assets/solana_node_list.yml @@ -4,10 +4,13 @@ - uri: api.mainnet-beta.solana.com:443 useSSL: true + isEnabledForAutoSwitching: true - uri: solana-rpc.publicnode.com:443 useSSL: true + isEnabledForAutoSwitching: true - uri: solana-mainnet.core.chainstack.com useSSL: true - is_default: true \ No newline at end of file + is_default: true + isEnabledForAutoSwitching: true \ No newline at end of file diff --git a/assets/tron_node_list.yml b/assets/tron_node_list.yml index 1e34de712..595bba971 100644 --- a/assets/tron_node_list.yml +++ b/assets/tron_node_list.yml @@ -6,6 +6,8 @@ uri: api.trongrid.io is_default: true useSSL: true + isEnabledForAutoSwitching: true - uri: trx.nownodes.io - useSSL: true \ No newline at end of file + useSSL: true + isEnabledForAutoSwitching: true \ No newline at end of file diff --git a/assets/wownero_node_list.yml b/assets/wownero_node_list.yml index a4873b3e4..893f82984 100644 --- a/assets/wownero_node_list.yml +++ b/assets/wownero_node_list.yml @@ -2,10 +2,12 @@ uri: node3.monerodevs.org:34568 is_default: true useSSL: false + isEnabledForAutoSwitching: true - uri: node2.monerodevs.org:34568 is_default: false useSSL: false + isEnabledForAutoSwitching: true - uri: node.monerodevs.org:34568 is_default: false diff --git a/assets/zano_node_list.yml b/assets/zano_node_list.yml index f7b874fcb..26a1b797d 100644 --- a/assets/zano_node_list.yml +++ b/assets/zano_node_list.yml @@ -1,7 +1,9 @@ - uri: 37.27.100.59:10500 useSSL: false + isEnabledForAutoSwitching: true - uri: zano.cakewallet.com:11211 is_default: true - useSSL: false \ No newline at end of file + useSSL: false + isEnabledForAutoSwitching: true \ No newline at end of file diff --git a/cw_bitcoin/lib/electrum.dart b/cw_bitcoin/lib/electrum.dart index 2ddd30df6..4cd42a0fe 100644 --- a/cw_bitcoin/lib/electrum.dart +++ b/cw_bitcoin/lib/electrum.dart @@ -203,15 +203,25 @@ class ElectrumClient { return []; }); - Future> getBalance(String scriptHash) => - call(method: 'blockchain.scripthash.get_balance', params: [scriptHash]) - .then((dynamic result) { - if (result is Map) { - return result; - } - - return {}; - }); + Future> getBalance(String scriptHash, {bool throwOnError = false}) async { + try { + final result = await call(method: 'blockchain.scripthash.get_balance', params: [scriptHash]); + if (result is Map) { + return result; + } + + if (throwOnError) { + throw Exception('Invalid response format for getBalance'); + } + + return {}; + } catch (e) { + if (throwOnError) { + rethrow; + } + return {}; + } + } Future>> getHistory(String scriptHash) => call(method: 'blockchain.scripthash.get_history', params: [scriptHash]) diff --git a/cw_bitcoin/lib/electrum_wallet.dart b/cw_bitcoin/lib/electrum_wallet.dart index bf20cac80..28d0e323a 100644 --- a/cw_bitcoin/lib/electrum_wallet.dart +++ b/cw_bitcoin/lib/electrum_wallet.dart @@ -2300,6 +2300,26 @@ abstract class ElectrumWalletBase await save(); } + @override + Future checkNodeHealth() async { + try { + final addresses = walletAddresses.allAddresses + .where((address) => RegexUtils.addressTypeFromStr(address.address, network) is! MwebAddress) + .toList(); + + if (addresses.isEmpty) { + return false; + } + + final firstAddress = addresses.first; + final sh = firstAddress.getScriptHash(network); + await electrumClient.getBalance(sh, throwOnError: true); + return true; + } catch (e) { + return false; + } + } + @override void setExceptionHandler(void Function(FlutterErrorDetails) onError) => _onError = onError; diff --git a/cw_core/lib/node.dart b/cw_core/lib/node.dart index fdffb844b..ff94001f2 100644 --- a/cw_core/lib/node.dart +++ b/cw_core/lib/node.dart @@ -26,6 +26,7 @@ class Node extends HiveObject with Keyable { this.trusted = false, this.socksProxyAddress, this.path = '', + this.isEnabledForAutoSwitching = false, String? uri, WalletType? type, }) { @@ -44,7 +45,8 @@ class Node extends HiveObject with Keyable { password = map['password'] as String?, useSSL = map['useSSL'] as bool?, trusted = map['trusted'] as bool? ?? false, - socksProxyAddress = map['socksProxyPort'] as String?; + socksProxyAddress = map['socksProxyPort'] as String?, + isEnabledForAutoSwitching = map['isEnabledForAutoSwitching'] as bool? ?? false; static const typeId = NODE_TYPE_ID; static const boxName = 'Nodes'; @@ -82,6 +84,9 @@ class Node extends HiveObject with Keyable { @HiveField(10) bool? supportsMweb; + @HiveField(11, defaultValue: false) + bool isEnabledForAutoSwitching; + bool get isSSL => useSSL ?? false; bool get useSocksProxy => socksProxyAddress == null ? false : socksProxyAddress!.isNotEmpty; diff --git a/cw_core/lib/wallet_base.dart b/cw_core/lib/wallet_base.dart index 0ca7ff2b1..0d7650e15 100644 --- a/cw_core/lib/wallet_base.dart +++ b/cw_core/lib/wallet_base.dart @@ -112,4 +112,9 @@ abstract class WalletBase true; + + /// This is used to check if the current node is healthy by making a lightweight RPC call + /// Each wallet implementation should override this to make a single, efficient call + /// Returns true if the node is healthy, false otherwise + Future checkNodeHealth(); } diff --git a/cw_decred/lib/api/libdcrwallet.dart b/cw_decred/lib/api/libdcrwallet.dart index b5e5bbe73..a6d1e1017 100644 --- a/cw_decred/lib/api/libdcrwallet.dart +++ b/cw_decred/lib/api/libdcrwallet.dart @@ -454,7 +454,7 @@ class Libwallet { return res.payload; } - Future balance(String walletName) async { + Future balance(String walletName, {bool throwOnError = false}) async { if (_closed) throw StateError('Closed'); final completer = Completer.sync(); final id = _idCounter++; @@ -468,6 +468,9 @@ class Libwallet { try { return jsonDecode(res.payload); } catch (_) { + if (throwOnError) { + rethrow; + } return {}; } } diff --git a/cw_decred/lib/wallet.dart b/cw_decred/lib/wallet.dart index 97aee775d..fb177f4ca 100644 --- a/cw_decred/lib/wallet.dart +++ b/cw_decred/lib/wallet.dart @@ -26,7 +26,6 @@ import 'package:cw_core/wallet_info.dart'; import 'package:cw_core/wallet_base.dart'; import 'package:cw_core/transaction_priority.dart'; import 'package:cw_core/pending_transaction.dart'; -import 'package:cw_core/pathForWallet.dart'; import 'package:cw_core/sync_status.dart'; import 'package:cw_core/node.dart'; import 'package:cw_core/unspent_coins_info.dart'; @@ -594,6 +593,9 @@ abstract class DecredWalletBase ); } + @override + Future checkNodeHealth() async => await checkSync(); + @override void setExceptionHandler(void Function(FlutterErrorDetails) onError) => onError; diff --git a/cw_evm/lib/evm_chain_client.dart b/cw_evm/lib/evm_chain_client.dart index b7377c54e..29a88dcce 100644 --- a/cw_evm/lib/evm_chain_client.dart +++ b/cw_evm/lib/evm_chain_client.dart @@ -65,10 +65,13 @@ abstract class EVMChainClient { // }); } - Future getBalance(EthereumAddress address) async { + Future getBalance(EthereumAddress address, {bool throwOnError = false}) async { try { return await _client!.getBalance(address); } catch (_) { + if (throwOnError) { + rethrow; + } return EtherAmount.zero(); } } diff --git a/cw_evm/lib/evm_chain_wallet.dart b/cw_evm/lib/evm_chain_wallet.dart index fe97e4ea8..9f998f714 100644 --- a/cw_evm/lib/evm_chain_wallet.dart +++ b/cw_evm/lib/evm_chain_wallet.dart @@ -164,6 +164,36 @@ abstract class EVMChainWalletBase EncryptionFileUtils encryptionFileUtils, ); + @override + Future checkNodeHealth() async { + try { + // Check native balance + await _client.getBalance(_evmChainPrivateKey.address, throwOnError: true); + + // Check USDC token balance + String usdcContractAddress; + if (_client.chainId == 1) { + // Ethereum mainnet + usdcContractAddress = "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"; + } else if (_client.chainId == 137) { + // Polygon mainnet + usdcContractAddress = "0x2791bca1f2de4661ed88a30c99a7a9449aa84174"; + } else { + // If we are not on Ethereum or Polygon, we skip ERC20 token check + return true; + } + + await _client.fetchERC20Balances( + _evmChainPrivateKey.address, + usdcContractAddress, + ); + + return true; + } catch (e) { + return false; + } + } + //! Common Methods across child classes String idFor(String name, WalletType type) => '${walletTypeToString(type).toLowerCase()}_$name'; @@ -379,15 +409,21 @@ abstract class EVMChainWalletBase Future startSync() async { try { syncStatus = AttemptingSyncStatus(); + + // Verify node health before attempting to sync + final isHealthy = await checkNodeHealth(); + if (!isHealthy) { + syncStatus = FailedSyncStatus(); + return; + } + await _updateBalance(); await _updateTransactions(); - await _updateEstimatedGasFeeParams(); _updateFeesTimer ??= Timer.periodic(const Duration(seconds: 30), (timer) async { await _updateEstimatedGasFeeParams(); }); - syncStatus = SyncedSyncStatus(); } catch (e) { syncStatus = FailedSyncStatus(); @@ -825,7 +861,7 @@ abstract class EVMChainWalletBase _transactionsUpdateTimer!.cancel(); } - _transactionsUpdateTimer = Timer.periodic(const Duration(seconds: 15), (_) { + _transactionsUpdateTimer = Timer.periodic(const Duration(seconds: 20), (_) { _updateTransactions(); _updateBalance(); }); diff --git a/cw_monero/lib/monero_wallet.dart b/cw_monero/lib/monero_wallet.dart index 72d02c506..029b642d5 100644 --- a/cw_monero/lib/monero_wallet.dart +++ b/cw_monero/lib/monero_wallet.dart @@ -184,6 +184,24 @@ abstract class MoneroWalletBase extends WalletBase? updateBalance() => null; + @override + Future checkNodeHealth() async { + try { + // Check if the wallet is currently connected to the daemon + final isConnected = monero_wallet.isConnectedSync(); + + if (!isConnected) { + return false; // It's not connected to daemon + } + + // Check to get current node height to ensure daemon is responsive + final nodeHeight = await monero_wallet.getNodeHeight(); + return nodeHeight > 0; + } catch (e) { + return false; + } + } + @override Future close({bool shouldCleanup = false}) async { if (isHardwareWallet) { diff --git a/cw_nano/lib/nano_client.dart b/cw_nano/lib/nano_client.dart index c852a8c0d..812291f93 100644 --- a/cw_nano/lib/nano_client.dart +++ b/cw_nano/lib/nano_client.dart @@ -92,7 +92,7 @@ class NanoClient { return NanoBalance(currentBalance: cur, receivableBalance: rec); } - Future getAccountInfo(String address) async { + Future getAccountInfo(String address, {bool throwOnError = false}) async { try { final response = await ProxyWrapper().post( clearnetUri: _node!.uri, @@ -110,6 +110,9 @@ class NanoClient { return AccountInfoResponse.fromJson(data); } catch (e) { printV("error while getting account info $e"); + if (throwOnError) { + rethrow; + } return null; } } diff --git a/cw_nano/lib/nano_wallet.dart b/cw_nano/lib/nano_wallet.dart index eb2d2581c..a07612544 100644 --- a/cw_nano/lib/nano_wallet.dart +++ b/cw_nano/lib/nano_wallet.dart @@ -518,8 +518,19 @@ abstract class NanoWalletBase return _client.getN2Reps(); } + @override Future? updateBalance() async => await _updateBalance(); + @override + Future checkNodeHealth() async { + try { + await _client.getAccountInfo(_publicAddress!, throwOnError: true); + return true; + } catch (_) { + return false; + } + } + @override Future renameWalletFiles(String newWalletName) async { final currentWalletPath = await pathForWallet(name: walletInfo.name, type: type); diff --git a/cw_solana/lib/solana_client.dart b/cw_solana/lib/solana_client.dart index d57da5af0..f91f66223 100644 --- a/cw_solana/lib/solana_client.dart +++ b/cw_solana/lib/solana_client.dart @@ -51,7 +51,7 @@ class SolanaWalletClient { } } - Future getBalance(String walletAddress) async { + Future getBalance(String walletAddress, {bool throwOnError = false}) async { try { final balance = await _provider!.requestWithContext( SolanaRPCGetBalance( @@ -65,6 +65,9 @@ class SolanaWalletClient { return solBalance; } catch (_) { + if (throwOnError) { + rethrow; + } return 0.0; } } @@ -88,31 +91,38 @@ class SolanaWalletClient { } Future getSplTokenBalance( - String mintAddress, String walletAddress) async { - // Fetch the token accounts (a token can have multiple accounts for various uses) - final tokenAccounts = await getSPLTokenAccounts(mintAddress, walletAddress); + String mintAddress, String walletAddress, {bool throwOnError = false}) async { + try { + // Fetch the token accounts (a token can have multiple accounts for various uses) + final tokenAccounts = await getSPLTokenAccounts(mintAddress, walletAddress); - // Handle scenario where there is no token account - if (tokenAccounts == null || tokenAccounts.isEmpty) { + // Handle scenario where there is no token account + if (tokenAccounts == null || tokenAccounts.isEmpty) { + return null; + } + + // Sum the balances of all accounts with the specified mint address + double totalBalance = 0.0; + + for (var tokenAccount in tokenAccounts) { + final tokenAmountResult = await _provider!.request( + SolanaRPCGetTokenAccountBalance(account: tokenAccount.pubkey), + ); + + final balance = tokenAmountResult.uiAmountString; + + final balanceAsDouble = double.tryParse(balance ?? '0.0') ?? 0.0; + + totalBalance += balanceAsDouble; + } + + return SolanaBalance(totalBalance); + } catch (_) { + if (throwOnError) { + rethrow; + } return null; } - - // Sum the balances of all accounts with the specified mint address - double totalBalance = 0.0; - - for (var tokenAccount in tokenAccounts) { - final tokenAmountResult = await _provider!.request( - SolanaRPCGetTokenAccountBalance(account: tokenAccount.pubkey), - ); - - final balance = tokenAmountResult.uiAmountString; - - final balanceAsDouble = double.tryParse(balance ?? '0.0') ?? 0.0; - - totalBalance += balanceAsDouble; - } - - return SolanaBalance(totalBalance); } Future getFeeForMessage(String message, Commitment commitment) async { diff --git a/cw_solana/lib/solana_wallet.dart b/cw_solana/lib/solana_wallet.dart index 455f510ac..87acaf4d5 100644 --- a/cw_solana/lib/solana_wallet.dart +++ b/cw_solana/lib/solana_wallet.dart @@ -377,6 +377,13 @@ abstract class SolanaWalletBase try { syncStatus = AttemptingSyncStatus(); + // Verify node health before attempting to sync + final isHealthy = await checkNodeHealth(); + if (!isHealthy) { + syncStatus = FailedSyncStatus(); + return; + } + await Future.wait([ _updateBalance(), _updateNativeSOLTransactions(), @@ -477,6 +484,22 @@ abstract class SolanaWalletBase @override Future? updateBalance() async => await _updateBalance(); + @override + Future checkNodeHealth() async { + try { + // Check native balance + await _client.getBalance(solanaAddress, throwOnError: true); + + // Check USDC token balance + const usdcMintAddress = "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"; + await _client.getSplTokenBalance(usdcMintAddress, solanaAddress, throwOnError: true); + + return true; + } catch (e) { + return false; + } + } + List get splTokenCurrencies => splTokensBox.values.toList(); void addInitialTokens() { @@ -554,6 +577,7 @@ abstract class SolanaWalletBase _updateBalance(); _updateNativeSOLTransactions(); _updateSPLTokenTransactions(); + _getEstimatedFees(); }); } @@ -564,7 +588,7 @@ abstract class SolanaWalletBase // Sign the message bytes with the wallet's private key final signature = (_solanaPrivateKey.sign(messageBytes)); - + return Base58Encoder.encode(signature); } diff --git a/cw_tron/lib/tron_client.dart b/cw_tron/lib/tron_client.dart index f73e5a306..c7c530d53 100644 --- a/cw_tron/lib/tron_client.dart +++ b/cw_tron/lib/tron_client.dart @@ -102,12 +102,15 @@ class TronClient { } } - Future getBalance(TronAddress address) async { + Future getBalance(TronAddress address, {bool throwOnError = false}) async { try { final accountDetails = await _provider!.request(TronRequestGetAccount(address: address)); return accountDetails?.balance ?? BigInt.zero; } catch (_) { + if (throwOnError) { + rethrow; + } return BigInt.zero; } } @@ -476,7 +479,7 @@ class TronClient { } } - Future fetchTronTokenBalances(String userAddress, String contractAddress) async { + Future fetchTronTokenBalances(String userAddress, String contractAddress, {bool throwOnError = false}) async { try { final ownerAddress = TronAddress(userAddress); @@ -499,6 +502,9 @@ class TronClient { return TronBalance(outputResult); } catch (_) { + if (throwOnError) { + rethrow; + } return TronBalance(BigInt.zero); } } diff --git a/cw_tron/lib/tron_wallet.dart b/cw_tron/lib/tron_wallet.dart index eb80696ce..ce1b22d0e 100644 --- a/cw_tron/lib/tron_wallet.dart +++ b/cw_tron/lib/tron_wallet.dart @@ -276,6 +276,13 @@ abstract class TronWalletBase Future startSync() async { try { syncStatus = AttemptingSyncStatus(); + + // Verify node health before attempting to sync + final isHealthy = await checkNodeHealth(); + if (!isHealthy) { + syncStatus = FailedSyncStatus(); + return; + } await _updateBalance(); await fetchTransactions(); fetchTrc20ExcludedTransactions(); @@ -505,6 +512,22 @@ abstract class TronWalletBase @override Future? updateBalance() async => await _updateBalance(); + @override + Future checkNodeHealth() async { + try { + // Check native balance + await _client.getBalance(_tronPublicKey.toAddress(), throwOnError: true); + + // Check USDT token balance + const usdtContractAddress = "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"; + await _client.fetchTronTokenBalances(_tronAddress, usdtContractAddress, throwOnError: true); + + return true; + } catch (e) { + return false; + } + } + List get tronTokenCurrencies => tronTokensBox.values.toList(); Future addTronToken(TronToken token) async { diff --git a/cw_wownero/lib/wownero_wallet.dart b/cw_wownero/lib/wownero_wallet.dart index 2befaa20d..a90d32ee3 100644 --- a/cw_wownero/lib/wownero_wallet.dart +++ b/cw_wownero/lib/wownero_wallet.dart @@ -174,6 +174,24 @@ abstract class WowneroWalletBase @override Future? updateBalance() => null; + @override + Future checkNodeHealth() async { + try { + // Check if the wallet is currently connected to the daemon + final isConnected = wownero_wallet.isConnectedSync(); + + if (!isConnected) { + return false; // It's not connected to daemon + } + + // Check to get current node height to ensure daemon is responsive + final nodeHeight = await wownero_wallet.getNodeHeight(); + return nodeHeight > 0; + } catch (e) { + return false; + } + } + @override Future close({bool shouldCleanup = false}) async { _listener?.stop(); diff --git a/cw_zano/lib/zano_wallet.dart b/cw_zano/lib/zano_wallet.dart index 7f68b71e6..c5534f6c8 100644 --- a/cw_zano/lib/zano_wallet.dart +++ b/cw_zano/lib/zano_wallet.dart @@ -411,6 +411,17 @@ abstract class ZanoWalletBase @override Future? updateBalance() => null; + @override + Future checkNodeHealth() async { + try { + final status = await getWalletStatus(); + + return status.isDaemonConnected; + } catch (_) { + return false; + } + } + Future updateTransactions() async { try { if (_isTransactionUpdating) { diff --git a/lib/core/node_switching_service.dart b/lib/core/node_switching_service.dart new file mode 100644 index 000000000..ae5d21762 --- /dev/null +++ b/lib/core/node_switching_service.dart @@ -0,0 +1,126 @@ +import 'dart:async'; +import 'package:cw_core/node.dart'; +import 'package:cw_core/wallet_type.dart'; +import 'package:cake_wallet/store/app_store.dart'; +import 'package:cake_wallet/store/settings_store.dart'; +import 'package:cw_core/utils/print_verbose.dart'; +import 'package:hive/hive.dart'; + +class NodeSwitchingService { + NodeSwitchingService({ + required this.appStore, + required this.settingsStore, + required this.nodeSource, + }); + + static const int _healthCheckIntervalSeconds = 30; + + Timer? _healthCheckTimer; + + bool _isSwitching = false; + bool get isSwitching => _isSwitching; + + final AppStore appStore; + final SettingsStore settingsStore; + final Box nodeSource; + + // Track used nodes to cycle through all trusted nodes + final Map> _usedNodeKeys = {}; + + void startHealthCheckTimer() { + _healthCheckTimer?.cancel(); + _healthCheckTimer = Timer.periodic( + Duration(seconds: _healthCheckIntervalSeconds), + (_) => performHealthCheck(), + ); + + performHealthCheck(); + } + + void stopHealthCheckTimer() { + _healthCheckTimer?.cancel(); + _healthCheckTimer = null; + } + + Future performHealthCheck() async { + if (appStore.wallet == null) return; + + if (!settingsStore.enableAutomaticNodeSwitching) return; + + if (_isSwitching) return; + + try { + final isHealthy = await appStore.wallet!.checkNodeHealth(); + + if (!isHealthy) { + await _switchToNextTrustedNode(); + } + } catch (e) { + printV('Error during health check: $e'); + } + } + + /// Switch to the next available trusted node + Future _switchToNextTrustedNode() async { + _isSwitching = true; + + try { + final walletType = appStore.wallet!.type; + final currentNode = settingsStore.getCurrentNode(walletType); + + // Get all trusted nodes for this wallet type + final trustedNodes = nodeSource.values + .where((node) => node.type == walletType && node.isEnabledForAutoSwitching) + .toList(); + + if (trustedNodes.isEmpty) { + printV('No trusted nodes available for switching'); + return; + } + + // Initialize used nodes list for this wallet type if it does not exist + _usedNodeKeys.putIfAbsent(walletType, () => []); + + // Add current node to used list if not already there + if (!_usedNodeKeys[walletType]!.contains(currentNode.key)) { + _usedNodeKeys[walletType]!.add(currentNode.key); + } + + // Get next unused trusted node from the list + Node? nextNode; + for (final node in trustedNodes) { + if (!_usedNodeKeys[walletType]!.contains(node.key)) { + nextNode = node; + break; + } + } + + // If all trusted nodes have been used, reset the list and start over + if (nextNode == null) { + printV('All trusted nodes have been tried, resetting and starting over'); + _usedNodeKeys[walletType]!.clear(); + nextNode = trustedNodes.first; + } + + // Add the next node to used list + _usedNodeKeys[walletType]!.add(nextNode.key); + + printV('Switching from ${currentNode.uriRaw} to ${nextNode.uriRaw}'); + printV('Used nodes for ${walletType}: ${_usedNodeKeys[walletType]}'); + + // Update the current node in settings + settingsStore.nodes[walletType] = nextNode; + + // Connect the wallet to the new node + await appStore.wallet!.connectToNode(node: nextNode); + + await appStore.wallet!.startSync(); + + printV('Successfully switched to node: ${nextNode.uriRaw}'); + } catch (e) { + printV('Error switching to next trusted node: $e'); + } finally { + _isSwitching = false; + } + } +} diff --git a/lib/di.dart b/lib/di.dart index 6440285e6..32f7cab0e 100644 --- a/lib/di.dart +++ b/lib/di.dart @@ -23,6 +23,7 @@ import 'package:cake_wallet/core/totp_request_details.dart'; import 'package:cake_wallet/core/wallet_creation_service.dart'; import 'package:cake_wallet/core/wallet_loading_service.dart'; import 'package:cake_wallet/core/yat_service.dart'; +import 'package:cake_wallet/core/node_switching_service.dart'; import 'package:cake_wallet/entities/biometric_auth.dart'; import 'package:cake_wallet/entities/contact.dart'; import 'package:cake_wallet/entities/contact_record.dart'; @@ -1516,5 +1517,11 @@ Future setup({ getIt.registerFactory(() => DEuroSavingsPage(getIt())); + getIt.registerLazySingleton(() => NodeSwitchingService( + appStore: getIt.get(), + settingsStore: getIt.get(), + nodeSource: _nodeSource, + )); + _isSetupFinished = true; } diff --git a/lib/entities/default_settings_migration.dart b/lib/entities/default_settings_migration.dart index a5dfec97b..35634c391 100644 --- a/lib/entities/default_settings_migration.dart +++ b/lib/entities/default_settings_migration.dart @@ -510,7 +510,10 @@ Future defaultSettingsMigration( providerName: "SwapTrade", enabled: true, ); - break; + break; + case 50: + migrateExistingNodesToUseAutoSwitching(nodes: nodes, powNodes: powNodes); + break; default: break; } @@ -1088,7 +1091,7 @@ Future checkCurrentNodes( if (currentBitcoinElectrumServer == null) { final cakeWalletElectrum = - Node(uri: cakeWalletBitcoinElectrumUri, type: WalletType.bitcoin, useSSL: false); + Node(uri: cakeWalletBitcoinElectrumUri, type: WalletType.bitcoin, useSSL: false, isEnabledForAutoSwitching: true); await nodeSource.add(cakeWalletElectrum); final cakeWalletElectrumTestnet = Node(uri: publicBitcoinTestnetElectrumUri, type: WalletType.bitcoin, useSSL: false); @@ -1188,7 +1191,7 @@ Future resetBitcoinElectrumServer( if (cakeWalletNode == null) { cakeWalletNode = - Node(uri: cakeWalletBitcoinElectrumUri, type: WalletType.bitcoin, useSSL: false); + Node(uri: cakeWalletBitcoinElectrumUri, type: WalletType.bitcoin, useSSL: false, isEnabledForAutoSwitching: true); // final cakeWalletElectrumTestnet = // Node(uri: publicBitcoinTestnetElectrumUri, type: WalletType.bitcoin, useSSL: false); // await nodeSource.add(cakeWalletElectrumTestnet); @@ -1272,3 +1275,47 @@ Future removeMoneroWorld( ); } } + +Future migrateExistingNodesToUseAutoSwitching( + {required Box nodes, required Box powNodes}) async { + final listOfDefaultNodesWithAutoSwitching = [ + 'bitcoincash.stackwallet.com:50002', + 'bch.aftrek.org:50002', + 'btc-electrum.cakewallet.com:50002', + 'fulcrum.sethforprivacy.com:50002', + 'default-spv-nodes', + 'dcrd.sethforprivacy.com:9108', + 'ethereum-rpc.publicnode.com', + 'eth.nownodes.io', + 'ltc-electrum.cakewallet.com:50002', + 'litecoin.stackwallet.com:20063', + 'nano.nownodes.io', + 'rpc.nano.to', + 'node.nautilus.io', + 'rpc.nano.to', + 'workers.perish.co', + 'worker.nanoriver.cc', + 'xmr-node.cakewallet.com:18081', + 'node.sethforprivacy.com:443', + 'nodes.hashvault.pro:18081', + 'polygon-bor-rpc.publicnode.com', + 'matic.nownodes.io', + 'api.mainnet-beta.solana.com:443', + 'solana-rpc.publicnode.com:443', + 'solana-mainnet.core.chainstack.com', + 'api.trongrid.io', + 'trx.nownodes.io', + 'node3.monerodevs.org:34568', + 'node2.monerodevs.org:34568', + '37.27.100.59:10500', + 'zano.cakewallet.com:11211', + 'electrum.cakewallet.com:50002', + ]; + for (var node in [...nodes.values.toList(), ...powNodes.values.toList()]) { + if (listOfDefaultNodesWithAutoSwitching.contains(node.uriRaw)) { + node.isEnabledForAutoSwitching = true; + await node.save(); + } + } +} + diff --git a/lib/entities/preferences_key.dart b/lib/entities/preferences_key.dart index aca8f79b4..d0e6a56fc 100644 --- a/lib/entities/preferences_key.dart +++ b/lib/entities/preferences_key.dart @@ -112,4 +112,5 @@ class PreferencesKey { '${PreferencesKey.walletConnectPairingTopicsList}_${publicKey}'; static String backgroundSyncLastTrigger(String walletId) => 'background_sync_last_trigger_${walletId}'; static const backgroundSyncNotificationsEnabled = 'background_sync_notifications_enabled'; + static const enableAutomaticNodeSwitching = 'enable_automatic_node_switching'; } diff --git a/lib/main.dart b/lib/main.dart index 67110ee0c..0b9f1b323 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -6,6 +6,7 @@ import 'package:cake_wallet/app_scroll_behavior.dart'; import 'package:cake_wallet/buy/order.dart'; import 'package:cake_wallet/core/auth_service.dart'; import 'package:cake_wallet/core/background_sync.dart'; +import 'package:cake_wallet/core/node_switching_service.dart'; import 'package:cake_wallet/di.dart'; import 'package:cake_wallet/entities/contact.dart'; import 'package:cake_wallet/entities/default_settings_migration.dart'; @@ -249,7 +250,7 @@ Future initializeAppConfigs({bool loadWallet = true}) async { payjoinSessionSource: payjoinSessionSource, anonpayInvoiceInfo: anonpayInvoiceInfo, havenSeedStore: havenSeedStore, - initialMigrationVersion: 49, + initialMigrationVersion: 50, ); } @@ -327,6 +328,7 @@ class AppState extends State with SingleTickerProviderStateMixin { final authService = getIt.get(); final linkViewModel = getIt.get(); final tradeMonitor = getIt.get(); + final nodeSwitchingService = getIt.get(); final settingsStore = appStore.settingsStore; final statusBarColor = Colors.transparent; final authenticationStore = getIt.get(); @@ -351,6 +353,7 @@ class AppState extends State with SingleTickerProviderStateMixin { authService: authService, linkViewModel: linkViewModel, tradeMonitor: tradeMonitor, + nodeSwitchingService: nodeSwitchingService, child: ThemeProvider( themeStore: appStore.themeStore, materialAppBuilder: (context, theme, darkTheme, themeMode) => MaterialApp( diff --git a/lib/reactions/bootstrap.dart b/lib/reactions/bootstrap.dart index 6fb4c5ab2..5f16c5b54 100644 --- a/lib/reactions/bootstrap.dart +++ b/lib/reactions/bootstrap.dart @@ -14,6 +14,7 @@ import 'package:cake_wallet/store/app_store.dart'; import 'package:cake_wallet/store/settings_store.dart'; import 'package:cake_wallet/store/authentication_store.dart'; import 'package:cake_wallet/store/dashboard/fiat_conversion_store.dart'; +import 'package:cake_wallet/core/node_switching_service.dart'; Future bootstrapOffline() async { final authenticationStore = getIt.get(); @@ -40,4 +41,6 @@ void bootstrapOnline(GlobalKey navigatorKey, {required bool load startCurrentFiatApiModeChangeReaction(appStore, settingsStore, fiatConversionStore); startOnCurrentNodeChangeReaction(appStore); startFiatRateUpdate(appStore, settingsStore, fiatConversionStore); + + getIt.get().startHealthCheckTimer(); } \ No newline at end of file diff --git a/lib/src/screens/nodes/widgets/node_form.dart b/lib/src/screens/nodes/widgets/node_form.dart index 11bfea20a..5036d8a2a 100644 --- a/lib/src/screens/nodes/widgets/node_form.dart +++ b/lib/src/screens/nodes/widgets/node_form.dart @@ -32,6 +32,7 @@ class NodeForm extends StatelessWidget { ..setLogin((editingNode!.login ?? '')) ..setSSL((editingNode!.isSSL)) ..setTrusted((editingNode!.trusted)) + ..setIsEnabledForAutoSwitching((editingNode!.isEnabledForAutoSwitching)) ..setSocksProxy((editingNode!.useSocksProxy)) ..setSocksProxyAddress((editingNode!.socksProxyAddress ?? '')); } @@ -153,6 +154,25 @@ class NodeForm extends StatelessWidget { ), ), SizedBox(height: 10.0), + Padding( + padding: EdgeInsets.only(top: 20), + child: Row( + mainAxisAlignment: MainAxisAlignment.start, + mainAxisSize: MainAxisSize.max, + children: [ + Observer( + builder: (_) => StandardCheckbox( + value: nodeViewModel.isEnabledForAutoSwitching, + borderColor: Theme.of(context).colorScheme.surfaceContainerHighest, + iconColor: Theme.of(context).colorScheme.primary, + onChanged: (value) => nodeViewModel.isEnabledForAutoSwitching = value, + caption: S.current.enable_for_auto_switching, + ), + ), + ], + ), + ), + SizedBox(height: 10.0), if (nodeViewModel.hasAuthCredentials) ...[ Row( children: [ diff --git a/lib/src/screens/root/root.dart b/lib/src/screens/root/root.dart index 19e8cab5f..a73c20fb8 100644 --- a/lib/src/screens/root/root.dart +++ b/lib/src/screens/root/root.dart @@ -2,8 +2,10 @@ import 'dart:async'; import 'dart:io'; import 'package:cake_wallet/bitcoin/bitcoin.dart'; import 'package:cake_wallet/core/auth_service.dart'; +import 'package:cake_wallet/core/node_switching_service.dart'; import 'package:cake_wallet/core/totp_request_details.dart'; import 'package:cake_wallet/core/trade_monitor.dart'; +import 'package:cake_wallet/di.dart'; import 'package:cake_wallet/utils/device_info.dart'; import 'package:cake_wallet/view_model/link_view_model.dart'; import 'package:cw_core/utils/print_verbose.dart'; @@ -29,6 +31,7 @@ class Root extends StatefulWidget { required this.authService, required this.linkViewModel, required this.tradeMonitor, + required this.nodeSwitchingService, }) : super(key: key); final AuthenticationStore authenticationStore; @@ -38,6 +41,7 @@ class Root extends StatefulWidget { final Widget child; final LinkViewModel linkViewModel; final TradeMonitor tradeMonitor; + final NodeSwitchingService nodeSwitchingService; @override RootState createState() => RootState(); @@ -161,6 +165,10 @@ class RootState extends State with WidgetsBindingObserver { } widget.tradeMonitor.resumeTradeMonitoring(); + + // Trigger node health check when app resumes + widget.nodeSwitchingService.performHealthCheck(); + break; default: break; diff --git a/lib/src/screens/settings/manage_nodes_page.dart b/lib/src/screens/settings/manage_nodes_page.dart index a5db773cc..92d1d5e76 100644 --- a/lib/src/screens/settings/manage_nodes_page.dart +++ b/lib/src/screens/settings/manage_nodes_page.dart @@ -2,6 +2,7 @@ import 'package:cake_wallet/generated/i18n.dart'; import 'package:cake_wallet/routes.dart'; import 'package:cake_wallet/src/screens/base_page.dart'; import 'package:cake_wallet/src/screens/nodes/widgets/node_list_row.dart'; +import 'package:cake_wallet/src/screens/settings/widgets/settings_switcher_cell.dart'; import 'package:cake_wallet/src/widgets/alert_with_two_actions.dart'; import 'package:cake_wallet/src/widgets/standard_list.dart'; import 'package:cake_wallet/utils/show_pop_up.dart'; @@ -34,7 +35,23 @@ class ManageNodesPage extends BasePage { onTap: (_) async => await Navigator.of(context).pushNamed(Routes.newNode), ), ), - SizedBox(height: 20), + Observer( + builder: (_) => SettingsSwitcherCell( + key: ValueKey('manage_nodes_page_enable_auto_node_switching_button_key'), + title: S.current.enable_auto_node_switching, + value: isPow + ? powNodeListViewModel!.enableAutomaticNodeSwitching + : nodeListViewModel!.enableAutomaticNodeSwitching, + onValueChange: (BuildContext context, bool value) { + if (isPow) { + powNodeListViewModel!.setEnableAutomaticNodeSwitching(value); + } else { + nodeListViewModel!.setEnableAutomaticNodeSwitching(value); + } + }, + ), + ), + SizedBox(height: 8), Observer( builder: (BuildContext context) { int itemsCount = diff --git a/lib/src/screens/settings/other_settings_page.dart b/lib/src/screens/settings/other_settings_page.dart index 2ff9dcdaf..78125fbeb 100644 --- a/lib/src/screens/settings/other_settings_page.dart +++ b/lib/src/screens/settings/other_settings_page.dart @@ -36,22 +36,22 @@ class OtherSettingsPage extends BasePage { if (_otherSettingsViewModel.displayTransactionPriority) _otherSettingsViewModel.walletType == WalletType.bitcoin ? SettingsPriorityPickerCell( - title: S.current.settings_fee_priority, - items: priorityForWalletType(_otherSettingsViewModel.walletType), - displayItem: _otherSettingsViewModel.getDisplayBitcoinPriority, - selectedItem: _otherSettingsViewModel.transactionPriority, - customItemIndex: _otherSettingsViewModel.customPriorityItemIndex, - onItemSelected: _otherSettingsViewModel.onDisplayBitcoinPrioritySelected, - customValue: _otherSettingsViewModel.customBitcoinFeeRate, - maxValue: _otherSettingsViewModel.maxCustomFeeRate?.toDouble(), + title: S.current.settings_fee_priority, + items: priorityForWalletType(_otherSettingsViewModel.walletType), + displayItem: _otherSettingsViewModel.getDisplayBitcoinPriority, + selectedItem: _otherSettingsViewModel.transactionPriority, + customItemIndex: _otherSettingsViewModel.customPriorityItemIndex, + onItemSelected: _otherSettingsViewModel.onDisplayBitcoinPrioritySelected, + customValue: _otherSettingsViewModel.customBitcoinFeeRate, + maxValue: _otherSettingsViewModel.maxCustomFeeRate?.toDouble(), ) : SettingsPickerCell( - title: S.current.settings_fee_priority, - items: priorityForWalletType(_otherSettingsViewModel.walletType), - displayItem: _otherSettingsViewModel.getDisplayPriority, - selectedItem: _otherSettingsViewModel.transactionPriority, - onItemSelected: _otherSettingsViewModel.onDisplayPrioritySelected, - ), + title: S.current.settings_fee_priority, + items: priorityForWalletType(_otherSettingsViewModel.walletType), + displayItem: _otherSettingsViewModel.getDisplayPriority, + selectedItem: _otherSettingsViewModel.transactionPriority, + onItemSelected: _otherSettingsViewModel.onDisplayPrioritySelected, + ), if (_otherSettingsViewModel.changeRepresentativeEnabled) SettingsCellWithArrow( title: S.current.change_rep, diff --git a/lib/store/settings_store.dart b/lib/store/settings_store.dart index 219ef962d..37e118b4e 100644 --- a/lib/store/settings_store.dart +++ b/lib/store/settings_store.dart @@ -128,6 +128,7 @@ abstract class SettingsStoreBase with Store { required this.mwebEnabled, required this.hasEnabledMwebBefore, required this.mwebNodeUri, + required bool initialEnableAutomaticNodeSwitching, TransactionPriority? initialBitcoinTransactionPriority, TransactionPriority? initialMoneroTransactionPriority, TransactionPriority? initialWowneroTransactionPriority, @@ -186,6 +187,7 @@ abstract class SettingsStoreBase with Store { currentSyncMode = initialSyncMode, currentSyncAll = initialSyncAll, currentBuiltinTor = initialBuiltinTor, + enableAutomaticNodeSwitching = initialEnableAutomaticNodeSwitching, priority = ObservableMap() { //this.nodes = ObservableMap.of(nodes); @@ -613,6 +615,11 @@ abstract class SettingsStoreBase with Store { (_) => mwebNodeUri, (String mwebNodeUri) => _sharedPreferences.setString(PreferencesKey.mwebNodeUri, mwebNodeUri)); + + reaction( + (_) => enableAutomaticNodeSwitching, + (bool enableAutomaticNodeSwitching) => _sharedPreferences.setBool( + PreferencesKey.enableAutomaticNodeSwitching, enableAutomaticNodeSwitching)); this.nodes.observe((change) { if (change.newValue != null && change.key != null) { @@ -859,6 +866,9 @@ abstract class SettingsStoreBase with Store { @observable String mwebNodeUri; + @observable + bool enableAutomaticNodeSwitching; + final SecureStorage _secureStorage; final SharedPreferences _sharedPreferences; @@ -1034,6 +1044,8 @@ abstract class SettingsStoreBase with Store { sharedPreferences.getBool(PreferencesKey.hasEnabledMwebBefore) ?? false; final mwebNodeUri = sharedPreferences.getString(PreferencesKey.mwebNodeUri) ?? "ltc-electrum.cakewallet.com:9333"; + final enableAutomaticNodeSwitching = + sharedPreferences.getBool(PreferencesKey.enableAutomaticNodeSwitching) ?? true; // If no value if (pinLength == null || pinLength == 0) { @@ -1335,6 +1347,7 @@ abstract class SettingsStoreBase with Store { mwebEnabled: mwebEnabled, mwebNodeUri: mwebNodeUri, hasEnabledMwebBefore: hasEnabledMwebBefore, + initialEnableAutomaticNodeSwitching: enableAutomaticNodeSwitching, initialMoneroTransactionPriority: moneroTransactionPriority, initialWowneroTransactionPriority: wowneroTransactionPriority, initialZanoTransactionPriority: zanoTransactionPriority, @@ -1478,6 +1491,9 @@ abstract class SettingsStoreBase with Store { actionlistDisplayMode = ObservableList(); actionlistDisplayMode.addAll(deserializeActionlistDisplayModes( sharedPreferences.getInt(PreferencesKey.displayActionListModeKey) ?? defaultActionsMode)); + enableAutomaticNodeSwitching = + sharedPreferences.getBool(PreferencesKey.enableAutomaticNodeSwitching) ?? + enableAutomaticNodeSwitching; var pinLength = sharedPreferences.getInt(PreferencesKey.currentPinLength); // If no value if (pinLength == null || pinLength == 0) { diff --git a/lib/view_model/node_list/node_create_or_edit_view_model.dart b/lib/view_model/node_list/node_create_or_edit_view_model.dart index 78544aa82..715f7e05f 100644 --- a/lib/view_model/node_list/node_create_or_edit_view_model.dart +++ b/lib/view_model/node_list/node_create_or_edit_view_model.dart @@ -26,6 +26,7 @@ abstract class NodeCreateOrEditViewModelBase with Store { login = '', password = '', trusted = false, + isEnabledForAutoSwitching = false, useSocksProxy = false, socksProxyAddress = ''; @@ -56,6 +57,9 @@ abstract class NodeCreateOrEditViewModelBase with Store { @observable bool trusted; + @observable + bool isEnabledForAutoSwitching; + @observable bool useSocksProxy; @@ -118,6 +122,7 @@ abstract class NodeCreateOrEditViewModelBase with Store { password = ''; useSSL = false; trusted = false; + isEnabledForAutoSwitching = false; useSocksProxy = false; socksProxyAddress = ''; } @@ -143,6 +148,9 @@ abstract class NodeCreateOrEditViewModelBase with Store { @action void setTrusted(bool val) => trusted = val; + @action + void setIsEnabledForAutoSwitching(bool val) => isEnabledForAutoSwitching = val; + @action void setSocksProxy(bool val) => useSocksProxy = val; @@ -159,6 +167,7 @@ abstract class NodeCreateOrEditViewModelBase with Store { password: password, useSSL: useSSL, trusted: trusted, + isEnabledForAutoSwitching: isEnabledForAutoSwitching, socksProxyAddress: socksProxyAddress); try { state = IsExecutingState(); @@ -190,6 +199,7 @@ abstract class NodeCreateOrEditViewModelBase with Store { password: password, useSSL: useSSL, trusted: trusted, + isEnabledForAutoSwitching: isEnabledForAutoSwitching, socksProxyAddress: socksProxyAddress); try { connectionState = IsExecutingState(); diff --git a/lib/view_model/node_list/node_list_view_model.dart b/lib/view_model/node_list/node_list_view_model.dart index 9cd9ce959..463def285 100644 --- a/lib/view_model/node_list/node_list_view_model.dart +++ b/lib/view_model/node_list/node_list_view_model.dart @@ -41,6 +41,13 @@ abstract class NodeListViewModelBase with Store { S.current.change_current_node(uri) + '${uri.endsWith('.onion') || uri.contains('.onion:') ? '\n' + (CakeTor.instance.enabled ? '' : S.current.orbot_running_alert) : ''}'; + @computed + bool get enableAutomaticNodeSwitching => settingsStore.enableAutomaticNodeSwitching; + + @action + void setEnableAutomaticNodeSwitching(bool value) => + settingsStore.enableAutomaticNodeSwitching = value; + final ObservableList nodes; final SettingsStore settingsStore; final Box _nodeSource; diff --git a/lib/view_model/node_list/pow_node_list_view_model.dart b/lib/view_model/node_list/pow_node_list_view_model.dart index 5100676f4..310a0d311 100644 --- a/lib/view_model/node_list/pow_node_list_view_model.dart +++ b/lib/view_model/node_list/pow_node_list_view_model.dart @@ -41,6 +41,13 @@ abstract class PowNodeListViewModelBase with Store { S.current.change_current_node(uri) + '${uri.endsWith('.onion') || uri.contains('.onion:') ? '\n' + (CakeTor.instance.enabled ? '' : S.current.orbot_running_alert) : ''}'; + @computed + bool get enableAutomaticNodeSwitching => settingsStore.enableAutomaticNodeSwitching; + + @action + void setEnableAutomaticNodeSwitching(bool value) => + settingsStore.enableAutomaticNodeSwitching = value; + final ObservableList nodes; final SettingsStore settingsStore; final Box _nodeSource; diff --git a/res/values/strings_ar.arb b/res/values/strings_ar.arb index 82c64614b..071fe5efa 100644 --- a/res/values/strings_ar.arb +++ b/res/values/strings_ar.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "نقوم بإنشاء عناوين جديدة في كل مرة تستخدم فيها عنوانًا ، لكن العناوين السابقة تستمر في العمل", "email_address": "عنوان البريد الالكترونى", "enable": "يُمكَِن", + "enable_auto_node_switching": "تمكين تبديل العقدة التلقائية", "enable_builtin_tor": "تمكين بنيت في تور", + "enable_for_auto_switching": "تمكين للتبديل التلقائي", "enable_mempool_api": "MEMPOOL API للحصول على رسوم وتواريخ دقيقة", "enable_replace_by_fee": "تمكين الاستبدال", "enable_silent_payments_scanning": "ابدأ في مسح المدفوعات الصامتة ، حتى يتم الوصول إلى الطرف", diff --git a/res/values/strings_bg.arb b/res/values/strings_bg.arb index 66f0e102f..b05a4c788 100644 --- a/res/values/strings_bg.arb +++ b/res/values/strings_bg.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Нови адреси се генерират всеки път, когато използвате този, но и предишните продължават да работят", "email_address": "Имейл адрес", "enable": "Активиране", + "enable_auto_node_switching": "Активиране на автоматично превключване на възли", "enable_builtin_tor": "Активирайте вграден Tor", + "enable_for_auto_switching": "Активирайте за автоматично превключване", "enable_mempool_api": "Mempool API за точни такси и дати", "enable_replace_by_fee": "Активиране на замяна по забрана", "enable_silent_payments_scanning": "Започнете да сканирате безшумните плащания, докато се достигне съветът", diff --git a/res/values/strings_cs.arb b/res/values/strings_cs.arb index daa5836fa..fc5ef5ca3 100644 --- a/res/values/strings_cs.arb +++ b/res/values/strings_cs.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Po každém použití je generována nová adresa, ale předchozí adresy také stále fungují", "email_address": "E-mailová adresa", "enable": "Umožnit", + "enable_auto_node_switching": "Povolit automatické přepínání uzlů", "enable_builtin_tor": "Povolte vestavěné tor", + "enable_for_auto_switching": "Povolit automatické přepínání", "enable_mempool_api": "Mempool API pro přesné poplatky a data", "enable_replace_by_fee": "Povolit výměnu podle poplatku", "enable_silent_payments_scanning": "Začněte skenovat tiché platby, dokud není dosaženo špičky", diff --git a/res/values/strings_de.arb b/res/values/strings_de.arb index ca9e443f7..82a66c708 100644 --- a/res/values/strings_de.arb +++ b/res/values/strings_de.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Wir generieren jedes Mal neue Adressen, wenn Sie eine verwenden, aber vorherige Adressen funktionieren weiterhin", "email_address": "E-Mail-Adresse", "enable": "Aktivieren", + "enable_auto_node_switching": "Aktivieren Sie die automatische Knotenschaltung", "enable_builtin_tor": "Aktivieren Sie den bau-in tor", + "enable_for_auto_switching": "Aktivieren Sie die automatische Schaltung", "enable_mempool_api": "Mempool-API für genaue Gebühren und Daten", "enable_replace_by_fee": "Aktivieren Sie Ersatz für Fee", "enable_silent_payments_scanning": "Scannen Sie nach Silent Payments ihrer Adresse", diff --git a/res/values/strings_en.arb b/res/values/strings_en.arb index 5287ed915..ac1062e30 100644 --- a/res/values/strings_en.arb +++ b/res/values/strings_en.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "We generate new addresses each time you use one, but previous addresses continue to work", "email_address": "Email Address", "enable": "Enable", + "enable_auto_node_switching": "Enable Automatic Node Switching", "enable_builtin_tor": "Enable built-in Tor", + "enable_for_auto_switching": "Enable for Auto-Switching", "enable_mempool_api": "Mempool API for accurate fees and dates", "enable_replace_by_fee": "Enable Replace-By-Fee", "enable_silent_payments_scanning": "Start scanning for transactions sent to your Silent Payment address.", diff --git a/res/values/strings_es.arb b/res/values/strings_es.arb index 9b74a0155..1d5d3ed8b 100644 --- a/res/values/strings_es.arb +++ b/res/values/strings_es.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Generamos nuevas direcciones cada vez que usa una, pero las direcciones anteriores siguen funcionando", "email_address": "Dirección de correo electrónico", "enable": "Permitir", + "enable_auto_node_switching": "Habilitar la conmutación de nodo automático", "enable_builtin_tor": "Habilitar Tor incorporado", + "enable_for_auto_switching": "Habilitar para el cambio automático", "enable_mempool_api": "API de Mempool para tarifas y fechas precisas", "enable_replace_by_fee": "Habilitar reemplazar por tarea", "enable_silent_payments_scanning": "Comienza a escanear pagos silenciosos, hasta que se alcance la altura actual", diff --git a/res/values/strings_fr.arb b/res/values/strings_fr.arb index dc24a7384..702d7cd15 100644 --- a/res/values/strings_fr.arb +++ b/res/values/strings_fr.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Nous générons de nouvelles adresses à chaque fois que vous en utilisez une, mais les adresses précédentes continuent à fonctionner", "email_address": "Adresse e-mail", "enable": "Activer", + "enable_auto_node_switching": "Activer la commutation automatique du nœud", "enable_builtin_tor": "Activer le Tor construit", + "enable_for_auto_switching": "Activer pour le commutation automatique", "enable_mempool_api": "API Mempool pour les frais et dates précis", "enable_replace_by_fee": "Activer Remplace-by-Fee", "enable_silent_payments_scanning": "Commencez à analyser les transactions envoyées à votre adresse de paiement silencieux.", diff --git a/res/values/strings_ha.arb b/res/values/strings_ha.arb index 55fd6affc..0b3cdbd1d 100644 --- a/res/values/strings_ha.arb +++ b/res/values/strings_ha.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Muna samar da sababbin adireshi duk lokacin da kuka yi amfani da ɗaya, amma adiresoshin da suka gabata suna ci gaba da aiki", "email_address": "Adireshin i-mel", "enable": "Ba dama", + "enable_auto_node_switching": "Yana ba da damar kunna kumburi ta atomatik", "enable_builtin_tor": "Sanya riguna-inf", + "enable_for_auto_switching": "Kunna don sauyawa na atomatik", "enable_mempool_api": "Mampool API don ingantattun kudade da kwanakin", "enable_replace_by_fee": "Ba da damar maye gurbin-by-kudin", "enable_silent_payments_scanning": "Fara bincika biya na shiru, har sai tip ɗin ya kai", diff --git a/res/values/strings_hi.arb b/res/values/strings_hi.arb index a758041ae..c8afe7792 100644 --- a/res/values/strings_hi.arb +++ b/res/values/strings_hi.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "हर बार जब आप एक का उपयोग करते हैं तो हम नए पते उत्पन्न करते हैं, लेकिन पिछले पते काम करना जारी रखते हैं", "email_address": "ईमेल पता", "enable": "सक्षम", + "enable_auto_node_switching": "स्वचालित नोड स्विचिंग सक्षम करें", "enable_builtin_tor": "बिल्ट-इन टोर को सक्षम करें", + "enable_for_auto_switching": "ऑटो-स्विचिंग के लिए सक्षम करें", "enable_mempool_api": "सटीक शुल्क और तिथियों के लिए मेमपूल एपीआई", "enable_replace_by_fee": "प्रतिस्थापित-दर-शुल्क सक्षम करें", "enable_silent_payments_scanning": "मूक भुगतान स्कैनिंग सक्षम करें", diff --git a/res/values/strings_hr.arb b/res/values/strings_hr.arb index 67e677bf0..2566c9182 100644 --- a/res/values/strings_hr.arb +++ b/res/values/strings_hr.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Minden egyes alkalommal új címeket generálunk, de a korábbi címek továbbra is működnek", "email_address": "Adresa e-pošte", "enable": "Omogućiti", + "enable_auto_node_switching": "Omogući automatsko prebacivanje čvorova", "enable_builtin_tor": "Omogućite ugrađeni u tor", + "enable_for_auto_switching": "Omogućite automatsko prebacivanje", "enable_mempool_api": "Mempool API za točne naknade i datume", "enable_replace_by_fee": "Omogući zamjenu", "enable_silent_payments_scanning": "Započnite skeniranje tihih plaćanja, dok se ne postigne savjet", diff --git a/res/values/strings_hy.arb b/res/values/strings_hy.arb index 46eb69490..ed49e4c47 100644 --- a/res/values/strings_hy.arb +++ b/res/values/strings_hy.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Մենք ստեղծում ենք նոր հասցե ամեն անգամ, երբ դուք օգտագործում եք այն, բայց նախորդ հասցեները շարունակում են աշխատել", "email_address": "Էլ. փոստի հասցե", "enable": "Միացնել", + "enable_auto_node_switching": "Միացնել ավտոմատ հանգույցի անջատումը", "enable_builtin_tor": "Միացրեք ներկառուցված ջահը", + "enable_for_auto_switching": "Միացնել ավտոմատ անջատումը", "enable_mempool_api": "Mempool API ճշգրիտ վճարների եւ ամսաթվերի համար", "enable_replace_by_fee": "Միացնել փոխարինումը միջնորդավճարով", "enable_silent_payments_scanning": "Միացնել Լուռ Վճարումների սկանավորումը", diff --git a/res/values/strings_id.arb b/res/values/strings_id.arb index a1e6018df..b18cdc4a8 100644 --- a/res/values/strings_id.arb +++ b/res/values/strings_id.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Kami menghasilkan alamat baru setiap kali Anda menggunakan satu, tetapi alamat sebelumnya tetap berfungsi", "email_address": "Alamat Email", "enable": "Memungkinkan", + "enable_auto_node_switching": "Aktifkan switching simpul otomatis", "enable_builtin_tor": "Aktifkan built-in tor", + "enable_for_auto_switching": "Aktifkan untuk pengalihan otomatis", "enable_mempool_api": "API Mempool untuk biaya dan tanggal yang akurat", "enable_replace_by_fee": "Aktifkan ganti-by-fee", "enable_silent_payments_scanning": "Mulailah memindai pembayaran diam, sampai ujung tercapai", diff --git a/res/values/strings_it.arb b/res/values/strings_it.arb index 3ab18f7b9..33698fee8 100644 --- a/res/values/strings_it.arb +++ b/res/values/strings_it.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Generiamo nuovi indirizzi ogni volta che ne utilizzi uno, ma gli indirizzi precedenti continuano a funzionare", "email_address": "Indirizzo e-mail", "enable": "Abilita", + "enable_auto_node_switching": "Abilita la commutazione del nodo automatico", "enable_builtin_tor": "Abilita buildi-in tor", + "enable_for_auto_switching": "Abilita per il cambio automatico", "enable_mempool_api": "API Mempool per commissioni e date accurate", "enable_replace_by_fee": "Abilita Replace-By-Fee", "enable_silent_payments_scanning": "Inizia a scansionare le transazioni inviate al tuo indirizzo Silent Payments", diff --git a/res/values/strings_ja.arb b/res/values/strings_ja.arb index 96a2d0019..7baa5eefa 100644 --- a/res/values/strings_ja.arb +++ b/res/values/strings_ja.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "使用するたびに新しいアドレスが生成されますが、以前のアドレスは引き続き機能します", "email_address": "メールアドレス", "enable": "有効にする", + "enable_auto_node_switching": "自動ノードスイッチングを有効にします", "enable_builtin_tor": "組み込みのTORを有効にします", + "enable_for_auto_switching": "自動スイッチを有効にします", "enable_mempool_api": "正確な料金と日付のMempool API", "enable_replace_by_fee": "交換ごとに有効にします", "enable_silent_payments_scanning": "先端に達するまで、サイレント決済のスキャンを開始します", diff --git a/res/values/strings_ko.arb b/res/values/strings_ko.arb index 27fa0e894..51e53a705 100644 --- a/res/values/strings_ko.arb +++ b/res/values/strings_ko.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "사용할 때마다 새 주소를 생성하지만 이전 주소도 계속 작동합니다", "email_address": "이메일 주소", "enable": "활성화", + "enable_auto_node_switching": "자동 노드 스위칭을 활성화합니다", "enable_builtin_tor": "내장 Tor를 활성화하십시오", + "enable_for_auto_switching": "자동 전환을 가능하게합니다", "enable_mempool_api": "정확한 수수료 및 날짜를 위한 Mempool API", "enable_replace_by_fee": "RBF(Replace-By-Fee) 활성화", "enable_silent_payments_scanning": "사일런트 페이먼트 주소로 전송된 트랜잭션 스캔 시작", diff --git a/res/values/strings_my.arb b/res/values/strings_my.arb index a8bcd850f..43ac42edd 100644 --- a/res/values/strings_my.arb +++ b/res/values/strings_my.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "သင်အသုံးပြုသည့်အချိန်တိုင်းတွင် ကျွန်ုပ်တို့သည် လိပ်စာအသစ်များကို ထုတ်ပေးသော်လည်း ယခင်လိပ်စာများသည် ဆက်လက်အလုပ်လုပ်နေပါသည်။", "email_address": "အီးမေးလ်လိပ်စာ", "enable": "စွမ်းဆောင်နိုင်စေ", + "enable_auto_node_switching": "အလိုအလျောက် node switching ကို enable", "enable_builtin_tor": "built-in Tor ကို Enable လုပ်ပါ", + "enable_for_auto_switching": "Auto-switching အတွက်ဖွင့်ပါ", "enable_mempool_api": "Mempool API တိကျသောအခကြေးငွေနှင့်ရက်စွဲများအတွက်", "enable_replace_by_fee": "အစားထိုး - by- အခကြေးငွေ enable", "enable_silent_payments_scanning": "အစွန်အဖျားသို့ရောက်ရှိသည်အထိအသံတိတ်ငွေပေးချေမှုကိုစကင်ဖတ်စစ်ဆေးပါ", diff --git a/res/values/strings_nl.arb b/res/values/strings_nl.arb index 3934be573..fe96778d1 100644 --- a/res/values/strings_nl.arb +++ b/res/values/strings_nl.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "We genereren nieuwe adressen elke keer dat u er een gebruikt, maar eerdere adressen blijven werken", "email_address": "E-mailadres", "enable": "Inschakelen", + "enable_auto_node_switching": "Schakel automatische knoopschakeling in", "enable_builtin_tor": "Schakel ingebouwde tor in", + "enable_for_auto_switching": "Inschakelen voor automatisch schakelen", "enable_mempool_api": "Mempool API voor nauwkeurige kosten en datums", "enable_replace_by_fee": "Schakel vervangen door een fee", "enable_silent_payments_scanning": "Begin met het scannen van stille betalingen, totdat de tip is bereikt", diff --git a/res/values/strings_pl.arb b/res/values/strings_pl.arb index 810f70500..0fe61f3bd 100644 --- a/res/values/strings_pl.arb +++ b/res/values/strings_pl.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Za każdym razem, gdy wykorzystasz adres, dla wiekszej prywatności generujemy nowy, ale poprzednie adresy nadal działają, i moga odbierać środki", "email_address": "Adres e-mail", "enable": "Włącz", + "enable_auto_node_switching": "Włącz automatyczne przełączanie węzłów", "enable_builtin_tor": "Włącz wbudowany tor", + "enable_for_auto_switching": "Włącz do automatycznego przełączania", "enable_mempool_api": "Mempool API dla dokładnych opłat i dat", "enable_replace_by_fee": "Włącz wymianę po lewej", "enable_silent_payments_scanning": "Zacznij skanować Silent Payments", diff --git a/res/values/strings_pt.arb b/res/values/strings_pt.arb index 423ff9800..b265e71b9 100644 --- a/res/values/strings_pt.arb +++ b/res/values/strings_pt.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Geramos novos endereços cada vez que você usa um, mas os endereços anteriores continuam funcionando", "email_address": "Endereço de e-mail", "enable": "Habilitar", + "enable_auto_node_switching": "Ativar comutação automática de nó", "enable_builtin_tor": "Ative o Buildi-in Tor", + "enable_for_auto_switching": "Ativar a troca automática", "enable_mempool_api": "Mempool API para taxas e datas precisas", "enable_replace_by_fee": "Habilite substituir por taxa", "enable_silent_payments_scanning": "Comece a escanear pagamentos silenciosos, até que o topo seja alcançada", diff --git a/res/values/strings_ru.arb b/res/values/strings_ru.arb index 4563d4f0e..bc03c3e1e 100644 --- a/res/values/strings_ru.arb +++ b/res/values/strings_ru.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Мы генерируем новые адреса каждый раз, когда вы их используете, но предыдущие адреса продолжают работать.", "email_address": "Адрес электронной почты", "enable": "Давать возможность", + "enable_auto_node_switching": "Включить автоматическое переключение узлов", "enable_builtin_tor": "Включить встроенный в Tor", + "enable_for_auto_switching": "Включить для автоматического переключения", "enable_mempool_api": "Mempool API за точные сборы и даты", "enable_replace_by_fee": "Включить замену за пикой", "enable_silent_payments_scanning": "Начните сканировать безмолвные платежи, пока не будет достигнут наконечник", diff --git a/res/values/strings_th.arb b/res/values/strings_th.arb index adeb7169d..c774facc6 100644 --- a/res/values/strings_th.arb +++ b/res/values/strings_th.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "เราสร้างที่อยู่ใหม่ทุกครั้งที่คุณใช้หนึ่งอย่าง แต่ที่อยู่เก่ายังสามารถใช้ได้ต่อไป", "email_address": "ที่อยู่อีเมล", "enable": "เปิดใช้งาน", + "enable_auto_node_switching": "เปิดใช้งานการสลับโหนดอัตโนมัติ", "enable_builtin_tor": "เปิดใช้งาน Tor ในตัว", + "enable_for_auto_switching": "เปิดใช้งานการสลับอัตโนมัติ", "enable_mempool_api": "Mempool API สำหรับค่าธรรมเนียมและวันที่ที่ถูกต้อง", "enable_replace_by_fee": "เปิดใช้งานการเปลี่ยนโดยค่าธรรมเนียม", "enable_silent_payments_scanning": "เริ่มสแกนการชำระเงินแบบเงียบจนกว่าจะถึงปลาย", diff --git a/res/values/strings_tl.arb b/res/values/strings_tl.arb index 18d783306..e4896c675 100644 --- a/res/values/strings_tl.arb +++ b/res/values/strings_tl.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Bumubuo kami ng mga bagong address sa tuwing gagamit ka ng isa, ngunit ang mga nakaraang address ay patuloy na gumagana", "email_address": "Email Address", "enable": "Paganahin", + "enable_auto_node_switching": "Paganahin ang awtomatikong paglipat ng node", "enable_builtin_tor": "Paganahin ang built-in tor", + "enable_for_auto_switching": "Paganahin para sa auto-switch", "enable_mempool_api": "Mempool API para sa tumpak na bayad at mga petsa", "enable_replace_by_fee": "Paganahin ang Replace-By-Fee", "enable_silent_payments_scanning": "Simulan ang pag -scan ng tahimik na pagbabayad, hanggang sa maabot ang tip", diff --git a/res/values/strings_tr.arb b/res/values/strings_tr.arb index d312e98fe..ba7fcdc05 100644 --- a/res/values/strings_tr.arb +++ b/res/values/strings_tr.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Adresini her kullandığında yeni adres oluşturuyoruz, ancak önceki adresler de çalışmaya devam eder", "email_address": "E-posta Adresi", "enable": "Olanak vermek", + "enable_auto_node_switching": "Otomatik Düğüm Anahtarlamasını Etkinleştir", "enable_builtin_tor": "Yerleşik Tor'u etkinleştirin", + "enable_for_auto_switching": "Otomatik anahtarlama için etkinleştirin", "enable_mempool_api": "Doğru ücretler ve tarihler için Mempool API'si", "enable_replace_by_fee": "Farklı Değiştir'i Etkinleştir", "enable_silent_payments_scanning": "Bahşiş ulaşılıncaya kadar sessiz ödemeleri taramaya başlayın", diff --git a/res/values/strings_uk.arb b/res/values/strings_uk.arb index 8a71a9025..e1c6bb7e4 100644 --- a/res/values/strings_uk.arb +++ b/res/values/strings_uk.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "Ми створюємо нові адреси щоразу, коли ви використовуєте їх, але попередні адреси продовжують працювати", "email_address": "Адреса електронної пошти", "enable": "Ввімкнути", + "enable_auto_node_switching": "Увімкнути автоматичний перемикач вузлів", "enable_builtin_tor": "Увімкнути вбудований tor", + "enable_for_auto_switching": "Увімкнути автоматичне перемикання", "enable_mempool_api": "API Mempool для точних зборів та дат", "enable_replace_by_fee": "Увімкнути заміну з комісією", "enable_silent_payments_scanning": "Почніть сканувати мовчазні платежі, поки не буде досягнуто наконечника", diff --git a/res/values/strings_ur.arb b/res/values/strings_ur.arb index 3c9ed3ca0..aac1688f3 100644 --- a/res/values/strings_ur.arb +++ b/res/values/strings_ur.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "جب بھی آپ ایک کا استعمال کرتے ہیں تو ہم نئے پتے تیار کرتے ہیں، لیکن پچھلے پتے کام کرتے رہتے ہیں۔", "email_address": "ای میل اڈریس", "enable": "قابل بنائیں", + "enable_auto_node_switching": "خودکار نوڈ سوئچنگ کو فعال کریں", "enable_builtin_tor": "بلٹٹی ان ٹور کو فعال کریں", + "enable_for_auto_switching": "آٹو سوئچنگ کے لئے قابل بنائیں", "enable_mempool_api": "درست فیسوں اور تاریخوں کے لئے میمپول API", "enable_replace_by_fee": "فی فیس کو تبدیل کریں", "enable_silent_payments_scanning": "خاموش ادائیگیوں کو اسکین کرنا شروع کریں ، جب تک کہ نوک نہ پہنچ جائے", diff --git a/res/values/strings_vi.arb b/res/values/strings_vi.arb index a92de3214..1c3a5af9f 100644 --- a/res/values/strings_vi.arb +++ b/res/values/strings_vi.arb @@ -305,7 +305,9 @@ "electrum_address_disclaimer": "Chúng tôi tạo địa chỉ mới mỗi khi bạn sử dụng, nhưng các địa chỉ cũ vẫn tiếp tục hoạt động", "email_address": "Địa chỉ Email", "enable": "Cho phép", + "enable_auto_node_switching": "Bật chuyển đổi nút tự động", "enable_builtin_tor": "Bật Buildi-In Tor", + "enable_for_auto_switching": "Kích hoạt để chuyển đổi tự động", "enable_mempool_api": "API Mempool cho các khoản phí và ngày chính xác", "enable_replace_by_fee": "Bật Thay thế Bằng Phí", "enable_silent_payments_scanning": "Bật quét thanh toán im lặng", diff --git a/res/values/strings_yo.arb b/res/values/strings_yo.arb index c770daf39..21b04e777 100644 --- a/res/values/strings_yo.arb +++ b/res/values/strings_yo.arb @@ -307,7 +307,9 @@ "electrum_address_disclaimer": "A dá àwọn àdírẹ́sì títun ní gbogbo àwọn ìgbà t'ẹ́ lo ó kan ṣùgbọ́n ẹ lè tẹ̀síwájú lo àwọn àdírẹ́sì tẹ́lẹ̀tẹ́lẹ̀.", "email_address": "Àdírẹ́sì ímeèlì", "enable": "Mu ṣiṣẹ", + "enable_auto_node_switching": "Mu oju-ọna yiyọ laifọwọyi", "enable_builtin_tor": "Mu ṣiṣẹ", + "enable_for_auto_switching": "Mu ṣiṣẹ fun adaṣe-pada", "enable_mempool_api": "Mempool API fun awọn owo deede ati awọn ọjọ", "enable_replace_by_fee": "Mu ki o rọpo", "enable_silent_payments_scanning": "Bẹrẹ awọn sisanwo ipalọlọ, titi ti o fi de opin", diff --git a/res/values/strings_zh.arb b/res/values/strings_zh.arb index e90424082..826e366f3 100644 --- a/res/values/strings_zh.arb +++ b/res/values/strings_zh.arb @@ -306,7 +306,9 @@ "electrum_address_disclaimer": "每次您使用一个地址时,我们都会生成新地址,但之前的地址仍然有效", "email_address": "电子邮件地址", "enable": "使能够", + "enable_auto_node_switching": "启用自动节点开关", "enable_builtin_tor": "启用内置的tor", + "enable_for_auto_switching": "启用自动开关", "enable_mempool_api": "Mempool API获得准确的费用和日期", "enable_replace_by_fee": "启用by-Fee替换", "enable_silent_payments_scanning": "开始扫描无声付款,直到达到提示", From 61ace0b3776c5200a2f3cc6147feeceb08dfbdec Mon Sep 17 00:00:00 2001 From: Omar Hatem Date: Fri, 25 Jul 2025 20:37:13 +0300 Subject: [PATCH 12/16] Update prepare_moneroc.sh --- scripts/prepare_moneroc.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/prepare_moneroc.sh b/scripts/prepare_moneroc.sh index ef29d360f..17137a3f7 100755 --- a/scripts/prepare_moneroc.sh +++ b/scripts/prepare_moneroc.sh @@ -8,7 +8,7 @@ if [[ ! -d "monero_c/.git" ]]; then git clone https://github.com/mrcyjanek/monero_c --branch master monero_c cd monero_c - git checkout a27fbcb24d91143715ed930a05aaa4d853fba1f2 + git checkout b576312e4d466569cd03482b61c597b39a9f4dc3 git reset --hard git submodule update --init --force --recursive ./apply_patches.sh monero From 995a3bb750801fcdad74552550d9006d71757986 Mon Sep 17 00:00:00 2001 From: cyan Date: Fri, 25 Jul 2025 19:38:05 +0200 Subject: [PATCH 13/16] fix: monero_c hash (#2412) --- cw_monero/pubspec.lock | 4 ++-- cw_wownero/pubspec.lock | 4 ++-- cw_zano/pubspec.lock | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cw_monero/pubspec.lock b/cw_monero/pubspec.lock index 2de22ed11..911d01144 100644 --- a/cw_monero/pubspec.lock +++ b/cw_monero/pubspec.lock @@ -573,8 +573,8 @@ packages: dependency: "direct main" description: path: "impls/monero.dart" - ref: a27fbcb24d91143715ed930a05aaa4d853fba1f2 - resolved-ref: a27fbcb24d91143715ed930a05aaa4d853fba1f2 + ref: b576312e4d466569cd03482b61c597b39a9f4dc3 + resolved-ref: b576312e4d466569cd03482b61c597b39a9f4dc3 url: "https://github.com/mrcyjanek/monero_c" source: git version: "0.0.0" diff --git a/cw_wownero/pubspec.lock b/cw_wownero/pubspec.lock index 0fa39123b..491f65e54 100644 --- a/cw_wownero/pubspec.lock +++ b/cw_wownero/pubspec.lock @@ -493,8 +493,8 @@ packages: dependency: "direct main" description: path: "impls/monero.dart" - ref: a27fbcb24d91143715ed930a05aaa4d853fba1f2 - resolved-ref: a27fbcb24d91143715ed930a05aaa4d853fba1f2 + ref: b576312e4d466569cd03482b61c597b39a9f4dc3 + resolved-ref: b576312e4d466569cd03482b61c597b39a9f4dc3 url: "https://github.com/mrcyjanek/monero_c" source: git version: "0.0.0" diff --git a/cw_zano/pubspec.lock b/cw_zano/pubspec.lock index 41edf154e..f31862441 100644 --- a/cw_zano/pubspec.lock +++ b/cw_zano/pubspec.lock @@ -498,8 +498,8 @@ packages: dependency: "direct main" description: path: "impls/monero.dart" - ref: a27fbcb24d91143715ed930a05aaa4d853fba1f2 - resolved-ref: a27fbcb24d91143715ed930a05aaa4d853fba1f2 + ref: b576312e4d466569cd03482b61c597b39a9f4dc3 + resolved-ref: b576312e4d466569cd03482b61c597b39a9f4dc3 url: "https://github.com/mrcyjanek/monero_c" source: git version: "0.0.0" From 888319dd7a465f2a643172c2ebdbef8d46220cac Mon Sep 17 00:00:00 2001 From: Serhii Date: Sat, 26 Jul 2025 19:06:10 +0300 Subject: [PATCH 14/16] Add support for HBAR, RUNE, and SCRT extra info in exchange (#2411) * Add support for HBAR, RUNE, and SCRT extra info in exchange * remove shouldAddExtraId --- .../exchange/exchange_trade_view_model.dart | 27 +++++++------------ res/values/strings_ar.arb | 4 +-- res/values/strings_bg.arb | 4 +-- res/values/strings_cs.arb | 4 +-- res/values/strings_de.arb | 6 ++--- res/values/strings_en.arb | 4 +-- res/values/strings_es.arb | 6 ++--- res/values/strings_fr.arb | 4 +-- res/values/strings_ha.arb | 4 +-- res/values/strings_hi.arb | 4 +-- res/values/strings_hr.arb | 4 +-- res/values/strings_hy.arb | 4 +-- res/values/strings_id.arb | 4 +-- res/values/strings_it.arb | 4 +-- res/values/strings_ja.arb | 4 +-- res/values/strings_ko.arb | 4 +-- res/values/strings_my.arb | 4 +-- res/values/strings_nl.arb | 4 +-- res/values/strings_pl.arb | 4 +-- res/values/strings_pt.arb | 4 +-- res/values/strings_ru.arb | 4 +-- res/values/strings_th.arb | 4 +-- res/values/strings_tl.arb | 4 +-- res/values/strings_tr.arb | 4 +-- res/values/strings_uk.arb | 4 +-- res/values/strings_ur.arb | 4 +-- res/values/strings_vi.arb | 4 +-- res/values/strings_yo.arb | 4 +-- res/values/strings_zh.arb | 4 +-- 29 files changed, 40 insertions(+), 103 deletions(-) diff --git a/lib/view_model/exchange/exchange_trade_view_model.dart b/lib/view_model/exchange/exchange_trade_view_model.dart index 76a49e1d5..50102bdc9 100644 --- a/lib/view_model/exchange/exchange_trade_view_model.dart +++ b/lib/view_model/exchange/exchange_trade_view_model.dart @@ -95,13 +95,9 @@ abstract class ExchangeTradeViewModelBase with Store { @observable bool isSendable; - @computed - String get extraInfo => switch (trade.from) { - CryptoCurrency.xlm => '\n\n' + S.current.xlm_extra_info, - CryptoCurrency.xrp => '\n\n' + S.current.xrp_extra_info, - CryptoCurrency.ton => '\n\n' + S.current.ton_extra_info, - _ => '' - }; + String get extraInfo => trade.extraId != null && trade.extraId!.isNotEmpty + ? '\n\n' + S.current.exchange_extra_info + : ''; @computed String get pendingTransactionFiatAmountValueFormatted => sendViewModel.isFiatDisabled @@ -203,10 +199,9 @@ abstract class ExchangeTradeViewModelBase with Store { ), ]); - if (trade.extraId != null) { - final shouldAddExtraId = trade.from == CryptoCurrency.xrp || trade.from == CryptoCurrency.xlm || trade.from == CryptoCurrency.ton; + final isExtraIdExist = trade.extraId != null && trade.extraId!.isNotEmpty; - if (shouldAddExtraId) { + if (isExtraIdExist) { final title = trade.from == CryptoCurrency.xrp ? S.current.destination_tag : trade.from == CryptoCurrency.xlm || trade.from == CryptoCurrency.ton @@ -215,14 +210,12 @@ abstract class ExchangeTradeViewModelBase with Store { items.add( ExchangeTradeItem( - title: title, - data: '${trade.extraId}', - isCopied: true, - isReceiveDetail: !shouldAddExtraId, - isExternalSendDetail: shouldAddExtraId - ), + title: title, + data: trade.extraId ?? '', + isCopied: true, + isReceiveDetail: !isExtraIdExist, + isExternalSendDetail: isExtraIdExist), ); - } } items.add( diff --git a/res/values/strings_ar.arb b/res/values/strings_ar.arb index 071fe5efa..4bccebd14 100644 --- a/res/values/strings_ar.arb +++ b/res/values/strings_ar.arb @@ -357,6 +357,7 @@ "event": "ﺙﺪﺣ", "events": "ﺙﺍﺪﺣﻷﺍ", "exchange": "تبادل", + "exchange_extra_info": "يرجى عدم نسيان تحديد المذكرة أو معرف إضافي أثناء إرسال هذه المعاملة للتبادل", "exchange_incorrect_current_wallet_for_xmr": "إذا كنت ترغب في تبديل XMR من رصيد محفظة الكعكة ، فيرجى التبديل إلى محفظة Monero أولاً.", "exchange_new_template": "قالب جديد", "exchange_provider_unsupported": "${providerName} لم يعد مدعومًا!", @@ -932,7 +933,6 @@ "token_name": "اسم الرمز ، على سبيل المثال: Tether", "token_symbol": "رمز العملة ، على سبيل المثال: USDT", "tokenID": "ﻒﻳﺮﻌﺗ ﺔﻗﺎﻄﺑ", - "ton_extra_info": "يرجى عدم نسيان تحديد معرف المذكرة أثناء إرسال معاملة TON للتبادل", "tor_connection": "ﺭﻮﺗ ﻝﺎﺼﺗﺍ", "tor_connection_timeout": "Tor Torn Connection Timeout", "tor_experimental": "هذه ميزة تجريبية ، وليس جميع الاتصالات المصنوعة من توجيه Cake Wallet Support - قد تستخدم بعض الاتصالات ClearNet ، من أجل توجيه حركة المرور بشكل كامل باستخدام TOR مع وضع VPN.", @@ -1104,13 +1104,11 @@ "widgets_seed": "سييد", "wouoldLikeToConnect": "ﻝﺎﺼﺗﻻﺍ ﻲﻓ ﺐﻏﺮﺗ", "write_down_backup_password": "يرجى كتابة كلمة المرور الاحتياطية الخاصة بك ، والتي يتم استخدامها لاستيراد ملفات النسخ الاحتياطي الخاصة بك.", - "xlm_extra_info": "من فضلك لا تنس تحديد معرّف المذكرة أثناء إرسال معاملة XLM للتبادل", "xmr_available_balance": "الرصيد المتوفر", "xmr_full_balance": "الرصيد الكامل", "xmr_hidden": "مختفي", "xmr_to_error": "خطأ XMR.TO", "xmr_to_error_description": "مبلغ غير صحيح. الحد الأقصى 8 أرقام بعد الفاصلة العشرية", - "xrp_extra_info": "من فضلك لا تنس تحديد علامة الوجهة أثناء إرسال معاملة XRP للتبادل", "yat": "Yat", "yat_address": "عنوان Yat", "yat_alert_content": "يمكن لمستخدمي Cake Wallet الآن إرسال واستلام جميع عملاتهم المفضلة باستخدام اسم مستخدم فريد من نوعه قائم على الرموز التعبيرية.", diff --git a/res/values/strings_bg.arb b/res/values/strings_bg.arb index b05a4c788..2384857e6 100644 --- a/res/values/strings_bg.arb +++ b/res/values/strings_bg.arb @@ -357,6 +357,7 @@ "event": "Събитие", "events": "събития", "exchange": "Обмен", + "exchange_extra_info": "Моля, не забравяйте да посочите бележката или допълнителен лична карта, докато изпращате тази транзакция за борсата", "exchange_incorrect_current_wallet_for_xmr": "Ако искате да смените XMR от вашия баланс на портфейла на тортата Monero, моля, преминете първо към вашия портфейл Monero.", "exchange_new_template": "Нов шаблон", "exchange_provider_unsupported": "${providerName} вече не се поддържа!", @@ -932,7 +933,6 @@ "token_name": "Име на токена, напр.: Tether", "token_symbol": "Символ на токена, напр.: USDT", "tokenID": "документ за самоличност", - "ton_extra_info": "Моля, не забравяйте да посочите идентификационния номер на бележката, докато изпращате транзакцията TON за борсата", "tor_connection": "Tor връзка", "tor_connection_timeout": "TOR ВРЕМЕ НА ВРЕМЕТО ВРЕМЕ", "tor_experimental": "Това е експериментална функция, не всички връзки, направени от маршрутизиране на тортата за портфейл за торта - някои връзки могат да използват ClearNet, за да се насочи напълно да използва трафик на приложения TOR с VPN режим.", @@ -1104,13 +1104,11 @@ "widgets_seed": "Seed", "wouoldLikeToConnect": "иска да се свърже", "write_down_backup_password": "Моля, запишете своята парола за възстановяване. Тя се използва за импортиране на резервни копия на Вашите файлове.", - "xlm_extra_info": "Не забравяйте да дадете Memo ID-то, докато изпращате XLM транзакцията за обмена", "xmr_available_balance": "Наличен баланс", "xmr_full_balance": "Пълен баланс", "xmr_hidden": "Скрит", "xmr_to_error": "XMR.TO грешка", "xmr_to_error_description": "Невалидна сума - най-много 8 цифри след десетичната запетая", - "xrp_extra_info": "Не забравяйте да дадете Destination Tag-а, когато изпращате XRP транзакцията за обмена", "yat": "Yat", "yat_address": "Yat Адрес", "yat_alert_content": "Потребителите на Cake Wallet вече могат да изпращат и получават любимите си валути чрез неповторимо потребителско име от емоджита.", diff --git a/res/values/strings_cs.arb b/res/values/strings_cs.arb index fc5ef5ca3..6167fa90f 100644 --- a/res/values/strings_cs.arb +++ b/res/values/strings_cs.arb @@ -357,6 +357,7 @@ "event": "událost", "events": "Události", "exchange": "Výměna", + "exchange_extra_info": "Při odesílání této transakce na burzu prosím nezapomeňte zadat poznámku nebo další ID", "exchange_incorrect_current_wallet_for_xmr": "Pokud chcete vyměnit XMR z vaší dortové peněženky Monero Balance, nejprve přepněte na peněženku Monero.", "exchange_new_template": "Nová šablona", "exchange_provider_unsupported": "${providerName} již není podporováno!", @@ -932,7 +933,6 @@ "token_name": "Název tokenu např.: Tether", "token_symbol": "Symbol tokenu, např.: USDT", "tokenID": "ID", - "ton_extra_info": "Při odeslání TON transakce pro výměnu nezapomeňte zadat ID Memo ID", "tor_connection": "Připojení Tor", "tor_connection_timeout": "Časový limit připojení", "tor_experimental": "Jedná se o experimentální funkci, ne všechna připojení vyrobená z podpory dortů na dort Tor - některá připojení mohou používat ClearNet, aby se plně směrovaly používání provozu aplikací s režimem VPN.", @@ -1104,13 +1104,11 @@ "widgets_seed": "Seed", "wouoldLikeToConnect": "by se chtělo připojit", "write_down_backup_password": "Prosím zapište si své heslo pro zálohy, které se používá pro import vašich souborů se zálohami.", - "xlm_extra_info": "Prosím nezapomeňte zadat Memo ID, když posíláte XLM transakce ke směně", "xmr_available_balance": "Zůstatek (dostupný)", "xmr_full_balance": "Zůstatek (celkový)", "xmr_hidden": "Skryto", "xmr_to_error": "XMR.TO chyba", "xmr_to_error_description": "Neplatná částka. Maximálně lze použít 8 desetinných míst", - "xrp_extra_info": "Prosím nezapomeňte zadat Destination Tag, když posíláte XRP transakce ke směně", "yat": "Yat", "yat_address": "Yat adresa", "yat_alert_content": "Uživatelé Cake Wallet mohou nyní posílat a přijímat všechny své oblíbené měny pomocí něco jako uživatelského jména tvořeného emoji.", diff --git a/res/values/strings_de.arb b/res/values/strings_de.arb index 82a66c708..c07a396b8 100644 --- a/res/values/strings_de.arb +++ b/res/values/strings_de.arb @@ -357,6 +357,7 @@ "event": "Ereignis", "events": "Veranstaltungen", "exchange": "Tauschen", + "exchange_extra_info": "Bitte vergessen Sie nicht, das Memo oder die zusätzliche ID anzugeben, während Sie diese Transaktion für den Austausch senden", "exchange_incorrect_current_wallet_for_xmr": "Wenn Sie XMR aus Ihrem Cake Wallet Monero-Saldo tauschen möchten, wechseln Sie zuerst zu Ihrer Monero-Wallet.", "exchange_new_template": "Neue Vorlage", "exchange_provider_unsupported": "${providerName} wird nicht mehr unterstützt!", @@ -933,7 +934,6 @@ "token_name": "Token-Name, z. B.: Tether", "token_symbol": "Token-Symbol, z. B.: USDT", "tokenID": "AUSWEIS", - "ton_extra_info": "Bitte vergessen Sie nicht, die Memo -ID anzugeben, während Sie die TON -Transaktion für den Austausch senden", "tor_connection": "Tor-Verbindung", "tor_connection_timeout": "TOR -Verbindungs ​​-Zeitüberschreitung", "tor_experimental": "Dies ist eine experimentelle Funktion, nicht alle Verbindungen, die aus Kuchen -Wallet -Stütze für die Routing hergestellt werden. Einige Verbindungen können ClearNET verwenden, um den App -Traffic -App -TOR mit dem VPN -Modus vollständig zu verwenden.", @@ -1107,13 +1107,11 @@ "widgets_seed": "Seed", "wouoldLikeToConnect": "möchte mich gerne vernetzen", "write_down_backup_password": "Bitte notieren Sie sich Ihr Sicherungskennwort, das für den Import Ihrer Sicherungsdateien gebraucht wird.", - "xlm_extra_info": "Bitte vergessen Sie nicht, die Memo-ID anzugeben, während Sie die XLM-Transaktion für den Austausch senden", "xmr_available_balance": "Verfügbares Guthaben", "xmr_full_balance": "Gesamtguthaben", "xmr_hidden": "Versteckt", "xmr_to_error": "XMR.TO-Fehler", "xmr_to_error_description": "Ungültiger Betrag. Höchstgrenze 8 Stellen nach dem Dezimalpunkt", - "xrp_extra_info": "Bitte vergessen Sie nicht, das Ziel-Tag anzugeben, während Sie die XRP-Transaktion für den Austausch senden", "yat": "Yat", "yat_address": "Yat-Adresse", "yat_alert_content": "Cake Wallet-Benutzer können jetzt alle ihre Lieblingswährungen mit einem einzigartigen Emoji-basierten Benutzernamen senden und empfangen.", @@ -1130,4 +1128,4 @@ "you_will_send": "Konvertieren von", "youCanGoBackToYourDapp": "Sie können jetzt zu Ihrem Dapp zurückkehren", "yy": "YY" -} +} \ No newline at end of file diff --git a/res/values/strings_en.arb b/res/values/strings_en.arb index ac1062e30..fdd0ae648 100644 --- a/res/values/strings_en.arb +++ b/res/values/strings_en.arb @@ -357,6 +357,7 @@ "event": "Event", "events": "Events", "exchange": "Exchange", + "exchange_extra_info": "Please don’t forget to specify the Memo or Extra ID while sending this transaction for the exchange", "exchange_incorrect_current_wallet_for_xmr": "If you want to swap XMR from your Cake Wallet Monero balance, please switch to your Monero wallet first.", "exchange_new_template": "New template", "exchange_provider_unsupported": "${providerName} is no longer supported!", @@ -933,7 +934,6 @@ "token_name": "Token name eg: Tether", "token_symbol": "Token symbol eg: USDT", "tokenID": "ID", - "ton_extra_info": "Please don’t forget to specify the Memo ID while sending the TON transaction for the exchange", "tor_connection": "Tor connection", "tor_connection_timeout": "Tor connection timeout", "tor_experimental": "This is an experimental feature, not all connections made from Cake Wallet support Tor routing - some connections may use clearnet, in order to fully route app traffic use Tor with VPN mode.", @@ -1105,13 +1105,11 @@ "widgets_seed": "Seed", "wouoldLikeToConnect": "would like to connect", "write_down_backup_password": "Please write down your backup password, which is used for the import of your backup files.", - "xlm_extra_info": "Please don’t forget to specify the Memo ID while sending the XLM transaction for the exchange", "xmr_available_balance": "Available Balance", "xmr_full_balance": "Full Balance", "xmr_hidden": "Hidden", "xmr_to_error": "XMR.TO error", "xmr_to_error_description": "Invalid amount. Maximum limit 8 digits after the decimal point", - "xrp_extra_info": "Please don’t forget to specify the Destination Tag while sending the XRP transaction for the exchange", "yat": "Yat", "yat_address": "Yat Address", "yat_alert_content": "Cake Wallet users can now send and receive all their favorite currencies with a one-of-a-kind emoji-based username.", diff --git a/res/values/strings_es.arb b/res/values/strings_es.arb index 1d5d3ed8b..57d704700 100644 --- a/res/values/strings_es.arb +++ b/res/values/strings_es.arb @@ -357,6 +357,7 @@ "event": "Evento", "events": "Eventos", "exchange": "Intercambiar", + "exchange_extra_info": "No olvide especificar la nota o la identificación adicional al enviar esta transacción para el intercambio", "exchange_incorrect_current_wallet_for_xmr": "Si desea intercambiar XMR desde su balance de Monero en Cake Wallet, primero cambie a su billetera de Monero.", "exchange_new_template": "Nueva plantilla", "exchange_provider_unsupported": "¡${providerName} ya no es compatible!", @@ -933,7 +934,6 @@ "token_name": "Nombre del token, por ejemplo: Tether", "token_symbol": "Símbolo de token, por ejemplo: USDT", "tokenID": "IDENTIFICACIÓN", - "ton_extra_info": "No olvide especificar el ID de memo mientras envía la transacción TON para el intercambio", "tor_connection": "conexión tor", "tor_connection_timeout": "Tiempo de espera de conexión de Tor", "tor_experimental": "Esta es una característica experimental, no todas las conexiones hechas desde Cake Wallet soportan el enrutamiento por Tor. Algunas conexiones pueden usar el Internet normal. Para enrutar completamente el tráfico de la aplicación use Tor con el modo VPN.", @@ -1106,13 +1106,11 @@ "widgets_seed": "Semilla", "wouoldLikeToConnect": "quisiera conectar", "write_down_backup_password": "Escribe su contraseña de respaldo, que se utiliza para la importación de sus archivos de respaldo.", - "xlm_extra_info": "No olvides especificar el ID de nota al enviar la transacción XLM para el intercambio", "xmr_available_balance": "Saldo disponible", "xmr_full_balance": "Balance total", "xmr_hidden": "Oculto", "xmr_to_error": "Error de XMR.TO", "xmr_to_error_description": "Monto invalido. Límite máximo de 8 dígitos después del punto decimal", - "xrp_extra_info": "No olvides especificar la etiqueta de destino al enviar la transacción XRP para el intercambio", "yat": "Yat", "yat_address": "Dirección de Yat", "yat_alert_content": "Los usuarios de Cake Wallet ahora pueden enviar y recibir todas sus monedas favoritas con un nombre de usuario único basado en emoji.", @@ -1129,4 +1127,4 @@ "you_will_send": "Convertir de", "youCanGoBackToYourDapp": "Puedes volver a tu dapp ahora", "yy": "YY" -} +} \ No newline at end of file diff --git a/res/values/strings_fr.arb b/res/values/strings_fr.arb index 702d7cd15..6262e179b 100644 --- a/res/values/strings_fr.arb +++ b/res/values/strings_fr.arb @@ -357,6 +357,7 @@ "event": "Événement", "events": "Événements", "exchange": "Acheter / Vendre", + "exchange_extra_info": "N'oubliez pas de spécifier le mémo ou l'identifiant supplémentaire lors de l'envoi de cette transaction pour l'échange", "exchange_incorrect_current_wallet_for_xmr": "Si vous souhaitez échanger des XMR depuis le solde Monero de votre Cake Wallet, veuillez d'abord passer à votre portefeuille Monero.", "exchange_new_template": "Nouveau modèle d'échange", "exchange_provider_unsupported": "${providerName} n'est plus pris en charge !", @@ -932,7 +933,6 @@ "token_name": "Nom du token, par exemple : Tether", "token_symbol": "Symbole de token, par exemple : USDT", "tokenID": "IDENTIFIANT", - "ton_extra_info": "N'oubliez pas de spécifier l'identification de la note lors de l'envoi de la transaction TON pour l'échange", "tor_connection": "Connexion Tor", "tor_connection_timeout": "Tor Connection Timeout", "tor_experimental": "Il s'agit d'une caractéristique expérimentale, toutes les connexions faites à partir du portefeuille du portefeuille de gâteaux TOR ROUTING - Certaines connexions peuvent utiliser ClearNet, afin d'achever entièrement le trafic d'application Utiliser TOR avec le mode VPN.", @@ -1104,13 +1104,11 @@ "widgets_seed": "Phrase secrète (seed)", "wouoldLikeToConnect": "je voudrais me connecter", "write_down_backup_password": "Merci d'écrire votre mot de passe de sauvegarde, vous en aurez besoin lors de la relecture de vos fichiers de sauvegarde.", - "xlm_extra_info": "Merci de ne pas oublier de spécifier l'ID de mémo lors de l'envoi de la transaction XLM de l'échange", "xmr_available_balance": "Solde Disponible", "xmr_full_balance": "Solde Total", "xmr_hidden": "Caché", "xmr_to_error": "Erreur XMR.TO", "xmr_to_error_description": "Montant invalide. La partie décimale doit contenir au plus 8 chiffres", - "xrp_extra_info": "Merci de ne pas oublier de spécifier le tag de destination lors de l'envoi de la transaction XRP de l'échange", "yat": "Yat", "yat_address": "Adresse Yat", "yat_alert_content": "Les utilisateurs de Cake Wallet peuvent maintenant envoyer et recevoir leurs monnaies favorites avec un utilisateur unique en son genre basé sur les emojis.", diff --git a/res/values/strings_ha.arb b/res/values/strings_ha.arb index 0b3cdbd1d..b7fa3a150 100644 --- a/res/values/strings_ha.arb +++ b/res/values/strings_ha.arb @@ -357,6 +357,7 @@ "event": "Lamarin", "events": "Abubuwan da suka faru", "exchange": "Canji", + "exchange_extra_info": "Don Allah kar a manta su saka memba ko karin ID yayin aika wannan ma'amalar don musayar", "exchange_incorrect_current_wallet_for_xmr": "Idan kana son canza XMR daga walat ɗin Bed Wallet ɗinka, da fatan za a canza zuwa walat ɗinku na Monero.", "exchange_new_template": "Sabon template", "exchange_provider_unsupported": "${providerName}", @@ -934,7 +935,6 @@ "token_name": "Alamar sunan misali: Tether", "token_symbol": "Alamar alama misali: USDT", "tokenID": "ID", - "ton_extra_info": "Don Allah kar a manta su saka ID na Memo yayin aikawa da ma'amala don musayar", "tor_connection": "Tor haɗin gwiwa", "tor_connection_timeout": "A lokacin Tor Haɗin", "tor_experimental": "Wannan fasalin gwaji ne, ba duk haɗin da aka yi ba daga Wall Wall Wall Walling goyon baya Tor Routing - don cikakken amfani da hanyar zirga-zirga amfani da tor tare da yanayin vpn.", @@ -1107,13 +1107,11 @@ "widgets_seed": "iri", "wouoldLikeToConnect": "ina son haɗi", "write_down_backup_password": "Da fatan za a rubuta kalmar sirrin ajiyar ku, wacce ake amfani da ita don shigo da fayilolin ajiyar ku.", - "xlm_extra_info": "Don Allah kar a manta da saka Memo ID yayin aika ma'amalar XLM don musayar", "xmr_available_balance": "Akwai Ma'auni", "xmr_full_balance": "Cikakken Ma'auni", "xmr_hidden": "Boye", "xmr_to_error": "XMR.TO kuskure", "xmr_to_error_description": "Adadin ba shi da inganci. Maksimum ɗaura 8 digiri bayan decimal point", - "xrp_extra_info": "Don Allah kar a manta da saka alamar Ƙaddamarwa yayin aika ma'amalar XRP don musayar", "yat": "Yat", "yat_address": "Yat Address", "yat_alert_content": "Masu amfani da Wallet ɗin Cake yanzu za su iya aikawa da karɓar duk kuɗin da suka fi so tare da sunan mai amfani na tushen emoji iri ɗaya.", diff --git a/res/values/strings_hi.arb b/res/values/strings_hi.arb index c8afe7792..7f7021821 100644 --- a/res/values/strings_hi.arb +++ b/res/values/strings_hi.arb @@ -357,6 +357,7 @@ "event": "आयोजन", "events": "आयोजन", "exchange": "अदला-बदली", + "exchange_extra_info": "कृपया एक्सचेंज के लिए इस लेनदेन को भेजते समय मेमो या अतिरिक्त आईडी निर्दिष्ट करना न भूलें", "exchange_incorrect_current_wallet_for_xmr": "यदि आप अपने केक वॉलेट मोनेरो बैलेंस से XMR को स्वैप करना चाहते हैं, तो कृपया पहले अपने मोनेरो वॉलेट पर स्विच करें।", "exchange_new_template": "नया टेम्पलेट", "exchange_provider_unsupported": "${providerName} अब समर्थित नहीं है!", @@ -934,7 +935,6 @@ "token_name": "टोकन नाम जैसे: टीथर", "token_symbol": "टोकन प्रतीक जैसे: यूएसडीटी", "tokenID": "पहचान", - "ton_extra_info": "कृपया एक्सचेंज के लिए टन लेनदेन भेजते समय मेमो आईडी निर्दिष्ट करना न भूलें", "tor_connection": "टोर कनेक्शन", "tor_connection_timeout": "टोर कनेक्शन टाइमआउट", "tor_experimental": "यह एक प्रायोगिक विशेषता है, केक वॉलेट सपोर्ट टोर रूटिंग से किए गए सभी कनेक्शन नहीं - कुछ कनेक्शन क्लीयरनेट का उपयोग कर सकते हैं, ताकि वीपीएन मोड के साथ ऐप ट्रैफिक का उपयोग पूरी तरह से रूट करने के लिए हो।", @@ -1106,13 +1106,11 @@ "widgets_seed": "बीज", "wouoldLikeToConnect": "जुड़ना चाहेंगे", "write_down_backup_password": "कृपया अपना बैकअप पासवर्ड लिखें, जिसका उपयोग आपकी बैकअप फ़ाइलों के आयात के लिए किया जाता है।", - "xlm_extra_info": "एक्सचेंज के लिए XLM ट्रांजेक्शन भेजते समय मेमो आईडी निर्दिष्ट करना न भूलें", "xmr_available_balance": "उपलब्ध शेष राशि", "xmr_full_balance": "पूरा संतुलन", "xmr_hidden": "छिपा हुआ", "xmr_to_error": "XMR.TO त्रुटि", "xmr_to_error_description": "अवैध राशि। दशमलव बिंदु के बाद अधिकतम सीमा 8 अंक", - "xrp_extra_info": "एक्सचेंज के लिए एक्सआरपी लेनदेन भेजते समय कृपया गंतव्य टैग निर्दिष्ट करना न भूलें", "yat": "Yat", "yat_address": "Yat पता", "yat_alert_content": "Cake Wallet उपयोगकर्ता अब अपनी सभी पसंदीदा मुद्राओं को एक-एक तरह के इमोजी-आधारित उपयोगकर्ता नाम के साथ भेज और प्राप्त कर सकते हैं।", diff --git a/res/values/strings_hr.arb b/res/values/strings_hr.arb index 2566c9182..29e079cda 100644 --- a/res/values/strings_hr.arb +++ b/res/values/strings_hr.arb @@ -357,6 +357,7 @@ "event": "Događaj", "events": "Događaji", "exchange": "Razmjena", + "exchange_extra_info": "Ne zaboravite navesti dopis ili dodatni ID dok šaljete ovu transakciju na razmjenu", "exchange_incorrect_current_wallet_for_xmr": "Ako želite zamijeniti XMR iz vašeg novčanika za kolač Monero, prvo se prebacite na svoj novčanik Monero.", "exchange_new_template": "Novi predložak", "exchange_provider_unsupported": "${providerName} više nije podržan!", @@ -932,7 +933,6 @@ "token_name": "Naziv tokena npr.: Tether", "token_symbol": "Simbol tokena npr.: USDT", "tokenID": "iskaznica", - "ton_extra_info": "Ne zaboravite navesti ID memorandu", "tor_connection": "Tor veza", "tor_connection_timeout": "TOR TIMPOUCEN", "tor_experimental": "Ovo je eksperimentalna značajka, nisu sve veze napravljene od podrške za kolače za torte - neke veze mogu koristiti ClearNet, kako bi se u potpunosti usmjerio na APP promet s TOR -om s VPN načinom rada.", @@ -1104,13 +1104,11 @@ "widgets_seed": "pristupnog izraza", "wouoldLikeToConnect": "želio bi se povezati", "write_down_backup_password": "Molimo zapišite svoju lozinku za sigurnosnu kopiju koja se koristi za uvoz datoteka sigurnosne kopije.", - "xlm_extra_info": "Molimo ne zaboravite navesti memo ID prilikom slanja XLM transakcije na razmjenu", "xmr_available_balance": "Raspoloživ iznos", "xmr_full_balance": "Ukupan iznos", "xmr_hidden": "Sakriven", "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", - "xrp_extra_info": "Molimo ne zaboravite navesti odredišnu oznaku prilikom slanja XRP transakcije na razmjenu", "yat": "Yat", "yat_address": "Yat adresa", "yat_alert_content": "Korisnici Cake Wallet sada mogu slati i primati sve svoje omiljene valute s jedinstvenim korisničkim imenom na temelju emojija.", diff --git a/res/values/strings_hy.arb b/res/values/strings_hy.arb index ed49e4c47..8ff77aef2 100644 --- a/res/values/strings_hy.arb +++ b/res/values/strings_hy.arb @@ -357,6 +357,7 @@ "event": "Իրադարձություն", "events": "Իրադարձություններ", "exchange": "Փոխանակում", + "exchange_extra_info": "Խնդրում ենք մի մոռացեք նշել հուշագիրը կամ լրացուցիչ ID- ն, այս գործարքը փոխանակման համար ուղարկելիս", "exchange_incorrect_current_wallet_for_xmr": "Եթե ​​ցանկանում եք փոխանակել XMR ձեր տորթի դրամապանակից Monero Relandal- ից, խնդրում ենք նախ անցնել ձեր Monero դրամապանակին:", "exchange_new_template": "Նոր տեսակ", "exchange_provider_unsupported": "${providerName} այլևս չի ապահովվում", @@ -930,7 +931,6 @@ "token_name": "Token-ի անուն, օրինակ՝ Tether", "token_symbol": "Token-ի նշան, օրինակ՝ USDT", "tokenID": "ID", - "ton_extra_info": "Խնդրում ենք մի մոռացեք նշել MEMO ID- ն, երբ փոխանակման համար տոննա գործարքը ուղարկեք", "tor_connection": "Tor կապ", "tor_connection_timeout": "Tor կապի ժամկետ", "tor_experimental": "Սա փորձարարական առանձնահատկություն է, ոչ բոլոր կապերը տորթ դրամապանակների աջակցության համար", @@ -1102,13 +1102,11 @@ "widgets_seed": "Սերմ", "wouoldLikeToConnect": "ցանկանում է միանալ", "write_down_backup_password": "Խնդրում ենք գրանցել ձեր կրկնօրինակի գաղտնաբառը, որը օգտագործվում է կրկնօրինակ ֆայլերի ներմուծման համար։", - "xlm_extra_info": "Խնդրում ենք չմոռանալ նշել Memo ID-ն երբ ուղարկում եք XLM գործարք փոխանակման համար", "xmr_available_balance": "Հասանելի մնացորդ", "xmr_full_balance": "Լրիվ մնացորդ", "xmr_hidden": "Թաքնված", "xmr_to_error": "XMR.TO սխալ", "xmr_to_error_description": "Սխալ գումար։ Առավելագույն սահմանը 8 թվանշան է կետից հետո", - "xrp_extra_info": "Խնդրում ենք չմոռանալ նշել Destination Tag-ը երբ ուղարկում եք XRP գործարք փոխանակման համար", "yat": "Yat", "yat_address": "Yat Հասցե", "yat_alert_content": "Cake Wallet-ի օգտատերերը այժմ կարող են ուղարկել և ստանալ իրենց սիրած արժույթները emoji-ների հիման վրա օգտագործվող անունով։", diff --git a/res/values/strings_id.arb b/res/values/strings_id.arb index b18cdc4a8..90bb88bb9 100644 --- a/res/values/strings_id.arb +++ b/res/values/strings_id.arb @@ -357,6 +357,7 @@ "event": "Peristiwa", "events": "Acara", "exchange": "Menukarkan", + "exchange_extra_info": "Harap jangan lupa untuk menentukan memo atau ID tambahan saat mengirim transaksi ini untuk pertukaran", "exchange_incorrect_current_wallet_for_xmr": "Jika Anda ingin bertukar XMR dari Saldo Monero Dompet Kue Anda, silakan beralih ke Monero Wallet Anda terlebih dahulu.", "exchange_new_template": "Template baru", "exchange_provider_unsupported": "${providerName} tidak lagi didukung!", @@ -935,7 +936,6 @@ "token_name": "Nama token misalnya: Tether", "token_symbol": "Simbol token misalnya: USDT", "tokenID": "PENGENAL", - "ton_extra_info": "Harap jangan lupa untuk menentukan ID memo saat mengirim transaksi ton untuk pertukaran", "tor_connection": "koneksi Tor", "tor_connection_timeout": "Tor Connection Timeout", "tor_experimental": "Ini adalah fitur eksperimental, tidak semua koneksi yang terbuat dari dukungan dompet kue untuk routing - beberapa koneksi dapat menggunakan clearnet, untuk sepenuhnya merutekan aplikasi lalu lintas menggunakan untuk mode VPN.", @@ -1107,13 +1107,11 @@ "widgets_seed": "Biji", "wouoldLikeToConnect": "ingin terhubung", "write_down_backup_password": "Silakan menuliskan kata sandi cadangan Anda, yang digunakan untuk impor file cadangan Anda.", - "xlm_extra_info": "Jangan lupa untuk menentukan ID Memo saat mengirim transaksi XLM untuk pertukaran", "xmr_available_balance": "Saldo Tersedia", "xmr_full_balance": "Saldo Penuh", "xmr_hidden": "Tersembunyi", "xmr_to_error": "XMR.TO error", "xmr_to_error_description": "Jumlah tidak valid. Batas maksimal 8 digit setelah koma", - "xrp_extra_info": "Jangan lupa untuk menentukan Tag Tujuan saat mengirim transaksi XRP untuk pertukaran", "yat": "Yat", "yat_address": "Alamat Yat", "yat_alert_content": "Pengguna Cake Wallet sekarang dapat mengirim dan menerima semua mata uang favorit mereka dengan nama pengguna berbasis emoji yang satu-of-a-kind.", diff --git a/res/values/strings_it.arb b/res/values/strings_it.arb index 33698fee8..d8590ced3 100644 --- a/res/values/strings_it.arb +++ b/res/values/strings_it.arb @@ -357,6 +357,7 @@ "event": "Evento", "events": "Eventi", "exchange": "Scambio", + "exchange_extra_info": "Non dimenticare di specificare la memo o l'ID extra durante l'invio di questa transazione per lo scambio", "exchange_incorrect_current_wallet_for_xmr": "Se vuoi scambiare XMR dal tuo portafoglio Cake Wallet, devi prima passare al portafoglio Monero.", "exchange_new_template": "Nuovo modello", "exchange_provider_unsupported": "${providerName} non è più supportato!", @@ -933,7 +934,6 @@ "token_name": "Nome del token, ad esempio: Tether", "token_symbol": "Simbolo del token, ad esempio: USDT", "tokenID": "ID", - "ton_extra_info": "Non dimenticare di specificare l'ID memo durante l'invio della transazione Ton per lo scambio", "tor_connection": "Connessione Tor", "tor_connection_timeout": "Timeout di connessione TOR", "tor_experimental": "Questa è una funzionalità sperimentale, non tutte le connessioni realizzate con il supporto per il portafoglio di torta per routing - alcune connessioni possono utilizzare ClearNet, al fine di instradare completamente il traffico di app per l'uso del traffico con la modalità VPN.", @@ -1107,13 +1107,11 @@ "widgets_seed": "Seme", "wouoldLikeToConnect": "vorrei connettermi", "write_down_backup_password": "Trascrivi la password del backup, che è usata per importare i tuoi file di backup.", - "xlm_extra_info": "Ricorda di indicare il Memo ID quando invii la transazione XLM per lo scambio", "xmr_available_balance": "Saldo Disponibile", "xmr_full_balance": "Saldo Totale", "xmr_hidden": "Nascosto", "xmr_to_error": "Errore XMR.TO", "xmr_to_error_description": "Importo invalido. Il limite massimo è 8 cifre dopo il punto decimale", - "xrp_extra_info": "Ricorda di indicare il Tag di Destinazione quando invii una transazione XRP per lo scambio", "yat": "Yat", "yat_address": "Indirizzo Yat", "yat_alert_content": "Gli utenti di Cake Wallet possono ora inviare e ricevere tutte le loro valute preferite con un nome utente unico basato su emoji.", diff --git a/res/values/strings_ja.arb b/res/values/strings_ja.arb index 7baa5eefa..0157c2054 100644 --- a/res/values/strings_ja.arb +++ b/res/values/strings_ja.arb @@ -357,6 +357,7 @@ "event": "イベント", "events": "イベント", "exchange": "交換", + "exchange_extra_info": "Exchangeのためにこのトランザクションを送信する際に、メモまたは追加IDを指定することを忘れないでください", "exchange_incorrect_current_wallet_for_xmr": "XMRをケーキウォレットモネロバランスから交換したい場合は、最初にMoneroウォレットに切り替えてください。", "exchange_new_template": "新しいテンプレート", "exchange_provider_unsupported": "${providerName}はサポートされなくなりました!", @@ -933,7 +934,6 @@ "token_name": "トークン名 例: Tether", "token_symbol": "トークンシンボル 例: USDT", "tokenID": "ID", - "ton_extra_info": "Exchangeのトントランザクションを送信しながら、メモIDを指定することを忘れないでください", "tor_connection": "Tor接続", "tor_connection_timeout": "TOR接続タイムアウト", "tor_experimental": "これは実験的な機能であり、ケーキウォレットサポートTORルーティングから作成されたすべての接続ではありません。一部の接続では、APPトラフィックをVPNモードで完全にルーティングするために、ClearNetを使用する場合があります。", @@ -1105,13 +1105,11 @@ "widgets_seed": "シード", "wouoldLikeToConnect": "接続したいです", "write_down_backup_password": "バックアップファイルのインポートに使用されるバックアップパスワードを書き留めてください。", - "xlm_extra_info": "交換用のXLMトランザクションを送信するときに、メモIDを指定することを忘れないでください", "xmr_available_balance": "利用可能残高", "xmr_full_balance": "フルバランス", "xmr_hidden": "非表示", "xmr_to_error": "XMR.TOエラー", "xmr_to_error_description": "金額が無効です。 小数点以下8桁の上限", - "xrp_extra_info": "取引所のXRPトランザクションを送信するときに、宛先タグを指定することを忘れないでください", "yat": "Yat", "yat_address": "Yat住所", "yat_alert_content": "Cake Walletユーザーは、独自の絵文字ベースのユーザー名を使用して、お気に入りのすべての通貨を送受信できるようになりました。", diff --git a/res/values/strings_ko.arb b/res/values/strings_ko.arb index 51e53a705..d7138fa9c 100644 --- a/res/values/strings_ko.arb +++ b/res/values/strings_ko.arb @@ -357,6 +357,7 @@ "event": "이벤트", "events": "이벤트", "exchange": "교환", + "exchange_extra_info": "교환을 위해이 거래를 보내는 동안 메모 또는 추가 ID를 지정하는 것을 잊지 마십시오.", "exchange_incorrect_current_wallet_for_xmr": "Cake Wallet 모네로 잔액에서 XMR을 스왑하려면 먼저 모네로 지갑으로 전환하세요.", "exchange_new_template": "새 템플릿", "exchange_provider_unsupported": "${providerName}은(는) 더 이상 지원되지 않습니다!", @@ -933,7 +934,6 @@ "token_name": "토큰 이름 (예: Tether)", "token_symbol": "토큰 심볼 (예: USDT)", "tokenID": "ID", - "ton_extra_info": "교환을 위해 TON 트랜잭션을 보내는 동안 메모 ID를 지정하는 것을 잊지 마십시오.", "tor_connection": "Tor 연결", "tor_connection_timeout": "Tor 연결 시간 초과", "tor_experimental": "이것은 케이크 지갑 지원 Tor 라우팅으로 만든 모든 연결을 실험적인 기능입니다. 일부 연결은 Clearnet을 사용할 수 있습니다.", @@ -1105,13 +1105,11 @@ "widgets_seed": "시드", "wouoldLikeToConnect": "연결하고 싶습니다", "write_down_backup_password": "백업 파일 가져오기에 사용되는 백업 비밀번호를 적어두세요.", - "xlm_extra_info": "교환을 위해 XLM 트랜잭션을 보낼 때 메모 ID를 지정하는 것을 잊지 마세요.", "xmr_available_balance": "사용 가능 잔액", "xmr_full_balance": "전체 잔액", "xmr_hidden": "숨김", "xmr_to_error": "XMR.TO 오류", "xmr_to_error_description": "잘못된 금액입니다. 소수점 이하 최대 8자리", - "xrp_extra_info": "교환을 위해 XRP 트랜잭션을 보낼 때 목적지 태그를 지정하는 것을 잊지 마세요.", "yat": "Yat", "yat_address": "Yat 주소", "yat_alert_content": "Cake Wallet 사용자는 이제 고유한 이모지 기반 사용자 이름으로 좋아하는 모든 통화를 보내고 받을 수 있습니다.", diff --git a/res/values/strings_my.arb b/res/values/strings_my.arb index 43ac42edd..a358f71d0 100644 --- a/res/values/strings_my.arb +++ b/res/values/strings_my.arb @@ -357,6 +357,7 @@ "event": "ပွဲ", "events": "အဲ့ဒါနဲ့", "exchange": "လဲလှယ်", + "exchange_extra_info": "ငွေလဲလှယ်မှုအတွက်ဤငွေပေးငွေယူကိုပေးပို့စဉ်မှတ်စုတိုသို့မဟုတ်အပို ID ကိုသတ်မှတ်ရန်မမေ့ပါနှင့်", "exchange_incorrect_current_wallet_for_xmr": "အကယ်. သင်သည် XMR ကိုသင်၏ကိတ်မုန့် Monero Balance မှ Swap ကိုလဲလှယ်လိုပါကသင်၏ Monero Wallet ကိုပထမဆုံးအကြိမ်ပြောင်းပါ။", "exchange_new_template": "ပုံစံအသစ်", "exchange_provider_unsupported": "${providerName} မရှိတော့ပါ!", @@ -932,7 +933,6 @@ "token_name": "တိုကင်အမည် ဥပမာ- Tether", "token_symbol": "တိုကင်သင်္ကေတ ဥပမာ- USDT", "tokenID": "အမှတ်သညာ", - "ton_extra_info": "ငွေလဲလှယ်မှုအတွက်တန်ပြန်ငွေပေးငွေယူကိုပို့နေစဉ် Memo ID ကိုသတ်မှတ်ရန်မမေ့ပါနှင့်", "tor_connection": "Tor ချိတ်ဆက်မှု", "tor_connection_timeout": "Tor Connection အချိန်ကုန်", "tor_experimental": "၎င်းသည်စမ်းသပ်အင်္ဂါရပ်တစ်ခုဖြစ်ပြီးကိတ်မုန့်ပိုက်ဆံအိတ်ကိုပံ့ပိုးပေးသော Tor Routing မှပြုလုပ်သောဆက်သွယ်မှုအားလုံးမှာ Connections သည် Concernet ကို အသုံးပြု. VPN tor ကို VPN Mode ဖြင့် Tor ကို အသုံးပြု. Concernet ကိုသုံးနိုင်သည်။", @@ -1104,13 +1104,11 @@ "widgets_seed": "မျိုးစေ့", "wouoldLikeToConnect": "ချိတ်ဆက်ချင်ပါတယ်။", "write_down_backup_password": "သင်၏ အရန်ဖိုင်များကို တင်သွင်းရန်အတွက် အသုံးပြုသည့် သင်၏ အရန်စကားဝှက်ကို ချရေးပါ။", - "xlm_extra_info": "လဲလှယ်မှုအတွက် XLM ငွေလွှဲပို့နေစဉ် Memo ID ကို သတ်မှတ်ရန် မမေ့ပါနှင့်", "xmr_available_balance": "လက်ကျန်ငွေ ရရှိနိုင်", "xmr_full_balance": "မျှတမှု အပြည့်အစုံ", "xmr_hidden": "ဝှက်ထားသည်။", "xmr_to_error": "XMR.TO အမှား", "xmr_to_error_description": "ပမာဏ မမှန်ပါ။ ဒဿမအမှတ်ပြီးနောက် ဂဏန်း ၈ လုံးတွင် အများဆုံးကန့်သတ်ချက်", - "xrp_extra_info": "လဲလှယ်မှုအတွက် XRP ငွေလွှဲပို့နေစဉ် Destination Tag ကို သတ်မှတ်ရန် မမေ့ပါနှင့်", "yat": "ယတ်", "yat_address": "Yat လိပ်စာ", "yat_alert_content": "Cake Wallet အသုံးပြုသူများသည် တစ်မျိုးတည်းသော အီမိုဂျီအခြေခံအသုံးပြုသူအမည်ဖြင့် ၎င်းတို့၏ စိတ်ကြိုက်ငွေကြေးအားလုံးကို ပေးပို့နိုင်ပါပြီ။", diff --git a/res/values/strings_nl.arb b/res/values/strings_nl.arb index fe96778d1..2d760997c 100644 --- a/res/values/strings_nl.arb +++ b/res/values/strings_nl.arb @@ -357,6 +357,7 @@ "event": "Evenement", "events": "Evenementen", "exchange": "Aandelenbeurs", + "exchange_extra_info": "Vergeet niet om de memo of extra ID op te geven tijdens het verzenden van deze transactie voor de uitwisseling", "exchange_incorrect_current_wallet_for_xmr": "Als je XMR uit je cake -portemonnee Monero -balans wilt ruilen, schakel dan eerst over naar je Monero -portemonnee.", "exchange_new_template": "Nieuwe sjabloon", "exchange_provider_unsupported": "${providerName} wordt niet langer ondersteund!", @@ -932,7 +933,6 @@ "token_name": "Tokennaam bijv.: Tether", "token_symbol": "Tokensymbool bijv.: USDT", "tokenID": "ID kaart", - "ton_extra_info": "Vergeet niet om de memo -ID op te geven tijdens het verzenden van de ton -transactie voor de uitwisseling", "tor_connection": "Tor-verbinding", "tor_connection_timeout": "Tor -verbindingstime -out", "tor_experimental": "Dit is een experimentele functie, niet alle verbindingen gemaakt van Cake Wallet Support Tor Routing - Sommige verbindingen kunnen ClearNet gebruiken, om app -verkeer volledig te routeren Tor met VPN -modus.", @@ -1105,13 +1105,11 @@ "widgets_seed": "Zaad", "wouoldLikeToConnect": "wil graag verbinden", "write_down_backup_password": "Noteer uw back-upwachtwoord, dat wordt gebruikt voor het importeren van uw back-upbestanden.", - "xlm_extra_info": "Vergeet niet om de Memo-ID op te geven tijdens het verzenden van de XLM-transactie voor de uitwisseling", "xmr_available_balance": "Beschikbaar saldo", "xmr_full_balance": "Volledig saldo", "xmr_hidden": "Verborgen", "xmr_to_error": "XMR.TO-fout", "xmr_to_error_description": "Ongeldige hoeveelheid. Maximaal 8 cijfers achter de komma", - "xrp_extra_info": "Vergeet niet om de Destination Tag op te geven tijdens het verzenden van de XRP-transactie voor de uitwisseling", "yat": "Yat", "yat_address": "Yat-adres", "yat_alert_content": "Cake Wallet-gebruikers kunnen nu al hun favoriete valuta's verzenden en ontvangen met een unieke emoji-gebaseerde gebruikersnaam.", diff --git a/res/values/strings_pl.arb b/res/values/strings_pl.arb index 0fe61f3bd..7145b7fb1 100644 --- a/res/values/strings_pl.arb +++ b/res/values/strings_pl.arb @@ -357,6 +357,7 @@ "event": "Wydarzenie", "events": "Wydarzenia", "exchange": "Giełda", + "exchange_extra_info": "Nie zapomnij określić notatki lub dodatkowego identyfikatora podczas wysyłania tej transakcji na giełdę", "exchange_incorrect_current_wallet_for_xmr": "Jeśli chcesz zamienić XMR z salda Monero, najpierw przejdź na portfel Monero.", "exchange_new_template": "Nowy szablon wymiany", "exchange_provider_unsupported": "${providerName} nie jest już obsługiwany!", @@ -932,7 +933,6 @@ "token_name": "Nazwa tokena, np.: Tether", "token_symbol": "Symbol tokena np.: USDT", "tokenID": "ID", - "ton_extra_info": "Nie zapomnij określić identyfikatora notatki podczas wysyłania transakcji TON dla wymiany", "tor_connection": "Połączenie przez Tor", "tor_connection_timeout": "Tor Connection Timeout", "tor_experimental": "Jest to funkcja eksperymentalna. Nie wszystkie połączenia wykonane z Cake Wallet korzystają z Tor, niektóre połączenia mogą korzystać z Clearnet, aby w pełni przekierować ruch skorzystaj z Tor w trybie VPN.", @@ -1104,13 +1104,11 @@ "widgets_seed": "Seed", "wouoldLikeToConnect": "chciałbym się połączyć", "write_down_backup_password": "Zapisz swoje hasło kopii zapasowej, które jest używane do importowania plików kopii zapasowych.", - "xlm_extra_info": "Nie zapomnij podać dodatkowego identyfikatora (memo) podczas wysyłania transakcji XLM do wymiany", "xmr_available_balance": "Dostępne środki", "xmr_full_balance": "Pełne saldo", "xmr_hidden": "Ukryte", "xmr_to_error": "Błąd XMR.TO", "xmr_to_error_description": "Nieprawidłowa kwota. Maksymalny limit to 8 cyfr po przecinku", - "xrp_extra_info": "Nie zapomnij podać tagu docelowego podczas wysyłania transakcji XRP do wymiany", "yat": "Yat", "yat_address": "Adres Yat", "yat_alert_content": "Użytkownicy Cake Wallet mogą teraz wysyłać i odbierać wszystkie swoje ulubione waluty za pomocą jedynej w swoim rodzaju nazwy użytkownika opartej na emoji.", diff --git a/res/values/strings_pt.arb b/res/values/strings_pt.arb index b265e71b9..e87cf566d 100644 --- a/res/values/strings_pt.arb +++ b/res/values/strings_pt.arb @@ -357,6 +357,7 @@ "event": "Evento", "events": "Eventos", "exchange": "Intercâmbio", + "exchange_extra_info": "Por favor, não se esqueça de especificar o memorando ou o ID extra ao enviar esta transação para a troca", "exchange_incorrect_current_wallet_for_xmr": "Se você deseja trocar o XMR do balanço da carteira de bolo, mude para a sua carteira Monero primeiro.", "exchange_new_template": "Novo modelo", "exchange_provider_unsupported": "${providerName} não é mais suportado!", @@ -934,7 +935,6 @@ "token_name": "Nome do token, por exemplo: Tether", "token_symbol": "Símbolo de token, por exemplo: USDT", "tokenID": "EU IA", - "ton_extra_info": "Não se esqueça de especificar o ID do memorando ao enviar a transação TON para a troca", "tor_connection": "Conexão Tor", "tor_connection_timeout": "Tor de tempo limite da conexão", "tor_experimental": "Esse é um recurso experimental, nem todas as conexões feitas com o suporte para o suporte para a carteira de bolo - algumas conexões podem usar o ClearNet, a fim de rotear totalmente o tráfego de aplicativos TOR com o modo VPN.", @@ -1107,13 +1107,11 @@ "widgets_seed": "Semente", "wouoldLikeToConnect": "gostaria de me conectar", "write_down_backup_password": "Anote sua senha de backup, que será usada para importar seus arquivos de backup.", - "xlm_extra_info": "Não se esqueça de especificar o Memo ID ao enviar a transação XLM para a troca", "xmr_available_balance": "Saldo disponível", "xmr_full_balance": "Saldo total", "xmr_hidden": "Esconder saldo", "xmr_to_error": "Erro XMR.TO", "xmr_to_error_description": "Montante inválido. Limite máximo de 8 dígitos após o ponto decimal", - "xrp_extra_info": "Não se esqueça de especificar a etiqueta de destino ao enviar a transação XRP para a troca", "yat": "Yat", "yat_address": "Endereço Yat", "yat_alert_content": "Os usuários da Cake Wallet agora podem enviar e receber todas as suas moedas favoritas com um nome de usuário baseado em emoji único.", diff --git a/res/values/strings_ru.arb b/res/values/strings_ru.arb index bc03c3e1e..fef47e56c 100644 --- a/res/values/strings_ru.arb +++ b/res/values/strings_ru.arb @@ -357,6 +357,7 @@ "event": "Событие", "events": "События", "exchange": "Обмен", + "exchange_extra_info": "Пожалуйста, не забудьте указать меморандум или дополнительный идентификатор при отправке этой транзакции для обмена", "exchange_incorrect_current_wallet_for_xmr": "Если вы хотите поменять XMR с баланса с кошельком для торта Monero, сначала переключитесь на свой кошелек Monero.", "exchange_new_template": "Новый шаблон", "exchange_provider_unsupported": "${providerName} больше не поддерживается!", @@ -933,7 +934,6 @@ "token_name": "Имя токена, например: Tether", "token_symbol": "Символ токена, например: USDT", "tokenID": "ИДЕНТИФИКАТОР", - "ton_extra_info": "Пожалуйста, не забудьте указать идентификатор записки при отправке TON транзакции для обмена", "tor_connection": "Тор соединение", "tor_connection_timeout": "TOR Timeout", "tor_experimental": "Это экспериментальная функция, а не все соединения, сделанные из поддержки TOR для торта - некоторые подключения могут использовать ClearNet, чтобы полностью маршрутироваться с использованием трафика приложений в режиме VPN.", @@ -1105,13 +1105,11 @@ "widgets_seed": "Мнемоническая фраза", "wouoldLikeToConnect": "хотел бы подключиться", "write_down_backup_password": "Запишите пароль резервной копии, который используется для импорта файлов резервных копий.", - "xlm_extra_info": "Не забудьте указать Memo ID (памятка) при отправке транзакции XLM для обмена", "xmr_available_balance": "Доступный баланс", "xmr_full_balance": "Весь баланс", "xmr_hidden": "Скрыто", "xmr_to_error": "Ошибка XMR.TO", "xmr_to_error_description": "Недопустимая сумма. Максимум 8 цифр после десятичной точки", - "xrp_extra_info": "Не забудьте указать целевой тег при отправке транзакции XRP для обмена", "yat": "Yat", "yat_address": "Yat адрес", "yat_alert_content": "Пользователи Cake Wallet теперь могут отправлять и получать криптовалюту при помощи уникального имени пользователя на основе эмодзи.", diff --git a/res/values/strings_th.arb b/res/values/strings_th.arb index c774facc6..d228cd7e6 100644 --- a/res/values/strings_th.arb +++ b/res/values/strings_th.arb @@ -357,6 +357,7 @@ "event": "เหตุการณ์", "events": "กิจกรรม", "exchange": "แลกเปลี่ยน", + "exchange_extra_info": "โปรดอย่าลืมระบุบันทึกหรือรหัสพิเศษในขณะที่ส่งธุรกรรมนี้สำหรับการแลกเปลี่ยน", "exchange_incorrect_current_wallet_for_xmr": "หากคุณต้องการสลับ XMR จาก Cake Wallet Monero Balance โปรดเปลี่ยนไปใช้กระเป๋าเงิน Monero ก่อน", "exchange_new_template": "เทมเพลทใหม่", "exchange_provider_unsupported": "${providerName} ไม่ได้รับการสนับสนุนอีกต่อไป!", @@ -932,7 +933,6 @@ "token_name": "ชื่อโทเค็น เช่น Tether", "token_symbol": "สัญลักษณ์โทเค็น เช่น USDT", "tokenID": "บัตรประจำตัวประชาชน", - "ton_extra_info": "โปรดอย่าลืมระบุรหัสบันทึกในขณะที่ส่งธุรกรรม TON สำหรับการแลกเปลี่ยน", "tor_connection": "การเชื่อมต่อทอร์", "tor_connection_timeout": "หมดเวลาเชื่อมต่อ tor", "tor_experimental": "นี่เป็นคุณสมบัติการทดลองไม่ใช่การเชื่อมต่อทั้งหมดที่ทำจากการรองรับเค้กกระเป๋าเงิน TOR การกำหนดเส้นทาง - การเชื่อมต่อบางอย่างอาจใช้ Clearnet เพื่อกำหนดเส้นทางการจราจรแอพใช้ TOR ด้วยโหมด VPN", @@ -1104,13 +1104,11 @@ "widgets_seed": "ซีด", "wouoldLikeToConnect": "ต้องการเชื่อมต่อ", "write_down_backup_password": "โปรดจดรหัสผ่านสำรองข้อมูลของคุณลงบนกระดาษ ซึ่งจะใช้ในการนำเข้าไฟล์สำรองข้อมูลของคุณ", - "xlm_extra_info": "โปรดอย่าลืมระบุ Memo ID ในขณะที่ส่งธุรกรรม XLM สำหรับการแลกเปลี่ยน", "xmr_available_balance": "ยอดคงเหลือที่สามารถใช้งานได้", "xmr_full_balance": "ยอดคงเหลือแบบเต็ม", "xmr_hidden": "ซ่อน", "xmr_to_error": "ข้อผิดพลาด XMR.TO", "xmr_to_error_description": "จำนวนไม่ถูกต้อง จำกัดขั้นสูง 8 หลักหลังจุดทศนิยม", - "xrp_extra_info": "โปรดอย่าลืมระบุ Destination Tag ในขณะที่ส่งธุรกรรม XRP สำหรับการแลกเปลี่ยน", "yat": "Yat", "yat_address": "ที่อยู่ Yat", "yat_alert_content": "ผู้ใช้งาน Cake Wallet สามารถส่งและรับเหรียญออนไลน์ทุกเหรียญที่ชื่นชอบของพวกเขาได้ง่ายขึ้นด้วยชื่อผู้ใช้งานที่พิเศษที่ระบุด้วยอีโมจิ", diff --git a/res/values/strings_tl.arb b/res/values/strings_tl.arb index e4896c675..b29463aa1 100644 --- a/res/values/strings_tl.arb +++ b/res/values/strings_tl.arb @@ -357,6 +357,7 @@ "event": "Kaganapan", "events": "Mga kaganapan", "exchange": "Palitan", + "exchange_extra_info": "Mangyaring huwag kalimutan na tukuyin ang memo o dagdag na ID habang ipinapadala ang transaksyon na ito para sa palitan", "exchange_incorrect_current_wallet_for_xmr": "Kung nais mong magpalit ng XMR mula sa iyong balanse ng Wallet Monero, mangyaring lumipat sa iyong Monero Wallet muna.", "exchange_new_template": "Bagong template", "exchange_provider_unsupported": "Ang ${providerName} ay hindi na suportado!", @@ -932,7 +933,6 @@ "token_name": "Pangalan ng token, halimbawa: Tether", "token_symbol": "Simbolo ng token, halimbawa: USDT", "tokenID": "ID", - "ton_extra_info": "Mangyaring huwag kalimutan na tukuyin ang memo ID habang nagpapadala ng toneladang transaksyon para sa palitan", "tor_connection": "Koneksyon ng Tor", "tor_connection_timeout": "Oras ng koneksyon sa tor", "tor_experimental": "Ito ay isang pang -eksperimentong tampok, hindi lahat ng mga koneksyon na ginawa mula sa cake ng suporta sa wallet ng tor ruta - ang ilang mga koneksyon ay maaaring gumamit ng clearnet, upang ganap na ruta ang paggamit ng trapiko ng trapiko na may mode na VPN.", @@ -1104,13 +1104,11 @@ "widgets_seed": "Seed", "wouoldLikeToConnect": "gustong kumonekta", "write_down_backup_password": "Mangyaring isulat ang iyong backup na password na ginagamit para sa pag-import ng iyong mga backup na file.", - "xlm_extra_info": "Mangyaring huwag kalimutang tukuyin ang Memo ID habang ipinapadala ang transaksyon sa XLM para sa palitan", "xmr_available_balance": "Magagamit na Balanse", "xmr_full_balance": "Buong Balanse", "xmr_hidden": "Nakatago", "xmr_to_error": "XMR.TO error", "xmr_to_error_description": "Hindi wastong halaga. Maximum�na limitasyon 8 digit pagkatapos ng decimal point", - "xrp_extra_info": "Mangyaring huwag kalimutan na tukuyin ang Destination Tag habang ipinapadala ang transaksyon ng XRP para sa palitan", "yat": "Yat", "yat_address": "Yat Address", "yat_alert_content": "Ang mga gumagamit ng Cake Wallet ay maaari na ngayong magpadala at tumanggap ng lahat ng kanilang mga paboritong pera gamit ang isa sa isang uri ng emoji-based na username.", diff --git a/res/values/strings_tr.arb b/res/values/strings_tr.arb index ba7fcdc05..e3688198f 100644 --- a/res/values/strings_tr.arb +++ b/res/values/strings_tr.arb @@ -357,6 +357,7 @@ "event": "Etkinlik", "events": "Olaylar", "exchange": "Değişme", + "exchange_extra_info": "Bu işlemi borsaya gönderirken lütfen notu veya ekstra kimliği belirtmeyi unutmayın.", "exchange_incorrect_current_wallet_for_xmr": "XMR'yi kek cüzdanı Monero bakiyenizden değiştirmek istiyorsanız, lütfen önce Monero cüzdanınıza geçin.", "exchange_new_template": "Yeni şablon", "exchange_provider_unsupported": "${providerName} artık desteklenmiyor!", @@ -932,7 +933,6 @@ "token_name": "Belirteç adı, örneğin: Tether", "token_symbol": "Jeton sembolü, örneğin: USDT", "tokenID": "İD", - "ton_extra_info": "Lütfen değişim için ton işlemini gönderirken not kimliğini belirtmeyi unutmayın", "tor_connection": "Tor bağlantısı", "tor_connection_timeout": "Tor bağlantı zaman aşımı", "tor_experimental": "Bu deneysel bir özelliktir, kek cüzdanı desteğinden yapılan tüm bağlantılar değil, TOR yönlendirmesinden yapılmıştır - bazı bağlantılar, VPN moduyla uygulama trafik kullanımını tam olarak yönlendirmek için ClearNet kullanabilir.", @@ -1104,13 +1104,11 @@ "widgets_seed": "Tohum", "wouoldLikeToConnect": "bağlanmak istiyorum", "write_down_backup_password": "Lütfen yedekleme dosyasının içe aktarılması için kullanılan yedekleme parolanı not et.", - "xlm_extra_info": "Lütfen takas için XLM işlemi gönderirken Memo ID'yi belirtmeyi unutmayın", "xmr_available_balance": "Kullanılabilir Bakiye", "xmr_full_balance": "Tüm Bakiye", "xmr_hidden": "Gizli", "xmr_to_error": "XMR.TO hatası", "xmr_to_error_description": "Geçersiz tutar. Ondalık noktadan sonra maksimum limit 8 basamaktır", - "xrp_extra_info": "Lütfen takas için XRP işlemi gönderirken Hedef Etiketi (Destination Tag) belirtmeyi unutmayın", "yat": "Yat", "yat_address": "Yat adresi", "yat_alert_content": "Cake Wallet kullanıcıları artık tüm favori koin birimlerini benzersiz emoji tabanlı kullanıcı adıyla gönderebilir ve alabilirler.", diff --git a/res/values/strings_uk.arb b/res/values/strings_uk.arb index e1c6bb7e4..d9fe0391a 100644 --- a/res/values/strings_uk.arb +++ b/res/values/strings_uk.arb @@ -357,6 +357,7 @@ "event": "Подія", "events": "Події", "exchange": "Обмін", + "exchange_extra_info": "Не забудьте вказати пам’ятку або додатковий ідентифікатор під час надсилання цієї транзакції для обміну", "exchange_incorrect_current_wallet_for_xmr": "Якщо ви хочете поміняти XMR зі свого балансу для тортів Monero Balance, спочатку перейдіть на свій гаманець Monero.", "exchange_new_template": "Новий шаблон", "exchange_provider_unsupported": "${providerName} більше не підтримується!", @@ -933,7 +934,6 @@ "token_name": "Назва токена, наприклад: Tether", "token_symbol": "Символ маркера, наприклад: USDT", "tokenID": "ID", - "ton_extra_info": "Не забудьте вказати ідентифікатор пам’яті під час надсилання транзакції TON для обміну", "tor_connection": "Підключення Tor", "tor_connection_timeout": "Тайм -аут підключення TOR", "tor_experimental": "Це експериментальна функція, не всі з'єднання, зроблені з підтримки тортів, що підтримують маршрутизацію - деякі з'єднання можуть використовувати Clearnet, щоб повністю маршрутизувати трафік додатків, використовуючи TOR з режимом VPN.", @@ -1105,13 +1105,11 @@ "widgets_seed": "Мнемонічна фраза", "wouoldLikeToConnect": "хотів би підключитися", "write_down_backup_password": "Запишіть пароль резервної копії, який використовується для імпорту файлів резервних копій.", - "xlm_extra_info": "Будь ласка, не забудьте вказати ідентифікатор пам'ятки під час надсилання транзакції XLM для обміну", "xmr_available_balance": "Доступний баланс", "xmr_full_balance": "Весь баланс", "xmr_hidden": "Приховано", "xmr_to_error": "Помилка XMR.TO", "xmr_to_error_description": "Неприпустима сума. Максимум 8 цифр після десяткової коми", - "xrp_extra_info": "Будь ласка, не забудьте вказати тег призначення під час надсилання XRP-транзакції для обміну", "yat": "Yat", "yat_address": "Yat адреса", "yat_alert_content": "Користувачі Cake Wallet тепер можуть надсилати та отримувати криптовалюту за допомогою унікального імені користувача на основі смайликів.", diff --git a/res/values/strings_ur.arb b/res/values/strings_ur.arb index aac1688f3..f265bd74e 100644 --- a/res/values/strings_ur.arb +++ b/res/values/strings_ur.arb @@ -357,6 +357,7 @@ "event": "ﺐﯾﺮﻘﺗ", "events": "ﺕﺎﺒﯾﺮﻘﺗ", "exchange": "تبادلہ", + "exchange_extra_info": "ایکسچینج کے ل this اس لین دین کو بھیجتے وقت براہ کرم میمو یا اضافی ID کی وضاحت کرنا نہ بھولیں", "exchange_incorrect_current_wallet_for_xmr": "اگر آپ اپنے کیک پرس مونیرو بیلنس سے XMR تبدیل کرنا چاہتے ہیں تو ، براہ کرم پہلے اپنے مونیرو پرس میں جائیں۔", "exchange_new_template": "نیا سانچہ", "exchange_provider_unsupported": "${providerName} اب تعاون نہیں کیا جاتا ہے!", @@ -934,7 +935,6 @@ "token_name": "ٹوکن کا نام جیسے: Tether", "token_symbol": "ٹوکن کی علامت جیسے: USDT", "tokenID": "ID", - "ton_extra_info": "ایکسچینج کے لئے ٹن ٹرانزیکشن بھیجتے وقت براہ کرم میمو آئی ڈی کی وضاحت کرنا نہ بھولیں", "tor_connection": "ﻦﺸﮑﻨﮐ ﺭﻮﭨ", "tor_connection_timeout": "ٹور کنکشن ٹائم آؤٹ", "tor_experimental": "یہ ایک تجرباتی خصوصیت ہے ، کیک پرس پرس سپورٹ ٹور روٹنگ سے بنے تمام رابطے نہیں - کچھ رابطے کلینیٹ کا استعمال کرسکتے ہیں ، تاکہ مکمل طور پر ایپ ٹریفک کو VPN وضع کے ساتھ ٹور کا استعمال کریں۔", @@ -1106,13 +1106,11 @@ "widgets_seed": "بیج", "wouoldLikeToConnect": "؟ﮯﮔ ﮟﯿﮨﺎﭼ ﺎﻧﮍﺟ", "write_down_backup_password": "براہ کرم اپنا بیک اپ پاس ورڈ لکھیں، جو آپ کی بیک اپ فائلوں کی درآمد کے لیے استعمال ہوتا ہے۔", - "xlm_extra_info": "ایکسچینج کے لیے XLM ٹرانزیکشن بھیجتے وقت براہ کرم میمو ID بتانا نہ بھولیں۔", "xmr_available_balance": "دستیاب بیلنس", "xmr_full_balance": "مکمل بیلنس", "xmr_hidden": "پوشیدہ", "xmr_to_error": "XMR.TO غلطی", "xmr_to_error_description": "غلط رقم۔ اعشاریہ پوائنٹ کے بعد زیادہ سے زیادہ 8 ہندسے", - "xrp_extra_info": "ایکسچینج کے لیے XRP ٹرانزیکشن بھیجتے وقت ڈیسٹینیشن ٹیگ بتانا نہ بھولیں۔", "yat": "Yat", "yat_address": "Yat ایڈریس", "yat_alert_content": "Cake والیٹ کے صارفین اب ایک قسم کے ایموجی پر مبنی صارف نام کے ساتھ اپنی تمام پسندیدہ کرنسیاں بھیج اور وصول کر سکتے ہیں۔", diff --git a/res/values/strings_vi.arb b/res/values/strings_vi.arb index 1c3a5af9f..ca6b70e0a 100644 --- a/res/values/strings_vi.arb +++ b/res/values/strings_vi.arb @@ -356,6 +356,7 @@ "event": "Sự kiện", "events": "Các sự kiện", "exchange": "Trao đổi", + "exchange_extra_info": "Xin đừng quên chỉ định bản ghi nhớ hoặc ID bổ sung trong khi gửi giao dịch này để trao đổi", "exchange_incorrect_current_wallet_for_xmr": "Nếu bạn muốn trao đổi XMR từ CAPE CAME MONERO BALANCE, vui lòng chuyển sang ví Monero của bạn trước.", "exchange_new_template": "Mẫu mới", "exchange_provider_unsupported": "${providerName} không còn được hỗ trợ nữa!", @@ -929,7 +930,6 @@ "token_name": "Tên token ví dụ: Tether", "token_symbol": "Ký hiệu token ví dụ: USDT", "tokenID": "ID", - "ton_extra_info": "Xin đừng quên chỉ định ID ghi nhớ trong khi gửi giao dịch tấn cho trao đổi", "tor_connection": "Kết nối Tor", "tor_connection_timeout": "Thời gian chờ kết nối tor", "tor_experimental": "Đây là một tính năng thử nghiệm, không phải tất cả các kết nối được làm từ Wake Wallet Hỗ trợ định tuyến TOR - một số kết nối có thể sử dụng ClearNet, để định tuyến đầy đủ về lưu lượng truy cập ứng dụng Tor với chế độ VPN.", @@ -1101,13 +1101,11 @@ "widgets_seed": "Hạt giống", "wouoldLikeToConnect": "muốn kết nối", "write_down_backup_password": "Vui lòng ghi lại mật khẩu sao lưu của bạn, được sử dụng để nhập các tệp sao lưu của bạn.", - "xlm_extra_info": "Vui lòng đừng quên chỉ định Memo ID khi gửi giao dịch XLM để trao đổi", "xmr_available_balance": "Số dư khả dụng", "xmr_full_balance": "Số dư đầy đủ", "xmr_hidden": "Bị ẩn", "xmr_to_error": "Lỗi XMR.TO", "xmr_to_error_description": "Số tiền không hợp lệ. Giới hạn tối đa 8 chữ số sau dấu thập phân", - "xrp_extra_info": "Vui lòng đừng quên chỉ định Destination Tag khi gửi giao dịch XRP để trao đổi", "yat": "Yat", "yat_address": "Địa chỉ Yat", "yat_alert_content": "Người dùng Cake Wallet hiện có thể gửi và nhận tất cả các loại tiền yêu thích của họ với tên người dùng dựa trên emoji độc đáo.", diff --git a/res/values/strings_yo.arb b/res/values/strings_yo.arb index 21b04e777..e06500ed2 100644 --- a/res/values/strings_yo.arb +++ b/res/values/strings_yo.arb @@ -358,6 +358,7 @@ "event": "Iṣẹlẹ", "events": "Awọn iṣẹlẹ", "exchange": "Paarọ", + "exchange_extra_info": "Jọwọ maṣe gbagbe lati tokasi akọsilẹ tabi id afikun lakoko ti o nfi iṣowo yii fun paṣipaarọ naa", "exchange_incorrect_current_wallet_for_xmr": "Ti o ba fẹ lati yi XMR lati dọgba oyinbo oyinbo kekere rẹ ti a fi omi ṣan rẹ, jọwọ yipada si apamọwọ Monrou akọkọ.", "exchange_new_template": "Àwòṣe títun", "exchange_provider_unsupported": "${providerName} ko ni atilẹyin mọ!", @@ -933,7 +934,6 @@ "token_name": "Orukọ àmi fun apẹẹrẹ: Tether", "token_symbol": "Aami aami fun apẹẹrẹ: USDT", "tokenID": "ID", - "ton_extra_info": "Jọwọ maṣe gbagbe lati tokasi ID akọsilẹ lakoko fifiranṣẹ idunadura pupọ fun paṣipaarọ naa", "tor_connection": "Tor asopọ", "tor_connection_timeout": "Akoko asopọ asopọ", "tor_experimental": "Eyi jẹ ẹya ti esiperimenta ti a ṣe lati awọn Awoṣe Adwat atilẹyin ti o wa ni atilẹyin idiwọ - diẹ ninu awọn asopọ le lo imple, lati le ni ipa ọna App Prat pẹlu ipo VPN.", @@ -1105,13 +1105,11 @@ "widgets_seed": "Hóró", "wouoldLikeToConnect": "yoo fẹ lati sopọ", "write_down_backup_password": "Ẹ jọ̀wọ́ ẹ̀dà ọ̀rọ̀ aṣínà ti ẹ̀dà nípamọ́ yín tó máa ń bá yín ṣí àkọsílẹ̀ yín l'ẹ kọ sílẹ̀.", - "xlm_extra_info": "Ẹ jọ̀wọ́ ẹ kò gbàgbé pèsè àmì ìdánimọ̀ àkọsílẹ̀ t'ẹ́ ń bá ránṣẹ́ pàṣípààrọ̀ ti XLM yín sí ilé ìfowóṣòwò", "xmr_available_balance": "Owó tó wà ḿbí", "xmr_full_balance": "Ìyókù owó", "xmr_hidden": "Bìbò", "xmr_to_error": "XMR.To aṣiṣe", "xmr_to_error_description": "Iye ti ko wulo. Iwọn to pọju 8 nọmba lẹhin aaye eleemewa", - "xrp_extra_info": "Ẹ jọ̀wọ́ ẹ kò gbàgbé pèsè orúkọ̀ àdírẹ́sì ti a ránṣẹ́ sí t'ẹ́ bá ránṣẹ pàṣípààrọ̀ ti XRP yín sílé ìfowóṣòwò", "yat": "Yat", "yat_address": "Àdírẹ́sì Yat", "yat_alert_content": "Àwọn olùṣàmúlò ti Cake Wallet lè fi orúkọ olùṣàmúlò t'á dá lórí emójì tó kì í jọra ránṣẹ́ àti gba gbogbo àwọn irú owó tíwọn yàn láàyò lọ́wọ́lọ́wọ́.", diff --git a/res/values/strings_zh.arb b/res/values/strings_zh.arb index 826e366f3..4a2a01161 100644 --- a/res/values/strings_zh.arb +++ b/res/values/strings_zh.arb @@ -357,6 +357,7 @@ "event": "事件", "events": "活动", "exchange": "交换", + "exchange_extra_info": "请不要忘记在向交易所发送此交易时指定备忘录或额外的ID", "exchange_incorrect_current_wallet_for_xmr": "如果您想从蛋糕钱包Monero余额中交换XMR,请先切换到Monero Wallet。", "exchange_new_template": "新模板", "exchange_provider_unsupported": "${providerName}不再支持!", @@ -932,7 +933,6 @@ "token_name": "代币名称例如:Tether", "token_symbol": "代币符号例如:USDT", "tokenID": "ID", - "ton_extra_info": "请不要忘记在发送TON交易时指定备忘录", "tor_connection": "Tor连接", "tor_connection_timeout": "TOR连接超时", "tor_experimental": "这是一个实验功能,并非所有由Cake Wallet Support Tor路由组成的连接 - 某些连接可能会使用Clearnet,以便完全路由App App App Appl使用VPN模式。", @@ -1104,13 +1104,11 @@ "widgets_seed": "种子", "wouoldLikeToConnect": "想要连接", "write_down_backup_password": "请写下您的备份密码,该密码用于导入备份文件。", - "xlm_extra_info": "发送用于交换的XLM交易时,请不要忘记指定备忘录ID", "xmr_available_balance": "可用余额 ", "xmr_full_balance": "全部余额", "xmr_hidden": "隐藏", "xmr_to_error": "XMR.TO 错误", "xmr_to_error_description": "无效的金额。 小数点后最多8位数字", - "xrp_extra_info": "发送用于交换的XRP交易时,请不要忘记指定目标Tag", "yat": "Yat", "yat_address": "Yat 地址", "yat_alert_content": "Cake Wallet 用戶現在可以使用獨一無二的基於表情符號的用戶名發送和接收他們喜歡的所有貨幣。", From 10499814bb9d1f58d78a80b971b5be0bbf299266 Mon Sep 17 00:00:00 2001 From: rafael_xmr Date: Tue, 29 Jul 2025 09:50:11 -0300 Subject: [PATCH 15/16] warn sp dust (#2402) * feat: warn sp dust * Update lib/view_model/send/send_view_model.dart * fix condition --------- Co-authored-by: Omar Hatem --- cw_bitcoin/lib/electrum_wallet.dart | 26 +++++++++++++++++++-- lib/src/screens/send/widgets/send_card.dart | 2 +- lib/view_model/send/send_view_model.dart | 26 +++++++++++++++++---- 3 files changed, 46 insertions(+), 8 deletions(-) diff --git a/cw_bitcoin/lib/electrum_wallet.dart b/cw_bitcoin/lib/electrum_wallet.dart index 28d0e323a..eb03514ae 100644 --- a/cw_bitcoin/lib/electrum_wallet.dart +++ b/cw_bitcoin/lib/electrum_wallet.dart @@ -780,7 +780,11 @@ abstract class ElectrumWalletBase } if (outputs.length == 1) { - outputs[0] = BitcoinOutput(address: outputs.last.address, value: BigInt.from(amount)); + outputs[0] = BitcoinOutput( + address: outputs.last.address, + value: BigInt.from(amount), + isSilentPayment: hasSilentPayment, + ); } return EstimatedTxResult( @@ -888,7 +892,17 @@ abstract class ElectrumWalletBase ); updatedOutputs.clear(); - updatedOutputs.addAll(temp); + for (int i = 0; i < temp.length; i++) { + final output = temp[i]; + final oldOutput = outputs[i]; + + updatedOutputs.add(BitcoinOutput( + address: output.address, + value: output.value, + isSilentPayment: oldOutput.isSilentPayment, + isChange: output.isChange, + )); + } if (fee == 0) { throw BitcoinTransactionNoFeeException(); @@ -1088,6 +1102,14 @@ abstract class ElectrumWalletBase ); } + for (final output in updatedOutputs) { + // TODO: get from server + // if (output.isSilentPayment && output.value.toInt() > silentPaymentsMin) { + if (output.isSilentPayment && output.value.toInt() <= 1000) { + throw BitcoinTransactionNoDustException(); + } + } + if (walletInfo.isHardwareWallet) { final transaction = await buildHardwareWalletTransaction( utxos: estimatedTx.utxos, diff --git a/lib/src/screens/send/widgets/send_card.dart b/lib/src/screens/send/widgets/send_card.dart index d8b3517aa..8c372b161 100644 --- a/lib/src/screens/send/widgets/send_card.dart +++ b/lib/src/screens/send/widgets/send_card.dart @@ -258,7 +258,7 @@ class SendCardState extends State with AutomaticKeepAliveClientMixin output.setSendAll(await sendViewModel.sendingBalance), ), diff --git a/lib/view_model/send/send_view_model.dart b/lib/view_model/send/send_view_model.dart index a767065ec..22df67bf9 100644 --- a/lib/view_model/send/send_view_model.dart +++ b/lib/view_model/send/send_view_model.dart @@ -182,9 +182,9 @@ abstract class SendViewModelBase extends WalletChangeListenerViewModel with Stor if (pendingTransaction != null) { final currency = pendingTransactionFeeCurrency(walletType); final fiat = calculateFiatAmount( - price: _fiatConversationStore.prices[currency]!, - cryptoAmount: pendingTransaction!.feeFormattedValue, - ); + price: _fiatConversationStore.prices[currency]!, + cryptoAmount: pendingTransaction!.feeFormattedValue, + ); return fiat; } else { return '0.00'; @@ -210,8 +210,15 @@ abstract class SendViewModelBase extends WalletChangeListenerViewModel with Stor CryptoCurrency get currency => wallet.currency; - Validator get amountValidator => - AmountValidator(currency: walletTypeToCryptoCurrency(wallet.type)); + Validator amountValidator(Output output) => AmountValidator( + currency: walletTypeToCryptoCurrency(wallet.type), + minValue: isSendToSilentPayments(output) + ? + // TODO: get from server + // bitcoin!.silentPaymentsMinAmount + '0.00001' + : null, + ); Validator get allAmountValidator => AllAmountValidator(); @@ -289,6 +296,15 @@ abstract class SendViewModelBase extends WalletChangeListenerViewModel with Stor // If silent payments scanning, can still send payments (wallet.type == WalletType.bitcoin && wallet.syncStatus is SyncingSyncStatus); + bool isSendToSilentPayments(Output output) => + wallet.type == WalletType.bitcoin && + (RegExp(AddressValidator.silentPaymentAddressPatternMainnet).hasMatch(output.address) || + RegExp(AddressValidator.silentPaymentAddressPatternMainnet) + .hasMatch(output.extractedAddress) || + (output.parsedAddress.addresses.isNotEmpty && + RegExp(AddressValidator.silentPaymentAddressPatternMainnet) + .hasMatch(output.parsedAddress.addresses[0]))); + @computed List