import log from 'loglevel'; /** * Returns a middleware that logs RPC activity * @param {{ origin: string }} opts - The middleware options * @returns {Function} */ export default function createLoggerMiddleware(opts) { return function loggerMiddleware( /** @type {any} */ req, /** @type {any} */ res, /** @type {Function} */ next, ) { next((/** @type {Function} */ cb) => { if (res.error) { log.error('Error in RPC response:\n', res); } if (req.isMetamaskInternal) { return; } log.info(`RPC (${opts.origin}):`, req, '->', res); cb(); }); }; }