diff --git a/clients/js/README.md b/clients/js/README.md index 374fff7baf..35b414e8bb 100644 --- a/clients/js/README.md +++ b/clients/js/README.md @@ -253,9 +253,10 @@ Options: "avalanche", "oasis", "algorand", "aurora", "fantom", "karura", "acala", "klaytn", "celo", "near", "moonbeam", "neon", "terra2", "injective", "osmosis", "sui", "aptos", "arbitrum", "optimism", "gnosis", "pythnet", - "xpla", "btc", "base", "sei", "rootstock", "scroll", "mantle", "wormchain", - "cosmoshub", "evmos", "kujira", "neutron", "celestia", "stargaze", "seda", - "dymension", "sepolia", "arbitrum_sepolia", "base_sepolia", + "xpla", "btc", "base", "sei", "rootstock", "scroll", "mantle", "blast", + "xlayer", "linea", "berachain", "seievm", "wormchain", "cosmoshub", "evmos", + "kujira", "neutron", "celestia", "stargaze", "seda", "dymension", + "provenance", "sepolia", "arbitrum_sepolia", "base_sepolia", "optimism_sepolia", "holesky", "polygon_sepolia"] -n, --network Network [required] [choices: "mainnet", "testnet", "devnet"] @@ -311,18 +312,20 @@ Options: "avalanche", "oasis", "algorand", "aurora", "fantom", "karura", "acala", "klaytn", "celo", "near", "moonbeam", "neon", "terra2", "injective", "osmosis", "sui", "aptos", "arbitrum", "optimism", "gnosis", "pythnet", - "xpla", "btc", "base", "sei", "rootstock", "scroll", "mantle", "wormchain", - "cosmoshub", "evmos", "kujira", "neutron", "celestia", "stargaze", "seda", - "dymension", "sepolia", "arbitrum_sepolia", "base_sepolia", + "xpla", "btc", "base", "sei", "rootstock", "scroll", "mantle", "blast", + "xlayer", "linea", "berachain", "seievm", "wormchain", "cosmoshub", "evmos", + "kujira", "neutron", "celestia", "stargaze", "seda", "dymension", + "provenance", "sepolia", "arbitrum_sepolia", "base_sepolia", "optimism_sepolia", "holesky", "polygon_sepolia"] --dst-chain destination chain [required] [choices: "solana", "ethereum", "terra", "bsc", "polygon", "avalanche", "oasis", "algorand", "aurora", "fantom", "karura", "acala", "klaytn", "celo", "near", "moonbeam", "neon", "terra2", "injective", "osmosis", "sui", "aptos", "arbitrum", "optimism", "gnosis", "pythnet", - "xpla", "btc", "base", "sei", "rootstock", "scroll", "mantle", "wormchain", - "cosmoshub", "evmos", "kujira", "neutron", "celestia", "stargaze", "seda", - "dymension", "sepolia", "arbitrum_sepolia", "base_sepolia", + "xpla", "btc", "base", "sei", "rootstock", "scroll", "mantle", "blast", + "xlayer", "linea", "berachain", "seievm", "wormchain", "cosmoshub", "evmos", + "kujira", "neutron", "celestia", "stargaze", "seda", "dymension", + "provenance", "sepolia", "arbitrum_sepolia", "base_sepolia", "optimism_sepolia", "holesky", "polygon_sepolia"] --dst-addr destination address [string] [required] --token-addr token address [string] [default: native token] @@ -355,9 +358,10 @@ Positionals: "avalanche", "oasis", "algorand", "aurora", "fantom", "karura", "acala", "klaytn", "celo", "near", "moonbeam", "neon", "terra2", "injective", "osmosis", "sui", "aptos", "arbitrum", "optimism", "gnosis", "pythnet", - "xpla", "btc", "base", "sei", "rootstock", "scroll", "mantle", "wormchain", - "cosmoshub", "evmos", "kujira", "neutron", "celestia", "stargaze", "seda", - "dymension", "sepolia", "arbitrum_sepolia", "base_sepolia", + "xpla", "btc", "base", "sei", "rootstock", "scroll", "mantle", "blast", + "xlayer", "linea", "berachain", "seievm", "wormchain", "cosmoshub", "evmos", + "kujira", "neutron", "celestia", "stargaze", "seda", "dymension", + "provenance", "sepolia", "arbitrum_sepolia", "base_sepolia", "optimism_sepolia", "holesky", "polygon_sepolia"] tx Source transaction hash [string] diff --git a/clients/js/package-lock.json b/clients/js/package-lock.json index 115717a66b..81681bc343 100644 --- a/clients/js/package-lock.json +++ b/clients/js/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@celo-tools/celo-ethers-wrapper": "^0.1.0", - "@certusone/wormhole-sdk": "^0.10.13", + "@certusone/wormhole-sdk": "^0.10.14", "@cosmjs/encoding": "^0.26.2", "@improbable-eng/grpc-web-node-http-transport": "^0.15.0", "@injectivelabs/networks": "^1.10.7", @@ -683,9 +683,9 @@ } }, "node_modules/@certusone/wormhole-sdk": { - "version": "0.10.13", - "resolved": "https://registry.npmjs.org/@certusone/wormhole-sdk/-/wormhole-sdk-0.10.13.tgz", - "integrity": "sha512-04OCGoJUylTFNu4+g96Ax7jvn3M7FwVbTTcPNIjgta8QcC046kZBYAEd/yrK5hkDGqejQyJwO0ieaJfxL/kv1w==", + "version": "0.10.14", + "resolved": "https://registry.npmjs.org/@certusone/wormhole-sdk/-/wormhole-sdk-0.10.14.tgz", + "integrity": "sha512-36pEcLZbG+DLFKL2N7khLLnSYBMPoMpJrUs7IFqps3i+PhCZ6e8xb2ohNcIKX58G9Ibj+xRmc5ilo+D37WodVg==", "dependencies": { "@certusone/wormhole-sdk-proto-web": "0.0.7", "@certusone/wormhole-sdk-wasm": "^0.0.1", @@ -11917,9 +11917,9 @@ "requires": {} }, "@certusone/wormhole-sdk": { - "version": "0.10.13", - "resolved": "https://registry.npmjs.org/@certusone/wormhole-sdk/-/wormhole-sdk-0.10.13.tgz", - "integrity": "sha512-04OCGoJUylTFNu4+g96Ax7jvn3M7FwVbTTcPNIjgta8QcC046kZBYAEd/yrK5hkDGqejQyJwO0ieaJfxL/kv1w==", + "version": "0.10.14", + "resolved": "https://registry.npmjs.org/@certusone/wormhole-sdk/-/wormhole-sdk-0.10.14.tgz", + "integrity": "sha512-36pEcLZbG+DLFKL2N7khLLnSYBMPoMpJrUs7IFqps3i+PhCZ6e8xb2ohNcIKX58G9Ibj+xRmc5ilo+D37WodVg==", "requires": { "@certusone/wormhole-sdk-proto-web": "0.0.7", "@certusone/wormhole-sdk-wasm": "^0.0.1", diff --git a/clients/js/package.json b/clients/js/package.json index 96b81823d9..7aeb00fe84 100644 --- a/clients/js/package.json +++ b/clients/js/package.json @@ -30,7 +30,7 @@ ], "dependencies": { "@celo-tools/celo-ethers-wrapper": "^0.1.0", - "@certusone/wormhole-sdk": "^0.10.13", + "@certusone/wormhole-sdk": "^0.10.14", "@cosmjs/encoding": "^0.26.2", "@improbable-eng/grpc-web-node-http-transport": "^0.15.0", "@injectivelabs/networks": "^1.10.7", diff --git a/clients/js/src/chains/generic/getOriginalAsset.ts b/clients/js/src/chains/generic/getOriginalAsset.ts index c14d1ec048..2bd7141ce0 100644 --- a/clients/js/src/chains/generic/getOriginalAsset.ts +++ b/clients/js/src/chains/generic/getOriginalAsset.ts @@ -62,6 +62,11 @@ export const getOriginalAsset = async ( // case "rootstock": case "scroll": case "mantle": + case "blast": + case "xlayer": + case "linea": + case "berachain": + case "seievm": case "sepolia": case "arbitrum_sepolia": case "base_sepolia": @@ -125,6 +130,7 @@ export const getOriginalAsset = async ( case "stargaze": case "seda": case "dymension": + case "provenance": case "rootstock": throw new Error(`${chainName} not supported`); default: diff --git a/clients/js/src/chains/generic/getWrappedAssetAddress.ts b/clients/js/src/chains/generic/getWrappedAssetAddress.ts index 3659c208f1..1d752d5802 100644 --- a/clients/js/src/chains/generic/getWrappedAssetAddress.ts +++ b/clients/js/src/chains/generic/getWrappedAssetAddress.ts @@ -72,6 +72,11 @@ export const getWrappedAssetAddress = async ( // case "rootstock": case "scroll": case "mantle": + case "blast": + case "xlayer": + case "linea": + case "berachain": + case "seievm": case "sepolia": case "arbitrum_sepolia": case "base_sepolia": @@ -172,6 +177,7 @@ export const getWrappedAssetAddress = async ( case "stargaze": case "seda": case "dymension": + case "provenance": throw new Error(`${chainName} not supported`); default: impossible(chainName); diff --git a/clients/js/src/chains/generic/provider.ts b/clients/js/src/chains/generic/provider.ts index 7b9a40552f..1594f5dc8d 100644 --- a/clients/js/src/chains/generic/provider.ts +++ b/clients/js/src/chains/generic/provider.ts @@ -99,6 +99,11 @@ export const getProviderForChain = ( // case "rootstock": case "scroll": case "mantle": + case "blast": + case "xlayer": + case "linea": + case "berachain": + case "seievm": case "sepolia": case "arbitrum_sepolia": case "base_sepolia": @@ -169,6 +174,7 @@ export const getProviderForChain = ( case "stargaze": case "seda": case "dymension": + case "provenance": case "rootstock": throw new Error(`${chainName} not supported`); default: diff --git a/clients/js/src/cmds/submit.ts b/clients/js/src/cmds/submit.ts index d0e3e94b87..b85a1cb5e2 100644 --- a/clients/js/src/cmds/submit.ts +++ b/clients/js/src/cmds/submit.ts @@ -200,6 +200,8 @@ async function executeSubmit( throw Error("seda is not supported yet"); } else if (chain === "dymension") { throw Error("dymension is not supported yet"); + } else if (chain === "provenance") { + throw Error("provenance is not supported yet"); } else if (chain === "rootstock") { throw Error("rootstock is not supported yet"); } else { diff --git a/clients/js/src/cmds/transfer.ts b/clients/js/src/cmds/transfer.ts index 5c9a5dde7d..bb3df464c7 100644 --- a/clients/js/src/cmds/transfer.ts +++ b/clients/js/src/cmds/transfer.ts @@ -154,6 +154,8 @@ export const handler = async ( throw Error("seda is not supported yet"); } else if (srcChain === "dymension") { throw Error("dymension is not supported yet"); + } else if (srcChain === "provenance") { + throw Error("provenance is not supported yet"); } else if (srcChain === "rootstock") { throw Error("rootstock is not supported yet"); } else { diff --git a/clients/js/src/consts/networks.ts b/clients/js/src/consts/networks.ts index 52c0340d66..44422fc8c3 100644 --- a/clients/js/src/consts/networks.ts +++ b/clients/js/src/consts/networks.ts @@ -171,47 +171,72 @@ const MAINNET = { key: getEnvVar("ETH_KEY"), chain_id: 30, }, - sepolia: { + scroll: { rpc: undefined, key: undefined, chain_id: undefined, }, - holesky: { + mantle: { rpc: undefined, key: undefined, chain_id: undefined, }, - cosmoshub: { + blast: { rpc: undefined, key: undefined, chain_id: undefined, }, - evmos: { + xlayer: { rpc: undefined, key: undefined, chain_id: undefined, }, - kujira: { + linea: { rpc: undefined, key: undefined, chain_id: undefined, }, - neutron: { + berachain: { rpc: undefined, key: undefined, chain_id: undefined, }, - celestia: { + seievm: { rpc: undefined, key: undefined, chain_id: undefined, }, - scroll: { + sepolia: { rpc: undefined, key: undefined, chain_id: undefined, }, - mantle: { + holesky: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, + cosmoshub: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, + evmos: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, + kujira: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, + neutron: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, + celestia: { rpc: undefined, key: undefined, chain_id: undefined, @@ -251,6 +276,11 @@ const MAINNET = { key: undefined, chain_id: undefined, }, + provenance: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, }; const TESTNET = { @@ -362,6 +392,41 @@ const TESTNET = { rpc: "https://rpc.atlantic-2.seinetwork.io", key: getEnvVar("SEI_KEY_TESTNET"), }, + scroll: { + rpc: "https://rpc.ankr.com/scroll_sepolia_testnet", + key: getEnvVar("ETH_KEY_TESTNET"), + chain_id: 534353, + }, + mantle: { + rpc: "https://mantle-sepolia.drpc.org", + key: getEnvVar("ETH_KEY_TESTNET"), + chain_id: 5003, + }, + blast: { + rpc: "https://blast-sepolia.drpc.org", + key: getEnvVar("ETH_KEY_TESTNET"), + chain_id: 168587773, + }, + xlayer: { + rpc: "https://testrpc.xlayer.tech/", + key: getEnvVar("ETH_KEY_TESTNET"), + chain_id: 195, + }, + linea: { + rpc: "https://rpc.sepolia.linea.build", + key: getEnvVar("ETH_KEY_TESTNET"), + chain_id: 59141, + }, + berachain: { + rpc: "https://artio.rpc.berachain.com/", + key: getEnvVar("ETH_KEY_TESTNET"), + chain_id: 80085, + }, + seievm: { + rpc: "https://evm-rpc-arctic-1.sei-apis.com/", + key: getEnvVar("ETH_KEY_TESTNET"), + chain_id: 713715, + }, sepolia: { rpc: "https://rpc.ankr.com/eth_sepolia", key: getEnvVar("ETH_KEY_TESTNET"), @@ -445,16 +510,6 @@ const TESTNET = { key: undefined, chain_id: undefined, }, - scroll: { - rpc: "https://rpc.ankr.com/scroll_sepolia_testnet", - key: getEnvVar("ETH_KEY_TESTNET"), - chain_id: 534353, - }, - mantle: { - rpc: "https://mantle-sepolia.drpc.org", - key: getEnvVar("ETH_KEY_TESTNET"), - chain_id: 5003, - }, arbitrum_sepolia: { rpc: "https://arbitrum-sepolia.publicnode.com", key: getEnvVar("ETH_KEY_TESTNET"), @@ -490,6 +545,11 @@ const TESTNET = { key: undefined, chain_id: undefined, }, + provenance: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, }; const DEVNET = { @@ -584,6 +644,41 @@ const DEVNET = { rpc: undefined, key: undefined, }, + scroll: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, + mantle: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, + blast: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, + xlayer: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, + linea: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, + berachain: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, + seievm: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, sepolia: { rpc: undefined, key: undefined, @@ -660,16 +755,6 @@ const DEVNET = { key: undefined, chain_id: undefined, }, - scroll: { - rpc: undefined, - key: undefined, - chain_id: undefined, - }, - mantle: { - rpc: undefined, - key: undefined, - chain_id: undefined, - }, arbitrum_sepolia: { rpc: undefined, key: undefined, @@ -705,6 +790,11 @@ const DEVNET = { key: undefined, chain_id: undefined, }, + provenance: { + rpc: undefined, + key: undefined, + chain_id: undefined, + }, }; /** diff --git a/clients/js/src/evm.ts b/clients/js/src/evm.ts index afe4d8d44b..4f55a62d40 100644 --- a/clients/js/src/evm.ts +++ b/clients/js/src/evm.ts @@ -3,8 +3,8 @@ import { BridgeImplementation__factory, Implementation__factory, NFTBridgeImplementation__factory, - WormholeRelayer__factory, } from "@certusone/wormhole-sdk/lib/esm/ethers-contracts"; +import { WormholeRelayer__factory } from "@certusone/wormhole-sdk/lib/esm/ethers-relayer-contracts"; import { getWormholeRelayerAddress } from "@certusone/wormhole-sdk/lib/esm/relayer"; import { CHAINS, diff --git a/cspell-custom-words.txt b/cspell-custom-words.txt index 22fc269f3c..5500bde61a 100644 --- a/cspell-custom-words.txt +++ b/cspell-custom-words.txt @@ -7,6 +7,7 @@ Algorand algosdk alist Aptos +arbitrum authorisation authorise authorised @@ -25,6 +26,7 @@ callstack CCTP celestia Celestia +celo certusone Chainlink Coinspect @@ -143,6 +145,7 @@ rustup satoshi secp seda +seievm Sepolia serde setcap @@ -192,6 +195,7 @@ wormchaind Wormholescan wormscan wormscanurl +xlayer xpla XPLA Zellic