mirror of
https://github.com/BlueWallet/BlueWallet.git
synced 2025-01-19 05:45:15 +01:00
Merge branch 'master' into tooltipadd
This commit is contained in:
commit
a3d7c2a151
2
App.js
2
App.js
@ -302,7 +302,7 @@ const App = () => {
|
||||
isVisible={isClipboardContentModalVisible}
|
||||
onClose={hideClipboardContentModal}
|
||||
>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={[styles.modalContent, stylesHook.modalContent]}>
|
||||
<BlueTextCentered>
|
||||
{clipboardContentType === ClipboardContentType.BITCOIN && loc.wallets.clipboard_bitcoin}
|
||||
|
@ -348,7 +348,7 @@ const ReorderWalletsStackRoot = () => {
|
||||
const Drawer = createDrawerNavigator();
|
||||
function DrawerRoot() {
|
||||
const dimensions = useWindowDimensions();
|
||||
const isLargeScreen = Platform.OS === 'android' ? isTablet() : dimensions.width >= Dimensions.get('screen').width / 3 && isTablet();
|
||||
const isLargeScreen = Platform.OS === 'android' ? isTablet() : dimensions.width >= Dimensions.get('screen').width / 2 && isTablet();
|
||||
const drawerStyle = { width: '0%' };
|
||||
|
||||
return (
|
||||
|
@ -1,7 +1,7 @@
|
||||
import { Platform } from 'react-native';
|
||||
import prompt from 'react-native-prompt-android';
|
||||
|
||||
module.exports = (title, text, isCancelable = true, type = 'secure-text') => {
|
||||
module.exports = (title, text, isCancelable = true, type = 'secure-text', isOKDestructive = false) => {
|
||||
const keyboardType = type === 'numeric' ? 'numeric' : 'default';
|
||||
|
||||
if (Platform.OS === 'ios' && type === 'numeric') {
|
||||
@ -25,6 +25,7 @@ module.exports = (title, text, isCancelable = true, type = 'secure-text') => {
|
||||
console.log('OK Pressed');
|
||||
resolve(password);
|
||||
},
|
||||
style: isOKDestructive ? 'destructive' : 'default',
|
||||
},
|
||||
]
|
||||
: [
|
||||
|
278
loc/pl.json
278
loc/pl.json
@ -1,22 +1,24 @@
|
||||
{
|
||||
"_": {
|
||||
"allow": "Zezwól",
|
||||
"bad_password": "Nieprawidłowe hasło, spróbuj ponownie.",
|
||||
"cancel": "Anuluj",
|
||||
"continue": "Kontynuuj",
|
||||
"dont_allow": "Nie zezwalaj",
|
||||
"enter_password": "Wprowadź hasło",
|
||||
"file_saved": "Plik ({filePath}) został zapisany w twoim katalogu Pobrane.",
|
||||
"invalid_animated_qr_code_fragment": "Nieprawidłowy fragment animowanego kodu QR, spróbuj ponownie",
|
||||
"never": "nigdy",
|
||||
"no": "Nie",
|
||||
"of": "{number} z {total}",
|
||||
"ok": "OK",
|
||||
"storage_is_encrypted": "Twoje dane są zaszyfrowane. Hasło jest wymagane do ich rozszyfrowania",
|
||||
"allow": "Zezwól",
|
||||
"dont_allow": "Nie zezwalaj",
|
||||
"yes": "Tak",
|
||||
"no": "Nie",
|
||||
"save": "Zapisz",
|
||||
"seed": "Źródło",
|
||||
"storage_is_encrypted": "Twoje dane są zaszyfrowane. Hasło jest wymagane do ich rozszyfrowania",
|
||||
"wallet_key": "Klucz Portfela",
|
||||
"yes": "Tak"
|
||||
"invalid_animated_qr_code_fragment" : "Nieprawidłowy fragment animowanego kodu QR, spróbuj ponownie",
|
||||
"file_saved": "Plik ({filePath}) został zapisany w twoim katalogu Pobrane.",
|
||||
"discard_changes": "Odrzucić zmiany?",
|
||||
"discard_changes_detail": "Masz niezapisane zmiany. Czy jesteś pewien, że chcesz je odrzucić i opuścić ten ekran?"
|
||||
},
|
||||
"azteco": {
|
||||
"codeIs": "Twój kod vouchera to",
|
||||
@ -73,7 +75,10 @@
|
||||
"item_nooffers": "Brak ofert. Spróbój zmienić \"w mojej okolicy\" na Oferty Globalne",
|
||||
"item_rating": "{transakcje} Ocena",
|
||||
"item_rating_no": "Brak oceny",
|
||||
"local_trader": "Lokalny handel",
|
||||
"local_trader_new": "Nowy",
|
||||
"login": "Login",
|
||||
"logout": "Wyloguj",
|
||||
"mycont": "Moje kontrakty",
|
||||
"offer_accept": "Akceptuj ofertę",
|
||||
"offer_account_finish": "Wygląda na to że nie ukończyłeś zakładania konta HodlHodl, czy dokończyć teraz?",
|
||||
@ -86,9 +91,6 @@
|
||||
"offer_window": "okno",
|
||||
"p2p": "Giełda p2p"
|
||||
},
|
||||
"is_it_my_address": {
|
||||
"title": "sprawdź czy to mój adres?"
|
||||
},
|
||||
"lnd": {
|
||||
"errorInvoiceExpired": "Faktura utraciła ważność",
|
||||
"exchange": "Kantor",
|
||||
@ -109,19 +111,14 @@
|
||||
"lndViewInvoice": {
|
||||
"additional_info": "Dodatkowa informacja",
|
||||
"for": "Do:",
|
||||
"has_been_paid": "Wezwanie zostało opłacone",
|
||||
"lightning_invoice": "Wezwanie Lightning",
|
||||
"has_been_paid": "Wezwanie zostało opłacone",
|
||||
"open_direct_channel": "Otwórz kanał bezpośredni z tym nodem:",
|
||||
"please_pay": "Stwórz wezwanie",
|
||||
"preimage": "Wyświetl kod wezwania",
|
||||
"sats": "sat",
|
||||
"wasnt_paid_and_expired": "To wezwanie nie zostało opłacone i wygasło."
|
||||
},
|
||||
"notifications": {
|
||||
"ask_me_later": "Zapytaj później",
|
||||
"no_and_dont_ask": "Nie. I nie pytaj ponownie.",
|
||||
"would_you_like_to_receive_notifications": "Czy chcesz otrzymywać powiadomienia o nadchodzących płatnościach?"
|
||||
},
|
||||
"plausibledeniability": {
|
||||
"create_fake_storage": "Utwórz szyfrowany schowek",
|
||||
"create_password": "Utwórz hasło",
|
||||
@ -142,6 +139,7 @@
|
||||
"ok_lnd": "OK, zachowałem.",
|
||||
"text": "Proszę poświęć chwilę, żeby zapisać te słowa na kartce papieru, To twoja kopia zapasowa, możesz użyć jej, aby odtworzyć portfel na innym urządzeniu.",
|
||||
"text_lnd": "Proszę, poświęć chwilę, żeby zapisać to uwierzytelnienie LNDHub. To twoja kopia zapasowa, możesz użyć jej, aby odtworzyć portfel na innym urządzeniu.",
|
||||
"text_lnd2": "Ten portfel jest obsługiwany przez BlueWallet.",
|
||||
"title": "Twój portfel został utworzony ..."
|
||||
},
|
||||
"receive": {
|
||||
@ -180,6 +178,7 @@
|
||||
"details_adv_full_sure": "Czy jesteś pewien/-a, że chcesz użyć wszystkich środków z Twojego portfela w tej transakcji? ",
|
||||
"details_adv_import": "Importuj transakcje",
|
||||
"details_amount_field_is_not_valid": "Kwota w polu jest niepoprawna",
|
||||
"details_amount_field_is_less_than_minimum_amount_sat": "Podana ilość jest za mała. Proszę podaj ilość większą niż 500 sat.",
|
||||
"details_create": "Stwórz polecenie zapłaty",
|
||||
"details_error_decode": "Błąd: Nie potrafię zdekodować adresu Bitcoin",
|
||||
"details_fee_field_is_not_valid": "Błędnie wypełnione pole z opłatą",
|
||||
@ -211,37 +210,46 @@
|
||||
"input_done": "Gotowe",
|
||||
"input_paste": "Wklej",
|
||||
"input_total": "Łącznie:",
|
||||
"no_tx_signing_in_progress": "Żadna transakcja nie jest obecnie podpisywana.",
|
||||
"open_settings": "Otwórz ustawienia",
|
||||
"permission_camera_message": "Potrzebujemy twojej zgody na wykorzystanie kamery",
|
||||
"permission_camera_title": "Zgoda na wykorzystanie kamery",
|
||||
"permission_storage_denied_message": "BlueWallet nie mół zapisać tego pliku. Otwórz ustawienia urządzenia i zezwól na Dostęp do Pamieci Masowej.",
|
||||
"psbt_sign": "Podpisz transakcję",
|
||||
"open_settings": "Otwórz ustawienia",
|
||||
"permission_storage_later": "Zapytaj mnie później",
|
||||
"permission_storage_message": "BlueWallet potrzebuje twojej zgody żeby zachować ten plik.",
|
||||
"permission_storage_denied_message": "BlueWallet nie mół zapisać tego pliku. Otwórz ustawienia urządzenia i zezwól na Dostęp do Pamieci Masowej.",
|
||||
"permission_storage_title": "Dostęp do Pamięci Masowej",
|
||||
"problem_with_psbt": "Problem z PSBT",
|
||||
"psbt_clipboard": "Skopiuj do schowka",
|
||||
"psbt_this_is_psbt": "To jest częściowo podpisana transakcja Bitcoin (PSBT). Podpisz ją w swoim portfelu sprzętowym.",
|
||||
"psbt_tx_export": "Eksportuj do pliku.",
|
||||
"no_tx_signing_in_progress": "Żadna transakcja nie jest obecnie podpisywana.",
|
||||
"psbt_tx_open": "Otwórz podpisaną transakcję",
|
||||
"psbt_tx_scan": "Skanuj Podpisane Transakcje",
|
||||
"qr_error_no_qrcode": "Ten obraz nie zawiera kodu QR.",
|
||||
"qr_error_no_wallet": "Wybrany plik nie zawiera portfela, który może być zaimportowany.",
|
||||
"success_done": "Wykonane",
|
||||
"txSaved": "Ścieżka pliku ({filaPath}) została zapisana w twoim folderze Pobrane."
|
||||
"txSaved": "Ścieżka pliku ({filaPath}) została zapisana w twoim folderze Pobrane.",
|
||||
"problem_with_psbt": "Problem z PSBT"
|
||||
},
|
||||
"settings": {
|
||||
"about": "O",
|
||||
"about_awesome": "Przeczytaj o awesome",
|
||||
"about_backup": "Zawsze rób kopie zapasowe swoich kluczy!",
|
||||
"about_free": "BlueWallet jest projektem open source. Stworzonym przez i dla użytkowników Bitcoina.",
|
||||
"about_license": "Licencja MIT",
|
||||
"about_release_notes": "Informacje o wydaniu",
|
||||
"about_review": "Wystaw nam opinię",
|
||||
"about_selftest": "wykonaj self test",
|
||||
"about_selftest_ok": "Wszystkie testy wewnętrzne przebiegły pomyślnie. Portfel działa dobrze.",
|
||||
"about_sm_github": "GitHub",
|
||||
"about_sm_discord": "Serwer Discord",
|
||||
"about_sm_telegram": "Chat Telegram",
|
||||
"about_sm_twitter": "Obserwuj nas na Twitterze",
|
||||
"advanced_options": "Opcje Zaawansowane",
|
||||
"biometrics": "Biometria",
|
||||
"biom_10times": "Próbowałeś podać hasło 10 razy. Czy chcesz zresetować magazyn danych? To usunie wszystkie portfele i odszyfruje dane.",
|
||||
"biom_conf_identity": "Proszę potwierdź swoją tożsamość",
|
||||
"biom_no_passcode": "Twoje urządzenie nie ma hasła. Aby przejść dalej, skonfiguruj hasło w Ustawieniach aplikacji.",
|
||||
"biom_remove_decrypt": "Wszystkie Twoje portfele zostaną skasowane a magazyn danych odszyfrowany. Czy jesteś pewien?",
|
||||
"currency": "Waluta",
|
||||
"currency_source": "Kurs jest pozyskiwany z",
|
||||
"default_desc": "Po uruchomieniu BlueWallet natychmiast otworzy wcześniej wybrany domyślny portfel.",
|
||||
@ -255,9 +263,19 @@
|
||||
"electrum_port": "port TCP, zazwyczaj {przykład}",
|
||||
"electrum_port_ssl": "port SSL, zazwyczaj {przykład}",
|
||||
"electrum_saved": "Zmiany zostały zachowane pomyślnie. Żeby je zobaczyć zrestartuj aplikację.",
|
||||
"electrum_settings": "Ustawienia Electrum",
|
||||
"set_electrum_server_as_default": "Ustawić {server} jako domyślny serwer Electrum?",
|
||||
"set_lndhub_as_default": "Ustawić {url} jako domyślny serwer LNDHub?",
|
||||
"electrum_settings_server": "Ustawienia serwera Electrum",
|
||||
"electrum_settings_explain": "zostaw puste aby użyć domyślnej wartości",
|
||||
"electrum_status": "Status",
|
||||
"electrum_clear_alert_title": "Wyczyścić historię?",
|
||||
"electrum_clear_alert_message": "Czy chcesz wyczyścić historię serwerów Electrum?",
|
||||
"electrum_clear_alert_cancel": "Anuluj",
|
||||
"electrum_clear_alert_ok": "Ok",
|
||||
"electrum_select": "Wybierz",
|
||||
"electrum_reset": "Ustaw wartości domyślne",
|
||||
"electrum_history": "Historia serwerów",
|
||||
"electrum_clear": "Wyczyść",
|
||||
"encrypt_decrypt": "Odszyfruj Schowek",
|
||||
"encrypt_decrypt_q": "Czy jesteś pewien, że chcesz odszyfrować schowek? To pozwoli na dostęp do twoich portfeli bez hasła.",
|
||||
"encrypt_del_uninstall": "Usuń, jeżeli BlueWallet jest odinstalowany.",
|
||||
@ -284,26 +302,37 @@
|
||||
"network_electrum": "Serwer Electrum",
|
||||
"not_a_valid_uri": "Nieprawidłowy URL",
|
||||
"notifications": "Powiadomienia",
|
||||
"open_link_in_explorer" : "Otwórz link w eksploratrze",
|
||||
"password": "Hasło",
|
||||
"password_explain": "Stwórz hasło które odszyfruje schowek",
|
||||
"passwords_do_not_match": "Hasła się nie zgadzają",
|
||||
"plausible_deniability": "Wiarygodne zaprzeczenie",
|
||||
"privacy": "Prywatność",
|
||||
"privacy_clipboard_explanation": "Udostępnij jeżeli adres lub wezwanie są znalezione w schowku.",
|
||||
"privacy_quickactions": "Skróty Portfeli",
|
||||
"privacy_quickactions_explanation": "Dotknij i przytrzymaj ikonę aplikacji BlueWallet na swoim ekranie głównym aby szybko wyświetlić stan portfela.",
|
||||
"privacy_read_clipboard": "Czytaj Schowek",
|
||||
"privacy_read_clipboard_alert": "BlueWallet wyświetli adresy znalezione i skopiowane z twojego schowka.",
|
||||
"privacy_system_settings": "Ustawienia Systemowe",
|
||||
"privacy_quickactions": "Skróty Portfeli",
|
||||
"privacy_quickactions_explanation": "Dotknij i przytrzymaj ikonę aplikacji BlueWallet na swoim ekranie głównym aby szybko wyświetlić stan portfela.",
|
||||
"privacy_clipboard_explanation": "Udostępnij jeżeli adres lub wezwanie są znalezione w schowku.",
|
||||
"push_notifications": "Powiadomienia Push",
|
||||
"retype_password": "Wprowadź Ponownie hasło",
|
||||
"save": "Zapisz",
|
||||
"saved": "Zapisano"
|
||||
"saved": "Zapisano",
|
||||
"success_transaction_broadcasted" : "Sukces! Twoja transakcja została rozgłoszona!",
|
||||
"total_balance": "Saldo całkowite",
|
||||
"total_balance_explanation": "Wyświetlaj całkowite saldo wszystkich Twoich portfeli wśród widżetów na ekranie domowym",
|
||||
"widgets": "Widżety"
|
||||
},
|
||||
"notifications": {
|
||||
"would_you_like_to_receive_notifications": "Czy chcesz otrzymywać powiadomienia o nadchodzących płatnościach?",
|
||||
"no_and_dont_ask": "Nie. I nie pytaj ponownie.",
|
||||
"ask_me_later": "Zapytaj później"
|
||||
},
|
||||
"transactions": {
|
||||
"cancel_explain": "Zastąpimy tą transakcję taką, która ma wyższe opłaty. To efektywnie anuluje transakcję. Nazywa się to RBF - Replace By Fee, Zastąp Opłatą.",
|
||||
"cancel_no": "Ta transakcja jest nie do zastąpienia",
|
||||
"cancel_title": "Anuluj tę transakcję (RBF)",
|
||||
"confirmations_lowercase": "Potwierdzenia: {confirmations}",
|
||||
"cpfp_create": "Utwórz",
|
||||
"cpfp_exp": "Stworzymy kolejną transakcję, która wydaje twoją niepotwierdzoną transakcję. Całkowita opłata będzie wyższa niż z transakcji pierwotnej, więc powinna zostać wykopana szybciej. To się nazywa CPFP - Child Pays For Parent, Dziecko Płaci Za Rodzica.",
|
||||
"cpfp_no_bump": "Dla tej transakcji nie można zwiększyć opłat",
|
||||
@ -316,25 +345,214 @@
|
||||
"details_inputs": "Wejścia",
|
||||
"details_outputs": "Wyjścia",
|
||||
"details_received": "Otrzymane",
|
||||
"transaction_note_saved":"Transakcja została pomyślnie zapisana.",
|
||||
"details_show_in_block_explorer": "Zobacz w przeglądarce bloków",
|
||||
"details_title": "Transakcja",
|
||||
"details_to": "Wyjście",
|
||||
"details_transaction_details": "Szczegóły Transakcji",
|
||||
"enable_hw": "Ten portfel nie jest używany w połączeniu z portfelem sprzętowym. Czy chcesz włączyć obsługę portfela sprzętowego?",
|
||||
"enable_offline_signing": "Ten portfel nie jest używany wespół z podpisywaniem offline. Czy chcesz to włączyć?",
|
||||
"list_conf": "potwierdzenia: {numer}",
|
||||
"list_title": "transakcje",
|
||||
"pending": "Oczekuje",
|
||||
"list_title": "transakcje",
|
||||
"rbf_explain": "Zastąpimy tą transakcję taką, która ma wyższe opłaty, tak że powinna zostać szybciej wykopana. Nazywa się to RBF - Replace By Fee, Zastąp Opłatą.",
|
||||
"rbf_title": "podbij opłatę (RBF)",
|
||||
"status_bump": "Podbij Opłatę",
|
||||
"status_cancel": "Anuluj transakcje",
|
||||
"transaction_note_saved": "Transakcja została pomyślnie zapisana."
|
||||
"transactions_count": "Ilość transakcji",
|
||||
"txid": "Identyfikator transakcji",
|
||||
"updating": "Aktualizuję..."
|
||||
},
|
||||
"wallets": {
|
||||
"add_bitcoin": "Bitcoin",
|
||||
"add_bitcoin_explain": "Prosty i potęzny portfel Bitcoin",
|
||||
"add_create": "Utwórz",
|
||||
"add_entropy_generated": "{gen} bajtów wygenerowanej entropii",
|
||||
"add_entropy_provide": "Dostarcz entropii przy użyciu rzutów kością",
|
||||
"add_entropy_remain": "{gen} bajtów wygenerowanej entropii. Pozostałe {rem} bajty zostaną pozyskane z systemowego generatora liczb losowych.",
|
||||
"add_import_wallet": "Import portfela",
|
||||
"add_lightning": "Lightning",
|
||||
"add_lightning_explain": "W celu wydawania za pomocą natychmiastowych transakcji",
|
||||
"add_lndhub": "Podłącz do własnego LNDHuba",
|
||||
"add_lndhub_error": "Podany adres nie jest prawidłowym węzłem LNDHub.",
|
||||
"add_lndhub_placeholder": "Adres Twojego węzła",
|
||||
"add_or": "lub",
|
||||
"add_title": "Dodaj portfel",
|
||||
"add_wallet_name": "Nazwa",
|
||||
"add_wallet_type": "Typ",
|
||||
"clipboard_bitcoin": "Masz w schowku adres Bitcoin. Czy chcesz go użyć do transakcji?",
|
||||
"clipboard_lightning": "Masz w schowku fakturę Lightning. Czy chcesz jej użyć do transakcji?",
|
||||
"details_address": "Adres",
|
||||
"details_advanced": "Zaawansowane",
|
||||
"details_are_you_sure": "Jesteś pewny?",
|
||||
"details_connected_to": "Podłączono do",
|
||||
"details_del_wb": "Saldo portfela",
|
||||
"details_del_wb_err": "Podane saldo nie zgadza się z saldem portfela. Spróbuj ponownie.",
|
||||
"details_del_wb_q": "Ten portfel ma dodatnie saldo. Zanim pójdziesz dalej, wiedz, że nie będziesz w stanie odzyskać środków bez hasła ziarna. Aby uniknąć przypadkowego usunięcia portfela, wpisz jego saldo wynoszące {balance} satoshi.",
|
||||
"details_delete": "Skasuj",
|
||||
"details_delete_wallet": "Skasuj portfel",
|
||||
"details_derivation_path": "ścieżka derywacji",
|
||||
"details_display": "Pokaż na liście portfeli",
|
||||
"details_export_backup": "Eksport/Kopia zapasowa",
|
||||
"details_marketplace": "Rynek",
|
||||
"details_master_fingerprint": "Główny odcisk palca",
|
||||
"details_ms_l": "{m} z {n} legacy (p2sh)",
|
||||
"details_ms_ns": "{m} z {n} natywny segwit (p2wsh)",
|
||||
"details_ms_ws": "{m} z {n} owinięty segwit (p2sh-p2wsh)",
|
||||
"details_multisig_type": "multisig",
|
||||
"details_no_cancel": "Nie, anuluj",
|
||||
"details_save": "Zapisz",
|
||||
"details_show_xpub": "Pokaż XPUB portfela",
|
||||
"details_title": "Portfel",
|
||||
"details_type": "Typ",
|
||||
"details_use_with_hardware_wallet": "Użyj z portfelem sprzętowym",
|
||||
"details_wallet_updated": "Portfel zaktualizowany",
|
||||
"details_yes_delete": "Tak, skasuj",
|
||||
"enter_bip38_password": "Podaj hasło by zdeszyfrować",
|
||||
"export_title": "Eksport portfela",
|
||||
"import_do_import": "Importuj",
|
||||
"import_error": "Import nieudany. Upewnij się proszę, że dane są prawidłowe.",
|
||||
"import_explanation": "Podaj poniżej twoją frazę mnemoniczną, prywatny klucz, WIF lub cokolwiek co masz. BlueWallet postara się odgadnąć prawidłowy format i zaimportować Twój portfel. Jeśli zostanie podany klucz publiczny, dodamy go jako portfel tylko do obserwacji.",
|
||||
"import_file": "Importuj plik",
|
||||
"import_imported": "Zaimportowano",
|
||||
"import_placeholder_fail": "Import portfela",
|
||||
"import_placeholder_inprogress": "Importuję portfel...",
|
||||
"import_scan_qr": "Skanuj lub importuj plik",
|
||||
"import_success": "Twój portfel został pomyślnie zaimportowany.",
|
||||
"list_long_scan": "Zeskanuj kod QR"
|
||||
"import_title": "Importuj",
|
||||
"list_create_a_button": "Dodaj teraz",
|
||||
"list_create_a_wallet": "Dodaj portfel",
|
||||
"list_create_a_wallet_text": "Jest za darmo i możesz utworzyć\nile Ci się podoba.",
|
||||
"list_empty_txs1": "Twoje transakcje pojawią się tutaj.",
|
||||
"list_empty_txs1_lightning": "Portfel Lightning powinien być używany do codziennych transakcji. Opłaty są szalenie niskie a prędkość piorunująca.",
|
||||
"list_empty_txs2": "Rozpocznij z Twoim portfelem",
|
||||
"list_empty_txs2_lightning": "\nZaby zacząć używać, dotknij Zarządzaj Środkami i doładuj swoje saldo.",
|
||||
"list_header": "Portfel reprezentuje para kluczy: jeden prywatny i jeden, który możesz podawać aby otrzymywać monety.",
|
||||
"list_import_error": "Napotkano błąd podczas próby importowania tego portfela.",
|
||||
"list_import_problem": "Miał miejsce problem podczas importowania tego portfela.",
|
||||
"list_latest_transaction": "Ostatnia transakcja",
|
||||
"list_ln_browser": "Przeglądarka LApp",
|
||||
"list_long_choose": "Wybierz zdjęcie",
|
||||
"list_long_clipboard": "Kopiuj ze schowka",
|
||||
"list_long_scan": "Zeskanuj kod QR",
|
||||
"list_marketplace": "Rynek",
|
||||
"list_tap_here_to_buy": "Kup Bitcoin",
|
||||
"list_title": "Portfele",
|
||||
"list_tryagain": "Spróbuj ponownie",
|
||||
"no_ln_wallet_error": "Musisz najpierw dodać portfel Lightning, zanim zapłacisz fakturę.",
|
||||
"looks_like_bip38": "To wygląda na klucz prywatny chroniony hasłem (BIP38).",
|
||||
"reorder_title": "Zmień kolejność portfeli",
|
||||
"please_continue_scanning": "Proszę skanuj dalej.",
|
||||
"scan_error": "Błąd skanowania",
|
||||
"select_no_bitcoin": "Nie ma dostępnych portfeli Bitcoin.",
|
||||
"select_no_bitcoin_exp": "Portfel Bitcoin jest wymagany by uzupełnić portfel Lightning. Proszę utwórz lub zaimportuj.",
|
||||
"select_wallet": "Wybierz portfel",
|
||||
"take_photo": "Zrób zdjęcie",
|
||||
"xpub_copiedToClipboard": "Skopiowano do schowka.",
|
||||
"pull_to_refresh": "Pociągnij by odświeżyć",
|
||||
"warning_do_not_disclose": "Uwaga! Nie ujawniać.",
|
||||
"add_ln_wallet_first": "Najpierw musisz dodać portfel Lightning.",
|
||||
"identity_pubkey": "Klucz publiczny tożsamości",
|
||||
"xpub_title": "XPUB portfela"
|
||||
},
|
||||
"multisig": {
|
||||
"multisig_vault": "Skarbiec",
|
||||
"default_label": "Skarbiec Multisig",
|
||||
"multisig_vault_explain": "Najlepsze bezpieczeństwo dla dużych kwot",
|
||||
"provide_signature": "Podaj podpis",
|
||||
"vault_key": "Klucz Skarbca {number}",
|
||||
"required_keys_out_of_total": "Wymagane klucze spośród wszystkich",
|
||||
"fee": "Opłata: {number}",
|
||||
"fee_btc": "{number} BTC",
|
||||
"confirm": "Potwierdź",
|
||||
"header": "Wyślij",
|
||||
"share": "Udostępnij",
|
||||
"view": "Widok",
|
||||
"manage_keys": "Zarządzaj kluczami",
|
||||
"how_many_signatures_can_bluewallet_make": "ile podpisów BlueWallet może zrobić",
|
||||
"signatures_required_to_spend": "Podpisy wymagane {number}",
|
||||
"signatures_we_can_make": "mogą utworzyć {number}",
|
||||
"scan_or_import_file": "Skanuj lub importuj plik",
|
||||
"export_coordination_setup": "Eksportuj Ustawienia Koordynacji",
|
||||
"cosign_this_transaction": "Współsygnować tę transakcję?",
|
||||
"lets_start": "Zacznijmy",
|
||||
"create": "Utwórz",
|
||||
"provide_key": "Podaj klucz",
|
||||
"native_segwit_title": "Najlepsza praktyka",
|
||||
"wrapped_segwit_title": "Najlepsza kompatybilność",
|
||||
"legacy_title": "Legacy",
|
||||
"co_sign_transaction": "Podpisz transakcję",
|
||||
"what_is_vault": "Skarbiec jest",
|
||||
"what_is_vault_numberOfWallets": "portfelem multisig {m}-z-{n}",
|
||||
"what_is_vault_wallet": ".",
|
||||
"vault_advanced_customize": "Ustawienia Skarbca",
|
||||
"needs": "Potrzebuje",
|
||||
"what_is_vault_description_number_of_vault_keys": "{m} kluczy skarbca",
|
||||
"what_is_vault_description_to_spend": "aby wydawać i trzeci,\nktóry możesz używać jako kopia zapasowa.",
|
||||
"what_is_vault_description_to_spend_other": "do wydawania.",
|
||||
"quorum": "kworum {m} z {n}",
|
||||
"quorum_header": "Kworum",
|
||||
"of": "z",
|
||||
"wallet_type": "Typ portfela",
|
||||
"view_key": "Widok",
|
||||
"invalid_mnemonics": "Ta fraza mnemoniczna nie wydaje się prawidłowa.",
|
||||
"invalid_cosigner": "Nieprawidłowe dane współsygnatariusza",
|
||||
"not_a_multisignature_xpub": "To niejest XPUB z portfela multisig",
|
||||
"invalid_cosigner_format": "Niepoprawny współsygnatariusz: to nie jest współsygnatariusz formatu {format}.",
|
||||
"create_new_key": "Otwórz nowy",
|
||||
"scan_or_open_file": "Skanuj lub otwórz plik",
|
||||
"i_have_mnemonics": "Mam ziarno dla tego klucza",
|
||||
"please_write_down_mnemonics": "Zapisz to wyrażenie menomiczne na papierze. Nie martw się, możesz to zrobić później.",
|
||||
"i_wrote_it_down": "OK, zapisałem.",
|
||||
"type_your_mnemonics": "Wprowadź ziarno by zaimportować Twój istniejący klucz Skarbca.",
|
||||
"this_is_cosigners_xpub": "To jest XPUB współsygnatariusza—gotowy do zaimportowania w innym portfelu. Można go udostępniać.",
|
||||
"wallet_key_created": "Twój klucz Skarbca został utworzony. Poświęć chwilę by zrobić kopię bezpieczeństwa Twojego ziarna.",
|
||||
"are_you_sure_seed_will_be_lost": "Czy jesteś pewien? Twoje ziarno zostanie utracone jeśli nie masz kopii bezpieczeństwa.",
|
||||
"forget_this_seed": "Zapomnij to ziarno i w zamian użyj XPUB.",
|
||||
"invalid_fingerprint": "Odcisk palca tego ziarnia nie zgadza się z odciskiem palca współsygnatariusza.",
|
||||
"view_edit_cosigners": "Wyświetł/edytuj współsygnatariuszy",
|
||||
"this_cosigner_is_already_imported": "Ten współsygnatariusz już został zaimportowany.",
|
||||
"export_signed_psbt": "Eksportuj podpisaną PSBT",
|
||||
"input_fp": "Podaj odcisk palca",
|
||||
"input_fp_explain": "Pomiń aby użyć domyślnej wartości (00000000)",
|
||||
"input_path": "Podaj ścieżkę derywacji",
|
||||
"input_path_explain": "Pomiń aby użyć domyślnej wartości ({default})",
|
||||
"ms_help": "Pomoc",
|
||||
"ms_help_title": "Jak działa multisig: wskazówki i porady",
|
||||
"ms_help_text": "Portfel z wieloma kluczami, dla zwiększonego bezpieczeństwa i współdzielonego nadzoru",
|
||||
"ms_help_title1": "Zalecane jest kilka urządzeń.",
|
||||
"ms_help_1": "Ten Skarbiec będzie funkcjonować z innymi aplikacjami BlueWallet i portfelami kompatybilnymi z PSBT, takimi jak Electrum, Specter, Coldcard, Cobo Vault, etc.",
|
||||
"ms_help_title2": "Edycja kluczy",
|
||||
"ms_help_2": "Możesz utworzyć wszystkie klucze Skarbca na tym urządzeniu i usunąć lub edytować klucze później. Posiadanie wszystkich kluczy na tym samym urządzeniu jest równoważne z punktu widzenia bezpieczeństwa ze zwykłym portfelem Bitcoin.",
|
||||
"ms_help_title3": "Kopie zapasowa Skarbców",
|
||||
"ms_help_3": "Wśród opcji portfela znajdziesz kopie bezpieczeństwa Twojego Skarbca: pełną i tylko-do-wglądu. Ta kopia jest jak mapa do Twojego portfela. Just kluczowa w trakcie odzyskiwania w razie zgubienia jednego z ziaren.",
|
||||
"ms_help_title4": "Import Skarbców",
|
||||
"ms_help_4": "Aby zaimportować multisig, użyj kopii zapasowej i funkcji Importuj. Jeśli masz tylko ziarna lub XPUB, możesz uzyć przycisku Importuj podczas tworzenia kluczy Skarbca.",
|
||||
"ms_help_title5": "Tryb zaawansowany",
|
||||
"ms_help_5": "Domyślnie, BlueWallet wygeneruje skarbiec 2-z-3. Aby stworzyć inne kworum lub zmienić typ adresu, włącz Tryb Zaawansowany w Ustawieniach."
|
||||
},
|
||||
"is_it_my_address": {
|
||||
"title": "sprawdź czy to mój adres?",
|
||||
"owns": "{label} posiada {address}",
|
||||
"enter_address": "Wprowadź adres",
|
||||
"check_address": "Sprawdź adres",
|
||||
"no_wallet_owns_address": "Żaden z dostępnych portfeli nie posiada podanego adresu."
|
||||
},
|
||||
"cc": {
|
||||
"change": "Reszta",
|
||||
"coins_selected": "Wybrano monet ({number})",
|
||||
"empty": "Ten portfel nie ma żadnych monet w tej chwili.",
|
||||
"freeze": "Zamroź",
|
||||
"freezeLabel": "Zamroź",
|
||||
"freezeLabel_un": "Odmroź",
|
||||
"header": "Kontrola monet",
|
||||
"use_coin": "Użyj monety",
|
||||
"use_coins": "Użyj monet",
|
||||
"tip": "Ta funkcja pozwala zobaczyć, nadać etykietę, zamrozić lub wybrać monety by usprawnić zarządzanie portelem. Możesz wybrać kilka monet wybierając kolorowe kółka."
|
||||
},
|
||||
"units": {
|
||||
"BTC": "BTC",
|
||||
"MAX": "Max",
|
||||
"sat_byte": "sat/bajt",
|
||||
"sats": "satoshi"
|
||||
}
|
||||
}
|
||||
|
@ -9,6 +9,7 @@ import {
|
||||
StyleSheet,
|
||||
Text,
|
||||
TextInput,
|
||||
Platform,
|
||||
TouchableOpacity,
|
||||
TouchableWithoutFeedback,
|
||||
View,
|
||||
@ -360,7 +361,7 @@ const LNDCreateInvoice = () => {
|
||||
<View style={[styles.root, styleHooks.root]}>
|
||||
<StatusBar barStyle="light-content" />
|
||||
<View style={[styles.amount, styleHooks.amount]}>
|
||||
<KeyboardAvoidingView behavior="position">
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior="position">
|
||||
<BlueBitcoinAmount
|
||||
isLoading={isLoading}
|
||||
amount={amount}
|
||||
|
@ -1,5 +1,5 @@
|
||||
import React, { useContext, useEffect, useRef, useState } from 'react';
|
||||
import { View, Text, StatusBar, ScrollView, BackHandler, TouchableOpacity, StyleSheet, useWindowDimensions } from 'react-native';
|
||||
import { View, Text, StatusBar, ScrollView, BackHandler, TouchableOpacity, StyleSheet } from 'react-native';
|
||||
import Share from 'react-native-share';
|
||||
import ReactNativeHapticFeedback from 'react-native-haptic-feedback';
|
||||
import { Icon } from 'react-native-elements';
|
||||
@ -11,7 +11,6 @@ import {
|
||||
BlueText,
|
||||
SafeBlueArea,
|
||||
BlueButton,
|
||||
SecondButton,
|
||||
BlueCopyTextToClipboard,
|
||||
BlueSpacing20,
|
||||
BlueTextCentered,
|
||||
@ -26,13 +25,12 @@ const LNDViewInvoice = () => {
|
||||
const { invoice, walletID, isModal } = useRoute().params;
|
||||
const { wallets, setSelectedWallet, fetchAndSaveWalletTransactions } = useContext(BlueStorageContext);
|
||||
const wallet = wallets.find(w => w.getID() === walletID);
|
||||
const { width, height } = useWindowDimensions();
|
||||
const { colors } = useTheme();
|
||||
const { goBack, navigate, setParams, setOptions } = useNavigation();
|
||||
const [isLoading, setIsLoading] = useState(typeof invoice === 'string');
|
||||
const [isFetchingInvoices, setIsFetchingInvoices] = useState(true);
|
||||
const [invoiceStatusChanged, setInvoiceStatusChanged] = useState(false);
|
||||
const qrCodeHeight = height > width ? width - 20 : width / 2;
|
||||
const [qrCodeSize, setQRCodeSize] = useState(90);
|
||||
const fetchInvoiceInterval = useRef();
|
||||
const stylesHook = StyleSheet.create({
|
||||
root: {
|
||||
@ -177,6 +175,11 @@ const LNDViewInvoice = () => {
|
||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||
}, [invoice]);
|
||||
|
||||
const onLayout = e => {
|
||||
const { height, width } = e.nativeEvent.layout;
|
||||
setQRCodeSize(height > width ? width - 40 : e.nativeEvent.layout.width / 1.8);
|
||||
};
|
||||
|
||||
const render = () => {
|
||||
if (isLoading) {
|
||||
return (
|
||||
@ -237,7 +240,7 @@ const LNDViewInvoice = () => {
|
||||
<QRCode
|
||||
value={invoice.payment_request}
|
||||
logo={require('../../img/qr-code.png')}
|
||||
size={qrCodeHeight}
|
||||
size={qrCodeSize}
|
||||
logoSize={90}
|
||||
color="#000000"
|
||||
logoBackgroundColor={colors.brandingColor}
|
||||
@ -256,7 +259,7 @@ const LNDViewInvoice = () => {
|
||||
)}
|
||||
<BlueCopyTextToClipboard text={invoice.payment_request} />
|
||||
|
||||
<SecondButton onPress={handleOnSharePressed} title={loc.receive.details_share} />
|
||||
<BlueButton onPress={handleOnSharePressed} title={loc.receive.details_share} />
|
||||
|
||||
<BlueSpacing20 />
|
||||
<BlueButton
|
||||
@ -270,9 +273,9 @@ const LNDViewInvoice = () => {
|
||||
};
|
||||
|
||||
return (
|
||||
<SafeBlueArea styles={[styles.root, stylesHook.root]}>
|
||||
<SafeBlueArea styles={[styles.root, stylesHook.root]} onLayout={onLayout}>
|
||||
<StatusBar barStyle="default" />
|
||||
<ScrollView contentContainerStyle={styles.contentContainerStyle}>{render()}</ScrollView>
|
||||
<ScrollView>{render()}</ScrollView>
|
||||
</SafeBlueArea>
|
||||
);
|
||||
};
|
||||
@ -281,9 +284,6 @@ const styles = StyleSheet.create({
|
||||
root: {
|
||||
flex: 1,
|
||||
},
|
||||
contentContainerStyle: {
|
||||
flexGrow: 1,
|
||||
},
|
||||
justifyContentCenter: {
|
||||
justifyContent: 'center',
|
||||
},
|
||||
|
@ -312,7 +312,7 @@ const ReceiveDetails = () => {
|
||||
const renderCustomAmountModal = () => {
|
||||
return (
|
||||
<BottomModal isVisible={isCustomModalVisible} onClose={dismissCustomAmountModal}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={styles.modalContent}>
|
||||
<BlueBitcoinAmount
|
||||
unit={customUnit}
|
||||
|
@ -115,7 +115,11 @@ const Broadcast = () => {
|
||||
|
||||
return (
|
||||
<SafeBlueArea style={styles.blueArea}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null} keyboardShouldPersistTaps="handled">
|
||||
<KeyboardAvoidingView
|
||||
enabled={!Platform.isPad}
|
||||
behavior={Platform.OS === 'ios' ? 'position' : null}
|
||||
keyboardShouldPersistTaps="handled"
|
||||
>
|
||||
<View style={styles.wrapper}>
|
||||
{BROADCAST_RESULT.success !== broadcastResult && (
|
||||
<BlueCard style={styles.mainCard}>
|
||||
|
@ -409,7 +409,7 @@ const CoinControl = () => {
|
||||
setOutput(false);
|
||||
}}
|
||||
>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={[styles.modalContent, { backgroundColor: colors.elevated }]}>{output && renderOutputModalContent()}</View>
|
||||
</KeyboardAvoidingView>
|
||||
</BottomModal>
|
||||
|
@ -807,7 +807,7 @@ export default class SendDetails extends Component {
|
||||
isVisible={this.state.isFeeSelectionModalVisible}
|
||||
onClose={this.hideFeeSelectionModal}
|
||||
>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={styles.modalContent}>
|
||||
{options.map(({ label, time, fee, rate, active }, index) => (
|
||||
<TouchableOpacity
|
||||
@ -1165,7 +1165,7 @@ export default class SendDetails extends Component {
|
||||
isVisible={this.state.isAdvancedTransactionOptionsVisible}
|
||||
onClose={this.hideAdvancedTransactionOptionsModal}
|
||||
>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={styles.advancedTransactionOptionsModalContent}>
|
||||
{this.state.fromWallet.allowSendMax() && (
|
||||
<BlueListItem
|
||||
@ -1474,7 +1474,7 @@ export default class SendDetails extends Component {
|
||||
<View style={styles.root} onLayout={this.onLayout}>
|
||||
<StatusBar barStyle="light-content" />
|
||||
<View>
|
||||
<KeyboardAvoidingView behavior="position">
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior="position">
|
||||
<FlatList
|
||||
keyboardShouldPersistTaps="always"
|
||||
scrollEnabled={this.state.addresses.length > 1}
|
||||
|
@ -78,7 +78,11 @@ const IsItMyAddress = () => {
|
||||
|
||||
return (
|
||||
<SafeBlueArea style={[styles.blueArea, stylesHooks.blueArea]}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null} keyboardShouldPersistTaps="handled">
|
||||
<KeyboardAvoidingView
|
||||
enabled={!Platform.isPad}
|
||||
behavior={Platform.OS === 'ios' ? 'position' : null}
|
||||
keyboardShouldPersistTaps="handled"
|
||||
>
|
||||
<View style={styles.wrapper}>
|
||||
<BlueCard style={styles.mainCard}>
|
||||
<View style={[styles.input, stylesHooks.input]}>
|
||||
|
@ -1,7 +1,17 @@
|
||||
/* global alert */
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { ActivityIndicator, View, TextInput, TouchableOpacity, Linking, ScrollView, StyleSheet, KeyboardAvoidingView } from 'react-native';
|
||||
import {
|
||||
ActivityIndicator,
|
||||
Platform,
|
||||
View,
|
||||
TextInput,
|
||||
TouchableOpacity,
|
||||
Linking,
|
||||
ScrollView,
|
||||
StyleSheet,
|
||||
KeyboardAvoidingView,
|
||||
} from 'react-native';
|
||||
import Clipboard from '@react-native-community/clipboard';
|
||||
import { Text } from 'react-native-elements';
|
||||
import ReactNativeHapticFeedback from 'react-native-haptic-feedback';
|
||||
@ -158,7 +168,7 @@ export default class CPFP extends Component {
|
||||
|
||||
renderStage1(text) {
|
||||
return (
|
||||
<KeyboardAvoidingView behavior="position">
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior="position">
|
||||
<SafeBlueArea style={styles.root}>
|
||||
<BlueSpacing />
|
||||
<BlueCard style={styles.center}>
|
||||
|
@ -117,11 +117,12 @@ const TransactionsStatus = () => {
|
||||
}, [tx, wallets]);
|
||||
|
||||
useEffect(() => {
|
||||
if (wallet) {
|
||||
setSelectedWallet(wallet.current.getID());
|
||||
const walletID = wallet.current?.getID();
|
||||
if (walletID) {
|
||||
setSelectedWallet(wallet.current?.getID());
|
||||
}
|
||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||
}, [wallet]);
|
||||
}, [wallet.current]);
|
||||
|
||||
useEffect(() => {
|
||||
console.log('transactions/details - useEffect');
|
||||
|
@ -102,7 +102,7 @@ const WalletsAddMultisig = () => {
|
||||
const renderModal = () => {
|
||||
return (
|
||||
<BottomModal isVisible={isModalVisible} onClose={closeModal}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={[styles.modalContentShort, stylesHook.modalContentShort]}>
|
||||
<Text style={[styles.textHeader, stylesHook.textHeader]}>{loc.multisig.quorum_header}</Text>
|
||||
<Text style={[styles.textSubtitle, stylesHook.textSubtitle]}>{loc.multisig.required_keys_out_of_total}</Text>
|
||||
|
@ -603,7 +603,7 @@ const WalletsAddMultisigStep2 = () => {
|
||||
const renderProvideMnemonicsModal = () => {
|
||||
return (
|
||||
<BottomModal isVisible={isProvideMnemonicsModalVisible} onClose={hideProvideMnemonicsModal}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={[styles.modalContent, stylesHook.modalContent]}>
|
||||
<BlueTextCentered>{loc.multisig.type_your_mnemonics}</BlueTextCentered>
|
||||
<BlueSpacing20 />
|
||||
@ -634,7 +634,7 @@ const WalletsAddMultisigStep2 = () => {
|
||||
const renderCosignersXpubModal = () => {
|
||||
return (
|
||||
<BottomModal isVisible={isRenderCosignersXpubModalVisible} onClose={hideCosignersXpubModal}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={[styles.modalContent, stylesHook.modalContent, styles.alignItemsCenter]}>
|
||||
<Text style={[styles.headerText, stylesHook.textDestination]}>{loc.multisig.this_is_cosigners_xpub}</Text>
|
||||
<BlueSpacing20 />
|
||||
|
@ -185,6 +185,7 @@ const WalletDetails = () => {
|
||||
loc.formatString(loc.wallets.details_del_wb_q, { balance: wallet.getBalance() }),
|
||||
true,
|
||||
'plain-text',
|
||||
true,
|
||||
);
|
||||
if (Number(walletBalanceConfirmation) === wallet.getBalance()) {
|
||||
navigateToOverviewAndDeleteWallet();
|
||||
@ -413,7 +414,7 @@ const WalletDetails = () => {
|
||||
}
|
||||
})()}
|
||||
<Text style={[styles.textLabel2, stylesHook.textLabel2]}>{loc.wallets.add_wallet_name.toLowerCase()}</Text>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={[styles.input, stylesHook.input]}>
|
||||
<TextInput
|
||||
placeholder={loc.send.details_note_placeholder}
|
||||
|
@ -328,7 +328,7 @@ export default class HodlHodl extends Component {
|
||||
renderChooseSideModal = () => {
|
||||
return (
|
||||
<BottomModal isVisible={this.state.isChooseSideModalVisible} onClose={this.hideChooseSideModal}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={styles.modalContentShort}>
|
||||
<FlatList
|
||||
scrollEnabled={false}
|
||||
@ -377,7 +377,7 @@ export default class HodlHodl extends Component {
|
||||
}
|
||||
}}
|
||||
>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={styles.modalContentShort}>
|
||||
<FlatList
|
||||
scrollEnabled={false}
|
||||
@ -472,7 +472,7 @@ export default class HodlHodl extends Component {
|
||||
|
||||
return (
|
||||
<BottomModal isVisible={this.state.isChooseCountryModalVisible} onClose={this.hideChooseCountryModal}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={styles.modalContent}>
|
||||
<View style={styles.searchInputContainer}>
|
||||
<TextInput
|
||||
@ -546,7 +546,7 @@ export default class HodlHodl extends Component {
|
||||
|
||||
return (
|
||||
<BottomModal isVisible={this.state.isChooseCurrencyVisible} onClose={this.hideChooseCurrencyModal}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={styles.modalContent}>
|
||||
<View style={styles.searchInputContainer}>
|
||||
<TextInput
|
||||
@ -620,7 +620,7 @@ export default class HodlHodl extends Component {
|
||||
|
||||
return (
|
||||
<BottomModal isVisible={this.state.isChooseMethodVisible} deviceHeight={windowHeight} onClose={this.hideChooseMethodModal}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={styles.modalContent}>
|
||||
<View style={styles.searchInputContainer}>
|
||||
<TextInput
|
||||
|
@ -172,7 +172,7 @@ export default class HodlHodlMyContracts extends Component {
|
||||
|
||||
return (
|
||||
<BottomModal isVisible={this.state.isRenderContractVisible} onClose={this.hideContractModal}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={styles.modalContent}>
|
||||
<View style={styles.modalContentCentered}>
|
||||
<Text style={styles.btcText}>
|
||||
|
@ -176,7 +176,7 @@ export default class HodlHodlViewOffer extends Component {
|
||||
) : (
|
||||
<SafeBlueArea>
|
||||
<ScrollView>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={styles.modalContent}>
|
||||
<Text style={styles.Title}>{this.state.offerToDisplay.title}</Text>
|
||||
|
||||
|
@ -45,7 +45,7 @@ const WalletsList = () => {
|
||||
const [isLoading, setIsLoading] = useState(false);
|
||||
const [itemWidth, setItemWidth] = useState(width * 0.82 > 375 ? 375 : width * 0.82);
|
||||
const [isLargeScreen, setIsLargeScreen] = useState(
|
||||
Platform.OS === 'android' ? isTablet() : width >= Dimensions.get('screen').width / 3 && isTablet(),
|
||||
Platform.OS === 'android' ? isTablet() : width >= Dimensions.get('screen').width / 2 && isTablet(),
|
||||
);
|
||||
const [carouselData, setCarouselData] = useState([]);
|
||||
const dataSource = getTransactions(null, 10);
|
||||
@ -428,7 +428,7 @@ const WalletsList = () => {
|
||||
};
|
||||
|
||||
const onLayout = _e => {
|
||||
setIsLargeScreen(Platform.OS === 'android' ? isTablet() : width >= Dimensions.get('screen').width / 3 && isTablet());
|
||||
setIsLargeScreen(Platform.OS === 'android' ? isTablet() : width >= Dimensions.get('screen').width / 2 && isTablet());
|
||||
setItemWidth(width * 0.82 > 375 ? 375 : width * 0.82);
|
||||
};
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
import React, { useCallback, useContext, useEffect } from 'react';
|
||||
import React, { useCallback, useContext, useEffect, useState } from 'react';
|
||||
import { useNavigation, useRoute, useTheme } from '@react-navigation/native';
|
||||
import { View, useWindowDimensions, StyleSheet, BackHandler, StatusBar } from 'react-native';
|
||||
import { View, StyleSheet, BackHandler, StatusBar } from 'react-native';
|
||||
import QRCode from 'react-native-qrcode-svg';
|
||||
import { ScrollView } from 'react-native-gesture-handler';
|
||||
|
||||
@ -17,7 +17,7 @@ const PleaseBackupLNDHub = () => {
|
||||
const wallet = wallets.find(w => w.getID() === walletID);
|
||||
const navigation = useNavigation();
|
||||
const { colors } = useTheme();
|
||||
const { height, width } = useWindowDimensions();
|
||||
const [qrCodeSize, setQRCodeSize] = useState(90);
|
||||
const handleBackButton = useCallback(() => {
|
||||
navigation.dangerouslyGetParent().pop();
|
||||
return true;
|
||||
@ -48,8 +48,13 @@ const PleaseBackupLNDHub = () => {
|
||||
}, [handleBackButton]);
|
||||
|
||||
const pop = () => navigation.dangerouslyGetParent().pop();
|
||||
|
||||
const onLayout = e => {
|
||||
const { height, width } = e.nativeEvent.layout;
|
||||
setQRCodeSize(height > width ? width - 40 : e.nativeEvent.layout.width / 1.5);
|
||||
};
|
||||
return (
|
||||
<SafeBlueArea style={styles.root}>
|
||||
<SafeBlueArea style={styles.root} onLayout={onLayout}>
|
||||
<StatusBar barStyle="light-content" />
|
||||
<ScrollView centerContent contentContainerStyle={styles.scrollViewContent}>
|
||||
<View>
|
||||
@ -63,11 +68,11 @@ const PleaseBackupLNDHub = () => {
|
||||
value={wallet.secret}
|
||||
logo={require('../../img/qr-code.png')}
|
||||
logoSize={90}
|
||||
size={height > width ? width - 40 : width / 2}
|
||||
color="#000000"
|
||||
logoBackgroundColor={colors.brandingColor}
|
||||
backgroundColor="#FFFFFF"
|
||||
ecl="H"
|
||||
size={qrCodeSize}
|
||||
/>
|
||||
</View>
|
||||
<BlueCopyTextToClipboard text={wallet.getSecret()} />
|
||||
|
@ -272,7 +272,7 @@ const WalletTransactions = () => {
|
||||
const renderManageFundsModal = () => {
|
||||
return (
|
||||
<BottomModal isVisible={isManageFundsModalVisible} onClose={hideManageFundsModal}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={[styles.advancedTransactionOptionsModalContent, stylesHook.advancedTransactionOptionsModalContent]}>
|
||||
<BlueListItem
|
||||
hideChevron
|
||||
|
@ -510,7 +510,7 @@ const ViewEditMultisigCosigners = () => {
|
||||
const renderProvideMnemonicsModal = () => {
|
||||
return (
|
||||
<BottomModal isVisible={isProvideMnemonicsModalVisible} onClose={hideProvideMnemonicsModal}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={[styles.modalContent, stylesHook.modalContent]}>
|
||||
<BlueTextCentered>{loc.multisig.type_your_mnemonics}</BlueTextCentered>
|
||||
<BlueSpacing20 />
|
||||
@ -535,7 +535,7 @@ const ViewEditMultisigCosigners = () => {
|
||||
const renderShareModal = () => {
|
||||
return (
|
||||
<BottomModal isVisible={isShareModalVisible} onClose={hideShareModal}>
|
||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<KeyboardAvoidingView enabled={!Platform.isPad} behavior={Platform.OS === 'ios' ? 'position' : null}>
|
||||
<View style={[styles.modalContent, stylesHook.modalContent, styles.alignItemsCenter]}>
|
||||
<Text style={[styles.headerText, stylesHook.textDestination]}>{loc.multisig.this_is_cosigners_xpub}</Text>
|
||||
<View style={styles.qrCodeContainer}>
|
||||
@ -601,7 +601,7 @@ const ViewEditMultisigCosigners = () => {
|
||||
<View style={[styles.root, stylesHook.root]}>
|
||||
<StatusBar barStyle="light-content" />
|
||||
<KeyboardAvoidingView
|
||||
enabled
|
||||
enabled={!Platform.isPad}
|
||||
behavior={Platform.OS === 'ios' ? 'padding' : null}
|
||||
keyboardVerticalOffset={62}
|
||||
style={[styles.mainBlock, styles.root]}
|
||||
|
Loading…
Reference in New Issue
Block a user