@reclaimprotocol/attestor-core 4.0.3 → 5.0.1-beta.10

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 (474) hide show
  1. package/LICENSE +660 -660
  2. package/README.md +1 -2
  3. package/lib/avs/abis/avsDirectoryABI.js +341 -342
  4. package/lib/avs/abis/delegationABI.js +4 -5
  5. package/lib/avs/abis/registryABI.js +722 -723
  6. package/lib/avs/client/create-claim-on-avs.d.ts +5 -5
  7. package/lib/avs/client/create-claim-on-avs.js +160 -139
  8. package/lib/avs/config.d.ts +1 -1
  9. package/lib/avs/config.js +25 -23
  10. package/lib/avs/contracts/ReclaimServiceManager.d.ts +436 -532
  11. package/lib/avs/contracts/ReclaimServiceManager.js +0 -3
  12. package/lib/avs/contracts/common.d.ts +40 -11
  13. package/lib/avs/contracts/common.js +0 -3
  14. package/lib/avs/contracts/factories/ReclaimServiceManager__factory.d.ts +13 -11
  15. package/lib/avs/contracts/factories/ReclaimServiceManager__factory.js +1157 -1148
  16. package/lib/avs/contracts/factories/index.d.ts +1 -1
  17. package/lib/avs/contracts/factories/index.js +4 -9
  18. package/lib/avs/contracts/index.d.ts +3 -3
  19. package/lib/avs/contracts/index.js +6 -40
  20. package/lib/avs/types/index.d.ts +6 -6
  21. package/lib/avs/types/index.js +0 -3
  22. package/lib/avs/utils/contracts.d.ts +14 -14
  23. package/lib/avs/utils/contracts.js +50 -35
  24. package/lib/avs/utils/register.d.ts +3 -3
  25. package/lib/avs/utils/register.js +71 -79
  26. package/lib/avs/utils/tasks.d.ts +4 -4
  27. package/lib/avs/utils/tasks.js +44 -41
  28. package/lib/browser/avs/abis/avsDirectoryABI.d.ts +60 -0
  29. package/lib/browser/avs/abis/avsDirectoryABI.js +343 -0
  30. package/lib/browser/avs/abis/delegationABI.d.ts +126 -0
  31. package/lib/browser/avs/abis/delegationABI.js +4 -0
  32. package/lib/browser/avs/abis/registryABI.d.ts +136 -0
  33. package/lib/browser/avs/abis/registryABI.js +728 -0
  34. package/lib/browser/avs/client/create-claim-on-avs.d.ts +12 -0
  35. package/lib/browser/avs/client/create-claim-on-avs.js +168 -0
  36. package/lib/browser/avs/config.d.ts +7 -0
  37. package/lib/browser/avs/config.js +26 -0
  38. package/lib/browser/avs/contracts/ReclaimServiceManager.d.ts +601 -0
  39. package/lib/browser/avs/contracts/ReclaimServiceManager.js +0 -0
  40. package/lib/browser/avs/contracts/common.d.ts +50 -0
  41. package/lib/browser/avs/contracts/common.js +0 -0
  42. package/lib/browser/avs/contracts/factories/ReclaimServiceManager__factory.d.ts +890 -0
  43. package/lib/browser/avs/contracts/factories/ReclaimServiceManager__factory.js +1183 -0
  44. package/lib/browser/avs/contracts/factories/index.d.ts +1 -0
  45. package/lib/browser/avs/contracts/factories/index.js +4 -0
  46. package/lib/browser/avs/contracts/index.d.ts +3 -0
  47. package/lib/browser/avs/contracts/index.js +6 -0
  48. package/lib/browser/avs/types/index.d.ts +55 -0
  49. package/lib/browser/avs/types/index.js +0 -0
  50. package/lib/browser/avs/utils/contracts.d.ts +21 -0
  51. package/lib/browser/avs/utils/contracts.js +53 -0
  52. package/lib/browser/avs/utils/register.d.ts +27 -0
  53. package/lib/browser/avs/utils/register.js +74 -0
  54. package/lib/browser/avs/utils/tasks.d.ts +22 -0
  55. package/lib/browser/avs/utils/tasks.js +48 -0
  56. package/lib/browser/client/create-claim.d.ts +5 -0
  57. package/lib/browser/client/create-claim.js +461 -0
  58. package/lib/browser/client/index.d.ts +3 -0
  59. package/lib/browser/client/index.js +3 -0
  60. package/lib/browser/client/tunnels/make-rpc-tcp-tunnel.d.ts +16 -0
  61. package/lib/browser/client/tunnels/make-rpc-tcp-tunnel.js +53 -0
  62. package/lib/browser/client/tunnels/make-rpc-tls-tunnel.d.ts +26 -0
  63. package/lib/browser/client/tunnels/make-rpc-tls-tunnel.js +127 -0
  64. package/lib/browser/client/utils/attestor-pool.d.ts +8 -0
  65. package/lib/browser/client/utils/attestor-pool.js +24 -0
  66. package/lib/browser/client/utils/client-socket.d.ts +11 -0
  67. package/lib/browser/client/utils/client-socket.js +120 -0
  68. package/lib/browser/client/utils/message-handler.d.ts +4 -0
  69. package/lib/browser/client/utils/message-handler.js +97 -0
  70. package/lib/browser/config/index.d.ts +31 -0
  71. package/lib/browser/config/index.js +62 -0
  72. package/lib/browser/external-rpc/benchmark.d.ts +1 -0
  73. package/lib/browser/external-rpc/benchmark.js +82 -0
  74. package/lib/browser/external-rpc/event-bus.d.ts +7 -0
  75. package/lib/browser/external-rpc/event-bus.js +17 -0
  76. package/lib/browser/external-rpc/global.d.js +0 -0
  77. package/lib/browser/external-rpc/handle-incoming-msg.d.ts +2 -0
  78. package/lib/browser/external-rpc/handle-incoming-msg.js +241 -0
  79. package/lib/browser/external-rpc/index.d.ts +3 -0
  80. package/lib/browser/external-rpc/index.js +3 -0
  81. package/lib/browser/external-rpc/jsc-polyfills/1.d.ts +14 -0
  82. package/lib/browser/external-rpc/jsc-polyfills/1.js +80 -0
  83. package/lib/browser/external-rpc/jsc-polyfills/2.js +15 -0
  84. package/lib/browser/external-rpc/jsc-polyfills/event.d.ts +10 -0
  85. package/lib/browser/external-rpc/jsc-polyfills/event.js +19 -0
  86. package/lib/browser/external-rpc/jsc-polyfills/index.d.ts +2 -0
  87. package/lib/browser/external-rpc/jsc-polyfills/index.js +2 -0
  88. package/lib/browser/external-rpc/jsc-polyfills/ws.d.ts +21 -0
  89. package/lib/browser/external-rpc/jsc-polyfills/ws.js +83 -0
  90. package/lib/browser/external-rpc/setup-browser.d.ts +6 -0
  91. package/lib/browser/external-rpc/setup-browser.js +33 -0
  92. package/lib/browser/external-rpc/setup-jsc.d.ts +24 -0
  93. package/lib/browser/external-rpc/setup-jsc.js +22 -0
  94. package/lib/{window-rpc → browser/external-rpc}/types.d.ts +56 -35
  95. package/lib/browser/external-rpc/types.js +0 -0
  96. package/lib/browser/external-rpc/utils.d.ts +20 -0
  97. package/lib/browser/external-rpc/utils.js +100 -0
  98. package/lib/browser/external-rpc/zk.d.ts +14 -0
  99. package/lib/browser/external-rpc/zk.js +58 -0
  100. package/lib/browser/index.browser.js +13 -0
  101. package/lib/browser/index.d.ts +9 -0
  102. package/lib/browser/index.js +13 -0
  103. package/lib/browser/mechain/abis/governanceABI.d.ts +50 -0
  104. package/lib/browser/mechain/abis/governanceABI.js +461 -0
  105. package/lib/browser/mechain/abis/taskABI.d.ts +157 -0
  106. package/lib/browser/mechain/abis/taskABI.js +512 -0
  107. package/lib/browser/mechain/client/create-claim-on-mechain.d.ts +10 -0
  108. package/lib/browser/mechain/client/create-claim-on-mechain.js +33 -0
  109. package/lib/browser/mechain/client/index.d.ts +1 -0
  110. package/lib/browser/mechain/client/index.js +1 -0
  111. package/lib/browser/mechain/constants/index.d.ts +3 -0
  112. package/lib/browser/mechain/constants/index.js +8 -0
  113. package/lib/browser/mechain/index.d.ts +2 -0
  114. package/lib/browser/mechain/index.js +2 -0
  115. package/lib/browser/mechain/types/index.d.ts +23 -0
  116. package/lib/browser/mechain/types/index.js +0 -0
  117. package/lib/browser/proto/api.d.ts +651 -0
  118. package/lib/browser/proto/api.js +4250 -0
  119. package/lib/browser/proto/tee-bundle.d.ts +156 -0
  120. package/lib/browser/proto/tee-bundle.js +1296 -0
  121. package/lib/browser/providers/http/index.d.ts +18 -0
  122. package/lib/browser/providers/http/index.js +640 -0
  123. package/lib/browser/providers/http/patch-parse5-tree.d.ts +6 -0
  124. package/lib/browser/providers/http/patch-parse5-tree.js +34 -0
  125. package/lib/browser/providers/http/utils.d.ts +77 -0
  126. package/lib/browser/providers/http/utils.js +283 -0
  127. package/lib/browser/providers/index.d.ts +4 -0
  128. package/lib/browser/providers/index.js +7 -0
  129. package/lib/browser/scripts/fallbacks/crypto.js +4 -0
  130. package/lib/browser/scripts/fallbacks/empty.js +4 -0
  131. package/lib/browser/scripts/fallbacks/gnark.js +15 -0
  132. package/lib/browser/scripts/fallbacks/re2.js +7 -0
  133. package/lib/browser/scripts/fallbacks/snarkjs.js +10 -0
  134. package/lib/browser/scripts/fallbacks/stwo.js +159 -0
  135. package/lib/browser/types/bgp.d.ts +11 -0
  136. package/lib/browser/types/bgp.js +0 -0
  137. package/lib/browser/types/claims.d.ts +70 -0
  138. package/lib/browser/types/claims.js +0 -0
  139. package/lib/browser/types/client.d.ts +163 -0
  140. package/lib/browser/types/client.js +0 -0
  141. package/lib/browser/types/general.d.ts +77 -0
  142. package/lib/browser/types/general.js +0 -0
  143. package/lib/browser/types/handlers.d.ts +10 -0
  144. package/lib/browser/types/handlers.js +0 -0
  145. package/lib/browser/types/index.d.ts +10 -0
  146. package/lib/browser/types/index.js +10 -0
  147. package/lib/browser/types/providers.d.ts +161 -0
  148. package/lib/browser/types/providers.gen.d.ts +443 -0
  149. package/lib/browser/types/providers.gen.js +16 -0
  150. package/lib/browser/types/providers.js +0 -0
  151. package/lib/browser/types/rpc.d.ts +35 -0
  152. package/lib/browser/types/rpc.js +0 -0
  153. package/lib/browser/types/signatures.d.ts +28 -0
  154. package/lib/browser/types/signatures.js +0 -0
  155. package/lib/browser/types/tunnel.d.ts +18 -0
  156. package/lib/browser/types/tunnel.js +0 -0
  157. package/lib/browser/types/zk.d.ts +38 -0
  158. package/lib/browser/types/zk.js +0 -0
  159. package/lib/browser/utils/auth.d.ts +8 -0
  160. package/lib/browser/utils/auth.js +71 -0
  161. package/lib/browser/utils/b64-json.d.ts +2 -0
  162. package/lib/browser/utils/b64-json.js +17 -0
  163. package/lib/browser/utils/claims.d.ts +33 -0
  164. package/lib/browser/utils/claims.js +89 -0
  165. package/lib/browser/utils/env.d.ts +3 -0
  166. package/lib/browser/utils/env.js +19 -0
  167. package/lib/browser/utils/error.d.ts +26 -0
  168. package/lib/browser/utils/error.js +54 -0
  169. package/lib/browser/utils/generics.d.ts +119 -0
  170. package/lib/browser/utils/generics.js +272 -0
  171. package/lib/browser/utils/http-parser.d.ts +59 -0
  172. package/lib/browser/utils/http-parser.js +201 -0
  173. package/lib/browser/utils/index.browser.js +13 -0
  174. package/lib/browser/utils/index.d.ts +13 -0
  175. package/lib/browser/utils/index.js +13 -0
  176. package/lib/browser/utils/logger.browser.js +88 -0
  177. package/lib/browser/utils/logger.d.ts +14 -0
  178. package/lib/browser/utils/logger.js +88 -0
  179. package/lib/browser/utils/prepare-packets.d.ts +16 -0
  180. package/lib/browser/utils/prepare-packets.js +69 -0
  181. package/lib/browser/utils/redactions.d.ts +73 -0
  182. package/lib/browser/utils/redactions.js +135 -0
  183. package/lib/browser/utils/retries.d.ts +12 -0
  184. package/lib/browser/utils/retries.js +26 -0
  185. package/lib/browser/utils/signatures/eth.d.ts +2 -0
  186. package/lib/browser/utils/signatures/eth.js +31 -0
  187. package/lib/browser/utils/signatures/index.d.ts +5 -0
  188. package/lib/browser/utils/signatures/index.js +12 -0
  189. package/lib/browser/utils/socket-base.d.ts +23 -0
  190. package/lib/browser/utils/socket-base.js +96 -0
  191. package/lib/browser/utils/tls-imports.d.ts +21 -0
  192. package/lib/browser/utils/tls-imports.js +71 -0
  193. package/lib/browser/utils/tls.d.ts +2 -0
  194. package/lib/browser/utils/tls.js +58 -0
  195. package/lib/browser/utils/ws.d.ts +7 -0
  196. package/lib/browser/utils/ws.js +22 -0
  197. package/lib/browser/utils/zk.d.ts +71 -0
  198. package/lib/browser/utils/zk.js +625 -0
  199. package/lib/client/create-claim.d.ts +2 -2
  200. package/lib/client/create-claim.js +437 -400
  201. package/lib/client/index.d.ts +3 -3
  202. package/lib/client/index.js +3 -20
  203. package/lib/client/tunnels/make-rpc-tcp-tunnel.d.ts +2 -2
  204. package/lib/client/tunnels/make-rpc-tcp-tunnel.js +49 -56
  205. package/lib/client/tunnels/make-rpc-tls-tunnel.d.ts +4 -3
  206. package/lib/client/tunnels/make-rpc-tls-tunnel.js +123 -131
  207. package/lib/client/utils/attestor-pool.d.ts +3 -1
  208. package/lib/client/utils/attestor-pool.js +21 -25
  209. package/lib/client/utils/client-socket.d.ts +4 -4
  210. package/lib/client/utils/client-socket.js +114 -94
  211. package/lib/client/utils/message-handler.d.ts +2 -2
  212. package/lib/client/utils/message-handler.js +89 -86
  213. package/lib/config/index.d.ts +6 -3
  214. package/lib/config/index.js +60 -37
  215. package/lib/external-rpc/benchmark.d.ts +1 -0
  216. package/lib/external-rpc/benchmark.js +82 -0
  217. package/lib/external-rpc/event-bus.d.ts +7 -0
  218. package/lib/external-rpc/event-bus.js +17 -0
  219. package/lib/external-rpc/global.d.js +0 -0
  220. package/lib/external-rpc/handle-incoming-msg.d.ts +2 -0
  221. package/lib/external-rpc/handle-incoming-msg.js +241 -0
  222. package/lib/external-rpc/index.d.ts +3 -0
  223. package/lib/external-rpc/index.js +3 -0
  224. package/lib/external-rpc/jsc-polyfills/1.d.ts +14 -0
  225. package/lib/external-rpc/jsc-polyfills/1.js +80 -0
  226. package/lib/external-rpc/jsc-polyfills/2.js +15 -0
  227. package/lib/external-rpc/jsc-polyfills/event.d.ts +10 -0
  228. package/lib/external-rpc/jsc-polyfills/event.js +19 -0
  229. package/lib/external-rpc/jsc-polyfills/index.d.ts +2 -0
  230. package/lib/external-rpc/jsc-polyfills/index.js +2 -0
  231. package/lib/external-rpc/jsc-polyfills/ws.d.ts +21 -0
  232. package/lib/external-rpc/jsc-polyfills/ws.js +83 -0
  233. package/lib/external-rpc/setup-browser.d.ts +6 -0
  234. package/lib/external-rpc/setup-browser.js +33 -0
  235. package/lib/external-rpc/setup-jsc.d.ts +24 -0
  236. package/lib/external-rpc/setup-jsc.js +22 -0
  237. package/lib/external-rpc/types.d.ts +213 -0
  238. package/lib/external-rpc/types.js +0 -0
  239. package/lib/external-rpc/utils.d.ts +20 -0
  240. package/lib/external-rpc/utils.js +100 -0
  241. package/lib/external-rpc/zk.d.ts +14 -0
  242. package/lib/external-rpc/zk.js +58 -0
  243. package/lib/index.browser.d.ts +9 -0
  244. package/lib/index.d.ts +8 -9
  245. package/lib/index.js +12 -49
  246. package/lib/mechain/abis/governanceABI.js +460 -461
  247. package/lib/mechain/abis/taskABI.js +505 -506
  248. package/lib/mechain/client/create-claim-on-mechain.d.ts +3 -3
  249. package/lib/mechain/client/create-claim-on-mechain.js +31 -30
  250. package/lib/mechain/client/index.d.ts +1 -1
  251. package/lib/mechain/client/index.js +1 -18
  252. package/lib/mechain/constants/index.js +8 -7
  253. package/lib/mechain/index.d.ts +2 -2
  254. package/lib/mechain/index.js +2 -19
  255. package/lib/mechain/types/index.d.ts +2 -2
  256. package/lib/mechain/types/index.js +0 -3
  257. package/lib/proto/api.d.ts +182 -39
  258. package/lib/proto/api.js +4105 -3555
  259. package/lib/proto/tee-bundle.d.ts +156 -0
  260. package/lib/proto/tee-bundle.js +1296 -0
  261. package/lib/providers/http/index.d.ts +16 -1
  262. package/lib/providers/http/index.js +603 -576
  263. package/lib/providers/http/patch-parse5-tree.d.ts +6 -0
  264. package/lib/providers/http/patch-parse5-tree.js +34 -0
  265. package/lib/providers/http/utils.d.ts +7 -4
  266. package/lib/providers/http/utils.js +240 -317
  267. package/lib/providers/index.d.ts +1 -1
  268. package/lib/providers/index.js +5 -9
  269. package/lib/scripts/check-avs-registration.d.ts +1 -1
  270. package/lib/scripts/check-avs-registration.js +24 -25
  271. package/lib/scripts/fallbacks/crypto.d.ts +1 -0
  272. package/lib/scripts/fallbacks/crypto.js +4 -0
  273. package/lib/scripts/fallbacks/empty.d.ts +3 -0
  274. package/lib/scripts/fallbacks/empty.js +4 -0
  275. package/lib/scripts/fallbacks/gnark.d.ts +7 -0
  276. package/lib/scripts/fallbacks/gnark.js +15 -0
  277. package/lib/scripts/fallbacks/re2.d.ts +1 -0
  278. package/lib/scripts/fallbacks/re2.js +7 -0
  279. package/lib/scripts/fallbacks/snarkjs.d.ts +1 -0
  280. package/lib/scripts/fallbacks/snarkjs.js +10 -0
  281. package/lib/scripts/fallbacks/stwo.d.ts +6 -0
  282. package/lib/scripts/generate-provider-types.js +92 -73
  283. package/lib/scripts/generate-receipt.d.ts +2 -2
  284. package/lib/scripts/generate-receipt.js +94 -83
  285. package/lib/scripts/generate-toprf-keys.js +17 -16
  286. package/lib/scripts/jsc-cli-rpc.d.ts +1 -0
  287. package/lib/scripts/jsc-cli-rpc.js +35 -0
  288. package/lib/scripts/register-avs-operator.d.ts +1 -1
  289. package/lib/scripts/register-avs-operator.js +3 -7
  290. package/lib/scripts/start-server.d.ts +1 -1
  291. package/lib/scripts/start-server.js +9 -11
  292. package/lib/scripts/update-avs-metadata.d.ts +1 -1
  293. package/lib/scripts/update-avs-metadata.js +17 -19
  294. package/lib/scripts/utils.js +8 -9
  295. package/lib/scripts/whitelist-operator.d.ts +1 -1
  296. package/lib/scripts/whitelist-operator.js +13 -15
  297. package/lib/server/create-server.d.ts +3 -2
  298. package/lib/server/create-server.js +98 -85
  299. package/lib/server/handlers/claimTeeBundle.d.ts +6 -0
  300. package/lib/server/handlers/claimTeeBundle.js +232 -0
  301. package/lib/server/handlers/claimTunnel.d.ts +1 -1
  302. package/lib/server/handlers/claimTunnel.js +75 -73
  303. package/lib/server/handlers/completeClaimOnChain.d.ts +1 -1
  304. package/lib/server/handlers/completeClaimOnChain.js +27 -26
  305. package/lib/server/handlers/createClaimOnChain.d.ts +1 -1
  306. package/lib/server/handlers/createClaimOnChain.js +30 -29
  307. package/lib/server/handlers/createTaskOnMechain.d.ts +1 -1
  308. package/lib/server/handlers/createTaskOnMechain.js +54 -49
  309. package/lib/server/handlers/createTunnel.d.ts +1 -1
  310. package/lib/server/handlers/createTunnel.js +91 -94
  311. package/lib/server/handlers/disconnectTunnel.d.ts +1 -1
  312. package/lib/server/handlers/disconnectTunnel.js +6 -8
  313. package/lib/server/handlers/fetchCertificateBytes.d.ts +2 -0
  314. package/lib/server/handlers/fetchCertificateBytes.js +57 -0
  315. package/lib/server/handlers/index.d.ts +1 -1
  316. package/lib/server/handlers/index.js +24 -21
  317. package/lib/server/handlers/init.d.ts +1 -1
  318. package/lib/server/handlers/init.js +31 -34
  319. package/lib/server/handlers/toprf.d.ts +1 -1
  320. package/lib/server/handlers/toprf.js +17 -19
  321. package/lib/server/index.d.ts +4 -4
  322. package/lib/server/index.js +4 -21
  323. package/lib/server/socket.d.ts +7 -7
  324. package/lib/server/socket.js +104 -106
  325. package/lib/server/tunnels/make-tcp-tunnel.d.ts +5 -3
  326. package/lib/server/tunnels/make-tcp-tunnel.js +189 -162
  327. package/lib/server/utils/apm.d.ts +1 -1
  328. package/lib/server/utils/apm.js +26 -40
  329. package/lib/server/utils/assert-valid-claim-request.d.ts +6 -5
  330. package/lib/server/utils/assert-valid-claim-request.js +339 -185
  331. package/lib/server/utils/config-env.js +4 -7
  332. package/lib/server/utils/dns.js +18 -16
  333. package/lib/server/utils/gcp-attestation.d.ts +17 -0
  334. package/lib/server/utils/gcp-attestation.js +237 -0
  335. package/lib/server/utils/generics.d.ts +3 -3
  336. package/lib/server/utils/generics.js +37 -51
  337. package/lib/server/utils/iso.js +255 -256
  338. package/lib/server/utils/keep-alive.d.ts +2 -2
  339. package/lib/server/utils/keep-alive.js +36 -40
  340. package/lib/server/utils/nitro-attestation.d.ts +33 -0
  341. package/lib/server/utils/nitro-attestation.js +249 -0
  342. package/lib/server/utils/oprf-raw.d.ts +21 -0
  343. package/lib/server/utils/oprf-raw.js +61 -0
  344. package/lib/server/utils/process-handshake.d.ts +3 -3
  345. package/lib/server/utils/process-handshake.js +217 -175
  346. package/lib/server/utils/proxy-session.d.ts +1 -0
  347. package/lib/server/utils/proxy-session.js +4 -0
  348. package/lib/server/utils/tee-oprf-mpc-verification.d.ts +16 -0
  349. package/lib/server/utils/tee-oprf-mpc-verification.js +86 -0
  350. package/lib/server/utils/tee-oprf-verification.d.ts +24 -0
  351. package/lib/server/utils/tee-oprf-verification.js +151 -0
  352. package/lib/server/utils/tee-transcript-reconstruction.d.ts +24 -0
  353. package/lib/server/utils/tee-transcript-reconstruction.js +140 -0
  354. package/lib/server/utils/tee-verification.d.ts +28 -0
  355. package/lib/server/utils/tee-verification.js +358 -0
  356. package/lib/{utils → server/utils}/validation.d.ts +1 -1
  357. package/lib/server/utils/validation.js +45 -0
  358. package/lib/types/bgp.js +0 -3
  359. package/lib/types/claims.d.ts +7 -10
  360. package/lib/types/claims.js +0 -3
  361. package/lib/types/client.d.ts +5 -5
  362. package/lib/types/client.js +0 -3
  363. package/lib/types/general.d.ts +30 -4
  364. package/lib/types/general.js +0 -3
  365. package/lib/types/handlers.d.ts +3 -3
  366. package/lib/types/handlers.js +0 -3
  367. package/lib/types/index.d.ts +10 -10
  368. package/lib/types/index.js +10 -27
  369. package/lib/types/providers.d.ts +15 -4
  370. package/lib/types/providers.gen.d.ts +15 -1
  371. package/lib/types/providers.gen.js +15 -13
  372. package/lib/types/providers.js +0 -3
  373. package/lib/types/rpc.d.ts +2 -2
  374. package/lib/types/rpc.js +0 -3
  375. package/lib/types/signatures.js +0 -3
  376. package/lib/types/tunnel.d.ts +2 -2
  377. package/lib/types/tunnel.js +0 -3
  378. package/lib/types/zk.d.ts +17 -2
  379. package/lib/types/zk.js +0 -3
  380. package/lib/utils/auth.d.ts +2 -1
  381. package/lib/utils/auth.js +66 -59
  382. package/lib/utils/b64-json.js +13 -19
  383. package/lib/utils/bgp-listener.d.ts +1 -1
  384. package/lib/utils/bgp-listener.js +111 -114
  385. package/lib/utils/claims.d.ts +3 -3
  386. package/lib/utils/claims.js +78 -101
  387. package/lib/utils/env.js +15 -16
  388. package/lib/utils/error.d.ts +6 -7
  389. package/lib/utils/error.js +50 -39
  390. package/lib/utils/generics.d.ts +20 -13
  391. package/lib/utils/generics.js +221 -297
  392. package/lib/utils/http-parser.d.ts +1 -1
  393. package/lib/utils/http-parser.js +186 -237
  394. package/lib/utils/index.browser.d.ts +13 -0
  395. package/lib/utils/index.d.ts +14 -12
  396. package/lib/utils/index.js +14 -29
  397. package/lib/utils/logger.browser.d.ts +14 -0
  398. package/lib/utils/logger.d.ts +1 -1
  399. package/lib/utils/logger.js +69 -87
  400. package/lib/utils/prepare-packets.d.ts +3 -3
  401. package/lib/utils/prepare-packets.js +66 -58
  402. package/lib/utils/redactions.d.ts +20 -1
  403. package/lib/utils/redactions.js +116 -129
  404. package/lib/utils/retries.d.ts +1 -1
  405. package/lib/utils/retries.js +24 -26
  406. package/lib/utils/signatures/eth.d.ts +1 -1
  407. package/lib/utils/signatures/eth.js +28 -30
  408. package/lib/utils/signatures/index.d.ts +3 -3
  409. package/lib/utils/signatures/index.js +11 -10
  410. package/lib/utils/socket-base.d.ts +6 -5
  411. package/lib/utils/socket-base.js +89 -88
  412. package/lib/utils/tls-imports.d.ts +21 -0
  413. package/lib/utils/tls-imports.js +71 -0
  414. package/lib/utils/tls.d.ts +1 -1
  415. package/lib/utils/tls.js +54 -28
  416. package/lib/utils/ws.d.ts +1 -6
  417. package/lib/utils/ws.js +17 -33
  418. package/lib/utils/zk.d.ts +28 -12
  419. package/lib/utils/zk.js +587 -406
  420. package/package.json +79 -60
  421. package/lib/avs/tests/test.operator.d.ts +0 -11
  422. package/lib/avs/tests/test.operator.js +0 -313
  423. package/lib/avs/tests/utils.d.ts +0 -2
  424. package/lib/avs/tests/utils.js +0 -50
  425. package/lib/scripts/verify-root-ca.d.ts +0 -1
  426. package/lib/scripts/verify-root-ca.js +0 -51
  427. package/lib/tests/describe-with-server.d.ts +0 -20
  428. package/lib/tests/describe-with-server.js +0 -64
  429. package/lib/tests/mock-provider-server.d.ts +0 -13
  430. package/lib/tests/mock-provider-server.js +0 -65
  431. package/lib/tests/mocks.d.ts +0 -4
  432. package/lib/tests/mocks.js +0 -23
  433. package/lib/tests/test.auth.js +0 -75
  434. package/lib/tests/test.bgp-listener.js +0 -169
  435. package/lib/tests/test.claim-creation.js +0 -280
  436. package/lib/tests/test.http-parser.d.ts +0 -1
  437. package/lib/tests/test.http-parser.js +0 -120
  438. package/lib/tests/test.http-provider-utils.js +0 -2416
  439. package/lib/tests/test.http-provider.js +0 -114
  440. package/lib/tests/test.rpc-communication.d.ts +0 -1
  441. package/lib/tests/test.rpc-communication.js +0 -64
  442. package/lib/tests/test.rpc-tunnel.d.ts +0 -1
  443. package/lib/tests/test.rpc-tunnel.js +0 -172
  444. package/lib/tests/test.signatures.d.ts +0 -1
  445. package/lib/tests/test.signatures.js +0 -24
  446. package/lib/tests/test.tcp-tunnel.d.ts +0 -1
  447. package/lib/tests/test.tcp-tunnel.js +0 -64
  448. package/lib/tests/test.zk.d.ts +0 -1
  449. package/lib/tests/test.zk.js +0 -337
  450. package/lib/tests/utils.d.ts +0 -18
  451. package/lib/tests/utils.js +0 -64
  452. package/lib/utils/atomic-operations.d.ts +0 -24
  453. package/lib/utils/atomic-operations.js +0 -65
  454. package/lib/utils/benchmark.d.ts +0 -1
  455. package/lib/utils/benchmark.js +0 -70
  456. package/lib/utils/connection-state-machine.d.ts +0 -43
  457. package/lib/utils/connection-state-machine.js +0 -129
  458. package/lib/utils/resource-monitor.d.ts +0 -61
  459. package/lib/utils/resource-monitor.js +0 -107
  460. package/lib/utils/validation.js +0 -46
  461. package/lib/window-rpc/index.d.ts +0 -3
  462. package/lib/window-rpc/index.js +0 -20
  463. package/lib/window-rpc/setup-window-rpc.d.ts +0 -5
  464. package/lib/window-rpc/setup-window-rpc.js +0 -291
  465. package/lib/window-rpc/types.js +0 -3
  466. package/lib/window-rpc/utils.d.ts +0 -14
  467. package/lib/window-rpc/utils.js +0 -102
  468. package/lib/window-rpc/window-rpc-zk.d.ts +0 -15
  469. package/lib/window-rpc/window-rpc-zk.js +0 -85
  470. /package/lib/{tests/test.auth.d.ts → browser/external-rpc/jsc-polyfills/2.d.ts} +0 -0
  471. /package/lib/{tests/test.bgp-listener.d.ts → external-rpc/jsc-polyfills/2.d.ts} +0 -0
  472. /package/lib/{tests/test.claim-creation.d.ts → scripts/build-browser.d.ts} +0 -0
  473. /package/lib/{tests/test.http-provider-utils.d.ts → scripts/build-jsc.d.ts} +0 -0
  474. /package/lib/{tests/test.http-provider.d.ts → scripts/build-lib.d.ts} +0 -0
@@ -1,29 +1,28 @@
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");
1
+ import "src/server/utils/config-env";
2
+ import { getContracts } from "../avs/utils/contracts.js";
6
3
  async function main() {
7
- const { wallet, contract } = (0, contracts_1.getContracts)();
8
- const meta = await contract.taskCreationMetadata();
9
- console.log('Metadata parameters:', `maxTaskCreationDelayS: ${meta.maxTaskCreationDelayS}`, `minSignaturesPerTask: ${meta.minSignaturesPerTask}`, `maxTaskLifetimeS: ${meta.maxTaskLifetimeS}`);
10
- console.log(`Checking registration for operator ${wallet.address}`);
11
- const operatorAddr = wallet.address;
12
- const metadata = await contract.getMetadataForOperator(operatorAddr)
13
- .catch(err => {
14
- if (err.message.includes('Operator not found')) {
15
- return;
16
- }
17
- throw err;
18
- });
19
- if (!metadata) {
20
- console.log('Operator not registered');
21
- const isWhitelisted = await contract
22
- .isOperatorWhitelisted(operatorAddr);
23
- console.log(`Is whitelisted: ${isWhitelisted}`);
24
- return;
4
+ const { wallet, contract } = getContracts();
5
+ const meta = await contract.taskCreationMetadata();
6
+ console.log(
7
+ "Metadata parameters:",
8
+ `maxTaskCreationDelayS: ${meta.maxTaskCreationDelayS}`,
9
+ `minSignaturesPerTask: ${meta.minSignaturesPerTask}`,
10
+ `maxTaskLifetimeS: ${meta.maxTaskLifetimeS}`
11
+ );
12
+ console.log(`Checking registration for operator ${wallet.address}`);
13
+ const operatorAddr = wallet.address;
14
+ const metadata = await contract.getMetadataForOperator(operatorAddr).catch((err) => {
15
+ if (err.message.includes("Operator not found")) {
16
+ return;
25
17
  }
26
- console.log('Operator registered, URL:', metadata.url);
18
+ throw err;
19
+ });
20
+ if (!metadata) {
21
+ console.log("Operator not registered");
22
+ const isWhitelisted = await contract.isOperatorWhitelisted(operatorAddr);
23
+ console.log(`Is whitelisted: ${isWhitelisted}`);
24
+ return;
25
+ }
26
+ console.log("Operator registered, URL:", metadata.url);
27
27
  }
28
28
  void main();
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2stYXZzLXJlZ2lzdHJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL2NoZWNrLWF2cy1yZWdpc3RyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzREFBc0Q7QUFDdEQsdUNBQW9DO0FBQ3BDLHVEQUFzRDtBQUd0RCxLQUFLLFVBQVUsSUFBSTtJQUNsQixNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUEsd0JBQVksR0FBRSxDQUFBO0lBRTNDLE1BQU0sSUFBSSxHQUFHLE1BQU0sUUFBUSxDQUFDLG9CQUFvQixFQUFFLENBQUE7SUFDbEQsT0FBTyxDQUFDLEdBQUcsQ0FDVixzQkFBc0IsRUFDdEIsMEJBQTBCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxFQUN0RCx5QkFBeUIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQ3BELHFCQUFxQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FDNUMsQ0FBQTtJQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMsc0NBQXNDLE1BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFBO0lBQ3BFLE1BQU0sWUFBWSxHQUFHLE1BQU8sQ0FBQyxPQUFPLENBQUE7SUFDcEMsTUFBTSxRQUFRLEdBQUcsTUFBTSxRQUFRLENBQUMsc0JBQXNCLENBQUMsWUFBWSxDQUFDO1NBQ2xFLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUNaLElBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsRUFBRSxDQUFDO1lBQy9DLE9BQU07UUFDUCxDQUFDO1FBRUQsTUFBTSxHQUFHLENBQUE7SUFDVixDQUFDLENBQUMsQ0FBQTtJQUNILElBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUMsQ0FBQTtRQUN0QyxNQUFNLGFBQWEsR0FBRyxNQUFNLFFBQVE7YUFDbEMscUJBQXFCLENBQUMsWUFBWSxDQUFDLENBQUE7UUFDckMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsYUFBYSxFQUFFLENBQUMsQ0FBQTtRQUMvQyxPQUFNO0lBQ1AsQ0FBQztJQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMsMkJBQTJCLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0FBQ3ZELENBQUM7QUFFRCxLQUFLLElBQUksRUFBRSxDQUFBIn0=
@@ -0,0 +1 @@
1
+ export declare const webcrypto: Crypto;
@@ -0,0 +1,4 @@
1
+ const webcrypto = globalThis.crypto;
2
+ export {
3
+ webcrypto
4
+ };
@@ -0,0 +1,3 @@
1
+ declare const _default: {};
2
+ export default _default;
3
+ export {};
@@ -0,0 +1,4 @@
1
+ var empty_default = {};
2
+ export {
3
+ empty_default as default
4
+ };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Browser fallback for gnark - gnark requires native code (koffi) and cannot run in browser
3
+ */
4
+ import type { EncryptionAlgorithm, MakeZKOperatorOpts, ZKOperator, OPRFOperator } from '@reclaimprotocol/zk-symmetric-crypto';
5
+ export declare function makeGnarkZkOperator(opts: MakeZKOperatorOpts<object>): ZKOperator;
6
+ export declare function makeGnarkOPRFOperator(algorithm: EncryptionAlgorithm, fetcher: unknown): OPRFOperator;
7
+ export declare function initGnark(): Promise<void>;
@@ -0,0 +1,15 @@
1
+ const GNARK_ERROR = "gnark requires native code and cannot run in browser. Use snarkjs or stwo instead.";
2
+ function makeGnarkZkOperator(opts) {
3
+ throw new Error(GNARK_ERROR);
4
+ }
5
+ function makeGnarkOPRFOperator(algorithm, fetcher) {
6
+ throw new Error(GNARK_ERROR);
7
+ }
8
+ async function initGnark() {
9
+ throw new Error(GNARK_ERROR);
10
+ }
11
+ export {
12
+ initGnark,
13
+ makeGnarkOPRFOperator,
14
+ makeGnarkZkOperator
15
+ };
@@ -0,0 +1 @@
1
+ export default function regularRegex(pattern: string, flags?: string): RegExp;
@@ -0,0 +1,7 @@
1
+ function regularRegex(pattern, flags) {
2
+ flags = flags?.replace("u", "");
3
+ return new RegExp(pattern, flags);
4
+ }
5
+ export {
6
+ regularRegex as default
7
+ };
@@ -0,0 +1 @@
1
+ export declare const wtns: any, groth16: any, zkey: any;
@@ -0,0 +1,10 @@
1
+ const {
2
+ wtns,
3
+ groth16,
4
+ zkey
5
+ } = window["snarkjs"] || {};
6
+ export {
7
+ groth16,
8
+ wtns,
9
+ zkey
10
+ };
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Browser fallback for stwo - loads from window.s2circuits
3
+ * The s2circuits.js script must be loaded before this runs
4
+ */
5
+ import type { MakeZKOperatorOpts, ZKOperator } from '@reclaimprotocol/zk-symmetric-crypto';
6
+ export declare function makeStwoZkOperator({ algorithm, fetcher, }: MakeZKOperatorOpts<object>): ZKOperator;
@@ -1,82 +1,101 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateTsFromYamlSchema = generateTsFromYamlSchema;
4
- const promises_1 = require("fs/promises");
5
- const json_schema_to_typescript_1 = require("json-schema-to-typescript");
6
- const yaml_1 = require("yaml");
7
- const PROVIDER_SCHEMAS_PATH = './provider-schemas';
8
- const GEN_TS_FILENAME = './src/types/providers.gen.ts';
9
- const BinaryDataType = 'BinaryData';
1
+ import { readdir, readFile, writeFile } from "fs/promises";
2
+ import { compile } from "json-schema-to-typescript";
3
+ import { parse } from "yaml";
4
+ const PROVIDER_SCHEMAS_PATH = "./provider-schemas";
5
+ const GEN_TS_FILENAME = "./src/types/providers.gen.ts";
6
+ const BinaryDataType = "BinaryData";
10
7
  async function main() {
11
- const folders = await findAllProviderFolders();
12
- console.log(`Generating for ${folders.length} provider folders`);
13
- let ts = '/* eslint-disable */\n/* Generated file. Do not edit */';
14
- // json-schema nor ajv support uint8array formats,
15
- // so we define a custom type for binary data
16
- // and use it in the generated types
17
- ts += `\n\ntype ${BinaryDataType} = Uint8Array | string\n`;
18
- // type map of each provider to its parameters and secret parameters
19
- let providerTypeMap = '\nexport interface ProvidersConfig {\n';
20
- // schema map of each provider to its parameters and secret parameters
21
- // storing the JSON schema in the map
22
- // lets us validate the parameters and secret parameters
23
- let providerSchemaMap = '\nexport const PROVIDER_SCHEMAS = {\n';
24
- for (const folder of folders) {
25
- const { schemaTitle: paramsSchemaTitle, ts: paramsSchemaTs, jsonTitle: paramsJsonTitle } = await generateTsFromYamlSchema(folder, 'parameters');
26
- const { schemaTitle: secretParamsSchemaTitle, ts: secretParamsSchemaTs, jsonTitle: secretParamsJsonTitle } = await generateTsFromYamlSchema(folder, 'secret-parameters');
27
- ts += `\n${paramsSchemaTs}\n${secretParamsSchemaTs}`;
28
- providerTypeMap += ` ${folder}: {\n`;
29
- providerTypeMap += ` parameters: ${paramsSchemaTitle}\n`;
30
- providerTypeMap += ` secretParameters: ${secretParamsSchemaTitle}\n`;
31
- providerTypeMap += ' }\n';
32
- providerSchemaMap += ` ${folder}: {\n`;
33
- providerSchemaMap += ` parameters: ${paramsJsonTitle},\n`;
34
- providerSchemaMap += ` secretParameters: ${secretParamsJsonTitle}\n`;
35
- providerSchemaMap += ' },\n';
36
- }
37
- providerTypeMap += '}\n';
38
- providerSchemaMap += '}\n';
39
- ts += providerTypeMap;
40
- ts += providerSchemaMap;
41
- await (0, promises_1.writeFile)(GEN_TS_FILENAME, ts);
42
- console.log(`Wrote to ${GEN_TS_FILENAME}`);
8
+ const folders = await findAllProviderFolders();
9
+ console.log(`Generating for ${folders.length} provider folders`);
10
+ let ts = "/* eslint-disable */\n/* Generated file. Do not edit */";
11
+ ts += `
12
+
13
+ type ${BinaryDataType} = Uint8Array | string
14
+ `;
15
+ let providerTypeMap = "\nexport interface ProvidersConfig {\n";
16
+ let providerSchemaMap = "\nexport const PROVIDER_SCHEMAS = {\n";
17
+ for (const folder of folders) {
18
+ const {
19
+ schemaTitle: paramsSchemaTitle,
20
+ ts: paramsSchemaTs,
21
+ jsonTitle: paramsJsonTitle
22
+ } = await generateTsFromYamlSchema(folder, "parameters");
23
+ const {
24
+ schemaTitle: secretParamsSchemaTitle,
25
+ ts: secretParamsSchemaTs,
26
+ jsonTitle: secretParamsJsonTitle
27
+ } = await generateTsFromYamlSchema(
28
+ folder,
29
+ "secret-parameters"
30
+ );
31
+ ts += `
32
+ ${paramsSchemaTs}
33
+ ${secretParamsSchemaTs}`;
34
+ providerTypeMap += ` ${folder}: {
35
+ `;
36
+ providerTypeMap += ` parameters: ${paramsSchemaTitle}
37
+ `;
38
+ providerTypeMap += ` secretParameters: ${secretParamsSchemaTitle}
39
+ `;
40
+ providerTypeMap += " }\n";
41
+ providerSchemaMap += ` ${folder}: {
42
+ `;
43
+ providerSchemaMap += ` parameters: ${paramsJsonTitle},
44
+ `;
45
+ providerSchemaMap += ` secretParameters: ${secretParamsJsonTitle}
46
+ `;
47
+ providerSchemaMap += " },\n";
48
+ }
49
+ providerTypeMap += "}\n";
50
+ providerSchemaMap += "}\n";
51
+ ts += providerTypeMap;
52
+ ts += providerSchemaMap;
53
+ await writeFile(GEN_TS_FILENAME, ts);
54
+ console.log(`Wrote to ${GEN_TS_FILENAME}`);
43
55
  }
44
56
  async function getJsonSchemaForProvider(name, type) {
45
- const paramsYaml = await (0, promises_1.readFile)(`${PROVIDER_SCHEMAS_PATH}/${name}/${type}.yaml`, { encoding: 'utf-8' });
46
- const paramsJson = (0, yaml_1.parse)(paramsYaml);
47
- return paramsJson;
57
+ const paramsYaml = await readFile(
58
+ `${PROVIDER_SCHEMAS_PATH}/${name}/${type}.yaml`,
59
+ { encoding: "utf-8" }
60
+ );
61
+ const paramsJson = parse(paramsYaml);
62
+ return paramsJson;
48
63
  }
49
64
  async function generateTsFromYamlSchema(name, type) {
50
- const paramsJson = await getJsonSchemaForProvider(name, type);
51
- let paramsSchemaTs = await (0, json_schema_to_typescript_1.compile)(paramsJson, '', {
52
- additionalProperties: false,
53
- bannerComment: '',
54
- ignoreMinAndMaxItems: true,
55
- declareExternallyReferenced: false,
56
- customName({ type, format }) {
57
- if (type === 'string' && format === 'binary') {
58
- return BinaryDataType;
59
- }
60
- return undefined;
61
- },
62
- });
63
- const jsonTitle = `${paramsJson.title}Json`;
64
- paramsSchemaTs += `\nexport const ${jsonTitle} = ${JSON.stringify(paramsJson)}`;
65
- return {
66
- ts: paramsSchemaTs,
67
- schemaTitle: paramsJson.title,
68
- jsonTitle
69
- };
65
+ const paramsJson = await getJsonSchemaForProvider(name, type);
66
+ let paramsSchemaTs = await compile(
67
+ paramsJson,
68
+ "",
69
+ {
70
+ additionalProperties: false,
71
+ bannerComment: "",
72
+ ignoreMinAndMaxItems: true,
73
+ declareExternallyReferenced: false,
74
+ customName({ type: type2, format }) {
75
+ if (type2 === "string" && format === "binary") {
76
+ return BinaryDataType;
77
+ }
78
+ return void 0;
79
+ }
80
+ }
81
+ );
82
+ const jsonTitle = `${paramsJson.title}Json`;
83
+ paramsSchemaTs += `
84
+ export const ${jsonTitle} = ${JSON.stringify(paramsJson)}`;
85
+ return {
86
+ ts: paramsSchemaTs,
87
+ schemaTitle: paramsJson.title,
88
+ jsonTitle
89
+ };
70
90
  }
71
- /**
72
- * Find all provider folders in the provider-schemas directory
73
- * @returns {Promise<string[]>} List of provider folder names
74
- */
75
91
  async function findAllProviderFolders() {
76
- const providerFolders = await (0, promises_1.readdir)(PROVIDER_SCHEMAS_PATH, { withFileTypes: true });
77
- return providerFolders
78
- .filter(p => p.isDirectory())
79
- .map(p => p.name);
92
+ const providerFolders = await readdir(
93
+ PROVIDER_SCHEMAS_PATH,
94
+ { withFileTypes: true }
95
+ );
96
+ return providerFolders.filter((p) => p.isDirectory()).map((p) => p.name);
80
97
  }
81
98
  void main();
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtcHJvdmlkZXItdHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NyaXB0cy9nZW5lcmF0ZS1wcm92aWRlci10eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQXlFQSw0REErQkM7QUF4R0QsMENBQTBEO0FBQzFELHlFQUFtRDtBQUNuRCwrQkFBNEI7QUFFNUIsTUFBTSxxQkFBcUIsR0FBRyxvQkFBb0IsQ0FBQTtBQUNsRCxNQUFNLGVBQWUsR0FBRyw4QkFBOEIsQ0FBQTtBQUN0RCxNQUFNLGNBQWMsR0FBRyxZQUFZLENBQUE7QUFFbkMsS0FBSyxVQUFVLElBQUk7SUFDbEIsTUFBTSxPQUFPLEdBQUcsTUFBTSxzQkFBc0IsRUFBRSxDQUFBO0lBRTlDLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLE9BQU8sQ0FBQyxNQUFNLG1CQUFtQixDQUFDLENBQUE7SUFFaEUsSUFBSSxFQUFFLEdBQUcseURBQXlELENBQUE7SUFDbEUsa0RBQWtEO0lBQ2xELDZDQUE2QztJQUM3QyxvQ0FBb0M7SUFDcEMsRUFBRSxJQUFJLFlBQVksY0FBYywwQkFBMEIsQ0FBQTtJQUMxRCxvRUFBb0U7SUFDcEUsSUFBSSxlQUFlLEdBQUcsd0NBQXdDLENBQUE7SUFDOUQsc0VBQXNFO0lBQ3RFLHFDQUFxQztJQUNyQyx3REFBd0Q7SUFDeEQsSUFBSSxpQkFBaUIsR0FBRyx1Q0FBdUMsQ0FBQTtJQUUvRCxLQUFJLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQzdCLE1BQU0sRUFDTCxXQUFXLEVBQUUsaUJBQWlCLEVBQzlCLEVBQUUsRUFBRSxjQUFjLEVBQ2xCLFNBQVMsRUFBRSxlQUFlLEVBQzFCLEdBQUcsTUFBTSx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLENBQUE7UUFDeEQsTUFBTSxFQUNMLFdBQVcsRUFBRSx1QkFBdUIsRUFDcEMsRUFBRSxFQUFFLG9CQUFvQixFQUN4QixTQUFTLEVBQUUs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
99
+ export {
100
+ generateTsFromYamlSchema
101
+ };
@@ -1,5 +1,5 @@
1
- import '../server/utils/config-env';
2
- import { ProviderName, ProviderParams, ProviderSecretParams } from '..';
1
+ import '#src/server/utils/config-env.ts';
2
+ import type { ProviderName, ProviderParams, ProviderSecretParams } from '#src/index.ts';
3
3
  type ProviderReceiptGenerationParams<P extends ProviderName> = {
4
4
  name: P;
5
5
  params: ProviderParams<P>;
@@ -1,90 +1,101 @@
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';
1
+ import "../server/utils/config-env.js";
2
+ import { setCryptoImplementation } from "@reclaimprotocol/tls";
3
+ import { webcryptoCrypto } from "@reclaimprotocol/tls/webcrypto";
4
+ import { readFile } from "fs/promises";
5
+ import {
6
+ API_SERVER_PORT,
7
+ createClaimOnAttestor,
8
+ getAttestorClientFromPool,
9
+ getTranscriptString,
10
+ logger,
11
+ providers,
12
+ WS_PATHNAME
13
+ } from "../index.js";
14
+ import { getCliArgument } from "../scripts/utils.js";
15
+ import { createServer, decryptTranscript } from "../server/index.js";
16
+ import { assertValidateProviderParams } from "../server/utils/validation.js";
17
+ import { getEnvVariable } from "../utils/env.js";
18
+ setCryptoImplementation(webcryptoCrypto);
19
+ const DEFAULT_ATTESTOR_HOST_PORT = "wss://eu.attestor.reclaimprotocol.org/ws";
20
+ const PRIVATE_KEY_HEX = getEnvVariable("PRIVATE_KEY_HEX") || "0x0123788edad59d7c013cdc85e4372f350f828e2cec62d9a2de4560e69aec7f89";
16
21
  let server;
17
22
  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}"`);
23
+ const paramsJson = receiptParams ?? await getInputParameters();
24
+ if (!(paramsJson.name in providers)) {
25
+ throw new Error(`Unknown provider "${paramsJson.name}"`);
26
+ }
27
+ assertValidateProviderParams(paramsJson.name, paramsJson.params);
28
+ let attestorHostPort = getCliArgument("attestor") || DEFAULT_ATTESTOR_HOST_PORT;
29
+ if (attestorHostPort === "local") {
30
+ console.log("starting local attestor server...");
31
+ server = await createServer();
32
+ attestorHostPort = `ws://localhost:${API_SERVER_PORT}${WS_PATHNAME}`;
33
+ }
34
+ globalThis.ATTESTOR_BASE_URL = attestorHostPort.replace("ws://", "http://").replace("wss://", "https://");
35
+ const zkEngine = getCliArgument("zk") === "gnark" ? "gnark" : "stwo";
36
+ const { request, error, claim } = await createClaimOnAttestor({
37
+ name: paramsJson.name,
38
+ secretParams: paramsJson.secretParams,
39
+ params: paramsJson.params,
40
+ ownerPrivateKey: PRIVATE_KEY_HEX,
41
+ client: { url: attestorHostPort },
42
+ logger,
43
+ zkEngine
44
+ });
45
+ if (error) {
46
+ console.error("claim creation failed:", error);
47
+ } else {
48
+ const ctx = claim?.context ? JSON.parse(claim.context) : {};
49
+ console.log(`receipt is valid for ${paramsJson.name} provider`);
50
+ if (ctx.extractedParameters) {
51
+ console.log("extracted params:", ctx.extractedParameters);
22
52
  }
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();
53
+ }
54
+ if (!request) {
55
+ throw new Error("Missing request in claim");
56
+ }
57
+ const decTranscript = await decryptTranscript(
58
+ request?.transcript,
59
+ logger,
60
+ zkEngine,
61
+ request?.fixedServerIV,
62
+ request?.fixedClientIV
63
+ );
64
+ const transcriptStr = getTranscriptString(decTranscript);
65
+ console.log("receipt:\n", transcriptStr);
66
+ console.log("claim:\n", claim);
67
+ const client = getAttestorClientFromPool(attestorHostPort);
68
+ await client.terminateConnection();
58
69
  }
59
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
60
70
  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
- };
71
+ const paramsJsonFile = getCliArgument("json");
72
+ if (!paramsJsonFile) {
73
+ const name = getCliArgument("name");
74
+ const paramsStr = getCliArgument("params");
75
+ const secretParamsStr = getCliArgument("secretParams");
76
+ if (!name || !paramsStr || !secretParamsStr) {
77
+ throw new Error("Either provide --json argument for parameters JSON or provide separately with --name, --params & --secretParams");
74
78
  }
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
- });
79
+ return {
80
+ name,
81
+ params: JSON.parse(paramsStr),
82
+ secretParams: JSON.parse(secretParamsStr)
83
+ };
84
+ }
85
+ let fileContents = await readFile(paramsJsonFile, "utf8");
86
+ for (const variable in process.env) {
87
+ fileContents = fileContents.replace(
88
+ `{{${variable}}}`,
89
+ process.env[variable]
90
+ );
91
+ }
92
+ return JSON.parse(fileContents);
89
93
  }
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtcmVjZWlwdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL2dlbmVyYXRlLXJlY2VpcHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFrQ0Esb0JBc0RDO0FBeEZELDBDQUFzQztBQUN0Qyw2Q0FBa0Q7QUFDbEQsdUNBQTREO0FBQzVELHFDQUF3RDtBQUN4RCx1Q0FBOEM7QUFFOUMsdUNBQW9DO0FBQ3BDLDBCQVdXO0FBUVgsZ0RBQWdEO0FBQ2hELE1BQU0sMEJBQTBCLEdBQUcsdUNBQXVDLENBQUE7QUFDMUUsTUFBTSxlQUFlLEdBQUcsSUFBQSxvQkFBYyxFQUFDLGlCQUFpQixDQUFDO0lBQ3hELG1CQUFtQjtPQUNoQixvRUFBb0UsQ0FBQTtBQUV4RSxJQUFJLE1BQW1DLENBQUE7QUFFaEMsS0FBSyxVQUFVLElBQUksQ0FDekIsYUFBa0Q7O0lBRWxELE1BQU0sVUFBVSxHQUFHLGFBQWEsYUFBYixhQUFhLGNBQWIsYUFBYSxHQUFJLENBQUMsTUFBTSxrQkFBa0IsRUFBRSxDQUFDLENBQUE7SUFDaEUsSUFBRyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksSUFBSSxhQUFTLENBQUMsRUFBRSxDQUFDO1FBQ3BDLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLFVBQVUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFBO0lBQ3pELENBQUM7SUFFRCxJQUFBLG9DQUE0QixFQUFTLFVBQVUsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBRXhFLElBQUksZ0JBQWdCLEdBQUcsSUFBQSxzQkFBYyxFQUFDLFVBQVUsQ0FBQztXQUN2QywwQkFBMEIsQ0FBQTtJQUNwQyxJQUFHLGdCQUFnQixLQUFLLE9BQU8sRUFBRSxDQUFDO1FBQ2pDLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUNBQW1DLENBQUMsQ0FBQTtRQUNoRCxNQUFNLEdBQUcsTUFBTSxJQUFBLHFCQUFZLEdBQUUsQ0FBQTtRQUM3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
94
+ main().catch((err) => {
95
+ console.error("error in receipt gen", err);
96
+ }).finally(() => {
97
+ server?.close();
98
+ });
99
+ export {
100
+ main
101
+ };
@@ -1,23 +1,24 @@
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';
1
+ import { hexlify } from "ethers";
2
+ import { logger, makeDefaultOPRFOperator } from "../utils/index.js";
3
+ const ENGINE = "gnark";
6
4
  const TOTAL_KEYS = 10;
7
5
  const THRESHOLD = 1;
8
6
  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
- }
7
+ const op = makeDefaultOPRFOperator("chacha20", ENGINE, logger);
8
+ const {
9
+ publicKey,
10
+ privateKey,
11
+ shares
12
+ } = await op.generateThresholdKeys(TOTAL_KEYS, THRESHOLD);
13
+ logEnvValue("TOPRF_PUBLIC_KEY", publicKey);
14
+ logEnvValue("TOPRF_PRIVATE_KEY", privateKey);
15
+ for (const [i, share] of shares.entries()) {
16
+ console.log(`# Share ${i}`);
17
+ logEnvValue("TOPRF_SHARE_PUBLIC_KEY", share.publicKey);
18
+ logEnvValue("TOPRF_SHARE_PRIVATE_KEY", share.privateKey);
19
+ }
18
20
  }
19
21
  function logEnvValue(name, value) {
20
- console.log(`${name}=${ethers_1.ethers.utils.hexlify(value)}`);
22
+ console.log(`${name}=${hexlify(value)}`);
21
23
  }
22
24
  void main();
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtdG9wcmYta2V5cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL2dlbmVyYXRlLXRvcHJmLWtleXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtQ0FBK0I7QUFDL0IscUNBQTJEO0FBRTNELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQTtBQUN0QixNQUFNLFVBQVUsR0FBRyxFQUFFLENBQUE7QUFDckIsTUFBTSxTQUFTLEdBQUcsQ0FBQyxDQUFBO0FBRW5CLEtBQUssVUFBVSxJQUFJO0lBQ2xCLE1BQU0sRUFBRSxHQUFHLElBQUEsK0JBQXVCLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxjQUFNLENBQUMsQ0FBQTtJQUM5RCxNQUFNLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sR0FBRyxNQUFNLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUE7SUFDekQsV0FBVyxDQUFDLGtCQUFrQixFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBQzFDLFdBQVcsQ0FBQyxtQkFBbUIsRUFBRSxVQUFVLENBQUMsQ0FBQTtJQUU1QyxLQUFJLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7UUFDMUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUE7UUFDM0IsV0FBVyxDQUFDLHdCQUF3QixFQUFFLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUN0RCxXQUFXLENBQUMseUJBQXlCLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ3pELENBQUM7QUFDRixDQUFDO0FBRUQsU0FBUyxXQUFXLENBQUMsSUFBWSxFQUFFLEtBQWlCO0lBQ25ELE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLElBQUksZUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFBO0FBQ3RELENBQUM7QUFFRCxLQUFLLElBQUksRUFBRSxDQUFBIn0=
@@ -0,0 +1 @@
1
+ import '#src/external-rpc/jsc-polyfills/index.ts';
@@ -0,0 +1,35 @@
1
+ import "../external-rpc/jsc-polyfills/index.js";
2
+ import { setCryptoImplementation } from "@reclaimprotocol/tls";
3
+ import { pureJsCrypto } from "@reclaimprotocol/tls/purejs-crypto";
4
+ import { handleIncomingMessage } from "../external-rpc/index.js";
5
+ import { B64_JSON_REVIVER } from "../utils/b64-json.js";
6
+ function readIncomingMsg() {
7
+ const cmd2 = readline();
8
+ return JSON.parse(cmd2, B64_JSON_REVIVER);
9
+ }
10
+ setCryptoImplementation(pureJsCrypto);
11
+ print("Input base URL for attestor");
12
+ const initCmd = readIncomingMsg();
13
+ if (initCmd.type !== "init") {
14
+ throw new Error("Expected init command");
15
+ }
16
+ globalThis.RPC_CHANNEL_NAME = "cli";
17
+ globalThis.ATTESTOR_BASE_URL = initCmd.attestorBaseUrl;
18
+ const channel = {
19
+ postMessage(message) {
20
+ print(message);
21
+ }
22
+ };
23
+ globalThis[RPC_CHANNEL_NAME] = channel;
24
+ print("reading RPC messages...");
25
+ let cmd;
26
+ while (cmd = readIncomingMsg(), cmd.type !== "quit") {
27
+ if (cmd.type === "init") {
28
+ continue;
29
+ }
30
+ handleIncomingMessage(cmd);
31
+ await new Promise((resolve) => {
32
+ setTimeout(resolve, 500);
33
+ });
34
+ }
35
+ print("done");
@@ -1 +1 @@
1
- import '../server/utils/config-env';
1
+ import 'src/server/utils/config-env';
@@ -1,7 +1,3 @@
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
+ import "src/server/utils/config-env";
2
+ import { registerOperator } from "../avs/utils/register.js";
3
+ void registerOperator();
@@ -1 +1 @@
1
- import '../server/utils/config-env';
1
+ import '#src/server/utils/config-env.ts';