@ledgerhq/coin-icon 0.6.2 → 0.6.3-next.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/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +7 -0
- package/lib/__test__/api/index.unit.test.js +6 -15
- package/lib/__test__/api/index.unit.test.js.map +1 -1
- package/lib/__test__/unit/buildTransaction.test.js +10 -16
- package/lib/__test__/unit/buildTransaction.test.js.map +1 -1
- package/lib/__test__/unit/getFeesForTransaction.unit.test.js +6 -15
- package/lib/__test__/unit/getFeesForTransaction.unit.test.js.map +1 -1
- package/lib/__test__/unit/getTransactionStatus.unit.test.js +36 -45
- package/lib/__test__/unit/getTransactionStatus.unit.test.js.map +1 -1
- package/lib/api/index.js +27 -38
- package/lib/api/index.js.map +1 -1
- package/lib/api/node.js +15 -24
- package/lib/api/node.js.map +1 -1
- package/lib/bridge/index.js +1 -10
- package/lib/bridge/index.js.map +1 -1
- package/lib/broadcast.js +3 -14
- package/lib/broadcast.js.map +1 -1
- package/lib/buildTransaction.js +2 -11
- package/lib/buildTransaction.js.map +1 -1
- package/lib/cli-transaction.js +5 -1
- package/lib/cli-transaction.js.map +1 -1
- package/lib/estimateMaxSpendable.js +5 -14
- package/lib/estimateMaxSpendable.js.map +1 -1
- package/lib/getFeesForTransaction.js +14 -17
- package/lib/getFeesForTransaction.js.map +1 -1
- package/lib/getTransactionStatus.js +7 -17
- package/lib/getTransactionStatus.js.map +1 -1
- package/lib/hw-getAddress.js +3 -12
- package/lib/hw-getAddress.js.map +1 -1
- package/lib/logic.js +1 -2
- package/lib/logic.js.map +1 -1
- package/lib/prepareTransaction.js +4 -13
- package/lib/prepareTransaction.js.map +1 -1
- package/lib/signOperation.js +33 -39
- package/lib/signOperation.js.map +1 -1
- package/lib/specs.js +3 -1
- package/lib/specs.js.map +1 -1
- package/lib/synchronization.js +9 -18
- package/lib/synchronization.js.map +1 -1
- package/lib/transaction.js +14 -3
- package/lib/transaction.js.map +1 -1
- package/lib/types/bridge.fixture.js +22 -22
- package/lib/types/bridge.fixture.js.map +1 -1
- package/lib-es/__test__/api/index.unit.test.js +6 -15
- package/lib-es/__test__/api/index.unit.test.js.map +1 -1
- package/lib-es/__test__/unit/buildTransaction.test.js +10 -16
- package/lib-es/__test__/unit/buildTransaction.test.js.map +1 -1
- package/lib-es/__test__/unit/getFeesForTransaction.unit.test.js +6 -15
- package/lib-es/__test__/unit/getFeesForTransaction.unit.test.js.map +1 -1
- package/lib-es/__test__/unit/getTransactionStatus.unit.test.js +36 -45
- package/lib-es/__test__/unit/getTransactionStatus.unit.test.js.map +1 -1
- package/lib-es/api/index.js +27 -38
- package/lib-es/api/index.js.map +1 -1
- package/lib-es/api/node.js +15 -24
- package/lib-es/api/node.js.map +1 -1
- package/lib-es/bridge/index.js +1 -10
- package/lib-es/bridge/index.js.map +1 -1
- package/lib-es/broadcast.js +3 -14
- package/lib-es/broadcast.js.map +1 -1
- package/lib-es/buildTransaction.js +2 -11
- package/lib-es/buildTransaction.js.map +1 -1
- package/lib-es/cli-transaction.js +5 -1
- package/lib-es/cli-transaction.js.map +1 -1
- package/lib-es/estimateMaxSpendable.js +5 -14
- package/lib-es/estimateMaxSpendable.js.map +1 -1
- package/lib-es/getFeesForTransaction.js +14 -17
- package/lib-es/getFeesForTransaction.js.map +1 -1
- package/lib-es/getTransactionStatus.js +7 -17
- package/lib-es/getTransactionStatus.js.map +1 -1
- package/lib-es/hw-getAddress.js +3 -12
- package/lib-es/hw-getAddress.js.map +1 -1
- package/lib-es/logic.js +1 -2
- package/lib-es/logic.js.map +1 -1
- package/lib-es/prepareTransaction.js +4 -13
- package/lib-es/prepareTransaction.js.map +1 -1
- package/lib-es/signOperation.js +33 -39
- package/lib-es/signOperation.js.map +1 -1
- package/lib-es/specs.js +3 -1
- package/lib-es/specs.js.map +1 -1
- package/lib-es/synchronization.js +9 -18
- package/lib-es/synchronization.js.map +1 -1
- package/lib-es/transaction.js +14 -3
- package/lib-es/transaction.js.map +1 -1
- package/lib-es/types/bridge.fixture.js +22 -22
- package/lib-es/types/bridge.fixture.js.map +1 -1
- package/package.json +4 -4
- package/tsconfig.json +0 -1
package/lib/synchronization.js
CHANGED
|
@@ -1,13 +1,4 @@
|
|
|
1
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
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
4
|
};
|
|
@@ -19,7 +10,7 @@ const api_1 = require("./api");
|
|
|
19
10
|
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
20
11
|
const node_1 = require("./api/node");
|
|
21
12
|
const logic_1 = require("./logic");
|
|
22
|
-
const getAccountShape = (info) =>
|
|
13
|
+
const getAccountShape = async (info) => {
|
|
23
14
|
const { address, initialAccount, currency, derivationMode } = info;
|
|
24
15
|
const accountId = (0, accountId_1.encodeAccountId)({
|
|
25
16
|
type: "js",
|
|
@@ -29,20 +20,20 @@ const getAccountShape = (info) => __awaiter(void 0, void 0, void 0, function* ()
|
|
|
29
20
|
derivationMode,
|
|
30
21
|
});
|
|
31
22
|
try {
|
|
32
|
-
const oldOperations =
|
|
33
|
-
const blockHeight =
|
|
34
|
-
const iconAccount =
|
|
23
|
+
const oldOperations = initialAccount?.operations || [];
|
|
24
|
+
const blockHeight = await (0, api_1.getCurrentBlockHeight)(currency);
|
|
25
|
+
const iconAccount = await (0, api_1.getAccount)(info.address, currency);
|
|
35
26
|
// Merge new operations with the previously synced ones
|
|
36
|
-
const newOperations =
|
|
37
|
-
currency,
|
|
27
|
+
const newOperations = await (0, api_1.getOperations)(accountId, address, 0, // skip === 0 is the lastest transaction
|
|
28
|
+
currency, iconAccount?.contract_updated_block - oldOperations.length);
|
|
38
29
|
const operations = (0, jsHelpers_1.mergeOps)(oldOperations, newOperations);
|
|
39
|
-
const delegationData =
|
|
30
|
+
const delegationData = await (0, node_1.getDelegation)(address, currency);
|
|
40
31
|
const iconResources = {
|
|
41
32
|
nonce: 0,
|
|
42
33
|
totalDelegated: delegationData.totalDelegated,
|
|
43
34
|
votingPower: delegationData.votingPower,
|
|
44
35
|
};
|
|
45
|
-
const balance = (0, logic_1.convertICXtoLoop)(
|
|
36
|
+
const balance = (0, logic_1.convertICXtoLoop)(iconAccount?.balance || 0);
|
|
46
37
|
const spendableBalance = balance
|
|
47
38
|
.minus(iconResources.totalDelegated)
|
|
48
39
|
.minus(iconResources.votingPower);
|
|
@@ -71,6 +62,6 @@ const getAccountShape = (info) => __awaiter(void 0, void 0, void 0, function* ()
|
|
|
71
62
|
operations: [],
|
|
72
63
|
};
|
|
73
64
|
}
|
|
74
|
-
}
|
|
65
|
+
};
|
|
75
66
|
exports.getAccountShape = getAccountShape;
|
|
76
67
|
//# sourceMappingURL=synchronization.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"synchronization.js","sourceRoot":"","sources":["../src/synchronization.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"synchronization.js","sourceRoot":"","sources":["../src/synchronization.ts"],"names":[],"mappings":";;;;;;AAAA,0EAA6E;AAC7E,yEAAuF;AAGvF,+BAAyE;AACzE,gEAAqC;AACrC,qCAA2C;AAE3C,mCAA2C;AAEpC,MAAM,eAAe,GAAoB,KAAK,EAAE,IAAsB,EAAE,EAAE;IAC/E,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;IACnE,MAAM,SAAS,GAAG,IAAA,2BAAe,EAAC;QAChC,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,GAAG;QACZ,UAAU,EAAE,QAAQ,CAAC,EAAE;QACvB,aAAa,EAAE,OAAO;QACtB,cAAc;KACf,CAAC,CAAC;IACH,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,cAAc,EAAE,UAAU,IAAI,EAAE,CAAC;QACvD,MAAM,WAAW,GAAG,MAAM,IAAA,2BAAqB,EAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,MAAM,IAAA,gBAAU,EAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAE7D,uDAAuD;QACvD,MAAM,aAAa,GAAG,MAAM,IAAA,mBAAa,EACvC,SAAS,EACT,OAAO,EACP,CAAC,EAAE,wCAAwC;QAC3C,QAAQ,EACR,WAAW,EAAE,sBAAsB,GAAG,aAAa,CAAC,MAAM,CAC3D,CAAC;QACF,MAAM,UAAU,GAAG,IAAA,oBAAQ,EAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QAC1D,MAAM,cAAc,GAAG,MAAM,IAAA,oBAAa,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC9D,MAAM,aAAa,GAAkB;YACnC,KAAK,EAAE,CAAC;YACR,cAAc,EAAE,cAAc,CAAC,cAAc;YAC7C,WAAW,EAAE,cAAc,CAAC,WAAW;SACxC,CAAC;QAEF,MAAM,OAAO,GAAG,IAAA,wBAAgB,EAAC,WAAW,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC;QAC5D,MAAM,gBAAgB,GAAG,OAAO;aAC7B,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC;aACnC,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAEpC,OAAO;YACL,EAAE,EAAE,SAAS;YACb,OAAO;YACP,gBAAgB;YAChB,eAAe,EAAE,UAAU,CAAC,MAAM;YAClC,WAAW;YACX,aAAa;YACb,UAAU;SACX,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,SAAS;YACb,OAAO,EAAE,IAAI,sBAAS,CAAC,CAAC,CAAC;YACzB,gBAAgB,EAAE,IAAI,sBAAS,CAAC,CAAC,CAAC;YAClC,eAAe,EAAE,CAAC;YAClB,aAAa,EAAE;gBACb,KAAK,EAAE,CAAC;gBACR,cAAc,EAAE,IAAI,sBAAS,CAAC,CAAC,CAAC;gBAChC,WAAW,EAAE,IAAI,sBAAS,CAAC,CAAC,CAAC;aAC9B;YACD,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,EAAE;SACf,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AA3DW,QAAA,eAAe,mBA2D1B"}
|
package/lib/transaction.js
CHANGED
|
@@ -19,13 +19,24 @@ ${mode.toUpperCase()} ${useAllAmount
|
|
|
19
19
|
exports.formatTransaction = formatTransaction;
|
|
20
20
|
const fromTransactionRaw = (tr) => {
|
|
21
21
|
const common = (0, serialization_1.fromTransactionCommonRaw)(tr);
|
|
22
|
-
return
|
|
22
|
+
return {
|
|
23
|
+
...common,
|
|
24
|
+
family: tr.family,
|
|
25
|
+
mode: tr.mode,
|
|
26
|
+
fees: tr.fees ? new bignumber_js_1.BigNumber(tr.fees) : null,
|
|
27
|
+
stepLimit: tr.stepLimit ? new bignumber_js_1.BigNumber(tr.stepLimit) : undefined,
|
|
28
|
+
};
|
|
23
29
|
};
|
|
24
30
|
exports.fromTransactionRaw = fromTransactionRaw;
|
|
25
31
|
const toTransactionRaw = (t) => {
|
|
26
|
-
var _a, _b;
|
|
27
32
|
const common = (0, serialization_1.toTransactionCommonRaw)(t);
|
|
28
|
-
return
|
|
33
|
+
return {
|
|
34
|
+
...common,
|
|
35
|
+
family: t.family,
|
|
36
|
+
mode: t.mode,
|
|
37
|
+
fees: t.fees?.toString() || null,
|
|
38
|
+
stepLimit: t.stepLimit?.toString() || undefined,
|
|
39
|
+
};
|
|
29
40
|
};
|
|
30
41
|
exports.toTransactionRaw = toTransactionRaw;
|
|
31
42
|
exports.default = {
|
package/lib/transaction.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../src/transaction.ts"],"names":[],"mappings":";;;AACA,+CAAyC;AACzC,oEAA8E;AAC9E,0EAKgD;AAEhD,kEAA4E;AAC5E,qEAA+E;AAExE,MAAM,iBAAiB,GAAG,CAC/B,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAe,EACtD,OAAgB,EACR,EAAE,CACV;EACA,IAAI,CAAC,WAAW,EAAE,IAChB,YAAY;IACV,CAAC,CAAC,KAAK;IACP,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE;QACf,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,GAAG;YACH,IAAA,0BAAkB,EAAC,IAAA,0BAAkB,EAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE;gBAC/D,QAAQ,EAAE,IAAI;gBACd,eAAe,EAAE,IAAI;aACtB,CACT,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAf/B,QAAA,iBAAiB,qBAec;AAErC,MAAM,kBAAkB,GAAG,CAAC,EAAkB,EAAe,EAAE;IACpE,MAAM,MAAM,GAAG,IAAA,wCAAwB,EAAC,EAAE,CAAC,CAAC;IAC5C,
|
|
1
|
+
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../src/transaction.ts"],"names":[],"mappings":";;;AACA,+CAAyC;AACzC,oEAA8E;AAC9E,0EAKgD;AAEhD,kEAA4E;AAC5E,qEAA+E;AAExE,MAAM,iBAAiB,GAAG,CAC/B,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAe,EACtD,OAAgB,EACR,EAAE,CACV;EACA,IAAI,CAAC,WAAW,EAAE,IAChB,YAAY;IACV,CAAC,CAAC,KAAK;IACP,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE;QACf,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,GAAG;YACH,IAAA,0BAAkB,EAAC,IAAA,0BAAkB,EAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE;gBAC/D,QAAQ,EAAE,IAAI;gBACd,eAAe,EAAE,IAAI;aACtB,CACT,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAf/B,QAAA,iBAAiB,qBAec;AAErC,MAAM,kBAAkB,GAAG,CAAC,EAAkB,EAAe,EAAE;IACpE,MAAM,MAAM,GAAG,IAAA,wCAAwB,EAAC,EAAE,CAAC,CAAC;IAC5C,OAAO;QACL,GAAG,MAAM;QACT,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,IAAI,EAAE,EAAE,CAAC,IAAI;QACb,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,wBAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;QAC7C,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,wBAAS,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;KAClE,CAAC;AACJ,CAAC,CAAC;AATW,QAAA,kBAAkB,sBAS7B;AAEK,MAAM,gBAAgB,GAAG,CAAC,CAAc,EAAkB,EAAE;IACjE,MAAM,MAAM,GAAG,IAAA,sCAAsB,EAAC,CAAC,CAAC,CAAC;IACzC,OAAO;QACL,GAAG,MAAM;QACT,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI;QAChC,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,SAAS;KAChD,CAAC;AACJ,CAAC,CAAC;AATW,QAAA,gBAAgB,oBAS3B;AAEF,kBAAe;IACb,iBAAiB,EAAjB,yBAAiB;IACjB,kBAAkB,EAAlB,0BAAkB;IAClB,gBAAgB,EAAhB,wBAAgB;IAChB,wBAAwB,EAAxB,8CAAwB;IACxB,sBAAsB,EAAtB,4CAAsB;IACtB,uBAAuB,EAAvB,oCAAuB;CACxB,CAAC"}
|
|
@@ -11,7 +11,7 @@ const abandonseed_1 = require("@ledgerhq/cryptoassets/abandonseed");
|
|
|
11
11
|
const index_1 = require("@ledgerhq/coin-framework/account/index");
|
|
12
12
|
function createFixtureAccount(account) {
|
|
13
13
|
const currency = (0, currencies_1.listCryptoCurrencies)(true).find(c => c.id === "icon");
|
|
14
|
-
const iconResources =
|
|
14
|
+
const iconResources = account?.iconResources || {
|
|
15
15
|
nonce: 0,
|
|
16
16
|
votingPower: (0, bignumber_js_1.default)(0),
|
|
17
17
|
totalDelegated: (0, bignumber_js_1.default)(0),
|
|
@@ -32,14 +32,14 @@ function createFixtureAccount(account) {
|
|
|
32
32
|
freshAddress: freshAddress.address,
|
|
33
33
|
freshAddressPath: freshAddress.derivationPath,
|
|
34
34
|
used: true,
|
|
35
|
-
balance:
|
|
36
|
-
spendableBalance:
|
|
35
|
+
balance: account?.balance || new bignumber_js_1.default(0),
|
|
36
|
+
spendableBalance: account?.spendableBalance || new bignumber_js_1.default(0),
|
|
37
37
|
creationDate: faker_1.faker.date.past(),
|
|
38
|
-
blockHeight: faker_1.faker.number.int({ min:
|
|
38
|
+
blockHeight: faker_1.faker.number.int({ min: 100_000, max: 200_000 }),
|
|
39
39
|
currency,
|
|
40
|
-
operationsCount:
|
|
41
|
-
operations:
|
|
42
|
-
pendingOperations:
|
|
40
|
+
operationsCount: account?.operationsCount || 0,
|
|
41
|
+
operations: account?.operations || [],
|
|
42
|
+
pendingOperations: account?.pendingOperations || [],
|
|
43
43
|
lastSyncDate: new Date(),
|
|
44
44
|
balanceHistoryCache: index_1.emptyHistoryCache,
|
|
45
45
|
swapHistory: [],
|
|
@@ -49,27 +49,27 @@ function createFixtureAccount(account) {
|
|
|
49
49
|
exports.createFixtureAccount = createFixtureAccount;
|
|
50
50
|
function createFixtureTransaction(tx) {
|
|
51
51
|
return {
|
|
52
|
-
amount:
|
|
53
|
-
recipient:
|
|
54
|
-
mode:
|
|
52
|
+
amount: tx?.amount || new bignumber_js_1.default(0),
|
|
53
|
+
recipient: tx?.recipient || (0, abandonseed_1.getAbandonSeedAddress)("icon"),
|
|
54
|
+
mode: tx?.mode || "send",
|
|
55
55
|
family: "icon",
|
|
56
|
-
fees:
|
|
56
|
+
fees: tx?.fees || undefined,
|
|
57
57
|
};
|
|
58
58
|
}
|
|
59
59
|
exports.createFixtureTransaction = createFixtureTransaction;
|
|
60
60
|
function createFixtureOperation(operation) {
|
|
61
61
|
return {
|
|
62
|
-
id:
|
|
63
|
-
hash:
|
|
64
|
-
type:
|
|
65
|
-
value:
|
|
66
|
-
fee:
|
|
67
|
-
senders:
|
|
68
|
-
recipients:
|
|
69
|
-
blockHeight:
|
|
70
|
-
blockHash:
|
|
71
|
-
accountId:
|
|
72
|
-
date:
|
|
62
|
+
id: operation?.id || faker_1.faker.string.uuid(),
|
|
63
|
+
hash: operation?.hash || faker_1.faker.string.uuid(),
|
|
64
|
+
type: operation?.type || "OUT",
|
|
65
|
+
value: operation?.value || new bignumber_js_1.default(faker_1.faker.string.numeric()),
|
|
66
|
+
fee: operation?.fee || new bignumber_js_1.default(0),
|
|
67
|
+
senders: operation?.senders || [],
|
|
68
|
+
recipients: operation?.recipients || [],
|
|
69
|
+
blockHeight: operation?.blockHeight || undefined,
|
|
70
|
+
blockHash: operation?.blockHash || undefined,
|
|
71
|
+
accountId: operation?.accountId || faker_1.faker.string.uuid(),
|
|
72
|
+
date: operation?.date || faker_1.faker.date.past(),
|
|
73
73
|
extra: {},
|
|
74
74
|
};
|
|
75
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bridge.fixture.js","sourceRoot":"","sources":["../../src/types/bridge.fixture.ts"],"names":[],"mappings":";;;;;;AAAA,gEAAqC;AACrC,2CAAwC;AACxC,kEAAyE;AACzE,oEAA2E;AAC3E,kEAA2E;AAG3E,SAAgB,oBAAoB,CAAC,OAA8B;IACjE,MAAM,QAAQ,GAAG,IAAA,iCAAoB,EAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAE,CAAC;IAExE,MAAM,aAAa,GAAkB,
|
|
1
|
+
{"version":3,"file":"bridge.fixture.js","sourceRoot":"","sources":["../../src/types/bridge.fixture.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
import network from "@ledgerhq/live-network/network";
|
|
11
2
|
import { fetchOperationList } from "../../api";
|
|
12
3
|
import { isTestnet } from "../../logic";
|
|
@@ -38,7 +29,7 @@ describe("ICON API", () => {
|
|
|
38
29
|
jest.clearAllMocks();
|
|
39
30
|
});
|
|
40
31
|
describe("fetchOperationList", () => {
|
|
41
|
-
it("should recursively fetch operation list correctly", () =>
|
|
32
|
+
it("should recursively fetch operation list correctly", async () => {
|
|
42
33
|
const accountId = "accountId";
|
|
43
34
|
const addr = "hx123";
|
|
44
35
|
const skip = 0;
|
|
@@ -69,14 +60,14 @@ describe("ICON API", () => {
|
|
|
69
60
|
const txHistory = [tx1, tx2];
|
|
70
61
|
querystringMock.mockReturnValue("address=hx123&skip=0&limit=10");
|
|
71
62
|
networkMock.mockResolvedValue({ data: txHistory });
|
|
72
|
-
const result =
|
|
63
|
+
const result = await fetchOperationList(accountId, addr, skip, network, maxLength);
|
|
73
64
|
expect(result.length).toBe(2);
|
|
74
65
|
expect(networkMock).toHaveBeenCalledWith({
|
|
75
66
|
method: "GET",
|
|
76
67
|
url: `testnet-url/transactions/address/${addr}?address=${addr}&skip=${skip}&limit=${10}`,
|
|
77
68
|
});
|
|
78
|
-
})
|
|
79
|
-
it("should recursively fetch operation list correctly", () =>
|
|
69
|
+
});
|
|
70
|
+
it("should recursively fetch operation list correctly", async () => {
|
|
80
71
|
const accountId = "accountId";
|
|
81
72
|
const addr = "hx123";
|
|
82
73
|
const skip = 0;
|
|
@@ -120,7 +111,7 @@ describe("ICON API", () => {
|
|
|
120
111
|
querystringMock
|
|
121
112
|
.mockReturnValueOnce("address=hx123&skip=0&limit=2")
|
|
122
113
|
.mockReturnValueOnce("address=hx123&skip=2&limit=2");
|
|
123
|
-
const result =
|
|
114
|
+
const result = await fetchOperationList(accountId, addr, skip, network, maxLength);
|
|
124
115
|
// Verify that the function was called recursively
|
|
125
116
|
expect(networkMock).toHaveBeenCalledTimes(2);
|
|
126
117
|
// Verify that the result includes all transactions fetched
|
|
@@ -139,7 +130,7 @@ describe("ICON API", () => {
|
|
|
139
130
|
method: "GET",
|
|
140
131
|
url: `testnet-url/transactions/address/${addr}?address=${addr}&skip=${skip + 2}&limit=${2}`,
|
|
141
132
|
});
|
|
142
|
-
})
|
|
133
|
+
});
|
|
143
134
|
});
|
|
144
135
|
});
|
|
145
136
|
//# sourceMappingURL=index.unit.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.unit.test.js","sourceRoot":"","sources":["../../../src/__test__/api/index.unit.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.unit.test.js","sourceRoot":"","sources":["../../../src/__test__/api/index.unit.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
import BigNumber from "bignumber.js";
|
|
11
2
|
import { createFixtureAccount, createFixtureTransaction } from "../../types/bridge.fixture";
|
|
12
3
|
import { buildTransaction } from "../../buildTransaction";
|
|
@@ -50,9 +41,9 @@ describe("buildTransaction", () => {
|
|
|
50
41
|
afterEach(() => {
|
|
51
42
|
jest.clearAllMocks();
|
|
52
43
|
});
|
|
53
|
-
it("should build a transfer transaction", () =>
|
|
44
|
+
it("should build a transfer transaction", async () => {
|
|
54
45
|
const stepLimit = new BigNumber(100000);
|
|
55
|
-
const result =
|
|
46
|
+
const result = await buildTransaction(account, transaction, stepLimit);
|
|
56
47
|
expect(mockFrom).toHaveBeenCalledWith(account.freshAddress);
|
|
57
48
|
expect(mockTo).toHaveBeenCalledWith(transaction.recipient);
|
|
58
49
|
expect(mockValue).toHaveBeenCalledWith(expect.any(String));
|
|
@@ -62,10 +53,13 @@ describe("buildTransaction", () => {
|
|
|
62
53
|
expect(mockVersion).toHaveBeenCalledWith(expect.any(String));
|
|
63
54
|
expect(mockStepLimit).toHaveBeenCalledWith(expect.any(String));
|
|
64
55
|
expect(result.unsigned).toBe("mocked-transaction");
|
|
65
|
-
})
|
|
66
|
-
it("should throw an error for unsupported transaction mode", () =>
|
|
67
|
-
const invalidTransaction =
|
|
68
|
-
|
|
69
|
-
|
|
56
|
+
});
|
|
57
|
+
it("should throw an error for unsupported transaction mode", async () => {
|
|
58
|
+
const invalidTransaction = {
|
|
59
|
+
...transaction,
|
|
60
|
+
mode: "invalid-mode",
|
|
61
|
+
};
|
|
62
|
+
await expect(buildTransaction(account, invalidTransaction)).rejects.toThrow("Unsupported transaction mode: invalid-mode");
|
|
63
|
+
});
|
|
70
64
|
});
|
|
71
65
|
//# sourceMappingURL=buildTransaction.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildTransaction.test.js","sourceRoot":"","sources":["../../../src/__test__/unit/buildTransaction.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"buildTransaction.test.js","sourceRoot":"","sources":["../../../src/__test__/unit/buildTransaction.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
import { BigNumber } from "bignumber.js";
|
|
11
2
|
import { getAbandonSeedAddress } from "@ledgerhq/cryptoassets";
|
|
12
3
|
import { buildTransaction } from "../../buildTransaction";
|
|
@@ -22,7 +13,7 @@ describe("getEstimatedFees", () => {
|
|
|
22
13
|
beforeAll(() => {
|
|
23
14
|
global.FEES_SAFETY_BUFFER = new BigNumber(100);
|
|
24
15
|
});
|
|
25
|
-
it("should fetch the estimated fees correctly", () =>
|
|
16
|
+
it("should fetch the estimated fees correctly", async () => {
|
|
26
17
|
const account = {
|
|
27
18
|
currency: { id: "icon" },
|
|
28
19
|
spendableBalance: new BigNumber(1000),
|
|
@@ -44,11 +35,11 @@ describe("getEstimatedFees", () => {
|
|
|
44
35
|
buildTransaction.mockResolvedValue({ unsigned: unsignedTx });
|
|
45
36
|
getFees.mockResolvedValue(stepLimit);
|
|
46
37
|
getStepPrice.mockResolvedValue(stepPrice);
|
|
47
|
-
const estimatedFees =
|
|
38
|
+
const estimatedFees = await getEstimatedFees({ account, transaction });
|
|
48
39
|
expect(estimatedFees.isEqualTo(stepLimit.multipliedBy(stepPrice))).toBe(true);
|
|
49
40
|
expect(transaction.stepLimit).toEqual(stepLimit);
|
|
50
|
-
})
|
|
51
|
-
it("should return FEES_SAFETY_BUFFER if an error occurs", () =>
|
|
41
|
+
});
|
|
42
|
+
it("should return FEES_SAFETY_BUFFER if an error occurs", async () => {
|
|
52
43
|
const account = {
|
|
53
44
|
currency: { id: "icon" },
|
|
54
45
|
spendableBalance: new BigNumber(1000),
|
|
@@ -66,8 +57,8 @@ describe("getEstimatedFees", () => {
|
|
|
66
57
|
mockedLogic.FEES_SAFETY_BUFFER = new BigNumber(100);
|
|
67
58
|
buildTransaction.mockRejectedValue(new Error("Error"));
|
|
68
59
|
// Mock getFees and getStepPrice if necessary, but they won't be called in this test case
|
|
69
|
-
const estimatedFees =
|
|
60
|
+
const estimatedFees = await getEstimatedFees({ account, transaction });
|
|
70
61
|
expect(estimatedFees.isEqualTo(new BigNumber(100))).toBe(true);
|
|
71
|
-
})
|
|
62
|
+
});
|
|
72
63
|
});
|
|
73
64
|
//# sourceMappingURL=getFeesForTransaction.unit.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getFeesForTransaction.unit.test.js","sourceRoot":"","sources":["../../../src/__test__/unit/getFeesForTransaction.unit.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getFeesForTransaction.unit.test.js","sourceRoot":"","sources":["../../../src/__test__/unit/getFeesForTransaction.unit.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
import { BigNumber } from "bignumber.js";
|
|
11
2
|
import { NotEnoughBalance, RecipientRequired, InvalidAddress, FeeNotLoaded, InvalidAddressBecauseDestinationIsAlsoSource, AmountRequired, } from "@ledgerhq/errors";
|
|
12
3
|
import * as logic from "../../logic";
|
|
@@ -52,50 +43,50 @@ describe("getSendTransactionStatus", () => {
|
|
|
52
43
|
mockedLogic.isValidAddress.mockReturnValue(true);
|
|
53
44
|
mockedFormatCurrencyUnit.mockReturnValue("1 ICX");
|
|
54
45
|
});
|
|
55
|
-
it("should return FeeNotLoaded error if fees are not loaded", () =>
|
|
46
|
+
it("should return FeeNotLoaded error if fees are not loaded", async () => {
|
|
56
47
|
transaction.fees = null;
|
|
57
|
-
const result =
|
|
48
|
+
const result = await getSendTransactionStatus(account, transaction);
|
|
58
49
|
expect(result.errors.fees).toBeInstanceOf(FeeNotLoaded);
|
|
59
|
-
})
|
|
60
|
-
it("should return RecipientRequired error if recipient is missing", () =>
|
|
50
|
+
});
|
|
51
|
+
it("should return RecipientRequired error if recipient is missing", async () => {
|
|
61
52
|
transaction.recipient = "";
|
|
62
|
-
const result =
|
|
53
|
+
const result = await getSendTransactionStatus(account, transaction);
|
|
63
54
|
expect(result.errors.recipient).toBeInstanceOf(RecipientRequired);
|
|
64
|
-
})
|
|
65
|
-
it("should return InvalidAddressBecauseDestinationIsAlsoSource error if recipient is the same as source", () =>
|
|
55
|
+
});
|
|
56
|
+
it("should return InvalidAddressBecauseDestinationIsAlsoSource error if recipient is the same as source", async () => {
|
|
66
57
|
mockedLogic.isSelfTransaction.mockReturnValue(true);
|
|
67
|
-
const result =
|
|
58
|
+
const result = await getSendTransactionStatus(account, transaction);
|
|
68
59
|
expect(result.errors.recipient).toBeInstanceOf(InvalidAddressBecauseDestinationIsAlsoSource);
|
|
69
|
-
})
|
|
70
|
-
it("should return InvalidAddress error if recipient is invalid", () =>
|
|
60
|
+
});
|
|
61
|
+
it("should return InvalidAddress error if recipient is invalid", async () => {
|
|
71
62
|
mockedLogic.isValidAddress.mockReturnValue(false);
|
|
72
|
-
const result =
|
|
63
|
+
const result = await getSendTransactionStatus(account, transaction);
|
|
73
64
|
expect(result.errors.recipient).toBeInstanceOf(InvalidAddress);
|
|
74
|
-
})
|
|
75
|
-
it("should return AmountRequired error if amount is less than or equal to zero", () =>
|
|
65
|
+
});
|
|
66
|
+
it("should return AmountRequired error if amount is less than or equal to zero", async () => {
|
|
76
67
|
mockedLogic.calculateAmount.mockReturnValue(new BigNumber(0));
|
|
77
|
-
const result =
|
|
68
|
+
const result = await getSendTransactionStatus(account, transaction);
|
|
78
69
|
expect(result.errors.amount).toBeInstanceOf(AmountRequired);
|
|
79
|
-
})
|
|
80
|
-
it("should return NotEnoughBalance error if total spent exceeds spendable balance", () =>
|
|
70
|
+
});
|
|
71
|
+
it("should return NotEnoughBalance error if total spent exceeds spendable balance", async () => {
|
|
81
72
|
account.spendableBalance = new BigNumber(50);
|
|
82
|
-
const result =
|
|
73
|
+
const result = await getSendTransactionStatus(account, transaction);
|
|
83
74
|
expect(result.errors.amount).toBeInstanceOf(NotEnoughBalance);
|
|
84
|
-
})
|
|
85
|
-
it("should return proper TransactionStatus when everything is valid", () =>
|
|
86
|
-
const result =
|
|
75
|
+
});
|
|
76
|
+
it("should return proper TransactionStatus when everything is valid", async () => {
|
|
77
|
+
const result = await getSendTransactionStatus(account, transaction);
|
|
87
78
|
expect(result.errors).toEqual({});
|
|
88
79
|
expect(result.warnings).toEqual({});
|
|
89
80
|
expect(result.estimatedFees).toEqual(transaction.fees);
|
|
90
81
|
expect(result.amount).toEqual(new BigNumber(100));
|
|
91
82
|
expect(result.totalSpent).toEqual(new BigNumber(110));
|
|
92
|
-
})
|
|
93
|
-
it("should return IconDoMaxSendInstead error if leftover balance is less than minimumBalanceExistential but greater than zero", () =>
|
|
83
|
+
});
|
|
84
|
+
it("should return IconDoMaxSendInstead error if leftover balance is less than minimumBalanceExistential but greater than zero", async () => {
|
|
94
85
|
account.spendableBalance = new BigNumber(120);
|
|
95
|
-
const result =
|
|
86
|
+
const result = await getSendTransactionStatus(account, transaction);
|
|
96
87
|
expect(result.errors.amount).toBeInstanceOf(IconDoMaxSendInstead);
|
|
97
88
|
expect(result.errors.amount.message).toBe("Balance cannot be below {{minimumBalance}}. Send max to empty account.");
|
|
98
|
-
})
|
|
89
|
+
});
|
|
99
90
|
});
|
|
100
91
|
describe("getTransactionStatus", () => {
|
|
101
92
|
let account;
|
|
@@ -112,7 +103,7 @@ describe("getTransactionStatus", () => {
|
|
|
112
103
|
};
|
|
113
104
|
mockedLogic.calculateAmount.mockReturnValue(new BigNumber(100));
|
|
114
105
|
});
|
|
115
|
-
it("should delegate to getSendTransactionStatus for send mode", () =>
|
|
106
|
+
it("should delegate to getSendTransactionStatus for send mode", async () => {
|
|
116
107
|
const sendTransactionStatus = {
|
|
117
108
|
errors: {},
|
|
118
109
|
warnings: {},
|
|
@@ -123,31 +114,31 @@ describe("getTransactionStatus", () => {
|
|
|
123
114
|
jest
|
|
124
115
|
.spyOn(TransactionStatus, "getSendTransactionStatus")
|
|
125
116
|
.mockResolvedValue(sendTransactionStatus);
|
|
126
|
-
const result =
|
|
117
|
+
const result = await getTransactionStatus(account, transaction);
|
|
127
118
|
expect(result).toEqual(sendTransactionStatus);
|
|
128
|
-
})
|
|
129
|
-
it("should handle default case correctly", () =>
|
|
119
|
+
});
|
|
120
|
+
it("should handle default case correctly", async () => {
|
|
130
121
|
transaction.mode = "other";
|
|
131
|
-
const result =
|
|
122
|
+
const result = await getTransactionStatus(account, transaction);
|
|
132
123
|
expect(result.errors).toEqual({});
|
|
133
124
|
expect(result.warnings).toEqual({});
|
|
134
125
|
expect(result.estimatedFees).toEqual(transaction.fees);
|
|
135
126
|
expect(result.amount).toEqual(new BigNumber(100));
|
|
136
127
|
expect(result.totalSpent).toEqual(new BigNumber(110));
|
|
137
|
-
})
|
|
138
|
-
it("should return NotEnoughBalance error if totalSpent is greater than spendableBalance", () =>
|
|
128
|
+
});
|
|
129
|
+
it("should return NotEnoughBalance error if totalSpent is greater than spendableBalance", async () => {
|
|
139
130
|
transaction.mode = "";
|
|
140
131
|
mockedLogic.calculateAmount.mockReturnValue(new BigNumber(1000));
|
|
141
132
|
transaction.fees = new BigNumber(100);
|
|
142
|
-
const result =
|
|
133
|
+
const result = await getTransactionStatus(account, transaction);
|
|
143
134
|
expect(result.errors.amount).toBeInstanceOf(NotEnoughBalance);
|
|
144
|
-
})
|
|
145
|
-
it("should return AmountRequired error if amount is less than or equal to zero and useAllAmount is false", () =>
|
|
135
|
+
});
|
|
136
|
+
it("should return AmountRequired error if amount is less than or equal to zero and useAllAmount is false", async () => {
|
|
146
137
|
transaction.mode = "";
|
|
147
138
|
mockedLogic.calculateAmount.mockReturnValue(new BigNumber(0));
|
|
148
139
|
transaction.useAllAmount = false;
|
|
149
|
-
const result =
|
|
140
|
+
const result = await getTransactionStatus(account, transaction);
|
|
150
141
|
expect(result.errors.amount).toBeInstanceOf(AmountRequired);
|
|
151
|
-
})
|
|
142
|
+
});
|
|
152
143
|
});
|
|
153
144
|
//# sourceMappingURL=getTransactionStatus.unit.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTransactionStatus.unit.test.js","sourceRoot":"","sources":["../../../src/__test__/unit/getTransactionStatus.unit.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getTransactionStatus.unit.test.js","sourceRoot":"","sources":["../../../src/__test__/unit/getTransactionStatus.unit.test.ts"],"names":[],"mappings":"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"}
|