mirror of
https://github.com/cerc-io/watcher-ts
synced 2025-01-09 04:48:05 +00:00
06bed1c13b
* Rename .spec files to .test files. * Enable source maps. * Pass enable-source-maps flag for transpiled files. Co-authored-by: nabarun <nabarun@deepstacksoft.com> Co-authored-by: prathamesh <prathamesh.musale0@gmail.com> |
||
---|---|---|
.. | ||
environments | ||
src | ||
test | ||
.eslintignore | ||
.eslintrc.json | ||
.gitignore | ||
hardhat.config.ts | ||
package.json | ||
README.md | ||
tsconfig.json |
ERC20 Watcher
Setup
Create a postgres12 database and provide connection settings in environments/local.toml
.
For example:
sudo su - postgres
createdb erc20-watcher
Update the upstream
config in environments/local.toml
and provide the ipld-eth-server
GQL API and the indexer-db
postgraphile endpoints.
Run
Build files:
yarn build
Run the watcher:
yarn run server
# For development.
yarn run server:dev
# For specifying config file.
yarn run server -f environments/local.toml
GQL console: http://localhost:3001/graphql
Example GQL Queries
{
name(blockHash: "0x5ef95c9847f15179b64fa57994355623f899aca097ad779421b8dff866a8b9c3", token: "0x1ca7c995f8eF0A2989BbcE08D5B7Efe50A584aa1") {
value
proof {
data
}
}
symbol(blockHash: "0x5ef95c9847f15179b64fa57994355623f899aca097ad779421b8dff866a8b9c3", token: "0x1ca7c995f8eF0A2989BbcE08D5B7Efe50A584aa1") {
value
proof {
data
}
}
totalSupply(blockHash: "0x5ef95c9847f15179b64fa57994355623f899aca097ad779421b8dff866a8b9c3", token: "0x1ca7c995f8eF0A2989BbcE08D5B7Efe50A584aa1") {
value
proof {
data
}
}
balanceOf(blockHash: "0x5ef95c9847f15179b64fa57994355623f899aca097ad779421b8dff866a8b9c3", token: "0x1ca7c995f8eF0A2989BbcE08D5B7Efe50A584aa1", owner: "0xDC7d7A8920C8Eecc098da5B7522a5F31509b5Bfc") {
value
proof {
data
}
}
allowance(blockHash: "0x81ed2b04af35b1b276281c37243212731202d5a191a27d07b22a605fd442998d", token: "0x1ca7c995f8eF0A2989BbcE08D5B7Efe50A584aa1", owner: "0xDC7d7A8920C8Eecc098da5B7522a5F31509b5Bfc", spender: "0xCA6D29232D1435D8198E3E5302495417dD073d61") {
value
proof {
data
}
}
events(blockHash: "0x3441ba476dff95c58528afe754ceec659e0ef8ff1b59244ec4545f4f9784a51c", token: "0x1ca7c995f8eF0A2989BbcE08D5B7Efe50A584aa1") {
event {
__typename
... on TransferEvent {
from
to
value
}
... on ApprovalEvent {
owner
spender
value
}
}
proof {
data
}
}
}
Test
To run tests (GQL queries) against the mock server:
yarn run server:mock
yarn test