-
Notifications
You must be signed in to change notification settings - Fork 22
/
Copy pathsubgraph.yaml
182 lines (182 loc) · 6.02 KB
/
subgraph.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
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
specVersion: 0.0.8
description: Olympus Protocol Metrics Subgraph
repository: https://github.com/OlympusDAO/olympus-protocol-metrics-subgraph
features:
- grafting
graft:
base: QmdGqRrQD4FehyTYTmoK9RvveuR3e4vPDsyuqAYF4Nrmfv # 5.4.10
block: 21810000 # Inclusion of native ETH
schema:
file: ../../schema.graphql
dataSources:
- kind: ethereum/contract
name: ProtocolMetrics
network: mainnet
source:
address: "0x0ab87046fBb341D058F17CBC4c1133F25a20a52f"
abi: gOHM
startBlock: 14690000
mapping:
kind: ethereum/events
apiVersion: 0.0.9
language: wasm/assemblyscript
entities:
- ProtocolMetric
- TokenRecord
- TokenSupply
- GnosisAuctionRoot
- GnosisAuction
abis:
- name: OlympusStakingV1
file: ./abis/OlympusStakingV1.json
- name: OlympusStakingV2
file: ./abis/OlympusStakingV2.json
- name: OlympusStakingV3
file: ./abis/OlympusStakingV3.json
- name: sOlympusERC20
file: ./abis/sOlympusERC20.json
- name: sOlympusERC20V2
file: ./abis/sOlympusERC20V2.json
- name: sOlympusERC20V3
file: ./abis/sOlympusERC20V3.json
- name: OlympusERC20
file: ./abis/OlympusERC20.json
- name: wsOHM
file: ./abis/wsOHM.json
- name: UniswapV2Pair
file: ../shared/abis/UniswapV2Pair.json
- name: UniswapV3Pair
file: ../shared/abis/UniswapV3Pair.json
- name: CirculatingSupply
file: ./abis/CirculatingSupply.json
- name: ERC20
file: ../shared/abis/ERC20.json
- name: MasterChef
file: ./abis/MasterChef.json
- name: VeFXS
file: ./abis/VeFXS.json
- name: RariAllocator
file: ./abis/RariAllocator.json
- name: BalancerVault
file: ../shared/abis/BalancerVault.json
- name: BalancerPoolToken
file: ../shared/abis/BalancerPoolToken.json
- name: ConvexBaseRewardPool
file: ./abis/ConvexBaseRewardPool.json
- name: CurvePool
file: ./abis/CurvePool.json
- name: CurvePoolV2
file: ./abis/CurvePoolV2.json
- name: TokeAllocator
file: ./abis/TokeAllocator.json
- name: LUSDAllocatorV2
file: ./abis/LUSDAllocatorV2.json
- name: TokemakStaking
file: ./abis/TokemakStaking.json
- name: LQTYStaking
file: ./abis/LQTYStaking.json
- name: BalancerLiquidityGauge
file: ./abis/BalancerLiquidityGauge.json
- name: gOHM
file: ../shared/abis/gOHM.json
- name: FraxSwapPool
file: ./abis/FraxSwapPool.json
- name: vlCVX
file: ./abis/vlCVX.json
- name: AuraStaking
file: ./abis/AuraStaking.json
- name: AuraLocker
file: ./abis/AuraLocker.json
- name: AuraVirtualBalanceRewardPool
file: ./abis/AuraVirtualBalanceRewardPool.json
- name: FraxFarm
file: ./abis/FraxFarm.json
- name: MakerDSR
file: ./abis/MakerDSR.json
- name: rlBTRFLY
file: ./abis/rlBTRFLY.json
- name: ChainlinkPriceFeed
file: ../shared/abis/ChainlinkPriceFeed.json
- name: LiquityStabilityPool
file: ./abis/StabilityPool.json
- name: ERC4626
file: ./abis/ERC4626.json
- name: UniswapV3PositionManager
file: ./abis/UniswapV3PositionManager.json
# Gnosis Auctions
- name: BondManager
file: ./abis/BondManager.json
- name: GnosisEasyAuction
file: ./abis/GnosisEasyAuction.json
- name: BondFixedExpiryTeller
file: ./abis/BondFixedExpiryTeller.json
# Boosted Liquidity Vault
- name: OlympusBoostedLiquidityRegistry
file: ./abis/OlympusBoostedLiquidityRegistry.json
- name: OlympusBoostedLiquidityVaultLido
file: ./abis/OlympusBoostedLiquidityVaultLido.json
# IncurDebt
- name: IncurDebt
file: ./abis/IncurDebt.json
# Cooler Loans
- name: CoolerLoansClearinghouse
file: ./abis/CoolerLoansClearinghouse.json
# Bophades
- name: BophadesKernel
file: ./abis/BophadesKernel.json
- name: BophadesTreasury
file: ./abis/BophadesTreasury.json
- name: BophadesClearinghouseRegistry
file: ./abis/BophadesClearinghouseRegistry.json
blockHandlers:
- handler: handleMetricsBlock
filter:
kind: polling
# Every 8 hours
# 5 blocks per minute * 60 minutes * 8 hours
every: 2400
file: ./src/protocolMetrics/ProtocolMetrics.ts
###
# BondManager and GnosisEasyAuction index Gnosis auction events, used for bond calculations
###
- kind: ethereum/contract
name: BondManager
network: mainnet
source:
address: "0xf577c77ee3578c7f216327f41b5d7221ead2b2a3"
abi: BondManager
startBlock: 16226955
mapping:
kind: ethereum/events
apiVersion: 0.0.9
language: wasm/assemblyscript
entities:
- GnosisAuctionRoot
- GnosisAuction
abis:
- name: BondManager
file: ./abis/BondManager.json
eventHandlers:
- event: GnosisAuctionLaunched(uint256,address,uint96,uint48)
handler: handleGnosisAuctionLaunched
file: ./src/GnosisAuction.ts
- kind: ethereum/contract
name: GnosisEasyAuction
network: mainnet
source:
address: "0x0b7ffc1f4ad541a4ed16b40d8c37f0929158d101"
abi: GnosisEasyAuction
startBlock: 16226955 # Same as BondManager
mapping:
kind: ethereum/events
apiVersion: 0.0.9
language: wasm/assemblyscript
entities:
- GnosisAuction
abis:
- name: GnosisEasyAuction
file: ./abis/GnosisEasyAuction.json
eventHandlers:
- event: AuctionCleared(indexed uint256,uint96,uint96,bytes32)
handler: handleGnosisAuctionCleared
file: ./src/GnosisAuction.ts