@ledgerhq/coin-vechain 2.11.1-nightly.5 → 2.12.0-nightly.20251031023756

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.
@@ -1,4 +1,4 @@
1
1
 
2
- > @ledgerhq/coin-vechain@2.11.1-nightly.4 build /home/runner/work/ledger-live/ledger-live/libs/coin-modules/coin-vechain
2
+ > @ledgerhq/coin-vechain@2.11.0 build /home/runner/work/ledger-live/ledger-live/libs/coin-modules/coin-vechain
3
3
  > tsc && tsc -m esnext --moduleResolution bundler --outDir lib-es
4
4
 
package/CHANGELOG.md CHANGED
@@ -1,54 +1,20 @@
1
1
  # @ledgerhq/coin-evm
2
2
 
3
- ## 2.11.1-nightly.5
3
+ ## 2.12.0-nightly.20251031023756
4
4
 
5
- ### Patch Changes
6
-
7
- - Updated dependencies [[`c1a4bfd`](https://github.com/LedgerHQ/ledger-live/commit/c1a4bfd34b46c6b6587d247673cadb3c078deb1d), [`6ccabef`](https://github.com/LedgerHQ/ledger-live/commit/6ccabef8f3c4e8cc042299d531684595ebadcc55)]:
8
- - @ledgerhq/devices@8.7.0-nightly.1
9
- - @ledgerhq/cryptoassets@13.32.0-nightly.3
10
- - @ledgerhq/coin-framework@6.8.0-nightly.5
11
-
12
- ## 2.11.1-nightly.4
13
-
14
- ### Patch Changes
15
-
16
- - Updated dependencies [[`ccf788d`](https://github.com/LedgerHQ/ledger-live/commit/ccf788d7c0239ca95e76c3cc340f9a6bd09ea726), [`34b28dd`](https://github.com/LedgerHQ/ledger-live/commit/34b28dd5e819906daaa79db5fe6064674def5e7d), [`b962966`](https://github.com/LedgerHQ/ledger-live/commit/b962966525517c5cfa7f1f8826f8f2b9162189e4)]:
17
- - @ledgerhq/cryptoassets@13.32.0-nightly.2
18
- - @ledgerhq/coin-framework@6.8.0-nightly.4
19
- - @ledgerhq/live-env@2.20.0-nightly.0
20
- - @ledgerhq/live-network@2.1.0-nightly.1
21
-
22
- ## 2.11.1-nightly.3
23
-
24
- ### Patch Changes
25
-
26
- - Updated dependencies [[`eb176c2`](https://github.com/LedgerHQ/ledger-live/commit/eb176c201d711f1d28f74de831c4a6cd0c2d4a50)]:
27
- - @ledgerhq/coin-framework@6.8.0-nightly.3
28
-
29
- ## 2.11.1-nightly.2
30
-
31
- ### Patch Changes
32
-
33
- - Updated dependencies [[`63e8f34`](https://github.com/LedgerHQ/ledger-live/commit/63e8f342f6b951ab77bb710b9971f033c05e579e), [`3d4188a`](https://github.com/LedgerHQ/ledger-live/commit/3d4188a26021d33b950129d82cb55d2c2e8d4358)]:
34
- - @ledgerhq/cryptoassets@13.32.0-nightly.1
35
- - @ledgerhq/coin-framework@6.8.0-nightly.2
36
- - @ledgerhq/live-network@2.1.0-nightly.0
37
-
38
- ## 2.11.1-nightly.1
39
-
40
- ### Patch Changes
41
-
42
- - Updated dependencies [[`a731c4c`](https://github.com/LedgerHQ/ledger-live/commit/a731c4cd492a968eb7baa981fdd8aaddedd21f25)]:
43
- - @ledgerhq/coin-framework@6.8.0-nightly.1
5
+ ### Minor Changes
44
6
 
45
- ## 2.11.1-nightly.0
7
+ - [#12497](https://github.com/LedgerHQ/ledger-live/pull/12497) [`119fb5b`](https://github.com/LedgerHQ/ledger-live/commit/119fb5b33b977f93d681d5f38131e3d7eb6d4237) Thanks [@gre-ledger](https://github.com/gre-ledger)! - Prepare vechain for async CryptoAssetsStore migration - add await to token lookups
46
8
 
47
9
  ### Patch Changes
48
10
 
49
- - Updated dependencies []:
50
- - @ledgerhq/coin-framework@6.7.1-nightly.0
51
- - @ledgerhq/cryptoassets@13.31.1-nightly.0
11
+ - Updated dependencies [[`b4ceaff`](https://github.com/LedgerHQ/ledger-live/commit/b4ceaff2ecf68d8a14e09801c76ab0b014c45286), [`da750a1`](https://github.com/LedgerHQ/ledger-live/commit/da750a16ee5f2c083114569b8ae3c708cceba06c), [`63e8f34`](https://github.com/LedgerHQ/ledger-live/commit/63e8f342f6b951ab77bb710b9971f033c05e579e), [`ccf788d`](https://github.com/LedgerHQ/ledger-live/commit/ccf788d7c0239ca95e76c3cc340f9a6bd09ea726), [`34b28dd`](https://github.com/LedgerHQ/ledger-live/commit/34b28dd5e819906daaa79db5fe6064674def5e7d), [`9f61dcf`](https://github.com/LedgerHQ/ledger-live/commit/9f61dcf6163fd66657e5be732c28bea623a40515), [`607e4be`](https://github.com/LedgerHQ/ledger-live/commit/607e4be33145c102debce1606224b08579888aa8), [`c96d73f`](https://github.com/LedgerHQ/ledger-live/commit/c96d73fed0a75a9c208f78d51c34b742703a7dda), [`c1a4bfd`](https://github.com/LedgerHQ/ledger-live/commit/c1a4bfd34b46c6b6587d247673cadb3c078deb1d), [`f8d904d`](https://github.com/LedgerHQ/ledger-live/commit/f8d904de5607c103549f247428b5a4079f28c1c0), [`eb176c2`](https://github.com/LedgerHQ/ledger-live/commit/eb176c201d711f1d28f74de831c4a6cd0c2d4a50), [`a731c4c`](https://github.com/LedgerHQ/ledger-live/commit/a731c4cd492a968eb7baa981fdd8aaddedd21f25), [`b962966`](https://github.com/LedgerHQ/ledger-live/commit/b962966525517c5cfa7f1f8826f8f2b9162189e4), [`759064d`](https://github.com/LedgerHQ/ledger-live/commit/759064d4815c636af2d73ba548a85b4f53e7b491), [`cadf2e1`](https://github.com/LedgerHQ/ledger-live/commit/cadf2e1dfb09248d3f77d96f94ae774425dbca75), [`cbc0648`](https://github.com/LedgerHQ/ledger-live/commit/cbc064885d8e0459e40d327a2e5389204b3ec705), [`36e5168`](https://github.com/LedgerHQ/ledger-live/commit/36e5168397eaec2a5f425038392a4400f60571d0), [`6ccabef`](https://github.com/LedgerHQ/ledger-live/commit/6ccabef8f3c4e8cc042299d531684595ebadcc55), [`3d4188a`](https://github.com/LedgerHQ/ledger-live/commit/3d4188a26021d33b950129d82cb55d2c2e8d4358), [`d9305e8`](https://github.com/LedgerHQ/ledger-live/commit/d9305e8a4d8364366aaba05dd698396d28b539dc)]:
12
+ - @ledgerhq/cryptoassets@13.32.0-nightly.20251031023756
13
+ - @ledgerhq/coin-framework@6.8.0-nightly.20251031023756
14
+ - @ledgerhq/live-network@2.1.0-nightly.20251031023756
15
+ - @ledgerhq/live-env@2.20.0-nightly.20251031023756
16
+ - @ledgerhq/devices@8.7.0-nightly.20251031023756
17
+ - @ledgerhq/errors@6.27.0-nightly.20251031023756
52
18
 
53
19
  ## 2.11.0
54
20
 
@@ -1 +1 @@
1
- {"version":3,"file":"synchronisation.d.ts","sourceRoot":"","sources":["../../src/bridge/synchronisation.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,eAAe,EAAY,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAI/C,eAAO,MAAM,eAAe,EAAE,eAAe,CAAC,OAAO,CA8EpD,CAAC"}
1
+ {"version":3,"file":"synchronisation.d.ts","sourceRoot":"","sources":["../../src/bridge/synchronisation.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,eAAe,EAAY,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAK/C,eAAO,MAAM,eAAe,EAAE,eAAe,CAAC,OAAO,CA+EpD,CAAC"}
@@ -8,10 +8,10 @@ const bignumber_js_1 = require("bignumber.js");
8
8
  const eip55_1 = __importDefault(require("eip55"));
9
9
  const index_1 = require("@ledgerhq/coin-framework/account/index");
10
10
  const network_1 = require("../network");
11
- const tokens_1 = require("@ledgerhq/cryptoassets/tokens");
12
11
  const jsHelpers_1 = require("@ledgerhq/coin-framework/bridge/jsHelpers");
13
12
  const helpers_1 = require("./helpers");
14
13
  const sdk_core_1 = require("@vechain/sdk-core");
14
+ const legacy_state_1 = require("@ledgerhq/cryptoassets/legacy/legacy-state");
15
15
  const getAccountShape = async (info) => {
16
16
  const { initialAccount, currency, derivationMode } = info;
17
17
  const address = eip55_1.default.encode(info.address);
@@ -31,7 +31,10 @@ const getAccountShape = async (info) => {
31
31
  // Merge new operations with the previously synced ones
32
32
  const newOperations = await (0, network_1.getOperations)(accountId, address, startAt);
33
33
  //Get last token operations
34
- const vthoAccountId = (0, index_1.encodeTokenAccountId)(accountId, (0, tokens_1.findTokenById)("vechain/vip180/vtho"));
34
+ const vthoToken = legacy_state_1.tokensById["vechain/vip180/vtho"];
35
+ if (!vthoToken)
36
+ throw new Error("VTHO token not found");
37
+ const vthoAccountId = (0, index_1.encodeTokenAccountId)(accountId, vthoToken);
35
38
  const vthoOperations = await (0, network_1.getTokenOperations)(vthoAccountId, address, sdk_core_1.VTHO_ADDRESS, 1); // from parameter must be 1 otherwise the response is empty
36
39
  const operations = (0, jsHelpers_1.mergeOps)(oldOperations, newOperations);
37
40
  //Account creation date set to now if there are no operation or at the first operation on the account
@@ -41,7 +44,6 @@ const getAccountShape = async (info) => {
41
44
  operationsDates.concat(vthoOperations.map(c => c.date.getTime()));
42
45
  minDate = Math.min(...operationsDates);
43
46
  }
44
- const vthoToken = (0, tokens_1.findTokenById)("vechain/vip180/vtho");
45
47
  if (!vthoToken) {
46
48
  throw new Error('token with id "vechain/vip180/vtho" not found');
47
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"synchronisation.js","sourceRoot":"","sources":["../../src/bridge/synchronisation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"synchronisation.js","sourceRoot":"","sources":["../../src/bridge/synchronisation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"synchronisation.d.ts","sourceRoot":"","sources":["../../src/bridge/synchronisation.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,eAAe,EAAY,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAI/C,eAAO,MAAM,eAAe,EAAE,eAAe,CAAC,OAAO,CA8EpD,CAAC"}
1
+ {"version":3,"file":"synchronisation.d.ts","sourceRoot":"","sources":["../../src/bridge/synchronisation.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,eAAe,EAAY,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAK/C,eAAO,MAAM,eAAe,EAAE,eAAe,CAAC,OAAO,CA+EpD,CAAC"}
@@ -2,10 +2,10 @@ import { BigNumber } from "bignumber.js";
2
2
  import eip55 from "eip55";
3
3
  import { emptyHistoryCache, encodeAccountId, encodeTokenAccountId, } from "@ledgerhq/coin-framework/account/index";
4
4
  import { getAccount, getLastBlockHeight, getOperations, getTokenOperations } from "../network";
5
- import { findTokenById } from "@ledgerhq/cryptoassets/tokens";
6
5
  import { mergeOps } from "@ledgerhq/coin-framework/bridge/jsHelpers";
7
6
  import { isAccountEmpty } from "./helpers";
8
7
  import { VTHO_ADDRESS } from "@vechain/sdk-core";
8
+ import { tokensById } from "@ledgerhq/cryptoassets/legacy/legacy-state";
9
9
  export const getAccountShape = async (info) => {
10
10
  const { initialAccount, currency, derivationMode } = info;
11
11
  const address = eip55.encode(info.address);
@@ -25,7 +25,10 @@ export const getAccountShape = async (info) => {
25
25
  // Merge new operations with the previously synced ones
26
26
  const newOperations = await getOperations(accountId, address, startAt);
27
27
  //Get last token operations
28
- const vthoAccountId = encodeTokenAccountId(accountId, findTokenById("vechain/vip180/vtho"));
28
+ const vthoToken = tokensById["vechain/vip180/vtho"];
29
+ if (!vthoToken)
30
+ throw new Error("VTHO token not found");
31
+ const vthoAccountId = encodeTokenAccountId(accountId, vthoToken);
29
32
  const vthoOperations = await getTokenOperations(vthoAccountId, address, VTHO_ADDRESS, 1); // from parameter must be 1 otherwise the response is empty
30
33
  const operations = mergeOps(oldOperations, newOperations);
31
34
  //Account creation date set to now if there are no operation or at the first operation on the account
@@ -35,7 +38,6 @@ export const getAccountShape = async (info) => {
35
38
  operationsDates.concat(vthoOperations.map(c => c.date.getTime()));
36
39
  minDate = Math.min(...operationsDates);
37
40
  }
38
- const vthoToken = findTokenById("vechain/vip180/vtho");
39
41
  if (!vthoToken) {
40
42
  throw new Error('token with id "vechain/vip180/vtho" not found');
41
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"synchronisation.js","sourceRoot":"","sources":["../../src/bridge/synchronisation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"synchronisation.js","sourceRoot":"","sources":["../../src/bridge/synchronisation.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/coin-vechain",
3
- "version": "2.11.1-nightly.5",
3
+ "version": "2.12.0-nightly.20251031023756",
4
4
  "description": "Ledger VeChain Coin integration",
5
5
  "keywords": [
6
6
  "Ledger",
@@ -86,12 +86,12 @@
86
86
  "rxjs": "^7.8.1",
87
87
  "@vechain/sdk-core": "2.0.0",
88
88
  "@vechain/sdk-network": "2.0.0",
89
- "@ledgerhq/coin-framework": "^6.8.0-nightly.5",
90
- "@ledgerhq/cryptoassets": "^13.32.0-nightly.3",
91
- "@ledgerhq/devices": "8.7.0-nightly.1",
92
- "@ledgerhq/errors": "^6.27.0-nightly.0",
93
- "@ledgerhq/live-env": "^2.20.0-nightly.0",
94
- "@ledgerhq/live-network": "^2.1.0-nightly.1"
89
+ "@ledgerhq/coin-framework": "^6.8.0-nightly.20251031023756",
90
+ "@ledgerhq/cryptoassets": "^13.32.0-nightly.20251031023756",
91
+ "@ledgerhq/devices": "8.7.0-nightly.20251031023756",
92
+ "@ledgerhq/errors": "^6.27.0-nightly.20251031023756",
93
+ "@ledgerhq/live-env": "^2.20.0-nightly.20251031023756",
94
+ "@ledgerhq/live-network": "^2.1.0-nightly.20251031023756"
95
95
  },
96
96
  "devDependencies": {
97
97
  "@faker-js/faker": "^9.6.0",
@@ -102,9 +102,9 @@
102
102
  "jest": "^29.7.0",
103
103
  "msw": "^2.2.13",
104
104
  "ts-jest": "^29.1.1",
105
- "@ledgerhq/types-cryptoassets": "^7.29.0",
106
- "@ledgerhq/types-live": "^6.88.0-nightly.3",
107
- "@ledgerhq/disable-network-setup": "^0.1.0-nightly.0"
105
+ "@ledgerhq/types-cryptoassets": "^7.30.0-nightly.20251031023756",
106
+ "@ledgerhq/types-live": "^6.88.0-nightly.20251031023756",
107
+ "@ledgerhq/disable-network-setup": "^0.1.0-nightly.20251031023756"
108
108
  },
109
109
  "scripts": {
110
110
  "clean": "rimraf lib lib-es",
@@ -1,13 +1,18 @@
1
1
  import { faker } from "@faker-js/faker";
2
2
  import { createEmptyHistoryCache } from "@ledgerhq/coin-framework/account";
3
3
  import { makeScanAccounts } from "@ledgerhq/coin-framework/bridge/jsHelpers";
4
- import { getCryptoCurrencyById, findTokenById } from "@ledgerhq/cryptoassets";
4
+ import { getCryptoCurrencyById } from "@ledgerhq/cryptoassets";
5
+ import { getCryptoAssetsStore } from "@ledgerhq/coin-framework/crypto-assets/index";
6
+ import { initializeLegacyTokens } from "@ledgerhq/cryptoassets/legacy/legacy-data";
7
+ import { addTokens } from "@ledgerhq/cryptoassets/legacy/legacy-utils";
5
8
  import BigNumber from "bignumber.js";
6
9
  import { setupServer } from "msw/node";
7
10
  import { firstValueFrom } from "rxjs";
8
11
  import { getAccountShape } from "./synchronisation";
9
12
  import { Operation } from "@ledgerhq/types-live";
10
13
 
14
+ jest.mock("@ledgerhq/coin-framework/crypto-assets/index");
15
+
11
16
  const mockGetAccount = jest.fn();
12
17
  const mockGetOperations = jest.fn();
13
18
  const mockGetTokenOperations = jest.fn();
@@ -30,6 +35,57 @@ describe("scanAccounts", () => {
30
35
  const currency = getCryptoCurrencyById("vechain");
31
36
 
32
37
  beforeAll(() => {
38
+ // Initialize legacy tokens
39
+ initializeLegacyTokens(addTokens);
40
+
41
+ // Mock the crypto assets store
42
+ const vthoToken = {
43
+ type: "TokenCurrency",
44
+ id: "vechain/vip180/vtho",
45
+ contractAddress: "0x0000000000000000000000000000456E65726779",
46
+ parentCurrency: {
47
+ type: "CryptoCurrency",
48
+ id: "vechain",
49
+ coinType: 818,
50
+ name: "Vechain",
51
+ managerAppName: "VeChain",
52
+ ticker: "VET",
53
+ scheme: "vechain",
54
+ color: "#82BE00",
55
+ family: "vechain",
56
+ blockAvgTime: 10,
57
+ tokenTypes: ["vip180"],
58
+ units: [
59
+ { name: "VET", code: "VET", magnitude: 18 },
60
+ { name: "Gwei", code: "Gwei", magnitude: 9 },
61
+ { name: "Mwei", code: "Mwei", magnitude: 6 },
62
+ { name: "Kwei", code: "Kwei", magnitude: 3 },
63
+ { name: "wei", code: "wei", magnitude: 0 },
64
+ ],
65
+ explorerViews: [
66
+ {
67
+ tx: "https://explore.vechain.org/transactions/$hash",
68
+ address: "https://explore.vechain.org/accounts/$address",
69
+ },
70
+ ],
71
+ },
72
+ tokenType: "vip180",
73
+ name: "Vethor",
74
+ ticker: "VTHO",
75
+ disableCountervalue: false,
76
+ units: [{ name: "Vethor", code: "VTHO", magnitude: 18 }],
77
+ };
78
+
79
+ (getCryptoAssetsStore as jest.Mock).mockReturnValue({
80
+ findTokenById: jest.fn().mockImplementation((id: string) => {
81
+ if (id === "vechain/vip180/vtho") {
82
+ return Promise.resolve(vthoToken);
83
+ }
84
+ return Promise.resolve(null);
85
+ }),
86
+ findTokenByAddressInCurrency: jest.fn().mockResolvedValue(null),
87
+ });
88
+
33
89
  setupServer().listen({ onUnhandledRequest: "error" });
34
90
  });
35
91
 
@@ -54,6 +110,9 @@ describe("scanAccounts", () => {
54
110
  mockGetOperations.mockResolvedValueOnce([]);
55
111
  mockGetTokenOperations.mockResolvedValueOnce([]);
56
112
 
113
+ // Get the token asynchronously
114
+ const vthoToken = await getCryptoAssetsStore().findTokenById("vechain/vip180/vtho");
115
+
57
116
  // When
58
117
  const scanAccounts = makeScanAccounts({
59
118
  getAccountShape,
@@ -102,13 +161,13 @@ describe("scanAccounts", () => {
102
161
  swapHistory: [],
103
162
  type: "Account",
104
163
  used: false,
105
- feesCurrency: findTokenById("vechain/vip180/vtho"),
164
+ feesCurrency: vthoToken,
106
165
  subAccounts: [
107
166
  {
108
167
  type: "TokenAccount",
109
168
  id: "js:2:vechain:0x5066118c66793ED86bd379b50b20E32B0FC1aBf5:vechain+vechain%2Fvip180%2Fvtho",
110
169
  parentId: "js:2:vechain:0x5066118c66793ED86bd379b50b20E32B0FC1aBf5:vechain",
111
- token: findTokenById("vechain/vip180/vtho"),
170
+ token: vthoToken,
112
171
  balance: new BigNumber("0"),
113
172
  spendableBalance: new BigNumber("0"),
114
173
  creationDate: expect.any(Date),
@@ -8,11 +8,11 @@ import {
8
8
  } from "@ledgerhq/coin-framework/account/index";
9
9
 
10
10
  import { getAccount, getLastBlockHeight, getOperations, getTokenOperations } from "../network";
11
- import { findTokenById } from "@ledgerhq/cryptoassets/tokens";
12
11
  import { GetAccountShape, mergeOps } from "@ledgerhq/coin-framework/bridge/jsHelpers";
13
12
  import { Account } from "@ledgerhq/types-live";
14
13
  import { isAccountEmpty } from "./helpers";
15
14
  import { VTHO_ADDRESS } from "@vechain/sdk-core";
15
+ import { tokensById } from "@ledgerhq/cryptoassets/legacy/legacy-state";
16
16
 
17
17
  export const getAccountShape: GetAccountShape<Account> = async info => {
18
18
  const { initialAccount, currency, derivationMode } = info;
@@ -39,7 +39,9 @@ export const getAccountShape: GetAccountShape<Account> = async info => {
39
39
  const newOperations = await getOperations(accountId, address, startAt);
40
40
 
41
41
  //Get last token operations
42
- const vthoAccountId = encodeTokenAccountId(accountId, findTokenById("vechain/vip180/vtho")!);
42
+ const vthoToken = tokensById["vechain/vip180/vtho"];
43
+ if (!vthoToken) throw new Error("VTHO token not found");
44
+ const vthoAccountId = encodeTokenAccountId(accountId, vthoToken);
43
45
  const vthoOperations = await getTokenOperations(vthoAccountId, address, VTHO_ADDRESS, 1); // from parameter must be 1 otherwise the response is empty
44
46
 
45
47
  const operations = mergeOps(oldOperations, newOperations);
@@ -52,7 +54,6 @@ export const getAccountShape: GetAccountShape<Account> = async info => {
52
54
  minDate = Math.min(...operationsDates);
53
55
  }
54
56
 
55
- const vthoToken = findTokenById("vechain/vip180/vtho");
56
57
  if (!vthoToken) {
57
58
  throw new Error('token with id "vechain/vip180/vtho" not found');
58
59
  }