Skip to content

Commit

Permalink
2476, provider aggregation (#663)
Browse files Browse the repository at this point in the history
  • Loading branch information
PseudoElement authored Aug 5, 2024
2 parents 64c99d1 + 693cdc2 commit 60f6a77
Show file tree
Hide file tree
Showing 25 changed files with 1,185 additions and 1,156 deletions.
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "rubic-sdk",
"version": "5.32.8",
"version": "5.32.9",
"description": "Simplify dApp creation",
"main": "lib/index.js",
"types": "lib/index.d.ts",
Expand Down Expand Up @@ -83,7 +83,7 @@
"@solflare-wallet/utl-sdk": "^1.4.0",
"@viaprotocol/router-sdk": "^1.0.7",
"assert": "^2.0.0",
"axios": "^0.26.1",
"axios": "^1.7.2",
"bignumber.js": "9.1.0",
"bitcoin-address-validation": "2.2.1",
"browserify-zlib": "^0.2.0",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,10 +74,15 @@ export const rangoContractAddresses: Record<RangoSupportedBlockchain, UniversalC
// providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
// providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
// rubicRouter: rubicProxyContractAddress[BLOCKCHAIN_NAME.ETHEREUM].router
// }
// },
// [BLOCKCHAIN_NAME.SCROLL]: {
// providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
// providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
// rubicRouter: rubicProxyContractAddress[BLOCKCHAIN_NAME.ETHEREUM].router
// }
// [BLOCKCHAIN_NAME.FANTOM]: {
// providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
// providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
// rubicRouter: rubicProxyContractAddress[BLOCKCHAIN_NAME.ETHEREUM].router
// }
};
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ export const rangoApiBlockchainNames: Record<RangoSupportedBlockchain, string> =
[BLOCKCHAIN_NAME.METIS]: 'METIS',
[BLOCKCHAIN_NAME.ZK_SYNC]: 'ZKSYNC',
[BLOCKCHAIN_NAME.LINEA]: 'LINEA'
// [BLOCKCHAIN_NAME.FANTOM]: 'FANTOM',
// [BLOCKCHAIN_NAME.BLAST]: 'BLAST',
// [BLOCKCHAIN_NAME.SCROLL]: 'SCROLL'
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ export const rangoApiSymbols: Record<RangoSupportedBlockchain, string> = {
[BLOCKCHAIN_NAME.ZK_SYNC]: 'ETH',
[BLOCKCHAIN_NAME.LINEA]: 'ETH',
[BLOCKCHAIN_NAME.METIS]: 'METIS'
// [BLOCKCHAIN_NAME.FANTOM]: 'FTM',
// [BLOCKCHAIN_NAME.BLAST]: 'ETH',
// [BLOCKCHAIN_NAME.SCROLL]: 'ETH'
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ export const rangoSupportedBlockchains = [
BLOCKCHAIN_NAME.ZK_SYNC,
BLOCKCHAIN_NAME.BASE,
BLOCKCHAIN_NAME.LINEA
// BLOCKCHAIN_NAME.BLAST
// BLOCKCHAIN_NAME.BLAST,
// BLOCKCHAIN_NAME.SCROLL
] as const;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@ export const lifiCrossChainSupportedBlockchains = [
BLOCKCHAIN_NAME.MODE,
BLOCKCHAIN_NAME.SCROLL,
BLOCKCHAIN_NAME.MANTLE
// BLOCKCHAIN_NAME.ROOTSTOCK,
// BLOCKCHAIN_NAME.CELO,
// BLOCKCHAIN_NAME.BLAST
// BLOCKCHAIN_NAME.AURORA
] as const;

export type LifiCrossChainSupportedBlockchain = (typeof lifiCrossChainSupportedBlockchains)[number];
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ export const mesonContractAddresses: Record<MesonSupportedBlockchain, string> =
[BLOCKCHAIN_NAME.ZK_LINK]: '0x2DcC88Fa6b6950EE28245C3238B8993BE5feeA42',
[BLOCKCHAIN_NAME.ZK_SYNC]: '0x2DcC88Fa6b6950EE28245C3238B8993BE5feeA42',
[BLOCKCHAIN_NAME.ZETACHAIN]: '0x25aB3Efd52e6470681CE037cD546Dc60726948D3',
[BLOCKCHAIN_NAME.CORE]: '0x25aB3Efd52e6470681CE037cD546Dc60726948D3'
[BLOCKCHAIN_NAME.CORE]: '0x25aB3Efd52e6470681CE037cD546Dc60726948D3',
[BLOCKCHAIN_NAME.KROMA]: '0x25aB3Efd52e6470681CE037cD546Dc60726948D3'
// [BLOCKCHAIN_NAME.TAIKO]: '0x25aB3Efd52e6470681CE037cD546Dc60726948D3'
};
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@ export const mesonCrossChainSupportedChains = [
BLOCKCHAIN_NAME.ZK_FAIR,
BLOCKCHAIN_NAME.ZK_LINK,
BLOCKCHAIN_NAME.ZK_SYNC,
BLOCKCHAIN_NAME.CORE
BLOCKCHAIN_NAME.CORE,
BLOCKCHAIN_NAME.KROMA
// BLOCKCHAIN_NAME.TAIKO
] as const;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ export const orbiterContractAddresses: Record<OrbiterSupportedBlockchain, string
[BLOCKCHAIN_NAME.ZK_FAIR]: '0x13e46b2a3f8512ed4682a8fb8b560589fe3c2172',
[BLOCKCHAIN_NAME.XLAYER]: '0x13e46b2a3f8512ed4682a8fb8b560589fe3c2172',
[BLOCKCHAIN_NAME.TAIKO]: '0x2598d7bc9d3b4b6124f3282e49eee68db270f516',
[BLOCKCHAIN_NAME.CORE]: '0x13e46b2a3f8512ed4682a8fb8b560589fe3c2172'
// [BLOCKCHAIN_NAME.ZK_LINK]: '0xb4ab2ff34fadc774aff45f1c4566cb5e16bd4867'
// [BLOCKCHAIN_NAME.MERLIN]: '0x4b8a4641c140b3aa6be8d99786fafe47a65869db'
[BLOCKCHAIN_NAME.CORE]: '0x13e46b2a3f8512ed4682a8fb8b560589fe3c2172',
// [BLOCKCHAIN_NAME.METIS]: '0xd9d74a29307cc6fc8bf424ee4217f1a587fbc8dc',
[BLOCKCHAIN_NAME.ZK_LINK]: '0xb4ab2ff34fadc774aff45f1c4566cb5e16bd4867',
[BLOCKCHAIN_NAME.MERLIN]: '0x4b8a4641c140b3aa6be8d99786fafe47a65869db'
};
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,10 @@ export const orbiterSupportedBlockchains = [
BLOCKCHAIN_NAME.ZK_FAIR,
BLOCKCHAIN_NAME.XLAYER,
BLOCKCHAIN_NAME.TAIKO,
BLOCKCHAIN_NAME.CORE
// BLOCKCHAIN_NAME.ZK_LINK
// BLOCKCHAIN_NAME.MERLIN
BLOCKCHAIN_NAME.CORE,
// BLOCKCHAIN_NAME.METIS,
BLOCKCHAIN_NAME.ZK_LINK,
BLOCKCHAIN_NAME.MERLIN
] as const;

export type OrbiterSupportedBlockchain = (typeof orbiterSupportedBlockchains)[number];
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ export const owlToSupportedBlockchains = [
BLOCKCHAIN_NAME.POLYGON,
BLOCKCHAIN_NAME.KROMA,
BLOCKCHAIN_NAME.MANTA_PACIFIC,
// BLOCKCHAIN_NAME.METIS,
BLOCKCHAIN_NAME.METIS,
BLOCKCHAIN_NAME.XLAYER,
BLOCKCHAIN_NAME.MANTLE,
BLOCKCHAIN_NAME.BLAST,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,6 @@ export class OwlToBridgeTrade extends EvmCrossChainTrade {
}

protected get fromContractAddress(): string {
// @TODO Add owl-to contract addresses
return this.isProxyTrade
? rubicProxyContractAddress[this.fromBlockchain].gateway
: this.providerGateway;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,72 +1,72 @@
import { BLOCKCHAIN_NAME } from 'src/core/blockchain/models/blockchain-name';

import { stargateV2BridgeToken } from './stargate-v2-bridge-token';
import { StargateV2SupportedBlockchains } from './stargate-v2-cross-chain-supported-blockchains';
import { stargateV2PoolId } from './stargate-v2-pool-id';

export const stargateV2BlockchainSupportedPools: Record<StargateV2SupportedBlockchains, number[]> =
{
[BLOCKCHAIN_NAME.ETHEREUM]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.USDT],
stargateV2PoolId[stargateV2BridgeToken.ETH],
// stargateV2PoolId[stargateV2BridgeToken.METIS],
stargateV2PoolId[stargateV2BridgeToken.METH]
],
[BLOCKCHAIN_NAME.BINANCE_SMART_CHAIN]: [stargateV2PoolId[stargateV2BridgeToken.USDT]],
[BLOCKCHAIN_NAME.AVALANCHE]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.USDT]
],
[BLOCKCHAIN_NAME.POLYGON]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.USDT]
],
[BLOCKCHAIN_NAME.ARBITRUM]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.USDT],
stargateV2PoolId[stargateV2BridgeToken.ETH]
],
[BLOCKCHAIN_NAME.OPTIMISM]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.USDT],
stargateV2PoolId[stargateV2BridgeToken.ETH]
],
[BLOCKCHAIN_NAME.METIS]: [
stargateV2PoolId[stargateV2BridgeToken.mUSD],
stargateV2PoolId[stargateV2BridgeToken.WETH]
// stargateV2PoolId[stargateV2BridgeToken.METIS]
],
[BLOCKCHAIN_NAME.LINEA]: [stargateV2PoolId[stargateV2BridgeToken.ETH]],
[BLOCKCHAIN_NAME.MANTLE]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.USDT],
stargateV2PoolId[stargateV2BridgeToken.WETH],
stargateV2PoolId[stargateV2BridgeToken.METH]
],
[BLOCKCHAIN_NAME.BASE]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.ETH]
],
[BLOCKCHAIN_NAME.KAVA]: [stargateV2PoolId[stargateV2BridgeToken.USDT]],
[BLOCKCHAIN_NAME.SCROLL]: [
stargateV2PoolId[stargateV2BridgeToken.USDCe],
stargateV2PoolId[stargateV2BridgeToken.ETH]
],
[BLOCKCHAIN_NAME.AURORA]: [stargateV2PoolId[stargateV2BridgeToken.USDC]]
// [BLOCKCHAIN_NAME.KLAYTN]: [
// stargateV2PoolId[stargateV2BridgeToken.USDC],
// stargateV2PoolId[stargateV2BridgeToken.USDT],
// stargateV2PoolId[stargateV2BridgeToken.WETH]
// ],
// [BLOCKCHAIN_NAME.IOTA]: [
// stargateV2PoolId[stargateV2BridgeToken.USDC],
// stargateV2PoolId[stargateV2BridgeToken.USDT],
// stargateV2PoolId[stargateV2BridgeToken.WETH]
// ],
// [BLOCKCHAIN_NAME.TAIKO]: [
// stargateV2PoolId[stargateV2BridgeToken.USDC],
// stargateV2PoolId[stargateV2BridgeToken.USDT]
// ],
// [BLOCKCHAIN_NAME.SEI]: [stargateV2PoolId[stargateV2BridgeToken.WETH]]
};
import { BLOCKCHAIN_NAME } from 'src/core/blockchain/models/blockchain-name';

import { stargateV2BridgeToken } from './stargate-v2-bridge-token';
import { StargateV2SupportedBlockchains } from './stargate-v2-cross-chain-supported-blockchains';
import { stargateV2PoolId } from './stargate-v2-pool-id';

export const stargateV2BlockchainSupportedPools: Record<StargateV2SupportedBlockchains, number[]> =
{
[BLOCKCHAIN_NAME.ETHEREUM]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.USDT],
stargateV2PoolId[stargateV2BridgeToken.ETH],
// stargateV2PoolId[stargateV2BridgeToken.METIS],
stargateV2PoolId[stargateV2BridgeToken.METH]
],
[BLOCKCHAIN_NAME.BINANCE_SMART_CHAIN]: [stargateV2PoolId[stargateV2BridgeToken.USDT]],
[BLOCKCHAIN_NAME.AVALANCHE]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.USDT]
],
[BLOCKCHAIN_NAME.POLYGON]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.USDT]
],
[BLOCKCHAIN_NAME.ARBITRUM]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.USDT],
stargateV2PoolId[stargateV2BridgeToken.ETH]
],
[BLOCKCHAIN_NAME.OPTIMISM]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.USDT],
stargateV2PoolId[stargateV2BridgeToken.ETH]
],
[BLOCKCHAIN_NAME.METIS]: [
stargateV2PoolId[stargateV2BridgeToken.mUSD],
stargateV2PoolId[stargateV2BridgeToken.WETH]
// stargateV2PoolId[stargateV2BridgeToken.METIS]
],
[BLOCKCHAIN_NAME.LINEA]: [stargateV2PoolId[stargateV2BridgeToken.ETH]],
[BLOCKCHAIN_NAME.MANTLE]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.USDT],
stargateV2PoolId[stargateV2BridgeToken.WETH],
stargateV2PoolId[stargateV2BridgeToken.METH]
],
[BLOCKCHAIN_NAME.BASE]: [
stargateV2PoolId[stargateV2BridgeToken.USDC],
stargateV2PoolId[stargateV2BridgeToken.ETH]
],
[BLOCKCHAIN_NAME.KAVA]: [stargateV2PoolId[stargateV2BridgeToken.USDT]],
[BLOCKCHAIN_NAME.SCROLL]: [
stargateV2PoolId[stargateV2BridgeToken.USDCe],
stargateV2PoolId[stargateV2BridgeToken.ETH]
],
[BLOCKCHAIN_NAME.AURORA]: [stargateV2PoolId[stargateV2BridgeToken.USDC]]
// [BLOCKCHAIN_NAME.KLAYTN]: [
// stargateV2PoolId[stargateV2BridgeToken.USDC],
// stargateV2PoolId[stargateV2BridgeToken.USDT],
// stargateV2PoolId[stargateV2BridgeToken.WETH]
// ],
// [BLOCKCHAIN_NAME.IOTA]: [
// stargateV2PoolId[stargateV2BridgeToken.USDC],
// stargateV2PoolId[stargateV2BridgeToken.USDT],
// stargateV2PoolId[stargateV2BridgeToken.WETH]
// ],
// [BLOCKCHAIN_NAME.TAIKO]: [
// stargateV2PoolId[stargateV2BridgeToken.USDC],
// stargateV2PoolId[stargateV2BridgeToken.USDT]
// ],
// [BLOCKCHAIN_NAME.SEI]: [stargateV2PoolId[stargateV2BridgeToken.WETH]]
};
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
export const stargateV2BridgeToken = {
USDC: 'USDC',
USDT: 'USDT',
METIS: 'METIS',
mUSD: 'm.USDT',
ETH: 'ETH',
METH: 'mETH',
WETH: 'WETH',
USDCe: 'USDC.e'
} as const;

export type StargateV2BridgeToken =
(typeof stargateV2BridgeToken)[keyof typeof stargateV2BridgeToken];
export const stargateV2BridgeToken = {
USDC: 'USDC',
USDT: 'USDT',
METIS: 'METIS',
mUSD: 'm.USDT',
ETH: 'ETH',
METH: 'mETH',
WETH: 'WETH',
USDCe: 'USDC.e'
} as const;

export type StargateV2BridgeToken =
(typeof stargateV2BridgeToken)[keyof typeof stargateV2BridgeToken];
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
import { BLOCKCHAIN_NAME } from 'src/core/blockchain/models/blockchain-name';

import { StargateV2SupportedBlockchains } from './stargate-v2-cross-chain-supported-blockchains';

export const stargateV2ChainIds: Record<StargateV2SupportedBlockchains, number> = {
[BLOCKCHAIN_NAME.ETHEREUM]: 30101,
[BLOCKCHAIN_NAME.BINANCE_SMART_CHAIN]: 30102,
[BLOCKCHAIN_NAME.AVALANCHE]: 30106,
[BLOCKCHAIN_NAME.POLYGON]: 30109,
[BLOCKCHAIN_NAME.ARBITRUM]: 30110,
[BLOCKCHAIN_NAME.OPTIMISM]: 30111,
[BLOCKCHAIN_NAME.METIS]: 30151,
[BLOCKCHAIN_NAME.LINEA]: 30183,
[BLOCKCHAIN_NAME.MANTLE]: 30181,
[BLOCKCHAIN_NAME.BASE]: 30184,
[BLOCKCHAIN_NAME.KAVA]: 30177,
[BLOCKCHAIN_NAME.SCROLL]: 30214,
[BLOCKCHAIN_NAME.AURORA]: 30211
// [BLOCKCHAIN_NAME.KLAYTN]: 30150,
// [BLOCKCHAIN_NAME.IOTA]: 30284,
// [BLOCKCHAIN_NAME.TAIKO]: 30290,
// [BLOCKCHAIN_NAME.SEI]: 30280
};
import { BLOCKCHAIN_NAME } from 'src/core/blockchain/models/blockchain-name';

import { StargateV2SupportedBlockchains } from './stargate-v2-cross-chain-supported-blockchains';

export const stargateV2ChainIds: Record<StargateV2SupportedBlockchains, number> = {
[BLOCKCHAIN_NAME.ETHEREUM]: 30101,
[BLOCKCHAIN_NAME.BINANCE_SMART_CHAIN]: 30102,
[BLOCKCHAIN_NAME.AVALANCHE]: 30106,
[BLOCKCHAIN_NAME.POLYGON]: 30109,
[BLOCKCHAIN_NAME.ARBITRUM]: 30110,
[BLOCKCHAIN_NAME.OPTIMISM]: 30111,
[BLOCKCHAIN_NAME.METIS]: 30151,
[BLOCKCHAIN_NAME.LINEA]: 30183,
[BLOCKCHAIN_NAME.MANTLE]: 30181,
[BLOCKCHAIN_NAME.BASE]: 30184,
[BLOCKCHAIN_NAME.KAVA]: 30177,
[BLOCKCHAIN_NAME.SCROLL]: 30214,
[BLOCKCHAIN_NAME.AURORA]: 30211
// [BLOCKCHAIN_NAME.KLAYTN]: 30150,
// [BLOCKCHAIN_NAME.IOTA]: 30284,
// [BLOCKCHAIN_NAME.TAIKO]: 30290,
// [BLOCKCHAIN_NAME.SEI]: 30280
};
Loading

0 comments on commit 60f6a77

Please sign in to comment.