Add Rfq/Limit distinction
This commit is contained in:
parent
cf71272c10
commit
dbe40249b5
@ -1,3 +1,4 @@
|
|||||||
|
import pdb
|
||||||
from typing import Optional, List
|
from typing import Optional, List
|
||||||
from mev_inspect.schemas.transfers import Transfer
|
from mev_inspect.schemas.transfers import Transfer
|
||||||
from mev_inspect.schemas.swaps import Swap
|
from mev_inspect.schemas.swaps import Swap
|
||||||
@ -20,32 +21,40 @@ class ZeroExSwapClassifier(SwapClassifier):
|
|||||||
) -> Optional[Swap]:
|
) -> Optional[Swap]:
|
||||||
|
|
||||||
token_in_amount: int = 0
|
token_in_amount: int = 0
|
||||||
taker_address: str
|
taker_address: str = ""
|
||||||
|
|
||||||
order: List = trace.inputs["order"]
|
order: List = trace.inputs["order"]
|
||||||
|
|
||||||
if "taker" in trace.inputs:
|
|
||||||
taker_address = trace.inputs["taker"]
|
|
||||||
else:
|
|
||||||
taker_address = order[5]
|
|
||||||
|
|
||||||
token_in_address: str = order[0]
|
token_in_address: str = order[0]
|
||||||
token_out_address: str = order[1]
|
token_out_address: str = order[1]
|
||||||
|
|
||||||
token_out_amount: int = trace.inputs["takerTokenFillAmount"]
|
if "Rfq" in trace.function_signature:
|
||||||
|
|
||||||
pool_address = trace.to_address
|
taker_address = order[5]
|
||||||
|
|
||||||
|
elif "Limit" in trace.function_signature:
|
||||||
|
|
||||||
|
taker_address = order[6]
|
||||||
|
|
||||||
|
else:
|
||||||
|
|
||||||
|
raise NotImplementedError
|
||||||
|
|
||||||
|
token_out_amount = trace.inputs["takerTokenFillAmount"]
|
||||||
|
contract_address = trace.to_address
|
||||||
|
|
||||||
for transfer in child_transfers:
|
for transfer in child_transfers:
|
||||||
if transfer.to_address == taker_address:
|
if transfer.to_address == taker_address:
|
||||||
token_in_amount = transfer.amount
|
token_in_amount = transfer.amount
|
||||||
|
|
||||||
|
pdb.set_trace()
|
||||||
|
|
||||||
return Swap(
|
return Swap(
|
||||||
abi_name=trace.abi_name,
|
abi_name=trace.abi_name,
|
||||||
transaction_hash=trace.transaction_hash,
|
transaction_hash=trace.transaction_hash,
|
||||||
block_number=trace.block_number,
|
block_number=trace.block_number,
|
||||||
trace_address=trace.trace_address,
|
trace_address=trace.trace_address,
|
||||||
pool_address=pool_address,
|
contract_address=contract_address,
|
||||||
protocol=trace.protocol,
|
protocol=trace.protocol,
|
||||||
from_address=trace.from_address,
|
from_address=trace.from_address,
|
||||||
to_address=trace.to_address,
|
to_address=trace.to_address,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user