@reclaimprotocol/attestor-core 4.0.2 → 5.0.1-beta.1

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 (243) hide show
  1. package/LICENSE +660 -660
  2. package/README.md +1 -2
  3. package/package.json +72 -60
  4. package/lib/avs/abis/avsDirectoryABI.d.ts +0 -60
  5. package/lib/avs/abis/avsDirectoryABI.js +0 -344
  6. package/lib/avs/abis/delegationABI.d.ts +0 -126
  7. package/lib/avs/abis/delegationABI.js +0 -5
  8. package/lib/avs/abis/registryABI.d.ts +0 -136
  9. package/lib/avs/abis/registryABI.js +0 -729
  10. package/lib/avs/client/create-claim-on-avs.d.ts +0 -12
  11. package/lib/avs/client/create-claim-on-avs.js +0 -147
  12. package/lib/avs/config.d.ts +0 -7
  13. package/lib/avs/config.js +0 -24
  14. package/lib/avs/contracts/ReclaimServiceManager.d.ts +0 -697
  15. package/lib/avs/contracts/ReclaimServiceManager.js +0 -3
  16. package/lib/avs/contracts/common.d.ts +0 -21
  17. package/lib/avs/contracts/common.js +0 -3
  18. package/lib/avs/contracts/factories/ReclaimServiceManager__factory.d.ts +0 -888
  19. package/lib/avs/contracts/factories/ReclaimServiceManager__factory.js +0 -1174
  20. package/lib/avs/contracts/factories/index.d.ts +0 -1
  21. package/lib/avs/contracts/factories/index.js +0 -9
  22. package/lib/avs/contracts/index.d.ts +0 -3
  23. package/lib/avs/contracts/index.js +0 -40
  24. package/lib/avs/tests/test.operator.d.ts +0 -11
  25. package/lib/avs/tests/test.operator.js +0 -313
  26. package/lib/avs/tests/utils.d.ts +0 -2
  27. package/lib/avs/tests/utils.js +0 -50
  28. package/lib/avs/types/index.d.ts +0 -55
  29. package/lib/avs/types/index.js +0 -3
  30. package/lib/avs/utils/contracts.d.ts +0 -21
  31. package/lib/avs/utils/contracts.js +0 -38
  32. package/lib/avs/utils/register.d.ts +0 -27
  33. package/lib/avs/utils/register.js +0 -82
  34. package/lib/avs/utils/tasks.d.ts +0 -22
  35. package/lib/avs/utils/tasks.js +0 -45
  36. package/lib/client/create-claim.d.ts +0 -5
  37. package/lib/client/create-claim.js +0 -424
  38. package/lib/client/index.d.ts +0 -3
  39. package/lib/client/index.js +0 -20
  40. package/lib/client/tunnels/make-rpc-tcp-tunnel.d.ts +0 -16
  41. package/lib/client/tunnels/make-rpc-tcp-tunnel.js +0 -60
  42. package/lib/client/tunnels/make-rpc-tls-tunnel.d.ts +0 -25
  43. package/lib/client/tunnels/make-rpc-tls-tunnel.js +0 -135
  44. package/lib/client/utils/attestor-pool.d.ts +0 -6
  45. package/lib/client/utils/attestor-pool.js +0 -28
  46. package/lib/client/utils/client-socket.d.ts +0 -11
  47. package/lib/client/utils/client-socket.js +0 -100
  48. package/lib/client/utils/message-handler.d.ts +0 -4
  49. package/lib/client/utils/message-handler.js +0 -94
  50. package/lib/config/index.d.ts +0 -28
  51. package/lib/config/index.js +0 -39
  52. package/lib/index.d.ts +0 -10
  53. package/lib/index.js +0 -50
  54. package/lib/mechain/abis/governanceABI.d.ts +0 -50
  55. package/lib/mechain/abis/governanceABI.js +0 -462
  56. package/lib/mechain/abis/taskABI.d.ts +0 -157
  57. package/lib/mechain/abis/taskABI.js +0 -513
  58. package/lib/mechain/client/create-claim-on-mechain.d.ts +0 -10
  59. package/lib/mechain/client/create-claim-on-mechain.js +0 -32
  60. package/lib/mechain/client/index.d.ts +0 -1
  61. package/lib/mechain/client/index.js +0 -18
  62. package/lib/mechain/constants/index.d.ts +0 -3
  63. package/lib/mechain/constants/index.js +0 -7
  64. package/lib/mechain/index.d.ts +0 -2
  65. package/lib/mechain/index.js +0 -19
  66. package/lib/mechain/types/index.d.ts +0 -23
  67. package/lib/mechain/types/index.js +0 -3
  68. package/lib/proto/api.d.ts +0 -508
  69. package/lib/proto/api.js +0 -3700
  70. package/lib/providers/http/index.d.ts +0 -3
  71. package/lib/providers/http/index.js +0 -613
  72. package/lib/providers/http/utils.d.ts +0 -74
  73. package/lib/providers/http/utils.js +0 -360
  74. package/lib/providers/index.d.ts +0 -4
  75. package/lib/providers/index.js +0 -11
  76. package/lib/scripts/check-avs-registration.d.ts +0 -1
  77. package/lib/scripts/check-avs-registration.js +0 -29
  78. package/lib/scripts/generate-provider-types.d.ts +0 -5
  79. package/lib/scripts/generate-provider-types.js +0 -82
  80. package/lib/scripts/generate-receipt.d.ts +0 -9
  81. package/lib/scripts/generate-receipt.js +0 -90
  82. package/lib/scripts/generate-toprf-keys.d.ts +0 -1
  83. package/lib/scripts/generate-toprf-keys.js +0 -23
  84. package/lib/scripts/register-avs-operator.d.ts +0 -1
  85. package/lib/scripts/register-avs-operator.js +0 -7
  86. package/lib/scripts/start-server.d.ts +0 -1
  87. package/lib/scripts/start-server.js +0 -13
  88. package/lib/scripts/update-avs-metadata.d.ts +0 -1
  89. package/lib/scripts/update-avs-metadata.js +0 -22
  90. package/lib/scripts/utils.d.ts +0 -1
  91. package/lib/scripts/utils.js +0 -11
  92. package/lib/scripts/verify-root-ca.d.ts +0 -1
  93. package/lib/scripts/verify-root-ca.js +0 -51
  94. package/lib/scripts/whitelist-operator.d.ts +0 -1
  95. package/lib/scripts/whitelist-operator.js +0 -18
  96. package/lib/server/create-server.d.ts +0 -7
  97. package/lib/server/create-server.js +0 -92
  98. package/lib/server/handlers/claimTunnel.d.ts +0 -2
  99. package/lib/server/handlers/claimTunnel.js +0 -78
  100. package/lib/server/handlers/completeClaimOnChain.d.ts +0 -2
  101. package/lib/server/handlers/completeClaimOnChain.js +0 -28
  102. package/lib/server/handlers/createClaimOnChain.d.ts +0 -2
  103. package/lib/server/handlers/createClaimOnChain.js +0 -31
  104. package/lib/server/handlers/createTaskOnMechain.d.ts +0 -2
  105. package/lib/server/handlers/createTaskOnMechain.js +0 -52
  106. package/lib/server/handlers/createTunnel.d.ts +0 -2
  107. package/lib/server/handlers/createTunnel.js +0 -101
  108. package/lib/server/handlers/disconnectTunnel.d.ts +0 -2
  109. package/lib/server/handlers/disconnectTunnel.js +0 -10
  110. package/lib/server/handlers/index.d.ts +0 -4
  111. package/lib/server/handlers/index.js +0 -22
  112. package/lib/server/handlers/init.d.ts +0 -2
  113. package/lib/server/handlers/init.js +0 -36
  114. package/lib/server/handlers/toprf.d.ts +0 -2
  115. package/lib/server/handlers/toprf.js +0 -21
  116. package/lib/server/index.d.ts +0 -4
  117. package/lib/server/index.js +0 -21
  118. package/lib/server/socket.d.ts +0 -13
  119. package/lib/server/socket.js +0 -114
  120. package/lib/server/tunnels/make-tcp-tunnel.d.ts +0 -20
  121. package/lib/server/tunnels/make-tcp-tunnel.js +0 -175
  122. package/lib/server/utils/apm.d.ts +0 -11
  123. package/lib/server/utils/apm.js +0 -43
  124. package/lib/server/utils/assert-valid-claim-request.d.ts +0 -30
  125. package/lib/server/utils/assert-valid-claim-request.js +0 -200
  126. package/lib/server/utils/config-env.d.ts +0 -1
  127. package/lib/server/utils/config-env.js +0 -7
  128. package/lib/server/utils/dns.d.ts +0 -1
  129. package/lib/server/utils/dns.js +0 -22
  130. package/lib/server/utils/generics.d.ts +0 -22
  131. package/lib/server/utils/generics.js +0 -59
  132. package/lib/server/utils/iso.d.ts +0 -1
  133. package/lib/server/utils/iso.js +0 -260
  134. package/lib/server/utils/keep-alive.d.ts +0 -7
  135. package/lib/server/utils/keep-alive.js +0 -42
  136. package/lib/server/utils/process-handshake.d.ts +0 -13
  137. package/lib/server/utils/process-handshake.js +0 -191
  138. package/lib/tests/describe-with-server.d.ts +0 -20
  139. package/lib/tests/describe-with-server.js +0 -64
  140. package/lib/tests/mock-provider-server.d.ts +0 -13
  141. package/lib/tests/mock-provider-server.js +0 -65
  142. package/lib/tests/mocks.d.ts +0 -4
  143. package/lib/tests/mocks.js +0 -23
  144. package/lib/tests/test.auth.d.ts +0 -1
  145. package/lib/tests/test.auth.js +0 -75
  146. package/lib/tests/test.bgp-listener.d.ts +0 -1
  147. package/lib/tests/test.bgp-listener.js +0 -169
  148. package/lib/tests/test.claim-creation.d.ts +0 -1
  149. package/lib/tests/test.claim-creation.js +0 -280
  150. package/lib/tests/test.http-parser.d.ts +0 -1
  151. package/lib/tests/test.http-parser.js +0 -120
  152. package/lib/tests/test.http-provider-utils.d.ts +0 -1
  153. package/lib/tests/test.http-provider-utils.js +0 -2416
  154. package/lib/tests/test.http-provider.d.ts +0 -1
  155. package/lib/tests/test.http-provider.js +0 -114
  156. package/lib/tests/test.rpc-communication.d.ts +0 -1
  157. package/lib/tests/test.rpc-communication.js +0 -64
  158. package/lib/tests/test.rpc-tunnel.d.ts +0 -1
  159. package/lib/tests/test.rpc-tunnel.js +0 -172
  160. package/lib/tests/test.signatures.d.ts +0 -1
  161. package/lib/tests/test.signatures.js +0 -24
  162. package/lib/tests/test.tcp-tunnel.d.ts +0 -1
  163. package/lib/tests/test.tcp-tunnel.js +0 -64
  164. package/lib/tests/test.zk.d.ts +0 -1
  165. package/lib/tests/test.zk.js +0 -337
  166. package/lib/tests/utils.d.ts +0 -18
  167. package/lib/tests/utils.js +0 -64
  168. package/lib/types/bgp.d.ts +0 -11
  169. package/lib/types/bgp.js +0 -3
  170. package/lib/types/claims.d.ts +0 -73
  171. package/lib/types/claims.js +0 -3
  172. package/lib/types/client.d.ts +0 -163
  173. package/lib/types/client.js +0 -3
  174. package/lib/types/general.d.ts +0 -51
  175. package/lib/types/general.js +0 -3
  176. package/lib/types/handlers.d.ts +0 -10
  177. package/lib/types/handlers.js +0 -3
  178. package/lib/types/index.d.ts +0 -10
  179. package/lib/types/index.js +0 -27
  180. package/lib/types/providers.d.ts +0 -150
  181. package/lib/types/providers.gen.d.ts +0 -429
  182. package/lib/types/providers.gen.js +0 -14
  183. package/lib/types/providers.js +0 -3
  184. package/lib/types/rpc.d.ts +0 -35
  185. package/lib/types/rpc.js +0 -3
  186. package/lib/types/signatures.d.ts +0 -28
  187. package/lib/types/signatures.js +0 -3
  188. package/lib/types/tunnel.d.ts +0 -18
  189. package/lib/types/tunnel.js +0 -3
  190. package/lib/types/zk.d.ts +0 -23
  191. package/lib/types/zk.js +0 -3
  192. package/lib/utils/auth.d.ts +0 -7
  193. package/lib/utils/auth.js +0 -64
  194. package/lib/utils/b64-json.d.ts +0 -2
  195. package/lib/utils/b64-json.js +0 -23
  196. package/lib/utils/benchmark.d.ts +0 -1
  197. package/lib/utils/benchmark.js +0 -70
  198. package/lib/utils/bgp-listener.d.ts +0 -7
  199. package/lib/utils/bgp-listener.js +0 -126
  200. package/lib/utils/claims.d.ts +0 -33
  201. package/lib/utils/claims.js +0 -112
  202. package/lib/utils/env.d.ts +0 -3
  203. package/lib/utils/env.js +0 -20
  204. package/lib/utils/error.d.ts +0 -27
  205. package/lib/utils/error.js +0 -43
  206. package/lib/utils/generics.d.ts +0 -112
  207. package/lib/utils/generics.js +0 -348
  208. package/lib/utils/http-parser.d.ts +0 -59
  209. package/lib/utils/http-parser.js +0 -252
  210. package/lib/utils/index.d.ts +0 -12
  211. package/lib/utils/index.js +0 -29
  212. package/lib/utils/logger.d.ts +0 -13
  213. package/lib/utils/logger.js +0 -100
  214. package/lib/utils/prepare-packets.d.ts +0 -16
  215. package/lib/utils/prepare-packets.js +0 -61
  216. package/lib/utils/redactions.d.ts +0 -54
  217. package/lib/utils/redactions.js +0 -148
  218. package/lib/utils/retries.d.ts +0 -12
  219. package/lib/utils/retries.js +0 -28
  220. package/lib/utils/signatures/eth.d.ts +0 -2
  221. package/lib/utils/signatures/eth.js +0 -33
  222. package/lib/utils/signatures/index.d.ts +0 -5
  223. package/lib/utils/signatures/index.js +0 -11
  224. package/lib/utils/socket-base.d.ts +0 -22
  225. package/lib/utils/socket-base.js +0 -95
  226. package/lib/utils/tls.d.ts +0 -2
  227. package/lib/utils/tls.js +0 -32
  228. package/lib/utils/validation.d.ts +0 -2
  229. package/lib/utils/validation.js +0 -46
  230. package/lib/utils/ws.d.ts +0 -12
  231. package/lib/utils/ws.js +0 -38
  232. package/lib/utils/zk.d.ts +0 -55
  233. package/lib/utils/zk.js +0 -444
  234. package/lib/window-rpc/index.d.ts +0 -3
  235. package/lib/window-rpc/index.js +0 -20
  236. package/lib/window-rpc/setup-window-rpc.d.ts +0 -5
  237. package/lib/window-rpc/setup-window-rpc.js +0 -291
  238. package/lib/window-rpc/types.d.ts +0 -192
  239. package/lib/window-rpc/types.js +0 -3
  240. package/lib/window-rpc/utils.d.ts +0 -14
  241. package/lib/window-rpc/utils.js +0 -102
  242. package/lib/window-rpc/window-rpc-zk.d.ts +0 -15
  243. package/lib/window-rpc/window-rpc-zk.js +0 -85
@@ -1,90 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.main = main;
4
- const promises_1 = require("fs/promises");
5
- const utils_1 = require("../scripts/utils");
6
- const server_1 = require("../server");
7
- const utils_2 = require("../utils");
8
- const env_1 = require("../utils/env");
9
- require("../server/utils/config-env");
10
- const __1 = require("..");
11
- // tmp change till we move OPRF attestor to prod
12
- const DEFAULT_ATTESTOR_HOST_PORT = 'wss://attestor.reclaimprotocol.org/ws';
13
- const PRIVATE_KEY_HEX = (0, env_1.getEnvVariable)('PRIVATE_KEY_HEX')
14
- // demo private key
15
- || '0x0123788edad59d7c013cdc85e4372f350f828e2cec62d9a2de4560e69aec7f89';
16
- let server;
17
- async function main(receiptParams) {
18
- var _a, _b, _c, _d;
19
- const paramsJson = receiptParams !== null && receiptParams !== void 0 ? receiptParams : (await getInputParameters());
20
- if (!(paramsJson.name in __1.providers)) {
21
- throw new Error(`Unknown provider "${paramsJson.name}"`);
22
- }
23
- (0, utils_2.assertValidateProviderParams)(paramsJson.name, paramsJson.params);
24
- let attestorHostPort = (0, utils_1.getCliArgument)('attestor')
25
- || DEFAULT_ATTESTOR_HOST_PORT;
26
- if (attestorHostPort === 'local') {
27
- console.log('starting local attestor server...');
28
- server = await (0, server_1.createServer)();
29
- attestorHostPort = `ws://localhost:${__1.API_SERVER_PORT}${__1.WS_PATHNAME}`;
30
- }
31
- const zkEngine = (0, utils_1.getCliArgument)('zk') === 'gnark' ? 'gnark' : 'snarkjs';
32
- const receipt = await (0, __1.createClaimOnAttestor)({
33
- name: paramsJson.name,
34
- secretParams: paramsJson.secretParams,
35
- params: paramsJson.params,
36
- ownerPrivateKey: PRIVATE_KEY_HEX,
37
- client: { url: attestorHostPort },
38
- logger: __1.logger,
39
- zkEngine
40
- });
41
- if (receipt.error) {
42
- console.error('claim creation failed:', receipt.error);
43
- }
44
- else {
45
- const ctx = ((_a = receipt.claim) === null || _a === void 0 ? void 0 : _a.context)
46
- ? JSON.parse(receipt.claim.context)
47
- : {};
48
- console.log(`receipt is valid for ${paramsJson.name} provider`);
49
- if (ctx.extractedParameters) {
50
- console.log('extracted params:', ctx.extractedParameters);
51
- }
52
- }
53
- const decTranscript = await (0, server_1.decryptTranscript)((_b = receipt.request) === null || _b === void 0 ? void 0 : _b.transcript, __1.logger, zkEngine, (_c = receipt.request) === null || _c === void 0 ? void 0 : _c.fixedServerIV, (_d = receipt.request) === null || _d === void 0 ? void 0 : _d.fixedClientIV);
54
- const transcriptStr = (0, __1.getTranscriptString)(decTranscript);
55
- console.log('receipt:\n', transcriptStr);
56
- const client = (0, __1.getAttestorClientFromPool)(attestorHostPort);
57
- await client.terminateConnection();
58
- }
59
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
60
- async function getInputParameters() {
61
- const paramsJsonFile = (0, utils_1.getCliArgument)('json');
62
- if (!paramsJsonFile) {
63
- const name = (0, utils_1.getCliArgument)('name');
64
- const paramsStr = (0, utils_1.getCliArgument)('params');
65
- const secretParamsStr = (0, utils_1.getCliArgument)('secretParams');
66
- if (!name || !paramsStr || !secretParamsStr) {
67
- throw new Error('Either provide --json argument for parameters JSON or provide separately with --name, --params & --secretParams');
68
- }
69
- return {
70
- name,
71
- params: JSON.parse(paramsStr),
72
- secretParams: JSON.parse(secretParamsStr)
73
- };
74
- }
75
- let fileContents = await (0, promises_1.readFile)(paramsJsonFile, 'utf8');
76
- for (const variable in process.env) {
77
- fileContents = fileContents.replace(`{{${variable}}}`, process.env[variable]);
78
- }
79
- return JSON.parse(fileContents);
80
- }
81
- if (require.main === module) {
82
- main()
83
- .catch(err => {
84
- console.error('error in receipt gen', err);
85
- })
86
- .finally(() => {
87
- server === null || server === void 0 ? void 0 : server.close();
88
- });
89
- }
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtcmVjZWlwdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL2dlbmVyYXRlLXJlY2VpcHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFrQ0Esb0JBc0RDO0FBeEZELDBDQUFzQztBQUN0Qyw2Q0FBa0Q7QUFDbEQsdUNBQTREO0FBQzVELHFDQUF3RDtBQUN4RCx1Q0FBOEM7QUFFOUMsdUNBQW9DO0FBQ3BDLDBCQVdXO0FBUVgsZ0RBQWdEO0FBQ2hELE1BQU0sMEJBQTBCLEdBQUcsdUNBQXVDLENBQUE7QUFDMUUsTUFBTSxlQUFlLEdBQUcsSUFBQSxvQkFBYyxFQUFDLGlCQUFpQixDQUFDO0lBQ3hELG1CQUFtQjtPQUNoQixvRUFBb0UsQ0FBQTtBQUV4RSxJQUFJLE1BQW1DLENBQUE7QUFFaEMsS0FBSyxVQUFVLElBQUksQ0FDekIsYUFBa0Q7O0lBRWxELE1BQU0sVUFBVSxHQUFHLGFBQWEsYUFBYixhQUFhLGNBQWIsYUFBYSxHQUFJLENBQUMsTUFBTSxrQkFBa0IsRUFBRSxDQUFDLENBQUE7SUFDaEUsSUFBRyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksSUFBSSxhQUFTLENBQUMsRUFBRSxDQUFDO1FBQ3BDLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLFVBQVUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFBO0lBQ3pELENBQUM7SUFFRCxJQUFBLG9DQUE0QixFQUFTLFVBQVUsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBRXhFLElBQUksZ0JBQWdCLEdBQUcsSUFBQSxzQkFBYyxFQUFDLFVBQVUsQ0FBQztXQUN2QywwQkFBMEIsQ0FBQTtJQUNwQyxJQUFHLGdCQUFnQixLQUFLLE9BQU8sRUFBRSxDQUFDO1FBQ2pDLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUNBQW1DLENBQUMsQ0FBQTtRQUNoRCxNQUFNLEdBQUcsTUFBTSxJQUFBLHFCQUFZLEdBQUUsQ0FBQTtRQUM3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
@@ -1 +0,0 @@
1
- export {};
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const ethers_1 = require("ethers");
4
- const utils_1 = require("../utils");
5
- const ENGINE = 'gnark';
6
- const TOTAL_KEYS = 10;
7
- const THRESHOLD = 1;
8
- async function main() {
9
- const op = (0, utils_1.makeDefaultOPRFOperator)('chacha20', ENGINE, utils_1.logger);
10
- const { publicKey, privateKey, shares } = await op.generateThresholdKeys(TOTAL_KEYS, THRESHOLD);
11
- logEnvValue('TOPRF_PUBLIC_KEY', publicKey);
12
- logEnvValue('TOPRF_PRIVATE_KEY', privateKey);
13
- for (const [i, share] of shares.entries()) {
14
- console.log(`# Share ${i}`);
15
- logEnvValue('TOPRF_SHARE_PUBLIC_KEY', share.publicKey);
16
- logEnvValue('TOPRF_SHARE_PRIVATE_KEY', share.privateKey);
17
- }
18
- }
19
- function logEnvValue(name, value) {
20
- console.log(`${name}=${ethers_1.ethers.utils.hexlify(value)}`);
21
- }
22
- void main();
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtdG9wcmYta2V5cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL2dlbmVyYXRlLXRvcHJmLWtleXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtQ0FBK0I7QUFDL0IscUNBQTJEO0FBRTNELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQTtBQUN0QixNQUFNLFVBQVUsR0FBRyxFQUFFLENBQUE7QUFDckIsTUFBTSxTQUFTLEdBQUcsQ0FBQyxDQUFBO0FBRW5CLEtBQUssVUFBVSxJQUFJO0lBQ2xCLE1BQU0sRUFBRSxHQUFHLElBQUEsK0JBQXVCLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxjQUFNLENBQUMsQ0FBQTtJQUM5RCxNQUFNLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sR0FBRyxNQUFNLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUE7SUFDekQsV0FBVyxDQUFDLGtCQUFrQixFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBQzFDLFdBQVcsQ0FBQyxtQkFBbUIsRUFBRSxVQUFVLENBQUMsQ0FBQTtJQUU1QyxLQUFJLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7UUFDMUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUE7UUFDM0IsV0FBVyxDQUFDLHdCQUF3QixFQUFFLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUN0RCxXQUFXLENBQUMseUJBQXlCLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ3pELENBQUM7QUFDRixDQUFDO0FBRUQsU0FBUyxXQUFXLENBQUMsSUFBWSxFQUFFLEtBQWlCO0lBQ25ELE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLElBQUksZUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFBO0FBQ3RELENBQUM7QUFFRCxLQUFLLElBQUksRUFBRSxDQUFBIn0=
@@ -1 +0,0 @@
1
- import '../server/utils/config-env';
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- // eslint-disable-next-line simple-import-sort/imports
4
- require("../server/utils/config-env");
5
- const register_1 = require("../avs/utils/register");
6
- void (0, register_1.registerOperator)();
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXItYXZzLW9wZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvcmVnaXN0ZXItYXZzLW9wZXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsc0RBQXNEO0FBQ3RELHVDQUFvQztBQUNwQyxxREFBeUQ7QUFFekQsS0FBSyxJQUFBLDJCQUFnQixHQUFFLENBQUEifQ==
@@ -1 +0,0 @@
1
- import '../server/utils/config-env';
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const apm_1 = require("../server/utils/apm");
4
- require("../server/utils/config-env");
5
- (0, apm_1.getApm)();
6
- function main() {
7
- // importing dynamically to allow APM to inject
8
- // into modules before they are used
9
- const { createServer } = require('../server/create-server');
10
- return createServer();
11
- }
12
- main();
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhcnQtc2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvc3RhcnQtc2VydmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsOENBQTZDO0FBQzdDLHVDQUFvQztBQUNwQyxJQUFBLFlBQU0sR0FBRSxDQUFBO0FBRVIsU0FBUyxJQUFJO0lBQ1osK0NBQStDO0lBQy9DLG9DQUFvQztJQUNwQyxNQUFNLEVBQUUsWUFBWSxFQUFFLEdBQUcsT0FBTyxDQUFDLHlCQUF5QixDQUFDLENBQUE7SUFDM0QsT0FBTyxZQUFZLEVBQUUsQ0FBQTtBQUN0QixDQUFDO0FBRUQsSUFBSSxFQUFFLENBQUEifQ==
@@ -1 +0,0 @@
1
- import '../server/utils/config-env';
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- // eslint-disable-next-line simple-import-sort/imports
4
- require("../server/utils/config-env");
5
- const contracts_1 = require("../avs/utils/contracts");
6
- const utils_1 = require("../scripts/utils");
7
- async function main() {
8
- const { contract } = (0, contracts_1.getContracts)();
9
- const minSignaturesPerTask = (0, utils_1.getCliArgument)('minSignaturesPerTask');
10
- if (!minSignaturesPerTask) {
11
- throw new Error('Provide operator address via --minSignaturesPerTask <num>');
12
- }
13
- const tx = await contract.updateTaskCreationMetadata({
14
- minSignaturesPerTask: +(minSignaturesPerTask || 0),
15
- maxTaskCreationDelayS: 0,
16
- maxTaskLifetimeS: 0,
17
- });
18
- await tx.wait();
19
- console.log('Updated task creation metadata');
20
- }
21
- void main();
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWF2cy1tZXRhZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL3VwZGF0ZS1hdnMtbWV0YWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzREFBc0Q7QUFDdEQsdUNBQW9DO0FBQ3BDLHVEQUFzRDtBQUN0RCw2Q0FBa0Q7QUFFbEQsS0FBSyxVQUFVLElBQUk7SUFDbEIsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUEsd0JBQVksR0FBRSxDQUFBO0lBRW5DLE1BQU0sb0JBQW9CLEdBQUcsSUFBQSxzQkFBYyxFQUFDLHNCQUFzQixDQUFDLENBQUE7SUFDbkUsSUFBRyxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDMUIsTUFBTSxJQUFJLEtBQUssQ0FDZCwyREFBMkQsQ0FDM0QsQ0FBQTtJQUNGLENBQUM7SUFFRCxNQUFNLEVBQUUsR0FBRyxNQUFNLFFBQVEsQ0FBQywwQkFBMEIsQ0FBQztRQUNwRCxvQkFBb0IsRUFBRSxDQUFDLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDO1FBQ2xELHFCQUFxQixFQUFFLENBQUM7UUFDeEIsZ0JBQWdCLEVBQUUsQ0FBQztLQUNuQixDQUFDLENBQUE7SUFDRixNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUVmLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtBQUM5QyxDQUFDO0FBRUQsS0FBSyxJQUFJLEVBQUUsQ0FBQSJ9
@@ -1 +0,0 @@
1
- export declare function getCliArgument(arg: string): string | undefined;
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getCliArgument = getCliArgument;
4
- function getCliArgument(arg) {
5
- const index = process.argv.indexOf(`--${arg}`);
6
- if (index === -1) {
7
- return undefined;
8
- }
9
- return process.argv[index + 1];
10
- }
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NyaXB0cy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHdDQU9DO0FBUEQsU0FBZ0IsY0FBYyxDQUFDLEdBQVc7SUFDekMsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFBO0lBQzlDLElBQUcsS0FBSyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDakIsT0FBTyxTQUFTLENBQUE7SUFDakIsQ0FBQztJQUVELE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUE7QUFDL0IsQ0FBQyJ9
@@ -1 +0,0 @@
1
- export declare function main(): Promise<void>;
@@ -1,51 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.main = main;
4
- const tls_1 = require("@reclaimprotocol/tls");
5
- const parse_certificate_1 = require("@reclaimprotocol/tls/lib/utils/parse-certificate");
6
- const net_1 = require("net");
7
- const config_1 = require("../config");
8
- const utils_1 = require("../utils");
9
- const hostPort = process.argv[2];
10
- async function main() {
11
- const [host, port] = hostPort.split(':');
12
- const socket = new net_1.Socket();
13
- let rootIssuer = '';
14
- let certError;
15
- const tls = (0, tls_1.makeTLSClient)({
16
- host,
17
- logger: utils_1.logger,
18
- verifyServerCertificate: false,
19
- async onRecvCertificates({ certificates }) {
20
- rootIssuer = certificates[certificates.length - 1].internal.issuer;
21
- utils_1.logger.info({ rootIssuer }, 'received certificates');
22
- try {
23
- await (0, parse_certificate_1.verifyCertificateChain)(certificates, host);
24
- utils_1.logger.info('root CA in store. Successfully verified certificate chain');
25
- }
26
- catch (err) {
27
- certError = err;
28
- }
29
- },
30
- async onHandshake() {
31
- await tls.end();
32
- socket.end();
33
- if (certError) {
34
- // wait for everything else to log
35
- setTimeout(() => {
36
- utils_1.logger.info({ err: certError.message, rootIssuer }, 'error in cert verify');
37
- }, 500);
38
- }
39
- },
40
- async write({ header, content }) {
41
- socket.write(header);
42
- socket.write(content);
43
- }
44
- });
45
- socket.once('connect', () => tls.startHandshake());
46
- socket.on('data', tls.handleReceivedBytes);
47
- utils_1.logger.info(`connecting to ${hostPort}`);
48
- socket.connect({ host, port: +(port || config_1.DEFAULT_HTTPS_PORT) });
49
- }
50
- void main();
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5LXJvb3QtY2EuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NyaXB0cy92ZXJpZnktcm9vdC1jYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQVFBLG9CQWdEQztBQXhERCw4Q0FBb0Q7QUFDcEQsd0ZBQXlGO0FBQ3pGLDZCQUE0QjtBQUM1Qix1Q0FBK0M7QUFDL0MscUNBQWtDO0FBRWxDLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFFekIsS0FBSyxVQUFVLElBQUk7SUFDekIsTUFBTSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ3hDLE1BQU0sTUFBTSxHQUFHLElBQUksWUFBTSxFQUFFLENBQUE7SUFDM0IsSUFBSSxVQUFVLEdBQUcsRUFBRSxDQUFBO0lBQ25CLElBQUksU0FBNEIsQ0FBQTtJQUNoQyxNQUFNLEdBQUcsR0FBRyxJQUFBLG1CQUFhLEVBQUM7UUFDekIsSUFBSTtRQUNKLE1BQU0sRUFBTixjQUFNO1FBQ04sdUJBQXVCLEVBQUUsS0FBSztRQUM5QixLQUFLLENBQUMsa0JBQWtCLENBQUMsRUFBRSxZQUFZLEVBQUU7WUFDeEMsVUFBVSxHQUFHLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUE7WUFDbEUsY0FBTSxDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxFQUFFLHVCQUF1QixDQUFDLENBQUE7WUFDcEQsSUFBSSxDQUFDO2dCQUNKLE1BQU0sSUFBQSwwQ0FBc0IsRUFBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUE7Z0JBQ2hELGNBQU0sQ0FBQyxJQUFJLENBQUMsMkRBQTJELENBQUMsQ0FBQTtZQUN6RSxDQUFDO1lBQUMsT0FBTSxHQUFHLEVBQUUsQ0FBQztnQkFDYixTQUFTLEdBQUcsR0FBRyxDQUFBO1lBQ2hCLENBQUM7UUFDRixDQUFDO1FBQ0QsS0FBSyxDQUFDLFdBQVc7WUFDaEIsTUFBTSxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUE7WUFDZixNQUFNLENBQUMsR0FBRyxFQUFFLENBQUE7WUFFWixJQUFHLFNBQVMsRUFBRSxDQUFDO2dCQUNkLGtDQUFrQztnQkFDbEMsVUFBVSxDQUNULEdBQUcsRUFBRTtvQkFDSixjQUFNLENBQUMsSUFBSSxDQUNWLEVBQUUsR0FBRyxFQUFFLFNBQVUsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQ3ZDLHNCQUFzQixDQUN0QixDQUFBO2dCQUNGLENBQUMsRUFDRCxHQUFHLENBQ0gsQ0FBQTtZQUNGLENBQUM7UUFDRixDQUFDO1FBQ0QsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUU7WUFDOUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQTtZQUNwQixNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ3RCLENBQUM7S0FDRCxDQUFDLENBQUE7SUFFRixNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQTtJQUNsRCxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQTtJQUUxQyxjQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixRQUFRLEVBQUUsQ0FBQyxDQUFBO0lBRXhDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLElBQUksMkJBQWtCLENBQUMsRUFBRSxDQUFDLENBQUE7QUFDOUQsQ0FBQztBQUVELEtBQUssSUFBSSxFQUFFLENBQUEifQ==
@@ -1 +0,0 @@
1
- import '../server/utils/config-env';
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- // eslint-disable-next-line simple-import-sort/imports
4
- require("../server/utils/config-env");
5
- const contracts_1 = require("../avs/utils/contracts");
6
- const utils_1 = require("../scripts/utils");
7
- async function main() {
8
- const { contract } = (0, contracts_1.getContracts)();
9
- const address = (0, utils_1.getCliArgument)('address');
10
- if (!address) {
11
- throw new Error('Provide operator address via --address <addr>');
12
- }
13
- const tx = await contract.whitelistAddressAsOperator(address, true);
14
- await tx.wait();
15
- console.log('Whitelisted address:', address);
16
- }
17
- void main();
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2hpdGVsaXN0LW9wZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvd2hpdGVsaXN0LW9wZXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsc0RBQXNEO0FBQ3RELHVDQUFvQztBQUNwQyx1REFBc0Q7QUFDdEQsNkNBQWtEO0FBRWxELEtBQUssVUFBVSxJQUFJO0lBQ2xCLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxJQUFBLHdCQUFZLEdBQUUsQ0FBQTtJQUVuQyxNQUFNLE9BQU8sR0FBRyxJQUFBLHNCQUFjLEVBQUMsU0FBUyxDQUFDLENBQUE7SUFDekMsSUFBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2IsTUFBTSxJQUFJLEtBQUssQ0FDZCwrQ0FBK0MsQ0FDL0MsQ0FBQTtJQUNGLENBQUM7SUFFRCxNQUFNLEVBQUUsR0FBRyxNQUFNLFFBQVEsQ0FBQywwQkFBMEIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFDbkUsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUE7SUFFZixPQUFPLENBQUMsR0FBRyxDQUFDLHNCQUFzQixFQUFFLE9BQU8sQ0FBQyxDQUFBO0FBQzdDLENBQUM7QUFFRCxLQUFLLElBQUksRUFBRSxDQUFBIn0=
@@ -1,7 +0,0 @@
1
- import { IncomingMessage } from 'http';
2
- /**
3
- * Creates the WebSocket API server,
4
- * creates a fileserver to serve the browser RPC client,
5
- * and listens on the given port.
6
- */
7
- export declare function createServer(port?: number): Promise<import("ws").Server<typeof import("ws"), typeof IncomingMessage>>;
@@ -1,92 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createServer = createServer;
7
- const http_1 = require("http");
8
- const serve_static_1 = __importDefault(require("serve-static"));
9
- const config_1 = require("../config");
10
- const socket_1 = require("../server/socket");
11
- const generics_1 = require("../server/utils/generics");
12
- const keep_alive_1 = require("../server/utils/keep-alive");
13
- const utils_1 = require("../utils");
14
- const bgp_listener_1 = require("../utils/bgp-listener");
15
- const env_1 = require("../utils/env");
16
- const signatures_1 = require("../utils/signatures");
17
- const ws_1 = require("../utils/ws");
18
- const ws_2 = require("ws");
19
- const PORT = +((0, env_1.getEnvVariable)('PORT') || config_1.API_SERVER_PORT);
20
- const DISABLE_BGP_CHECKS = (0, env_1.getEnvVariable)('DISABLE_BGP_CHECKS') === '1';
21
- /**
22
- * Creates the WebSocket API server,
23
- * creates a fileserver to serve the browser RPC client,
24
- * and listens on the given port.
25
- */
26
- async function createServer(port = PORT) {
27
- const http = (0, http_1.createServer)();
28
- const serveBrowserRpc = (0, serve_static_1.default)('browser', { index: ['index.html'] });
29
- const bgpListener = !DISABLE_BGP_CHECKS
30
- ? (0, bgp_listener_1.createBgpListener)(utils_1.logger.child({ service: 'bgp-listener' }))
31
- : undefined;
32
- const wss = new ws_2.WebSocketServer({ noServer: true });
33
- http.on('upgrade', handleUpgrade.bind(wss));
34
- http.on('request', (req, res) => {
35
- var _a;
36
- // simple way to serve files at the browser RPC path
37
- if (!((_a = req.url) === null || _a === void 0 ? void 0 : _a.startsWith(config_1.BROWSER_RPC_PATHNAME))) {
38
- res.statusCode = 404;
39
- res.end('Not found');
40
- return;
41
- }
42
- req.url = req.url.slice(config_1.BROWSER_RPC_PATHNAME.length) || '/';
43
- serveBrowserRpc(req, res, (err) => {
44
- var _a, _b;
45
- if (err) {
46
- utils_1.logger.error({ err, url: req.url }, 'Failed to serve file');
47
- }
48
- res.statusCode = (_a = err === null || err === void 0 ? void 0 : err.statusCode) !== null && _a !== void 0 ? _a : 404;
49
- res.end((_b = err === null || err === void 0 ? void 0 : err.message) !== null && _b !== void 0 ? _b : 'Not found');
50
- });
51
- });
52
- // wait for us to start listening
53
- http.listen(port);
54
- await new Promise((resolve, reject) => {
55
- http.once('listening', () => resolve());
56
- http.once('error', reject);
57
- });
58
- wss.on('connection', (ws, req) => handleNewClient(ws, req, bgpListener));
59
- utils_1.logger.info({
60
- port,
61
- apiPath: config_1.WS_PATHNAME,
62
- browserRpcPath: config_1.BROWSER_RPC_PATHNAME,
63
- signerAddress: (0, generics_1.getAttestorAddress)(signatures_1.SelectedServiceSignatureType)
64
- }, 'WS server listening');
65
- const wssClose = wss.close.bind(wss);
66
- wss.close = (cb) => {
67
- wssClose(() => http.close(cb));
68
- bgpListener === null || bgpListener === void 0 ? void 0 : bgpListener.close();
69
- };
70
- return wss;
71
- }
72
- async function handleNewClient(ws, req, bgpListener) {
73
- (0, ws_1.promisifySend)(ws);
74
- const client = await socket_1.AttestorServerSocket.acceptConnection(ws, { req, bgpListener, logger: utils_1.logger });
75
- // if initialisation fails, don't store the client
76
- if (!client) {
77
- return;
78
- }
79
- ws.serverSocket = client;
80
- (0, keep_alive_1.addKeepAlive)(ws, utils_1.logger.child({ sessionId: client.sessionId }));
81
- }
82
- function handleUpgrade(request, socket, head) {
83
- const { pathname } = new URL(request.url, 'wss://base.url');
84
- if (pathname === config_1.WS_PATHNAME) {
85
- this.handleUpgrade(request, socket, head, (ws) => {
86
- this.emit('connection', ws, request);
87
- });
88
- return;
89
- }
90
- socket.destroy();
91
- }
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXNlcnZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2ZXIvY3JlYXRlLXNlcnZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQXVCQSxvQ0ErREM7QUF0RkQsK0JBQXdFO0FBQ3hFLGdFQUFzQztBQUN0Qyx1Q0FBK0U7QUFDL0UsOENBQXdEO0FBQ3hELHdEQUE4RDtBQUM5RCw0REFBMEQ7QUFFMUQscUNBQTRDO0FBQzVDLHlEQUEwRDtBQUMxRCx1Q0FBOEM7QUFDOUMscURBQW1FO0FBQ25FLHFDQUE0QztBQUU1QywyQkFBK0M7QUFFL0MsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUEsb0JBQWMsRUFBQyxNQUFNLENBQUMsSUFBSSx3QkFBZSxDQUFDLENBQUE7QUFDekQsTUFBTSxrQkFBa0IsR0FBRyxJQUFBLG9CQUFjLEVBQUMsb0JBQW9CLENBQUMsS0FBSyxHQUFHLENBQUE7QUFFdkU7Ozs7R0FJRztBQUNJLEtBQUssVUFBVSxZQUFZLENBQUMsSUFBSSxHQUFHLElBQUk7SUFDN0MsTUFBTSxJQUFJLEdBQUcsSUFBQSxtQkFBZ0IsR0FBRSxDQUFBO0lBQy9CLE1BQU0sZUFBZSxHQUFHLElBQUEsc0JBQVcsRUFDbEMsU0FBUyxFQUNULEVBQUUsS0FBSyxFQUFFLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FDekIsQ0FBQTtJQUNELE1BQU0sV0FBVyxHQUFHLENBQUMsa0JBQWtCO1FBQ3RDLENBQUMsQ0FBQyxJQUFBLGdDQUFpQixFQUFDLGNBQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLENBQUMsQ0FBQztRQUM5RCxDQUFDLENBQUMsU0FBUyxDQUFBO0lBRVosTUFBTSxHQUFHLEdBQUcsSUFBSSxvQkFBZSxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7SUFDbkQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUFDLElB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
@@ -1,2 +0,0 @@
1
- import { RPCHandler } from '../../types';
2
- export declare const claimTunnel: RPCHandler<'claimTunnel'>;
@@ -1,78 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.claimTunnel = void 0;
4
- const config_1 = require("../../config");
5
- const api_1 = require("../../proto/api");
6
- const apm_1 = require("../../server/utils/apm");
7
- const assert_valid_claim_request_1 = require("../../server/utils/assert-valid-claim-request");
8
- const generics_1 = require("../../server/utils/generics");
9
- const utils_1 = require("../../utils");
10
- const claimTunnel = async (claimRequest, { tx, logger, client }) => {
11
- var _a, _b, _c, _d;
12
- const { request, data: { timestampS } = {}, } = claimRequest;
13
- const tunnel = client.getTunnel(request === null || request === void 0 ? void 0 : request.id);
14
- try {
15
- await tunnel.close();
16
- }
17
- catch (err) {
18
- logger.debug({ err }, 'error closing tunnel');
19
- }
20
- if (tx) {
21
- const transcriptBytes = tunnel.transcript.reduce((acc, { message }) => acc + message.length, 0);
22
- tx === null || tx === void 0 ? void 0 : tx.setLabel('transcriptBytes', transcriptBytes.toString());
23
- }
24
- // we throw an error for cases where the attestor cannot prove
25
- // the user's request is faulty. For eg. if the user sends a
26
- // "createRequest" that does not match the tunnel's actual
27
- // create request -- the attestor cannot prove that the user
28
- // is lying. In such cases, we throw a bad request error.
29
- // Same goes for matching the transcript.
30
- if (((_a = tunnel.createRequest) === null || _a === void 0 ? void 0 : _a.host) !== (request === null || request === void 0 ? void 0 : request.host)
31
- || ((_b = tunnel.createRequest) === null || _b === void 0 ? void 0 : _b.port) !== (request === null || request === void 0 ? void 0 : request.port)
32
- || ((_c = tunnel.createRequest) === null || _c === void 0 ? void 0 : _c.geoLocation) !== (request === null || request === void 0 ? void 0 : request.geoLocation)) {
33
- throw utils_1.AttestorError.badRequest('Tunnel request does not match');
34
- }
35
- (0, assert_valid_claim_request_1.assertTranscriptsMatch)(claimRequest.transcript, tunnel.transcript);
36
- const res = api_1.ClaimTunnelResponse.create({ request: claimRequest });
37
- try {
38
- const now = (0, utils_1.unixTimestampSeconds)();
39
- if (Math.floor(timestampS - now) > config_1.MAX_CLAIM_TIMESTAMP_DIFF_S) {
40
- throw new utils_1.AttestorError('ERROR_INVALID_CLAIM', `Timestamp provided ${timestampS} is too far off. Current time is ${now}`);
41
- }
42
- const assertTx = (_d = (0, apm_1.getApm)()) === null || _d === void 0 ? void 0 : _d.startTransaction('assertValidClaimRequest', { childOf: tx });
43
- try {
44
- const claim = await (0, assert_valid_claim_request_1.assertValidClaimRequest)(claimRequest, client.metadata, logger);
45
- res.claim = {
46
- ...claim,
47
- identifier: (0, utils_1.getIdentifierFromClaimInfo)(claim),
48
- // hardcode for compatibility with V1 claims
49
- epoch: 1
50
- };
51
- }
52
- catch (err) {
53
- assertTx === null || assertTx === void 0 ? void 0 : assertTx.setOutcome('failure');
54
- throw err;
55
- }
56
- finally {
57
- assertTx === null || assertTx === void 0 ? void 0 : assertTx.end();
58
- }
59
- }
60
- catch (err) {
61
- logger.error({ err }, 'invalid claim request');
62
- const attestorErr = utils_1.AttestorError.fromError(err);
63
- attestorErr.code = 'ERROR_INVALID_CLAIM';
64
- res.error = attestorErr.toProto();
65
- }
66
- res.signatures = {
67
- attestorAddress: (0, generics_1.getAttestorAddress)(client.metadata.signatureType),
68
- claimSignature: res.claim
69
- ? await (0, generics_1.signAsAttestor)((0, utils_1.createSignDataForClaim)(res.claim), client.metadata.signatureType)
70
- : new Uint8Array(),
71
- resultSignature: await (0, generics_1.signAsAttestor)(api_1.ClaimTunnelResponse.encode(res).finish(), client.metadata.signatureType)
72
- };
73
- // remove tunnel from client -- to free up our mem
74
- client.removeTunnel(request.id);
75
- return res;
76
- };
77
- exports.claimTunnel = claimTunnel;
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhaW1UdW5uZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmVyL2hhbmRsZXJzL2NsYWltVHVubmVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHVDQUF1RDtBQUN2RCx1Q0FBbUQ7QUFDbkQsOENBQTZDO0FBQzdDLDRGQUE2RztBQUM3Ryx3REFBOEU7QUFFOUUscUNBQW1IO0FBRTVHLE1BQU0sV0FBVyxHQUE4QixLQUFLLEVBQzFELFlBQVksRUFDWixFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEVBQ3JCLEVBQUU7O0lBQ0gsTUFBTSxFQUNMLE9BQU8sRUFDUCxJQUFJLEVBQUUsRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLEdBQ3pCLEdBQUcsWUFBWSxDQUFBO0lBQ2hCLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLEVBQUcsQ0FBQyxDQUFBO0lBQzdDLElBQUksQ0FBQztRQUNKLE1BQU0sTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFBO0lBQ3JCLENBQUM7SUFBQyxPQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2IsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLHNCQUFzQixDQUFDLENBQUE7SUFDOUMsQ0FBQztJQUVELElBQUcsRUFBRSxFQUFFLENBQUM7UUFDUCxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FDL0MsQ0FBQyxHQUFHLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQzFDLENBQUMsQ0FDRCxDQUFBO1FBQ0QsRUFBRSxhQUFGLEVBQUUsdUJBQUYsRUFBRSxDQUFFLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxlQUFlLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQTtJQUM1RCxDQUFDO0lB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
@@ -1,2 +0,0 @@
1
- import { RPCHandler } from '../../types';
2
- export declare const completeClaimOnChain: RPCHandler<'completeClaimOnChain'>;
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.completeClaimOnChain = void 0;
4
- const contracts_1 = require("../../avs/utils/contracts");
5
- const utils_1 = require("../../utils");
6
- const env_1 = require("../../utils/env");
7
- const ACCEPT_CLAIM_PAYMENT_REQUESTS = (0, env_1.getEnvVariable)('ACCEPT_CLAIM_PAYMENT_REQUESTS') === '1';
8
- const completeClaimOnChain = async ({ chainId: chainIdNum, taskIndex, completedTaskJson }) => {
9
- var _a;
10
- if (!ACCEPT_CLAIM_PAYMENT_REQUESTS) {
11
- throw new utils_1.AttestorError('ERROR_PAYMENT_REFUSED', 'Payment requests are not accepted at this time');
12
- }
13
- const chainId = chainIdNum.toString();
14
- const { contract } = (0, contracts_1.getContracts)(chainId.toString());
15
- const task = JSON.parse(completedTaskJson);
16
- const tx = await contract.taskCompleted(task, taskIndex);
17
- const rslt = await tx.wait();
18
- // check task created event was emitted
19
- const ev = (_a = rslt.events) === null || _a === void 0 ? void 0 : _a[0];
20
- const obj = ev === null || ev === void 0 ? void 0 : ev.args;
21
- const plainObj = (0, utils_1.ethersStructToPlainObject)(obj);
22
- return {
23
- txHash: rslt.transactionHash,
24
- taskCompletedObjectJson: JSON.stringify(plainObj)
25
- };
26
- };
27
- exports.completeClaimOnChain = completeClaimOnChain;
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGxldGVDbGFpbU9uQ2hhaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmVyL2hhbmRsZXJzL2NvbXBsZXRlQ2xhaW1PbkNoYWluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHVEQUFzRDtBQUV0RCxxQ0FBb0U7QUFDcEUsdUNBQThDO0FBRTlDLE1BQU0sNkJBQTZCLEdBQUcsSUFBQSxvQkFBYyxFQUFDLCtCQUErQixDQUFDLEtBQUssR0FBRyxDQUFBO0FBRXRGLE1BQU0sb0JBQW9CLEdBQXVDLEtBQUssRUFDNUUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxFQUNwRCxFQUFFOztJQUNILElBQUcsQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxxQkFBYSxDQUN0Qix1QkFBdUIsRUFDdkIsZ0RBQWdELENBQ2hELENBQUE7SUFDRixDQUFDO0lBRUQsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQ3JDLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxJQUFBLHdCQUFZLEVBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7SUFDckQsTUFBTSxJQUFJLEdBQ1AsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0lBQ2hDLE1BQU0sRUFBRSxHQUFHLE1BQU0sUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUE7SUFDeEQsTUFBTSxJQUFJLEdBQUcsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUE7SUFFNUIsdUNBQXVDO0lBQ3ZDLE1BQU0sRUFBRSxHQUFHLE1BQUEsSUFBSSxDQUFDLE1BQU0sMENBQUcsQ0FBQyxDQUFDLENBQUE7SUFDM0IsTUFBTSxHQUFHLEdBQUcsRUFBRSxhQUFGLEVBQUUsdUJBQUYsRUFBRSxDQUFFLElBQTJDLENBQUE7SUFFM0QsTUFBTSxRQUFRLEdBQUcsSUFBQSxpQ0FBeUIsRUFBQyxHQUFHLENBQUMsQ0FBQTtJQUUvQyxPQUFPO1FBQ04sTUFBTSxFQUFFLElBQUksQ0FBQyxlQUFlO1FBQzVCLHVCQUF1QixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDO0tBQ2pELENBQUE7QUFDRixDQUFDLENBQUE7QUEzQlksUUFBQSxvQkFBb0Isd0JBMkJoQyJ9
@@ -1,2 +0,0 @@
1
- import { RPCHandler } from '../../types';
2
- export declare const createClaimOnChain: RPCHandler<'createClaimOnChain'>;
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createClaimOnChain = void 0;
4
- const contracts_1 = require("../../avs/utils/contracts");
5
- const tasks_1 = require("../../avs/utils/tasks");
6
- const utils_1 = require("../../utils");
7
- const env_1 = require("../../utils/env");
8
- const ACCEPT_CLAIM_PAYMENT_REQUESTS = (0, env_1.getEnvVariable)('ACCEPT_CLAIM_PAYMENT_REQUESTS') === '1';
9
- const createClaimOnChain = async ({ chainId: chainIdNum, jsonCreateClaimRequest, requestSignature }) => {
10
- if (!ACCEPT_CLAIM_PAYMENT_REQUESTS) {
11
- throw new utils_1.AttestorError('ERROR_PAYMENT_REFUSED', 'Payment requests are not accepted at this time');
12
- }
13
- const chainId = chainIdNum.toString();
14
- const { wallet } = (0, contracts_1.getContracts)(chainId.toString());
15
- const request = JSON.parse(jsonCreateClaimRequest);
16
- const { task, tx } = await (0, tasks_1.createNewClaimRequestOnChain)({
17
- request,
18
- owner: request.owner,
19
- payer: wallet,
20
- chainId,
21
- requestSignature: requestSignature
22
- });
23
- const plainTask = (0, utils_1.ethersStructToPlainObject)(task);
24
- return {
25
- txHash: tx.transactionHash,
26
- taskIndex: task.taskIndex,
27
- jsonTask: JSON.stringify(plainTask)
28
- };
29
- };
30
- exports.createClaimOnChain = createClaimOnChain;
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlQ2xhaW1PbkNoYWluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZlci9oYW5kbGVycy9jcmVhdGVDbGFpbU9uQ2hhaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsdURBQXNEO0FBQ3RELCtDQUFrRTtBQUVsRSxxQ0FBb0U7QUFDcEUsdUNBQThDO0FBRTlDLE1BQU0sNkJBQTZCLEdBQUcsSUFBQSxvQkFBYyxFQUFDLCtCQUErQixDQUFDLEtBQUssR0FBRyxDQUFBO0FBRXRGLE1BQU0sa0JBQWtCLEdBQXFDLEtBQUssRUFDeEUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLHNCQUFzQixFQUFFLGdCQUFnQixFQUFFLEVBQ2hFLEVBQUU7SUFDSCxJQUFHLENBQUMsNkJBQTZCLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUkscUJBQWEsQ0FDdEIsdUJBQXVCLEVBQ3ZCLGdEQUFnRCxDQUNoRCxDQUFBO0lBQ0YsQ0FBQztJQUVELE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQTtJQUNyQyxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBQSx3QkFBWSxFQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFBO0lBQ25ELE1BQU0sT0FBTyxHQUNWLElBQUksQ0FBQyxLQUFLLENBQUMsc0JBQXNCLENBQUMsQ0FBQTtJQUNyQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxHQUFHLE1BQU0sSUFBQSxvQ0FBNEIsRUFBQztRQUN2RCxPQUFPO1FBQ1AsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLO1FBQ3BCLEtBQUssRUFBRSxNQUFPO1FBQ2QsT0FBTztRQUNQLGdCQUFnQixFQUFFLGdCQUFnQjtLQUNsQyxDQUFDLENBQUE7SUFFRixNQUFNLFNBQVMsR0FBRyxJQUFBLGlDQUF5QixFQUFDLElBQUksQ0FBQyxDQUFBO0lBRWpELE9BQU87UUFDTixNQUFNLEVBQUUsRUFBRSxDQUFDLGVBQWU7UUFDMUIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1FBQ3pCLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQztLQUNuQyxDQUFBO0FBQ0YsQ0FBQyxDQUFBO0FBN0JZLFFBQUEsa0JBQWtCLHNCQTZCOUIifQ==
@@ -1,2 +0,0 @@
1
- import { RPCHandler } from '../../types';
2
- export declare const createTaskOnMechain: RPCHandler<'createTaskOnMechain'>;
@@ -1,52 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createTaskOnMechain = void 0;
4
- const ethers_1 = require("ethers");
5
- const governanceABI_1 = require("../../mechain/abis/governanceABI");
6
- const taskABI_1 = require("../../mechain/abis/taskABI");
7
- const constants_1 = require("../../mechain/constants");
8
- const env_1 = require("../../utils/env");
9
- const createTaskOnMechain = async ({ timestamp }) => {
10
- const { taskContract } = await getContracts();
11
- const seed = ethers_1.utils.randomBytes(32);
12
- // Perform a static call to fetch taskId and attestors for the next task
13
- const result = await taskContract.callStatic.createNewTaskRequest(seed, timestamp);
14
- const taskId = result[0];
15
- // Fetch requiredAttestors to determine how many proofs to request
16
- const requiredAttestors = await taskContract.requiredAttestors();
17
- const hosts = [];
18
- // Fetch attestors's WebSocket URI, e.g. wss://attestor.reclaimprotocol.org/ws
19
- for (let i = 0; i < requiredAttestors; i++) {
20
- hosts.push(result[1][i].host);
21
- }
22
- // Perform the call that was statically-called previously
23
- const tx = await taskContract.createNewTaskRequest(seed, timestamp);
24
- await tx.wait();
25
- return {
26
- taskId: taskId,
27
- requiredAttestors: requiredAttestors,
28
- hosts: hosts
29
- };
30
- };
31
- exports.createTaskOnMechain = createTaskOnMechain;
32
- async function getContracts() {
33
- const privateKey = (0, env_1.getEnvVariable)('MECHAIN_PRIVATE_KEY');
34
- const taskContractAddress = (0, env_1.getEnvVariable)('TASK_CONTRACT_ADDRESS') || constants_1.TASK_CONTRACT_ADDRESS;
35
- const governanceContractAddress = (0, env_1.getEnvVariable)('GOVERNANCE_CONTRACT_ADDRESS') || constants_1.GOVERNANCE_CONTRACT_ADDRESS;
36
- if (!privateKey) {
37
- throw new Error('MECHAIN_PRIVATE_KEY environment variable is not set');
38
- }
39
- try {
40
- const provider = new ethers_1.providers.JsonRpcProvider(constants_1.RPC_URL);
41
- // Validate connection to provider
42
- await provider.getNetwork();
43
- const signer = new ethers_1.Wallet(privateKey, provider);
44
- const taskContract = new ethers_1.Contract(taskContractAddress, taskABI_1.taskABI, signer);
45
- const governanceContract = new ethers_1.Contract(governanceContractAddress, governanceABI_1.governanceABI, signer);
46
- return { taskContract, governanceContract };
47
- }
48
- catch (error) {
49
- throw new Error(`Failed to initialize contracts: ${error.message || error}`);
50
- }
51
- }
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlVGFza09uTWVjaGFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2ZXIvaGFuZGxlcnMvY3JlYXRlVGFza09uTWVjaGFpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBMkQ7QUFDM0Qsa0VBQThEO0FBQzlELHNEQUFrRDtBQUNsRCxxREFBbUc7QUFFbkcsdUNBQThDO0FBR3ZDLE1BQU0sbUJBQW1CLEdBQXNDLEtBQUssRUFBQyxFQUMzRSxTQUFTLEVBQ1QsRUFBRSxFQUFFO0lBRUosTUFBTSxFQUFFLFlBQVksRUFBRSxHQUFHLE1BQU0sWUFBWSxFQUFFLENBQUE7SUFFN0MsTUFBTSxJQUFJLEdBQUcsY0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQTtJQUVsQyx3RUFBd0U7SUFDeEUsTUFBTSxNQUFNLEdBQUcsTUFBTSxZQUFZLENBQUMsVUFBVSxDQUFDLG9CQUFvQixDQUNoRSxJQUFJLEVBQ0osU0FBUyxDQUNULENBQUE7SUFFRCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFXLENBQUE7SUFFbEMsa0VBQWtFO0lBQ2xFLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxZQUFZLENBQUMsaUJBQWlCLEVBQUUsQ0FBQTtJQUVoRSxNQUFNLEtBQUssR0FBYyxFQUFFLENBQUE7SUFFM0IsOEVBQThFO0lBQzlFLEtBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxpQkFBaUIsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQzNDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQzlCLENBQUM7SUFFRCx5REFBeUQ7SUFDekQsTUFBTSxFQUFFLEdBQUcsTUFBTSxZQUFZLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBQ25FLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxDQUFBO0lBRWYsT0FBTztRQUNOLE1BQU0sRUFBRSxNQUFNO1FBQ2QsaUJBQWlCLEVBQUUsaUJBQWlCO1FBQ3BDLEtBQUssRUFBRSxLQUFLO0tBQ1osQ0FBQTtBQUNGLENBQUMsQ0FBQTtBQW5DWSxRQUFBLG1CQUFtQix1QkFtQy9CO0FBRUQsS0FBSyxVQUFVLFlBQVk7SUFDMUIsTUFBTSxVQUFVLEdBQUcsSUFBQSxvQkFBYyxFQUFDLHFCQUFxQixDQUFDLENBQUE7SUFDeEQsTUFBTSxtQkFBbUIsR0FBRyxJQUFBLG9CQUFjLEVBQUMsdUJBQXVCLENBQUMsSUFBSSxpQ0FBcUIsQ0FBQTtJQUM1RixNQUFNLHlCQUF5QixHQUFHLElBQUEsb0JBQWMsRUFBQyw2QkFBNkIsQ0FBQyxJQUFJLHVDQUEyQixDQUFBO0lBRTlHLElBQUcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLHFEQUFxRCxDQUFDLENBQUE7SUFDdkUsQ0FBQztJQUVELElBQUksQ0FBQztRQUNKLE1BQU0sUUFBUSxHQUFHLElBQUksa0JBQVMsQ0FBQyxlQUFlLENBQUMsbUJBQU8sQ0FBQyxDQUFBO1FBQ3ZELGtDQUFrQztRQUNsQyxNQUFNLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQTtRQUUzQixNQUFNLE1BQU0sR0FBRyxJQUFJLGVBQU0sQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUE7UUFFL0MsTUFBTSxZQUFZLEdBQUcsSUFBSSxpQkFBUSxDQUNoQyxtQkFBbUIsRUFDbkIsaUJBQU8sRUFDUCxNQUFNLENBQ04sQ0FBQTtRQUVELE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxpQkFBUSxDQUN0Qyx5QkFBeUIsRUFDekIsNkJBQWEsRUFDYixNQUFNLENBQ04sQ0FBQTtRQUVELE9BQU8sRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQTtJQUM1QyxDQUFDO0lBQUMsT0FBTSxLQUFLLEVBQUUsQ0FBQztRQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxFQUFFLENBQUMsQ0FBQTtJQUM3RSxDQUFDO0FBRUYsQ0FBQyJ9
@@ -1,2 +0,0 @@
1
- import { RPCHandler } from '../../types';
2
- export declare const createTunnel: RPCHandler<'createTunnel'>;