@ledgerhq/cryptoassets 9.7.0-next.0 → 9.7.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.
@@ -1,4 +1,4 @@
1
1
 
2
- > @ledgerhq/cryptoassets@9.6.0 build /home/runner/work/ledger-live/ledger-live/libs/ledgerjs/packages/cryptoassets
2
+ > @ledgerhq/cryptoassets@9.7.0 build /home/runner/work/ledger-live/ledger-live/libs/ledgerjs/packages/cryptoassets
3
3
  > tsc && tsc -m ES6 --outDir lib-es
4
4
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # @ledgerhq/cryptoassets
2
2
 
3
+ ## 9.7.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#3397](https://github.com/LedgerHQ/ledger-live/pull/3397) [`5cce6e3593`](https://github.com/LedgerHQ/ledger-live/commit/5cce6e359309110df53e16ef989c5b8b94492dfd) Thanks [@haammar-ledger](https://github.com/haammar-ledger)! - Add support for more ESDT tokens
8
+
9
+ - [#3564](https://github.com/LedgerHQ/ledger-live/pull/3564) [`30bf4d92c7`](https://github.com/LedgerHQ/ledger-live/commit/30bf4d92c7d79cb81b1e4ad014857459739c33be) Thanks [@henrily-ledger](https://github.com/henrily-ledger)! - revert crypto asset dyn cal change
10
+
11
+ ### Patch Changes
12
+
13
+ - [#3391](https://github.com/LedgerHQ/ledger-live/pull/3391) [`b30ead9d22`](https://github.com/LedgerHQ/ledger-live/commit/b30ead9d22a4bce5f8ee27febf0190fccd2ca25b) Thanks [@haammar-ledger](https://github.com/haammar-ledger)! - Support new Cardano tokens and update existing ones
14
+
15
+ ## 9.7.0-next.1
16
+
17
+ ### Minor Changes
18
+
19
+ - [#3564](https://github.com/LedgerHQ/ledger-live/pull/3564) [`30bf4d92c7`](https://github.com/LedgerHQ/ledger-live/commit/30bf4d92c7d79cb81b1e4ad014857459739c33be) Thanks [@henrily-ledger](https://github.com/henrily-ledger)! - revert crypto asset dyn cal change
20
+
3
21
  ## 9.7.0-next.0
4
22
 
5
23
  ### Minor Changes
package/README.md CHANGED
@@ -49,26 +49,20 @@ There are two modes of usage of this library.
49
49
  * [getFiatCurrencyByTicker](#getfiatcurrencybyticker)
50
50
  * [Parameters](#parameters-13)
51
51
  * [listFiatCurrencies](#listfiatcurrencies)
52
- * [\__clearObject](#\__clearobject)
53
- * [Parameters](#parameters-14)
54
- * [\__clearAllLists](#\__clearalllists)
55
52
  * [listTokens](#listtokens)
56
- * [Parameters](#parameters-15)
53
+ * [Parameters](#parameters-14)
57
54
  * [listTokensForCryptoCurrency](#listtokensforcryptocurrency)
58
- * [Parameters](#parameters-16)
55
+ * [Parameters](#parameters-15)
59
56
  * [listTokenTypesForCryptoCurrency](#listtokentypesforcryptocurrency)
60
- * [Parameters](#parameters-17)
57
+ * [Parameters](#parameters-16)
61
58
  * [findTokenByTicker](#findtokenbyticker)
62
- * [Parameters](#parameters-18)
59
+ * [Parameters](#parameters-17)
63
60
  * [findTokenById](#findtokenbyid)
64
- * [Parameters](#parameters-19)
61
+ * [Parameters](#parameters-18)
65
62
  * [hasTokenId](#hastokenid)
66
- * [Parameters](#parameters-20)
63
+ * [Parameters](#parameters-19)
67
64
  * [getTokenById](#gettokenbyid)
68
- * [Parameters](#parameters-21)
69
- * [removeTokenFromAllLists](#removetokenfromalllists)
70
- * [Parameters](#parameters-22)
71
- * [removeTokenFromAllLists](#removetokenfromalllists-1)
65
+ * [Parameters](#parameters-20)
72
66
 
73
67
  ### abandonSeedAddresses
74
68
 
@@ -203,22 +197,6 @@ Returns **FiatCurrency**
203
197
 
204
198
  Returns **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)\<FiatCurrency>**
205
199
 
206
- ### \__clearObject
207
-
208
- Only for jest purpose, clean object to be empty
209
-
210
- #### Parameters
211
-
212
- * `obj` **Record<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), (TokenCurrency | [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)\<TokenCurrency>)>**
213
-
214
- Returns **void**
215
-
216
- ### \__clearAllLists
217
-
218
- Only for jest purpose, clear all the init list
219
-
220
- Returns **void**
221
-
222
200
  ### listTokens
223
201
 
224
202
  #### Parameters
@@ -276,20 +254,6 @@ Returns **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/
276
254
 
277
255
  Returns **TokenCurrency**
278
256
 
279
- ### removeTokenFromAllLists
280
-
281
- Delete previous token entry to all array
282
-
283
- #### Parameters
284
-
285
- * `token` **TokenCurrency**
286
-
287
- ### removeTokenFromAllLists
288
-
289
- We clean all the reference of an existing token, if an hash doesn't match.
290
- Like this we can update any change from a already added token coming from Dynamic CAL
291
- and maintain it up to date without having to release a new version of LLD or LLM
292
-
293
257
  ## Maintainance notes
294
258
 
295
259
  Import crypto assets data guide:
package/lib/tokens.d.ts CHANGED
@@ -4,11 +4,6 @@ import { PolygonERC20Token } from "./data/polygon-erc20";
4
4
  type TokensListOptions = {
5
5
  withDelisted: boolean;
6
6
  };
7
- export declare function createTokenHash(token: TokenCurrency): string;
8
- /**
9
- * Only for jest purpose, clear all the init list
10
- */
11
- export declare function __clearAllLists(): void;
12
7
  /**
13
8
  *
14
9
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACd,MAAM,8BAA8B,CAAC;AAKtC,OAAoB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAsB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAyBxE,KAAK,iBAAiB,GAAG;IACvB,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAIF,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAI5D;AAaD;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAUtC;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,GACnC,aAAa,EAAE,CAGjB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,cAAc,EACxB,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,GACnC,aAAa,EAAE,CAQjB;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,cAAc,GACvB,MAAM,EAAE,CAUV;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,GACb,aAAa,GAAG,IAAI,GAAG,SAAS,CAElC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,GAAG,SAAS,CAE1E;AAGD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,GACd,aAAa,GAAG,IAAI,GAAG,SAAS,CAQlC;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACjB,aAAa,GAAG,IAAI,GAAG,SAAS,CAElC;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,OAAQ,MAAM,KAAG,OAA2B,CAAC;AAEpE;;GAEG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,CAQtD;AAgDD,wBAAgB,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,CA0CrD;AAED,wBAAgB,YAAY,CAAC,CAC3B,gBAAgB,EAChB,KAAK,EACL,MAAM,EACN,SAAS,EACT,IAAI,EACJ,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,QAAQ,EACR,kBAAkB,EACnB,EAAE,UAAU,GAAG,iBAAiB,GAAG,aAAa,CAsBhD"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACd,MAAM,8BAA8B,CAAC;AAKtC,OAAoB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAsB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAwBxE,KAAK,iBAAiB,GAAG;IACvB,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAKF;;GAEG;AACH,wBAAgB,UAAU,CACxB,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,GACnC,aAAa,EAAE,CAGjB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,cAAc,EACxB,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,GACnC,aAAa,EAAE,CAQjB;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,cAAc,GACvB,MAAM,EAAE,CAUV;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,GACb,aAAa,GAAG,IAAI,GAAG,SAAS,CAElC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,GAAG,SAAS,CAE1E;AAGD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,GACd,aAAa,GAAG,IAAI,GAAG,SAAS,CAQlC;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACjB,aAAa,GAAG,IAAI,GAAG,SAAS,CAElC;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,OAAQ,MAAM,KAAG,OAA2B,CAAC;AAEpE;;GAEG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,CAQtD;AAMD,wBAAgB,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,CA8BrD;AAED,wBAAgB,YAAY,CAAC,CAC3B,gBAAgB,EAChB,KAAK,EACL,MAAM,EACN,SAAS,EACT,IAAI,EACJ,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,QAAQ,EACR,kBAAkB,EACnB,EAAE,UAAU,GAAG,iBAAiB,GAAG,aAAa,CAsBhD"}
package/lib/tokens.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.convertERC20 = exports.addTokens = exports.getTokenById = exports.hasTokenId = exports.findTokenByAddressInCurrency = exports.findTokenByAddress = exports.findTokenById = exports.findTokenByTicker = exports.listTokenTypesForCryptoCurrency = exports.listTokensForCryptoCurrency = exports.listTokens = exports.__clearAllLists = exports.createTokenHash = void 0;
6
+ exports.convertERC20 = exports.addTokens = exports.getTokenById = exports.hasTokenId = exports.findTokenByAddressInCurrency = exports.findTokenByAddress = exports.findTokenById = exports.findTokenByTicker = exports.listTokenTypesForCryptoCurrency = exports.listTokensForCryptoCurrency = exports.listTokens = void 0;
7
7
  const currencies_1 = require("./currencies");
8
8
  const asa_1 = __importDefault(require("./data/asa"));
9
9
  const bep20_1 = __importDefault(require("./data/bep20"));
@@ -24,7 +24,6 @@ const tokensById = {};
24
24
  const tokensByTicker = {};
25
25
  const tokensByAddress = {};
26
26
  const tokensByCurrencyAddress = {};
27
- const tokenListHashes = new Set();
28
27
  addTokens(erc20_1.default.map(convertERC20));
29
28
  addTokens(polygon_erc20_1.default.map(convertERC20));
30
29
  addTokens(trc10_1.default.map(convertTRONTokens("trc10")));
@@ -37,36 +36,6 @@ addTokens(stellar_1.default.map(convertStellarTokens));
37
36
  const defaultTokenListOptions = {
38
37
  withDelisted: false,
39
38
  };
40
- function createTokenHash(token) {
41
- return token
42
- ? `${token.id}${token.contractAddress}${token.delisted}${token.disableCountervalue}${token.ticker}${token.countervalueTicker}${token.ledgerSignature}`
43
- : "";
44
- }
45
- exports.createTokenHash = createTokenHash;
46
- /**
47
- * Only for jest purpose, clean object to be empty
48
- * @param obj
49
- */
50
- const __clearObject = (obj) => {
51
- for (const key in obj) {
52
- delete obj[key];
53
- }
54
- };
55
- /**
56
- * Only for jest purpose, clear all the init list
57
- */
58
- function __clearAllLists() {
59
- tokensArray.length = 0;
60
- tokensArrayWithDelisted.length = 0;
61
- __clearObject(tokensByCryptoCurrency);
62
- __clearObject(tokensByCryptoCurrencyWithDelisted);
63
- __clearObject(tokensById);
64
- __clearObject(tokensByTicker);
65
- __clearObject(tokensByAddress);
66
- __clearObject(tokensByCurrencyAddress);
67
- tokenListHashes.clear();
68
- }
69
- exports.__clearAllLists = __clearAllLists;
70
39
  /**
71
40
  *
72
41
  */
@@ -145,58 +114,21 @@ exports.getTokenById = getTokenById;
145
114
  function comparePriority(a, b) {
146
115
  return Number(!!b.disableCountervalue) - Number(!!a.disableCountervalue);
147
116
  }
148
- function removeTokenFromArray(array, tokenId) {
149
- if (array && array.length > 0) {
150
- const index = array.findIndex((currentToken) => currentToken && currentToken.id === tokenId);
151
- if (index === -1)
152
- return array;
153
- return array.splice(index, 1);
154
- }
155
- }
156
- function removeTokenFromRecord(record, key) {
157
- tokenListHashes.delete(record[key]);
158
- delete record[key];
159
- }
160
- /**
161
- * Delete previous token entry to all array
162
- * @param token
163
- */
164
- function removeTokenFromAllLists(token) {
165
- const { id, contractAddress, parentCurrency, ticker } = token;
166
- const lowCaseContract = contractAddress.toLowerCase();
167
- removeTokenFromRecord(tokensById, id);
168
- removeTokenFromRecord(tokensByCurrencyAddress, parentCurrency.id + ":" + lowCaseContract);
169
- removeTokenFromRecord(tokensByAddress, lowCaseContract);
170
- removeTokenFromRecord(tokensByTicker, ticker);
171
- removeTokenFromArray(tokensArray, id);
172
- removeTokenFromArray(tokensArrayWithDelisted, id);
173
- removeTokenFromArray(tokensByCryptoCurrency[parentCurrency.id], id);
174
- removeTokenFromArray(tokensByCryptoCurrencyWithDelisted[parentCurrency.id], id);
175
- }
176
117
  function addTokens(list) {
177
118
  list.forEach((token) => {
178
- if (!token)
179
- return;
180
- const tokenHash = createTokenHash(token);
181
- if (tokenListHashes.has(tokenHash))
119
+ if (tokensById[token.id])
182
120
  return;
183
- /**
184
- * We clean all the reference of an existing token, if an hash doesn't match.
185
- * Like this we can update any change from a already added token coming from Dynamic CAL
186
- * and maintain it up to date without having to release a new version of LLD or LLM
187
- */
188
- removeTokenFromAllLists(token);
189
- const { id, contractAddress, parentCurrency, delisted, ticker } = token;
190
- const lowCaseContract = contractAddress.toLowerCase();
191
- if (!delisted)
121
+ if (!token.delisted)
192
122
  tokensArray.push(token);
193
123
  tokensArrayWithDelisted.push(token);
194
- tokensById[id] = token;
195
- if (!tokensByTicker[ticker] ||
196
- comparePriority(token, tokensByTicker[ticker]) > 0) {
197
- tokensByTicker[ticker] = token;
124
+ tokensById[token.id] = token;
125
+ if (!tokensByTicker[token.ticker] ||
126
+ comparePriority(token, tokensByTicker[token.ticker]) > 0) {
127
+ tokensByTicker[token.ticker] = token;
198
128
  }
129
+ const lowCaseContract = token.contractAddress.toLowerCase();
199
130
  tokensByAddress[lowCaseContract] = token;
131
+ const { parentCurrency } = token;
200
132
  tokensByCurrencyAddress[parentCurrency.id + ":" + lowCaseContract] = token;
201
133
  if (!(parentCurrency.id in tokensByCryptoCurrency)) {
202
134
  tokensByCryptoCurrency[parentCurrency.id] = [];
@@ -204,10 +136,9 @@ function addTokens(list) {
204
136
  if (!(parentCurrency.id in tokensByCryptoCurrencyWithDelisted)) {
205
137
  tokensByCryptoCurrencyWithDelisted[parentCurrency.id] = [];
206
138
  }
207
- if (!delisted)
139
+ if (!token.delisted)
208
140
  tokensByCryptoCurrency[parentCurrency.id].push(token);
209
141
  tokensByCryptoCurrencyWithDelisted[parentCurrency.id].push(token);
210
- tokenListHashes.add(tokenHash);
211
142
  });
212
143
  }
213
144
  exports.addTokens = addTokens;
package/lib/tokens.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,6 @@ import { PolygonERC20Token } from "./data/polygon-erc20";
4
4
  type TokensListOptions = {
5
5
  withDelisted: boolean;
6
6
  };
7
- export declare function createTokenHash(token: TokenCurrency): string;
8
- /**
9
- * Only for jest purpose, clear all the init list
10
- */
11
- export declare function __clearAllLists(): void;
12
7
  /**
13
8
  *
14
9
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACd,MAAM,8BAA8B,CAAC;AAKtC,OAAoB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAsB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAyBxE,KAAK,iBAAiB,GAAG;IACvB,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAIF,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAI5D;AAaD;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAUtC;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,GACnC,aAAa,EAAE,CAGjB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,cAAc,EACxB,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,GACnC,aAAa,EAAE,CAQjB;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,cAAc,GACvB,MAAM,EAAE,CAUV;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,GACb,aAAa,GAAG,IAAI,GAAG,SAAS,CAElC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,GAAG,SAAS,CAE1E;AAGD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,GACd,aAAa,GAAG,IAAI,GAAG,SAAS,CAQlC;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACjB,aAAa,GAAG,IAAI,GAAG,SAAS,CAElC;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,OAAQ,MAAM,KAAG,OAA2B,CAAC;AAEpE;;GAEG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,CAQtD;AAgDD,wBAAgB,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,CA0CrD;AAED,wBAAgB,YAAY,CAAC,CAC3B,gBAAgB,EAChB,KAAK,EACL,MAAM,EACN,SAAS,EACT,IAAI,EACJ,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,QAAQ,EACR,kBAAkB,EACnB,EAAE,UAAU,GAAG,iBAAiB,GAAG,aAAa,CAsBhD"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACd,MAAM,8BAA8B,CAAC;AAKtC,OAAoB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAsB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAwBxE,KAAK,iBAAiB,GAAG;IACvB,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAKF;;GAEG;AACH,wBAAgB,UAAU,CACxB,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,GACnC,aAAa,EAAE,CAGjB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,cAAc,EACxB,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,GACnC,aAAa,EAAE,CAQjB;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,cAAc,GACvB,MAAM,EAAE,CAUV;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,GACb,aAAa,GAAG,IAAI,GAAG,SAAS,CAElC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,GAAG,SAAS,CAE1E;AAGD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,GACd,aAAa,GAAG,IAAI,GAAG,SAAS,CAQlC;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACjB,aAAa,GAAG,IAAI,GAAG,SAAS,CAElC;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,OAAQ,MAAM,KAAG,OAA2B,CAAC;AAEpE;;GAEG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,CAQtD;AAMD,wBAAgB,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,CA8BrD;AAED,wBAAgB,YAAY,CAAC,CAC3B,gBAAgB,EAChB,KAAK,EACL,MAAM,EACN,SAAS,EACT,IAAI,EACJ,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,QAAQ,EACR,kBAAkB,EACnB,EAAE,UAAU,GAAG,iBAAiB,GAAG,aAAa,CAsBhD"}
package/lib-es/tokens.js CHANGED
@@ -18,7 +18,6 @@ const tokensById = {};
18
18
  const tokensByTicker = {};
19
19
  const tokensByAddress = {};
20
20
  const tokensByCurrencyAddress = {};
21
- const tokenListHashes = new Set();
22
21
  addTokens(erc20tokens.map(convertERC20));
23
22
  addTokens(polygonTokens.map(convertERC20));
24
23
  addTokens(trc10tokens.map(convertTRONTokens("trc10")));
@@ -31,34 +30,6 @@ addTokens(stellarTokens.map(convertStellarTokens));
31
30
  const defaultTokenListOptions = {
32
31
  withDelisted: false,
33
32
  };
34
- export function createTokenHash(token) {
35
- return token
36
- ? `${token.id}${token.contractAddress}${token.delisted}${token.disableCountervalue}${token.ticker}${token.countervalueTicker}${token.ledgerSignature}`
37
- : "";
38
- }
39
- /**
40
- * Only for jest purpose, clean object to be empty
41
- * @param obj
42
- */
43
- const __clearObject = (obj) => {
44
- for (const key in obj) {
45
- delete obj[key];
46
- }
47
- };
48
- /**
49
- * Only for jest purpose, clear all the init list
50
- */
51
- export function __clearAllLists() {
52
- tokensArray.length = 0;
53
- tokensArrayWithDelisted.length = 0;
54
- __clearObject(tokensByCryptoCurrency);
55
- __clearObject(tokensByCryptoCurrencyWithDelisted);
56
- __clearObject(tokensById);
57
- __clearObject(tokensByTicker);
58
- __clearObject(tokensByAddress);
59
- __clearObject(tokensByCurrencyAddress);
60
- tokenListHashes.clear();
61
- }
62
33
  /**
63
34
  *
64
35
  */
@@ -128,58 +99,21 @@ export function getTokenById(id) {
128
99
  function comparePriority(a, b) {
129
100
  return Number(!!b.disableCountervalue) - Number(!!a.disableCountervalue);
130
101
  }
131
- function removeTokenFromArray(array, tokenId) {
132
- if (array && array.length > 0) {
133
- const index = array.findIndex((currentToken) => currentToken && currentToken.id === tokenId);
134
- if (index === -1)
135
- return array;
136
- return array.splice(index, 1);
137
- }
138
- }
139
- function removeTokenFromRecord(record, key) {
140
- tokenListHashes.delete(record[key]);
141
- delete record[key];
142
- }
143
- /**
144
- * Delete previous token entry to all array
145
- * @param token
146
- */
147
- function removeTokenFromAllLists(token) {
148
- const { id, contractAddress, parentCurrency, ticker } = token;
149
- const lowCaseContract = contractAddress.toLowerCase();
150
- removeTokenFromRecord(tokensById, id);
151
- removeTokenFromRecord(tokensByCurrencyAddress, parentCurrency.id + ":" + lowCaseContract);
152
- removeTokenFromRecord(tokensByAddress, lowCaseContract);
153
- removeTokenFromRecord(tokensByTicker, ticker);
154
- removeTokenFromArray(tokensArray, id);
155
- removeTokenFromArray(tokensArrayWithDelisted, id);
156
- removeTokenFromArray(tokensByCryptoCurrency[parentCurrency.id], id);
157
- removeTokenFromArray(tokensByCryptoCurrencyWithDelisted[parentCurrency.id], id);
158
- }
159
102
  export function addTokens(list) {
160
103
  list.forEach((token) => {
161
- if (!token)
162
- return;
163
- const tokenHash = createTokenHash(token);
164
- if (tokenListHashes.has(tokenHash))
104
+ if (tokensById[token.id])
165
105
  return;
166
- /**
167
- * We clean all the reference of an existing token, if an hash doesn't match.
168
- * Like this we can update any change from a already added token coming from Dynamic CAL
169
- * and maintain it up to date without having to release a new version of LLD or LLM
170
- */
171
- removeTokenFromAllLists(token);
172
- const { id, contractAddress, parentCurrency, delisted, ticker } = token;
173
- const lowCaseContract = contractAddress.toLowerCase();
174
- if (!delisted)
106
+ if (!token.delisted)
175
107
  tokensArray.push(token);
176
108
  tokensArrayWithDelisted.push(token);
177
- tokensById[id] = token;
178
- if (!tokensByTicker[ticker] ||
179
- comparePriority(token, tokensByTicker[ticker]) > 0) {
180
- tokensByTicker[ticker] = token;
109
+ tokensById[token.id] = token;
110
+ if (!tokensByTicker[token.ticker] ||
111
+ comparePriority(token, tokensByTicker[token.ticker]) > 0) {
112
+ tokensByTicker[token.ticker] = token;
181
113
  }
114
+ const lowCaseContract = token.contractAddress.toLowerCase();
182
115
  tokensByAddress[lowCaseContract] = token;
116
+ const { parentCurrency } = token;
183
117
  tokensByCurrencyAddress[parentCurrency.id + ":" + lowCaseContract] = token;
184
118
  if (!(parentCurrency.id in tokensByCryptoCurrency)) {
185
119
  tokensByCryptoCurrency[parentCurrency.id] = [];
@@ -187,10 +121,9 @@ export function addTokens(list) {
187
121
  if (!(parentCurrency.id in tokensByCryptoCurrencyWithDelisted)) {
188
122
  tokensByCryptoCurrencyWithDelisted[parentCurrency.id] = [];
189
123
  }
190
- if (!delisted)
124
+ if (!token.delisted)
191
125
  tokensByCryptoCurrency[parentCurrency.id].push(token);
192
126
  tokensByCryptoCurrencyWithDelisted[parentCurrency.id].push(token);
193
- tokenListHashes.add(tokenHash);
194
127
  });
195
128
  }
196
129
  export function convertERC20([parentCurrencyId, token, ticker, magnitude, name, ledgerSignature, contractAddress, disableCountervalue, delisted, countervalueTicker,]) {
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/cryptoassets",
3
- "version": "9.7.0-next.0",
3
+ "version": "9.7.0",
4
4
  "description": "Ledger crypto-assets list",
5
5
  "keywords": [
6
6
  "Ledger"
package/src/tokens.ts CHANGED
@@ -22,7 +22,6 @@ const tokensById: Record<string, TokenCurrency> = {};
22
22
  const tokensByTicker: Record<string, TokenCurrency> = {};
23
23
  const tokensByAddress: Record<string, TokenCurrency> = {};
24
24
  const tokensByCurrencyAddress: Record<string, TokenCurrency> = {};
25
- const tokenListHashes = new Set();
26
25
  addTokens(erc20tokens.map(convertERC20));
27
26
  addTokens(polygonTokens.map(convertERC20));
28
27
  addTokens(trc10tokens.map(convertTRONTokens("trc10")));
@@ -39,37 +38,6 @@ type TokensListOptions = {
39
38
  const defaultTokenListOptions: TokensListOptions = {
40
39
  withDelisted: false,
41
40
  };
42
- export function createTokenHash(token: TokenCurrency): string {
43
- return token
44
- ? `${token.id}${token.contractAddress}${token.delisted}${token.disableCountervalue}${token.ticker}${token.countervalueTicker}${token.ledgerSignature}`
45
- : "";
46
- }
47
-
48
- /**
49
- * Only for jest purpose, clean object to be empty
50
- * @param obj
51
- */
52
- const __clearObject = (
53
- obj: Record<string, TokenCurrency | TokenCurrency[]>
54
- ): void => {
55
- for (const key in obj) {
56
- delete obj[key];
57
- }
58
- };
59
- /**
60
- * Only for jest purpose, clear all the init list
61
- */
62
- export function __clearAllLists(): void {
63
- tokensArray.length = 0;
64
- tokensArrayWithDelisted.length = 0;
65
- __clearObject(tokensByCryptoCurrency);
66
- __clearObject(tokensByCryptoCurrencyWithDelisted);
67
- __clearObject(tokensById);
68
- __clearObject(tokensByTicker);
69
- __clearObject(tokensByAddress);
70
- __clearObject(tokensByCurrencyAddress);
71
- tokenListHashes.clear();
72
- }
73
41
 
74
42
  /**
75
43
  *
@@ -172,75 +140,23 @@ function comparePriority(a: TokenCurrency, b: TokenCurrency) {
172
140
  return Number(!!b.disableCountervalue) - Number(!!a.disableCountervalue);
173
141
  }
174
142
 
175
- function removeTokenFromArray(array: TokenCurrency[], tokenId: string) {
176
- if (array && array.length > 0) {
177
- const index = array.findIndex(
178
- (currentToken) => currentToken && currentToken.id === tokenId
179
- );
180
- if (index === -1) return array;
181
- return array.splice(index, 1);
182
- }
183
- }
184
-
185
- function removeTokenFromRecord(
186
- record: Record<string, TokenCurrency>,
187
- key: string
188
- ) {
189
- tokenListHashes.delete(record[key]);
190
- delete record[key];
191
- }
192
-
193
- /**
194
- * Delete previous token entry to all array
195
- * @param token
196
- */
197
- function removeTokenFromAllLists(token: TokenCurrency) {
198
- const { id, contractAddress, parentCurrency, ticker } = token;
199
- const lowCaseContract = contractAddress.toLowerCase();
200
-
201
- removeTokenFromRecord(tokensById, id);
202
- removeTokenFromRecord(
203
- tokensByCurrencyAddress,
204
- parentCurrency.id + ":" + lowCaseContract
205
- );
206
- removeTokenFromRecord(tokensByAddress, lowCaseContract);
207
- removeTokenFromRecord(tokensByTicker, ticker);
208
- removeTokenFromArray(tokensArray, id);
209
- removeTokenFromArray(tokensArrayWithDelisted, id);
210
- removeTokenFromArray(tokensByCryptoCurrency[parentCurrency.id], id);
211
- removeTokenFromArray(
212
- tokensByCryptoCurrencyWithDelisted[parentCurrency.id],
213
- id
214
- );
215
- }
216
-
217
143
  export function addTokens(list: TokenCurrency[]): void {
218
144
  list.forEach((token) => {
219
- if (!token) return;
220
- const tokenHash = createTokenHash(token);
221
- if (tokenListHashes.has(tokenHash)) return;
222
-
223
- /**
224
- * We clean all the reference of an existing token, if an hash doesn't match.
225
- * Like this we can update any change from a already added token coming from Dynamic CAL
226
- * and maintain it up to date without having to release a new version of LLD or LLM
227
- */
228
- removeTokenFromAllLists(token);
229
- const { id, contractAddress, parentCurrency, delisted, ticker } = token;
230
- const lowCaseContract = contractAddress.toLowerCase();
231
-
232
- if (!delisted) tokensArray.push(token);
145
+ if (tokensById[token.id]) return;
146
+ if (!token.delisted) tokensArray.push(token);
233
147
  tokensArrayWithDelisted.push(token);
234
- tokensById[id] = token;
148
+ tokensById[token.id] = token;
235
149
 
236
150
  if (
237
- !tokensByTicker[ticker] ||
238
- comparePriority(token, tokensByTicker[ticker]) > 0
151
+ !tokensByTicker[token.ticker] ||
152
+ comparePriority(token, tokensByTicker[token.ticker]) > 0
239
153
  ) {
240
- tokensByTicker[ticker] = token;
154
+ tokensByTicker[token.ticker] = token;
241
155
  }
242
156
 
157
+ const lowCaseContract = token.contractAddress.toLowerCase();
243
158
  tokensByAddress[lowCaseContract] = token;
159
+ const { parentCurrency } = token;
244
160
  tokensByCurrencyAddress[parentCurrency.id + ":" + lowCaseContract] = token;
245
161
 
246
162
  if (!(parentCurrency.id in tokensByCryptoCurrency)) {
@@ -251,10 +167,8 @@ export function addTokens(list: TokenCurrency[]): void {
251
167
  tokensByCryptoCurrencyWithDelisted[parentCurrency.id] = [];
252
168
  }
253
169
 
254
- if (!delisted) tokensByCryptoCurrency[parentCurrency.id].push(token);
170
+ if (!token.delisted) tokensByCryptoCurrency[parentCurrency.id].push(token);
255
171
  tokensByCryptoCurrencyWithDelisted[parentCurrency.id].push(token);
256
-
257
- tokenListHashes.add(tokenHash);
258
172
  });
259
173
  }
260
174
 
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=tokens.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokens.test.d.ts","sourceRoot":"","sources":["../src/tokens.test.ts"],"names":[],"mappings":""}
@@ -1,119 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const currencies_1 = require("./currencies");
4
- const tokens_1 = require("./tokens");
5
- const initMainToken = [
6
- [
7
- "ethereum",
8
- "ki",
9
- "XKI",
10
- 6,
11
- "Ki",
12
- "304402201fe22e202db62b632e0647a12070c24f34de2006e667abedaed5ca6ea2986b18022054dd4eda5bf5e444601a48e5370cfcf0b51cc5fe1237259f6066311286dbfd55",
13
- "0x4f6103BAd230295baCF30f914FDa7D4273B7F585",
14
- true,
15
- false,
16
- ],
17
- [
18
- "ethereum",
19
- "kiba_inu",
20
- "KIBA",
21
- 18,
22
- "Kiba Inu",
23
- "3045022100baa979e8461d439b324416dff31f277663b51fa36e5e60005933292d5151f32502200528872863ce6b55009387bd2c5b6556b907193e27f506236149634a97518822",
24
- "0x005D1123878Fc55fbd56b54C73963b234a64af3c",
25
- false,
26
- false,
27
- ],
28
- [
29
- "ethereum",
30
- "kick",
31
- "KICK",
32
- 8,
33
- "KICK",
34
- "3044022000b06bf563f55da06b142b6816e824492a4862673f29842aa8b46f23a7dcbe57022049309464e7123f79df5bcead066a2b0af929965d3d9dc683a324eda32f970b07",
35
- "0x27695E09149AdC738A978e9A678F99E4c39e9eb9",
36
- true,
37
- true,
38
- ],
39
- [
40
- "ethereum",
41
- "0xmonero",
42
- "0XMR",
43
- 18,
44
- "0xMonero",
45
- "30440220544ecf38d2906770446f52557f2dd42b6aa274bc960c808c4dcee42c44e8412202206fab6769ebe15fbfb7245b0156d17e432a1acd9920f1ecbf25729f8d8594af6c",
46
- "0x035dF12E0F3ac6671126525f1015E47D79dFEDDF",
47
- false,
48
- true,
49
- ],
50
- ];
51
- const ethereumCurrency = (0, currencies_1.getCryptoCurrencyById)("ethereum");
52
- describe("tokens", () => {
53
- beforeEach(() => {
54
- (0, tokens_1.__clearAllLists)();
55
- });
56
- describe("addTokens", () => {
57
- it("Should list token to be empty", () => {
58
- expect((0, tokens_1.listTokens)().length).toBe(0);
59
- });
60
- it("Add tokens normally and check if delisted work correclty", () => {
61
- (0, tokens_1.addTokens)(initMainToken.map(tokens_1.convertERC20));
62
- expect((0, tokens_1.listTokens)().length).toBe(2);
63
- expect((0, tokens_1.listTokens)({ withDelisted: true }).length).toBe(4);
64
- expect((0, tokens_1.listTokensForCryptoCurrency)(ethereumCurrency).length).toBe(2);
65
- expect((0, tokens_1.listTokensForCryptoCurrency)(ethereumCurrency, { withDelisted: true })
66
- .length).toBe(4);
67
- });
68
- it("Add token and readd the same token shouldn't delete anything", () => {
69
- (0, tokens_1.addTokens)(initMainToken.map(tokens_1.convertERC20));
70
- const changeToken = [
71
- [
72
- "ethereum",
73
- "kiba_inu",
74
- "KIBA",
75
- 18,
76
- "Kiba Inu",
77
- "3045022100baa979e8461d439b324416dff31f277663b51fa36e5e60005933292d5151f32502200528872863ce6b55009387bd2c5b6556b907193e27f506236149634a97518822",
78
- "0x005D1123878Fc55fbd56b54C73963b234a64af3c",
79
- false,
80
- false,
81
- ],
82
- ];
83
- const tokenHash = (0, tokens_1.createTokenHash)((0, tokens_1.convertERC20)(changeToken[0]));
84
- const existingToken = (0, tokens_1.listTokens)().find((t) => t.ticker === "KIBA");
85
- if (!existingToken)
86
- throw new Error("Should not be empty");
87
- expect(tokenHash).toBe((0, tokens_1.createTokenHash)(existingToken));
88
- (0, tokens_1.addTokens)(changeToken.map(tokens_1.convertERC20));
89
- const tokenAfterChange = (0, tokens_1.listTokens)().find((t) => t.ticker === "KIBA");
90
- if (!tokenAfterChange)
91
- throw new Error("Should not be empty");
92
- expect(tokenHash).toBe((0, tokens_1.createTokenHash)(tokenAfterChange));
93
- });
94
- it("Add tokens normally and then delist one token", () => {
95
- (0, tokens_1.addTokens)(initMainToken.map(tokens_1.convertERC20));
96
- const changeToken = [
97
- [
98
- "ethereum",
99
- "kiba_inu",
100
- "KIBA",
101
- 18,
102
- "Kiba Inu",
103
- "3045022100baa979e8461d439b324416dff31f277663b51fa36e5e60005933292d5151f32502200528872863ce6b55009387bd2c5b6556b907193e27f506236149634a97518822",
104
- "0x005D1123878Fc55fbd56b54C73963b234a64af3c",
105
- false,
106
- true,
107
- ],
108
- ];
109
- (0, tokens_1.addTokens)(changeToken.map(tokens_1.convertERC20));
110
- expect((0, tokens_1.listTokens)().length).toBe(1);
111
- (0, tokens_1.findTokenById)("kiba_inu");
112
- expect((0, tokens_1.listTokens)({ withDelisted: true }).length).toBe(4);
113
- expect((0, tokens_1.listTokensForCryptoCurrency)(ethereumCurrency).length).toBe(1);
114
- expect((0, tokens_1.listTokensForCryptoCurrency)(ethereumCurrency, { withDelisted: true })
115
- .length).toBe(4);
116
- });
117
- });
118
- });
119
- //# sourceMappingURL=tokens.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokens.test.js","sourceRoot":"","sources":["../src/tokens.test.ts"],"names":[],"mappings":";;AAAA,6CAAqD;AACrD,qCAQkB;AAGlB,MAAM,aAAa,GAAiB;IAClC;QACE,UAAU;QACV,IAAI;QACJ,KAAK;QACL,CAAC;QACD,IAAI;QACJ,8IAA8I;QAC9I,4CAA4C;QAC5C,IAAI;QACJ,KAAK;KACN;IACD;QACE,UAAU;QACV,UAAU;QACV,MAAM;QACN,EAAE;QACF,UAAU;QACV,gJAAgJ;QAChJ,4CAA4C;QAC5C,KAAK;QACL,KAAK;KACN;IACD;QACE,UAAU;QACV,MAAM;QACN,MAAM;QACN,CAAC;QACD,MAAM;QACN,8IAA8I;QAC9I,4CAA4C;QAC5C,IAAI;QACJ,IAAI;KACL;IACD;QACE,UAAU;QACV,UAAU;QACV,MAAM;QACN,EAAE;QACF,UAAU;QACV,8IAA8I;QAC9I,4CAA4C;QAC5C,KAAK;QACL,IAAI;KACL;CACF,CAAC;AAEF,MAAM,gBAAgB,GAAG,IAAA,kCAAqB,EAAC,UAAU,CAAC,CAAC;AAE3D,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,UAAU,CAAC,GAAG,EAAE;QACd,IAAA,wBAAe,GAAE,CAAC;IACpB,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,CAAC,IAAA,mBAAU,GAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;YAClE,IAAA,kBAAS,EAAC,aAAa,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,IAAA,mBAAU,GAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,CAAC,IAAA,mBAAU,EAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC1D,MAAM,CAAC,IAAA,oCAA2B,EAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACrE,MAAM,CACJ,IAAA,oCAA2B,EAAC,gBAAgB,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;iBAClE,MAAM,CACV,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACZ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;YACtE,IAAA,kBAAS,EAAC,aAAa,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAC,CAAC;YAC3C,MAAM,WAAW,GAAiB;gBAChC;oBACE,UAAU;oBACV,UAAU;oBACV,MAAM;oBACN,EAAE;oBACF,UAAU;oBACV,gJAAgJ;oBAChJ,4CAA4C;oBAC5C,KAAK;oBACL,KAAK;iBACN;aACF,CAAC;YACF,MAAM,SAAS,GAAG,IAAA,wBAAe,EAAC,IAAA,qBAAY,EAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChE,MAAM,aAAa,GAAG,IAAA,mBAAU,GAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;YACpE,IAAI,CAAC,aAAa;gBAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAC3D,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAA,wBAAe,EAAC,aAAa,CAAC,CAAC,CAAC;YAEvD,IAAA,kBAAS,EAAC,WAAW,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAC,CAAC;YACzC,MAAM,gBAAgB,GAAG,IAAA,mBAAU,GAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;YACvE,IAAI,CAAC,gBAAgB;gBAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAC9D,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAA,wBAAe,EAAC,gBAAgB,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,IAAA,kBAAS,EAAC,aAAa,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAC,CAAC;YAC3C,MAAM,WAAW,GAAiB;gBAChC;oBACE,UAAU;oBACV,UAAU;oBACV,MAAM;oBACN,EAAE;oBACF,UAAU;oBACV,gJAAgJ;oBAChJ,4CAA4C;oBAC5C,KAAK;oBACL,IAAI;iBACL;aACF,CAAC;YACF,IAAA,kBAAS,EAAC,WAAW,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAC,CAAC;YACzC,MAAM,CAAC,IAAA,mBAAU,GAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpC,IAAA,sBAAa,EAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,CAAC,IAAA,mBAAU,EAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE1D,MAAM,CAAC,IAAA,oCAA2B,EAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACrE,MAAM,CACJ,IAAA,oCAA2B,EAAC,gBAAgB,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;iBAClE,MAAM,CACV,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=tokens.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokens.test.d.ts","sourceRoot":"","sources":["../src/tokens.test.ts"],"names":[],"mappings":""}
@@ -1,117 +0,0 @@
1
- import { getCryptoCurrencyById } from "./currencies";
2
- import { addTokens, convertERC20, listTokens, __clearAllLists, findTokenById, listTokensForCryptoCurrency, createTokenHash, } from "./tokens";
3
- const initMainToken = [
4
- [
5
- "ethereum",
6
- "ki",
7
- "XKI",
8
- 6,
9
- "Ki",
10
- "304402201fe22e202db62b632e0647a12070c24f34de2006e667abedaed5ca6ea2986b18022054dd4eda5bf5e444601a48e5370cfcf0b51cc5fe1237259f6066311286dbfd55",
11
- "0x4f6103BAd230295baCF30f914FDa7D4273B7F585",
12
- true,
13
- false,
14
- ],
15
- [
16
- "ethereum",
17
- "kiba_inu",
18
- "KIBA",
19
- 18,
20
- "Kiba Inu",
21
- "3045022100baa979e8461d439b324416dff31f277663b51fa36e5e60005933292d5151f32502200528872863ce6b55009387bd2c5b6556b907193e27f506236149634a97518822",
22
- "0x005D1123878Fc55fbd56b54C73963b234a64af3c",
23
- false,
24
- false,
25
- ],
26
- [
27
- "ethereum",
28
- "kick",
29
- "KICK",
30
- 8,
31
- "KICK",
32
- "3044022000b06bf563f55da06b142b6816e824492a4862673f29842aa8b46f23a7dcbe57022049309464e7123f79df5bcead066a2b0af929965d3d9dc683a324eda32f970b07",
33
- "0x27695E09149AdC738A978e9A678F99E4c39e9eb9",
34
- true,
35
- true,
36
- ],
37
- [
38
- "ethereum",
39
- "0xmonero",
40
- "0XMR",
41
- 18,
42
- "0xMonero",
43
- "30440220544ecf38d2906770446f52557f2dd42b6aa274bc960c808c4dcee42c44e8412202206fab6769ebe15fbfb7245b0156d17e432a1acd9920f1ecbf25729f8d8594af6c",
44
- "0x035dF12E0F3ac6671126525f1015E47D79dFEDDF",
45
- false,
46
- true,
47
- ],
48
- ];
49
- const ethereumCurrency = getCryptoCurrencyById("ethereum");
50
- describe("tokens", () => {
51
- beforeEach(() => {
52
- __clearAllLists();
53
- });
54
- describe("addTokens", () => {
55
- it("Should list token to be empty", () => {
56
- expect(listTokens().length).toBe(0);
57
- });
58
- it("Add tokens normally and check if delisted work correclty", () => {
59
- addTokens(initMainToken.map(convertERC20));
60
- expect(listTokens().length).toBe(2);
61
- expect(listTokens({ withDelisted: true }).length).toBe(4);
62
- expect(listTokensForCryptoCurrency(ethereumCurrency).length).toBe(2);
63
- expect(listTokensForCryptoCurrency(ethereumCurrency, { withDelisted: true })
64
- .length).toBe(4);
65
- });
66
- it("Add token and readd the same token shouldn't delete anything", () => {
67
- addTokens(initMainToken.map(convertERC20));
68
- const changeToken = [
69
- [
70
- "ethereum",
71
- "kiba_inu",
72
- "KIBA",
73
- 18,
74
- "Kiba Inu",
75
- "3045022100baa979e8461d439b324416dff31f277663b51fa36e5e60005933292d5151f32502200528872863ce6b55009387bd2c5b6556b907193e27f506236149634a97518822",
76
- "0x005D1123878Fc55fbd56b54C73963b234a64af3c",
77
- false,
78
- false,
79
- ],
80
- ];
81
- const tokenHash = createTokenHash(convertERC20(changeToken[0]));
82
- const existingToken = listTokens().find((t) => t.ticker === "KIBA");
83
- if (!existingToken)
84
- throw new Error("Should not be empty");
85
- expect(tokenHash).toBe(createTokenHash(existingToken));
86
- addTokens(changeToken.map(convertERC20));
87
- const tokenAfterChange = listTokens().find((t) => t.ticker === "KIBA");
88
- if (!tokenAfterChange)
89
- throw new Error("Should not be empty");
90
- expect(tokenHash).toBe(createTokenHash(tokenAfterChange));
91
- });
92
- it("Add tokens normally and then delist one token", () => {
93
- addTokens(initMainToken.map(convertERC20));
94
- const changeToken = [
95
- [
96
- "ethereum",
97
- "kiba_inu",
98
- "KIBA",
99
- 18,
100
- "Kiba Inu",
101
- "3045022100baa979e8461d439b324416dff31f277663b51fa36e5e60005933292d5151f32502200528872863ce6b55009387bd2c5b6556b907193e27f506236149634a97518822",
102
- "0x005D1123878Fc55fbd56b54C73963b234a64af3c",
103
- false,
104
- true,
105
- ],
106
- ];
107
- addTokens(changeToken.map(convertERC20));
108
- expect(listTokens().length).toBe(1);
109
- findTokenById("kiba_inu");
110
- expect(listTokens({ withDelisted: true }).length).toBe(4);
111
- expect(listTokensForCryptoCurrency(ethereumCurrency).length).toBe(1);
112
- expect(listTokensForCryptoCurrency(ethereumCurrency, { withDelisted: true })
113
- .length).toBe(4);
114
- });
115
- });
116
- });
117
- //# sourceMappingURL=tokens.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokens.test.js","sourceRoot":"","sources":["../src/tokens.test.ts"],"names":[],"mappings":"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"}
@@ -1,135 +0,0 @@
1
- import { getCryptoCurrencyById } from "./currencies";
2
- import {
3
- addTokens,
4
- convertERC20,
5
- listTokens,
6
- __clearAllLists,
7
- findTokenById,
8
- listTokensForCryptoCurrency,
9
- createTokenHash,
10
- } from "./tokens";
11
- import { ERC20Token } from "./types";
12
-
13
- const initMainToken: ERC20Token[] = [
14
- [
15
- "ethereum",
16
- "ki",
17
- "XKI",
18
- 6,
19
- "Ki",
20
- "304402201fe22e202db62b632e0647a12070c24f34de2006e667abedaed5ca6ea2986b18022054dd4eda5bf5e444601a48e5370cfcf0b51cc5fe1237259f6066311286dbfd55",
21
- "0x4f6103BAd230295baCF30f914FDa7D4273B7F585",
22
- true,
23
- false,
24
- ],
25
- [
26
- "ethereum",
27
- "kiba_inu",
28
- "KIBA",
29
- 18,
30
- "Kiba Inu",
31
- "3045022100baa979e8461d439b324416dff31f277663b51fa36e5e60005933292d5151f32502200528872863ce6b55009387bd2c5b6556b907193e27f506236149634a97518822",
32
- "0x005D1123878Fc55fbd56b54C73963b234a64af3c",
33
- false,
34
- false,
35
- ],
36
- [
37
- "ethereum",
38
- "kick",
39
- "KICK",
40
- 8,
41
- "KICK",
42
- "3044022000b06bf563f55da06b142b6816e824492a4862673f29842aa8b46f23a7dcbe57022049309464e7123f79df5bcead066a2b0af929965d3d9dc683a324eda32f970b07",
43
- "0x27695E09149AdC738A978e9A678F99E4c39e9eb9",
44
- true,
45
- true,
46
- ],
47
- [
48
- "ethereum",
49
- "0xmonero",
50
- "0XMR",
51
- 18,
52
- "0xMonero",
53
- "30440220544ecf38d2906770446f52557f2dd42b6aa274bc960c808c4dcee42c44e8412202206fab6769ebe15fbfb7245b0156d17e432a1acd9920f1ecbf25729f8d8594af6c",
54
- "0x035dF12E0F3ac6671126525f1015E47D79dFEDDF",
55
- false,
56
- true,
57
- ],
58
- ];
59
-
60
- const ethereumCurrency = getCryptoCurrencyById("ethereum");
61
-
62
- describe("tokens", () => {
63
- beforeEach(() => {
64
- __clearAllLists();
65
- });
66
- describe("addTokens", () => {
67
- it("Should list token to be empty", () => {
68
- expect(listTokens().length).toBe(0);
69
- });
70
-
71
- it("Add tokens normally and check if delisted work correclty", () => {
72
- addTokens(initMainToken.map(convertERC20));
73
- expect(listTokens().length).toBe(2);
74
- expect(listTokens({ withDelisted: true }).length).toBe(4);
75
- expect(listTokensForCryptoCurrency(ethereumCurrency).length).toBe(2);
76
- expect(
77
- listTokensForCryptoCurrency(ethereumCurrency, { withDelisted: true })
78
- .length
79
- ).toBe(4);
80
- });
81
-
82
- it("Add token and readd the same token shouldn't delete anything", () => {
83
- addTokens(initMainToken.map(convertERC20));
84
- const changeToken: ERC20Token[] = [
85
- [
86
- "ethereum",
87
- "kiba_inu",
88
- "KIBA",
89
- 18,
90
- "Kiba Inu",
91
- "3045022100baa979e8461d439b324416dff31f277663b51fa36e5e60005933292d5151f32502200528872863ce6b55009387bd2c5b6556b907193e27f506236149634a97518822",
92
- "0x005D1123878Fc55fbd56b54C73963b234a64af3c",
93
- false,
94
- false,
95
- ],
96
- ];
97
- const tokenHash = createTokenHash(convertERC20(changeToken[0]));
98
- const existingToken = listTokens().find((t) => t.ticker === "KIBA");
99
- if (!existingToken) throw new Error("Should not be empty");
100
- expect(tokenHash).toBe(createTokenHash(existingToken));
101
-
102
- addTokens(changeToken.map(convertERC20));
103
- const tokenAfterChange = listTokens().find((t) => t.ticker === "KIBA");
104
- if (!tokenAfterChange) throw new Error("Should not be empty");
105
- expect(tokenHash).toBe(createTokenHash(tokenAfterChange));
106
- });
107
-
108
- it("Add tokens normally and then delist one token", () => {
109
- addTokens(initMainToken.map(convertERC20));
110
- const changeToken: ERC20Token[] = [
111
- [
112
- "ethereum",
113
- "kiba_inu",
114
- "KIBA",
115
- 18,
116
- "Kiba Inu",
117
- "3045022100baa979e8461d439b324416dff31f277663b51fa36e5e60005933292d5151f32502200528872863ce6b55009387bd2c5b6556b907193e27f506236149634a97518822",
118
- "0x005D1123878Fc55fbd56b54C73963b234a64af3c",
119
- false,
120
- true,
121
- ],
122
- ];
123
- addTokens(changeToken.map(convertERC20));
124
- expect(listTokens().length).toBe(1);
125
- findTokenById("kiba_inu");
126
- expect(listTokens({ withDelisted: true }).length).toBe(4);
127
-
128
- expect(listTokensForCryptoCurrency(ethereumCurrency).length).toBe(1);
129
- expect(
130
- listTokensForCryptoCurrency(ethereumCurrency, { withDelisted: true })
131
- .length
132
- ).toBe(4);
133
- });
134
- });
135
- });