@ledgerhq/live-common 24.1.0 → 25.0.0-next.1
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/apps/support.js +1 -1
- package/lib/apps/support.js.map +1 -1
- package/lib/bot/index.d.ts.map +1 -1
- package/lib/bot/index.js +4 -2
- package/lib/bot/index.js.map +1 -1
- package/lib/bot/specs.d.ts +1 -0
- package/lib/bot/specs.d.ts.map +1 -1
- package/lib/bot/specs.js +6 -1
- package/lib/bot/specs.js.map +1 -1
- package/lib/currencies/support.d.ts +1 -1
- package/lib/currencies/support.d.ts.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/errors.d.ts +101 -306
- package/lib/errors.d.ts.map +1 -1
- package/lib/errors.js +3 -4
- package/lib/errors.js.map +1 -1
- package/lib/errors.test.d.ts +2 -0
- package/lib/errors.test.d.ts.map +1 -0
- package/lib/errors.test.js +20 -0
- package/lib/errors.test.js.map +1 -0
- package/lib/exchange/swap/utils/index.test.js +2 -2
- package/lib/exchange/swap/utils/index.test.js.map +1 -1
- package/lib/families/bitcoin/datasets/bitcoin.d.ts.map +1 -1
- package/lib/families/bitcoin/datasets/bitcoin.js +2 -4
- package/lib/families/bitcoin/datasets/bitcoin.js.map +1 -1
- package/lib/families/bitcoin/descriptor.d.ts.map +1 -1
- package/lib/families/bitcoin/descriptor.js +3 -1
- package/lib/families/bitcoin/descriptor.js.map +1 -1
- package/lib/families/bitcoin/errors.d.ts +1 -3
- package/lib/families/bitcoin/errors.d.ts.map +1 -1
- package/lib/families/bitcoin/exchange.js +1 -1
- package/lib/families/bitcoin/exchange.js.map +1 -1
- package/lib/families/bitcoin/hw-getAddress.d.ts +1 -1
- package/lib/families/bitcoin/hw-getAddress.d.ts.map +1 -1
- package/lib/families/bitcoin/js-synchronisation.d.ts.map +1 -1
- package/lib/families/bitcoin/js-synchronisation.js +20 -2
- package/lib/families/bitcoin/js-synchronisation.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/storage/index.d.ts +0 -36
- package/lib/families/bitcoin/wallet-btc/storage/index.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/storage/index.js +14 -14
- package/lib/families/bitcoin/wallet-btc/storage/index.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/storage/types.d.ts +1 -0
- package/lib/families/bitcoin/wallet-btc/storage/types.d.ts.map +1 -1
- package/lib/families/bitcoin/xpub.txs.loadExport.unit.test.d.ts +2 -0
- package/lib/families/bitcoin/xpub.txs.loadExport.unit.test.d.ts.map +1 -0
- package/lib/families/bitcoin/xpub.txs.loadExport.unit.test.js +146 -0
- package/lib/families/bitcoin/xpub.txs.loadExport.unit.test.js.map +1 -0
- package/lib/families/cardano/errors.d.ts +1 -3
- package/lib/families/cardano/errors.d.ts.map +1 -1
- package/lib/families/crypto_org/errors.d.ts +3 -9
- package/lib/families/crypto_org/errors.d.ts.map +1 -1
- package/lib/families/ethereum/exchange.js +1 -1
- package/lib/families/ethereum/exchange.js.map +1 -1
- package/lib/families/ethereum/modules/index.d.ts +1 -1
- package/lib/families/ethereum/modules/index.d.ts.map +1 -1
- package/lib/families/ethereum/signOperation.js +2 -2
- package/lib/families/ethereum/signOperation.js.map +1 -1
- package/lib/families/ethereum/specs.d.ts +1 -1
- package/lib/families/ethereum/specs.js +5 -5
- package/lib/families/ethereum/specs.js.map +1 -1
- package/lib/families/polkadot/errors.d.ts +12 -36
- package/lib/families/polkadot/errors.d.ts.map +1 -1
- package/lib/families/ripple/exchange.js +1 -1
- package/lib/families/ripple/exchange.js.map +1 -1
- package/lib/families/solana/api/chain/instruction/token/types.d.ts +3 -3
- package/lib/families/solana/errors.d.ts +20 -60
- package/lib/families/solana/errors.d.ts.map +1 -1
- package/lib/families/stellar/api/horizon.d.ts +29 -7
- package/lib/families/stellar/api/horizon.d.ts.map +1 -1
- package/lib/families/stellar/api/horizon.js +114 -58
- package/lib/families/stellar/api/horizon.js.map +1 -1
- package/lib/families/stellar/api/index.d.ts +1 -1
- package/lib/families/stellar/api/index.d.ts.map +1 -1
- package/lib/families/stellar/api/index.js +5 -1
- package/lib/families/stellar/api/index.js.map +1 -1
- package/lib/families/stellar/bridge/mock.d.ts.map +1 -1
- package/lib/families/stellar/bridge/mock.js +4 -1
- package/lib/families/stellar/bridge/mock.js.map +1 -1
- package/lib/families/stellar/bridge.integration.test.js +12 -4
- package/lib/families/stellar/bridge.integration.test.js.map +1 -1
- package/lib/families/stellar/cli-transaction.d.ts +3 -1
- package/lib/families/stellar/cli-transaction.d.ts.map +1 -1
- package/lib/families/stellar/cli-transaction.js +48 -2
- package/lib/families/stellar/cli-transaction.js.map +1 -1
- package/lib/families/stellar/deviceTransactionConfig.d.ts +7 -1
- package/lib/families/stellar/deviceTransactionConfig.d.ts.map +1 -1
- package/lib/families/stellar/deviceTransactionConfig.js +12 -1
- package/lib/families/stellar/deviceTransactionConfig.js.map +1 -1
- package/lib/families/stellar/errors.d.ts +12 -0
- package/lib/families/stellar/errors.d.ts.map +1 -0
- package/lib/families/stellar/errors.js +16 -0
- package/lib/families/stellar/errors.js.map +1 -0
- package/lib/families/stellar/exchange.js +1 -1
- package/lib/families/stellar/exchange.js.map +1 -1
- package/lib/families/stellar/js-buildTransaction.d.ts.map +1 -1
- package/lib/families/stellar/js-buildTransaction.js +34 -16
- package/lib/families/stellar/js-buildTransaction.js.map +1 -1
- package/lib/families/stellar/js-createTransaction.d.ts.map +1 -1
- package/lib/families/stellar/js-createTransaction.js +4 -1
- package/lib/families/stellar/js-createTransaction.js.map +1 -1
- package/lib/families/stellar/js-estimateMaxSpendable.js +2 -1
- package/lib/families/stellar/js-estimateMaxSpendable.js.map +1 -1
- package/lib/families/stellar/js-getTransactionStatus.d.ts.map +1 -1
- package/lib/families/stellar/js-getTransactionStatus.js +127 -57
- package/lib/families/stellar/js-getTransactionStatus.js.map +1 -1
- package/lib/families/stellar/js-prepareTransaction.d.ts.map +1 -1
- package/lib/families/stellar/js-prepareTransaction.js +25 -7
- package/lib/families/stellar/js-prepareTransaction.js.map +1 -1
- package/lib/families/stellar/js-signOperation.d.ts.map +1 -1
- package/lib/families/stellar/js-signOperation.js +33 -6
- package/lib/families/stellar/js-signOperation.js.map +1 -1
- package/lib/families/stellar/js-synchronization.d.ts +1 -1
- package/lib/families/stellar/js-synchronization.d.ts.map +1 -1
- package/lib/families/stellar/js-synchronization.js +42 -16
- package/lib/families/stellar/js-synchronization.js.map +1 -1
- package/lib/families/stellar/logic.d.ts +21 -14
- package/lib/families/stellar/logic.d.ts.map +1 -1
- package/lib/families/stellar/logic.js +158 -57
- package/lib/families/stellar/logic.js.map +1 -1
- package/lib/families/stellar/specs.d.ts.map +1 -1
- package/lib/families/stellar/specs.js +182 -7
- package/lib/families/stellar/specs.js.map +1 -1
- package/lib/families/stellar/speculos-deviceActions.d.ts.map +1 -1
- package/lib/families/stellar/speculos-deviceActions.js +60 -28
- package/lib/families/stellar/speculos-deviceActions.js.map +1 -1
- package/lib/families/stellar/tokens.d.ts +11 -0
- package/lib/families/stellar/tokens.d.ts.map +1 -0
- package/lib/families/stellar/tokens.js +82 -0
- package/lib/families/stellar/tokens.js.map +1 -0
- package/lib/families/stellar/transaction.d.ts +2 -2
- package/lib/families/stellar/transaction.d.ts.map +1 -1
- package/lib/families/stellar/transaction.js +32 -6
- package/lib/families/stellar/transaction.js.map +1 -1
- package/lib/families/stellar/types.d.ts +45 -0
- package/lib/families/stellar/types.d.ts.map +1 -1
- package/lib/families/stellar/types.js +7 -1
- package/lib/families/stellar/types.js.map +1 -1
- package/lib/families/tezos/exchange.js +1 -1
- package/lib/families/tezos/exchange.js.map +1 -1
- package/lib/generated/cli-transaction.d.ts +1 -0
- package/lib/generated/cli-transaction.d.ts.map +1 -1
- package/lib/generated/specs.d.ts +1 -1
- package/lib/generated/transaction.d.ts +1 -1
- package/lib/hw/signMessage/index.d.ts +4 -3
- package/lib/hw/signMessage/index.d.ts.map +1 -1
- package/lib/hw/signMessage/index.js +25 -11
- package/lib/hw/signMessage/index.js.map +1 -1
- package/lib/hw/signMessage/index.test.d.ts +2 -0
- package/lib/hw/signMessage/index.test.d.ts.map +1 -0
- package/lib/hw/signMessage/index.test.js +126 -0
- package/lib/hw/signMessage/index.test.js.map +1 -0
- package/lib/load/speculos.d.ts.map +1 -1
- package/lib/load/speculos.js +1 -3
- package/lib/load/speculos.js.map +1 -1
- package/lib/mock/Btc.d.ts +1 -1
- package/lib/mock/Btc.d.ts.map +1 -1
- package/lib/performance.d.ts +10 -0
- package/lib/performance.d.ts.map +1 -0
- package/lib/performance.js +72 -0
- package/lib/performance.js.map +1 -0
- package/lib/performance.test.d.ts +2 -0
- package/lib/performance.test.d.ts.map +1 -0
- package/lib/performance.test.js +28 -0
- package/lib/performance.test.js.map +1 -0
- package/lib/platform/providers/RemoteLiveAppProvider/api/index.d.ts.map +1 -1
- package/lib/platform/providers/RemoteLiveAppProvider/api/index.js +28 -0
- package/lib/platform/providers/RemoteLiveAppProvider/api/index.js.map +1 -1
- package/lib/platform/providers/RemoteLiveAppProvider/api/mock.json +0 -31
- package/lib/types/currencies.d.ts +1 -1
- package/lib/types/currencies.d.ts.map +1 -1
- package/lib/walletconnect/Provider.d.ts.map +1 -1
- package/lib/walletconnect/Provider.js +1 -3
- package/lib/walletconnect/Provider.js.map +1 -1
- package/package.json +71 -19
- package/src/apps/support.ts +1 -1
- package/src/bot/index.ts +3 -1
- package/src/bot/specs.ts +7 -1
- package/src/currencies/__snapshots__/sortByMarketcap.test.ts.snap +34 -6
- package/src/currencies/support.ts +1 -1
- package/src/env.ts +10 -0
- package/src/errors.test.ts +21 -0
- package/src/errors.ts +1 -6
- package/src/exchange/swap/utils/index.test.ts +1 -1
- package/src/families/bitcoin/datasets/bitcoin.ts +0 -2
- package/src/families/bitcoin/descriptor.ts +4 -1
- package/src/families/bitcoin/exchange.ts +1 -1
- package/src/families/bitcoin/hw-getAddress.ts +1 -1
- package/src/families/bitcoin/js-synchronisation.ts +23 -1
- package/src/families/bitcoin/wallet-btc/storage/index.ts +17 -31
- package/src/families/bitcoin/wallet-btc/storage/types.ts +1 -0
- package/src/families/bitcoin/wallet-btc/wallet.ts +1 -1
- package/src/families/bitcoin/xpub.txs.loadExport.unit.test.ts +101 -0
- package/src/families/ethereum/exchange.ts +1 -1
- package/src/families/ethereum/modules/index.ts +1 -1
- package/src/families/ethereum/signOperation.ts +2 -2
- package/src/families/ethereum/specs.ts +5 -5
- package/src/families/ripple/exchange.ts +1 -1
- package/src/families/stellar/__snapshots__/bridge.integration.test.ts.snap +765 -339
- package/src/families/stellar/api/horizon.ts +115 -33
- package/src/families/stellar/api/index.ts +4 -0
- package/src/families/stellar/bridge/mock.ts +3 -0
- package/src/families/stellar/bridge.integration.test.ts +10 -2
- package/src/families/stellar/cli-transaction.ts +75 -2
- package/src/families/stellar/deviceTransactionConfig.ts +22 -0
- package/src/families/stellar/errors.ts +34 -0
- package/src/families/stellar/exchange.ts +1 -1
- package/src/families/stellar/js-buildTransaction.ts +56 -16
- package/src/families/stellar/js-createTransaction.ts +3 -0
- package/src/families/stellar/js-estimateMaxSpendable.ts +1 -1
- package/src/families/stellar/js-getTransactionStatus.ts +152 -60
- package/src/families/stellar/js-prepareTransaction.ts +4 -3
- package/src/families/stellar/js-signOperation.ts +37 -6
- package/src/families/stellar/js-synchronization.ts +53 -11
- package/src/families/stellar/logic.ts +198 -62
- package/src/families/stellar/specs.ts +227 -8
- package/src/families/stellar/speculos-deviceActions.ts +66 -22
- package/src/families/stellar/tokens.ts +118 -0
- package/src/families/stellar/transaction.ts +31 -3
- package/src/families/stellar/types.ts +52 -0
- package/src/families/tezos/exchange.ts +1 -1
- package/src/hw/signMessage/index.test.ts +128 -0
- package/src/hw/signMessage/index.ts +37 -15
- package/src/load/speculos.ts +1 -3
- package/src/mock/Btc.ts +1 -1
- package/src/performance.test.ts +26 -0
- package/src/performance.ts +61 -0
- package/src/platform/providers/RemoteLiveAppProvider/api/index.ts +6 -0
- package/src/platform/providers/RemoteLiveAppProvider/api/mock.json +1 -32
- package/src/types/currencies.ts +1 -1
- package/src/walletconnect/Provider.tsx +4 -5
|
@@ -5,12 +5,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
exports.__esModule = true;
|
|
6
6
|
var expect_1 = __importDefault(require("expect"));
|
|
7
7
|
var invariant_1 = __importDefault(require("invariant"));
|
|
8
|
+
var bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
8
9
|
var currencies_1 = require("../../currencies");
|
|
9
10
|
var specs_1 = require("../../bot/specs");
|
|
10
11
|
var devices_1 = require("@ledgerhq/devices");
|
|
11
12
|
var currency = (0, currencies_1.getCryptoCurrencyById)("stellar");
|
|
12
13
|
var minAmountCutoff = (0, currencies_1.parseCurrencyUnit)(currency.units[0], "0.1");
|
|
13
|
-
var reserve = (0, currencies_1.parseCurrencyUnit)(currency.units[0], "1");
|
|
14
|
+
var reserve = (0, currencies_1.parseCurrencyUnit)(currency.units[0], "1.5");
|
|
15
|
+
var MAX_FEE = 5000;
|
|
16
|
+
var USDC_CODE = "USDC";
|
|
17
|
+
var USDC_ISSUER = "GA5ZSEJYB37JRC5AVCIA5MOP4RHTM335X2KGX3IHOJAPP5RE34K4KZVN";
|
|
18
|
+
var USDC_ASSET_ID = "".concat(USDC_CODE, ":").concat(USDC_ISSUER);
|
|
19
|
+
var MIN_ASSET_BALANCE = (0, currencies_1.parseCurrencyUnit)(currency.units[0], "0.01");
|
|
20
|
+
var findAssetUSDC = function (subAccounts) {
|
|
21
|
+
return (subAccounts || []).find(function (s) { return s.id.endsWith(USDC_ASSET_ID); });
|
|
22
|
+
};
|
|
14
23
|
var stellar = {
|
|
15
24
|
name: "Stellar",
|
|
16
25
|
currency: currency,
|
|
@@ -18,27 +27,85 @@ var stellar = {
|
|
|
18
27
|
model: devices_1.DeviceModelId.nanoS,
|
|
19
28
|
appName: "Stellar"
|
|
20
29
|
},
|
|
30
|
+
testTimeout: 2 * 60 * 1000,
|
|
21
31
|
mutations: [
|
|
22
32
|
{
|
|
23
|
-
name: "move ~50%",
|
|
33
|
+
name: "move ~50% XLM",
|
|
24
34
|
maxRun: 2,
|
|
25
35
|
transaction: function (_a) {
|
|
26
36
|
var account = _a.account, siblings = _a.siblings, bridge = _a.bridge, maxSpendable = _a.maxSpendable;
|
|
27
|
-
(0, invariant_1["default"])(maxSpendable.gt(minAmountCutoff), "balance is too low");
|
|
37
|
+
(0, invariant_1["default"])(maxSpendable.gt(minAmountCutoff), "XLM balance is too low");
|
|
28
38
|
var transaction = bridge.createTransaction(account);
|
|
29
39
|
var sibling = (0, specs_1.pickSiblings)(siblings, 4);
|
|
30
40
|
var recipient = sibling.freshAddress;
|
|
31
41
|
var amount = maxSpendable.div(1.9 + 0.2 * Math.random()).integerValue();
|
|
32
42
|
if (!sibling.used && amount.lt(reserve)) {
|
|
33
|
-
(0, invariant_1["default"])(maxSpendable.gt(reserve.plus(minAmountCutoff)), "not enough funds to send to new account");
|
|
43
|
+
(0, invariant_1["default"])(maxSpendable.gt(reserve.plus(minAmountCutoff)), "not enough XLM funds to send to new account");
|
|
34
44
|
amount = reserve;
|
|
35
45
|
}
|
|
36
46
|
var updates = [
|
|
47
|
+
{
|
|
48
|
+
recipient: recipient,
|
|
49
|
+
// Setting higher max fee here to make sure transaction doesn't
|
|
50
|
+
// time out.
|
|
51
|
+
fees: new bignumber_js_1["default"](MAX_FEE)
|
|
52
|
+
},
|
|
37
53
|
{
|
|
38
54
|
amount: amount
|
|
39
55
|
},
|
|
56
|
+
];
|
|
57
|
+
if (Math.random() < 0.5) {
|
|
58
|
+
updates.push({
|
|
59
|
+
memoType: "MEMO_TEXT",
|
|
60
|
+
memoValue: "Ledger Live"
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
return {
|
|
64
|
+
transaction: transaction,
|
|
65
|
+
updates: updates
|
|
66
|
+
};
|
|
67
|
+
},
|
|
68
|
+
test: function (_a) {
|
|
69
|
+
var account = _a.account, accountBeforeTransaction = _a.accountBeforeTransaction, operation = _a.operation, transaction = _a.transaction;
|
|
70
|
+
// We don't know what the final fee will be until after the tx is
|
|
71
|
+
// submitted. Using higher max fee to make sure tx doesn't time out.
|
|
72
|
+
(0, expect_1["default"])(account.balance.toNumber()).toBeLessThanOrEqual(accountBeforeTransaction.balance.minus(operation.value).toNumber());
|
|
73
|
+
if (transaction.memoValue) {
|
|
74
|
+
(0, expect_1["default"])(operation.extra).toMatchObject({
|
|
75
|
+
memo: transaction.memoValue
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
var getType = function () {
|
|
79
|
+
switch (transaction.mode) {
|
|
80
|
+
case "send":
|
|
81
|
+
return "send";
|
|
82
|
+
case "changeTrust":
|
|
83
|
+
return /change_trust/;
|
|
84
|
+
default:
|
|
85
|
+
return "";
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
(0, expect_1["default"])(transaction.mode).toMatch(getType());
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
name: "Send max XLM",
|
|
93
|
+
maxRun: 2,
|
|
94
|
+
transaction: function (_a) {
|
|
95
|
+
var account = _a.account, siblings = _a.siblings, bridge = _a.bridge, maxSpendable = _a.maxSpendable;
|
|
96
|
+
(0, invariant_1["default"])(maxSpendable.gt(minAmountCutoff), "XLM balance is too low");
|
|
97
|
+
var transaction = bridge.createTransaction(account);
|
|
98
|
+
var sibling = (0, specs_1.pickSiblings)(siblings, 4);
|
|
99
|
+
var recipient = sibling.freshAddress;
|
|
100
|
+
var updates = [
|
|
40
101
|
{
|
|
41
|
-
recipient: recipient
|
|
102
|
+
recipient: recipient,
|
|
103
|
+
// Setting higher max fee here to make sure transaction doesn't
|
|
104
|
+
// time out.
|
|
105
|
+
fees: new bignumber_js_1["default"](MAX_FEE)
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
useAllAmount: true
|
|
42
109
|
},
|
|
43
110
|
];
|
|
44
111
|
if (Math.random() < 0.5) {
|
|
@@ -54,9 +121,117 @@ var stellar = {
|
|
|
54
121
|
},
|
|
55
122
|
test: function (_a) {
|
|
56
123
|
var account = _a.account, accountBeforeTransaction = _a.accountBeforeTransaction, operation = _a.operation, transaction = _a.transaction;
|
|
57
|
-
|
|
124
|
+
// We don't know what the final fee will be until after the tx is
|
|
125
|
+
// submitted. Using higher max fee to make sure tx doesn't time out.
|
|
126
|
+
(0, expect_1["default"])(account.balance.toNumber()).toBeLessThanOrEqual(accountBeforeTransaction.balance.minus(operation.value).toNumber());
|
|
127
|
+
if (transaction.memoValue) {
|
|
128
|
+
(0, expect_1["default"])(operation.extra).toMatchObject({
|
|
129
|
+
memo: transaction.memoValue
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
var getType = function () {
|
|
133
|
+
switch (transaction.mode) {
|
|
134
|
+
case "send":
|
|
135
|
+
return "send";
|
|
136
|
+
case "changeTrust":
|
|
137
|
+
return /change_trust/;
|
|
138
|
+
default:
|
|
139
|
+
return "";
|
|
140
|
+
}
|
|
141
|
+
};
|
|
142
|
+
(0, expect_1["default"])(transaction.mode).toMatch(getType());
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
name: "add USDC asset",
|
|
147
|
+
maxRun: 1,
|
|
148
|
+
transaction: function (_a) {
|
|
149
|
+
var account = _a.account, bridge = _a.bridge, maxSpendable = _a.maxSpendable;
|
|
150
|
+
(0, invariant_1["default"])(maxSpendable.gt(reserve), "XLM balance is too low 1");
|
|
151
|
+
(0, invariant_1["default"])(account.subAccounts && !findAssetUSDC(account.subAccounts), "already have subaccounts");
|
|
152
|
+
var assetUSDC = findAssetUSDC((0, currencies_1.listTokensForCryptoCurrency)(account.currency));
|
|
153
|
+
(0, invariant_1["default"])(assetUSDC, "USDC asset not found");
|
|
154
|
+
var transaction = bridge.createTransaction(account);
|
|
155
|
+
var updates = [
|
|
156
|
+
{
|
|
157
|
+
mode: "changeTrust",
|
|
158
|
+
// Setting higher max fee here to make sure transaction doesn't
|
|
159
|
+
// time out.
|
|
160
|
+
fees: new bignumber_js_1["default"](MAX_FEE)
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
assetCode: USDC_CODE,
|
|
164
|
+
assetIssuer: USDC_ISSUER
|
|
165
|
+
},
|
|
166
|
+
];
|
|
167
|
+
return {
|
|
168
|
+
transaction: transaction,
|
|
169
|
+
updates: updates
|
|
170
|
+
};
|
|
171
|
+
},
|
|
172
|
+
test: function (_a) {
|
|
173
|
+
var _b;
|
|
174
|
+
var account = _a.account;
|
|
175
|
+
var assetId = "".concat(USDC_CODE, ":").concat(USDC_ISSUER);
|
|
176
|
+
var hasAsset = (_b = account.subAccounts) === null || _b === void 0 ? void 0 : _b.find(function (a) {
|
|
177
|
+
return a.id.endsWith(assetId);
|
|
178
|
+
});
|
|
179
|
+
(0, expect_1["default"])(hasAsset).toBeTruthy();
|
|
180
|
+
}
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
name: "move ~50% USDC asset",
|
|
184
|
+
maxRun: 1,
|
|
185
|
+
transaction: function (_a) {
|
|
186
|
+
var account = _a.account, siblings = _a.siblings, bridge = _a.bridge, maxSpendable = _a.maxSpendable;
|
|
187
|
+
(0, invariant_1["default"])(maxSpendable.gt(minAmountCutoff), "XLM balance is too low");
|
|
188
|
+
var usdcSubAccount = findAssetUSDC(account === null || account === void 0 ? void 0 : account.subAccounts);
|
|
189
|
+
(0, invariant_1["default"])(usdcSubAccount, "USDC asset not found");
|
|
190
|
+
(0, invariant_1["default"])(usdcSubAccount === null || usdcSubAccount === void 0 ? void 0 : usdcSubAccount.balance.gt(MIN_ASSET_BALANCE), "USDC balance is too low");
|
|
191
|
+
var siblingWithAssetUSDC = siblings.find(function (s) {
|
|
192
|
+
return findAssetUSDC(s.subAccounts);
|
|
193
|
+
});
|
|
194
|
+
(0, invariant_1["default"])(siblingWithAssetUSDC, "No siblings with USDC asset");
|
|
195
|
+
if (!usdcSubAccount || !siblingWithAssetUSDC) {
|
|
196
|
+
throw new Error("No USDC asset or sibling with USDC asset");
|
|
197
|
+
}
|
|
198
|
+
var transaction = bridge.createTransaction(account);
|
|
199
|
+
var recipient = siblingWithAssetUSDC.freshAddress;
|
|
200
|
+
var amount = usdcSubAccount.balance
|
|
201
|
+
.div(1.9 + 0.2 * Math.random())
|
|
202
|
+
.integerValue();
|
|
203
|
+
var updates = [
|
|
204
|
+
{
|
|
205
|
+
recipient: recipient
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
subAccountId: usdcSubAccount.id
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
amount: amount,
|
|
212
|
+
// Setting higher max fee here to make sure transaction doesn't
|
|
213
|
+
// time out.
|
|
214
|
+
fees: new bignumber_js_1["default"](MAX_FEE)
|
|
215
|
+
},
|
|
216
|
+
];
|
|
217
|
+
if (Math.random() < 0.5) {
|
|
218
|
+
updates.push({
|
|
219
|
+
memoType: "MEMO_TEXT",
|
|
220
|
+
memoValue: "Ledger Live"
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
return {
|
|
224
|
+
transaction: transaction,
|
|
225
|
+
updates: updates
|
|
226
|
+
};
|
|
227
|
+
},
|
|
228
|
+
test: function (_a) {
|
|
229
|
+
var account = _a.account, accountBeforeTransaction = _a.accountBeforeTransaction, operation = _a.operation, transaction = _a.transaction, status = _a.status;
|
|
230
|
+
var asset = findAssetUSDC(account === null || account === void 0 ? void 0 : account.subAccounts);
|
|
231
|
+
var assetBeforeTx = findAssetUSDC(accountBeforeTransaction === null || accountBeforeTransaction === void 0 ? void 0 : accountBeforeTransaction.subAccounts);
|
|
232
|
+
(0, expect_1["default"])(asset === null || asset === void 0 ? void 0 : asset.balance.toString()).toBe(assetBeforeTx === null || assetBeforeTx === void 0 ? void 0 : assetBeforeTx.balance.minus(status.amount).toString());
|
|
58
233
|
if (transaction.memoValue) {
|
|
59
|
-
(0, expect_1["default"])(operation.extra).
|
|
234
|
+
(0, expect_1["default"])(operation.extra).toMatchObject({
|
|
60
235
|
memo: transaction.memoValue
|
|
61
236
|
});
|
|
62
237
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specs.js","sourceRoot":"","sources":["../../../src/families/stellar/specs.ts"],"names":[],"mappings":";;;;;AAAA,kDAA4B;AAC5B,wDAAkC;
|
|
1
|
+
{"version":3,"file":"specs.js","sourceRoot":"","sources":["../../../src/families/stellar/specs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"speculos-deviceActions.d.ts","sourceRoot":"","sources":["../../../src/families/stellar/speculos-deviceActions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;;;;
|
|
1
|
+
{"version":3,"file":"speculos-deviceActions.d.ts","sourceRoot":"","sources":["../../../src/families/stellar/speculos-deviceActions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;;;;AAiH3C,wBAEE"}
|
|
@@ -3,26 +3,40 @@ exports.__esModule = true;
|
|
|
3
3
|
var currencies_1 = require("../../currencies");
|
|
4
4
|
var specs_1 = require("../../bot/specs");
|
|
5
5
|
var expectedAmount = function (_a) {
|
|
6
|
-
var account = _a.account, status = _a.status;
|
|
7
|
-
|
|
6
|
+
var account = _a.account, status = _a.status, transaction = _a.transaction;
|
|
7
|
+
if (transaction.assetCode && transaction.assetIssuer) {
|
|
8
|
+
var amount = (0, currencies_1.formatCurrencyUnit)(account.unit, status.amount, {
|
|
9
|
+
disableRounding: true,
|
|
10
|
+
useGrouping: false
|
|
11
|
+
});
|
|
12
|
+
return "".concat(amount, " ").concat(transaction.assetCode, "@").concat(truncateAddress(transaction.assetIssuer, 3, 4));
|
|
13
|
+
}
|
|
14
|
+
return ((0, currencies_1.formatCurrencyUnit)(account.unit, status.amount, {
|
|
8
15
|
disableRounding: true,
|
|
9
16
|
useGrouping: false
|
|
10
|
-
}) + " XLM";
|
|
17
|
+
}) + " XLM");
|
|
18
|
+
};
|
|
19
|
+
var truncateAddress = function (stellarAddress, start, end) {
|
|
20
|
+
if (start === void 0) { start = 6; }
|
|
21
|
+
if (end === void 0) { end = 6; }
|
|
22
|
+
return "".concat(stellarAddress.slice(0, start), "..").concat(stellarAddress.slice(-end));
|
|
11
23
|
};
|
|
12
24
|
var acceptTransaction = (0, specs_1.deviceActionFlow)({
|
|
13
25
|
steps: [
|
|
14
26
|
{
|
|
15
|
-
title: "
|
|
16
|
-
button: "Rr"
|
|
17
|
-
expectedValue: expectedAmount
|
|
27
|
+
title: "Review",
|
|
28
|
+
button: "Rr"
|
|
18
29
|
},
|
|
19
30
|
{
|
|
20
|
-
title: "
|
|
31
|
+
title: "Memo Text",
|
|
21
32
|
button: "Rr",
|
|
22
|
-
expectedValue:
|
|
33
|
+
expectedValue: function (_a) {
|
|
34
|
+
var transaction = _a.transaction;
|
|
35
|
+
return transaction.memoValue || "";
|
|
36
|
+
}
|
|
23
37
|
},
|
|
24
38
|
{
|
|
25
|
-
title: "Fee",
|
|
39
|
+
title: "Max Fee",
|
|
26
40
|
button: "Rr",
|
|
27
41
|
expectedValue: function (_a) {
|
|
28
42
|
var account = _a.account, status = _a.status;
|
|
@@ -32,53 +46,71 @@ var acceptTransaction = (0, specs_1.deviceActionFlow)({
|
|
|
32
46
|
}
|
|
33
47
|
},
|
|
34
48
|
{
|
|
35
|
-
title: "
|
|
49
|
+
title: "Sequence Num",
|
|
50
|
+
button: "Rr"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
title: "Tx Source",
|
|
36
54
|
button: "Rr",
|
|
37
55
|
expectedValue: function (_a) {
|
|
38
|
-
var
|
|
39
|
-
return
|
|
56
|
+
var account = _a.account;
|
|
57
|
+
return truncateAddress(account.freshAddress);
|
|
40
58
|
}
|
|
41
59
|
},
|
|
60
|
+
{
|
|
61
|
+
title: "Operation Type",
|
|
62
|
+
button: "Rr"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
title: "Change Trust",
|
|
66
|
+
button: "Rr",
|
|
67
|
+
expectedValue: function (_a) {
|
|
68
|
+
var transaction = _a.transaction;
|
|
69
|
+
return "".concat(transaction.assetCode || "", "@").concat(truncateAddress(transaction.assetIssuer || "", 3, 4));
|
|
70
|
+
},
|
|
71
|
+
maxY: 5
|
|
72
|
+
},
|
|
42
73
|
{
|
|
43
74
|
title: "Create Account",
|
|
44
75
|
button: "Rr",
|
|
45
76
|
expectedValue: function (_a) {
|
|
46
77
|
var transaction = _a.transaction;
|
|
47
78
|
return transaction.recipient;
|
|
48
|
-
}
|
|
79
|
+
},
|
|
80
|
+
maxY: 5
|
|
49
81
|
},
|
|
50
82
|
{
|
|
51
|
-
title: "
|
|
83
|
+
title: "Send",
|
|
84
|
+
button: "Rr",
|
|
85
|
+
expectedValue: expectedAmount
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
title: "Destination",
|
|
52
89
|
button: "Rr",
|
|
53
90
|
expectedValue: function (_a) {
|
|
54
91
|
var transaction = _a.transaction;
|
|
55
|
-
return transaction.
|
|
92
|
+
return transaction.recipient;
|
|
56
93
|
}
|
|
57
94
|
},
|
|
58
95
|
{
|
|
59
|
-
title: "
|
|
60
|
-
button: "
|
|
61
|
-
expectedValue: function () { return "Public"; }
|
|
96
|
+
title: "Finalize",
|
|
97
|
+
button: "LRlr"
|
|
62
98
|
},
|
|
63
99
|
{
|
|
64
|
-
title: "
|
|
100
|
+
title: "Starting Balance",
|
|
65
101
|
button: "Rr"
|
|
66
102
|
},
|
|
67
103
|
{
|
|
68
|
-
title: "
|
|
69
|
-
button: "Rr"
|
|
70
|
-
expectedValue: function (_a) {
|
|
71
|
-
var account = _a.account;
|
|
72
|
-
return account.freshAddress;
|
|
73
|
-
}
|
|
104
|
+
title: "Network",
|
|
105
|
+
button: "Rr"
|
|
74
106
|
},
|
|
75
107
|
{
|
|
76
|
-
title: "
|
|
108
|
+
title: "Valid Before (UTC)",
|
|
77
109
|
button: "Rr"
|
|
78
110
|
},
|
|
79
111
|
{
|
|
80
|
-
title: "
|
|
81
|
-
button: "
|
|
112
|
+
title: "Valid After (UTC)",
|
|
113
|
+
button: "Rr"
|
|
82
114
|
},
|
|
83
115
|
]
|
|
84
116
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"speculos-deviceActions.js","sourceRoot":"","sources":["../../../src/families/stellar/speculos-deviceActions.ts"],"names":[],"mappings":";;AAEA,+CAAsD;AACtD,yCAAmD;AAEnD,IAAM,cAAc,GAAG,UAAC,
|
|
1
|
+
{"version":3,"file":"speculos-deviceActions.js","sourceRoot":"","sources":["../../../src/families/stellar/speculos-deviceActions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { TokenAccount, Operation, CryptoCurrency, SyncConfig } from "../../types";
|
|
2
|
+
import type { BalanceAsset } from "./types";
|
|
3
|
+
export declare const getAssetIdFromTokenId: (tokenId: string) => string;
|
|
4
|
+
export declare const buildSubAccounts: ({ currency, accountId, assets, syncConfig, operations, }: {
|
|
5
|
+
currency: CryptoCurrency;
|
|
6
|
+
accountId: string;
|
|
7
|
+
assets: BalanceAsset[];
|
|
8
|
+
syncConfig: SyncConfig;
|
|
9
|
+
operations: Operation[];
|
|
10
|
+
}) => TokenAccount[] | undefined;
|
|
11
|
+
//# sourceMappingURL=tokens.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../src/families/stellar/tokens.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,YAAY,EAEZ,SAAS,EACT,cAAc,EACd,UAAU,EACX,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG5C,eAAO,MAAM,qBAAqB,YAAa,MAAM,KAAG,MACjC,CAAC;AAyDxB,eAAO,MAAM,gBAAgB;cAOjB,cAAc;eACb,MAAM;YACT,YAAY,EAAE;gBACV,UAAU;gBACV,SAAS,EAAE;MACrB,YAAY,EAAE,GAAG,SA8BpB,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
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 __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
exports.__esModule = true;
|
|
17
|
+
exports.buildSubAccounts = exports.getAssetIdFromTokenId = void 0;
|
|
18
|
+
var bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
19
|
+
var account_1 = require("../../account");
|
|
20
|
+
var currencies_1 = require("../../currencies");
|
|
21
|
+
var operation_1 = require("../../operation");
|
|
22
|
+
var getAssetIdFromTokenId = function (tokenId) {
|
|
23
|
+
return tokenId.split("/")[2];
|
|
24
|
+
};
|
|
25
|
+
exports.getAssetIdFromTokenId = getAssetIdFromTokenId;
|
|
26
|
+
var getAssetIdFromAsset = function (asset) {
|
|
27
|
+
return "".concat(asset.asset_code, ":").concat(asset.asset_issuer);
|
|
28
|
+
};
|
|
29
|
+
var buildStellarTokenAccount = function (_a) {
|
|
30
|
+
var parentAccountId = _a.parentAccountId, stellarAsset = _a.stellarAsset, token = _a.token, operations = _a.operations;
|
|
31
|
+
var assetId = (0, exports.getAssetIdFromTokenId)(token.id);
|
|
32
|
+
var id = "".concat(parentAccountId, "+").concat(assetId);
|
|
33
|
+
var balance = (0, currencies_1.parseCurrencyUnit)(token.units[0], stellarAsset.balance || "0");
|
|
34
|
+
var reservedBalance = new bignumber_js_1["default"](stellarAsset.balance).minus(stellarAsset.buying_liabilities || 0);
|
|
35
|
+
var spendableBalance = (0, currencies_1.parseCurrencyUnit)(token.units[0], reservedBalance.toString());
|
|
36
|
+
return {
|
|
37
|
+
type: "TokenAccount",
|
|
38
|
+
id: id,
|
|
39
|
+
parentId: parentAccountId,
|
|
40
|
+
starred: false,
|
|
41
|
+
token: token,
|
|
42
|
+
operationsCount: operations.length,
|
|
43
|
+
operations: operations.map(function (op) {
|
|
44
|
+
var _a;
|
|
45
|
+
return (__assign(__assign({}, op), { id: (0, operation_1.encodeOperationId)(id, op.hash, op.extra.ledgerOpType), accountId: id, type: op.extra.ledgerOpType, value: (_a = new bignumber_js_1["default"](op.extra.assetAmount)) !== null && _a !== void 0 ? _a : op.value }));
|
|
46
|
+
}),
|
|
47
|
+
pendingOperations: [],
|
|
48
|
+
balance: balance,
|
|
49
|
+
spendableBalance: spendableBalance,
|
|
50
|
+
swapHistory: [],
|
|
51
|
+
creationDate: operations.length > 0
|
|
52
|
+
? operations[operations.length - 1].date
|
|
53
|
+
: new Date(),
|
|
54
|
+
balanceHistoryCache: account_1.emptyHistoryCache
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
var buildSubAccounts = function (_a) {
|
|
58
|
+
var currency = _a.currency, accountId = _a.accountId, assets = _a.assets, syncConfig = _a.syncConfig, operations = _a.operations;
|
|
59
|
+
var _b = syncConfig.blacklistedTokenIds, blacklistedTokenIds = _b === void 0 ? [] : _b;
|
|
60
|
+
var allTokens = (0, currencies_1.listTokensForCryptoCurrency)(currency);
|
|
61
|
+
if (allTokens.length === 0 || assets.length === 0) {
|
|
62
|
+
return undefined;
|
|
63
|
+
}
|
|
64
|
+
var tokenAccounts = [];
|
|
65
|
+
assets.map(function (asset) {
|
|
66
|
+
var token = (0, currencies_1.findTokenById)("stellar/asset/".concat(getAssetIdFromAsset(asset)));
|
|
67
|
+
if (token && !blacklistedTokenIds.includes(token.id)) {
|
|
68
|
+
tokenAccounts.push(buildStellarTokenAccount({
|
|
69
|
+
parentAccountId: accountId,
|
|
70
|
+
stellarAsset: asset,
|
|
71
|
+
token: token,
|
|
72
|
+
operations: operations.filter(function (op) {
|
|
73
|
+
return op.extra.assetCode === asset.asset_code &&
|
|
74
|
+
op.extra.assetIssuer === asset.asset_issuer;
|
|
75
|
+
})
|
|
76
|
+
}));
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
return tokenAccounts;
|
|
80
|
+
};
|
|
81
|
+
exports.buildSubAccounts = buildSubAccounts;
|
|
82
|
+
//# sourceMappingURL=tokens.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../../src/families/stellar/tokens.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { Transaction, TransactionRaw } from "./types";
|
|
2
2
|
import type { Account } from "../../types";
|
|
3
|
-
export declare const formatTransaction: ({ amount, recipient, fees, memoValue, useAllAmount }: Transaction,
|
|
3
|
+
export declare const formatTransaction: ({ amount, recipient, fees, memoValue, useAllAmount, subAccountId, }: Transaction, mainAccount: Account) => string;
|
|
4
4
|
declare const _default: {
|
|
5
|
-
formatTransaction: ({ amount, recipient, fees, memoValue, useAllAmount }: Transaction,
|
|
5
|
+
formatTransaction: ({ amount, recipient, fees, memoValue, useAllAmount, subAccountId, }: Transaction, mainAccount: Account) => string;
|
|
6
6
|
fromTransactionRaw: (tr: TransactionRaw) => Transaction;
|
|
7
7
|
toTransactionRaw: (t: Transaction) => TransactionRaw;
|
|
8
8
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/families/stellar/transaction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/families/stellar/transaction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAM3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAI3C,eAAO,MAAM,iBAAiB,wEAQzB,WAAW,eACD,OAAO,KACnB,MAwBF,CAAC;;;;;;AAmDF,wBAIE"}
|
|
@@ -10,14 +10,34 @@ var __assign = (this && this.__assign) || function () {
|
|
|
10
10
|
};
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
14
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
15
|
+
if (!m) return o;
|
|
16
|
+
var i = m.call(o), r, ar = [], e;
|
|
17
|
+
try {
|
|
18
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
19
|
+
}
|
|
20
|
+
catch (error) { e = { error: error }; }
|
|
21
|
+
finally {
|
|
22
|
+
try {
|
|
23
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
24
|
+
}
|
|
25
|
+
finally { if (e) throw e.error; }
|
|
26
|
+
}
|
|
27
|
+
return ar;
|
|
28
|
+
};
|
|
13
29
|
exports.__esModule = true;
|
|
14
30
|
exports.formatTransaction = void 0;
|
|
15
31
|
var bignumber_js_1 = require("bignumber.js");
|
|
32
|
+
var logic_1 = require("./logic");
|
|
16
33
|
var common_1 = require("../../transaction/common");
|
|
17
34
|
var account_1 = require("../../account");
|
|
18
35
|
var currencies_1 = require("../../currencies");
|
|
19
|
-
var formatTransaction = function (_a,
|
|
20
|
-
var amount = _a.amount, recipient = _a.recipient, fees = _a.fees, memoValue = _a.memoValue, useAllAmount = _a.useAllAmount;
|
|
36
|
+
var formatTransaction = function (_a, mainAccount) {
|
|
37
|
+
var amount = _a.amount, recipient = _a.recipient, fees = _a.fees, memoValue = _a.memoValue, useAllAmount = _a.useAllAmount, subAccountId = _a.subAccountId;
|
|
38
|
+
var account = (subAccountId &&
|
|
39
|
+
(mainAccount.subAccounts || []).find(function (a) { return a.id === subAccountId; })) ||
|
|
40
|
+
mainAccount;
|
|
21
41
|
return "\n SEND ".concat(useAllAmount
|
|
22
42
|
? "MAX"
|
|
23
43
|
: (0, currencies_1.formatCurrencyUnit)((0, account_1.getAccountUnit)(account), amount, {
|
|
@@ -34,20 +54,26 @@ exports.formatTransaction = formatTransaction;
|
|
|
34
54
|
var fromTransactionRaw = function (tr) {
|
|
35
55
|
var common = (0, common_1.fromTransactionCommonRaw)(tr);
|
|
36
56
|
var networkInfo = tr.networkInfo;
|
|
57
|
+
var _a = __read((0, logic_1.getAssetCodeIssuer)(tr), 2), assetCode = _a[0], assetIssuer = _a[1];
|
|
37
58
|
return __assign(__assign({}, common), { family: tr.family, fees: tr.fees ? new bignumber_js_1.BigNumber(tr.fees) : null, baseReserve: tr.baseReserve ? new bignumber_js_1.BigNumber(tr.baseReserve) : null, memoValue: tr.memoValue ? tr.memoValue : null, memoType: tr.memoType ? tr.memoType : null, networkInfo: networkInfo && {
|
|
38
59
|
family: networkInfo.family,
|
|
39
60
|
fees: new bignumber_js_1.BigNumber(networkInfo.fees),
|
|
40
|
-
|
|
41
|
-
|
|
61
|
+
baseFee: new bignumber_js_1.BigNumber(networkInfo.baseFee),
|
|
62
|
+
baseReserve: new bignumber_js_1.BigNumber(networkInfo.baseReserve),
|
|
63
|
+
networkCongestionLevel: networkInfo.networkCongestionLevel
|
|
64
|
+
}, mode: tr.mode, assetCode: assetCode, assetIssuer: assetIssuer });
|
|
42
65
|
};
|
|
43
66
|
var toTransactionRaw = function (t) {
|
|
44
67
|
var common = (0, common_1.toTransactionCommonRaw)(t);
|
|
45
68
|
var networkInfo = t.networkInfo;
|
|
69
|
+
var _a = __read((0, logic_1.getAssetCodeIssuer)(t), 2), assetCode = _a[0], assetIssuer = _a[1];
|
|
46
70
|
return __assign(__assign({}, common), { family: t.family, fees: t.fees ? t.fees.toString() : null, baseReserve: t.baseReserve ? t.baseReserve.toString() : null, memoValue: t.memoValue ? t.memoValue.toString() : null, memoType: t.memoType ? t.memoType.toString() : null, networkInfo: networkInfo && {
|
|
47
71
|
family: networkInfo.family,
|
|
48
72
|
fees: networkInfo.fees.toString(),
|
|
49
|
-
|
|
50
|
-
|
|
73
|
+
baseFee: networkInfo.baseFee.toString(),
|
|
74
|
+
baseReserve: networkInfo.baseReserve.toString(),
|
|
75
|
+
networkCongestionLevel: networkInfo.networkCongestionLevel
|
|
76
|
+
}, mode: t.mode, assetCode: assetCode, assetIssuer: assetIssuer });
|
|
51
77
|
};
|
|
52
78
|
exports["default"] = {
|
|
53
79
|
formatTransaction: exports.formatTransaction,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../../src/families/stellar/transaction.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../../src/families/stellar/transaction.ts"],"names":[],"mappings":"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"}
|