diff --git a/packages/rln/src/identity.ts b/packages/rln/src/identity.ts index 956786a29b..04d988c518 100644 --- a/packages/rln/src/identity.ts +++ b/packages/rln/src/identity.ts @@ -29,13 +29,13 @@ export class IdentityCredential { ); } - public toJSON(): [number[], number[], number[], number[], string] { - return [ - Array.from(this.IDTrapdoor), - Array.from(this.IDNullifier), - Array.from(this.IDSecretHash), - Array.from(this.IDCommitment), - this.IDCommitmentBigInt.toString() - ]; + public toJSON(): Record { + return { + idTrapdoor: Array.from(this.IDTrapdoor), + idNullifier: Array.from(this.IDNullifier), + idSecretHash: Array.from(this.IDSecretHash), + idCommitment: Array.from(this.IDCommitment), + idCommitmentBigInt: this.IDCommitmentBigInt.toString() + }; } } diff --git a/packages/rln/src/keystore/keystore.ts b/packages/rln/src/keystore/keystore.ts index ff415fe492..49eaaeca58 100644 --- a/packages/rln/src/keystore/keystore.ts +++ b/packages/rln/src/keystore/keystore.ts @@ -251,11 +251,11 @@ export class Keystore { const str = bytesToUtf8(bytes); const obj = JSON.parse(str); - // Get identity arrays - const [idTrapdoor, idNullifier, idSecretHash, idCommitment] = _.get( + // Get identity fields from named object + const { idTrapdoor, idNullifier, idSecretHash, idCommitment } = _.get( obj, "identityCredential", - [] + {} ); const idTrapdoorArray = new Uint8Array(idTrapdoor || []); @@ -299,12 +299,12 @@ export class Keystore { return utf8ToBytes( JSON.stringify({ treeIndex: options.membership.treeIndex, - identityCredential: [ - Array.from(options.identity.IDTrapdoor), - Array.from(options.identity.IDNullifier), - Array.from(options.identity.IDSecretHash), - Array.from(options.identity.IDCommitment) - ], + identityCredential: { + idTrapdoor: Array.from(options.identity.IDTrapdoor), + idNullifier: Array.from(options.identity.IDNullifier), + idSecretHash: Array.from(options.identity.IDSecretHash), + idCommitment: Array.from(options.identity.IDCommitment) + }, membershipContract: { chainId: options.membership.chainId, address: options.membership.address