diff --git a/package.json b/package.json index ec76e90a2c..47a410c6f5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rubic-sdk", - "version": "5.3.2", + "version": "5.4.0", "description": "Simplify dApp creation", "main": "lib/index.js", "types": "lib/index.d.ts", diff --git a/src/common/tokens/constants/native-tokens.ts b/src/common/tokens/constants/native-tokens.ts index 4d04009639..bba40fbb28 100644 --- a/src/common/tokens/constants/native-tokens.ts +++ b/src/common/tokens/constants/native-tokens.ts @@ -75,8 +75,8 @@ const testnetNativeTokens: Record = { symbol: 'BERA', decimals: 18 }), - [BLOCKCHAIN_NAME.BLAST]: new Token({ - blockchain: BLOCKCHAIN_NAME.BLAST, + [BLOCKCHAIN_NAME.BLAST_TESTNET]: new Token({ + blockchain: BLOCKCHAIN_NAME.BLAST_TESTNET, address: EvmWeb3Pure.nativeTokenAddress, name: 'Ether', symbol: 'ETH', @@ -397,5 +397,12 @@ export const nativeTokensList: Record = { name: 'Solana', symbol: 'SOL', decimals: 9 + }), + [BLOCKCHAIN_NAME.BLAST]: new Token({ + blockchain: BLOCKCHAIN_NAME.BLAST, + address: EvmWeb3Pure.nativeTokenAddress, + name: 'Ether', + symbol: 'ETH', + decimals: 18 }) }; diff --git a/src/common/tokens/constants/wrapped-addresses.ts b/src/common/tokens/constants/wrapped-addresses.ts index 372ddba883..69774bbd16 100644 --- a/src/common/tokens/constants/wrapped-addresses.ts +++ b/src/common/tokens/constants/wrapped-addresses.ts @@ -39,6 +39,7 @@ export const wrappedAddress: Partial> = { [BLOCKCHAIN_NAME.MANTA_PACIFIC]: '0x0Dc808adcE2099A9F62AA87D9670745AbA741746', [BLOCKCHAIN_NAME.SCROLL]: '0x5300000000000000000000000000000000000004', [BLOCKCHAIN_NAME.ZETACHAIN]: '0x5F0b1a82749cb4E2278EC87F8BF6B618dC71a8bf', + [BLOCKCHAIN_NAME.BLAST]: '0x4300000000000000000000000000000000000004', // Testnet [BLOCKCHAIN_NAME.GOERLI]: '0xb4fbf271143f4fbf7b91a5ded31805e42b2208d6', [BLOCKCHAIN_NAME.SCROLL_SEPOLIA]: '0x5300000000000000000000000000000000000004', @@ -46,6 +47,6 @@ export const wrappedAddress: Partial> = { [BLOCKCHAIN_NAME.TAIKO]: '0x0011E559da84dde3f841e22dc33F3adbF184D84A', [BLOCKCHAIN_NAME.SEPOLIA]: '0xfff9976782d46cc05630d1f6ebab18b2324d6b14', [BLOCKCHAIN_NAME.BERACHAIN]: '0x5806E416dA447b267cEA759358cF22Cc41FAE80F', - [BLOCKCHAIN_NAME.BLAST]: '0x4200000000000000000000000000000000000023', + [BLOCKCHAIN_NAME.BLAST_TESTNET]: '0x4200000000000000000000000000000000000023', [BLOCKCHAIN_NAME.HOLESKY]: '' }; diff --git a/src/common/tokens/constants/wrapped-native-tokens.ts b/src/common/tokens/constants/wrapped-native-tokens.ts index a9f0e3128a..20f55c2896 100644 --- a/src/common/tokens/constants/wrapped-native-tokens.ts +++ b/src/common/tokens/constants/wrapped-native-tokens.ts @@ -360,8 +360,8 @@ export const wrappedNativeTokensList: Partial> symbol: 'WBERA', decimals: 18 }), - [BLOCKCHAIN_NAME.BLAST]: new Token({ - blockchain: BLOCKCHAIN_NAME.BLAST, + [BLOCKCHAIN_NAME.BLAST_TESTNET]: new Token({ + blockchain: BLOCKCHAIN_NAME.BLAST_TESTNET, address: '0x4200000000000000000000000000000000000023', name: 'Wrapped ETH', symbol: 'WETH', @@ -380,5 +380,12 @@ export const wrappedNativeTokensList: Partial> name: 'Wrapped ETH', symbol: 'WETH', decimals: 18 + }), + [BLOCKCHAIN_NAME.BLAST]: new Token({ + blockchain: BLOCKCHAIN_NAME.BLAST, + address: '0x4300000000000000000000000000000000000004', + name: 'Wrapped ETH', + symbol: 'WETH', + decimals: 18 }) }; diff --git a/src/core/blockchain/models/blockchain-name.ts b/src/core/blockchain/models/blockchain-name.ts index ef8b801780..72186777c0 100644 --- a/src/core/blockchain/models/blockchain-name.ts +++ b/src/core/blockchain/models/blockchain-name.ts @@ -8,7 +8,7 @@ export const TEST_EVM_BLOCKCHAIN_NAME = { TAIKO: 'TAIKO', SEPOLIA: 'SEPOLIA', BERACHAIN: 'BERACHAIN', - BLAST: 'BLAST', + BLAST_TESTNET: 'BLAST_TESTNET', HOLESKY: 'HOLESKY' } as const; @@ -57,7 +57,8 @@ export const EVM_BLOCKCHAIN_NAME = { MANTLE: 'MANTLE', MANTA_PACIFIC: 'MANTA_PACIFIC', SCROLL: 'SCROLL', - ZETACHAIN: 'ZETACHAIN' + ZETACHAIN: 'ZETACHAIN', + BLAST: 'BLAST' } as const; export const BLOCKCHAIN_NAME = { diff --git a/src/core/blockchain/utils/blockchains-info/constants/blockchain-id.ts b/src/core/blockchain/utils/blockchains-info/constants/blockchain-id.ts index f0a933206a..fddcf6eb37 100644 --- a/src/core/blockchain/utils/blockchains-info/constants/blockchain-id.ts +++ b/src/core/blockchain/utils/blockchains-info/constants/blockchain-id.ts @@ -55,6 +55,7 @@ export const blockchainId: Record = { [BLOCKCHAIN_NAME.MANTA_PACIFIC]: 169, [BLOCKCHAIN_NAME.SCROLL]: 534352, [BLOCKCHAIN_NAME.ZETACHAIN]: 7000, + [BLOCKCHAIN_NAME.BLAST]: 81457, // Tesnents [BLOCKCHAIN_NAME.GOERLI]: 5, [BLOCKCHAIN_NAME.BINANCE_SMART_CHAIN_TESTNET]: 87, @@ -65,7 +66,7 @@ export const blockchainId: Record = { [BLOCKCHAIN_NAME.TAIKO]: 167008, [BLOCKCHAIN_NAME.SEPOLIA]: 11155111, [BLOCKCHAIN_NAME.BERACHAIN]: 80085, - [BLOCKCHAIN_NAME.BLAST]: 168587773, + [BLOCKCHAIN_NAME.BLAST_TESTNET]: 168587773, [BLOCKCHAIN_NAME.HOLESKY]: 17000, // Non EVN blockchains [BLOCKCHAIN_NAME.BITCOIN]: 5555, diff --git a/src/core/blockchain/web3-public-service/web3-public/constants/multicall-addresses.ts b/src/core/blockchain/web3-public-service/web3-public/constants/multicall-addresses.ts index f241af6be3..9099115dca 100644 --- a/src/core/blockchain/web3-public-service/web3-public/constants/multicall-addresses.ts +++ b/src/core/blockchain/web3-public-service/web3-public/constants/multicall-addresses.ts @@ -54,7 +54,8 @@ export const MULTICALL_ADDRESSES: Record [BLOCKCHAIN_NAME.MANTA_PACIFIC]: '0xf43727c9BEb4C0aA3fEE1281A902e518f8586E54', [BLOCKCHAIN_NAME.SCROLL]: '0xcA11bde05977b3631167028862bE2a173976CA11', [BLOCKCHAIN_NAME.BERACHAIN]: '', - [BLOCKCHAIN_NAME.BLAST]: '', + [BLOCKCHAIN_NAME.BLAST_TESTNET]: '', [BLOCKCHAIN_NAME.ZETACHAIN]: '0xcA11bde05977b3631167028862bE2a173976CA11', - [BLOCKCHAIN_NAME.HOLESKY]: '0xcA11bde05977b3631167028862bE2a173976CA11' + [BLOCKCHAIN_NAME.HOLESKY]: '0xcA11bde05977b3631167028862bE2a173976CA11', + [BLOCKCHAIN_NAME.BLAST]: '0xcA11bde05977b3631167028862bE2a173976CA11' }; diff --git a/src/core/coingecko-api/coingecko-api.ts b/src/core/coingecko-api/coingecko-api.ts index f79c18e959..4f6b46b628 100644 --- a/src/core/coingecko-api/coingecko-api.ts +++ b/src/core/coingecko-api/coingecko-api.ts @@ -50,7 +50,8 @@ const supportedBlockchains = [ BLOCKCHAIN_NAME.PULSECHAIN, BLOCKCHAIN_NAME.LINEA, BLOCKCHAIN_NAME.MANTLE, - BLOCKCHAIN_NAME.BASE + BLOCKCHAIN_NAME.BASE, + BLOCKCHAIN_NAME.BLAST ] as const; type SupportedBlockchain = (typeof supportedBlockchains)[number]; @@ -115,7 +116,8 @@ export class CoingeckoApi { [BLOCKCHAIN_NAME.PULSECHAIN]: 'pulsechain', [BLOCKCHAIN_NAME.LINEA]: 'ethereum', [BLOCKCHAIN_NAME.MANTLE]: 'mantle', - [BLOCKCHAIN_NAME.BASE]: 'ethereum' + [BLOCKCHAIN_NAME.BASE]: 'ethereum', + [BLOCKCHAIN_NAME.BLAST]: 'blast' }; this.tokenBlockchainId = { @@ -161,7 +163,8 @@ export class CoingeckoApi { [BLOCKCHAIN_NAME.PULSECHAIN]: 'pulsechain', [BLOCKCHAIN_NAME.LINEA]: 'linea', [BLOCKCHAIN_NAME.MANTLE]: 'mantle', - [BLOCKCHAIN_NAME.BASE]: 'base' + [BLOCKCHAIN_NAME.BASE]: 'base', + [BLOCKCHAIN_NAME.BLAST]: 'blast-2' }; } diff --git a/src/features/cross-chain/calculation-manager/providers/orbiter-bridge/models/orbiter-contract-addresses.ts b/src/features/cross-chain/calculation-manager/providers/orbiter-bridge/models/orbiter-contract-addresses.ts index 8db950834a..5281e5d526 100644 --- a/src/features/cross-chain/calculation-manager/providers/orbiter-bridge/models/orbiter-contract-addresses.ts +++ b/src/features/cross-chain/calculation-manager/providers/orbiter-bridge/models/orbiter-contract-addresses.ts @@ -16,5 +16,6 @@ export const orbiterContractAddresses: Record