mirror of
https://github.com/cerc-io/watcher-ts
synced 2026-09-11 18:24:05 +00:00
Add ETH RPC API to watcher server (#535)
* Add ETH RPC API to watcher server * Add eth_call API handler * Add error handling to eth_call handler * Parse block tag in eth_call handler * Add a flag to enable ETH RPC server * Fix lint errors * Update block tag parsing
This commit is contained in:
@@ -32,7 +32,8 @@ import {
|
||||
readParty,
|
||||
UpstreamConfig,
|
||||
fillBlocks,
|
||||
createGQLLogger
|
||||
createGQLLogger,
|
||||
createEthRPCHandlers
|
||||
} from '@cerc-io/util';
|
||||
import { TypeSource } from '@graphql-tools/utils';
|
||||
import type {
|
||||
@@ -285,6 +286,7 @@ export class ServerCmd {
|
||||
const jobQueue = this._baseCmd.jobQueue;
|
||||
const indexer = this._baseCmd.indexer;
|
||||
const eventWatcher = this._baseCmd.eventWatcher;
|
||||
const ethProvider = this._baseCmd.ethProvider;
|
||||
|
||||
assert(config);
|
||||
assert(jobQueue);
|
||||
@@ -317,9 +319,11 @@ export class ServerCmd {
|
||||
const gqlLogger = createGQLLogger(config.server.gql.logDir);
|
||||
const resolvers = await createResolvers(indexer, eventWatcher, gqlLogger);
|
||||
|
||||
const ethRPCHandlers = await createEthRPCHandlers(indexer, ethProvider);
|
||||
|
||||
// Create an Express app
|
||||
const app: Application = express();
|
||||
const server = await createAndStartServer(app, typeDefs, resolvers, config.server, paymentsManager);
|
||||
const server = await createAndStartServer(app, typeDefs, resolvers, ethRPCHandlers, config.server, paymentsManager);
|
||||
|
||||
await startGQLMetricsServer(config);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user