UNPKG

@web3auth/no-modal

Version:
44 lines (41 loc) 1.3 kB
import { createFetchMiddleware } from '@toruslabs/base-controllers'; import { mergeMiddleware } from '@web3auth/auth'; import { RPC_METHODS } from './xrplRpcMiddlewares.js'; function createXrplChainIdMiddleware(chainId) { return (req, res, next, end) => { if (req.method === RPC_METHODS.CHAIN_ID) { res.result = chainId; return end(); } return next(); }; } function createXrplProviderConfigMiddleware(providerConfig) { return (req, res, next, end) => { if (req.method === RPC_METHODS.PROVIDER_CHAIN_CONFIG) { res.result = providerConfig; return end(); } return next(); }; } function createConfigMiddleware(providerConfig) { const { chainId } = providerConfig; return mergeMiddleware([createXrplChainIdMiddleware(chainId), createXrplProviderConfigMiddleware(providerConfig)]); } function createXrplJsonRpcClient(providerConfig) { const { rpcTarget } = providerConfig; const fetchMiddleware = createFetchMiddleware({ rpcTarget }); const networkMiddleware = mergeMiddleware([createConfigMiddleware(providerConfig), fetchMiddleware]); return { networkMiddleware, fetchMiddleware }; } export { createConfigMiddleware, createXrplChainIdMiddleware, createXrplJsonRpcClient, createXrplProviderConfigMiddleware };