@maci-protocol/coordinator 0.0.0-ci.00107eb
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.
- package/CHANGELOG.md +51 -0
- package/LICENSE +21 -0
- package/README.md +103 -0
- package/build/hardhat.config.cjs +39 -0
- package/build/hardhat.config.cjs.map +1 -0
- package/build/hardhat.config.d.cts +27 -0
- package/build/hardhat.config.d.cts.map +1 -0
- package/build/scripts/generateKeypair.d.ts +2 -0
- package/build/scripts/generateKeypair.d.ts.map +1 -0
- package/build/scripts/generateKeypair.js +25 -0
- package/build/scripts/generateKeypair.js.map +1 -0
- package/build/scripts/generateMaciKeyPair.d.ts +2 -0
- package/build/scripts/generateMaciKeyPair.d.ts.map +1 -0
- package/build/scripts/generateMaciKeyPair.js +3 -0
- package/build/scripts/generateMaciKeyPair.js.map +1 -0
- package/build/scripts/getAuthHeader.d.ts +2 -0
- package/build/scripts/getAuthHeader.d.ts.map +1 -0
- package/build/scripts/getAuthHeader.js +31 -0
- package/build/scripts/getAuthHeader.js.map +1 -0
- package/build/tests/constants.d.ts +7 -0
- package/build/tests/constants.d.ts.map +1 -0
- package/build/tests/constants.js +11 -0
- package/build/tests/constants.js.map +1 -0
- package/build/tests/e2e.deploy.test.d.ts +2 -0
- package/build/tests/e2e.deploy.test.d.ts.map +1 -0
- package/build/tests/e2e.deploy.test.js +264 -0
- package/build/tests/e2e.deploy.test.js.map +1 -0
- package/build/tests/e2e.redis.test.d.ts +2 -0
- package/build/tests/e2e.redis.test.d.ts.map +1 -0
- package/build/tests/e2e.redis.test.js +118 -0
- package/build/tests/e2e.redis.test.js.map +1 -0
- package/build/tests/utils.d.ts +20 -0
- package/build/tests/utils.d.ts.map +1 -0
- package/build/tests/utils.js +55 -0
- package/build/tests/utils.js.map +1 -0
- package/build/ts/app.module.d.ts +3 -0
- package/build/ts/app.module.d.ts.map +1 -0
- package/build/ts/app.module.js +42 -0
- package/build/ts/app.module.js.map +1 -0
- package/build/ts/auth/AccountSignatureGuard.service.d.ts +44 -0
- package/build/ts/auth/AccountSignatureGuard.service.d.ts.map +1 -0
- package/build/ts/auth/AccountSignatureGuard.service.js +96 -0
- package/build/ts/auth/AccountSignatureGuard.service.js.map +1 -0
- package/build/ts/auth/__tests__/AccountSignatureGuard.test.d.ts +2 -0
- package/build/ts/auth/__tests__/AccountSignatureGuard.test.d.ts.map +1 -0
- package/build/ts/auth/__tests__/AccountSignatureGuard.test.js +113 -0
- package/build/ts/auth/__tests__/AccountSignatureGuard.test.js.map +1 -0
- package/build/ts/common/__tests__/common.test.d.ts +2 -0
- package/build/ts/common/__tests__/common.test.d.ts.map +1 -0
- package/build/ts/common/__tests__/common.test.js +77 -0
- package/build/ts/common/__tests__/common.test.js.map +1 -0
- package/build/ts/common/accountAbstraction.d.ts +38 -0
- package/build/ts/common/accountAbstraction.d.ts.map +1 -0
- package/build/ts/common/accountAbstraction.js +83 -0
- package/build/ts/common/accountAbstraction.js.map +1 -0
- package/build/ts/common/chain.d.ts +22 -0
- package/build/ts/common/chain.d.ts.map +1 -0
- package/build/ts/common/chain.js +37 -0
- package/build/ts/common/chain.js.map +1 -0
- package/build/ts/common/coordinatorKeypair.d.ts +7 -0
- package/build/ts/common/coordinatorKeypair.d.ts.map +1 -0
- package/build/ts/common/coordinatorKeypair.js +14 -0
- package/build/ts/common/coordinatorKeypair.js.map +1 -0
- package/build/ts/common/errors.d.ts +36 -0
- package/build/ts/common/errors.d.ts.map +1 -0
- package/build/ts/common/errors.js +37 -0
- package/build/ts/common/errors.js.map +1 -0
- package/build/ts/common/http.d.ts +6 -0
- package/build/ts/common/http.d.ts.map +1 -0
- package/build/ts/common/http.js +49 -0
- package/build/ts/common/http.js.map +1 -0
- package/build/ts/common/index.d.ts +6 -0
- package/build/ts/common/index.d.ts.map +1 -0
- package/build/ts/common/index.js +6 -0
- package/build/ts/common/index.js.map +1 -0
- package/build/ts/common/networks.d.ts +10 -0
- package/build/ts/common/networks.d.ts.map +1 -0
- package/build/ts/common/networks.js +61 -0
- package/build/ts/common/networks.js.map +1 -0
- package/build/ts/common/types.d.ts +8 -0
- package/build/ts/common/types.d.ts.map +1 -0
- package/build/ts/common/types.js +2 -0
- package/build/ts/common/types.js.map +1 -0
- package/build/ts/crypto/__tests__/crypto.service.test.d.ts +2 -0
- package/build/ts/crypto/__tests__/crypto.service.test.d.ts.map +1 -0
- package/build/ts/crypto/__tests__/crypto.service.test.js +26 -0
- package/build/ts/crypto/__tests__/crypto.service.test.js.map +1 -0
- package/build/ts/crypto/crypto.module.d.ts +3 -0
- package/build/ts/crypto/crypto.module.d.ts.map +1 -0
- package/build/ts/crypto/crypto.module.js +18 -0
- package/build/ts/crypto/crypto.module.js.map +1 -0
- package/build/ts/crypto/crypto.service.d.ts +31 -0
- package/build/ts/crypto/crypto.service.d.ts.map +1 -0
- package/build/ts/crypto/crypto.service.js +68 -0
- package/build/ts/crypto/crypto.service.js.map +1 -0
- package/build/ts/deployer/__tests__/deployer.controller.test.d.ts +2 -0
- package/build/ts/deployer/__tests__/deployer.controller.test.d.ts.map +1 -0
- package/build/ts/deployer/__tests__/deployer.controller.test.js +82 -0
- package/build/ts/deployer/__tests__/deployer.controller.test.js.map +1 -0
- package/build/ts/deployer/__tests__/deployer.service.test.d.ts +2 -0
- package/build/ts/deployer/__tests__/deployer.service.test.d.ts.map +1 -0
- package/build/ts/deployer/__tests__/deployer.service.test.js +272 -0
- package/build/ts/deployer/__tests__/deployer.service.test.js.map +1 -0
- package/build/ts/deployer/__tests__/utils.d.ts +61 -0
- package/build/ts/deployer/__tests__/utils.d.ts.map +1 -0
- package/build/ts/deployer/__tests__/utils.js +122 -0
- package/build/ts/deployer/__tests__/utils.js.map +1 -0
- package/build/ts/deployer/constants.d.ts +13 -0
- package/build/ts/deployer/constants.d.ts.map +1 -0
- package/build/ts/deployer/constants.js +13 -0
- package/build/ts/deployer/constants.js.map +1 -0
- package/build/ts/deployer/deployer.controller.d.ts +34 -0
- package/build/ts/deployer/deployer.controller.d.ts.map +1 -0
- package/build/ts/deployer/deployer.controller.js +102 -0
- package/build/ts/deployer/deployer.controller.js.map +1 -0
- package/build/ts/deployer/deployer.module.d.ts +3 -0
- package/build/ts/deployer/deployer.module.d.ts.map +1 -0
- package/build/ts/deployer/deployer.module.js +23 -0
- package/build/ts/deployer/deployer.module.js.map +1 -0
- package/build/ts/deployer/deployer.service.d.ts +85 -0
- package/build/ts/deployer/deployer.service.d.ts.map +1 -0
- package/build/ts/deployer/deployer.service.js +505 -0
- package/build/ts/deployer/deployer.service.js.map +1 -0
- package/build/ts/deployer/dto.d.ts +46 -0
- package/build/ts/deployer/dto.d.ts.map +1 -0
- package/build/ts/deployer/dto.js +125 -0
- package/build/ts/deployer/dto.js.map +1 -0
- package/build/ts/deployer/types.d.ts +351 -0
- package/build/ts/deployer/types.d.ts.map +1 -0
- package/build/ts/deployer/types.js +2 -0
- package/build/ts/deployer/types.js.map +1 -0
- package/build/ts/file/__tests__/file.service.test.d.ts +2 -0
- package/build/ts/file/__tests__/file.service.test.d.ts.map +1 -0
- package/build/ts/file/__tests__/file.service.test.js +77 -0
- package/build/ts/file/__tests__/file.service.test.js.map +1 -0
- package/build/ts/file/file.module.d.ts +3 -0
- package/build/ts/file/file.module.d.ts.map +1 -0
- package/build/ts/file/file.module.js +18 -0
- package/build/ts/file/file.module.js.map +1 -0
- package/build/ts/file/file.service.d.ts +63 -0
- package/build/ts/file/file.service.d.ts.map +1 -0
- package/build/ts/file/file.service.js +121 -0
- package/build/ts/file/file.service.js.map +1 -0
- package/build/ts/file/types.d.ts +36 -0
- package/build/ts/file/types.d.ts.map +1 -0
- package/build/ts/file/types.js +2 -0
- package/build/ts/file/types.js.map +1 -0
- package/build/ts/health/__tests__/health.controller.test.d.ts +2 -0
- package/build/ts/health/__tests__/health.controller.test.d.ts.map +1 -0
- package/build/ts/health/__tests__/health.controller.test.js +52 -0
- package/build/ts/health/__tests__/health.controller.test.js.map +1 -0
- package/build/ts/health/__tests__/health.service.test.d.ts +2 -0
- package/build/ts/health/__tests__/health.service.test.d.ts.map +1 -0
- package/build/ts/health/__tests__/health.service.test.js +101 -0
- package/build/ts/health/__tests__/health.service.test.js.map +1 -0
- package/build/ts/health/health.controller.d.ts +16 -0
- package/build/ts/health/health.controller.d.ts.map +1 -0
- package/build/ts/health/health.controller.js +43 -0
- package/build/ts/health/health.controller.js.map +1 -0
- package/build/ts/health/health.module.d.ts +3 -0
- package/build/ts/health/health.module.d.ts.map +1 -0
- package/build/ts/health/health.module.js +22 -0
- package/build/ts/health/health.module.js.map +1 -0
- package/build/ts/health/health.service.d.ts +42 -0
- package/build/ts/health/health.service.d.ts.map +1 -0
- package/build/ts/health/health.service.js +176 -0
- package/build/ts/health/health.service.js.map +1 -0
- package/build/ts/health/types.d.ts +87 -0
- package/build/ts/health/types.d.ts.map +1 -0
- package/build/ts/health/types.js +2 -0
- package/build/ts/health/types.js.map +1 -0
- package/build/ts/jest/__mocks__/@openzeppelin/merkle-tree.d.ts +11 -0
- package/build/ts/jest/__mocks__/@openzeppelin/merkle-tree.d.ts.map +1 -0
- package/build/ts/jest/__mocks__/@openzeppelin/merkle-tree.js +12 -0
- package/build/ts/jest/__mocks__/@openzeppelin/merkle-tree.js.map +1 -0
- package/build/ts/jest/setup.d.ts +8 -0
- package/build/ts/jest/setup.d.ts.map +1 -0
- package/build/ts/jest/setup.js +2 -0
- package/build/ts/jest/setup.js.map +1 -0
- package/build/ts/jest/transform.d.ts +8 -0
- package/build/ts/jest/transform.d.ts.map +1 -0
- package/build/ts/jest/transform.js +10 -0
- package/build/ts/jest/transform.js.map +1 -0
- package/build/ts/main.d.ts +2 -0
- package/build/ts/main.d.ts.map +1 -0
- package/build/ts/main.js +46 -0
- package/build/ts/main.js.map +1 -0
- package/build/ts/proof/__tests__/proof.controller.test.d.ts +2 -0
- package/build/ts/proof/__tests__/proof.controller.test.d.ts.map +1 -0
- package/build/ts/proof/__tests__/proof.controller.test.js +90 -0
- package/build/ts/proof/__tests__/proof.controller.test.js.map +1 -0
- package/build/ts/proof/__tests__/proof.gateway.test.d.ts +2 -0
- package/build/ts/proof/__tests__/proof.gateway.test.d.ts.map +1 -0
- package/build/ts/proof/__tests__/proof.gateway.test.js +63 -0
- package/build/ts/proof/__tests__/proof.gateway.test.js.map +1 -0
- package/build/ts/proof/__tests__/proof.service.test.d.ts +2 -0
- package/build/ts/proof/__tests__/proof.service.test.d.ts.map +1 -0
- package/build/ts/proof/__tests__/proof.service.test.js +84 -0
- package/build/ts/proof/__tests__/proof.service.test.js.map +1 -0
- package/build/ts/proof/dto.d.ts +70 -0
- package/build/ts/proof/dto.d.ts.map +1 -0
- package/build/ts/proof/dto.js +261 -0
- package/build/ts/proof/dto.js.map +1 -0
- package/build/ts/proof/proof.controller.d.ts +47 -0
- package/build/ts/proof/proof.controller.d.ts.map +1 -0
- package/build/ts/proof/proof.controller.js +158 -0
- package/build/ts/proof/proof.controller.js.map +1 -0
- package/build/ts/proof/proof.gateway.d.ts +35 -0
- package/build/ts/proof/proof.gateway.d.ts.map +1 -0
- package/build/ts/proof/proof.gateway.js +93 -0
- package/build/ts/proof/proof.gateway.js.map +1 -0
- package/build/ts/proof/proof.module.d.ts +3 -0
- package/build/ts/proof/proof.module.d.ts.map +1 -0
- package/build/ts/proof/proof.module.js +25 -0
- package/build/ts/proof/proof.module.js.map +1 -0
- package/build/ts/proof/proof.service.d.ts +52 -0
- package/build/ts/proof/proof.service.d.ts.map +1 -0
- package/build/ts/proof/proof.service.js +164 -0
- package/build/ts/proof/proof.service.js.map +1 -0
- package/build/ts/proof/types.d.ts +144 -0
- package/build/ts/proof/types.d.ts.map +1 -0
- package/build/ts/proof/types.js +11 -0
- package/build/ts/proof/types.js.map +1 -0
- package/build/ts/redis/__tests__/redis.service.test.d.ts +2 -0
- package/build/ts/redis/__tests__/redis.service.test.d.ts.map +1 -0
- package/build/ts/redis/__tests__/redis.service.test.js +148 -0
- package/build/ts/redis/__tests__/redis.service.test.js.map +1 -0
- package/build/ts/redis/redis.module.d.ts +3 -0
- package/build/ts/redis/redis.module.d.ts.map +1 -0
- package/build/ts/redis/redis.module.js +18 -0
- package/build/ts/redis/redis.module.js.map +1 -0
- package/build/ts/redis/redis.service.d.ts +53 -0
- package/build/ts/redis/redis.service.d.ts.map +1 -0
- package/build/ts/redis/redis.service.js +99 -0
- package/build/ts/redis/redis.service.js.map +1 -0
- package/build/ts/redis/types.d.ts +66 -0
- package/build/ts/redis/types.d.ts.map +1 -0
- package/build/ts/redis/types.js +2 -0
- package/build/ts/redis/types.js.map +1 -0
- package/build/ts/redis/utils.d.ts +20 -0
- package/build/ts/redis/utils.d.ts.map +1 -0
- package/build/ts/redis/utils.js +27 -0
- package/build/ts/redis/utils.js.map +1 -0
- package/build/ts/scheduler/__tests__/scheduler.controller.test.d.ts +2 -0
- package/build/ts/scheduler/__tests__/scheduler.controller.test.d.ts.map +1 -0
- package/build/ts/scheduler/__tests__/scheduler.controller.test.js +62 -0
- package/build/ts/scheduler/__tests__/scheduler.controller.test.js.map +1 -0
- package/build/ts/scheduler/__tests__/scheduler.service.test.d.ts +2 -0
- package/build/ts/scheduler/__tests__/scheduler.service.test.d.ts.map +1 -0
- package/build/ts/scheduler/__tests__/scheduler.service.test.js +369 -0
- package/build/ts/scheduler/__tests__/scheduler.service.test.js.map +1 -0
- package/build/ts/scheduler/dto.d.ts +41 -0
- package/build/ts/scheduler/dto.d.ts.map +1 -0
- package/build/ts/scheduler/dto.js +115 -0
- package/build/ts/scheduler/dto.js.map +1 -0
- package/build/ts/scheduler/scheduler.controller.d.ts +32 -0
- package/build/ts/scheduler/scheduler.controller.d.ts.map +1 -0
- package/build/ts/scheduler/scheduler.controller.js +118 -0
- package/build/ts/scheduler/scheduler.controller.js.map +1 -0
- package/build/ts/scheduler/scheduler.module.d.ts +3 -0
- package/build/ts/scheduler/scheduler.module.d.ts.map +1 -0
- package/build/ts/scheduler/scheduler.module.js +24 -0
- package/build/ts/scheduler/scheduler.module.js.map +1 -0
- package/build/ts/scheduler/scheduler.service.d.ts +71 -0
- package/build/ts/scheduler/scheduler.service.d.ts.map +1 -0
- package/build/ts/scheduler/scheduler.service.js +297 -0
- package/build/ts/scheduler/scheduler.service.js.map +1 -0
- package/build/ts/scheduler/types.d.ts +65 -0
- package/build/ts/scheduler/types.d.ts.map +1 -0
- package/build/ts/scheduler/types.js +2 -0
- package/build/ts/scheduler/types.js.map +1 -0
- package/build/ts/sessionKeys/__tests__/sessionKeys.controller.test.d.ts +2 -0
- package/build/ts/sessionKeys/__tests__/sessionKeys.controller.test.d.ts.map +1 -0
- package/build/ts/sessionKeys/__tests__/sessionKeys.controller.test.js +44 -0
- package/build/ts/sessionKeys/__tests__/sessionKeys.controller.test.js.map +1 -0
- package/build/ts/sessionKeys/__tests__/sessionKeys.service.test.d.ts +2 -0
- package/build/ts/sessionKeys/__tests__/sessionKeys.service.test.d.ts.map +1 -0
- package/build/ts/sessionKeys/__tests__/sessionKeys.service.test.js +76 -0
- package/build/ts/sessionKeys/__tests__/sessionKeys.service.test.js.map +1 -0
- package/build/ts/sessionKeys/__tests__/utils.d.ts +25 -0
- package/build/ts/sessionKeys/__tests__/utils.d.ts.map +1 -0
- package/build/ts/sessionKeys/__tests__/utils.js +65 -0
- package/build/ts/sessionKeys/__tests__/utils.js.map +1 -0
- package/build/ts/sessionKeys/dto.d.ts +11 -0
- package/build/ts/sessionKeys/dto.d.ts.map +1 -0
- package/build/ts/sessionKeys/dto.js +29 -0
- package/build/ts/sessionKeys/dto.js.map +1 -0
- package/build/ts/sessionKeys/provider/KernelEIP1193Provider.d.ts +53 -0
- package/build/ts/sessionKeys/provider/KernelEIP1193Provider.d.ts.map +1 -0
- package/build/ts/sessionKeys/provider/KernelEIP1193Provider.js +105 -0
- package/build/ts/sessionKeys/provider/KernelEIP1193Provider.js.map +1 -0
- package/build/ts/sessionKeys/sessionKeys.controller.d.ts +26 -0
- package/build/ts/sessionKeys/sessionKeys.controller.d.ts.map +1 -0
- package/build/ts/sessionKeys/sessionKeys.controller.js +74 -0
- package/build/ts/sessionKeys/sessionKeys.controller.js.map +1 -0
- package/build/ts/sessionKeys/sessionKeys.module.d.ts +3 -0
- package/build/ts/sessionKeys/sessionKeys.module.d.ts.map +1 -0
- package/build/ts/sessionKeys/sessionKeys.module.js +23 -0
- package/build/ts/sessionKeys/sessionKeys.module.js.map +1 -0
- package/build/ts/sessionKeys/sessionKeys.service.d.ts +62 -0
- package/build/ts/sessionKeys/sessionKeys.service.d.ts.map +1 -0
- package/build/ts/sessionKeys/sessionKeys.service.js +121 -0
- package/build/ts/sessionKeys/sessionKeys.service.js.map +1 -0
- package/build/ts/sessionKeys/types.d.ts +11 -0
- package/build/ts/sessionKeys/types.d.ts.map +1 -0
- package/build/ts/sessionKeys/types.js +2 -0
- package/build/ts/sessionKeys/types.js.map +1 -0
- package/build/ts/subgraph/__tests__/subgraph.controller.test.d.ts +2 -0
- package/build/ts/subgraph/__tests__/subgraph.controller.test.d.ts.map +1 -0
- package/build/ts/subgraph/__tests__/subgraph.controller.test.js +50 -0
- package/build/ts/subgraph/__tests__/subgraph.controller.test.js.map +1 -0
- package/build/ts/subgraph/__tests__/subgraph.gateway.test.d.ts +2 -0
- package/build/ts/subgraph/__tests__/subgraph.gateway.test.d.ts.map +1 -0
- package/build/ts/subgraph/__tests__/subgraph.gateway.test.js +83 -0
- package/build/ts/subgraph/__tests__/subgraph.gateway.test.js.map +1 -0
- package/build/ts/subgraph/__tests__/subgraph.service.test.d.ts +2 -0
- package/build/ts/subgraph/__tests__/subgraph.service.test.d.ts.map +1 -0
- package/build/ts/subgraph/__tests__/subgraph.service.test.js +58 -0
- package/build/ts/subgraph/__tests__/subgraph.service.test.js.map +1 -0
- package/build/ts/subgraph/dto.d.ts +27 -0
- package/build/ts/subgraph/dto.d.ts.map +1 -0
- package/build/ts/subgraph/dto.js +83 -0
- package/build/ts/subgraph/dto.js.map +1 -0
- package/build/ts/subgraph/subgraph.controller.d.ts +24 -0
- package/build/ts/subgraph/subgraph.controller.d.ts.map +1 -0
- package/build/ts/subgraph/subgraph.controller.js +71 -0
- package/build/ts/subgraph/subgraph.controller.js.map +1 -0
- package/build/ts/subgraph/subgraph.gateway.d.ts +35 -0
- package/build/ts/subgraph/subgraph.gateway.d.ts.map +1 -0
- package/build/ts/subgraph/subgraph.gateway.js +93 -0
- package/build/ts/subgraph/subgraph.gateway.js.map +1 -0
- package/build/ts/subgraph/subgraph.module.d.ts +3 -0
- package/build/ts/subgraph/subgraph.module.d.ts.map +1 -0
- package/build/ts/subgraph/subgraph.module.js +23 -0
- package/build/ts/subgraph/subgraph.module.js.map +1 -0
- package/build/ts/subgraph/subgraph.service.d.ts +24 -0
- package/build/ts/subgraph/subgraph.service.d.ts.map +1 -0
- package/build/ts/subgraph/subgraph.service.js +119 -0
- package/build/ts/subgraph/subgraph.service.js.map +1 -0
- package/build/ts/subgraph/types.d.ts +93 -0
- package/build/ts/subgraph/types.d.ts.map +1 -0
- package/build/ts/subgraph/types.js +24 -0
- package/build/ts/subgraph/types.js.map +1 -0
- package/build/tsconfig.build.tsbuildinfo +1 -0
- package/package.json +131 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployer.controller.js","sourceRoot":"","sources":["../../../ts/deployer/deployer.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployer.module.d.ts","sourceRoot":"","sources":["../../../ts/deployer/deployer.module.ts"],"names":[],"mappings":"AASA,qBAKa,cAAc;CAAG"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { Module } from "@nestjs/common";
|
|
8
|
+
import { CryptoModule } from "../crypto/crypto.module";
|
|
9
|
+
import { FileModule } from "../file/file.module";
|
|
10
|
+
import { SessionKeysModule } from "../sessionKeys/sessionKeys.module";
|
|
11
|
+
import { DeployerController } from "./deployer.controller";
|
|
12
|
+
import { DeployerService } from "./deployer.service";
|
|
13
|
+
let DeployerModule = class DeployerModule {
|
|
14
|
+
};
|
|
15
|
+
DeployerModule = __decorate([
|
|
16
|
+
Module({
|
|
17
|
+
imports: [FileModule, CryptoModule, SessionKeysModule],
|
|
18
|
+
controllers: [DeployerController],
|
|
19
|
+
providers: [DeployerService],
|
|
20
|
+
})
|
|
21
|
+
], DeployerModule);
|
|
22
|
+
export { DeployerModule };
|
|
23
|
+
//# sourceMappingURL=deployer.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployer.module.js","sourceRoot":"","sources":["../../../ts/deployer/deployer.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAEtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAO9C,IAAM,cAAc,GAApB,MAAM,cAAc;CAAG,CAAA;AAAjB,cAAc;IAL1B,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,iBAAiB,CAAC;QACtD,WAAW,EAAE,CAAC,kBAAkB,CAAC;QACjC,SAAS,EAAE,CAAC,eAAe,CAAC;KAC7B,CAAC;GACW,cAAc,CAAG"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { EInitialVoiceCreditProxies, EMode, ISetVerifyingKeysArgs, BasePolicy, ConstantInitialVoiceCreditProxy, ConstantInitialVoiceCreditProxyFactory, EInitialVoiceCreditProxiesFactories, ESupportedChains } from "@maci-protocol/sdk";
|
|
2
|
+
import { Signer } from "ethers";
|
|
3
|
+
import { type Hex } from "viem";
|
|
4
|
+
import { FileService } from "../file/file.service";
|
|
5
|
+
import { SessionKeysService } from "../sessionKeys/sessionKeys.service";
|
|
6
|
+
import { IDeployMaciArgs, IDeployPollArgs, IInitialVoiceCreditProxyArgs, IVerifyingKeysRegistryArgs, IDeployPolicyConfig } from "./types";
|
|
7
|
+
/**
|
|
8
|
+
* DeployerService is responsible for deploying contracts.
|
|
9
|
+
*/
|
|
10
|
+
export declare class DeployerService {
|
|
11
|
+
private readonly sessionKeysService;
|
|
12
|
+
private readonly fileService;
|
|
13
|
+
/**
|
|
14
|
+
* Contract storage instance
|
|
15
|
+
*/
|
|
16
|
+
private readonly storage;
|
|
17
|
+
/**
|
|
18
|
+
* Create a new instance of DeployerService
|
|
19
|
+
*
|
|
20
|
+
* @param fileService - file service
|
|
21
|
+
*/
|
|
22
|
+
constructor(sessionKeysService: SessionKeysService, fileService: FileService);
|
|
23
|
+
/**
|
|
24
|
+
* Get the policy contract object
|
|
25
|
+
* always deploy and save it
|
|
26
|
+
*
|
|
27
|
+
* @param signer - the signer
|
|
28
|
+
* @param network - the network
|
|
29
|
+
* @param policyConfig - the policy configuration parameters
|
|
30
|
+
* @returns - the policy contract
|
|
31
|
+
*/
|
|
32
|
+
deployAndSavePolicy(signer: Signer, network: ESupportedChains, policyConfig: IDeployPolicyConfig): Promise<BasePolicy>;
|
|
33
|
+
/**
|
|
34
|
+
* Get the voice credit proxy factory contract object
|
|
35
|
+
* always deploy and save it
|
|
36
|
+
*
|
|
37
|
+
* @param signer - the signer
|
|
38
|
+
* @param voiceCreditProxyFactoryType - the voice credit proxy factory type
|
|
39
|
+
* @param network - the network
|
|
40
|
+
* @returns - the voice credit proxy factory contract
|
|
41
|
+
*/
|
|
42
|
+
deployAndSaveVoiceCreditProxyFactory(signer: Signer, voiceCreditProxyFactoryType: EInitialVoiceCreditProxiesFactories, network: ESupportedChains): Promise<ConstantInitialVoiceCreditProxyFactory>;
|
|
43
|
+
/**
|
|
44
|
+
* Get the voice credit proxy contract object
|
|
45
|
+
* always deploy and save it
|
|
46
|
+
*
|
|
47
|
+
* @param signer - the signer
|
|
48
|
+
* @param voiceCreditProxyType - the voice credit proxy type
|
|
49
|
+
* @param network - the network
|
|
50
|
+
* @param initialVoiceCreditProxyFactory - the initial voice credit proxy factory
|
|
51
|
+
* @param args - the args
|
|
52
|
+
* @returns - the voice credit proxy contract
|
|
53
|
+
*/
|
|
54
|
+
deployAndSaveVoiceCreditProxy(signer: Signer, voiceCreditProxyType: EInitialVoiceCreditProxies, network: ESupportedChains, initialVoiceCreditProxyFactory: ConstantInitialVoiceCreditProxyFactory, args?: IInitialVoiceCreditProxyArgs): Promise<ConstantInitialVoiceCreditProxy>;
|
|
55
|
+
/**
|
|
56
|
+
* Get verifying keys arguments (specially zkey paths)
|
|
57
|
+
* @param signer - the signer
|
|
58
|
+
* @param verifyingKeysRegistryContract - the deployed verifyingKey registry contract
|
|
59
|
+
* @param verifyingKeysRegistryArgs - the arguments send to the endpoint
|
|
60
|
+
* @param mode - use QV or NON_QV
|
|
61
|
+
* @returns SetVerifyingKeysArgs
|
|
62
|
+
*/
|
|
63
|
+
getVerifyingKeysArgs(signer: Signer, verifyingKeysRegistryAddress: Hex, verifyingKeysRegistryArgs: IVerifyingKeysRegistryArgs, modes: EMode[]): Promise<ISetVerifyingKeysArgs>;
|
|
64
|
+
/**
|
|
65
|
+
* Deploy MACI contracts
|
|
66
|
+
*
|
|
67
|
+
* @param args - deploy maci arguments
|
|
68
|
+
* @param options - ws hooks
|
|
69
|
+
* @returns - deployed maci contract
|
|
70
|
+
* @returns the address of the deployed maci contract
|
|
71
|
+
*/
|
|
72
|
+
deployMaci({ approval, sessionKeyAddress, chain, config }: IDeployMaciArgs): Promise<{
|
|
73
|
+
address: string;
|
|
74
|
+
}>;
|
|
75
|
+
/**
|
|
76
|
+
* Deploy a poll
|
|
77
|
+
*
|
|
78
|
+
* @param args - deploy poll dto
|
|
79
|
+
* @returns poll id
|
|
80
|
+
*/
|
|
81
|
+
deployPoll({ approval, sessionKeyAddress, chain, config }: IDeployPollArgs): Promise<{
|
|
82
|
+
pollId: string;
|
|
83
|
+
}>;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=deployer.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployer.service.d.ts","sourceRoot":"","sources":["../../../ts/deployer/deployer.service.ts"],"names":[],"mappings":"AACA,OAAO,EAWL,0BAA0B,EAC1B,KAAK,EAEL,qBAAqB,EAarB,UAAU,EAGV,+BAA+B,EA0B/B,sCAAsC,EACtC,mCAAmC,EACnC,gBAAgB,EAGjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAgB,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAIhC,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,gBAAgB,EACzB,YAAY,EAAE,mBAAmB,GAChC,OAAO,CAAC,UAAU,CAAC;IAqTtB;;;;;;;;OAQG;IACG,oCAAoC,CACxC,MAAM,EAAE,MAAM,EACd,2BAA2B,EAAE,mCAAmC,EAChE,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,sCAAsC,CAAC;IAsBlD;;;;;;;;;;OAUG;IACG,6BAA6B,CACjC,MAAM,EAAE,MAAM,EACd,oBAAoB,EAAE,0BAA0B,EAChD,OAAO,EAAE,gBAAgB,EACzB,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;IAwD/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;CAwG/G"}
|
|
@@ -0,0 +1,505 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import { ContractStorage, EPolicies, VerifyingKeysRegistry__factory as VerifyingKeysRegistryFactory, Verifier__factory as VerifierFactory, 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, generateEmptyBallotRoots, getDeployedPolicyProxyFactories, ECheckerFactories, EPolicyFactories, deployConstantInitialVoiceCreditProxyFactory, EInitialVoiceCreditProxiesFactories, } from "@maci-protocol/sdk";
|
|
11
|
+
import { Injectable } from "@nestjs/common";
|
|
12
|
+
import { BaseContract } from "ethers";
|
|
13
|
+
import { ErrorCodes } from "../common";
|
|
14
|
+
import { getCoordinatorKeypair } from "../common/coordinatorKeypair";
|
|
15
|
+
import { FileService } from "../file/file.service";
|
|
16
|
+
import { SessionKeysService } from "../sessionKeys/sessionKeys.service";
|
|
17
|
+
/**
|
|
18
|
+
* DeployerService is responsible for deploying contracts.
|
|
19
|
+
*/
|
|
20
|
+
let DeployerService = class DeployerService {
|
|
21
|
+
sessionKeysService;
|
|
22
|
+
fileService;
|
|
23
|
+
/**
|
|
24
|
+
* Contract storage instance
|
|
25
|
+
*/
|
|
26
|
+
storage;
|
|
27
|
+
/**
|
|
28
|
+
* Create a new instance of DeployerService
|
|
29
|
+
*
|
|
30
|
+
* @param fileService - file service
|
|
31
|
+
*/
|
|
32
|
+
constructor(sessionKeysService, fileService) {
|
|
33
|
+
this.sessionKeysService = sessionKeysService;
|
|
34
|
+
this.fileService = fileService;
|
|
35
|
+
this.storage = ContractStorage.getInstance();
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Get the policy contract object
|
|
39
|
+
* always deploy and save it
|
|
40
|
+
*
|
|
41
|
+
* @param signer - the signer
|
|
42
|
+
* @param network - the network
|
|
43
|
+
* @param policyConfig - the policy configuration parameters
|
|
44
|
+
* @returns - the policy contract
|
|
45
|
+
*/
|
|
46
|
+
async deployAndSavePolicy(signer, network, policyConfig) {
|
|
47
|
+
let policyContract;
|
|
48
|
+
let checkerContract;
|
|
49
|
+
let policyFactory;
|
|
50
|
+
let checkFactory;
|
|
51
|
+
let policyFactoryName;
|
|
52
|
+
let checkFactoryName;
|
|
53
|
+
let factoryIsSaved;
|
|
54
|
+
let checkerIsSaved;
|
|
55
|
+
const { policyType, checkerType, args } = policyConfig;
|
|
56
|
+
// based on the policy type, we need to deploy the correct policy
|
|
57
|
+
switch (policyType) {
|
|
58
|
+
case EPolicies.FreeForAll: {
|
|
59
|
+
policyFactoryName = EPolicyFactories.FreeForAll;
|
|
60
|
+
checkFactoryName = ECheckerFactories.FreeForAll;
|
|
61
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
62
|
+
policy: policyFactoryName,
|
|
63
|
+
checker: checkFactoryName,
|
|
64
|
+
network,
|
|
65
|
+
signer,
|
|
66
|
+
});
|
|
67
|
+
factoryIsSaved = !!factories.policy;
|
|
68
|
+
checkerIsSaved = !!factories.checker;
|
|
69
|
+
[policyContract, checkerContract, policyFactory, checkFactory] = await deployFreeForAllSignUpPolicy(factories, signer, true);
|
|
70
|
+
break;
|
|
71
|
+
}
|
|
72
|
+
case EPolicies.EAS: {
|
|
73
|
+
policyFactoryName = EPolicyFactories.EAS;
|
|
74
|
+
checkFactoryName = ECheckerFactories.EAS;
|
|
75
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
76
|
+
policy: policyFactoryName,
|
|
77
|
+
checker: checkFactoryName,
|
|
78
|
+
network,
|
|
79
|
+
signer,
|
|
80
|
+
});
|
|
81
|
+
factoryIsSaved = !!factories.policy;
|
|
82
|
+
checkerIsSaved = !!factories.checker;
|
|
83
|
+
[policyContract, checkerContract, policyFactory, checkFactory] = await deployEASSignUpPolicy({
|
|
84
|
+
eas: args.easAddress,
|
|
85
|
+
attester: args.attester,
|
|
86
|
+
schema: args.schema,
|
|
87
|
+
}, factories, signer, true);
|
|
88
|
+
break;
|
|
89
|
+
}
|
|
90
|
+
case EPolicies.GitcoinPassport: {
|
|
91
|
+
policyFactoryName = EPolicyFactories.GitcoinPassport;
|
|
92
|
+
checkFactoryName = ECheckerFactories.GitcoinPassport;
|
|
93
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
94
|
+
policy: policyFactoryName,
|
|
95
|
+
checker: checkFactoryName,
|
|
96
|
+
network,
|
|
97
|
+
signer,
|
|
98
|
+
});
|
|
99
|
+
factoryIsSaved = !!factories.policy;
|
|
100
|
+
checkerIsSaved = !!factories.checker;
|
|
101
|
+
[policyContract, checkerContract, policyFactory, checkFactory] = await deployGitcoinPassportPolicy({
|
|
102
|
+
decoderAddress: args.decoderAddress,
|
|
103
|
+
minimumScore: Number(args.passingScore),
|
|
104
|
+
}, factories, signer, true);
|
|
105
|
+
break;
|
|
106
|
+
}
|
|
107
|
+
case EPolicies.Hats: {
|
|
108
|
+
policyFactoryName = EPolicyFactories.Hats;
|
|
109
|
+
checkFactoryName = ECheckerFactories.Hats;
|
|
110
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
111
|
+
policy: policyFactoryName,
|
|
112
|
+
checker: checkFactoryName,
|
|
113
|
+
network,
|
|
114
|
+
signer,
|
|
115
|
+
});
|
|
116
|
+
factoryIsSaved = !!factories.policy;
|
|
117
|
+
checkerIsSaved = !!factories.checker;
|
|
118
|
+
[policyContract, checkerContract, policyFactory, checkFactory] = await deployHatsSignupPolicy({
|
|
119
|
+
hats: args.hatsProtocolAddress,
|
|
120
|
+
criterionHats: args.criterionHats.map((c) => BigInt(c)),
|
|
121
|
+
}, factories, signer, true);
|
|
122
|
+
break;
|
|
123
|
+
}
|
|
124
|
+
case EPolicies.Zupass: {
|
|
125
|
+
policyFactoryName = EPolicyFactories.Zupass;
|
|
126
|
+
checkFactoryName = ECheckerFactories.Zupass;
|
|
127
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
128
|
+
policy: policyFactoryName,
|
|
129
|
+
checker: checkFactoryName,
|
|
130
|
+
network,
|
|
131
|
+
signer,
|
|
132
|
+
});
|
|
133
|
+
factoryIsSaved = !!factories.policy;
|
|
134
|
+
checkerIsSaved = !!factories.checker;
|
|
135
|
+
[policyContract, checkerContract, policyFactory, checkFactory] = await deployZupassSignUpPolicy({
|
|
136
|
+
eventId: args.eventId,
|
|
137
|
+
signer1: args.signer1,
|
|
138
|
+
signer2: args.signer2,
|
|
139
|
+
verifier: args.zupassVerifier,
|
|
140
|
+
}, factories, signer, true);
|
|
141
|
+
break;
|
|
142
|
+
}
|
|
143
|
+
case EPolicies.Semaphore: {
|
|
144
|
+
policyFactoryName = EPolicyFactories.Semaphore;
|
|
145
|
+
checkFactoryName = ECheckerFactories.Semaphore;
|
|
146
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
147
|
+
policy: policyFactoryName,
|
|
148
|
+
checker: checkFactoryName,
|
|
149
|
+
network,
|
|
150
|
+
signer,
|
|
151
|
+
});
|
|
152
|
+
factoryIsSaved = !!factories.policy;
|
|
153
|
+
checkerIsSaved = !!factories.checker;
|
|
154
|
+
[policyContract, checkerContract, policyFactory, checkFactory] = await deploySemaphoreSignupPolicy({
|
|
155
|
+
semaphore: args.semaphoreContract,
|
|
156
|
+
groupId: BigInt(args.groupId),
|
|
157
|
+
}, factories, signer, true);
|
|
158
|
+
break;
|
|
159
|
+
}
|
|
160
|
+
case EPolicies.MerkleProof: {
|
|
161
|
+
policyFactoryName = EPolicyFactories.MerkleProof;
|
|
162
|
+
checkFactoryName = ECheckerFactories.MerkleProof;
|
|
163
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
164
|
+
policy: policyFactoryName,
|
|
165
|
+
checker: checkFactoryName,
|
|
166
|
+
network,
|
|
167
|
+
signer,
|
|
168
|
+
});
|
|
169
|
+
factoryIsSaved = !!factories.policy;
|
|
170
|
+
checkerIsSaved = !!factories.checker;
|
|
171
|
+
[policyContract, checkerContract, policyFactory, checkFactory] = await deployMerkleProofPolicy({
|
|
172
|
+
root: args.root,
|
|
173
|
+
}, factories, signer, true);
|
|
174
|
+
break;
|
|
175
|
+
}
|
|
176
|
+
case EPolicies.Token: {
|
|
177
|
+
policyFactoryName = EPolicyFactories.Token;
|
|
178
|
+
checkFactoryName = ECheckerFactories.Token;
|
|
179
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
180
|
+
policy: policyFactoryName,
|
|
181
|
+
checker: checkFactoryName,
|
|
182
|
+
network,
|
|
183
|
+
signer,
|
|
184
|
+
});
|
|
185
|
+
factoryIsSaved = !!factories.policy;
|
|
186
|
+
checkerIsSaved = !!factories.checker;
|
|
187
|
+
[policyContract, checkerContract, policyFactory, checkFactory] = await deploySignupTokenPolicy({
|
|
188
|
+
token: args.token,
|
|
189
|
+
}, factories, signer, true);
|
|
190
|
+
break;
|
|
191
|
+
}
|
|
192
|
+
case EPolicies.AnonAadhaar: {
|
|
193
|
+
policyFactoryName = EPolicyFactories.AnonAadhaar;
|
|
194
|
+
checkFactoryName = ECheckerFactories.AnonAadhaar;
|
|
195
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
196
|
+
policy: policyFactoryName,
|
|
197
|
+
checker: checkFactoryName,
|
|
198
|
+
network,
|
|
199
|
+
signer,
|
|
200
|
+
});
|
|
201
|
+
factoryIsSaved = !!factories.policy;
|
|
202
|
+
checkerIsSaved = !!factories.checker;
|
|
203
|
+
[policyContract, checkerContract, policyFactory, checkFactory] = await deployAnonAadhaarPolicy({
|
|
204
|
+
verifierAddress: args.verifier,
|
|
205
|
+
nullifierSeed: args.nullifierSeed,
|
|
206
|
+
}, factories, signer, true);
|
|
207
|
+
break;
|
|
208
|
+
}
|
|
209
|
+
case EPolicies.ERC20Votes: {
|
|
210
|
+
policyFactoryName = EPolicyFactories.ERC20Votes;
|
|
211
|
+
checkFactoryName = ECheckerFactories.ERC20Votes;
|
|
212
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
213
|
+
policy: policyFactoryName,
|
|
214
|
+
checker: checkFactoryName,
|
|
215
|
+
network,
|
|
216
|
+
signer,
|
|
217
|
+
});
|
|
218
|
+
factoryIsSaved = !!factories.policy;
|
|
219
|
+
checkerIsSaved = !!factories.checker;
|
|
220
|
+
[policyContract, checkerContract, policyFactory, checkFactory] = await deployERC20VotesPolicy({
|
|
221
|
+
snapshotBlock: BigInt(args.snapshotBlock),
|
|
222
|
+
threshold: BigInt(args.threshold),
|
|
223
|
+
token: args.token,
|
|
224
|
+
}, factories, signer, true);
|
|
225
|
+
break;
|
|
226
|
+
}
|
|
227
|
+
default:
|
|
228
|
+
throw new Error(ErrorCodes.UNSUPPORTED_POLICY.toString());
|
|
229
|
+
}
|
|
230
|
+
await this.storage.register({
|
|
231
|
+
id: policyType,
|
|
232
|
+
name: policyType,
|
|
233
|
+
contract: policyContract,
|
|
234
|
+
args: [await checkerContract.getAddress()],
|
|
235
|
+
network,
|
|
236
|
+
});
|
|
237
|
+
await this.storage.register({
|
|
238
|
+
id: checkerType,
|
|
239
|
+
name: checkerType,
|
|
240
|
+
contract: checkerContract,
|
|
241
|
+
args: args ? Object.values(args).map((arg) => String(arg)) : [],
|
|
242
|
+
network,
|
|
243
|
+
});
|
|
244
|
+
if (!factoryIsSaved) {
|
|
245
|
+
await this.storage.register({
|
|
246
|
+
id: policyFactoryName,
|
|
247
|
+
name: policyFactoryName,
|
|
248
|
+
contract: policyFactory,
|
|
249
|
+
network,
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
if (!checkerIsSaved) {
|
|
253
|
+
await this.storage.register({
|
|
254
|
+
id: checkFactoryName,
|
|
255
|
+
name: checkFactoryName,
|
|
256
|
+
contract: checkFactory,
|
|
257
|
+
network,
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
return policyContract;
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* Get the voice credit proxy factory contract object
|
|
264
|
+
* always deploy and save it
|
|
265
|
+
*
|
|
266
|
+
* @param signer - the signer
|
|
267
|
+
* @param voiceCreditProxyFactoryType - the voice credit proxy factory type
|
|
268
|
+
* @param network - the network
|
|
269
|
+
* @returns - the voice credit proxy factory contract
|
|
270
|
+
*/
|
|
271
|
+
async deployAndSaveVoiceCreditProxyFactory(signer, voiceCreditProxyFactoryType, network) {
|
|
272
|
+
let contract;
|
|
273
|
+
switch (voiceCreditProxyFactoryType) {
|
|
274
|
+
case EInitialVoiceCreditProxiesFactories.Constant: {
|
|
275
|
+
contract = await deployConstantInitialVoiceCreditProxyFactory(signer, true);
|
|
276
|
+
break;
|
|
277
|
+
}
|
|
278
|
+
default:
|
|
279
|
+
throw new Error(ErrorCodes.UNSUPPORTED_VOICE_CREDIT_PROXY_FACTORY.toString());
|
|
280
|
+
}
|
|
281
|
+
this.storage.register({
|
|
282
|
+
id: voiceCreditProxyFactoryType,
|
|
283
|
+
contract,
|
|
284
|
+
args: [],
|
|
285
|
+
network,
|
|
286
|
+
});
|
|
287
|
+
return contract;
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* Get the voice credit proxy contract object
|
|
291
|
+
* always deploy and save it
|
|
292
|
+
*
|
|
293
|
+
* @param signer - the signer
|
|
294
|
+
* @param voiceCreditProxyType - the voice credit proxy type
|
|
295
|
+
* @param network - the network
|
|
296
|
+
* @param initialVoiceCreditProxyFactory - the initial voice credit proxy factory
|
|
297
|
+
* @param args - the args
|
|
298
|
+
* @returns - the voice credit proxy contract
|
|
299
|
+
*/
|
|
300
|
+
async deployAndSaveVoiceCreditProxy(signer, voiceCreditProxyType, network, initialVoiceCreditProxyFactory, args) {
|
|
301
|
+
let contract;
|
|
302
|
+
switch (voiceCreditProxyType) {
|
|
303
|
+
case EInitialVoiceCreditProxies.Constant: {
|
|
304
|
+
contract = await deployConstantInitialVoiceCreditProxy({
|
|
305
|
+
amount: args.amount,
|
|
306
|
+
}, initialVoiceCreditProxyFactory, signer);
|
|
307
|
+
break;
|
|
308
|
+
}
|
|
309
|
+
default:
|
|
310
|
+
throw new Error(ErrorCodes.UNSUPPORTED_VOICE_CREDIT_PROXY.toString());
|
|
311
|
+
}
|
|
312
|
+
await this.storage.register({
|
|
313
|
+
id: voiceCreditProxyType,
|
|
314
|
+
contract,
|
|
315
|
+
args: args ? Object.values(args).map((arg) => String(arg)) : [],
|
|
316
|
+
network,
|
|
317
|
+
});
|
|
318
|
+
return contract;
|
|
319
|
+
}
|
|
320
|
+
/**
|
|
321
|
+
* Get verifying keys arguments (specially zkey paths)
|
|
322
|
+
* @param signer - the signer
|
|
323
|
+
* @param verifyingKeysRegistryContract - the deployed verifyingKey registry contract
|
|
324
|
+
* @param verifyingKeysRegistryArgs - the arguments send to the endpoint
|
|
325
|
+
* @param mode - use QV or NON_QV
|
|
326
|
+
* @returns SetVerifyingKeysArgs
|
|
327
|
+
*/
|
|
328
|
+
async getVerifyingKeysArgs(signer, verifyingKeysRegistryAddress, verifyingKeysRegistryArgs, modes) {
|
|
329
|
+
const { zkey: pollJoiningZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_POLL_JOINING_ZKEY_NAME);
|
|
330
|
+
const { zkey: pollJoinedZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_POLL_JOINED_ZKEY_NAME);
|
|
331
|
+
const { pollJoiningVerifyingKey, pollJoinedVerifyingKey } = await extractAllVerifyingKeys({
|
|
332
|
+
pollJoiningZkeyPath,
|
|
333
|
+
pollJoinedZkeyPath,
|
|
334
|
+
});
|
|
335
|
+
const processAndTallyVerifyingKeys = await Promise.all(modes.map(async (mode) => {
|
|
336
|
+
const { zkey: messageProcessorZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_MESSAGE_PROCESS_ZKEY_NAME, mode);
|
|
337
|
+
// There are only QV and Non-QV modes available for tally circuit
|
|
338
|
+
const { zkey: voteTallyZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_TALLY_ZKEY_NAME,
|
|
339
|
+
// if FULL use NON_QV because there are only VoteTallyQV and VoteTallyNonQV zkeys
|
|
340
|
+
mode === EMode.FULL ? EMode.NON_QV : mode);
|
|
341
|
+
const { processVerifyingKey, tallyVerifyingKey } = await extractAllVerifyingKeys({
|
|
342
|
+
messageProcessorZkeyPath,
|
|
343
|
+
voteTallyZkeyPath,
|
|
344
|
+
});
|
|
345
|
+
return { processVerifyingKey: processVerifyingKey, tallyVerifyingKey: tallyVerifyingKey };
|
|
346
|
+
}));
|
|
347
|
+
const processVerifyingKeys = processAndTallyVerifyingKeys.map((item) => item.processVerifyingKey);
|
|
348
|
+
const tallyVerifyingKeys = processAndTallyVerifyingKeys.map((item) => item.tallyVerifyingKey);
|
|
349
|
+
const { stateTreeDepth, pollStateTreeDepth, tallyProcessingStateTreeDepth, voteOptionTreeDepth, messageBatchSize } = verifyingKeysRegistryArgs;
|
|
350
|
+
return {
|
|
351
|
+
pollJoiningVerifyingKey: pollJoiningVerifyingKey,
|
|
352
|
+
pollJoinedVerifyingKey: pollJoinedVerifyingKey,
|
|
353
|
+
processMessagesVerifyingKeys: processVerifyingKeys,
|
|
354
|
+
tallyVotesVerifyingKeys: tallyVerifyingKeys,
|
|
355
|
+
stateTreeDepth: Number(stateTreeDepth),
|
|
356
|
+
tallyProcessingStateTreeDepth: Number(tallyProcessingStateTreeDepth),
|
|
357
|
+
voteOptionTreeDepth: Number(voteOptionTreeDepth),
|
|
358
|
+
messageBatchSize: Number(messageBatchSize),
|
|
359
|
+
pollStateTreeDepth: Number(pollStateTreeDepth),
|
|
360
|
+
signer,
|
|
361
|
+
modes,
|
|
362
|
+
verifyingKeysRegistryAddress,
|
|
363
|
+
};
|
|
364
|
+
}
|
|
365
|
+
/**
|
|
366
|
+
* Deploy MACI contracts
|
|
367
|
+
*
|
|
368
|
+
* @param args - deploy maci arguments
|
|
369
|
+
* @param options - ws hooks
|
|
370
|
+
* @returns - deployed maci contract
|
|
371
|
+
* @returns the address of the deployed maci contract
|
|
372
|
+
*/
|
|
373
|
+
async deployMaci({ approval, sessionKeyAddress, chain, config }) {
|
|
374
|
+
const signer = await this.sessionKeysService.getCoordinatorSigner(chain, sessionKeyAddress, approval);
|
|
375
|
+
const policyContract = await this.deployAndSavePolicy(signer, chain, config.policy);
|
|
376
|
+
const policyAddress = await policyContract.getAddress();
|
|
377
|
+
// deploy the smart contracts
|
|
378
|
+
const maciAddresses = await deployMaci({
|
|
379
|
+
stateTreeDepth: config.MACI.stateTreeDepth,
|
|
380
|
+
signer,
|
|
381
|
+
signupPolicyAddress: policyAddress,
|
|
382
|
+
poseidonAddresses: config.Poseidon,
|
|
383
|
+
});
|
|
384
|
+
// set verifying keys
|
|
385
|
+
const { verifyingKeysRegistryContractAddress, verifierContractAddress } = maciAddresses;
|
|
386
|
+
const verifyingKeysArgs = await this.getVerifyingKeysArgs(signer, verifyingKeysRegistryContractAddress, config.VerifyingKeysRegistry.args, config.MACI.modes);
|
|
387
|
+
await setVerifyingKeys(verifyingKeysArgs);
|
|
388
|
+
// store the contracts
|
|
389
|
+
await Promise.all([
|
|
390
|
+
this.storage.register({
|
|
391
|
+
id: EContracts.Verifier,
|
|
392
|
+
contract: new BaseContract(verifierContractAddress, VerifierFactory.abi),
|
|
393
|
+
network: chain,
|
|
394
|
+
}),
|
|
395
|
+
this.storage.register({
|
|
396
|
+
id: EContracts.VerifyingKeysRegistry,
|
|
397
|
+
contract: new BaseContract(verifyingKeysRegistryContractAddress, VerifyingKeysRegistryFactory.abi),
|
|
398
|
+
network: chain,
|
|
399
|
+
}),
|
|
400
|
+
this.storage.register({
|
|
401
|
+
id: EContracts.MACI,
|
|
402
|
+
contract: new BaseContract(maciAddresses.maciContractAddress, MACIFactory.abi),
|
|
403
|
+
args: [
|
|
404
|
+
maciAddresses.pollFactoryContractAddress,
|
|
405
|
+
maciAddresses.messageProcessorFactoryContractAddress,
|
|
406
|
+
maciAddresses.tallyFactoryContractAddress,
|
|
407
|
+
policyAddress,
|
|
408
|
+
config.MACI.stateTreeDepth,
|
|
409
|
+
generateEmptyBallotRoots(config.MACI.stateTreeDepth).map((root) => root.toString()),
|
|
410
|
+
],
|
|
411
|
+
network: chain,
|
|
412
|
+
}),
|
|
413
|
+
]);
|
|
414
|
+
return { address: maciAddresses.maciContractAddress };
|
|
415
|
+
}
|
|
416
|
+
/**
|
|
417
|
+
* Deploy a poll
|
|
418
|
+
*
|
|
419
|
+
* @param args - deploy poll dto
|
|
420
|
+
* @returns poll id
|
|
421
|
+
*/
|
|
422
|
+
async deployPoll({ approval, sessionKeyAddress, chain, config }) {
|
|
423
|
+
const signer = await this.sessionKeysService.getCoordinatorSigner(chain, sessionKeyAddress, approval);
|
|
424
|
+
// check if there is a maci contract deployed on this chain
|
|
425
|
+
const maciAddress = this.storage.getAddress(EContracts.MACI, chain);
|
|
426
|
+
if (!maciAddress) {
|
|
427
|
+
throw new Error(ErrorCodes.MACI_NOT_DEPLOYED.toString());
|
|
428
|
+
}
|
|
429
|
+
// check if there is a verifier deployed on this chain
|
|
430
|
+
const verifierAddress = this.storage.getAddress(EContracts.Verifier, chain);
|
|
431
|
+
if (!verifierAddress) {
|
|
432
|
+
throw new Error(ErrorCodes.VERIFIER_NOT_DEPLOYED.toString());
|
|
433
|
+
}
|
|
434
|
+
// check if there is a verifyingKey registry deployed on this chain
|
|
435
|
+
const verifyingKeysRegistryAddress = this.storage.getAddress(EContracts.VerifyingKeysRegistry, chain);
|
|
436
|
+
if (!verifyingKeysRegistryAddress) {
|
|
437
|
+
throw new Error(ErrorCodes.VERIFYING_KEYS_REGISTRY_NOT_DEPLOYED.toString());
|
|
438
|
+
}
|
|
439
|
+
const policyContract = await this.deployAndSavePolicy(signer, chain, config.policy);
|
|
440
|
+
const policyAddress = (await policyContract.getAddress());
|
|
441
|
+
// check if initial voice credit proxy address was given
|
|
442
|
+
let initialVoiceCreditProxyAddress = config.initialVoiceCreditsProxy.address;
|
|
443
|
+
if (!initialVoiceCreditProxyAddress) {
|
|
444
|
+
const initialVoiceCreditProxyFactory = await this.deployAndSaveVoiceCreditProxyFactory(signer, config.initialVoiceCreditsProxy.factoryType, chain);
|
|
445
|
+
const initialVoiceCreditProxyContract = await this.deployAndSaveVoiceCreditProxy(signer, config.initialVoiceCreditsProxy.type, chain, initialVoiceCreditProxyFactory, config.initialVoiceCreditsProxy.args);
|
|
446
|
+
initialVoiceCreditProxyAddress = await initialVoiceCreditProxyContract.getAddress();
|
|
447
|
+
}
|
|
448
|
+
// instantiate the coordinator MACI keypair
|
|
449
|
+
const coordinatorKeypair = getCoordinatorKeypair();
|
|
450
|
+
const deployPollArgs = {
|
|
451
|
+
maciAddress,
|
|
452
|
+
pollStartTimestamp: config.startDate,
|
|
453
|
+
pollEndTimestamp: config.endDate,
|
|
454
|
+
tallyProcessingStateTreeDepth: config.tallyProcessingStateTreeDepth,
|
|
455
|
+
voteOptionTreeDepth: config.voteOptionTreeDepth,
|
|
456
|
+
messageBatchSize: config.messageBatchSize,
|
|
457
|
+
stateTreeDepth: config.pollStateTreeDepth,
|
|
458
|
+
coordinatorPublicKey: coordinatorKeypair.publicKey,
|
|
459
|
+
mode: config.mode,
|
|
460
|
+
policyContractAddress: policyAddress,
|
|
461
|
+
initialVoiceCreditProxyContractAddress: initialVoiceCreditProxyAddress,
|
|
462
|
+
relayers: config.relayers ? config.relayers : [],
|
|
463
|
+
voteOptions: Number(config.voteOptions),
|
|
464
|
+
initialVoiceCredits: Number(config.initialVoiceCreditsProxy.args.amount),
|
|
465
|
+
signer,
|
|
466
|
+
};
|
|
467
|
+
const { pollContractAddress, messageProcessorContractAddress, tallyContractAddress, pollId } = await deployPoll(deployPollArgs);
|
|
468
|
+
const poll = PollFactory.connect(pollContractAddress, signer);
|
|
469
|
+
// store to storage
|
|
470
|
+
await Promise.all([
|
|
471
|
+
this.storage.register({
|
|
472
|
+
id: EContracts.Poll,
|
|
473
|
+
key: `poll-${pollId}`,
|
|
474
|
+
contract: poll,
|
|
475
|
+
// clones do not have args for verification
|
|
476
|
+
args: [],
|
|
477
|
+
network: chain,
|
|
478
|
+
}),
|
|
479
|
+
this.storage.register({
|
|
480
|
+
id: EContracts.MessageProcessor,
|
|
481
|
+
key: `poll-${pollId}`,
|
|
482
|
+
contract: MessageProcessorFactory.connect(messageProcessorContractAddress, signer),
|
|
483
|
+
// clones do not have args for verification
|
|
484
|
+
args: [],
|
|
485
|
+
network: chain,
|
|
486
|
+
}),
|
|
487
|
+
this.storage.register({
|
|
488
|
+
id: EContracts.Tally,
|
|
489
|
+
key: `poll-${pollId}`,
|
|
490
|
+
contract: TallyFactory.connect(tallyContractAddress, signer),
|
|
491
|
+
// clones do not have args for verification
|
|
492
|
+
args: [],
|
|
493
|
+
network: chain,
|
|
494
|
+
}),
|
|
495
|
+
]);
|
|
496
|
+
return { pollId: pollId.toString() };
|
|
497
|
+
}
|
|
498
|
+
};
|
|
499
|
+
DeployerService = __decorate([
|
|
500
|
+
Injectable(),
|
|
501
|
+
__metadata("design:paramtypes", [SessionKeysService,
|
|
502
|
+
FileService])
|
|
503
|
+
], DeployerService);
|
|
504
|
+
export { DeployerService };
|
|
505
|
+
//# sourceMappingURL=deployer.service.js.map
|