@ledgerhq/live-common 21.30.1 → 21.31.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/__tests__/test-helpers/setup.js +1 -0
- package/lib/__tests__/test-helpers/setup.js.map +1 -1
- package/lib/account/support.d.ts.map +1 -1
- package/lib/account/support.js.map +1 -1
- package/lib/bot/engine.js +1 -1
- package/lib/bot/engine.js.map +1 -1
- package/lib/bridge/jsHelpers.js +1 -1
- package/lib/data/icons/react/celo.d.ts +8 -0
- package/lib/data/icons/react/celo.d.ts.map +1 -0
- package/lib/data/icons/react/celo.js +32 -0
- package/lib/data/icons/react/celo.js.map +1 -0
- 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 +11 -8
- package/lib/data/icons/react/index.js.map +1 -1
- package/lib/data/icons/reactNative/celo.d.ts +8 -0
- package/lib/data/icons/reactNative/celo.d.ts.map +1 -0
- package/lib/data/icons/reactNative/celo.js +33 -0
- package/lib/data/icons/reactNative/celo.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 +11 -8
- package/lib/data/icons/reactNative/index.js.map +1 -1
- package/lib/env.d.ts +15 -5
- package/lib/env.d.ts.map +1 -1
- package/lib/env.js +10 -0
- 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/celo/api/hubble.d.ts +8 -0
- package/lib/families/celo/api/hubble.d.ts.map +1 -0
- package/lib/families/celo/api/hubble.js +144 -0
- package/lib/families/celo/api/hubble.js.map +1 -0
- package/lib/families/celo/api/index.d.ts +2 -0
- package/lib/families/celo/api/index.d.ts.map +1 -0
- package/lib/families/celo/api/index.js +13 -0
- package/lib/families/celo/api/index.js.map +1 -0
- package/lib/families/celo/api/sdk.d.ts +3 -0
- package/lib/families/celo/api/sdk.d.ts.map +1 -0
- package/lib/families/celo/api/sdk.js +13 -0
- package/lib/families/celo/api/sdk.js.map +1 -0
- package/lib/families/celo/bridge/js.d.ts +8 -0
- package/lib/families/celo/bridge/js.d.ts.map +1 -0
- package/lib/families/celo/bridge/js.js +87 -0
- package/lib/families/celo/bridge/js.js.map +1 -0
- package/lib/families/celo/cli-transaction.d.ts +14 -0
- package/lib/families/celo/cli-transaction.d.ts.map +1 -0
- package/lib/families/celo/cli-transaction.js +37 -0
- package/lib/families/celo/cli-transaction.js.map +1 -0
- package/lib/families/celo/datasets/celo.scanAccounts.1.d.ts +5 -0
- package/lib/families/celo/datasets/celo.scanAccounts.1.d.ts.map +1 -0
- package/lib/families/celo/datasets/celo.scanAccounts.1.js +12 -0
- package/lib/families/celo/datasets/celo.scanAccounts.1.js.map +1 -0
- package/lib/families/celo/deviceTransactionConfig.d.ts +4 -0
- package/lib/families/celo/deviceTransactionConfig.d.ts.map +1 -0
- package/lib/families/celo/deviceTransactionConfig.js +16 -0
- package/lib/families/celo/deviceTransactionConfig.js.map +1 -0
- package/lib/families/celo/hw-app-celo.d.ts +19 -0
- package/lib/families/celo/hw-app-celo.d.ts.map +1 -0
- package/lib/families/celo/hw-app-celo.js +147 -0
- package/lib/families/celo/hw-app-celo.js.map +1 -0
- package/lib/families/celo/hw-getAddress.d.ts +2 -0
- package/lib/families/celo/hw-getAddress.d.ts.map +1 -0
- package/lib/families/celo/hw-getAddress.js +13 -0
- package/lib/families/celo/hw-getAddress.js.map +1 -0
- package/lib/families/celo/js-broadcast.d.ts +8 -0
- package/lib/families/celo/js-broadcast.d.ts.map +1 -0
- package/lib/families/celo/js-broadcast.js +58 -0
- package/lib/families/celo/js-broadcast.js.map +1 -0
- package/lib/families/celo/js-buildTransaction.d.ts +6 -0
- package/lib/families/celo/js-buildTransaction.d.ts.map +1 -0
- package/lib/families/celo/js-buildTransaction.js +89 -0
- package/lib/families/celo/js-buildTransaction.js.map +1 -0
- package/lib/families/celo/js-createTransaction.d.ts +4 -0
- package/lib/families/celo/js-createTransaction.d.ts.map +1 -0
- package/lib/families/celo/js-createTransaction.js +12 -0
- package/lib/families/celo/js-createTransaction.js.map +1 -0
- package/lib/families/celo/js-estimateMaxSpendable.d.ts +10 -0
- package/lib/families/celo/js-estimateMaxSpendable.d.ts.map +1 -0
- package/lib/families/celo/js-estimateMaxSpendable.js +77 -0
- package/lib/families/celo/js-estimateMaxSpendable.js.map +1 -0
- package/lib/families/celo/js-getFeesForTransaction.d.ts +8 -0
- package/lib/families/celo/js-getFeesForTransaction.d.ts.map +1 -0
- package/lib/families/celo/js-getFeesForTransaction.js +76 -0
- package/lib/families/celo/js-getFeesForTransaction.js.map +1 -0
- package/lib/families/celo/js-getTransactionStatus.d.ts +5 -0
- package/lib/families/celo/js-getTransactionStatus.d.ts.map +1 -0
- package/lib/families/celo/js-getTransactionStatus.js +86 -0
- package/lib/families/celo/js-getTransactionStatus.js.map +1 -0
- package/lib/families/celo/js-prepareTransaction.d.ts +5 -0
- package/lib/families/celo/js-prepareTransaction.d.ts.map +1 -0
- package/lib/families/celo/js-prepareTransaction.js +76 -0
- package/lib/families/celo/js-prepareTransaction.js.map +1 -0
- package/lib/families/celo/js-signOperation.d.ts +13 -0
- package/lib/families/celo/js-signOperation.d.ts.map +1 -0
- package/lib/families/celo/js-signOperation.js +150 -0
- package/lib/families/celo/js-signOperation.js.map +1 -0
- package/lib/families/celo/js-synchronisation.d.ts +10 -0
- package/lib/families/celo/js-synchronisation.d.ts.map +1 -0
- package/lib/families/celo/js-synchronisation.js +88 -0
- package/lib/families/celo/js-synchronisation.js.map +1 -0
- package/lib/families/celo/specs.d.ts +7 -0
- package/lib/families/celo/specs.d.ts.map +1 -0
- package/lib/families/celo/specs.js +56 -0
- package/lib/families/celo/specs.js.map +1 -0
- package/lib/families/celo/speculos-deviceActions.d.ts +7 -0
- package/lib/families/celo/speculos-deviceActions.d.ts.map +1 -0
- package/lib/families/celo/speculos-deviceActions.js +53 -0
- package/lib/families/celo/speculos-deviceActions.js.map +1 -0
- package/lib/families/celo/transaction.d.ts +11 -0
- package/lib/families/celo/transaction.d.ts.map +1 -0
- package/lib/families/celo/transaction.js +39 -0
- package/lib/families/celo/transaction.js.map +1 -0
- package/lib/families/celo/types.d.ts +16 -0
- package/lib/families/celo/types.d.ts.map +1 -0
- package/lib/families/celo/types.js +6 -0
- package/lib/families/celo/types.js.map +1 -0
- package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.d.ts +1 -0
- package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.d.ts.map +1 -1
- package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.js +1 -0
- package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.js.map +1 -1
- package/lib/families/ethereum/modules/erc1155.d.ts.map +1 -1
- package/lib/families/ethereum/modules/erc1155.js +8 -2
- package/lib/families/ethereum/modules/erc1155.js.map +1 -1
- package/lib/families/polkadot/cache.d.ts +1 -1
- package/lib/families/polkadot/cache.js +1 -1
- package/lib/featureFlags/FeatureToggle.d.ts +10 -0
- package/lib/featureFlags/FeatureToggle.d.ts.map +1 -0
- package/lib/featureFlags/FeatureToggle.js +17 -0
- package/lib/featureFlags/FeatureToggle.js.map +1 -0
- package/lib/featureFlags/defaultFeatures.d.ts +3 -0
- package/lib/featureFlags/defaultFeatures.d.ts.map +1 -0
- package/lib/featureFlags/defaultFeatures.js +9 -0
- package/lib/featureFlags/defaultFeatures.js.map +1 -0
- package/lib/featureFlags/index.d.ts +5 -0
- package/lib/featureFlags/index.d.ts.map +1 -0
- package/lib/featureFlags/index.js +17 -0
- package/lib/featureFlags/index.js.map +1 -0
- package/lib/featureFlags/provider.d.ts +13 -0
- package/lib/featureFlags/provider.d.ts.map +1 -0
- package/lib/featureFlags/provider.js +68 -0
- package/lib/featureFlags/provider.js.map +1 -0
- package/lib/featureFlags/types.d.ts +8 -0
- package/lib/featureFlags/types.d.ts.map +1 -0
- package/lib/featureFlags/types.js +3 -0
- package/lib/featureFlags/types.js.map +1 -0
- package/lib/featureFlags/useFeature.d.ts +3 -0
- package/lib/featureFlags/useFeature.d.ts.map +1 -0
- package/lib/featureFlags/useFeature.js +9 -0
- package/lib/featureFlags/useFeature.js.map +1 -0
- 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 +24 -22
- package/lib/generated/bridge/js.js.map +1 -1
- package/lib/generated/cli-transaction.d.ts +9 -0
- package/lib/generated/cli-transaction.d.ts.map +1 -1
- package/lib/generated/cli-transaction.js +24 -22
- package/lib/generated/cli-transaction.js.map +1 -1
- package/lib/generated/deviceTransactionConfig.d.ts +2 -0
- package/lib/generated/deviceTransactionConfig.d.ts.map +1 -1
- package/lib/generated/deviceTransactionConfig.js +22 -20
- package/lib/generated/deviceTransactionConfig.js.map +1 -1
- package/lib/generated/hw-getAddress.d.ts +1 -0
- package/lib/generated/hw-getAddress.d.ts.map +1 -1
- package/lib/generated/hw-getAddress.js +26 -24
- package/lib/generated/hw-getAddress.js.map +1 -1
- package/lib/generated/specs.d.ts +3 -0
- package/lib/generated/specs.d.ts.map +1 -1
- package/lib/generated/specs.js +24 -22
- package/lib/generated/specs.js.map +1 -1
- package/lib/generated/speculos-deviceActions.d.ts +3 -0
- package/lib/generated/speculos-deviceActions.d.ts.map +1 -1
- package/lib/generated/speculos-deviceActions.js +24 -22
- package/lib/generated/speculos-deviceActions.js.map +1 -1
- package/lib/generated/transaction.d.ts +5 -0
- package/lib/generated/transaction.d.ts.map +1 -1
- package/lib/generated/transaction.js +26 -24
- package/lib/generated/transaction.js.map +1 -1
- package/lib/generated/types.d.ts +12 -6
- package/lib/generated/types.d.ts.map +1 -1
- package/lib/generated/types.js +14 -12
- package/lib/generated/types.js.map +1 -1
- package/lib/types/index.d.ts +1 -0
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/index.js +1 -0
- package/lib/types/index.js.map +1 -1
- package/package.json +4 -1
- package/src/.DS_Store +0 -0
- package/src/{data/flags → __tests__}/.DS_Store +0 -0
- package/src/__tests__/__snapshots__/all.libcore.ts.snap +0 -33029
- package/src/__tests__/test-helpers/setup.ts +1 -0
- package/src/account/support.ts +1 -0
- package/src/bot/engine.ts +1 -1
- package/src/bridge/jsHelpers.ts +1 -1
- package/src/data/icons/react/celo.tsx +12 -0
- package/src/data/icons/react/index.tsx +1 -0
- package/src/data/icons/reactNative/celo.tsx +13 -0
- package/src/data/icons/reactNative/index.tsx +1 -0
- package/src/data/icons/svg/CELO.svg +5 -0
- package/src/env.ts +10 -0
- package/src/families/celo/api/hubble.ts +93 -0
- package/src/families/celo/api/index.ts +1 -0
- package/src/families/celo/api/sdk.ts +8 -0
- package/src/families/celo/bridge/js.ts +38 -0
- package/src/families/celo/cli-transaction.ts +41 -0
- package/src/families/celo/datasets/celo.scanAccounts.1.ts +20 -0
- package/src/families/celo/deviceTransactionConfig.ts +19 -0
- package/src/families/celo/hw-app-celo.ts +108 -0
- package/src/families/celo/hw-getAddress.ts +1 -0
- package/src/families/celo/js-broadcast.ts +12 -0
- package/src/families/celo/js-buildTransaction.ts +32 -0
- package/src/families/celo/js-createTransaction.ts +12 -0
- package/src/families/celo/js-estimateMaxSpendable.ts +28 -0
- package/src/families/celo/js-getFeesForTransaction.ts +38 -0
- package/src/families/celo/js-getTransactionStatus.ts +67 -0
- package/src/families/celo/js-prepareTransaction.ts +28 -0
- package/src/families/celo/js-signOperation.ts +149 -0
- package/src/families/celo/js-synchronisation.ts +40 -0
- package/src/families/celo/specs.ts +53 -0
- package/src/families/celo/speculos-deviceActions.ts +51 -0
- package/src/families/celo/transaction.ts +39 -0
- package/src/families/celo/types.ts +20 -0
- package/src/families/ethereum/datasets/ethereum.scanAccounts.1.ts +1 -0
- package/src/families/ethereum/modules/erc1155.ts +9 -0
- package/src/families/polkadot/cache.ts +1 -1
- package/src/featureFlags/FeatureToggle.tsx +24 -0
- package/src/featureFlags/defaultFeatures.ts +7 -0
- package/src/featureFlags/index.ts +4 -0
- package/src/featureFlags/provider.tsx +48 -0
- package/src/featureFlags/types.ts +9 -0
- package/src/featureFlags/useFeature.ts +8 -0
- package/src/generated/bridge/js.ts +3 -0
- package/src/generated/cli-transaction.ts +3 -0
- package/src/generated/deviceTransactionConfig.ts +3 -0
- package/src/generated/hw-getAddress.ts +3 -0
- package/src/generated/specs.ts +3 -0
- package/src/generated/speculos-deviceActions.ts +3 -0
- package/src/generated/transaction.ts +3 -0
- package/src/generated/types.ts +14 -0
- package/src/types/index.ts +1 -0
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
|
+
};
|
|
41
|
+
exports.__esModule = true;
|
|
42
|
+
var bignumber_js_1 = require("bignumber.js");
|
|
43
|
+
var rxjs_1 = require("rxjs");
|
|
44
|
+
var errors_1 = require("@ledgerhq/errors");
|
|
45
|
+
var operation_1 = require("../../operation");
|
|
46
|
+
var hw_app_celo_1 = require("./hw-app-celo");
|
|
47
|
+
var js_buildTransaction_1 = __importDefault(require("./js-buildTransaction"));
|
|
48
|
+
var wallet_base_1 = require("@celo/wallet-base");
|
|
49
|
+
var tokens_1 = require("@celo/wallet-ledger/lib/tokens");
|
|
50
|
+
var deviceAccess_1 = require("../../hw/deviceAccess");
|
|
51
|
+
var buildOptimisticOperation = function (account, transaction, fee) {
|
|
52
|
+
var type = "OUT";
|
|
53
|
+
var value = new bignumber_js_1.BigNumber(transaction.amount).plus(fee);
|
|
54
|
+
var operation = {
|
|
55
|
+
id: (0, operation_1.encodeOperationId)(account.id, "", type),
|
|
56
|
+
hash: "",
|
|
57
|
+
type: type,
|
|
58
|
+
value: value,
|
|
59
|
+
fee: fee,
|
|
60
|
+
blockHash: null,
|
|
61
|
+
blockHeight: null,
|
|
62
|
+
senders: [account.freshAddress],
|
|
63
|
+
recipients: [transaction.recipient].filter(Boolean),
|
|
64
|
+
accountId: account.id,
|
|
65
|
+
date: new Date(),
|
|
66
|
+
extra: { additionalField: transaction.amount }
|
|
67
|
+
};
|
|
68
|
+
return operation;
|
|
69
|
+
};
|
|
70
|
+
var trimLeading0x = function (input) {
|
|
71
|
+
return input.startsWith("0x") ? input.slice(2) : input;
|
|
72
|
+
};
|
|
73
|
+
var parseSigningResponse = function (response, chainId) {
|
|
74
|
+
// EIP155
|
|
75
|
+
var sigV = parseInt(response.v, 16);
|
|
76
|
+
var eip155V = chainId * 2 + 35;
|
|
77
|
+
if (sigV !== eip155V && (sigV & eip155V) !== sigV) {
|
|
78
|
+
eip155V += 1;
|
|
79
|
+
}
|
|
80
|
+
return {
|
|
81
|
+
s: Buffer.from(response.s, "hex"),
|
|
82
|
+
v: eip155V,
|
|
83
|
+
r: Buffer.from(response.r, "hex")
|
|
84
|
+
};
|
|
85
|
+
};
|
|
86
|
+
/**
|
|
87
|
+
* Sign Transaction with Ledger hardware
|
|
88
|
+
*/
|
|
89
|
+
var signOperation = function (_a) {
|
|
90
|
+
var account = _a.account, deviceId = _a.deviceId, transaction = _a.transaction;
|
|
91
|
+
return (0, deviceAccess_1.withDevice)(deviceId)(function (transport) {
|
|
92
|
+
return new rxjs_1.Observable(function (o) {
|
|
93
|
+
var cancelled;
|
|
94
|
+
function main() {
|
|
95
|
+
var _a;
|
|
96
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
97
|
+
var celo, unsignedTransaction, chainId, to, rlpEncodedTransaction, tokenInfo, response, signature, encodedTransaction, operation;
|
|
98
|
+
return __generator(this, function (_b) {
|
|
99
|
+
switch (_b.label) {
|
|
100
|
+
case 0:
|
|
101
|
+
if (!transaction.fees) {
|
|
102
|
+
throw new errors_1.FeeNotLoaded();
|
|
103
|
+
}
|
|
104
|
+
celo = new hw_app_celo_1.CeloApp(transport);
|
|
105
|
+
return [4 /*yield*/, (0, js_buildTransaction_1["default"])(account, transaction)];
|
|
106
|
+
case 1:
|
|
107
|
+
unsignedTransaction = _b.sent();
|
|
108
|
+
chainId = unsignedTransaction.chainId, to = unsignedTransaction.to;
|
|
109
|
+
rlpEncodedTransaction = (0, wallet_base_1.rlpEncodedTx)(unsignedTransaction);
|
|
110
|
+
tokenInfo = (0, tokens_1.tokenInfoByAddressAndChainId)(to, chainId);
|
|
111
|
+
if (!tokenInfo) return [3 /*break*/, 3];
|
|
112
|
+
return [4 /*yield*/, celo.provideERC20TokenInformation(tokenInfo)];
|
|
113
|
+
case 2:
|
|
114
|
+
_b.sent();
|
|
115
|
+
_b.label = 3;
|
|
116
|
+
case 3:
|
|
117
|
+
o.next({ type: "device-signature-requested" });
|
|
118
|
+
return [4 /*yield*/, celo.signTransaction(account.freshAddressPath, trimLeading0x(rlpEncodedTransaction.rlpEncode))];
|
|
119
|
+
case 4:
|
|
120
|
+
response = _b.sent();
|
|
121
|
+
if (cancelled)
|
|
122
|
+
return [2 /*return*/];
|
|
123
|
+
signature = parseSigningResponse(response, chainId);
|
|
124
|
+
o.next({ type: "device-signature-granted" });
|
|
125
|
+
return [4 /*yield*/, (0, wallet_base_1.encodeTransaction)(rlpEncodedTransaction, signature)];
|
|
126
|
+
case 5:
|
|
127
|
+
encodedTransaction = _b.sent();
|
|
128
|
+
operation = buildOptimisticOperation(account, transaction, (_a = transaction.fees) !== null && _a !== void 0 ? _a : new bignumber_js_1.BigNumber(0));
|
|
129
|
+
o.next({
|
|
130
|
+
type: "signed",
|
|
131
|
+
signedOperation: {
|
|
132
|
+
operation: operation,
|
|
133
|
+
signature: encodedTransaction.raw,
|
|
134
|
+
expirationDate: null
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
return [2 /*return*/];
|
|
138
|
+
}
|
|
139
|
+
});
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
main().then(function () { return o.complete(); }, function (e) { return o.error(e); });
|
|
143
|
+
return function () {
|
|
144
|
+
cancelled = true;
|
|
145
|
+
};
|
|
146
|
+
});
|
|
147
|
+
});
|
|
148
|
+
};
|
|
149
|
+
exports["default"] = signOperation;
|
|
150
|
+
//# sourceMappingURL=js-signOperation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-signOperation.js","sourceRoot":"","sources":["../../../src/families/celo/js-signOperation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Account } from "../../types";
|
|
2
|
+
export declare const scanAccounts: (arg0: {
|
|
3
|
+
currency: import("@ledgerhq/cryptoassets/lib/types").CryptoCurrency;
|
|
4
|
+
deviceId: string;
|
|
5
|
+
scheme?: "" | "ethM" | "ethMM" | "bch_on_bitcoin_segwit" | "legacy_on_bch" | "vertcoin_128" | "vertcoin_128_segwit" | "etcM" | "aeternity" | "tezbox" | "tezosbip44h" | "galleonL" | "tezboxL" | "taproot" | "native_segwit" | "segwit" | "segwit_on_legacy" | "legacy_on_segwit" | "legacy_on_native_segwit" | "segwit_unsplit" | "sep5" | "unsplit" | "polkadotbip44" | "filecoin" | "solanaMain" | "solanaSub" | null | undefined;
|
|
6
|
+
syncConfig: import("../../types").SyncConfig;
|
|
7
|
+
preferredNewAccountScheme?: "" | "ethM" | "ethMM" | "bch_on_bitcoin_segwit" | "legacy_on_bch" | "vertcoin_128" | "vertcoin_128_segwit" | "etcM" | "aeternity" | "tezbox" | "tezosbip44h" | "galleonL" | "tezboxL" | "taproot" | "native_segwit" | "segwit" | "segwit_on_legacy" | "legacy_on_segwit" | "legacy_on_native_segwit" | "segwit_unsplit" | "sep5" | "unsplit" | "polkadotbip44" | "filecoin" | "solanaMain" | "solanaSub" | undefined;
|
|
8
|
+
}) => import("rxjs").Observable<import("../../types").ScanAccountEvent>;
|
|
9
|
+
export declare const sync: (initialAccount: Account, syncConfig: import("../../types").SyncConfig) => import("rxjs").Observable<(arg0: Account) => Account>;
|
|
10
|
+
//# sourceMappingURL=js-synchronisation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-synchronisation.d.ts","sourceRoot":"","sources":["../../../src/families/celo/js-synchronisation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAsC3C,eAAO,MAAM,YAAY;;;;;;uEAAoC,CAAC;AAC9D,eAAO,MAAM,IAAI,kIAAsC,CAAC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
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
|
+
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (_) try {
|
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
exports.__esModule = true;
|
|
50
|
+
exports.sync = exports.scanAccounts = void 0;
|
|
51
|
+
var account_1 = require("../../account");
|
|
52
|
+
var jsHelpers_1 = require("../../bridge/jsHelpers");
|
|
53
|
+
var api_1 = require("./api");
|
|
54
|
+
var getAccountShape = function (info) { return __awaiter(void 0, void 0, void 0, function () {
|
|
55
|
+
var address, currency, initialAccount, derivationMode, oldOperations, accountId, _a, blockHeight, balance, spendableBalance, newOperations, operations, shape;
|
|
56
|
+
return __generator(this, function (_b) {
|
|
57
|
+
switch (_b.label) {
|
|
58
|
+
case 0:
|
|
59
|
+
address = info.address, currency = info.currency, initialAccount = info.initialAccount, derivationMode = info.derivationMode;
|
|
60
|
+
oldOperations = (initialAccount === null || initialAccount === void 0 ? void 0 : initialAccount.operations) || [];
|
|
61
|
+
accountId = (0, account_1.encodeAccountId)({
|
|
62
|
+
type: "js",
|
|
63
|
+
version: "2",
|
|
64
|
+
currencyId: currency.id,
|
|
65
|
+
xpubOrAddress: address,
|
|
66
|
+
derivationMode: derivationMode
|
|
67
|
+
});
|
|
68
|
+
return [4 /*yield*/, (0, api_1.getAccountDetails)(address, accountId)];
|
|
69
|
+
case 1:
|
|
70
|
+
_a = _b.sent(), blockHeight = _a.blockHeight, balance = _a.balance, spendableBalance = _a.spendableBalance, newOperations = _a.operations;
|
|
71
|
+
operations = (0, jsHelpers_1.mergeOps)(oldOperations, newOperations);
|
|
72
|
+
shape = {
|
|
73
|
+
id: accountId,
|
|
74
|
+
balance: balance,
|
|
75
|
+
spendableBalance: spendableBalance,
|
|
76
|
+
operationsCount: operations.length,
|
|
77
|
+
blockHeight: blockHeight
|
|
78
|
+
};
|
|
79
|
+
return [2 /*return*/, __assign(__assign({}, shape), { operations: operations })];
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
}); };
|
|
83
|
+
var postSync = function (_initial, parent) {
|
|
84
|
+
return parent;
|
|
85
|
+
};
|
|
86
|
+
exports.scanAccounts = (0, jsHelpers_1.makeScanAccounts)(getAccountShape);
|
|
87
|
+
exports.sync = (0, jsHelpers_1.makeSync)(getAccountShape, postSync);
|
|
88
|
+
//# sourceMappingURL=js-synchronisation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-synchronisation.js","sourceRoot":"","sources":["../../../src/families/celo/js-synchronisation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,yCAAgD;AAEhD,oDAA8E;AAC9E,6BAA0C;AAE1C,IAAM,eAAe,GAAoB,UAAO,IAAI;;;;;gBAC1C,OAAO,GAA+C,IAAI,QAAnD,EAAE,QAAQ,GAAqC,IAAI,SAAzC,EAAE,cAAc,GAAqB,IAAI,eAAzB,EAAE,cAAc,GAAK,IAAI,eAAT,CAAU;gBAC7D,aAAa,GAAG,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,UAAU,KAAI,EAAE,CAAC;gBAEjD,SAAS,GAAG,IAAA,yBAAe,EAAC;oBAChC,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,GAAG;oBACZ,UAAU,EAAE,QAAQ,CAAC,EAAE;oBACvB,aAAa,EAAE,OAAO;oBACtB,cAAc,gBAAA;iBACf,CAAC,CAAC;gBAMC,qBAAM,IAAA,uBAAiB,EAAC,OAAO,EAAE,SAAS,CAAC,EAAA;;gBALzC,KAKF,SAA2C,EAJ7C,WAAW,iBAAA,EACX,OAAO,aAAA,EACP,gBAAgB,sBAAA,EACJ,aAAa,gBAAA;gBAErB,UAAU,GAAG,IAAA,oBAAQ,EAAC,aAAa,EAAE,aAAa,CAAC,CAAC;gBACpD,KAAK,GAAG;oBACZ,EAAE,EAAE,SAAS;oBACb,OAAO,SAAA;oBACP,gBAAgB,kBAAA;oBAChB,eAAe,EAAE,UAAU,CAAC,MAAM;oBAClC,WAAW,aAAA;iBACZ,CAAC;gBACF,4CAAY,KAAK,KAAE,UAAU,YAAA,KAAG;;;KACjC,CAAC;AAEF,IAAM,QAAQ,GAAG,UAAC,QAAiB,EAAE,MAAe;IAClD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEW,QAAA,YAAY,GAAG,IAAA,4BAAgB,EAAC,eAAe,CAAC,CAAC;AACjD,QAAA,IAAI,GAAG,IAAA,oBAAQ,EAAC,eAAe,EAAE,QAAQ,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"specs.d.ts","sourceRoot":"","sources":["../../../src/families/celo/specs.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;;;;AA8C/C,wBAEE"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
var invariant_1 = __importDefault(require("invariant"));
|
|
7
|
+
var currencies_1 = require("../../currencies");
|
|
8
|
+
var specs_1 = require("../../bot/specs");
|
|
9
|
+
var devices_1 = require("@ledgerhq/devices");
|
|
10
|
+
var currency = (0, currencies_1.getCryptoCurrencyById)("celo");
|
|
11
|
+
var minimalAmount = (0, currencies_1.parseCurrencyUnit)(currency.units[0], "0.001");
|
|
12
|
+
var maxAccount = 3;
|
|
13
|
+
var celo = {
|
|
14
|
+
name: "Celo",
|
|
15
|
+
currency: currency,
|
|
16
|
+
appQuery: {
|
|
17
|
+
model: devices_1.DeviceModelId.nanoS,
|
|
18
|
+
appName: "Celo"
|
|
19
|
+
},
|
|
20
|
+
testTimeout: 2 * 60 * 1000,
|
|
21
|
+
mutations: [
|
|
22
|
+
{
|
|
23
|
+
name: "move 50% to another account",
|
|
24
|
+
maxRun: 2,
|
|
25
|
+
transaction: function (_a) {
|
|
26
|
+
var account = _a.account, siblings = _a.siblings, bridge = _a.bridge, maxSpendable = _a.maxSpendable;
|
|
27
|
+
(0, invariant_1["default"])(maxSpendable.gt(minimalAmount), "balance is too low");
|
|
28
|
+
var sibling = (0, specs_1.pickSiblings)(siblings, maxAccount);
|
|
29
|
+
var recipient = sibling.freshAddress;
|
|
30
|
+
var amount = maxSpendable.div(2).integerValue();
|
|
31
|
+
return {
|
|
32
|
+
transaction: bridge.createTransaction(account),
|
|
33
|
+
updates: [{ recipient: recipient }, { amount: amount }]
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: "send max to another account",
|
|
39
|
+
maxRun: 1,
|
|
40
|
+
transaction: function (_a) {
|
|
41
|
+
var account = _a.account, siblings = _a.siblings, bridge = _a.bridge, maxSpendable = _a.maxSpendable;
|
|
42
|
+
(0, invariant_1["default"])(maxSpendable.gt(minimalAmount), "balance is too low");
|
|
43
|
+
var sibling = (0, specs_1.pickSiblings)(siblings, maxAccount);
|
|
44
|
+
var recipient = sibling.freshAddress;
|
|
45
|
+
return {
|
|
46
|
+
transaction: bridge.createTransaction(account),
|
|
47
|
+
updates: [{ recipient: recipient }, { useAllAmount: true }]
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
]
|
|
52
|
+
};
|
|
53
|
+
exports["default"] = {
|
|
54
|
+
celo: celo
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=specs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"specs.js","sourceRoot":"","sources":["../../../src/families/celo/specs.ts"],"names":[],"mappings":";;;;;AAAA,wDAAkC;AAElC,+CAA4E;AAC5E,yCAA+C;AAE/C,6CAAkD;AAElD,IAAM,QAAQ,GAAG,IAAA,kCAAqB,EAAC,MAAM,CAAC,CAAC;AAC/C,IAAM,aAAa,GAAG,IAAA,8BAAiB,EAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AACpE,IAAM,UAAU,GAAG,CAAC,CAAC;AAErB,IAAM,IAAI,GAAyB;IACjC,IAAI,EAAE,MAAM;IACZ,QAAQ,UAAA;IACR,QAAQ,EAAE;QACR,KAAK,EAAE,uBAAa,CAAC,KAAK;QAC1B,OAAO,EAAE,MAAM;KAChB;IACD,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI;IAC1B,SAAS,EAAE;QACT;YACE,IAAI,EAAE,6BAA6B;YACnC,MAAM,EAAE,CAAC;YACT,WAAW,EAAE,UAAC,EAA2C;oBAAzC,OAAO,aAAA,EAAE,QAAQ,cAAA,EAAE,MAAM,YAAA,EAAE,YAAY,kBAAA;gBACrD,IAAA,sBAAS,EAAC,YAAY,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,oBAAoB,CAAC,CAAC;gBAChE,IAAM,OAAO,GAAG,IAAA,oBAAY,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;gBACnD,IAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC;gBACvC,IAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;gBAClD,OAAO;oBACL,WAAW,EAAE,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC;oBAC9C,OAAO,EAAE,CAAC,EAAE,SAAS,WAAA,EAAE,EAAE,EAAE,MAAM,QAAA,EAAE,CAAC;iBACrC,CAAC;YACJ,CAAC;SACF;QACD;YACE,IAAI,EAAE,6BAA6B;YACnC,MAAM,EAAE,CAAC;YACT,WAAW,EAAE,UAAC,EAA2C;oBAAzC,OAAO,aAAA,EAAE,QAAQ,cAAA,EAAE,MAAM,YAAA,EAAE,YAAY,kBAAA;gBACrD,IAAA,sBAAS,EAAC,YAAY,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,oBAAoB,CAAC,CAAC;gBAChE,IAAM,OAAO,GAAG,IAAA,oBAAY,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;gBACnD,IAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC;gBACvC,OAAO;oBACL,WAAW,EAAE,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC;oBAC9C,OAAO,EAAE,CAAC,EAAE,SAAS,WAAA,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;iBACjD,CAAC;YACJ,CAAC;SACF;KACF;CACF,CAAC;AAEF,qBAAe;IACb,IAAI,MAAA;CACL,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"speculos-deviceActions.d.ts","sourceRoot":"","sources":["../../../src/families/celo/speculos-deviceActions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;;;;AA+C3C,wBAEE"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
var specs_1 = require("../../bot/specs");
|
|
4
|
+
var currencies_1 = require("../../currencies");
|
|
5
|
+
var acceptTransaction = (0, specs_1.deviceActionFlow)({
|
|
6
|
+
steps: [
|
|
7
|
+
{
|
|
8
|
+
title: "Review",
|
|
9
|
+
button: "Rr"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
title: "Amount",
|
|
13
|
+
button: "Rr",
|
|
14
|
+
expectedValue: function (_a) {
|
|
15
|
+
var account = _a.account, status = _a.status;
|
|
16
|
+
var formattedValue = "CELO " +
|
|
17
|
+
(0, currencies_1.formatCurrencyUnit)(account.unit, status.amount, {
|
|
18
|
+
disableRounding: true
|
|
19
|
+
});
|
|
20
|
+
if (!formattedValue.includes(".")) {
|
|
21
|
+
// if the value is pure integer, in the app it will automatically add an .0
|
|
22
|
+
return formattedValue + ".0";
|
|
23
|
+
}
|
|
24
|
+
return formattedValue;
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
title: "Address",
|
|
29
|
+
button: "Rr",
|
|
30
|
+
expectedValue: function (_a) {
|
|
31
|
+
var transaction = _a.transaction;
|
|
32
|
+
return transaction.recipient;
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
title: "Max Fees",
|
|
37
|
+
button: "Rr",
|
|
38
|
+
expectedValue: function () { return "CELO"; }
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
title: "No Gateway Fee",
|
|
42
|
+
button: "Rr"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
title: "Accept",
|
|
46
|
+
button: "LRlr"
|
|
47
|
+
},
|
|
48
|
+
]
|
|
49
|
+
});
|
|
50
|
+
exports["default"] = {
|
|
51
|
+
acceptTransaction: acceptTransaction
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=speculos-deviceActions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"speculos-deviceActions.js","sourceRoot":"","sources":["../../../src/families/celo/speculos-deviceActions.ts"],"names":[],"mappings":";;AAEA,yCAAmD;AACnD,+CAAsD;AACtD,IAAM,iBAAiB,GAAmC,IAAA,wBAAgB,EAAC;IACzE,KAAK,EAAE;QACL;YACE,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,IAAI;SACb;QACD;YACE,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,IAAI;YACZ,aAAa,EAAE,UAAC,EAAmB;oBAAjB,OAAO,aAAA,EAAE,MAAM,YAAA;gBAC/B,IAAM,cAAc,GAClB,OAAO;oBACP,IAAA,+BAAkB,EAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE;wBAC9C,eAAe,EAAE,IAAI;qBACtB,CAAC,CAAC;gBAEL,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBACjC,2EAA2E;oBAC3E,OAAO,cAAc,GAAG,IAAI,CAAC;iBAC9B;gBAED,OAAO,cAAc,CAAC;YACxB,CAAC;SACF;QACD;YACE,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,IAAI;YACZ,aAAa,EAAE,UAAC,EAAe;oBAAb,WAAW,iBAAA;gBAAO,OAAA,WAAW,CAAC,SAAS;YAArB,CAAqB;SAC1D;QACD;YACE,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE,IAAI;YACZ,aAAa,EAAE,cAAM,OAAA,MAAM,EAAN,CAAM;SAC5B;QACD;YACE,KAAK,EAAE,gBAAgB;YACvB,MAAM,EAAE,IAAI;SACb;QACD;YACE,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,MAAM;SACf;KACF;CACF,CAAC,CAAC;AACH,qBAAe;IACb,iBAAiB,mBAAA;CAClB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Transaction, TransactionRaw } from "./types";
|
|
2
|
+
import type { Account } from "../../types";
|
|
3
|
+
export declare const formatTransaction: (t: Transaction, account: Account) => string;
|
|
4
|
+
export declare const toTransactionRaw: (t: Transaction) => TransactionRaw;
|
|
5
|
+
declare const _default: {
|
|
6
|
+
formatTransaction: (t: Transaction, account: Account) => string;
|
|
7
|
+
fromTransactionRaw: (tr: TransactionRaw) => Transaction;
|
|
8
|
+
toTransactionRaw: (t: Transaction) => TransactionRaw;
|
|
9
|
+
};
|
|
10
|
+
export default _default;
|
|
11
|
+
//# sourceMappingURL=transaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/families/celo/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAM3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,eAAO,MAAM,iBAAiB,MAAO,WAAW,WAAW,OAAO,KAAG,MAKnD,CAAC;AAWnB,eAAO,MAAM,gBAAgB,MAAO,WAAW,KAAG,cAOjD,CAAC;;;;;;AAEF,wBAIE"}
|
|
@@ -0,0 +1,39 @@
|
|
|
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
|
+
};
|
|
13
|
+
exports.__esModule = true;
|
|
14
|
+
exports.toTransactionRaw = exports.formatTransaction = void 0;
|
|
15
|
+
var bignumber_js_1 = require("bignumber.js");
|
|
16
|
+
var common_1 = require("../../transaction/common");
|
|
17
|
+
var account_1 = require("../../account");
|
|
18
|
+
var currencies_1 = require("../../currencies");
|
|
19
|
+
var formatTransaction = function (t, account) { return "\nSEND ".concat((0, currencies_1.formatCurrencyUnit)((0, account_1.getAccountUnit)(account), t.amount, {
|
|
20
|
+
showCode: true,
|
|
21
|
+
disableRounding: true
|
|
22
|
+
}), "\nTO ").concat(t.recipient); };
|
|
23
|
+
exports.formatTransaction = formatTransaction;
|
|
24
|
+
var fromTransactionRaw = function (tr) {
|
|
25
|
+
var common = (0, common_1.fromTransactionCommonRaw)(tr);
|
|
26
|
+
return __assign(__assign({}, common), { family: tr.family, fees: tr.fees ? new bignumber_js_1.BigNumber(tr.fees) : null });
|
|
27
|
+
};
|
|
28
|
+
var toTransactionRaw = function (t) {
|
|
29
|
+
var _a;
|
|
30
|
+
var common = (0, common_1.toTransactionCommonRaw)(t);
|
|
31
|
+
return __assign(__assign({}, common), { family: t.family, fees: ((_a = t.fees) === null || _a === void 0 ? void 0 : _a.toString()) || null });
|
|
32
|
+
};
|
|
33
|
+
exports.toTransactionRaw = toTransactionRaw;
|
|
34
|
+
exports["default"] = {
|
|
35
|
+
formatTransaction: exports.formatTransaction,
|
|
36
|
+
fromTransactionRaw: fromTransactionRaw,
|
|
37
|
+
toTransactionRaw: exports.toTransactionRaw
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=transaction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../../src/families/celo/transaction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,6CAAyC;AACzC,mDAGkC;AAElC,yCAA+C;AAC/C,+CAAsD;AAC/C,IAAM,iBAAiB,GAAG,UAAC,CAAc,EAAE,OAAgB,IAAa,OAAA,iBACxE,IAAA,+BAAkB,EAAC,IAAA,wBAAc,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE;IAC3D,QAAQ,EAAE,IAAI;IACd,eAAe,EAAE,IAAI;CACtB,CAAC,kBACG,CAAC,CAAC,SAAS,CAAE,EAL6D,CAK7D,CAAC;AALN,QAAA,iBAAiB,qBAKX;AAEnB,IAAM,kBAAkB,GAAG,UAAC,EAAkB;IAC5C,IAAM,MAAM,GAAG,IAAA,iCAAwB,EAAC,EAAE,CAAC,CAAC;IAC5C,6BACK,MAAM,KACT,MAAM,EAAE,EAAE,CAAC,MAAM,EACjB,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,wBAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,IAC7C;AACJ,CAAC,CAAC;AAEK,IAAM,gBAAgB,GAAG,UAAC,CAAc;;IAC7C,IAAM,MAAM,GAAG,IAAA,+BAAsB,EAAC,CAAC,CAAC,CAAC;IACzC,6BACK,MAAM,KACT,MAAM,EAAE,CAAC,CAAC,MAAM,EAChB,IAAI,EAAE,CAAA,MAAA,CAAC,CAAC,IAAI,0CAAE,QAAQ,EAAE,KAAI,IAAI,IAChC;AACJ,CAAC,CAAC;AAPW,QAAA,gBAAgB,oBAO3B;AAEF,qBAAe;IACb,iBAAiB,2BAAA;IACjB,kBAAkB,oBAAA;IAClB,gBAAgB,0BAAA;CACjB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BigNumber } from "bignumber.js";
|
|
2
|
+
import type { TransactionCommon, TransactionCommonRaw } from "../../types/transaction";
|
|
3
|
+
export declare type Transaction = TransactionCommon & {
|
|
4
|
+
family: "celo";
|
|
5
|
+
fees: BigNumber | null | undefined;
|
|
6
|
+
};
|
|
7
|
+
export declare type TransactionRaw = TransactionCommonRaw & {
|
|
8
|
+
family: "celo";
|
|
9
|
+
fees: string | null | undefined;
|
|
10
|
+
};
|
|
11
|
+
export declare type CoreStatics = Record<string, never>;
|
|
12
|
+
export declare type CoreAccountSpecifics = Record<string, never>;
|
|
13
|
+
export declare type CoreOperationSpecifics = Record<string, never>;
|
|
14
|
+
export declare type CoreCurrencySpecifics = Record<string, never>;
|
|
15
|
+
export declare const reflect: (_declare: any) => void;
|
|
16
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/families/celo/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,EACV,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,yBAAyB,CAAC;AAEjC,oBAAY,WAAW,GAAG,iBAAiB,GAAG;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,SAAS,GAAG,IAAI,GAAG,SAAS,CAAC;CACpC,CAAC;AACF,oBAAY,cAAc,GAAG,oBAAoB,GAAG;IAClD,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CACjC,CAAC;AAEF,oBAAY,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAChD,oBAAY,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzD,oBAAY,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC3D,oBAAY,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC1D,eAAO,MAAM,OAAO,aAAc,GAAG,SAAO,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/families/celo/types.ts"],"names":[],"mappings":";;;AAmBO,IAAM,OAAO,GAAG,UAAC,QAAa,IAAM,CAAC,CAAC;AAAhC,QAAA,OAAO,WAAyB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ethereum.scanAccounts.1.d.ts","sourceRoot":"","sources":["../../../../src/families/ethereum/datasets/ethereum.scanAccounts.1.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ethereum.scanAccounts.1.d.ts","sourceRoot":"","sources":["../../../../src/families/ethereum/datasets/ethereum.scanAccounts.1.ts"],"names":[],"mappings":";;;;;AAAA,wBA+CE"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
exports.__esModule = true;
|
|
3
3
|
exports["default"] = {
|
|
4
4
|
name: "ethereum seed 1",
|
|
5
|
+
unstableAccounts: true,
|
|
5
6
|
apdus: "\n => e00200000d038000002c8000003c80000000\n <= 410469877df9567b58e6ef8f6cf1fb8a8e1bf28a327dee31b183a6b9cd1f3da063af0924506a9912793ef31e41df19f8653fa31bb1fecc32d2e41abdddb22ccb621028373561453661383832363036353137343345356546433033373937313136413335363539663638359000\n => e002000011048000002c8000003c8000000000000000\n <= 4104b7577f404537d1e934a8d2a1fd2552a7f399928b5af0aad714acc17b36865b3f5d1843d6a580c737c051656ac35978283a388a759911d289e9994071247d167528356466304333363936343142384166336337653961653037364535343636654636373833313943649000\n => e002000011048000002c8000003c8000000000000001\n <= 4104bee21a16156c645d0150e262c40648b9fd938c6462efe3adf9051efe077d30b356c86b8bc8a182e58cdc514e6d0c2670f6626d34f78220187e2d279d661d23f628446336313732383838343733383239324134373236353042624133653936433261344638383739369000\n => e002000011048000002c8000003c8000000000000002\n <= 410467f77bf213f0de5fd7ae7ac2ca2b6f7ad6cacecbb8688acd0bcf0fcc5b7b58512fe786639619b9f4a513061dd0355590ec5b7d2c4d934c43a37778920bf07e1a28623262344230413836384543326530613162326533314131304142414130393365463032386544389000\n => e002000011048000002c8000003c8000000000000003\n <= 4104dcce479cd733a7972cea67f0b5bf92d786a1e62a9afe5e50ddd2f7f7c8c1aaff89e28b236f5f1e75c702c3c0116de49dde6b32f06f66937f0b190bdd730bd84e28613563334139333430364465323733666639386244443343653935314232653431423137436443469000\n => e002000011048000002c8000003c8000000000000004\n <= 4104b60582b8ea13540e5292396949f9d2ed23d9ec4344e2463e9fe7fa36c12372da03a0427c48d653dd59abfcbb7628b323076415f1fd53bc601b8071d82ddd635528393945363561463136626644393139303246623638394163373938343338633042464334373439359000\n => e002000011048000002c8000003c8000000000000005\n <= 4104126bf90b475158cb8c947dbe47d9ecdff88c34c96c7b7f4fc17a05257dff1024c089fd51f657fa7f5b1041d23bc67d46cd0dd4df86c5318f653486199313e18f28663736394533463933663831313733653836333365354461653646433031426262443163634230389000\n => e002000011048000002c8000003c8000000000000006\n <= 4104dc7934183510e92e07136e9192da7d5bbd4c3a757b4d9bdf8dcca9baabdf8efddfad24ef74e8a0db52d9e4171516665ff6e4cd152273f460627933df3ced177828463439386638653139323342653437633335343932376445334332313661633341453734666535619000\n => e002000011048000002c8000003c8000000000000007\n <= 4104b7664a7012f69cee691362377df6d8558b0acfe1541dbf95af90e919d6867ac9d46b3b0b42e98fe8543c15ae501fed3d85869fd0310d9804faed0d07ae3b871628353932393338336336626631624439666533383462423665363162394232413230416637434361429000\n => e002000011048000002c8000003c8000000000000008\n <= 41045cdb8bc99d890837444698a53d9c18d22c6159e0727e051fee54e7299318282d3fe882b4aa133e7e15529e90b824b4f83ea5242b3ad4651c7d9cca12c796e45428634339303838363541443934303634623733433739663235393861373966393843654544364446619000\n => e002000011048000002c8000003c8000000000000009\n <= 4104720ec99d2297e627e239764e519be6900d06fc3d9145e306daeace60944c3c6dc14e74f24d27fc98278c0c07de821bae71ed5c95e9a7b95538637e817763609128373731663039424535353143386346393734426141426336373365324232323132643637383236469000\n => e002000011048000002c8000003c800000000000000a\n <= 41043a98496a4115f61e264bd74ba1ea661729ccfa239e72318ecbd307fb747d2032be5e308e435b24417320a95b719d60b7740b0bf297f926b414b4d3b44d903a9f28384138383238373537353662333831336262613844644631376634304232363064423232466334379000\n => e002000011048000002c8000003c800000000000000b\n <= 41040f3a6497cdef24c68b895a0d8a9f8b54e16ee84e4905a24236a242a82a900e068cb72ad71f52b57dfa41e00090cd035d1a4205dbe3982ac88189c743edb856a828646431344537456135384533384343316134653737386265663338323831664139413134353232419000\n => e002000015058000002c8000003c800000000000000000000001\n <= 41040374fb34926a57e184cdd3438109021b3169a9c74ffe726d1abc7a187fa9440a11f071b96f72c8e9e0ea1f82dc2180166bd8c7bae9401cdd3d2466a40e1755ca28304536613732456439323243323338394466303365383666354537394261374336344535343933379000\n => e002000015058000002c8000003c800000000000000000000000\n <= 410478f6d00bc3be349f69a8b88b3957d569d7ed44d27d0824988107ba1a6117cfcefc22b03b9be870ddadb643eeda4357761d44419cfbdccb19701be086780ff71128304533463062623935313646303166324333346332354530393537353138623861433934313463359000\n => e002000015058000002c8000003c800000010000000000000000\n <= 4104c20d717f7652a279588b267457c051e387fbeb8648b730cd3daeaa8fa3774f37ab535ab9bd024b87776b77b3409546a0b64e1b14828ea43891b4200318fc90fd28363637463942453934613432343538636235334133413636353131446361313962333937373338649000\n => e002000015058000002c8000003c800000020000000000000000\n <= 4104e788111a6c0254ec8184453383d2d8b18c8e0b86d1fea93c2691a9bc6240572f24129a634155d1291228a1721fc88737f75e51bb7575ccc69937d649c1422ea028386639353530323931314338316135454332626134623831356564326432433565316338383932359000\n => e002000015058000002c8000003c800000030000000000000000\n <= 4104ffd79641446518c675ad32e6434a2aba9e7c426200bc336d78222cbec00d2c8aa7a8c685084f450870e2a801049795ba051f8b3a878a586158697d6bd4ce0b6d28386261343131303566464135343531306362394436376362334137323632344434303532634130389000\n => e002000015058000002c8000003c800000040000000000000000\n <= 4104602f7c0f3f73a914b3dd83e8bb6f11f3dc8ea1d2c7308fa4f8d9d2000a4419eec324393f4cf191e83f3adc64de9388f5979664c6d6dac4c23c0566d7aabbddfa28366233343933464531383145413238336530333335653544384437363865323132326243366331389000\n => e002000015058000002c8000003c800000050000000000000000\n <= 410484f94dfa2c52fee4f8b37b578b0087de88ee282cb788a56af1eabd7711ddd37e6da1c9eada59926b7828d7e12db21c443ed0a2ca4521561806d3175407a557c128323546456139343435344664334137413138443935383131463565346562353733633163434334329000\n => e002000015058000002c8000003c800000060000000000000000\n <= 4104e7c7f373d0a568554b5372b68f6e697aee3947c053ee5d882afba2f2c9a44273768b2e61b01de519b0c1f365e23aea5e3d041a40a347a125e202a2d7d7ef596828624636373337664138373538463134443838376531646633323442423431363136334533366436319000\n "
|
|
6
7
|
};
|
|
7
8
|
//# sourceMappingURL=ethereum.scanAccounts.1.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ethereum.scanAccounts.1.js","sourceRoot":"","sources":["../../../../src/families/ethereum/datasets/ethereum.scanAccounts.1.ts"],"names":[],"mappings":";;AAAA,qBAAe;IACb,IAAI,EAAE,iBAAiB;IACvB,KAAK,EAAE,wzLA2CJ;CACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"ethereum.scanAccounts.1.js","sourceRoot":"","sources":["../../../../src/families/ethereum/datasets/ethereum.scanAccounts.1.ts"],"names":[],"mappings":";;AAAA,qBAAe;IACb,IAAI,EAAE,iBAAiB;IACvB,gBAAgB,EAAE,IAAI;IACtB,KAAK,EAAE,wzLA2CJ;CACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"erc1155.d.ts","sourceRoot":"","sources":["../../../../src/families/ethereum/modules/erc1155.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAe,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"erc1155.d.ts","sourceRoot":"","sources":["../../../../src/families/ethereum/modules/erc1155.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAe,MAAM,UAAU,CAAC;AAWxD,oBAAY,KAAK,GAAG,kBAAkB,CAAC;AAiJvC,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,UAAU,CAE3C,CAAC"}
|
|
@@ -25,6 +25,7 @@ var erc721_1 = require("./erc721");
|
|
|
25
25
|
var notOwnedNft = (0, errors_1.createCustomErrorClass)("NotOwnedNft");
|
|
26
26
|
var notEnoughNftOwned = (0, errors_1.createCustomErrorClass)("NotEnoughNftOwned");
|
|
27
27
|
var notTokenIdsProvided = (0, errors_1.createCustomErrorClass)("NotTokenIdsProvided");
|
|
28
|
+
var quantityNeedsToBePositive = (0, errors_1.createCustomErrorClass)("QuantityNeedsToBePositive");
|
|
28
29
|
var erc1155Transfer = {
|
|
29
30
|
/**
|
|
30
31
|
* Tx data is filled during the buildEthereumTx
|
|
@@ -40,7 +41,7 @@ var erc1155Transfer = {
|
|
|
40
41
|
* Tx status is filled after the buildEthereumTx
|
|
41
42
|
*/
|
|
42
43
|
fillTransactionStatus: function (a, t, result) {
|
|
43
|
-
var _a;
|
|
44
|
+
var _a, _b;
|
|
44
45
|
(0, transaction_1.validateRecipient)(a.currency, t.recipient, result);
|
|
45
46
|
if (!result.errors.recipient) {
|
|
46
47
|
result.totalSpent = result.estimatedFees;
|
|
@@ -48,7 +49,12 @@ var erc1155Transfer = {
|
|
|
48
49
|
if (result.estimatedFees.gt(a.spendableBalance)) {
|
|
49
50
|
result.errors.amount = new errors_1.NotEnoughBalanceInParentAccount();
|
|
50
51
|
}
|
|
51
|
-
|
|
52
|
+
(_a = t.quantities) === null || _a === void 0 ? void 0 : _a.forEach(function (quantity) {
|
|
53
|
+
if (quantity.isLessThan(1)) {
|
|
54
|
+
result.errors.amount = new quantityNeedsToBePositive();
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
var enoughTokensOwned = ((_b = t.tokenIds) === null || _b === void 0 ? void 0 : _b.reduce(function (acc, tokenId, index) {
|
|
52
58
|
var _a, _b;
|
|
53
59
|
if (acc instanceof Error) {
|
|
54
60
|
return acc;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"erc1155.js","sourceRoot":"","sources":["../../../../src/families/ethereum/modules/erc1155.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,gDAA0B;AAC1B,kEAAiC;AACjC,wDAAkC;AAClC,8DAAqC;AACrC,2CAG0B;AAC1B,8CAAmD;AAGnD,mCAA8C;AAE9C,IAAM,WAAW,GAAG,IAAA,+BAAsB,EAAC,aAAa,CAAC,CAAC;AAC1D,IAAM,iBAAiB,GAAG,IAAA,+BAAsB,EAAC,mBAAmB,CAAC,CAAC;AACtE,IAAM,mBAAmB,GAAG,IAAA,+BAAsB,EAAC,qBAAqB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"erc1155.js","sourceRoot":"","sources":["../../../../src/families/ethereum/modules/erc1155.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,7 @@ import type { Transaction } from "./types";
|
|
|
14
14
|
*/
|
|
15
15
|
export declare const getTransactionParams: CacheRes<Array<void>, Record<string, any>>;
|
|
16
16
|
/**
|
|
17
|
-
* Cache the payment info (fee estimate), with a hash
|
|
17
|
+
* Cache the payment info (fee estimate), with a hash depending on fees-changing transaction params and tx size.
|
|
18
18
|
*
|
|
19
19
|
* @param {Account} arg1.a
|
|
20
20
|
* @param {Transaction} arg1.t
|
|
@@ -92,7 +92,7 @@ exports.getTransactionParams = (0, cache_1.makeLRUCache)(function () { return __
|
|
|
92
92
|
maxAge: 5 * 60 * 1000
|
|
93
93
|
});
|
|
94
94
|
/**
|
|
95
|
-
* Cache the payment info (fee estimate), with a hash
|
|
95
|
+
* Cache the payment info (fee estimate), with a hash depending on fees-changing transaction params and tx size.
|
|
96
96
|
*
|
|
97
97
|
* @param {Account} arg1.a
|
|
98
98
|
* @param {Transaction} arg1.t
|