@maci-protocol/sdk 0.0.0-ci.4c6d4e8 → 0.0.0-ci.52ce07e

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/LICENSE +1 -2
  2. package/build/package.json +12 -4
  3. package/build/ts/browser/index.d.ts +2 -1
  4. package/build/ts/browser/index.d.ts.map +1 -1
  5. package/build/ts/browser/index.js +6 -1
  6. package/build/ts/browser/index.js.map +1 -1
  7. package/build/ts/browser/joinPoll.d.ts +4 -2
  8. package/build/ts/browser/joinPoll.d.ts.map +1 -1
  9. package/build/ts/browser/joinPoll.js +21 -17
  10. package/build/ts/browser/joinPoll.js.map +1 -1
  11. package/build/ts/browser/utils.d.ts +2 -2
  12. package/build/ts/browser/utils.d.ts.map +1 -1
  13. package/build/ts/browser/utils.js +3 -3
  14. package/build/ts/browser/utils.js.map +1 -1
  15. package/build/ts/deploy/index.d.ts +2 -2
  16. package/build/ts/deploy/index.d.ts.map +1 -1
  17. package/build/ts/deploy/index.js +3 -3
  18. package/build/ts/deploy/index.js.map +1 -1
  19. package/build/ts/deploy/maci.js +1 -1
  20. package/build/ts/deploy/maci.js.map +1 -1
  21. package/build/ts/deploy/poll.d.ts +1 -1
  22. package/build/ts/deploy/poll.d.ts.map +1 -1
  23. package/build/ts/deploy/poll.js +8 -8
  24. package/build/ts/deploy/poll.js.map +1 -1
  25. package/build/ts/deploy/types.d.ts +9 -8
  26. package/build/ts/deploy/types.d.ts.map +1 -1
  27. package/build/ts/deploy/utils.js +1 -1
  28. package/build/ts/deploy/utils.js.map +1 -1
  29. package/build/ts/deploy/verifyingKeysRegistry.d.ts +7 -0
  30. package/build/ts/deploy/verifyingKeysRegistry.d.ts.map +1 -0
  31. package/build/ts/deploy/verifyingKeysRegistry.js +14 -0
  32. package/build/ts/deploy/verifyingKeysRegistry.js.map +1 -0
  33. package/build/ts/index.d.ts +2 -1
  34. package/build/ts/index.d.ts.map +1 -1
  35. package/build/ts/index.js +12 -7
  36. package/build/ts/index.js.map +1 -1
  37. package/build/ts/maci/state.d.ts +1 -1
  38. package/build/ts/maci/state.js +8 -8
  39. package/build/ts/maci/state.js.map +1 -1
  40. package/build/ts/maci/types.d.ts +1 -1
  41. package/build/ts/maciKeys/__tests__/keypair.test.js +7 -7
  42. package/build/ts/maciKeys/__tests__/keypair.test.js.map +1 -1
  43. package/build/ts/maciKeys/__tests__/publicKeys.test.js +7 -7
  44. package/build/ts/maciKeys/__tests__/publicKeys.test.js.map +1 -1
  45. package/build/ts/maciKeys/keypair.js +3 -3
  46. package/build/ts/maciKeys/keypair.js.map +1 -1
  47. package/build/ts/maciKeys/publicKeys.d.ts +2 -2
  48. package/build/ts/maciKeys/publicKeys.d.ts.map +1 -1
  49. package/build/ts/maciKeys/publicKeys.js +6 -6
  50. package/build/ts/maciKeys/publicKeys.js.map +1 -1
  51. package/build/ts/poll/poll.js +7 -7
  52. package/build/ts/poll/poll.js.map +1 -1
  53. package/build/ts/poll/types.d.ts +6 -6
  54. package/build/ts/poll/types.d.ts.map +1 -1
  55. package/build/ts/proof/__tests__/download.test.js +7 -4
  56. package/build/ts/proof/__tests__/download.test.js.map +1 -1
  57. package/build/ts/proof/download.d.ts +3 -3
  58. package/build/ts/proof/download.d.ts.map +1 -1
  59. package/build/ts/proof/download.js +5 -7
  60. package/build/ts/proof/download.js.map +1 -1
  61. package/build/ts/proof/generate.d.ts +2 -2
  62. package/build/ts/proof/generate.d.ts.map +1 -1
  63. package/build/ts/proof/generate.js +6 -6
  64. package/build/ts/proof/generate.js.map +1 -1
  65. package/build/ts/proof/prove.js +10 -10
  66. package/build/ts/proof/prove.js.map +1 -1
  67. package/build/ts/proof/types.d.ts +30 -4
  68. package/build/ts/proof/types.d.ts.map +1 -1
  69. package/build/ts/proof/utils.d.ts +10 -0
  70. package/build/ts/proof/utils.d.ts.map +1 -0
  71. package/build/ts/proof/utils.js +24 -0
  72. package/build/ts/proof/utils.js.map +1 -0
  73. package/build/ts/relayer/__tests__/messages.test.js +1 -1
  74. package/build/ts/relayer/__tests__/messages.test.js.map +1 -1
  75. package/build/ts/relayer/__tests__/utils.test.js +3 -3
  76. package/build/ts/relayer/__tests__/utils.test.js.map +1 -1
  77. package/build/ts/relayer/messages.js +1 -1
  78. package/build/ts/relayer/utils.js +1 -1
  79. package/build/ts/relayer/utils.js.map +1 -1
  80. package/build/ts/subgraph/index.d.ts +3 -0
  81. package/build/ts/subgraph/index.d.ts.map +1 -0
  82. package/build/ts/subgraph/index.js +18 -0
  83. package/build/ts/subgraph/index.js.map +1 -0
  84. package/build/ts/subgraph/maciSubgraph.d.ts +28 -0
  85. package/build/ts/subgraph/maciSubgraph.d.ts.map +1 -0
  86. package/build/ts/subgraph/maciSubgraph.js +62 -0
  87. package/build/ts/subgraph/maciSubgraph.js.map +1 -0
  88. package/build/ts/subgraph/types.d.ts +20 -0
  89. package/build/ts/subgraph/types.d.ts.map +1 -0
  90. package/build/ts/subgraph/types.js +3 -0
  91. package/build/ts/subgraph/types.js.map +1 -0
  92. package/build/ts/tally/commitments.d.ts.map +1 -1
  93. package/build/ts/tally/commitments.js +8 -7
  94. package/build/ts/tally/commitments.js.map +1 -1
  95. package/build/ts/tally/index.d.ts +2 -1
  96. package/build/ts/tally/index.d.ts.map +1 -1
  97. package/build/ts/tally/index.js +4 -1
  98. package/build/ts/tally/index.js.map +1 -1
  99. package/build/ts/tally/results.d.ts +14 -0
  100. package/build/ts/tally/results.d.ts.map +1 -0
  101. package/build/ts/tally/results.js +44 -0
  102. package/build/ts/tally/results.js.map +1 -0
  103. package/build/ts/tally/types.d.ts +40 -13
  104. package/build/ts/tally/types.d.ts.map +1 -1
  105. package/build/ts/tally/utils.d.ts +3 -3
  106. package/build/ts/tally/utils.d.ts.map +1 -1
  107. package/build/ts/tally/utils.js +10 -10
  108. package/build/ts/tally/utils.js.map +1 -1
  109. package/build/ts/tally/verification.d.ts +1 -1
  110. package/build/ts/tally/verification.d.ts.map +1 -1
  111. package/build/ts/tally/verification.js +10 -10
  112. package/build/ts/tally/verification.js.map +1 -1
  113. package/build/ts/trees/index.d.ts +2 -2
  114. package/build/ts/trees/index.d.ts.map +1 -1
  115. package/build/ts/trees/index.js +3 -1
  116. package/build/ts/trees/index.js.map +1 -1
  117. package/build/ts/trees/stateTree.d.ts +23 -1
  118. package/build/ts/trees/stateTree.d.ts.map +1 -1
  119. package/build/ts/trees/stateTree.js +74 -13
  120. package/build/ts/trees/stateTree.js.map +1 -1
  121. package/build/ts/trees/types.d.ts +11 -2
  122. package/build/ts/trees/types.d.ts.map +1 -1
  123. package/build/ts/user/index.d.ts +2 -2
  124. package/build/ts/user/index.d.ts.map +1 -1
  125. package/build/ts/user/index.js +5 -1
  126. package/build/ts/user/index.js.map +1 -1
  127. package/build/ts/user/joinPoll.js +9 -9
  128. package/build/ts/user/joinPoll.js.map +1 -1
  129. package/build/ts/user/signup.d.ts +3 -3
  130. package/build/ts/user/signup.d.ts.map +1 -1
  131. package/build/ts/user/signup.js +26 -21
  132. package/build/ts/user/signup.js.map +1 -1
  133. package/build/ts/user/types.d.ts +60 -12
  134. package/build/ts/user/types.d.ts.map +1 -1
  135. package/build/ts/user/utils.d.ts +26 -14
  136. package/build/ts/user/utils.d.ts.map +1 -1
  137. package/build/ts/user/utils.js +78 -49
  138. package/build/ts/user/utils.js.map +1 -1
  139. package/build/ts/utils/params.d.ts +1 -1
  140. package/build/ts/utils/params.d.ts.map +1 -1
  141. package/build/ts/utils/params.js +3 -3
  142. package/build/ts/utils/params.js.map +1 -1
  143. package/build/ts/utils/proofs.d.ts +2 -2
  144. package/build/ts/utils/proofs.d.ts.map +1 -1
  145. package/build/ts/utils/proofs.js +4 -4
  146. package/build/ts/utils/proofs.js.map +1 -1
  147. package/build/ts/utils/types.d.ts +2 -2
  148. package/build/ts/utils/types.d.ts.map +1 -1
  149. package/build/ts/verifyingKeys/checkVerifyingKeys.d.ts +1 -1
  150. package/build/ts/verifyingKeys/checkVerifyingKeys.d.ts.map +1 -1
  151. package/build/ts/verifyingKeys/checkVerifyingKeys.js +14 -15
  152. package/build/ts/verifyingKeys/checkVerifyingKeys.js.map +1 -1
  153. package/build/ts/verifyingKeys/index.d.ts +2 -2
  154. package/build/ts/verifyingKeys/index.d.ts.map +1 -1
  155. package/build/ts/verifyingKeys/index.js +5 -5
  156. package/build/ts/verifyingKeys/index.js.map +1 -1
  157. package/build/ts/verifyingKeys/setVerifyingKeys.d.ts +1 -1
  158. package/build/ts/verifyingKeys/setVerifyingKeys.d.ts.map +1 -1
  159. package/build/ts/verifyingKeys/setVerifyingKeys.js +39 -40
  160. package/build/ts/verifyingKeys/setVerifyingKeys.js.map +1 -1
  161. package/build/ts/verifyingKeys/types.d.ts +41 -37
  162. package/build/ts/verifyingKeys/types.d.ts.map +1 -1
  163. package/build/ts/verifyingKeys/utils.d.ts +10 -10
  164. package/build/ts/verifyingKeys/utils.d.ts.map +1 -1
  165. package/build/ts/verifyingKeys/utils.js +75 -60
  166. package/build/ts/verifyingKeys/utils.js.map +1 -1
  167. package/build/ts/vote/generate.d.ts +1 -1
  168. package/build/ts/vote/generate.d.ts.map +1 -1
  169. package/build/ts/vote/generate.js +4 -4
  170. package/build/ts/vote/generate.js.map +1 -1
  171. package/build/ts/vote/index.d.ts +1 -1
  172. package/build/ts/vote/index.d.ts.map +1 -1
  173. package/build/ts/vote/index.js +2 -2
  174. package/build/ts/vote/index.js.map +1 -1
  175. package/build/ts/vote/invalidate.js +3 -3
  176. package/build/ts/vote/invalidate.js.map +1 -1
  177. package/build/ts/vote/publish.d.ts +1 -1
  178. package/build/ts/vote/publish.d.ts.map +1 -1
  179. package/build/ts/vote/publish.js +19 -19
  180. package/build/ts/vote/publish.js.map +1 -1
  181. package/build/ts/vote/submit.js +2 -2
  182. package/build/ts/vote/submit.js.map +1 -1
  183. package/build/ts/vote/types.d.ts +6 -6
  184. package/build/ts/vote/types.d.ts.map +1 -1
  185. package/build/ts/vote/utils.d.ts +2 -2
  186. package/build/ts/vote/utils.d.ts.map +1 -1
  187. package/build/ts/vote/utils.js +5 -5
  188. package/build/ts/vote/utils.js.map +1 -1
  189. package/build/tsconfig.build.tsbuildinfo +1 -1
  190. package/package.json +18 -10
  191. package/build/ts/deploy/vkRegistry.d.ts +0 -7
  192. package/build/ts/deploy/vkRegistry.d.ts.map +0 -1
  193. package/build/ts/deploy/vkRegistry.js +0 -14
  194. package/build/ts/deploy/vkRegistry.js.map +0 -1
  195. package/build/ts/proof/constants.d.ts +0 -17
  196. package/build/ts/proof/constants.d.ts.map +0 -1
  197. package/build/ts/proof/constants.js +0 -20
  198. package/build/ts/proof/constants.js.map +0 -1
@@ -18,15 +18,15 @@ const joinPoll = async ({ maciAddress, privateKey, stateFile, pollId, signer, st
18
18
  if (!validContract) {
19
19
  throw new Error("MACI contract does not exist");
20
20
  }
21
- if (!domainobjs_1.PrivKey.isValidSerializedPrivKey(privateKey)) {
21
+ if (!domainobjs_1.PrivateKey.isValidSerialized(privateKey)) {
22
22
  throw new Error("Invalid MACI private key");
23
23
  }
24
24
  if (pollId < 0) {
25
25
  throw new Error("Invalid poll id");
26
26
  }
27
- const userMaciPrivKey = domainobjs_1.PrivKey.deserialize(privateKey);
28
- const userMaciPubKey = new domainobjs_1.Keypair(userMaciPrivKey).pubKey;
29
- const nullifier = (0, crypto_1.poseidon)([BigInt(userMaciPrivKey.asCircuitInputs()), pollId]);
27
+ const userMaciPrivateKey = domainobjs_1.PrivateKey.deserialize(privateKey);
28
+ const userMaciPublicKey = new domainobjs_1.Keypair(userMaciPrivateKey).publicKey;
29
+ const nullifier = (0, crypto_1.poseidon)([BigInt(userMaciPrivateKey.asCircuitInputs()), pollId]);
30
30
  // check if the user has already joined the poll based on the nullifier
31
31
  const hasUserJoinedAlready = await (0, utils_1.hasUserJoinedPoll)({
32
32
  maciAddress,
@@ -41,14 +41,14 @@ const joinPoll = async ({ maciAddress, privateKey, stateFile, pollId, signer, st
41
41
  const pollContracts = await maciContract.getPoll(pollId);
42
42
  const pollContract = typechain_types_1.Poll__factory.connect(pollContracts.poll, signer);
43
43
  // get the state index from the MACI contract
44
- const stateIndex = await maciContract.getStateIndex(userMaciPubKey.hash()).catch(() => -1n);
44
+ const stateIndex = await maciContract.getStateIndex(userMaciPublicKey.hash()).catch(() => -1n);
45
45
  let circuitInputs;
46
46
  if (stateFile) {
47
47
  circuitInputs = await (0, utils_1.getPollJoiningCircuitInputsFromStateFile)({
48
48
  stateFile,
49
49
  pollId,
50
50
  stateIndex,
51
- userMaciPrivKey,
51
+ userMaciPrivateKey,
52
52
  });
53
53
  }
54
54
  else {
@@ -56,18 +56,18 @@ const joinPoll = async ({ maciAddress, privateKey, stateFile, pollId, signer, st
56
56
  maciContract,
57
57
  stateIndex,
58
58
  pollId,
59
- userMaciPrivKey,
59
+ userMaciPrivateKey,
60
60
  signer,
61
61
  startBlock,
62
62
  endBlock,
63
63
  blocksPerBatch,
64
64
  });
65
65
  }
66
- const currentStateRootIndex = Number.parseInt((await maciContract.numSignUps()).toString(), 10) - 1;
66
+ const currentStateRootIndex = Number.parseInt((await maciContract.totalSignups()).toString(), 10) - 1;
67
67
  // generate the proof for this batch
68
68
  const proof = await (0, proofs_1.generateAndVerifyProof)(circuitInputs, pollJoiningZkey, useWasm, rapidsnark, pollWitgen, pollWasm);
69
69
  // submit the message onchain as well as the encryption public key
70
- const tx = await pollContract.joinPoll(nullifier, userMaciPubKey.asContractParam(), currentStateRootIndex, proof, sgDataArg, ivcpDataArg);
70
+ const tx = await pollContract.joinPoll(nullifier, userMaciPublicKey.asContractParam(), currentStateRootIndex, proof, sgDataArg, ivcpDataArg);
71
71
  const receipt = await tx.wait();
72
72
  if (receipt?.status !== 1) {
73
73
  throw new Error("Transaction failed");
@@ -1 +1 @@
1
- {"version":3,"file":"joinPoll.js","sourceRoot":"","sources":["../../../ts/user/joinPoll.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"joinPoll.js","sourceRoot":"","sources":["../../../ts/user/joinPoll.ts"],"names":[],"mappings":"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"}
@@ -4,17 +4,17 @@ import type { IIsRegisteredUser, ISignupArgs, ISignupData, IRegisteredUserArgs,
4
4
  * @param IRegisteredArgs - The arguments for the check register command
5
5
  * @returns whether the user is registered or not and their state index
6
6
  */
7
- export declare const getSignedupUserData: ({ maciAddress, maciPubKey, signer, startBlock, }: IRegisteredUserArgs) => Promise<IIsRegisteredUser>;
7
+ export declare const getSignedupUserData: ({ maciAddress, maciPublicKey, signer, }: IRegisteredUserArgs) => Promise<IIsRegisteredUser>;
8
8
  /**
9
9
  * Signup a user to the MACI contract
10
10
  * @param {SignupArgs} args - The arguments for the signup command
11
11
  * @returns {ISignupData} The state index of the user and transaction hash
12
12
  */
13
- export declare const signup: ({ maciPubKey, maciAddress, sgData, signer }: ISignupArgs) => Promise<ISignupData>;
13
+ export declare const signup: ({ maciPublicKey, maciAddress, sgData, signer }: ISignupArgs) => Promise<ISignupData>;
14
14
  /**
15
15
  * Checks if a user is signed up with a given public key
16
16
  * @param {IIsSignedUpArgs} args - The arguments for the is signed up command
17
17
  * @returns {boolean} Whether the user is signed up or not
18
18
  */
19
- export declare const hasUserSignedUp: ({ maciAddress, maciPubKey, signer }: IHasUserSignedUpArgs) => Promise<boolean>;
19
+ export declare const hasUserSignedUp: ({ maciAddress, maciPublicKey, signer, }: IHasUserSignedUpArgs) => Promise<boolean>;
20
20
  //# sourceMappingURL=signup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signup.d.ts","sourceRoot":"","sources":["../../../ts/user/signup.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAMtH;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAU,kDAKvC,mBAAmB,KAAG,OAAO,CAAC,iBAAiB,CAiBjD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,MAAM,GAAU,6CAA6C,WAAW,KAAG,OAAO,CAAC,WAAW,CA6C1G,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAU,qCAAqC,oBAAoB,KAAG,OAAO,CAAC,OAAO,CAMhH,CAAC"}
1
+ {"version":3,"file":"signup.d.ts","sourceRoot":"","sources":["../../../ts/user/signup.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAItH;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAU,yCAIvC,mBAAmB,KAAG,OAAO,CAAC,iBAAiB,CAsBjD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,MAAM,GAAU,gDAAgD,WAAW,KAAG,OAAO,CAAC,WAAW,CA6C7G,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAU,yCAInC,oBAAoB,KAAG,OAAO,CAAC,OAAO,CAMxC,CAAC"}
@@ -5,27 +5,32 @@ const typechain_types_1 = require("@maci-protocol/contracts/typechain-types");
5
5
  const domainobjs_1 = require("@maci-protocol/domainobjs");
6
6
  const ethers_1 = require("ethers");
7
7
  const contracts_1 = require("../utils/contracts");
8
- const utils_1 = require("./utils");
9
8
  /**
10
9
  * Checks if user is registered with a given public key and get its data
11
10
  * @param IRegisteredArgs - The arguments for the check register command
12
11
  * @returns whether the user is registered or not and their state index
13
12
  */
14
- const getSignedupUserData = async ({ maciAddress, maciPubKey, signer, startBlock, }) => {
13
+ const getSignedupUserData = async ({ maciAddress, maciPublicKey, signer, }) => {
15
14
  const maciContract = typechain_types_1.MACI__factory.connect(maciAddress, signer);
16
- const publicKey = domainobjs_1.PubKey.deserialize(maciPubKey);
17
- const startBlockNumber = startBlock || 0;
18
- const currentBlock = await signer.provider.getBlockNumber();
19
- const { stateIndex } = await (0, utils_1.parseSignupEvents)({
20
- maciContract,
21
- startBlock: startBlockNumber,
22
- currentBlock,
23
- publicKey,
24
- });
25
- return {
26
- isRegistered: stateIndex !== undefined,
27
- stateIndex,
28
- };
15
+ const publicKey = domainobjs_1.PublicKey.deserialize(maciPublicKey);
16
+ try {
17
+ const stateIndex = await maciContract.getStateIndex(publicKey.hash());
18
+ return {
19
+ isRegistered: stateIndex !== 0n, // 0 index is reserved for deleted leaves
20
+ stateIndex: String(stateIndex),
21
+ };
22
+ }
23
+ catch (error) {
24
+ // Check if this is a "UserNotSignedUp" maci contract error
25
+ if (error instanceof Error && error.message.includes("UserNotSignedUp()")) {
26
+ return {
27
+ isRegistered: false,
28
+ stateIndex: undefined,
29
+ };
30
+ }
31
+ // If it's a different error, rethrow it
32
+ throw error;
33
+ }
29
34
  };
30
35
  exports.getSignedupUserData = getSignedupUserData;
31
36
  /**
@@ -33,12 +38,12 @@ exports.getSignedupUserData = getSignedupUserData;
33
38
  * @param {SignupArgs} args - The arguments for the signup command
34
39
  * @returns {ISignupData} The state index of the user and transaction hash
35
40
  */
36
- const signup = async ({ maciPubKey, maciAddress, sgData, signer }) => {
41
+ const signup = async ({ maciPublicKey, maciAddress, sgData, signer }) => {
37
42
  // validate user key
38
- if (!domainobjs_1.PubKey.isValidSerializedPubKey(maciPubKey)) {
43
+ if (!domainobjs_1.PublicKey.isValidSerialized(maciPublicKey)) {
39
44
  throw new Error("Invalid MACI public key");
40
45
  }
41
- const userMaciPubKey = domainobjs_1.PubKey.deserialize(maciPubKey);
46
+ const userMaciPublicKey = domainobjs_1.PublicKey.deserialize(maciPublicKey);
42
47
  const validContract = await (0, contracts_1.contractExists)(signer.provider, maciAddress);
43
48
  if (!validContract) {
44
49
  throw new Error("There is no contract deployed at the specified address");
@@ -51,7 +56,7 @@ const signup = async ({ maciPubKey, maciAddress, sgData, signer }) => {
51
56
  let stateIndex = "";
52
57
  let receipt = null;
53
58
  // sign up to the MACI contract
54
- const tx = await maciContract.signUp(userMaciPubKey.asContractParam(), sgData);
59
+ const tx = await maciContract.signUp(userMaciPublicKey.asContractParam(), sgData);
55
60
  receipt = await tx.wait();
56
61
  if (receipt?.status !== 1) {
57
62
  throw new Error("The transaction failed");
@@ -70,9 +75,9 @@ exports.signup = signup;
70
75
  * @param {IIsSignedUpArgs} args - The arguments for the is signed up command
71
76
  * @returns {boolean} Whether the user is signed up or not
72
77
  */
73
- const hasUserSignedUp = async ({ maciAddress, maciPubKey, signer }) => {
78
+ const hasUserSignedUp = async ({ maciAddress, maciPublicKey, signer, }) => {
74
79
  const maciContract = typechain_types_1.MACI__factory.connect(maciAddress, signer);
75
- const stateIndex = await maciContract.getStateIndex(domainobjs_1.PubKey.deserialize(maciPubKey).hash());
80
+ const stateIndex = await maciContract.getStateIndex(domainobjs_1.PublicKey.deserialize(maciPublicKey).hash());
76
81
  return stateIndex !== 0n;
77
82
  };
78
83
  exports.hasUserSignedUp = hasUserSignedUp;
@@ -1 +1 @@
1
- {"version":3,"file":"signup.js","sourceRoot":"","sources":["../../../ts/user/signup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signup.js","sourceRoot":"","sources":["../../../ts/user/signup.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
+ import { LeanIMTMerkleProof } from "@zk-kit/lean-imt";
1
2
  import type { MACI, Poll } from "@maci-protocol/contracts/typechain-types";
2
- import type { PrivKey, PubKey } from "@maci-protocol/domainobjs";
3
+ import type { PrivateKey, PublicKey } from "@maci-protocol/domainobjs";
3
4
  import type { Signer } from "ethers";
4
5
  /**
5
6
  * Interface for the arguments to the isJoinedUser command
@@ -16,7 +17,7 @@ export interface IJoinedUserArgs {
16
17
  /**
17
18
  * Poll public key for the poll
18
19
  */
19
- pollPubKey: string;
20
+ pollPublicKey: string;
20
21
  /**
21
22
  * A signer object
22
23
  */
@@ -63,7 +64,7 @@ export interface ISignupArgs {
63
64
  /**
64
65
  * The public key of the user
65
66
  */
66
- maciPubKey: string;
67
+ maciPublicKey: string;
67
68
  /**
68
69
  * A signer object
69
70
  */
@@ -101,7 +102,7 @@ export interface IRegisteredUserArgs {
101
102
  /**
102
103
  * The public key of the user
103
104
  */
104
- maciPubKey: string;
105
+ maciPublicKey: string;
105
106
  /**
106
107
  * The address of the MACI contract
107
108
  */
@@ -130,7 +131,7 @@ export interface IParsePollJoinEventsArgs {
130
131
  /**
131
132
  * The public key
132
133
  */
133
- pollPublicKey: PubKey;
134
+ pollPublicKey: PublicKey;
134
135
  }
135
136
  /**
136
137
  * Interface for the arguments to the parseSignupEvents function
@@ -151,7 +152,7 @@ export interface IParseSignupEventsArgs {
151
152
  /**
152
153
  * The public key
153
154
  */
154
- publicKey: PubKey;
155
+ publicKey: PublicKey;
155
156
  }
156
157
  /**
157
158
  * An interface describing the circuit inputs to the PollJoining circuit
@@ -160,11 +161,11 @@ export interface IPollJoiningCircuitInputs {
160
161
  /**
161
162
  * The private key
162
163
  */
163
- privKey: string;
164
+ privateKey: string;
164
165
  /**
165
166
  * The poll public key
166
167
  */
167
- pollPubKey: string[];
168
+ pollPublicKey: string[];
168
169
  /**
169
170
  * The state leaf
170
171
  */
@@ -201,7 +202,7 @@ export interface IPollJoinedCircuitInputs {
201
202
  /**
202
203
  * The private key
203
204
  */
204
- privKey: string;
205
+ privateKey: string;
205
206
  /**
206
207
  * The voice credits balance
207
208
  */
@@ -296,6 +297,19 @@ export interface IJoinPollArgs {
296
297
  */
297
298
  ivcpDataArg: string;
298
299
  }
300
+ /**
301
+ * Interface for the arguments to the joinPoll command for the browser
302
+ */
303
+ export interface IJoinPollBrowserArgs extends IJoinPollArgs {
304
+ /**
305
+ * Whether to use of not the latest state index
306
+ */
307
+ useLatestStateIndex?: boolean;
308
+ /**
309
+ * The inclusion proof
310
+ */
311
+ inclusionProof?: LeanIMTMerkleProof;
312
+ }
299
313
  /**
300
314
  * Interface for the return data to the joinPoll command
301
315
  */
@@ -338,6 +352,40 @@ export interface IIsNullifierOnChainArgs {
338
352
  */
339
353
  signer: Signer;
340
354
  }
355
+ /**
356
+ * Arguments for IGenerateMaciStateTreeArgs
357
+ */
358
+ export interface IGenerateMaciStateTreeArgs {
359
+ /**
360
+ * The MACI contract
361
+ */
362
+ maciContract: MACI;
363
+ /**
364
+ * The signer
365
+ */
366
+ signer: Signer;
367
+ /**
368
+ * The start block
369
+ */
370
+ startBlock?: number;
371
+ /**
372
+ * The end block
373
+ */
374
+ endBlock?: number;
375
+ /**
376
+ * The blocks per batch
377
+ */
378
+ blocksPerBatch?: number;
379
+ }
380
+ /**
381
+ * Arguments for IGenerateMaciStateTreeWithEndKeyArgs
382
+ */
383
+ export interface IGenerateMaciStateTreeWithEndKeyArgs extends IGenerateMaciStateTreeArgs {
384
+ /**
385
+ * The public key of the user
386
+ */
387
+ userPublicKey: PublicKey;
388
+ }
341
389
  /**
342
390
  * Arguments for getPollJoiningCircuitEvents
343
391
  */
@@ -357,7 +405,7 @@ export interface IGetPollJoiningCircuitEventsArgs {
357
405
  /**
358
406
  * The user's maci private key
359
407
  */
360
- userMaciPrivKey: PrivKey;
408
+ userMaciPrivateKey: PrivateKey;
361
409
  /**
362
410
  * The signer
363
411
  */
@@ -394,7 +442,7 @@ export interface IGetPollJoiningCircuitInputsFromStateFileArgs {
394
442
  /**
395
443
  * The user's maci private key
396
444
  */
397
- userMaciPrivKey: PrivKey;
445
+ userMaciPrivateKey: PrivateKey;
398
446
  }
399
447
  /**
400
448
  * Interface for the arguments for the is signed up command
@@ -407,7 +455,7 @@ export interface IHasUserSignedUpArgs {
407
455
  /**
408
456
  * The public key of the user
409
457
  */
410
- maciPubKey: string;
458
+ maciPublicKey: string;
411
459
  /**
412
460
  * The signer to use for the transaction
413
461
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../ts/user/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../ts/user/types.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
- import { PrivKey, PubKey } from "@maci-protocol/domainobjs";
2
- import type { IGetPollJoiningCircuitEventsArgs, IGetPollJoiningCircuitInputsFromStateFileArgs, IParsePollJoinEventsArgs, IParseSignupEventsArgs, IPollJoiningCircuitInputs, IJoinedUserArgs, IIsNullifierOnChainArgs } from "./types";
1
+ import { PrivateKey, PublicKey } from "@maci-protocol/domainobjs";
2
+ import type { IGetPollJoiningCircuitEventsArgs, IGetPollJoiningCircuitInputsFromStateFileArgs, IParsePollJoinEventsArgs, IParseSignupEventsArgs, IJoinedUserArgs, IIsNullifierOnChainArgs, IGenerateMaciStateTreeArgs, IGenerateMaciStateTreeWithEndKeyArgs } from "./types";
3
3
  import type { IGenerateSignUpTree } from "../trees/types";
4
- import type { CircuitInputs } from "../utils/types";
4
+ import type { TCircuitInputs } from "../utils/types";
5
+ import type { LeanIMTMerkleProof } from "@zk-kit/lean-imt";
5
6
  /**
6
7
  * Parse the poll joining events from the Poll contract
7
8
  */
@@ -14,7 +15,7 @@ export declare const parsePollJoinEvents: ({ pollContract, startBlock, currentBl
14
15
  * @param {IJoinedUserArgs} - The arguments for the join check command
15
16
  * @returns user joined or not and poll state index, voice credit balance
16
17
  */
17
- export declare const getJoinedUserData: ({ maciAddress, pollId, pollPubKey, signer, startBlock, }: IJoinedUserArgs) => Promise<{
18
+ export declare const getJoinedUserData: ({ maciAddress, pollId, pollPublicKey: serializedPollPublicKey, signer, startBlock, }: IJoinedUserArgs) => Promise<{
18
19
  isJoined: boolean;
19
20
  pollStateIndex?: string;
20
21
  voiceCredits?: string;
@@ -33,30 +34,41 @@ export declare const parseSignupEvents: ({ maciContract, startBlock, currentBloc
33
34
  }>;
34
35
  /**
35
36
  * Get state index from maci state leaves or from sign up leaves
36
- * @param pubKeys Public keys from maci state or sign up tree
37
- * @param userMaciPubKey Public key of the maci user
37
+ * @param publicKeys Public keys from maci state or sign up tree
38
+ * @param userMaciPublicKey Public key of the maci user
38
39
  * @param stateIndex State index from the command
39
40
  * @returns State index
40
41
  */
41
- export declare const getStateIndex: (pubKeys: PubKey[], userMaciPubKey: PubKey, stateIndex?: bigint) => bigint | undefined;
42
+ export declare const getStateIndex: (publicKeys: PublicKey[], userMaciPublicKey: PublicKey, stateIndex?: bigint) => bigint | undefined;
42
43
  /**
43
44
  * Create circuit input for pollJoining
44
45
  * @param signUpData Sign up tree and state leaves
45
46
  * @param stateTreeDepth Maci state tree depth
46
- * @param maciPrivKey User's private key for signing up
47
- * @param stateLeafIndex Index where the user is stored in the state leaves
48
- * @param pollPrivKey Poll's private key for the poll joining
49
- * @param pollPubKey Poll's public key for the poll joining
47
+ * @param maciPrivateKey User's private key for signing up
48
+ * @param pollPrivateKey Poll's private key for the poll joining
49
+ * @param pollPublicKey Poll's public key for the poll joining
50
50
  * @param pollId Poll's id
51
51
  * @returns stringified circuit inputs
52
52
  */
53
- export declare const joiningCircuitInputs: (signUpData: IGenerateSignUpTree, stateTreeDepth: bigint, maciPrivKey: PrivKey, stateLeafIndex: bigint, pollPubKey: PubKey, pollId: bigint) => IPollJoiningCircuitInputs;
53
+ export declare const joiningCircuitInputs: (inclusionProof: LeanIMTMerkleProof, stateTreeDepth: bigint, maciPrivateKey: PrivateKey, pollPublicKey: PublicKey, pollId: bigint) => TCircuitInputs;
54
54
  /**
55
55
  * Get the poll joining circuit inputs from a state file
56
56
  * @param stateFile - The path to the state file
57
57
  * @returns The poll joining circuit inputs
58
58
  */
59
- export declare const getPollJoiningCircuitInputsFromStateFile: ({ stateFile, pollId, stateIndex, userMaciPrivKey, }: IGetPollJoiningCircuitInputsFromStateFileArgs) => Promise<CircuitInputs>;
59
+ export declare const getPollJoiningCircuitInputsFromStateFile: ({ stateFile, pollId, stateIndex, userMaciPrivateKey, }: IGetPollJoiningCircuitInputsFromStateFileArgs) => Promise<TCircuitInputs>;
60
+ /**
61
+ * Generate MACI's state tree from the MACI contract
62
+ * @param {IGenerateMaciStateTreeArgs} args - The arguments for the generate maci state tree command
63
+ * @returns The MACI's state tree
64
+ */
65
+ export declare const generateMaciStateTree: ({ maciContract, signer, startBlock, endBlock, blocksPerBatch, }: IGenerateMaciStateTreeArgs) => Promise<IGenerateSignUpTree>;
66
+ /**
67
+ * Generate MACI's state tree from the MACI contract with a given end key
68
+ * @param {IGenerateMaciStateTreeWithEndKeyArgs} args - The arguments for the generate maci state tree command
69
+ * @returns The MACI's state tree
70
+ */
71
+ export declare const generateMaciStateTreeWithEndKey: ({ maciContract, signer, startBlock, endBlock, blocksPerBatch, userPublicKey, }: IGenerateMaciStateTreeWithEndKeyArgs) => Promise<IGenerateSignUpTree>;
60
72
  /**
61
73
  * Get the poll joining circuit events from a state file
62
74
  * @param maciContract - The MACI contract
@@ -64,5 +76,5 @@ export declare const getPollJoiningCircuitInputsFromStateFile: ({ stateFile, pol
64
76
  * @param signer - The signer
65
77
  * @returns The poll joining circuit events
66
78
  */
67
- export declare const getPollJoiningCircuitEvents: ({ maciContract, stateIndex, pollId, userMaciPrivKey, signer, startBlock, endBlock, blocksPerBatch, }: IGetPollJoiningCircuitEventsArgs) => Promise<CircuitInputs>;
79
+ export declare const getPollJoiningCircuitEvents: ({ maciContract, stateIndex, pollId, userMaciPrivateKey, signer, startBlock, endBlock, blocksPerBatch, }: IGetPollJoiningCircuitEventsArgs) => Promise<TCircuitInputs>;
68
80
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../ts/user/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAW,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAIrE,OAAO,KAAK,EACV,gCAAgC,EAChC,6CAA6C,EAC7C,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,EACzB,eAAe,EACf,uBAAuB,EACxB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAKpD;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAU,4DAKvC,wBAAwB,KAAG,OAAO,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAyBA,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAU,0DAMrC,eAAe,KAAG,OAAO,CAAC;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAqBjG,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAU,6CAKrC,uBAAuB,KAAG,OAAO,CAAC,OAAO,CAM3C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAU,wDAKrC,sBAAsB,KAAG,OAAO,CAAC;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAsB1D,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,GAAI,SAAS,MAAM,EAAE,EAAE,gBAAgB,MAAM,EAAE,aAAa,MAAM,KAAG,MAAM,GAAG,SAYvG,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,GAC/B,YAAY,mBAAmB,EAC/B,gBAAgB,MAAM,EACtB,aAAa,OAAO,EACpB,gBAAgB,MAAM,EACtB,YAAY,MAAM,EAClB,QAAQ,MAAM,KACb,yBAiDF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wCAAwC,GAAU,qDAK5D,6CAA6C,KAAG,OAAO,CAAC,aAAa,CAwBvE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,GAAU,sGAS/C,gCAAgC,KAAG,OAAO,CAAC,aAAa,CAsC1D,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../ts/user/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAW,UAAU,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAI3E,OAAO,KAAK,EACV,gCAAgC,EAChC,6CAA6C,EAC7C,wBAAwB,EACxB,sBAAsB,EACtB,eAAe,EACf,uBAAuB,EACvB,0BAA0B,EAC1B,oCAAoC,EACrC,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAK3D;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAU,4DAKvC,wBAAwB,KAAG,OAAO,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAyBA,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAU,sFAMrC,eAAe,KAAG,OAAO,CAAC;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAqBjG,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAU,6CAKrC,uBAAuB,KAAG,OAAO,CAAC,OAAO,CAM3C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAU,wDAKrC,sBAAsB,KAAG,OAAO,CAAC;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAsB1D,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,GACxB,YAAY,SAAS,EAAE,EACvB,mBAAmB,SAAS,EAC5B,aAAa,MAAM,KAClB,MAAM,GAAG,SAYX,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,GAC/B,gBAAgB,kBAAkB,EAClC,gBAAgB,MAAM,EACtB,gBAAgB,UAAU,EAC1B,eAAe,SAAS,EACxB,QAAQ,MAAM,KACb,cA0CF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wCAAwC,GAAU,wDAK5D,6CAA6C,KAAG,OAAO,CAAC,cAAc,CAwBxE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAU,iEAMzC,0BAA0B,KAAG,OAAO,CAAC,mBAAmB,CAgB1D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,GAAU,gFAOnD,oCAAoC,KAAG,OAAO,CAAC,mBAAmB,CAgBpE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,GAAU,yGAS/C,gCAAgC,KAAG,OAAO,CAAC,cAAc,CA+B3D,CAAC"}