UNPKG

@web3auth/no-modal

Version:
41 lines (37 loc) 986 B
'use strict'; var baseControllers = require('@toruslabs/base-controllers'); var auth = require('@web3auth/auth'); function createEthChainIdMiddleware(chainId) { return ({ request, next }) => { if (request.method === "eth_chainId") return chainId; return next(request); }; } function createEthProviderConfigMiddleware(providerConfig) { return ({ request, next }) => { if (request.method === "eth_provider_config") return providerConfig; return next(request); }; } function createEthJsonRpcClient(providerConfig) { const { chainId, rpcTarget } = providerConfig; const engine = auth.JRPCEngineV2.create({ middleware: [createEthChainIdMiddleware(chainId), createEthProviderConfigMiddleware(providerConfig), baseControllers.createFetchMiddleware({ rpcTarget })] }); const networkMiddleware = engine.asMiddleware(); return { networkMiddleware }; } exports.createEthJsonRpcClient = createEthJsonRpcClient;