Skip to content

Commit 44ad556

Browse files
committed
fix: use viem to infer type of decoded event
1 parent e0c6a09 commit 44ad556

File tree

1 file changed

+7
-11
lines changed

1 file changed

+7
-11
lines changed

packages/rln/src/contract/rln_base_contract.ts

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -427,27 +427,22 @@ export class RLNBaseContract {
427427
const decoded = decodeEventLog({
428428
abi: wakuRlnV2Abi,
429429
data: memberRegisteredLog.data,
430-
topics: memberRegisteredLog.topics
430+
topics: memberRegisteredLog.topics,
431+
eventName: "MembershipRegistered"
431432
});
432433

433-
const decodedArgs = decoded.args as {
434-
idCommitment: bigint;
435-
membershipRateLimit: number;
436-
index: number;
437-
};
438-
439434
log.info(
440-
`Successfully registered membership with index ${decodedArgs.index} ` +
441-
`and rate limit ${decodedArgs.membershipRateLimit}`
435+
`Successfully registered membership with index ${decoded.args.index} ` +
436+
`and rate limit ${decoded.args.membershipRateLimit}`
442437
);
443438

444439
return {
445440
identity,
446441
membership: {
447442
address: this.contract.address,
448-
treeIndex: decodedArgs.index,
443+
treeIndex: decoded.args.index,
449444
chainId: String(RLN_CONTRACT.chainId),
450-
rateLimit: decodedArgs.membershipRateLimit
445+
rateLimit: Number(decoded.args.membershipRateLimit)
451446
}
452447
};
453448
} catch (error) {
@@ -496,6 +491,7 @@ export class RLNBaseContract {
496491
}
497492

498493
private async getMemberIndex(idCommitmentBigInt: bigint): Promise<number> {
494+
// Current version of the contract has the index at position 5 in the membership struct
499495
return (await this.contract.read.memberships([idCommitmentBigInt]))[5];
500496
}
501497

0 commit comments

Comments
 (0)