UNPKG

@moonwell-fi/moonwell-sdk

Version:

TypeScript Interface for Moonwell

40 lines 1.59 kB
import { arbitrum, avalanche, base, createEnvironment, ethereum, moonbeam, moonriver, optimism, polygon, } from "../environments/index.js"; import { actions } from "./createActions.js"; export const createMoonwellClient = (config) => { const environments = Object.entries(config.networks).reduce((prev, [curr, networkConfig]) => { if (!networkConfig) return prev; return { ...prev, [curr]: createEnvironment({ chain: curr === "base" ? base : curr === "optimism" ? optimism : curr === "moonbeam" ? moonbeam : curr === "moonriver" ? moonriver : curr === "ethereum" ? ethereum : curr === "avalanche" ? avalanche : curr === "arbitrum" ? arbitrum : polygon, rpcUrls: networkConfig.rpcUrls, }), }; }, {}); if (config.onError) { const onError = config.onError; for (const env of Object.values(environments)) { env.onError = onError; } } const client = { environments, }; return Object.assign(client, actions(client)); }; //# sourceMappingURL=createMoonwellClient.js.map