forked from ensdomains/ens-subgraph
-
Notifications
You must be signed in to change notification settings - Fork 2
/
subgraph.template.yaml
153 lines (149 loc) · 5.11 KB
/
subgraph.template.yaml
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
specVersion: 0.0.4
description: >-
A secure & decentralized way to address resources on and off the blockchain
using simple, human-readable names. Access domains and transfer history.
repository: 'https://github.com/imperviousinc/forever-subgraph'
schema:
file: ./schema.graphql
dataSources:
- kind: ethereum/contract
name: ENSRegistry
network: {{network}}
source:
startBlock: {{startBlock}}
address: '{{addresses.ens}}'
abi: ENSRegistry
mapping:
kind: ethereum/events
apiVersion: 0.0.5
language: wasm/assemblyscript
file: ./src/ensRegistry.ts
entities:
- Domain
- Account
- Resolver
abis:
- name: ENSRegistry
file: ./abi/ENSRegistry.json
eventHandlers:
- event: 'Transfer(indexed bytes32,address)'
handler: handleTransfer
- event: 'NewOwner(indexed bytes32,indexed bytes32,address)'
handler: handleNewOwner
- event: 'NewResolver(indexed bytes32,address)'
handler: handleNewResolver
- event: 'NewTTL(indexed bytes32,uint64)'
handler: handleNewTTL
- kind: ethereum/contract
name: Resolver
network: {{network}}
source:
startBlock: {{startBlock}}
abi: Resolver
mapping:
kind: ethereum/events
apiVersion: 0.0.5
language: wasm/assemblyscript
file: ./src/resolver.ts
entities:
- AddrChanged
- MulticoinAddrChanged
- NameChanged
- AbiChanged
- PubkeyChanged
- Textchanged
- ContenthashChanged
- InterfaceChanged
- AuthorisationChanged
abis:
- name: Resolver
file: ./abi/PublicResolver.json
eventHandlers:
- event: 'ABIChanged(indexed bytes32,indexed uint256)'
handler: handleABIChanged
- event: 'AddrChanged(indexed bytes32,address)'
handler: handleAddrChanged
- event: 'AddressChanged(indexed bytes32,uint256,bytes)'
handler: handleMulticoinAddrChanged
- event: 'AuthorisationChanged(indexed bytes32,indexed address,indexed address,bool)'
handler: handleAuthorisationChanged
- event: 'ContenthashChanged(indexed bytes32,bytes)'
handler: handleContentHashChanged
- event: 'InterfaceChanged(indexed bytes32,indexed bytes4,address)'
handler: handleInterfaceChanged
- event: 'NameChanged(indexed bytes32,string)'
handler: handleNameChanged
- event: 'PubkeyChanged(indexed bytes32,bytes32,bytes32)'
handler: handlePubkeyChanged
- event: 'TextChanged(indexed bytes32,indexed string,string)'
handler: handleTextChanged
- event: 'DNSRecordChanged(indexed bytes32,bytes,uint16,bytes)'
handler: handleDnsRecordChanged
- event: 'DNSRecordDeleted(indexed bytes32,bytes,uint16)'
handler: handleDnsRecordDeleted
- event: 'DNSZoneCleared(indexed bytes32)'
handler: handleDnsZoneCleared
- kind: ethereum/contract
name: BaseRegistrar
network: {{network}}
source:
startBlock: {{startBlock}}
address: '{{addresses.registrar}}'
abi: BaseRegistrar
mapping:
kind: ethereum/events
apiVersion: 0.0.5
language: wasm/assemblyscript
file: ./src/ethRegistrar.ts
entities:
- Registration
- NameRegistered
- NameTransferred
abis:
- name: BaseRegistrar
file: ./abi/BaseRegistrar.json
eventHandlers:
- event: 'NameRegistered(indexed uint256,indexed address)'
handler: handleNameRegistered
- event: 'Transfer(indexed address,indexed address,indexed uint256)'
handler: handleNameTransferred
- kind: ethereum/contract
name: ETHRegistrarController
network: {{network}}
source:
startBlock: {{startBlock}}
address: '{{addresses.controller}}'
abi: ETHRegistrarController
mapping:
kind: ethereum/events
apiVersion: 0.0.5
language: wasm/assemblyscript
file: ./src/ethRegistrar.ts
entities:
- Registration
abis:
- name: ETHRegistrarController
file: ./abi/ETHRegistrarController.json
eventHandlers:
- event: 'NameRegistered(string,indexed bytes32,indexed address,uint256)'
handler: handleNameRegisteredByController
- kind: ethereum/contract
name: ForeverRegistrarController
network: {{network}}
source:
startBlock: {{startBlock}}
address: '{{addresses.newController}}'
abi: ForeverRegistrarController
mapping:
kind: ethereum/events
apiVersion: 0.0.5
language: wasm/assemblyscript
file: ./src/ethRegistrar.ts
entities:
- Registration
abis:
- name: ForeverRegistrarController
file: ./abi/ForeverRegistrarController.json
eventHandlers:
- event: 'NameRegistered(string,indexed bytes32,indexed address,uint256)'
handler: handleNameRegisteredByController