@ledgerhq/coin-aptos 1.8.1-nightly.1 → 2.0.0-nightly.2
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 +16 -0
- package/lib/__tests__/api/index.test.js +61 -5
- package/lib/__tests__/api/index.test.js.map +1 -1
- package/lib/__tests__/bridge/buildTransaction.test.js +57 -2
- package/lib/__tests__/bridge/buildTransaction.test.js.map +1 -1
- package/lib/__tests__/bridge/getFeesForTransaction.test.js +109 -8
- package/lib/__tests__/bridge/getFeesForTransaction.test.js.map +1 -1
- package/lib/__tests__/bridge/getTransactionStatus.test.js +175 -37
- package/lib/__tests__/bridge/getTransactionStatus.test.js.map +1 -1
- package/lib/__tests__/bridge/logic.test.js +889 -115
- package/lib/__tests__/bridge/logic.test.js.map +1 -1
- package/lib/__tests__/bridge/signOperation.test.js +128 -2
- package/lib/__tests__/bridge/signOperation.test.js.map +1 -1
- package/lib/__tests__/bridge/synchronisation.test.js +1214 -67
- package/lib/__tests__/bridge/synchronisation.test.js.map +1 -1
- package/lib/api/graphql/queries.js +6 -6
- package/lib/api/graphql/types.d.ts +9 -9
- package/lib/api/graphql/types.d.ts.map +1 -1
- package/lib/api/index.d.ts +5 -2
- package/lib/api/index.d.ts.map +1 -1
- package/lib/api/index.js +30 -4
- package/lib/api/index.js.map +1 -1
- package/lib/bridge/bridge.fixture.d.ts +2 -0
- package/lib/bridge/bridge.fixture.d.ts.map +1 -1
- package/lib/bridge/bridge.fixture.js +85 -13
- package/lib/bridge/bridge.fixture.js.map +1 -1
- package/lib/bridge/buildTransaction.d.ts.map +1 -1
- package/lib/bridge/buildTransaction.js +29 -3
- package/lib/bridge/buildTransaction.js.map +1 -1
- package/lib/bridge/estimateMaxSpendable.js +1 -1
- package/lib/bridge/estimateMaxSpendable.js.map +1 -1
- package/lib/bridge/getFeesForTransaction.d.ts.map +1 -1
- package/lib/bridge/getFeesForTransaction.js +12 -7
- package/lib/bridge/getFeesForTransaction.js.map +1 -1
- package/lib/bridge/getTransactionStatus.d.ts.map +1 -1
- package/lib/bridge/getTransactionStatus.js +28 -14
- package/lib/bridge/getTransactionStatus.js.map +1 -1
- package/lib/bridge/logic.d.ts +13 -8
- package/lib/bridge/logic.d.ts.map +1 -1
- package/lib/bridge/logic.js +152 -54
- package/lib/bridge/logic.js.map +1 -1
- package/lib/bridge/prepareTransaction.d.ts.map +1 -1
- package/lib/bridge/prepareTransaction.js +2 -2
- package/lib/bridge/prepareTransaction.js.map +1 -1
- package/lib/bridge/signOperation.d.ts.map +1 -1
- package/lib/bridge/signOperation.js +17 -3
- package/lib/bridge/signOperation.js.map +1 -1
- package/lib/bridge/synchronisation.d.ts +15 -0
- package/lib/bridge/synchronisation.d.ts.map +1 -1
- package/lib/bridge/synchronisation.js +127 -4
- package/lib/bridge/synchronisation.js.map +1 -1
- package/lib/constants.d.ts +5 -1
- package/lib/constants.d.ts.map +1 -1
- package/lib/constants.js +6 -2
- package/lib/constants.js.map +1 -1
- package/lib/test/bot-specs.d.ts.map +1 -1
- package/lib/test/bot-specs.js +40 -1
- package/lib/test/bot-specs.js.map +1 -1
- package/lib/test/bridgeDatasetTest.d.ts.map +1 -1
- package/lib/test/bridgeDatasetTest.js +43 -62
- package/lib/test/bridgeDatasetTest.js.map +1 -1
- package/lib/test/speculos-deviceActions.d.ts +1 -0
- package/lib/test/speculos-deviceActions.d.ts.map +1 -1
- package/lib/test/speculos-deviceActions.js +37 -5
- package/lib/test/speculos-deviceActions.js.map +1 -1
- package/lib/types/index.d.ts +18 -7
- package/lib/types/index.d.ts.map +1 -1
- package/lib-es/__tests__/api/index.test.js +61 -5
- package/lib-es/__tests__/api/index.test.js.map +1 -1
- package/lib-es/__tests__/bridge/buildTransaction.test.js +58 -3
- package/lib-es/__tests__/bridge/buildTransaction.test.js.map +1 -1
- package/lib-es/__tests__/bridge/getFeesForTransaction.test.js +110 -9
- package/lib-es/__tests__/bridge/getFeesForTransaction.test.js.map +1 -1
- package/lib-es/__tests__/bridge/getTransactionStatus.test.js +177 -39
- package/lib-es/__tests__/bridge/getTransactionStatus.test.js.map +1 -1
- package/lib-es/__tests__/bridge/logic.test.js +891 -117
- package/lib-es/__tests__/bridge/logic.test.js.map +1 -1
- package/lib-es/__tests__/bridge/signOperation.test.js +128 -2
- package/lib-es/__tests__/bridge/signOperation.test.js.map +1 -1
- package/lib-es/__tests__/bridge/synchronisation.test.js +1213 -69
- package/lib-es/__tests__/bridge/synchronisation.test.js.map +1 -1
- package/lib-es/api/graphql/queries.js +6 -6
- package/lib-es/api/graphql/types.d.ts +9 -9
- package/lib-es/api/graphql/types.d.ts.map +1 -1
- package/lib-es/api/index.d.ts +5 -2
- package/lib-es/api/index.d.ts.map +1 -1
- package/lib-es/api/index.js +30 -4
- package/lib-es/api/index.js.map +1 -1
- package/lib-es/bridge/bridge.fixture.d.ts +2 -0
- package/lib-es/bridge/bridge.fixture.d.ts.map +1 -1
- package/lib-es/bridge/bridge.fixture.js +82 -12
- package/lib-es/bridge/bridge.fixture.js.map +1 -1
- package/lib-es/bridge/buildTransaction.d.ts.map +1 -1
- package/lib-es/bridge/buildTransaction.js +30 -4
- package/lib-es/bridge/buildTransaction.js.map +1 -1
- package/lib-es/bridge/estimateMaxSpendable.js +1 -1
- package/lib-es/bridge/estimateMaxSpendable.js.map +1 -1
- package/lib-es/bridge/getFeesForTransaction.d.ts.map +1 -1
- package/lib-es/bridge/getFeesForTransaction.js +13 -8
- package/lib-es/bridge/getFeesForTransaction.js.map +1 -1
- package/lib-es/bridge/getTransactionStatus.d.ts.map +1 -1
- package/lib-es/bridge/getTransactionStatus.js +28 -14
- package/lib-es/bridge/getTransactionStatus.js.map +1 -1
- package/lib-es/bridge/logic.d.ts +13 -8
- package/lib-es/bridge/logic.d.ts.map +1 -1
- package/lib-es/bridge/logic.js +146 -52
- package/lib-es/bridge/logic.js.map +1 -1
- package/lib-es/bridge/prepareTransaction.d.ts.map +1 -1
- package/lib-es/bridge/prepareTransaction.js +2 -2
- package/lib-es/bridge/prepareTransaction.js.map +1 -1
- package/lib-es/bridge/signOperation.d.ts.map +1 -1
- package/lib-es/bridge/signOperation.js +17 -3
- package/lib-es/bridge/signOperation.js.map +1 -1
- package/lib-es/bridge/synchronisation.d.ts +15 -0
- package/lib-es/bridge/synchronisation.d.ts.map +1 -1
- package/lib-es/bridge/synchronisation.js +123 -3
- package/lib-es/bridge/synchronisation.js.map +1 -1
- package/lib-es/constants.d.ts +5 -1
- package/lib-es/constants.d.ts.map +1 -1
- package/lib-es/constants.js +5 -1
- package/lib-es/constants.js.map +1 -1
- package/lib-es/test/bot-specs.d.ts.map +1 -1
- package/lib-es/test/bot-specs.js +41 -2
- package/lib-es/test/bot-specs.js.map +1 -1
- package/lib-es/test/bridgeDatasetTest.d.ts.map +1 -1
- package/lib-es/test/bridgeDatasetTest.js +43 -59
- package/lib-es/test/bridgeDatasetTest.js.map +1 -1
- package/lib-es/test/speculos-deviceActions.d.ts +1 -0
- package/lib-es/test/speculos-deviceActions.d.ts.map +1 -1
- package/lib-es/test/speculos-deviceActions.js +36 -4
- package/lib-es/test/speculos-deviceActions.js.map +1 -1
- package/lib-es/types/index.d.ts +18 -7
- package/lib-es/types/index.d.ts.map +1 -1
- package/package.json +8 -7
- package/src/__tests__/api/index.test.ts +75 -5
- package/src/__tests__/bridge/buildTransaction.test.ts +85 -3
- package/src/__tests__/bridge/getFeesForTransaction.test.ts +144 -9
- package/src/__tests__/bridge/getTransactionStatus.test.ts +217 -38
- package/src/__tests__/bridge/logic.test.ts +922 -118
- package/src/__tests__/bridge/signOperation.test.ts +141 -2
- package/src/__tests__/bridge/synchronisation.test.ts +1265 -71
- package/src/api/graphql/queries.ts +6 -6
- package/src/api/graphql/types.ts +9 -9
- package/src/api/index.ts +32 -5
- package/src/bridge/bridge.fixture.ts +91 -12
- package/src/bridge/buildTransaction.ts +39 -6
- package/src/bridge/estimateMaxSpendable.ts +1 -1
- package/src/bridge/getFeesForTransaction.ts +14 -9
- package/src/bridge/getTransactionStatus.ts +35 -13
- package/src/bridge/logic.ts +202 -63
- package/src/bridge/prepareTransaction.ts +4 -3
- package/src/bridge/signOperation.ts +19 -3
- package/src/bridge/synchronisation.ts +170 -3
- package/src/constants.ts +12 -1
- package/src/test/bot-specs.ts +63 -3
- package/src/test/bridgeDatasetTest.ts +45 -59
- package/src/test/speculos-deviceActions.ts +40 -4
- package/src/types/index.ts +15 -1
|
@@ -5,6 +5,9 @@ import { createFixtureAccount, createFixtureTransaction } from "../../bridge/bri
|
|
|
5
5
|
import buildSignOperation, { getAddress } from "../../bridge/signOperation";
|
|
6
6
|
import { AptosSigner } from "../../types";
|
|
7
7
|
import { signTransaction } from "../../network";
|
|
8
|
+
import { TokenAccount } from "@ledgerhq/types-live";
|
|
9
|
+
import { faker } from "@faker-js/faker";
|
|
10
|
+
import { emptyHistoryCache } from "@ledgerhq/coin-framework/account/index";
|
|
8
11
|
|
|
9
12
|
jest.mock("../../api", () => {
|
|
10
13
|
return {
|
|
@@ -104,6 +107,7 @@ describe("buildSignOperation", () => {
|
|
|
104
107
|
accountId: "js:2:aptos:0x000:",
|
|
105
108
|
date,
|
|
106
109
|
transactionSequenceNumber: 789,
|
|
110
|
+
subOperations: [],
|
|
107
111
|
},
|
|
108
112
|
signature: "7369676e65645478",
|
|
109
113
|
},
|
|
@@ -125,7 +129,130 @@ describe("buildSignOperation", () => {
|
|
|
125
129
|
jest.useFakeTimers().setSystemTime(date);
|
|
126
130
|
|
|
127
131
|
const account = createFixtureAccount();
|
|
128
|
-
const transaction = createFixtureTransaction();
|
|
132
|
+
const transaction = createFixtureTransaction({ amount: BigNumber(5) });
|
|
133
|
+
|
|
134
|
+
account.balance = new BigNumber(40);
|
|
135
|
+
transaction.fees = new BigNumber(30);
|
|
136
|
+
transaction.useAllAmount = true;
|
|
137
|
+
|
|
138
|
+
account.id = "js:2:aptos:0x000:";
|
|
139
|
+
transaction.mode = "send";
|
|
140
|
+
|
|
141
|
+
const observable = await buildSignOperation({} as unknown as SignerContext<AptosSigner>)({
|
|
142
|
+
account,
|
|
143
|
+
deviceId: "1",
|
|
144
|
+
transaction,
|
|
145
|
+
});
|
|
146
|
+
|
|
147
|
+
expect(observable).toBeInstanceOf(Observable);
|
|
148
|
+
|
|
149
|
+
const expectedValues = [
|
|
150
|
+
{ type: "device-signature-requested" },
|
|
151
|
+
{ type: "device-signature-granted" },
|
|
152
|
+
{
|
|
153
|
+
type: "signed",
|
|
154
|
+
signedOperation: {
|
|
155
|
+
operation: {
|
|
156
|
+
id: "js:2:aptos:0x000:--OUT",
|
|
157
|
+
hash: "",
|
|
158
|
+
type: "OUT",
|
|
159
|
+
value: new BigNumber(35),
|
|
160
|
+
fee: transaction.fees,
|
|
161
|
+
extra: {},
|
|
162
|
+
blockHash: null,
|
|
163
|
+
blockHeight: null,
|
|
164
|
+
senders: [account.freshAddress],
|
|
165
|
+
recipients: [transaction.recipient],
|
|
166
|
+
accountId: "js:2:aptos:0x000:",
|
|
167
|
+
date,
|
|
168
|
+
transactionSequenceNumber: 789,
|
|
169
|
+
subOperations: [],
|
|
170
|
+
},
|
|
171
|
+
signature: "7369676e65645478",
|
|
172
|
+
},
|
|
173
|
+
},
|
|
174
|
+
];
|
|
175
|
+
|
|
176
|
+
let i = 0;
|
|
177
|
+
|
|
178
|
+
observable.forEach(signOperationEvent => {
|
|
179
|
+
expect(signOperationEvent).toEqual(expectedValues[i]);
|
|
180
|
+
i++;
|
|
181
|
+
});
|
|
182
|
+
});
|
|
183
|
+
|
|
184
|
+
it("should have sub operations if it has subaccount", async () => {
|
|
185
|
+
mockedSignTransaction.mockReturnValue("signedTx");
|
|
186
|
+
|
|
187
|
+
const date = new Date("2020-01-01");
|
|
188
|
+
jest.useFakeTimers().setSystemTime(date);
|
|
189
|
+
|
|
190
|
+
const id = faker.string.uuid();
|
|
191
|
+
const account = createFixtureAccount({
|
|
192
|
+
id,
|
|
193
|
+
subAccounts: [
|
|
194
|
+
{
|
|
195
|
+
type: "TokenAccount",
|
|
196
|
+
id: "subAccountId",
|
|
197
|
+
parentId: id,
|
|
198
|
+
token: {
|
|
199
|
+
type: "TokenCurrency",
|
|
200
|
+
id: "aptos/coin/dstapt_0xd11107bdf0d6d7040c6c0bfbdecb6545191fdf13e8d8d259952f53e1713f61b5::staked_coin::stakedaptos",
|
|
201
|
+
contractAddress:
|
|
202
|
+
"0xd11107bdf0d6d7040c6c0bfbdecb6545191fdf13e8d8d259952f53e1713f61b5::staked_coin::StakedAptos",
|
|
203
|
+
parentCurrency: {
|
|
204
|
+
type: "CryptoCurrency",
|
|
205
|
+
id: "aptos",
|
|
206
|
+
coinType: 637,
|
|
207
|
+
name: "Aptos",
|
|
208
|
+
managerAppName: "Aptos",
|
|
209
|
+
ticker: "APT",
|
|
210
|
+
scheme: "aptos",
|
|
211
|
+
color: "#231F20",
|
|
212
|
+
family: "aptos",
|
|
213
|
+
units: [
|
|
214
|
+
{
|
|
215
|
+
name: "APT",
|
|
216
|
+
code: "APT",
|
|
217
|
+
magnitude: 8,
|
|
218
|
+
},
|
|
219
|
+
],
|
|
220
|
+
explorerViews: [
|
|
221
|
+
{
|
|
222
|
+
address: "https://explorer.aptoslabs.com/account/$address?network=mainnet",
|
|
223
|
+
tx: "https://explorer.aptoslabs.com/txn/$hash?network=mainnet",
|
|
224
|
+
},
|
|
225
|
+
],
|
|
226
|
+
},
|
|
227
|
+
name: "dstAPT",
|
|
228
|
+
tokenType: "coin",
|
|
229
|
+
ticker: "dstAPT",
|
|
230
|
+
disableCountervalue: false,
|
|
231
|
+
delisted: false,
|
|
232
|
+
units: [
|
|
233
|
+
{
|
|
234
|
+
name: "dstAPT",
|
|
235
|
+
code: "dstAPT",
|
|
236
|
+
magnitude: 8,
|
|
237
|
+
},
|
|
238
|
+
],
|
|
239
|
+
},
|
|
240
|
+
balance: BigNumber(100),
|
|
241
|
+
spendableBalance: BigNumber(100),
|
|
242
|
+
creationDate: date,
|
|
243
|
+
operationsCount: 0,
|
|
244
|
+
operations: [],
|
|
245
|
+
pendingOperations: [],
|
|
246
|
+
balanceHistoryCache: emptyHistoryCache,
|
|
247
|
+
swapHistory: [],
|
|
248
|
+
},
|
|
249
|
+
] as TokenAccount[],
|
|
250
|
+
});
|
|
251
|
+
|
|
252
|
+
const transaction = createFixtureTransaction({
|
|
253
|
+
amount: BigNumber(5),
|
|
254
|
+
subAccountId: "subAccountId",
|
|
255
|
+
});
|
|
129
256
|
|
|
130
257
|
account.balance = new BigNumber(40);
|
|
131
258
|
transaction.fees = new BigNumber(30);
|
|
@@ -152,7 +279,7 @@ describe("buildSignOperation", () => {
|
|
|
152
279
|
id: "js:2:aptos:0x000:--OUT",
|
|
153
280
|
hash: "",
|
|
154
281
|
type: "OUT",
|
|
155
|
-
value: new BigNumber(
|
|
282
|
+
value: new BigNumber(30),
|
|
156
283
|
fee: transaction.fees,
|
|
157
284
|
extra: {},
|
|
158
285
|
blockHash: null,
|
|
@@ -162,6 +289,18 @@ describe("buildSignOperation", () => {
|
|
|
162
289
|
accountId: "js:2:aptos:0x000:",
|
|
163
290
|
date,
|
|
164
291
|
transactionSequenceNumber: 789,
|
|
292
|
+
subOperations: [
|
|
293
|
+
{
|
|
294
|
+
accountId: "subAccountId",
|
|
295
|
+
date: new Date("2020-01-01"),
|
|
296
|
+
fee: BigNumber(30),
|
|
297
|
+
id: "subAccountId--OUT",
|
|
298
|
+
recipients: ["recipient"],
|
|
299
|
+
senders: ["address"],
|
|
300
|
+
type: "OUT",
|
|
301
|
+
value: BigNumber(5),
|
|
302
|
+
},
|
|
303
|
+
],
|
|
165
304
|
},
|
|
166
305
|
signature: "7369676e65645478",
|
|
167
306
|
},
|