UNPKG

@moonwell-fi/moonwell-sdk

Version:

TypeScript Interface for Moonwell

33 lines 1.3 kB
import { http, defineChain, fallback } from "viem"; import { mainnet } from "viem/chains"; import { createEnvironmentConfig, } from "../../types/config.js"; import { contracts } from "./contracts.js"; import { custom } from "./custom.js"; import { tokens } from "./tokens.js"; // viem's `mainnet` chain leaves `testnet` undefined; consumers // (e.g. the bridge modal) check `env.chain.testnet === false` strictly. const ethereum = defineChain({ ...mainnet, testnet: false }); const createEnvironment = (rpcUrls, governanceIndexerUrl, lunarIndexerUrl) => createEnvironmentConfig({ key: "ethereum", name: "Ethereum", chain: { ...ethereum, rpcUrls: { default: { http: rpcUrls || ["https://rpc.moonwell.fi/main/evm/1"] }, }, }, transport: rpcUrls ? fallback(rpcUrls.map((url) => http(url))) : http("https://rpc.moonwell.fi/main/evm/1"), governanceIndexerUrl: governanceIndexerUrl || "https://lunar-services-worker.moonwell.workers.dev", lunarIndexerUrl: lunarIndexerUrl || "https://lunar-services-worker.moonwell.workers.dev", tokens, markets: {}, vaults: {}, morphoMarkets: {}, contracts, custom, }); export { createEnvironment, ethereum, tokens }; //# sourceMappingURL=environment.js.map