Files

92 lines
2.1 KiB
YAML

specVersion: v0.1.0
package:
name: "ethereum_sfraxeth"
version: v0.1.1
protobuf:
files:
- tycho/evm/v1/vm.proto
- tycho/evm/v1/common.proto
- tycho/evm/v1/utils.proto
- contract.proto
importPaths:
- ../../proto
- ./proto
binaries:
default:
type: wasm/rust-v1
file: ../target/wasm32-unknown-unknown/release/ethereum_sfraxeth.wasm
modules:
- name: map_components
kind: map
initialBlock: 15686046
inputs:
- params: string
- source: sf.ethereum.type.v2.Block
output:
type: proto:tycho.evm.v1.GroupedTransactionProtocolComponents
doc: |
param is the address without the 0x prefix of the sfrax vault you want to track
- name: store_components
kind: store
initialBlock: 15686046
updatePolicy: add
valueType: int64
inputs:
- map: map_components
- name: map_reward_cycles
kind: map
initialBlock: 15686046
inputs:
- source: sf.ethereum.type.v2.Block
- store: store_components
output:
type: proto:contract.v1.BlockRewardCycles
- name: store_reward_cycles
kind: store
initialBlock: 15686046
updatePolicy: set
valueType: bytes
inputs:
- map: map_reward_cycles
- name: map_relative_balances
kind: map
initialBlock: 15686046 # An arbitrary block that should change based on your requirements
inputs:
- source: sf.ethereum.type.v2.Block
- store: store_components
- store: store_reward_cycles
mode: deltas
output:
type: proto:tycho.evm.v1.BalanceDeltas
- name: store_balances
kind: store
initialBlock: 15686046
updatePolicy: add
valueType: bigint
inputs:
- map: map_relative_balances
- name: map_protocol_changes
kind: map
initialBlock: 15686046
inputs:
- source: sf.ethereum.type.v2.Block
- map: map_components
- map: map_relative_balances
- store: store_components
- store: store_balances
mode: deltas # This is the key property that simplifies `BalanceChange` handling
output:
type: proto:tycho.evm.v1.BlockChanges
params:
map_components: "ac3E018457B222d93114458476f3E3416Abbe38F"