@nexusmutual/sdk 0.2.1 → 0.2.2

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/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../generated/products.json","../generated/product-types.json","../generated/logos/types.ts","../src/swap/calculateExactNxmForEth.ts","../src/swap/calculateExactEthForNxm.ts","../src/swap/calculateNxmForExactEth.ts","../src/swap/calculateEthForExactNxm.ts","../src/swap/calculateSpotPrice.ts","../src/swap/calculatePriceImpactA.ts","../src/swap/calculatePriceImpactB.ts"],"sourcesContent":["// Re-export everything from the deployments package (e.g. `addresses` and `abis`)\nexport * from '@nexusmutual/deployments';\n\n// Export product data so it will be included in the bundle\nexport { default as products } from '../generated/products.json';\nexport { default as productTypes } from '../generated/product-types.json';\n\n// Export generated logo types\nexport * from '../generated/logos/types';\n\nexport * from './swap/index';\n","[\n {\n \"id\": 0,\n \"name\": \"0x v3\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"zerox.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 1,\n \"name\": \"1Inch (DEX & Liquidity Pools)\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"oneinch.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 2,\n \"name\": \"Aave v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"aavev2.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 3,\n \"name\": \"Abracadabra v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"abracadabra.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 4,\n \"name\": \"Alchemix v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"alchemix.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 5,\n \"name\": \"Anchor\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"anchor.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 6,\n \"name\": \"Angle v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"angle.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 7,\n \"name\": \"Argent\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"argent.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 8,\n \"name\": \"Aura v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"aura.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 9,\n \"name\": \"Babylon Finance\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"babylon.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 10,\n \"name\": \"BadgerDAO v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"badgerdao.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 11,\n \"name\": \"Balancer v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"balancer.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 12,\n \"name\": \"Bancor v2\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"bancor.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 13,\n \"name\": \"Bancor v3\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"bancor.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Liquidity provider (LP) losses as a result of previously disclosed design issues, which include but is not limited to accumulated LP losses due to BNT pairs without IL protection\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 14,\n \"name\": \"Beefy v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"beefy.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 15,\n \"name\": \"Binance\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"binance.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 16,\n \"name\": \"BlockFi\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"blockFi.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 17,\n \"name\": \"Bundle: Gelt + mStable + Aave v2 \",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"gelt.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 18,\n \"name\": \"Centrifuge Tinlake\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"centrifuge.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 19,\n \"name\": \"Coinbase\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"coinbase.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 20,\n \"name\": \"Compound v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"compoundv2.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 21,\n \"name\": \"Convex 3CRV (cvx3CRV)\",\n \"productType\": 2,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"convex.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"DAI\"\n ]\n },\n {\n \"id\": 22,\n \"name\": \"Convex Finance v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"convex.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 23,\n \"name\": \"Convex stethCrv (cvxstethCrv)\",\n \"productType\": 2,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"convex.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 24,\n \"name\": \"Crypto.com\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"crypto-com.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 25,\n \"name\": \"Curve 3pool LP (3Crv)\",\n \"productType\": 2,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"curve.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"DAI\"\n ]\n },\n {\n \"id\": 26,\n \"name\": \"Curve All Pools (incl staking)\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"curve.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 27,\n \"name\": \"Curve sETH LP (eCrv)\",\n \"productType\": 2,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"curve.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 28,\n \"name\": \"dydx Perpetual\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"dydx.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 29,\n \"name\": \"Ease v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"ease.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 30,\n \"name\": \"Enzyme v3\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"enzyme.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 31,\n \"name\": \"Enzyme v4\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"enzyme.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 32,\n \"name\": \"Eth 2.0 (deposit contract)\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"eth.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 33,\n \"name\": \"Euler\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"euler.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 34,\n \"name\": \"FODL v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"fodl.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 35,\n \"name\": \"FTX\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"ftx.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 36,\n \"name\": \"Gearbox v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"gearbox.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 37,\n \"name\": \"Gemini\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"gemini.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 38,\n \"name\": \"GMX v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"gmx.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Liquidity provider (LP) losses as a result of previously disclosed design issues, which include but is not limited to [accumulated LP losses due to zero-slippage design](https://www.coindesk.com/markets/2022/09/19/defi-trader-nets-over-500k-by-using-dex-gmx-to-manipulate-avalanche-token/)\",\n \"\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 39,\n \"name\": \"Goldfinch v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"goldfinch.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 40,\n \"name\": \"Hodlnaut\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"hodlnaut.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 41,\n \"name\": \"Kraken\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"kraken.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 42,\n \"name\": \"Ledn\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"ledn.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 43,\n \"name\": \"Liquid Collective\",\n \"productType\": 5,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"liquidcollective.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 44,\n \"name\": \"Liquity v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"liquity.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 45,\n \"name\": \"MakerDAO CDP\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"makerdao.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 46,\n \"name\": \"mStable\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"mstable.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 47,\n \"name\": \"Nested v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"nested.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 48,\n \"name\": \"Nexo\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"nexo.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 49,\n \"name\": \"Notional Finance v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"notional-finance.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 50,\n \"name\": \"OlympusDAO\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"olympusdao.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 51,\n \"name\": \"Opyn v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"opyn.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 52,\n \"name\": \"Origin OUSD\",\n \"productType\": 2,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"originusd.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"DAI\"\n ]\n },\n {\n \"id\": 53,\n \"name\": \"Pangolin v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"pangolin.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 54,\n \"name\": \"Perpetual Protocol v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"perpetual.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 55,\n \"name\": \"Pool Together v4\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"pooltogether.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 56,\n \"name\": \"Premia Finance\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"premia.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 57,\n \"name\": \"Rari Capital\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"rari.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 58,\n \"name\": \"Reflexer v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"reflexer.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 59,\n \"name\": \"Ribbon Finance v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"ribbon.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 60,\n \"name\": \"Safe (formerly, Gnosis Safe)\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"gnosis-safe.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 61,\n \"name\": \"Set Protocol\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"tokensets.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 62,\n \"name\": \"Set Protocol v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"tokensets.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 63,\n \"name\": \"Sherlock\",\n \"productType\": 4,\n \"isDeprecated\": true,\n \"useFixedPrice\": true,\n \"logo\": \"sherlock.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 64,\n \"name\": \"Stake DAO v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"stakedao.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 65,\n \"name\": \"Stakewise 3rd party (3 ETH/validator)\",\n \"productType\": 3,\n \"isDeprecated\": true,\n \"useFixedPrice\": true,\n \"logo\": \"stakewise.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 66,\n \"name\": \"Stakewise operated (3 ETH/validator)\",\n \"productType\": 3,\n \"isDeprecated\": true,\n \"useFixedPrice\": true,\n \"logo\": \"stakewise.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 67,\n \"name\": \"SushiSwap v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"sushiswap.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 68,\n \"name\": \"Synthetix\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"synthetix.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 69,\n \"name\": \"THORChain (Thorchain Network)\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"thorchain.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 70,\n \"name\": \"Trader Joe v2.1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"trader-joe.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 71,\n \"name\": \"Uniswap v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"uniswapv2.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 72,\n \"name\": \"Uniswap v3\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"uniswapv2.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 73,\n \"name\": \"Vector v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"vector.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 74,\n \"name\": \"Vesper v3\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"vesper.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 75,\n \"name\": \"Yearn Finance v2 (all vaults)\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"yearn.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 76,\n \"name\": \"Yearn yvUSDC v2\",\n \"productType\": 2,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"yearn.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"DAI\"\n ]\n },\n {\n \"id\": 77,\n \"name\": \"Yeti Finance v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"yeti.png\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 78,\n \"name\": \"Yield App\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"yield-app.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 79,\n \"name\": \"Alpaca Finance v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"alpaca.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 80,\n \"name\": \"WeFi v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"wefi.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 81,\n \"name\": \"Exactly v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"exactly.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 82,\n \"name\": \"EtherFi 5ETH\",\n \"productType\": 6,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"etherfi.png\",\n \"metadata\": {\n \"schedule\": \"QmNLoufTxAfmAsZfFPas2QJvgwmLVsY4mGyn9VK6cpF2e3\"\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 83,\n \"name\": \"Squeeth by Opyn (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"squeeth-by-opyn.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 84,\n \"name\": \"Rage Trade (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"rage-trade.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 85,\n \"name\": \"Sentiment (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"sentiment.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 86,\n \"name\": \"Lyra Newport (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"lyra.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 87,\n \"name\": \"Perennial (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"perennial.jpeg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 88,\n \"name\": \"LiquiFi (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"liquify.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 89,\n \"name\": \"Lyra Avalon (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"lyra.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 90,\n \"name\": \"Buffer Finance (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"buffer-finance.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 91,\n \"name\": \"Hook (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"hook.jpeg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 92,\n \"name\": \"Holyheld (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"holyheld.jpeg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 93,\n \"name\": \"Union Finance (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"union-finance.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 94,\n \"name\": \"OpenQ (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"openq.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 95,\n \"name\": \"Level Finance v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"level-finance.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 96,\n \"name\": \"Offramp.xyz v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"offramp.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 97,\n \"name\": \"Aave v3\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"aavev3.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 98,\n \"name\": \"Morpho v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"morpho.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 99,\n \"name\": \"Chorus One\",\n \"productType\": 6,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"chorusone.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 100,\n \"name\": \"Kiln\",\n \"productType\": 6,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"kiln.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 101,\n \"name\": \"Vertex (Native Protocol)\",\n \"productType\": 8,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"vertex.svg\",\n \"metadata\": {\n \"schedule\": \"QmX4HnfD4RToyBNSLocCqSxHcSzWBUDHDGxAtTvR2gsBmy\"\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 102,\n \"name\": \"The Retail Mutual\",\n \"productType\": 9,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"the-retail-mutual.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"DAI\"\n ]\n },\n {\n \"id\": 103,\n \"name\": \"Figment\",\n \"productType\": 6,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"figment.svg\",\n \"metadata\": {\n \"schedule\": \"QmaXutduGRq4gpZ7xKUHQeAHd67X8zMXuzXVTncxx2kJqk\"\n },\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 104,\n \"name\": \"Teller (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"teller.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 105,\n \"name\": \"Ajna (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"ajna.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 106,\n \"name\": \"EigenLayer v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"eigenlayer.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 107,\n \"name\": \"Vox Finance (UnoRe)\",\n \"productType\": 10,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"vox.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 108,\n \"name\": \"MahaLend (UnoRe)\",\n \"productType\": 10,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"mahalend.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 109,\n \"name\": \"SELF (UnoRe)\",\n \"productType\": 10,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"self.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 110,\n \"name\": \"Scallop (UnoRe)\",\n \"productType\": 10,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"scallop.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 111,\n \"name\": \"WeFi (UnoRe)\",\n \"productType\": 10,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"wefi.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 112,\n \"name\": \"ZkTsunami (UnoRe)\",\n \"productType\": 10,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"zktsunami.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 113,\n \"name\": \"Hats Protocol\",\n \"productType\": 8,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"hats.svg\",\n \"metadata\": {\n \"schedule\": \"QmQMLsH7rs4WoNkvdLSCmhHcAHynbHtHzPsPRY3SFdd98D\"\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 114,\n \"name\": \"MakerDAO DSR (sDAI)\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"makerdao-dsr.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"DAI\"\n ]\n },\n {\n \"id\": 115,\n \"name\": \"Spark Lending v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"spark-lending.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 116,\n \"name\": \"DefiEdge\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"defi-edge.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n }\n]","[\n {\n \"id\": 0,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmdunFJm4A5CUW1ynM7bevsGt6UzQfw6K4ysKqvsqpjWCQ\",\n \"name\": \"Protocol\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 1,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmYhCNjfrNTMq8eyg8i7LbBpTkMCHfix9Sv1jrPb7dYZKd\",\n \"name\": \"Custody\",\n \"gracePeriod\": 10368000,\n \"claimMethod\": 0\n },\n {\n \"id\": 2,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmcPdiLNZmBM8pjQcCzLhH8tjPuhphCVKZeP5P4SBiLx3h\",\n \"name\": \"Yield Token\",\n \"gracePeriod\": 1209600,\n \"claimMethod\": 1\n },\n {\n \"id\": 3,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmUTUfdfuZUjtPAiMZ4YRu77SaiyCov7jrSXTgeGeK8qt3\",\n \"name\": \"Sherlock Excess\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 4,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmPmwtwbyKnXBae1dmYD6jmgnewCeZGPMFGepkWMLWaiwC\",\n \"name\": \"Stakewise ETH Staking\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 5,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmUKhLi5ZahnzSxsMC9YQZbwwAKGhkHcoYqHUVgE31cXLe\",\n \"name\": \"Liquid Collective ETH Staking\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 6,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmWepFbtMYSzJt22ddF1CK9PwbrYgiLk9qJjryDrgpGuus\",\n \"name\": \"ETH Slashing\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 7,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmbQAsbisyGK6i1to4d85SqE2f2e98PsXHAuSzrprpsYe8\",\n \"name\": \"Sherlock Quota Share\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 8,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmRrKXV9RBNAB5E1ZEigWmvvT24FgrWNSZ8Yw1VNXR8E6Q\",\n \"name\": \"Native Protocol\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 9,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmQG8ooLgoQx2YdykwZEUYruoMZ7YP23LK9yiQbw9AGTZi\",\n \"name\": \"The Retail Mutual\",\n \"gracePeriod\": 36720000,\n \"claimMethod\": 0\n },\n {\n \"id\": 10,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmWXYjBYjdKoRw6kyUvp5gYKjj2ojPPVxNYKr1gDjMLssY\",\n \"name\": \"UnoRe Quota Share\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n }\n]","export type LogoFileName = 'zerox.svg' | 'oneinch.svg' | 'aavev2.svg' | 'abracadabra.svg' | 'alchemix.svg' | 'anchor.svg' | 'angle.svg' | 'argent.svg' | 'aura.svg' | 'babylon.svg' | 'badgerdao.svg' | 'balancer.svg' | 'bancor.svg' | 'bancor.svg' | 'beefy.svg' | 'binance.svg' | 'blockFi.svg' | 'gelt.svg' | 'centrifuge.svg' | 'coinbase.svg' | 'compoundv2.svg' | 'convex.svg' | 'convex.svg' | 'convex.svg' | 'crypto-com.svg' | 'curve.svg' | 'curve.svg' | 'curve.svg' | 'dydx.svg' | 'ease.svg' | 'enzyme.svg' | 'enzyme.svg' | 'eth.svg' | 'euler.svg' | 'fodl.svg' | 'ftx.svg' | 'gearbox.svg' | 'gemini.svg' | 'gmx.svg' | 'goldfinch.svg' | 'hodlnaut.svg' | 'kraken.svg' | 'ledn.svg' | 'liquidcollective.svg' | 'liquity.svg' | 'makerdao.svg' | 'mstable.svg' | 'nested.svg' | 'nexo.svg' | 'notional-finance.svg' | 'olympusdao.svg' | 'opyn.png' | 'originusd.svg' | 'pangolin.svg' | 'perpetual.svg' | 'pooltogether.svg' | 'premia.svg' | 'rari.svg' | 'reflexer.png' | 'ribbon.svg' | 'gnosis-safe.svg' | 'tokensets.svg' | 'tokensets.svg' | 'sherlock.svg' | 'stakedao.svg' | 'stakewise.svg' | 'stakewise.svg' | 'sushiswap.svg' | 'synthetix.svg' | 'thorchain.svg' | 'trader-joe.svg' | 'uniswapv2.svg' | 'uniswapv2.svg' | 'vector.svg' | 'vesper.svg' | 'yearn.svg' | 'yearn.svg' | 'yeti.png' | 'yield-app.svg' | 'alpaca.svg' | 'wefi.png' | 'exactly.svg' | 'etherfi.png' | 'squeeth-by-opyn.png' | 'rage-trade.svg' | 'sentiment.png' | 'lyra.svg' | 'perennial.jpeg' | 'liquify.svg' | 'lyra.svg' | 'buffer-finance.svg' | 'hook.jpeg' | 'holyheld.jpeg' | 'union-finance.svg' | 'openq.png' | 'level-finance.png' | 'offramp.png' | 'aavev3.svg' | 'morpho.svg' | 'chorusone.svg' | 'kiln.svg' | 'vertex.svg' | 'the-retail-mutual.png' | 'figment.svg' | 'teller.svg' | 'ajna.svg' | 'eigenlayer.png' | 'vox.png' | 'mahalend.svg' | 'self.svg' | 'scallop.svg' | 'wefi.png' | 'zktsunami.svg' | 'hats.svg' | 'makerdao-dsr.svg' | 'spark-lending.svg' | 'defi-edge.svg';\nexport const allLogoFileNames: LogoFileName[] = ['zerox.svg', 'oneinch.svg', 'aavev2.svg', 'abracadabra.svg', 'alchemix.svg', 'anchor.svg', 'angle.svg', 'argent.svg', 'aura.svg', 'babylon.svg', 'badgerdao.svg', 'balancer.svg', 'bancor.svg', 'bancor.svg', 'beefy.svg', 'binance.svg', 'blockFi.svg', 'gelt.svg', 'centrifuge.svg', 'coinbase.svg', 'compoundv2.svg', 'convex.svg', 'convex.svg', 'convex.svg', 'crypto-com.svg', 'curve.svg', 'curve.svg', 'curve.svg', 'dydx.svg', 'ease.svg', 'enzyme.svg', 'enzyme.svg', 'eth.svg', 'euler.svg', 'fodl.svg', 'ftx.svg', 'gearbox.svg', 'gemini.svg', 'gmx.svg', 'goldfinch.svg', 'hodlnaut.svg', 'kraken.svg', 'ledn.svg', 'liquidcollective.svg', 'liquity.svg', 'makerdao.svg', 'mstable.svg', 'nested.svg', 'nexo.svg', 'notional-finance.svg', 'olympusdao.svg', 'opyn.png', 'originusd.svg', 'pangolin.svg', 'perpetual.svg', 'pooltogether.svg', 'premia.svg', 'rari.svg', 'reflexer.png', 'ribbon.svg', 'gnosis-safe.svg', 'tokensets.svg', 'tokensets.svg', 'sherlock.svg', 'stakedao.svg', 'stakewise.svg', 'stakewise.svg', 'sushiswap.svg', 'synthetix.svg', 'thorchain.svg', 'trader-joe.svg', 'uniswapv2.svg', 'uniswapv2.svg', 'vector.svg', 'vesper.svg', 'yearn.svg', 'yearn.svg', 'yeti.png', 'yield-app.svg', 'alpaca.svg', 'wefi.png', 'exactly.svg', 'etherfi.png', 'squeeth-by-opyn.png', 'rage-trade.svg', 'sentiment.png', 'lyra.svg', 'perennial.jpeg', 'liquify.svg', 'lyra.svg', 'buffer-finance.svg', 'hook.jpeg', 'holyheld.jpeg', 'union-finance.svg', 'openq.png', 'level-finance.png', 'offramp.png', 'aavev3.svg', 'morpho.svg', 'chorusone.svg', 'kiln.svg', 'vertex.svg', 'the-retail-mutual.png', 'figment.svg', 'teller.svg', 'ajna.svg', 'eigenlayer.png', 'vox.png', 'mahalend.svg', 'self.svg', 'scallop.svg', 'wefi.png', 'zktsunami.svg', 'hats.svg', 'makerdao-dsr.svg', 'spark-lending.svg', 'defi-edge.svg'];\n","import { Reserves } from './reserves.type';\n\n/**\n * Calculates the amount of nxm flowing out of the pool for the given amount of eth flowing in\n */\n// suggestion: calculateNxmOutGivenEthIn\nexport const calculateExactNxmForEth = (ethIn: bigint, reserves: Reserves): bigint => {\n \n if(ethIn <= 0n) throw new Error('ETH in value must be greater than 0');\n \n // Calculate the constant product (k) for the market maker model\n const k = reserves.nxmA * reserves.ethReserve;\n\n // Simulate the swap and calculate the new reserves\n const ethReservesAfter = reserves.ethReserve + ethIn;\n const nxmReservesAfter = k / ethReservesAfter;\n\n // Calculate the amount of Nxm that will flow out of the pool\n const nxmOut = reserves.nxmA - nxmReservesAfter;\n\n if(nxmOut < 0n) throw new Error('Cannot swap this amount');\n\n return nxmOut;\n};\n","import { Reserves } from './reserves.type';\n\n/**\n * Calculates the amount of eth flowing out of the pool for the given amount of nxm flowing in\n */\n// suggestion: calculateEthOutGivenNxmIn\nexport const calculateExactEthForNxm = (nxmIn: bigint, reserves: Reserves): bigint => {\n\n if(nxmIn <= 0n) throw new Error('NXM in value must be greater than 0');\n\n // Calculate the constant product (k) for the market maker model\n const k = reserves.nxmB * reserves.ethReserve;\n\n // Simulate the swap and calculate the new reserves\n const nxmReservesAfter = reserves.nxmB + nxmIn;\n const ethReservesAfter = k / nxmReservesAfter;\n\n // Calculate the amount of Eth that will flow out of the pool\n const ethOut = reserves.ethReserve - ethReservesAfter;\n\n if(ethOut < 0n) throw new Error('Cannot swap this amount');\n\n return ethOut;\n};\n","import { Reserves } from './reserves.type';\n\n/**\n * Calculates the amount of nxm needed to flow into the pool to get the exact amount of eth out\n */\n// suggestion: calculateNxmInGivenEthOut\nexport const calculateNxmForExactEth = (ethOut: bigint, reserves: Reserves): bigint => {\n\n if(ethOut <= 0n || ethOut >= reserves.ethReserve) throw new Error('ETH out value must be greater than 0 and less than the reserves');\n\n // Calculate the constant product (k) for the market maker model\n const k = reserves.nxmB * reserves.ethReserve;\n\n // Simulate the swap and calculate the new reserves\n const ethReservesAfter = reserves.ethReserve - ethOut;\n const nxmReservesAfter = k / ethReservesAfter;\n\n // Calculate the amount of Nxm needed to flow into the pool to get the desired amount of eth\n const nxmIn = nxmReservesAfter - reserves.nxmB;\n\n return nxmIn;\n};\n","import { Reserves } from './reserves.type';\n\n/**\n * Calculates the amount of eth needed to flow into the pool to get the exact amount of nxm out\n */\n// suggestion: calculateEthInGivenNxmOut\nexport const calculateEthForExactNxm = (nxmOut: bigint, reserves: Reserves): bigint => {\n\n if(nxmOut <= 0n || nxmOut >= reserves.nxmA) throw new Error('NXM out value must be greater than 0 and less than the reserves');\n\n // Calculate the constant product (k) for the market maker model\n const k = reserves.nxmA * reserves.ethReserve;\n\n // Simulate the swap and calculate the new reserves\n const nxmReservesAfter = reserves.nxmA - nxmOut;\n const ethReservesAfter = k / nxmReservesAfter;\n\n // Calculate the amount of Nxm needed to flow into the pool to get the desired amount of eth\n const ethIn = ethReservesAfter - reserves.ethReserve;\n\n return ethIn;\n};\n","import { Reserves } from './reserves.type';\n\nexport const calculateSpotPrice = (reserves: Reserves) => {\n const oneEth = BigInt(1e18);\n return {\n spotPriceA: (oneEth * reserves.ethReserve) / reserves.nxmA,\n spotPriceB: (oneEth * reserves.ethReserve) / reserves.nxmB,\n };\n};\n","import { calculateExactNxmForEth } from \"./calculateExactNxmForEth\";\nimport { calculateSpotPrice } from \"./calculateSpotPrice\";\nimport { Reserves } from \"./reserves.type\";\n\n// Calculate the price impact when buying NXM with ETH\nexport const calculatePriceImpactA = (ethIn: bigint, reserves: Reserves) => {\n const { spotPriceA } = calculateSpotPrice(reserves);\n const nxmOut = calculateExactNxmForEth(ethIn, reserves);\n const nxmOutAtSpotPrice = BigInt(1e18) * ethIn / spotPriceA;\n\n // 100 - 100 * nxmOut / nxmOutAtSpot\n // using BigInt(1000000) to keep 4 decimals of precision\n return BigInt(1000000) - BigInt(1000000) * nxmOut / nxmOutAtSpotPrice;\n};\n","import { calculateExactEthForNxm } from './calculateExactEthForNxm';\nimport { calculateSpotPrice } from './calculateSpotPrice';\nimport { Reserves } from './reserves.type';\n\n// Calculate the price impact when selling NXM for ETH\nexport const calculatePriceImpactB = (nxmIn: bigint, reserves: Reserves) => {\n const { spotPriceB } = calculateSpotPrice(reserves);\n const ethOut = calculateExactEthForNxm(nxmIn, reserves);\n const ethOutAtSpotPrice = spotPriceB * nxmIn / BigInt(1e18);\n\n // 100 - 100 * ethOut / ethOutAtSpot\n // using BigInt(1000000) to keep 4 decimals of precision\n return BigInt(1000000) - BigInt(1000000) * ethOut / ethOutAtSpotPrice;\n};\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/index.ts","../generated/products.json","../generated/product-types.json","../generated/logos/types.ts","../src/swap/calculateExactNxmForEth.ts","../src/swap/calculateExactEthForNxm.ts","../src/swap/calculateNxmForExactEth.ts","../src/swap/calculateEthForExactNxm.ts","../src/swap/calculateSpotPrice.ts","../src/swap/calculatePriceImpactA.ts","../src/swap/calculatePriceImpactB.ts"],"sourcesContent":["// Re-export everything from the deployments package (e.g. `addresses` and `abis`)\nexport * from '@nexusmutual/deployments';\n\n// Export product data so it will be included in the bundle\nexport { default as products } from '../generated/products.json';\nexport { default as productTypes } from '../generated/product-types.json';\n\n// Export generated logo types\nexport * from '../generated/logos/types';\n\nexport * from './swap/index';\n","[\n {\n \"id\": 0,\n \"name\": \"0x v3\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"zerox.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 1,\n \"name\": \"1Inch (DEX & Liquidity Pools)\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"oneinch.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 2,\n \"name\": \"Aave v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"aavev2.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 3,\n \"name\": \"Abracadabra v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"abracadabra.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 4,\n \"name\": \"Alchemix v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"alchemix.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 5,\n \"name\": \"Anchor\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"anchor.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 6,\n \"name\": \"Angle v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"angle.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 7,\n \"name\": \"Argent\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"argent.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 8,\n \"name\": \"Aura v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"aura.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 9,\n \"name\": \"Babylon Finance\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"babylon.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 10,\n \"name\": \"BadgerDAO v1\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"badgerdao.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 11,\n \"name\": \"Balancer v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"balancer.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 12,\n \"name\": \"Bancor v2\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"bancor.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 13,\n \"name\": \"Bancor v3\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"bancor.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Liquidity provider (LP) losses as a result of previously disclosed design issues, which include but is not limited to accumulated LP losses due to BNT pairs without IL protection\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 14,\n \"name\": \"Beefy v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"beefy.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 15,\n \"name\": \"Binance\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"binance.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 16,\n \"name\": \"BlockFi\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"blockFi.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 17,\n \"name\": \"Bundle: Gelt + mStable + Aave v2 \",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"gelt.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 18,\n \"name\": \"Centrifuge Tinlake\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"centrifuge.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 19,\n \"name\": \"Coinbase\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"coinbase.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 20,\n \"name\": \"Compound v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"compoundv2.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 21,\n \"name\": \"Convex 3CRV (cvx3CRV)\",\n \"productType\": 2,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"convex.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"DAI\"\n ]\n },\n {\n \"id\": 22,\n \"name\": \"Convex Finance v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"convex.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 23,\n \"name\": \"Convex stethCrv (cvxstethCrv)\",\n \"productType\": 2,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"convex.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 24,\n \"name\": \"Crypto.com\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"crypto-com.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 25,\n \"name\": \"Curve 3pool LP (3Crv)\",\n \"productType\": 2,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"curve.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"DAI\"\n ]\n },\n {\n \"id\": 26,\n \"name\": \"Curve All Pools (incl staking)\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"curve.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 27,\n \"name\": \"Curve sETH LP (eCrv)\",\n \"productType\": 2,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"curve.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 28,\n \"name\": \"dydx v3 (EVM)\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"dydx.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 29,\n \"name\": \"Ease v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"ease.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 30,\n \"name\": \"Enzyme v3\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"enzyme.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 31,\n \"name\": \"Enzyme v4\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"enzyme.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 32,\n \"name\": \"Eth 2.0 (deposit contract)\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"eth.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 33,\n \"name\": \"Euler\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"euler.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 34,\n \"name\": \"FODL v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"fodl.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 35,\n \"name\": \"FTX\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"ftx.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 36,\n \"name\": \"Gearbox v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"gearbox.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 37,\n \"name\": \"Gemini\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"gemini.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 38,\n \"name\": \"GMX v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"gmx.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Liquidity provider (LP) losses as a result of previously disclosed design issues, which include but is not limited to [accumulated LP losses due to zero-slippage design](https://www.coindesk.com/markets/2022/09/19/defi-trader-nets-over-500k-by-using-dex-gmx-to-manipulate-avalanche-token/)\",\n \"\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 39,\n \"name\": \"Goldfinch v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"goldfinch.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 40,\n \"name\": \"Hodlnaut\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"hodlnaut.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 41,\n \"name\": \"Kraken\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"kraken.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 42,\n \"name\": \"Ledn\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"ledn.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 43,\n \"name\": \"Liquid Collective\",\n \"productType\": 5,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"liquidcollective.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 44,\n \"name\": \"Liquity v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"liquity.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 45,\n \"name\": \"MakerDAO CDP\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"makerdao.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 46,\n \"name\": \"mStable\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"mstable.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 47,\n \"name\": \"Nested v1\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"nested.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 48,\n \"name\": \"Nexo\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"nexo.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 49,\n \"name\": \"Notional Finance v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"notional-finance.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 50,\n \"name\": \"OlympusDAO\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"olympusdao.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 51,\n \"name\": \"Opyn v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"opyn.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 52,\n \"name\": \"Origin OUSD\",\n \"productType\": 2,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"originusd.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"DAI\"\n ]\n },\n {\n \"id\": 53,\n \"name\": \"Pangolin v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"pangolin.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 54,\n \"name\": \"Perpetual Protocol v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"perpetual.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 55,\n \"name\": \"Pool Together v4\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"pooltogether.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 56,\n \"name\": \"Premia Finance\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"premia.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 57,\n \"name\": \"Rari Capital\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"rari.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 58,\n \"name\": \"Reflexer v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"reflexer.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 59,\n \"name\": \"Aevo\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"ribbon.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 60,\n \"name\": \"Safe (formerly, Gnosis Safe)\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"gnosis-safe.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 61,\n \"name\": \"Set Protocol\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"tokensets.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 62,\n \"name\": \"Set Protocol v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"tokensets.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 63,\n \"name\": \"Sherlock\",\n \"productType\": 4,\n \"isDeprecated\": true,\n \"useFixedPrice\": true,\n \"logo\": \"sherlock.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 64,\n \"name\": \"Stake DAO v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"stakedao.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 65,\n \"name\": \"Stakewise 3rd party (3 ETH/validator)\",\n \"productType\": 3,\n \"isDeprecated\": true,\n \"useFixedPrice\": true,\n \"logo\": \"stakewise.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 66,\n \"name\": \"Stakewise operated (3 ETH/validator)\",\n \"productType\": 3,\n \"isDeprecated\": true,\n \"useFixedPrice\": true,\n \"logo\": \"stakewise.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 67,\n \"name\": \"SushiSwap v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"sushiswap.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 68,\n \"name\": \"Synthetix\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"synthetix.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 69,\n \"name\": \"THORChain (Thorchain Network)\",\n \"productType\": 0,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"thorchain.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 70,\n \"name\": \"Trader Joe v2.1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"trader-joe.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 71,\n \"name\": \"Uniswap v2\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"uniswapv2.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 72,\n \"name\": \"Uniswap v3\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"uniswapv2.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 73,\n \"name\": \"Vector v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"vector.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 74,\n \"name\": \"Vesper v3\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"vesper.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 75,\n \"name\": \"Yearn Finance v2 (all vaults)\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"yearn.svg\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 76,\n \"name\": \"Yearn yvUSDC v2\",\n \"productType\": 2,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"yearn.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"DAI\"\n ]\n },\n {\n \"id\": 77,\n \"name\": \"Yeti Finance v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"yeti.png\",\n \"metadata\": {\n \"exclusions\": [\n \"Losses due to a compromised wallet\",\n \"Losses due to a previously disclosed vulnerability\",\n \"Losses that occur outside the designated protocol, such as a separate protocol used in an underlying yield aggregation strategy\"\n ]\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 78,\n \"name\": \"Yield App\",\n \"productType\": 1,\n \"isDeprecated\": true,\n \"useFixedPrice\": false,\n \"logo\": \"yield-app.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 79,\n \"name\": \"Alpaca Finance v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"alpaca.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 80,\n \"name\": \"WeFi v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"wefi.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 81,\n \"name\": \"Exactly v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"exactly.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 82,\n \"name\": \"EtherFi 5ETH\",\n \"productType\": 6,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"etherfi.png\",\n \"metadata\": {\n \"schedule\": \"QmNLoufTxAfmAsZfFPas2QJvgwmLVsY4mGyn9VK6cpF2e3\"\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 83,\n \"name\": \"Squeeth by Opyn (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"squeeth-by-opyn.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 84,\n \"name\": \"Rage Trade (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"rage-trade.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 85,\n \"name\": \"Sentiment (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"sentiment.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 86,\n \"name\": \"Lyra Newport (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"lyra.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 87,\n \"name\": \"Perennial (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"perennial.jpeg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 88,\n \"name\": \"LiquiFi (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"liquify.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 89,\n \"name\": \"Lyra Avalon (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"lyra.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 90,\n \"name\": \"Buffer Finance (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"buffer-finance.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 91,\n \"name\": \"Hook (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"hook.jpeg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 92,\n \"name\": \"Holyheld (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"holyheld.jpeg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 93,\n \"name\": \"Union Finance (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"union-finance.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 94,\n \"name\": \"OpenQ (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"openq.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 95,\n \"name\": \"Level Finance v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"level-finance.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 96,\n \"name\": \"Offramp.xyz v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"offramp.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 97,\n \"name\": \"Aave v3\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"aavev3.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 98,\n \"name\": \"Morpho Optimisers v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"morpho.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 99,\n \"name\": \"Chorus One\",\n \"productType\": 6,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"chorusone.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 100,\n \"name\": \"Kiln\",\n \"productType\": 6,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"kiln.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 101,\n \"name\": \"Vertex (Native Protocol)\",\n \"productType\": 8,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"vertex.svg\",\n \"metadata\": {\n \"schedule\": \"QmX4HnfD4RToyBNSLocCqSxHcSzWBUDHDGxAtTvR2gsBmy\"\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 102,\n \"name\": \"The Retail Mutual\",\n \"productType\": 9,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"the-retail-mutual.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"DAI\"\n ]\n },\n {\n \"id\": 103,\n \"name\": \"Figment\",\n \"productType\": 6,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"figment.svg\",\n \"metadata\": {\n \"schedule\": \"QmaXutduGRq4gpZ7xKUHQeAHd67X8zMXuzXVTncxx2kJqk\"\n },\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 104,\n \"name\": \"Teller (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"teller.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 105,\n \"name\": \"Ajna (Sherlock)\",\n \"productType\": 7,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"ajna.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 106,\n \"name\": \"EigenLayer v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"eigenlayer.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 107,\n \"name\": \"Vox Finance (UnoRe)\",\n \"productType\": 10,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"vox.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 108,\n \"name\": \"MahaLend (UnoRe)\",\n \"productType\": 10,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"mahalend.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 109,\n \"name\": \"SELF (UnoRe)\",\n \"productType\": 10,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"self.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 110,\n \"name\": \"Scallop (UnoRe)\",\n \"productType\": 10,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"scallop.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 111,\n \"name\": \"WeFi (UnoRe)\",\n \"productType\": 10,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"wefi.png\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 112,\n \"name\": \"ZkTsunami (UnoRe)\",\n \"productType\": 10,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"zktsunami.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 113,\n \"name\": \"Hats Protocol\",\n \"productType\": 8,\n \"isDeprecated\": false,\n \"useFixedPrice\": true,\n \"logo\": \"hats.svg\",\n \"metadata\": {\n \"schedule\": \"QmQMLsH7rs4WoNkvdLSCmhHcAHynbHtHzPsPRY3SFdd98D\"\n },\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 114,\n \"name\": \"MakerDAO DSR (sDAI)\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"makerdao-dsr.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"DAI\"\n ]\n },\n {\n \"id\": 115,\n \"name\": \"Spark Lending v1\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"spark-lending.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 116,\n \"name\": \"DefiEdge\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"defi-edge.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\",\n \"DAI\"\n ]\n },\n {\n \"id\": 117,\n \"name\": \"Stakewise v3\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"stakewisev3.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n },\n {\n \"id\": 118,\n \"name\": \"Compound v3\",\n \"productType\": 0,\n \"isDeprecated\": false,\n \"useFixedPrice\": false,\n \"logo\": \"compoundv3.svg\",\n \"metadata\": {},\n \"coverAssets\": [\n \"ETH\"\n ]\n }\n]","[\n {\n \"id\": 0,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmdunFJm4A5CUW1ynM7bevsGt6UzQfw6K4ysKqvsqpjWCQ\",\n \"name\": \"Protocol\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 1,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmYhCNjfrNTMq8eyg8i7LbBpTkMCHfix9Sv1jrPb7dYZKd\",\n \"name\": \"Custody\",\n \"gracePeriod\": 10368000,\n \"claimMethod\": 0\n },\n {\n \"id\": 2,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmcPdiLNZmBM8pjQcCzLhH8tjPuhphCVKZeP5P4SBiLx3h\",\n \"name\": \"Yield Token\",\n \"gracePeriod\": 1209600,\n \"claimMethod\": 1\n },\n {\n \"id\": 3,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmUTUfdfuZUjtPAiMZ4YRu77SaiyCov7jrSXTgeGeK8qt3\",\n \"name\": \"Sherlock Excess\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 4,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmPmwtwbyKnXBae1dmYD6jmgnewCeZGPMFGepkWMLWaiwC\",\n \"name\": \"Stakewise ETH Staking\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 5,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmUKhLi5ZahnzSxsMC9YQZbwwAKGhkHcoYqHUVgE31cXLe\",\n \"name\": \"Liquid Collective ETH Staking\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 6,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmWepFbtMYSzJt22ddF1CK9PwbrYgiLk9qJjryDrgpGuus\",\n \"name\": \"ETH Slashing\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 7,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmbQAsbisyGK6i1to4d85SqE2f2e98PsXHAuSzrprpsYe8\",\n \"name\": \"Sherlock Quota Share\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 8,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmRrKXV9RBNAB5E1ZEigWmvvT24FgrWNSZ8Yw1VNXR8E6Q\",\n \"name\": \"Native Protocol\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n },\n {\n \"id\": 9,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmQG8ooLgoQx2YdykwZEUYruoMZ7YP23LK9yiQbw9AGTZi\",\n \"name\": \"The Retail Mutual\",\n \"gracePeriod\": 36720000,\n \"claimMethod\": 0\n },\n {\n \"id\": 10,\n \"coverWordingURL\": \"https://api.nexusmutual.io/ipfs/QmWXYjBYjdKoRw6kyUvp5gYKjj2ojPPVxNYKr1gDjMLssY\",\n \"name\": \"UnoRe Quota Share\",\n \"gracePeriod\": 3024000,\n \"claimMethod\": 0\n }\n]","export type LogoFileName = 'zerox.svg' | 'oneinch.svg' | 'aavev2.svg' | 'abracadabra.svg' | 'alchemix.svg' | 'anchor.svg' | 'angle.svg' | 'argent.svg' | 'aura.svg' | 'babylon.svg' | 'badgerdao.svg' | 'balancer.svg' | 'bancor.svg' | 'bancor.svg' | 'beefy.svg' | 'binance.svg' | 'blockFi.svg' | 'gelt.svg' | 'centrifuge.svg' | 'coinbase.svg' | 'compoundv2.svg' | 'convex.svg' | 'convex.svg' | 'convex.svg' | 'crypto-com.svg' | 'curve.svg' | 'curve.svg' | 'curve.svg' | 'dydx.svg' | 'ease.svg' | 'enzyme.svg' | 'enzyme.svg' | 'eth.svg' | 'euler.svg' | 'fodl.svg' | 'ftx.svg' | 'gearbox.svg' | 'gemini.svg' | 'gmx.svg' | 'goldfinch.svg' | 'hodlnaut.svg' | 'kraken.svg' | 'ledn.svg' | 'liquidcollective.svg' | 'liquity.svg' | 'makerdao.svg' | 'mstable.svg' | 'nested.svg' | 'nexo.svg' | 'notional-finance.svg' | 'olympusdao.svg' | 'opyn.png' | 'originusd.svg' | 'pangolin.svg' | 'perpetual.svg' | 'pooltogether.svg' | 'premia.svg' | 'rari.svg' | 'reflexer.png' | 'ribbon.svg' | 'gnosis-safe.svg' | 'tokensets.svg' | 'tokensets.svg' | 'sherlock.svg' | 'stakedao.svg' | 'stakewise.svg' | 'stakewise.svg' | 'sushiswap.svg' | 'synthetix.svg' | 'thorchain.svg' | 'trader-joe.svg' | 'uniswapv2.svg' | 'uniswapv2.svg' | 'vector.svg' | 'vesper.svg' | 'yearn.svg' | 'yearn.svg' | 'yeti.png' | 'yield-app.svg' | 'alpaca.svg' | 'wefi.png' | 'exactly.svg' | 'etherfi.png' | 'squeeth-by-opyn.png' | 'rage-trade.svg' | 'sentiment.png' | 'lyra.svg' | 'perennial.jpeg' | 'liquify.svg' | 'lyra.svg' | 'buffer-finance.svg' | 'hook.jpeg' | 'holyheld.jpeg' | 'union-finance.svg' | 'openq.png' | 'level-finance.png' | 'offramp.png' | 'aavev3.svg' | 'morpho.svg' | 'chorusone.svg' | 'kiln.svg' | 'vertex.svg' | 'the-retail-mutual.png' | 'figment.svg' | 'teller.svg' | 'ajna.svg' | 'eigenlayer.png' | 'vox.png' | 'mahalend.svg' | 'self.svg' | 'scallop.svg' | 'wefi.png' | 'zktsunami.svg' | 'hats.svg' | 'makerdao-dsr.svg' | 'spark-lending.svg' | 'defi-edge.svg' | 'stakewisev3.svg' | 'compoundv3.svg';\nexport const allLogoFileNames: LogoFileName[] = ['zerox.svg', 'oneinch.svg', 'aavev2.svg', 'abracadabra.svg', 'alchemix.svg', 'anchor.svg', 'angle.svg', 'argent.svg', 'aura.svg', 'babylon.svg', 'badgerdao.svg', 'balancer.svg', 'bancor.svg', 'bancor.svg', 'beefy.svg', 'binance.svg', 'blockFi.svg', 'gelt.svg', 'centrifuge.svg', 'coinbase.svg', 'compoundv2.svg', 'convex.svg', 'convex.svg', 'convex.svg', 'crypto-com.svg', 'curve.svg', 'curve.svg', 'curve.svg', 'dydx.svg', 'ease.svg', 'enzyme.svg', 'enzyme.svg', 'eth.svg', 'euler.svg', 'fodl.svg', 'ftx.svg', 'gearbox.svg', 'gemini.svg', 'gmx.svg', 'goldfinch.svg', 'hodlnaut.svg', 'kraken.svg', 'ledn.svg', 'liquidcollective.svg', 'liquity.svg', 'makerdao.svg', 'mstable.svg', 'nested.svg', 'nexo.svg', 'notional-finance.svg', 'olympusdao.svg', 'opyn.png', 'originusd.svg', 'pangolin.svg', 'perpetual.svg', 'pooltogether.svg', 'premia.svg', 'rari.svg', 'reflexer.png', 'ribbon.svg', 'gnosis-safe.svg', 'tokensets.svg', 'tokensets.svg', 'sherlock.svg', 'stakedao.svg', 'stakewise.svg', 'stakewise.svg', 'sushiswap.svg', 'synthetix.svg', 'thorchain.svg', 'trader-joe.svg', 'uniswapv2.svg', 'uniswapv2.svg', 'vector.svg', 'vesper.svg', 'yearn.svg', 'yearn.svg', 'yeti.png', 'yield-app.svg', 'alpaca.svg', 'wefi.png', 'exactly.svg', 'etherfi.png', 'squeeth-by-opyn.png', 'rage-trade.svg', 'sentiment.png', 'lyra.svg', 'perennial.jpeg', 'liquify.svg', 'lyra.svg', 'buffer-finance.svg', 'hook.jpeg', 'holyheld.jpeg', 'union-finance.svg', 'openq.png', 'level-finance.png', 'offramp.png', 'aavev3.svg', 'morpho.svg', 'chorusone.svg', 'kiln.svg', 'vertex.svg', 'the-retail-mutual.png', 'figment.svg', 'teller.svg', 'ajna.svg', 'eigenlayer.png', 'vox.png', 'mahalend.svg', 'self.svg', 'scallop.svg', 'wefi.png', 'zktsunami.svg', 'hats.svg', 'makerdao-dsr.svg', 'spark-lending.svg', 'defi-edge.svg', 'stakewisev3.svg', 'compoundv3.svg'];\n","import { Reserves } from './reserves.type';\n\n/**\n * Calculates the amount of nxm flowing out of the pool for the given amount of eth flowing in\n */\n// suggestion: calculateNxmOutGivenEthIn\nexport const calculateExactNxmForEth = (ethIn: bigint, reserves: Reserves): bigint => {\n \n if(ethIn <= 0n) throw new Error('ETH in value must be greater than 0');\n \n // Calculate the constant product (k) for the market maker model\n const k = reserves.nxmA * reserves.ethReserve;\n\n // Simulate the swap and calculate the new reserves\n const ethReservesAfter = reserves.ethReserve + ethIn;\n const nxmReservesAfter = k / ethReservesAfter;\n\n // Calculate the amount of Nxm that will flow out of the pool\n const nxmOut = reserves.nxmA - nxmReservesAfter;\n\n if(nxmOut < 0n) throw new Error('Cannot swap this amount');\n\n return nxmOut;\n};\n","import { Reserves } from './reserves.type';\n\n/**\n * Calculates the amount of eth flowing out of the pool for the given amount of nxm flowing in\n */\n// suggestion: calculateEthOutGivenNxmIn\nexport const calculateExactEthForNxm = (nxmIn: bigint, reserves: Reserves): bigint => {\n\n if(nxmIn <= 0n) throw new Error('NXM in value must be greater than 0');\n\n // Calculate the constant product (k) for the market maker model\n const k = reserves.nxmB * reserves.ethReserve;\n\n // Simulate the swap and calculate the new reserves\n const nxmReservesAfter = reserves.nxmB + nxmIn;\n const ethReservesAfter = k / nxmReservesAfter;\n\n // Calculate the amount of Eth that will flow out of the pool\n const ethOut = reserves.ethReserve - ethReservesAfter;\n\n if(ethOut < 0n) throw new Error('Cannot swap this amount');\n\n return ethOut;\n};\n","import { Reserves } from './reserves.type';\n\n/**\n * Calculates the amount of nxm needed to flow into the pool to get the exact amount of eth out\n */\n// suggestion: calculateNxmInGivenEthOut\nexport const calculateNxmForExactEth = (ethOut: bigint, reserves: Reserves): bigint => {\n\n if(ethOut <= 0n || ethOut >= reserves.ethReserve) throw new Error('ETH out value must be greater than 0 and less than the reserves');\n\n // Calculate the constant product (k) for the market maker model\n const k = reserves.nxmB * reserves.ethReserve;\n\n // Simulate the swap and calculate the new reserves\n const ethReservesAfter = reserves.ethReserve - ethOut;\n const nxmReservesAfter = k / ethReservesAfter;\n\n // Calculate the amount of Nxm needed to flow into the pool to get the desired amount of eth\n const nxmIn = nxmReservesAfter - reserves.nxmB;\n\n return nxmIn;\n};\n","import { Reserves } from './reserves.type';\n\n/**\n * Calculates the amount of eth needed to flow into the pool to get the exact amount of nxm out\n */\n// suggestion: calculateEthInGivenNxmOut\nexport const calculateEthForExactNxm = (nxmOut: bigint, reserves: Reserves): bigint => {\n\n if(nxmOut <= 0n || nxmOut >= reserves.nxmA) throw new Error('NXM out value must be greater than 0 and less than the reserves');\n\n // Calculate the constant product (k) for the market maker model\n const k = reserves.nxmA * reserves.ethReserve;\n\n // Simulate the swap and calculate the new reserves\n const nxmReservesAfter = reserves.nxmA - nxmOut;\n const ethReservesAfter = k / nxmReservesAfter;\n\n // Calculate the amount of Nxm needed to flow into the pool to get the desired amount of eth\n const ethIn = ethReservesAfter - reserves.ethReserve;\n\n return ethIn;\n};\n","import { Reserves } from './reserves.type';\n\nexport const calculateSpotPrice = (reserves: Reserves) => {\n const oneEth = BigInt(1e18);\n return {\n spotPriceA: (oneEth * reserves.ethReserve) / reserves.nxmA,\n spotPriceB: (oneEth * reserves.ethReserve) / reserves.nxmB,\n };\n};\n","import { calculateExactNxmForEth } from \"./calculateExactNxmForEth\";\nimport { calculateSpotPrice } from \"./calculateSpotPrice\";\nimport { Reserves } from \"./reserves.type\";\n\n// Calculate the price impact when buying NXM with ETH\nexport const calculatePriceImpactA = (ethIn: bigint, reserves: Reserves) => {\n const { spotPriceA } = calculateSpotPrice(reserves);\n const nxmOut = calculateExactNxmForEth(ethIn, reserves);\n const nxmOutAtSpotPrice = BigInt(1e18) * ethIn / spotPriceA;\n\n // 100 - 100 * nxmOut / nxmOutAtSpot\n // using BigInt(1000000) to keep 4 decimals of precision\n return BigInt(1000000) - BigInt(1000000) * nxmOut / nxmOutAtSpotPrice;\n};\n","import { calculateExactEthForNxm } from './calculateExactEthForNxm';\nimport { calculateSpotPrice } from './calculateSpotPrice';\nimport { Reserves } from './reserves.type';\n\n// Calculate the price impact when selling NXM for ETH\nexport const calculatePriceImpactB = (nxmIn: bigint, reserves: Reserves) => {\n const { spotPriceB } = calculateSpotPrice(reserves);\n const ethOut = calculateExactEthForNxm(nxmIn, reserves);\n const ethOutAtSpotPrice = spotPriceB * nxmIn / BigInt(1e18);\n\n // 100 - 100 * ethOut / ethOutAtSpot\n // using BigInt(1000000) to keep 4 decimals of precision\n return BigInt(1000000) - BigInt(1000000) * ethOut / ethOutAtSpotPrice;\n};\n"],"mappings":"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","names":[]}
package/dist/index.mjs CHANGED
@@ -149,7 +149,7 @@ var products_default = [
149
149
  id: 10,
150
150
  name: "BadgerDAO v1",
151
151
  productType: 0,
152
- isDeprecated: false,
152
+ isDeprecated: true,
153
153
  useFixedPrice: false,
154
154
  logo: "badgerdao.svg",
155
155
  metadata: {},
@@ -395,7 +395,7 @@ var products_default = [
395
395
  },
396
396
  {
397
397
  id: 28,
398
- name: "dydx Perpetual",
398
+ name: "dydx v3 (EVM)",
399
399
  productType: 0,
400
400
  isDeprecated: false,
401
401
  useFixedPrice: false,
@@ -423,7 +423,7 @@ var products_default = [
423
423
  id: 30,
424
424
  name: "Enzyme v3",
425
425
  productType: 0,
426
- isDeprecated: false,
426
+ isDeprecated: true,
427
427
  useFixedPrice: false,
428
428
  logo: "enzyme.svg",
429
429
  metadata: {},
@@ -673,7 +673,7 @@ var products_default = [
673
673
  id: 47,
674
674
  name: "Nested v1",
675
675
  productType: 0,
676
- isDeprecated: false,
676
+ isDeprecated: true,
677
677
  useFixedPrice: false,
678
678
  logo: "nested.svg",
679
679
  metadata: {
@@ -844,7 +844,7 @@ var products_default = [
844
844
  },
845
845
  {
846
846
  id: 59,
847
- name: "Ribbon Finance v2",
847
+ name: "Aevo",
848
848
  productType: 0,
849
849
  isDeprecated: false,
850
850
  useFixedPrice: false,
@@ -1380,7 +1380,7 @@ var products_default = [
1380
1380
  },
1381
1381
  {
1382
1382
  id: 98,
1383
- name: "Morpho v1",
1383
+ name: "Morpho Optimisers v1",
1384
1384
  productType: 0,
1385
1385
  isDeprecated: false,
1386
1386
  useFixedPrice: false,
@@ -1625,6 +1625,30 @@ var products_default = [
1625
1625
  "ETH",
1626
1626
  "DAI"
1627
1627
  ]
1628
+ },
1629
+ {
1630
+ id: 117,
1631
+ name: "Stakewise v3",
1632
+ productType: 0,
1633
+ isDeprecated: false,
1634
+ useFixedPrice: false,
1635
+ logo: "stakewisev3.svg",
1636
+ metadata: {},
1637
+ coverAssets: [
1638
+ "ETH"
1639
+ ]
1640
+ },
1641
+ {
1642
+ id: 118,
1643
+ name: "Compound v3",
1644
+ productType: 0,
1645
+ isDeprecated: false,
1646
+ useFixedPrice: false,
1647
+ logo: "compoundv3.svg",
1648
+ metadata: {},
1649
+ coverAssets: [
1650
+ "ETH"
1651
+ ]
1628
1652
  }
1629
1653
  ];
1630
1654
 
@@ -1710,7 +1734,7 @@ var product_types_default = [
1710
1734
  ];
1711
1735
 
1712
1736
  // generated/logos/types.ts
1713
- var allLogoFileNames = ["zerox.svg", "oneinch.svg", "aavev2.svg", "abracadabra.svg", "alchemix.svg", "anchor.svg", "angle.svg", "argent.svg", "aura.svg", "babylon.svg", "badgerdao.svg", "balancer.svg", "bancor.svg", "bancor.svg", "beefy.svg", "binance.svg", "blockFi.svg", "gelt.svg", "centrifuge.svg", "coinbase.svg", "compoundv2.svg", "convex.svg", "convex.svg", "convex.svg", "crypto-com.svg", "curve.svg", "curve.svg", "curve.svg", "dydx.svg", "ease.svg", "enzyme.svg", "enzyme.svg", "eth.svg", "euler.svg", "fodl.svg", "ftx.svg", "gearbox.svg", "gemini.svg", "gmx.svg", "goldfinch.svg", "hodlnaut.svg", "kraken.svg", "ledn.svg", "liquidcollective.svg", "liquity.svg", "makerdao.svg", "mstable.svg", "nested.svg", "nexo.svg", "notional-finance.svg", "olympusdao.svg", "opyn.png", "originusd.svg", "pangolin.svg", "perpetual.svg", "pooltogether.svg", "premia.svg", "rari.svg", "reflexer.png", "ribbon.svg", "gnosis-safe.svg", "tokensets.svg", "tokensets.svg", "sherlock.svg", "stakedao.svg", "stakewise.svg", "stakewise.svg", "sushiswap.svg", "synthetix.svg", "thorchain.svg", "trader-joe.svg", "uniswapv2.svg", "uniswapv2.svg", "vector.svg", "vesper.svg", "yearn.svg", "yearn.svg", "yeti.png", "yield-app.svg", "alpaca.svg", "wefi.png", "exactly.svg", "etherfi.png", "squeeth-by-opyn.png", "rage-trade.svg", "sentiment.png", "lyra.svg", "perennial.jpeg", "liquify.svg", "lyra.svg", "buffer-finance.svg", "hook.jpeg", "holyheld.jpeg", "union-finance.svg", "openq.png", "level-finance.png", "offramp.png", "aavev3.svg", "morpho.svg", "chorusone.svg", "kiln.svg", "vertex.svg", "the-retail-mutual.png", "figment.svg", "teller.svg", "ajna.svg", "eigenlayer.png", "vox.png", "mahalend.svg", "self.svg", "scallop.svg", "wefi.png", "zktsunami.svg", "hats.svg", "makerdao-dsr.svg", "spark-lending.svg", "defi-edge.svg"];
1737
+ var allLogoFileNames = ["zerox.svg", "oneinch.svg", "aavev2.svg", "abracadabra.svg", "alchemix.svg", "anchor.svg", "angle.svg", "argent.svg", "aura.svg", "babylon.svg", "badgerdao.svg", "balancer.svg", "bancor.svg", "bancor.svg", "beefy.svg", "binance.svg", "blockFi.svg", "gelt.svg", "centrifuge.svg", "coinbase.svg", "compoundv2.svg", "convex.svg", "convex.svg", "convex.svg", "crypto-com.svg", "curve.svg", "curve.svg", "curve.svg", "dydx.svg", "ease.svg", "enzyme.svg", "enzyme.svg", "eth.svg", "euler.svg", "fodl.svg", "ftx.svg", "gearbox.svg", "gemini.svg", "gmx.svg", "goldfinch.svg", "hodlnaut.svg", "kraken.svg", "ledn.svg", "liquidcollective.svg", "liquity.svg", "makerdao.svg", "mstable.svg", "nested.svg", "nexo.svg", "notional-finance.svg", "olympusdao.svg", "opyn.png", "originusd.svg", "pangolin.svg", "perpetual.svg", "pooltogether.svg", "premia.svg", "rari.svg", "reflexer.png", "ribbon.svg", "gnosis-safe.svg", "tokensets.svg", "tokensets.svg", "sherlock.svg", "stakedao.svg", "stakewise.svg", "stakewise.svg", "sushiswap.svg", "synthetix.svg", "thorchain.svg", "trader-joe.svg", "uniswapv2.svg", "uniswapv2.svg", "vector.svg", "vesper.svg", "yearn.svg", "yearn.svg", "yeti.png", "yield-app.svg", "alpaca.svg", "wefi.png", "exactly.svg", "etherfi.png", "squeeth-by-opyn.png", "rage-trade.svg", "sentiment.png", "lyra.svg", "perennial.jpeg", "liquify.svg", "lyra.svg", "buffer-finance.svg", "hook.jpeg", "holyheld.jpeg", "union-finance.svg", "openq.png", "level-finance.png", "offramp.png", "aavev3.svg", "morpho.svg", "chorusone.svg", "kiln.svg", "vertex.svg", "the-retail-mutual.png", "figment.svg", "teller.svg", "ajna.svg", "eigenlayer.png", "vox.png", "mahalend.svg", "self.svg", "scallop.svg", "wefi.png", "zktsunami.svg", "hats.svg", "makerdao-dsr.svg", "spark-lending.svg", "defi-edge.svg", "stakewisev3.svg", "compoundv3.svg"];
1714
1738
 
1715
1739
  // src/swap/calculateExactNxmForEth.ts
1716
1740
  var calculateExactNxmForEth = (ethIn, reserves) => {