Files
Domenico e484ea28ca Sdk implementation: Sfrax adapter and substream (#91)
* feat: initial setup

* feat: implemented getCapabilities and getTokens

* chore: adjusted getPoolIds

* feat: Initial implementation of getLimits()

* feat: implemented getLimits, getTokens and internal functions for amounts

* feat: implemented price

* feat: implemented swap function

* fix and test: fixed minor issues on adapter and setup test

* debugging price function

* fix: debugged price function and fixed getPriceAt function

* test: testOneIncreasingPriceFoundFraxV3SFrax

* fix: debugging and fixing buy function

* fix: fixed getPriceAt

* test: testing post trade price

* fix: Fixed getPriceAt

* fix: Fixed getLimits

* fix: Fixed prices and improved readability

* fix: Fixed price and transfers in swap

* feat: Finished tests

* chore: Changed approve to safeIncreaseAllowance

* feat: created substream for staked frax

* feat: remove useless files

* feat: fixed dependencies in cargo.toml

* feat: rename folder

* feat: updated cargo.lock

* feat: changed lib.rs, added modules.rs

* feat: update modules.rs with corrects addresses

* feat: rename folder in ethereum-sfrax

* feat: remove useless comments, change locked asset address, rename

* feat: undo changes on mod.rs in ethereum-balancer

* feat: rename variable

* feat: update substreams/cargo.toml

* feat: modify ristfmt.toml

* feat: performed code formatting

* feat: modify src/abi

* feat: performed formatting with nightly

* feat: fix addition opeation

* feat: adjust code with for i, f

* feat: performed fmt inside ethereum-sfrax folder

* feat: performed clippy

* feat: fix with clippy warning suggests

* feat: undo any change in ethereum-balancer

* feat: change stakedfrax_contract.rs

* fix: stakedfrax_contract.rs

* feat: add blank line

* feat: add #[allow(clippy::all)] on ethereum-sfrax/src/abi/mod.rs

* feat: update comments on pool_factories.rs

* feat: update cargo.toml and substreams.yaml

* feat: add tycho evm in pb folder

* feat: add params to take contracts' addresses

* feat: add logic to map rewards_cycle

* feat: performed fmt and fix versioning

* feat: remove useless functions

* feat: add logic to track rewards_to_distribute

* feat: passing CI

* fix: substreams.yaml

* feat: fixed params in manifest

Co-authored-by: mrBovo <bovo.ignazio@proton.me>

* feat: fixed error in map_relative_balances function

* feat: passing CI checks

* fix: 🐛 hex-binary address encoding + refactoring vault-> underlying map

* style: 💄 fix formatting

* feat: Implemented testPoolBehaviour

* alignment with propeller main

* Update forge-std submodule reference to include ds-test

* files update to match propeller/main

* creating integration_test fir sfrax

* fixed FraxV3SFraxAdapter.sol import paths

* updated with correct addresses FraxV3SFraxAdapter manifest.yaml

* updated sfrax manifest.yaml

* updated to support sdk

* integration_test sfrax updated

* fix: 🐛 add reward processing

* chore: ♻️ minor cleanups

* fix: Fixed adapter limits

* fix: fix adapter and substream sdk tests

* fix: Fixed CI errors

* chore: fmt

* chore: Removed unused line

* fix: Fixed clippy warnings

* chore: formatted with rustup

* chore: Removed unused line

* chore: post-build formatting

* chore: Formatting using different toolchain vesion

* chore: 💄 format

* chore: 💄 format 2

* chore: Using static address for frax

* feat: Added second constructor param for sfrax

* fix: Fixed limits on frax sell

* chore: Fixed merge conflict with sfraxeth

* chore: Remove sfraxeth_contract changes

* chore: Fixed EOFs

* fix: Fixed fmt on stakedfrax contract

---------

Co-authored-by: mp-web3 <mp.web3.t@gmail.com>
Co-authored-by: gabrir99 <gabri.ruini@gmail.com>
Co-authored-by: mrBovo <bovo.ignazio@proton.me>
Co-authored-by: Ignazio Bovo <ignazio@jsgenesis.com>
Co-authored-by: mrBovo <bovoignazio.dev@gmail.com>
Co-authored-by: Mattia <mp.web3@gmail.com>
2024-10-25 18:53:06 +01:00

277 lines
8.0 KiB
Protocol Buffer

syntax = "proto3";
import "google/protobuf/timestamp.proto";
package contract.v1;
message Events {
repeated stakedfrax_Approval stakedfrax_approvals = 1;
repeated stakedfrax_Deposit stakedfrax_deposits = 2;
repeated stakedfrax_DistributeRewards stakedfrax_distribute_rewards = 3;
repeated stakedfrax_SetMaxDistributionPerSecondPerAsset stakedfrax_set_max_distribution_per_second_per_assets = 4;
repeated stakedfrax_SyncRewards stakedfrax_sync_rewards = 5;
repeated stakedfrax_TimelockTransferStarted stakedfrax_timelock_transfer_starteds = 6;
repeated stakedfrax_TimelockTransferred stakedfrax_timelock_transferreds = 7;
repeated stakedfrax_Transfer stakedfrax_transfers = 8;
repeated stakedfrax_Withdraw stakedfrax_withdraws = 9;
}
message Calls {
repeated stakedfrax_AcceptTransferTimelockCall stakedfrax_call_accept_transfer_timelocks = 1;
repeated stakedfrax_ApproveCall stakedfrax_call_approves = 2;
repeated stakedfrax_DepositCall stakedfrax_call_deposits = 3;
repeated stakedfrax_DepositWithSignatureCall stakedfrax_call_deposit_with_signatures = 4;
repeated stakedfrax_MintCall stakedfrax_call_mints = 5;
repeated stakedfrax_PermitCall stakedfrax_call_permits = 6;
repeated stakedfrax_RedeemCall stakedfrax_call_redeems = 7;
repeated stakedfrax_RenounceTimelockCall stakedfrax_call_renounce_timelocks = 8;
repeated stakedfrax_SetMaxDistributionPerSecondPerAssetCall stakedfrax_call_set_max_distribution_per_second_per_assets = 9;
repeated stakedfrax_SyncRewardsAndDistributionCall stakedfrax_call_sync_rewards_and_distributions = 10;
repeated stakedfrax_TransferCall stakedfrax_call_transfers = 11;
repeated stakedfrax_TransferFromCall stakedfrax_call_transfer_froms = 12;
repeated stakedfrax_TransferTimelockCall stakedfrax_call_transfer_timelocks = 13;
repeated stakedfrax_WithdrawCall stakedfrax_call_withdraws = 14;
}
message stakedfrax_Approval {
string evt_tx_hash = 1;
uint32 evt_index = 2;
google.protobuf.Timestamp evt_block_time = 3;
uint64 evt_block_number = 4;
bytes owner = 5;
bytes spender = 6;
string amount = 7;
}
message stakedfrax_Deposit {
string evt_tx_hash = 1;
uint32 evt_index = 2;
google.protobuf.Timestamp evt_block_time = 3;
uint64 evt_block_number = 4;
bytes caller = 5;
bytes owner = 6;
string assets = 7;
string shares = 8;
}
message stakedfrax_DistributeRewards {
string evt_tx_hash = 1;
uint32 evt_index = 2;
google.protobuf.Timestamp evt_block_time = 3;
uint64 evt_block_number = 4;
string rewards_to_distribute = 5;
}
message stakedfrax_SetMaxDistributionPerSecondPerAsset {
string evt_tx_hash = 1;
uint32 evt_index = 2;
google.protobuf.Timestamp evt_block_time = 3;
uint64 evt_block_number = 4;
string old_max = 5;
string new_max = 6;
}
message stakedfrax_SyncRewards {
string evt_tx_hash = 1;
uint32 evt_index = 2;
google.protobuf.Timestamp evt_block_time = 3;
uint64 evt_block_number = 4;
uint64 cycle_end = 5;
uint64 last_sync = 6;
string reward_cycle_amount = 7;
}
message stakedfrax_TimelockTransferStarted {
string evt_tx_hash = 1;
uint32 evt_index = 2;
google.protobuf.Timestamp evt_block_time = 3;
uint64 evt_block_number = 4;
bytes previous_timelock = 5;
bytes new_timelock = 6;
}
message stakedfrax_TimelockTransferred {
string evt_tx_hash = 1;
uint32 evt_index = 2;
google.protobuf.Timestamp evt_block_time = 3;
uint64 evt_block_number = 4;
bytes previous_timelock = 5;
bytes new_timelock = 6;
}
message stakedfrax_Transfer {
string evt_tx_hash = 1;
uint32 evt_index = 2;
google.protobuf.Timestamp evt_block_time = 3;
uint64 evt_block_number = 4;
bytes from = 5;
bytes to = 6;
string amount = 7;
}
message stakedfrax_Withdraw {
string evt_tx_hash = 1;
uint32 evt_index = 2;
google.protobuf.Timestamp evt_block_time = 3;
uint64 evt_block_number = 4;
bytes caller = 5;
bytes receiver = 6;
bytes owner = 7;
string assets = 8;
string shares = 9;
}
message stakedfrax_AcceptTransferTimelockCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
}
message stakedfrax_ApproveCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
bytes spender = 6;
string amount = 7;
bool output_param0 = 8;
}
message stakedfrax_DepositCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
string u_assets = 6;
bytes u_receiver = 7;
string output__shares = 8;
}
message stakedfrax_DepositWithSignatureCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
string u_assets = 6;
bytes u_receiver = 7;
string u_deadline = 8;
bool u_approve_max = 9;
uint64 u_v = 10;
bytes u_r = 11;
bytes u_s = 12;
string output__shares = 13;
}
message stakedfrax_MintCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
string u_shares = 6;
bytes u_receiver = 7;
string output__assets = 8;
}
message stakedfrax_PermitCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
bytes owner = 6;
bytes spender = 7;
string value = 8;
string deadline = 9;
uint64 v = 10;
bytes r = 11;
bytes s = 12;
}
message stakedfrax_RedeemCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
string u_shares = 6;
bytes u_receiver = 7;
bytes u_owner = 8;
string output__assets = 9;
}
message stakedfrax_RenounceTimelockCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
}
message stakedfrax_SetMaxDistributionPerSecondPerAssetCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
string u_max_distribution_per_second_per_asset = 6;
}
message stakedfrax_SyncRewardsAndDistributionCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
}
message stakedfrax_TransferCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
bytes to = 6;
string amount = 7;
bool output_param0 = 8;
}
message stakedfrax_TransferFromCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
bytes from = 6;
bytes to = 7;
string amount = 8;
bool output_param0 = 9;
}
message stakedfrax_TransferTimelockCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
bytes u_new_timelock = 6;
}
message stakedfrax_WithdrawCall {
string call_tx_hash = 1;
google.protobuf.Timestamp call_block_time = 2;
uint64 call_block_number = 3;
uint64 call_ordinal = 4;
bool call_success = 5;
string u_assets = 6;
bytes u_receiver = 7;
bytes u_owner = 8;
string output__shares = 9;
}