Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
588f22e645 | ||
|
|
93167340d0 | ||
|
|
8cbdd51b0d | ||
|
|
701dce23db | ||
|
|
10156ae4a3 | ||
|
|
b5a3556319 |
@@ -1,5 +1,9 @@
|
||||
# ajna-watcher-ts
|
||||
|
||||
## Source
|
||||
|
||||
* Subgraph: [ajna-subgraph v0.1.1](https://github.com/cerc-io/ajna-subgraph/releases/tag/v0.1.1)
|
||||
|
||||
## Setup
|
||||
|
||||
* Run the following command to install required packages:
|
||||
|
||||
@@ -58,7 +58,9 @@
|
||||
|
||||
[upstream]
|
||||
[upstream.ethServer]
|
||||
rpcProviderEndpoint = "http://127.0.0.1:8081"
|
||||
rpcProviderEndpoints = [
|
||||
"http://127.0.0.1:8081"
|
||||
]
|
||||
|
||||
# Boolean flag to specify if rpc-eth-client should be used for RPC endpoint instead of ipld-eth-client (ipld-eth-server GQL client)
|
||||
rpcClient = true
|
||||
@@ -67,9 +69,9 @@
|
||||
isFEVM = true
|
||||
|
||||
# Boolean flag to filter event logs by contracts
|
||||
filterLogsByAddresses = false
|
||||
filterLogsByAddresses = true
|
||||
# Boolean flag to filter event logs by topics
|
||||
filterLogsByTopics = false
|
||||
filterLogsByTopics = true
|
||||
|
||||
[upstream.cache]
|
||||
name = "requests"
|
||||
@@ -95,3 +97,6 @@
|
||||
# Max block range of historical processing after which it waits for completion of events processing
|
||||
# If set to -1 historical processing does not wait for events processing and completes till latest canonical block
|
||||
historicalMaxFetchAhead = 10000
|
||||
|
||||
# Max number of retries to fetch new block after which watcher will failover to other RPC endpoints
|
||||
maxNewBlockRetries = 3
|
||||
|
||||
+6
-6
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@cerc-io/ajna-watcher-ts",
|
||||
"version": "0.1.3",
|
||||
"version": "0.1.8",
|
||||
"description": "ajna-watcher-ts",
|
||||
"private": true,
|
||||
"main": "dist/index.js",
|
||||
@@ -39,11 +39,11 @@
|
||||
"homepage": "https://github.com/cerc-io/watcher-ts#readme",
|
||||
"dependencies": {
|
||||
"@apollo/client": "^3.3.19",
|
||||
"@cerc-io/cli": "^0.2.85",
|
||||
"@cerc-io/ipld-eth-client": "^0.2.85",
|
||||
"@cerc-io/solidity-mapper": "^0.2.85",
|
||||
"@cerc-io/util": "^0.2.85",
|
||||
"@cerc-io/graph-node": "^0.2.85",
|
||||
"@cerc-io/cli": "^0.2.89",
|
||||
"@cerc-io/ipld-eth-client": "^0.2.89",
|
||||
"@cerc-io/solidity-mapper": "^0.2.89",
|
||||
"@cerc-io/util": "^0.2.89",
|
||||
"@cerc-io/graph-node": "^0.2.89",
|
||||
"@ethersproject/providers": "^5.4.4",
|
||||
"debug": "^4.3.1",
|
||||
"decimal.js": "^10.3.1",
|
||||
|
||||
+12
-5
@@ -6,7 +6,7 @@ import assert from 'assert';
|
||||
import { DeepPartial, FindConditions, FindManyOptions, ObjectLiteral } from 'typeorm';
|
||||
import debug from 'debug';
|
||||
import { ethers, constants } from 'ethers';
|
||||
import { SelectionNode } from 'graphql';
|
||||
import { GraphQLResolveInfo } from 'graphql';
|
||||
|
||||
import { JsonFragment } from '@ethersproject/abi';
|
||||
import { BaseProvider } from '@ethersproject/providers';
|
||||
@@ -326,6 +326,13 @@ export class Indexer implements IndexerInterface {
|
||||
await this._baseIndexer.fetchStateStatus();
|
||||
}
|
||||
|
||||
switchClients ({ ethClient, ethProvider }: { ethClient: EthClient, ethProvider: BaseProvider }): void {
|
||||
this._ethClient = ethClient;
|
||||
this._ethProvider = ethProvider;
|
||||
this._baseIndexer.switchClients({ ethClient, ethProvider });
|
||||
this._graphWatcher.switchClients({ ethClient, ethProvider });
|
||||
}
|
||||
|
||||
async getMetaData (block: BlockHeight): Promise<ResultMeta | null> {
|
||||
return this._baseIndexer.getMetaData(block);
|
||||
}
|
||||
@@ -457,9 +464,9 @@ export class Indexer implements IndexerInterface {
|
||||
entity: new () => Entity,
|
||||
id: string,
|
||||
block: BlockHeight,
|
||||
selections: ReadonlyArray<SelectionNode> = []
|
||||
queryInfo: GraphQLResolveInfo
|
||||
): Promise<any> {
|
||||
const data = await this._graphWatcher.getEntity(entity, id, this._relationsMap, block, selections);
|
||||
const data = await this._graphWatcher.getEntity(entity, id, this._relationsMap, block, queryInfo);
|
||||
|
||||
return data;
|
||||
}
|
||||
@@ -469,9 +476,9 @@ export class Indexer implements IndexerInterface {
|
||||
block: BlockHeight,
|
||||
where: { [key: string]: any } = {},
|
||||
queryOptions: QueryOptions = {},
|
||||
selections: ReadonlyArray<SelectionNode> = []
|
||||
queryInfo: GraphQLResolveInfo
|
||||
): Promise<any[]> {
|
||||
return this._graphWatcher.getEntities(entity, this._relationsMap, block, where, queryOptions, selections);
|
||||
return this._graphWatcher.getEntities(entity, this._relationsMap, block, where, queryOptions, queryInfo);
|
||||
}
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
||||
|
||||
+134
-268
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -176,10 +176,10 @@
|
||||
binaryen "101.0.0-nightly.20210723"
|
||||
long "^4.0.0"
|
||||
|
||||
"@cerc-io/cache@^0.2.85":
|
||||
version "0.2.85"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fcache/-/0.2.85/cache-0.2.85.tgz#687240f5364d9a18e0903857515e8d89e4f769f5"
|
||||
integrity sha512-JbMhZ2lLelpHZ7+CIJQ1jwyNlrCbAXlN+sI+YQlRbFcnFwzGLKNYGMshQzZBlh5fb908oKXMALJcxIGOcNu1Zw==
|
||||
"@cerc-io/cache@^0.2.89":
|
||||
version "0.2.89"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fcache/-/0.2.89/cache-0.2.89.tgz#89bddf8e1e9ae40939315cd8aec5dd9138feb85a"
|
||||
integrity sha512-cF565BA7vltlecC7AG+Ih0hzEyAS89MLxLMFnCdYzObGqM0vyBP7RruC6RNu304Jg1zV/T2ablb6qh4VBPgCvQ==
|
||||
dependencies:
|
||||
canonical-json "^0.0.4"
|
||||
debug "^4.3.1"
|
||||
@@ -187,19 +187,19 @@
|
||||
fs-extra "^10.0.0"
|
||||
level "^7.0.0"
|
||||
|
||||
"@cerc-io/cli@^0.2.85":
|
||||
version "0.2.85"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fcli/-/0.2.85/cli-0.2.85.tgz#cc4e0a210a94bfb4ee0105125fa4ebb8d1909ec3"
|
||||
integrity sha512-arQ1SwhDTgMeEHPlowXhFXBMuIK4drV8AW4x4aisZp49/A/ceJYhNkW0sbiVTm4uwBMGFioRxfo+fmRUtim4nw==
|
||||
"@cerc-io/cli@^0.2.89":
|
||||
version "0.2.89"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fcli/-/0.2.89/cli-0.2.89.tgz#9b67bd9add6f1f6ca67e947b38cc544ad6108c4c"
|
||||
integrity sha512-Jduv4PCa8+Lru1VRYM+EudWXT9UE7uy+hRaHfWi4wGhWLKGd6S8A7WymbJtjA9NC0sNinBbfZmOLQ8xeiIypZA==
|
||||
dependencies:
|
||||
"@apollo/client" "^3.7.1"
|
||||
"@cerc-io/cache" "^0.2.85"
|
||||
"@cerc-io/ipld-eth-client" "^0.2.85"
|
||||
"@cerc-io/cache" "^0.2.89"
|
||||
"@cerc-io/ipld-eth-client" "^0.2.89"
|
||||
"@cerc-io/libp2p" "^0.42.2-laconic-0.1.4"
|
||||
"@cerc-io/nitro-node" "^0.1.15"
|
||||
"@cerc-io/peer" "^0.2.85"
|
||||
"@cerc-io/rpc-eth-client" "^0.2.85"
|
||||
"@cerc-io/util" "^0.2.85"
|
||||
"@cerc-io/peer" "^0.2.89"
|
||||
"@cerc-io/rpc-eth-client" "^0.2.89"
|
||||
"@cerc-io/util" "^0.2.89"
|
||||
"@ethersproject/providers" "^5.4.4"
|
||||
"@graphql-tools/utils" "^9.1.1"
|
||||
"@ipld/dag-cbor" "^8.0.0"
|
||||
@@ -220,16 +220,16 @@
|
||||
typeorm "0.2.37"
|
||||
yargs "^17.0.1"
|
||||
|
||||
"@cerc-io/graph-node@^0.2.85":
|
||||
version "0.2.85"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fgraph-node/-/0.2.85/graph-node-0.2.85.tgz#1d715a3bab5d9e8fa1bd42bb649d7c8d11393701"
|
||||
integrity sha512-8xn5gbZrxHTH17et07y7CZcquXj0W13NHTrawujlMeNkLziDeBTQJMeePaWAoyGR0WMjxvGV60lk4AM7D/OI+A==
|
||||
"@cerc-io/graph-node@^0.2.89":
|
||||
version "0.2.89"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fgraph-node/-/0.2.89/graph-node-0.2.89.tgz#ee536a33a109cb470551190505ed16616fdb279f"
|
||||
integrity sha512-Jolu16pGpx9L9I/GBP1vY08Gvcv+imDKvttIeH4AHbWeMvPAAFYSh57PJGYwVO3T1/Sbg5o9xU6po+rYRDhqTw==
|
||||
dependencies:
|
||||
"@apollo/client" "^3.3.19"
|
||||
"@cerc-io/assemblyscript" "0.19.10-watcher-ts-0.1.2"
|
||||
"@cerc-io/cache" "^0.2.85"
|
||||
"@cerc-io/ipld-eth-client" "^0.2.85"
|
||||
"@cerc-io/util" "^0.2.85"
|
||||
"@cerc-io/cache" "^0.2.89"
|
||||
"@cerc-io/ipld-eth-client" "^0.2.89"
|
||||
"@cerc-io/util" "^0.2.89"
|
||||
"@types/json-diff" "^0.5.2"
|
||||
"@types/yargs" "^17.0.0"
|
||||
bn.js "^4.11.9"
|
||||
@@ -246,14 +246,14 @@
|
||||
typeorm-naming-strategies "^2.0.0"
|
||||
yargs "^17.0.1"
|
||||
|
||||
"@cerc-io/ipld-eth-client@^0.2.85":
|
||||
version "0.2.85"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fipld-eth-client/-/0.2.85/ipld-eth-client-0.2.85.tgz#c3ac789d4c803d627fed68e962fc3bc43f911b6a"
|
||||
integrity sha512-ewCPbMAUi0pfFsLz5+dRaGAtmBW6vOlXmnzKFZ/aCqtlqF36g+dg7y6In4PpOqleGAHUGOfEssfl5Om10wjacg==
|
||||
"@cerc-io/ipld-eth-client@^0.2.89":
|
||||
version "0.2.89"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fipld-eth-client/-/0.2.89/ipld-eth-client-0.2.89.tgz#c0e969207cafb853d82989fe354ef86c54790e40"
|
||||
integrity sha512-NVW8ro5Is6YlBLZUw2LRxB3r1Wig23XO49iKYSPKl3NHD9vb8DuhSn2ZKTEnH5PQ23LmjeaOPUOe6iD83OC/qg==
|
||||
dependencies:
|
||||
"@apollo/client" "^3.7.1"
|
||||
"@cerc-io/cache" "^0.2.85"
|
||||
"@cerc-io/util" "^0.2.85"
|
||||
"@cerc-io/cache" "^0.2.89"
|
||||
"@cerc-io/util" "^0.2.89"
|
||||
cross-fetch "^3.1.4"
|
||||
debug "^4.3.1"
|
||||
ethers "^5.4.4"
|
||||
@@ -406,10 +406,10 @@
|
||||
unique-names-generator "^4.7.1"
|
||||
yargs "^17.0.1"
|
||||
|
||||
"@cerc-io/peer@^0.2.85":
|
||||
version "0.2.85"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fpeer/-/0.2.85/peer-0.2.85.tgz#edfb193e0054e148c513abf4cc44cfceb6a4ff2b"
|
||||
integrity sha512-qP/ruyHNMhLSi5yUwUTtZ53E388RCrWKIafmQ9Zn3req2ZU1FCd2r5hBtUv0tnboy2AgB76wpvxrPNG3E8+yAQ==
|
||||
"@cerc-io/peer@^0.2.89":
|
||||
version "0.2.89"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fpeer/-/0.2.89/peer-0.2.89.tgz#0e91ff1d84bdc30011c25caebafe0a509d4a6676"
|
||||
integrity sha512-N0bi5HowDxWJ8H1klIJrqLsZSpcmvP1g4lpfM4lEcnmTmc3j0IchKO4Z4OelPLlWZWqHCSXsTzD2p1KnxkIKDw==
|
||||
dependencies:
|
||||
"@cerc-io/libp2p" "^0.42.2-laconic-0.1.4"
|
||||
"@cerc-io/prometheus-metrics" "1.1.4"
|
||||
@@ -448,23 +448,23 @@
|
||||
it-stream-types "^1.0.4"
|
||||
promjs "^0.4.2"
|
||||
|
||||
"@cerc-io/rpc-eth-client@^0.2.85":
|
||||
version "0.2.85"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Frpc-eth-client/-/0.2.85/rpc-eth-client-0.2.85.tgz#0131d631b1ca241928a5d28a3fab18201b93f821"
|
||||
integrity sha512-sj4p89C7STw/Tbg+HdDCs9ZMnnK5dkqdmFkwL0SwUiHoEoxny/D6tWigIpLqucqdBIwB4HvsRlLforL8wEWBzQ==
|
||||
"@cerc-io/rpc-eth-client@^0.2.89":
|
||||
version "0.2.89"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Frpc-eth-client/-/0.2.89/rpc-eth-client-0.2.89.tgz#8f0750677598395d15b70e55d3730ee40e143ab5"
|
||||
integrity sha512-N/s2OMIszD+7NQwCbC4m8R+AjnIG4W4/V9q/4//H6EIgfNYno+mnjYi3qU+nFlZe2gbWR4JiOU6JT7R4hm16kw==
|
||||
dependencies:
|
||||
"@cerc-io/cache" "^0.2.85"
|
||||
"@cerc-io/ipld-eth-client" "^0.2.85"
|
||||
"@cerc-io/util" "^0.2.85"
|
||||
"@cerc-io/cache" "^0.2.89"
|
||||
"@cerc-io/ipld-eth-client" "^0.2.89"
|
||||
"@cerc-io/util" "^0.2.89"
|
||||
chai "^4.3.4"
|
||||
ethers "^5.4.4"
|
||||
left-pad "^1.3.0"
|
||||
mocha "^8.4.0"
|
||||
|
||||
"@cerc-io/solidity-mapper@^0.2.85":
|
||||
version "0.2.85"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fsolidity-mapper/-/0.2.85/solidity-mapper-0.2.85.tgz#9c7c8a3122da6a4f8c69f3cc100aeafc22ede48a"
|
||||
integrity sha512-4KqNi8IBVK52KpWBwydZw/kitglOAf6TkoQ1sDOiGfp51Yd/UAeI9eM+nluH4NVrZ1Nb/s/3i5h7Di5wHObNcA==
|
||||
"@cerc-io/solidity-mapper@^0.2.89":
|
||||
version "0.2.89"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fsolidity-mapper/-/0.2.89/solidity-mapper-0.2.89.tgz#9cf1cfb125d9f275fd6c3d8a09571e65ac80475f"
|
||||
integrity sha512-gBecAbjpnvi+i/EEhgkJc5BXHV+U9ZsvEWESdO7Hse+GW4EVb0nwEAVHcWAUp+MfcBFz5XcH/6oEHnCselk4Ew==
|
||||
dependencies:
|
||||
dotenv "^10.0.0"
|
||||
|
||||
@@ -473,15 +473,15 @@
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fts-channel/-/1.0.3-ts-nitro-0.1.1/ts-channel-1.0.3-ts-nitro-0.1.1.tgz#0768781313a167295c0bf21307f47e02dc17e936"
|
||||
integrity sha512-2jFICUSyffuZ+8+qRhXuLSJq4GJ6Y02wxiXoubH0Kzv2lIKkJtWICY1ZQQhtXAvP0ncAQB85WJHqtqwH8l7J3Q==
|
||||
|
||||
"@cerc-io/util@^0.2.85":
|
||||
version "0.2.85"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Futil/-/0.2.85/util-0.2.85.tgz#6fb3668e3b3f9fa9e893614f65f17d76696c7c8a"
|
||||
integrity sha512-/6GDN0yhZVaDNmET2fuYBsY46lFyWEd8OoRhK+ZNpEAluhAePZ5UHMFLlHlRmPNVAqkSWtvuL8fFX4ss7I/Aew==
|
||||
"@cerc-io/util@^0.2.89":
|
||||
version "0.2.89"
|
||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Futil/-/0.2.89/util-0.2.89.tgz#ab12302e503723bdb86c80979abd5ba7640ba5ff"
|
||||
integrity sha512-NdiyNKOMXVUEchVQ7cjwfGg57v664NXAML6RXakxnkk1KoD1WIO9EeZHilvCCnEK9aDDyu3Wz3hVW3y/6TCEwQ==
|
||||
dependencies:
|
||||
"@apollo/utils.keyvaluecache" "^1.0.1"
|
||||
"@cerc-io/nitro-node" "^0.1.15"
|
||||
"@cerc-io/peer" "^0.2.85"
|
||||
"@cerc-io/solidity-mapper" "^0.2.85"
|
||||
"@cerc-io/peer" "^0.2.89"
|
||||
"@cerc-io/solidity-mapper" "^0.2.89"
|
||||
"@cerc-io/ts-channel" "1.0.3-ts-nitro-0.1.1"
|
||||
"@ethersproject/properties" "^5.7.0"
|
||||
"@ethersproject/providers" "^5.4.4"
|
||||
|
||||
Reference in New Issue
Block a user