@sodax/types 2.0.0-rc.13 → 2.0.0-rc.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/swap/swap.js CHANGED
@@ -8,7 +8,8 @@ export const swapSupportedTokens = {
8
8
  spokeChainConfig[ChainKeys.SONIC_MAINNET].supportedTokens.USDT,
9
9
  spokeChainConfig[ChainKeys.SONIC_MAINNET].supportedTokens.wS,
10
10
  spokeChainConfig[ChainKeys.SONIC_MAINNET].supportedTokens.SODA,
11
- ...Object.values(SodaTokens),
11
+ // sodaUSDS is staging-only — see stagingSwapSupportedTokens
12
+ ...Object.values(SodaTokens).filter(t => t !== SodaTokens.sodaUSDS),
12
13
  ...Object.values(LsodaTokens),
13
14
  ],
14
15
  [ChainKeys.AVALANCHE_MAINNET]: [
@@ -28,7 +29,6 @@ export const swapSupportedTokens = {
28
29
  spokeChainConfig[ChainKeys.ARBITRUM_MAINNET].supportedTokens.tBTC,
29
30
  spokeChainConfig[ChainKeys.ARBITRUM_MAINNET].supportedTokens.USDC,
30
31
  spokeChainConfig[ChainKeys.ARBITRUM_MAINNET].supportedTokens.USDT,
31
- spokeChainConfig[ChainKeys.ARBITRUM_MAINNET].supportedTokens.SODA,
32
32
  spokeChainConfig[ChainKeys.ARBITRUM_MAINNET].supportedTokens.ARB,
33
33
  spokeChainConfig[ChainKeys.ARBITRUM_MAINNET].supportedTokens.AAVE,
34
34
  spokeChainConfig[ChainKeys.ARBITRUM_MAINNET].supportedTokens.LINK,
@@ -36,21 +36,20 @@ export const swapSupportedTokens = {
36
36
  spokeChainConfig[ChainKeys.ARBITRUM_MAINNET].supportedTokens.CRV,
37
37
  spokeChainConfig[ChainKeys.ARBITRUM_MAINNET].supportedTokens.PENDLE,
38
38
  spokeChainConfig[ChainKeys.ARBITRUM_MAINNET].supportedTokens.rETH,
39
+ spokeChainConfig[ChainKeys.ARBITRUM_MAINNET].supportedTokens.SODA,
39
40
  ],
40
41
  [ChainKeys.BASE_MAINNET]: [
41
42
  spokeChainConfig[ChainKeys.BASE_MAINNET].supportedTokens.ETH,
42
- spokeChainConfig[ChainKeys.BASE_MAINNET].supportedTokens.bnUSD,
43
43
  spokeChainConfig[ChainKeys.BASE_MAINNET].supportedTokens.weETH,
44
44
  spokeChainConfig[ChainKeys.BASE_MAINNET].supportedTokens.USDC,
45
45
  spokeChainConfig[ChainKeys.BASE_MAINNET].supportedTokens.wstETH,
46
46
  spokeChainConfig[ChainKeys.BASE_MAINNET].supportedTokens.cbBTC,
47
- spokeChainConfig[ChainKeys.BASE_MAINNET].supportedTokens.SODA,
48
47
  spokeChainConfig[ChainKeys.BASE_MAINNET].supportedTokens.VIRTUAL,
49
48
  spokeChainConfig[ChainKeys.BASE_MAINNET].supportedTokens.cbETH,
49
+ spokeChainConfig[ChainKeys.BASE_MAINNET].supportedTokens.SODA,
50
50
  ],
51
51
  [ChainKeys.OPTIMISM_MAINNET]: [
52
52
  spokeChainConfig[ChainKeys.OPTIMISM_MAINNET].supportedTokens.ETH,
53
- spokeChainConfig[ChainKeys.OPTIMISM_MAINNET].supportedTokens.bnUSD,
54
53
  spokeChainConfig[ChainKeys.OPTIMISM_MAINNET].supportedTokens.USDC,
55
54
  spokeChainConfig[ChainKeys.OPTIMISM_MAINNET].supportedTokens.wstETH,
56
55
  // spokeChainConfig[OPTIMISM_MAINNET_CHAIN_ID].supportedTokens.weETH, // NOTE: Not Implemented
@@ -58,6 +57,7 @@ export const swapSupportedTokens = {
58
57
  spokeChainConfig[ChainKeys.OPTIMISM_MAINNET].supportedTokens.SODA,
59
58
  spokeChainConfig[ChainKeys.OPTIMISM_MAINNET].supportedTokens.OP,
60
59
  spokeChainConfig[ChainKeys.OPTIMISM_MAINNET].supportedTokens.WBTC,
60
+ spokeChainConfig[ChainKeys.OPTIMISM_MAINNET].supportedTokens.bnUSD,
61
61
  ],
62
62
  [ChainKeys.POLYGON_MAINNET]: [
63
63
  spokeChainConfig[ChainKeys.POLYGON_MAINNET].supportedTokens.POL,
@@ -113,7 +113,6 @@ export const swapSupportedTokens = {
113
113
  spokeChainConfig[ChainKeys.LIGHTLINK_MAINNET].supportedTokens['SUI.LL'],
114
114
  spokeChainConfig[ChainKeys.LIGHTLINK_MAINNET].supportedTokens['S.LL'],
115
115
  spokeChainConfig[ChainKeys.LIGHTLINK_MAINNET].supportedTokens['POL.LL'],
116
- spokeChainConfig[ChainKeys.LIGHTLINK_MAINNET].supportedTokens['HYPE.LL'],
117
116
  spokeChainConfig[ChainKeys.LIGHTLINK_MAINNET].supportedTokens.LL,
118
117
  ],
119
118
  [ChainKeys.SOLANA_MAINNET]: [
@@ -151,6 +150,9 @@ export const swapSupportedTokens = {
151
150
  spokeChainConfig[ChainKeys.STELLAR_MAINNET].supportedTokens.bnUSD, // NOTE: Not Implemented
152
151
  spokeChainConfig[ChainKeys.STELLAR_MAINNET].supportedTokens.USDC,
153
152
  spokeChainConfig[ChainKeys.STELLAR_MAINNET].supportedTokens.SODA,
153
+ spokeChainConfig[ChainKeys.STELLAR_MAINNET].supportedTokens.sodaETH,
154
+ spokeChainConfig[ChainKeys.STELLAR_MAINNET].supportedTokens.sodaBTC,
155
+ spokeChainConfig[ChainKeys.STELLAR_MAINNET].supportedTokens.sodaBNB,
154
156
  ],
155
157
  [ChainKeys.SUI_MAINNET]: [
156
158
  spokeChainConfig[ChainKeys.SUI_MAINNET].supportedTokens.SUI,
@@ -167,12 +169,8 @@ export const swapSupportedTokens = {
167
169
  spokeChainConfig[ChainKeys.SUI_MAINNET].supportedTokens.WAL,
168
170
  spokeChainConfig[ChainKeys.SUI_MAINNET].supportedTokens.NAVX,
169
171
  ],
170
- [ChainKeys.INJECTIVE_MAINNET]: [
171
- spokeChainConfig[ChainKeys.INJECTIVE_MAINNET].supportedTokens.INJ,
172
- spokeChainConfig[ChainKeys.INJECTIVE_MAINNET].supportedTokens.bnUSD,
173
- spokeChainConfig[ChainKeys.INJECTIVE_MAINNET].supportedTokens.USDC,
174
- // spokeChainConfig[ChainKeys.INJECTIVE_MAINNET].supportedTokens.SODA, // NOTE: not in solver wiki
175
- ],
172
+ // Injective is currently staging-only — see stagingSwapSupportedTokens
173
+ [ChainKeys.INJECTIVE_MAINNET]: [],
176
174
  [ChainKeys.NEAR_MAINNET]: [
177
175
  spokeChainConfig[ChainKeys.NEAR_MAINNET].supportedTokens.NEAR,
178
176
  spokeChainConfig[ChainKeys.NEAR_MAINNET].supportedTokens.bnUSD,
@@ -239,11 +237,61 @@ export const swapSupportedTokens = {
239
237
  spokeChainConfig[ChainKeys.STACKS_MAINNET].supportedTokens.USDC,
240
238
  ],
241
239
  };
240
+ // Tokens supported ONLY in the staging solver environment.
241
+ // The staging solver supports every production token PLUS these — use
242
+ // `getStagingSolverTokens` for the full staging set. The two lists are disjoint per chain;
243
+ // a token lives in exactly one of them. It is upon the user to provide a token valid for
244
+ // their target environment — validation accepts either (see `isSwapSupportedToken`).
245
+ // Derived from the production solver oracle (tokens absent there).
246
+ export const stagingSwapSupportedTokens = {
247
+ [ChainKeys.SONIC_MAINNET]: [SodaTokens.sodaUSDS],
248
+ [ChainKeys.AVALANCHE_MAINNET]: [],
249
+ [ChainKeys.ARBITRUM_MAINNET]: [],
250
+ [ChainKeys.BASE_MAINNET]: [
251
+ spokeChainConfig[ChainKeys.BASE_MAINNET].supportedTokens.bnUSD,
252
+ spokeChainConfig[ChainKeys.BASE_MAINNET].supportedTokens.AERO,
253
+ ],
254
+ [ChainKeys.OPTIMISM_MAINNET]: [],
255
+ [ChainKeys.POLYGON_MAINNET]: [
256
+ spokeChainConfig[ChainKeys.POLYGON_MAINNET].supportedTokens.USDT,
257
+ spokeChainConfig[ChainKeys.POLYGON_MAINNET].supportedTokens.wstETH,
258
+ ],
259
+ [ChainKeys.BSC_MAINNET]: [],
260
+ [ChainKeys.HYPEREVM_MAINNET]: [],
261
+ [ChainKeys.LIGHTLINK_MAINNET]: [
262
+ spokeChainConfig[ChainKeys.LIGHTLINK_MAINNET].supportedTokens['HYPE.LL'],
263
+ ],
264
+ [ChainKeys.SOLANA_MAINNET]: [],
265
+ [ChainKeys.ICON_MAINNET]: [],
266
+ [ChainKeys.STELLAR_MAINNET]: [],
267
+ [ChainKeys.SUI_MAINNET]: [spokeChainConfig[ChainKeys.SUI_MAINNET].supportedTokens.USDT],
268
+ [ChainKeys.INJECTIVE_MAINNET]: [
269
+ spokeChainConfig[ChainKeys.INJECTIVE_MAINNET].supportedTokens.INJ,
270
+ spokeChainConfig[ChainKeys.INJECTIVE_MAINNET].supportedTokens.bnUSD,
271
+ spokeChainConfig[ChainKeys.INJECTIVE_MAINNET].supportedTokens.USDC,
272
+ // spokeChainConfig[ChainKeys.INJECTIVE_MAINNET].supportedTokens.SODA, // NOTE: not in solver wiki
273
+ ],
274
+ [ChainKeys.NEAR_MAINNET]: [],
275
+ [ChainKeys.BITCOIN_MAINNET]: [],
276
+ [ChainKeys.ETHEREUM_MAINNET]: [
277
+ spokeChainConfig[ChainKeys.ETHEREUM_MAINNET].supportedTokens.wstETH,
278
+ spokeChainConfig[ChainKeys.ETHEREUM_MAINNET].supportedTokens.weETH,
279
+ ],
280
+ [ChainKeys.REDBELLY_MAINNET]: [],
281
+ [ChainKeys.KAIA_MAINNET]: [],
282
+ [ChainKeys.STACKS_MAINNET]: [],
283
+ };
242
284
  export const swapsConfig = {
243
- partnerFee: undefined,
244
285
  supportedTokens: swapSupportedTokens,
245
286
  };
246
- // get supported spoke chain tokens for solver
287
+ // get production supported spoke chain tokens for solver
247
288
  export const getSupportedSolverTokens = (chainId) => swapSupportedTokens[chainId];
248
- // check if token address for given spoke chain id is supported
249
- export const isSwapSupportedToken = (chainId, token) => swapSupportedTokens[chainId].some(t => t.address.toLowerCase() === token.toLowerCase());
289
+ // get supported spoke chain tokens for the staging solver staging supports every
290
+ // production token plus the staging-only ones
291
+ export const getStagingSolverTokens = (chainId) => [
292
+ ...swapSupportedTokens[chainId],
293
+ ...stagingSwapSupportedTokens[chainId],
294
+ ];
295
+ // check if token address for given spoke chain id is supported in either the production or
296
+ // staging solver environment — the caller is responsible for targeting the correct environment.
297
+ export const isSwapSupportedToken = (chainId, token) => [...swapSupportedTokens[chainId], ...stagingSwapSupportedTokens[chainId]].some(t => t.address.toLowerCase() === token.toLowerCase());
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
7
- "version": "2.0.0-rc.13",
7
+ "version": "2.0.0-rc.14",
8
8
  "description": "Sodax Common Types",
9
9
  "main": "dist/index.js",
10
10
  "homepage": "https://github.com/icon-project/sodax-sdks/tree/main/packages/types",
@@ -50,7 +50,7 @@
50
50
  "knip": "5.30.5",
51
51
  "madge": "8.0.0",
52
52
  "typescript": "5.5.4",
53
- "vitest": "3.2.4"
53
+ "vitest": "3.2.6"
54
54
  },
55
55
  "keywords": [
56
56
  "sodax",