@unionlabs/payments 0.1.0 → 0.2.0

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 (393) hide show
  1. package/Abi/package.json +6 -0
  2. package/Attestor/package.json +6 -0
  3. package/Constants/package.json +6 -0
  4. package/Domain/package.json +6 -0
  5. package/Error/package.json +6 -0
  6. package/EvmPublicClient/package.json +6 -0
  7. package/EvmWalletClient/package.json +6 -0
  8. package/Payment/package.json +6 -0
  9. package/PaymentError/package.json +6 -0
  10. package/Prover/package.json +6 -0
  11. package/PublicClient/package.json +6 -0
  12. package/README.md +1 -0
  13. package/Schema/package.json +6 -0
  14. package/Utils/package.json +6 -0
  15. package/WalletClient/package.json +6 -0
  16. package/attestation/package.json +6 -0
  17. package/cli/commands/balance/package.json +6 -0
  18. package/cli/commands/deposit/package.json +6 -0
  19. package/cli/commands/export-verifier/package.json +6 -0
  20. package/cli/commands/generate/package.json +6 -0
  21. package/cli/commands/history/package.json +6 -0
  22. package/cli/commands/prove/package.json +6 -0
  23. package/cli/commands/redeem/package.json +6 -0
  24. package/cli/commands/update-client/package.json +6 -0
  25. package/cli/config/package.json +6 -0
  26. package/cli/package.json +6 -0
  27. package/cli/utils/package.json +6 -0
  28. package/constants/ibc-core-registry/package.json +6 -0
  29. package/constants/services/package.json +6 -0
  30. package/constants/z-asset-registry/package.json +6 -0
  31. package/dist/cjs/Abi.js +270 -0
  32. package/dist/cjs/Abi.js.map +1 -0
  33. package/dist/cjs/Attestor.js +76 -0
  34. package/dist/cjs/Attestor.js.map +1 -0
  35. package/dist/cjs/Constants.js +8 -0
  36. package/dist/cjs/Constants.js.map +1 -0
  37. package/dist/cjs/Domain.js +24 -0
  38. package/dist/cjs/Domain.js.map +1 -0
  39. package/dist/cjs/Error.js +100 -0
  40. package/dist/cjs/Error.js.map +1 -0
  41. package/dist/cjs/EvmPublicClient.js +301 -0
  42. package/dist/cjs/EvmPublicClient.js.map +1 -0
  43. package/dist/cjs/EvmWalletClient.js +670 -0
  44. package/dist/cjs/EvmWalletClient.js.map +1 -0
  45. package/dist/cjs/Payment.js +333 -0
  46. package/dist/cjs/Payment.js.map +1 -0
  47. package/dist/cjs/PaymentError.js +32 -0
  48. package/dist/cjs/PaymentError.js.map +1 -0
  49. package/dist/cjs/Prover.js +153 -0
  50. package/dist/cjs/Prover.js.map +1 -0
  51. package/dist/cjs/PublicClient.js +39 -0
  52. package/dist/cjs/PublicClient.js.map +1 -0
  53. package/dist/cjs/Schema.js +38 -0
  54. package/dist/cjs/Schema.js.map +1 -0
  55. package/dist/cjs/Utils.js +33 -0
  56. package/dist/cjs/Utils.js.map +1 -0
  57. package/dist/cjs/WalletClient.js +39 -0
  58. package/dist/cjs/WalletClient.js.map +1 -0
  59. package/dist/cjs/attestation.js +49 -0
  60. package/dist/cjs/attestation.js.map +1 -0
  61. package/dist/cjs/cli/commands/balance.js +60 -0
  62. package/dist/cjs/cli/commands/balance.js.map +1 -0
  63. package/dist/cjs/cli/commands/deposit.js +58 -0
  64. package/dist/cjs/cli/commands/deposit.js.map +1 -0
  65. package/dist/cjs/cli/commands/export-verifier.js +27 -0
  66. package/dist/cjs/cli/commands/export-verifier.js.map +1 -0
  67. package/dist/cjs/cli/commands/generate.js +41 -0
  68. package/dist/cjs/cli/commands/generate.js.map +1 -0
  69. package/dist/cjs/cli/commands/history.js +59 -0
  70. package/dist/cjs/cli/commands/history.js.map +1 -0
  71. package/dist/cjs/cli/commands/prove.js +82 -0
  72. package/dist/cjs/cli/commands/prove.js.map +1 -0
  73. package/dist/cjs/cli/commands/redeem.js +152 -0
  74. package/dist/cjs/cli/commands/redeem.js.map +1 -0
  75. package/dist/cjs/cli/commands/update-client.js +62 -0
  76. package/dist/cjs/cli/commands/update-client.js.map +1 -0
  77. package/dist/cjs/cli/config.js +32 -0
  78. package/dist/cjs/cli/config.js.map +1 -0
  79. package/dist/cjs/cli/utils.js +108 -0
  80. package/dist/cjs/cli/utils.js.map +1 -0
  81. package/dist/cjs/cli.js +24 -0
  82. package/dist/cjs/cli.js.map +1 -0
  83. package/dist/cjs/constants/ibc-core-registry.js +30 -0
  84. package/dist/cjs/constants/ibc-core-registry.js.map +1 -0
  85. package/dist/cjs/constants/services.js +9 -0
  86. package/dist/cjs/constants/services.js.map +1 -0
  87. package/dist/cjs/constants/z-asset-registry.js +32 -0
  88. package/dist/cjs/constants/z-asset-registry.js.map +1 -0
  89. package/dist/cjs/gen/prover_pb.js +81 -0
  90. package/dist/cjs/gen/prover_pb.js.map +1 -0
  91. package/dist/cjs/index.js +32 -0
  92. package/dist/cjs/index.js.map +1 -0
  93. package/dist/cjs/internal/evm.js +191 -0
  94. package/dist/cjs/internal/evm.js.map +1 -0
  95. package/dist/cjs/internal/evmWalletClient.js +6 -0
  96. package/dist/cjs/internal/evmWalletClient.js.map +1 -0
  97. package/dist/cjs/internal/publicClient.js +49 -0
  98. package/dist/cjs/internal/publicClient.js.map +1 -0
  99. package/dist/cjs/internal/walletClient.js +43 -0
  100. package/dist/cjs/internal/walletClient.js.map +1 -0
  101. package/dist/cjs/legacy/client.js +1222 -0
  102. package/dist/cjs/legacy/client.js.map +1 -0
  103. package/dist/cjs/legacy/prover.js +112 -0
  104. package/dist/cjs/legacy/prover.js.map +1 -0
  105. package/dist/cjs/poseidon2.js +226 -0
  106. package/dist/cjs/poseidon2.js.map +1 -0
  107. package/dist/cjs/promises/Attestor.js +23 -0
  108. package/dist/cjs/promises/Attestor.js.map +1 -0
  109. package/dist/cjs/promises/EvmPublicClient.js +34 -0
  110. package/dist/cjs/promises/EvmPublicClient.js.map +1 -0
  111. package/dist/cjs/promises/EvmWalletClient.js +51 -0
  112. package/dist/cjs/promises/EvmWalletClient.js.map +1 -0
  113. package/dist/cjs/promises/Payment.js +22 -0
  114. package/dist/cjs/promises/Payment.js.map +1 -0
  115. package/dist/cjs/promises/Prover.js +26 -0
  116. package/dist/cjs/promises/Prover.js.map +1 -0
  117. package/dist/cjs/promises/PublicClient.js +53 -0
  118. package/dist/cjs/promises/PublicClient.js.map +1 -0
  119. package/dist/cjs/promises/WalletClient.js +44 -0
  120. package/dist/cjs/promises/WalletClient.js.map +1 -0
  121. package/dist/cjs/promises/index.js +22 -0
  122. package/dist/cjs/promises/index.js.map +1 -0
  123. package/dist/cjs/rpc.js +867 -0
  124. package/dist/cjs/rpc.js.map +1 -0
  125. package/dist/cjs/types.js +6 -0
  126. package/dist/cjs/types.js.map +1 -0
  127. package/dist/dts/Abi.d.ts +220 -0
  128. package/dist/dts/Abi.d.ts.map +1 -0
  129. package/dist/dts/Attestor.d.ts +42 -0
  130. package/dist/dts/Attestor.d.ts.map +1 -0
  131. package/dist/dts/Constants.d.ts +3 -0
  132. package/dist/dts/Constants.d.ts.map +1 -0
  133. package/dist/dts/Domain.d.ts +141 -0
  134. package/dist/dts/Domain.d.ts.map +1 -0
  135. package/dist/dts/Error.d.ts +102 -0
  136. package/dist/dts/Error.d.ts.map +1 -0
  137. package/dist/dts/EvmPublicClient.d.ts +61 -0
  138. package/dist/dts/EvmPublicClient.d.ts.map +1 -0
  139. package/dist/dts/EvmWalletClient.d.ts +67 -0
  140. package/dist/dts/EvmWalletClient.d.ts.map +1 -0
  141. package/dist/dts/Payment.d.ts +128 -0
  142. package/dist/dts/Payment.d.ts.map +1 -0
  143. package/dist/dts/PaymentError.d.ts +21 -0
  144. package/dist/dts/PaymentError.d.ts.map +1 -0
  145. package/dist/dts/Prover.d.ts +87 -0
  146. package/dist/dts/Prover.d.ts.map +1 -0
  147. package/dist/dts/PublicClient.d.ts +146 -0
  148. package/dist/dts/PublicClient.d.ts.map +1 -0
  149. package/dist/dts/Schema.d.ts +16 -0
  150. package/dist/dts/Schema.d.ts.map +1 -0
  151. package/dist/dts/Utils.d.ts +11 -0
  152. package/dist/dts/Utils.d.ts.map +1 -0
  153. package/dist/dts/WalletClient.d.ts +123 -0
  154. package/dist/dts/WalletClient.d.ts.map +1 -0
  155. package/dist/dts/attestation.d.ts +13 -0
  156. package/dist/dts/attestation.d.ts.map +1 -0
  157. package/dist/dts/cli/commands/balance.d.ts +3 -0
  158. package/dist/dts/cli/commands/balance.d.ts.map +1 -0
  159. package/dist/dts/cli/commands/deposit.d.ts +3 -0
  160. package/dist/dts/cli/commands/deposit.d.ts.map +1 -0
  161. package/dist/dts/cli/commands/export-verifier.d.ts +3 -0
  162. package/dist/dts/cli/commands/export-verifier.d.ts.map +1 -0
  163. package/dist/dts/cli/commands/generate.d.ts +3 -0
  164. package/dist/dts/cli/commands/generate.d.ts.map +1 -0
  165. package/dist/dts/cli/commands/history.d.ts +3 -0
  166. package/dist/dts/cli/commands/history.d.ts.map +1 -0
  167. package/dist/dts/cli/commands/prove.d.ts +3 -0
  168. package/dist/dts/cli/commands/prove.d.ts.map +1 -0
  169. package/dist/dts/cli/commands/redeem.d.ts +3 -0
  170. package/dist/dts/cli/commands/redeem.d.ts.map +1 -0
  171. package/dist/dts/cli/commands/update-client.d.ts +3 -0
  172. package/dist/dts/cli/commands/update-client.d.ts.map +1 -0
  173. package/dist/dts/cli/config.d.ts +14 -0
  174. package/dist/dts/cli/config.d.ts.map +1 -0
  175. package/dist/dts/cli/utils.d.ts +11 -0
  176. package/dist/dts/cli/utils.d.ts.map +1 -0
  177. package/dist/dts/cli.d.ts +3 -0
  178. package/dist/dts/cli.d.ts.map +1 -0
  179. package/dist/dts/constants/ibc-core-registry.d.ts +11 -0
  180. package/dist/dts/constants/ibc-core-registry.d.ts.map +1 -0
  181. package/dist/dts/constants/services.d.ts +3 -0
  182. package/dist/dts/constants/services.d.ts.map +1 -0
  183. package/dist/dts/constants/z-asset-registry.d.ts +13 -0
  184. package/dist/dts/constants/z-asset-registry.d.ts.map +1 -0
  185. package/dist/dts/gen/prover_pb.d.ts +300 -0
  186. package/dist/dts/gen/prover_pb.d.ts.map +1 -0
  187. package/dist/dts/index.d.ts +21 -0
  188. package/dist/dts/index.d.ts.map +1 -0
  189. package/dist/dts/internal/evm.d.ts +250 -0
  190. package/dist/dts/internal/evm.d.ts.map +1 -0
  191. package/dist/dts/internal/evmWalletClient.d.ts +2 -0
  192. package/dist/dts/internal/evmWalletClient.d.ts.map +1 -0
  193. package/dist/dts/internal/publicClient.d.ts +2 -0
  194. package/dist/dts/internal/publicClient.d.ts.map +1 -0
  195. package/dist/dts/internal/walletClient.d.ts +2 -0
  196. package/dist/dts/internal/walletClient.d.ts.map +1 -0
  197. package/dist/dts/legacy/client.d.ts +313 -0
  198. package/dist/dts/legacy/client.d.ts.map +1 -0
  199. package/dist/dts/legacy/prover.d.ts +30 -0
  200. package/dist/dts/legacy/prover.d.ts.map +1 -0
  201. package/dist/dts/poseidon2.d.ts +18 -0
  202. package/dist/dts/poseidon2.d.ts.map +1 -0
  203. package/dist/dts/promises/Attestor.d.ts +17 -0
  204. package/dist/dts/promises/Attestor.d.ts.map +1 -0
  205. package/dist/dts/promises/EvmPublicClient.d.ts +3709 -0
  206. package/dist/dts/promises/EvmPublicClient.d.ts.map +1 -0
  207. package/dist/dts/promises/EvmWalletClient.d.ts +4502 -0
  208. package/dist/dts/promises/EvmWalletClient.d.ts.map +1 -0
  209. package/dist/dts/promises/Payment.d.ts +33 -0
  210. package/dist/dts/promises/Payment.d.ts.map +1 -0
  211. package/dist/dts/promises/Prover.d.ts +14 -0
  212. package/dist/dts/promises/Prover.d.ts.map +1 -0
  213. package/dist/dts/promises/PublicClient.d.ts +23 -0
  214. package/dist/dts/promises/PublicClient.d.ts.map +1 -0
  215. package/dist/dts/promises/WalletClient.d.ts +57 -0
  216. package/dist/dts/promises/WalletClient.d.ts.map +1 -0
  217. package/dist/dts/promises/index.d.ts +8 -0
  218. package/dist/dts/promises/index.d.ts.map +1 -0
  219. package/dist/dts/rpc.d.ts +148 -0
  220. package/dist/dts/rpc.d.ts.map +1 -0
  221. package/dist/dts/types.d.ts +263 -0
  222. package/dist/dts/types.d.ts.map +1 -0
  223. package/dist/esm/Abi.js +264 -0
  224. package/dist/esm/Abi.js.map +1 -0
  225. package/dist/esm/Attestor.js +68 -0
  226. package/dist/esm/Attestor.js.map +1 -0
  227. package/dist/esm/Constants.js +2 -0
  228. package/dist/esm/Constants.js.map +1 -0
  229. package/dist/esm/Domain.js +17 -0
  230. package/dist/esm/Domain.js.map +1 -0
  231. package/dist/esm/Error.js +89 -0
  232. package/dist/esm/Error.js.map +1 -0
  233. package/dist/esm/EvmPublicClient.js +292 -0
  234. package/dist/esm/EvmPublicClient.js.map +1 -0
  235. package/dist/esm/EvmWalletClient.js +659 -0
  236. package/dist/esm/EvmWalletClient.js.map +1 -0
  237. package/dist/esm/Payment.js +323 -0
  238. package/dist/esm/Payment.js.map +1 -0
  239. package/dist/esm/PaymentError.js +24 -0
  240. package/dist/esm/PaymentError.js.map +1 -0
  241. package/dist/esm/Prover.js +142 -0
  242. package/dist/esm/Prover.js.map +1 -0
  243. package/dist/esm/PublicClient.js +30 -0
  244. package/dist/esm/PublicClient.js.map +1 -0
  245. package/dist/esm/Schema.js +31 -0
  246. package/dist/esm/Schema.js.map +1 -0
  247. package/dist/esm/Utils.js +27 -0
  248. package/dist/esm/Utils.js.map +1 -0
  249. package/dist/esm/WalletClient.js +30 -0
  250. package/dist/esm/WalletClient.js.map +1 -0
  251. package/dist/esm/attestation.js +42 -0
  252. package/dist/esm/attestation.js.map +1 -0
  253. package/dist/esm/cli/commands/balance.js +54 -0
  254. package/dist/esm/cli/commands/balance.js.map +1 -0
  255. package/dist/esm/cli/commands/deposit.js +52 -0
  256. package/dist/esm/cli/commands/deposit.js.map +1 -0
  257. package/dist/esm/cli/commands/export-verifier.js +21 -0
  258. package/dist/esm/cli/commands/export-verifier.js.map +1 -0
  259. package/dist/esm/cli/commands/generate.js +35 -0
  260. package/dist/esm/cli/commands/generate.js.map +1 -0
  261. package/dist/esm/cli/commands/history.js +53 -0
  262. package/dist/esm/cli/commands/history.js.map +1 -0
  263. package/dist/esm/cli/commands/prove.js +76 -0
  264. package/dist/esm/cli/commands/prove.js.map +1 -0
  265. package/dist/esm/cli/commands/redeem.js +146 -0
  266. package/dist/esm/cli/commands/redeem.js.map +1 -0
  267. package/dist/esm/cli/commands/update-client.js +56 -0
  268. package/dist/esm/cli/commands/update-client.js.map +1 -0
  269. package/dist/esm/cli/config.js +26 -0
  270. package/dist/esm/cli/config.js.map +1 -0
  271. package/dist/esm/cli/utils.js +94 -0
  272. package/dist/esm/cli/utils.js.map +1 -0
  273. package/dist/esm/cli.js +22 -0
  274. package/dist/esm/cli.js.map +1 -0
  275. package/dist/esm/constants/ibc-core-registry.js +21 -0
  276. package/dist/esm/constants/ibc-core-registry.js.map +1 -0
  277. package/dist/esm/constants/services.js +3 -0
  278. package/dist/esm/constants/services.js.map +1 -0
  279. package/dist/esm/constants/z-asset-registry.js +23 -0
  280. package/dist/esm/constants/z-asset-registry.js.map +1 -0
  281. package/dist/esm/gen/prover_pb.js +74 -0
  282. package/dist/esm/gen/prover_pb.js.map +1 -0
  283. package/dist/esm/index.js +22 -0
  284. package/dist/esm/index.js.map +1 -0
  285. package/dist/esm/internal/evm.js +169 -0
  286. package/dist/esm/internal/evm.js.map +1 -0
  287. package/dist/esm/internal/evmWalletClient.js +2 -0
  288. package/dist/esm/internal/evmWalletClient.js.map +1 -0
  289. package/dist/esm/internal/publicClient.js +41 -0
  290. package/dist/esm/internal/publicClient.js.map +1 -0
  291. package/dist/esm/internal/walletClient.js +35 -0
  292. package/dist/esm/internal/walletClient.js.map +1 -0
  293. package/dist/esm/legacy/client.js +1212 -0
  294. package/dist/esm/legacy/client.js.map +1 -0
  295. package/dist/esm/legacy/prover.js +105 -0
  296. package/dist/esm/legacy/prover.js.map +1 -0
  297. package/dist/esm/package.json +4 -0
  298. package/dist/esm/poseidon2.js +218 -0
  299. package/dist/esm/poseidon2.js.map +1 -0
  300. package/dist/esm/promises/Attestor.js +14 -0
  301. package/dist/esm/promises/Attestor.js.map +1 -0
  302. package/dist/esm/promises/EvmPublicClient.js +26 -0
  303. package/dist/esm/promises/EvmPublicClient.js.map +1 -0
  304. package/dist/esm/promises/EvmWalletClient.js +43 -0
  305. package/dist/esm/promises/EvmWalletClient.js.map +1 -0
  306. package/dist/esm/promises/Payment.js +13 -0
  307. package/dist/esm/promises/Payment.js.map +1 -0
  308. package/dist/esm/promises/Prover.js +17 -0
  309. package/dist/esm/promises/Prover.js.map +1 -0
  310. package/dist/esm/promises/PublicClient.js +45 -0
  311. package/dist/esm/promises/PublicClient.js.map +1 -0
  312. package/dist/esm/promises/WalletClient.js +36 -0
  313. package/dist/esm/promises/WalletClient.js.map +1 -0
  314. package/dist/esm/promises/index.js +8 -0
  315. package/dist/esm/promises/index.js.map +1 -0
  316. package/dist/esm/rpc.js +850 -0
  317. package/dist/esm/rpc.js.map +1 -0
  318. package/dist/esm/types.js +2 -0
  319. package/dist/esm/types.js.map +1 -0
  320. package/gen/prover_pb/package.json +6 -0
  321. package/index/package.json +6 -0
  322. package/legacy/client/package.json +6 -0
  323. package/legacy/prover/package.json +6 -0
  324. package/package.json +397 -44
  325. package/poseidon2/package.json +6 -0
  326. package/promises/Attestor/package.json +6 -0
  327. package/promises/EvmPublicClient/package.json +6 -0
  328. package/promises/EvmWalletClient/package.json +6 -0
  329. package/promises/Payment/package.json +6 -0
  330. package/promises/Prover/package.json +6 -0
  331. package/promises/PublicClient/package.json +6 -0
  332. package/promises/WalletClient/package.json +6 -0
  333. package/promises/index/package.json +6 -0
  334. package/promises/package.json +6 -0
  335. package/rpc/package.json +6 -0
  336. package/src/Abi.ts +195 -0
  337. package/src/Attestor.ts +113 -0
  338. package/src/Constants.ts +4 -0
  339. package/src/Domain.ts +52 -0
  340. package/src/Error.ts +163 -0
  341. package/src/EvmPublicClient.ts +549 -0
  342. package/src/EvmWalletClient.ts +1034 -0
  343. package/src/Payment.ts +523 -0
  344. package/src/PaymentError.ts +39 -0
  345. package/src/Prover.ts +240 -0
  346. package/src/PublicClient.ts +196 -0
  347. package/src/Schema.ts +36 -0
  348. package/src/Utils.ts +43 -0
  349. package/src/WalletClient.ts +172 -0
  350. package/src/attestation.ts +69 -0
  351. package/src/cli/commands/balance.ts +88 -0
  352. package/src/cli/commands/deposit.ts +104 -0
  353. package/src/cli/commands/export-verifier.ts +28 -0
  354. package/src/cli/commands/generate.ts +86 -0
  355. package/src/cli/commands/history.ts +91 -0
  356. package/src/cli/commands/prove.ts +133 -0
  357. package/src/cli/commands/redeem.ts +277 -0
  358. package/src/cli/commands/update-client.ts +96 -0
  359. package/src/cli/config.ts +55 -0
  360. package/src/cli/utils.ts +136 -0
  361. package/src/cli.ts +31 -0
  362. package/src/constants/ibc-core-registry.ts +44 -0
  363. package/src/constants/services.ts +4 -0
  364. package/src/constants/z-asset-registry.ts +47 -0
  365. package/src/gen/prover_pb.ts +375 -0
  366. package/src/index.ts +23 -0
  367. package/src/internal/evm.ts +361 -0
  368. package/src/internal/evmWalletClient.ts +0 -0
  369. package/src/internal/publicClient.ts +57 -0
  370. package/src/internal/walletClient.ts +50 -0
  371. package/src/legacy/client.ts +1652 -0
  372. package/src/legacy/prover.ts +135 -0
  373. package/src/poseidon2.ts +246 -0
  374. package/src/promises/Attestor.ts +25 -0
  375. package/src/promises/EvmPublicClient.ts +39 -0
  376. package/src/promises/EvmWalletClient.ts +63 -0
  377. package/src/promises/Payment.ts +86 -0
  378. package/src/promises/Prover.ts +26 -0
  379. package/src/promises/PublicClient.ts +47 -0
  380. package/src/promises/WalletClient.ts +38 -0
  381. package/src/promises/index.ts +7 -0
  382. package/src/rpc.ts +994 -0
  383. package/src/types.ts +281 -0
  384. package/types/package.json +6 -0
  385. package/dist/LICENSE +0 -1
  386. package/dist/chunk-37PNLRA6.js +0 -2418
  387. package/dist/cli.cjs +0 -3031
  388. package/dist/cli.js +0 -675
  389. package/dist/index.cjs +0 -2451
  390. package/dist/index.js +0 -1
  391. package/dist/package.json +0 -18
  392. package/dist/payments.d.ts +0 -835
  393. /package/{dist → src}/tsdoc-metadata.json +0 -0
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.make = exports.TypeId = exports.SourcePublicClient = exports.PublicClient = exports.DestinationPublicClient = void 0;
7
+ var _effect = require("effect");
8
+ var Context = _interopRequireWildcard(require("effect/Context"));
9
+ var _Function = require("effect/Function");
10
+ var internal = _interopRequireWildcard(require("./internal/publicClient.js"));
11
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
12
+ /**
13
+ * @category type ids
14
+ * @since 1.0.0
15
+ */
16
+ const TypeId = exports.TypeId = internal.TypeId;
17
+ /**
18
+ * @category models
19
+ * @since 1.0.0
20
+ */
21
+ const PublicClient = exports.PublicClient = internal.clientTag;
22
+ /**
23
+ * @category models
24
+ * @since 1.0.0
25
+ */
26
+ class SourcePublicClient extends /*#__PURE__*/Context.Tag("SourcePublicClient")() {
27
+ static layer = layer => _effect.Layer.project(layer, PublicClient, SourcePublicClient, _Function.identity);
28
+ }
29
+ /**
30
+ * @category models
31
+ * @since 1.0.0
32
+ */
33
+ exports.SourcePublicClient = SourcePublicClient;
34
+ class DestinationPublicClient extends /*#__PURE__*/Context.Tag("DestinationPublicClient")() {
35
+ static layer = layer => _effect.Layer.project(layer, PublicClient, DestinationPublicClient, _Function.identity);
36
+ }
37
+ exports.DestinationPublicClient = DestinationPublicClient;
38
+ const make = exports.make = internal.make;
39
+ //# sourceMappingURL=PublicClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PublicClient.js","names":["_effect","require","Context","_interopRequireWildcard","_Function","internal","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","PublicClient","clientTag","SourcePublicClient","Tag","layer","Layer","project","identity","DestinationPublicClient","make"],"sources":["../../src/PublicClient.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,uBAAA,CAAAF,OAAA;AAEA,IAAAG,SAAA,GAAAH,OAAA;AAIA,IAAAI,QAAA,GAAAF,uBAAA,CAAAF,OAAA;AAAsD,SAAAE,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,CAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAGtD;;;;AAIO,MAAMkB,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAkBpB,QAAQ,CAACoB,MAAM;AAgEpD;;;;AAIO,MAAME,YAAY,GAAAD,OAAA,CAAAC,YAAA,GACvBtB,QAAQ,CAACuB,SAAS;AAEpB;;;;AAIM,MAAOC,kBAAmB,sBAAQ3B,OAAO,CAAC4B,GAAG,CAAC,oBAAoB,CAAC,EAGtE;EACD,OAAOC,KAAK,GAAUA,KAAsC,IAC1DC,aAAK,CAACC,OAAO,CAACF,KAAK,EAAEJ,YAAY,EAAEE,kBAAkB,EAAEK,kBAAQ,CAAC;;AAGpE;;;;AAAAR,OAAA,CAAAG,kBAAA,GAAAA,kBAAA;AAIM,MAAOM,uBAAwB,sBAAQjC,OAAO,CAAC4B,GAAG,CACtD,yBAAyB,CAC1B,EAAyC;EACxC,OAAOC,KAAK,GAAUA,KAAsC,IAC1DC,aAAK,CAACC,OAAO,CAACF,KAAK,EAAEJ,YAAY,EAAEQ,uBAAuB,EAAED,kBAAQ,CAAC;;;AAwFlE,MAAME,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAEyB/B,QAAQ,CAAC+B,IAAI","ignoreList":[]}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Hex = exports.Address = void 0;
7
+ var S = _interopRequireWildcard(require("effect/Schema"));
8
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
9
+ /**
10
+ * Describes `0x${string}` from non-empty string.
11
+ *
12
+ * Note: To be used ineroperably with `viem`.
13
+ */
14
+ const Hex = exports.Hex = /*#__PURE__*/S.NonEmptyString.pipe(/*#__PURE__*/
15
+ // TODO: add `Bytes` brand separately
16
+ S.pattern(/^0x[0-9a-fA-F]+$/), /*#__PURE__*/
17
+ // TODO: remove uppercase
18
+ S.minLength(3), /*#__PURE__*/S.annotations({
19
+ title: "hex",
20
+ description: "hex string"
21
+ }));
22
+ /**
23
+ * Describes `0x${string}` address from non-empty string.
24
+ *
25
+ * Note: To be used ineroperably with `viem`.
26
+ */
27
+ const Address = exports.Address = /*#__PURE__*/S.NonEmptyString.pipe(/*#__PURE__*/
28
+ // TODO: add `Bytes` brand separately
29
+ S.pattern(/^0x[0-9a-fA-F]+$/), /*#__PURE__*/
30
+ // TODO: remove uppercase
31
+ S.minLength(3), /*#__PURE__*/S.annotations({
32
+ title: "address",
33
+ description: "address string"
34
+ // }),
35
+ // S.brand("Address")
36
+ // ) as unknown as S.brand<S.refine<S.TemplateLiteral<`0x${string}`>, S.filter<typeof S.NonEmptyString>>, "Address">
37
+ }));
38
+ //# sourceMappingURL=Schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Schema.js","names":["S","_interopRequireWildcard","require","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Hex","exports","NonEmptyString","pipe","pattern","minLength","annotations","title","description","Address"],"sources":["../../src/Schema.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,uBAAA,CAAAC,OAAA;AAAkC,SAAAD,wBAAAE,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAJ,uBAAA,YAAAA,CAAAE,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAElC;;;;;AAKO,MAAMkB,GAAG,GAAAC,OAAA,CAAAD,GAAA,gBAAGtB,CAAC,CAACwB,cAAc,CAACC,IAAI;AACtC;AACAzB,CAAC,CAAC0B,OAAO,CAAC,kBAAkB,CAAC;AAAE;AAC/B1B,CAAC,CAAC2B,SAAS,CAAC,CAAC,CAAC,eACd3B,CAAC,CAAC4B,WAAW,CAAC;EACZC,KAAK,EAAE,KAAK;EACZC,WAAW,EAAE;CACd,CAAC,CAC4C;AAGhD;;;;;AAKO,MAAMC,OAAO,GAAAR,OAAA,CAAAQ,OAAA,gBAAG/B,CAAC,CAACwB,cAAc,CAACC,IAAI;AAC1C;AACAzB,CAAC,CAAC0B,OAAO,CAAC,kBAAkB,CAAC;AAAE;AAC/B1B,CAAC,CAAC2B,SAAS,CAAC,CAAC,CAAC,eACd3B,CAAC,CAAC4B,WAAW,CAAC;EACZC,KAAK,EAAE,SAAS;EAChBC,WAAW,EAAE;EACb;EACA;EACA;CACD,CAAC,CAC4C","ignoreList":[]}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.proofJsonToRedeemParams = proofJsonToRedeemParams;
7
+ var _viem = require("viem");
8
+ /**
9
+ * @public
10
+ */
11
+ function proofJsonToRedeemParams(proofJson, metadata) {
12
+ const parseBigInt = s => {
13
+ if (s.startsWith("0x")) {
14
+ return (0, _viem.hexToBigInt)(s);
15
+ }
16
+ return BigInt(s);
17
+ };
18
+ return {
19
+ proof: proofJson.proof.map(parseBigInt),
20
+ commitments: proofJson.commitments.map(parseBigInt),
21
+ commitmentPok: proofJson.commitmentPok.map(parseBigInt),
22
+ lightClients: metadata.lightClients.map(lc => ({
23
+ clientId: lc.clientId,
24
+ height: lc.height
25
+ })),
26
+ nullifier: metadata.nullifier,
27
+ value: metadata.value,
28
+ beneficiary: metadata.beneficiary,
29
+ attestedMessage: metadata.attestedMessage,
30
+ signature: metadata.signature
31
+ };
32
+ }
33
+ //# sourceMappingURL=Utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Utils.js","names":["_viem","require","proofJsonToRedeemParams","proofJson","metadata","parseBigInt","s","startsWith","hexToBigInt","BigInt","proof","map","commitments","commitmentPok","lightClients","lc","clientId","height","nullifier","value","beneficiary","attestedMessage","signature"],"sources":["../../src/Utils.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAUA;;;AAGM,SAAUC,uBAAuBA,CACrCC,SAAkC,EAClCC,QAAkC;EAElC,MAAMC,WAAW,GAAIC,CAAS,IAAY;IACxC,IAAIA,CAAC,CAACC,UAAU,CAAC,IAAI,CAAC,EAAE;MACtB,OAAO,IAAAC,iBAAW,EAACF,CAAQ,CAAC;IAC9B;IACA,OAAOG,MAAM,CAACH,CAAC,CAAC;EAClB,CAAC;EAED,OAAO;IACLI,KAAK,EAAEP,SAAS,CAACO,KAAK,CAACC,GAAG,CAACN,WAAW,CAA0B;IAChEO,WAAW,EAAET,SAAS,CAACS,WAAW,CAACD,GAAG,CACpCN,WAAW,CACmB;IAChCQ,aAAa,EAAEV,SAAS,CAACU,aAAa,CAACF,GAAG,CACxCN,WAAW,CACqB;IAClCS,YAAY,EAAEV,QAAQ,CAACU,YAAY,CAACH,GAAG,CAAEI,EAAE,KAAM;MAC/CC,QAAQ,EAAED,EAAE,CAACC,QAAQ;MACrBC,MAAM,EAAEF,EAAE,CAACE;KACZ,CAAC,CAAC;IACHC,SAAS,EAAEd,QAAQ,CAACc,SAAS;IAC7BC,KAAK,EAAEf,QAAQ,CAACe,KAAK;IACrBC,WAAW,EAAEhB,QAAQ,CAACgB,WAAW;IACjCC,eAAe,EAAEjB,QAAQ,CAACiB,eAAe;IACzCC,SAAS,EAAElB,QAAQ,CAACkB;GACrB;AACH","ignoreList":[]}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.make = exports.WalletClient = exports.TypeId = exports.SourceWalletClient = exports.DestinationWalletClient = void 0;
7
+ var _effect = require("effect");
8
+ var Context = _interopRequireWildcard(require("effect/Context"));
9
+ var _Function = require("effect/Function");
10
+ var internal = _interopRequireWildcard(require("./internal/walletClient.js"));
11
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
12
+ /**
13
+ * @category type ids
14
+ * @since 1.0.0
15
+ */
16
+ const TypeId = exports.TypeId = internal.TypeId;
17
+ /**
18
+ * @category models
19
+ * @since 1.0.0
20
+ */
21
+ const WalletClient = exports.WalletClient = internal.clientTag;
22
+ /**
23
+ * @category models
24
+ * @since 1.0.0
25
+ */
26
+ class SourceWalletClient extends /*#__PURE__*/Context.Tag("SourceWalletClient")() {
27
+ static layer = layer => _effect.Layer.project(layer, WalletClient, SourceWalletClient, _Function.identity);
28
+ }
29
+ /**
30
+ * @category models
31
+ * @since 1.0.0
32
+ */
33
+ exports.SourceWalletClient = SourceWalletClient;
34
+ class DestinationWalletClient extends /*#__PURE__*/Context.Tag("DestinationWalletClient")() {
35
+ static layer = layer => _effect.Layer.project(layer, WalletClient, DestinationWalletClient, _Function.identity);
36
+ }
37
+ exports.DestinationWalletClient = DestinationWalletClient;
38
+ const make = exports.make = internal.make;
39
+ //# sourceMappingURL=WalletClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WalletClient.js","names":["_effect","require","Context","_interopRequireWildcard","_Function","internal","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","WalletClient","clientTag","SourceWalletClient","Tag","layer","Layer","project","identity","DestinationWalletClient","make"],"sources":["../../src/WalletClient.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,uBAAA,CAAAF,OAAA;AAEA,IAAAG,SAAA,GAAAH,OAAA;AAIA,IAAAI,QAAA,GAAAF,uBAAA,CAAAF,OAAA;AAAsD,SAAAE,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,CAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAGtD;;;;AAIO,MAAMkB,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAkBpB,QAAQ,CAACoB,MAAM;AAmEpD;;;;AAIO,MAAME,YAAY,GAAAD,OAAA,CAAAC,YAAA,GACvBtB,QAAQ,CAACuB,SAAS;AAEpB;;;;AAIM,MAAOC,kBAAmB,sBAAQ3B,OAAO,CAAC4B,GAAG,CAAC,oBAAoB,CAAC,EAGtE;EACD,OAAOC,KAAK,GAAUA,KAAsC,IAC1DC,aAAK,CAACC,OAAO,CAACF,KAAK,EAAEJ,YAAY,EAAEE,kBAAkB,EAAEK,kBAAQ,CAAC;;AAGpE;;;;AAAAR,OAAA,CAAAG,kBAAA,GAAAA,kBAAA;AAIM,MAAOM,uBAAwB,sBAAQjC,OAAO,CAAC4B,GAAG,CACtD,yBAAyB,CAC1B,EAAyC;EACxC,OAAOC,KAAK,GAAUA,KAAsC,IAC1DC,aAAK,CAACC,OAAO,CAACF,KAAK,EAAEJ,YAAY,EAAEQ,uBAAuB,EAAED,kBAAQ,CAAC;;;AA6DlE,MAAME,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAEgC/B,QAAQ,CAAC+B,IAAI","ignoreList":[]}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AttestationClient = void 0;
7
+ /**
8
+ * Client for attestation service that signs poseidon(unspendable_address, beneficiary)
9
+ * @public
10
+ */
11
+ class AttestationClient {
12
+ baseUrl;
13
+ apiKey;
14
+ constructor(baseUrl, apiKey) {
15
+ this.baseUrl = baseUrl.replace(/\/$/, ""); // Remove trailing slash
16
+ this.apiKey = apiKey;
17
+ }
18
+ async getAttestation(unspendableAddress, beneficiary) {
19
+ const request = {
20
+ unspendableAddress,
21
+ beneficiary
22
+ };
23
+ const headers = {
24
+ "Content-Type": "application/json"
25
+ };
26
+ headers["x-api-key"] = this.apiKey;
27
+ const response = await fetch(this.baseUrl, {
28
+ method: "POST",
29
+ headers,
30
+ body: JSON.stringify(request)
31
+ });
32
+ if (!response.ok) {
33
+ const errorText = await response.text();
34
+ throw new Error(`Attestation service error: ${response.status} ${errorText}`);
35
+ }
36
+ const data = await response.json();
37
+ // Combine r, s, v into 65-byte signature
38
+ const r = data.signature.r.slice(2);
39
+ const s = data.signature.s.slice(2);
40
+ const v = data.signature.v.toString(16).padStart(2, "0");
41
+ const signature = `0x${r}${s}${v}`;
42
+ return {
43
+ attestedMessage: data.hash,
44
+ signature
45
+ };
46
+ }
47
+ }
48
+ exports.AttestationClient = AttestationClient;
49
+ //# sourceMappingURL=attestation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attestation.js","names":["AttestationClient","baseUrl","apiKey","constructor","replace","getAttestation","unspendableAddress","beneficiary","request","headers","response","fetch","method","body","JSON","stringify","ok","errorText","text","Error","status","data","json","r","signature","slice","s","v","toString","padStart","attestedMessage","hash"],"sources":["../../src/attestation.ts"],"sourcesContent":[null],"mappings":";;;;;;AAcA;;;;AAIM,MAAOA,iBAAiB;EACpBC,OAAO;EACPC,MAAM;EAEdC,YAAYF,OAAe,EAAEC,MAAc;IACzC,IAAI,CAACD,OAAO,GAAGA,OAAO,CAACG,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3C,IAAI,CAACF,MAAM,GAAGA,MAAM;EACtB;EAEA,MAAMG,cAAcA,CAClBC,kBAA2B,EAC3BC,WAAoB;IAEpB,MAAMC,OAAO,GAAuB;MAClCF,kBAAkB;MAClBC;KACD;IAED,MAAME,OAAO,GAA2B;MACtC,cAAc,EAAE;KACjB;IAEDA,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAACP,MAAM;IAElC,MAAMQ,QAAQ,GAAG,MAAMC,KAAK,CAAC,IAAI,CAACV,OAAO,EAAE;MACzCW,MAAM,EAAE,MAAM;MACdH,OAAO;MACPI,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACP,OAAO;KAC7B,CAAC;IAEF,IAAI,CAACE,QAAQ,CAACM,EAAE,EAAE;MAChB,MAAMC,SAAS,GAAG,MAAMP,QAAQ,CAACQ,IAAI,EAAE;MACvC,MAAM,IAAIC,KAAK,CACb,8BAA8BT,QAAQ,CAACU,MAAM,IAAIH,SAAS,EAAE,CAC7D;IACH;IAEA,MAAMI,IAAI,GAAI,MAAMX,QAAQ,CAACY,IAAI,EAAiC;IAElE;IACA,MAAMC,CAAC,GAAGF,IAAI,CAACG,SAAS,CAACD,CAAC,CAACE,KAAK,CAAC,CAAC,CAAC;IACnC,MAAMC,CAAC,GAAGL,IAAI,CAACG,SAAS,CAACE,CAAC,CAACD,KAAK,CAAC,CAAC,CAAC;IACnC,MAAME,CAAC,GAAGN,IAAI,CAACG,SAAS,CAACG,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;IACxD,MAAML,SAAS,GAAG,KAAKD,CAAC,GAAGG,CAAC,GAAGC,CAAC,EAAS;IAEzC,OAAO;MACLG,eAAe,EAAET,IAAI,CAACU,IAAI;MAC1BP;KACD;EACH","ignoreList":[]}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.balanceCommand = void 0;
7
+ var _commander = require("commander");
8
+ var _client = require("../../legacy/client.js");
9
+ var _config = require("../config.js");
10
+ var _utils = require("../utils.js");
11
+ const balanceCommand = exports.balanceCommand = /*#__PURE__*/new _commander.Command("balance").description("Query balance via light client").requiredOption("--secret <hex>", "32-byte secret (0x-prefixed hex)").option("--beneficiaries <addresses>", "Comma-separated beneficiary addresses").requiredOption("--client-id <id>", "Light client ID to use").option("--config <path>", "Path to config file", "./private-payments.config.json").action(async options => {
12
+ try {
13
+ const config = (0, _config.loadConfig)(options.config);
14
+ const secret = (0, _utils.validateSecret)(options.secret);
15
+ const beneficiaries = (0, _utils.parseBeneficiaries)(options.beneficiaries);
16
+ const clientId = parseInt(options.clientId, 10);
17
+ if (isNaN(clientId) || clientId < 0) {
18
+ throw new Error("Invalid light client ID");
19
+ }
20
+ const client = new _client.UnionPrivatePayments({
21
+ proverUrl: config.proverUrl,
22
+ sourceRpcUrl: config.sourceRpcUrl,
23
+ destinationRpcUrl: config.destinationRpcUrl,
24
+ srcZAssetAddress: config.srcZAssetAddress,
25
+ dstZAssetAddress: config.dstZAssetAddress,
26
+ sourceChainId: BigInt(config.sourceChainId),
27
+ destinationChainId: BigInt(config.destinationChainId)
28
+ });
29
+ const depositAddress = client.getDepositAddress(secret, beneficiaries);
30
+ const nullifier = client.getNullifier(secret);
31
+ console.log("Querying balance...");
32
+ console.log("Deposit Address:", depositAddress);
33
+ console.log("Light Client ID:", clientId);
34
+ const balance = await client.getBalance({
35
+ depositAddress,
36
+ nullifier,
37
+ clientId
38
+ });
39
+ const tokenInfo = await client.getSrcZAssetInfo();
40
+ console.log("");
41
+ console.log(`Latest height: ${balance.latestHeight}`);
42
+ console.log(`Light client height: ${balance.lightClientHeight}`);
43
+ console.log(`Light client lag: ${balance.latestHeight - balance.lightClientHeight}`);
44
+ console.log(`Balance:`);
45
+ console.log(" Pending:", (0, _utils.formatAmount)(balance.pending, tokenInfo.decimals, tokenInfo.symbol));
46
+ console.log(" Confirmed:", (0, _utils.formatAmount)(balance.confirmed, tokenInfo.decimals, tokenInfo.symbol));
47
+ console.log(" Redeemed:", (0, _utils.formatAmount)(balance.redeemed, tokenInfo.decimals, tokenInfo.symbol));
48
+ console.log(" Available:", (0, _utils.formatAmount)(balance.available, tokenInfo.decimals, tokenInfo.symbol));
49
+ console.log("");
50
+ console.log("Raw balance:");
51
+ console.log(" Pending:", balance.pending.toString());
52
+ console.log(" Confirmed:", balance.confirmed.toString());
53
+ console.log(" Redeemed:", balance.redeemed.toString());
54
+ console.log(" Available:", balance.available.toString());
55
+ } catch (e) {
56
+ console.error("Error:", e.message);
57
+ process.exit(1);
58
+ }
59
+ });
60
+ //# sourceMappingURL=balance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"balance.js","names":["_commander","require","_client","_config","_utils","balanceCommand","exports","Command","description","requiredOption","option","action","options","config","loadConfig","secret","validateSecret","beneficiaries","parseBeneficiaries","clientId","parseInt","isNaN","Error","client","UnionPrivatePayments","proverUrl","sourceRpcUrl","destinationRpcUrl","srcZAssetAddress","dstZAssetAddress","sourceChainId","BigInt","destinationChainId","depositAddress","getDepositAddress","nullifier","getNullifier","console","log","balance","getBalance","tokenInfo","getSrcZAssetInfo","latestHeight","lightClientHeight","formatAmount","pending","decimals","symbol","confirmed","redeemed","available","toString","e","error","message","process","exit"],"sources":["../../../../src/cli/commands/balance.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAEO,MAAMI,cAAc,GAAAC,OAAA,CAAAD,cAAA,gBAAG,IAAIE,kBAAO,CAAC,SAAS,CAAC,CACjDC,WAAW,CAAC,gCAAgC,CAAC,CAC7CC,cAAc,CAAC,gBAAgB,EAAE,kCAAkC,CAAC,CACpEC,MAAM,CACL,6BAA6B,EAC7B,uCAAuC,CACxC,CACAD,cAAc,CAAC,kBAAkB,EAAE,wBAAwB,CAAC,CAC5DC,MAAM,CACL,iBAAiB,EACjB,qBAAqB,EACrB,gCAAgC,CACjC,CACAC,MAAM,CAAC,MAAOC,OAAO,IAAI;EACxB,IAAI;IACF,MAAMC,MAAM,GAAG,IAAAC,kBAAU,EAACF,OAAO,CAACC,MAAM,CAAC;IACzC,MAAME,MAAM,GAAG,IAAAC,qBAAc,EAACJ,OAAO,CAACG,MAAM,CAAC;IAC7C,MAAME,aAAa,GAAG,IAAAC,yBAAkB,EAACN,OAAO,CAACK,aAAa,CAAC;IAC/D,MAAME,QAAQ,GAAGC,QAAQ,CAACR,OAAO,CAACO,QAAQ,EAAE,EAAE,CAAC;IAE/C,IAAIE,KAAK,CAACF,QAAQ,CAAC,IAAIA,QAAQ,GAAG,CAAC,EAAE;MACnC,MAAM,IAAIG,KAAK,CAAC,yBAAyB,CAAC;IAC5C;IAEA,MAAMC,MAAM,GAAG,IAAIC,4BAAoB,CAAC;MACtCC,SAAS,EAAEZ,MAAM,CAACY,SAAS;MAC3BC,YAAY,EAAEb,MAAM,CAACa,YAAY;MACjCC,iBAAiB,EAAEd,MAAM,CAACc,iBAAiB;MAC3CC,gBAAgB,EAAEf,MAAM,CAACe,gBAAgB;MACzCC,gBAAgB,EAAEhB,MAAM,CAACgB,gBAAgB;MACzCC,aAAa,EAAEC,MAAM,CAAClB,MAAM,CAACiB,aAAa,CAAC;MAC3CE,kBAAkB,EAAED,MAAM,CAAClB,MAAM,CAACmB,kBAAkB;KACrD,CAAC;IAEF,MAAMC,cAAc,GAAGV,MAAM,CAACW,iBAAiB,CAACnB,MAAM,EAAEE,aAAa,CAAC;IACtE,MAAMkB,SAAS,GAAGZ,MAAM,CAACa,YAAY,CAACrB,MAAM,CAAC;IAE7CsB,OAAO,CAACC,GAAG,CAAC,qBAAqB,CAAC;IAClCD,OAAO,CAACC,GAAG,CAAC,kBAAkB,EAAEL,cAAc,CAAC;IAC/CI,OAAO,CAACC,GAAG,CAAC,kBAAkB,EAAEnB,QAAQ,CAAC;IAEzC,MAAMoB,OAAO,GAAG,MAAMhB,MAAM,CAACiB,UAAU,CAAC;MACtCP,cAAc;MACdE,SAAS;MACThB;KACD,CAAC;IACF,MAAMsB,SAAS,GAAG,MAAMlB,MAAM,CAACmB,gBAAgB,EAAE;IAEjDL,OAAO,CAACC,GAAG,CAAC,EAAE,CAAC;IAEfD,OAAO,CAACC,GAAG,CAAC,kBAAkBC,OAAO,CAACI,YAAY,EAAE,CAAC;IACrDN,OAAO,CAACC,GAAG,CAAC,wBAAwBC,OAAO,CAACK,iBAAiB,EAAE,CAAC;IAChEP,OAAO,CAACC,GAAG,CACT,qBAAqBC,OAAO,CAACI,YAAY,GAAGJ,OAAO,CAACK,iBAAiB,EAAE,CACxE;IACDP,OAAO,CAACC,GAAG,CAAC,UAAU,CAAC;IACvBD,OAAO,CAACC,GAAG,CACT,YAAY,EACZ,IAAAO,mBAAY,EAACN,OAAO,CAACO,OAAO,EAAEL,SAAS,CAACM,QAAQ,EAAEN,SAAS,CAACO,MAAM,CAAC,CACpE;IACDX,OAAO,CAACC,GAAG,CACT,cAAc,EACd,IAAAO,mBAAY,EAACN,OAAO,CAACU,SAAS,EAAER,SAAS,CAACM,QAAQ,EAAEN,SAAS,CAACO,MAAM,CAAC,CACtE;IACDX,OAAO,CAACC,GAAG,CACT,aAAa,EACb,IAAAO,mBAAY,EAACN,OAAO,CAACW,QAAQ,EAAET,SAAS,CAACM,QAAQ,EAAEN,SAAS,CAACO,MAAM,CAAC,CACrE;IACDX,OAAO,CAACC,GAAG,CACT,cAAc,EACd,IAAAO,mBAAY,EAACN,OAAO,CAACY,SAAS,EAAEV,SAAS,CAACM,QAAQ,EAAEN,SAAS,CAACO,MAAM,CAAC,CACtE;IACDX,OAAO,CAACC,GAAG,CAAC,EAAE,CAAC;IACfD,OAAO,CAACC,GAAG,CAAC,cAAc,CAAC;IAC3BD,OAAO,CAACC,GAAG,CAAC,YAAY,EAAEC,OAAO,CAACO,OAAO,CAACM,QAAQ,EAAE,CAAC;IACrDf,OAAO,CAACC,GAAG,CAAC,cAAc,EAAEC,OAAO,CAACU,SAAS,CAACG,QAAQ,EAAE,CAAC;IACzDf,OAAO,CAACC,GAAG,CAAC,aAAa,EAAEC,OAAO,CAACW,QAAQ,CAACE,QAAQ,EAAE,CAAC;IACvDf,OAAO,CAACC,GAAG,CAAC,cAAc,EAAEC,OAAO,CAACY,SAAS,CAACC,QAAQ,EAAE,CAAC;EAC3D,CAAC,CAAC,OAAOC,CAAC,EAAE;IACVhB,OAAO,CAACiB,KAAK,CAAC,QAAQ,EAAGD,CAAW,CAACE,OAAO,CAAC;IAC7CC,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.depositCommand = void 0;
7
+ var _commander = require("commander");
8
+ var _viem = require("viem");
9
+ var _accounts = require("viem/accounts");
10
+ var _poseidon = require("../../poseidon2.js");
11
+ var _rpc = require("../../rpc.js");
12
+ var _config = require("../config.js");
13
+ var _utils = require("../utils.js");
14
+ const depositCommand = exports.depositCommand = /*#__PURE__*/new _commander.Command("deposit").description("Wrap underlying tokens and deposit to ZAsset").requiredOption("--amount <amount>", 'Amount to deposit in smallest units (e.g., "50000000" for 50 USDC)').requiredOption("--secret <hex>", "32-byte secret to derive deposit address (0x-prefixed hex)").option("--beneficiaries <addresses>", "Comma-separated beneficiary addresses (max 4, empty = unbounded)").option("--private-key <key>", "Private key to sign transaction (or env SENDER_PRIVATE_KEY)").option("--config <path>", "Path to config file", "./private-payments.config.json").action(async options => {
15
+ try {
16
+ const privateKey = options.privateKey ?? process.env.SENDER_PRIVATE_KEY;
17
+ if (!privateKey) {
18
+ throw new Error("Private key required. Use --private-key or set SENDER_PRIVATE_KEY env var");
19
+ }
20
+ if (!privateKey.startsWith("0x")) {
21
+ throw new Error("Private key must start with 0x");
22
+ }
23
+ const config = (0, _config.loadConfig)(options.config);
24
+ const secret = (0, _utils.validateSecret)(options.secret);
25
+ const beneficiaries = (0, _utils.parseBeneficiaries)(options.beneficiaries);
26
+ const paddedBeneficiaries = (0, _utils.padBeneficiaries)(beneficiaries);
27
+ // Use source chain RPC and ZAsset from config
28
+ const rpcUrl = config.sourceRpcUrl;
29
+ const zAssetAddress = config.srcZAssetAddress;
30
+ // Parse amount as bigint (smallest units)
31
+ const amount = BigInt(options.amount);
32
+ // Derive deposit address from secret
33
+ const depositAddress = (0, _poseidon.computeUnspendableAddress)(secret, BigInt(config.destinationChainId), paddedBeneficiaries);
34
+ // Create wallet client from private key
35
+ const account = (0, _accounts.privateKeyToAccount)(privateKey);
36
+ const walletClient = (0, _viem.createWalletClient)({
37
+ account,
38
+ chain: {
39
+ id: config.sourceChainId
40
+ },
41
+ transport: (0, _viem.http)(rpcUrl)
42
+ });
43
+ console.log("Depositing to ZAsset...");
44
+ console.log(" ZAsset:", zAssetAddress);
45
+ console.log(" Amount:", amount.toString());
46
+ console.log(" Deposit Address:", depositAddress);
47
+ console.log("");
48
+ const result = await (0, _rpc.depositToZAsset)(rpcUrl, zAssetAddress, depositAddress, amount, walletClient);
49
+ console.log("");
50
+ console.log("Deposit complete!");
51
+ console.log(" Tx Hash:", result.txHash);
52
+ console.log(" Explorer:", (0, _utils.getExplorerUrl)(Number(result.chainId), result.txHash));
53
+ } catch (e) {
54
+ console.error("Error:", e.message);
55
+ process.exit(1);
56
+ }
57
+ });
58
+ //# sourceMappingURL=deposit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deposit.js","names":["_commander","require","_viem","_accounts","_poseidon","_rpc","_config","_utils","depositCommand","exports","Command","description","requiredOption","option","action","options","privateKey","process","env","SENDER_PRIVATE_KEY","Error","startsWith","config","loadConfig","secret","validateSecret","beneficiaries","parseBeneficiaries","paddedBeneficiaries","padBeneficiaries","rpcUrl","sourceRpcUrl","zAssetAddress","srcZAssetAddress","amount","BigInt","depositAddress","computeUnspendableAddress","destinationChainId","account","privateKeyToAccount","walletClient","createWalletClient","chain","id","sourceChainId","transport","http","console","log","toString","result","depositToZAsset","txHash","getExplorerUrl","Number","chainId","e","error","message","exit"],"sources":["../../../../src/cli/commands/deposit.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.exportVerifierCommand = void 0;
7
+ var _nodeFs = require("node:fs");
8
+ var _commander = require("commander");
9
+ var _prover = require("../../legacy/prover.js");
10
+ const exportVerifierCommand = exports.exportVerifierCommand = /*#__PURE__*/new _commander.Command("export-verifier").description("Export the Solidity verifier contract from the prover server").option("--prover-url <url>", "Prover gRPC-web URL", "http://localhost:8080").option("--output <file>", "Save verifier to file (default: stdout)").action(async options => {
11
+ try {
12
+ const proverClient = new _prover.ProverClient(options.proverUrl);
13
+ console.error("Exporting verifier contract...");
14
+ console.error(" Prover URL:", options.proverUrl);
15
+ const verifierContract = await proverClient.exportVerifier();
16
+ if (options.output) {
17
+ (0, _nodeFs.writeFileSync)(options.output, verifierContract);
18
+ console.error(`Verifier saved to: ${options.output}`);
19
+ } else {
20
+ console.log(verifierContract);
21
+ }
22
+ } catch (e) {
23
+ console.error("Error:", e.message);
24
+ process.exit(1);
25
+ }
26
+ });
27
+ //# sourceMappingURL=export-verifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export-verifier.js","names":["_nodeFs","require","_commander","_prover","exportVerifierCommand","exports","Command","description","option","action","options","proverClient","ProverClient","proverUrl","console","error","verifierContract","exportVerifier","output","writeFileSync","log","e","message","process","exit"],"sources":["../../../../src/cli/commands/export-verifier.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAEO,MAAMG,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,gBAAG,IAAIE,kBAAO,CAAC,iBAAiB,CAAC,CAChEC,WAAW,CAAC,8DAA8D,CAAC,CAC3EC,MAAM,CAAC,oBAAoB,EAAE,qBAAqB,EAAE,uBAAuB,CAAC,CAC5EA,MAAM,CAAC,iBAAiB,EAAE,yCAAyC,CAAC,CACpEC,MAAM,CAAC,MAAOC,OAAO,IAAI;EACxB,IAAI;IACF,MAAMC,YAAY,GAAG,IAAIC,oBAAY,CAACF,OAAO,CAACG,SAAS,CAAC;IAExDC,OAAO,CAACC,KAAK,CAAC,gCAAgC,CAAC;IAC/CD,OAAO,CAACC,KAAK,CAAC,eAAe,EAAEL,OAAO,CAACG,SAAS,CAAC;IAEjD,MAAMG,gBAAgB,GAAG,MAAML,YAAY,CAACM,cAAc,EAAE;IAE5D,IAAIP,OAAO,CAACQ,MAAM,EAAE;MAClB,IAAAC,qBAAa,EAACT,OAAO,CAACQ,MAAM,EAAEF,gBAAgB,CAAC;MAC/CF,OAAO,CAACC,KAAK,CAAC,sBAAsBL,OAAO,CAACQ,MAAM,EAAE,CAAC;IACvD,CAAC,MAAM;MACLJ,OAAO,CAACM,GAAG,CAACJ,gBAAgB,CAAC;IAC/B;EACF,CAAC,CAAC,OAAOK,CAAC,EAAE;IACVP,OAAO,CAACC,KAAK,CAAC,QAAQ,EAAGM,CAAW,CAACC,OAAO,CAAC;IAC7CC,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.generateCommand = void 0;
7
+ var _commander = require("commander");
8
+ var _poseidon = require("../../poseidon2.js");
9
+ var _config = require("../config.js");
10
+ var _utils = require("../utils.js");
11
+ const generateCommand = exports.generateCommand = /*#__PURE__*/new _commander.Command("generate").description("Generate a new unspendable address (generates random secret by default)").option("--secret <hex>", "Use existing 32-byte secret (0x-prefixed hex) instead of generating").option("--beneficiaries <addresses>", "Comma-separated beneficiary addresses (max 4, empty = unbounded)").option("--config <path>", "Path to config file", "./private-payments.config.json").action(async options => {
12
+ try {
13
+ const config = (0, _config.loadConfig)(options.config);
14
+ const secret = options.secret ? (0, _utils.validateSecret)(options.secret) : (0, _poseidon.generatePaymentKey)();
15
+ const isNewSecret = !options.secret;
16
+ const beneficiaries = (0, _utils.parseBeneficiaries)(options.beneficiaries);
17
+ const paddedBeneficiaries = (0, _utils.padBeneficiaries)(beneficiaries);
18
+ const depositAddress = (0, _poseidon.computeUnspendableAddress)(secret, BigInt(config.destinationChainId), paddedBeneficiaries);
19
+ const nullifier = (0, _poseidon.computeNullifier)(secret, BigInt(config.destinationChainId));
20
+ const isUnbounded = beneficiaries.length === 0;
21
+ if (isNewSecret) {
22
+ console.log("Secret:", secret);
23
+ console.log("");
24
+ console.log("WARNING: Save this secret! It is required to redeem funds.");
25
+ console.log("");
26
+ }
27
+ console.log("Deposit Address:", depositAddress);
28
+ console.log("Nullifier:", "0x" + nullifier.toString(16).padStart(64, "0"));
29
+ console.log("Mode:", isUnbounded ? "Unbounded (any beneficiary allowed)" : `Bounded (${beneficiaries.length} beneficiaries)`);
30
+ if (!isUnbounded) {
31
+ console.log("Beneficiaries:");
32
+ for (const addr of beneficiaries) {
33
+ console.log(` - ${addr}`);
34
+ }
35
+ }
36
+ } catch (e) {
37
+ console.error("Error:", e.message);
38
+ process.exit(1);
39
+ }
40
+ });
41
+ //# sourceMappingURL=generate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate.js","names":["_commander","require","_poseidon","_config","_utils","generateCommand","exports","Command","description","option","action","options","config","loadConfig","secret","validateSecret","generatePaymentKey","isNewSecret","beneficiaries","parseBeneficiaries","paddedBeneficiaries","padBeneficiaries","depositAddress","computeUnspendableAddress","BigInt","destinationChainId","nullifier","computeNullifier","isUnbounded","length","console","log","toString","padStart","addr","e","error","message","process","exit"],"sources":["../../../../src/cli/commands/generate.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAKA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAMO,MAAMI,eAAe,GAAAC,OAAA,CAAAD,eAAA,gBAAG,IAAIE,kBAAO,CAAC,UAAU,CAAC,CACnDC,WAAW,CACV,yEAAyE,CAC1E,CACAC,MAAM,CACL,gBAAgB,EAChB,qEAAqE,CACtE,CACAA,MAAM,CACL,6BAA6B,EAC7B,kEAAkE,CACnE,CACAA,MAAM,CACL,iBAAiB,EACjB,qBAAqB,EACrB,gCAAgC,CACjC,CACAC,MAAM,CAAC,MAAOC,OAAO,IAAI;EACxB,IAAI;IACF,MAAMC,MAAM,GAAG,IAAAC,kBAAU,EAACF,OAAO,CAACC,MAAM,CAAC;IACzC,MAAME,MAAM,GAAGH,OAAO,CAACG,MAAM,GACzB,IAAAC,qBAAc,EAACJ,OAAO,CAACG,MAAM,CAAC,GAC9B,IAAAE,4BAAkB,GAAE;IACxB,MAAMC,WAAW,GAAG,CAACN,OAAO,CAACG,MAAM;IAEnC,MAAMI,aAAa,GAAG,IAAAC,yBAAkB,EAACR,OAAO,CAACO,aAAa,CAAC;IAC/D,MAAME,mBAAmB,GAAG,IAAAC,uBAAgB,EAACH,aAAa,CAAC;IAE3D,MAAMI,cAAc,GAAG,IAAAC,mCAAyB,EAC9CT,MAAM,EACNU,MAAM,CAACZ,MAAM,CAACa,kBAAkB,CAAC,EACjCL,mBAAmB,CACpB;IAED,MAAMM,SAAS,GAAG,IAAAC,0BAAgB,EAChCb,MAAM,EACNU,MAAM,CAACZ,MAAM,CAACa,kBAAkB,CAAC,CAClC;IAED,MAAMG,WAAW,GAAGV,aAAa,CAACW,MAAM,KAAK,CAAC;IAE9C,IAAIZ,WAAW,EAAE;MACfa,OAAO,CAACC,GAAG,CAAC,SAAS,EAAEjB,MAAM,CAAC;MAC9BgB,OAAO,CAACC,GAAG,CAAC,EAAE,CAAC;MACfD,OAAO,CAACC,GAAG,CACT,4DAA4D,CAC7D;MACDD,OAAO,CAACC,GAAG,CAAC,EAAE,CAAC;IACjB;IAEAD,OAAO,CAACC,GAAG,CAAC,kBAAkB,EAAET,cAAc,CAAC;IAC/CQ,OAAO,CAACC,GAAG,CACT,YAAY,EACZ,IAAI,GAAGL,SAAS,CAACM,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAChD;IACDH,OAAO,CAACC,GAAG,CACT,OAAO,EACPH,WAAW,GACP,qCAAqC,GACrC,YAAYV,aAAa,CAACW,MAAM,iBAAiB,CACtD;IAED,IAAI,CAACD,WAAW,EAAE;MAChBE,OAAO,CAACC,GAAG,CAAC,gBAAgB,CAAC;MAC7B,KAAK,MAAMG,IAAI,IAAIhB,aAAa,EAAE;QAChCY,OAAO,CAACC,GAAG,CAAC,OAAOG,IAAI,EAAE,CAAC;MAC5B;IACF;EACF,CAAC,CAAC,OAAOC,CAAC,EAAE;IACVL,OAAO,CAACM,KAAK,CAAC,QAAQ,EAAGD,CAAW,CAACE,OAAO,CAAC;IAC7CC,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.historyCommand = void 0;
7
+ var _commander = require("commander");
8
+ var _client = require("../../legacy/client.js");
9
+ var _rpc = require("../../rpc.js");
10
+ var _config = require("../config.js");
11
+ var _utils = require("../utils.js");
12
+ const historyCommand = exports.historyCommand = /*#__PURE__*/new _commander.Command("history").description("List redemption transactions for a secret").requiredOption("--secret <hex>", "32-byte secret (0x-prefixed hex)").option("--from-block <number>", "Start block number (default: earliest)").option("--to-block <number>", "End block number (default: latest)").option("--config <path>", "Path to config file", "./private-payments.config.json").action(async options => {
13
+ try {
14
+ const config = (0, _config.loadConfig)(options.config);
15
+ const secret = (0, _utils.validateSecret)(options.secret);
16
+ const client = new _client.UnionPrivatePayments({
17
+ proverUrl: config.proverUrl,
18
+ sourceRpcUrl: config.sourceRpcUrl,
19
+ destinationRpcUrl: config.destinationRpcUrl,
20
+ srcZAssetAddress: config.srcZAssetAddress,
21
+ dstZAssetAddress: config.dstZAssetAddress,
22
+ sourceChainId: BigInt(config.sourceChainId),
23
+ destinationChainId: BigInt(config.destinationChainId)
24
+ });
25
+ const nullifier = client.getNullifier(secret);
26
+ const nullifierHex = "0x" + nullifier.toString(16).padStart(64, "0");
27
+ console.log("Querying redemption history...");
28
+ console.log("Nullifier:", nullifierHex);
29
+ console.log("");
30
+ const fromBlock = options.fromBlock ? BigInt(options.fromBlock) : undefined;
31
+ const toBlock = options.toBlock ? BigInt(options.toBlock) : undefined;
32
+ const dstRpcClient = new _rpc.RpcClient(config.destinationRpcUrl);
33
+ const history = await dstRpcClient.getRedemptionHistory(config.dstZAssetAddress, nullifier, fromBlock, toBlock);
34
+ if (history.length === 0) {
35
+ console.log("No redemptions found for this secret.");
36
+ return;
37
+ }
38
+ // Get token info for formatting
39
+ const tokenInfo = await client.getDstZAssetInfo();
40
+ console.log(`Found ${history.length} redemption${history.length > 1 ? "s" : ""}:`);
41
+ console.log("");
42
+ for (let i = 0; i < history.length; i++) {
43
+ const entry = history[i];
44
+ console.log(`#${i + 1} Block: ${entry.blockNumber}`);
45
+ console.log(` Tx: ${entry.txHash}`);
46
+ console.log(` Amount: ${(0, _utils.formatAmount)(entry.redeemAmount, tokenInfo.decimals, tokenInfo.symbol)}`);
47
+ console.log(` Beneficiary: ${entry.beneficiary}`);
48
+ console.log(` Explorer: ${(0, _utils.getExplorerUrl)(config.destinationChainId, entry.txHash)}`);
49
+ console.log("");
50
+ }
51
+ // Show total redeemed
52
+ const totalRedeemed = history.reduce((sum, h) => sum + h.redeemAmount, 0n);
53
+ console.log(`Total redeemed: ${(0, _utils.formatAmount)(totalRedeemed, tokenInfo.decimals, tokenInfo.symbol)}`);
54
+ } catch (e) {
55
+ console.error("Error:", e.message);
56
+ process.exit(1);
57
+ }
58
+ });
59
+ //# sourceMappingURL=history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history.js","names":["_commander","require","_client","_rpc","_config","_utils","historyCommand","exports","Command","description","requiredOption","option","action","options","config","loadConfig","secret","validateSecret","client","UnionPrivatePayments","proverUrl","sourceRpcUrl","destinationRpcUrl","srcZAssetAddress","dstZAssetAddress","sourceChainId","BigInt","destinationChainId","nullifier","getNullifier","nullifierHex","toString","padStart","console","log","fromBlock","undefined","toBlock","dstRpcClient","RpcClient","history","getRedemptionHistory","length","tokenInfo","getDstZAssetInfo","i","entry","blockNumber","txHash","formatAmount","redeemAmount","decimals","symbol","beneficiary","getExplorerUrl","totalRedeemed","reduce","sum","h","e","error","message","process","exit"],"sources":["../../../../src/cli/commands/history.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.proveCommand = void 0;
7
+ var _nodeFs = require("node:fs");
8
+ var _commander = require("commander");
9
+ var _client = require("../../legacy/client.js");
10
+ var _rpc = require("../../rpc.js");
11
+ var _config = require("../config.js");
12
+ var _utils = require("../utils.js");
13
+ const proveCommand = exports.proveCommand = /*#__PURE__*/new _commander.Command("prove").description("Generate ZK proof for redemption").requiredOption("--secret <hex>", "32-byte secret (0x-prefixed hex)").option("--beneficiaries <addresses>", "Comma-separated beneficiary addresses for address derivation").requiredOption("--beneficiary <address>", "Address to redeem to").requiredOption("--amount <value>", 'Amount to redeem in smallest units (e.g., "2000000" for 2 USDC)').requiredOption("--client-ids <ids>", "Comma-separated light client IDs for anonymity set").requiredOption("--selected-client <id>", "Which client ID to use for proof").option("--output <file>", "Save proof JSON to file (default: stdout)").option("--config <path>", "Path to config file", "./private-payments.config.json").action(async options => {
14
+ try {
15
+ const config = (0, _config.loadConfig)(options.config);
16
+ const secret = (0, _utils.validateSecret)(options.secret);
17
+ const beneficiaries = (0, _utils.parseBeneficiaries)(options.beneficiaries);
18
+ const beneficiary = (0, _utils.validateAddress)(options.beneficiary, "beneficiary");
19
+ const clientIds = (0, _utils.parseClientIds)(options.clientIds);
20
+ const selectedClientId = parseInt(options.selectedClient, 10);
21
+ if (isNaN(selectedClientId)) {
22
+ throw new Error("Invalid selected client ID");
23
+ }
24
+ if (!clientIds.includes(selectedClientId)) {
25
+ throw new Error(`Selected client ${selectedClientId} not in client IDs: ${clientIds.join(", ")}`);
26
+ }
27
+ const client = new _client.UnionPrivatePayments({
28
+ proverUrl: config.proverUrl,
29
+ sourceRpcUrl: config.sourceRpcUrl,
30
+ destinationRpcUrl: config.destinationRpcUrl,
31
+ srcZAssetAddress: config.srcZAssetAddress,
32
+ dstZAssetAddress: config.dstZAssetAddress,
33
+ sourceChainId: BigInt(config.sourceChainId),
34
+ destinationChainId: BigInt(config.destinationChainId)
35
+ });
36
+ const amount = BigInt(options.amount);
37
+ console.error("Generating proof...");
38
+ console.error(" Secret:", secret.slice(0, 10) + "...");
39
+ console.error(" Beneficiary:", beneficiary);
40
+ console.error(" Amount:", amount.toString());
41
+ console.error(" Client IDs:", clientIds.join(", "));
42
+ console.error(" Selected Client:", selectedClientId);
43
+ const result = await client.generateProof(secret, beneficiaries, beneficiary, amount, clientIds, selectedClientId);
44
+ if (!result.proof.success || !result.proof.proofJson || !result.metadata) {
45
+ throw new Error(result.proof.error ?? "Proof generation failed");
46
+ }
47
+ console.error("Proof generated successfully!");
48
+ const proofJson = (0, _rpc.parseProofJson)(result.proof.proofJson);
49
+ const output = {
50
+ proof: proofJson,
51
+ metadata: {
52
+ depositAddress: result.metadata.depositAddress,
53
+ beneficiary: result.metadata.beneficiary,
54
+ value: result.metadata.value.toString(),
55
+ nullifier: "0x" + result.metadata.nullifier.toString(16).padStart(64, "0"),
56
+ lightClients: result.metadata.lightClients.map(lc => ({
57
+ clientId: lc.clientId,
58
+ height: lc.height.toString(),
59
+ stateRoot: lc.stateRoot
60
+ }))
61
+ }
62
+ };
63
+ const jsonOutput = JSON.stringify(output, null, 2);
64
+ if (options.output) {
65
+ (0, _nodeFs.writeFileSync)(options.output, jsonOutput);
66
+ console.error(`Proof saved to: ${options.output}`);
67
+ } else {
68
+ console.log(jsonOutput);
69
+ }
70
+ console.error("");
71
+ console.error("Metadata:");
72
+ console.error(" Deposit Address:", result.metadata.depositAddress);
73
+ console.error(" Beneficiary:", result.metadata.beneficiary);
74
+ console.error(" Value:", result.metadata.value.toString());
75
+ console.error(" Nullifier:", "0x" + result.metadata.nullifier.toString(16).padStart(64, "0"));
76
+ console.error(" Light Clients:", result.metadata.lightClients.length);
77
+ } catch (e) {
78
+ console.error("Error:", e.message);
79
+ process.exit(1);
80
+ }
81
+ });
82
+ //# sourceMappingURL=prove.js.map