Merge branch 'master' into rn738

This commit is contained in:
Marcos Rodriguez Velez 2024-07-01 21:31:35 -04:00
commit ecd209c210
No known key found for this signature in database
GPG Key ID: 6030B2F48CCE86D7
68 changed files with 5570 additions and 3703 deletions

View File

@ -18,8 +18,8 @@ GEM
artifactory (3.0.17)
atomos (0.1.3)
aws-eventstream (1.3.0)
aws-partitions (1.947.0)
aws-sdk-core (3.199.0)
aws-partitions (1.950.0)
aws-sdk-core (3.200.0)
aws-eventstream (~> 1, >= 1.3.0)
aws-partitions (~> 1, >= 1.651.0)
aws-sigv4 (~> 1.8)
@ -27,7 +27,7 @@ GEM
aws-sdk-kms (1.87.0)
aws-sdk-core (~> 3, >= 3.199.0)
aws-sigv4 (~> 1.1)
aws-sdk-s3 (1.154.0)
aws-sdk-s3 (1.155.0)
aws-sdk-core (~> 3, >= 3.199.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.8)
@ -210,7 +210,7 @@ GEM
base64
mini_magick (4.13.1)
mini_mime (1.1.5)
minitest (5.24.0)
minitest (5.24.1)
molinillo (0.8.0)
multi_json (1.15.0)
multipart-post (2.4.1)

View File

@ -80,11 +80,17 @@ android {
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 1
versionName "6.6.8"
versionName "6.6.9"
testBuildType System.getProperty('testBuildType', 'debug')
testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
}
sourceSets {
main {
assets.srcDirs = ['src/main/assets', 'src/main/res/assets']
}
}
buildTypes {
release {
// Caution! In production, you need to generate your own keystore file.
@ -96,6 +102,13 @@ android {
}
}
task copyFiatUnits(type: Copy) {
from '../../models/fiatUnits.json'
into 'src/main/assets'
}
preBuild.dependsOn(copyFiatUnits)
dependencies {
// The version of react-native is set by the React Native Gradle Plugin
implementation("com.facebook.react:react-android")
@ -111,6 +124,7 @@ dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'com.google.android.material:material:1.4.0'
implementation "androidx.work:work-runtime:2.9.0"
}
apply plugin: 'com.google.gms.google-services' // Google Services plugin

View File

@ -19,10 +19,10 @@
<uses-permission android:name="android.permission.ACTION_OPEN_DOCUMENT" />
<uses-permission android:name="android.permission.ACTION_GET_CONTENT" />
<uses-permission android:name="android.permission.ACTION_CREATE_DOCUMENT" />
<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" />
<uses-permission android:name="android.permission.USE_EXACT_ALARM" />
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.ACTION_SCREEN_OFF"/>
<uses-permission android:name="android.permission.ACTION_SCREEN_ON"/>
<application
android:name=".MainApplication"
android:label="@string/app_name"
@ -61,19 +61,18 @@
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
<receiver
android:name=".BitcoinPriceWidget"
android:exported="true"
android:label="Bitcoin Price Widget">
<receiver android:name=".BitcoinPriceWidget" android:exported="true">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
<action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
<action android:name="android.intent.action.SCREEN_ON"/>
<action android:name="android.intent.action.SCREEN_OFF"/>
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/bitcoin_price_widget_info" />
android:resource="@xml/bitcoin_price_widget_info"/>
</receiver>
<service
android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationListenerService"
android:exported="false">

View File

@ -0,0 +1,408 @@
{
"USD": {
"endPointKey": "USD",
"locale": "en-US",
"source": "Kraken",
"symbol": "$",
"country": "United States (US Dollar)"
},
"AED": {
"endPointKey": "AED",
"locale": "ar-AE",
"source": "CoinGecko",
"symbol": "د.إ.",
"country": "United Arab Emirates (UAE Dirham)"
},
"ANG": {
"endPointKey": "ANG",
"locale": "en-SX",
"source": "CoinDesk",
"symbol": "ƒ",
"country": "Sint Maarten (Netherlands Antillean Guilder)"
},
"ARS": {
"endPointKey": "ARS",
"locale": "es-AR",
"source": "Yadio",
"symbol": "$",
"country": "Argentina (Argentine Peso)"
},
"AUD": {
"endPointKey": "AUD",
"locale": "en-AU",
"source": "CoinGecko",
"symbol": "$",
"country": "Australia (Australian Dollar)"
},
"AWG": {
"endPointKey": "AWG",
"locale": "nl-AW",
"source": "CoinDesk",
"symbol": "ƒ",
"country": "Aruba (Aruban Florin)"
},
"BHD": {
"endPointKey": "BHD",
"locale": "ar-BH",
"source": "CoinGecko",
"symbol": "د.ب.",
"country": "Bahrain (Bahraini Dinar)"
},
"BRL": {
"endPointKey": "BRL",
"locale": "pt-BR",
"source": "CoinGecko",
"symbol": "R$",
"country": "Brazil (Brazilian Real)"
},
"CAD": {
"endPointKey": "CAD",
"locale": "en-CA",
"source": "CoinGecko",
"symbol": "$",
"country": "Canada (Canadian Dollar)"
},
"CHF": {
"endPointKey": "CHF",
"locale": "de-CH",
"source": "CoinGecko",
"symbol": "CHF",
"country": "Switzerland (Swiss Franc)"
},
"CLP": {
"endPointKey": "CLP",
"locale": "es-CL",
"source": "Yadio",
"symbol": "$",
"country": "Chile (Chilean Peso)"
},
"CNY": {
"endPointKey": "CNY",
"locale": "zh-CN",
"source": "Coinbase",
"symbol": "¥",
"country": "China (Chinese Yuan)"
},
"COP": {
"endPointKey": "COP",
"locale": "es-CO",
"source": "CoinDesk",
"symbol": "$",
"country": "Colombia (Colombian Peso)"
},
"CZK": {
"endPointKey": "CZK",
"locale": "cs-CZ",
"source": "CoinGecko",
"symbol": "Kč",
"country": "Czech Republic (Czech Koruna)"
},
"DKK": {
"endPointKey": "DKK",
"locale": "da-DK",
"source": "CoinGecko",
"symbol": "kr",
"country": "Denmark (Danish Krone)"
},
"EUR": {
"endPointKey": "EUR",
"locale": "en-IE",
"source": "Kraken",
"symbol": "€",
"country": "European Union (Euro)"
},
"GBP": {
"endPointKey": "GBP",
"locale": "en-GB",
"source": "Kraken",
"symbol": "£",
"country": "United Kingdom (British Pound)"
},
"HRK": {
"endPointKey": "HRK",
"locale": "hr-HR",
"source": "CoinDesk",
"symbol": "HRK",
"country": "Croatia (Croatian Kuna)"
},
"HUF": {
"endPointKey": "HUF",
"locale": "hu-HU",
"source": "CoinGecko",
"symbol": "Ft",
"country": "Hungary (Hungarian Forint)"
},
"IDR": {
"endPointKey": "IDR",
"locale": "id-ID",
"source": "CoinGecko",
"symbol": "Rp",
"country": "Indonesia (Indonesian Rupiah)"
},
"ILS": {
"endPointKey": "ILS",
"locale": "he-IL",
"source": "CoinGecko",
"symbol": "₪",
"country": "Israel (Israeli New Shekel)"
},
"INR": {
"endPointKey": "INR",
"locale": "hi-IN",
"source": "wazirx",
"symbol": "₹",
"country": "India (Indian Rupee)"
},
"IRR": {
"endPointKey": "IRR",
"locale": "fa-IR",
"source": "Exir",
"symbol": "﷼",
"country": "Iran (Iranian Rial)"
},
"IRT": {
"endPointKey": "IRT",
"locale": "fa-IR",
"source": "Exir",
"symbol": "تومان",
"country": "Iran (Iranian Toman)"
},
"ISK": {
"endPointKey": "ISK",
"locale": "is-IS",
"source": "CoinDesk",
"symbol": "kr",
"country": "Iceland (Icelandic Króna)"
},
"JPY": {
"endPointKey": "JPY",
"locale": "ja-JP",
"source": "CoinGecko",
"symbol": "¥",
"country": "Japan (Japanese Yen)"
},
"KES": {
"endPointKey": "KES",
"locale": "en-KE",
"source": "CoinDesk",
"symbol": "Ksh",
"country": "Kenya (Kenyan Shilling)"
},
"KRW": {
"endPointKey": "KRW",
"locale": "ko-KR",
"source": "CoinGecko",
"symbol": "₩",
"country": "South Korea (South Korean Won)"
},
"KWD": {
"endPointKey": "KWD",
"locale": "ar-KW",
"source": "CoinGecko",
"symbol": "د.ك.",
"country": "Kuwait (Kuwaiti Dinar)"
},
"LBP": {
"endPointKey": "LBP",
"locale": "ar-LB",
"source": "YadioConvert",
"symbol": "ل.ل.",
"country": "Lebanon (Lebanese Pound)"
},
"LKR": {
"endPointKey": "LKR",
"locale": "si-LK",
"source": "CoinGecko",
"symbol": "රු.",
"country": "Sri Lanka (Sri Lankan Rupee)"
},
"MXN": {
"endPointKey": "MXN",
"locale": "es-MX",
"source": "CoinGecko",
"symbol": "$",
"country": "Mexico (Mexican Peso)"
},
"MYR": {
"endPointKey": "MYR",
"locale": "ms-MY",
"source": "CoinGecko",
"symbol": "RM",
"country": "Malaysia (Malaysian Ringgit)"
},
"MZN": {
"endPointKey": "MZN",
"locale": "seh-MZ",
"source": "CoinDesk",
"symbol": "MTn",
"country": "Mozambique (Mozambican Metical)"
},
"NGN": {
"endPointKey": "NGN",
"locale": "en-NG",
"source": "CoinGecko",
"symbol": "₦",
"country": "Nigeria (Nigerian Naira)"
},
"NOK": {
"endPointKey": "NOK",
"locale": "nb-NO",
"source": "CoinGecko",
"symbol": "kr",
"country": "Norway (Norwegian Krone)"
},
"NZD": {
"endPointKey": "NZD",
"locale": "en-NZ",
"source": "CoinGecko",
"symbol": "$",
"country": "New Zealand (New Zealand Dollar)"
},
"OMR": {
"endPointKey": "OMR",
"locale": "ar-OM",
"source": "CoinDesk",
"symbol": "ر.ع.",
"country": "Oman (Omani Rial)"
},
"PHP": {
"endPointKey": "PHP",
"locale": "en-PH",
"source": "CoinGecko",
"symbol": "₱",
"country": "Philippines (Philippine Peso)"
},
"PLN": {
"endPointKey": "PLN",
"locale": "pl-PL",
"source": "CoinGecko",
"symbol": "zł",
"country": "Poland (Polish Zloty)"
},
"QAR": {
"endPointKey": "QAR",
"locale": "ar-QA",
"source": "CoinDesk",
"symbol": "ر.ق.",
"country": "Qatar (Qatari Riyal)"
},
"RON": {
"endPointKey": "RON",
"locale": "ro-RO",
"source": "BNR",
"symbol": "lei",
"country": "Romania (Romanian Leu)"
},
"RUB": {
"endPointKey": "RUB",
"locale": "ru-RU",
"source": "CoinGecko",
"symbol": "₽",
"country": "Russia (Russian Ruble)"
},
"SAR": {
"endPointKey": "SAR",
"locale": "ar-SA",
"source": "CoinGecko",
"symbol": "ر.س.",
"country": "Saudi Arabia (Saudi Riyal)"
},
"SEK": {
"endPointKey": "SEK",
"locale": "sv-SE",
"source": "CoinGecko",
"symbol": "kr",
"country": "Sweden (Swedish Krona)"
},
"SGD": {
"endPointKey": "SGD",
"locale": "zh-SG",
"source": "CoinGecko",
"symbol": "S$",
"country": "Singapore (Singapore Dollar)"
},
"THB": {
"endPointKey": "THB",
"locale": "th-TH",
"source": "CoinGecko",
"symbol": "฿",
"country": "Thailand (Thai Baht)"
},
"TRY": {
"endPointKey": "TRY",
"locale": "tr-TR",
"source": "CoinGecko",
"symbol": "₺",
"country": "Turkey (Turkish Lira)"
},
"TWD": {
"endPointKey": "TWD",
"locale": "zh-Hant-TW",
"source": "CoinGecko",
"symbol": "NT$",
"country": "Taiwan (New Taiwan Dollar)"
},
"TZS": {
"endPointKey": "TZS",
"locale": "en-TZ",
"source": "CoinDesk",
"symbol": "TSh",
"country": "Tanzania (Tanzanian Shilling)"
},
"UAH": {
"endPointKey": "UAH",
"locale": "uk-UA",
"source": "CoinGecko",
"symbol": "₴",
"country": "Ukraine (Ukrainian Hryvnia)"
},
"UGX": {
"endPointKey": "UGX",
"locale": "en-UG",
"source": "CoinDesk",
"symbol": "USh",
"country": "Uganda (Ugandan Shilling)"
},
"UYU": {
"endPointKey": "UYU",
"locale": "es-UY",
"source": "CoinDesk",
"symbol": "$",
"country": "Uruguay (Uruguayan Peso)"
},
"VEF": {
"endPointKey": "VEF",
"locale": "es-VE",
"source": "CoinGecko",
"symbol": "Bs.",
"country": "Venezuela (Venezuelan Bolívar Fuerte)"
},
"VES": {
"endPointKey": "VES",
"locale": "es-VE",
"source": "Yadio",
"symbol": "Bs.",
"country": "Venezuela (Venezuelan Bolívar Soberano)"
},
"XAF": {
"endPointKey": "XAF",
"locale": "fr-CF",
"source": "CoinDesk",
"symbol": "Fr",
"country": "Central African Republic (Central African Franc)"
},
"ZAR": {
"endPointKey": "ZAR",
"locale": "en-ZA",
"source": "CoinGecko",
"symbol": "R",
"country": "South Africa (South African Rand)"
},
"GHS": {
"endPointKey": "GHS",
"locale": "en-GH",
"source": "CoinDesk",
"symbol": "₵",
"country": "Ghana (Ghanaian Cedi)"
}
}

View File

@ -1,189 +1,125 @@
package io.bluewallet.bluewallet;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.app.Application;
import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.BroadcastReceiver;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.IntentFilter;
import android.os.PowerManager;
import android.util.Log;
import android.view.View;
import android.widget.RemoteViews;
import android.widget.Toast;
import java.lang.ref.WeakReference;
import androidx.work.ExistingPeriodicWorkPolicy;
import androidx.work.PeriodicWorkRequest;
import androidx.work.WorkManager;
import java.text.NumberFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
public class BitcoinPriceWidget extends AppWidgetProvider {
private static final String TAG = "BitcoinPriceWidget";
private static final String ACTION_UPDATE = "io.bluewallet.bluewallet.UPDATE";
private static final String PREFS_NAME = "BitcoinPriceWidgetPrefs";
private static final String PREF_PREFIX_KEY = "appwidget_";
private static final ExecutorService executorService = Executors.newSingleThreadExecutor();
private static final String ACTION_UPDATE = "io.bluewallet.bluewallet.UPDATE_WIDGET";
private static final long UPDATE_INTERVAL_MINUTES = 15; // Update interval in minutes
private static final int MAX_RETRIES = 3;
private static PowerManager.WakeLock wakeLock;
private static int retryCount = 0;
private static boolean isScreenOn = true;
@Override
public void onEnabled(Context context) {
super.onEnabled(context);
scheduleNextUpdate(context);
registerScreenReceiver(context);
schedulePeriodicUpdates(context);
}
@Override
public void onDisabled(Context context) {
super.onDisabled(context);
cancelUpdate(context);
executorService.shutdown();
unregisterScreenReceiver(context);
WorkManager.getInstance(context).cancelUniqueWork("UpdateWidgetWork");
}
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
for (int appWidgetId : appWidgetIds) {
Log.d(TAG, "Updating widget ID: " + appWidgetId);
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_layout);
// Set up the pending intent to open the app when the widget is clicked
Intent launchAppIntent = new Intent(context, MainActivity.class);
PendingIntent launchAppPendingIntent = PendingIntent.getActivity(context, 0, launchAppIntent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
views.setOnClickPendingIntent(R.id.widget_layout, launchAppPendingIntent);
appWidgetManager.updateAppWidget(appWidgetId, views);
executorService.execute(new FetchBitcoinPriceTask(context, appWidgetManager, appWidgetId));
}
scheduleNextUpdate(context);
}
@Override
public void onReceive(Context context, Intent intent) {
super.onReceive(context, intent);
if (ACTION_UPDATE.equals(intent.getAction())) {
Log.d(TAG, "Received update action");
ComponentName widget = new ComponentName(context, BitcoinPriceWidget.class);
AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
int[] appWidgetIds = appWidgetManager.getAppWidgetIds(widget);
onUpdate(context, appWidgetManager, appWidgetIds);
super.onUpdate(context, appWidgetManager, appWidgetIds);
if (isScreenOn) {
scheduleWork(context);
}
}
private void scheduleNextUpdate(Context context) {
Intent intent = new Intent(context, BitcoinPriceWidget.class);
intent.setAction(ACTION_UPDATE);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
private void schedulePeriodicUpdates(Context context) {
PeriodicWorkRequest workRequest = new PeriodicWorkRequest.Builder(WidgetUpdateWorker.class,
UPDATE_INTERVAL_MINUTES, TimeUnit.MINUTES)
.setInitialDelay(UPDATE_INTERVAL_MINUTES, TimeUnit.MINUTES)
.build();
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
try {
alarmManager.setExact(AlarmManager.RTC, System.currentTimeMillis() + 300000, pendingIntent);
} catch (SecurityException e) {
Log.e(TAG, "Permission not granted for setting exact alarms", e);
}
WorkManager.getInstance(context).enqueueUniquePeriodicWork(
"UpdateWidgetWork",
ExistingPeriodicWorkPolicy.REPLACE,
workRequest
);
}
private void cancelUpdate(Context context) {
Intent intent = new Intent(context, BitcoinPriceWidget.class);
intent.setAction(ACTION_UPDATE);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
alarmManager.cancel(pendingIntent);
private void registerScreenReceiver(Context context) {
IntentFilter filter = new IntentFilter();
filter.addAction(Intent.ACTION_SCREEN_ON);
filter.addAction(Intent.ACTION_SCREEN_OFF);
context.getApplicationContext().registerReceiver(screenReceiver, filter);
}
private static class FetchBitcoinPriceTask implements Runnable {
private final WeakReference<Context> contextRef;
private final AppWidgetManager appWidgetManager;
private final int appWidgetId;
FetchBitcoinPriceTask(Context context, AppWidgetManager appWidgetManager, int appWidgetId) {
this.contextRef = new WeakReference<>(context);
this.appWidgetManager = appWidgetManager;
this.appWidgetId = appWidgetId;
}
private void unregisterScreenReceiver(Context context) {
context.getApplicationContext().unregisterReceiver(screenReceiver);
}
private final BroadcastReceiver screenReceiver = new BroadcastReceiver() {
@Override
public void run() {
Context context = contextRef.get();
if (context == null) return;
Log.d(TAG, "Starting to fetch Bitcoin price...");
String price = MarketAPI.fetchPrice("USD"); // Using hardcoded "USD" for now
if (price != null) {
updateWidgetWithPrice(context, price);
} else {
handleError(context);
public void onReceive(Context context, Intent intent) {
if (intent.getAction() != null) {
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
if (pm != null) {
switch (intent.getAction()) {
case Intent.ACTION_SCREEN_ON:
isScreenOn = true;
Log.d(TAG, "Screen ON");
acquireWakeLock(context);
scheduleWork(context);
break;
case Intent.ACTION_SCREEN_OFF:
isScreenOn = false;
Log.d(TAG, "Screen OFF");
releaseWakeLock();
break;
}
}
}
}
};
private void updateWidgetWithPrice(Context context, String price) {
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_layout);
SharedPreferences prefs = context.getSharedPreferences(PREFS_NAME, 0);
String prevPrice = prefs.getString(PREF_PREFIX_KEY + appWidgetId, null);
SharedPreferences.Editor editor = prefs.edit();
Log.d(TAG, "Fetch completed with price: " + price);
NumberFormat currencyFormat = NumberFormat.getCurrencyInstance(Locale.US);
views.setTextViewText(R.id.price_value, currencyFormat.format(Double.parseDouble(price)));
if (prevPrice != null) {
double previousPrice = Double.parseDouble(prevPrice);
double currentPrice = Double.parseDouble(price);
if (currentPrice > previousPrice) {
views.setImageViewResource(R.id.price_arrow, android.R.drawable.arrow_up_float);
} else if (currentPrice < previousPrice) {
views.setImageViewResource(R.id.price_arrow, android.R.drawable.arrow_down_float);
} else {
views.setImageViewResource(R.id.price_arrow, 0);
}
if (currentPrice != previousPrice) {
views.setTextViewText(R.id.previous_price, "from " + currencyFormat.format(previousPrice));
views.setViewVisibility(R.id.price_arrow, View.VISIBLE);
views.setViewVisibility(R.id.previous_price, View.VISIBLE);
} else {
views.setTextViewText(R.id.previous_price, "");
views.setViewVisibility(R.id.price_arrow, View.GONE);
views.setViewVisibility(R.id.previous_price, View.GONE);
}
} else {
views.setImageViewResource(R.id.price_arrow, 0);
views.setTextViewText(R.id.previous_price, "");
views.setViewVisibility(R.id.price_arrow, View.GONE);
views.setViewVisibility(R.id.previous_price, View.GONE);
private void acquireWakeLock(Context context) {
if (wakeLock == null) {
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
if (pm != null) {
wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, TAG);
wakeLock.acquire(10 * 60 * 1000L /*10 minutes*/);
}
editor.putString(PREF_PREFIX_KEY + appWidgetId, price);
editor.apply();
String currentTime = new SimpleDateFormat("hh:mm a", Locale.getDefault()).format(new Date());
views.setTextViewText(R.id.last_updated, "Last Updated");
views.setTextViewText(R.id.last_updated_time, currentTime);
appWidgetManager.updateAppWidget(appWidgetId, views);
}
private void handleError(Context context) {
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_layout);
String errorMessage = "Network Error";
Log.e(TAG, errorMessage);
views.setTextViewText(R.id.price_value, errorMessage);
views.setTextViewText(R.id.last_updated, "");
views.setTextViewText(R.id.last_updated_time, "");
views.setImageViewResource(R.id.price_arrow, 0);
views.setTextViewText(R.id.previous_price, "");
views.setViewVisibility(R.id.price_arrow, View.GONE);
views.setViewVisibility(R.id.previous_price, View.GONE);
Toast.makeText(context, "Failed to fetch Bitcoin price", Toast.LENGTH_SHORT).show();
appWidgetManager.updateAppWidget(appWidgetId, views);
}
}
}
private void releaseWakeLock() {
if (wakeLock != null && wakeLock.isHeld()) {
wakeLock.release();
wakeLock = null;
}
}
private void scheduleWork(Context context) {
Log.d(TAG, "Scheduling work for widget update");
WorkManager.getInstance(context).enqueue(WidgetUpdateWorker.createWorkRequest());
}
}

View File

@ -1,5 +1,8 @@
package io.bluewallet.bluewallet;
import android.content.Context;
import android.util.Log;
import org.json.JSONArray;
import org.json.JSONObject;
@ -10,6 +13,7 @@ import java.net.URL;
public class MarketAPI {
private static final String TAG = "MarketAPI";
private static final String HARD_CODED_JSON = "{\n" +
" \"USD\": {\n" +
" \"endPointKey\": \"USD\",\n" +
@ -20,7 +24,7 @@ public class MarketAPI {
" }\n" +
"}";
public static String fetchPrice(String currency) {
public static String fetchPrice(Context context, String currency) {
try {
JSONObject json = new JSONObject(HARD_CODED_JSON);
JSONObject currencyInfo = json.getJSONObject(currency);
@ -28,6 +32,7 @@ public class MarketAPI {
String endPointKey = currencyInfo.getString("endPointKey");
String urlString = buildURLString(source, endPointKey);
Log.d(TAG, "Fetching from URL: " + urlString);
URI uri = new URI(urlString);
URL url = uri.toURL();
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();

View File

@ -0,0 +1,80 @@
package io.bluewallet.bluewallet;
import android.appwidget.AppWidgetManager;
import android.content.ComponentName;
import android.content.Context;
import android.content.SharedPreferences;
import android.util.Log;
import android.view.View;
import android.widget.RemoteViews;
import androidx.work.Worker;
import androidx.work.WorkerParameters;
import java.text.DateFormat;
import java.util.Date;
import java.util.Locale;
public class WidgetUpdateManager extends Worker {
private static final String TAG = "WidgetUpdateManager";
private static final String PREFS_NAME = "BitcoinPriceWidgetPrefs";
private static final String PREF_PREFIX_KEY = "appwidget_";
private static final String PREFS_LAST_UPDATE_TIME_KEY = "lastUpdateTime_";
private static final String PREFS_LAST_PRICE_KEY = "lastPrice_";
private static final String PREFS_PREV_PRICE_KEY = "prevPrice_";
private static final String PREFS_PREV_UPDATE_TIME_KEY = "prevUpdateTime_";
public WidgetUpdateManager(Context context, WorkerParameters params) {
super(context, params);
}
@Override
public Result doWork() {
Context context = getApplicationContext();
AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
int[] appWidgetIds = appWidgetManager.getAppWidgetIds(new ComponentName(context, BitcoinPriceWidget.class));
for (int appWidgetId : appWidgetIds) {
updateAppWidget(context, appWidgetManager, appWidgetId);
}
return Result.success();
}
public static void updateAppWidget(Context context, AppWidgetManager appWidgetManager, int appWidgetId) {
SharedPreferences prefs = context.getSharedPreferences(PREFS_NAME, 0);
String previousPrice = prefs.getString(PREFS_PREV_PRICE_KEY + appWidgetId, "N/A");
String lastPrice = prefs.getString(PREFS_LAST_PRICE_KEY + appWidgetId, "N/A");
String lastUpdateTime = prefs.getString(PREFS_LAST_UPDATE_TIME_KEY + appWidgetId, "N/A");
String previousUpdateTime = prefs.getString(PREFS_PREV_UPDATE_TIME_KEY + appWidgetId, "N/A");
Log.d(TAG, "Fetch completed with price: " + lastPrice + " at " + lastUpdateTime + ". Previous price: " + previousPrice + " at " + previousUpdateTime);
String price = MarketAPI.fetchPrice(context, "USD");
if (price != null) {
Log.d(TAG, "Fetch completed with price: " + price);
SharedPreferences.Editor editor = prefs.edit();
editor.putString(PREFS_PREV_PRICE_KEY + appWidgetId, lastPrice);
editor.putString(PREFS_PREV_UPDATE_TIME_KEY + appWidgetId, lastUpdateTime);
editor.putString(PREFS_LAST_PRICE_KEY + appWidgetId, price);
editor.putString(PREFS_LAST_UPDATE_TIME_KEY + appWidgetId, DateFormat.getTimeInstance(DateFormat.SHORT).format(new Date()));
editor.apply();
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_layout);
views.setTextViewText(R.id.price_value, price);
views.setTextViewText(R.id.last_updated_time, DateFormat.getTimeInstance(DateFormat.SHORT).format(new Date()));
views.setViewVisibility(R.id.price_value, View.VISIBLE);
views.setViewVisibility(R.id.last_updated_label, View.VISIBLE);
views.setViewVisibility(R.id.last_updated_time, View.VISIBLE);
if (!"N/A".equals(previousPrice)) {
views.setViewVisibility(R.id.price_arrow_container, View.VISIBLE);
views.setViewVisibility(R.id.previous_price, View.VISIBLE);
} else {
views.setViewVisibility(R.id.price_arrow_container, View.GONE);
views.setViewVisibility(R.id.previous_price, View.GONE);
}
appWidgetManager.updateAppWidget(appWidgetId, views);
} else {
Log.e(TAG, "Failed to fetch Bitcoin price");
}
}
}

View File

@ -0,0 +1,108 @@
package io.bluewallet.bluewallet;
import android.appwidget.AppWidgetManager;
import android.content.ComponentName;
import android.content.Context;
import android.content.SharedPreferences;
import android.util.Log;
import android.view.View;
import android.widget.RemoteViews;
import androidx.annotation.NonNull;
import androidx.work.Worker;
import androidx.work.WorkerParameters;
import androidx.work.OneTimeWorkRequest;
import java.text.NumberFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.concurrent.TimeUnit;
public class WidgetUpdateWorker extends Worker {
private static final String TAG = "WidgetUpdateWorker";
private static final String PREFS_NAME = "BitcoinPriceWidgetPrefs";
private static final String PREF_PREFIX_KEY_CURRENT = "appwidget_current_";
private static final String PREF_PREFIX_KEY_PREVIOUS = "appwidget_previous_";
public WidgetUpdateWorker(@NonNull Context context, @NonNull WorkerParameters params) {
super(context, params);
}
@NonNull
@Override
public Result doWork() {
Context context = getApplicationContext();
AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
ComponentName thisWidget = new ComponentName(context, BitcoinPriceWidget.class);
int[] appWidgetIds = appWidgetManager.getAppWidgetIds(thisWidget);
for (int appWidgetId : appWidgetIds) {
updateAppWidget(context, appWidgetManager, appWidgetId);
}
return Result.success();
}
private void updateAppWidget(Context context, AppWidgetManager appWidgetManager, int appWidgetId) {
SharedPreferences prefs = context.getSharedPreferences(PREFS_NAME, 0);
String prevPrice = prefs.getString(PREF_PREFIX_KEY_PREVIOUS + appWidgetId, "N/A");
String currentPrice = prefs.getString(PREF_PREFIX_KEY_CURRENT + appWidgetId, "N/A");
Log.d(TAG, "Previous price: " + prevPrice);
Log.d(TAG, "Current price: " + currentPrice);
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_layout);
// Fetch the latest price
String newPrice = MarketAPI.fetchPrice(context, "USD");
if (newPrice != null) {
String currentTime = new SimpleDateFormat("hh:mm a", Locale.getDefault()).format(new Date());
NumberFormat currencyFormat = NumberFormat.getCurrencyInstance(Locale.getDefault());
// Update the widget views
views.setTextViewText(R.id.price_value, currencyFormat.format(Double.parseDouble(newPrice)));
views.setTextViewText(R.id.last_updated_time, currentTime);
views.setViewVisibility(R.id.last_updated_label, View.VISIBLE);
views.setViewVisibility(R.id.last_updated_time, View.VISIBLE);
if (!prevPrice.equals("N/A") && !prevPrice.equals(newPrice)) {
views.setViewVisibility(R.id.price_arrow_container, View.VISIBLE);
views.setTextViewText(R.id.previous_price, currencyFormat.format(Double.parseDouble(prevPrice)));
views.setViewVisibility(R.id.previous_price_label, View.VISIBLE);
views.setViewVisibility(R.id.previous_price, View.VISIBLE);
if (Double.parseDouble(newPrice) > Double.parseDouble(prevPrice)) {
views.setImageViewResource(R.id.price_arrow, android.R.drawable.arrow_up_float);
} else {
views.setImageViewResource(R.id.price_arrow, android.R.drawable.arrow_down_float);
}
} else {
views.setViewVisibility(R.id.price_arrow_container, View.GONE);
views.setViewVisibility(R.id.previous_price_label, View.GONE);
views.setViewVisibility(R.id.previous_price, View.GONE);
}
// Save the new price and time
SharedPreferences.Editor editor = prefs.edit();
editor.putString(PREF_PREFIX_KEY_PREVIOUS + appWidgetId, currentPrice);
editor.putString(PREF_PREFIX_KEY_CURRENT + appWidgetId, newPrice);
editor.apply();
Log.d(TAG, "Fetch completed with price: " + newPrice + " at " + currentTime + ". Previous price: " + prevPrice);
appWidgetManager.updateAppWidget(appWidgetId, views);
// Log the next update time
long nextUpdateTimeMillis = System.currentTimeMillis() + TimeUnit.MINUTES.toMillis(4);
String nextUpdateTime = new SimpleDateFormat("hh:mm a", Locale.getDefault()).format(new Date(nextUpdateTimeMillis));
Log.d(TAG, "Next fetch scheduled at: " + nextUpdateTime);
} else {
Log.e(TAG, "Failed to fetch Bitcoin price");
views.setTextViewText(R.id.price_value, "Error");
appWidgetManager.updateAppWidget(appWidgetId, views);
}
}
public static OneTimeWorkRequest createWorkRequest() {
return new OneTimeWorkRequest.Builder(WidgetUpdateWorker.class).build();
}
}

View File

@ -0,0 +1,19 @@
package io.bluewallet.bluewallet;
import android.appwidget.AppWidgetManager;
import android.content.ComponentName;
import android.content.Context;
import android.widget.RemoteViews;
public class WidgetUtils {
public static void updateAppWidget(Context context, RemoteViews views) {
AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
ComponentName thisWidget = new ComponentName(context, BitcoinPriceWidget.class);
int[] allWidgetIds = appWidgetManager.getAppWidgetIds(thisWidget);
for (int widgetId : allWidgetIds) {
appWidgetManager.updateAppWidget(widgetId, views);
}
}
}

View File

@ -14,11 +14,11 @@
android:gravity="end">
<TextView
android:id="@+id/last_updated"
android:id="@+id/last_updated_label"
style="@style/WidgetTextSecondary"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""
android:text="Last Updated:"
android:textSize="12sp"
android:textStyle="bold"
android:layout_marginEnd="8dp"/>
@ -65,6 +65,16 @@
android:layout_marginEnd="4dp"
android:layout_marginBottom="8dp"/>
<TextView
android:id="@+id/previous_price_label"
style="@style/WidgetTextPrimary"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="From:"
android:textSize="12sp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="8dp"/>
<TextView
android:id="@+id/previous_price"
style="@style/WidgetTextPrimary"
@ -76,4 +86,11 @@
android:layout_marginBottom="8dp"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
<ProgressBar
android:id="@+id/loading_indicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:visibility="gone"/>
</LinearLayout>

View File

@ -3,7 +3,7 @@
android:initialLayout="@layout/widget_layout"
android:minWidth="160dp"
android:minHeight="140dp"
android:updatePeriodMillis="300000"
android:updatePeriodMillis="0"
android:widgetCategory="home_screen"
android:previewImage="@drawable/widget_preview"
android:resizeMode="horizontal|vertical"

View File

@ -1438,6 +1438,17 @@ export class AbstractHDElectrumWallet extends AbstractHDWallet {
ret.push(this._getExternalAddressByIndex(c));
}
if (this.allowBIP47() && this.isBIP47Enabled()) {
// returning BIP47 joint addresses with everyone who can pay us because they are kinda our 'external' aka 'receive' addresses
for (const pc of this._receive_payment_codes) {
for (let c = 0; c < this._getNextFreePaymentCodeIndexReceive(pc) + this.gap_limit / 4; c++) {
// ^^^ not full gap limit to reduce computation (theoretically, there should not be gaps at all)
ret.push(this._getBIP47AddressReceive(pc, c));
}
}
}
return ret;
}

View File

@ -1,6 +1,13 @@
import React, { Ref, useCallback, useMemo } from 'react';
import { Platform, Pressable, TouchableOpacity, View } from 'react-native';
import { ContextMenuView, RenderItem, OnPressMenuItemEventObject, MenuState, IconConfig } from 'react-native-ios-context-menu';
import {
ContextMenuView,
RenderItem,
OnPressMenuItemEventObject,
MenuState,
IconConfig,
MenuElementConfig,
} from 'react-native-ios-context-menu';
import { MenuView, MenuAction, NativeActionEvent } from '@react-native-menu/menu';
import { ToolTipMenuProps, Action } from './types';
@ -21,6 +28,7 @@ const ToolTipMenu = React.memo((props: ToolTipMenuProps, ref?: Ref<any>) => {
} = props;
const mapMenuItemForContextMenuView = useCallback((action: Action) => {
if (!action.id) return null;
return {
actionKey: action.id.toString(),
actionTitle: action.text,
@ -30,7 +38,8 @@ const ToolTipMenu = React.memo((props: ToolTipMenuProps, ref?: Ref<any>) => {
};
}, []);
const mapMenuItemForMenuView = useCallback((action: Action): MenuAction => {
const mapMenuItemForMenuView = useCallback((action: Action): MenuAction | null => {
if (!action.id) return null;
return {
id: action.id.toString(),
title: action.text,
@ -41,28 +50,34 @@ const ToolTipMenu = React.memo((props: ToolTipMenuProps, ref?: Ref<any>) => {
}, []);
const contextMenuItems = useMemo(() => {
const flattenedActions = props.actions.flat();
return flattenedActions.map(mapMenuItemForContextMenuView);
const flattenedActions = props.actions.flat().filter(action => action.id);
return flattenedActions.map(mapMenuItemForContextMenuView).filter(item => item !== null) as MenuElementConfig[];
}, [props.actions, mapMenuItemForContextMenuView]);
const menuViewItemsIOS = useMemo(() => {
return props.actions.map(actionGroup => {
if (Array.isArray(actionGroup)) {
return {
id: actionGroup[0].id.toString(),
title: '',
subactions: actionGroup.map(mapMenuItemForMenuView),
displayInline: true,
};
} else {
return mapMenuItemForMenuView(actionGroup);
}
});
return props.actions
.map(actionGroup => {
if (Array.isArray(actionGroup) && actionGroup.length > 0) {
return {
id: actionGroup[0].id.toString(),
title: '',
subactions: actionGroup
.filter(action => action.id)
.map(mapMenuItemForMenuView)
.filter(item => item !== null) as MenuAction[],
displayInline: true,
};
} else if (!Array.isArray(actionGroup) && actionGroup.id) {
return mapMenuItemForMenuView(actionGroup);
}
return null;
})
.filter(item => item !== null) as MenuAction[];
}, [props.actions, mapMenuItemForMenuView]);
const menuViewItemsAndroid = useMemo(() => {
const mergedActions = props.actions.flat();
return mergedActions.map(mapMenuItemForMenuView);
const mergedActions = props.actions.flat().filter(action => action.id);
return mergedActions.map(mapMenuItemForMenuView).filter(item => item !== null) as MenuAction[];
}, [props.actions, mapMenuItemForMenuView]);
const handlePressMenuItemForContextMenuView = useCallback(
@ -138,7 +153,7 @@ const ToolTipMenu = React.memo((props: ToolTipMenuProps, ref?: Ref<any>) => {
);
};
return Platform.OS === 'ios' && renderPreview ? renderContextMenuView() : renderMenuView();
return props.actions.length > 0 ? (Platform.OS === 'ios' && renderPreview ? renderContextMenuView() : renderMenuView()) : null;
});
export default ToolTipMenu;

View File

@ -17,7 +17,7 @@ const WatchOnlyWarning: React.FC<Props> = ({ handleDismiss, isLoading }) => {
</TouchableOpacity>
<Icon name="warning" color="#FFFF" />
<Text style={styles.title}>{loc.transactions.watchOnlyWarningTitle}</Text>
<Text style={styles.description}>{loc.transactions.watchOnlyWarningDescription}</Text>
<Text style={styles.description}>{loc.transactions.watchOnlyWarningDescription}</Text>
</View>
</View>
);

View File

@ -59,6 +59,7 @@
B40D4E632258425500428FCC /* ReceiveInterfaceController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B40D4E5B2258425500428FCC /* ReceiveInterfaceController.swift */; };
B40D4E642258425500428FCC /* WalletDetailsInterfaceController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B40D4E5C2258425500428FCC /* WalletDetailsInterfaceController.swift */; };
B40FC3FA29CCD1D00007EBAC /* SwiftTCPClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = B40FC3F829CCD1AC0007EBAC /* SwiftTCPClient.swift */; };
B411DA832C2F1D3700115221 /* SwiftTCPClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = B40FC3F829CCD1AC0007EBAC /* SwiftTCPClient.swift */; };
B41B76852B66B2FF002C48D5 /* Bugsnag in Frameworks */ = {isa = PBXBuildFile; productRef = B41B76842B66B2FF002C48D5 /* Bugsnag */; };
B41B76872B66B2FF002C48D5 /* BugsnagNetworkRequestPlugin in Frameworks */ = {isa = PBXBuildFile; productRef = B41B76862B66B2FF002C48D5 /* BugsnagNetworkRequestPlugin */; };
B41C2E562BB3DCB8000FE097 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = B41C2E552BB3DCB8000FE097 /* PrivacyInfo.xcprivacy */; };
@ -1681,6 +1682,7 @@
B4A29A2E2B55C990002A67DF /* AppDelegate.mm in Sources */,
B44033C72BCC332400162242 /* Balance.swift in Sources */,
B44033FC2BCC379200162242 /* WidgetDataStore.swift in Sources */,
B411DA832C2F1D3700115221 /* SwiftTCPClient.swift in Sources */,
B44033C22BCC32F800162242 /* BitcoinUnit.swift in Sources */,
B4B1A4652BFA73110072E3BB /* WidgetHelper.swift in Sources */,
B44033F12BCC374500162242 /* Numeric+abbreviated.swift in Sources */,
@ -1796,7 +1798,7 @@
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Distribution";
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = "";
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = A7W54YZ4WU;
@ -1821,7 +1823,7 @@
"$(SDKROOT)/System/iOSSupport/usr/lib/swift",
"$(inherited)",
);
MARKETING_VERSION = 6.6.8;
MARKETING_VERSION = 6.6.9;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
@ -1856,7 +1858,7 @@
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Distribution";
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = "";
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = A7W54YZ4WU;
@ -1876,7 +1878,7 @@
"$(SDKROOT)/System/iOSSupport/usr/lib/swift",
"$(inherited)",
);
MARKETING_VERSION = 6.6.8;
MARKETING_VERSION = 6.6.9;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
@ -1912,7 +1914,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = "";
@ -1925,7 +1927,7 @@
"$(SDKROOT)/System/iOSSupport/usr/lib/swift",
"$(inherited)",
);
MARKETING_VERSION = 6.6.8;
MARKETING_VERSION = 6.6.9;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
PRESERVE_DEAD_CODE_INITS_AND_TERMS = YES;
@ -1955,7 +1957,7 @@
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = "";
@ -1968,7 +1970,7 @@
"$(SDKROOT)/System/iOSSupport/usr/lib/swift",
"$(inherited)",
);
MARKETING_VERSION = 6.6.8;
MARKETING_VERSION = 6.6.9;
MTL_FAST_MATH = YES;
PRESERVE_DEAD_CODE_INITS_AND_TERMS = YES;
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.Stickers;
@ -1999,7 +2001,7 @@
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Mac Developer";
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = "";
@ -2018,7 +2020,7 @@
"$(SDKROOT)/System/iOSSupport/usr/lib/swift",
"$(inherited)",
);
MARKETING_VERSION = 6.6.8;
MARKETING_VERSION = 6.6.9;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
PRESERVE_DEAD_CODE_INITS_AND_TERMS = YES;
@ -2055,7 +2057,7 @@
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Mac Developer";
CODE_SIGN_STYLE = Manual;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = "";
@ -2074,7 +2076,7 @@
"$(SDKROOT)/System/iOSSupport/usr/lib/swift",
"$(inherited)",
);
MARKETING_VERSION = 6.6.8;
MARKETING_VERSION = 6.6.9;
MTL_FAST_MATH = YES;
PRESERVE_DEAD_CODE_INITS_AND_TERMS = YES;
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.MarketWidget;
@ -2237,7 +2239,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "iPhone Developer";
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = "";
@ -2254,7 +2256,7 @@
"$(SDKROOT)/System/iOSSupport/usr/lib/swift",
"$(inherited)",
);
MARKETING_VERSION = 6.6.8;
MARKETING_VERSION = 6.6.9;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
PRESERVE_DEAD_CODE_INITS_AND_TERMS = YES;
@ -2287,7 +2289,7 @@
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = "";
@ -2304,7 +2306,7 @@
"$(SDKROOT)/System/iOSSupport/usr/lib/swift",
"$(inherited)",
);
MARKETING_VERSION = 6.6.8;
MARKETING_VERSION = 6.6.9;
MTL_FAST_MATH = YES;
PRESERVE_DEAD_CODE_INITS_AND_TERMS = YES;
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.watch.extension;
@ -2336,7 +2338,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "iPhone Developer";
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = "";
@ -2349,7 +2351,7 @@
"$(SDKROOT)/System/iOSSupport/usr/lib/swift",
"$(inherited)",
);
MARKETING_VERSION = 6.6.8;
MARKETING_VERSION = 6.6.9;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
PRESERVE_DEAD_CODE_INITS_AND_TERMS = YES;
@ -2384,7 +2386,7 @@
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = "";
@ -2397,7 +2399,7 @@
"$(SDKROOT)/System/iOSSupport/usr/lib/swift",
"$(inherited)",
);
MARKETING_VERSION = 6.6.8;
MARKETING_VERSION = 6.6.9;
MTL_FAST_MATH = YES;
PRESERVE_DEAD_CODE_INITS_AND_TERMS = YES;
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.watch;
@ -2428,7 +2430,7 @@
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = A7W54YZ4WU;
@ -2479,7 +2481,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = A7W54YZ4WU;
@ -2518,7 +2520,7 @@
CODE_SIGN_ENTITLEMENTS = BlueWallet/BlueWallet.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = A7W54YZ4WU;
ENABLE_BITCODE = NO;
@ -2542,7 +2544,7 @@
"$(SDKROOT)/System/iOSSupport/usr/lib/swift",
"$(inherited)",
);
MARKETING_VERSION = 6.6.8;
MARKETING_VERSION = 6.6.9;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
@ -2572,7 +2574,7 @@
CODE_SIGN_ENTITLEMENTS = BlueWallet/BlueWalletRelease.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1703136670;
CURRENT_PROJECT_VERSION = 1703136680;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = A7W54YZ4WU;
ENABLE_BITCODE = NO;
@ -2591,7 +2593,7 @@
"$(SDKROOT)/System/iOSSupport/usr/lib/swift",
"$(inherited)",
);
MARKETING_VERSION = 6.6.8;
MARKETING_VERSION = 6.6.9;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",

View File

@ -6,12 +6,12 @@ PODS:
- React-Core
- CocoaAsyncSocket (7.6.5)
- DoubleConversion (1.1.6)
- FBLazyVector (0.74.2)
- FBLazyVector (0.74.3)
- fmt (9.1.0)
- glog (0.3.5)
- hermes-engine (0.74.2):
- hermes-engine/Pre-built (= 0.74.2)
- hermes-engine/Pre-built (0.74.2)
- hermes-engine (0.74.3):
- hermes-engine/Pre-built (= 0.74.3)
- hermes-engine/Pre-built (0.74.3)
- lottie-ios (4.4.1)
- lottie-react-native (6.7.2):
- DoubleConversion
@ -51,27 +51,27 @@ PODS:
- DoubleConversion
- fmt (= 9.1.0)
- glog
- RCTDeprecation (0.74.2)
- RCTRequired (0.74.2)
- RCTTypeSafety (0.74.2):
- FBLazyVector (= 0.74.2)
- RCTRequired (= 0.74.2)
- React-Core (= 0.74.2)
- React (0.74.2):
- React-Core (= 0.74.2)
- React-Core/DevSupport (= 0.74.2)
- React-Core/RCTWebSocket (= 0.74.2)
- React-RCTActionSheet (= 0.74.2)
- React-RCTAnimation (= 0.74.2)
- React-RCTBlob (= 0.74.2)
- React-RCTImage (= 0.74.2)
- React-RCTLinking (= 0.74.2)
- React-RCTNetwork (= 0.74.2)
- React-RCTSettings (= 0.74.2)
- React-RCTText (= 0.74.2)
- React-RCTVibration (= 0.74.2)
- React-callinvoker (0.74.2)
- React-Codegen (0.74.2):
- RCTDeprecation (0.74.3)
- RCTRequired (0.74.3)
- RCTTypeSafety (0.74.3):
- FBLazyVector (= 0.74.3)
- RCTRequired (= 0.74.3)
- React-Core (= 0.74.3)
- React (0.74.3):
- React-Core (= 0.74.3)
- React-Core/DevSupport (= 0.74.3)
- React-Core/RCTWebSocket (= 0.74.3)
- React-RCTActionSheet (= 0.74.3)
- React-RCTAnimation (= 0.74.3)
- React-RCTBlob (= 0.74.3)
- React-RCTImage (= 0.74.3)
- React-RCTLinking (= 0.74.3)
- React-RCTNetwork (= 0.74.3)
- React-RCTSettings (= 0.74.3)
- React-RCTText (= 0.74.3)
- React-RCTVibration (= 0.74.3)
- React-callinvoker (0.74.3)
- React-Codegen (0.74.3):
- DoubleConversion
- glog
- hermes-engine
@ -91,12 +91,12 @@ PODS:
- React-utils
- ReactCommon/turbomodule/bridging
- ReactCommon/turbomodule/core
- React-Core (0.74.2):
- React-Core (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
- RCTDeprecation
- React-Core/Default (= 0.74.2)
- React-Core/Default (= 0.74.3)
- React-cxxreact
- React-featureflags
- React-hermes
@ -108,7 +108,7 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-Core/CoreModulesHeaders (0.74.2):
- React-Core/CoreModulesHeaders (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
@ -125,7 +125,7 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-Core/Default (0.74.2):
- React-Core/Default (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
@ -141,13 +141,13 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-Core/DevSupport (0.74.2):
- React-Core/DevSupport (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
- RCTDeprecation
- React-Core/Default (= 0.74.2)
- React-Core/RCTWebSocket (= 0.74.2)
- React-Core/Default (= 0.74.3)
- React-Core/RCTWebSocket (= 0.74.3)
- React-cxxreact
- React-featureflags
- React-hermes
@ -159,7 +159,7 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-Core/RCTActionSheetHeaders (0.74.2):
- React-Core/RCTActionSheetHeaders (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
@ -176,7 +176,7 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-Core/RCTAnimationHeaders (0.74.2):
- React-Core/RCTAnimationHeaders (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
@ -193,7 +193,7 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-Core/RCTBlobHeaders (0.74.2):
- React-Core/RCTBlobHeaders (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
@ -210,7 +210,7 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-Core/RCTImageHeaders (0.74.2):
- React-Core/RCTImageHeaders (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
@ -227,7 +227,7 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-Core/RCTLinkingHeaders (0.74.2):
- React-Core/RCTLinkingHeaders (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
@ -244,7 +244,7 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-Core/RCTNetworkHeaders (0.74.2):
- React-Core/RCTNetworkHeaders (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
@ -261,7 +261,7 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-Core/RCTSettingsHeaders (0.74.2):
- React-Core/RCTSettingsHeaders (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
@ -278,7 +278,7 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-Core/RCTTextHeaders (0.74.2):
- React-Core/RCTTextHeaders (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
@ -295,7 +295,7 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-Core/RCTVibrationHeaders (0.74.2):
- React-Core/RCTVibrationHeaders (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
@ -312,12 +312,12 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-Core/RCTWebSocket (0.74.2):
- React-Core/RCTWebSocket (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
- RCTDeprecation
- React-Core/Default (= 0.74.2)
- React-Core/Default (= 0.74.3)
- React-cxxreact
- React-featureflags
- React-hermes
@ -329,36 +329,36 @@ PODS:
- React-utils
- SocketRocket (= 0.7.0)
- Yoga
- React-CoreModules (0.74.2):
- React-CoreModules (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- RCT-Folly (= 2024.01.01.00)
- RCTTypeSafety (= 0.74.2)
- RCTTypeSafety (= 0.74.3)
- React-Codegen
- React-Core/CoreModulesHeaders (= 0.74.2)
- React-jsi (= 0.74.2)
- React-Core/CoreModulesHeaders (= 0.74.3)
- React-jsi (= 0.74.3)
- React-jsinspector
- React-NativeModulesApple
- React-RCTBlob
- React-RCTImage (= 0.74.2)
- React-RCTImage (= 0.74.3)
- ReactCommon
- SocketRocket (= 0.7.0)
- React-cxxreact (0.74.2):
- React-cxxreact (0.74.3):
- boost (= 1.83.0)
- DoubleConversion
- fmt (= 9.1.0)
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
- React-callinvoker (= 0.74.2)
- React-debug (= 0.74.2)
- React-jsi (= 0.74.2)
- React-callinvoker (= 0.74.3)
- React-debug (= 0.74.3)
- React-jsi (= 0.74.3)
- React-jsinspector
- React-logger (= 0.74.2)
- React-perflogger (= 0.74.2)
- React-runtimeexecutor (= 0.74.2)
- React-debug (0.74.2)
- React-Fabric (0.74.2):
- React-logger (= 0.74.3)
- React-perflogger (= 0.74.3)
- React-runtimeexecutor (= 0.74.3)
- React-debug (0.74.3)
- React-Fabric (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -369,20 +369,20 @@ PODS:
- React-Core
- React-cxxreact
- React-debug
- React-Fabric/animations (= 0.74.2)
- React-Fabric/attributedstring (= 0.74.2)
- React-Fabric/componentregistry (= 0.74.2)
- React-Fabric/componentregistrynative (= 0.74.2)
- React-Fabric/components (= 0.74.2)
- React-Fabric/core (= 0.74.2)
- React-Fabric/imagemanager (= 0.74.2)
- React-Fabric/leakchecker (= 0.74.2)
- React-Fabric/mounting (= 0.74.2)
- React-Fabric/scheduler (= 0.74.2)
- React-Fabric/telemetry (= 0.74.2)
- React-Fabric/templateprocessor (= 0.74.2)
- React-Fabric/textlayoutmanager (= 0.74.2)
- React-Fabric/uimanager (= 0.74.2)
- React-Fabric/animations (= 0.74.3)
- React-Fabric/attributedstring (= 0.74.3)
- React-Fabric/componentregistry (= 0.74.3)
- React-Fabric/componentregistrynative (= 0.74.3)
- React-Fabric/components (= 0.74.3)
- React-Fabric/core (= 0.74.3)
- React-Fabric/imagemanager (= 0.74.3)
- React-Fabric/leakchecker (= 0.74.3)
- React-Fabric/mounting (= 0.74.3)
- React-Fabric/scheduler (= 0.74.3)
- React-Fabric/telemetry (= 0.74.3)
- React-Fabric/templateprocessor (= 0.74.3)
- React-Fabric/textlayoutmanager (= 0.74.3)
- React-Fabric/uimanager (= 0.74.3)
- React-graphics
- React-jsi
- React-jsiexecutor
@ -391,7 +391,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/animations (0.74.2):
- React-Fabric/animations (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -410,7 +410,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/attributedstring (0.74.2):
- React-Fabric/attributedstring (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -429,7 +429,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/componentregistry (0.74.2):
- React-Fabric/componentregistry (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -448,7 +448,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/componentregistrynative (0.74.2):
- React-Fabric/componentregistrynative (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -467,7 +467,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/components (0.74.2):
- React-Fabric/components (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -478,17 +478,17 @@ PODS:
- React-Core
- React-cxxreact
- React-debug
- React-Fabric/components/inputaccessory (= 0.74.2)
- React-Fabric/components/legacyviewmanagerinterop (= 0.74.2)
- React-Fabric/components/modal (= 0.74.2)
- React-Fabric/components/rncore (= 0.74.2)
- React-Fabric/components/root (= 0.74.2)
- React-Fabric/components/safeareaview (= 0.74.2)
- React-Fabric/components/scrollview (= 0.74.2)
- React-Fabric/components/text (= 0.74.2)
- React-Fabric/components/textinput (= 0.74.2)
- React-Fabric/components/unimplementedview (= 0.74.2)
- React-Fabric/components/view (= 0.74.2)
- React-Fabric/components/inputaccessory (= 0.74.3)
- React-Fabric/components/legacyviewmanagerinterop (= 0.74.3)
- React-Fabric/components/modal (= 0.74.3)
- React-Fabric/components/rncore (= 0.74.3)
- React-Fabric/components/root (= 0.74.3)
- React-Fabric/components/safeareaview (= 0.74.3)
- React-Fabric/components/scrollview (= 0.74.3)
- React-Fabric/components/text (= 0.74.3)
- React-Fabric/components/textinput (= 0.74.3)
- React-Fabric/components/unimplementedview (= 0.74.3)
- React-Fabric/components/view (= 0.74.3)
- React-graphics
- React-jsi
- React-jsiexecutor
@ -497,7 +497,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/components/inputaccessory (0.74.2):
- React-Fabric/components/inputaccessory (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -516,7 +516,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/components/legacyviewmanagerinterop (0.74.2):
- React-Fabric/components/legacyviewmanagerinterop (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -535,7 +535,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/components/modal (0.74.2):
- React-Fabric/components/modal (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -554,7 +554,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/components/rncore (0.74.2):
- React-Fabric/components/rncore (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -573,7 +573,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/components/root (0.74.2):
- React-Fabric/components/root (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -592,7 +592,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/components/safeareaview (0.74.2):
- React-Fabric/components/safeareaview (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -611,7 +611,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/components/scrollview (0.74.2):
- React-Fabric/components/scrollview (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -630,7 +630,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/components/text (0.74.2):
- React-Fabric/components/text (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -649,7 +649,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/components/textinput (0.74.2):
- React-Fabric/components/textinput (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -668,7 +668,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/components/unimplementedview (0.74.2):
- React-Fabric/components/unimplementedview (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -687,7 +687,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/components/view (0.74.2):
- React-Fabric/components/view (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -707,7 +707,7 @@ PODS:
- React-utils
- ReactCommon/turbomodule/core
- Yoga
- React-Fabric/core (0.74.2):
- React-Fabric/core (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -726,7 +726,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/imagemanager (0.74.2):
- React-Fabric/imagemanager (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -745,7 +745,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/leakchecker (0.74.2):
- React-Fabric/leakchecker (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -764,7 +764,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/mounting (0.74.2):
- React-Fabric/mounting (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -783,7 +783,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/scheduler (0.74.2):
- React-Fabric/scheduler (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -802,7 +802,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/telemetry (0.74.2):
- React-Fabric/telemetry (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -821,7 +821,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/templateprocessor (0.74.2):
- React-Fabric/templateprocessor (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -840,7 +840,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/textlayoutmanager (0.74.2):
- React-Fabric/textlayoutmanager (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -860,7 +860,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-Fabric/uimanager (0.74.2):
- React-Fabric/uimanager (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
@ -879,45 +879,45 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon/turbomodule/core
- React-FabricImage (0.74.2):
- React-FabricImage (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
- hermes-engine
- RCT-Folly/Fabric (= 2024.01.01.00)
- RCTRequired (= 0.74.2)
- RCTTypeSafety (= 0.74.2)
- RCTRequired (= 0.74.3)
- RCTTypeSafety (= 0.74.3)
- React-Fabric
- React-graphics
- React-ImageManager
- React-jsi
- React-jsiexecutor (= 0.74.2)
- React-jsiexecutor (= 0.74.3)
- React-logger
- React-rendererdebug
- React-utils
- ReactCommon
- Yoga
- React-featureflags (0.74.2)
- React-graphics (0.74.2):
- React-featureflags (0.74.3)
- React-graphics (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
- RCT-Folly/Fabric (= 2024.01.01.00)
- React-Core/Default (= 0.74.2)
- React-Core/Default (= 0.74.3)
- React-utils
- React-hermes (0.74.2):
- React-hermes (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
- React-cxxreact (= 0.74.2)
- React-cxxreact (= 0.74.3)
- React-jsi
- React-jsiexecutor (= 0.74.2)
- React-jsiexecutor (= 0.74.3)
- React-jsinspector
- React-perflogger (= 0.74.2)
- React-perflogger (= 0.74.3)
- React-runtimeexecutor
- React-ImageManager (0.74.2):
- React-ImageManager (0.74.3):
- glog
- RCT-Folly/Fabric
- React-Core/Default
@ -926,41 +926,41 @@ PODS:
- React-graphics
- React-rendererdebug
- React-utils
- React-jserrorhandler (0.74.2):
- React-jserrorhandler (0.74.3):
- RCT-Folly/Fabric (= 2024.01.01.00)
- React-debug
- React-jsi
- React-Mapbuffer
- React-jsi (0.74.2):
- React-jsi (0.74.3):
- boost (= 1.83.0)
- DoubleConversion
- fmt (= 9.1.0)
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
- React-jsiexecutor (0.74.2):
- React-jsiexecutor (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
- React-cxxreact (= 0.74.2)
- React-jsi (= 0.74.2)
- React-cxxreact (= 0.74.3)
- React-jsi (= 0.74.3)
- React-jsinspector
- React-perflogger (= 0.74.2)
- React-jsinspector (0.74.2):
- React-perflogger (= 0.74.3)
- React-jsinspector (0.74.3):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
- React-featureflags
- React-jsi
- React-runtimeexecutor (= 0.74.2)
- React-jsitracing (0.74.2):
- React-runtimeexecutor (= 0.74.3)
- React-jsitracing (0.74.3):
- React-jsi
- React-logger (0.74.2):
- React-logger (0.74.3):
- glog
- React-Mapbuffer (0.74.2):
- React-Mapbuffer (0.74.3):
- glog
- React-debug
- react-native-biometrics (3.0.1):
@ -1002,15 +1002,15 @@ PODS:
- React
- react-native-randombytes (3.6.1):
- React-Core
- react-native-safe-area-context (4.10.5):
- react-native-safe-area-context (4.10.7):
- React-Core
- react-native-secure-key-store (2.0.10):
- React-Core
- react-native-tcp-socket (6.1.0):
- CocoaAsyncSocket
- React-Core
- React-nativeconfig (0.74.2)
- React-NativeModulesApple (0.74.2):
- React-nativeconfig (0.74.3)
- React-NativeModulesApple (0.74.3):
- glog
- hermes-engine
- React-callinvoker
@ -1021,10 +1021,10 @@ PODS:
- React-runtimeexecutor
- ReactCommon/turbomodule/bridging
- ReactCommon/turbomodule/core
- React-perflogger (0.74.2)
- React-RCTActionSheet (0.74.2):
- React-Core/RCTActionSheetHeaders (= 0.74.2)
- React-RCTAnimation (0.74.2):
- React-perflogger (0.74.3)
- React-RCTActionSheet (0.74.3):
- React-Core/RCTActionSheetHeaders (= 0.74.3)
- React-RCTAnimation (0.74.3):
- RCT-Folly (= 2024.01.01.00)
- RCTTypeSafety
- React-Codegen
@ -1032,7 +1032,7 @@ PODS:
- React-jsi
- React-NativeModulesApple
- ReactCommon
- React-RCTAppDelegate (0.74.2):
- React-RCTAppDelegate (0.74.3):
- RCT-Folly (= 2024.01.01.00)
- RCTRequired
- RCTTypeSafety
@ -1056,7 +1056,7 @@ PODS:
- React-runtimescheduler
- React-utils
- ReactCommon
- React-RCTBlob (0.74.2):
- React-RCTBlob (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- hermes-engine
@ -1069,7 +1069,7 @@ PODS:
- React-NativeModulesApple
- React-RCTNetwork
- ReactCommon
- React-RCTFabric (0.74.2):
- React-RCTFabric (0.74.3):
- glog
- hermes-engine
- RCT-Folly/Fabric (= 2024.01.01.00)
@ -1089,7 +1089,7 @@ PODS:
- React-runtimescheduler
- React-utils
- Yoga
- React-RCTImage (0.74.2):
- React-RCTImage (0.74.3):
- RCT-Folly (= 2024.01.01.00)
- RCTTypeSafety
- React-Codegen
@ -1098,14 +1098,14 @@ PODS:
- React-NativeModulesApple
- React-RCTNetwork
- ReactCommon
- React-RCTLinking (0.74.2):
- React-RCTLinking (0.74.3):
- React-Codegen
- React-Core/RCTLinkingHeaders (= 0.74.2)
- React-jsi (= 0.74.2)
- React-Core/RCTLinkingHeaders (= 0.74.3)
- React-jsi (= 0.74.3)
- React-NativeModulesApple
- ReactCommon
- ReactCommon/turbomodule/core (= 0.74.2)
- React-RCTNetwork (0.74.2):
- ReactCommon/turbomodule/core (= 0.74.3)
- React-RCTNetwork (0.74.3):
- RCT-Folly (= 2024.01.01.00)
- RCTTypeSafety
- React-Codegen
@ -1113,7 +1113,7 @@ PODS:
- React-jsi
- React-NativeModulesApple
- ReactCommon
- React-RCTSettings (0.74.2):
- React-RCTSettings (0.74.3):
- RCT-Folly (= 2024.01.01.00)
- RCTTypeSafety
- React-Codegen
@ -1121,23 +1121,23 @@ PODS:
- React-jsi
- React-NativeModulesApple
- ReactCommon
- React-RCTText (0.74.2):
- React-Core/RCTTextHeaders (= 0.74.2)
- React-RCTText (0.74.3):
- React-Core/RCTTextHeaders (= 0.74.3)
- Yoga
- React-RCTVibration (0.74.2):
- React-RCTVibration (0.74.3):
- RCT-Folly (= 2024.01.01.00)
- React-Codegen
- React-Core/RCTVibrationHeaders
- React-jsi
- React-NativeModulesApple
- ReactCommon
- React-rendererdebug (0.74.2):
- React-rendererdebug (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- RCT-Folly (= 2024.01.01.00)
- React-debug
- React-rncore (0.74.2)
- React-RuntimeApple (0.74.2):
- React-rncore (0.74.3)
- React-RuntimeApple (0.74.3):
- hermes-engine
- RCT-Folly/Fabric (= 2024.01.01.00)
- React-callinvoker
@ -1155,7 +1155,7 @@ PODS:
- React-runtimeexecutor
- React-RuntimeHermes
- React-utils
- React-RuntimeCore (0.74.2):
- React-RuntimeCore (0.74.3):
- glog
- hermes-engine
- RCT-Folly/Fabric (= 2024.01.01.00)
@ -1168,9 +1168,9 @@ PODS:
- React-runtimeexecutor
- React-runtimescheduler
- React-utils
- React-runtimeexecutor (0.74.2):
- React-jsi (= 0.74.2)
- React-RuntimeHermes (0.74.2):
- React-runtimeexecutor (0.74.3):
- React-jsi (= 0.74.3)
- React-RuntimeHermes (0.74.3):
- hermes-engine
- RCT-Folly/Fabric (= 2024.01.01.00)
- React-featureflags
@ -1181,7 +1181,7 @@ PODS:
- React-nativeconfig
- React-RuntimeCore
- React-utils
- React-runtimescheduler (0.74.2):
- React-runtimescheduler (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
@ -1193,51 +1193,51 @@ PODS:
- React-rendererdebug
- React-runtimeexecutor
- React-utils
- React-utils (0.74.2):
- React-utils (0.74.3):
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
- React-debug
- React-jsi (= 0.74.2)
- ReactCommon (0.74.2):
- ReactCommon/turbomodule (= 0.74.2)
- ReactCommon/turbomodule (0.74.2):
- React-jsi (= 0.74.3)
- ReactCommon (0.74.3):
- ReactCommon/turbomodule (= 0.74.3)
- ReactCommon/turbomodule (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
- React-callinvoker (= 0.74.2)
- React-cxxreact (= 0.74.2)
- React-jsi (= 0.74.2)
- React-logger (= 0.74.2)
- React-perflogger (= 0.74.2)
- ReactCommon/turbomodule/bridging (= 0.74.2)
- ReactCommon/turbomodule/core (= 0.74.2)
- ReactCommon/turbomodule/bridging (0.74.2):
- React-callinvoker (= 0.74.3)
- React-cxxreact (= 0.74.3)
- React-jsi (= 0.74.3)
- React-logger (= 0.74.3)
- React-perflogger (= 0.74.3)
- ReactCommon/turbomodule/bridging (= 0.74.3)
- ReactCommon/turbomodule/core (= 0.74.3)
- ReactCommon/turbomodule/bridging (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
- React-callinvoker (= 0.74.2)
- React-cxxreact (= 0.74.2)
- React-jsi (= 0.74.2)
- React-logger (= 0.74.2)
- React-perflogger (= 0.74.2)
- ReactCommon/turbomodule/core (0.74.2):
- React-callinvoker (= 0.74.3)
- React-cxxreact (= 0.74.3)
- React-jsi (= 0.74.3)
- React-logger (= 0.74.3)
- React-perflogger (= 0.74.3)
- ReactCommon/turbomodule/core (0.74.3):
- DoubleConversion
- fmt (= 9.1.0)
- glog
- hermes-engine
- RCT-Folly (= 2024.01.01.00)
- React-callinvoker (= 0.74.2)
- React-cxxreact (= 0.74.2)
- React-debug (= 0.74.2)
- React-jsi (= 0.74.2)
- React-logger (= 0.74.2)
- React-perflogger (= 0.74.2)
- React-utils (= 0.74.2)
- React-callinvoker (= 0.74.3)
- React-cxxreact (= 0.74.3)
- React-debug (= 0.74.3)
- React-jsi (= 0.74.3)
- React-logger (= 0.74.3)
- React-perflogger (= 0.74.3)
- React-utils (= 0.74.3)
- ReactNativeCameraKit (13.0.0):
- React-Core
- RealmJS (12.11.1):
@ -1487,7 +1487,7 @@ EXTERNAL SOURCES:
:podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec"
hermes-engine:
:podspec: "../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec"
:tag: hermes-2024-06-03-RNv0.74.2-bb1e74fe1e95c2b5a2f4f9311152da052badc2bc
:tag: hermes-2024-06-28-RNv0.74.3-7bda0c267e76d11b68a585f84cfdd65000babf85
lottie-react-native:
:path: "../node_modules/lottie-react-native"
RCT-Folly:
@ -1667,36 +1667,36 @@ SPEC CHECKSUMS:
BVLinearGradient: 880f91a7854faff2df62518f0281afb1c60d49a3
CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99
DoubleConversion: 76ab83afb40bddeeee456813d9c04f67f78771b5
FBLazyVector: 4bc164e5b5e6cfc288d2b5ff28643ea15fa1a589
FBLazyVector: 7e977dd099937dc5458851233141583abba49ff2
fmt: 4c2741a687cc09f0634a2e2c72a838b99f1ff120
glog: fdfdfe5479092de0c4bdbebedd9056951f092c4f
hermes-engine: 01d3e052018c2a13937aca1860fbedbccd4a41b7
hermes-engine: 1f547997900dd0752dc0cc0ae6dd16173c49e09b
lottie-ios: e047b1d2e6239b787cc5e9755b988869cf190494
lottie-react-native: 4279da8b681e89c29a2adb9f99985d6cf372d49d
RCT-Folly: 02617c592a293bd6d418e0a88ff4ee1f88329b47
RCTDeprecation: b03c35057846b685b3ccadc9bfe43e349989cdb2
RCTRequired: 194626909cfa8d39ca6663138c417bc6c431648c
RCTTypeSafety: 552aff5b8e8341660594db00e53ac889682bc120
React: a57fe42044fe6ed3e828f8867ce070a6c5872754
React-callinvoker: 6bedefb354a8848b534752417954caa3a5cf34f9
React-Codegen: 0952549a095f8f8cb2fb5def1733b6b232769b1c
React-Core: 289ee3dfc1639bb9058c1e77427bb48169c26d7a
React-CoreModules: eda5ce541a1f552158317abd90a5a0f6a4f8d6f7
React-cxxreact: 56bd17ccc6d4248116f7f95884ddb8c528379fb6
React-debug: 164b8e302404d92d4bec39778a5e03bcb1b6eb08
React-Fabric: 05620c36074e3ab397dd8f9db0deb6d3c38b4efa
React-FabricImage: 2a8a7f5729f5c44e32e6f58f7225ee1017ed0704
React-featureflags: d97a6393993052e951e16a3b81206e22110be8d2
React-graphics: ef07d701f4eb72ae6fca6ed0a7260a04f2a58dec
React-hermes: 6ccc301ababfa17a9aad25a7e33faf325fd024b4
React-ImageManager: 00404bfe122626bc6493621f2a31ce802115a9b3
React-jserrorhandler: 5e2632590a84363855b2083e6b3d501e93bc3f04
React-jsi: 828703c235f4eea1647897ee8030efdc6e8e9f14
React-jsiexecutor: 713d7bbef0a410cee5b3b78f73ed1fc16e177ba7
React-jsinspector: e1fa5325a47f34645195c63e3312ddb6a2efef5d
React-jsitracing: 0fa7f78d8fdda794667cb2e6f19c874c1cf31d7e
React-logger: 29fa3e048f5f67fe396bc08af7606426d9bd7b5d
React-Mapbuffer: bf56147c9775491e53122a94c423ac201417e326
RCTDeprecation: 4c7eeb42be0b2e95195563c49be08d0b839d22b4
RCTRequired: d530a0f489699c8500e944fde963102c42dcd0c2
RCTTypeSafety: b20878506b094fa3d9007d7b9e4be0faa3562499
React: 2f9da0177233f60fa3462d83fcccde245759f81a
React-callinvoker: d0205f0dcebf72ec27263ab41e3a5ad827ed503f
React-Codegen: b4457c8557cb61a27508745f8b03f16afeb9ef59
React-Core: 690ebbbf8f8dcfba6686ce8927731d3f025c3114
React-CoreModules: 185da31f5eb2e6043c3d19b10c64c4661322ed6a
React-cxxreact: c53d2ac9246235351086b8c588feaf775b4ec7f7
React-debug: dd8f7c772fda4196814a3b12620863d1d98b3a53
React-Fabric: 68935648d5c81e6b84445d9e726a79301f1fac8f
React-FabricImage: c92bd5ed4b553c800ca39aee305aaf8dd3e9f4b0
React-featureflags: ead50fe0ee4ab9278b5fd9f3f2f0f63e316452f4
React-graphics: 71c87b09041e45c61809cd357436e570dea5ed48
React-hermes: 917b7ab4c3cb9204c2ad020d74f313830097148b
React-ImageManager: 1086d48d00fcb511ea119bfc58fb12a72c4dcb95
React-jserrorhandler: 84d45913636750c2e620a8c8e049964967040405
React-jsi: 024b933267079f80c30a5cae97bf5ce521217505
React-jsiexecutor: 45cb079c87db3f514da3acfc686387a0e01de5c5
React-jsinspector: 1066f8b3da937daf8ced4cf3786eb29e1e4f9b30
React-jsitracing: 6b3c8c98313642140530f93c46f5a6ca4530b446
React-logger: fa92ba4d3a5d39ac450f59be2a3cec7b099f0304
React-Mapbuffer: 9f68550e7c6839d01411ac8896aea5c868eff63a
react-native-biometrics: 352e5a794bfffc46a0c86725ea7dc62deb085bdc
react-native-blue-crypto: 23f1558ad3d38d7a2edb7e2f6ed1bc520ed93e56
react-native-bw-file-access: b232fd1d902521ca046f3fc5990ab1465e1878d7
@ -1707,32 +1707,32 @@ SPEC CHECKSUMS:
react-native-menu: d32728a357dfb360cf01cd5979cf7713c5acbb95
react-native-qrcode-local-image: 35ccb306e4265bc5545f813e54cc830b5d75bcfc
react-native-randombytes: 421f1c7d48c0af8dbcd471b0324393ebf8fe7846
react-native-safe-area-context: a240ad4b683349e48b1d51fed1611138d1bdad97
react-native-safe-area-context: 422017db8bcabbada9ad607d010996c56713234c
react-native-secure-key-store: 910e6df6bc33cb790aba6ee24bc7818df1fe5898
react-native-tcp-socket: ea937a61ee9ff2cb3cceade359290a46ad2b5aab
React-nativeconfig: 9f223cd321823afdecf59ed00861ab2d69ee0fc1
React-NativeModulesApple: ff7efaff7098639db5631236cfd91d60abff04c0
React-perflogger: 32ed45d9cee02cf6639acae34251590dccd30994
React-RCTActionSheet: 19f967ddaea258182b56ef11437133b056ba2adf
React-RCTAnimation: d7f4137fc44a08bba465267ea7cb1dbdb7c4ec87
React-RCTAppDelegate: 2b3f4d8009796af209a0d496e73276b743acee08
React-RCTBlob: c6c3e1e0251700b7bea036b893913f22e2b9cb47
React-RCTFabric: 93a3ea55169d19294f07092013c1c9ea7a015c9b
React-RCTImage: 40528ab74a4fef0f0e2ee797a074b26d120b6cc6
React-RCTLinking: 385b5beb96749aae9ae1606746e883e1c9f8a6a7
React-RCTNetwork: ffc9f05bd8fa5b3bce562199ba41235ad0af645c
React-RCTSettings: 21914178bb65cb2c20c655ae1fb401617ae74618
React-RCTText: 7f8dba1a311e99f4de15bbace2350e805f33f024
React-RCTVibration: e4ccf673579d0d94a96b3a0b64492db08f8324d5
React-rendererdebug: ac70f40de137ce7bdbc55eaee60c467a215d9923
React-rncore: edfff7a3f7f82ca1e0ba26978c6d84c7a8970dac
React-RuntimeApple: a0c98b75571aa5f44ddc7c6e9fd55803fa4db00f
React-RuntimeCore: 4b8db1fe2f3f4a3a5ecb22e1a419824e3e2cd7ef
React-runtimeexecutor: 5961acc7a77b69f964e1645a5d6069e124ce6b37
React-RuntimeHermes: c5825bfae4815fdf4e9e639340c3a986a491884c
React-runtimescheduler: 56b642bf605ba5afa500d35790928fc1d51565ad
React-utils: 4476b7fcbbd95cfd002f3e778616155241d86e31
ReactCommon: ecad995f26e0d1e24061f60f4e5d74782f003f12
React-nativeconfig: fa5de9d8f4dbd5917358f8ad3ad1e08762f01dcb
React-NativeModulesApple: 585d1b78e0597de364d259cb56007052d0bda5e5
React-perflogger: 7bb9ba49435ff66b666e7966ee10082508a203e8
React-RCTActionSheet: a2816ae2b5c8523c2bc18a8f874a724a096e6d97
React-RCTAnimation: e78f52d7422bac13e1213e25e9bcbf99be872e1a
React-RCTAppDelegate: 24f46de486cfa3a9f46e4b0786eaf17d92e1e0c6
React-RCTBlob: 9f9d6599d1b00690704dadc4a4bc33a7e76938be
React-RCTFabric: 609e66bb0371b9082c62ed677ee0614efe711bf2
React-RCTImage: 39dd5aee6b92213845e1e7a7c41865801dc33493
React-RCTLinking: 35d742a982f901f9ea416d772763e2da65c2dc7d
React-RCTNetwork: b078576c0c896c71905f841716b9f9f5922111dc
React-RCTSettings: 900aab52b5b1212f247c2944d88f4defbf6146f2
React-RCTText: a3895ab4e5df4a5fd41b6f059eed484a0c7016d1
React-RCTVibration: ab4912e1427d8de00ef89e9e6582094c4c25dc05
React-rendererdebug: 542934058708a643fa5743902eb2fedc0833770a
React-rncore: f6c23d9810c8de9e369781bb7b1d5511e9d9f4e7
React-RuntimeApple: ce41ba7df744c7a6c2cc490a9b2e15fc58019508
React-RuntimeCore: 350218ac9ee1412ddc9806f248141c8fb9bccd8b
React-runtimeexecutor: 69cab8ddf409de6d6a855a71c8af9e7290c4e55b
React-RuntimeHermes: 9d0812e3370111dd175aa1fa8bd4da93a9efc4fd
React-runtimescheduler: 0c80752bceb80924cb8a4babc2a8e3ed70d41e87
React-utils: a06061b3887c702235d2dac92dacbd93e1ea079e
ReactCommon: f00e436b3925a7ae44dfa294b43ef360fbd8ccc4
ReactNativeCameraKit: 9d46a5d7dd544ca64aa9c03c150d2348faf437eb
RealmJS: ecd23895a68689ce2c048d28df3d699cf76cedb7
rn-ldk: 0d8749d98cc5ce67302a32831818c116b67f7643
@ -1758,7 +1758,7 @@ SPEC CHECKSUMS:
RNVectorIcons: 2a2f79274248390b80684ea3c4400bd374a15c90
RNWatch: fd30ca40a5b5ef58dcbc195638e68219bc455236
SocketRocket: abac6f5de4d4d62d24e11868d7a2f427e0ef940d
Yoga: ae3c32c514802d30f687a04a6a35b348506d411f
Yoga: 04f1db30bb810187397fa4c37dd1868a27af229c
PODFILE CHECKSUM: 21646410f42b11a6f6df1ba61ddf849e10f568af

View File

@ -220,7 +220,6 @@
"biometrics": "القياسات الحيوية",
"biom_10times": "لقد حاولت إدخال كلمة المرور الخاصة بك 10 مرات. هل ترغب في إعادة تعيين التخزين الخاص بك؟ سيؤدي هذا إلى إزالة جميع المحافظ وفك تشفير التخزين الخاص بك.",
"biom_conf_identity": "الرجاء تأكيد هويتك.",
"biom_no_passcode": "جهازك ليس لديه رمز مرور. للمتابعة ، يرجى اضافة رمز مرور من إعدادات الجهاز.",
"biom_remove_decrypt": "ستتم إزالة جميع محافظك وفك تشفير التخزين الخاص بك. هل انت متأكد انك تريد المتابعة؟",
"currency": "العملة",
"currency_source": "تم الاستعلام عن السعر عن طريق",
@ -355,6 +354,7 @@
"add_bitcoin": "بتكوين",
"add_bitcoin_explain": "محفظة بتكوين بسيطة وقوية",
"add_create": "إنشاء",
"add_entropy": "الإنتروبيا (العشوائية)",
"add_entropy_generated": "{gen} بايت من الإنتروبيا (العشوائية) المحققة",
"add_entropy_provide": "توفير الإنتروبيا (العشوائية) باستخدام النرد",
"add_entropy_remain": "{gen} بايت من الإنتروبيا (العشوائية) المحققة. سيتم الحصول على {rem} بايت المتبقية من مولِّد الأرقام العشوائية للنظام.",
@ -387,6 +387,7 @@
"details_show_xpub": "إظهار عنوان XPUB للمحفظة",
"details_show_addresses": "عرض العناوين",
"details_title": "المحفظة",
"wallets": "المحافظ",
"details_type": "النوع",
"details_use_with_hardware_wallet": "الاستخدام مع محفظة جهاز",
"details_wallet_updated": "تم تحديث المحفظة",

View File

@ -60,6 +60,7 @@
"save": "Захаваць"
},
"wallets": {
"add_entropy": "Энтрапія",
"details_save": "Захаваць"
}
}

View File

@ -165,7 +165,6 @@
"biometrics": "Биометрични данни",
"biom_10times": "Опитахте се да въведете вашата парола 10 пъти. Желаете ли да направите ресет на апликацията? Това ще изтрие всички портфейли и ще декриптира хранилището.",
"biom_conf_identity": "Моля, потвърдете вашата самоличност.",
"biom_no_passcode": "Вашето устройство няма създадена парола. За да продължите, конфигурирайте парола в 'Настройки'на устройството.",
"biom_remove_decrypt": "Всички портфейли ще бъдат изтрити и хранилището ще бъде декриптирано. Сигурни ли сте, че искате да продължите?",
"currency": "Валута",
"default_info": "Информация",
@ -205,6 +204,7 @@
},
"wallets": {
"add_create": "Създай",
"add_entropy": "Ентропия",
"details_address": "Адрес",
"details_save": "Запази"
},

View File

@ -276,6 +276,7 @@
"wallets": {
"add_bitcoin": "بیت کوین",
"add_create": "وورکل",
"add_entropy": "آنتروپی",
"details_address": "آدرس",
"details_save": "زفت کردن"
},

View File

@ -258,6 +258,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Moneder de Bitcoin senzill i potent",
"add_create": "Crear",
"add_entropy": "Entropia",
"add_import_wallet": "Importar moneder",
"add_lightning": "Lightning",
"add_title": "Afegir moneder",
@ -275,6 +276,7 @@
"details_save": "Guardar",
"details_show_xpub": "Mostrar wallet XPUB",
"details_title": "Detalls del moneder",
"wallets": "moneders",
"details_type": "Tipus",
"details_use_with_hardware_wallet": "Usar amb un moneder hardware",
"details_wallet_updated": "Moneder actualitzat",

View File

@ -43,7 +43,8 @@
"entropy": {
"save": "Uložit",
"title": "Entropie",
"undo": "Vrátit zpět"
"undo": "Vrátit zpět",
"amountOfEntropy": "{bits} z(e) {limit} bitů"
},
"errors": {
"broadcast": "Odesílání se nezdařilo.",
@ -126,7 +127,8 @@
"maxSatsFull": "Maximální částka je {max} sats nebo {currency} ",
"minSats": "Minimální množství je {min} sats",
"minSatsFull": "Minimální částka je {min} sats nebo {currency} ",
"qrcode_for_the_address": "QR kód pro adresu"
"qrcode_for_the_address": "QR kód pro adresu",
"bip47_explanation": "Platební kódy jsou univerzální adresou, která zabraňuje odhalení adres vaší peněženky. Nejsou podporovány všemi službami."
},
"send": {
"provided_address_is_invoice": "Zdá se, že tato adresa je určena pro Lightning fakturu. Přejděte prosím do své Lightning peněženky, abyste mohli provést platbu této faktury.",
@ -148,6 +150,7 @@
"create_to": "Komu",
"create_tx_size": "Velikost transakce",
"create_verify": "Ověřit na coinb.in",
"details_insert_contact": "Vložte kontakt",
"details_add_rec_add": "Přidat příjemce",
"details_add_rec_rem": "Odebrat příjemce",
"details_address": "Adresa",
@ -213,11 +216,14 @@
"success_done": "Hotovo",
"txSaved": "Soubor transakce ({filePath}) byl uložen do složky Downloads.",
"file_saved_at_path": "Soubor ({fileName}) byl uložen do složky Downloads.",
"cant_send_to_silentpayment_adress": "Tato peněženka nedokáže odesílat prostředky na SilentPayment adresy",
"cant_send_to_bip47": "Tato peněženka nedokáže odesílat prostředky na platební kódy BIP47",
"cant_find_bip47_notification": "Nejdříve teno platební kód přidejte mezi kontakty",
"problem_with_psbt": "Problém s PSBT (částečně podepsanou bitcoinovou transakcí)"
},
"settings": {
"about": "O BlueWallet",
"about_awesome": "Postaveno s úžasem",
"about_awesome": "Sestaveno s úžasnými",
"about_backup": "Vždy zálohujte své klíče!",
"about_free": "BlueWallet je bezplatný a open source projekt. Vytvořeno bitcoinery.",
"about_license": "Licence MIT",
@ -237,7 +243,7 @@
"biometrics_no_longer_available": "Nastavení vašeho zařízení se změnily a již neodpovídají zvoleným nastavením zabezpečení v aplikaci. Aktivujte prosím znovu biometrii nebo přístupový kód, a poté aplikaci restartujte, aby se tyto změny projevily.",
"biom_10times": "Pokusili jste se zadat heslo 10×. Chcete obnovit úložiště? Tím odstraníte všechny peněženky a dešifrujete úložiště.",
"biom_conf_identity": "Potvrďte prosím svoji identitu.",
"biom_no_passcode": "Vaše zařízení nemá přístupový kód. Chcete-li pokračovat, nakonfigurujte přístupový kód v Nastavení aplikace.",
"biom_no_passcode": "Vaše zařízení nemá povolené odemykání pomocí přístupového kódu nebo biometriky. Abyste mohli pokračovat, nastavte prosím přístupový kód nebo biometriku v aplikaci Nastavení.",
"biom_remove_decrypt": "Všechny vaše peněženky budou odstraněny a vaše úložiště bude dešifrováno. Opravdu chcete pokračovat?",
"currency": "Měna",
"currency_source": "Cena se získává z",
@ -376,12 +382,16 @@
"txid": "ID transakce",
"from": "Od: {counterparty}",
"to": "Pro: {counterparty}",
"updating": "Aktualizování…"
"updating": "Aktualizování…",
"watchOnlyWarningTitle": "Upozornění na podvod",
"watchOnlyWarningDescription": "Mějte na paměti, že podvodníci obvykle využívají tohoto typu peněženky „pouze pro sledování“, aby zkusili okrást uživatele. Tuto peněženku nemůžete ovládat nebo z ní odesílat prostředky. Je určena pouze ke sledování zůstatku."
},
"wallets": {
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Jednoduchá a výkonná bitcoinová peněženka",
"add_create": "Vytvořit",
"add_entropy": "Entropie",
"add_entropy_bytes": "{bytes} bajtů entropie",
"add_entropy_generated": "{gen} bajtů vygenerované entropie",
"add_entropy_provide": "Poskytnout entropii pomocí hodu kostkami",
"add_entropy_remain": "{gen} bajtů vygenerované entropie. Zbývající bajty ({rem}) budou získány od systémového generátoru náhodných čísel.",
@ -395,6 +405,10 @@
"add_title": "Přidat peněženku",
"add_wallet_name": "Název peněženky",
"add_wallet_type": "Typ",
"add_wallet_seed_length": "Délka seedu",
"add_wallet_seed_length_message": "Zvolte délku seed fráze, kterou chcete použít pro tuto peněženku.",
"add_wallet_seed_length_12": "12 slov",
"add_wallet_seed_length_24": "24 slov",
"clipboard_bitcoin": "Ve schránce máte bitcoinovou adresu. Chcete ji použít pro transakci?",
"clipboard_lightning": "Ve schránce máte Lightning fakturu. Chcete ji použít pro transakci?",
"details_address": "Adresa",
@ -416,6 +430,7 @@
"details_show_xpub": "Zobrazit XPUB peněženky",
"details_show_addresses": "Zobrazit adresy",
"details_title": "Peněženka",
"wallets": "Peněženky",
"details_type": "Typ",
"details_use_with_hardware_wallet": "Použít s hardwarovou peněženkou",
"details_wallet_updated": "Peněženka byla aktualizována",
@ -617,13 +632,12 @@
},
"bip47": {
"payment_code": "Platební kód",
"my_payment_code": "Můj platební kód",
"contacts": "Kontakty",
"purpose": "Opakovaně použitelný kód, který je možné sdílet (BIP47)",
"pay_this_contact": "Zaplatit tomuto kontaktu",
"rename_contact": "Přejmenovat kontakt",
"copy_payment_code": "Zkopírovat platební kód",
"copied": "Zkopírováno",
"hide_contact": "Skrýt kontakt",
"rename": "Přejmenovat",
"provide_name": "Poskytněte nové jméno pro tento kontakt",
"add_contact": "Přidat kontakt",

View File

@ -174,6 +174,7 @@
"details_no_cancel": "Na, canslo",
"details_save": "Safio",
"details_show_addresses": "Dangos cyfeiriadau",
"wallets": "Waledi",
"details_type": "Math",
"details_yes_delete": "Ia, dileu",
"enter_bip38_password": "Angen cyfrinair i ddad-gryptio",

View File

@ -644,7 +644,7 @@
"notification_tx_unconfirmed": "Benachrichtigungstransaktion noch unbestätigt. Bitte warten",
"failed_create_notif_tx": "On-Chain Transaktion konnte nicht in erstellt werden",
"onchain_tx_needed": "On-Chain Transaktion benötigt.",
"notif_tx_sent" : "Benachrichtigungstransaktion ist gesendet. Auf Bestätigung warten.",
"notif_tx_sent": "Benachrichtigungstransaktion ist gesendet. Auf Bestätigung warten.",
"notif_tx": "Benachrichtigungstransaktion",
"not_found": "Zahlungscode nicht gefunden"
}

View File

@ -263,6 +263,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Απλό και ισχυρό πορτοφόλι Bitcoin",
"add_create": "Δημιουργία",
"add_entropy": "Εντροπία",
"add_import_wallet": "Εισαγωγή πορτοφολιού",
"add_lightning": "Lightning",
"add_lndhub": "Σύνδεση στο δικό σας LNDHub",
@ -283,6 +284,7 @@
"details_show_xpub": "Προβολή XPUB του πορτοφολιού",
"details_show_addresses": "Εμφάνιση διευθύνσεων",
"details_title": "Πορτοφόλι",
"wallets": "Πορτοφόλια",
"details_type": "Τύπος",
"details_use_with_hardware_wallet": "Χρήση με hardware πορτοφόλι",
"details_wallet_updated": "Το πορτοφόλι ενημερώθηκε",

View File

@ -209,7 +209,6 @@
"biometrics": "Biometría",
"biom_10times": "Has intentado introducir tu contraseña 10 veces. ¿Te gustaría reestablecer tu almacenamiento? Esta acción eliminará todas las carteras y desencriptará tu almacenamiento.",
"biom_conf_identity": "Por favor confirma tu identidad.",
"biom_no_passcode": "Tu dispositivo no tiene una contraseña. Para continuar, por favor configura una contraseña en Ajustes.",
"biom_remove_decrypt": "Todas tus carteras se eliminarán y tu almacenado será desencriptado. ¿Estás seguro de que quieres continuar?",
"currency": "Divisa",
"currency_source": "El precio se obtiene de",
@ -343,6 +342,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Una cartera de Bitcoin útil y facil de usar",
"add_create": "Crear",
"add_entropy": "Entropía ",
"add_entropy_generated": "{gen} bytes de entropía generada",
"add_entropy_provide": "Entropía lanzando dados",
"add_entropy_remain": "{gen} bytes of entropía generada. Los {rem} bytes restantes serán obtenidos del generador de números aleatorios.",
@ -375,6 +375,7 @@
"details_show_xpub": "Mostrar el XPUB de la cartera",
"details_show_addresses": "Mostrar dirección",
"details_title": "Cartera",
"wallets": "Carteras",
"details_type": "Tipo",
"details_use_with_hardware_wallet": "Usar con cartera de hardware",
"details_wallet_updated": "Cartera actualizada",

View File

@ -382,7 +382,9 @@
"txid": "ID de Transacción",
"from": "De: {counterparty}",
"to": "A: {counterparty}",
"updating": "Actualizando..."
"updating": "Actualizando...",
"watchOnlyWarningTitle": "Alerta de estafa",
"watchOnlyWarningDescription": "Ten en cuenta que los estafadores suelen usar este tipo de billetera \"solo para ver\" para tratar de robar a los usuarios. Esta billetera no se puede controlar ni enviar desde ella, solo permite ver el saldo."
},
"wallets": {
"add_bitcoin": "Bitcoin",

View File

@ -48,6 +48,7 @@
"save": "Salvesta"
},
"wallets": {
"add_entropy": "Entroopia",
"details_save": "Salvesta"
}
}

View File

@ -221,7 +221,6 @@
"biometrics": "بیومتریک",
"biom_10times": "شما برای واردکردن گذرواژهٔ خود ۱۰ بار تلاش کرده‌اید. آیا می‌خواهید فضای ذخیره‌سازی خود را بازنشانی کنید؟ این کار تمام کیف پول‌ها را حذف و فضای ذخیره‌سازی شما را رمزگشایی خواهد کرد.",
"biom_conf_identity": "لطفاً هویت خود را تأیید کنید.",
"biom_no_passcode": "دستگاه شما دارای گذرواژه نیست. برای ادامه، لطفاً گذرواژه‌ای را در تنظیمات دستگاه تعیین کنید.",
"biom_remove_decrypt": "تمام کیف پول‌ها حذف و فضای ذخیره‌سازی شما رمزگشایی خواهد شد. آیا مطمئن هستید که می‌خواهید ادامه دهید؟",
"currency": "واحد پول",
"currency_source": "قیمت برگرفته از",
@ -358,6 +357,7 @@
"add_bitcoin": "بیت‌کوین",
"add_bitcoin_explain": "کیف پول ساده و قدرتمند بیت‌کوین",
"add_create": "ایجاد",
"add_entropy": "آنتروپی",
"add_entropy_generated": "{gen} بایت از آنتروپی تولیدشده",
"add_entropy_provide": "فراهم‌کردن آنتروپی از طریق انداختن تاس",
"add_entropy_remain": "{gen} بایت از آنتروپی تولیدشده. {rem} بایت باقی‌مانده از تولیدکنندهٔ اعداد تصادفی سیستم گرفته خواهد شد.",
@ -390,6 +390,7 @@
"details_show_xpub": "نمایش XPUB کیف پول",
"details_show_addresses": "نمایش آدرس‌ها",
"details_title": "کیف پول",
"wallets": "کیف پول‌ها",
"details_type": "نوع",
"details_use_with_hardware_wallet": "استفاده همراه با کیف پول سخت‌افزاری",
"details_wallet_updated": "کیف پول به‌روز شد",
@ -572,7 +573,6 @@
"purpose": "کد بازکاربردپذیر و قابل همرسانی (بیپ47)",
"pay_this_contact": "پرداخت به این مخاطب",
"copy_payment_code": "رونویسی کد پرداخت",
"copied": "رونویسی شد",
"rename": "ویرایش نام",
"add_contact": "افزودن مخاطب",
"not_found": "کد پرداخت یافت نشد"

View File

@ -236,7 +236,6 @@
"biometrics": "Biometriset tiedot",
"biom_10times": "Olet yrittänyt antaa salasanasi 10 kertaa. Haluatko nollata tallennustilan? Tämä poistaa kaikki lompakot ja purkaa tallennustilan salauksen.",
"biom_conf_identity": "Vahvista identiteettisi.",
"biom_no_passcode": "Laitteellasi ei ole salasanaa. Jatkaaksesi määritä salasana Asetukset-sovelluksessa.",
"biom_remove_decrypt": "Kaikki lompakot poistetaan ja tallennustilasi puretaan. Haluatko varmasti jatkaa?",
"currency": "Valuutta",
"currency_source": "Hinta saadaan seuraavista lähteistä",
@ -379,6 +378,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Yksinkertainen ja tehokas Bitcoin-lompakko",
"add_create": "Luo",
"add_entropy": "Entropia",
"add_entropy_generated": "{gen} tavua luotua entropiaa",
"add_entropy_provide": "Hanki entropia nopanheiton kautta",
"add_entropy_remain": "{gen} tavua luotua entropiaa. Jäljellä olevat {rem} tavut saadaan Järjestelmän satunnaislukugeneraattorilta.",
@ -413,6 +413,7 @@
"details_show_xpub": "Näytä lompakon XPUB",
"details_show_addresses": "Näytä osoitteet",
"details_title": "Lompakko",
"wallets": "lompakot",
"details_type": "Tyyppi",
"details_use_with_hardware_wallet": "Käytä hardware-lompakon kanssa",
"details_wallet_updated": "Lompakko päivitetty",
@ -610,7 +611,6 @@
"contacts": "Yhteystiedot",
"purpose": "Uudelleenkäytettävä ja jaettavissa oleva koodi (BIP47)",
"rename_contact": "Nimeä uudelleen yhteystieto",
"copied": "Kopioitu",
"rename": "Nimeä uudelleen",
"add_contact": "Lisää yhteystieto"
}

View File

@ -221,7 +221,6 @@
"biometrics": "Biométrie",
"biom_10times": "Vous avez tenter d'entrer votre mots de passe 10 fois. Voulez vous réinitialiser votre espace de stockage ? Ceci effacera tous les portefeuilles et déchiffrera votre espace de stockage.",
"biom_conf_identity": "Veuillez confirmer votre identité.",
"biom_no_passcode": "Votre appareil n'as pas de code de passe. Pour continuer veuillez configurer un code de passe dans les paramètres.",
"biom_remove_decrypt": "Tous vos portefeuilles seront effacés et votre espace de stockage sera déchiffré. Etes vous sure de vouloir continuer ?",
"currency": "Devise",
"currency_source": "Le prix est obtenu de",
@ -360,6 +359,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Portefeuille Bitcoin simple et puissant",
"add_create": "Créer",
"add_entropy": "Entropie",
"add_entropy_generated": "{gen} octets d'entropie générée",
"add_entropy_provide": "Créer de l'entropie par des jets de dé",
"add_entropy_remain": "{gen} octets d'entropie générée. Les {rem} octets restants seront obtenus auprès du générateur de nombres aléatoires du système.",
@ -392,6 +392,7 @@
"details_show_xpub": "Afficher XPUB du portefeuille",
"details_show_addresses": "Montrer les adresses",
"details_title": "Portefeuille",
"wallets": "portefeuilles",
"details_type": "Type",
"details_use_with_hardware_wallet": "Utiliser avec un portefeuille matériel",
"details_wallet_updated": "Portefeuille mis à jour",

View File

@ -43,7 +43,8 @@
"entropy": {
"save": "שמירה",
"title": "אנטרופיה",
"undo": "ביטול"
"undo": "ביטול",
"amountOfEntropy": "{bits} מתוך {limit} סיביות"
},
"errors": {
"broadcast": "שידור כשל.",
@ -123,7 +124,9 @@
"maxSats": "סכום מקסימלי הינו {max} sats",
"maxSatsFull": "סכום מקסימלי הינו {max} sats או {currency}",
"minSats": "סכום מינימלי הינו {min} sats",
"minSatsFull": "סכום מינימלי הינו {min} sats או {currency}"
"minSatsFull": "סכום מינימלי הינו {min} sats או {currency}",
"qrcode_for_the_address": "קוד QR לכתובת",
"bip47_explanation": "קודי תשלום הם כתובת אוניברסלית שמונעת חשיפה של כתובות הארנק שלך. לא כל השירותים יתמכו בהם."
},
"send": {
"provided_address_is_invoice": "נראה שכתובת זו היא חשבונית ברק. אנא עברו לארנק הברק שלכם כדי לבצע תשלום עבור חשבונית זו.",
@ -145,6 +148,7 @@
"create_to": "עבור",
"create_tx_size": "גודל הפעולה",
"create_verify": "אמתו ב- coinb.in",
"details_insert_contact": "הוספת איש קשר",
"details_add_rec_add": "הוספת נמען",
"details_add_rec_rem": "הסרת נמען",
"details_address": "כתובת",
@ -164,6 +168,7 @@
"details_next": "הבא",
"details_no_signed_tx": "הקובץ הנבחר אינו מכיל העברה שניתן לייבא.",
"details_note_placeholder": "הערה לעצמך",
"counterparty_label_placeholder": "עריכת שם איש קשר",
"details_scan": "סריקה",
"details_scan_hint": "לחיצה כפולה לסריקה או יבוא יעד",
"details_total_exceeds_balance": "הסכום לשליחה חורג מהיתרה הזמינה.",
@ -209,6 +214,9 @@
"success_done": "בוצע",
"txSaved": "קובץ הפעולה ({filePath}) נשמר בספריית ההורדות שלך.",
"file_saved_at_path": "הקובץ ({filePath}) נשמר לתיקיית ההורדות שלך.",
"cant_send_to_silentpayment_adress": "ארנק זה אינו יכול לשלוח לכתובות תשלום שקט",
"cant_send_to_bip47": "ארנק אינו יכול לשלוח לקודי תשלום BIP47",
"cant_find_bip47_notification": "הוספת קוד תשלום זה לרשימת אנשי קשר",
"problem_with_psbt": "בעיה עם PBST"
},
"settings": {
@ -229,10 +237,11 @@
"about_sm_telegram": "צ'אט טלגרם",
"about_sm_twitter": "עקבו אחרינו בטוויטר",
"advanced_options": "אפשרויות מתקדמות",
"biometrics": "ביומטריה",
"biometrics": "זיהוי ביומטרי",
"biometrics_no_longer_available": "הגדרות מכשירכם השתנו ולא מתאימים יותר להגדרות אבטחה הנבחרות ביישומון. אנא אפשרו מחדש זיהוי ביומטרי או סיסמה, ולאחר מכן הפעילו מחדש את היישומון כדי להחיל את השינויים.",
"biom_10times": "ניסיתם להכניס את הסיסמה שלכם 10 פעמים. האם תרצו לאפס את האחסון שלכם? פעולה זאת תמחק את כל הארנקים ותפענח את האחסון שלכם.",
"biom_conf_identity": "אנא אמתו את הזהות שלכם.",
"biom_no_passcode": "למכשירכם אין סיסמה. במטרה להמשיך אנא הגדירו סיסמה בהגדרות המכשיר.",
"biom_no_passcode": "למכשירכם אין אין סיסמה או זיהוי ביומטרי מופעל. במטרה להמשיך, אנא הגדירו סיסמה או זיהוי ביומטרי ביישומון ההגדרות.",
"biom_remove_decrypt": "כל ארנקיכם ימחקו והאחסון יפוענח. האם אתם בטוחים שברצונכם להמשיך?",
"currency": "מטבע",
"currency_source": "מחיר מתקבל מ- ",
@ -272,7 +281,9 @@
"encrypt_title": "אבטחה",
"encrypt_tstorage": "אחסון",
"encrypt_use": "השתמש {type}",
"encrypted_feature_disabled": "לא ניתן להשתמש בתכונה זאת עם הצפנת אחסון מופעלת.",
"encrypt_use_expl": "{type} ישמש לאמת את זהותך לפני ביצוע פעולה, פתיחה, יצוא או מחיקה של ארנק. {type} אינו ישמש לפתיחת אחסון מוצפן.",
"biometrics_fail": "אם {type} לא מאופשר, או נכשל בפתיחה, תוכלו להשתמש בסיסמת המכשיר שלכם בתור חלופה.",
"general": "כללי",
"general_adv_mode": "מצב מתקדם",
"general_adv_mode_e": "כאשר מופעל, אפשרויות מתקדמות יוצגו כגון סוגי ארנק שונים, אפשרות להתחבר לצומת LNDHub לפי רצונך ואנטרופיה מותאמת בתהליך יצירת ארנק.",
@ -366,12 +377,18 @@
"status_cancel": "ביטול פעולה",
"transactions_count": "מספר תנועות",
"txid": "מזהה פעולה",
"updating": "מעדכן..."
"from": "מאת: {counterparty}",
"to": "עבור: {counterparty}",
"updating": "מעדכן...",
"watchOnlyWarningTitle": "אזהרת הונאה",
"watchOnlyWarningDescription": "שימו לב שנוכלים לרוב משתמשים בסוג ארנק 'צפייה בלבד' כדי לנסות לגנוב ממשתמשים. אינכם זה שאינכם יכולים לשלוט בו או לשלוח ממנו, מאפשר צפייה במאזן בלבד."
},
"wallets": {
"add_bitcoin": "ביטקוין",
"add_bitcoin_explain": "ארנק ביטקוין פשוט וחזק",
"add_create": "יצירה",
"add_entropy": "אנטרופיה",
"add_entropy_bytes": "{bytes} בייטים של אנטרופיה",
"add_entropy_generated": "{gen} ביתים של אנתרופיה",
"add_entropy_provide": "אספקת אנטרופיה על ידי הטלת קוביות ",
"add_entropy_remain": "{gen} ביתים של אנטרופיה. שאר {rem} ביתים יתקבלו ממחולל המספרים הרנדומליים של המערכת.",
@ -385,6 +402,10 @@
"add_title": "הוספת ארנק",
"add_wallet_name": "שם",
"add_wallet_type": "סוג",
"add_wallet_seed_length": "אורך גרעין",
"add_wallet_seed_length_message": "בחרו את אורך צירוף הגרעין שברצונכם להשתמש בשביל ארנק זה.",
"add_wallet_seed_length_12": "12 מילים",
"add_wallet_seed_length_24": "24 מילים",
"clipboard_bitcoin": "ישנה כתובת ביטקוין בלוח. האם תרצו להשתמש בה בשביל העברה?",
"clipboard_lightning": "ישנה חשבונית ברק בלוח שלך. האם להשתמש בה להעברה?",
"details_address": "כתובת",
@ -406,6 +427,7 @@
"details_show_xpub": "הצגת מפתח צפייה של הארנק",
"details_show_addresses": "הצגת כתובות",
"details_title": "ארנק",
"wallets": "ארנקים",
"details_type": "סוג",
"details_use_with_hardware_wallet": "שימוש עם ארנק חומרה",
"details_wallet_updated": "הארנק עודכן",
@ -476,6 +498,8 @@
"header": "שליחה",
"share": "שיתוף...",
"view": "הצגה",
"shared_key_detected": "חותם-שותף משותף",
"shared_key_detected_question": "חותם-שותף שותף איתך, אם ברצונך לייבא אותו?",
"manage_keys": "ניהול מפתחות",
"how_many_signatures_can_bluewallet_make": "כמה חתימות ארנק BlueWallet יכול ליצור",
"signatures_required_to_spend": "חתימות דרושות {number} ",
@ -509,6 +533,7 @@
"i_have_mnemonics": "יש לי גרעין למפתח זה.",
"type_your_mnemonics": "הכניסו גרעין כדי לייבא את מפתח הכספת הקיים שלכם.",
"this_is_cosigners_xpub": "זה מפתח הצפייה של החותם השותף, מוכן ליבוא בארנק אחר. ניתן לשתף אותו בבטחה.",
"this_is_cosigners_xpub_airdrop": "אם הנכם משתפים דרך AirDrop המקבלים חייבים להיות במסך התיאום.",
"wallet_key_created": "מפתח הכספת שלכם נוצר. קחו רגע לגבות את הגרעין המנמוני שלכם בבטחה. ",
"are_you_sure_seed_will_be_lost": "האם אתם בטוחים? הגרעין המנמוני שלכם יאבד אם אין ברשותכם גיבוי",
"forget_this_seed": "שכח את גרעין זה והשתמש במפתח צפייה במקום.",
@ -599,7 +624,22 @@
},
"bip47": {
"payment_code": "קוד תשלום",
"contacts": "אנשי קשר",
"purpose": "קוד רב-פעמי ובר-שיתוף (BIP47)",
"pay_this_contact": "תשלום לאיש קשר זה",
"rename_contact": "שינוי שם איש קשר",
"copy_payment_code": "העתקת קוד תשלום",
"hide_contact": "הסתרת איש קשר",
"rename": "שינוי שם",
"provide_name": "קבעו שם חדש לאיש קשר זה",
"add_contact": "הוספת איש קשר",
"provide_payment_code": "ספקו קוד תשלום",
"invalid_pc": "קוד תשלום לא תקין",
"notification_tx_unconfirmed": "פעולת התראה עדיין לא אושרה, אנא המתינו",
"failed_create_notif_tx": "נכשל ביצירת פעולת שרשרת",
"onchain_tx_needed": "נדרשת פעולת שרשרת",
"notif_tx_sent": "פעולת התראה נשלחה. אנא המתינו לאישורה",
"notif_tx": "פעולה התראה",
"not_found": "קוד תשלום לא נמצא"
}
}

View File

@ -107,6 +107,7 @@
"details_save": "Spremi",
"details_show_xpub": "Prikaži voletov XPUB",
"details_title": "Volet",
"wallets": "Voleti",
"details_type": "Tip",
"details_yes_delete": "Da, briši",
"export_title": "izvoz voleta",

View File

@ -215,7 +215,6 @@
"biometrics": "Biometrikus azonosító",
"biom_10times": "10-szer próbálta meg megadni a jelszavát. Vissza szeretné állítani a tárhelyet? Ezzel eltávolítja az összes pénztárcát és visszafejti a titkosítást a tárhelyről.",
"biom_conf_identity": "Kérem azonosítsa magát.",
"biom_no_passcode": "A készülék nem rendelkezik jelszóval. A folytatáshoz kérjük, konfigurálja a jelszót a Beállítások menüpontban.",
"biom_remove_decrypt": "Minden pénztárcáját eltávolítjuk, és a tárolójáról visszafejtjük a titkosítást. Biztosan folytatja?",
"currency": "Valuta",
"currency_source": "Árak forrása",
@ -352,6 +351,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Egyszerű és masszív Bitcoin tárca",
"add_create": "Létrehoz",
"add_entropy": "Entrópia",
"add_entropy_generated": "{gen} generált entrópia byte",
"add_entropy_provide": "Entrópia megadása véletlenszerűen ",
"add_entropy_remain": "{gen} byte generálva entrópiával. A megmaradt {rem} byte a rendszer véletlenszám generátorával készül.",
@ -384,6 +384,7 @@
"details_show_xpub": "Mutasd a tárca XPUB kulcsát",
"details_show_addresses": "Cím mutatása",
"details_title": "Tárca",
"wallets": "tárcák",
"details_type": "Típus",
"details_use_with_hardware_wallet": "Használat hardver tárcával",
"details_wallet_updated": "Tárca frissítve",

View File

@ -215,7 +215,6 @@
"biometrics": "Biometrik",
"biom_10times": "Anda telah mencoba memasukkan kata sandi Anda 10 kali. Apakah Anda ingin mengatur ulang penyimpanan Anda? Semua dompet anda akan dihapus dan penyimpanan anda akan didekripsi. ",
"biom_conf_identity": "Mohon konfirmasi identitas Anda.",
"biom_no_passcode": "Perangkat Anda tidak memiliki kode sandi. Untuk melanjutkan, harap konfigurasikan kode sandi di aplikasi Pengaturan.",
"biom_remove_decrypt": "Semua dompet Anda akan dihapus dan penyimpanan Anda akan didekripsi. Anda yakin ingin melanjutkan?",
"currency": "Mata Uang",
"currency_source": "Harga diperoleh dari",
@ -309,6 +308,7 @@
"wallets": {
"add_bitcoin": "Bitcoin",
"add_create": "Buat",
"add_entropy": "Entropi",
"add_import_wallet": "Impor dompet",
"add_lndhub": "Hubungan ke LNDHub Anda",
"add_placeholder": "dompet pertama saya",
@ -329,6 +329,7 @@
"details_show_xpub": "Tampilkan XPUB dompet",
"details_show_addresses": "Tunjukkan alamat",
"details_title": "Dompet",
"wallets": "Dompet",
"details_type": "Tipe",
"details_yes_delete": "Ya, hapus",
"export_title": "ekspor dompet",

View File

@ -218,7 +218,6 @@
"biometrics": "Dati biometrici",
"biom_10times": "Hai cercato di inserire la tua password 10 volte. Vuoi resettare il tuo archivio? Questo rimuoverà tutti i portafogli e decripterà lo spazio di archiviazione.",
"biom_conf_identity": "Per favore conferma la tua identità.",
"biom_no_passcode": "Il tuo dispositivo non ha un codice di accesso. Per procedere, si prega di configurare un codice di accesso nell'app Impostazioni.",
"biom_remove_decrypt": "Tutti i tuoi portafogli saranno rimossi e lo spazio di archiviazione sarà decriptato. Sei sicuro di voler procedere?",
"currency": "Valuta",
"currency_source": "Il prezzo è ottenuto da",
@ -353,6 +352,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Portafoglio Bitcoin semplice e potente",
"add_create": "Crea",
"add_entropy": "Entropia",
"add_entropy_generated": "{gen} byte di entropia generata",
"add_entropy_provide": "Fornisci entropia con dei lanci di dadi",
"add_entropy_remain": "{gen} byte di entropia generata. I restanti {rem} byte saranno ottenuti da generatore di numeri casuali del sistema operativo.",
@ -385,6 +385,7 @@
"details_show_xpub": "Mostra XPUB del portafoglio",
"details_show_addresses": "Mostra indirizzi",
"details_title": "Portafoglio",
"wallets": "Portafogli",
"details_type": "Tipo",
"details_use_with_hardware_wallet": "Usa con portafoglio hardware",
"details_wallet_updated": "Portafoglio aggiornato",

View File

@ -43,7 +43,8 @@
"entropy": {
"save": "保存",
"title": "エントロピー",
"undo": "元に戻す"
"undo": "元に戻す",
"amountOfEntropy": "{limit}ビット中{bits}ビット"
},
"errors": {
"broadcast": "ブロードキャスト失敗",
@ -126,7 +127,8 @@
"maxSatsFull": "最大額は{max}sats{currency})です",
"minSats": "最小額は{min}satsです",
"minSatsFull": "最小額は{min}sats{currency})です",
"qrcode_for_the_address": "アドレスのQRコード"
"qrcode_for_the_address": "アドレスのQRコード",
"bip47_explanation": "支払いコードは、ウォレットアドレスを開示せずに済む汎用のアドレスです。すべてのサービスがサポートしているわけではありません。"
},
"send": {
"provided_address_is_invoice": "これはライトニングインボイスのようです。ライトニングウォレットを使って請求書に対する支払いを行ってください。",
@ -148,6 +150,7 @@
"create_to": "送金先",
"create_tx_size": "TX サイズ",
"create_verify": "coinb.inで検証する",
"details_insert_contact": "連絡先を追加",
"details_add_rec_add": "宛先を追加",
"details_add_rec_rem": "宛先を削除",
"details_address": "アドレス",
@ -213,6 +216,9 @@
"success_done": "完了",
"txSaved": "トランザクションファイル ({filePath}) はダウンロードフォルダに保存されました。",
"file_saved_at_path": "ファイル({fileName})がダウンロードフォルダに保存されました。",
"cant_send_to_silentpayment_adress": "このウォレットからはSilentPaymentアドレスに送金できません",
"cant_send_to_bip47": "このウォレットからはBIP47支払いコードに送金できません",
"cant_find_bip47_notification": "先にこの支払いコードを連絡先に追加してください",
"problem_with_psbt": "PSBTに問題"
},
"settings": {
@ -237,7 +243,7 @@
"biometrics_no_longer_available": "デバイスの設定が変更され、アプリ内で選択したセキュリティ設定に適合しなくなりました。生体認証かパスコードを再度有効にしてから、アプリを再起動して変更を適用してください。",
"biom_10times": "パスワードを10回入力しようとしました。ストレージをリセットしますかこれにより全てのウォレットが削除され、ストレージが復号化されます。",
"biom_conf_identity": "個人情報を確認して下さい。",
"biom_no_passcode": "お使いの端末にはパスコードが設定されていません。続行するには、「設定」アプリでパスコードを設定してください。",
"biom_no_passcode": "お使いの端末でパスコードまたは生体認証が有効になっていません。続行するには、「設定」アプリでパスコードまたは生体認証を設定してください。",
"biom_remove_decrypt": "全てのウォレットは削除され、ストレージは暗号化が解除されます。本当に続行してもいいですか?",
"currency": "通貨",
"currency_source": "価格参照元:",
@ -376,12 +382,16 @@
"txid": "トランザクションID",
"from": "From: {counterparty}",
"to": "To: {counterparty}",
"updating": "更新中…"
"updating": "更新中…",
"watchOnlyWarningTitle": "詐欺の警告",
"watchOnlyWarningDescription": "詐欺師がよくこのタイプ「閲覧専用」のウォレットを使ってユーザーから盗みを働こうとすることに注意してください。コントロールや送金ができず、残高を見ることだけができるウォレットです。"
},
"wallets": {
"add_bitcoin": "ビットコイン",
"add_bitcoin_explain": "シンプルかつパワフルなBitcoinウォレット",
"add_create": "作成",
"add_entropy": "エントロピー",
"add_entropy_bytes": "{bytes}バイトのエントロピー",
"add_entropy_generated": "生成されたエントロピーの {gen} バイト",
"add_entropy_provide": "サイコロを振ってエントロピーを提供",
"add_entropy_remain": "生成されたエントロピーの{gen}バイト。残りの{rem}バイトはシステム乱数発生器から取得されます。",
@ -395,6 +405,10 @@
"add_title": "ウォレットの追加",
"add_wallet_name": "ウォレット名",
"add_wallet_type": "タイプ",
"add_wallet_seed_length": "シード長",
"add_wallet_seed_length_message": "このウォレットで使いたいシードフレーズの長さを選択してください。",
"add_wallet_seed_length_12": "12語",
"add_wallet_seed_length_24": "24語",
"clipboard_bitcoin": "クリップボードにビットコインのアドレスがあります。このアドレスを使って取引をしますか?",
"clipboard_lightning": "クリップボードにライトニングのインボイスがあります。このインボイスを使って取引をしますか?",
"details_address": "アドレス",
@ -416,6 +430,7 @@
"details_show_xpub": "ウォレット XPUB の表示",
"details_show_addresses": "アドレスを表示",
"details_title": "ウォレット",
"wallets": "ウォレット",
"details_type": "タイプ",
"details_use_with_hardware_wallet": "ハードウェアウォレットで使用",
"details_wallet_updated": "ウォレットアップデート済",
@ -617,13 +632,12 @@
},
"bip47": {
"payment_code": "支払コード",
"my_payment_code": "自分の支払いコード",
"contacts": "連絡先",
"purpose": "再利用・共有可能なコード (BIP47)",
"pay_this_contact": "この連絡先に支払う",
"rename_contact": "連絡先をリネーム",
"copy_payment_code": "支払いコードをコピー",
"copied": "コピー済み",
"hide_contact": "連絡先を隠す",
"rename": "リネーム",
"provide_name": "連絡先に新しい名前を付ける",
"add_contact": "連絡先を追加",

View File

@ -204,7 +204,6 @@
"biometrics": "바이오메트릭",
"biom_10times": "비밀번호를 10번 실패했습니다. 스토리지를 초기화시키겠습니까? 이는 모든 월렛을 지우고 스토리지를 암호화합니다. ",
"biom_conf_identity": "개인정보를 확인하세요",
"biom_no_passcode": "디바이스에 패스코드가 없습니다. 진행을 위해 환경 설정 어플에서 패스코드를 설정해주세요.",
"biom_remove_decrypt": "모든 월렛이 지워지고 스토리지는 암호화됩니다. 진행하시겠습니까?",
"currency": "통화",
"currency_fetch_error": "선택된 통화로 된 환율을 가져오는 중 에러발생",
@ -335,6 +334,7 @@
"add_bitcoin": "비트코인",
"add_bitcoin_explain": "단순하고 강력한 비트코인 지갑",
"add_create": "생성하기",
"add_entropy": "제목",
"add_entropy_generated": "{gen} 바이트 엔트로피",
"add_entropy_provide": "주사위 굴림식 엔트로피 부여",
"add_entropy_remain": "{gen} 바이트 엔트로피. 남은 {rem} 바이트는 시스템 난수발생기를 통해 얻어질 것 입니다.",
@ -366,6 +366,7 @@
"details_show_xpub": "지갑의 XPUB 보이기",
"details_show_addresses": "주소 보이기",
"details_title": "지갑",
"wallets": "지갑",
"details_type": "형태",
"details_use_with_hardware_wallet": "하드웨어 지갑 사용하기",
"details_wallet_updated": "지갑 갱신완료",

View File

@ -148,6 +148,7 @@
},
"wallets": {
"add_bitcoin": "بیت کوین",
"add_entropy": "آنتروپی",
"details_address": "آدرس",
"details_advanced": "پؽش رته"
},

View File

@ -191,7 +191,6 @@
"biometrics": "Biometrik",
"biom_10times": "Anda telah cuba memasukkan kata laluan sebanyak 10 kali. Adakah anda mahu menetapkan semula simpanan anda? Ini akan membuang semua dompet dan menyahsulit simpanan anda.",
"biom_conf_identity": "Sila pastikan keperibadian anda",
"biom_no_passcode": "Peranti anda tidak mempunyai kod laluan. Untuk meneruskan, sila susun kata laluan di Persediaan aplikasi.",
"biom_remove_decrypt": "Semua dompet anda akan dibuang dan simpanan anda akan dinyahsulitkan. Adakah anda pasti untuk meneruskannya?",
"currency": "Mata Wang",
"default_desc": "Apabila dilumpuhkan, BlueWallet akan membuka dompet terpilih dengan serta-merta ketika pelancaran.",
@ -312,6 +311,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Dompet Bitcoin yang mudah dan berkuasa",
"add_create": "Cipta",
"add_entropy": "Entropi",
"add_entropy_generated": "{gen} bait entropi telah terjana",
"add_entropy_provide": "Berikan entropi melalui lemparan dadu",
"add_entropy_remain": "{gen} bait entropi telah terjana. Lebihan {rem} bait akan diperoleh dari penjana nombor rawak milik Sistem.",
@ -341,6 +341,7 @@
"details_show_xpub": "Paparkan Dompet XPUB",
"details_show_addresses": "Paparkan alamat",
"details_title": "Dompet",
"wallets": "Dompet",
"details_type": "Jenis",
"details_use_with_hardware_wallet": "Guna dengan Dompet Perkakas",
"details_wallet_updated": "Dompet sudah dikemas kini",

View File

@ -205,7 +205,6 @@
"biometrics": "Biometrics",
"biom_10times": "Du har forsøkt å skrive inn passordet ditt 10 ganger. Vil du tilbakestille lagringen din? Dette vil fjerne alle lommebøker og dekryptere lagringen din.",
"biom_conf_identity": "Vennligst bekreft din identitet.",
"biom_no_passcode": "Enheten din har ikke et passord. For å fortsette, vennligst konfigurer et passord i Innstillinger-appen.",
"biom_remove_decrypt": "Alle lommebøker vil bli fjernet og lagringen din vil bli dekryptert. Er du sikker på at du vil fortsette?",
"currency": "Valuta",
"currency_source": "Pris er hentet fra",
@ -338,6 +337,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Enkel og kraftig Bitcoin-lommebok",
"add_create": "Opprett",
"add_entropy": "Entropi",
"add_entropy_generated": "{gen} bytes med generert entropi",
"add_entropy_provide": "Gi entropi via terningkast",
"add_entropy_remain": "{gen} bytes med generert entropi. Gjenværende {rem} bytes vil bli hentet fra systemet sin tilfeldige tallgenerator.",
@ -369,6 +369,7 @@
"details_show_xpub": "Vis lommebok XPUB",
"details_show_addresses": "Vis adresser",
"details_title": "Lommebok",
"wallets": "Lommebøker",
"details_type": "Type",
"details_use_with_hardware_wallet": "Bruk med maskinvarelommebok",
"details_wallet_updated": "Lommebok oppdatert",

View File

@ -208,7 +208,6 @@
"biometrics": "बायोमेट्रिक्स",
"biom_10times": "तपाईंले आफ्नो पासवर्ड १० पटक प्रविष्ट गर्ने प्रयास गर्नुभएको छ। तपाईं आफ्नो भण्डारण रिसेट गर्न चाहनुहुन्छ? यसले सबै वालेटहरू हटाउनेछ र तपाईंको भण्डारण डिक्रिप्ट गर्नेछ।",
"biom_conf_identity": "आफ्नो पहिचान पुष्टि गर्नुहोस्।",
"biom_no_passcode": "तपाईंको यन्त्रमा पासकोड छैन। अगाडि बढ्नको लागि, कृपया सेटिङ एपमा पासकोड कन्फिगर गर्नुहोस्।",
"biom_remove_decrypt": "तपाईंको सबै वालेटहरू हटाइनेछ र तपाईंको भण्डारण डिक्रिप्ट गरिनेछ। के तपाई निश्चित रूपमा अगाडि बढ्न चाहनुहुन्छ?",
"currency": "मुद्रा",
"currency_source": "मूल्य प्राप्त हुने ठाउँ",
@ -283,6 +282,7 @@
"add_bitcoin": "बिटकोइन",
"add_bitcoin_explain": "सजिलो र शक्तिशाली बिटकोइन वालेट",
"add_create": "सिर्जना गर्नुहोस्",
"add_entropy": "एन्ट्रोपी",
"add_import_wallet": "वालेट आयात गर्नुहोस्",
"add_lightning": "लाइटनिङ",
"add_placeholder": "मेरो पहिलो वालेट",
@ -302,6 +302,7 @@
"details_show_xpub": "वालेटको XPUB देखाउनुहोस्",
"details_show_addresses": "ठेगानाहरू देखाउनुहोस्",
"details_title": "वालेट",
"wallets": "वालेटहरू",
"details_type": "टाइप गर्नुहोस्",
"details_use_with_hardware_wallet": "हार्डवेयर वालेटको साथ प्रयोग गर्नुहोस्",
"details_wallet_updated": "वालेट अपडेट ",

View File

@ -35,11 +35,11 @@
"redeem": "Inwisselen naar wallet.",
"redeemButton": "Inwisselen",
"success": "Succes",
"title": "Los uw Atze.co voucher in"
"title": "Verzilver uw Atze.co voucher"
},
"entropy": {
"save": "Opslaan",
"title": "Entropy",
"title": "Entropie",
"undo": "Ongedaan maken"
},
"errors": {
@ -61,7 +61,10 @@
"node_alias": "Node alias",
"expiresIn": "Verloopt in {time} minuten",
"payButton": "Betalen",
"payment": "Betaling",
"placeholder": "Factuur of adres",
"open_channel": "Open kanaal",
"funding_amount_placeholder": "Stortingsbedrag, bijvoorbeeld 0.001",
"opening_channnel_for_from": "Open kanaal voor wallet {forWalletLabel}, door financiering vanuit {fromWalletLabel}",
"are_you_sure_open_channel": "Weet je het zeker dat je dit kanaal wilt openen?",
"potentialFee": "Mogelijke fee: {fee}",
@ -211,7 +214,6 @@
"biometrics": "Biometrische beveiliging",
"biom_10times": "Je hebt 10 wachtwoordpogingen gedaan. Wil je je opslagruimte resetten? Al je wallets worden verwijderd en je opslag wordt ontsleuteld.",
"biom_conf_identity": "Bevestig je identiteit.",
"biom_no_passcode": "Er is geen wachtwoord ingesteld op je apparaat. Ga naar het instellingenmenu om een wachtwoord in te stellen, om door te gaan.",
"biom_remove_decrypt": "Al je wallets worden verwijderd en je opslag zal worden ontsleuteld. Weet je zeker dat je door wil gaan?",
"currency": "Valuta",
"currency_fetch_error": "Er is een fout opgetreden bij het ophalen van de Rate voor de geselecteerde muntsoort",
@ -339,6 +341,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Eenvoudige en krachtige Bitcoin-wallet",
"add_create": "Aanmaken",
"add_entropy": "Entropy",
"add_entropy_generated": "{gen} bytes gegenereerde entropie",
"add_entropy_provide": "Zorg voor entropie via dobbelstenen",
"add_entropy_remain": "{gen} bytes gegenereerde entropie. Resterende {rem} bytes zullen worden verkregen uit het systeem voor willekeurige getallen.",
@ -370,6 +373,7 @@
"details_show_xpub": "Toon wallet XPUB",
"details_show_addresses": "Toon adressen",
"details_title": "Wallet",
"wallets": "Wallets",
"details_type": "Type",
"details_use_with_hardware_wallet": "Gebruik met hardware-wallet",
"details_wallet_updated": "Wallet bijgewerkt",

View File

@ -51,7 +51,6 @@
"about_sm_twitter": "Follow us for Twitter na",
"biom_10times": "Na like 10 times you don enter password, You go like reset your storage? This one go comot all your wallets and e go decrypt your storage.",
"biom_conf_identity": "Abeg confirm who you be.",
"biom_no_passcode": "Your device no get passcode. Like this so, abeg put passcode for the app settings.",
"currency_fetch_error": "Error dey as we dey find rate for the currency you select. ",
"default_info": "Normal info",
"default_title": "As you launch",

View File

@ -14,7 +14,7 @@
"yes": "Tak",
"no": "Nie",
"save": "Zapisz",
"seed": "Ziarno",
"seed": "Seed",
"success": "Sukces",
"wallet_key": "Klucz Portfela",
"invalid_animated_qr_code_fragment": "Nieprawidłowy fragment animowanego kodu QR. Spróbuj ponownie.",
@ -32,7 +32,7 @@
"default": "Powiadomienie"
},
"azteco": {
"codeIs": "Twój kod vouchera to",
"codeIs": "Kod twojego vouchera to",
"errorBeforeRefeem": "Zanim wykorzystasz kod rabatowy, musisz dodać najpierw portfel Bitcoinowy",
"errorSomething": "Coś poszło nie tak. Czy kod vouchera jest ciągle ważny?",
"redeem": "Odbirze do portfela",
@ -43,7 +43,8 @@
"entropy": {
"save": "Zapisz",
"title": "Entropia",
"undo": "Cofnij"
"undo": "Cofnij",
"amountOfEntropy": "{bits} z {limit} bitów"
},
"errors": {
"broadcast": "Rozgłoszenie nie powiodło się",
@ -112,9 +113,9 @@
"ask_yes": "Tak, mam.",
"ok": "OK, zapisałem.",
"ok_lnd": "OK, zachowałem.",
"text": "Poświęć chwilę by zapisać tę frazę mnemoniczną na kartce papieru\nTo Twoja kopia zapasowa, której możesz użyć później by odtworzyć portfel.",
"text": "Poświęć chwilę by zapisać tę frazę mnemoniczną na kartce papieru\nTo twoja kopia zapasowa, której możesz użyć później by odtworzyć portfel.",
"text_lnd": "Zachowaj tę kopię zapasową portfela. Umożliwi Ci odtworzenie portfela w przypadku utraty.",
"title": "Twój portfel został utworzony ..."
"title": "Twój portfel został utworzony."
},
"receive": {
"details_create": "Stwórz",
@ -125,7 +126,9 @@
"maxSats": "Kwota maksymalna to {max} satoshi",
"maxSatsFull": "Maksymalna kwota to {max} satoshi lub {currency}",
"minSats": "Kwota minimalna to {min} satoshi",
"minSatsFull": "Kwota minimalna to {min} satoshi lub {currency}"
"minSatsFull": "Kwota minimalna to {min} satoshi lub {currency}",
"qrcode_for_the_address": "Kod QR dla adresu",
"bip47_explanation": "Kody płatności są uniwersalnym adresem, który unika ujawnienia adresów twojego portfela. Nie wszystkie usługi je obsługują."
},
"send": {
"provided_address_is_invoice": "Ten adres wygląda na fakturę Lightning. Przejdź do swojego portfela Lightning aby ją opłacić.",
@ -138,22 +141,23 @@
"confirm_sendNow": "Wyślij teraz",
"create_amount": "Kwota",
"create_broadcast": "Rozgłoś",
"create_copy": "Skopiuj i rozgłoś później",
"create_copy": "Kopiuj i rozgłoś później",
"create_details": "Szczegóły",
"create_fee": "Opłata",
"create_memo": "Notatka",
"create_satoshi_per_vbyte": "Satoshi za vBajt",
"create_this_is_hex": "To jest Twoja transakcja w postaci szestnastkowej, podpisana i gotowa żeby rozgłosić ją w sieci",
"create_this_is_hex": "To jest twoja transakcja w postaci szestnastkowej, podpisana i gotowa żeby rozgłosić ją w sieci",
"create_to": "Do",
"create_tx_size": "Rozmiar transakcji",
"create_verify": "Zweryfikuj na coinb.in",
"details_insert_contact": "Wstaw kontakt",
"details_add_rec_add": "Dodaj Adresata",
"details_add_rec_rem": "Usuń Adresata",
"details_address": "Adres",
"details_address_field_is_not_valid": "Adres niepoprawny",
"details_adv_fee_bump": "Pozwól na zwiększanie opłaty",
"details_adv_full": "Użyj wszystkich środków",
"details_adv_full_sure": "Czy jesteś pewien/-a, że chcesz użyć wszystkich środków z Twojego portfela w tej transakcji? ",
"details_adv_full_sure": "Czy jesteś pewien/-a, że chcesz użyć wszystkich środków z twojego portfela w tej transakcji? ",
"details_adv_full_sure_frozen": "Na pewno wydać całe saldo w tej transakcji? Pamiętaj, że zamrożone monety są wyłączone z użytku.",
"details_adv_import": "Importuj transakcję",
"details_adv_import_qr": "Importuj transakcję (QR)",
@ -166,6 +170,7 @@
"details_next": "Dalej",
"details_no_signed_tx": "Wskazany plik nie zawiera transakcji, która może zostać zaimportowana.",
"details_note_placeholder": "Własny opis transakcji",
"counterparty_label_placeholder": "Edytuj nazwę kontaktu",
"details_scan": "Skanuj",
"details_scan_hint": "Kliknij dwukrotnie, aby zeskanować lub zaimportować miejsce docelowe",
"details_total_exceeds_balance": "Wysłanie tej ilości przekracza dostępne saldo.",
@ -198,7 +203,7 @@
"permission_storage_message": "BlueWallet potrzebuje twojej zgody żeby zachować ten plik.",
"permission_storage_denied_message": "BlueWallet nie jest w stanie zapisać tego pliku. Otwórz proszę ustawienia swojego urządzenia i włącz uprawnienia do Pamięci Masowej.",
"permission_storage_title": "Dostęp do Pamięci Masowej",
"psbt_clipboard": "Skopiuj do schowka",
"psbt_clipboard": "Kopiuj 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.",
@ -211,6 +216,9 @@
"success_done": "Zrobione",
"txSaved": "Ścieżka pliku ({filePath}) została zapisana w twoim folderze Pobrane.",
"file_saved_at_path": "Plik ({fileName}) został zapisany w folderze Pobrane.",
"cant_send_to_silentpayment_adress": "Ten portfel nie może wysyłać na adresy SilentPayment",
"cant_send_to_bip47": "Ten portfel nie może wysyłać na kody płatności BIP47",
"cant_find_bip47_notification": "Najpierw dodaj ten kod płatności do kontaktów",
"problem_with_psbt": "Problem z PSBT"
},
"settings": {
@ -232,11 +240,11 @@
"about_sm_twitter": "Obserwuj nas na Twitterze",
"advanced_options": "Opcje Zaawansowane",
"biometrics": "Biometria",
"biometrics_no_longer_available": "Ustawienia Twojego urządzenia zostały zmienione i nie są już zgodne z wybranymi ustawieniami bezpieczeństwa w aplikacji. Proszę ponownie włączyć biometrię lub kod dostępu, a następnie uruchomić ponownie aplikację, aby zastosować te zmiany.",
"biometrics_no_longer_available": "Ustawienia twojego urządzenia zostały zmienione i nie są już zgodne z wybranymi ustawieniami bezpieczeństwa w aplikacji. Proszę ponownie włączyć biometrię lub kod dostępu, a następnie uruchomić ponownie aplikację, aby zastosować te zmiany.",
"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?",
"biom_no_passcode": "Twoje urządzenie nie ma włączonego kodu dostępu ani biometrii. Aby kontynuować, skonfiguruj kod dostępu lub biometrię w Ustawieniach aplikacji.",
"biom_remove_decrypt": "Wszystkie twoje portfele zostaną skasowane a magazyn danych odszyfrowany. Czy jesteś pewien?",
"currency": "Waluta",
"currency_source": "Cena jest pobierana z",
"currency_fetch_error": "Wystąpił błąd podczas pobierania kursu dla wybranej waluty.",
@ -250,7 +258,7 @@
"lndhub_uri": "np. {example}",
"electrum_host": "np. {example}",
"electrum_offline_mode": "Tryb Offline",
"electrum_offline_description": "W trybie offline, Twoje portfele Bitcoinowe nie będą usiłowały pobierać sald lub transakcji.",
"electrum_offline_description": "W trybie offline, twoje portfele bitcoinowe nie będą usiłowały pobierać sald lub transakcji.",
"electrum_port": "Port, zazwyczaj {example}",
"use_ssl": "Użyj SSL",
"electrum_saved": "Zmiany zostały zachowane pomyślnie. Żeby je zobaczyć zrestartuj aplikację.",
@ -275,7 +283,8 @@
"encrypt_title": "Zabezpieczenia",
"encrypt_tstorage": "Schowek",
"encrypt_use": "Użyj {type}",
"encrypt_use_expl": "{type} będzie użyty w celu potwierdzenia Twojej tożsamości przed wykonaniem transakcji, odblokowaniem, eksportem lub usunięciem portfela. {type} nie będzie użyty do odblokowanie danych zaszyfrowanych.",
"encrypted_feature_disabled": "Ta funkcja nie może być używana z włączonym szyfrowaniem pamięci.",
"encrypt_use_expl": "{type} będzie użyty w celu potwierdzenia twojej tożsamości przed wykonaniem transakcji, odblokowaniem, eksportem lub usunięciem portfela. {type} nie będzie użyty do odblokowanie danych zaszyfrowanych.",
"biometrics_fail": "Jeśli {type} nie jest włączony lub nie udaje się odblokować, możesz alternatywnie użyć kodu dostępu swojego urządzenia.",
"general": "Ogólne",
"general_adv_mode": "Tryb zaawansowany",
@ -371,12 +380,18 @@
"status_cancel": "Anuluj transakcję",
"transactions_count": "Ilość transakcji",
"txid": "ID Transakcji",
"updating": "Aktualizuję..."
"from": "Od: {counterparty}",
"to": "Do: {counterparty}",
"updating": "Aktualizuję...",
"watchOnlyWarningTitle": "Ostrzeżenie o oszustwie",
"watchOnlyWarningDescription": "Pamiętaj, że oszuści często używają portfeli \"tylko do odczytu\" do okradania użytkowników. Takiego portfela nie możesz kontrolować ani z niego wysyłać, umożliwia on jedynie podgląd salda."
},
"wallets": {
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Prosty i potężny portfel Bitcoin",
"add_create": "Utwórz",
"add_entropy": "Entropia",
"add_entropy_bytes": "{bytes} bajtów entropii",
"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.",
@ -385,11 +400,15 @@
"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_lndhub_placeholder": "Adres twojego węzła",
"add_placeholder": "mój pierwszy portfel",
"add_title": "Dodaj portfel",
"add_wallet_name": "Nazwa",
"add_wallet_type": "Typ",
"add_wallet_seed_length": "Długość frazy seed",
"add_wallet_seed_length_message": "Wybierz długość frazy seed, której chcesz użyć dla tego portfela.",
"add_wallet_seed_length_12": "12 słów",
"add_wallet_seed_length_24": "24 słowa",
"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",
@ -397,7 +416,7 @@
"details_are_you_sure": "Na pewno?",
"details_connected_to": "Podłączono do",
"details_del_wb_err": "Podana kwota nie zgadza się z saldem tego portfela. Spróbuj ponownie.",
"details_del_wb_q": "Ten portfel ma dodatnie saldo. Zanim przejdziesz dalej, miej na uwadze, że nie będzie można odzyskać tych środków bez ziarna tego portfela. Aby uniknąć przypadkowego usunięcia, podaj saldo tego portfela w wysokości {balance} satoshi.",
"details_del_wb_q": "Ten portfel ma dodatnie saldo. Zanim przejdziesz dalej, miej na uwadze, że nie będzie można odzyskać tych środków bez frazy seed tego portfela. Aby uniknąć przypadkowego usunięcia, podaj saldo tego portfela w wysokości {balance} satoshi.",
"details_delete": "Skasuj",
"details_delete_wallet": "Skasuj portfel",
"details_derivation_path": "ścieżka derywacji",
@ -411,6 +430,7 @@
"details_show_xpub": "Pokaż XPUB portfela",
"details_show_addresses": "Pokaż adresy",
"details_title": "Portfel",
"wallets": "Portfele",
"details_type": "Typ",
"details_use_with_hardware_wallet": "Użyj z portfelem sprzętowym",
"details_wallet_updated": "Portfel zaktualizowany",
@ -420,9 +440,9 @@
"import_do_import": "Importuj",
"import_passphrase": "Hasło",
"import_passphrase_title": "Hasło",
"import_passphrase_message": "Podaj hasło jeśli jakieś użyto",
"import_passphrase_message": "Wprowadź hasło, jeśli użyłeś jakiegokolwiek",
"import_error": "Import nieudany. Upewnij się proszę, że dane są prawidłowe.",
"import_explanation": "Podaj poniżej twoje ziarno, publiczny 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_explanation": "Proszę wprowadź swoją frazę seed, klucz publiczny, WIF lub cokolwiek innego, co posiadasz. BlueWallet zrobi wszystko, co w jej mocy, aby odgadnąć poprawny format i zaimportować twój portfel.",
"import_imported": "Zaimportowano",
"import_scan_qr": "Skanuj lub importuj plik",
"import_success": "Twój portfel został pomyślnie zaimportowany.",
@ -436,7 +456,7 @@
"import_derivation_found": "Znaleziono",
"import_derivation_found_not": "Nie znaleziono",
"import_derivation_loading": "Ładowanie...",
"import_derivation_subtitle": "Wprowadź niestandardową ścieżkę pochodną, a spróbujemy odnaleźć Twój portfel.",
"import_derivation_subtitle": "Wprowadź niestandardową ścieżkę pochodną, a spróbujemy odnaleźć twój portfel.",
"import_derivation_title": "Ścieżka derywacji",
"import_derivation_unknown": "Nieznane",
"import_wrong_path": "Niewłaściwa ścieżka derywacji",
@ -515,8 +535,8 @@
"invalid_cosigner_format": "Nieprawidłowy współsygnatariusz: Jest niezgodny z formatem {format}.",
"create_new_key": "Otwórz nowy",
"scan_or_open_file": "Skanuj lub otwórz plik",
"i_have_mnemonics": "Mam ziarno dla tego klucza",
"type_your_mnemonics": "Wprowadź ziarno by zaimportować Twój istniejący klucz Skarbca.",
"i_have_mnemonics": "Mam seed dla tego klucza.",
"type_your_mnemonics": "Wprowadź seed, aby zaimportować istniejący klucz do Twojego Skarbca.",
"this_is_cosigners_xpub": "To jest XPUB współsygnatariusza — gotowy do zaimportowania do innego portfela. Udostępniaine go jest bezpieczne.",
"this_is_cosigners_xpub_airdrop": "Jeśli udostępniasz za pomocą AirDrop, odbiorcy muszą znajdować się na ekranie koordynacji.",
"wallet_key_created": "Twój klucz Skarbca został utworzony. Poświęć chwilę by zrobić kopię bezpieczeństwa Twojego wyrażenia mnemonicznego.",
@ -577,7 +597,7 @@
"sats": "satoshi"
},
"addresses": {
"copy_private_key": "Skopiuj klucz prywatny",
"copy_private_key": "Kopiuj klucz prywatny",
"sensitive_private_key": "Uwaga: klucz prywatne są skrajnie poufne. Kontynuować?",
"sign_title": "Podpisz/Weryfikuj wiadomość",
"sign_help": "Tutaj możesz stworzyć lub zweryfikować podpis kryptograficzny oparty o adres Bitcoin.",
@ -612,7 +632,22 @@
},
"bip47": {
"payment_code": "Kod płatności",
"contacts": "Kontakty",
"purpose": "Kod wielokrotnego użytku możliwy do udostępnienia (BIP47)",
"pay_this_contact": "Zapłać temu kontaktowi",
"rename_contact": "Zmień nazwę kontaktu",
"copy_payment_code": "Kopiuj kod płatności",
"hide_contact": "Ukryj kontakt",
"rename": "Zmień nazwę",
"provide_name": "Podaj nową nazwę dla tego kontaktu",
"add_contact": "Dodaj kontakt",
"provide_payment_code": "Podaj kod płatności",
"invalid_pc": "Nieprawidłowy kod płatności",
"notification_tx_unconfirmed": "Transakcja powiadomienia nie została jeszcze potwierdzona, proszę czekać",
"failed_create_notif_tx": "Nie udało się utworzyć transakcji on-chain",
"onchain_tx_needed": "Wymagana transakcja on-chain",
"notif_tx_sent": "Transakcja powiadomienia wysłana. Proszę czekać na jej potwierdzenie",
"notif_tx": "Transakcja powiadomienia",
"not_found": "Kod płatności nie znaleziony"
}
}

View File

@ -43,7 +43,8 @@
"entropy": {
"save": "Salvar",
"title": "Entropia",
"undo": "Desfazer"
"undo": "Desfazer",
"amountOfEntropy": "{bits} de {limit} bits"
},
"errors": {
"broadcast": "Falha na transmissão.",
@ -126,7 +127,8 @@
"maxSatsFull": "O valor máximo é de {max} sats ou {currency}",
"minSats": "O valor mínimo é de {min} sats",
"minSatsFull": "O valor mínimo é de {min} sats ou {currency}",
"qrcode_for_the_address": "QR Code para o Endereço"
"qrcode_for_the_address": "QR Code para o Endereço",
"bip47_explanation": "Os Payment Codes são um tipo de endereço universal que evita a divulgação dos endereços da sua carteira. Nem todos os serviços irão suportar envio."
},
"send": {
"provided_address_is_invoice": "Esse tipo de endereço se parece com uma fatura da Lightning. Por favor, acesse a sua carteira Lightning para realizar o pagamento dessa fatura.",
@ -148,6 +150,7 @@
"create_to": "Para",
"create_tx_size": "Tamanho da Transação",
"create_verify": "Verificar no coinb.in",
"details_insert_contact": "Inserir Contato",
"details_add_rec_add": "Adicionar Destinatário",
"details_add_rec_rem": "Remover Destinatário",
"details_address": "Endereço",
@ -167,6 +170,7 @@
"details_next": "Próximo",
"details_no_signed_tx": "O arquivo selecionado não contém uma transação que possa ser importada.",
"details_note_placeholder": "Nota pessoal",
"counterparty_label_placeholder": "Editar o nome de contato",
"details_scan": "Ler",
"details_scan_hint": "Toque duas vezes para escanear ou importar um destino",
"details_total_exceeds_balance": "A quantia enviada excede o saldo disponível.",
@ -212,6 +216,9 @@
"success_done": "Enviado",
"txSaved": "O arquivo de transação ({filePath}) foi salvo na pasta Downloads.",
"file_saved_at_path": "O arquivo ({fileName}) foi salvo na sua pasta Downloads.",
"cant_send_to_silentpayment_adress": "Esta carteira não pode enviar para endereços SilentPayment",
"cant_send_to_bip47": "Esta carteira não pode enviar para Payment Codes BIP47",
"cant_find_bip47_notification": "Adicione este Payment Code aos contatos primeiro",
"problem_with_psbt": "Problema com a PSBT"
},
"settings": {
@ -236,7 +243,7 @@
"biometrics_no_longer_available": "As configurações do seu dispositivo foram alteradas e não correspondem mais às configurações de segurança selecionadas no aplicativo. Reative a biometria ou a senha e reinicie o aplicativo para aplicar essas alterações.",
"biom_10times": "Você tentou digitar sua senha 10 vezes. Você gostaria de resetar seu armazenamento? Isso irá remover todas suas carteiras e descriptografar seu armazenamento.",
"biom_conf_identity": "Por favor, confirme sua identidade.",
"biom_no_passcode": "Seu dispositivo não possui uma senha. Para proceder, por favor configure uma senha no app de Configurações.",
"biom_no_passcode": "Seu dispositivo não possui senha ou biometria ativada. Para prosseguir, configure uma senha ou biometria nas configurações do aplicativo.",
"biom_remove_decrypt": "Todas suas carteiras serão removidas e seu armazenamento será descritptografado. Você tem certeza que deseja proceder?",
"currency": "Moeda",
"currency_source": "Os preços são obtidos a partir da",
@ -276,6 +283,7 @@
"encrypt_title": "Segurança",
"encrypt_tstorage": "Armazenamento",
"encrypt_use": "Usar {type}",
"encrypted_feature_disabled": "Este recurso não pode ser usado com o armazenamento criptografado ativado.",
"encrypt_use_expl": "{type} será usado para confirmar sua identidade antes de fazer uma transação, desbloquear, exportar ou deletar uma carteira. {type} não será usado para desbloquear armazenamento encriptado.",
"biometrics_fail": "Se {type} não estiver habilitado ou falhar ao desbloquear, você pode usar o código de acesso do seu dispositivo como alternativa.",
"general": "Geral",
@ -372,12 +380,16 @@
"status_cancel": "Cancelar Transação",
"transactions_count": "Contagem das Transações",
"txid": "ID da transação",
"from": "De:{counterparty}",
"to": "Para:{counterparty}",
"updating": "Atualizando..."
},
"wallets": {
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Carteira Bitcoin simples e poderosa",
"add_create": "Criar",
"add_entropy": "Entropia",
"add_entropy_bytes": "{bytes} bytes de entropia",
"add_entropy_generated": "{gen} bytes de entropia gerada",
"add_entropy_provide": "Fornecer entropia por meio da rolagem de dados",
"add_entropy_remain": "{gen} bytes de entropia gerada. Os bytes {rem} restantes serão obtidos do gerador de números aleatórios do Sistema.",
@ -391,6 +403,10 @@
"add_title": "Adicionar Carteira",
"add_wallet_name": "Nome",
"add_wallet_type": "Tipo",
"add_wallet_seed_length": "Comprimento da Seed Phrase",
"add_wallet_seed_length_message": "Escolha o comprimento da Seed Phrase que deseja usar para esta carteira.",
"add_wallet_seed_length_12": "12 Palavras",
"add_wallet_seed_length_24": "24 Palavras",
"clipboard_bitcoin": "Você tem um endereço Bitcoin na área de transferência. Deseja utilizá-lo para uma transação?",
"clipboard_lightning": "Você tem uma fatura Lightning na área de transferência. Deseja utilizá-la para uma transação?",
"details_address": "Endereço",
@ -412,6 +428,7 @@
"details_show_xpub": "Exibir XPUB da Carteira",
"details_show_addresses": "Mostrar endereços",
"details_title": "Carteira",
"wallets": "Carteiras",
"details_type": "Tipo",
"details_use_with_hardware_wallet": "Usar com Carteira Hardware",
"details_wallet_updated": "Carteira atualizada",
@ -613,7 +630,22 @@
},
"bip47": {
"payment_code": "Código de pagamento",
"contacts": "Contatos",
"purpose": "Código para compartilhar (BIP47)",
"pay_this_contact": "Pague este contato",
"rename_contact": "Renomear contato",
"copy_payment_code": "Copiar Payment Code",
"hide_contact": "Esconder Contato",
"rename": "Renomear",
"provide_name": "Forneça um novo nome para este contato",
"add_contact": "Adicionar contato",
"provide_payment_code": "Forneça Payment Code",
"invalid_pc": "Payment Code inválido",
"notification_tx_unconfirmed": "A transação de notificação ainda não foi confirmada, aguarde.",
"failed_create_notif_tx": "Falha para criar transação on-chain",
"onchain_tx_needed": "Necessária transação on-chain",
"notif_tx_sent": "Transação de notificação enviada. Por favor espere a confirmação",
"notif_tx": "Transação de notificação",
"not_found": "Código de pagamento não encontrado"
}
}

View File

@ -178,7 +178,6 @@
"advanced_options": "Opções Avançadas",
"biom_10times": "Você tentou digitar sua senha 10 vezes. Você gostaria de resetar seu armazenamento? Isso irá remover todas suas carteiras e descriptografar seu armazenamento.",
"biom_conf_identity": "Por favor, confirme sua identidade.",
"biom_no_passcode": "Seu dispositivo não possui uma palavra-passe. Para proceder, por favor configure uma palavra-passe no app de Configurações.",
"biom_remove_decrypt": "Todas suas carteiras serão removidas e seu armazenamento será descriptografado. Tem certeza que deseja proceder?",
"currency": "Moeda",
"default_desc": "Quando desactivado, a BlueWallet abrirá imediatamente a carteira seleccionada no lançamento.",
@ -288,6 +287,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Carteira Bitcoin simples e poderosa",
"add_create": "Adicionar",
"add_entropy": "Entropia",
"add_entropy_generated": "{gen} bytes de entropia gerada",
"add_entropy_provide": "Entropia através de dados",
"add_entropy_remain": "{gen} bytes de entropia gerada. Os bytes {rem} restantes serão obtidos do gerador de números aleatórios do sistema.",
@ -320,6 +320,7 @@
"details_show_xpub": "Mostrar XPUB da wallet",
"details_show_addresses": "Mostrar endereços",
"details_title": "Carteira",
"wallets": "carteiras",
"details_type": "Tipo",
"details_use_with_hardware_wallet": "Use com carteira de hardware",
"details_wallet_updated": "Carteira actualizada",

View File

@ -194,7 +194,6 @@
"biometrics": "Biometrici",
"biom_10times": "Ai încercat să introduci parola de 10 ori. Ai vrea să resetezi spațiul de stocare? Acest lucru va înlătura toate portofelele și va decripta spațiul de stocare.",
"biom_conf_identity": "Confirmă-ți identitatea.",
"biom_no_passcode": "Dispozitivul tău nu are un cod de acces. Pentru a continua, configurează un cod de acces în aplicația de Setări.",
"biom_remove_decrypt": "Toate portofelele tale vor fi înlăturate și spațiul de stocare va fi decriptat. Sigur vrei să continui?",
"currency": "Monedă",
"default_desc": "Cînd e dezactivat, BlueWallet va deschide imediat la pornire portofelul selectat.",
@ -318,6 +317,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Portofel Bitcoin simplu și puternic",
"add_create": "Creează",
"add_entropy": "Entropie",
"add_entropy_generated": "{gen} bytes de entropie generată",
"add_entropy_provide": "Furnizează entropie prin aruncări de zaruri",
"add_entropy_remain": "{gen} bytes de entropie generată. {rem} bytes rămași vor fi obținuți din generatorul de numere aleatorii al Sistemului.",
@ -347,6 +347,7 @@
"details_show_xpub": "Afișează XPUB-ul portofelului",
"details_show_addresses": "Arată adresele",
"details_title": "Portofel",
"wallets": "Portofele",
"details_type": "Tip",
"details_use_with_hardware_wallet": "Folosește cu portofelul hardware",
"details_wallet_updated": "Portofel actualizat",

View File

@ -229,7 +229,6 @@
"biometrics": "Биометрия",
"biom_10times": "Вы 10 раз пытались ввести пароль. Хотите очистить хранилище? Все кошельки будут удалены, а Хранилище дешифровано.",
"biom_conf_identity": "Пожалуйста, подтвердите вашу личность.",
"biom_no_passcode": "На вашем устройстве нет пароля. Чтобы продолжить, задайте пароль в Настройках устройства.",
"biom_remove_decrypt": "Все кошельки будут удалены, а Хранилище расшифровано. Продолжить?",
"currency": "Валюта",
"currency_source": "Курс получается из",
@ -369,6 +368,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Простой и мощный Биткоин кошелёк",
"add_create": "Создать",
"add_entropy": "Энтропия",
"add_entropy_generated": "{gen} байтов сгенерированной энтропии",
"add_entropy_provide": "Сгенерировать энтропию с помощью игральных костей",
"add_entropy_remain": "{gen} байтов сгенерированной энтропии. Оставшиеся {rem} байтов будут получены из системного генератора случайных чисел.",
@ -402,6 +402,7 @@
"details_show_xpub": "Показать XPUB",
"details_show_addresses": "Показать адреса",
"details_title": "Информация",
"wallets": "Кошельки",
"details_type": "Тип",
"details_use_with_hardware_wallet": "Использовать с аппаратным кошельком",
"details_wallet_updated": "Кошелёк сохранен",

View File

@ -202,7 +202,6 @@
"biometrics": "ජෛවමිතික",
"biom_10times": "ඔබ ඔබේ මුරපදය 10 වරක් ඇතුළත් කිරීමට උත්සාහ කර ඇත. ඔබේ ගබඩාව නැවත සැකසීමට ඔබ කැමතිද? මෙය සියලුම පසුම්බි ඉවත් කර ඔබේ ආචයනය විකේතනය කරයි.",
"biom_conf_identity": "කරුණාකර ඔබේ අනන්‍යතාවය තහවුරු කරන්න.",
"biom_no_passcode": "ඔබේ උපාංගයට මුර සංකේතයක් නොමැත. ඉදිරියට යාමට, කරුණාකර සැකසීම් යෙදුමේ මුර සංකේතයක් වින්‍යාස කරන්න.",
"biom_remove_decrypt": "ඔබේ මුදල් පසුම්බි සියල්ලම ඉවත් කෙරෙන අතර ඔබේ ගබඩා කිරීම විකේතනය වනු ඇත. ඔබට ඉදිරියට යාමට අවශ්‍ය බව ඔබට විශ්වාසද?",
"currency": "මුදල්",
"currency_fetch_error": "තෝරාගත් මුදල් සඳහා ගාස්තුව ලබා ගැනීමේදී දෝෂයක් ඇති විය.",
@ -333,6 +332,7 @@
"add_bitcoin": "බිට්කොයින්",
"add_bitcoin_explain": "සරල හා බලවත් බිට්කොයින් පසුම්බිය",
"add_create": "සාදන්න",
"add_entropy": "එන්ට්‍රොපි",
"add_entropy_generated": "උත්පාදනය කරන ලද එන්ට්‍රොපි බයිට් {gen}",
"add_entropy_provide": "Provide entropy via dice rolls",
"add_entropy_remain": "උත්පාදනය කරන ලද එන්ට්‍රොපි බයිට් {gen}. ඉතිරි {rem} බයිට් පද්ධති අහඹු අංක උත්පාදක යන්ත්‍රයෙන් ලබා ගනු ඇත.",
@ -364,6 +364,7 @@
"details_show_xpub": "පසුම්බිය XPUB පෙන්වන්න",
"details_show_addresses": "ලිපිනයන් පෙන්වන්න",
"details_title": "පසුම්බිය",
"wallets": "පසුම්බි",
"details_type": "ටයිප් කරන්න",
"details_use_with_hardware_wallet": "දෘඩාංග පසුම්බිය සමඟ භාවිතා කරන්න",
"details_wallet_updated": "පසුම්බිය යාවත්කාලීන කරන ලදි",

View File

@ -190,6 +190,7 @@
"wallets": {
"add_bitcoin": "Bitcoin",
"add_create": "Vytvoriť",
"add_entropy": "Entropia",
"add_entropy_generated": "{gen} bytov vygenerovanej entropie",
"add_entropy_provide": "Vytvoriť entropiu pomocou hodov kockou",
"add_entropy_remain": "{gen} bytov vygenerovanej entropie. Zvyšných {rem} bytov sa získa zo systémového generátora náhodných čísel.",
@ -212,6 +213,7 @@
"details_save": "Uložiť",
"details_show_xpub": "Ukázať XPUB",
"details_title": "Peňaženka",
"wallets": "peňaženky",
"details_type": "Typ",
"details_use_with_hardware_wallet": "Použiť s hardwarovou peňaženkou",
"details_yes_delete": "Ano, zmazať",

View File

@ -208,7 +208,6 @@
"biometrics": "Biometrija",
"biom_10times": "Geslo ste poskušali vnesti 10-krat. Ali želite ponastaviti shrambo? S tem bodo odstranjene vse denarnice.",
"biom_conf_identity": "Prosimo, potrdite svojo identiteto.",
"biom_no_passcode": "Vaša naprava ni zaščitena z geslom. Če želite nadaljevati, v aplikaciji Nastavitve nastavite svoje geslo.",
"biom_remove_decrypt": "Shramba bo ponastavljena, pri tem bodo odstranjene vse denarnice. Ali ste prepričani, da želite nadaljevati?",
"currency": "Valuta",
"currency_source": "Tečaji so pridobljeni iz",
@ -341,6 +340,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Preprosta in zmogljiva Bitcoin denarnica",
"add_create": "Ustvari",
"add_entropy": "Entropija",
"add_entropy_generated": "{gen} bajtov ustvarjene entropije",
"add_entropy_provide": "Zagotovite entropijo s pomočjo metov kocke",
"add_entropy_remain": "{gen} bajtov ustvarjene entropije. Preostalih {rem} bajtov bo pridobljenih iz sistemskega generatorja naključnih števil.",
@ -373,6 +373,7 @@
"details_show_xpub": "Prikaži XPUB denarnice",
"details_show_addresses": "Prikaži naslove",
"details_title": "Denarnica",
"wallets": "Denarnice",
"details_type": "Tip",
"details_use_with_hardware_wallet": "Uporaba s strojno denarnico",
"details_wallet_updated": "Denarnica posodobljena",

View File

@ -218,7 +218,6 @@
"biometrics": "Biometri",
"biom_10times": "Du har försökt ange ditt lösenord 10 gånger. Vill du återställa din lagring? Detta tar bort alla plånböcker och dekrypterar din lagring.",
"biom_conf_identity": "Vänligen bekräfta din identitet.",
"biom_no_passcode": "Din enhet har inget lösenord. För att fortsätta måste du konfigurera ett lösenord i appen Inställningar.",
"biom_remove_decrypt": "Alla dina plånböcker kommer att tas bort och din lagring kommer att dekrypteras. Är du säker på att du vill fortsätta?",
"currency": "Valuta",
"currency_source": "Priser hämtas från",
@ -354,6 +353,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Enkel och kraftfull Bitcoin-plånbok",
"add_create": "Skapa",
"add_entropy": "Entropi",
"add_entropy_generated": "{gen} byte genererad entropi",
"add_entropy_provide": "Ge entropi via tärningskast",
"add_entropy_remain": "{gen} byte genererad entropi. Återstående {rem} byte kommer att erhållas från systemets slumptalsgenerator.",
@ -386,6 +386,7 @@
"details_show_xpub": "Visa plånbokens XPUB",
"details_show_addresses": "Visa adresser",
"details_title": "Plånbok",
"wallets": "Plånböcker",
"details_type": "Typ",
"details_use_with_hardware_wallet": "Använd med Hårdvaruplånbok",
"details_wallet_updated": "Plånbok uppdaterad",

View File

@ -227,6 +227,7 @@
"add_bitcoin": "บิตคอยน์",
"add_bitcoin_explain": "กระเป๋าเงินบิตคอยน์ที่เรียบง่ายและทรงพลัง",
"add_create": "สร้าง",
"add_entropy": "เอนโทรปี",
"add_import_wallet": "นำเข้ากระเป๋าสตางค์",
"add_lightning": "ไลท์นิง",
"add_lndhub": "เชื่อมต่ปไปที่ LNDHub ของท่าน",
@ -246,6 +247,7 @@
"details_save": "เก็บ",
"details_show_xpub": "แสดง XPUB ของกระเป๋าสตางค์",
"details_title": "กระเป๋าสตางค์",
"wallets": "กระเป๋าสตางค์",
"details_type": "ชนิด",
"details_use_with_hardware_wallet": "ใช้ด้วยกระเป๋าฮาร์ดแวร์",
"details_wallet_updated": "อัพเดทกระเป๋าสตางค์แล้ว",

View File

@ -196,6 +196,7 @@
},
"wallets": {
"add_create": "Oluştur",
"add_entropy": "Entropi",
"add_import_wallet": "Cüzdan İçeri Yükle",
"add_title": "Cüzdan ekle",
"add_wallet_name": "İsim",
@ -208,6 +209,7 @@
"details_save": "Kaydet",
"details_show_xpub": "Cüzdan XPUB göster",
"details_title": "Cüzdan",
"wallets": "cüzdanlar",
"details_type": "Tip",
"details_yes_delete": "Evet, sil",
"export_title": "cüzdan yedekle",

View File

@ -256,6 +256,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Простий і потужний Біткойн гаманець",
"add_create": "Створити",
"add_entropy": "Ентропія",
"add_import_wallet": "Імпортувати гаманець",
"add_lightning": "Lightning",
"add_lndhub": "Підключитися до вашого LNDHub",
@ -276,6 +277,7 @@
"details_show_xpub": "Показати XPUB Гаманця",
"details_show_addresses": "Показати адреси",
"details_title": "Гаманець",
"wallets": "Гаманці",
"details_type": "Тип",
"details_wallet_updated": "Гаманець оновлено",
"details_yes_delete": "Так, видалити",

View File

@ -213,7 +213,6 @@
"biometrics": "Sinh trắc",
"biom_10times": "Bạn đã thử nhập mật khẩu 10 lần rồi. Bạn có muốn đặt lại lưu trữ không? Điều này sẽ loại bỏ tất cả các ví và giải mã lưu trữ của bạn.",
"biom_conf_identity": "Vui lòng xác nhận danh tính của bạn.",
"biom_no_passcode": "Thiết bị của bạn không có mật mã. Vui lòng cấu hình môt mật mã trong Cài Đặt để tiến hành.",
"biom_remove_decrypt": "Tất cả các ví của bạn sẽ được gỡ bỏ và lưu trữ của bạn sẽ được giải mã. Bạn có chắc muốn tiếp tục?",
"currency": "Tiền tệ",
"currency_source": "Giá có được từ",
@ -348,6 +347,7 @@
"add_bitcoin": "Bitcoin",
"add_bitcoin_explain": "Ví Bitcoin đơn giản và mạnh mẽ",
"add_create": "Tạo",
"add_entropy": "Entropy",
"add_entropy_generated": "{gen} bytes entropy đã được tạo",
"add_entropy_provide": "Cung cấp entropy bằng dice roll",
"add_entropy_remain": "{gen} bytes entropy đã được tạo. {gen} bytes còn lại sẽ lấy được từ số ngẫu nhiên của hệ thống. ",
@ -380,6 +380,7 @@
"details_show_xpub": "Hiển thị XPUB của ví",
"details_show_addresses": "Hiển thị các địa chỉ",
"details_title": "Ví",
"wallets": "Các ví",
"details_type": "Loại",
"details_use_with_hardware_wallet": "Sử dụng với ví phần cứng",
"details_wallet_updated": "Ví đã cập nhật",

View File

@ -5,6 +5,7 @@
"continue": "Gaan voort",
"clipboard": "Knipbord",
"discard_changes": "Verwerp veranderinge?",
"discard_changes_explain": "Jy het veranderinge wat nie gestoor is nie. Is jy seker jy wil die skerm verlaat?",
"enter_password": "Sleutel wagwoord in",
"never": "Nooit",
"of": "{number} van {total}",
@ -15,7 +16,9 @@
"save": "Berg",
"seed": "Saad",
"success": "Sukses",
"wallet_key": "Beursie sleutel"
"wallet_key": "Beursie sleutel",
"more": "Meer",
"enter_amount": "Sit die bedrag in"
},
"alert": {
"default": "Aandag"
@ -32,7 +35,8 @@
"entropy": {
"save": "Berg",
"title": "Entropie",
"undo": "Ontdoen"
"undo": "Ontdoen",
"amountOfEntropy": "{bits} van {limit} bits"
},
"errors": {
"broadcast": "Sending het misluk.",
@ -47,11 +51,14 @@
"claim_balance": "Eis balaans {balance}",
"close_channel": "Sluit kanaal",
"new_channel": "Nuwe kanaal",
"errorInvoiceExpired": "Faktuur het verval.",
"force_close_channel": "Dwing kanaal sluiting?",
"expired": "Verval",
"node_alias": "Knoop-punt noem naam",
"expiresIn": "Verval in {time} minute",
"payButton": "Betaal",
"payment": "Betaling",
"placeholder": "Faktuur of adres",
"open_channel": "Open Kanaal",
"opening_channnel_for_from": "Skep kanaal vir beursie {forWalletLabel}, deur befondsing vanaf {fromWalletLabel}",
"are_you_sure_open_channel": "Is jy seker jy wil hierdie kanaal oop maak?",
@ -66,7 +73,13 @@
"view_logs": "Sien Aktiwiteits Register"
},
"lndViewInvoice": {
"open_direct_channel": "Open direkte kanaal met hierdie knoop-punt:"
"additional_info": "Bykomende Inligting",
"lightning_invoice": "Lightning Faktuur",
"open_direct_channel": "Open direkte kanaal met hierdie knoop-punt:",
"please_pay_between_and": "Betaal asseblief tussen {min} en {max}",
"please_pay": "Betaal asseblief",
"sats": "sats.",
"wasnt_paid_and_expired": "Die faktuur was nie betaal nie en het verval."
},
"plausibledeniability": {
"create_fake_storage": "Skep fantasie berging wagwoord",
@ -80,11 +93,27 @@
"success": "Sukses",
"title": "Geloofwaardige Ontkenbaarheid"
},
"pleasebackup": {
"ask": "Het jy jou beursie se terugval frase gestoor? Dié terugval frase is nodig om jou fondse terug te kry indien jy jou toestel verloor. Sonder die terugval frase sal al jou fondse permanent verlore wees. ",
"ask_no": "Nee, ek het nie. ",
"ask_yes": "Ja, ek het. ",
"ok": "OK, ek het dit neergeskryf.",
"ok_lnd": "OK, ek het dit gestoor.",
"text": "Vat asseblief ñ oomblik om die woorde op ñ stuk papier neer te skryf.\nDit is jou terugval woorde wat jy gebruik om jou beursie terug te kry. ",
"text_lnd": "Stoor asseblief die beursie se rugsteun. Dit gaan jou toelaat om jou beursie teug te kry indien jy hom verloor. ",
"title": "Jou beursie is geskep."
},
"receive": {
"details_create": "Skep",
"details_label": "Beskrywing",
"details_setAmount": "Bedrag ontvang",
"header": "Ontvang"
"details_share": "Deel...",
"header": "Ontvang",
"maxSats": "Die maksimum bedrag is {max} sats",
"maxSatsFull": "Die maksimum bedrag is {max} sats of {currency}",
"minSats": "Die Minimale bedrag is {min} sats",
"minSatsFull": "Die minimum bedrag is {min} sats of {currency}",
"qrcode_for_the_address": "QR Code vir die adres"
},
"send": {
"broadcastButton": "Saai uit",
@ -99,22 +128,42 @@
"create_this_is_hex": "Hierdie is die transaksie hex, geteken en gereed om na die netwerk uitgesaai te word.",
"create_to": "Aan",
"create_tx_size": "TX groote",
"create_verify": "Verifieer op coinb.in",
"details_address": "adres",
"details_address_field_is_not_valid": "Adres is ongeldig",
"details_amount_field_is_not_valid": "Bedrag is ongeldig",
"details_create": "Skep",
"details_fee_field_is_not_valid": "Fooi spasie is ongeldig",
"details_next": "Volgende",
"details_note_placeholder": "persoonlike notas",
"details_scan": "Skandeer",
"details_total_exceeds_balance": "Die bedrag is meer as die beskikbare balans.",
"dynamic_next": "Volgende",
"dynamic_prev": "Vorige",
"dynamic_start": "Begin",
"dynamic_stop": "Stop",
"fee_10m": "10m",
"fee_1d": "1d",
"fee_3h": "3h",
"fee_fast": "Vinnig",
"fee_medium": "Medium",
"fee_replace_minvb": "Die totale fooi (satoshi per vByte) wat jy wil betaal, moet meer wees as {min} sat/vByte.",
"fee_satvbyte": "in sat/vByte",
"fee_slow": "Stadig",
"header": "Stuur",
"input_clear": "Maak skoon",
"input_done": "Klaar",
"input_paste": "Plak",
"permission_camera_message": "Ons het jou toestemming nodig om jou kamera te gebruik. ",
"psbt_sign": "Teken ñ transaksie",
"permission_storage_later": "Vra my later. ",
"success_done": "Klaar"
},
"settings": {
"about": "info",
"currency": "Geldeenheid",
"electrum_clear_alert_cancel": "Kanselleer",
"electrum_clear": "Maak skoon",
"general_adv_mode": "Enable advanced mode",
"header": "instellings",
"language": "Taal",
@ -126,6 +175,9 @@
"retype_password": "Hervoer wagwoord",
"save": "stoor"
},
"notifications": {
"ask_me_later": "Vra my later. "
},
"transactions": {
"cpfp_create": "Skep",
"details_copy": "Kopieer",
@ -138,6 +190,7 @@
"wallets": {
"add_bitcoin": "Bitcoin",
"add_create": "Skep",
"add_entropy": "Entropie",
"add_import_wallet": "Beursie Invoer",
"add_lndhub_error": "Die voorgestelde knoop-punt se adres is 'n ongeldige LNDHub knoop-punt.",
"add_lndhub_placeholder": "Jou Knoop-punt Adres",
@ -152,6 +205,7 @@
"details_save": "Berg",
"details_show_xpub": "Wys beursie XPUB",
"details_title": "Beursiet",
"wallets": "beursies",
"details_type": "Tipe",
"details_yes_delete": "Ja, vernietig",
"export_title": "beursie uitvoer",
@ -176,7 +230,9 @@
"multisig": {
"confirm": "Bevestig",
"header": "Stuur",
"share": "Deel...",
"create": "Skep",
"co_sign_transaction": "Teken ñ transaksie",
"ms_help_title5": "Enable advanced mode"
},
"addresses": {

View File

@ -127,6 +127,7 @@
"details_save": "Gcina",
"details_show_xpub": "Bonise ingxowa XPUB",
"details_title": "Ingxowa",
"wallets": "Ingxowa",
"details_type": "Uhlobo",
"details_yes_delete": "Ewe, yisuse",
"export_title": "ukuthunyelwa kweebhanki ",

View File

@ -172,7 +172,6 @@
"biometrics": "生物识别",
"biom_10times": "您已尝试输入密码10次。 您想重置存储空间吗? 这将删除所有钱包并解密您的存储。",
"biom_conf_identity": "请确认您的身份。",
"biom_no_passcode": "您的设备没有密码。 为了继续进行,请在“设置”应用中配置密码。",
"biom_remove_decrypt": "您的所有钱包将被删除,您的存储空间将被解密。您确定要继续吗?",
"currency": "货币",
"default_desc": "停用后BlueWallet将在启动时立即打开选定的钱包。",
@ -280,6 +279,7 @@
"add_bitcoin": "比特币",
"add_bitcoin_explain": "简单而强大的比特币钱包",
"add_create": "创建",
"add_entropy": "随机熵值",
"add_entropy_generated": "产生熵的{gen}个字节",
"add_entropy_provide": "通过掷骰子提供熵",
"add_entropy_remain": "产生熵的{gen}个字节。 剩余的{rem}字节将从系统随机数生成器中获得。",
@ -308,6 +308,7 @@
"details_show_xpub": "展示钱包公钥",
"details_show_addresses": "展示地址",
"details_title": "钱包",
"wallets": "钱包",
"details_type": "类型",
"details_use_with_hardware_wallet": "与硬体钱包一起使用",
"details_wallet_updated": "钱包已更新",

View File

@ -169,7 +169,6 @@
"biometrics": "生物識別",
"biom_10times": "您已嘗試輸入密碼10次。 您想重設儲存空間嗎? 這將刪除所有錢包並解密您的儲存。",
"biom_conf_identity": "請確認您的身份。",
"biom_no_passcode": "您的設備沒有密碼。 為了繼續進行,請在“設定”應用程式中配置密碼。",
"biom_remove_decrypt": "您的所有錢包將被刪除,您的儲存空間將被解密。您確定要繼續嗎?",
"currency": "貨幣",
"default_desc": "停用後BlueWallet將在啟動時立即打開選定的錢包。",
@ -273,6 +272,7 @@
"add_bitcoin": "比特幣",
"add_bitcoin_explain": "簡單而強大的比特幣錢包",
"add_create": "建立",
"add_entropy": "熵",
"add_entropy_generated": "產生熵的{gen}個字節",
"add_entropy_provide": "通過擲骰子提供熵",
"add_entropy_remain": "產生熵的{gen}個字節。 剩餘的{rem}字節將從系統隨機數生成器中獲得。",
@ -302,6 +302,7 @@
"details_show_xpub": "展示錢包公鑰",
"details_show_addresses": "顯示地址",
"details_title": "錢包",
"wallets": "錢包",
"details_type": "類型",
"details_use_with_hardware_wallet": "與硬體錢包一起使用",
"details_wallet_updated": "錢包已更新",

7291
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
{
"name": "bluewallet",
"version": "6.6.8",
"version": "6.6.9",
"license": "MIT",
"repository": {
"type": "git",
@ -85,9 +85,9 @@
"@react-native-community/push-notification-ios": "1.11.0",
"@react-native-menu/menu": "1.1.2",
"@react-native/metro-config": "0.74.84",
"@react-navigation/drawer": "6.6.15",
"@react-navigation/drawer": "6.7.0",
"@react-navigation/native": "6.1.17",
"@react-navigation/native-stack": "6.9.26",
"@react-navigation/native-stack": "6.10.0",
"@remobile/react-native-qrcode-local-image": "https://github.com/BlueWallet/react-native-qrcode-local-image",
"@rneui/base": "4.0.0-rc.8",
"@rneui/themed": "4.0.0-rc.8",
@ -154,7 +154,7 @@
"react-native-randombytes": "3.6.1",
"react-native-rate": "1.2.12",
"react-native-reanimated": "3.11.0",
"react-native-safe-area-context": "4.10.5",
"react-native-safe-area-context": "4.10.7",
"react-native-screens": "3.32.0",
"react-native-secure-key-store": "https://github.com/BlueWallet/react-native-secure-key-store#2076b48",
"react-native-share": "10.2.1",

View File

@ -215,35 +215,23 @@ const SendDetails = () => {
});
} else if (routeParams.addRecipientParams) {
const index = addresses.length === 0 ? 0 : scrollIndex.current;
const isEmptyArray = addresses.length > 0 || addresses.length < 2;
const addRecipientParams = routeParams.addRecipientParams;
const { address, amount } = routeParams.addRecipientParams;
if (isEmptyArray) {
if (Number(addRecipientParams.amount) > 0) {
setAddresses([
{
address: addRecipientParams.address,
amount: addRecipientParams.amount,
amountSats: btcToSatoshi(addRecipientParams.amount!),
key: String(Math.random()),
} as IPaymentDestinations,
]);
} else {
setAddresses([{ address: addRecipientParams.address, key: String(Math.random()) } as IPaymentDestinations]);
setAddresses(prevAddresses => {
const updatedAddresses = [...prevAddresses];
if (address) {
updatedAddresses[index] = {
...updatedAddresses[index],
address,
amount: amount ?? updatedAddresses[index].amount,
amountSats: amount ? btcToSatoshi(amount) : updatedAddresses[index].amountSats,
} as IPaymentDestinations;
}
} else {
setAddresses(addrs => {
if (routeParams.addRecipientParams?.amount) {
addrs[index].amount = routeParams.addRecipientParams?.amount;
addrs[index].amountSats = btcToSatoshi(routeParams.addRecipientParams?.amount);
}
if (routeParams.addRecipientParams?.address) {
addrs[index].address = routeParams.addRecipientParams?.address;
}
return [...addrs];
});
setParams({ addRecipientParams: undefined });
}
return updatedAddresses;
});
// @ts-ignore: Fix later
setParams(prevParams => ({ ...prevParams, addRecipientParams: undefined }));
} else {
setAddresses([{ address: '', key: String(Math.random()) } as IPaymentDestinations]); // key is for the FlatList
}

View File

@ -11,6 +11,7 @@ import { DetailViewStackParamList } from '../../navigation/DetailViewStackParamL
import { useExtendedNavigation } from '../../hooks/useExtendedNavigation';
import SegmentedControl from '../../components/SegmentControl';
import loc from '../../loc';
import { BitcoinUnit } from '../../models/bitcoinUnits';
export const TABS = {
EXTERNAL: 'receive',
@ -123,10 +124,10 @@ const WalletAddresses: React.FC = () => {
const addressList = useRef<FlatList<Address>>(null);
const wallet = wallets.find((w: any) => w.getID() === walletID);
const balanceUnit = wallet?.getPreferredBalanceUnit();
const balanceUnit = wallet?.getPreferredBalanceUnit() ?? BitcoinUnit.BTC;
const isWatchOnly = wallet?.type === WatchOnlyWallet.type;
const walletInstance = isWatchOnly ? wallet._hdWalletInstance : wallet;
const allowSignVerifyMessage = wallet && 'allowSignVerifyMessage' in wallet && wallet.allowSignVerifyMessage();
const allowSignVerifyMessage = (wallet && 'allowSignVerifyMessage' in wallet && wallet.allowSignVerifyMessage()) ?? false;
const { colors } = useTheme();
const { setOptions } = useExtendedNavigation<NavigationProps>();
@ -189,9 +190,9 @@ const WalletAddresses: React.FC = () => {
const renderRow = useCallback(
({ item }: { item: Address }) => {
return balanceUnit && allowSignVerifyMessage ? (
return (
<AddressItem item={item} {...item} balanceUnit={balanceUnit} walletID={walletID} allowSignVerifyMessage={allowSignVerifyMessage} />
) : null;
);
},
[balanceUnit, walletID, allowSignVerifyMessage],
);

View File

@ -205,6 +205,7 @@ describe('BlueWallet UI Tests - no wallets', () => {
// in case emulator has no google services and doesnt support pushes
// we just dont show this popup
await element(by.text(`No, and do not ask me again.`)).tap();
await element(by.text(`No, and do not ask me again.`)).tap(); // sometimes the first click doesnt work (detox issue, not app's)
} catch (_) {}
await yo('BitcoinAddressQRCodeContainer');
await yo('CopyTextToClipboard');
@ -517,6 +518,7 @@ describe('BlueWallet UI Tests - no wallets', () => {
// in case emulator has no google services and doesnt support pushes
// we just dont show this popup
await element(by.text(`No, and do not ask me again.`)).tap();
await element(by.text(`No, and do not ask me again.`)).tap(); // sometimes the first click doesnt work (detox issue, not app's)
} catch (_) {}
await sup('bc1qmf06nt4jhvzz4387ak8fecs42k6jqygr2unumetfc7xkdup7ah9s8phlup');

View File

@ -35,6 +35,7 @@ describe('BlueWallet UI Tests - import Watch-only wallet (zpub)', () => {
// in case emulator has no google services and doesnt support pushes
// we just dont show this popup
await element(by.text(`No, and do not ask me again.`)).tap();
await element(by.text(`No, and do not ask me again.`)).tap(); // sometimes the first click doesnt work (detox issue, not app's)
} catch (_) {}
await expect(element(by.id('BitcoinAddressQRCodeContainer'))).toBeVisible();
await expect(element(by.text('bc1qc8wun6lf9vcajpddtgdpd2pdrp0kwp29j6upgv'))).toBeVisible();

View File

@ -340,5 +340,27 @@ describe('Bech32 Segwit HD (BIP84) with BIP47', () => {
);
assert.strictEqual(addr2, 'bc1qaxxc4gwx6rd6rymq08qwpxhesd4jqu93lvjsyt');
assert.strictEqual(w.getAllExternalAddresses().length, 20); // exactly gap limit for external addresses
assert.ok(!w.getAllExternalAddresses().includes(addr)); // joint address to _receive_ is not included
// since we dont do network calls in unit test we cant get counterparties payment codes from our notif address,
// and thus, dont know collaborative addresses with our payers. lets hardcode our counterparty payment code to test
// this functionality
assert.deepStrictEqual(w.getBIP47SenderPaymentCodes(), []);
w.switchBIP47(true);
w._receive_payment_codes = [
'PM8TJi1RuCrgSHTzGMoayUf8xUW6zYBGXBPSWwTiMhMMwqto7G6NA4z9pN5Kn8Pbhryo2eaHMFRRcidCGdB3VCDXJD4DdPD2ZyG3ScLMEvtStAetvPMo',
];
assert.deepStrictEqual(w.getBIP47SenderPaymentCodes(), [
'PM8TJi1RuCrgSHTzGMoayUf8xUW6zYBGXBPSWwTiMhMMwqto7G6NA4z9pN5Kn8Pbhryo2eaHMFRRcidCGdB3VCDXJD4DdPD2ZyG3ScLMEvtStAetvPMo',
]);
assert.ok(w.getAllExternalAddresses().includes(addr)); // joint address to _receive_ is included
assert.ok(w.getAllExternalAddresses().length > 20);
});
});