-
Notifications
You must be signed in to change notification settings - Fork 0
/
project.ts
77 lines (71 loc) · 2.27 KB
/
project.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import {
CosmosDatasourceKind,
CosmosHandlerKind,
CosmosProject,
} from "@subql/types-cosmos";
import * as dotenv from 'dotenv';
import path from 'path';
const mode = process.env.NODE_ENV || 'production';
// Load the appropriate .env file
const dotenvPath = path.resolve(__dirname, `.env${mode !== 'production' ? `.${mode}` : ''}`);
dotenv.config({ path: dotenvPath });
// Can expand the Datasource processor types via the genreic param
const project: CosmosProject = {
specVersion: "1.0.0",
version: "0.0.1",
name: "neutron-starter",
description:
"This project can be use as a starting point for developing your Cosmos neutron based SubQuery project",
runner: {
node: {
name: "@subql/node-cosmos",
version: ">=3.0.0",
},
query: {
name: "@subql/query",
version: "*",
},
},
schema: {
file: "./schema.graphql",
},
network: {
/* The unique chainID of the Cosmos Zone */
chainId: process.env.CHAIN_ID!,
/**
* These endpoint(s) should be public non-pruned archive node
* We recommend providing more than one endpoint for improved reliability, performance, and uptime
* Public nodes may be rate limited, which can affect indexing speed
* When developing your project we suggest getting a private API key
* If you use a rate limited endpoint, adjust the --batch-size and --workers parameters
* These settings can be found in your docker-compose.yaml, they will slow indexing but prevent your project being rate limited
*/
endpoint: process.env.ENDPOINT!?.split(',') as string[] | string,
},
dataSources: [
{
kind: CosmosDatasourceKind.Runtime,
startBlock: 13379322,
mapping: {
file: "./dist/index.js",
handlers: [
{
handler: "handleAirdropClaim",
kind: CosmosHandlerKind.Message,
filter: {
includeFailedTx: false,
type: "/cosmwasm.wasm.v1.MsgExecuteContract",
contractCall: "claim",
values: {
contract:
"neutron198sxsrjvt2v2lln2ajn82ks76k97mj72mtgl7309jehd0vy8rezs7e6c56",
},
},
},
],
},
},
],
};
// Must set default to the project instance
export default project;