@ledgerhq/live-common 21.22.0 → 21.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/account/formatters.d.ts.map +1 -1
- package/lib/account/formatters.js +1 -0
- package/lib/account/formatters.js.map +1 -1
- package/lib/account/support.d.ts.map +1 -1
- package/lib/account/support.js +1 -0
- package/lib/account/support.js.map +1 -1
- package/lib/data/icons/react/index.d.ts +1 -0
- package/lib/data/icons/react/index.d.ts.map +1 -1
- package/lib/data/icons/react/index.js +4 -2
- package/lib/data/icons/react/index.js.map +1 -1
- package/lib/data/icons/react/sol.js +4 -2
- package/lib/data/icons/react/sol.js.map +1 -1
- package/lib/data/icons/react/ssv.d.ts +8 -0
- package/lib/data/icons/react/ssv.d.ts.map +1 -0
- package/lib/data/icons/react/ssv.js +31 -0
- package/lib/data/icons/react/ssv.js.map +1 -0
- package/lib/data/icons/reactNative/index.d.ts +1 -0
- package/lib/data/icons/reactNative/index.d.ts.map +1 -1
- package/lib/data/icons/reactNative/index.js +4 -2
- package/lib/data/icons/reactNative/index.js.map +1 -1
- package/lib/data/icons/reactNative/sol.js +4 -2
- package/lib/data/icons/reactNative/sol.js.map +1 -1
- package/lib/data/icons/reactNative/ssv.d.ts +8 -0
- package/lib/data/icons/reactNative/ssv.d.ts.map +1 -0
- package/lib/data/icons/reactNative/ssv.js +32 -0
- package/lib/data/icons/reactNative/ssv.js.map +1 -0
- package/lib/derivation.d.ts.map +1 -1
- package/lib/derivation.js +0 -3
- package/lib/derivation.js.map +1 -1
- package/lib/env.d.ts +10 -10
- package/lib/env.d.ts.map +1 -1
- package/lib/env.js +5 -5
- package/lib/env.js.map +1 -1
- package/lib/env.react.d.ts +1 -1
- package/lib/env.react.d.ts.map +1 -1
- package/lib/families/algorand/account.d.ts.map +1 -1
- package/lib/families/algorand/account.js +0 -4
- package/lib/families/algorand/account.js.map +1 -1
- package/lib/families/algorand/api/algodv2.d.ts +5 -0
- package/lib/families/algorand/api/algodv2.d.ts.map +1 -0
- package/lib/families/algorand/api/algodv2.js +118 -0
- package/lib/families/algorand/api/algodv2.js.map +1 -0
- package/lib/families/algorand/api/algodv2.types.d.ts +24 -0
- package/lib/families/algorand/api/algodv2.types.d.ts.map +1 -0
- package/lib/families/algorand/api/algodv2.types.js +3 -0
- package/lib/families/algorand/api/algodv2.types.js.map +1 -0
- package/lib/families/algorand/api/index.d.ts +5 -0
- package/lib/families/algorand/api/index.d.ts.map +1 -0
- package/lib/families/algorand/api/index.js +17 -0
- package/lib/families/algorand/api/index.js.map +1 -0
- package/lib/families/algorand/api/indexer.d.ts +3 -0
- package/lib/families/algorand/api/indexer.d.ts.map +1 -0
- package/lib/families/algorand/api/indexer.js +134 -0
- package/lib/families/algorand/api/indexer.js.map +1 -0
- package/lib/families/algorand/api/indexer.types.d.ts +35 -0
- package/lib/families/algorand/api/indexer.types.d.ts.map +1 -0
- package/lib/families/algorand/api/indexer.types.js +10 -0
- package/lib/families/algorand/api/indexer.types.js.map +1 -0
- package/lib/families/algorand/bridge/js.d.ts +8 -0
- package/lib/families/algorand/bridge/js.d.ts.map +1 -0
- package/lib/families/algorand/bridge/js.js +85 -0
- package/lib/families/algorand/bridge/js.js.map +1 -0
- package/lib/families/algorand/bridge/libcore.d.ts +3 -3
- package/lib/families/algorand/bridge/libcore.d.ts.map +1 -1
- package/lib/families/algorand/bridge/libcore.js.map +1 -1
- package/lib/families/algorand/bridge/mock.d.ts +2 -2
- package/lib/families/algorand/bridge/mock.d.ts.map +1 -1
- package/lib/families/algorand/bridge/mock.js.map +1 -1
- package/lib/families/algorand/buildTransaction.d.ts +8 -0
- package/lib/families/algorand/buildTransaction.d.ts.map +1 -0
- package/lib/families/algorand/buildTransaction.js +101 -0
- package/lib/families/algorand/buildTransaction.js.map +1 -0
- package/lib/families/algorand/cli-transaction.js +1 -1
- package/lib/families/algorand/cli-transaction.js.map +1 -1
- package/lib/families/algorand/deviceTransactionConfig.d.ts +2 -2
- package/lib/families/algorand/deviceTransactionConfig.d.ts.map +1 -1
- package/lib/families/algorand/deviceTransactionConfig.js +0 -13
- package/lib/families/algorand/deviceTransactionConfig.js.map +1 -1
- package/lib/families/algorand/hw-getAddress.d.ts.map +1 -1
- package/lib/families/algorand/hw-getAddress.js +2 -24
- package/lib/families/algorand/hw-getAddress.js.map +1 -1
- package/lib/families/algorand/js-broadcast.d.ts +9 -0
- package/lib/families/algorand/js-broadcast.d.ts.map +1 -0
- package/lib/families/algorand/js-broadcast.js +63 -0
- package/lib/families/algorand/js-broadcast.js.map +1 -0
- package/lib/families/algorand/js-estimateMaxSpendable.d.ts +9 -0
- package/lib/families/algorand/js-estimateMaxSpendable.d.ts.map +1 -0
- package/lib/families/algorand/js-estimateMaxSpendable.js +89 -0
- package/lib/families/algorand/js-estimateMaxSpendable.js.map +1 -0
- package/lib/families/algorand/js-getFeesForTransaction.d.ts +5 -0
- package/lib/families/algorand/js-getFeesForTransaction.d.ts.map +1 -0
- package/lib/families/algorand/js-getFeesForTransaction.js +69 -0
- package/lib/families/algorand/js-getFeesForTransaction.js.map +1 -0
- package/lib/families/algorand/js-getTransactionStatus.d.ts +11 -0
- package/lib/families/algorand/js-getTransactionStatus.d.ts.map +1 -0
- package/lib/families/algorand/js-getTransactionStatus.js +201 -0
- package/lib/families/algorand/js-getTransactionStatus.js.map +1 -0
- package/lib/families/algorand/js-prepareTransaction.d.ts +5 -0
- package/lib/families/algorand/js-prepareTransaction.d.ts.map +1 -0
- package/lib/families/algorand/js-prepareTransaction.js +101 -0
- package/lib/families/algorand/js-prepareTransaction.js.map +1 -0
- package/lib/families/algorand/js-signOperation.d.ts +10 -0
- package/lib/families/algorand/js-signOperation.d.ts.map +1 -0
- package/lib/families/algorand/js-signOperation.js +164 -0
- package/lib/families/algorand/js-signOperation.js.map +1 -0
- package/lib/families/algorand/js-synchronization.d.ts +10 -0
- package/lib/families/algorand/js-synchronization.d.ts.map +1 -0
- package/lib/families/algorand/js-synchronization.js +411 -0
- package/lib/families/algorand/js-synchronization.js.map +1 -0
- package/lib/families/algorand/libcore-buildTransaction.d.ts +2 -2
- package/lib/families/algorand/libcore-buildTransaction.d.ts.map +1 -1
- package/lib/families/algorand/libcore-getFeesForTransaction.d.ts +4 -4
- package/lib/families/algorand/libcore-getFeesForTransaction.d.ts.map +1 -1
- package/lib/families/algorand/libcore-getFeesForTransaction.js +2 -2
- package/lib/families/algorand/libcore-getFeesForTransaction.js.map +1 -1
- package/lib/families/algorand/libcore-postBuildAccount.d.ts.map +1 -1
- package/lib/families/algorand/libcore-postBuildAccount.js +5 -11
- package/lib/families/algorand/libcore-postBuildAccount.js.map +1 -1
- package/lib/families/algorand/libcore-signOperation.d.ts +2 -2
- package/lib/families/algorand/libcore-signOperation.d.ts.map +1 -1
- package/lib/families/algorand/libcore-signOperation.js.map +1 -1
- package/lib/families/algorand/logic.d.ts +10 -0
- package/lib/families/algorand/logic.d.ts.map +1 -1
- package/lib/families/algorand/logic.js +79 -1
- package/lib/families/algorand/logic.js.map +1 -1
- package/lib/families/algorand/mock.d.ts.map +1 -1
- package/lib/families/algorand/mock.js +4 -11
- package/lib/families/algorand/mock.js.map +1 -1
- package/lib/families/algorand/serialization.js +4 -4
- package/lib/families/algorand/serialization.js.map +1 -1
- package/lib/families/algorand/specs.d.ts +2 -2
- package/lib/families/algorand/specs.d.ts.map +1 -1
- package/lib/families/algorand/specs.js +8 -16
- package/lib/families/algorand/specs.js.map +1 -1
- package/lib/families/algorand/speculos-deviceActions.d.ts +2 -2
- package/lib/families/algorand/speculos-deviceActions.d.ts.map +1 -1
- package/lib/families/algorand/speculos-deviceActions.js +4 -0
- package/lib/families/algorand/speculos-deviceActions.js.map +1 -1
- package/lib/families/algorand/test-dataset.d.ts +2 -2
- package/lib/families/algorand/test-dataset.d.ts.map +1 -1
- package/lib/families/algorand/test-dataset.js +1 -2
- package/lib/families/algorand/test-dataset.js.map +1 -1
- package/lib/families/algorand/tokens.d.ts.map +1 -1
- package/lib/families/algorand/tokens.js.map +1 -1
- package/lib/families/algorand/transaction.d.ts +5 -5
- package/lib/families/algorand/transaction.d.ts.map +1 -1
- package/lib/families/algorand/transaction.js.map +1 -1
- package/lib/families/algorand/types.d.ts +7 -5
- package/lib/families/algorand/types.d.ts.map +1 -1
- package/lib/families/algorand/types.js.map +1 -1
- package/lib/families/bitcoin/js-prepareTransaction.d.ts.map +1 -1
- package/lib/families/bitcoin/js-prepareTransaction.js +3 -2
- package/lib/families/bitcoin/js-prepareTransaction.js.map +1 -1
- package/lib/families/bitcoin/js-synchronisation.d.ts.map +1 -1
- package/lib/families/bitcoin/js-synchronisation.js +13 -14
- package/lib/families/bitcoin/js-synchronisation.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/base.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/base.js +30 -22
- package/lib/families/bitcoin/wallet-btc/crypto/base.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/bip32.d.ts +11 -0
- package/lib/families/bitcoin/wallet-btc/crypto/bip32.d.ts.map +1 -0
- package/lib/families/bitcoin/wallet-btc/crypto/bip32.js +32 -0
- package/lib/families/bitcoin/wallet-btc/crypto/bip32.js.map +1 -0
- package/lib/families/bitcoin/wallet-btc/crypto/decred.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/decred.js +3 -115
- package/lib/families/bitcoin/wallet-btc/crypto/decred.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/storage/index.d.ts +24 -8
- package/lib/families/bitcoin/wallet-btc/storage/index.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/storage/index.js +114 -128
- package/lib/families/bitcoin/wallet-btc/storage/index.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/storage/types.d.ts +8 -7
- package/lib/families/bitcoin/wallet-btc/storage/types.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/xpub.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/xpub.js +42 -63
- package/lib/families/bitcoin/wallet-btc/xpub.js.map +1 -1
- package/lib/families/tezos/bridge/js.d.ts.map +1 -1
- package/lib/families/tezos/bridge/js.js +38 -17
- package/lib/families/tezos/bridge/js.js.map +1 -1
- package/lib/families/tezos/signOperation.d.ts.map +1 -1
- package/lib/families/tezos/signOperation.js +9 -0
- package/lib/families/tezos/signOperation.js.map +1 -1
- package/lib/families/tezos/synchronisation.js +1 -1
- package/lib/families/tezos/synchronisation.js.map +1 -1
- package/lib/generated/bridge/js.d.ts +4 -0
- package/lib/generated/bridge/js.d.ts.map +1 -1
- package/lib/generated/bridge/js.js +26 -24
- package/lib/generated/bridge/js.js.map +1 -1
- package/lib/generated/bridge/libcore.d.ts +1 -1
- package/lib/generated/bridge/mock.d.ts +1 -1
- package/lib/generated/specs.d.ts +1 -1
- package/lib/generated/speculos-deviceActions.d.ts +1 -1
- package/lib/generated/test-dataset.d.ts +1 -1
- package/lib/generated/transaction.d.ts +3 -3
- package/lib/libcore/buildAccount/index.d.ts.map +1 -1
- package/lib/libcore/buildAccount/index.js +0 -1
- package/lib/libcore/buildAccount/index.js.map +1 -1
- package/lib/mock/account.js +21 -21
- package/lib/mock/account.js.map +1 -1
- package/lib/types/operation.d.ts +1 -1
- package/lib/types/operation.d.ts.map +1 -1
- package/package.json +4 -3
- package/src/__tests__/__snapshots__/all.libcore.ts.snap +7 -114
- package/src/account/formatters.ts +1 -0
- package/src/account/support.ts +1 -0
- package/src/data/icons/react/index.tsx +1 -0
- package/src/data/icons/react/sol.tsx +1 -1
- package/src/data/icons/react/ssv.tsx +12 -0
- package/src/data/icons/reactNative/index.tsx +1 -0
- package/src/data/icons/reactNative/sol.tsx +1 -1
- package/src/data/icons/reactNative/ssv.tsx +13 -0
- package/src/data/icons/svg/SOL.svg +1 -3
- package/src/data/icons/svg/SSV.svg +4 -0
- package/src/derivation.ts +0 -2
- package/src/env.ts +5 -5
- package/src/families/algorand/account.ts +0 -9
- package/src/families/algorand/api/algodv2.ts +68 -0
- package/src/families/algorand/api/algodv2.types.ts +27 -0
- package/src/families/algorand/api/index.ts +4 -0
- package/src/families/algorand/api/indexer.ts +99 -0
- package/src/families/algorand/api/indexer.types.ts +41 -0
- package/src/families/algorand/bridge/js.ts +46 -0
- package/src/families/algorand/bridge/libcore.ts +4 -4
- package/src/families/algorand/bridge/mock.ts +3 -3
- package/src/families/algorand/buildTransaction.ts +100 -0
- package/src/families/algorand/cli-transaction.ts +1 -1
- package/src/families/algorand/deviceTransactionConfig.ts +2 -16
- package/src/families/algorand/hw-getAddress.ts +1 -10
- package/src/families/algorand/js-broadcast.ts +17 -0
- package/src/families/algorand/js-estimateMaxSpendable.ts +51 -0
- package/src/families/algorand/js-getFeesForTransaction.ts +25 -0
- package/src/families/algorand/js-getTransactionStatus.ts +178 -0
- package/src/families/algorand/js-prepareTransaction.ts +42 -0
- package/src/families/algorand/js-signOperation.ts +145 -0
- package/src/families/algorand/js-synchronization.ts +433 -0
- package/src/families/algorand/libcore-buildTransaction.ts +2 -2
- package/src/families/algorand/libcore-getFeesForTransaction.ts +4 -4
- package/src/families/algorand/libcore-postBuildAccount.ts +2 -7
- package/src/families/algorand/libcore-signOperation.ts +2 -2
- package/src/families/algorand/logic.ts +47 -0
- package/src/families/algorand/mock.ts +2 -12
- package/src/families/algorand/serialization.ts +4 -4
- package/src/families/algorand/specs.ts +16 -22
- package/src/families/algorand/speculos-deviceActions.ts +87 -82
- package/src/families/algorand/test-dataset.ts +5 -6
- package/src/families/algorand/tokens.ts +1 -0
- package/src/families/algorand/transaction.ts +13 -4
- package/src/families/algorand/types.ts +10 -5
- package/src/families/bitcoin/js-prepareTransaction.ts +3 -2
- package/src/families/bitcoin/js-synchronisation.ts +17 -15
- package/src/families/bitcoin/wallet-btc/crypto/base.ts +33 -21
- package/src/families/bitcoin/wallet-btc/crypto/bip32.ts +36 -0
- package/src/families/bitcoin/wallet-btc/crypto/decred.ts +3 -155
- package/src/families/bitcoin/wallet-btc/storage/index.ts +23 -11
- package/src/families/bitcoin/wallet-btc/storage/types.ts +8 -10
- package/src/families/bitcoin/wallet-btc/xpub.ts +14 -10
- package/src/families/tezos/bridge/js.ts +43 -18
- package/src/families/tezos/signOperation.ts +12 -0
- package/src/families/tezos/synchronisation.ts +1 -1
- package/src/generated/bridge/js.ts +3 -0
- package/src/libcore/buildAccount/index.ts +1 -2
- package/src/mock/account.ts +27 -27
- package/src/types/operation.ts +9 -4
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
2
13
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
14
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
15
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -35,8 +46,12 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
35
46
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
47
|
}
|
|
37
48
|
};
|
|
49
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
50
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
51
|
+
};
|
|
38
52
|
exports.__esModule = true;
|
|
39
53
|
var lodash_1 = require("lodash");
|
|
54
|
+
var base_1 = __importDefault(require("../crypto/base"));
|
|
40
55
|
// a mock storage class that just use js objects
|
|
41
56
|
// sql.js would be perfect for the job
|
|
42
57
|
var BitcoinLikeStorage = /** @class */ (function () {
|
|
@@ -46,172 +61,143 @@ var BitcoinLikeStorage = /** @class */ (function () {
|
|
|
46
61
|
this.primaryIndex = {};
|
|
47
62
|
// accounting
|
|
48
63
|
this.unspentUtxos = {};
|
|
64
|
+
this.addressCache = {};
|
|
49
65
|
// only needed to handle the case when the input
|
|
50
66
|
// is seen before the output (typically explorer
|
|
51
67
|
// returning unordered tx within the same block)
|
|
52
68
|
this.spentUtxos = {};
|
|
53
69
|
}
|
|
54
70
|
BitcoinLikeStorage.prototype.getLastTx = function (txFilter) {
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
(!txFilter.confirmed && !t.block)));
|
|
65
|
-
});
|
|
66
|
-
return [2 /*return*/, tx];
|
|
67
|
-
});
|
|
71
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
72
|
+
// @ts-ignore
|
|
73
|
+
var tx = (0, lodash_1.findLast)(this.txs, function (t) {
|
|
74
|
+
return ((!(0, lodash_1.has)(txFilter, "account") || t.account === txFilter.account) &&
|
|
75
|
+
(!(0, lodash_1.has)(txFilter, "index") || t.index === txFilter.index) &&
|
|
76
|
+
(!(0, lodash_1.has)(txFilter, "address") || t.address === txFilter.address) &&
|
|
77
|
+
(!(0, lodash_1.has)(txFilter, "confirmed") ||
|
|
78
|
+
(txFilter.confirmed && t.block) ||
|
|
79
|
+
(!txFilter.confirmed && !t.block)));
|
|
68
80
|
});
|
|
81
|
+
return tx;
|
|
69
82
|
};
|
|
70
83
|
BitcoinLikeStorage.prototype.getTx = function (address, hash) {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
return __generator(this, function (_a) {
|
|
74
|
-
index = "".concat(address, "-").concat(hash);
|
|
75
|
-
return [2 /*return*/, this.txs[this.primaryIndex[index]]];
|
|
76
|
-
});
|
|
77
|
-
});
|
|
84
|
+
var index = "".concat(address, "-").concat(hash);
|
|
85
|
+
return this.txs[this.primaryIndex[index]];
|
|
78
86
|
};
|
|
79
87
|
// TODO: only expose unspentUtxos
|
|
80
88
|
BitcoinLikeStorage.prototype.getAddressUnspentUtxos = function (address) {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
return __generator(this, function (_a) {
|
|
84
|
-
indexAddress = address.address;
|
|
85
|
-
return [2 /*return*/, this.unspentUtxos[indexAddress]];
|
|
86
|
-
});
|
|
87
|
-
});
|
|
89
|
+
var indexAddress = address.address;
|
|
90
|
+
return this.unspentUtxos[indexAddress];
|
|
88
91
|
};
|
|
89
92
|
BitcoinLikeStorage.prototype.appendTxs = function (txs) {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
_this.
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
var matchIndex = (0, lodash_1.findIndex)(_this.spentUtxos[indexAddress], function (input) {
|
|
117
|
-
return input.output_hash === output.output_hash &&
|
|
118
|
-
input.output_index === output.output_index;
|
|
119
|
-
});
|
|
120
|
-
if (matchIndex > -1) {
|
|
121
|
-
_this.spentUtxos[indexAddress].splice(matchIndex, 1);
|
|
122
|
-
return false;
|
|
123
|
-
}
|
|
124
|
-
return true;
|
|
125
|
-
});
|
|
93
|
+
var _this = this;
|
|
94
|
+
var lastLength = this.txs.length;
|
|
95
|
+
txs.forEach(function (tx) {
|
|
96
|
+
var indexAddress = tx.address;
|
|
97
|
+
var index = "".concat(indexAddress, "-").concat(tx.hash);
|
|
98
|
+
// we reject already seen tx
|
|
99
|
+
if (_this.txs[_this.primaryIndex[index]]) {
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
_this.primaryIndex[index] = _this.txs.push(tx) - 1;
|
|
103
|
+
_this.unspentUtxos[indexAddress] = _this.unspentUtxos[indexAddress] || [];
|
|
104
|
+
_this.spentUtxos[indexAddress] = _this.spentUtxos[indexAddress] || [];
|
|
105
|
+
tx.outputs.forEach(function (output) {
|
|
106
|
+
if (output.address === tx.address) {
|
|
107
|
+
_this.unspentUtxos[indexAddress].push(output);
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
tx.inputs.forEach(function (input) {
|
|
111
|
+
if (input.address === tx.address) {
|
|
112
|
+
_this.spentUtxos[indexAddress].push(input);
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
_this.unspentUtxos[indexAddress] = _this.unspentUtxos[indexAddress].filter(function (output) {
|
|
116
|
+
var matchIndex = (0, lodash_1.findIndex)(_this.spentUtxos[indexAddress], function (input) {
|
|
117
|
+
return input.output_hash === output.output_hash &&
|
|
118
|
+
input.output_index === output.output_index;
|
|
126
119
|
});
|
|
127
|
-
|
|
120
|
+
if (matchIndex > -1) {
|
|
121
|
+
_this.spentUtxos[indexAddress].splice(matchIndex, 1);
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
return true;
|
|
128
125
|
});
|
|
129
126
|
});
|
|
127
|
+
return this.txs.length - lastLength;
|
|
130
128
|
};
|
|
131
129
|
BitcoinLikeStorage.prototype.getUniquesAddresses = function (addressesFilter) {
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
index: tx.index
|
|
142
|
-
}); }), "address")];
|
|
143
|
-
});
|
|
144
|
-
});
|
|
130
|
+
// TODO: to speed up, create more useful indexes in appendTxs
|
|
131
|
+
return (0, lodash_1.uniqBy)(
|
|
132
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
133
|
+
// @ts-ignore
|
|
134
|
+
(0, lodash_1.filter)(this.txs, addressesFilter).map(function (tx) { return ({
|
|
135
|
+
address: tx.address,
|
|
136
|
+
account: tx.account,
|
|
137
|
+
index: tx.index
|
|
138
|
+
}); }), "address");
|
|
145
139
|
};
|
|
146
140
|
BitcoinLikeStorage.prototype.removeTxs = function (txsFilter) {
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
}
|
|
161
|
-
delete _this.unspentUtxos[indexAddress];
|
|
162
|
-
delete _this.spentUtxos[indexAddress];
|
|
163
|
-
});
|
|
164
|
-
this.txs = newTxs;
|
|
165
|
-
return [2 /*return*/];
|
|
166
|
-
});
|
|
141
|
+
var _this = this;
|
|
142
|
+
var newTxs = [];
|
|
143
|
+
this.primaryIndex = {};
|
|
144
|
+
this.txs.forEach(function (tx) {
|
|
145
|
+
// clean
|
|
146
|
+
var indexAddress = tx.address;
|
|
147
|
+
var index = "".concat(indexAddress, "-").concat(tx.hash);
|
|
148
|
+
if (tx.account !== txsFilter.account || tx.index !== txsFilter.index) {
|
|
149
|
+
_this.primaryIndex[index] = newTxs.push(tx) - 1;
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
delete _this.unspentUtxos[indexAddress];
|
|
153
|
+
delete _this.spentUtxos[indexAddress];
|
|
167
154
|
});
|
|
155
|
+
this.txs = newTxs;
|
|
168
156
|
};
|
|
169
157
|
// We are a bit ugly because we can't rely undo unspentUTXO
|
|
170
158
|
// So we clean the address and rebuild without the pendings
|
|
171
159
|
BitcoinLikeStorage.prototype.removePendingTxs = function (txsFilter) {
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
if (tx.block) {
|
|
190
|
-
txsToReAdd.push(tx);
|
|
191
|
-
}
|
|
192
|
-
delete _this.unspentUtxos[indexAddress];
|
|
193
|
-
delete _this.spentUtxos[indexAddress];
|
|
194
|
-
});
|
|
195
|
-
this.txs = newTxs;
|
|
196
|
-
return [4 /*yield*/, this.appendTxs(txsToReAdd)];
|
|
197
|
-
case 1:
|
|
198
|
-
_a.sent();
|
|
199
|
-
return [2 /*return*/];
|
|
200
|
-
}
|
|
201
|
-
});
|
|
160
|
+
var _this = this;
|
|
161
|
+
var newTxs = [];
|
|
162
|
+
var txsToReAdd = [];
|
|
163
|
+
this.primaryIndex = {};
|
|
164
|
+
this.txs.forEach(function (tx) {
|
|
165
|
+
// clean
|
|
166
|
+
var indexAddress = tx.address;
|
|
167
|
+
var index = "".concat(indexAddress, "-").concat(tx.hash);
|
|
168
|
+
if (tx.account !== txsFilter.account || tx.index !== txsFilter.index) {
|
|
169
|
+
_this.primaryIndex[index] = newTxs.push(tx) - 1;
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
if (tx.block) {
|
|
173
|
+
txsToReAdd.push(tx);
|
|
174
|
+
}
|
|
175
|
+
delete _this.unspentUtxos[indexAddress];
|
|
176
|
+
delete _this.spentUtxos[indexAddress];
|
|
202
177
|
});
|
|
178
|
+
this.txs = newTxs;
|
|
179
|
+
this.appendTxs(txsToReAdd);
|
|
180
|
+
};
|
|
181
|
+
BitcoinLikeStorage.prototype.addAddress = function (key, address) {
|
|
182
|
+
if (!this.addressCache) {
|
|
183
|
+
this.addressCache = {};
|
|
184
|
+
}
|
|
185
|
+
this.addressCache[key] = address;
|
|
203
186
|
};
|
|
204
187
|
BitcoinLikeStorage.prototype.exportSync = function () {
|
|
205
188
|
return {
|
|
206
189
|
txs: this.txs,
|
|
207
190
|
primaryIndex: this.primaryIndex,
|
|
208
|
-
unspentUtxos: this.unspentUtxos
|
|
191
|
+
unspentUtxos: this.unspentUtxos,
|
|
192
|
+
addressCache: this.addressCache
|
|
209
193
|
};
|
|
210
194
|
};
|
|
211
195
|
BitcoinLikeStorage.prototype.loadSync = function (data) {
|
|
212
196
|
this.txs = data.txs;
|
|
213
197
|
this.primaryIndex = data.primaryIndex;
|
|
214
198
|
this.unspentUtxos = data.unspentUtxos;
|
|
199
|
+
this.addressCache = data.addressCache;
|
|
200
|
+
base_1["default"].addressCache = __assign(__assign({}, base_1["default"].addressCache), this.addressCache);
|
|
215
201
|
};
|
|
216
202
|
BitcoinLikeStorage.prototype["export"] = function () {
|
|
217
203
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/storage/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/storage/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,27 +36,28 @@ export interface Address {
|
|
|
36
36
|
address: string;
|
|
37
37
|
}
|
|
38
38
|
export interface IStorage {
|
|
39
|
-
appendTxs(txs: TX[]):
|
|
40
|
-
getAddressUnspentUtxos(address: Address):
|
|
39
|
+
appendTxs(txs: TX[]): number;
|
|
40
|
+
getAddressUnspentUtxos(address: Address): Output[];
|
|
41
41
|
getLastTx(txFilter: {
|
|
42
42
|
account?: number;
|
|
43
43
|
index?: number;
|
|
44
44
|
address?: string;
|
|
45
45
|
confirmed?: boolean;
|
|
46
|
-
}):
|
|
47
|
-
getTx(address: string, hash: string):
|
|
46
|
+
}): TX | undefined;
|
|
47
|
+
getTx(address: string, hash: string): TX | undefined;
|
|
48
48
|
getUniquesAddresses(addressesFilter: {
|
|
49
49
|
account?: number;
|
|
50
50
|
index?: number;
|
|
51
|
-
}):
|
|
51
|
+
}): Address[];
|
|
52
52
|
removeTxs(txsFilter: {
|
|
53
53
|
account: number;
|
|
54
54
|
index: number;
|
|
55
|
-
}):
|
|
55
|
+
}): void;
|
|
56
56
|
removePendingTxs(txsFilter: {
|
|
57
57
|
account: number;
|
|
58
58
|
index: number;
|
|
59
|
-
}):
|
|
59
|
+
}): void;
|
|
60
|
+
addAddress(key: string, address: string): void;
|
|
60
61
|
export(): Promise<unknown>;
|
|
61
62
|
load(data: unknown): Promise<void>;
|
|
62
63
|
exportSync(): unknown;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/storage/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,EAAE;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAElB,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,MAAM,WAAW,KAAK;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,GAAG,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,KAAK;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,QAAQ;IACvB,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/storage/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,EAAE;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAElB,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,MAAM,WAAW,KAAK;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,GAAG,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,KAAK;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,QAAQ;IACvB,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC;IAC7B,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,EAAE,CAAC;IACnD,SAAS,CAAC,QAAQ,EAAE;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,GAAG,EAAE,GAAG,SAAS,CAAC;IACnB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,EAAE,GAAG,SAAS,CAAC;IACrD,mBAAmB,CAAC,eAAe,EAAE;QACnC,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,EAAE,CAAC;IACd,SAAS,CAAC,SAAS,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/D,gBAAgB,CAAC,SAAS,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACtE,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3B,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,UAAU,IAAI,OAAO,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;CAC/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xpub.d.ts","sourceRoot":"","sources":["../../../../src/families/bitcoin/wallet-btc/xpub.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAM,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,YAAY,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAyB,MAAM,SAAS,CAAC;AAGjE,cAAM,IAAK,SAAQ,YAAY;IAC7B,OAAO,EAAE,QAAQ,CAAC;IAElB,QAAQ,EAAE,SAAS,CAAC;IAEpB,MAAM,EAAE,OAAO,CAAC;IAEhB,IAAI,EAAE,MAAM,CAAC;IAEb,cAAc,EAAE,MAAM,CAAC;IAEvB,YAAY,EAAE,MAAM,CAAC;IAErB,iBAAiB,EAAE,MAAM,CAAC;IAI1B,gBAAgB,EAAE,MAAM,CAA2B;IAEnD,GAAG,SAAM;IAET,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAM;IAGzC,gBAAgB,SAAQ;gBAEZ,EACV,OAAO,EACP,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,cAAc,GACf,EAAE;QACD,OAAO,EAAE,QAAQ,CAAC;QAClB,QAAQ,EAAE,SAAS,CAAC;QACpB,MAAM,EAAE,OAAO,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,EAAE,MAAM,CAAC;KACxB;IAWK,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"xpub.d.ts","sourceRoot":"","sources":["../../../../src/families/bitcoin/wallet-btc/xpub.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAM,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,YAAY,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAyB,MAAM,SAAS,CAAC;AAGjE,cAAM,IAAK,SAAQ,YAAY;IAC7B,OAAO,EAAE,QAAQ,CAAC;IAElB,QAAQ,EAAE,SAAS,CAAC;IAEpB,MAAM,EAAE,OAAO,CAAC;IAEhB,IAAI,EAAE,MAAM,CAAC;IAEb,cAAc,EAAE,MAAM,CAAC;IAEvB,YAAY,EAAE,MAAM,CAAC;IAErB,iBAAiB,EAAE,MAAM,CAAC;IAI1B,gBAAgB,EAAE,MAAM,CAA2B;IAEnD,GAAG,SAAM;IAET,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAM;IAGzC,gBAAgB,SAAQ;gBAEZ,EACV,OAAO,EACP,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,cAAc,GACf,EAAE;QACD,OAAO,EAAE,QAAQ,CAAC;QAClB,QAAQ,EAAE,SAAS,CAAC;QACpB,MAAM,EAAE,OAAO,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,EAAE,MAAM,CAAC;KACxB;IAWK,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IA2D1C,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAOlD,WAAW,CAAC,OAAO,EAAE,MAAM;IAmC3B,IAAI;IA0BJ,cAAc;IAQd,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAQjC,iBAAiB,CAAC,OAAO,EAAE,OAAO;IAWlC,gBAAgB;IAKhB,mBAAmB,CAAC,OAAO,EAAE,MAAM;IAKnC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAwB1C,OAAO,CAAC,MAAM,EAAE;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,SAAS,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,OAAO,CAAC;QACvB,mBAAmB,EAAE,eAAe,CAAC;QACrC,QAAQ,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,eAAe,CAAC;IAyGtB,WAAW,CAAC,QAAQ,EAAE,MAAM;IAK5B,mBAAmB,CAAC,SAAS,EAAE,OAAO,EAAE;IAa9C,WAAW,CAAC,IAAI,EAAE,GAAG;IAMrB,UAAU,CAAC,IAAI,EAAE,GAAG;IAMpB,gBAAgB,CAAC,IAAI,EAAE,GAAG;IAK1B,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqB/C,0BAA0B,CAC9B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM;IA0BT,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;CA4BvD;AAED,eAAe,IAAI,CAAC"}
|
|
@@ -117,6 +117,7 @@ var Xpub = /** @class */ (function (_super) {
|
|
|
117
117
|
switch (_a.label) {
|
|
118
118
|
case 0:
|
|
119
119
|
address = this.crypto.getAddress(this.derivationMode, this.xpub, account, index);
|
|
120
|
+
this.storage.addAddress("".concat(this.derivationMode, "-").concat(this.xpub, "-").concat(account, "-").concat(index), address);
|
|
120
121
|
return [4 /*yield*/, this.whenSynced("address", address)];
|
|
121
122
|
case 1:
|
|
122
123
|
_a.sent();
|
|
@@ -131,40 +132,34 @@ var Xpub = /** @class */ (function (_super) {
|
|
|
131
132
|
total = 0;
|
|
132
133
|
_a.label = 2;
|
|
133
134
|
case 2:
|
|
134
|
-
_a.trys.push([2,
|
|
135
|
+
_a.trys.push([2, 5, , 6]);
|
|
135
136
|
// TODO perf: bad : looping in the tx array
|
|
136
137
|
return [4 /*yield*/, this.checkAddressReorg(account, index)];
|
|
137
138
|
case 3:
|
|
138
139
|
// TODO perf: bad : looping in the tx array
|
|
139
140
|
_a.sent();
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
141
|
+
hasPendings = !!this.storage.getLastTx({
|
|
142
|
+
confirmed: false,
|
|
143
|
+
account: account,
|
|
144
|
+
index: index
|
|
145
|
+
});
|
|
146
|
+
if (hasPendings) {
|
|
147
|
+
this.storage.removePendingTxs({ account: account, index: index });
|
|
148
|
+
}
|
|
149
|
+
return [4 /*yield*/, this.fetchHydrateAndStoreNewTxs(address, account, index)];
|
|
145
150
|
case 4:
|
|
146
|
-
hasPendings = !!(_a.sent());
|
|
147
|
-
if (!hasPendings) return [3 /*break*/, 6];
|
|
148
|
-
return [4 /*yield*/, this.storage.removePendingTxs({ account: account, index: index })];
|
|
149
|
-
case 5:
|
|
150
|
-
_a.sent();
|
|
151
|
-
_a.label = 6;
|
|
152
|
-
case 6: return [4 /*yield*/, this.fetchHydrateAndStoreNewTxs(address, account, index)];
|
|
153
|
-
case 7:
|
|
154
151
|
total = _a.sent();
|
|
155
|
-
return [3 /*break*/,
|
|
156
|
-
case
|
|
152
|
+
return [3 /*break*/, 6];
|
|
153
|
+
case 5:
|
|
157
154
|
e_1 = _a.sent();
|
|
158
155
|
this.emitSyncedFailed(data);
|
|
159
156
|
throw e_1;
|
|
160
|
-
case
|
|
157
|
+
case 6:
|
|
161
158
|
this.emitSynced(__assign(__assign({}, data), { total: total }));
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
case 10:
|
|
167
|
-
lastTx = _a.sent();
|
|
159
|
+
lastTx = this.storage.getLastTx({
|
|
160
|
+
account: account,
|
|
161
|
+
index: index
|
|
162
|
+
});
|
|
168
163
|
if (account === 0 && lastTx) {
|
|
169
164
|
this.freshAddressIndex = Math.max(this.freshAddressIndex, index + 1);
|
|
170
165
|
}
|
|
@@ -312,9 +307,7 @@ var Xpub = /** @class */ (function (_super) {
|
|
|
312
307
|
case 0: return [4 /*yield*/, this.whenSynced("address", address.address)];
|
|
313
308
|
case 1:
|
|
314
309
|
_a.sent();
|
|
315
|
-
|
|
316
|
-
case 2:
|
|
317
|
-
unspentUtxos = _a.sent();
|
|
310
|
+
unspentUtxos = this.storage.getAddressUnspentUtxos(address);
|
|
318
311
|
return [2 /*return*/, unspentUtxos.reduce(function (total, _a) {
|
|
319
312
|
var value = _a.value;
|
|
320
313
|
return total.plus(value);
|
|
@@ -516,40 +509,33 @@ var Xpub = /** @class */ (function (_super) {
|
|
|
516
509
|
};
|
|
517
510
|
Xpub.prototype.fetchHydrateAndStoreNewTxs = function (address, account, index) {
|
|
518
511
|
return __awaiter(this, void 0, void 0, function () {
|
|
519
|
-
var pendingTxs, txs, inserted, lastTx
|
|
520
|
-
return __generator(this, function (
|
|
521
|
-
switch (
|
|
512
|
+
var pendingTxs, txs, inserted, lastTx;
|
|
513
|
+
return __generator(this, function (_a) {
|
|
514
|
+
switch (_a.label) {
|
|
522
515
|
case 0:
|
|
523
516
|
pendingTxs = [];
|
|
524
517
|
txs = [];
|
|
525
518
|
inserted = 0;
|
|
526
|
-
|
|
527
|
-
case 1:
|
|
519
|
+
_a.label = 1;
|
|
520
|
+
case 1:
|
|
521
|
+
lastTx = this.storage.getLastTx({
|
|
528
522
|
account: account,
|
|
529
523
|
index: index,
|
|
530
524
|
confirmed: true
|
|
531
|
-
})
|
|
532
|
-
case 2:
|
|
533
|
-
lastTx = _c.sent();
|
|
525
|
+
});
|
|
534
526
|
return [4 /*yield*/, this.explorer.getAddressTxsSinceLastTxBlock(this.txsSyncArraySize, { address: address, account: account, index: index }, lastTx)];
|
|
535
|
-
case
|
|
536
|
-
txs =
|
|
527
|
+
case 2:
|
|
528
|
+
txs = _a.sent();
|
|
537
529
|
if (pendingTxs.length === 0) {
|
|
538
530
|
pendingTxs = txs.filter(function (tx) { return !tx.block; });
|
|
539
531
|
}
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
case
|
|
543
|
-
inserted = _a + _c.sent(); // only insert not pending tx
|
|
544
|
-
_c.label = 5;
|
|
545
|
-
case 5:
|
|
532
|
+
inserted += this.storage.appendTxs(txs.filter(function (tx) { return tx.block; })); // only insert not pending tx
|
|
533
|
+
_a.label = 3;
|
|
534
|
+
case 3:
|
|
546
535
|
if (txs.length - pendingTxs.length >= this.txsSyncArraySize) return [3 /*break*/, 1];
|
|
547
|
-
|
|
548
|
-
case
|
|
549
|
-
|
|
550
|
-
return [4 /*yield*/, this.storage.appendTxs(pendingTxs)];
|
|
551
|
-
case 7:
|
|
552
|
-
inserted = _b + _c.sent();
|
|
536
|
+
_a.label = 4;
|
|
537
|
+
case 4:
|
|
538
|
+
inserted += this.storage.appendTxs(pendingTxs);
|
|
553
539
|
return [2 /*return*/, inserted];
|
|
554
540
|
}
|
|
555
541
|
});
|
|
@@ -560,18 +546,17 @@ var Xpub = /** @class */ (function (_super) {
|
|
|
560
546
|
var lastTx, block;
|
|
561
547
|
return __generator(this, function (_a) {
|
|
562
548
|
switch (_a.label) {
|
|
563
|
-
case 0:
|
|
549
|
+
case 0:
|
|
550
|
+
lastTx = this.storage.getLastTx({
|
|
564
551
|
account: account,
|
|
565
552
|
index: index,
|
|
566
553
|
confirmed: true
|
|
567
|
-
})
|
|
568
|
-
case 1:
|
|
569
|
-
lastTx = _a.sent();
|
|
554
|
+
});
|
|
570
555
|
if (!lastTx) {
|
|
571
556
|
return [2 /*return*/];
|
|
572
557
|
}
|
|
573
558
|
return [4 /*yield*/, this.explorer.getBlockByHeight(lastTx.block.height)];
|
|
574
|
-
case
|
|
559
|
+
case 1:
|
|
575
560
|
block = _a.sent();
|
|
576
561
|
// all good the block is valid
|
|
577
562
|
if (block && block.hash === lastTx.block.hash) {
|
|
@@ -581,16 +566,10 @@ var Xpub = /** @class */ (function (_super) {
|
|
|
581
566
|
// for that address
|
|
582
567
|
// TODO: delete only everything for this (address, block)
|
|
583
568
|
// but need to think if its possible with current storage implem
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
case 3:
|
|
589
|
-
// in this case the block is not valid so we delete everything
|
|
590
|
-
// for that address
|
|
591
|
-
// TODO: delete only everything for this (address, block)
|
|
592
|
-
// but need to think if its possible with current storage implem
|
|
593
|
-
_a.sent();
|
|
569
|
+
this.storage.removeTxs({
|
|
570
|
+
account: account,
|
|
571
|
+
index: index
|
|
572
|
+
});
|
|
594
573
|
return [2 /*return*/];
|
|
595
574
|
}
|
|
596
575
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xpub.js","sourceRoot":"","sources":["../../../../src/families/bitcoin/wallet-btc/xpub.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xpub.js","sourceRoot":"","sources":["../../../../src/families/bitcoin/wallet-btc/xpub.ts"],"names":[],"mappings":"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"}
|