mirror of
https://github.com/BlueWallet/BlueWallet.git
synced 2025-02-21 22:42:21 +01:00
FIX: Addressed some crashes when running on an Android device. (#115)
FIX: Weird styling on inputs #68
This commit is contained in:
parent
6dea72553f
commit
d913934c9e
17 changed files with 211 additions and 219 deletions
|
@ -7,7 +7,7 @@ import Selftest from './screen/selftest';
|
|||
import { BlueHeader } from './BlueComponents';
|
||||
import MockStorage from './MockStorage';
|
||||
let assert = require('assert');
|
||||
jest.mock('react-native-qrcode', () => 'Video');
|
||||
jest.mock('react-native-custom-qr-codes', () => 'Video');
|
||||
const AsyncStorage = new MockStorage();
|
||||
jest.setMock('AsyncStorage', AsyncStorage);
|
||||
jest.useFakeTimers();
|
||||
|
|
|
@ -267,12 +267,13 @@ export class BlueFormMultiInput extends Component {
|
|||
<FormInput
|
||||
{...this.props}
|
||||
multiline
|
||||
underlineColorAndroid="transparent"
|
||||
numberOfLines={4}
|
||||
inputStyle={{
|
||||
width: width - 40,
|
||||
color: BlueApp.settings.foregroundColor,
|
||||
height: 120,
|
||||
fontSize: (isIpad && 10) || ((is.iphone8() && 12) || 14),
|
||||
// fontSize: (isIpad && 10) || ((is.iphone8() && 12) || 14),
|
||||
}}
|
||||
containerStyle={{
|
||||
marginTop: 5,
|
||||
|
@ -361,7 +362,7 @@ export class BlueHeaderDefaultSub extends Component {
|
|||
>
|
||||
<View style={stylesBlueIcon.box}>
|
||||
<View style={stylesBlueIcon.ballTransparrent}>
|
||||
<Icon name="times" size={16} type="font-awesome" color={BlueApp.settings.foregroundColor} />
|
||||
<Image source={require('./img/close.png')} />
|
||||
</View>
|
||||
</View>
|
||||
</TouchableOpacity>
|
||||
|
|
|
@ -97,6 +97,7 @@ module.exports = {
|
|||
from: 'Input',
|
||||
to: 'Output',
|
||||
copy: 'Copy',
|
||||
transaction_details: 'Transaction details',
|
||||
},
|
||||
},
|
||||
send: {
|
||||
|
|
|
@ -97,6 +97,7 @@ module.exports = {
|
|||
from: 'De',
|
||||
to: 'A',
|
||||
copy: 'Copiar',
|
||||
transaction_details: 'Detalles de la transacción',
|
||||
},
|
||||
},
|
||||
send: {
|
||||
|
|
|
@ -98,6 +98,7 @@ module.exports = {
|
|||
from: 'De',
|
||||
to: 'Para',
|
||||
copy: 'Copiar',
|
||||
transaction_details: 'Transaction details',
|
||||
},
|
||||
},
|
||||
send: {
|
||||
|
|
|
@ -97,6 +97,7 @@ module.exports = {
|
|||
from: 'De',
|
||||
to: 'Para',
|
||||
copy: 'Copiar',
|
||||
transaction_details: 'Transaction details',
|
||||
},
|
||||
},
|
||||
send: {
|
||||
|
|
|
@ -96,6 +96,7 @@ module.exports = {
|
|||
from: 'От',
|
||||
to: 'Кому',
|
||||
copy: 'копировать',
|
||||
transaction_details: 'Transaction details',
|
||||
},
|
||||
},
|
||||
send: {
|
||||
|
|
|
@ -96,6 +96,7 @@ module.exports = {
|
|||
from: 'Від',
|
||||
to: 'Кому',
|
||||
copy: 'копія',
|
||||
transaction_details: 'Transaction details',
|
||||
},
|
||||
},
|
||||
send: {
|
||||
|
|
127
package-lock.json
generated
127
package-lock.json
generated
|
@ -1183,7 +1183,7 @@
|
|||
},
|
||||
"abstract-leveldown": {
|
||||
"version": "0.12.3",
|
||||
"resolved": "http://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-0.12.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-0.12.3.tgz",
|
||||
"integrity": "sha1-EWsexcdxDvei1XBnaLvbREC+EHA=",
|
||||
"requires": {
|
||||
"xtend": "~3.0.0"
|
||||
|
@ -1903,7 +1903,7 @@
|
|||
},
|
||||
"auth0-js": {
|
||||
"version": "7.6.1",
|
||||
"resolved": "http://registry.npmjs.org/auth0-js/-/auth0-js-7.6.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/auth0-js/-/auth0-js-7.6.1.tgz",
|
||||
"integrity": "sha1-W66oYDEzuxQ70sMntVpX2nr9+Xw=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -3133,7 +3133,7 @@
|
|||
},
|
||||
"bl": {
|
||||
"version": "0.8.2",
|
||||
"resolved": "http://registry.npmjs.org/bl/-/bl-0.8.2.tgz",
|
||||
"resolved": "https://registry.npmjs.org/bl/-/bl-0.8.2.tgz",
|
||||
"integrity": "sha1-yba8oI0bwuoA/Ir7Txpf0eHGbk4=",
|
||||
"requires": {
|
||||
"readable-stream": "~1.0.26"
|
||||
|
@ -4522,7 +4522,7 @@
|
|||
},
|
||||
"es6-promisify": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "http://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz",
|
||||
"integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=",
|
||||
"requires": {
|
||||
"es6-promise": "^4.0.3"
|
||||
|
@ -4793,7 +4793,7 @@
|
|||
},
|
||||
"eslint-plugin-node": {
|
||||
"version": "6.0.1",
|
||||
"resolved": "http://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-6.0.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-6.0.1.tgz",
|
||||
"integrity": "sha512-Q/Cc2sW1OAISDS+Ji6lZS2KV4b7ueA/WydVWd1BECTQwVvfQy5JAi3glhINoKzoMnfnuRgNP+ZWKrGAbp3QDxw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -4868,7 +4868,7 @@
|
|||
},
|
||||
"espree": {
|
||||
"version": "3.5.4",
|
||||
"resolved": "http://registry.npmjs.org/espree/-/espree-3.5.4.tgz",
|
||||
"resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz",
|
||||
"integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -4926,7 +4926,7 @@
|
|||
},
|
||||
"events": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "http://registry.npmjs.org/events/-/events-1.1.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz",
|
||||
"integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ="
|
||||
},
|
||||
"evp_bytestokey": {
|
||||
|
@ -5471,7 +5471,7 @@
|
|||
},
|
||||
"fast-deep-equal": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "http://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
|
||||
"integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ="
|
||||
},
|
||||
"fast-diff": {
|
||||
|
@ -5521,7 +5521,7 @@
|
|||
"dependencies": {
|
||||
"core-js": {
|
||||
"version": "1.2.7",
|
||||
"resolved": "http://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz",
|
||||
"resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz",
|
||||
"integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY="
|
||||
}
|
||||
}
|
||||
|
@ -6356,7 +6356,7 @@
|
|||
},
|
||||
"get-stream": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
|
||||
"integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ="
|
||||
},
|
||||
"get-uri": {
|
||||
|
@ -6641,7 +6641,7 @@
|
|||
"dependencies": {
|
||||
"async": {
|
||||
"version": "1.5.2",
|
||||
"resolved": "http://registry.npmjs.org/async/-/async-1.5.2.tgz",
|
||||
"resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
|
||||
"integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=",
|
||||
"dev": true
|
||||
}
|
||||
|
@ -7251,7 +7251,7 @@
|
|||
},
|
||||
"isemail": {
|
||||
"version": "2.2.1",
|
||||
"resolved": "http://registry.npmjs.org/isemail/-/isemail-2.2.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/isemail/-/isemail-2.2.1.tgz",
|
||||
"integrity": "sha1-A1PT2aYpUQgMJiwqoKQrjqjp4qY=",
|
||||
"dev": true
|
||||
},
|
||||
|
@ -7868,7 +7868,7 @@
|
|||
},
|
||||
"jest-changed-files": {
|
||||
"version": "22.4.3",
|
||||
"resolved": "http://registry.npmjs.org/jest-changed-files/-/jest-changed-files-22.4.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-22.4.3.tgz",
|
||||
"integrity": "sha512-83Dh0w1aSkUNFhy5d2dvqWxi/y6weDwVVLU6vmK0cV9VpRxPzhTeGimbsbRDSnEoszhF937M4sDLLeS7Cu/Tmw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -7908,7 +7908,7 @@
|
|||
},
|
||||
"jest-docblock": {
|
||||
"version": "22.4.3",
|
||||
"resolved": "http://registry.npmjs.org/jest-docblock/-/jest-docblock-22.4.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-22.4.3.tgz",
|
||||
"integrity": "sha512-uPKBEAw7YrEMcXueMKZXn/rbMxBiSv48fSqy3uEnmgOlQhSX+lthBqHb1fKWNVmFqAp9E/RsSdBfiV31LbzaOg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -7917,7 +7917,7 @@
|
|||
},
|
||||
"jest-environment-jsdom": {
|
||||
"version": "22.4.3",
|
||||
"resolved": "http://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-22.4.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-22.4.3.tgz",
|
||||
"integrity": "sha512-FviwfR+VyT3Datf13+ULjIMO5CSeajlayhhYQwpzgunswoaLIPutdbrnfUHEMyJCwvqQFaVtTmn9+Y8WCt6n1w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -7928,7 +7928,7 @@
|
|||
},
|
||||
"jest-environment-node": {
|
||||
"version": "22.4.3",
|
||||
"resolved": "http://registry.npmjs.org/jest-environment-node/-/jest-environment-node-22.4.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-22.4.3.tgz",
|
||||
"integrity": "sha512-reZl8XF6t/lMEuPWwo9OLfttyC26A5AMgDyEQ6DBgZuyfyeNUzYT8BFo6uxCCP/Av/b7eb9fTi3sIHFPBzmlRA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -7992,7 +7992,7 @@
|
|||
},
|
||||
"jest-message-util": {
|
||||
"version": "22.4.3",
|
||||
"resolved": "http://registry.npmjs.org/jest-message-util/-/jest-message-util-22.4.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-22.4.3.tgz",
|
||||
"integrity": "sha512-iAMeKxhB3Se5xkSjU0NndLLCHtP4n+GtCqV0bISKA5dmOXQfEbdEmYiu2qpnWBDCQdEafNDDU6Q+l6oBMd/+BA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -8005,13 +8005,13 @@
|
|||
},
|
||||
"jest-mock": {
|
||||
"version": "22.4.3",
|
||||
"resolved": "http://registry.npmjs.org/jest-mock/-/jest-mock-22.4.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-22.4.3.tgz",
|
||||
"integrity": "sha512-+4R6mH5M1G4NK16CKg9N1DtCaFmuxhcIqF4lQK/Q1CIotqMs/XBemfpDPeVZBFow6iyUNu6EBT9ugdNOTT5o5Q==",
|
||||
"dev": true
|
||||
},
|
||||
"jest-regex-util": {
|
||||
"version": "22.4.3",
|
||||
"resolved": "http://registry.npmjs.org/jest-regex-util/-/jest-regex-util-22.4.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-22.4.3.tgz",
|
||||
"integrity": "sha512-LFg1gWr3QinIjb8j833bq7jtQopiwdAs67OGfkPrvy7uNUbVMfTXXcOKXJaeY5GgjobELkKvKENqq1xrUectWg==",
|
||||
"dev": true
|
||||
},
|
||||
|
@ -8083,7 +8083,7 @@
|
|||
},
|
||||
"jest-serializer": {
|
||||
"version": "22.4.3",
|
||||
"resolved": "http://registry.npmjs.org/jest-serializer/-/jest-serializer-22.4.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-22.4.3.tgz",
|
||||
"integrity": "sha512-uPaUAppx4VUfJ0QDerpNdF43F68eqKWCzzhUlKNDsUPhjOon7ZehR4C809GCqh765FoMRtTVUVnGvIoskkYHiw==",
|
||||
"dev": true
|
||||
},
|
||||
|
@ -8103,7 +8103,7 @@
|
|||
},
|
||||
"jest-util": {
|
||||
"version": "22.4.3",
|
||||
"resolved": "http://registry.npmjs.org/jest-util/-/jest-util-22.4.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-util/-/jest-util-22.4.3.tgz",
|
||||
"integrity": "sha512-rfDfG8wyC5pDPNdcnAlZgwKnzHvZDu8Td2NJI/jAGKEGxJPYiE4F0ss/gSAkG4778Y23Hvbz+0GMrDJTeo7RjQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -8131,7 +8131,7 @@
|
|||
},
|
||||
"jest-worker": {
|
||||
"version": "22.4.3",
|
||||
"resolved": "http://registry.npmjs.org/jest-worker/-/jest-worker-22.4.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-22.4.3.tgz",
|
||||
"integrity": "sha512-B1ucW4fI8qVAuZmicFxI1R3kr2fNeYJyvIQ1rKcuLYnenFV5K5aMbxFj6J0i00Ju83S8jP2d7Dz14+AvbIHRYQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -8215,7 +8215,7 @@
|
|||
},
|
||||
"jest-get-type": {
|
||||
"version": "22.4.3",
|
||||
"resolved": "http://registry.npmjs.org/jest-get-type/-/jest-get-type-22.4.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-22.4.3.tgz",
|
||||
"integrity": "sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w=="
|
||||
},
|
||||
"jest-haste-map": {
|
||||
|
@ -8964,7 +8964,7 @@
|
|||
},
|
||||
"json5": {
|
||||
"version": "0.5.1",
|
||||
"resolved": "http://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
|
||||
"integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE="
|
||||
},
|
||||
"jsonfile": {
|
||||
|
@ -9016,7 +9016,7 @@
|
|||
},
|
||||
"isemail": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "http://registry.npmjs.org/isemail/-/isemail-1.2.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/isemail/-/isemail-1.2.0.tgz",
|
||||
"integrity": "sha1-vgPfjMPineTSxd9lASY/H6RZXpo=",
|
||||
"dev": true
|
||||
},
|
||||
|
@ -9269,7 +9269,7 @@
|
|||
},
|
||||
"semver": {
|
||||
"version": "2.3.2",
|
||||
"resolved": "http://registry.npmjs.org/semver/-/semver-2.3.2.tgz",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-2.3.2.tgz",
|
||||
"integrity": "sha1-uYSPJdbPNjMwc+ye+IVtQvEjPlI="
|
||||
},
|
||||
"string_decoder": {
|
||||
|
@ -9355,7 +9355,7 @@
|
|||
},
|
||||
"lodash.isempty": {
|
||||
"version": "4.4.0",
|
||||
"resolved": "http://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz",
|
||||
"integrity": "sha1-b4bL7di+TsmHvpqvM8loTbGzHn4="
|
||||
},
|
||||
"lodash.isinteger": {
|
||||
|
@ -9492,7 +9492,7 @@
|
|||
},
|
||||
"lottie-react-native": {
|
||||
"version": "2.5.0",
|
||||
"resolved": "http://registry.npmjs.org/lottie-react-native/-/lottie-react-native-2.5.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/lottie-react-native/-/lottie-react-native-2.5.0.tgz",
|
||||
"integrity": "sha1-BxG4s0vsd0FVLCS3Hv09TKs0dXE=",
|
||||
"requires": {
|
||||
"invariant": "^2.2.2",
|
||||
|
@ -9679,7 +9679,7 @@
|
|||
},
|
||||
"media-typer": {
|
||||
"version": "0.3.0",
|
||||
"resolved": "http://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
|
||||
"integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
|
||||
"dev": true
|
||||
},
|
||||
|
@ -9864,7 +9864,7 @@
|
|||
"dependencies": {
|
||||
"jest-docblock": {
|
||||
"version": "22.4.0",
|
||||
"resolved": "http://registry.npmjs.org/jest-docblock/-/jest-docblock-22.4.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-22.4.0.tgz",
|
||||
"integrity": "sha512-lDY7GZ+/CJb02oULYLBDj7Hs5shBhVpDYpIm8LUyqw9X2J22QRsM19gmGQwIFqGSJmpc/LRrSYudeSrG510xlQ==",
|
||||
"requires": {
|
||||
"detect-newline": "^2.1.0"
|
||||
|
@ -9886,12 +9886,12 @@
|
|||
},
|
||||
"jest-serializer": {
|
||||
"version": "22.4.3",
|
||||
"resolved": "http://registry.npmjs.org/jest-serializer/-/jest-serializer-22.4.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-22.4.3.tgz",
|
||||
"integrity": "sha512-uPaUAppx4VUfJ0QDerpNdF43F68eqKWCzzhUlKNDsUPhjOon7ZehR4C809GCqh765FoMRtTVUVnGvIoskkYHiw=="
|
||||
},
|
||||
"jest-worker": {
|
||||
"version": "22.2.2",
|
||||
"resolved": "http://registry.npmjs.org/jest-worker/-/jest-worker-22.2.2.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-22.2.2.tgz",
|
||||
"integrity": "sha512-ZylDXjrFNt/OP6cUxwJFWwDgazP7hRjtCQbocFHyiwov+04Wm1x5PYzMGNJT53s4nwr0oo9ocYTImS09xOlUnw==",
|
||||
"requires": {
|
||||
"merge-stream": "^1.0.1"
|
||||
|
@ -9899,17 +9899,17 @@
|
|||
},
|
||||
"json5": {
|
||||
"version": "0.4.0",
|
||||
"resolved": "http://registry.npmjs.org/json5/-/json5-0.4.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/json5/-/json5-0.4.0.tgz",
|
||||
"integrity": "sha1-BUNS5MTIDIbAkjh31EneF2pzLI0="
|
||||
},
|
||||
"mime-db": {
|
||||
"version": "1.23.0",
|
||||
"resolved": "http://registry.npmjs.org/mime-db/-/mime-db-1.23.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.23.0.tgz",
|
||||
"integrity": "sha1-oxtAcK2uon1zLqMzdApk0OyaZlk="
|
||||
},
|
||||
"mime-types": {
|
||||
"version": "2.1.11",
|
||||
"resolved": "http://registry.npmjs.org/mime-types/-/mime-types-2.1.11.tgz",
|
||||
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.11.tgz",
|
||||
"integrity": "sha1-wlnEcb2oCKhdbNGTtDCl+uRHOzw=",
|
||||
"requires": {
|
||||
"mime-db": "~1.23.0"
|
||||
|
@ -9987,7 +9987,7 @@
|
|||
"dependencies": {
|
||||
"jest-serializer": {
|
||||
"version": "22.4.3",
|
||||
"resolved": "http://registry.npmjs.org/jest-serializer/-/jest-serializer-22.4.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-22.4.3.tgz",
|
||||
"integrity": "sha512-uPaUAppx4VUfJ0QDerpNdF43F68eqKWCzzhUlKNDsUPhjOon7ZehR4C809GCqh765FoMRtTVUVnGvIoskkYHiw=="
|
||||
}
|
||||
}
|
||||
|
@ -10519,7 +10519,7 @@
|
|||
},
|
||||
"npmlog": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "http://registry.npmjs.org/npmlog/-/npmlog-2.0.4.tgz",
|
||||
"resolved": "https://registry.npmjs.org/npmlog/-/npmlog-2.0.4.tgz",
|
||||
"integrity": "sha1-mLUlMPJRTKkNCexbIsiEZyI3VpI=",
|
||||
"requires": {
|
||||
"ansi": "~0.3.1",
|
||||
|
@ -11044,7 +11044,7 @@
|
|||
},
|
||||
"pify": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
|
||||
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw="
|
||||
},
|
||||
"pinkie": {
|
||||
|
@ -11189,7 +11189,7 @@
|
|||
},
|
||||
"kind-of": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "http://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz",
|
||||
"integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ="
|
||||
}
|
||||
}
|
||||
|
@ -11558,11 +11558,6 @@
|
|||
"bitcoin-ops": "^1.3.0"
|
||||
}
|
||||
},
|
||||
"qr.js": {
|
||||
"version": "0.0.0",
|
||||
"resolved": "https://registry.npmjs.org/qr.js/-/qr.js-0.0.0.tgz",
|
||||
"integrity": "sha1-ys6GOG9ZoNuAUPqQ2baw6IoeNk8="
|
||||
},
|
||||
"qrcode-terminal": {
|
||||
"version": "0.11.0",
|
||||
"resolved": "https://registry.npmjs.org/qrcode-terminal/-/qrcode-terminal-0.11.0.tgz",
|
||||
|
@ -11960,7 +11955,7 @@
|
|||
},
|
||||
"react-native-elements": {
|
||||
"version": "0.19.1",
|
||||
"resolved": "http://registry.npmjs.org/react-native-elements/-/react-native-elements-0.19.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/react-native-elements/-/react-native-elements-0.19.1.tgz",
|
||||
"integrity": "sha1-+Stp2GShUCFdAfgf48UqnK2oPkU=",
|
||||
"requires": {
|
||||
"lodash.isempty": "^4.4.0",
|
||||
|
@ -12009,7 +12004,7 @@
|
|||
},
|
||||
"react-native-maps": {
|
||||
"version": "0.21.0",
|
||||
"resolved": "http://registry.npmjs.org/react-native-maps/-/react-native-maps-0.21.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/react-native-maps/-/react-native-maps-0.21.0.tgz",
|
||||
"integrity": "sha512-FkCCV1AyaT5ut5ZTKNIdFWBxRUXZovGTydy7U4Cyifj2dv0Q3Sv21B0Myj+aoGhJhvBJzxsU25dDGQN3TP7b/Q==",
|
||||
"requires": {
|
||||
"babel-plugin-module-resolver": "^2.3.0",
|
||||
|
@ -12117,16 +12112,6 @@
|
|||
"react-native-animatable": "^1.2.4"
|
||||
}
|
||||
},
|
||||
"react-native-qrcode": {
|
||||
"version": "0.2.7",
|
||||
"resolved": "https://registry.npmjs.org/react-native-qrcode/-/react-native-qrcode-0.2.7.tgz",
|
||||
"integrity": "sha512-Xvc3T1h95zA9tbRxiMkKethDYpPwKcqDPIHe9Cxt7pM+lma9dSzd6yXGGLGeZmFU/SmHMK+4bTnDltUv1s4Jnw==",
|
||||
"requires": {
|
||||
"create-react-class": "^15.6.0",
|
||||
"prop-types": "^15.5.10",
|
||||
"qr.js": "0.0.0"
|
||||
}
|
||||
},
|
||||
"react-native-randombytes": {
|
||||
"version": "3.5.1",
|
||||
"resolved": "https://registry.npmjs.org/react-native-randombytes/-/react-native-randombytes-3.5.1.tgz",
|
||||
|
@ -12284,7 +12269,7 @@
|
|||
},
|
||||
"react-native-tab-view": {
|
||||
"version": "0.0.77",
|
||||
"resolved": "http://registry.npmjs.org/react-native-tab-view/-/react-native-tab-view-0.0.77.tgz",
|
||||
"resolved": "https://registry.npmjs.org/react-native-tab-view/-/react-native-tab-view-0.0.77.tgz",
|
||||
"integrity": "sha512-9vjD4Ly1Zlum1Y4g23ODpi/F3gYIUIsKWrsZO/Oh5cuX1eiB1DRVn11nY1z+j/hsQfhfyW6nDlmySyDvYQvYCA==",
|
||||
"requires": {
|
||||
"prop-types": "^15.6.0"
|
||||
|
@ -12595,7 +12580,7 @@
|
|||
},
|
||||
"regexpp": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "http://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz",
|
||||
"integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==",
|
||||
"dev": true
|
||||
},
|
||||
|
@ -12611,7 +12596,7 @@
|
|||
},
|
||||
"regjsgen": {
|
||||
"version": "0.2.0",
|
||||
"resolved": "http://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz",
|
||||
"integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc="
|
||||
},
|
||||
"regjsparser": {
|
||||
|
@ -12955,7 +12940,7 @@
|
|||
},
|
||||
"safe-regex": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
|
||||
"integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
|
||||
"requires": {
|
||||
"ret": "~0.1.10"
|
||||
|
@ -13314,7 +13299,7 @@
|
|||
},
|
||||
"serialize-error": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "http://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz",
|
||||
"integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go="
|
||||
},
|
||||
"serve-static": {
|
||||
|
@ -13434,7 +13419,7 @@
|
|||
},
|
||||
"xmlbuilder": {
|
||||
"version": "8.2.2",
|
||||
"resolved": "http://registry.npmjs.org/xmlbuilder/-/xmlbuilder-8.2.2.tgz",
|
||||
"resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-8.2.2.tgz",
|
||||
"integrity": "sha1-aSSGc0ELS6QuGmE2VR0pIjNap3M="
|
||||
}
|
||||
}
|
||||
|
@ -13493,7 +13478,7 @@
|
|||
},
|
||||
"slugid": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "http://registry.npmjs.org/slugid/-/slugid-1.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/slugid/-/slugid-1.1.0.tgz",
|
||||
"integrity": "sha1-4J8AiZwJ9acFjtw23UnwRv1QqCo=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -13502,7 +13487,7 @@
|
|||
"dependencies": {
|
||||
"uuid": {
|
||||
"version": "2.0.3",
|
||||
"resolved": "http://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz",
|
||||
"integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=",
|
||||
"dev": true
|
||||
}
|
||||
|
@ -13930,7 +13915,7 @@
|
|||
},
|
||||
"eslint-plugin-import": {
|
||||
"version": "2.9.0",
|
||||
"resolved": "http://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.9.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.9.0.tgz",
|
||||
"integrity": "sha1-JgAu+/ylmJtyiKwEdQi9JPIXsWk=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -13981,7 +13966,7 @@
|
|||
},
|
||||
"eslint-plugin-react": {
|
||||
"version": "7.7.0",
|
||||
"resolved": "http://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.7.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.7.0.tgz",
|
||||
"integrity": "sha512-KC7Snr4YsWZD5flu6A5c0AcIZidzW3Exbqp7OT67OaD2AppJtlBr/GuPrW/vaQM/yfZotEvKAdrxrO+v8vwYJA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -14222,7 +14207,7 @@
|
|||
},
|
||||
"strip-ansi": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
|
||||
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
|
||||
"requires": {
|
||||
"ansi-regex": "^2.0.0"
|
||||
|
@ -14235,7 +14220,7 @@
|
|||
},
|
||||
"strip-eof": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "http://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
|
||||
"integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8="
|
||||
},
|
||||
"strip-json-comments": {
|
||||
|
@ -15286,7 +15271,7 @@
|
|||
"dependencies": {
|
||||
"uuid": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "http://registry.npmjs.org/uuid/-/uuid-3.0.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.0.1.tgz",
|
||||
"integrity": "sha1-ZUS7ot/ajBzxfmKaOjBeK7H+5sE="
|
||||
}
|
||||
}
|
||||
|
@ -15426,7 +15411,7 @@
|
|||
},
|
||||
"xmlbuilder": {
|
||||
"version": "8.2.2",
|
||||
"resolved": "http://registry.npmjs.org/xmlbuilder/-/xmlbuilder-8.2.2.tgz",
|
||||
"resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-8.2.2.tgz",
|
||||
"integrity": "sha1-aSSGc0ELS6QuGmE2VR0pIjNap3M=",
|
||||
"dev": true
|
||||
}
|
||||
|
@ -15439,7 +15424,7 @@
|
|||
},
|
||||
"xmlbuilder": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "http://registry.npmjs.org/xmlbuilder/-/xmlbuilder-4.0.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-4.0.0.tgz",
|
||||
"integrity": "sha1-mLj2UcowqmJANvEn0RzGbce5B6M=",
|
||||
"requires": {
|
||||
"lodash": "^3.5.0"
|
||||
|
|
|
@ -69,7 +69,6 @@
|
|||
"react-native-level-fs": "^3.0.0",
|
||||
"react-native-material-dropdown": "^0.11.1",
|
||||
"react-native-modal": "^6.5.0",
|
||||
"react-native-qrcode": "^0.2.7",
|
||||
"react-native-snap-carousel": "^3.7.4",
|
||||
"react-navigation": "^2.17.0",
|
||||
"react-test-render": "^1.1.1",
|
||||
|
|
|
@ -89,11 +89,10 @@ export default class ReceiveDetails extends Component {
|
|||
<QRCode
|
||||
content={this.state.address}
|
||||
size={(is.ipad() && 300) || 300}
|
||||
bgColor={BlueApp.settings.foregroundColor}
|
||||
fgColor={BlueApp.settings.brandingColor}
|
||||
color={BlueApp.settings.foregroundColor}
|
||||
backgroundColor={BlueApp.settings.brandingColor}
|
||||
logo={require('../../img/qr-code.png')}
|
||||
/>
|
||||
|
||||
<TouchableOpacity onPress={this.copyToClipboard}>
|
||||
<Animated.Text style={styles.address} numberOfLines={0}>
|
||||
{this.state.addressText}
|
||||
|
|
|
@ -124,7 +124,9 @@ export default class Confirm extends Component {
|
|||
})
|
||||
}
|
||||
>
|
||||
<Text style={{ color: '#0c2550', fontSize: 15, fontWeight: '500', alignSelf: 'center' }}>{loc.transactions.details.title}</Text>
|
||||
<Text style={{ color: '#0c2550', fontSize: 15, fontWeight: '500', alignSelf: 'center' }}>
|
||||
{loc.transactions.details.transaction_details}
|
||||
</Text>
|
||||
</TouchableOpacity>
|
||||
</BlueCard>
|
||||
</SafeBlueArea>
|
||||
|
|
|
@ -100,6 +100,7 @@ export default class WalletsAdd extends Component {
|
|||
}}
|
||||
style={{ flex: 1, marginHorizontal: 8, color: '#81868e' }}
|
||||
editable={!this.state.isLoading}
|
||||
underlineColorAndroid="transparent"
|
||||
/>
|
||||
</View>
|
||||
<BlueFormLabel>{loc.wallets.add.wallet_type}</BlueFormLabel>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/* global alert */
|
||||
import React, { Component } from 'react';
|
||||
import { ActivityIndicator, View, Button, Text, TextInput, Alert } from 'react-native';
|
||||
import { BlueButton, SafeBlueArea, BlueCard, BlueFormInputAddress, BlueSpacing20, BlueNavigationStyle } from '../../BlueComponents';
|
||||
import { BlueButton, SafeBlueArea, BlueCard, BlueSpacing20, BlueNavigationStyle } from '../../BlueComponents';
|
||||
import PropTypes from 'prop-types';
|
||||
import { LightningCustodianWallet } from '../../class/lightning-custodian-wallet';
|
||||
let EV = require('../../events');
|
||||
|
@ -77,9 +77,12 @@ export default class WalletDetails extends Component {
|
|||
{(() => {
|
||||
if (this.state.wallet.getAddress()) {
|
||||
return (
|
||||
<View>
|
||||
<BlueFormInputAddress value={this.state.wallet.getAddress()} editable />
|
||||
</View>
|
||||
<React.Fragment>
|
||||
<Text style={{ color: '#0c2550', fontWeight: '500', fontSize: 14, marginVertical: 12 }}>
|
||||
{loc.wallets.details.address.toLowerCase()}
|
||||
</Text>
|
||||
<Text style={{ color: '#81868e', fontWeight: '500', fontSize: 14 }}>{this.state.wallet.getAddress()}</Text>
|
||||
</React.Fragment>
|
||||
);
|
||||
}
|
||||
})()}
|
||||
|
@ -154,11 +157,11 @@ export default class WalletDetails extends Component {
|
|||
<BlueSpacing20 />
|
||||
|
||||
<Button
|
||||
title={loc.wallets.details.delete}
|
||||
title={loc.wallets.details.title}
|
||||
color="#d0021b"
|
||||
onPress={() =>
|
||||
Alert.alert(
|
||||
'Alert',
|
||||
loc.wallets.details.delete + ' ' + loc.wallets.details.title,
|
||||
loc.wallets.details.are_you_sure,
|
||||
[
|
||||
{
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import React, { Component } from 'react';
|
||||
import { Dimensions, ActivityIndicator, View } from 'react-native';
|
||||
import QRCode from 'react-native-qrcode';
|
||||
import { QRCode } from 'react-native-custom-qr-codes';
|
||||
import { BlueSpacing40, SafeBlueArea, BlueCard, BlueText, BlueHeaderDefaultSub } from '../../BlueComponents';
|
||||
import PropTypes from 'prop-types';
|
||||
/** @type {AppStorage} */
|
||||
|
@ -92,10 +92,11 @@ export default class WalletExport extends Component {
|
|||
}
|
||||
})()}
|
||||
<QRCode
|
||||
value={this.state.wallet.getSecret()}
|
||||
content={this.state.wallet.getSecret()}
|
||||
size={this.determineSize()}
|
||||
bgColor={BlueApp.settings.foregroundColor}
|
||||
fgColor={BlueApp.settings.brandingColor}
|
||||
color={BlueApp.settings.foregroundColor}
|
||||
backgroundColor={BlueApp.settings.brandingColor}
|
||||
logo={require('../../img/qr-code.png')}
|
||||
/>
|
||||
<BlueText style={{ marginVertical: 8 }}>{this.state.wallet.getSecret()}</BlueText>
|
||||
</BlueCard>
|
||||
|
|
|
@ -333,7 +333,6 @@ export default class WalletsList extends Component {
|
|||
}}
|
||||
/>
|
||||
</BlueList>
|
||||
); })()}
|
||||
</ScrollView>
|
||||
</SafeBlueArea>
|
||||
);
|
||||
|
|
|
@ -20,7 +20,6 @@ import {
|
|||
BlueTransactionOffchainIcon,
|
||||
BlueSendButtonIcon,
|
||||
BlueReceiveButtonIcon,
|
||||
BlueList,
|
||||
BlueListItem,
|
||||
} from '../../BlueComponents';
|
||||
import { Icon } from 'react-native-elements';
|
||||
|
@ -286,7 +285,7 @@ export default class WalletTransactions extends Component {
|
|||
return '';
|
||||
}
|
||||
|
||||
_keyExtractor = (item, index) => index.toString();
|
||||
_keyExtractor = (_item, index) => index.toString();
|
||||
|
||||
renderListHeaderComponent = () => {
|
||||
return (
|
||||
|
@ -335,140 +334,137 @@ export default class WalletTransactions extends Component {
|
|||
);
|
||||
}
|
||||
})()}
|
||||
<BlueList>
|
||||
<FlatList
|
||||
style={{ flex: 1 }}
|
||||
ListHeaderComponent={this.renderListHeaderComponent}
|
||||
ListEmptyComponent={
|
||||
<View style={{ top: 50, height: 100 }}>
|
||||
<FlatList
|
||||
ListHeaderComponent={this.renderListHeaderComponent}
|
||||
ListEmptyComponent={
|
||||
<View style={{ top: 50, height: 100 }}>
|
||||
<Text
|
||||
style={{
|
||||
fontSize: 18,
|
||||
color: '#9aa0aa',
|
||||
textAlign: 'center',
|
||||
}}
|
||||
>
|
||||
{(this.isLightning() &&
|
||||
'Lightning wallet should be used for your daily\ntransactions. Fees are unfairly cheap and\nspeed is blazing fast.') ||
|
||||
loc.wallets.list.empty_txs1}
|
||||
</Text>
|
||||
<Text
|
||||
style={{
|
||||
fontSize: 18,
|
||||
color: '#9aa0aa',
|
||||
textAlign: 'center',
|
||||
}}
|
||||
>
|
||||
{(this.isLightning() && '\nTo start using it tap on "manage funds"\nand topup your balance') ||
|
||||
loc.wallets.list.empty_txs2}
|
||||
</Text>
|
||||
|
||||
<Text />
|
||||
<Text />
|
||||
|
||||
{!this.isLightning() && (
|
||||
<Text
|
||||
style={{
|
||||
fontSize: 18,
|
||||
color: '#9aa0aa',
|
||||
textAlign: 'center',
|
||||
textDecorationLine: 'underline',
|
||||
}}
|
||||
>
|
||||
{(this.isLightning() &&
|
||||
'Lightning wallet should be used for your daily\ntransactions. Fees are unfairly cheap and\nspeed is blazing fast.') ||
|
||||
loc.wallets.list.empty_txs1}
|
||||
</Text>
|
||||
<Text
|
||||
style={{
|
||||
fontSize: 18,
|
||||
color: '#9aa0aa',
|
||||
textAlign: 'center',
|
||||
}}
|
||||
>
|
||||
{(this.isLightning() && '\nTo start using it tap on "manage funds"\nand topup your balance') ||
|
||||
loc.wallets.list.empty_txs2}
|
||||
</Text>
|
||||
|
||||
<Text />
|
||||
<Text />
|
||||
|
||||
{!this.isLightning() && (
|
||||
<Text
|
||||
style={{
|
||||
fontSize: 18,
|
||||
color: '#9aa0aa',
|
||||
textAlign: 'center',
|
||||
textDecorationLine: 'underline',
|
||||
}}
|
||||
onPress={() =>
|
||||
this.props.navigation.navigate('BuyBitcoin', {
|
||||
address: this.state.wallet.getAddress(),
|
||||
secret: this.state.wallet.getSecret(),
|
||||
})
|
||||
}
|
||||
>
|
||||
{loc.wallets.list.tap_here_to_buy}
|
||||
</Text>
|
||||
)}
|
||||
</View>
|
||||
}
|
||||
refreshControl={<RefreshControl onRefresh={() => this.refreshTransactions()} refreshing={this.state.isTransactionsLoading} />}
|
||||
data={this.state.dataSource}
|
||||
extraData={this.state.dataSource}
|
||||
keyExtractor={this._keyExtractor}
|
||||
renderItem={rowData => {
|
||||
return (
|
||||
<BlueListItem
|
||||
avatar={(() => {
|
||||
// is it lightning refill tx?
|
||||
if (rowData.item.category === 'receive' && rowData.item.confirmations < 3) {
|
||||
return (
|
||||
<View style={{ width: 25 }}>
|
||||
<BlueTransactionPendingIcon />
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
if (rowData.item.type && rowData.item.type === 'bitcoind_tx') {
|
||||
return (
|
||||
<View style={{ width: 25 }}>
|
||||
<BlueTransactionOnchainIcon />
|
||||
</View>
|
||||
);
|
||||
}
|
||||
if (rowData.item.type === 'paid_invoice') {
|
||||
// is it lightning offchain payment?
|
||||
return (
|
||||
<View style={{ width: 25 }}>
|
||||
<BlueTransactionOffchainIcon />
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
if (!rowData.item.confirmations) {
|
||||
return (
|
||||
<View style={{ width: 25 }}>
|
||||
<BlueTransactionPendingIcon />
|
||||
</View>
|
||||
);
|
||||
} else if (rowData.item.value < 0) {
|
||||
return (
|
||||
<View style={{ width: 25 }}>
|
||||
<BlueTransactionOutgoingIcon />
|
||||
</View>
|
||||
);
|
||||
} else {
|
||||
return (
|
||||
<View style={{ width: 25 }}>
|
||||
<BlueTransactionIncommingIcon />
|
||||
</View>
|
||||
);
|
||||
}
|
||||
})()}
|
||||
title={loc.transactionTimeToReadable(rowData.item.received)}
|
||||
subtitle={
|
||||
(rowData.item.confirmations < 7 ? loc.transactions.list.conf + ': ' + rowData.item.confirmations + ' ' : '') +
|
||||
this.txMemo(rowData.item.hash) +
|
||||
(rowData.item.memo || '')
|
||||
onPress={() =>
|
||||
this.props.navigation.navigate('BuyBitcoin', {
|
||||
address: this.state.wallet.getAddress(),
|
||||
secret: this.state.wallet.getSecret(),
|
||||
})
|
||||
}
|
||||
onPress={() => {
|
||||
if (rowData.item.hash) {
|
||||
navigate('TransactionDetails', {
|
||||
hash: rowData.item.hash,
|
||||
});
|
||||
}
|
||||
}}
|
||||
badge={{
|
||||
value: 3,
|
||||
textStyle: { color: 'orange' },
|
||||
containerStyle: { marginTop: 0 },
|
||||
}}
|
||||
hideChevron
|
||||
rightTitle={new BigNumber((rowData.item.value && rowData.item.value) || 0).dividedBy(100000000).toString()}
|
||||
rightTitleStyle={{
|
||||
fontWeight: '600',
|
||||
fontSize: 16,
|
||||
color: rowData.item.value / 100000000 < 0 ? BlueApp.settings.foregroundColor : '#37c0a1',
|
||||
}}
|
||||
/>
|
||||
);
|
||||
}}
|
||||
/>
|
||||
</BlueList>
|
||||
>
|
||||
{loc.wallets.list.tap_here_to_buy}
|
||||
</Text>
|
||||
)}
|
||||
</View>
|
||||
}
|
||||
refreshControl={<RefreshControl onRefresh={() => this.refreshTransactions()} refreshing={this.state.isTransactionsLoading} />}
|
||||
data={this.state.dataSource}
|
||||
extraData={this.state.dataSource}
|
||||
keyExtractor={this._keyExtractor}
|
||||
renderItem={rowData => {
|
||||
return (
|
||||
<BlueListItem
|
||||
avatar={(() => {
|
||||
// is it lightning refill tx?
|
||||
if (rowData.item.category === 'receive' && rowData.item.confirmations < 3) {
|
||||
return (
|
||||
<View style={{ width: 25 }}>
|
||||
<BlueTransactionPendingIcon />
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
if (rowData.item.type && rowData.item.type === 'bitcoind_tx') {
|
||||
return (
|
||||
<View style={{ width: 25 }}>
|
||||
<BlueTransactionOnchainIcon />
|
||||
</View>
|
||||
);
|
||||
}
|
||||
if (rowData.item.type === 'paid_invoice') {
|
||||
// is it lightning offchain payment?
|
||||
return (
|
||||
<View style={{ width: 25 }}>
|
||||
<BlueTransactionOffchainIcon />
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
if (!rowData.item.confirmations) {
|
||||
return (
|
||||
<View style={{ width: 25 }}>
|
||||
<BlueTransactionPendingIcon />
|
||||
</View>
|
||||
);
|
||||
} else if (rowData.item.value < 0) {
|
||||
return (
|
||||
<View style={{ width: 25 }}>
|
||||
<BlueTransactionOutgoingIcon />
|
||||
</View>
|
||||
);
|
||||
} else {
|
||||
return (
|
||||
<View style={{ width: 25 }}>
|
||||
<BlueTransactionIncommingIcon />
|
||||
</View>
|
||||
);
|
||||
}
|
||||
})()}
|
||||
title={loc.transactionTimeToReadable(rowData.item.received)}
|
||||
subtitle={
|
||||
(rowData.item.confirmations < 7 ? loc.transactions.list.conf + ': ' + rowData.item.confirmations + ' ' : '') +
|
||||
this.txMemo(rowData.item.hash) +
|
||||
(rowData.item.memo || '')
|
||||
}
|
||||
onPress={() => {
|
||||
if (rowData.item.hash) {
|
||||
navigate('TransactionDetails', {
|
||||
hash: rowData.item.hash,
|
||||
});
|
||||
}
|
||||
}}
|
||||
badge={{
|
||||
value: 3,
|
||||
textStyle: { color: 'orange' },
|
||||
containerStyle: { marginTop: 0 },
|
||||
}}
|
||||
hideChevron
|
||||
rightTitle={new BigNumber((rowData.item.value && rowData.item.value) || 0).dividedBy(100000000).toString()}
|
||||
rightTitleStyle={{
|
||||
fontWeight: '600',
|
||||
fontSize: 16,
|
||||
color: rowData.item.value / 100000000 < 0 ? BlueApp.settings.foregroundColor : '#37c0a1',
|
||||
}}
|
||||
/>
|
||||
);
|
||||
}}
|
||||
/>
|
||||
</View>
|
||||
<View
|
||||
style={{
|
||||
|
|
Loading…
Add table
Reference in a new issue