@switch-win/sdk 1.2.5 → 1.2.7
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/README.md +12 -1
- package/ROBINHOOD.md +46 -38
- package/package.json +1 -1
- package/src/constants.ts +29 -0
- package/src/index.ts +7 -0
- package/src/networks/robinhood.ts +23 -9
package/README.md
CHANGED
|
@@ -428,13 +428,19 @@ curl -H "x-api-key: YOUR_KEY" "https://quote.switch.win/swap/adapters?network=pu
|
|
|
428
428
|
{ "index": 17, "name": "SwitchLimitOrder", "address": "0xa799f49dcdec9056293187faa5f6f3727942a4ca" },
|
|
429
429
|
{ "index": 18, "name": "SwitchX", "address": "0xf8744452598883792f235b92452127f4a8587db3" },
|
|
430
430
|
{ "index": 19, "name": "LibertySwapV3", "address": "0xba24bb413ab32f02073385850907ebcf0a357e70" },
|
|
431
|
-
{ "index": 20, "name": "FinvestaV3", "address": "0x012c44d0c465819ef3ceac208e0c1b272087a8b4" }
|
|
431
|
+
{ "index": 20, "name": "FinvestaV3", "address": "0x012c44d0c465819ef3ceac208e0c1b272087a8b4" },
|
|
432
|
+
{ "index": 21, "name": "TrenchV2", "address": "0xaf48bb0936d9fa522650236917321d89978a8591" },
|
|
433
|
+
{ "index": 22, "name": "TrenchV3", "address": "0x01957ec5fcc079f1bb388b9f261278dac42cf2e9" }
|
|
432
434
|
]
|
|
433
435
|
}
|
|
434
436
|
```
|
|
435
437
|
|
|
436
438
|
Finvesta is a Liberty-style V3 venue with fee tiers `100`, `500`, `2500`, and
|
|
437
439
|
`10000`. It can be selected for normal routes, but it is not transfer-tax safe.
|
|
440
|
+
Trench V2 is a direct-pair adapter with dynamic pair-specific fees and is
|
|
441
|
+
eligible for transfer-tax-sensitive hops. Trench V3 uses direct pool simulation
|
|
442
|
+
across fee tiers `100`, `500`, `2500`, `3000`, and `10000`; like other V3
|
|
443
|
+
callback adapters, it is not transfer-tax safe.
|
|
438
444
|
Always treat the live `/swap/adapters` response as the runtime source of truth.
|
|
439
445
|
|
|
440
446
|
#### Using adapter indices to filter routing
|
|
@@ -973,6 +979,11 @@ Robinhood constants are available from
|
|
|
973
979
|
| **Finvesta V3 adapter** | Index `20`; `0x012c44d0C465819eF3CeAC208e0c1B272087a8b4` (not transfer-tax safe) |
|
|
974
980
|
| **Finvesta V3 factory** | `0x7f5c7C5144b4B4c6e954A5b2D75C318C5467EFDc` |
|
|
975
981
|
| **Finvesta fee tiers** | `100`, `500`, `2500`, `10000` |
|
|
982
|
+
| **Trench V2 adapter** | Index `21`; `0xAf48bb0936D9fA522650236917321D89978A8591` (direct-pair, transfer-tax safe) |
|
|
983
|
+
| **Trench V2 factory** | `0xA024e4574406BEf89e624c75758c700B5bED27C7` |
|
|
984
|
+
| **Trench V3 adapter** | Index `22`; `0x01957eC5FCC079f1bB388b9f261278daC42cf2E9` (not transfer-tax safe) |
|
|
985
|
+
| **Trench V3 factory** | `0xCAeF0a906F3323595A8faA14DF7eDee6F59220af` |
|
|
986
|
+
| **Trench V3 fee tiers** | `100`, `500`, `2500`, `3000`, `10000` |
|
|
976
987
|
| **Fee denominator** | `10000` (basis points) |
|
|
977
988
|
| **Max slippage** | `5000` bps (50 %) |
|
|
978
989
|
| **Max fee** | `100` bps (1 %) |
|
package/ROBINHOOD.md
CHANGED
|
@@ -11,7 +11,7 @@ Production integration reference for Switch swaps on Robinhood Chain mainnet.
|
|
|
11
11
|
| Explorer | `https://robinhoodchain.blockscout.com` |
|
|
12
12
|
| Quote API | `https://quote.switch.win/swap/quote` |
|
|
13
13
|
| Tax API | `https://quote.switch.win/swap/checkTax` |
|
|
14
|
-
| Supported liquidity |
|
|
14
|
+
| Supported liquidity | 20 adapters: Uniswap V2/V3/V4, Switch limit orders, SwapHood, Up33, Sheriff, Aeon, Catnip, PancakeSwap V2/V3, RobinSwap, SushiSwap, GIGA, Flap, and Ramses |
|
|
15
15
|
| Limit orders | Available: EIP-712 ERC-20 orders plus native ETH flow |
|
|
16
16
|
|
|
17
17
|
## Contents
|
|
@@ -107,7 +107,7 @@ await window.ethereum.request({
|
|
|
107
107
|
| SwitchRouter | `0x8730C3e2cF2c8CDa8E6166837A1Ed26f46aa9E59` |
|
|
108
108
|
| Uniswap V2 adapter | `0x7a14d7A8509a66209D4332843b983b29bF5604A4` |
|
|
109
109
|
| Uniswap V3 adapter | `0xbcA08f296d9Ba0dc19Aa0E05D355365cE29A3205` |
|
|
110
|
-
| Uniswap V4 adapter | `
|
|
110
|
+
| Uniswap V4 adapter | `0xB9885d3C55e79499bf887F2fBe445e01A8cFFf1c` |
|
|
111
111
|
| SwitchLimitOrder | `0x752c50DDd3B426cAE3D7A995F313Ac74ac6B0230` |
|
|
112
112
|
| Native ETH flow | `0x029FfC6aF9112eA078f1D6f4a98826DDB2136cf6` |
|
|
113
113
|
| Switch Limit Order adapter (index 3) | `0x412F625072c10e58C619D1e0b3C95cd3d5689871` |
|
|
@@ -119,13 +119,19 @@ await window.ethereum.request({
|
|
|
119
119
|
| Aeon Algebra adapter (index 9) | `0x20615954FB87360139e7DdDB519359498EbD1904` |
|
|
120
120
|
| Catnip V2 adapter (index 10) | `0x5b2Ca358d56490Dc86224D502522314De7707237` |
|
|
121
121
|
| PancakeSwap V2 adapter (index 11) | `0x3B6e71A59553143937Fef74a7B50AFD24528786E` |
|
|
122
|
-
|
|
|
123
|
-
|
|
|
124
|
-
|
|
|
125
|
-
| GIGA
|
|
126
|
-
|
|
|
127
|
-
|
|
|
128
|
-
| Ramses
|
|
122
|
+
| PancakeSwap V3 adapter (index 12) | `0xD2Adac87bab4f0f99CF2a21c552c88d1C9825cCC` |
|
|
123
|
+
| RobinSwap V3 adapter (index 13) | `0x798f77D63b46b0E019de206E111e5ea5CC16BEc8` |
|
|
124
|
+
| SushiSwap V3 adapter (index 14) | `0xca3EA0Fd6E31f94c81B6586836790adE638313ED` |
|
|
125
|
+
| GIGA V2 adapter (index 15) | `0xa379c7D17F7fEe735773879D4069886B117AB54a` |
|
|
126
|
+
| GIGA V3 adapter (index 16) | `0xcAa612CDe3d3FbE97Be97eB5f79BC91597432d55` |
|
|
127
|
+
| Flap Portal adapter (index 17) | `0x6af2A4475C44d5833575150Bf7C3D3FE6Bf4F344` |
|
|
128
|
+
| Ramses V3 adapter (index 18) | `0xdBf182774C60932c6fe1Bf3FFaB8Ca28CCb0dC17` |
|
|
129
|
+
| Ramses V2 adapter (index 19) | `0x5fe3b873c222e76f7630b40052f07ee06196E6d3` |
|
|
130
|
+
|
|
131
|
+
The PancakeSwap V3 adapter was created in
|
|
132
|
+
[deployment transaction `0xa82a...cfa8`](https://robinhoodchain.blockscout.com/tx/0xa82a53e8e32e7a26be720d62e157c820e8c25ccbb3826e604435480606e0cfa8)
|
|
133
|
+
and inserted at index `12` in
|
|
134
|
+
[router transaction `0xae59...94b5`](https://robinhoodchain.blockscout.com/tx/0xae5949bad45dfbdcd930a2fd39e5fb22914b51704f8c7b137f996a154e8d94b5).
|
|
129
135
|
|
|
130
136
|
The V4 adapter was created in
|
|
131
137
|
[deployment transaction `0x60d5...34a7`](https://robinhoodchain.blockscout.com/tx/0x60d56466a8162a643a15ecde98322ec05ea23d44d03fbd817df4ddbaef4834a7)
|
|
@@ -224,11 +230,10 @@ V4 discovery must preserve the full key. The backend selects the key and
|
|
|
224
230
|
embeds adapter-specific route data in the quote; clients should submit the
|
|
225
231
|
returned transaction unchanged rather than reconstructing V4 calldata.
|
|
226
232
|
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
does not reduce V2 or V3 routing coverage.
|
|
233
|
+
The current adapter supplies empty hook data and supports hooked pools whose
|
|
234
|
+
normal V4 quoter simulation succeeds. Hooks requiring proprietary hook data or
|
|
235
|
+
router allowlisting still require a specific integration. This does not reduce
|
|
236
|
+
V2 or V3 routing coverage.
|
|
232
237
|
|
|
233
238
|
V4 can represent native ETH as the zero-address currency. Switch routes use
|
|
234
239
|
the canonical Robinhood WETH address, so the V4 adapter unwraps WETH when a
|
|
@@ -237,7 +242,7 @@ it. API callers should continue using `ROBINHOOD_NATIVE_ETH` for a native user
|
|
|
237
242
|
input/output and `ROBINHOOD_TOKENS.WETH.address` for the ERC-20.
|
|
238
243
|
|
|
239
244
|
The Robinhood Uniswap V4 adapter is deployed at
|
|
240
|
-
`
|
|
245
|
+
`0xB9885d3C55e79499bf887F2fBe445e01A8cFFf1c`, whitelisted in the production
|
|
241
246
|
SwitchRouter at adapter index `2`, and exported as
|
|
242
247
|
`ROBINHOOD_SWITCH_CONTRACTS.uniswapV4Adapter`. Continue treating
|
|
243
248
|
`GET /swap/adapters?network=robinhood` as the source of truth for the adapters
|
|
@@ -257,8 +262,8 @@ The canonical Robinhood V4 infrastructure is available through
|
|
|
257
262
|
| Permit2 | `0x000000000022D473030F116dDEE9F6B43aC78BA3` |
|
|
258
263
|
|
|
259
264
|
If either side is detected as a transfer-tax token, the complete route is
|
|
260
|
-
restricted to tax-safe adapters `0`, `4`, `7`, `10`, `11`, `
|
|
261
|
-
`
|
|
265
|
+
restricted to tax-safe adapters `0`, `4`, `7`, `10`, `11`, `15`, `17`, and
|
|
266
|
+
`19`. Indices `15` and `19` use direct-pair V2 execution. Flap at index `17`
|
|
262
267
|
must execute through its Portal, whose quote already includes Flap token taxes
|
|
263
268
|
in both directions; clients must not apply those taxes a second time.
|
|
264
269
|
|
|
@@ -493,13 +498,14 @@ Robinhood currently returns:
|
|
|
493
498
|
| `9` | Aeon Algebra |
|
|
494
499
|
| `10` | Catnip V2 |
|
|
495
500
|
| `11` | PancakeSwap V2 |
|
|
496
|
-
| `12` |
|
|
497
|
-
| `13` |
|
|
498
|
-
| `14` |
|
|
499
|
-
| `15` | GIGA
|
|
500
|
-
| `16` |
|
|
501
|
-
| `17` |
|
|
502
|
-
| `18` | Ramses
|
|
501
|
+
| `12` | PancakeSwap V3 |
|
|
502
|
+
| `13` | RobinSwap V3 |
|
|
503
|
+
| `14` | SushiSwap V3 |
|
|
504
|
+
| `15` | GIGA V2 |
|
|
505
|
+
| `16` | GIGA V3 |
|
|
506
|
+
| `17` | Flap |
|
|
507
|
+
| `18` | Ramses V3 |
|
|
508
|
+
| `19` | Ramses V2 |
|
|
503
509
|
|
|
504
510
|
Treat the endpoint response, not this document, as the source of truth for
|
|
505
511
|
which adapters are currently selectable.
|
|
@@ -507,7 +513,7 @@ which adapters are currently selectable.
|
|
|
507
513
|
Do not permanently hard-code the available adapter list in an integration.
|
|
508
514
|
Fetch it when presenting routing-source controls. If a quote involves a tax
|
|
509
515
|
token, the backend restricts routing to tax-safe adapters `0`, `4`, `7`, `10`,
|
|
510
|
-
`11`, `
|
|
516
|
+
`11`, `15`, `17`, and `19`; an explicit filter that excludes all of them is
|
|
511
517
|
rejected.
|
|
512
518
|
|
|
513
519
|
### Check token tax
|
|
@@ -649,13 +655,13 @@ Always identify tokens by address and obtain a fresh quote and tax check.
|
|
|
649
655
|
|
|
650
656
|
### Routing configuration
|
|
651
657
|
|
|
652
|
-
The production router currently exposes
|
|
658
|
+
The production router currently exposes twenty ordered adapters:
|
|
653
659
|
|
|
654
660
|
| Index | Venue | Routing family |
|
|
655
661
|
|---:|---|---|
|
|
656
662
|
| `0` | Uniswap V2 | Direct-pair V2 |
|
|
657
663
|
| `1` | Uniswap V3 | V3 tiers `100`, `500`, `3000`, `10000` |
|
|
658
|
-
| `2` | Uniswap V4 | Complete
|
|
664
|
+
| `2` | Uniswap V4 | Complete `PoolKey`; empty hook data for compatible hooks |
|
|
659
665
|
| `3` | Switch limit orders | Signed/on-chain order liquidity |
|
|
660
666
|
| `4` | SwapHood V2 | Pair-owned variable-fee V2 |
|
|
661
667
|
| `5` | SwapHood V3 | Pancake V3 tiers `100`, `500`, `2500`, `10000` |
|
|
@@ -664,14 +670,15 @@ The production router currently exposes nineteen ordered adapters:
|
|
|
664
670
|
| `8` | Sheriff | Algebra Integral |
|
|
665
671
|
| `9` | Aeon | Algebra Integral with plugin-aware fees |
|
|
666
672
|
| `10` | Catnip | Direct-pair V2, fixed 30 bps |
|
|
667
|
-
| `11` | PancakeSwap | Direct-pair V2, fixed 25 bps |
|
|
668
|
-
| `12` |
|
|
669
|
-
| `13` |
|
|
670
|
-
| `14` |
|
|
671
|
-
| `15` | GIGA
|
|
672
|
-
| `16` |
|
|
673
|
-
| `17` |
|
|
674
|
-
| `18` | Ramses
|
|
673
|
+
| `11` | PancakeSwap V2 | Direct-pair V2, fixed 25 bps |
|
|
674
|
+
| `12` | PancakeSwap V3 | Factory-enabled tiers `100`, `500`, `2500`, `10000` |
|
|
675
|
+
| `13` | RobinSwap | V3 tiers `100`, `500`, `2500`, `3000`, `10000` |
|
|
676
|
+
| `14` | SushiSwap | V3 tiers `500`, `3000`, `10000` |
|
|
677
|
+
| `15` | GIGA V2 | Direct-pair V2 using the pair's live quote and pair-owned fee |
|
|
678
|
+
| `16` | GIGA V3 | V3 tiers `100`, `500`, `1000`, `2000`, `3000`, `10000` |
|
|
679
|
+
| `17` | Flap | Portal-executed bonding curve; Portal quote includes token tax |
|
|
680
|
+
| `18` | Ramses V3 | Tick spacings `1`, `5`, `10`, `50`, `100`, `200`, stored in the route `fee` field |
|
|
681
|
+
| `19` | Ramses V2 | Direct-pair, pair-owned variable-fee V2 |
|
|
675
682
|
|
|
676
683
|
V4 pools are discovered by complete `PoolKey`, not by applying a V3 fee-tier
|
|
677
684
|
list. Native-ETH V4 currencies are normalized through the WETH/native alias
|
|
@@ -684,7 +691,7 @@ JUGGERNAUT, MARIAN, and WALLET. The expanded set was selected from the
|
|
|
684
691
|
it is taxed; INDEX remains an endpoint token but is excluded because its
|
|
685
692
|
dominant liquidity depends on V4 hooks that are not yet supported. If either side is
|
|
686
693
|
detected as a transfer-tax token, the backend restricts the entire route to
|
|
687
|
-
tax-safe adapters `0`, `4`, `7`, `10`, `11`, `
|
|
694
|
+
tax-safe adapters `0`, `4`, `7`, `10`, `11`, `15`, `17`, and `19`;
|
|
688
695
|
concentrated-liquidity and limit-order adapters are excluded. Flap is the one
|
|
689
696
|
non-direct-pair member: only its Portal can execute the curve swap, and the
|
|
690
697
|
Portal quote already includes the Flap token tax.
|
|
@@ -705,9 +712,10 @@ untrusted clients.
|
|
|
705
712
|
## Current limitations
|
|
706
713
|
|
|
707
714
|
- Rialto liquidity is not integrated.
|
|
708
|
-
- Robinhood market routing is limited to the
|
|
715
|
+
- Robinhood market routing is limited to the twenty production adapters
|
|
709
716
|
listed above. Always use `/swap/adapters` as the runtime source of truth.
|
|
710
|
-
-
|
|
717
|
+
- V4 hooks that require proprietary hook data or router allowlisting need a
|
|
718
|
+
venue-specific integration.
|
|
711
719
|
- A V4 allocation currently selects its best single PoolKey; intra-V4
|
|
712
720
|
multi-pool splitting is not yet enabled. V4 can still split against other
|
|
713
721
|
eligible adapters.
|
package/package.json
CHANGED
package/src/constants.ts
CHANGED
|
@@ -64,6 +64,35 @@ export const FINVESTA_V3_FACTORY =
|
|
|
64
64
|
|
|
65
65
|
/** Factory-enabled Finvesta fee tiers, in hundredths of one basis point. */
|
|
66
66
|
export const FINVESTA_V3_FEE_TIERS = [100, 500, 2500, 10000] as const;
|
|
67
|
+
|
|
68
|
+
/** Trench V2's production direct-pair adapter index in SwitchRouter. */
|
|
69
|
+
export const TRENCH_V2_ADAPTER_INDEX = 21;
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Verified Trench V2 direct-pair adapter.
|
|
73
|
+
* Eligible for transfer-tax-sensitive hops because input is sent directly to
|
|
74
|
+
* the pair and execution measures the amount actually received.
|
|
75
|
+
*/
|
|
76
|
+
export const TRENCH_V2_ADAPTER =
|
|
77
|
+
"0xAf48bb0936D9fA522650236917321D89978A8591";
|
|
78
|
+
|
|
79
|
+
/** Trench V2 factory queried for pairs and pair-specific fees. */
|
|
80
|
+
export const TRENCH_V2_FACTORY =
|
|
81
|
+
"0xA024e4574406BEf89e624c75758c700B5bED27C7";
|
|
82
|
+
|
|
83
|
+
/** Trench V3's production self-quoter adapter index in SwitchRouter. */
|
|
84
|
+
export const TRENCH_V3_ADAPTER_INDEX = 22;
|
|
85
|
+
|
|
86
|
+
/** Verified Trench V3 adapter. Not safe for transfer-tax-sensitive hops. */
|
|
87
|
+
export const TRENCH_V3_ADAPTER =
|
|
88
|
+
"0x01957eC5FCC079f1bB388b9f261278daC42cf2E9";
|
|
89
|
+
|
|
90
|
+
/** Trench V3 factory queried by the adapter. */
|
|
91
|
+
export const TRENCH_V3_FACTORY =
|
|
92
|
+
"0xCAeF0a906F3323595A8faA14DF7eDee6F59220af";
|
|
93
|
+
|
|
94
|
+
/** Factory-enabled Trench V3 fee tiers, in hundredths of one basis point. */
|
|
95
|
+
export const TRENCH_V3_FEE_TIERS = [100, 500, 2500, 3000, 10000] as const;
|
|
67
96
|
|
|
68
97
|
// ── Limit Order contract ────────────────────────────────────────────────
|
|
69
98
|
|
package/src/index.ts
CHANGED
|
@@ -66,6 +66,13 @@ export {
|
|
|
66
66
|
FINVESTA_V3_ADAPTER,
|
|
67
67
|
FINVESTA_V3_FACTORY,
|
|
68
68
|
FINVESTA_V3_FEE_TIERS,
|
|
69
|
+
TRENCH_V2_ADAPTER_INDEX,
|
|
70
|
+
TRENCH_V2_ADAPTER,
|
|
71
|
+
TRENCH_V2_FACTORY,
|
|
72
|
+
TRENCH_V3_ADAPTER_INDEX,
|
|
73
|
+
TRENCH_V3_ADAPTER,
|
|
74
|
+
TRENCH_V3_FACTORY,
|
|
75
|
+
TRENCH_V3_FEE_TIERS,
|
|
69
76
|
FEE_DENOMINATOR,
|
|
70
77
|
MAX_FEE_BPS,
|
|
71
78
|
MAX_SLIPPAGE_BPS,
|
|
@@ -29,7 +29,7 @@ export const ROBINHOOD_SWITCH_CONTRACTS = {
|
|
|
29
29
|
nativeEthFlow: "0x029FfC6aF9112eA078f1D6f4a98826DDB2136cf6",
|
|
30
30
|
uniswapV2Adapter: "0x7a14d7A8509a66209D4332843b983b29bF5604A4",
|
|
31
31
|
uniswapV3Adapter: "0xbcA08f296d9Ba0dc19Aa0E05D355365cE29A3205",
|
|
32
|
-
uniswapV4Adapter: "
|
|
32
|
+
uniswapV4Adapter: "0xB9885d3C55e79499bf887F2fBe445e01A8cFFf1c",
|
|
33
33
|
limitOrderAdapter: "0x412F625072c10e58C619D1e0b3C95cd3d5689871",
|
|
34
34
|
swapHoodV2Adapter: "0x6D8746f02e52944c13824fA691c6f4186E463354",
|
|
35
35
|
swapHoodV3Adapter: "0x9645dE0AcB48F0AAefdBEb423F0558457907DE98",
|
|
@@ -39,6 +39,8 @@ export const ROBINHOOD_SWITCH_CONTRACTS = {
|
|
|
39
39
|
aeonAlgebraAdapter: "0x20615954FB87360139e7DdDB519359498EbD1904",
|
|
40
40
|
catnipV2Adapter: "0x5b2Ca358d56490Dc86224D502522314De7707237",
|
|
41
41
|
pancakeSwapV2Adapter: "0x3B6e71A59553143937Fef74a7B50AFD24528786E",
|
|
42
|
+
pancakeSwapV3Adapter: "0xD2Adac87bab4f0f99CF2a21c552c88d1C9825cCC",
|
|
43
|
+
robinSwapV2Adapter: "0xF694145F104c3C24f723301e160D2Ccf0Db31FE6",
|
|
42
44
|
robinSwapV3Adapter: "0x798f77D63b46b0E019de206E111e5ea5CC16BEc8",
|
|
43
45
|
sushiSwapV3Adapter: "0xca3EA0Fd6E31f94c81B6586836790adE638313ED",
|
|
44
46
|
gigaV2Adapter: "0xa379c7D17F7fEe735773879D4069886B117AB54a",
|
|
@@ -58,7 +60,7 @@ export interface RobinhoodAdapter {
|
|
|
58
60
|
}
|
|
59
61
|
|
|
60
62
|
/**
|
|
61
|
-
* Snapshot of the ordered production adapter registry verified on 2026-08-
|
|
63
|
+
* Snapshot of the ordered production adapter registry verified on 2026-08-09.
|
|
62
64
|
*
|
|
63
65
|
* Adapter registration can change. Fetch
|
|
64
66
|
* `GET /swap/adapters?network=robinhood` when runtime freshness matters.
|
|
@@ -138,42 +140,54 @@ export const ROBINHOOD_ADAPTERS = [
|
|
|
138
140
|
},
|
|
139
141
|
{
|
|
140
142
|
index: 12,
|
|
143
|
+
name: "PancakeSwapV3",
|
|
144
|
+
address: ROBINHOOD_SWITCH_CONTRACTS.pancakeSwapV3Adapter,
|
|
145
|
+
taxSafe: false,
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
index: 13,
|
|
149
|
+
name: "RobinSwapV2",
|
|
150
|
+
address: ROBINHOOD_SWITCH_CONTRACTS.robinSwapV2Adapter,
|
|
151
|
+
taxSafe: true,
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
index: 14,
|
|
141
155
|
name: "RobinSwapV3",
|
|
142
156
|
address: ROBINHOOD_SWITCH_CONTRACTS.robinSwapV3Adapter,
|
|
143
157
|
taxSafe: false,
|
|
144
158
|
},
|
|
145
159
|
{
|
|
146
|
-
index:
|
|
160
|
+
index: 15,
|
|
147
161
|
name: "SushiSwapV3",
|
|
148
162
|
address: ROBINHOOD_SWITCH_CONTRACTS.sushiSwapV3Adapter,
|
|
149
163
|
taxSafe: false,
|
|
150
164
|
},
|
|
151
165
|
{
|
|
152
|
-
index:
|
|
166
|
+
index: 16,
|
|
153
167
|
name: "GigaV2",
|
|
154
168
|
address: ROBINHOOD_SWITCH_CONTRACTS.gigaV2Adapter,
|
|
155
169
|
taxSafe: true,
|
|
156
170
|
},
|
|
157
171
|
{
|
|
158
|
-
index:
|
|
172
|
+
index: 17,
|
|
159
173
|
name: "GigaV3",
|
|
160
174
|
address: ROBINHOOD_SWITCH_CONTRACTS.gigaV3Adapter,
|
|
161
175
|
taxSafe: false,
|
|
162
176
|
},
|
|
163
177
|
{
|
|
164
|
-
index:
|
|
178
|
+
index: 18,
|
|
165
179
|
name: "Flap",
|
|
166
180
|
address: ROBINHOOD_SWITCH_CONTRACTS.flapAdapter,
|
|
167
181
|
taxSafe: true,
|
|
168
182
|
},
|
|
169
183
|
{
|
|
170
|
-
index:
|
|
184
|
+
index: 19,
|
|
171
185
|
name: "RamsesV3",
|
|
172
186
|
address: ROBINHOOD_SWITCH_CONTRACTS.ramsesV3Adapter,
|
|
173
187
|
taxSafe: false,
|
|
174
188
|
},
|
|
175
189
|
{
|
|
176
|
-
index:
|
|
190
|
+
index: 20,
|
|
177
191
|
name: "RamsesV2",
|
|
178
192
|
address: ROBINHOOD_SWITCH_CONTRACTS.ramsesV2Adapter,
|
|
179
193
|
taxSafe: true,
|
|
@@ -182,7 +196,7 @@ export const ROBINHOOD_ADAPTERS = [
|
|
|
182
196
|
|
|
183
197
|
/** Adapter indices currently eligible for Robinhood transfer-tax routes. */
|
|
184
198
|
export const ROBINHOOD_TAX_SAFE_ADAPTER_INDICES = [
|
|
185
|
-
0, 4, 7, 10, 11,
|
|
199
|
+
0, 4, 7, 10, 11, 13, 16, 18, 20,
|
|
186
200
|
] as const;
|
|
187
201
|
|
|
188
202
|
/** Current Robinhood transfer-tax-safe adapter metadata. */
|