Compare commits

...

19 Commits

Author SHA1 Message Date
Marcos Rodriguez
88b258c24d
Update ManageWallets.tsx 2026-06-18 01:33:56 -05:00
Marcos Rodriguez Vélez
ea661f8d51
Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-18 01:13:28 -05:00
Marcos Rodriguez Vélez
cfbb4699dd
Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-18 01:13:16 -05:00
Marcos Rodriguez
34423d82a3
Update bluewallet.spec.js 2026-06-18 00:29:04 -05:00
Marcos Rodriguez
72be992f3f
Merge branch 'master' into swipe 2026-06-18 00:25:53 -05:00
Marcos Rodriguez
1a29fd1bdb
Update bluewallet.spec.js 2026-06-16 21:41:09 -05:00
Marcos Rodriguez
2e95cb5faa
Merge branch 'master' into swipe 2026-06-16 21:38:11 -05:00
copilot-swe-agent[bot]
74feb3d4d2
TST: fix timing in ManageWallets swipe e2e test 2026-06-14 16:38:15 +00:00
Marcos Rodriguez
121fb262b2
Update bluewallet.spec.js 2026-06-14 11:32:29 -05:00
Marcos Rodriguez
509b8ab9a7
Merge branch 'master' into swipe 2026-06-14 11:27:40 -05:00
Marcos Rodriguez
ae032a8f86
Update bluewallet.spec.js 2026-06-11 23:31:14 -05:00
Marcos Rodriguez
67ccb6cefa
Merge branch 'master' into swipe 2026-06-11 23:28:03 -05:00
Marcos Rodriguez
212ca2a263
fix lint 2026-06-07 22:32:23 -05:00
copilot-swe-agent[bot]
48ee90d9b0
Remove unused saveToDisk from ManageWallets 2026-06-07 06:14:04 +00:00
copilot-swe-agent[bot]
94418e1460
Clean orphan locale keys after en schema update 2026-06-07 06:09:24 +00:00
Marcos Rodriguez Vélez
a76e62725c
Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-07 01:06:49 -05:00
Marcos Rodriguez Vélez
c71c0641f0
Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-07 01:06:29 -05:00
Marcos Rodriguez Vélez
244854cc9c
Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-07 01:06:10 -05:00
Marcos Rodriguez
93168b3a5f
ADD: Swipeable on manage wallets 2026-06-07 00:59:20 -05:00
55 changed files with 160 additions and 169 deletions

View File

@ -1,7 +1,7 @@
import React, { useCallback, useState, useEffect, useRef } from 'react';
import { StyleSheet, ViewStyle, ActivityIndicator, Platform, Animated, View, Text, Pressable } from 'react-native';
import { useLocale } from '@react-navigation/native';
import { Swipeable } from 'react-native-gesture-handler';
import ReanimatedSwipeable, { SwipeableMethods } from 'react-native-gesture-handler/ReanimatedSwipeable';
import { ExtendedTransaction, LightningTransaction, Transaction, TWallet } from '../class/wallets/types';
import loc from '../loc';
import { TransactionListItem } from './TransactionListItem';
@ -16,6 +16,7 @@ import { MultisigHDWallet } from '../class/wallets/multisig-hd-wallet';
import { AbstractHDElectrumWallet } from '../class/wallets/abstract-hd-electrum-wallet';
import { WatchOnlyWallet } from '../class/wallets/watch-only-wallet';
import WalletListItem from './WalletListItem';
import Icon from './Icon';
const getHdElectrumWallet = (wallet: TWallet): AbstractHDElectrumWallet | undefined => {
const w: unknown = wallet;
@ -60,6 +61,8 @@ interface ManageWalletsListItemProps {
item: Item;
isDraggingDisabled: boolean;
handleToggleHideBalance: (wallet: TWallet) => void;
handleCycleBalanceUnit: (wallet: TWallet) => void;
preferredFiatLabel?: string;
state: { wallets: TWallet[]; searchQuery: string; isSearchFocused?: boolean };
navigateToWallet: (wallet: TWallet) => void;
navigateToAddress: (address: string, walletID: string) => void;
@ -85,6 +88,8 @@ const ManageWalletsListItem: React.FC<ManageWalletsListItemProps> = ({
onPressIn,
onPressOut,
handleToggleHideBalance,
handleCycleBalanceUnit,
preferredFiatLabel,
isActive,
globalDragActive,
style,
@ -94,7 +99,7 @@ const ManageWalletsListItem: React.FC<ManageWalletsListItemProps> = ({
const [isLoading, setIsLoading] = useState(false);
const prevIsActive = useRef(isActive);
const swipeableRef = useRef<Swipeable | null>(null);
const swipeableRef = useRef<SwipeableMethods | null>(null);
const swipeInProgressRef = useRef(false);
useEffect(() => {
@ -137,12 +142,54 @@ const ManageWalletsListItem: React.FC<ManageWalletsListItemProps> = ({
const canSwipe = !isActive && !globalDragActive;
const isHidden = !!wallet.hideBalance;
const currentUnit = wallet.getPreferredBalanceUnit();
const fiatLabel = preferredFiatLabel ?? 'USD';
let nextUnitLabel: string;
if (currentUnit === BitcoinUnit.BTC) {
nextUnitLabel = loc.total_balance_view.display_in_sats;
} else if (currentUnit === BitcoinUnit.SATS) {
nextUnitLabel = loc.formatString(loc.total_balance_view.display_in_fiat, { currency: fiatLabel });
} else {
nextUnitLabel = loc.total_balance_view.display_in_bitcoin;
}
const onToggle = () => {
handleToggleHideBalance(wallet);
swipeableRef.current?.close?.();
};
const onCycleUnit = () => {
handleCycleBalanceUnit(wallet);
swipeableRef.current?.close?.();
};
const renderLeftActions = () => (
<View style={styles.leftActionsContainer}>
<Pressable
style={({ pressed }) => [
styles.leftAction,
{ backgroundColor: colors.buttonBackgroundColor },
pressed && styles.leftActionPressed,
]}
onPress={onToggle}
accessibilityRole="button"
accessibilityLabel={isHidden ? loc.transactions.details_balance_show : loc.transactions.details_balance_hide}
testID={isHidden ? 'SwipeShowBalance' : 'SwipeHideBalance'}
>
<Icon
name={isHidden ? 'eye' : 'eye-slash'}
type="font-awesome"
size={20}
color={colors.buttonTextColor}
containerStyle={styles.leftActionIcon}
/>
<Text style={[styles.leftActionText, { color: colors.buttonTextColor }]}>
{isHidden ? loc.transactions.details_balance_show : loc.transactions.details_balance_hide}
</Text>
</Pressable>
</View>
);
const renderRightActions = () => (
<View style={styles.rightActionsContainer}>
<Pressable
@ -151,13 +198,19 @@ const ManageWalletsListItem: React.FC<ManageWalletsListItemProps> = ({
{ backgroundColor: colors.buttonBackgroundColor },
pressed && styles.rightActionPressed,
]}
onPress={onToggle}
onPress={onCycleUnit}
accessibilityRole="button"
testID={isHidden ? 'SwipeShowBalance' : 'SwipeHideBalance'}
accessibilityLabel={nextUnitLabel}
testID="SwipeCycleBalanceUnit"
>
<Text style={[styles.rightActionText, { color: colors.buttonTextColor }]}>
{isHidden ? loc.wallets.swipe_balance_show : loc.wallets.swipe_balance_hide}
</Text>
<Icon
name="arrow-right-arrow-left"
type="font-awesome-6"
size={18}
color={colors.buttonTextColor}
containerStyle={styles.rightActionIcon}
/>
<Text style={[styles.rightActionText, { color: colors.buttonTextColor }]}>{nextUnitLabel}</Text>
</Pressable>
</View>
);
@ -182,7 +235,7 @@ const ManageWalletsListItem: React.FC<ManageWalletsListItemProps> = ({
if (!canSwipe) return content;
return (
<Swipeable
<ReanimatedSwipeable
ref={r => {
swipeableRef.current = r;
}}
@ -195,13 +248,16 @@ const ManageWalletsListItem: React.FC<ManageWalletsListItemProps> = ({
onSwipeableClose={() => {
swipeInProgressRef.current = false;
}}
renderLeftActions={renderLeftActions}
renderRightActions={renderRightActions}
friction={2}
leftThreshold={40}
rightThreshold={40}
overshootLeft={false}
overshootRight={false}
>
{content}
</Swipeable>
</ReanimatedSwipeable>
);
} else if (item.type === ItemType.TransactionSection && item.data) {
try {
@ -416,11 +472,33 @@ const styles = StyleSheet.create({
height: 1,
width: '100%',
},
leftActionsContainer: {
justifyContent: 'center',
alignItems: 'flex-start',
},
leftAction: {
flexDirection: 'row',
justifyContent: 'center',
alignItems: 'center',
paddingHorizontal: 18,
height: '100%',
},
leftActionPressed: {
opacity: 0.85,
},
leftActionIcon: {
marginRight: 8,
},
leftActionText: {
fontSize: 15,
fontWeight: '600',
},
rightActionsContainer: {
justifyContent: 'center',
alignItems: 'flex-end',
},
rightAction: {
flexDirection: 'row',
justifyContent: 'center',
alignItems: 'center',
paddingHorizontal: 18,
@ -429,6 +507,9 @@ const styles = StyleSheet.create({
rightActionPressed: {
opacity: 0.85,
},
rightActionIcon: {
marginRight: 8,
},
rightActionText: {
fontSize: 15,
fontWeight: '600',

View File

@ -366,7 +366,6 @@
"rbf_title": "تسريع العملية (RBF)",
"status_bump": "تسريع العملية",
"status_cancel": "إلغاء العملية",
"transactions_count": "عدد العمليات",
"txid": "معرّف العملية",
"updating": "جارٍ التحديث ...",
"watchOnlyWarningDescription": "تنبيه احتيال: انتبه إلى أن المحتالين عادةً ما يستخدمون هذا النوع من المحفظة \"للمشاهدة فقط\" لمحاولة السرقة من المستخدمين. هذه المحفظة التي لا يمكنك التحكم بها أو الإرسال منها، إلا بتصريح جهاز آخر، المحفظة تسمح فقط بمراقبة الرصيد.",
@ -491,8 +490,6 @@
"clear_clipboard_on_import": "مسح الحافظة عند الاستيراد",
"details_del_wb_err": "مبلغ الرصيد المقدم لا يطابق رصيد هذه المحفظة. يُرجى المحاولة مرة أخرى.",
"details_display": "العرض في الشاشة الرئيسية",
"swipe_balance_hide": "إخفاء",
"swipe_balance_show": "إظهار",
"drag_to_reorder": "اسحب لإعادة الترتيب",
"clear_search": "مسح البحث",
"learn_more": "معرفة المزيد",

View File

@ -373,7 +373,6 @@
"rbf_title": "Паскорыць (RBF)",
"status_bump": "Паскорыць",
"status_cancel": "Адмяніць",
"transactions_count": "Колькасьць трансакцыяў",
"txid": "ID трансакцыі",
"updating": "Абнаўленьне...",
"watchOnlyWarningTitle": "Папярэджаньне аб бясьпецы",
@ -447,8 +446,6 @@
"details_show_addresses": "Паказаць адрасы",
"details_title": "Кашалёк",
"wallets": "Кашалькі",
"swipe_balance_hide": "Схаваць",
"swipe_balance_show": "Паказаць",
"drag_to_reorder": "Перацягніце для пераўпарадкаваньня",
"clear_search": "Ачысьціць пошук",
"details_type": "Тып",

View File

@ -370,7 +370,6 @@
"rbf_title": "Ускори (RBF)",
"status_bump": "Ускори",
"status_cancel": "Отмени",
"transactions_count": "Брой транзакции",
"txid": "ID на транзакцията",
"updating": "Обновяване...",
"watchOnlyWarningTitle": "Предупреждение за сигурност",
@ -440,8 +439,6 @@
"details_show_addresses": "Покажи адресите",
"details_title": "Портфейл",
"wallets": "Портфейли",
"swipe_balance_hide": "Скрий",
"swipe_balance_show": "Покажи",
"drag_to_reorder": "Влачете, за да пренаредите",
"clear_search": "Изчисти търсенето",
"details_type": "Тип",

View File

@ -379,7 +379,6 @@
"eta_1d": "زمووݩ تخمینی: حدود 1 رۊز دی",
"list_title_sent": "فیشناڌه وابیڌه",
"rbf_explain": "ای تراکونش ن وا تراکونش دیر ک کارمزدس بیشتره، جانشین اکۊنیم تا زۊڌتر استخراج بۊ. ای کار ن RBF—جانشینی وا کارمزد اگۊن.",
"transactions_count": "شومار تراکونشا",
"txid": "شناسه تراکونش",
"updating": "ورۊ رسۊوی...",
"watchOnlyWarningTitle": "هشڌار امنیتی",
@ -450,7 +449,6 @@
"more_info": "دووسمندیا قلوه",
"details_delete_anyway": "و هر هال پاک بۊ",
"add_lightning": "لایتنینگ",
"swipe_balance_hide": "بؽڌار",
"details_delete": "پاک کردن",
"add_bitcoin_explain": "کیف پیل بیت کوین ساڌه ۉ پۊر هؽز",
"add_entropy_reset_title": "وورنشۊوی آنتروپی",
@ -478,7 +476,6 @@
"details_connected_to": "منپیز و",
"details_del_wb_err": "مقدار مۉجۊڌی داڌه وابیڌه وا مۉجۊڌی ای کیف پیل هومخۊوݩ نؽ. تی کۊن ز نۊ تفره کۊنی.",
"details_del_wb_q": "ای کیف پیل مۉجۊڌی داره. پؽش ز ادامه، ویرت بۊ ک بؽ عبارت بازیابی ای کیف پیل، نتری دارایی ن بازیابی کۊنی. سی پؽش گری ز پاک کردن نا خۊسته، تی کۊن مۉجۊڌی کیف پیلت {balance} ساتۊشی ن بزن.",
"swipe_balance_show": "نشۉݩ داڌن",
"drag_to_reorder": "سی ترتیو دی، بکش",
"clear_search": "پاک کردن پیتینیڌن",
"import_explanation": "تی کۊن وشه ها سید، کلید عمومی، WIF، یا هر چی ک داری ن بزن. BlueWallet پوی تلاش خوسه اکونه تا فورمت زبال ن خومه بزنه ۉ کیف پیل ته و من بئره.",

View File

@ -376,7 +376,6 @@
"rbf_title": "Accelerar (RBF)",
"status_bump": "Accelerar",
"status_cancel": "Cancel·lar la Transacció",
"transactions_count": "Recompte de transaccions",
"txid": "ID de la transacció",
"updating": "Actualitzant...",
"watchOnlyWarningTitle": "Advertència de seguretat",
@ -446,8 +445,6 @@
"details_show_addresses": "Mostrar adreces",
"details_title": "Detalls del moneder",
"wallets": "moneders",
"swipe_balance_hide": "Amagar",
"swipe_balance_show": "Mostrar",
"drag_to_reorder": "Arrossegueu per reordenar",
"clear_search": "Esborrar cerca",
"details_type": "Tipus",

View File

@ -376,7 +376,6 @@
"rbf_title": "Poplatek za popostrčení (RBF)",
"status_bump": "Poplatek za popostrčení",
"status_cancel": "Zrušit transakci",
"transactions_count": "Počet transakcí",
"txid": "ID transakce",
"updating": "Aktualizování…",
"watchOnlyWarningTitle": "Bezpečnostní upozornění",
@ -446,8 +445,6 @@
"details_show_addresses": "Zobrazit adresy",
"details_title": "Peněženka",
"wallets": "Peněženky",
"swipe_balance_hide": "Skrýt",
"swipe_balance_show": "Zobrazit",
"drag_to_reorder": "Přetažením změníte pořadí",
"clear_search": "Vymazat vyhledávání",
"details_type": "Typ",

View File

@ -376,7 +376,6 @@
"rbf_title": "Cyflymu (RBF)",
"status_bump": "Cyflymu",
"status_cancel": "Canslo",
"transactions_count": "Nifer y Trafodion",
"txid": "ID y Trafodyn",
"updating": "Diweddaru...",
"watchOnlyWarningTitle": "Rhybudd diogelwch",
@ -446,8 +445,6 @@
"details_show_addresses": "Dangos cyfeiriadau",
"details_title": "Waled",
"wallets": "Waledi",
"swipe_balance_hide": "Cuddio",
"swipe_balance_show": "Dangos",
"drag_to_reorder": "Llusgo i aildrefnu",
"clear_search": "Clirio chwiliad",
"details_type": "Math",

View File

@ -376,7 +376,6 @@
"rbf_title": "Fremskynd (RBF)",
"status_bump": "Fremskynd",
"status_cancel": "Annuller",
"transactions_count": "Antal transaktioner",
"txid": "Transaktions-ID",
"updating": "Opdaterer...",
"watchOnlyWarningTitle": "Sikkerhedsadvarsel",
@ -461,8 +460,6 @@
"details_master_fingerprint": "Master fingerprint",
"details_multisig_type": "multisig",
"details_show_addresses": "Vis adresser",
"swipe_balance_hide": "Skjul",
"swipe_balance_show": "Vis",
"drag_to_reorder": "Træk for at omarrangere",
"clear_search": "Ryd søgning",
"details_use_with_hardware_wallet": "Brug med hardware wallet",

View File

@ -376,7 +376,6 @@
"rbf_title": "TRX-Gebühr erhöhen (RBF)",
"status_bump": "TRX-Gebühr erhöhen",
"status_cancel": "Transaktion abbrechen",
"transactions_count": "Anzahl Transaktionen",
"txid": "Transaktions-ID",
"updating": "Aktualisiere....",
"watchOnlyWarningTitle": "Sicherheitswarnung",
@ -446,8 +445,6 @@
"details_show_addresses": "Adressen anzeigen",
"details_title": "Wallet",
"wallets": "Wallets",
"swipe_balance_hide": "Verbergen",
"swipe_balance_show": "Anzeigen",
"drag_to_reorder": "Ziehen zum Neuanordnen",
"clear_search": "Suche löschen",
"details_type": "Typ",

View File

@ -377,7 +377,6 @@
"rbf_explain": "Θα αντικαταστήσουμε αυτή τη συναλλαγή με μία με υψηλότερη προμήθεια ώστε να εξορυχθεί γρηγορότερα. Αυτό λέγεται RBF—Replace by Fee.",
"rbf_title": "Επιτάχυνση (RBF)",
"status_bump": "Επιτάχυνση",
"transactions_count": "Πλήθος συναλλαγών",
"updating": "Ενημέρωση...",
"watchOnlyWarningTitle": "Προειδοποίηση ασφαλείας",
"watchOnlyWarningDescription": "Να είστε προσεκτικοί με τους απατεώνες που συχνά χρησιμοποιούν πορτοφόλια “μόνο για παρακολούθηση” για να εξαπατήσουν χρήστες. Αυτά τα πορτοφόλια δεν σας επιτρέπουν να ελέγχετε ή να στέλνετε κεφάλαια· σας επιτρέπουν μόνο να βλέπετε το υπόλοιπο.",
@ -475,8 +474,6 @@
"details_export_history": "Εξαγωγή ιστορικού σε CSV",
"details_master_fingerprint": "Αποτύπωμα κύριου κλειδιού",
"details_multisig_type": "multisig",
"swipe_balance_hide": "Απόκρυψη",
"swipe_balance_show": "Εμφάνιση",
"drag_to_reorder": "Σύρετε για αναδιάταξη",
"clear_search": "Εκκαθάριση αναζήτησης",
"enter_bip38_password": "Εισάγετε κωδικό για αποκρυπτογράφηση",

View File

@ -454,8 +454,6 @@
"restore_swap_activity": "Restore swap activity",
"restore_swap_activity_done": "Swap activity restored.",
"wallets": "Wallets",
"swipe_balance_hide": "Hide",
"swipe_balance_show": "Show",
"drag_to_reorder": "Drag to reorder",
"clear_search": "Clear search",
"details_type": "Type",

View File

@ -366,7 +366,6 @@
"rbf_title": "Incrementar comisión (RBF)",
"status_bump": "Aumentar comisión",
"status_cancel": "Cancelar transacción",
"transactions_count": "Número de transacciones",
"txid": "ID de transacción",
"updating": "Actualizando...",
"transaction_loading_error": "Ha habido un problema al cargar la transacción. Por favor, inténtalo de nuevo más tarde.",
@ -490,8 +489,6 @@
"clear_clipboard_on_import": "Borrar portapapeles al importar",
"details_del_wb_err": "La cantidad de balance proporcionada no coincide con el balance de esta cartera. Por favor, inténtalo de nuevo.",
"details_display": "Mostrar en la pantalla de inicio",
"swipe_balance_hide": "Ocultar",
"swipe_balance_show": "Mostrar",
"drag_to_reorder": "Arrastra para reordenar",
"clear_search": "Borrar búsqueda",
"import_success_watchonly": "Tu cartera ha sido importada correctamente. ADVERTENCIA: esta es una cartera de solo lectura, NO puedes gastar desde ella.",

View File

@ -377,7 +377,6 @@
"rbf_title": "Aumentar Comisión (RBF)",
"status_bump": "Aumentar Comisión",
"status_cancel": "Cancelar Transacción",
"transactions_count": "Número de Transacciones",
"txid": "ID de Transacción",
"updating": "Actualizando...",
"watchOnlyWarningTitle": "Advertencia de seguridad",
@ -446,8 +445,6 @@
"details_show_addresses": "Mostrar direcciones",
"details_title": "Billetera",
"wallets": "Billeteras",
"swipe_balance_hide": "Ocultar",
"swipe_balance_show": "Mostrar",
"drag_to_reorder": "Arrastra para reordenar",
"clear_search": "Limpiar búsqueda",
"details_type": "Tipo",

View File

@ -377,7 +377,6 @@
"rbf_title": "Kiirenda (RBF)",
"status_bump": "Kiirenda",
"status_cancel": "Tühista",
"transactions_count": "Tehingute arv",
"txid": "Tehingu ID",
"updating": "Uuendamine...",
"watchOnlyWarningTitle": "Turvahoiatus",
@ -446,8 +445,6 @@
"details_show_addresses": "Näita aadresse",
"details_title": "Rahakott",
"wallets": "Rahakotid",
"swipe_balance_hide": "Peida",
"swipe_balance_show": "Näita",
"drag_to_reorder": "Lohista ümberjärjestamiseks",
"clear_search": "Tühjenda otsing",
"details_type": "Tüüp",

View File

@ -376,7 +376,6 @@
"rbf_title": "تسریع (RBF)",
"status_bump": "تسریع",
"status_cancel": "لغو تراکنش",
"transactions_count": "تعداد تراکنش‌ها",
"txid": "شناسهٔ تراکنش",
"updating": "درحال به‌روزرسانی…",
"watchOnlyWarningTitle": "هشدار امنیتی",
@ -446,8 +445,6 @@
"details_show_addresses": "نمایش آدرس‌ها",
"details_title": "کیف پول",
"wallets": "کیف پول‌ها",
"swipe_balance_hide": "پنهان‌کردن",
"swipe_balance_show": "نمایش",
"drag_to_reorder": "برای ترتیب‌بندی بکشید",
"clear_search": "پاک‌کردن جستجو",
"details_type": "نوع",

View File

@ -373,7 +373,6 @@
"rbf_title": "Nosta siirtomaksua (RBF)",
"status_bump": "Nosta siirtomaksua",
"status_cancel": "Peruuta Siirtotapahtuma",
"transactions_count": "Siirtotapahtumien määrä",
"txid": "Siirtotapahtuman tunnus",
"updating": "Päivitetään...",
"watchOnlyWarningTitle": "Turvallisuusvaroitus",
@ -513,8 +512,6 @@
"details_delete_anyway": "Poista silti",
"add_lndhub_error": "Annettu solmun osoite on virheellinen LNDhub-solmu.",
"add_wallet_seed_length": "Palautuslauseen pituus",
"swipe_balance_hide": "Piilota",
"swipe_balance_show": "Näytä",
"drag_to_reorder": "Vedä järjestääksesi uudelleen",
"clear_search": "Tyhjennä haku",
"details_delete_wallet_error_message": "Tämän lompakon ilmoituksista poistamisen vahvistamisessa ilmeni ongelma — tämä voi johtua verkko-ongelmasta tai heikosta yhteydestä. Jos jatkat, saatat silti saada ilmoituksia tähän lompakkoon liittyvistä siirtotapahtumista myös sen poistamisen jälkeen."

View File

@ -376,7 +376,6 @@
"rbf_title": "Hækka avgjald (RBF)",
"status_bump": "Hækka avgjald",
"status_cancel": "Avlýs flyting",
"transactions_count": "Flytingar",
"txid": "Flytingareyðmerki",
"updating": "Innlesur…",
"watchOnlyWarningTitle": "Ávaring",
@ -430,8 +429,6 @@
"clear_clipboard_on_import": "Reinsa setiborð eftir innsetan",
"clear_search": "Reinsa leiting",
"drag_to_reorder": "Drag fyri at umraða",
"swipe_balance_hide": "Fjal",
"swipe_balance_show": "Vís",
"details_address": "Adressa",
"details_advanced": "Víðkaðar stillingar",
"details_are_you_sure": "Ert tú vís/ur?",

View File

@ -371,7 +371,6 @@
"rbf_title": "Augmenter les frais (RBF)",
"status_bump": "Augmenter les frais",
"status_cancel": "Annuler la transaction",
"transactions_count": "Nombre de transactions",
"txid": "ID de transaction",
"updating": "Chargement...",
"watchOnlyWarningTitle": "Avertissement de sécurité",
@ -513,8 +512,6 @@
"more_info": "Plus d'information",
"details_delete_wallet_error_message": "Un problème est survenu lors de la confirmation de la suppression de ce portefeuille des notifications. Cela pourrait être dû à un problème de réseau ou à une mauvaise connexion. Si vous continuez, vous pourriez continuer à recevoir des notifications pour les transactions liées à ce portefeuille, même après sa suppression.",
"details_delete_anyway": "Supprimer quand même",
"swipe_balance_hide": "Cacher",
"swipe_balance_show": "Montrer",
"drag_to_reorder": "Glisser pour réorganiser",
"clear_search": "Effacer la recherche",
"details_type": "Type"

View File

@ -373,7 +373,6 @@
"rbf_title": "העלאת עמלה (RBF)",
"status_bump": "העלאת עמלה",
"status_cancel": "ביטול פעולה",
"transactions_count": "מספר תנועות",
"txid": "מזהה פעולה",
"updating": "מעדכן...",
"watchOnlyWarningTitle": "אזהרת אבטחה",
@ -512,8 +511,6 @@
"manage_wallets_search_placeholder": "חיפוש ארנקים, כתובות, פעולות ותזכירים",
"more_info": "מידע נוסף",
"details_delete_anyway": "מחק בכל אופן",
"swipe_balance_hide": "הסתרה",
"swipe_balance_show": "הצג",
"drag_to_reorder": "גרור לסידור מחדש",
"clear_search": "נקה חיפוש",
"import_discovery_offline": "BlueWallet נמצא כעת במצב לא מקוון. במצב זה, לא ניתן לאמת את קיומו של הארנק, ולכן תצטרך לבחור את הארנק הנכון באופן ידני",

View File

@ -376,7 +376,6 @@
"rbf_title": "Ubrzaj (RBF)",
"status_bump": "Ubrzaj",
"status_cancel": "Otkaži",
"transactions_count": "Broj transakcija",
"txid": "ID transakcije",
"updating": "Ažuriranje...",
"watchOnlyWarningTitle": "Sigurnosno upozorenje",
@ -446,8 +445,6 @@
"details_show_addresses": "Prikaži adrese",
"details_title": "Novčanik",
"wallets": "Novčanici",
"swipe_balance_hide": "Sakrij",
"swipe_balance_show": "Prikaži",
"drag_to_reorder": "Povucite za promjenu redoslijeda",
"clear_search": "Očisti pretragu",
"details_type": "Tip",

View File

@ -366,7 +366,6 @@
"rbf_title": "Kiváltási díj (RBF)",
"status_bump": "Kiváltási díj",
"status_cancel": "Tranzakció törlése",
"transactions_count": "Tranzakciók száma",
"txid": "Tranzakció azonosító",
"updating": "Frissítés...",
"transaction_loading_error": "Hiba történt a tranzakció betöltésekor. Kérlek, próbáld újra később.",
@ -497,8 +496,6 @@
"clear_clipboard_on_import": "Vágólap törlése importáláskor",
"details_display": "Megjelenítés a kezdőképernyőn",
"details_export_history": "Előzmények exportálása CSV-be",
"swipe_balance_hide": "Elrejtés",
"swipe_balance_show": "Mutatás",
"drag_to_reorder": "Húzd az átrendezéshez",
"clear_search": "Keresés törlése",
"import_success_watchonly": "A tárcád sikeresen importálva. FIGYELEM: Ez egy csak megtekintésre szolgáló tárca, NEM tudsz róla költeni.",

View File

@ -376,7 +376,6 @@
"rbf_title": "Percepat (RBF)",
"status_bump": "Percepat",
"status_cancel": "Batalkan Transaksi",
"transactions_count": "Jumlah Transaksi",
"txid": "ID Transaksi",
"updating": "Memperbaharui...",
"watchOnlyWarningTitle": "Peringatan keamanan",
@ -446,8 +445,6 @@
"details_show_addresses": "Tunjukkan alamat",
"details_title": "Dompet",
"wallets": "Dompet",
"swipe_balance_hide": "Sembunyikan",
"swipe_balance_show": "Tampilkan",
"drag_to_reorder": "Seret untuk menyusun ulang",
"clear_search": "Bersihkan pencarian",
"details_type": "Tipe",

View File

@ -368,7 +368,6 @@
"rbf_title": "Aumenta la commissione (RBF)",
"status_bump": "Aumenta la commissione",
"status_cancel": "Annulla transazione",
"transactions_count": "Conteggio transazioni",
"txid": "ID della transazione",
"updating": "Aggiornamento...",
"transaction_loading_error": "Si è verificato un problema nel caricamento della transazione. Per favore riprova più tardi.",
@ -490,8 +489,6 @@
"clear_clipboard_on_import": "Cancella appunti dopo l'importazione",
"details_del_wb_err": "L'importo del saldo fornito non corrisponde al saldo di questo portafoglio. Per favore riprova.",
"details_display": "Mostra nella schermata Home",
"swipe_balance_hide": "Nascondi",
"swipe_balance_show": "Mostra",
"drag_to_reorder": "Trascina per riordinare",
"clear_search": "Cancella ricerca",
"learn_more": "Scopri di più",

View File

@ -392,7 +392,6 @@
"rbf_title": "手数料をバンプ (RBF)",
"status_bump": "手数料をバンプ",
"status_cancel": "トランザクションをキャンセル",
"transactions_count": "トランザクションカウント",
"txid": "トランザクションID",
"updating": "更新中…",
"watchOnlyWarningTitle": "セキュリティ警告",
@ -514,8 +513,6 @@
"more_info": "詳細情報",
"details_delete_wallet_error_message": "ウォレットが通知から削除されたかの確認に問題が生じました—ネットワークの問題か、接続が弱いためかもしれません。続行すると、ウォレットを削除した後でも、関連するトランザクションの通知を受け取る可能性があります。",
"details_delete_anyway": "とにかく削除",
"swipe_balance_hide": "非表示",
"swipe_balance_show": "表示",
"drag_to_reorder": "ドラッグして並び替え",
"clear_search": "検索をクリア"
},

View File

@ -342,7 +342,6 @@
"list_title_received": "Алынған",
"open_url_error": "Сілтемені әдепкі браузерде ашу мүмкін болмады. Әдепкі браузерді ауыстырып, қайталап көріңіз.",
"rbf_explain": "Бұл транзакцияны тезірек өндірілуі үшін жоғары комиссиямен ауыстырамыз. Бұл RBF — Replace by Fee деп аталады.",
"transactions_count": "Транзакциялар саны",
"txid": "Транзакция идентификаторы",
"updating": "Жаңартылуда...",
"watchOnlyWarningTitle": "Қауіпсіздік ескертуі",
@ -420,8 +419,6 @@
"details_multisig_type": "multisig",
"details_show_xpub": "Әмиянның xpub-ын көрсету",
"details_show_addresses": "Мекенжайларды көрсету",
"swipe_balance_hide": "Жасыру",
"swipe_balance_show": "Көрсету",
"drag_to_reorder": "Ретін өзгерту үшін сүйреңіз",
"clear_search": "Іздеуді тазалау",
"details_use_with_hardware_wallet": "Аппараттық әмиянмен пайдалану",

View File

@ -369,7 +369,6 @@
"status_bump": "ಶುಲ್ಕ ಹೆಚ್ಚಿಸಿ",
"transaction_loading_error": "ವಹಿವಾಟನ್ನು ಲೋಡ್ ಮಾಡಲು ಸಮಸ್ಯೆ ಇದೆ. ಪುನಃ ಪ್ರಯತ್ನಿಸಿ.",
"transaction_not_available": "ವಹಿವಾಟು ಲಭ್ಯವಿಲ್ಲ",
"transactions_count": "ವಹಿವಾಟುಗಳ ಸಂಖ್ಯೆ",
"txid": "ವಹಿವಾಟು ID",
"updating": "ನವೀಕರಿಸಲಾಗುತ್ತಿದೆ...",
"watchOnlyWarningDescription": "ಬಳಕೆದಾರರನ್ನು ವಂಚಿಸಲು “watch-only” ವ್ಯಾಲೆಟ್‌ಗಳನ್ನು ಬಳಸುವ ವಂಚಕರ ಬಗ್ಗೆ ಎಚ್ಚರಿಕೆಯಿಂದಿರಿ. ಈ ವ್ಯಾಲೆಟ್‌ಗಳು ನಿಮಗೆ ಹಣವನ್ನು ನಿಯಂತ್ರಿಸಲು ಅಥವಾ ಕಳುಹಿಸಲು ಅವಕಾಶ ನೀಡುವುದಿಲ್ಲ; ಅವು ಕೇವಲ ಬಾಕಿಯನ್ನು ವೀಕ್ಷಿಸಲು ಅವಕಾಶ ನೀಡುತ್ತವೆ.",
@ -401,8 +400,6 @@
"details_master_fingerprint": "ಮಾಸ್ಟರ್ ಫಿಂಗರ್‌ಪ್ರಿಂಟ್",
"details_title": "ವ್ಯಾಲೆಟ್",
"wallets": "ವ್ಯಾಲೆಟ್‌ಗಳು",
"swipe_balance_hide": "ಮರೆಮಾಡಿ",
"swipe_balance_show": "ತೋರಿಸಿ",
"details_type": "ಪ್ರಕಾರ",
"details_use_with_hardware_wallet": "ಹಾರ್ಡ್‌ವೇರ್ ವ್ಯಾಲೆಟ್‌ನೊಂದಿಗೆ ಬಳಸಿ",
"import_do_import": "ಆಮದು",

View File

@ -376,7 +376,6 @@
"rbf_title": "급행 수수료(RBF)",
"status_bump": "급행 수수료",
"status_cancel": "트랜잭션 취소",
"transactions_count": "거래 건수",
"txid": "트랜잭션 아이디",
"updating": "갱신중...",
"watchOnlyWarningTitle": "보안 경고",
@ -446,8 +445,6 @@
"details_show_addresses": "주소 보이기",
"details_title": "지갑",
"wallets": "지갑",
"swipe_balance_hide": "숨기기",
"swipe_balance_show": "보이기",
"drag_to_reorder": "끌어서 재정렬",
"clear_search": "검색 지우기",
"details_type": "형태",

View File

@ -364,7 +364,6 @@
"rbf_title": "تسریع (RBF)",
"cpfp_title": "افزایش کارمزد (CPFP)",
"cpfp_create": "ساتن",
"transactions_count": "تعداد تراکونشیا",
"eta_10m": "تخمین: تقریبا 10 دیقه",
"eta_3h": "تخمین: تقریبا 3 ساعت",
"eta_1d": "تخمین: تقریبا 1 رۊز",
@ -445,8 +444,6 @@
"total_balance": "گرد مۉجۊدی",
"details_are_you_sure": "ٱطمیون داری؟",
"details_connected_to": "وصل بیه و",
"swipe_balance_hide": "قایم کردن",
"swipe_balance_show": "نشوݩ دؽن",
"clear_search": "پاک کردن جۊرسن",
"manage_title": "دؽونداری کردن کیف پیلٛیا",
"no_results_found": "هؽچی نجۊرست.",

View File

@ -376,7 +376,6 @@
"rbf_title": "Tambah Yuran (RBF)",
"status_bump": "Tambah Yuran",
"status_cancel": "Batalkan Urus Niaga",
"transactions_count": "Bilangan Urus Niaga",
"txid": "KP Urus Niaga",
"updating": "Mengemas kini...",
"watchOnlyWarningTitle": "Amaran keselamatan",
@ -446,8 +445,6 @@
"details_show_addresses": "Paparkan alamat",
"details_title": "Dompet",
"wallets": "Dompet",
"swipe_balance_hide": "Sembunyikan",
"swipe_balance_show": "Tunjukkan",
"drag_to_reorder": "Seret untuk susun semula",
"clear_search": "Kosongkan carian",
"details_type": "Jenis",

View File

@ -376,7 +376,6 @@
"rbf_title": "Betal et høyere gebyr (RBF)",
"status_bump": "Betal et høyere gebyr",
"status_cancel": "Avbryt transaksjon",
"transactions_count": "Antall Transaksjoner",
"txid": "Transaksjons-ID",
"updating": "Oppdaterer...",
"watchOnlyWarningTitle": "Sikkerhetsadvarsel",
@ -445,8 +444,6 @@
"details_show_addresses": "Vis adresser",
"details_title": "Lommebok",
"wallets": "Lommebøker",
"swipe_balance_hide": "Skjul",
"swipe_balance_show": "Vis",
"drag_to_reorder": "Dra for å endre rekkefølge",
"clear_search": "Tøm søk",
"details_use_with_hardware_wallet": "Bruk med maskinvarelommebok",

View File

@ -376,7 +376,6 @@
"rbf_title": "छिटो बनाउनुहोस् (RBF)",
"status_bump": "छिटो बनाउनुहोस्",
"status_cancel": "लेनदेन क्यान्सिल",
"transactions_count": "लेनदेन गणना",
"txid": "लेनदेन ID",
"updating": "अद्यावधिक गर्दै...",
"watchOnlyWarningTitle": "सुरक्षा चेतावनी",
@ -446,8 +445,6 @@
"details_show_addresses": "ठेगानाहरू देखाउनुहोस्",
"details_title": "वालेट",
"wallets": "वालेटहरू",
"swipe_balance_hide": "लुकाउनुहोस्",
"swipe_balance_show": "देखाउनुहोस्",
"drag_to_reorder": "पुनः क्रमबद्ध गर्न तान्नुहोस्",
"clear_search": "खोजी खाली गर्नुहोस्",
"details_type": "प्रकार",

View File

@ -360,7 +360,6 @@
"rbf_title": "Bump fee (RBF)",
"status_bump": "Bump fee",
"status_cancel": "Annuleer transactie",
"transactions_count": "Transactieteller",
"txid": "Transactie ID",
"updating": "Updaten...",
"cancel_explain": "We zullen deze transactie vervangen door een transactie die aan jezelf betaalt en hogere fees heeft. Dit annuleert effectief de huidige transactie. Dit heet RBF — Replace by Fee.",
@ -483,8 +482,6 @@
"details_del_wb_err": "Het opgegeven saldobedrag komt niet overeen met het saldo van deze wallet. Probeer het opnieuw.",
"details_display": "Weergeven op startscherm",
"details_export_history": "Geschiedenis exporteren naar CSV",
"swipe_balance_hide": "Verbergen",
"swipe_balance_show": "Tonen",
"drag_to_reorder": "Sleep om volgorde te wijzigen",
"clear_search": "Zoekopdracht wissen",
"import_success_watchonly": "Je wallet is succesvol geïmporteerd. WAARSCHUWING: Dit is een watch-only-wallet, je kunt er NIET vanaf uitgeven.",

View File

@ -376,7 +376,6 @@
"rbf_title": "Sharp am up (RBF)",
"status_bump": "Sharp am up",
"status_cancel": "Comot transaction",
"transactions_count": "How many transactions",
"txid": "Transaction ID na",
"updating": "Dey update...",
"watchOnlyWarningTitle": "Security wahala",
@ -446,8 +445,6 @@
"details_show_addresses": "Show the addresses",
"details_title": "Wallet wey",
"wallets": "Wallets wey you get",
"swipe_balance_hide": "Hide am",
"swipe_balance_show": "Show am",
"drag_to_reorder": "Drag make you reorder",
"clear_search": "Clear the search",
"details_type": "Wetin kind",

View File

@ -376,7 +376,6 @@
"rbf_title": "Zwiększ opłatę (RBF)",
"status_bump": "Zwiększ opłatę",
"status_cancel": "Anuluj transakcję",
"transactions_count": "Ilość transakcji",
"txid": "ID Transakcji",
"updating": "Aktualizuję...",
"watchOnlyWarningTitle": "Ostrzeżenie bezpieczeństwa",
@ -514,8 +513,6 @@
"more_info": "Więcej informacji",
"details_delete_wallet_error_message": "Nie udało się potwierdzić usunięcia tego portfela z powiadomień możliwe, że przyczyną jest problem z siecią lub słabe połączenie. Jeśli kontynuujesz, możesz nadal otrzymywać powiadomienia o transakcjach związanych z tym portfelem, nawet po jego usunięciu.",
"details_delete_anyway": "Usuń mimo to",
"swipe_balance_hide": "Ukryj",
"swipe_balance_show": "Pokaż",
"drag_to_reorder": "Przeciągnij, aby zmienić kolejność",
"clear_search": "Wyczyść wyszukiwanie"
},

View File

@ -375,7 +375,6 @@
"rbf_title": "Aumentar Taxa (RBF)",
"status_bump": "Aumentar Taxa",
"status_cancel": "Cancelar Transação",
"transactions_count": "Contagem das Transações",
"txid": "ID da transação",
"updating": "Atualizando...",
"watchOnlyWarningTitle": "Alerta de segurança",
@ -513,8 +512,6 @@
"more_info": "Mais informações",
"details_delete_wallet_error_message": "Houve um problema ao confirmar se esta carteira foi removida das notificações — isso pode ser devido a um problema de rede ou conexão ruim. Se você continuar, ainda poderá receber notificações de transações relacionadas a esta carteira, mesmo depois que ela for excluída.",
"details_delete_anyway": "Apagar mesmo assim",
"swipe_balance_hide": "Ocultar",
"swipe_balance_show": "Mostrar",
"drag_to_reorder": "Arraste para reordenar",
"clear_search": "Limpar busca",
"manage_wallets_search_placeholder": "Buscar carteiras, endereços, transações e notas"

View File

@ -376,7 +376,6 @@
"rbf_title": "Aumentar taxa (RBF)",
"status_bump": "Aumento de taxa",
"status_cancel": "Cancelar transação",
"transactions_count": "Número de transações",
"txid": "ID da transação",
"updating": "A atualizar...",
"watchOnlyWarningTitle": "Aviso de segurança",
@ -514,8 +513,6 @@
"more_info": "Saber Mais",
"details_delete_wallet_error_message": "Houve um problema ao confirmar se esta carteira foi removida das notificações — isto pode ser devido a um problema de rede ou ligação fraca. Se continuar, poderá ainda receber notificações de transações relacionadas com esta carteira, mesmo depois desta ter sido eliminada.",
"details_delete_anyway": "Apagar de qualquer forma",
"swipe_balance_hide": "Esconder",
"swipe_balance_show": "Mostrar",
"drag_to_reorder": "Arrastar para reordenar",
"clear_search": "Limpar pesquisa"
},

View File

@ -360,7 +360,6 @@
"rbf_title": "Crește comisionul (RBF)",
"status_bump": "Crește comisionul",
"status_cancel": "Anulează tranzacția",
"transactions_count": "Numărul tranzacțiilor",
"txid": "ID-ul tranzacției",
"updating": "Se actualizează...",
"transaction_loading_error": "A apărut o problemă la încărcarea tranzacției. Te rugăm să încerci din nou mai târziu.",
@ -486,8 +485,6 @@
"details_del_wb_q": "Acest portofel are o balanță. Înainte de a continua, te rugăm să fii conștient că nu vei putea recupera fondurile fără fraza seed a acestui portofel. Pentru a evita ștergerea accidentală, te rugăm să introduci balanța portofelului tău de {balance} satoshi.",
"details_display": "Afișează pe ecranul principal",
"details_export_history": "Exportă istoricul în CSV",
"swipe_balance_hide": "Ascunde",
"swipe_balance_show": "Afișează",
"drag_to_reorder": "Trage pentru a reordona",
"clear_search": "Șterge căutarea",
"import_passphrase": "Frază de acces",

View File

@ -392,7 +392,6 @@
"rbf_title": "Повысить комиссию (RBF)",
"status_bump": "Повысить комиссию",
"status_cancel": "Отменить",
"transactions_count": "Всего транзакций",
"txid": "TXID",
"updating": "Обновление...",
"watchOnlyWarningTitle": "Предупреждение безопасности",
@ -511,8 +510,6 @@
"identity_pubkey": "Identity Pubkey",
"xpub_title": "XPUB кошелька",
"manage_wallets_search_placeholder": "Поиск кошельков, адресов, транзакций и заметок",
"swipe_balance_hide": "Скрыть",
"swipe_balance_show": "Показать",
"drag_to_reorder": "Перетащите для изменения порядка",
"clear_search": "Очистить поиск",
"more_info": "Подробнее",

View File

@ -365,7 +365,6 @@
"rbf_title": "බම්ප් ගාස්තුව (RBF)",
"status_bump": "බම්ප් ගාස්තුව",
"status_cancel": "ගනුදෙනුව අවලංගු කරන්න",
"transactions_count": "ගනුදෙනු ගණන",
"txid": "ගනුදෙනු හැඳුනුම්පත",
"updating": "යාවත්කාලීන කරමින් ...",
"transaction_loading_error": "ගනුදෙනුව පූරණය කිරීමේදී ගැටළුවක් ඇති විය. කරුණාකර පසුව නැවත උත්සාහ කරන්න.",
@ -490,8 +489,6 @@
"details_del_wb_err": "සපයා ඇති ශේෂ මුදල මෙම පසුම්බියේ ශේෂයට නොගැලපේ. කරුණාකර නැවත උත්සාහ කරන්න.",
"details_display": "මුල් තිරයේ පෙන්වන්න",
"details_export_history": "ඉතිහාසය CSV වෙත අපනයනය කරන්න",
"swipe_balance_hide": "සඟවන්න",
"swipe_balance_show": "පෙන්වන්න",
"drag_to_reorder": "නැවත අනුපිළිවෙළ කිරීමට ඇද ගන්න",
"clear_search": "සෙවුම හිස් කරන්න",
"import_success_watchonly": "ඔබේ පසුම්බිය සාර්ථකව ආනයනය කර ඇත. අවවාදයයි: මෙය නැරඹීමට පමණි පසුම්බියකි, ඔබට මෙයින් වියදම් කළ නොහැක.",

View File

@ -376,7 +376,6 @@
"rbf_title": "Navýšiť poplatok za transakciu (RBF)",
"status_bump": "Navýšiť poplatok",
"status_cancel": "Zrušiť transakciu",
"transactions_count": "počet transakcií",
"txid": "ID transakcie",
"updating": "Aktualizuje sa...",
"watchOnlyWarningTitle": "Bezpečnostné upozornenie",
@ -446,8 +445,6 @@
"details_show_addresses": "Zobraziť adresy",
"details_title": "Peňaženka",
"wallets": "peňaženky",
"swipe_balance_hide": "Skryť",
"swipe_balance_show": "Zobraziť",
"drag_to_reorder": "Potiahnutím zmeníte poradie",
"clear_search": "Vymazať vyhľadávanie",
"details_type": "Typ",

View File

@ -367,7 +367,6 @@
"rbf_title": "Povečaj omrežnino (RBF)",
"status_bump": "Povečaj omrežnino",
"status_cancel": "Prekliči transakcijo",
"transactions_count": "Število transakcij",
"txid": "ID transakcije",
"updating": "Osveževanje...",
"transaction_loading_error": "Pri nalaganju transakcije je prišlo do težave. Poskusite znova kasneje.",
@ -490,8 +489,6 @@
"clear_clipboard_on_import": "Počisti odložišče po uvozu",
"details_del_wb_err": "Vneseno stanje se ne ujema s stanjem te denarnice. Poskusite ponovno.",
"details_display": "Prikaži na domačem zaslonu",
"swipe_balance_hide": "Skrij",
"swipe_balance_show": "Prikaži",
"drag_to_reorder": "Povlecite za preureditev",
"clear_search": "Počisti iskanje",
"import_success_watchonly": "Vaša denarnica je bila uspešno uvožena. OPOZORILO: To je opazovalna denarnica, iz nje NE morete zapravljati.",

View File

@ -378,7 +378,6 @@
"rbf_title": "Përshpejto (RBF)",
"status_bump": "Përshpejto",
"status_cancel": "Anulo",
"transactions_count": "Numri i transaksioneve",
"txid": "ID-ja e transaksionit",
"watchOnlyWarningTitle": "Paralajmërim sigurie",
"watchOnlyWarningDescription": "Bëni kujdes nga mashtruesit që shpesh përdorin portofola \"vetëm për shikim\" për të mashtruar përdoruesit. Këto portofola nuk ju lejojnë të kontrolloni ose të dërgoni fonde; ato ju lejojnë vetëm të shihni ballancën.",
@ -468,8 +467,6 @@
"details_master_fingerprint": "Shenjë gishti kryesore",
"details_multisig_type": "multisig",
"details_show_xpub": "Shfaq XPUB-in e portofolit",
"swipe_balance_hide": "Fshih",
"swipe_balance_show": "Shfaq",
"drag_to_reorder": "Tërhiq për të rirenditur",
"clear_search": "Pastro kërkimin",
"details_use_with_hardware_wallet": "Përdor me portofol hardware",

View File

@ -376,7 +376,6 @@
"rbf_title": "Ubrzaj (RBF)",
"status_bump": "Ubrzaj",
"status_cancel": "Otkaži",
"transactions_count": "Broj transakcija",
"txid": "ID transakcije",
"updating": "Ažuriranje...",
"watchOnlyWarningTitle": "Bezbednosno upozorenje",
@ -446,8 +445,6 @@
"details_show_addresses": "Prikaži adrese",
"details_title": "Novčanik",
"wallets": "Novčanici",
"swipe_balance_hide": "Sakrij",
"swipe_balance_show": "Prikaži",
"drag_to_reorder": "Prevucite za preuređivanje",
"clear_search": "Obriši pretragu",
"details_type": "Tip",

View File

@ -366,7 +366,6 @@
"rbf_title": "Höj avgift (RBF)",
"status_bump": "Höj avgift",
"status_cancel": "Avbryt transaktion",
"transactions_count": "Antal transaktioner",
"txid": "Transaktions ID",
"updating": "Uppdaterar...",
"transaction_loading_error": "Det uppstod ett problem när transaktionen skulle läsas in. Försök igen senare.",
@ -492,8 +491,6 @@
"clear_clipboard_on_import": "Töm urklipp vid import",
"details_del_wb_err": "Det angivna saldot matchar inte denna plånboks saldo. Försök igen.",
"details_display": "Visa på startskärmen",
"swipe_balance_hide": "Dölj",
"swipe_balance_show": "Visa",
"drag_to_reorder": "Dra för att ändra ordning",
"clear_search": "Rensa sökning",
"learn_more": "Läs mer",

View File

@ -351,7 +351,6 @@
"rbf_title": "เพิ่มค่าธรรมเนียม (RBF)",
"status_bump": "เพิ่มค่าธรรมเนียม",
"status_cancel": "ยกเลิกธุรกรรม",
"transactions_count": "จำนวนธุรกรรม",
"cancel_explain": "เราจะแทนที่ธุรกรรมนี้ด้วยธุรกรรมที่จ่ายให้ท่านเองและมีค่าธรรมเนียมสูงขึ้น ซึ่งจะเป็นการยกเลิกธุรกรรมปัจจุบันอย่างมีประสิทธิภาพ วิธีนี้เรียกว่า RBF—Replace by Fee",
"transaction_loading_error": "เกิดปัญหาในการโหลดธุรกรรม กรุณาลองอีกครั้งในภายหลัง",
"transaction_not_available": "ไม่พบธุรกรรม",
@ -475,8 +474,6 @@
"details_export_history": "ส่งออกประวัติเป็น CSV",
"details_multisig_type": "หลายลายเซ็น",
"details_show_addresses": "แสดงแอดเดรส",
"swipe_balance_hide": "ซ่อน",
"swipe_balance_show": "แสดง",
"drag_to_reorder": "ลากเพื่อจัดเรียงใหม่",
"clear_search": "ล้างการค้นหา",
"import_passphrase": "วลีรหัสผ่าน",

View File

@ -377,7 +377,6 @@
"rbf_title": "Hızlandır (RBF)",
"status_bump": "Hızlandır",
"status_cancel": "İptal",
"transactions_count": "İşlem Sayısı",
"txid": "İşlem ID'si",
"updating": "Güncelleniyor...",
"watchOnlyWarningTitle": "Güvenlik uyarısı",
@ -463,8 +462,6 @@
"details_master_fingerprint": "Ana Parmak İzi",
"details_multisig_type": "multisig",
"details_show_addresses": "Adresleri göster",
"swipe_balance_hide": "Gizle",
"swipe_balance_show": "Göster",
"drag_to_reorder": "Yeniden sıralamak için sürükle",
"clear_search": "Aramayı temizle",
"details_use_with_hardware_wallet": "Donanım Cüzdanı ile Kullan",

View File

@ -376,7 +376,6 @@
"rbf_title": "Прискорити (RBF)",
"status_bump": "Прискорити",
"status_cancel": "Скасувати",
"transactions_count": "Кількість Транзакцій",
"txid": "ID транзакції",
"updating": "Оновлення...",
"watchOnlyWarningTitle": "Попередження безпеки",
@ -446,8 +445,6 @@
"details_show_addresses": "Показати адреси",
"details_title": "Гаманець",
"wallets": "Гаманці",
"swipe_balance_hide": "Приховати",
"swipe_balance_show": "Показати",
"drag_to_reorder": "Перетягніть, щоб змінити порядок",
"clear_search": "Очистити пошук",
"details_type": "Тип",

View File

@ -366,7 +366,6 @@
"rbf_title": "Tăng phí (RBF)",
"status_bump": "Tăng phí",
"status_cancel": "Huỷ giao dịch",
"transactions_count": "Số lượng giao dịch ",
"txid": "ID giao dịch",
"updating": "Đang cập nhật...",
"transaction_loading_error": "Đã có sự cố khi tải giao dịch. Vui lòng thử lại sau.",
@ -490,8 +489,6 @@
"clear_clipboard_on_import": "Xoá bảng tạm khi nhập",
"details_del_wb_err": "Số dư được cung cấp không khớp với số dư của ví này. Vui lòng thử lại.",
"details_display": "Hiển thị ở màn hình chính",
"swipe_balance_hide": "Ẩn",
"swipe_balance_show": "Hiển thị",
"drag_to_reorder": "Kéo để sắp xếp lại",
"clear_search": "Xoá tìm kiếm",
"learn_more": "Tìm hiểu thêm",

View File

@ -376,7 +376,6 @@
"rbf_title": "Versnel (RBF)",
"status_bump": "Versnel",
"status_cancel": "Kanselleer",
"transactions_count": "Transaksietelling",
"txid": "Transaksie-ID",
"updating": "Opdateer...",
"watchOnlyWarningTitle": "Sekuriteitswaarskuwing",
@ -446,8 +445,6 @@
"details_show_addresses": "Wys adresse",
"details_title": "Beursie",
"wallets": "beursies",
"swipe_balance_hide": "Versteek",
"swipe_balance_show": "Wys",
"drag_to_reorder": "Sleep om te herrangskik",
"clear_search": "Maak soektog skoon",
"details_type": "Tipe",

View File

@ -375,7 +375,6 @@
"rbf_title": "Phakamisa Intlawulo (RBF)",
"status_bump": "Phakamisa Intlawulo",
"status_cancel": "Rhoxisa",
"transactions_count": "Inani lee-Transaction",
"txid": "I-ID ye-Transaction",
"updating": "Iyahlaziya...",
"watchOnlyWarningTitle": "Isilumkiso sokhuseleko",
@ -443,8 +442,6 @@
"details_master_fingerprint": "I-Fingerprint engundoqo",
"details_multisig_type": "i-multisig",
"details_show_addresses": "Bonisa iidilesi",
"swipe_balance_hide": "Fihla",
"swipe_balance_show": "Bonisa",
"drag_to_reorder": "Tsala ukuhlela kwakhona",
"clear_search": "Cima ukhangelo",
"details_use_with_hardware_wallet": "Sebenzisa ne-Hardware Wallet",

View File

@ -376,7 +376,6 @@
"rbf_title": "追加矿工费RBF",
"status_bump": "追加矿工费",
"status_cancel": "取消交易",
"transactions_count": "交易数量",
"txid": "交易 ID",
"updating": "正在更新……",
"watchOnlyWarningTitle": "安全警告",
@ -514,8 +513,6 @@
"more_info": "更多信息",
"details_delete_wallet_error_message": "确认此钱包是否已从通知中移除时出现问题——这可能是由于网络问题或连接不良。如果您继续操作,即使删除此钱包,您仍可能收到与该钱包相关的交易通知。",
"details_delete_anyway": "仍然删除",
"swipe_balance_hide": "隐藏",
"swipe_balance_show": "显示",
"drag_to_reorder": "拖动以重新排序",
"clear_search": "清除搜索"
},

View File

@ -354,7 +354,6 @@
"rbf_title": "對碰費用RBF",
"status_bump": "對碰費用",
"status_cancel": "取消交易",
"transactions_count": "交易記數",
"txid": "交易ID",
"updating": "更新中...",
"cancel_explain": "我們將以一筆付款給您本人且手續費較高的交易來取代此交易。這實際上會取消目前的交易。此功能稱為 RBF—以手續費取代。",
@ -482,8 +481,6 @@
"details_del_wb_q": "此錢包有結餘。在繼續之前,請注意若沒有此錢包的助記詞,您將無法復原資金。為避免意外移除,請輸入您錢包的結餘 {balance} 聰。",
"details_display": "顯示於主畫面",
"details_export_history": "匯出紀錄為 CSV",
"swipe_balance_hide": "隱藏",
"swipe_balance_show": "顯示",
"drag_to_reorder": "拖曳以重新排序",
"clear_search": "清除搜尋",
"import_passphrase": "密語",

View File

@ -20,6 +20,9 @@ import { useTheme } from '../../components/themes';
import { useExtendedNavigation } from '../../hooks/useExtendedNavigation';
import loc from '../../loc';
import { useStorage } from '../../hooks/context/useStorage';
import { useSettings } from '../../hooks/context/useSettings';
import { BitcoinUnit } from '../../models/bitcoinUnits';
import { FiatUnit } from '../../models/fiatUnit';
import { TTXMetadata } from '../../class/blue-app';
import { ExtendedTransaction, LightningTransaction, Transaction, TWallet } from '../../class/wallets/types';
import useBounceAnimation from '../../hooks/useBounceAnimation';
@ -127,6 +130,8 @@ const reducer = (state: State, action: Action): State => {
const ManageWallets: React.FC = () => {
const { colors, closeImage, dark } = useTheme();
const { wallets: persistedWallets, setWalletsWithNewOrder, txMetadata } = useStorage();
const { preferredFiatCurrency } = useSettings();
const preferredFiatLabel = preferredFiatCurrency?.endPointKey ?? FiatUnit.USD.endPointKey;
const initialWalletsRef = useRef<TWallet[]>(deepCopyWallets(persistedWallets));
const { navigate, setOptions, goBack } = useExtendedNavigation();
const { direction } = useLocale();
@ -144,6 +149,7 @@ const ManageWallets: React.FC = () => {
const [noResultsOpacity] = useState(new Animated.Value(0));
const [dragging, setDragging] = useState(false);
const [resetSwipeToken, setResetSwipeToken] = useState(0);
const searchTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);
const debouncedSearch = useCallback((text: string) => {
if (searchTimerRef.current) clearTimeout(searchTimerRef.current);
@ -496,6 +502,33 @@ const ManageWallets: React.FC = () => {
[state.walletsCopy, setWalletsWithNewOrder],
);
const handleCycleBalanceUnit = useCallback(
(wallet: TWallet) => {
const walletID = wallet.getID();
const current = wallet.getPreferredBalanceUnit();
let next: BitcoinUnit;
if (current === BitcoinUnit.BTC) {
next = BitcoinUnit.SATS;
} else if (current === BitcoinUnit.SATS) {
next = BitcoinUnit.LOCAL_CURRENCY;
} else {
next = BitcoinUnit.BTC;
}
const updatedWallets = deepCopyWallets(state.walletsCopy).map(w => {
if (w.getID() === walletID) {
w.setPreferredBalanceUnit(next);
}
return w;
});
setWalletsWithNewOrder(updatedWallets);
dispatch({ type: SAVE_CHANGES, payload: updatedWallets });
triggerHapticFeedback(HapticFeedbackTypes.Selection);
},
[state.walletsCopy, setWalletsWithNewOrder],
);
const renderListItem = useCallback(
(item: Item, drag: (() => void) | undefined, isActive: boolean) => {
const compatibleState = {
@ -518,11 +551,25 @@ const ManageWallets: React.FC = () => {
);
}
let rowBaseKey = '';
if (item.type === ItemType.WalletSection) {
rowBaseKey = `wallet-${item.data.getID()}`;
} else if (item.type === ItemType.TransactionSection) {
const paymentHash =
typeof item.data.payment_hash === 'string' ? item.data.payment_hash : item.data.payment_hash?.data?.toString?.() || '';
rowBaseKey = `tx-${item.data.hash || item.data.txid || paymentHash || item.data.timestamp}-${item.data.walletID || ''}`;
} else {
rowBaseKey = `addr-${item.data.address}-${item.data.walletID}-${item.data.index}`;
}
return (
<ManageWalletsListItem
key={`row-${resetSwipeToken}-${rowBaseKey}`}
item={item}
isDraggingDisabled={isDragDisabled}
handleToggleHideBalance={handleToggleHideBalance}
handleCycleBalanceUnit={handleCycleBalanceUnit}
preferredFiatLabel={preferredFiatLabel}
state={compatibleState}
navigateToWallet={navigateToWallet}
navigateToAddress={navigateToAddress}
@ -535,9 +582,12 @@ const ManageWallets: React.FC = () => {
},
[
handleToggleHideBalance,
handleCycleBalanceUnit,
preferredFiatLabel,
state.walletsCopy,
state.searchQuery,
state.isSearchFocused,
resetSwipeToken,
navigateToWallet,
navigateToAddress,
renderHighlightedText,
@ -661,6 +711,7 @@ const ManageWallets: React.FC = () => {
containerStyle={styles.listContainer}
onDragBegin={() => {
setDragging(true);
setResetSwipeToken(prev => prev + 1);
}}
onDragEnd={({ from, to, data }: DragEndParams<Item>) => {
setDragging(false);

View File

@ -295,20 +295,34 @@ describe('BlueWallet UI Tests - no wallets', () => {
await waitForId('NavigationCloseButton');
await expect(element(by.id('cr34t3d'))).toBeVisible();
// swipe wallet row left to reveal Hide action; tap it
await element(by.id('cr34t3d')).swipe('left', 'slow', 0.6);
// swipe wallet row left to reveal the right action (unit switch); tap it
// Use the label text element as the swipe target: it is typically >90% visible compared to the full row container on CI.
await element(by.text('cr34t3d')).swipe('left', 'slow', 0.6);
await waitForId('SwipeCycleBalanceUnit');
await element(by.id('SwipeCycleBalanceUnit')).tap();
// swipe wallet row right to reveal left action (Hide); tap it
await element(by.text('cr34t3d')).swipe('right', 'slow', 0.6);
await waitForId('SwipeHideBalance');
await element(by.id('SwipeHideBalance')).tap();
await element(by.id('NavigationCloseButton')).tap();
await waitForId('WalletsList');
await sleep(1500); // ensure saveToDisk completes before app is killed
// restart app — hide state must persist; swipe-left now exposes "Show" (hideBalance persisted as true)
// restart app — hide state must persist; swipe-right now exposes "Show" (hideBalance persisted as true)
await device.launchApp({ newInstance: true });
await waitForId('WalletsList');
await element(by.id('cr34t3d')).longPress();
await waitForId('NavigationCloseButton');
await element(by.id('cr34t3d')).swipe('left', 'slow', 0.6);
await waitForId('SwipeShowBalance');
await expect(element(by.id('cr34t3d'))).toBeVisible();
await element(by.text('cr34t3d')).swipe('right', 'slow', 0.7);
try {
await waitForId('SwipeShowBalance', 45000);
} catch (_waitErr) {
// Retry once: recycled list rows and gesture-handler timing can miss the first reveal on CI.
await element(by.text('cr34t3d')).swipe('right', 'slow', 0.8);
await waitForId('SwipeShowBalance', 45000);
}
// restore visible state so subsequent tests are clean
await element(by.id('SwipeShowBalance')).tap();