@shapeshiftoss/caip 8.16.7 → 8.16.9

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.
Files changed (122) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +1 -1
  3. package/dist/cjs/.tsbuildinfo +1 -1
  4. package/dist/cjs/adapters/coincap/generated/eip155_1/adapter.json +1 -1
  5. package/dist/cjs/adapters/coincap/generated/eip155_10/adapter.json +1 -1
  6. package/dist/cjs/adapters/coincap/generated/eip155_137/adapter.json +1 -1
  7. package/dist/cjs/adapters/coincap/generated/eip155_42161/adapter.json +1 -1
  8. package/dist/cjs/adapters/coincap/generated/eip155_43114/adapter.json +1 -1
  9. package/dist/cjs/adapters/coincap/generated/eip155_56/adapter.json +1 -1
  10. package/dist/cjs/adapters/coincap/generated/eip155_8453/adapter.json +1 -1
  11. package/dist/cjs/adapters/coincap/generated/solana_5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/adapter.json +1 -1
  12. package/dist/cjs/adapters/coingecko/generated/eip155_1/adapter.json +1 -1
  13. package/dist/cjs/adapters/coingecko/generated/eip155_10/adapter.json +1 -1
  14. package/dist/cjs/adapters/coingecko/generated/eip155_100/adapter.json +1 -1
  15. package/dist/cjs/adapters/coingecko/generated/eip155_130/adapter.json +1 -0
  16. package/dist/cjs/adapters/coingecko/generated/eip155_1329/adapter.json +1 -0
  17. package/dist/cjs/adapters/coingecko/generated/eip155_137/adapter.json +1 -1
  18. package/dist/cjs/adapters/coingecko/generated/eip155_143/adapter.json +1 -1
  19. package/dist/cjs/adapters/coingecko/generated/eip155_146/adapter.json +1 -0
  20. package/dist/cjs/adapters/coingecko/generated/eip155_1514/adapter.json +1 -0
  21. package/dist/cjs/adapters/coingecko/generated/eip155_1868/adapter.json +1 -0
  22. package/dist/cjs/adapters/coingecko/generated/eip155_25/adapter.json +1 -0
  23. package/dist/cjs/adapters/coingecko/generated/eip155_2741/adapter.json +1 -0
  24. package/dist/cjs/adapters/coingecko/generated/eip155_324/adapter.json +1 -0
  25. package/dist/cjs/adapters/coingecko/generated/eip155_34443/adapter.json +1 -0
  26. package/dist/cjs/adapters/coingecko/generated/eip155_42161/adapter.json +1 -1
  27. package/dist/cjs/adapters/coingecko/generated/eip155_42220/adapter.json +1 -0
  28. package/dist/cjs/adapters/coingecko/generated/eip155_43111/adapter.json +1 -0
  29. package/dist/cjs/adapters/coingecko/generated/eip155_43114/adapter.json +1 -1
  30. package/dist/cjs/adapters/coingecko/generated/eip155_4326/adapter.json +1 -0
  31. package/dist/cjs/adapters/coingecko/generated/eip155_480/adapter.json +1 -0
  32. package/dist/cjs/adapters/coingecko/generated/eip155_5000/adapter.json +1 -0
  33. package/dist/cjs/adapters/coingecko/generated/eip155_534352/adapter.json +1 -0
  34. package/dist/cjs/adapters/coingecko/generated/eip155_56/adapter.json +1 -1
  35. package/dist/cjs/adapters/coingecko/generated/eip155_57073/adapter.json +1 -0
  36. package/dist/cjs/adapters/coingecko/generated/eip155_59144/adapter.json +1 -0
  37. package/dist/cjs/adapters/coingecko/generated/eip155_60808/adapter.json +1 -0
  38. package/dist/cjs/adapters/coingecko/generated/eip155_747/adapter.json +1 -0
  39. package/dist/cjs/adapters/coingecko/generated/eip155_747474/adapter.json +1 -1
  40. package/dist/cjs/adapters/coingecko/generated/eip155_80094/adapter.json +1 -0
  41. package/dist/cjs/adapters/coingecko/generated/eip155_81457/adapter.json +1 -0
  42. package/dist/cjs/adapters/coingecko/generated/eip155_8453/adapter.json +1 -1
  43. package/dist/cjs/adapters/coingecko/generated/eip155_9745/adapter.json +1 -1
  44. package/dist/cjs/adapters/coingecko/generated/eip155_98866/adapter.json +1 -0
  45. package/dist/cjs/adapters/coingecko/generated/eip155_999/adapter.json +1 -1
  46. package/dist/cjs/adapters/coingecko/generated/index.d.ts +23 -2
  47. package/dist/cjs/adapters/coingecko/generated/index.js +75 -33
  48. package/dist/cjs/adapters/coingecko/generated/near_mainnet/adapter.json +1 -1
  49. package/dist/cjs/adapters/coingecko/generated/solana_5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/adapter.json +1 -1
  50. package/dist/cjs/adapters/coingecko/generated/starknet_SN_MAIN/adapter.json +1 -1
  51. package/dist/cjs/adapters/coingecko/generated/sui_35834a8a/adapter.json +1 -1
  52. package/dist/cjs/adapters/coingecko/generated/ton_mainnet/adapter.json +1 -1
  53. package/dist/cjs/adapters/coingecko/generated/tron_0x2b6653dc/adapter.json +1 -1
  54. package/dist/cjs/adapters/coingecko/index.d.ts +23 -2
  55. package/dist/cjs/adapters/coingecko/index.js +110 -5
  56. package/dist/cjs/adapters/coingecko/index.test.js +154 -17
  57. package/dist/cjs/adapters/coingecko/utils.js +315 -15
  58. package/dist/cjs/adapters/coingecko/utils.test.js +63 -5
  59. package/dist/cjs/constants.d.ts +96 -4
  60. package/dist/cjs/constants.js +146 -9
  61. package/dist/esm/.tsbuildinfo +1 -1
  62. package/dist/esm/adapters/coincap/generated/eip155_1/adapter.json +1 -1
  63. package/dist/esm/adapters/coincap/generated/eip155_10/adapter.json +1 -1
  64. package/dist/esm/adapters/coincap/generated/eip155_137/adapter.json +1 -1
  65. package/dist/esm/adapters/coincap/generated/eip155_42161/adapter.json +1 -1
  66. package/dist/esm/adapters/coincap/generated/eip155_43114/adapter.json +1 -1
  67. package/dist/esm/adapters/coincap/generated/eip155_56/adapter.json +1 -1
  68. package/dist/esm/adapters/coincap/generated/eip155_8453/adapter.json +1 -1
  69. package/dist/esm/adapters/coincap/generated/solana_5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/adapter.json +1 -1
  70. package/dist/esm/adapters/coingecko/generated/eip155_1/adapter.json +1 -1
  71. package/dist/esm/adapters/coingecko/generated/eip155_10/adapter.json +1 -1
  72. package/dist/esm/adapters/coingecko/generated/eip155_100/adapter.json +1 -1
  73. package/dist/esm/adapters/coingecko/generated/eip155_130/adapter.json +1 -0
  74. package/dist/esm/adapters/coingecko/generated/eip155_1329/adapter.json +1 -0
  75. package/dist/esm/adapters/coingecko/generated/eip155_137/adapter.json +1 -1
  76. package/dist/esm/adapters/coingecko/generated/eip155_143/adapter.json +1 -1
  77. package/dist/esm/adapters/coingecko/generated/eip155_146/adapter.json +1 -0
  78. package/dist/esm/adapters/coingecko/generated/eip155_1514/adapter.json +1 -0
  79. package/dist/esm/adapters/coingecko/generated/eip155_1868/adapter.json +1 -0
  80. package/dist/esm/adapters/coingecko/generated/eip155_25/adapter.json +1 -0
  81. package/dist/esm/adapters/coingecko/generated/eip155_2741/adapter.json +1 -0
  82. package/dist/esm/adapters/coingecko/generated/eip155_324/adapter.json +1 -0
  83. package/dist/esm/adapters/coingecko/generated/eip155_34443/adapter.json +1 -0
  84. package/dist/esm/adapters/coingecko/generated/eip155_42161/adapter.json +1 -1
  85. package/dist/esm/adapters/coingecko/generated/eip155_42220/adapter.json +1 -0
  86. package/dist/esm/adapters/coingecko/generated/eip155_43111/adapter.json +1 -0
  87. package/dist/esm/adapters/coingecko/generated/eip155_43114/adapter.json +1 -1
  88. package/dist/esm/adapters/coingecko/generated/eip155_4326/adapter.json +1 -0
  89. package/dist/esm/adapters/coingecko/generated/eip155_480/adapter.json +1 -0
  90. package/dist/esm/adapters/coingecko/generated/eip155_5000/adapter.json +1 -0
  91. package/dist/esm/adapters/coingecko/generated/eip155_534352/adapter.json +1 -0
  92. package/dist/esm/adapters/coingecko/generated/eip155_56/adapter.json +1 -1
  93. package/dist/esm/adapters/coingecko/generated/eip155_57073/adapter.json +1 -0
  94. package/dist/esm/adapters/coingecko/generated/eip155_59144/adapter.json +1 -0
  95. package/dist/esm/adapters/coingecko/generated/eip155_60808/adapter.json +1 -0
  96. package/dist/esm/adapters/coingecko/generated/eip155_747/adapter.json +1 -0
  97. package/dist/esm/adapters/coingecko/generated/eip155_747474/adapter.json +1 -1
  98. package/dist/esm/adapters/coingecko/generated/eip155_80094/adapter.json +1 -0
  99. package/dist/esm/adapters/coingecko/generated/eip155_81457/adapter.json +1 -0
  100. package/dist/esm/adapters/coingecko/generated/eip155_8453/adapter.json +1 -1
  101. package/dist/esm/adapters/coingecko/generated/eip155_9745/adapter.json +1 -1
  102. package/dist/esm/adapters/coingecko/generated/eip155_98866/adapter.json +1 -0
  103. package/dist/esm/adapters/coingecko/generated/eip155_999/adapter.json +1 -1
  104. package/dist/esm/adapters/coingecko/generated/index.d.ts +23 -2
  105. package/dist/esm/adapters/coingecko/generated/index.js +23 -2
  106. package/dist/esm/adapters/coingecko/generated/near_mainnet/adapter.json +1 -1
  107. package/dist/esm/adapters/coingecko/generated/solana_5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/adapter.json +1 -1
  108. package/dist/esm/adapters/coingecko/generated/starknet_SN_MAIN/adapter.json +1 -1
  109. package/dist/esm/adapters/coingecko/generated/sui_35834a8a/adapter.json +1 -1
  110. package/dist/esm/adapters/coingecko/generated/ton_mainnet/adapter.json +1 -1
  111. package/dist/esm/adapters/coingecko/generated/tron_0x2b6653dc/adapter.json +1 -1
  112. package/dist/esm/adapters/coingecko/index.d.ts +23 -2
  113. package/dist/esm/adapters/coingecko/index.js +111 -6
  114. package/dist/esm/adapters/coingecko/index.test.js +155 -18
  115. package/dist/esm/adapters/coingecko/utils.js +316 -16
  116. package/dist/esm/adapters/coingecko/utils.test.js +63 -5
  117. package/dist/esm/constants.d.ts +96 -4
  118. package/dist/esm/constants.js +143 -7
  119. package/package.json +14 -14
  120. package/CHANGELOG.md +0 -726
  121. package/dist/cjs/adapters/coingecko/generated/eip155_42170/adapter.json +0 -1
  122. package/dist/esm/adapters/coingecko/generated/eip155_42170/adapter.json +0 -1
@@ -1,6 +1,6 @@
1
1
  import { describe, expect, it } from 'vitest';
2
2
  import { toAssetId } from '../../assetId/assetId.js';
3
- import { ASSET_REFERENCE, btcChainId, CHAIN_NAMESPACE, CHAIN_REFERENCE, ethChainId, foxOnArbitrumOneAssetId, } from '../../constants.js';
3
+ import { ASSET_REFERENCE, btcChainId, celoChainId, CHAIN_NAMESPACE, CHAIN_REFERENCE, ethChainId, flowEvmChainId, foxOnArbitrumOneAssetId, } from '../../constants.js';
4
4
  import { assetIdToCoingecko, chainIdToCoingeckoAssetPlatform, CoingeckoAssetPlatform, coingeckoToAssetIds, } from './index.js';
5
5
  describe('adapters:coingecko', () => {
6
6
  describe('coingeckoToAssetIds', () => {
@@ -35,24 +35,108 @@ describe('adapters:coingecko', () => {
35
35
  assetNamespace: 'slip44',
36
36
  assetReference: ASSET_REFERENCE.Arbitrum,
37
37
  });
38
- const ethOnArbitrumNova = toAssetId({
39
- chainNamespace,
40
- chainReference: CHAIN_REFERENCE.ArbitrumNovaMainnet,
41
- assetNamespace: 'slip44',
42
- assetReference: ASSET_REFERENCE.ArbitrumNova,
43
- });
44
38
  const ethOnBase = toAssetId({
45
39
  chainNamespace,
46
40
  chainReference: CHAIN_REFERENCE.BaseMainnet,
47
41
  assetNamespace: 'slip44',
48
42
  assetReference: ASSET_REFERENCE.Base,
49
43
  });
44
+ const ethOnMegaEth = toAssetId({
45
+ chainNamespace,
46
+ chainReference: CHAIN_REFERENCE.MegaEthMainnet,
47
+ assetNamespace: 'slip44',
48
+ assetReference: ASSET_REFERENCE.MegaEth,
49
+ });
50
+ const ethOnZkSyncEra = toAssetId({
51
+ chainNamespace,
52
+ chainReference: CHAIN_REFERENCE.ZkSyncEraMainnet,
53
+ assetNamespace: 'slip44',
54
+ assetReference: ASSET_REFERENCE.ZkSyncEra,
55
+ });
56
+ const ethOnBlast = toAssetId({
57
+ chainNamespace,
58
+ chainReference: CHAIN_REFERENCE.BlastMainnet,
59
+ assetNamespace: 'slip44',
60
+ assetReference: ASSET_REFERENCE.Blast,
61
+ });
62
+ const ethOnWorldChain = toAssetId({
63
+ chainNamespace,
64
+ chainReference: CHAIN_REFERENCE.WorldChainMainnet,
65
+ assetNamespace: 'slip44',
66
+ assetReference: ASSET_REFERENCE.WorldChain,
67
+ });
68
+ const ethOnHemi = toAssetId({
69
+ chainNamespace,
70
+ chainReference: CHAIN_REFERENCE.HemiMainnet,
71
+ assetNamespace: 'slip44',
72
+ assetReference: ASSET_REFERENCE.Hemi,
73
+ });
74
+ const ethOnLinea = toAssetId({
75
+ chainNamespace,
76
+ chainReference: CHAIN_REFERENCE.LineaMainnet,
77
+ assetNamespace: 'slip44',
78
+ assetReference: ASSET_REFERENCE.Linea,
79
+ });
80
+ const ethOnInk = toAssetId({
81
+ chainNamespace,
82
+ chainReference: CHAIN_REFERENCE.InkMainnet,
83
+ assetNamespace: 'slip44',
84
+ assetReference: ASSET_REFERENCE.Ink,
85
+ });
86
+ const ethOnScroll = toAssetId({
87
+ chainNamespace,
88
+ chainReference: CHAIN_REFERENCE.ScrollMainnet,
89
+ assetNamespace: 'slip44',
90
+ assetReference: ASSET_REFERENCE.Scroll,
91
+ });
92
+ const ethOnUnichain = toAssetId({
93
+ chainNamespace: CHAIN_NAMESPACE.Evm,
94
+ chainReference: CHAIN_REFERENCE.UnichainMainnet,
95
+ assetNamespace: 'slip44',
96
+ assetReference: ASSET_REFERENCE.Unichain,
97
+ });
98
+ const ethOnBob = toAssetId({
99
+ chainNamespace,
100
+ chainReference: CHAIN_REFERENCE.BobMainnet,
101
+ assetNamespace: 'slip44',
102
+ assetReference: ASSET_REFERENCE.Bob,
103
+ });
104
+ const ethOnMode = toAssetId({
105
+ chainNamespace,
106
+ chainReference: CHAIN_REFERENCE.ModeMainnet,
107
+ assetNamespace: 'slip44',
108
+ assetReference: ASSET_REFERENCE.Mode,
109
+ });
110
+ const ethOnAbstract = toAssetId({
111
+ chainNamespace,
112
+ chainReference: CHAIN_REFERENCE.AbstractMainnet,
113
+ assetNamespace: 'slip44',
114
+ assetReference: ASSET_REFERENCE.Abstract,
115
+ });
116
+ const ethOnSoneium = toAssetId({
117
+ chainNamespace,
118
+ chainReference: CHAIN_REFERENCE.SoneiumMainnet,
119
+ assetNamespace: 'slip44',
120
+ assetReference: ASSET_REFERENCE.Soneium,
121
+ });
50
122
  expect(coingeckoToAssetIds('ethereum')).toEqual([
51
123
  ethOnEthereum,
52
124
  ethOnOptimism,
53
125
  ethOnArbitrum,
54
- ethOnArbitrumNova,
55
126
  ethOnBase,
127
+ ethOnBob,
128
+ ethOnZkSyncEra,
129
+ ethOnBlast,
130
+ ethOnWorldChain,
131
+ ethOnHemi,
132
+ ethOnLinea,
133
+ ethOnMode,
134
+ ethOnMegaEth,
135
+ ethOnInk,
136
+ ethOnScroll,
137
+ ethOnUnichain,
138
+ ethOnSoneium,
139
+ ethOnAbstract,
56
140
  ]);
57
141
  });
58
142
  it('can get AssetIds id for FOX', () => {
@@ -173,11 +257,59 @@ describe('adapters:coingecko', () => {
173
257
  assetNamespace: 'erc20',
174
258
  assetReference: '0xb88339cb7199b77e23db6e890353e22632ba630f',
175
259
  });
260
+ const usdcOnPlume = toAssetId({
261
+ chainNamespace: CHAIN_NAMESPACE.Evm,
262
+ chainReference: CHAIN_REFERENCE.PlumeMainnet,
263
+ assetNamespace: 'erc20',
264
+ assetReference: '0x222365ef19f7947e5484218551b56bb3965aa7af',
265
+ });
266
+ const usdcOnZkSyncEra = toAssetId({
267
+ chainNamespace: CHAIN_NAMESPACE.Evm,
268
+ chainReference: CHAIN_REFERENCE.ZkSyncEraMainnet,
269
+ assetNamespace: 'erc20',
270
+ assetReference: '0x1d17cbcf0d6d143135ae902365d2e5e2a16538d4',
271
+ });
272
+ const usdcOnWorldChain = toAssetId({
273
+ chainNamespace: CHAIN_NAMESPACE.Evm,
274
+ chainReference: CHAIN_REFERENCE.WorldChainMainnet,
275
+ assetNamespace: 'erc20',
276
+ assetReference: '0x79a02482a880bce3f13e09da970dc34db4cd24d1',
277
+ });
176
278
  const usdcOnStarknet = toAssetId({
177
279
  chainNamespace: CHAIN_NAMESPACE.Starknet,
178
280
  chainReference: CHAIN_REFERENCE.StarknetMainnet,
179
281
  assetNamespace: 'token',
180
- assetReference: '0x33068f6539f8e6e6b131e6b2b814e6c34a5224bc66947c47dab9dfee93b35fb',
282
+ assetReference: '0x033068f6539f8e6e6b131e6b2b814e6c34a5224bc66947c47dab9dfee93b35fb',
283
+ });
284
+ const usdcOnSei = toAssetId({
285
+ chainNamespace: CHAIN_NAMESPACE.Evm,
286
+ chainReference: CHAIN_REFERENCE.SeiMainnet,
287
+ assetNamespace: 'erc20',
288
+ assetReference: '0xe15fc38f6d8c56af07bbcbe3baf5708a2bf42392',
289
+ });
290
+ const usdcOnInk = toAssetId({
291
+ chainNamespace: CHAIN_NAMESPACE.Evm,
292
+ chainReference: CHAIN_REFERENCE.InkMainnet,
293
+ assetNamespace: 'erc20',
294
+ assetReference: '0x2d270e6886d130d724215a266106e6832161eaed',
295
+ });
296
+ const usdcOnSonic = toAssetId({
297
+ chainNamespace: CHAIN_NAMESPACE.Evm,
298
+ chainReference: CHAIN_REFERENCE.SonicMainnet,
299
+ assetNamespace: 'erc20',
300
+ assetReference: '0x29219dd400f2bf60e5a23d13be72b486d4038894',
301
+ });
302
+ const usdcOnUnichain = toAssetId({
303
+ chainNamespace: CHAIN_NAMESPACE.Evm,
304
+ chainReference: CHAIN_REFERENCE.UnichainMainnet,
305
+ assetNamespace: 'erc20',
306
+ assetReference: '0x078d782b760474a361dda0af3839290b0ef57ad6',
307
+ });
308
+ const usdcOnCelo = toAssetId({
309
+ chainNamespace,
310
+ chainReference: CHAIN_REFERENCE.CeloMainnet,
311
+ assetNamespace,
312
+ assetReference: '0xceba9300f2b948710d2653dd7b07f33a8b32118c',
181
313
  });
182
314
  const usdcOnNear = toAssetId({
183
315
  chainNamespace: CHAIN_NAMESPACE.Near,
@@ -194,6 +326,14 @@ describe('adapters:coingecko', () => {
194
326
  usdcOnBase,
195
327
  usdcOnMonad,
196
328
  usdcOnHyperEvm,
329
+ usdcOnPlume,
330
+ usdcOnZkSyncEra,
331
+ usdcOnWorldChain,
332
+ usdcOnInk,
333
+ usdcOnSonic,
334
+ usdcOnUnichain,
335
+ usdcOnCelo,
336
+ usdcOnSei,
197
337
  usdcOnSolana,
198
338
  usdcOnStarknet,
199
339
  usdcOnSui,
@@ -216,12 +356,6 @@ describe('adapters:coingecko', () => {
216
356
  assetNamespace,
217
357
  assetReference: '0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174',
218
358
  });
219
- const usdcOnArbitrumNovaBridged = toAssetId({
220
- chainNamespace,
221
- chainReference: CHAIN_REFERENCE.ArbitrumNovaMainnet,
222
- assetNamespace,
223
- assetReference: '0x750ba8b76187092B0D1E87E28daaf484d1b5273b',
224
- });
225
359
  const usdcOnGnosisBridged = toAssetId({
226
360
  chainNamespace,
227
361
  chainReference: CHAIN_REFERENCE.GnosisMainnet,
@@ -233,9 +367,6 @@ describe('adapters:coingecko', () => {
233
367
  ]);
234
368
  expect(coingeckoToAssetIds('bridged-usdc-polygon-pos-bridge')).toEqual([usdcOnPolygonBridged]);
235
369
  expect(coingeckoToAssetIds('gnosis-xdai-bridged-usdc-gnosis')).toEqual([usdcOnGnosisBridged]);
236
- expect(coingeckoToAssetIds('official-arbitrum-bridged-usdc-arbitrum-nova')).toEqual([
237
- usdcOnArbitrumNovaBridged,
238
- ]);
239
370
  });
240
371
  });
241
372
  describe('assetIdToCoingecko', () => {
@@ -312,5 +443,11 @@ describe('adapters:coingecko', () => {
312
443
  const chainId = btcChainId;
313
444
  expect(() => chainIdToCoingeckoAssetPlatform(chainId)).toThrow();
314
445
  });
446
+ it('can get CoinGecko asset platform for flow evm ChainId', () => {
447
+ expect(chainIdToCoingeckoAssetPlatform(flowEvmChainId)).toEqual(CoingeckoAssetPlatform.FlowEvm);
448
+ });
449
+ it('can get CoinGecko asset platform for celo ChainId', () => {
450
+ expect(chainIdToCoingeckoAssetPlatform(celoChainId)).toEqual(CoingeckoAssetPlatform.Celo);
451
+ });
315
452
  });
316
453
  });
@@ -1,7 +1,7 @@
1
1
  import axios from 'axios';
2
2
  import fs from 'fs';
3
3
  import { toAssetId } from '../../assetId/assetId.js';
4
- import { arbitrumAssetId, arbitrumChainId, arbitrumNovaAssetId, arbitrumNovaChainId, ASSET_NAMESPACE, avalancheAssetId, avalancheChainId, baseAssetId, baseChainId, bchChainId, bscAssetId, bscChainId, btcChainId, CHAIN_NAMESPACE, CHAIN_REFERENCE, cosmosChainId, dogeChainId, ethAssetId, ethChainId, gnosisAssetId, gnosisChainId, hyperEvmAssetId, hyperEvmChainId, katanaAssetId, katanaChainId, ltcChainId, mayachainChainId, monadAssetId, monadChainId, nearAssetId, nearChainId, optimismAssetId, optimismChainId, plasmaAssetId, plasmaChainId, polygonAssetId, polygonChainId, solanaChainId, solAssetId, starknetAssetId, starknetChainId, suiAssetId, suiChainId, thorchainChainId, tonAssetId, tonChainId, tronAssetId, tronChainId, zecChainId, } from '../../constants.js';
4
+ import { abstractAssetId, abstractChainId, arbitrumAssetId, arbitrumChainId, ASSET_NAMESPACE, avalancheAssetId, avalancheChainId, baseAssetId, baseChainId, bchChainId, berachainAssetId, berachainChainId, blastAssetId, blastChainId, bobAssetId, bobChainId, bscAssetId, bscChainId, btcChainId, celoAssetId, celoChainId, CHAIN_NAMESPACE, CHAIN_REFERENCE, cosmosChainId, cronosAssetId, cronosChainId, dogeChainId, ethAssetId, ethChainId, flowEvmAssetId, flowEvmChainId, gnosisAssetId, gnosisChainId, hemiAssetId, hemiChainId, hyperEvmAssetId, hyperEvmChainId, inkAssetId, inkChainId, katanaAssetId, katanaChainId, lineaAssetId, lineaChainId, ltcChainId, mantleAssetId, mantleChainId, mayachainChainId, megaethAssetId, megaethChainId, modeAssetId, modeChainId, monadAssetId, monadChainId, nearAssetId, nearChainId, optimismAssetId, optimismChainId, plasmaAssetId, plasmaChainId, plumeAssetId, plumeChainId, polygonAssetId, polygonChainId, scrollAssetId, scrollChainId, solanaChainId, solAssetId, soneiumAssetId, soneiumChainId, sonicAssetId, sonicChainId, starknetAssetId, starknetChainId, storyAssetId, storyChainId, suiAssetId, suiChainId, thorchainChainId, tonAssetId, tonChainId, tronAssetId, tronChainId, unichainAssetId, unichainChainId, worldChainAssetId, worldChainChainId, zecChainId, zkSyncEraAssetId, zkSyncEraChainId, } from '../../constants.js';
5
5
  import { bitcoinAssetMap, bitcoinCashAssetMap, cosmosAssetMap, dogecoinAssetMap, litecoinAssetMap, mayachainAssetMap, thorchainAssetMap, zcashAssetMap, } from '../../utils.js';
6
6
  import { CoingeckoAssetPlatform } from './index.js';
7
7
  export const fetchData = async (URL) => (await axios.get(URL)).data;
@@ -105,20 +105,6 @@ export const parseData = (coins) => {
105
105
  // unable to create assetId, skip token
106
106
  }
107
107
  }
108
- if (Object.keys(platforms).includes(CoingeckoAssetPlatform.ArbitrumNova)) {
109
- try {
110
- const assetId = toAssetId({
111
- chainNamespace: CHAIN_NAMESPACE.Evm,
112
- chainReference: CHAIN_REFERENCE.ArbitrumNovaMainnet,
113
- assetNamespace: 'erc20',
114
- assetReference: platforms[CoingeckoAssetPlatform.ArbitrumNova],
115
- });
116
- prev[arbitrumNovaChainId][assetId] = id;
117
- }
118
- catch (err) {
119
- // unable to create assetId, skip token
120
- }
121
- }
122
108
  if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Base)) {
123
109
  try {
124
110
  const assetId = toAssetId({
@@ -217,6 +203,132 @@ export const parseData = (coins) => {
217
203
  // unable to create assetId, skip token
218
204
  }
219
205
  }
206
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Plume)) {
207
+ try {
208
+ const assetId = toAssetId({
209
+ chainNamespace: CHAIN_NAMESPACE.Evm,
210
+ chainReference: CHAIN_REFERENCE.PlumeMainnet,
211
+ assetNamespace: 'erc20',
212
+ assetReference: platforms[CoingeckoAssetPlatform.Plume],
213
+ });
214
+ prev[plumeChainId][assetId] = id;
215
+ }
216
+ catch {
217
+ // unable to create assetId, skip token
218
+ }
219
+ }
220
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.WorldChain)) {
221
+ try {
222
+ const assetId = toAssetId({
223
+ chainNamespace: CHAIN_NAMESPACE.Evm,
224
+ chainReference: CHAIN_REFERENCE.WorldChainMainnet,
225
+ assetNamespace: 'erc20',
226
+ assetReference: platforms[CoingeckoAssetPlatform.WorldChain],
227
+ });
228
+ prev[worldChainChainId][assetId] = id;
229
+ }
230
+ catch {
231
+ // unable to create assetId, skip token
232
+ }
233
+ }
234
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Mantle)) {
235
+ try {
236
+ const assetId = toAssetId({
237
+ chainNamespace: CHAIN_NAMESPACE.Evm,
238
+ chainReference: CHAIN_REFERENCE.MantleMainnet,
239
+ assetNamespace: 'erc20',
240
+ assetReference: platforms[CoingeckoAssetPlatform.Mantle],
241
+ });
242
+ prev[mantleChainId][assetId] = id;
243
+ }
244
+ catch {
245
+ // unable to create assetId, skip token
246
+ }
247
+ }
248
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Ink)) {
249
+ try {
250
+ const assetId = toAssetId({
251
+ chainNamespace: CHAIN_NAMESPACE.Evm,
252
+ chainReference: CHAIN_REFERENCE.InkMainnet,
253
+ assetNamespace: 'erc20',
254
+ assetReference: platforms[CoingeckoAssetPlatform.Ink],
255
+ });
256
+ prev[inkChainId][assetId] = id;
257
+ }
258
+ catch {
259
+ // unable to create assetId, skip token
260
+ }
261
+ }
262
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.MegaEth)) {
263
+ try {
264
+ const assetId = toAssetId({
265
+ chainNamespace: CHAIN_NAMESPACE.Evm,
266
+ chainReference: CHAIN_REFERENCE.MegaEthMainnet,
267
+ assetNamespace: 'erc20',
268
+ assetReference: platforms[CoingeckoAssetPlatform.MegaEth],
269
+ });
270
+ prev[megaethChainId][assetId] = id;
271
+ }
272
+ catch {
273
+ // unable to create assetId, skip token
274
+ }
275
+ }
276
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Linea)) {
277
+ try {
278
+ const assetId = toAssetId({
279
+ chainNamespace: CHAIN_NAMESPACE.Evm,
280
+ chainReference: CHAIN_REFERENCE.LineaMainnet,
281
+ assetNamespace: 'erc20',
282
+ assetReference: platforms[CoingeckoAssetPlatform.Linea],
283
+ });
284
+ prev[lineaChainId][assetId] = id;
285
+ }
286
+ catch {
287
+ // unable to create assetId, skip token
288
+ }
289
+ }
290
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Berachain)) {
291
+ try {
292
+ const assetId = toAssetId({
293
+ chainNamespace: CHAIN_NAMESPACE.Evm,
294
+ chainReference: CHAIN_REFERENCE.BerachainMainnet,
295
+ assetNamespace: 'erc20',
296
+ assetReference: platforms[CoingeckoAssetPlatform.Berachain],
297
+ });
298
+ prev[berachainChainId][assetId] = id;
299
+ }
300
+ catch {
301
+ // unable to create assetId, skip token
302
+ }
303
+ }
304
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Scroll)) {
305
+ try {
306
+ const assetId = toAssetId({
307
+ chainNamespace: CHAIN_NAMESPACE.Evm,
308
+ chainReference: CHAIN_REFERENCE.ScrollMainnet,
309
+ assetNamespace: 'erc20',
310
+ assetReference: platforms[CoingeckoAssetPlatform.Scroll],
311
+ });
312
+ prev[scrollChainId][assetId] = id;
313
+ }
314
+ catch {
315
+ // unable to create assetId, skip token
316
+ }
317
+ }
318
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Cronos)) {
319
+ try {
320
+ const assetId = toAssetId({
321
+ chainNamespace: CHAIN_NAMESPACE.Evm,
322
+ chainReference: CHAIN_REFERENCE.CronosMainnet,
323
+ assetNamespace: 'erc20',
324
+ assetReference: platforms[CoingeckoAssetPlatform.Cronos],
325
+ });
326
+ prev[cronosChainId][assetId] = id;
327
+ }
328
+ catch {
329
+ // unable to create assetId, skip token
330
+ }
331
+ }
220
332
  if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Katana)) {
221
333
  try {
222
334
  const assetId = toAssetId({
@@ -231,6 +343,174 @@ export const parseData = (coins) => {
231
343
  // unable to create assetId, skip token
232
344
  }
233
345
  }
346
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.FlowEvm)) {
347
+ try {
348
+ const assetId = toAssetId({
349
+ chainNamespace: CHAIN_NAMESPACE.Evm,
350
+ chainReference: CHAIN_REFERENCE.FlowEvmMainnet,
351
+ assetNamespace: 'erc20',
352
+ assetReference: platforms[CoingeckoAssetPlatform.FlowEvm],
353
+ });
354
+ prev[flowEvmChainId][assetId] = id;
355
+ }
356
+ catch {
357
+ // unable to create assetId, skip token
358
+ }
359
+ }
360
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Celo)) {
361
+ try {
362
+ const assetId = toAssetId({
363
+ chainNamespace: CHAIN_NAMESPACE.Evm,
364
+ chainReference: CHAIN_REFERENCE.CeloMainnet,
365
+ assetNamespace: 'erc20',
366
+ assetReference: platforms[CoingeckoAssetPlatform.Celo],
367
+ });
368
+ prev[celoChainId][assetId] = id;
369
+ }
370
+ catch {
371
+ // unable to create assetId, skip token
372
+ }
373
+ }
374
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Story)) {
375
+ try {
376
+ const assetId = toAssetId({
377
+ chainNamespace: CHAIN_NAMESPACE.Evm,
378
+ chainReference: CHAIN_REFERENCE.StoryMainnet,
379
+ assetNamespace: 'erc20',
380
+ assetReference: platforms[CoingeckoAssetPlatform.Story],
381
+ });
382
+ prev[storyChainId][assetId] = id;
383
+ }
384
+ catch {
385
+ // unable to create assetId, skip token
386
+ }
387
+ }
388
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.ZkSyncEra)) {
389
+ try {
390
+ const assetId = toAssetId({
391
+ chainNamespace: CHAIN_NAMESPACE.Evm,
392
+ chainReference: CHAIN_REFERENCE.ZkSyncEraMainnet,
393
+ assetNamespace: 'erc20',
394
+ assetReference: platforms[CoingeckoAssetPlatform.ZkSyncEra],
395
+ });
396
+ prev[zkSyncEraChainId][assetId] = id;
397
+ }
398
+ catch {
399
+ // unable to create assetId, skip token
400
+ }
401
+ }
402
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Blast)) {
403
+ try {
404
+ const assetId = toAssetId({
405
+ chainNamespace: CHAIN_NAMESPACE.Evm,
406
+ chainReference: CHAIN_REFERENCE.BlastMainnet,
407
+ assetNamespace: 'erc20',
408
+ assetReference: platforms[CoingeckoAssetPlatform.Blast],
409
+ });
410
+ prev[blastChainId][assetId] = id;
411
+ }
412
+ catch {
413
+ // unable to create assetId, skip token
414
+ }
415
+ }
416
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Hemi)) {
417
+ try {
418
+ const assetId = toAssetId({
419
+ chainNamespace: CHAIN_NAMESPACE.Evm,
420
+ chainReference: CHAIN_REFERENCE.HemiMainnet,
421
+ assetNamespace: 'erc20',
422
+ assetReference: platforms[CoingeckoAssetPlatform.Hemi],
423
+ });
424
+ prev[hemiChainId][assetId] = id;
425
+ }
426
+ catch {
427
+ // unable to create assetId, skip token
428
+ }
429
+ }
430
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Sonic)) {
431
+ try {
432
+ const assetId = toAssetId({
433
+ chainNamespace: CHAIN_NAMESPACE.Evm,
434
+ chainReference: CHAIN_REFERENCE.SonicMainnet,
435
+ assetNamespace: 'erc20',
436
+ assetReference: platforms[CoingeckoAssetPlatform.Sonic],
437
+ });
438
+ prev[sonicChainId][assetId] = id;
439
+ }
440
+ catch {
441
+ // unable to create assetId, skip token
442
+ }
443
+ }
444
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Unichain)) {
445
+ try {
446
+ const assetId = toAssetId({
447
+ chainNamespace: CHAIN_NAMESPACE.Evm,
448
+ chainReference: CHAIN_REFERENCE.UnichainMainnet,
449
+ assetNamespace: 'erc20',
450
+ assetReference: platforms[CoingeckoAssetPlatform.Unichain],
451
+ });
452
+ prev[unichainChainId][assetId] = id;
453
+ }
454
+ catch {
455
+ // unable to create assetId, skip token
456
+ }
457
+ }
458
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Bob)) {
459
+ try {
460
+ const assetId = toAssetId({
461
+ chainNamespace: CHAIN_NAMESPACE.Evm,
462
+ chainReference: CHAIN_REFERENCE.BobMainnet,
463
+ assetNamespace: 'erc20',
464
+ assetReference: platforms[CoingeckoAssetPlatform.Bob],
465
+ });
466
+ prev[bobChainId][assetId] = id;
467
+ }
468
+ catch {
469
+ // unable to create assetId, skip token
470
+ }
471
+ }
472
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Mode)) {
473
+ try {
474
+ const assetId = toAssetId({
475
+ chainNamespace: CHAIN_NAMESPACE.Evm,
476
+ chainReference: CHAIN_REFERENCE.ModeMainnet,
477
+ assetNamespace: 'erc20',
478
+ assetReference: platforms[CoingeckoAssetPlatform.Mode],
479
+ });
480
+ prev[modeChainId][assetId] = id;
481
+ }
482
+ catch {
483
+ // unable to create assetId, skip token
484
+ }
485
+ }
486
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Soneium)) {
487
+ try {
488
+ const assetId = toAssetId({
489
+ chainNamespace: CHAIN_NAMESPACE.Evm,
490
+ chainReference: CHAIN_REFERENCE.SoneiumMainnet,
491
+ assetNamespace: 'erc20',
492
+ assetReference: platforms[CoingeckoAssetPlatform.Soneium],
493
+ });
494
+ prev[soneiumChainId][assetId] = id;
495
+ }
496
+ catch {
497
+ // unable to create assetId, skip token
498
+ }
499
+ }
500
+ if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Abstract)) {
501
+ try {
502
+ const assetId = toAssetId({
503
+ chainNamespace: CHAIN_NAMESPACE.Evm,
504
+ chainReference: CHAIN_REFERENCE.AbstractMainnet,
505
+ assetNamespace: 'erc20',
506
+ assetReference: platforms[CoingeckoAssetPlatform.Abstract],
507
+ });
508
+ prev[abstractChainId][assetId] = id;
509
+ }
510
+ catch {
511
+ // unable to create assetId, skip token
512
+ }
513
+ }
234
514
  if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Starknet)) {
235
515
  try {
236
516
  const assetId = toAssetId({
@@ -282,12 +562,32 @@ export const parseData = (coins) => {
282
562
  [polygonChainId]: { [polygonAssetId]: 'polygon-ecosystem-token' },
283
563
  [gnosisChainId]: { [gnosisAssetId]: 'xdai' },
284
564
  [arbitrumChainId]: { [arbitrumAssetId]: 'ethereum' },
285
- [arbitrumNovaChainId]: { [arbitrumNovaAssetId]: 'ethereum' },
286
565
  [baseChainId]: { [baseAssetId]: 'ethereum' },
287
566
  [hyperEvmChainId]: { [hyperEvmAssetId]: 'hyperliquid' },
288
567
  [monadChainId]: { [monadAssetId]: 'monad' },
289
568
  [plasmaChainId]: { [plasmaAssetId]: 'plasma' },
569
+ [plumeChainId]: { [plumeAssetId]: 'plume' },
570
+ [mantleChainId]: { [mantleAssetId]: 'mantle' },
571
+ [inkChainId]: { [inkAssetId]: 'ethereum' },
572
+ [megaethChainId]: { [megaethAssetId]: 'ethereum' },
573
+ [lineaChainId]: { [lineaAssetId]: 'ethereum' },
574
+ [berachainChainId]: { [berachainAssetId]: 'berachain-bera' },
575
+ [cronosChainId]: { [cronosAssetId]: 'crypto-com-chain' },
290
576
  [katanaChainId]: { [katanaAssetId]: 'katana' },
577
+ [storyChainId]: { [storyAssetId]: 'story-2' },
578
+ [flowEvmChainId]: { [flowEvmAssetId]: 'flow' },
579
+ [celoChainId]: { [celoAssetId]: 'celo' },
580
+ [zkSyncEraChainId]: { [zkSyncEraAssetId]: 'ethereum' },
581
+ [blastChainId]: { [blastAssetId]: 'ethereum' },
582
+ [worldChainChainId]: { [worldChainAssetId]: 'ethereum' },
583
+ [hemiChainId]: { [hemiAssetId]: 'ethereum' },
584
+ [scrollChainId]: { [scrollAssetId]: 'ethereum' },
585
+ [sonicChainId]: { [sonicAssetId]: 'sonic-3' },
586
+ [unichainChainId]: { [unichainAssetId]: 'ethereum' },
587
+ [bobChainId]: { [bobAssetId]: 'ethereum' },
588
+ [modeChainId]: { [modeAssetId]: 'ethereum' },
589
+ [soneiumChainId]: { [soneiumAssetId]: 'ethereum' },
590
+ [abstractChainId]: { [abstractAssetId]: 'ethereum' },
291
591
  [solanaChainId]: { [solAssetId]: 'solana' },
292
592
  [starknetChainId]: { [starknetAssetId]: 'starknet' },
293
593
  [tronChainId]: { [tronAssetId]: 'tron' },