2021-06-09 17:39:13 +03:00
|
|
|
import { Withdrawal, Deposit } from '../generated';
|
|
|
|
import { Withdrawal as WithdrawalEntity, Deposit as DepositEntity } from '../generated/schema';
|
2021-06-07 13:43:31 +03:00
|
|
|
|
2021-06-09 17:39:13 +03:00
|
|
|
import { contractsToInstances } from './contractsToInstances';
|
2021-06-07 13:43:31 +03:00
|
|
|
|
|
|
|
export function handleWithdrawal(event: Withdrawal): void {
|
|
|
|
let entity = new WithdrawalEntity(event.transaction.hash.toHex() + '-' + event.logIndex.toString());
|
|
|
|
|
2021-06-08 19:08:11 +03:00
|
|
|
let result = contractsToInstances.get(event.address.toHexString()).split('-');
|
2021-06-07 13:43:31 +03:00
|
|
|
|
|
|
|
entity.amount = result[1];
|
|
|
|
entity.currency = result[0];
|
|
|
|
|
|
|
|
entity.to = event.params.to;
|
|
|
|
entity.fee = event.params.fee;
|
|
|
|
entity.index = event.logIndex;
|
|
|
|
entity.blockNumber = event.block.number;
|
|
|
|
entity.timestamp = event.block.timestamp;
|
|
|
|
entity.nullifier = event.params.nullifierHash;
|
|
|
|
entity.transactionHash = event.transaction.hash;
|
|
|
|
|
|
|
|
entity.save();
|
|
|
|
}
|
|
|
|
|
|
|
|
export function handleDeposit(event: Deposit): void {
|
2021-06-09 17:39:13 +03:00
|
|
|
let entity = new DepositEntity(event.transaction.hash.toHex() + '-' + event.logIndex.toString());
|
2021-06-07 13:43:31 +03:00
|
|
|
|
2021-06-08 19:08:11 +03:00
|
|
|
let result = contractsToInstances.get(event.address.toHexString()).split('-');
|
2021-06-07 13:43:31 +03:00
|
|
|
|
|
|
|
entity.amount = result[1];
|
|
|
|
entity.currency = result[0];
|
|
|
|
|
|
|
|
entity.index = event.params.leafIndex;
|
|
|
|
entity.blockNumber = event.block.number;
|
|
|
|
entity.timestamp = event.block.timestamp;
|
|
|
|
entity.commitment = event.params.commitment;
|
|
|
|
entity.transactionHash = event.transaction.hash;
|
|
|
|
|
2021-06-09 17:39:13 +03:00
|
|
|
entity.save();
|
2021-06-07 13:43:31 +03:00
|
|
|
}
|