@maci-protocol/coordinator 0.0.0-ci.ebb44e9 → 0.0.0-ci.eea13a2

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 (147) hide show
  1. package/README.md +4 -4
  2. package/build/hardhat.config.cjs +2 -3
  3. package/build/hardhat.config.cjs.map +1 -1
  4. package/build/hardhat.config.d.cts +2 -4
  5. package/build/scripts/generateKeypair.js +2 -2
  6. package/build/scripts/generateKeypair.js.map +1 -1
  7. package/build/tests/e2e.deploy.test.js +30 -19
  8. package/build/tests/e2e.deploy.test.js.map +1 -1
  9. package/build/tests/e2e.redis.test.d.ts +2 -0
  10. package/build/tests/e2e.redis.test.d.ts.map +1 -0
  11. package/build/tests/e2e.redis.test.js +119 -0
  12. package/build/tests/e2e.redis.test.js.map +1 -0
  13. package/build/tests/utils.d.ts.map +1 -1
  14. package/build/tests/utils.js +2 -2
  15. package/build/tests/utils.js.map +1 -1
  16. package/build/ts/app.module.d.ts.map +1 -1
  17. package/build/ts/app.module.js +6 -0
  18. package/build/ts/app.module.js.map +1 -1
  19. package/build/ts/common/__tests__/common.test.js +8 -18
  20. package/build/ts/common/__tests__/common.test.js.map +1 -1
  21. package/build/ts/common/accountAbstraction.d.ts +1 -1
  22. package/build/ts/common/accountAbstraction.d.ts.map +1 -1
  23. package/build/ts/common/accountAbstraction.js +4 -5
  24. package/build/ts/common/accountAbstraction.js.map +1 -1
  25. package/build/ts/common/chain.d.ts +2 -2
  26. package/build/ts/common/chain.d.ts.map +1 -1
  27. package/build/ts/common/chain.js +10 -9
  28. package/build/ts/common/chain.js.map +1 -1
  29. package/build/ts/common/errors.d.ts +15 -11
  30. package/build/ts/common/errors.d.ts.map +1 -1
  31. package/build/ts/common/errors.js +15 -11
  32. package/build/ts/common/errors.js.map +1 -1
  33. package/build/ts/deployer/__tests__/deployer.controller.test.js +17 -20
  34. package/build/ts/deployer/__tests__/deployer.controller.test.js.map +1 -1
  35. package/build/ts/deployer/__tests__/deployer.service.test.js +161 -79
  36. package/build/ts/deployer/__tests__/deployer.service.test.js.map +1 -1
  37. package/build/ts/deployer/__tests__/utils.d.ts +0 -1
  38. package/build/ts/deployer/__tests__/utils.d.ts.map +1 -1
  39. package/build/ts/deployer/__tests__/utils.js +4 -4
  40. package/build/ts/deployer/__tests__/utils.js.map +1 -1
  41. package/build/ts/deployer/deployer.service.d.ts +17 -7
  42. package/build/ts/deployer/deployer.service.d.ts.map +1 -1
  43. package/build/ts/deployer/deployer.service.js +209 -56
  44. package/build/ts/deployer/deployer.service.js.map +1 -1
  45. package/build/ts/deployer/types.d.ts +18 -11
  46. package/build/ts/deployer/types.d.ts.map +1 -1
  47. package/build/ts/file/file.service.d.ts.map +1 -1
  48. package/build/ts/file/file.service.js +4 -3
  49. package/build/ts/file/file.service.js.map +1 -1
  50. package/build/ts/health/__tests__/health.controller.test.d.ts +2 -0
  51. package/build/ts/health/__tests__/health.controller.test.d.ts.map +1 -0
  52. package/build/ts/health/__tests__/health.controller.test.js +52 -0
  53. package/build/ts/health/__tests__/health.controller.test.js.map +1 -0
  54. package/build/ts/health/__tests__/health.service.test.d.ts +2 -0
  55. package/build/ts/health/__tests__/health.service.test.d.ts.map +1 -0
  56. package/build/ts/health/__tests__/health.service.test.js +101 -0
  57. package/build/ts/health/__tests__/health.service.test.js.map +1 -0
  58. package/build/ts/health/health.controller.d.ts +16 -0
  59. package/build/ts/health/health.controller.d.ts.map +1 -0
  60. package/build/ts/health/health.controller.js +43 -0
  61. package/build/ts/health/health.controller.js.map +1 -0
  62. package/build/ts/health/health.module.d.ts +3 -0
  63. package/build/ts/health/health.module.d.ts.map +1 -0
  64. package/build/ts/health/health.module.js +22 -0
  65. package/build/ts/health/health.module.js.map +1 -0
  66. package/build/ts/health/health.service.d.ts +42 -0
  67. package/build/ts/health/health.service.d.ts.map +1 -0
  68. package/build/ts/health/health.service.js +176 -0
  69. package/build/ts/health/health.service.js.map +1 -0
  70. package/build/ts/health/types.d.ts +87 -0
  71. package/build/ts/health/types.d.ts.map +1 -0
  72. package/build/ts/health/types.js +2 -0
  73. package/build/ts/health/types.js.map +1 -0
  74. package/build/ts/proof/__tests__/proof.service.test.js +23 -54
  75. package/build/ts/proof/__tests__/proof.service.test.js.map +1 -1
  76. package/build/ts/proof/proof.service.d.ts.map +1 -1
  77. package/build/ts/proof/proof.service.js.map +1 -1
  78. package/build/ts/redis/__tests__/redis.service.test.d.ts +2 -0
  79. package/build/ts/redis/__tests__/redis.service.test.d.ts.map +1 -0
  80. package/build/ts/redis/__tests__/redis.service.test.js +149 -0
  81. package/build/ts/redis/__tests__/redis.service.test.js.map +1 -0
  82. package/build/ts/redis/redis.module.d.ts +3 -0
  83. package/build/ts/redis/redis.module.d.ts.map +1 -0
  84. package/build/ts/redis/redis.module.js +18 -0
  85. package/build/ts/redis/redis.module.js.map +1 -0
  86. package/build/ts/redis/redis.service.d.ts +52 -0
  87. package/build/ts/redis/redis.service.d.ts.map +1 -0
  88. package/build/ts/redis/redis.service.js +97 -0
  89. package/build/ts/redis/redis.service.js.map +1 -0
  90. package/build/ts/redis/types.d.ts +54 -0
  91. package/build/ts/redis/types.d.ts.map +1 -0
  92. package/build/ts/redis/types.js +2 -0
  93. package/build/ts/redis/types.js.map +1 -0
  94. package/build/ts/redis/utils.d.ts +20 -0
  95. package/build/ts/redis/utils.d.ts.map +1 -0
  96. package/build/ts/redis/utils.js +27 -0
  97. package/build/ts/redis/utils.js.map +1 -0
  98. package/build/ts/scheduler/__tests__/scheduler.controller.test.d.ts +2 -0
  99. package/build/ts/scheduler/__tests__/scheduler.controller.test.d.ts.map +1 -0
  100. package/build/ts/scheduler/__tests__/scheduler.controller.test.js +63 -0
  101. package/build/ts/scheduler/__tests__/scheduler.controller.test.js.map +1 -0
  102. package/build/ts/scheduler/__tests__/scheduler.service.test.d.ts +2 -0
  103. package/build/ts/scheduler/__tests__/scheduler.service.test.d.ts.map +1 -0
  104. package/build/ts/scheduler/__tests__/scheduler.service.test.js +264 -0
  105. package/build/ts/scheduler/__tests__/scheduler.service.test.js.map +1 -0
  106. package/build/ts/scheduler/dto.d.ts +42 -0
  107. package/build/ts/scheduler/dto.d.ts.map +1 -0
  108. package/build/ts/scheduler/dto.js +116 -0
  109. package/build/ts/scheduler/dto.js.map +1 -0
  110. package/build/ts/scheduler/scheduler.controller.d.ts +32 -0
  111. package/build/ts/scheduler/scheduler.controller.d.ts.map +1 -0
  112. package/build/ts/scheduler/scheduler.controller.js +111 -0
  113. package/build/ts/scheduler/scheduler.controller.js.map +1 -0
  114. package/build/ts/scheduler/scheduler.module.d.ts +3 -0
  115. package/build/ts/scheduler/scheduler.module.d.ts.map +1 -0
  116. package/build/ts/scheduler/scheduler.module.js +23 -0
  117. package/build/ts/scheduler/scheduler.module.js.map +1 -0
  118. package/build/ts/scheduler/scheduler.service.d.ts +63 -0
  119. package/build/ts/scheduler/scheduler.service.d.ts.map +1 -0
  120. package/build/ts/scheduler/scheduler.service.js +239 -0
  121. package/build/ts/scheduler/scheduler.service.js.map +1 -0
  122. package/build/ts/scheduler/types.d.ts +61 -0
  123. package/build/ts/scheduler/types.d.ts.map +1 -0
  124. package/build/ts/scheduler/types.js +2 -0
  125. package/build/ts/scheduler/types.js.map +1 -0
  126. package/build/ts/sessionKeys/__tests__/sessionKeys.controller.test.js +2 -2
  127. package/build/ts/sessionKeys/__tests__/sessionKeys.controller.test.js.map +1 -1
  128. package/build/ts/sessionKeys/__tests__/sessionKeys.service.test.js +30 -16
  129. package/build/ts/sessionKeys/__tests__/sessionKeys.service.test.js.map +1 -1
  130. package/build/ts/sessionKeys/__tests__/utils.d.ts.map +1 -1
  131. package/build/ts/sessionKeys/__tests__/utils.js +4 -5
  132. package/build/ts/sessionKeys/__tests__/utils.js.map +1 -1
  133. package/build/ts/sessionKeys/sessionKeys.service.d.ts.map +1 -1
  134. package/build/ts/sessionKeys/sessionKeys.service.js +1 -2
  135. package/build/ts/sessionKeys/sessionKeys.service.js.map +1 -1
  136. package/build/ts/subgraph/__tests__/subgraph.service.test.js +2 -3
  137. package/build/ts/subgraph/__tests__/subgraph.service.test.js.map +1 -1
  138. package/build/ts/subgraph/subgraph.service.d.ts +4 -0
  139. package/build/ts/subgraph/subgraph.service.d.ts.map +1 -1
  140. package/build/ts/subgraph/subgraph.service.js +16 -5
  141. package/build/ts/subgraph/subgraph.service.js.map +1 -1
  142. package/build/tsconfig.build.tsbuildinfo +1 -1
  143. package/package.json +33 -29
  144. package/build/tests/e2e.aa.test.d.ts +0 -2
  145. package/build/tests/e2e.aa.test.d.ts.map +0 -1
  146. package/build/tests/e2e.aa.test.js +0 -96
  147. package/build/tests/e2e.aa.test.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { EPolicies, EInitialVoiceCreditProxies, EMode } from "@maci-protocol/sdk";
1
+ import { EPolicies, EInitialVoiceCreditProxies, EMode, EInitialVoiceCreditProxiesFactories } from "@maci-protocol/sdk";
2
2
  import { zeroHash } from "viem";
3
3
  export const MSG_BATCH_SIZE = 20;
4
4
  export const MODE = EMode.NON_QV;
@@ -12,7 +12,7 @@ export const testMaciDeploymentConfig = {
12
12
  MACI: {
13
13
  policy: EPolicies.FreeForAll,
14
14
  stateTreeDepth: 10,
15
- mode: MODE,
15
+ modes: [MODE],
16
16
  },
17
17
  VerifyingKeysRegistry: {
18
18
  args: {
@@ -33,9 +33,8 @@ export const testMaciDeploymentConfig = {
33
33
  };
34
34
  /**
35
35
  * Start date for the poll (it cannot be in the past)
36
- * n seconds are added to give it time until it is deployed
37
36
  */
38
- export const startDate = Math.floor(Date.now() / 1000) + 100;
37
+ export const startDate = Math.floor(Date.now() / 1000);
39
38
  /**
40
39
  * Poll duration in seconds
41
40
  * n seconds are added to the poll start date
@@ -62,6 +61,7 @@ export const testPollDeploymentConfig = {
62
61
  type: EPolicies.FreeForAll,
63
62
  },
64
63
  initialVoiceCreditsProxy: {
64
+ factoryType: EInitialVoiceCreditProxiesFactories.Constant,
65
65
  type: EInitialVoiceCreditProxies.Constant,
66
66
  args: {
67
67
  amount: 100,
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../ts/deployer/__tests__/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../ts/deployer/__tests__/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,KAAK,EAAE,mCAAmC,EAAE,MAAM,oBAAoB,CAAC;AACvH,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAchC,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC;AAEjC,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;AAEjC;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAsB;IACzD,MAAM,EAAE;QACN,IAAI,EAAE,SAAS,CAAC,UAAU;KAC3B;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,SAAS,CAAC,UAAU;QAC5B,cAAc,EAAE,EAAE;QAClB,KAAK,EAAE,CAAC,IAAI,CAAC;KACd;IACD,qBAAqB,EAAE;QACrB,IAAI,EAAE;YACJ,cAAc,EAAE,GAAG;YACnB,kBAAkB,EAAE,GAAG;YACvB,gBAAgB,EAAE,cAAc;YAChC,mBAAmB,EAAE,EAAE;YACvB,6BAA6B,EAAE,EAAE;SAClC;KACF;IACD,QAAQ,EAAE;QACR,yCAAyC;QACzC,UAAU,EAAE,4CAA4C;QACxD,UAAU,EAAE,4CAA4C;QACxD,UAAU,EAAE,4CAA4C;QACxD,UAAU,EAAE,4CAA4C;KACzD;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;AAEvD;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC;AAE/B;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAE5C;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAsB;IACzD,SAAS;IACT,OAAO,EAAE,SAAS,GAAG,YAAY;IACjC,IAAI,EAAE,IAAI;IACV,6BAA6B,EAAE,CAAC;IAChC,gBAAgB,EAAE,cAAc;IAChC,kBAAkB,EAAE,EAAE;IACtB,mBAAmB,EAAE,CAAC;IACtB,MAAM,EAAE;QACN,IAAI,EAAE,SAAS,CAAC,UAAU;KAC3B;IACD,wBAAwB,EAAE;QACxB,WAAW,EAAE,mCAAmC,CAAC,QAAQ;QACzD,IAAI,EAAE,0BAA0B,CAAC,QAAQ;QACzC,IAAI,EAAE;YACJ,MAAM,EAAE,GAAG;SACZ;KACF;IACD,WAAW,EAAE,EAAE;CAChB,CAAC;AAEF;;;;GAIG;AACH;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAmB;IACvD,UAAU,EAAE,4CAA4C;IACxD,QAAQ,EAAE,4CAA4C;IACtD,MAAM,EAAE,oEAAoE;CAC7E,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAsB;IAC7D,OAAO,EAAE,+EAA+E;IACxF,OAAO,EAAE,8EAA8E;IACvF,OAAO,EAAE,GAAG;IACZ,cAAc,EAAE,4CAA4C;CAC7D,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAyB;IACnE,iBAAiB,EAAE,4CAA4C;IAC/D,OAAO,EAAE,GAAG;CACb,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAoB;IACzD,mBAAmB,EAAE,4CAA4C;IACjE,YAAY,EAAE,CAAC,sEAAsE,CAAC;CACvF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAA2B;IACvE,IAAI,EAAE,QAAQ;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAqB;IAC5D,KAAK,EAAE,4CAA4C,EAAE,kBAAkB;CACxE,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAA+B;IAC/E,cAAc,EAAE,4CAA4C;IAC5D,YAAY,EAAE,GAAG;CAClB,CAAC"}
@@ -1,10 +1,10 @@
1
- import { EPolicies, EInitialVoiceCreditProxies, EMode, ISetVerifyingKeysArgs, BasePolicy, ConstantInitialVoiceCreditProxy } from "@maci-protocol/sdk";
1
+ import { EInitialVoiceCreditProxies, EMode, ISetVerifyingKeysArgs, BasePolicy, ConstantInitialVoiceCreditProxy, ConstantInitialVoiceCreditProxyFactory, EInitialVoiceCreditProxiesFactories } from "@maci-protocol/sdk";
2
2
  import { Signer } from "ethers";
3
3
  import { type Hex } from "viem";
4
4
  import { ESupportedNetworks } from "../common";
5
5
  import { FileService } from "../file/file.service";
6
6
  import { SessionKeysService } from "../sessionKeys/sessionKeys.service";
7
- import { IDeployMaciArgs, IDeployPollArgs, IPolicyArgs, IInitialVoiceCreditProxyArgs, IVerifyingKeysRegistryArgs } from "./types";
7
+ import { IDeployMaciArgs, IDeployPollArgs, IInitialVoiceCreditProxyArgs, IVerifyingKeysRegistryArgs, IDeployPolicyConfig } from "./types";
8
8
  /**
9
9
  * DeployerService is responsible for deploying contracts.
10
10
  */
@@ -26,12 +26,21 @@ export declare class DeployerService {
26
26
  * always deploy and save it
27
27
  *
28
28
  * @param signer - the signer
29
- * @param policyType - the policy type
30
29
  * @param network - the network
31
- * @param args - the policy args
30
+ * @param policyConfig - the policy configuration parameters
32
31
  * @returns - the policy contract
33
32
  */
34
- deployAndSavePolicy(signer: Signer, policyType: EPolicies, network: ESupportedNetworks, args?: IPolicyArgs): Promise<BasePolicy>;
33
+ deployAndSavePolicy(signer: Signer, network: ESupportedNetworks, policyConfig: IDeployPolicyConfig): Promise<BasePolicy>;
34
+ /**
35
+ * Get the voice credit proxy factory contract object
36
+ * always deploy and save it
37
+ *
38
+ * @param signer - the signer
39
+ * @param voiceCreditProxyFactoryType - the voice credit proxy factory type
40
+ * @param network - the network
41
+ * @returns - the voice credit proxy factory contract
42
+ */
43
+ deployAndSaveVoiceCreditProxyFactory(signer: Signer, voiceCreditProxyFactoryType: EInitialVoiceCreditProxiesFactories, network: ESupportedNetworks): Promise<ConstantInitialVoiceCreditProxyFactory>;
35
44
  /**
36
45
  * Get the voice credit proxy contract object
37
46
  * always deploy and save it
@@ -39,10 +48,11 @@ export declare class DeployerService {
39
48
  * @param signer - the signer
40
49
  * @param voiceCreditProxyType - the voice credit proxy type
41
50
  * @param network - the network
51
+ * @param initialVoiceCreditProxyFactory - the initial voice credit proxy factory
42
52
  * @param args - the args
43
53
  * @returns - the voice credit proxy contract
44
54
  */
45
- deployAndSaveVoiceCreditProxy(signer: Signer, voiceCreditProxyType: EInitialVoiceCreditProxies, network: ESupportedNetworks, args?: IInitialVoiceCreditProxyArgs): Promise<ConstantInitialVoiceCreditProxy>;
55
+ deployAndSaveVoiceCreditProxy(signer: Signer, voiceCreditProxyType: EInitialVoiceCreditProxies, network: ESupportedNetworks, initialVoiceCreditProxyFactory: ConstantInitialVoiceCreditProxyFactory, args?: IInitialVoiceCreditProxyArgs): Promise<ConstantInitialVoiceCreditProxy>;
46
56
  /**
47
57
  * Get verifying keys arguments (specially zkey paths)
48
58
  * @param signer - the signer
@@ -51,7 +61,7 @@ export declare class DeployerService {
51
61
  * @param mode - use QV or NON_QV
52
62
  * @returns SetVerifyingKeysArgs
53
63
  */
54
- getVerifyingKeysArgs(signer: Signer, verifyingKeysRegistryAddress: Hex, verifyingKeysRegistryArgs: IVerifyingKeysRegistryArgs, mode: EMode): Promise<ISetVerifyingKeysArgs>;
64
+ getVerifyingKeysArgs(signer: Signer, verifyingKeysRegistryAddress: Hex, verifyingKeysRegistryArgs: IVerifyingKeysRegistryArgs, modes: EMode[]): Promise<ISetVerifyingKeysArgs>;
55
65
  /**
56
66
  * Deploy MACI contracts
57
67
  *
@@ -1 +1 @@
1
- {"version":3,"file":"deployer.service.d.ts","sourceRoot":"","sources":["../../../ts/deployer/deployer.service.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,SAAS,EAOT,0BAA0B,EAC1B,KAAK,EAEL,qBAAqB,EAarB,UAAU,EAIV,+BAA+B,EAEhC,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAgB,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAIhC,OAAO,EAAc,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAExE,OAAO,EACL,eAAe,EACf,eAAe,EACf,WAAW,EACX,4BAA4B,EAU5B,0BAA0B,EAC3B,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,qBACa,eAAe;IAYxB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAZ9B;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;IAE1C;;;;OAIG;gBAEgB,kBAAkB,EAAE,kBAAkB,EACtC,WAAW,EAAE,WAAW;IAK3C;;;;;;;;;OASG;IACG,mBAAmB,CACvB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,SAAS,EACrB,OAAO,EAAE,kBAAkB,EAC3B,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,UAAU,CAAC;IAsItB;;;;;;;;;OASG;IACG,6BAA6B,CACjC,MAAM,EAAE,MAAM,EACd,oBAAoB,EAAE,0BAA0B,EAChD,OAAO,EAAE,kBAAkB,EAC3B,IAAI,CAAC,EAAE,4BAA4B,GAClC,OAAO,CAAC,+BAA+B,CAAC;IA6B3C;;;;;;;OAOG;IACG,oBAAoB,CACxB,MAAM,EAAE,MAAM,EACd,4BAA4B,EAAE,GAAG,EACjC,yBAAyB,EAAE,0BAA0B,EACrD,IAAI,EAAE,KAAK,GACV,OAAO,CAAC,qBAAqB,CAAC;IAgDjC;;;;;;;OAOG;IACG,UAAU,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAuD/G;;;;;OAKG;IACG,UAAU,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAiG/G"}
1
+ {"version":3,"file":"deployer.service.d.ts","sourceRoot":"","sources":["../../../ts/deployer/deployer.service.ts"],"names":[],"mappings":"AACA,OAAO,EASL,0BAA0B,EAC1B,KAAK,EAEL,qBAAqB,EAarB,UAAU,EAIV,+BAA+B,EA2B/B,sCAAsC,EACtC,mCAAmC,EACpC,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAgB,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAEhC,OAAO,EAAc,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAExE,OAAO,EACL,eAAe,EACf,eAAe,EACf,4BAA4B,EAU5B,0BAA0B,EAC1B,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,qBACa,eAAe;IAYxB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAZ9B;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;IAE1C;;;;OAIG;gBAEgB,kBAAkB,EAAE,kBAAkB,EACtC,WAAW,EAAE,WAAW;IAK3C;;;;;;;;OAQG;IACG,mBAAmB,CACvB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,kBAAkB,EAC3B,YAAY,EAAE,mBAAmB,GAChC,OAAO,CAAC,UAAU,CAAC;IAwStB;;;;;;;;OAQG;IACG,oCAAoC,CACxC,MAAM,EAAE,MAAM,EACd,2BAA2B,EAAE,mCAAmC,EAChE,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,sCAAsC,CAAC;IAsBlD;;;;;;;;;;OAUG;IACG,6BAA6B,CACjC,MAAM,EAAE,MAAM,EACd,oBAAoB,EAAE,0BAA0B,EAChD,OAAO,EAAE,kBAAkB,EAC3B,8BAA8B,EAAE,sCAAsC,EACtE,IAAI,CAAC,EAAE,4BAA4B,GAClC,OAAO,CAAC,+BAA+B,CAAC;IA4B3C;;;;;;;OAOG;IACG,oBAAoB,CACxB,MAAM,EAAE,MAAM,EACd,4BAA4B,EAAE,GAAG,EACjC,yBAAyB,EAAE,0BAA0B,EACrD,KAAK,EAAE,KAAK,EAAE,GACb,OAAO,CAAC,qBAAqB,CAAC;IA2DjC;;;;;;;OAOG;IACG,UAAU,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAuD/G;;;;;OAKG;IACG,UAAU,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CA0G/G"}
@@ -7,11 +7,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
- import { deployVerifier } from "@maci-protocol/contracts";
11
- import { ContractStorage, EPolicies, VerifyingKeysRegistry__factory as VerifyingKeysRegistryFactory, MessageProcessor__factory as MessageProcessorFactory, Tally__factory as TallyFactory, Poll__factory as PollFactory, MACI__factory as MACIFactory, EContracts, EInitialVoiceCreditProxies, EMode, deployPoll, extractAllVerifyingKeys, deployConstantInitialVoiceCreditProxy, deployFreeForAllSignUpPolicy, deployERC20VotesPolicy, deployAnonAadhaarPolicy, deploySignupTokenPolicy, deployMerkleProofPolicy, deploySemaphoreSignupPolicy, deployZupassSignUpPolicy, deployGitcoinPassportPolicy, deployEASSignUpPolicy, deployHatsSignupPolicy, deployMaci, setVerifyingKeys, deployVerifyingKeysRegistryContract, generateEmptyBallotRoots, } from "@maci-protocol/sdk";
10
+ import { ContractStorage, EPolicies, VerifyingKeysRegistry__factory as VerifyingKeysRegistryFactory, MessageProcessor__factory as MessageProcessorFactory, Tally__factory as TallyFactory, Poll__factory as PollFactory, MACI__factory as MACIFactory, EContracts, EInitialVoiceCreditProxies, EMode, deployPoll, extractAllVerifyingKeys, deployConstantInitialVoiceCreditProxy, deployFreeForAllSignUpPolicy, deployERC20VotesPolicy, deployAnonAadhaarPolicy, deploySignupTokenPolicy, deployMerkleProofPolicy, deploySemaphoreSignupPolicy, deployZupassSignUpPolicy, deployGitcoinPassportPolicy, deployEASSignUpPolicy, deployHatsSignupPolicy, deployMaci, setVerifyingKeys, deployVerifyingKeysRegistryContract, generateEmptyBallotRoots, getDeployedPolicyProxyFactories, deployVerifier, ECheckerFactories, EPolicyFactories, deployConstantInitialVoiceCreditProxyFactory, EInitialVoiceCreditProxiesFactories, } from "@maci-protocol/sdk";
12
11
  import { Injectable } from "@nestjs/common";
13
12
  import { BaseContract } from "ethers";
14
- import path from "path";
15
13
  import { ErrorCodes } from "../common";
16
14
  import { getCoordinatorKeypair } from "../common/coordinatorKeypair";
17
15
  import { FileService } from "../file/file.service";
@@ -34,100 +32,250 @@ let DeployerService = class DeployerService {
34
32
  constructor(sessionKeysService, fileService) {
35
33
  this.sessionKeysService = sessionKeysService;
36
34
  this.fileService = fileService;
37
- this.storage = ContractStorage.getInstance(path.join(process.cwd(), "deployed-contracts.json"));
35
+ this.storage = ContractStorage.getInstance();
38
36
  }
39
37
  /**
40
38
  * Get the policy contract object
41
39
  * always deploy and save it
42
40
  *
43
41
  * @param signer - the signer
44
- * @param policyType - the policy type
45
42
  * @param network - the network
46
- * @param args - the policy args
43
+ * @param policyConfig - the policy configuration parameters
47
44
  * @returns - the policy contract
48
45
  */
49
- async deployAndSavePolicy(signer, policyType, network, args) {
50
- let contract;
46
+ async deployAndSavePolicy(signer, network, policyConfig) {
47
+ let policyContract;
48
+ let policyFactory;
49
+ let checkFactory;
50
+ let policyFactoryName;
51
+ let checkFactoryName;
52
+ let factoryIsSaved;
53
+ let checkerIsSaved;
54
+ const { type, args } = policyConfig;
51
55
  // based on the policy type, we need to deploy the correct policy
52
- switch (policyType) {
56
+ switch (type) {
53
57
  case EPolicies.FreeForAll: {
54
- [contract] = await deployFreeForAllSignUpPolicy({}, signer, true);
58
+ policyFactoryName = EPolicyFactories.FreeForAll;
59
+ checkFactoryName = ECheckerFactories.FreeForAll;
60
+ const factories = await getDeployedPolicyProxyFactories({
61
+ policy: policyFactoryName,
62
+ checker: checkFactoryName,
63
+ network,
64
+ signer,
65
+ });
66
+ factoryIsSaved = !!factories.policy;
67
+ checkerIsSaved = !!factories.checker;
68
+ [policyContract, , policyFactory, checkFactory] = await deployFreeForAllSignUpPolicy(factories, signer, true);
55
69
  break;
56
70
  }
57
71
  case EPolicies.EAS: {
58
- [contract] = await deployEASSignUpPolicy({
72
+ policyFactoryName = EPolicyFactories.EAS;
73
+ checkFactoryName = ECheckerFactories.EAS;
74
+ const factories = await getDeployedPolicyProxyFactories({
75
+ policy: policyFactoryName,
76
+ checker: checkFactoryName,
77
+ network,
78
+ signer,
79
+ });
80
+ factoryIsSaved = !!factories.policy;
81
+ checkerIsSaved = !!factories.checker;
82
+ [policyContract, , policyFactory, checkFactory] = await deployEASSignUpPolicy({
59
83
  eas: args.easAddress,
60
84
  attester: args.attester,
61
85
  schema: args.schema,
62
- }, {}, signer, true);
86
+ }, factories, signer, true);
63
87
  break;
64
88
  }
65
89
  case EPolicies.GitcoinPassport: {
66
- [contract] = await deployGitcoinPassportPolicy({
90
+ policyFactoryName = EPolicyFactories.GitcoinPassport;
91
+ checkFactoryName = ECheckerFactories.GitcoinPassport;
92
+ const factories = await getDeployedPolicyProxyFactories({
93
+ policy: policyFactoryName,
94
+ checker: checkFactoryName,
95
+ network,
96
+ signer,
97
+ });
98
+ factoryIsSaved = !!factories.policy;
99
+ checkerIsSaved = !!factories.checker;
100
+ [policyContract, , policyFactory, checkFactory] = await deployGitcoinPassportPolicy({
67
101
  decoderAddress: args.decoderAddress,
68
102
  minimumScore: Number(args.passingScore),
69
- }, {}, signer, true);
103
+ }, factories, signer, true);
70
104
  break;
71
105
  }
72
106
  case EPolicies.Hats: {
73
- [contract] = await deployHatsSignupPolicy({
107
+ policyFactoryName = EPolicyFactories.Hats;
108
+ checkFactoryName = ECheckerFactories.Hats;
109
+ const factories = await getDeployedPolicyProxyFactories({
110
+ policy: policyFactoryName,
111
+ checker: checkFactoryName,
112
+ network,
113
+ signer,
114
+ });
115
+ factoryIsSaved = !!factories.policy;
116
+ checkerIsSaved = !!factories.checker;
117
+ [policyContract, , policyFactory, checkFactory] = await deployHatsSignupPolicy({
74
118
  hats: args.hatsProtocolAddress,
75
119
  criterionHats: args.critrionHats.map((c) => BigInt(c)),
76
- }, {}, signer, true);
120
+ }, factories, signer, true);
77
121
  break;
78
122
  }
79
123
  case EPolicies.Zupass: {
80
- [contract] = await deployZupassSignUpPolicy({
124
+ policyFactoryName = EPolicyFactories.Zupass;
125
+ checkFactoryName = ECheckerFactories.Zupass;
126
+ const factories = await getDeployedPolicyProxyFactories({
127
+ policy: policyFactoryName,
128
+ checker: checkFactoryName,
129
+ network,
130
+ signer,
131
+ });
132
+ factoryIsSaved = !!factories.policy;
133
+ checkerIsSaved = !!factories.checker;
134
+ [policyContract, , policyFactory, checkFactory] = await deployZupassSignUpPolicy({
81
135
  eventId: args.eventId,
82
136
  signer1: args.signer1,
83
137
  signer2: args.signer2,
84
138
  verifier: args.zupassVerifier,
85
- }, {}, signer, true);
139
+ }, factories, signer, true);
86
140
  break;
87
141
  }
88
142
  case EPolicies.Semaphore: {
89
- [contract] = await deploySemaphoreSignupPolicy({
143
+ policyFactoryName = EPolicyFactories.Semaphore;
144
+ checkFactoryName = ECheckerFactories.Semaphore;
145
+ const factories = await getDeployedPolicyProxyFactories({
146
+ policy: policyFactoryName,
147
+ checker: checkFactoryName,
148
+ network,
149
+ signer,
150
+ });
151
+ factoryIsSaved = !!factories.policy;
152
+ checkerIsSaved = !!factories.checker;
153
+ [policyContract, , policyFactory, checkFactory] = await deploySemaphoreSignupPolicy({
90
154
  semaphore: args.semaphoreContract,
91
155
  groupId: BigInt(args.groupId),
92
- }, {}, signer, true);
156
+ }, factories, signer, true);
93
157
  break;
94
158
  }
95
159
  case EPolicies.MerkleProof: {
96
- [contract] = await deployMerkleProofPolicy({
160
+ policyFactoryName = EPolicyFactories.MerkleProof;
161
+ checkFactoryName = ECheckerFactories.MerkleProof;
162
+ const factories = await getDeployedPolicyProxyFactories({
163
+ policy: policyFactoryName,
164
+ checker: checkFactoryName,
165
+ network,
166
+ signer,
167
+ });
168
+ factoryIsSaved = !!factories.policy;
169
+ checkerIsSaved = !!factories.checker;
170
+ [policyContract, , policyFactory, checkFactory] = await deployMerkleProofPolicy({
97
171
  root: args.root,
98
- }, {}, signer, true);
172
+ }, factories, signer, true);
99
173
  break;
100
174
  }
101
175
  case EPolicies.Token: {
102
- [contract] = await deploySignupTokenPolicy({
176
+ policyFactoryName = EPolicyFactories.Token;
177
+ checkFactoryName = ECheckerFactories.Token;
178
+ const factories = await getDeployedPolicyProxyFactories({
179
+ policy: policyFactoryName,
180
+ checker: checkFactoryName,
181
+ network,
182
+ signer,
183
+ });
184
+ factoryIsSaved = !!factories.policy;
185
+ checkerIsSaved = !!factories.checker;
186
+ [policyContract, , policyFactory, checkFactory] = await deploySignupTokenPolicy({
103
187
  token: args.token,
104
- }, {}, signer, true);
188
+ }, factories, signer, true);
105
189
  break;
106
190
  }
107
191
  case EPolicies.AnonAadhaar: {
108
- [contract] = await deployAnonAadhaarPolicy({
192
+ policyFactoryName = EPolicyFactories.AnonAadhaar;
193
+ checkFactoryName = ECheckerFactories.AnonAadhaar;
194
+ const factories = await getDeployedPolicyProxyFactories({
195
+ policy: policyFactoryName,
196
+ checker: checkFactoryName,
197
+ network,
198
+ signer,
199
+ });
200
+ factoryIsSaved = !!factories.policy;
201
+ checkerIsSaved = !!factories.checker;
202
+ [policyContract, , policyFactory, checkFactory] = await deployAnonAadhaarPolicy({
109
203
  verifierAddress: args.verifier,
110
204
  nullifierSeed: args.nullifierSeed,
111
- }, {}, signer, true);
205
+ }, factories, signer, true);
112
206
  break;
113
207
  }
114
208
  case EPolicies.ERC20Votes: {
115
- [contract] = await deployERC20VotesPolicy({
209
+ policyFactoryName = EPolicyFactories.ERC20Votes;
210
+ checkFactoryName = ECheckerFactories.ERC20Votes;
211
+ const factories = await getDeployedPolicyProxyFactories({
212
+ policy: policyFactoryName,
213
+ checker: checkFactoryName,
214
+ network,
215
+ signer,
216
+ });
217
+ factoryIsSaved = !!factories.policy;
218
+ checkerIsSaved = !!factories.checker;
219
+ [policyContract, , policyFactory, checkFactory] = await deployERC20VotesPolicy({
116
220
  snapshotBlock: BigInt(args.snapshotBlock),
117
221
  threshold: BigInt(args.threshold),
118
222
  token: args.token,
119
- }, {}, signer, true);
223
+ }, factories, signer, true);
120
224
  break;
121
225
  }
122
226
  default:
123
227
  throw new Error(ErrorCodes.UNSUPPORTED_POLICY.toString());
124
228
  }
125
229
  await this.storage.register({
126
- id: policyType,
127
- contract,
230
+ id: type,
231
+ name: type,
232
+ contract: policyContract,
128
233
  args: args ? Object.values(args).map((arg) => String(arg)) : [],
129
234
  network,
130
235
  });
236
+ if (!factoryIsSaved) {
237
+ await this.storage.register({
238
+ id: policyFactoryName,
239
+ name: policyFactoryName,
240
+ contract: policyFactory,
241
+ network,
242
+ });
243
+ }
244
+ if (!checkerIsSaved) {
245
+ await this.storage.register({
246
+ id: checkFactoryName,
247
+ name: checkFactoryName,
248
+ contract: checkFactory,
249
+ network,
250
+ });
251
+ }
252
+ return policyContract;
253
+ }
254
+ /**
255
+ * Get the voice credit proxy factory contract object
256
+ * always deploy and save it
257
+ *
258
+ * @param signer - the signer
259
+ * @param voiceCreditProxyFactoryType - the voice credit proxy factory type
260
+ * @param network - the network
261
+ * @returns - the voice credit proxy factory contract
262
+ */
263
+ async deployAndSaveVoiceCreditProxyFactory(signer, voiceCreditProxyFactoryType, network) {
264
+ let contract;
265
+ switch (voiceCreditProxyFactoryType) {
266
+ case EInitialVoiceCreditProxiesFactories.Constant: {
267
+ contract = await deployConstantInitialVoiceCreditProxyFactory(signer, true);
268
+ break;
269
+ }
270
+ default:
271
+ throw new Error(ErrorCodes.UNSUPPORTED_VOICE_CREDIT_PROXY_FACTORY.toString());
272
+ }
273
+ this.storage.register({
274
+ id: voiceCreditProxyFactoryType,
275
+ contract,
276
+ args: [],
277
+ network,
278
+ });
131
279
  return contract;
132
280
  }
133
281
  /**
@@ -137,16 +285,17 @@ let DeployerService = class DeployerService {
137
285
  * @param signer - the signer
138
286
  * @param voiceCreditProxyType - the voice credit proxy type
139
287
  * @param network - the network
288
+ * @param initialVoiceCreditProxyFactory - the initial voice credit proxy factory
140
289
  * @param args - the args
141
290
  * @returns - the voice credit proxy contract
142
291
  */
143
- async deployAndSaveVoiceCreditProxy(signer, voiceCreditProxyType, network, args) {
292
+ async deployAndSaveVoiceCreditProxy(signer, voiceCreditProxyType, network, initialVoiceCreditProxyFactory, args) {
144
293
  let contract;
145
294
  switch (voiceCreditProxyType) {
146
295
  case EInitialVoiceCreditProxies.Constant: {
147
- [contract] = await deployConstantInitialVoiceCreditProxy({
296
+ contract = await deployConstantInitialVoiceCreditProxy({
148
297
  amount: args.amount,
149
- }, signer, undefined, true);
298
+ }, initialVoiceCreditProxyFactory, signer);
150
299
  break;
151
300
  }
152
301
  default:
@@ -168,33 +317,40 @@ let DeployerService = class DeployerService {
168
317
  * @param mode - use QV or NON_QV
169
318
  * @returns SetVerifyingKeysArgs
170
319
  */
171
- async getVerifyingKeysArgs(signer, verifyingKeysRegistryAddress, verifyingKeysRegistryArgs, mode) {
320
+ async getVerifyingKeysArgs(signer, verifyingKeysRegistryAddress, verifyingKeysRegistryArgs, modes) {
172
321
  const { zkey: pollJoiningZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_POLL_JOINING_ZKEY_NAME);
173
322
  const { zkey: pollJoinedZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_POLL_JOINED_ZKEY_NAME);
174
- const { zkey: messageProcessorZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_MESSAGE_PROCESS_ZKEY_NAME, mode);
175
- // There are only QV and Non-QV modes available for tally circuit
176
- const { zkey: voteTallyZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_TALLY_ZKEY_NAME,
177
- // if FULL use NON_QV because there are only VoteTallyQV and VoteTallyNonQV zkeys
178
- mode === EMode.FULL ? EMode.NON_QV : mode);
179
- const { pollJoiningVerifyingKey, pollJoinedVerifyingKey, processVerifyingKey, tallyVerifyingKey } = await extractAllVerifyingKeys({
323
+ const { pollJoiningVerifyingKey, pollJoinedVerifyingKey } = await extractAllVerifyingKeys({
180
324
  pollJoiningZkeyPath,
181
325
  pollJoinedZkeyPath,
182
- messageProcessorZkeyPath,
183
- voteTallyZkeyPath,
184
326
  });
327
+ const processAndTallyVerifyingKeys = await Promise.all(modes.map(async (mode) => {
328
+ const { zkey: messageProcessorZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_MESSAGE_PROCESS_ZKEY_NAME, mode);
329
+ // There are only QV and Non-QV modes available for tally circuit
330
+ const { zkey: voteTallyZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_TALLY_ZKEY_NAME,
331
+ // if FULL use NON_QV because there are only VoteTallyQV and VoteTallyNonQV zkeys
332
+ mode === EMode.FULL ? EMode.NON_QV : mode);
333
+ const { processVerifyingKey, tallyVerifyingKey } = await extractAllVerifyingKeys({
334
+ messageProcessorZkeyPath,
335
+ voteTallyZkeyPath,
336
+ });
337
+ return { processVerifyingKey: processVerifyingKey, tallyVerifyingKey: tallyVerifyingKey };
338
+ }));
339
+ const processVerifyingKeys = processAndTallyVerifyingKeys.map((item) => item.processVerifyingKey);
340
+ const tallyVerifyingKeys = processAndTallyVerifyingKeys.map((item) => item.tallyVerifyingKey);
185
341
  const { stateTreeDepth, pollStateTreeDepth, tallyProcessingStateTreeDepth, voteOptionTreeDepth, messageBatchSize } = verifyingKeysRegistryArgs;
186
342
  return {
187
343
  pollJoiningVerifyingKey: pollJoiningVerifyingKey,
188
344
  pollJoinedVerifyingKey: pollJoinedVerifyingKey,
189
- processMessagesVerifyingKey: processVerifyingKey,
190
- tallyVotesVerifyingKey: tallyVerifyingKey,
345
+ processMessagesVerifyingKeys: processVerifyingKeys,
346
+ tallyVotesVerifyingKeys: tallyVerifyingKeys,
191
347
  stateTreeDepth: Number(stateTreeDepth),
192
348
  tallyProcessingStateTreeDepth: Number(tallyProcessingStateTreeDepth),
193
349
  voteOptionTreeDepth: Number(voteOptionTreeDepth),
194
350
  messageBatchSize: Number(messageBatchSize),
195
351
  pollStateTreeDepth: Number(pollStateTreeDepth),
196
352
  signer,
197
- mode,
353
+ modes,
198
354
  verifyingKeysRegistryAddress,
199
355
  };
200
356
  }
@@ -208,11 +364,11 @@ let DeployerService = class DeployerService {
208
364
  */
209
365
  async deployMaci({ approval, sessionKeyAddress, chain, config }) {
210
366
  const signer = await this.sessionKeysService.getCoordinatorSigner(chain, sessionKeyAddress, approval);
211
- const policyContract = await this.deployAndSavePolicy(signer, config.policy.type, chain, config.policy.args);
367
+ const policyContract = await this.deployAndSavePolicy(signer, chain, config.policy);
212
368
  const policyAddress = await policyContract.getAddress();
213
369
  const verifierContract = await deployVerifier(signer, true);
214
370
  const verifyingKeysRegistryAddress = await deployVerifyingKeysRegistryContract({ signer });
215
- const verifyingKeysArgs = await this.getVerifyingKeysArgs(signer, verifyingKeysRegistryAddress, config.VerifyingKeysRegistry.args, config.MACI.mode);
371
+ const verifyingKeysArgs = await this.getVerifyingKeysArgs(signer, verifyingKeysRegistryAddress, config.VerifyingKeysRegistry.args, config.MACI.modes);
216
372
  await setVerifyingKeys(verifyingKeysArgs);
217
373
  // deploy the smart contracts
218
374
  const maciAddresses = await deployMaci({
@@ -271,17 +427,14 @@ let DeployerService = class DeployerService {
271
427
  if (!verifyingKeysRegistryAddress) {
272
428
  throw new Error(ErrorCodes.VERIFYING_KEYS_REGISTRY_NOT_DEPLOYED.toString());
273
429
  }
274
- // check if policy address was given
275
- let policyAddress = config.policy.address;
276
- if (!policyAddress) {
277
- const policyContract = await this.deployAndSavePolicy(signer, config.policy.type, chain, config.policy.args);
278
- policyAddress = (await policyContract.getAddress());
279
- }
430
+ const policyContract = await this.deployAndSavePolicy(signer, chain, config.policy);
431
+ const policyAddress = (await policyContract.getAddress());
280
432
  // check if initial voice credit proxy address was given
281
433
  let initialVoiceCreditProxyAddress = config.initialVoiceCreditsProxy.address;
282
434
  if (!initialVoiceCreditProxyAddress) {
283
- const initialVoiceCreditProxyContract = await this.deployAndSaveVoiceCreditProxy(signer, config.initialVoiceCreditsProxy.type, chain, config.initialVoiceCreditsProxy.args);
284
- initialVoiceCreditProxyAddress = (await initialVoiceCreditProxyContract.getAddress());
435
+ const initialVoiceCreditProxyFactory = await this.deployAndSaveVoiceCreditProxyFactory(signer, config.initialVoiceCreditsProxy.factoryType, chain);
436
+ const initialVoiceCreditProxyContract = await this.deployAndSaveVoiceCreditProxy(signer, config.initialVoiceCreditsProxy.type, chain, initialVoiceCreditProxyFactory, config.initialVoiceCreditsProxy.args);
437
+ initialVoiceCreditProxyAddress = await initialVoiceCreditProxyContract.getAddress();
285
438
  }
286
439
  // instantiate the coordinator MACI keypair
287
440
  const coordinatorKeypair = getCoordinatorKeypair();
@@ -299,7 +452,7 @@ let DeployerService = class DeployerService {
299
452
  mode: config.mode,
300
453
  policyContractAddress: policyAddress,
301
454
  initialVoiceCreditProxyContractAddress: initialVoiceCreditProxyAddress,
302
- relayers: config.relayers ? config.relayers.map((address) => address) : [],
455
+ relayers: config.relayers ? config.relayers : [],
303
456
  voteOptions: Number(config.voteOptions),
304
457
  initialVoiceCredits: Number(config.initialVoiceCreditsProxy.args.amount),
305
458
  signer,
@@ -1 +1 @@
1
- {"version":3,"file":"deployer.service.js","sourceRoot":"","sources":["../../../ts/deployer/deployer.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deployer.service.js","sourceRoot":"","sources":["../../../ts/deployer/deployer.service.ts"],"names":[],"mappings":"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"}