mirror of
https://github.com/BlueWallet/BlueWallet.git
synced 2025-02-24 23:38:57 +01:00
Merge remote-tracking branch 'origin/master' into exportsave
This commit is contained in:
commit
ad57bcea9f
17 changed files with 87 additions and 59 deletions
|
@ -136,7 +136,7 @@ android {
|
|||
minSdkVersion rootProject.ext.minSdkVersion
|
||||
targetSdkVersion rootProject.ext.targetSdkVersion
|
||||
versionCode 1
|
||||
versionName "6.0.0"
|
||||
versionName "6.0.1"
|
||||
multiDexEnabled true
|
||||
missingDimensionStrategy 'react-native-camera', 'general'
|
||||
testBuildType System.getProperty('testBuildType', 'debug') // This will later be used to control the test apk build type
|
||||
|
|
|
@ -40,12 +40,14 @@ export class HodlHodlApi {
|
|||
constructor(apiKey = false) {
|
||||
this.baseURI = 'https://hodlhodl.com/';
|
||||
this.apiKey = apiKey || 'cmO8iLFgx9wrxCe9R7zFtbWpqVqpGuDfXR3FJB0PSGCd7EAh3xgG51vBKgNTAF8fEEpS0loqZ9P1fDZt';
|
||||
this.useragent = process.env.HODLHODL_USERAGENT || 'bluewallet';
|
||||
this._api = new Frisbee({ baseURI: this.baseURI });
|
||||
}
|
||||
|
||||
_getHeaders() {
|
||||
return {
|
||||
headers: {
|
||||
'User-Agent': this.useragent,
|
||||
'Access-Control-Allow-Origin': '*',
|
||||
'Content-Type': 'application/json',
|
||||
Authorization: 'Bearer ' + this.apiKey,
|
||||
|
@ -56,6 +58,7 @@ export class HodlHodlApi {
|
|||
_getHeadersWithoutAuthorization() {
|
||||
return {
|
||||
headers: {
|
||||
'User-Agent': this.useragent,
|
||||
'Access-Control-Allow-Origin': '*',
|
||||
'Content-Type': 'application/json',
|
||||
},
|
||||
|
|
|
@ -1085,4 +1085,8 @@ export class MultisigHDWallet extends AbstractHDElectrumWallet {
|
|||
if (fp.length !== 8) return false;
|
||||
return /^[0-9A-F]{8}$/i.test(fp);
|
||||
}
|
||||
|
||||
allowBatchSend() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1513,7 +1513,7 @@
|
|||
"$(inherited)",
|
||||
"$(PROJECT_DIR)",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
OTHER_LDFLAGS = (
|
||||
"$(inherited)",
|
||||
"-ObjC",
|
||||
|
@ -1556,7 +1556,7 @@
|
|||
"$(inherited)",
|
||||
"$(PROJECT_DIR)",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
OTHER_LDFLAGS = (
|
||||
"$(inherited)",
|
||||
"-ObjC",
|
||||
|
@ -1597,7 +1597,7 @@
|
|||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.TodayExtension;
|
||||
|
@ -1636,7 +1636,7 @@
|
|||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.TodayExtension;
|
||||
PRODUCT_NAME = "BlueWallet - Bitcoin Price";
|
||||
|
@ -1675,7 +1675,7 @@
|
|||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.PriceWidget;
|
||||
|
@ -1717,7 +1717,7 @@
|
|||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.PriceWidget;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
|
@ -1757,7 +1757,7 @@
|
|||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.MarketWidget;
|
||||
|
@ -1800,7 +1800,7 @@
|
|||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.MarketWidget;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
|
@ -1841,7 +1841,7 @@
|
|||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.WalletInformationAndMarketWidget;
|
||||
|
@ -1885,7 +1885,7 @@
|
|||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.WalletInformationAndMarketWidget;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
|
@ -1926,7 +1926,7 @@
|
|||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.WalletInformationWidget;
|
||||
|
@ -1969,7 +1969,7 @@
|
|||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.WalletInformationWidget;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
|
@ -2111,7 +2111,7 @@
|
|||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.watch.extension;
|
||||
|
@ -2151,7 +2151,7 @@
|
|||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.watch.extension;
|
||||
PRODUCT_NAME = "${TARGET_NAME}";
|
||||
|
@ -2185,7 +2185,7 @@
|
|||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
IBSC_MODULE = BlueWalletWatch_Extension;
|
||||
INFOPLIST_FILE = BlueWalletWatch/Info.plist;
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.watch;
|
||||
|
@ -2221,7 +2221,7 @@
|
|||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
IBSC_MODULE = BlueWalletWatch_Extension;
|
||||
INFOPLIST_FILE = BlueWalletWatch/Info.plist;
|
||||
MARKETING_VERSION = 6.0.0;
|
||||
MARKETING_VERSION = 6.0.1;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet.watch;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
|
|
|
@ -35,7 +35,7 @@ Private Schlüssel verlassen niemals Dein Gerät.
|
|||
Du kontrollierst Deine privaten Schlüssel
|
||||
|
||||
Definierbare Transaktionsgebühren
|
||||
Starting from 1 Satoshi. Defined by you, the user
|
||||
Beginnend bei 1 Satoshi. Du entscheidest.
|
||||
|
||||
Replace-By-Fee
|
||||
(RBF) Speed-up your transactions by increasing the fee (BIP125)
|
||||
|
|
|
@ -1 +1 @@
|
|||
BlueWallet - Cartera Bitcoin
|
||||
BlueWallet - Cartera de Bitcoin
|
|
@ -1,7 +1,8 @@
|
|||
* Open Source
|
||||
* Volledig versleutelt
|
||||
* Plausible deniability
|
||||
* Plausibele ontkenning
|
||||
* Aanpasbare transactievergoedingen
|
||||
* Replace-By-Fee
|
||||
* Watch-only (Sentinel)
|
||||
* SegWit
|
||||
* Watch-only portomonnees
|
||||
* Lightning network
|
|
@ -1,48 +1,53 @@
|
|||
Uma carteira de Bitcoin que permite guardar, enviar Bitcoin, receber Bitcoin e comprar Bitcoin, com foco na segurança e simplicidade.
|
||||
Uma carteira Bitcoin que permite armazenar, enviar bitcoin, receber bitcoin e comprar bitcoin com foco em segurança e simplicidade.
|
||||
|
||||
Na BlueWallet, uma Carteira de Bitcoin em que você controla as chaves privadas. Uma Carteira de Bitcoin criada por utilizadores de Bitcoin para a comunidade.
|
||||
BlueWallet é uma carteira de bitcoin onde você tem posse das chaves privadas. Uma carteira Bitcoin criada para a comunidade por usuários do Bitcoin.
|
||||
|
||||
Você pode fazer transações com qualquer pessoa no mundo e transformar o sistema financeiro diretamente do seu bolso.
|
||||
Você pode fazer transações com qualquer pessoa no mundo e transformar o sistema financeiro direto do seu bolso.
|
||||
|
||||
Pode criar gratuitamente uma quantidade ilimitada de carteiras de Bitcoin ou importar as carteiras que já tem para o seu aplicativo BlueWallet. É fácil e rápido!
|
||||
Crie um número ilimitado de carteiras de bitcoin gratuitamente ou importe sua carteira existente. É simples e fácil.
|
||||
|
||||
---
|
||||
_____
|
||||
|
||||
O que você vai encontrar:
|
||||
Entenda o que oferecemos:
|
||||
|
||||
1 - Segurança em primeiro lugar
|
||||
|
||||
Código aberto/Open Source
|
||||
Com licença MIT, você pode construí-lo e executá-lo por conta própria. Feito em React Native.
|
||||
1 - Criada com segurança em mente
|
||||
|
||||
Open Source
|
||||
Licença MIT, você pode compilar e rodar a sua própria versão! Feita com ReactNative
|
||||
|
||||
Negação plausível
|
||||
Senha falsa que decripta wallets falsas. Para casos especias onde possa ser obrigado a revelar a sua senha, pode revelar a senha falsa, mantenha as suas bitcoin protegidas.
|
||||
Senha que descriptografa carteiras de bitcoin falsas para utilizar em situações de estresse
|
||||
|
||||
Encriptação completa
|
||||
Construída em cima da multi-camada de criptografia do iOS, A BlueWallet criptografa tudo com uma adicional senha de usuário.
|
||||
Totalmente criptografada
|
||||
Além da criptografia multicamadas do iOS, criptografamos tudo com senhas adicionais
|
||||
|
||||
Carteiras SegWit e HD
|
||||
SegWit suportado (Ajuda a diminuir as taxas ainda mais) e carteiras HD ativadas.
|
||||
Nó completo
|
||||
Conecte com seu full node Bitcoin usando Electrum
|
||||
|
||||
2 - Focada na sua experiência
|
||||
Armazenamento frio (Cold)
|
||||
Conecte com sua hardwallet e mantenha suas moedas em armazenamento frio
|
||||
|
||||
Esteja em control
|
||||
As chaves privadas nunca deixam o celular, você controla as suas chaves privadas.
|
||||
2 - Foco na sua experiência
|
||||
|
||||
Fique no controle
|
||||
As chaves privadas nunca saem do dispositivo.
|
||||
Você controla suas chaves privadas
|
||||
|
||||
Taxas flexíveis
|
||||
A começar em 1 Satoshi. Não page a mais por transações.
|
||||
A partir de 1 satoshi. Você decide
|
||||
|
||||
Substituição de Taxa (RBF)
|
||||
Acelere as suas transações aumentando a taxa (BIP125). Pode também alterar o endereço de destinatário em transações não confirmadas.
|
||||
Replace-By-Fee
|
||||
(RBF) Acelere suas transações aumentando a taxa depois de enviar (BIP125)
|
||||
|
||||
Carteira de Watch-only
|
||||
Carteira de Watch-only/assistir apenas, observe o seu armazenamento externo de Bitcoin sem ter de lhe tocar.
|
||||
Carteiras Watch-only
|
||||
Carteiras somente leitura para você observar seu armazenamento frio sem tocar a hardwallet.
|
||||
|
||||
Lightning Network
|
||||
Carteira de Lightning sem configurações. Transações baratas e ultra rápidas com a melhor experiência do Bitcoin.
|
||||
Carteira Lightning sem precisar configurar nada. Transações muito baratas e rápidas para ter a melhor experiência com o Bitcoin.
|
||||
|
||||
Comprar Bitcoin
|
||||
Agora já pode comprar Bitcoin diretamente sem sair da sua carteira e com as suas chaves privadas.
|
||||
Compre Bitcoin
|
||||
Faça parte da revolução financeira aberta com a habilidade de comprar Bitcoin direto na sua carteira.
|
||||
|
||||
Local Trader
|
||||
Plataforma p2p Bitcoin de trading, que permite comprar e vender bitcoin diretamente para outros usuários sem terceiros.
|
||||
Trader local
|
||||
Uma plataforma de negociação de Bitcoin p2p que permite comprar e vender bitcoin de outros usuários diretamente, sem terceiros.
|
|
@ -1,7 +1,7 @@
|
|||
Особенности
|
||||
|
||||
* Открытый исходный код
|
||||
* Все данные шифруются
|
||||
* Правдоподобное отрицание
|
||||
* Двойное дно
|
||||
* Гибкие настройки комиссии
|
||||
* Повышение комиссии за транзакцию (RBF)
|
||||
* SegWit
|
||||
* Lightning network
|
|
@ -304,6 +304,7 @@
|
|||
"cancel_explain": "We will replace this transaction with the one that pays you and has higher fees. This effectively cancels transaction. This is called RBF—Replace by Fee.",
|
||||
"cancel_no": "This transaction is not replaceable.",
|
||||
"cancel_title": "Cancel this transaction (RBF)",
|
||||
"confirmations_lowercase": "{confirmations} confirmations",
|
||||
"cpfp_create": "Create",
|
||||
"cpfp_exp": "We will create another transaction that spends your unconfirmed transaction. The total fee will be higher than the original transaction fee, so it should be mined faster. This is called CPFP - Child Pays For Parent.",
|
||||
"cpfp_no_bump": "This transaction is not bumpable",
|
||||
|
@ -442,6 +443,7 @@
|
|||
"needs": "It needs",
|
||||
"what_is_vault_description_number_of_vault_keys": " {m} vault keys ",
|
||||
"what_is_vault_description_to_spend": "to spend and a third one you \ncan use as backup.",
|
||||
"what_is_vault_description_to_spend_other": "to spend.",
|
||||
"quorum": "{m} of {n} quorum",
|
||||
"quorum_header": "Quorum",
|
||||
"of": "of",
|
||||
|
|
|
@ -388,6 +388,7 @@
|
|||
"cancel_explain": "Reemplazaremos esta transacción con la que te paga y tiene tasas más altas, lo que cancelará la transacción. A esto se le llama RBF (Replace By Fee).",
|
||||
"cancel_no": "Esta transacción no se puede reemplazar",
|
||||
"cancel_title": "Cancelar esta transacción (RBF)",
|
||||
"confirmations_lowercase": "{confirmations} confirmaciones",
|
||||
"cpfp_create": "Crear",
|
||||
"cpfp_exp": "Crearemos otra transacción que gastará tu otra transacción aun no confirmada. La comisión total será mayor que la comisión original, lo cual debería hacer que sea minada antes. A esto se le llama CPFP (Child Pays For Parent).",
|
||||
"cpfp_no_bump": "Esta transacción no se puede acelerar",
|
||||
|
|
2
package-lock.json
generated
2
package-lock.json
generated
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "bluewallet",
|
||||
"version": "6.0.0",
|
||||
"version": "6.0.1",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "bluewallet",
|
||||
"version": "6.0.0",
|
||||
"version": "6.0.1",
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.10.4",
|
||||
|
|
|
@ -78,7 +78,7 @@ export default class SendCreate extends Component {
|
|||
|
||||
if (granted === PermissionsAndroid.RESULTS.GRANTED) {
|
||||
console.log('Storage Permission: Granted');
|
||||
const filePath = RNFS.DownloadDirectoryPath + `/${this.fileName}`;
|
||||
const filePath = RNFS.DownloadDirectoryPath + `/${fileName}`;
|
||||
try {
|
||||
await RNFS.writeFile(filePath, this.state.tx);
|
||||
alert(loc.formatString(loc.send.txSaved, { filePath }));
|
||||
|
|
|
@ -336,7 +336,11 @@ const TransactionsStatus = () => {
|
|||
)}
|
||||
|
||||
<View style={[styles.confirmations, stylesHook.confirmations]}>
|
||||
<Text style={styles.confirmationsText}>{tx.confirmations > 6 ? '6+' : tx.confirmations} confirmations</Text>
|
||||
<Text style={styles.confirmationsText}>
|
||||
{loc.formatString(loc.transactions.confirmations_lowercase, {
|
||||
confirmations: tx.confirmations > 6 ? '6+' : tx.confirmations,
|
||||
})}
|
||||
</Text>
|
||||
</View>
|
||||
</BlueCard>
|
||||
|
||||
|
|
|
@ -205,7 +205,9 @@ const WalletsAddMultisig = () => {
|
|||
<Text style={[styles.textdescBold, stylesHook.textdesc]}>
|
||||
{loc.formatString(loc.multisig.what_is_vault_description_number_of_vault_keys, { m })}
|
||||
</Text>
|
||||
<Text style={[styles.textdesc, stylesHook.textdesc]}>{loc.multisig.what_is_vault_description_to_spend}</Text>
|
||||
<Text style={[styles.textdesc, stylesHook.textdesc]}>
|
||||
{m === 2 && n === 3 ? loc.multisig.what_is_vault_description_to_spend : loc.multisig.what_is_vault_description_to_spend_other}
|
||||
</Text>
|
||||
</Text>
|
||||
</View>
|
||||
{isAdvancedModeEnabledRender && (
|
||||
|
|
|
@ -85,7 +85,13 @@ it('can create escrow address', () => {
|
|||
// console.log(tx.toHex());
|
||||
});
|
||||
|
||||
describe('HodlHodl API', function () {
|
||||
/**
|
||||
* Use only for development.
|
||||
* Run via `NODE_OPTIONS=--insecure-http-parser=true ./node_modules/.bin/jest tests/integration/hodlhodl.test.js`
|
||||
* Also, process.env.HODLHODL_USERAGENT might be needed.
|
||||
* All those a part of HodlHodl DDOS protection.
|
||||
*/
|
||||
describe.skip('HodlHodl API', function () {
|
||||
it('can fetch countries & and own country code', async () => {
|
||||
if (process.env.GITHUB_ACTIONS) {
|
||||
// dont run here as it always fails
|
||||
|
|
Loading…
Add table
Reference in a new issue