UNPKG

@biconomy/abstractjs

Version:

SDK for Biconomy integration with support for account abstraction, smart accounts, ERC-4337.

63 lines 3.66 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createMeeClient = exports.getDefaultMeeGasTank = exports.DEFAULT_MEE_TESTNET_SPONSORSHIP_TOKEN_ADDRESS = exports.DEFAULT_MEE_TESTNET_SPONSORSHIP_CHAIN_ID = exports.DEFAULT_MEE_TESTNET_SPONSORSHIP_PAYMASTER_ACCOUNT = exports.DEFAULT_MEE_SPONSORSHIP_TOKEN_ADDRESS = exports.DEFAULT_MEE_SPONSORSHIP_CHAIN_ID = exports.DEFAULT_MEE_SPONSORSHIP_PAYMASTER_ACCOUNT = exports.DEFAULT_PATHFINDER_API_KEY = exports.DEFAULT_PATHFINDER_URL = exports.getDefaultMEENetworkApiKey = exports.getDefaultMEENetworkUrl = void 0; const Helpers_1 = require("../account/utils/Helpers.js"); const createHttpClient_1 = require("./createHttpClient.js"); const mee_1 = require("./decorators/mee/index.js"); const isStagingOrTesting = (0, Helpers_1.isStaging)() || (0, Helpers_1.isTesting)(); const getDefaultMEENetworkUrl = (isStaging = false) => { if (isStaging) { return "https://staging-network.biconomy.io/v1"; } return "https://network.biconomy.io/v1"; }; exports.getDefaultMEENetworkUrl = getDefaultMEENetworkUrl; const getDefaultMEENetworkApiKey = (isStaging = false) => { if (isStaging) { return "mee_3ZhZhHx3hmKrBQxacr283dHt"; } return "mee_3ZZmXCSod4xVXDRCZ5k5LTHg"; }; exports.getDefaultMEENetworkApiKey = getDefaultMEENetworkApiKey; exports.DEFAULT_PATHFINDER_URL = (0, exports.getDefaultMEENetworkUrl)(isStagingOrTesting); exports.DEFAULT_PATHFINDER_API_KEY = (0, exports.getDefaultMEENetworkApiKey)(isStagingOrTesting); exports.DEFAULT_MEE_SPONSORSHIP_PAYMASTER_ACCOUNT = "0x18eAc826f3dD77d065E75E285d3456B751AC80d5"; exports.DEFAULT_MEE_SPONSORSHIP_CHAIN_ID = 8453; exports.DEFAULT_MEE_SPONSORSHIP_TOKEN_ADDRESS = "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"; exports.DEFAULT_MEE_TESTNET_SPONSORSHIP_PAYMASTER_ACCOUNT = "0x18eAc826f3dD77d065E75E285d3456B751AC80d5"; exports.DEFAULT_MEE_TESTNET_SPONSORSHIP_CHAIN_ID = 84532; exports.DEFAULT_MEE_TESTNET_SPONSORSHIP_TOKEN_ADDRESS = "0x036CbD53842c5426634e7929541eC2318f3dCF7e"; const getDefaultMeeGasTank = (isTestnet = false) => { if (isTestnet) { return { address: exports.DEFAULT_MEE_TESTNET_SPONSORSHIP_PAYMASTER_ACCOUNT, token: exports.DEFAULT_MEE_TESTNET_SPONSORSHIP_TOKEN_ADDRESS, chainId: exports.DEFAULT_MEE_TESTNET_SPONSORSHIP_CHAIN_ID }; } return { address: exports.DEFAULT_MEE_SPONSORSHIP_PAYMASTER_ACCOUNT, token: exports.DEFAULT_MEE_SPONSORSHIP_TOKEN_ADDRESS, chainId: exports.DEFAULT_MEE_SPONSORSHIP_CHAIN_ID }; }; exports.getDefaultMeeGasTank = getDefaultMeeGasTank; const createMeeClient = async (params) => { const { account, pollingInterval = 250, url = exports.DEFAULT_PATHFINDER_URL, apiKey = exports.DEFAULT_PATHFINDER_API_KEY, isDebugMode = !!isStagingOrTesting } = params; const httpClient = (0, createHttpClient_1.default)(url, apiKey, isDebugMode); const info = await (0, mee_1.getInfo)(httpClient); info.isDebugMode = isDebugMode; const baseMeeClient = Object.assign(httpClient, { pollingInterval, account, info }); const supportedChains = info.supportedChains.map(({ chainId }) => Number(chainId)); const supported = account.deployments.every(({ chain }) => supportedChains.includes(chain.id)); if (!supported) { throw new Error(`Some account chains are not supported by the MEE node. Please check the supported chains and try again. ${supportedChains.join(", ")}`); } return baseMeeClient.extend(mee_1.meeActions); }; exports.createMeeClient = createMeeClient; //# sourceMappingURL=createMeeClient.js.map