diff --git a/backend/packages/backend/src/scripts/init-chains.js b/backend/packages/backend/src/scripts/init-chains.js index 262d5d11..a71fdc28 100644 --- a/backend/packages/backend/src/scripts/init-chains.js +++ b/backend/packages/backend/src/scripts/init-chains.js @@ -105,6 +105,7 @@ const chainsDef = { ss58Format: 10, symbol: "ACA", decimals: 12, + supportAssetTypes: [AssetTypes.EVM_ERC20], }, crust: { name: "Crust", diff --git a/backend/packages/node-api/src/constants.js b/backend/packages/node-api/src/constants.js index 7797e76f..0b727a01 100644 --- a/backend/packages/node-api/src/constants.js +++ b/backend/packages/node-api/src/constants.js @@ -39,6 +39,7 @@ const evmChains = Object.freeze({ moonriver: "moonriver", moonbeam: "moonbeam", ethereum: "ethereum", + acala: "acala", }); const chainBlockTime = { diff --git a/backend/packages/node-api/src/features/evm/providers.js b/backend/packages/node-api/src/features/evm/providers.js index 3a42b68e..0da1ee38 100644 --- a/backend/packages/node-api/src/features/evm/providers.js +++ b/backend/packages/node-api/src/features/evm/providers.js @@ -15,6 +15,11 @@ const glmrUrls = [ "wss://wss.api.moonbeam.network", ]; +const acaEvmUrls = [ + "https://eth-rpc-acala.aca-api.network", + "wss://eth-rpc-acala.aca-api.network", +]; + const ethUrls = [ `wss://mainnet.infura.io/ws/v3/${process.env.INFURA_KEY}`, `https://mainnet.infura.io/v3/${process.env.INFURA_KEY}`, @@ -34,14 +39,23 @@ function createProvider(url = "", network) { const movrChainId = 1285; const glmrChainId = 1284; +const acaEvmChainId = 787; + const movrNetwork = { chainId: movrChainId, name: evmChains.moonriver, }; + const glmrNetwork = { chainId: glmrChainId, name: evmChains.moonbeam, }; + +const acaEvmNetwork = { + chainId: acaEvmChainId, + name: evmChains.acala, +}; + const ethNetwork = { chainId: 1, name: "homestead", @@ -50,6 +64,9 @@ const ethNetwork = { function initProviders() { const movrProviders = movrUrls.map((url) => createProvider(url, movrNetwork)); const glmrProviders = glmrUrls.map((url) => createProvider(url, glmrNetwork)); + const acaEvmProviders = acaEvmUrls.map((url) => + createProvider(url, acaEvmNetwork), + ); if (!process.env.INFURA_KEY) { throw new Error("INFURA_KEY environment variable not set"); @@ -68,6 +85,7 @@ function initProviders() { [evmChains.moonriver]: movrProviders, [evmChains.moonbeam]: glmrProviders, [evmChains.ethereum]: ethProviders, + [evmChains.acala]: acaEvmProviders, }; } diff --git a/next/components/newSpace/content.js b/next/components/newSpace/content.js index d095bf96..2af34963 100644 --- a/next/components/newSpace/content.js +++ b/next/components/newSpace/content.js @@ -73,12 +73,10 @@ export default function Content({ chainsDef, tokensDef }) { const [proposalThreshold, setProposalThreshold] = useState("1"); const [selectedOptions, setSelectedOptions] = useState([ "balance-of", - "balance-of-quorum", "quadratic-balance-of", ]); const options = [ { value: "balance-of", text: "balance-of" }, - { value: "balance-of-quorum", text: "balance-of-quorum" }, { value: "quadratic-balance-of", text: "quadratic-balance-of" }, ]; diff --git a/next/components/newSpace/step2/asset/erc20TokenConfig/index.js b/next/components/newSpace/step2/asset/erc20TokenConfig/index.js index fbf66a10..848772be 100644 --- a/next/components/newSpace/step2/asset/erc20TokenConfig/index.js +++ b/next/components/newSpace/step2/asset/erc20TokenConfig/index.js @@ -23,7 +23,7 @@ export default function Erc20TokenConfig({ const fetchErc20TokenMetadata = useCallback( async (contractAddress) => { const { result, error } = await nextApi.fetch( - `evm/chain/${chain}/contract/${contractAddress}`, + `evm/chain/${chain}/erc20/contract/${contractAddress}`, ); if (error) { return; diff --git a/next/frontedUtils/consts/chains/index.js b/next/frontedUtils/consts/chains/index.js index 467185a3..a6b77b4c 100644 --- a/next/frontedUtils/consts/chains/index.js +++ b/next/frontedUtils/consts/chains/index.js @@ -63,10 +63,14 @@ export const evm = { moonbeam: "moonbeam", moonriver: "moonriver", ethereum: "ethereum", + acala: "acala", }; -export const evmChains = [evm.moonbeam, evm.moonriver, evm.ethereum]; + +export const evmChains = [evm.moonbeam, evm.moonriver, evm.ethereum, evm.acala]; + export const evmChainId = Object.freeze({ [evm.moonbeam]: 1284, [evm.moonriver]: 1285, [evm.ethereum]: 1, + [evm.acala]: 787, });