@ledgerhq/coin-algorand 0.13.0-nightly.20251122023607 → 0.13.0-nightly.20251125074637

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/CHANGELOG.md CHANGED
@@ -1,19 +1,21 @@
1
1
  # @ledgerhq/coin-algorand
2
2
 
3
- ## 0.13.0-nightly.20251122023607
3
+ ## 0.13.0-nightly.20251125074637
4
4
 
5
5
  ### Minor Changes
6
6
 
7
7
  - [#12572](https://github.com/LedgerHQ/ledger-live/pull/12572) [`74a340b`](https://github.com/LedgerHQ/ledger-live/commit/74a340b258589c9c37476103029eb036b930616c) Thanks [@gre-ledger](https://github.com/gre-ledger)! - BREAKING: CryptoAssetsStore interface is now fully async. All token lookup methods return Promises. Bot system and coin modules updated to support async token operations.
8
8
 
9
+ - [#12920](https://github.com/LedgerHQ/ledger-live/pull/12920) [`68a6599`](https://github.com/LedgerHQ/ledger-live/commit/68a65997a36dd2e53b0bb20388d0df7007ddcc8f) Thanks [@francois-guerin-ledger](https://github.com/francois-guerin-ledger)! - fix(coin-algorand): use determinitic order for new token accounts
10
+
9
11
  ### Patch Changes
10
12
 
11
- - Updated dependencies [[`74a340b`](https://github.com/LedgerHQ/ledger-live/commit/74a340b258589c9c37476103029eb036b930616c), [`a6bc24e`](https://github.com/LedgerHQ/ledger-live/commit/a6bc24ee988b98bf82f807ac5ce731ba79813901), [`b69c97d`](https://github.com/LedgerHQ/ledger-live/commit/b69c97d979ba97154c9abfda6abfc2a36becee4f), [`544721d`](https://github.com/LedgerHQ/ledger-live/commit/544721d198454526ef83516619d59c881ba34eb9), [`fe81926`](https://github.com/LedgerHQ/ledger-live/commit/fe81926afeb2df8e917e6bd1e4cbab13f09647fd), [`1c6f5f5`](https://github.com/LedgerHQ/ledger-live/commit/1c6f5f5843349b1955f7ca466f98cbe4ffcdaddf), [`b4a4e16`](https://github.com/LedgerHQ/ledger-live/commit/b4a4e160aae6fd64f944ab25633f6931dc4358d3), [`927ae64`](https://github.com/LedgerHQ/ledger-live/commit/927ae64db0bb04af54e25623655a001a68e0f2d3), [`d5d838a`](https://github.com/LedgerHQ/ledger-live/commit/d5d838a23e00edd53293843781c559c41db4e854), [`9f61dcf`](https://github.com/LedgerHQ/ledger-live/commit/9f61dcf6163fd66657e5be732c28bea623a40515), [`903ea9c`](https://github.com/LedgerHQ/ledger-live/commit/903ea9cdacf704a0119de2803a4f409b775391a5), [`938b970`](https://github.com/LedgerHQ/ledger-live/commit/938b970e15118dc706c759a3bec27dc01c3dd268), [`c40e9da`](https://github.com/LedgerHQ/ledger-live/commit/c40e9da68452fe9827b9435ff2d162291186be73), [`02ef98f`](https://github.com/LedgerHQ/ledger-live/commit/02ef98faeb13c182ef255e06a43c39abeb55ecc7), [`c0b5b9f`](https://github.com/LedgerHQ/ledger-live/commit/c0b5b9f4cdcb2ea3e15419cbf3d1a14f725c3e6a), [`6d0c6b2`](https://github.com/LedgerHQ/ledger-live/commit/6d0c6b2eda60049d8eebda5de2c54e8f0be7d009), [`70049be`](https://github.com/LedgerHQ/ledger-live/commit/70049bed0cd0a8c7a9e4947a63af82061dad46c0), [`0d33751`](https://github.com/LedgerHQ/ledger-live/commit/0d33751bb2ae599d0d26ce6a8efdbe01757f12fb), [`5b41dd5`](https://github.com/LedgerHQ/ledger-live/commit/5b41dd56e024a5d03ba0e49084113c04887395db), [`aadcec6`](https://github.com/LedgerHQ/ledger-live/commit/aadcec66847b800f79452ba1df09149e0a1cb9e8), [`eb5a17e`](https://github.com/LedgerHQ/ledger-live/commit/eb5a17e4db336eaa871eaeb52ffa5248e0f78bec), [`ed8532b`](https://github.com/LedgerHQ/ledger-live/commit/ed8532bad754ca2b5f1788c6e92f4646b775ec79), [`9659a34`](https://github.com/LedgerHQ/ledger-live/commit/9659a34d9998d5c4dff8618bf6cef7d16403680d), [`c70f6a8`](https://github.com/LedgerHQ/ledger-live/commit/c70f6a8370056b6fd8f236205471359d6f9b846f)]:
12
- - @ledgerhq/types-live@6.89.0-nightly.20251122023607
13
- - @ledgerhq/cryptoassets@13.33.0-nightly.20251122023607
14
- - @ledgerhq/coin-framework@6.9.0-nightly.20251122023607
15
- - @ledgerhq/live-env@2.21.0-nightly.20251122023607
16
- - @ledgerhq/live-network@2.1.1-nightly.20251122023607
13
+ - Updated dependencies [[`74a340b`](https://github.com/LedgerHQ/ledger-live/commit/74a340b258589c9c37476103029eb036b930616c), [`a6bc24e`](https://github.com/LedgerHQ/ledger-live/commit/a6bc24ee988b98bf82f807ac5ce731ba79813901), [`b69c97d`](https://github.com/LedgerHQ/ledger-live/commit/b69c97d979ba97154c9abfda6abfc2a36becee4f), [`544721d`](https://github.com/LedgerHQ/ledger-live/commit/544721d198454526ef83516619d59c881ba34eb9), [`fe81926`](https://github.com/LedgerHQ/ledger-live/commit/fe81926afeb2df8e917e6bd1e4cbab13f09647fd), [`1c6f5f5`](https://github.com/LedgerHQ/ledger-live/commit/1c6f5f5843349b1955f7ca466f98cbe4ffcdaddf), [`b4a4e16`](https://github.com/LedgerHQ/ledger-live/commit/b4a4e160aae6fd64f944ab25633f6931dc4358d3), [`927ae64`](https://github.com/LedgerHQ/ledger-live/commit/927ae64db0bb04af54e25623655a001a68e0f2d3), [`d5d838a`](https://github.com/LedgerHQ/ledger-live/commit/d5d838a23e00edd53293843781c559c41db4e854), [`9f61dcf`](https://github.com/LedgerHQ/ledger-live/commit/9f61dcf6163fd66657e5be732c28bea623a40515), [`903ea9c`](https://github.com/LedgerHQ/ledger-live/commit/903ea9cdacf704a0119de2803a4f409b775391a5), [`9251b77`](https://github.com/LedgerHQ/ledger-live/commit/9251b77fcb01709723842f19220a2a41a6fc8f3b), [`938b970`](https://github.com/LedgerHQ/ledger-live/commit/938b970e15118dc706c759a3bec27dc01c3dd268), [`c40e9da`](https://github.com/LedgerHQ/ledger-live/commit/c40e9da68452fe9827b9435ff2d162291186be73), [`02ef98f`](https://github.com/LedgerHQ/ledger-live/commit/02ef98faeb13c182ef255e06a43c39abeb55ecc7), [`c0b5b9f`](https://github.com/LedgerHQ/ledger-live/commit/c0b5b9f4cdcb2ea3e15419cbf3d1a14f725c3e6a), [`6d0c6b2`](https://github.com/LedgerHQ/ledger-live/commit/6d0c6b2eda60049d8eebda5de2c54e8f0be7d009), [`70049be`](https://github.com/LedgerHQ/ledger-live/commit/70049bed0cd0a8c7a9e4947a63af82061dad46c0), [`0d33751`](https://github.com/LedgerHQ/ledger-live/commit/0d33751bb2ae599d0d26ce6a8efdbe01757f12fb), [`5b41dd5`](https://github.com/LedgerHQ/ledger-live/commit/5b41dd56e024a5d03ba0e49084113c04887395db), [`aadcec6`](https://github.com/LedgerHQ/ledger-live/commit/aadcec66847b800f79452ba1df09149e0a1cb9e8), [`b113920`](https://github.com/LedgerHQ/ledger-live/commit/b11392056bc334fc1813c473569ad3ae7be08045), [`eb5a17e`](https://github.com/LedgerHQ/ledger-live/commit/eb5a17e4db336eaa871eaeb52ffa5248e0f78bec), [`ed8532b`](https://github.com/LedgerHQ/ledger-live/commit/ed8532bad754ca2b5f1788c6e92f4646b775ec79), [`9659a34`](https://github.com/LedgerHQ/ledger-live/commit/9659a34d9998d5c4dff8618bf6cef7d16403680d), [`c70f6a8`](https://github.com/LedgerHQ/ledger-live/commit/c70f6a8370056b6fd8f236205471359d6f9b846f)]:
14
+ - @ledgerhq/types-live@6.89.0-nightly.20251125074637
15
+ - @ledgerhq/cryptoassets@13.33.0-nightly.20251125074637
16
+ - @ledgerhq/coin-framework@6.9.0-nightly.20251125074637
17
+ - @ledgerhq/live-env@2.21.0-nightly.20251125074637
18
+ - @ledgerhq/live-network@2.1.1-nightly.20251125074637
17
19
 
18
20
  ## 0.12.0
19
21
 
@@ -1 +1 @@
1
- {"version":3,"file":"synchronization.d.ts","sourceRoot":"","sources":["../src/synchronization.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAiBjF,OAAO,KAAK,EAAE,UAAU,EAAwC,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAqB,MAAM,SAAS,CAAC;AA0M7D,eAAO,MAAM,eAAe,EAAE,eAAe,CAAC,eAAe,CA0D5D,CAAC;AAiHF,eAAO,MAAM,IAAI,oIAAgC,CAAC"}
1
+ {"version":3,"file":"synchronization.d.ts","sourceRoot":"","sources":["../src/synchronization.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAiBjF,OAAO,KAAK,EAAE,UAAU,EAAwC,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAqB,MAAM,SAAS,CAAC;AA0M7D,eAAO,MAAM,eAAe,EAAE,eAAe,CAAC,eAAe,CA0D5D,CAAC;AAuHF,eAAO,MAAM,IAAI,oIAAgC,CAAC"}
@@ -257,6 +257,7 @@ async function buildSubAccounts({ accountId, initialAccount, initialAccountAddre
257
257
  const tokenAccounts = [];
258
258
  const existingAccountByTicker = {}; // used for fast lookup
259
259
  const existingAccountTickers = []; // used to keep track of ordering
260
+ const assetsIds = assets.map(asset => asset.assetId);
260
261
  if (initialAccount && initialAccount.subAccounts) {
261
262
  for (const existingSubAccount of initialAccount.subAccounts) {
262
263
  if (existingSubAccount.type === "TokenAccount") {
@@ -285,10 +286,15 @@ async function buildSubAccounts({ accountId, initialAccount, initialAccountAddre
285
286
  tokenAccounts.push(tokenAccount);
286
287
  }
287
288
  });
288
- // Preserve order of tokenAccounts from the existing token accounts
289
+ // Preserve order of tokenAccounts from the existing token accounts, or use the
290
+ // order of input assets if no token accounts exist yet
289
291
  tokenAccounts.sort((a, b) => {
290
- const i = existingAccountTickers.indexOf(a.token.ticker);
291
- const j = existingAccountTickers.indexOf(b.token.ticker);
292
+ const i = existingAccountTickers.length
293
+ ? existingAccountTickers.indexOf(a.token.ticker)
294
+ : assetsIds.indexOf((0, tokens_1.extractTokenId)(a.token.id));
295
+ const j = existingAccountTickers.length
296
+ ? existingAccountTickers.indexOf(b.token.ticker)
297
+ : assetsIds.indexOf((0, tokens_1.extractTokenId)(b.token.id));
292
298
  if (i === j)
293
299
  return 0;
294
300
  if (i < 0)
@@ -1 +1 @@
1
- {"version":3,"file":"synchronization.js","sourceRoot":"","sources":["../src/synchronization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"synchronization.js","sourceRoot":"","sources":["../src/synchronization.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=synchronization.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"synchronization.test.d.ts","sourceRoot":"","sources":["../src/synchronization.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const state_1 = require("@ledgerhq/cryptoassets/state");
7
+ const synchronization_1 = require("./synchronization");
8
+ const api_1 = __importDefault(require("./api"));
9
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
10
+ describe("Synchronization", () => {
11
+ beforeAll(() => {
12
+ (0, state_1.setCryptoAssetsStore)({
13
+ findTokenById: async (id) => {
14
+ switch (id) {
15
+ case "algorand/asa/1":
16
+ return { id, ticker: "USDC" };
17
+ case "algorand/asa/2":
18
+ return { id, ticker: "USDT" };
19
+ default:
20
+ return undefined;
21
+ }
22
+ },
23
+ });
24
+ });
25
+ describe("getAccountShape", () => {
26
+ it("preserves the order of existing token accounts", async () => {
27
+ jest.spyOn(api_1.default, "getAccount").mockResolvedValue({
28
+ balance: new bignumber_js_1.default(10),
29
+ assets: [
30
+ { assetId: "1", balance: new bignumber_js_1.default(4) },
31
+ { assetId: "2", balance: new bignumber_js_1.default(5) },
32
+ ],
33
+ });
34
+ jest.spyOn(api_1.default, "getAccountTransactions").mockResolvedValue([]);
35
+ const result = await (0, synchronization_1.getAccountShape)({
36
+ address: "address",
37
+ initialAccount: {
38
+ subAccounts: [
39
+ {
40
+ id: "js:2:algorand:address:+2",
41
+ type: "TokenAccount",
42
+ token: { id: "algorand/asa/2", ticker: "USDT" },
43
+ },
44
+ {
45
+ id: "js:2:algorand:address:+1",
46
+ type: "TokenAccount",
47
+ token: { id: "algorand/asa/1", ticker: "USDC" },
48
+ },
49
+ ],
50
+ },
51
+ currency: { id: "algorand" },
52
+ derivationMode: "",
53
+ }, {});
54
+ expect(result).toMatchObject({
55
+ id: "js:2:algorand:address:",
56
+ xpub: "address",
57
+ balance: new bignumber_js_1.default(10),
58
+ subAccounts: [
59
+ expect.objectContaining({ id: "js:2:algorand:address:+2" }),
60
+ expect.objectContaining({ id: "js:2:algorand:address:+1" }),
61
+ ],
62
+ });
63
+ });
64
+ it("uses the order of input assets if no token accounts exist yet", async () => {
65
+ jest.spyOn(api_1.default, "getAccount").mockResolvedValue({
66
+ balance: new bignumber_js_1.default(10),
67
+ assets: [
68
+ { assetId: "1", balance: new bignumber_js_1.default(4) },
69
+ { assetId: "2", balance: new bignumber_js_1.default(5) },
70
+ ],
71
+ });
72
+ jest.spyOn(api_1.default, "getAccountTransactions").mockResolvedValue([]);
73
+ const result = await (0, synchronization_1.getAccountShape)({
74
+ address: "address",
75
+ initialAccount: {
76
+ subAccounts: [],
77
+ },
78
+ currency: { id: "algorand" },
79
+ derivationMode: "",
80
+ }, {});
81
+ expect(result).toMatchObject({
82
+ id: "js:2:algorand:address:",
83
+ xpub: "address",
84
+ balance: new bignumber_js_1.default(10),
85
+ subAccounts: [
86
+ expect.objectContaining({ id: "js:2:algorand:address:+1" }),
87
+ expect.objectContaining({ id: "js:2:algorand:address:+2" }),
88
+ ],
89
+ });
90
+ });
91
+ });
92
+ });
93
+ //# sourceMappingURL=synchronization.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"synchronization.test.js","sourceRoot":"","sources":["../src/synchronization.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"synchronization.d.ts","sourceRoot":"","sources":["../src/synchronization.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAiBjF,OAAO,KAAK,EAAE,UAAU,EAAwC,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAqB,MAAM,SAAS,CAAC;AA0M7D,eAAO,MAAM,eAAe,EAAE,eAAe,CAAC,eAAe,CA0D5D,CAAC;AAiHF,eAAO,MAAM,IAAI,oIAAgC,CAAC"}
1
+ {"version":3,"file":"synchronization.d.ts","sourceRoot":"","sources":["../src/synchronization.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAiBjF,OAAO,KAAK,EAAE,UAAU,EAAwC,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAqB,MAAM,SAAS,CAAC;AA0M7D,eAAO,MAAM,eAAe,EAAE,eAAe,CAAC,eAAe,CA0D5D,CAAC;AAuHF,eAAO,MAAM,IAAI,oIAAgC,CAAC"}
@@ -250,6 +250,7 @@ async function buildSubAccounts({ accountId, initialAccount, initialAccountAddre
250
250
  const tokenAccounts = [];
251
251
  const existingAccountByTicker = {}; // used for fast lookup
252
252
  const existingAccountTickers = []; // used to keep track of ordering
253
+ const assetsIds = assets.map(asset => asset.assetId);
253
254
  if (initialAccount && initialAccount.subAccounts) {
254
255
  for (const existingSubAccount of initialAccount.subAccounts) {
255
256
  if (existingSubAccount.type === "TokenAccount") {
@@ -278,10 +279,15 @@ async function buildSubAccounts({ accountId, initialAccount, initialAccountAddre
278
279
  tokenAccounts.push(tokenAccount);
279
280
  }
280
281
  });
281
- // Preserve order of tokenAccounts from the existing token accounts
282
+ // Preserve order of tokenAccounts from the existing token accounts, or use the
283
+ // order of input assets if no token accounts exist yet
282
284
  tokenAccounts.sort((a, b) => {
283
- const i = existingAccountTickers.indexOf(a.token.ticker);
284
- const j = existingAccountTickers.indexOf(b.token.ticker);
285
+ const i = existingAccountTickers.length
286
+ ? existingAccountTickers.indexOf(a.token.ticker)
287
+ : assetsIds.indexOf(extractTokenId(a.token.id));
288
+ const j = existingAccountTickers.length
289
+ ? existingAccountTickers.indexOf(b.token.ticker)
290
+ : assetsIds.indexOf(extractTokenId(b.token.id));
285
291
  if (i === j)
286
292
  return 0;
287
293
  if (i < 0)
@@ -1 +1 @@
1
- {"version":3,"file":"synchronization.js","sourceRoot":"","sources":["../src/synchronization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"synchronization.js","sourceRoot":"","sources":["../src/synchronization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAE5E,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,WAKN,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAK5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1D,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAErC,MAAM,qBAAqB,GAAG,CAAC,WAA4B,EAAE,cAAsB,EAAa,EAAE;IAChG,IAAI,WAAW,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;IACnC,IAAI,WAAW,CAAC,IAAI,KAAK,mBAAmB,CAAC,cAAc,EAAE,CAAC;QAC5D,MAAM,OAAO,GAAG,WAAW,CAAC,OAAgC,CAAC;QAC7D,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB;YAC5C,CAAC,CAAC,OAAO,CAAC,kBAAkB;YAC5B,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC;QAE9B,2EAA2E;QAC3E,IAAI,CAAC,WAAW,KAAK,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAqB,KAAK,cAAc,CAAC,EAAE,CAAC;YAC5F,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACtD,CAAC;QACD,qDAAqD;QACrD,IACE,CAAC,WAAW,KAAK,cAAc,CAAC;YAChC,CAAC,OAAO,CAAC,mBAAmB,IAAI,OAAO,CAAC,mBAAmB,KAAK,cAAc,CAAC,EAC/E,CAAC;YACD,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBAC7B,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAC1B,WAA4B,EAC5B,cAAsB,EACqB,EAAE;IAC7C,IAAI,MAAM,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;IAC9B,IAAI,OAAO,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;IAE/B,IAAI,WAAW,CAAC,aAAa,KAAK,cAAc,EAAE,CAAC;QACjD,MAAM,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC;QAChD,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC3D,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,WAAW,CAAC,IAAI,KAAK,mBAAmB,CAAC,OAAO,EAAE,CAAC;QACrD,MAAM,OAAO,GAAG,WAAW,CAAC,OAA0B,CAAC;QACvD,IAAI,WAAW,CAAC,aAAa,KAAK,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC3D,OAAO;gBACL,MAAM;gBACN,OAAO;aACR,CAAC;QACJ,CAAC;QACD,IAAI,WAAW,CAAC,aAAa,KAAK,cAAc,EAAE,CAAC;YACjD,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;QACD,IAAI,OAAO,CAAC,gBAAgB,KAAK,cAAc,EAAE,CAAC;YAChD,MAAM,gBAAgB,GAAG,WAAW,CAAC,gBAAgB,CAAC;YACtD,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC5D,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3C,CAAC;QACD,IACE,WAAW,CAAC,YAAY;YACxB,OAAO,CAAC,WAAW;YACnB,OAAO,CAAC,cAAc,KAAK,cAAc,EACzC,CAAC;YACD,MAAM,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;YAC9C,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7D,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,OAAO;QACL,MAAM;QACN,OAAO;KACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAC1B,WAA4B,EAC5B,cAAsB,EACP,EAAE;IACjB,OAAO,WAAW,CAAC,aAAa,KAAK,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACrE,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,WAA4B,EAAE,cAAsB,EAAiB,EAAE;IAC/F,IAAI,WAAW,CAAC,IAAI,KAAK,mBAAmB,CAAC,cAAc,EAAE,CAAC;QAC5D,MAAM,OAAO,GAAG,WAAW,CAAC,OAAgC,CAAC;QAC7D,IACE,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE;YAC5B,WAAW,CAAC,aAAa,KAAK,OAAO,CAAC,qBAAqB,EAC3D,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;aAAM,IAAI,OAAO,CAAC,mBAAmB,IAAI,WAAW,CAAC,aAAa,KAAK,cAAc,EAAE,CAAC;YACvF,OAAO,SAAS,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC,aAAa,KAAK,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACrE,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,WAA4B,EAAY,EAAE;IACrE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,WAA4B,EAAY,EAAE;IACxE,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,IAAI,WAAW,CAAC,IAAI,KAAK,mBAAmB,CAAC,OAAO,EAAE,CAAC;QACrD,MAAM,OAAO,GAAG,WAAW,CAAC,OAA0B,CAAC;QACvD,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC1C,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAC3B,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;SAAM,IAAI,WAAW,CAAC,IAAI,KAAK,mBAAmB,CAAC,cAAc,EAAE,CAAC;QACnE,MAAM,OAAO,GAAG,WAAW,CAAC,OAAgC,CAAC;QAE7D,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;YAChC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,WAA4B,EAAsB,EAAE;IAC/E,IAAI,WAAW,CAAC,IAAI,KAAK,mBAAmB,CAAC,cAAc,EAAE,CAAC;QAC5D,MAAM,OAAO,GAAG,WAAW,CAAC,OAAgC,CAAC;QAC7D,OAAO,OAAO,CAAC,OAAO,CAAC;IACzB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAChC,EAAmB,EACnB,SAAiB,EACjB,cAAsB,EACtB,WAA4B,EACT,EAAE;IACrB,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC;IACnB,MAAM,WAAW,GAAG,EAAE,CAAC,KAAK,CAAC;IAC7B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,uBAAuB,CAAC,CAAC;IAC/E,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IACnB,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;IACrB,MAAM,OAAO,GAAa,mBAAmB,CAAC,EAAE,CAAC,CAAC;IAClD,MAAM,UAAU,GAAa,sBAAsB,CAAC,EAAE,CAAC,CAAC;IACxD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,mBAAmB,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,gBAAgB,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;IAExC,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEhF,OAAO;QACL,EAAE,EAAE,iBAAiB,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC;QAC5C,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,KAAK,EAAE,MAAM;QACb,GAAG;QACH,OAAO;QACP,UAAU;QACV,WAAW;QACX,SAAS,EAAE,IAAI;QACf,SAAS;QACT,aAAa;QACb,KAAK,EAAE;YACL,OAAO;YACP,IAAI;YACJ,OAAO;SACR;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,4BAA4B,GAAG,CACnC,EAAmB,EACnB,SAAiB,EACjB,cAAsB,EACH,EAAE;IACrB,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC;IACnB,MAAM,WAAW,GAAG,EAAE,CAAC,KAAK,CAAC;IAC7B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,uBAAuB,CAAC,CAAC;IAC/E,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IACnB,MAAM,OAAO,GAAa,mBAAmB,CAAC,EAAE,CAAC,CAAC;IAClD,MAAM,UAAU,GAAa,sBAAsB,CAAC,EAAE,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,qBAAqB,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IAEzD,OAAO;QACL,EAAE,EAAE,iBAAiB,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC;QAC5C,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,KAAK,EAAE,MAAM;QACb,GAAG;QACH,OAAO;QACP,UAAU;QACV,WAAW;QACX,SAAS,EAAE,IAAI;QACf,SAAS;QACT,KAAK,EAAE,EAAE;KACV,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAqC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE;IAC1F,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;IACnE,MAAM,aAAa,GAAG,cAAc,EAAE,UAAU,IAAI,EAAE,CAAC;IACvD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnF,MAAM,SAAS,GAAG,eAAe,CAAC;QAChC,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,GAAG;QACZ,UAAU,EAAE,QAAQ,CAAC,EAAE;QACvB,aAAa,EAAE,OAAO;QACtB,cAAc;KACf,CAAC,CAAC;IAEH,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAEzF,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;IAE/B,0DAA0D;IAC1D,MAAM,gBAAgB,GAAG,uBAAuB,CAAC;QAC/C,cAAc,EAAE,OAAO;QACvB,eAAe,EAAE,QAAQ;QACzB,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;IAEH,MAAM,eAAe,GAAsB,MAAM,WAAW,CAAC,sBAAsB,CACjF,OAAO,EACP,OAAO,CACR,CAAC;IAEF,MAAM,WAAW,GAAG,MAAM,gBAAgB,CAAC;QACzC,QAAQ;QACR,SAAS;QACT,cAAc;QACd,qBAAqB,EAAE,OAAO;QAC9B,MAAM;QACN,eAAe;QACf,UAAU;KACX,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAC7C,yBAAyB,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,CAC/D,CAAC;IAEF,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAE1D,OAAO;QACL,EAAE,EAAE,SAAS;QACb,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,KAAK;QAClB,OAAO;QACP,gBAAgB;QAChB,UAAU;QACV,eAAe,EAAE,UAAU,CAAC,MAAM;QAClC,WAAW,EAAE,WAAW,IAAI,EAAE;QAC9B,iBAAiB,EAAE;YACjB,OAAO,EAAE,cAAc;YACvB,QAAQ;SACT;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,KAAK,UAAU,eAAe,CAAC,EAC7B,eAAe,EACf,oBAAoB,EACpB,KAAK,EACL,mBAAmB,EACnB,eAAe,EACf,OAAO,GAQR;IACC,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC7C,MAAM,cAAc,GAAG,eAAe,GAAG,GAAG,GAAG,WAAW,CAAC;IAE3D,MAAM,aAAa,GAAG,mBAAmB,EAAE,UAAU,IAAI,EAAE,CAAC;IAE5D,MAAM,aAAa,GAAG,eAAe;SAClC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,mBAAmB,CAAC,cAAc,CAAC;SAC5D,MAAM,CAAC,EAAE,CAAC,EAAE;QACX,MAAM,OAAO,GAAG,EAAE,CAAC,OAAgC,CAAC;QACpD,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,WAAW,CAAC,CAAC;IACzD,CAAC,CAAC;SACD,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE,oBAAoB,CAAC,KAAK,QAAQ,CAAC;SACrE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,4BAA4B,CAAC,EAAE,EAAE,cAAc,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAErF,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAE1D,MAAM,YAAY,GAAiB;QACjC,IAAI,EAAE,cAAc;QACpB,EAAE,EAAE,cAAc;QAClB,QAAQ,EAAE,eAAe;QACzB,KAAK;QACL,eAAe,EAAE,UAAU,CAAC,MAAM;QAClC,UAAU;QACV,iBAAiB,EAAE,EAAE;QACrB,OAAO;QACP,gBAAgB,EAAE,OAAO;QACzB,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE;QACzF,mBAAmB,EAAE,iBAAiB;KACvC,CAAC;IACF,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,EAC9B,SAAS,EACT,cAAc,EACd,qBAAqB,EACrB,MAAM,EACN,eAAe,EACf,UAAU,GASX;IACC,MAAM,EAAE,mBAAmB,GAAG,EAAE,EAAE,GAAG,UAAU,CAAC;IAChD,MAAM,aAAa,GAAmB,EAAE,CAAC;IACzC,MAAM,uBAAuB,GAAuC,EAAE,CAAC,CAAC,uBAAuB;IAC/F,MAAM,sBAAsB,GAAa,EAAE,CAAC,CAAC,iCAAiC;IAC9E,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAErD,IAAI,cAAc,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC;QACjD,KAAK,MAAM,kBAAkB,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC;YAC5D,IAAI,kBAAkB,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBAC/C,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,kBAAkB,CAAC,KAAK,CAAC;gBAEhD,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;oBACtC,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACpC,uBAAuB,CAAC,MAAM,CAAC,GAAG,kBAAkB,CAAC;gBACvD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,MAAM,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;QAC/C,MAAM,KAAK,GAAG,MAAM,oBAAoB,EAAE,CAAC,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAExF,IAAI,KAAK,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YACrD,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAClE,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC;gBACzC,eAAe,EAAE,SAAS;gBAC1B,oBAAoB,EAAE,qBAAqB;gBAC3C,mBAAmB;gBACnB,KAAK;gBACL,eAAe;gBACf,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC,CAAC;YACH,IAAI,YAAY;gBAAE,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACrD,CAAC;IACH,CAAC,CAAC,CAAC;IACH,+EAA+E;IAC/E,uDAAuD;IACvD,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC1B,MAAM,CAAC,GAAG,sBAAsB,CAAC,MAAM;YACrC,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;YAChD,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QAClD,MAAM,CAAC,GAAG,sBAAsB,CAAC,MAAM;YACrC,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;YAChD,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,CAAC;QACpB,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,CAAC,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;IACH,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,MAAM,IAAI,GAAG,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=synchronization.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"synchronization.test.d.ts","sourceRoot":"","sources":["../src/synchronization.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,88 @@
1
+ import { setCryptoAssetsStore } from "@ledgerhq/cryptoassets/state";
2
+ import { getAccountShape } from "./synchronization";
3
+ import api from "./api";
4
+ import BigNumber from "bignumber.js";
5
+ describe("Synchronization", () => {
6
+ beforeAll(() => {
7
+ setCryptoAssetsStore({
8
+ findTokenById: async (id) => {
9
+ switch (id) {
10
+ case "algorand/asa/1":
11
+ return { id, ticker: "USDC" };
12
+ case "algorand/asa/2":
13
+ return { id, ticker: "USDT" };
14
+ default:
15
+ return undefined;
16
+ }
17
+ },
18
+ });
19
+ });
20
+ describe("getAccountShape", () => {
21
+ it("preserves the order of existing token accounts", async () => {
22
+ jest.spyOn(api, "getAccount").mockResolvedValue({
23
+ balance: new BigNumber(10),
24
+ assets: [
25
+ { assetId: "1", balance: new BigNumber(4) },
26
+ { assetId: "2", balance: new BigNumber(5) },
27
+ ],
28
+ });
29
+ jest.spyOn(api, "getAccountTransactions").mockResolvedValue([]);
30
+ const result = await getAccountShape({
31
+ address: "address",
32
+ initialAccount: {
33
+ subAccounts: [
34
+ {
35
+ id: "js:2:algorand:address:+2",
36
+ type: "TokenAccount",
37
+ token: { id: "algorand/asa/2", ticker: "USDT" },
38
+ },
39
+ {
40
+ id: "js:2:algorand:address:+1",
41
+ type: "TokenAccount",
42
+ token: { id: "algorand/asa/1", ticker: "USDC" },
43
+ },
44
+ ],
45
+ },
46
+ currency: { id: "algorand" },
47
+ derivationMode: "",
48
+ }, {});
49
+ expect(result).toMatchObject({
50
+ id: "js:2:algorand:address:",
51
+ xpub: "address",
52
+ balance: new BigNumber(10),
53
+ subAccounts: [
54
+ expect.objectContaining({ id: "js:2:algorand:address:+2" }),
55
+ expect.objectContaining({ id: "js:2:algorand:address:+1" }),
56
+ ],
57
+ });
58
+ });
59
+ it("uses the order of input assets if no token accounts exist yet", async () => {
60
+ jest.spyOn(api, "getAccount").mockResolvedValue({
61
+ balance: new BigNumber(10),
62
+ assets: [
63
+ { assetId: "1", balance: new BigNumber(4) },
64
+ { assetId: "2", balance: new BigNumber(5) },
65
+ ],
66
+ });
67
+ jest.spyOn(api, "getAccountTransactions").mockResolvedValue([]);
68
+ const result = await getAccountShape({
69
+ address: "address",
70
+ initialAccount: {
71
+ subAccounts: [],
72
+ },
73
+ currency: { id: "algorand" },
74
+ derivationMode: "",
75
+ }, {});
76
+ expect(result).toMatchObject({
77
+ id: "js:2:algorand:address:",
78
+ xpub: "address",
79
+ balance: new BigNumber(10),
80
+ subAccounts: [
81
+ expect.objectContaining({ id: "js:2:algorand:address:+1" }),
82
+ expect.objectContaining({ id: "js:2:algorand:address:+2" }),
83
+ ],
84
+ });
85
+ });
86
+ });
87
+ });
88
+ //# sourceMappingURL=synchronization.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"synchronization.test.js","sourceRoot":"","sources":["../src/synchronization.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/coin-algorand",
3
- "version": "0.13.0-nightly.20251122023607",
3
+ "version": "0.13.0-nightly.20251125074637",
4
4
  "description": "Ledger Algorand Coin integration",
5
5
  "keywords": [
6
6
  "Ledger",
@@ -52,15 +52,15 @@
52
52
  "lodash": "^4.17.21",
53
53
  "prando": "^6.0.1",
54
54
  "rxjs": "^7.8.1",
55
- "@ledgerhq/coin-framework": "^6.9.0-nightly.20251122023607",
56
- "@ledgerhq/cryptoassets": "^13.33.0-nightly.20251122023607",
55
+ "@ledgerhq/coin-framework": "^6.9.0-nightly.20251125074637",
56
+ "@ledgerhq/cryptoassets": "^13.33.0-nightly.20251125074637",
57
57
  "@ledgerhq/devices": "8.7.0",
58
58
  "@ledgerhq/errors": "^6.27.0",
59
- "@ledgerhq/live-env": "^2.21.0-nightly.20251122023607",
60
- "@ledgerhq/live-network": "^2.1.1-nightly.20251122023607",
59
+ "@ledgerhq/live-env": "^2.21.0-nightly.20251125074637",
60
+ "@ledgerhq/live-network": "^2.1.1-nightly.20251125074637",
61
61
  "@ledgerhq/live-promise": "^0.1.1",
62
62
  "@ledgerhq/types-cryptoassets": "^7.30.0",
63
- "@ledgerhq/types-live": "^6.89.0-nightly.20251122023607"
63
+ "@ledgerhq/types-live": "^6.89.0-nightly.20251125074637"
64
64
  },
65
65
  "devDependencies": {
66
66
  "@types/invariant": "^2.2.2",
@@ -0,0 +1,100 @@
1
+ import { setCryptoAssetsStore } from "@ledgerhq/cryptoassets/state";
2
+ import { getAccountShape } from "./synchronization";
3
+ import api from "./api";
4
+ import BigNumber from "bignumber.js";
5
+
6
+ describe("Synchronization", () => {
7
+ beforeAll(() => {
8
+ setCryptoAssetsStore({
9
+ findTokenById: async (id: string) => {
10
+ switch (id) {
11
+ case "algorand/asa/1":
12
+ return { id, ticker: "USDC" };
13
+ case "algorand/asa/2":
14
+ return { id, ticker: "USDT" };
15
+ default:
16
+ return undefined;
17
+ }
18
+ },
19
+ } as any);
20
+ });
21
+
22
+ describe("getAccountShape", () => {
23
+ it("preserves the order of existing token accounts", async () => {
24
+ jest.spyOn(api, "getAccount").mockResolvedValue({
25
+ balance: new BigNumber(10),
26
+ assets: [
27
+ { assetId: "1", balance: new BigNumber(4) },
28
+ { assetId: "2", balance: new BigNumber(5) },
29
+ ],
30
+ } as any);
31
+ jest.spyOn(api, "getAccountTransactions").mockResolvedValue([]);
32
+
33
+ const result = await getAccountShape(
34
+ {
35
+ address: "address",
36
+ initialAccount: {
37
+ subAccounts: [
38
+ {
39
+ id: "js:2:algorand:address:+2",
40
+ type: "TokenAccount",
41
+ token: { id: "algorand/asa/2", ticker: "USDT" },
42
+ },
43
+ {
44
+ id: "js:2:algorand:address:+1",
45
+ type: "TokenAccount",
46
+ token: { id: "algorand/asa/1", ticker: "USDC" },
47
+ },
48
+ ],
49
+ },
50
+ currency: { id: "algorand" },
51
+ derivationMode: "",
52
+ } as any,
53
+ {} as any,
54
+ );
55
+
56
+ expect(result).toMatchObject({
57
+ id: "js:2:algorand:address:",
58
+ xpub: "address",
59
+ balance: new BigNumber(10),
60
+ subAccounts: [
61
+ expect.objectContaining({ id: "js:2:algorand:address:+2" }),
62
+ expect.objectContaining({ id: "js:2:algorand:address:+1" }),
63
+ ],
64
+ });
65
+ });
66
+
67
+ it("uses the order of input assets if no token accounts exist yet", async () => {
68
+ jest.spyOn(api, "getAccount").mockResolvedValue({
69
+ balance: new BigNumber(10),
70
+ assets: [
71
+ { assetId: "1", balance: new BigNumber(4) },
72
+ { assetId: "2", balance: new BigNumber(5) },
73
+ ],
74
+ } as any);
75
+ jest.spyOn(api, "getAccountTransactions").mockResolvedValue([]);
76
+
77
+ const result = await getAccountShape(
78
+ {
79
+ address: "address",
80
+ initialAccount: {
81
+ subAccounts: [],
82
+ },
83
+ currency: { id: "algorand" },
84
+ derivationMode: "",
85
+ } as any,
86
+ {} as any,
87
+ );
88
+
89
+ expect(result).toMatchObject({
90
+ id: "js:2:algorand:address:",
91
+ xpub: "address",
92
+ balance: new BigNumber(10),
93
+ subAccounts: [
94
+ expect.objectContaining({ id: "js:2:algorand:address:+1" }),
95
+ expect.objectContaining({ id: "js:2:algorand:address:+2" }),
96
+ ],
97
+ });
98
+ });
99
+ });
100
+ });
@@ -348,6 +348,7 @@ async function buildSubAccounts({
348
348
  const tokenAccounts: TokenAccount[] = [];
349
349
  const existingAccountByTicker: { [ticker: string]: TokenAccount } = {}; // used for fast lookup
350
350
  const existingAccountTickers: string[] = []; // used to keep track of ordering
351
+ const assetsIds = assets.map(asset => asset.assetId);
351
352
 
352
353
  if (initialAccount && initialAccount.subAccounts) {
353
354
  for (const existingSubAccount of initialAccount.subAccounts) {
@@ -379,10 +380,15 @@ async function buildSubAccounts({
379
380
  if (tokenAccount) tokenAccounts.push(tokenAccount);
380
381
  }
381
382
  });
382
- // Preserve order of tokenAccounts from the existing token accounts
383
+ // Preserve order of tokenAccounts from the existing token accounts, or use the
384
+ // order of input assets if no token accounts exist yet
383
385
  tokenAccounts.sort((a, b) => {
384
- const i = existingAccountTickers.indexOf(a.token.ticker);
385
- const j = existingAccountTickers.indexOf(b.token.ticker);
386
+ const i = existingAccountTickers.length
387
+ ? existingAccountTickers.indexOf(a.token.ticker)
388
+ : assetsIds.indexOf(extractTokenId(a.token.id));
389
+ const j = existingAccountTickers.length
390
+ ? existingAccountTickers.indexOf(b.token.ticker)
391
+ : assetsIds.indexOf(extractTokenId(b.token.id));
386
392
  if (i === j) return 0;
387
393
  if (i < 0) return 1;
388
394
  if (j < 0) return -1;