66 StakeLocked ,
77 StakeSet as StakeSetEvent ,
88} from "../generated/SortitionModule/SortitionModule" ;
9- import { StakeSet as StakeSetEntity , User } from "../generated/schema" ;
9+ import { StakeSet as StakeSetEntity } from "../generated/schema" ;
1010
11- import { updateJurorDelayedStake , updateJurorStake } from "./entities/JurorTokensPerCourt" ;
11+ import { ensureJurorTokensPerCourt , updateJurorDelayedStake , updateJurorStake } from "./entities/JurorTokensPerCourt" ;
1212import { ensureUser } from "./entities/User" ;
1313import { ZERO } from "./utils" ;
1414
@@ -26,20 +26,19 @@ export function handleStakeDelayedNotTransferred(event: StakeDelayedNotTransferr
2626
2727export function handleStakeSet ( event : StakeSetEvent ) : void {
2828 const jurorAddress = event . params . _address . toHexString ( ) ;
29- ensureUser ( jurorAddress ) ;
29+ const juror = ensureUser ( jurorAddress ) ;
3030 const courtID = event . params . _courtID . toString ( ) ;
3131
3232 updateJurorStake ( jurorAddress , courtID . toString ( ) , SortitionModule . bind ( event . address ) , event . block . timestamp ) ;
3333 //stake is updated instantly so no delayed amount, set delay amount to zero
3434 updateJurorDelayedStake ( jurorAddress , courtID , ZERO ) ;
3535
36- const juror = User . load ( jurorAddress ) ;
37- if ( ! juror ) return ;
3836 const stakeSet = new StakeSetEntity ( event . transaction . hash . toHex ( ) + "-" + event . logIndex . toString ( ) ) ;
39- stakeSet . address = jurorAddress ;
37+ const jurorTokensPerCourt = ensureJurorTokensPerCourt ( jurorAddress , "1" ) ;
38+ stakeSet . juror = juror . id ;
4039 stakeSet . courtID = event . params . _courtID ;
4140 stakeSet . stake = event . params . _amount ;
42- stakeSet . newTotalStake = juror . totalStake ;
41+ stakeSet . newTotalStake = jurorTokensPerCourt . effectiveStake ;
4342 stakeSet . blocknumber = event . block . number ;
4443 stakeSet . timestamp = event . block . timestamp ;
4544 stakeSet . logIndex = event . logIndex ;
0 commit comments