@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.
- package/Abi/package.json +6 -0
- package/Attestor/package.json +6 -0
- package/Constants/package.json +6 -0
- package/Domain/package.json +6 -0
- package/Error/package.json +6 -0
- package/EvmPublicClient/package.json +6 -0
- package/EvmWalletClient/package.json +6 -0
- package/Payment/package.json +6 -0
- package/PaymentError/package.json +6 -0
- package/Prover/package.json +6 -0
- package/PublicClient/package.json +6 -0
- package/README.md +1 -0
- package/Schema/package.json +6 -0
- package/Utils/package.json +6 -0
- package/WalletClient/package.json +6 -0
- package/attestation/package.json +6 -0
- package/cli/commands/balance/package.json +6 -0
- package/cli/commands/deposit/package.json +6 -0
- package/cli/commands/export-verifier/package.json +6 -0
- package/cli/commands/generate/package.json +6 -0
- package/cli/commands/history/package.json +6 -0
- package/cli/commands/prove/package.json +6 -0
- package/cli/commands/redeem/package.json +6 -0
- package/cli/commands/update-client/package.json +6 -0
- package/cli/config/package.json +6 -0
- package/cli/package.json +6 -0
- package/cli/utils/package.json +6 -0
- package/constants/ibc-core-registry/package.json +6 -0
- package/constants/services/package.json +6 -0
- package/constants/z-asset-registry/package.json +6 -0
- package/dist/cjs/Abi.js +270 -0
- package/dist/cjs/Abi.js.map +1 -0
- package/dist/cjs/Attestor.js +76 -0
- package/dist/cjs/Attestor.js.map +1 -0
- package/dist/cjs/Constants.js +8 -0
- package/dist/cjs/Constants.js.map +1 -0
- package/dist/cjs/Domain.js +24 -0
- package/dist/cjs/Domain.js.map +1 -0
- package/dist/cjs/Error.js +100 -0
- package/dist/cjs/Error.js.map +1 -0
- package/dist/cjs/EvmPublicClient.js +301 -0
- package/dist/cjs/EvmPublicClient.js.map +1 -0
- package/dist/cjs/EvmWalletClient.js +670 -0
- package/dist/cjs/EvmWalletClient.js.map +1 -0
- package/dist/cjs/Payment.js +333 -0
- package/dist/cjs/Payment.js.map +1 -0
- package/dist/cjs/PaymentError.js +32 -0
- package/dist/cjs/PaymentError.js.map +1 -0
- package/dist/cjs/Prover.js +153 -0
- package/dist/cjs/Prover.js.map +1 -0
- package/dist/cjs/PublicClient.js +39 -0
- package/dist/cjs/PublicClient.js.map +1 -0
- package/dist/cjs/Schema.js +38 -0
- package/dist/cjs/Schema.js.map +1 -0
- package/dist/cjs/Utils.js +33 -0
- package/dist/cjs/Utils.js.map +1 -0
- package/dist/cjs/WalletClient.js +39 -0
- package/dist/cjs/WalletClient.js.map +1 -0
- package/dist/cjs/attestation.js +49 -0
- package/dist/cjs/attestation.js.map +1 -0
- package/dist/cjs/cli/commands/balance.js +60 -0
- package/dist/cjs/cli/commands/balance.js.map +1 -0
- package/dist/cjs/cli/commands/deposit.js +58 -0
- package/dist/cjs/cli/commands/deposit.js.map +1 -0
- package/dist/cjs/cli/commands/export-verifier.js +27 -0
- package/dist/cjs/cli/commands/export-verifier.js.map +1 -0
- package/dist/cjs/cli/commands/generate.js +41 -0
- package/dist/cjs/cli/commands/generate.js.map +1 -0
- package/dist/cjs/cli/commands/history.js +59 -0
- package/dist/cjs/cli/commands/history.js.map +1 -0
- package/dist/cjs/cli/commands/prove.js +82 -0
- package/dist/cjs/cli/commands/prove.js.map +1 -0
- package/dist/cjs/cli/commands/redeem.js +152 -0
- package/dist/cjs/cli/commands/redeem.js.map +1 -0
- package/dist/cjs/cli/commands/update-client.js +62 -0
- package/dist/cjs/cli/commands/update-client.js.map +1 -0
- package/dist/cjs/cli/config.js +32 -0
- package/dist/cjs/cli/config.js.map +1 -0
- package/dist/cjs/cli/utils.js +108 -0
- package/dist/cjs/cli/utils.js.map +1 -0
- package/dist/cjs/cli.js +24 -0
- package/dist/cjs/cli.js.map +1 -0
- package/dist/cjs/constants/ibc-core-registry.js +30 -0
- package/dist/cjs/constants/ibc-core-registry.js.map +1 -0
- package/dist/cjs/constants/services.js +9 -0
- package/dist/cjs/constants/services.js.map +1 -0
- package/dist/cjs/constants/z-asset-registry.js +32 -0
- package/dist/cjs/constants/z-asset-registry.js.map +1 -0
- package/dist/cjs/gen/prover_pb.js +81 -0
- package/dist/cjs/gen/prover_pb.js.map +1 -0
- package/dist/cjs/index.js +32 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/internal/evm.js +191 -0
- package/dist/cjs/internal/evm.js.map +1 -0
- package/dist/cjs/internal/evmWalletClient.js +6 -0
- package/dist/cjs/internal/evmWalletClient.js.map +1 -0
- package/dist/cjs/internal/publicClient.js +49 -0
- package/dist/cjs/internal/publicClient.js.map +1 -0
- package/dist/cjs/internal/walletClient.js +43 -0
- package/dist/cjs/internal/walletClient.js.map +1 -0
- package/dist/cjs/legacy/client.js +1222 -0
- package/dist/cjs/legacy/client.js.map +1 -0
- package/dist/cjs/legacy/prover.js +112 -0
- package/dist/cjs/legacy/prover.js.map +1 -0
- package/dist/cjs/poseidon2.js +226 -0
- package/dist/cjs/poseidon2.js.map +1 -0
- package/dist/cjs/promises/Attestor.js +23 -0
- package/dist/cjs/promises/Attestor.js.map +1 -0
- package/dist/cjs/promises/EvmPublicClient.js +34 -0
- package/dist/cjs/promises/EvmPublicClient.js.map +1 -0
- package/dist/cjs/promises/EvmWalletClient.js +51 -0
- package/dist/cjs/promises/EvmWalletClient.js.map +1 -0
- package/dist/cjs/promises/Payment.js +22 -0
- package/dist/cjs/promises/Payment.js.map +1 -0
- package/dist/cjs/promises/Prover.js +26 -0
- package/dist/cjs/promises/Prover.js.map +1 -0
- package/dist/cjs/promises/PublicClient.js +53 -0
- package/dist/cjs/promises/PublicClient.js.map +1 -0
- package/dist/cjs/promises/WalletClient.js +44 -0
- package/dist/cjs/promises/WalletClient.js.map +1 -0
- package/dist/cjs/promises/index.js +22 -0
- package/dist/cjs/promises/index.js.map +1 -0
- package/dist/cjs/rpc.js +867 -0
- package/dist/cjs/rpc.js.map +1 -0
- package/dist/cjs/types.js +6 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/dts/Abi.d.ts +220 -0
- package/dist/dts/Abi.d.ts.map +1 -0
- package/dist/dts/Attestor.d.ts +42 -0
- package/dist/dts/Attestor.d.ts.map +1 -0
- package/dist/dts/Constants.d.ts +3 -0
- package/dist/dts/Constants.d.ts.map +1 -0
- package/dist/dts/Domain.d.ts +141 -0
- package/dist/dts/Domain.d.ts.map +1 -0
- package/dist/dts/Error.d.ts +102 -0
- package/dist/dts/Error.d.ts.map +1 -0
- package/dist/dts/EvmPublicClient.d.ts +61 -0
- package/dist/dts/EvmPublicClient.d.ts.map +1 -0
- package/dist/dts/EvmWalletClient.d.ts +67 -0
- package/dist/dts/EvmWalletClient.d.ts.map +1 -0
- package/dist/dts/Payment.d.ts +128 -0
- package/dist/dts/Payment.d.ts.map +1 -0
- package/dist/dts/PaymentError.d.ts +21 -0
- package/dist/dts/PaymentError.d.ts.map +1 -0
- package/dist/dts/Prover.d.ts +87 -0
- package/dist/dts/Prover.d.ts.map +1 -0
- package/dist/dts/PublicClient.d.ts +146 -0
- package/dist/dts/PublicClient.d.ts.map +1 -0
- package/dist/dts/Schema.d.ts +16 -0
- package/dist/dts/Schema.d.ts.map +1 -0
- package/dist/dts/Utils.d.ts +11 -0
- package/dist/dts/Utils.d.ts.map +1 -0
- package/dist/dts/WalletClient.d.ts +123 -0
- package/dist/dts/WalletClient.d.ts.map +1 -0
- package/dist/dts/attestation.d.ts +13 -0
- package/dist/dts/attestation.d.ts.map +1 -0
- package/dist/dts/cli/commands/balance.d.ts +3 -0
- package/dist/dts/cli/commands/balance.d.ts.map +1 -0
- package/dist/dts/cli/commands/deposit.d.ts +3 -0
- package/dist/dts/cli/commands/deposit.d.ts.map +1 -0
- package/dist/dts/cli/commands/export-verifier.d.ts +3 -0
- package/dist/dts/cli/commands/export-verifier.d.ts.map +1 -0
- package/dist/dts/cli/commands/generate.d.ts +3 -0
- package/dist/dts/cli/commands/generate.d.ts.map +1 -0
- package/dist/dts/cli/commands/history.d.ts +3 -0
- package/dist/dts/cli/commands/history.d.ts.map +1 -0
- package/dist/dts/cli/commands/prove.d.ts +3 -0
- package/dist/dts/cli/commands/prove.d.ts.map +1 -0
- package/dist/dts/cli/commands/redeem.d.ts +3 -0
- package/dist/dts/cli/commands/redeem.d.ts.map +1 -0
- package/dist/dts/cli/commands/update-client.d.ts +3 -0
- package/dist/dts/cli/commands/update-client.d.ts.map +1 -0
- package/dist/dts/cli/config.d.ts +14 -0
- package/dist/dts/cli/config.d.ts.map +1 -0
- package/dist/dts/cli/utils.d.ts +11 -0
- package/dist/dts/cli/utils.d.ts.map +1 -0
- package/dist/dts/cli.d.ts +3 -0
- package/dist/dts/cli.d.ts.map +1 -0
- package/dist/dts/constants/ibc-core-registry.d.ts +11 -0
- package/dist/dts/constants/ibc-core-registry.d.ts.map +1 -0
- package/dist/dts/constants/services.d.ts +3 -0
- package/dist/dts/constants/services.d.ts.map +1 -0
- package/dist/dts/constants/z-asset-registry.d.ts +13 -0
- package/dist/dts/constants/z-asset-registry.d.ts.map +1 -0
- package/dist/dts/gen/prover_pb.d.ts +300 -0
- package/dist/dts/gen/prover_pb.d.ts.map +1 -0
- package/dist/dts/index.d.ts +21 -0
- package/dist/dts/index.d.ts.map +1 -0
- package/dist/dts/internal/evm.d.ts +250 -0
- package/dist/dts/internal/evm.d.ts.map +1 -0
- package/dist/dts/internal/evmWalletClient.d.ts +2 -0
- package/dist/dts/internal/evmWalletClient.d.ts.map +1 -0
- package/dist/dts/internal/publicClient.d.ts +2 -0
- package/dist/dts/internal/publicClient.d.ts.map +1 -0
- package/dist/dts/internal/walletClient.d.ts +2 -0
- package/dist/dts/internal/walletClient.d.ts.map +1 -0
- package/dist/dts/legacy/client.d.ts +313 -0
- package/dist/dts/legacy/client.d.ts.map +1 -0
- package/dist/dts/legacy/prover.d.ts +30 -0
- package/dist/dts/legacy/prover.d.ts.map +1 -0
- package/dist/dts/poseidon2.d.ts +18 -0
- package/dist/dts/poseidon2.d.ts.map +1 -0
- package/dist/dts/promises/Attestor.d.ts +17 -0
- package/dist/dts/promises/Attestor.d.ts.map +1 -0
- package/dist/dts/promises/EvmPublicClient.d.ts +3709 -0
- package/dist/dts/promises/EvmPublicClient.d.ts.map +1 -0
- package/dist/dts/promises/EvmWalletClient.d.ts +4502 -0
- package/dist/dts/promises/EvmWalletClient.d.ts.map +1 -0
- package/dist/dts/promises/Payment.d.ts +33 -0
- package/dist/dts/promises/Payment.d.ts.map +1 -0
- package/dist/dts/promises/Prover.d.ts +14 -0
- package/dist/dts/promises/Prover.d.ts.map +1 -0
- package/dist/dts/promises/PublicClient.d.ts +23 -0
- package/dist/dts/promises/PublicClient.d.ts.map +1 -0
- package/dist/dts/promises/WalletClient.d.ts +57 -0
- package/dist/dts/promises/WalletClient.d.ts.map +1 -0
- package/dist/dts/promises/index.d.ts +8 -0
- package/dist/dts/promises/index.d.ts.map +1 -0
- package/dist/dts/rpc.d.ts +148 -0
- package/dist/dts/rpc.d.ts.map +1 -0
- package/dist/dts/types.d.ts +263 -0
- package/dist/dts/types.d.ts.map +1 -0
- package/dist/esm/Abi.js +264 -0
- package/dist/esm/Abi.js.map +1 -0
- package/dist/esm/Attestor.js +68 -0
- package/dist/esm/Attestor.js.map +1 -0
- package/dist/esm/Constants.js +2 -0
- package/dist/esm/Constants.js.map +1 -0
- package/dist/esm/Domain.js +17 -0
- package/dist/esm/Domain.js.map +1 -0
- package/dist/esm/Error.js +89 -0
- package/dist/esm/Error.js.map +1 -0
- package/dist/esm/EvmPublicClient.js +292 -0
- package/dist/esm/EvmPublicClient.js.map +1 -0
- package/dist/esm/EvmWalletClient.js +659 -0
- package/dist/esm/EvmWalletClient.js.map +1 -0
- package/dist/esm/Payment.js +323 -0
- package/dist/esm/Payment.js.map +1 -0
- package/dist/esm/PaymentError.js +24 -0
- package/dist/esm/PaymentError.js.map +1 -0
- package/dist/esm/Prover.js +142 -0
- package/dist/esm/Prover.js.map +1 -0
- package/dist/esm/PublicClient.js +30 -0
- package/dist/esm/PublicClient.js.map +1 -0
- package/dist/esm/Schema.js +31 -0
- package/dist/esm/Schema.js.map +1 -0
- package/dist/esm/Utils.js +27 -0
- package/dist/esm/Utils.js.map +1 -0
- package/dist/esm/WalletClient.js +30 -0
- package/dist/esm/WalletClient.js.map +1 -0
- package/dist/esm/attestation.js +42 -0
- package/dist/esm/attestation.js.map +1 -0
- package/dist/esm/cli/commands/balance.js +54 -0
- package/dist/esm/cli/commands/balance.js.map +1 -0
- package/dist/esm/cli/commands/deposit.js +52 -0
- package/dist/esm/cli/commands/deposit.js.map +1 -0
- package/dist/esm/cli/commands/export-verifier.js +21 -0
- package/dist/esm/cli/commands/export-verifier.js.map +1 -0
- package/dist/esm/cli/commands/generate.js +35 -0
- package/dist/esm/cli/commands/generate.js.map +1 -0
- package/dist/esm/cli/commands/history.js +53 -0
- package/dist/esm/cli/commands/history.js.map +1 -0
- package/dist/esm/cli/commands/prove.js +76 -0
- package/dist/esm/cli/commands/prove.js.map +1 -0
- package/dist/esm/cli/commands/redeem.js +146 -0
- package/dist/esm/cli/commands/redeem.js.map +1 -0
- package/dist/esm/cli/commands/update-client.js +56 -0
- package/dist/esm/cli/commands/update-client.js.map +1 -0
- package/dist/esm/cli/config.js +26 -0
- package/dist/esm/cli/config.js.map +1 -0
- package/dist/esm/cli/utils.js +94 -0
- package/dist/esm/cli/utils.js.map +1 -0
- package/dist/esm/cli.js +22 -0
- package/dist/esm/cli.js.map +1 -0
- package/dist/esm/constants/ibc-core-registry.js +21 -0
- package/dist/esm/constants/ibc-core-registry.js.map +1 -0
- package/dist/esm/constants/services.js +3 -0
- package/dist/esm/constants/services.js.map +1 -0
- package/dist/esm/constants/z-asset-registry.js +23 -0
- package/dist/esm/constants/z-asset-registry.js.map +1 -0
- package/dist/esm/gen/prover_pb.js +74 -0
- package/dist/esm/gen/prover_pb.js.map +1 -0
- package/dist/esm/index.js +22 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/internal/evm.js +169 -0
- package/dist/esm/internal/evm.js.map +1 -0
- package/dist/esm/internal/evmWalletClient.js +2 -0
- package/dist/esm/internal/evmWalletClient.js.map +1 -0
- package/dist/esm/internal/publicClient.js +41 -0
- package/dist/esm/internal/publicClient.js.map +1 -0
- package/dist/esm/internal/walletClient.js +35 -0
- package/dist/esm/internal/walletClient.js.map +1 -0
- package/dist/esm/legacy/client.js +1212 -0
- package/dist/esm/legacy/client.js.map +1 -0
- package/dist/esm/legacy/prover.js +105 -0
- package/dist/esm/legacy/prover.js.map +1 -0
- package/dist/esm/package.json +4 -0
- package/dist/esm/poseidon2.js +218 -0
- package/dist/esm/poseidon2.js.map +1 -0
- package/dist/esm/promises/Attestor.js +14 -0
- package/dist/esm/promises/Attestor.js.map +1 -0
- package/dist/esm/promises/EvmPublicClient.js +26 -0
- package/dist/esm/promises/EvmPublicClient.js.map +1 -0
- package/dist/esm/promises/EvmWalletClient.js +43 -0
- package/dist/esm/promises/EvmWalletClient.js.map +1 -0
- package/dist/esm/promises/Payment.js +13 -0
- package/dist/esm/promises/Payment.js.map +1 -0
- package/dist/esm/promises/Prover.js +17 -0
- package/dist/esm/promises/Prover.js.map +1 -0
- package/dist/esm/promises/PublicClient.js +45 -0
- package/dist/esm/promises/PublicClient.js.map +1 -0
- package/dist/esm/promises/WalletClient.js +36 -0
- package/dist/esm/promises/WalletClient.js.map +1 -0
- package/dist/esm/promises/index.js +8 -0
- package/dist/esm/promises/index.js.map +1 -0
- package/dist/esm/rpc.js +850 -0
- package/dist/esm/rpc.js.map +1 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/gen/prover_pb/package.json +6 -0
- package/index/package.json +6 -0
- package/legacy/client/package.json +6 -0
- package/legacy/prover/package.json +6 -0
- package/package.json +397 -44
- package/poseidon2/package.json +6 -0
- package/promises/Attestor/package.json +6 -0
- package/promises/EvmPublicClient/package.json +6 -0
- package/promises/EvmWalletClient/package.json +6 -0
- package/promises/Payment/package.json +6 -0
- package/promises/Prover/package.json +6 -0
- package/promises/PublicClient/package.json +6 -0
- package/promises/WalletClient/package.json +6 -0
- package/promises/index/package.json +6 -0
- package/promises/package.json +6 -0
- package/rpc/package.json +6 -0
- package/src/Abi.ts +195 -0
- package/src/Attestor.ts +113 -0
- package/src/Constants.ts +4 -0
- package/src/Domain.ts +52 -0
- package/src/Error.ts +163 -0
- package/src/EvmPublicClient.ts +549 -0
- package/src/EvmWalletClient.ts +1034 -0
- package/src/Payment.ts +523 -0
- package/src/PaymentError.ts +39 -0
- package/src/Prover.ts +240 -0
- package/src/PublicClient.ts +196 -0
- package/src/Schema.ts +36 -0
- package/src/Utils.ts +43 -0
- package/src/WalletClient.ts +172 -0
- package/src/attestation.ts +69 -0
- package/src/cli/commands/balance.ts +88 -0
- package/src/cli/commands/deposit.ts +104 -0
- package/src/cli/commands/export-verifier.ts +28 -0
- package/src/cli/commands/generate.ts +86 -0
- package/src/cli/commands/history.ts +91 -0
- package/src/cli/commands/prove.ts +133 -0
- package/src/cli/commands/redeem.ts +277 -0
- package/src/cli/commands/update-client.ts +96 -0
- package/src/cli/config.ts +55 -0
- package/src/cli/utils.ts +136 -0
- package/src/cli.ts +31 -0
- package/src/constants/ibc-core-registry.ts +44 -0
- package/src/constants/services.ts +4 -0
- package/src/constants/z-asset-registry.ts +47 -0
- package/src/gen/prover_pb.ts +375 -0
- package/src/index.ts +23 -0
- package/src/internal/evm.ts +361 -0
- package/src/internal/evmWalletClient.ts +0 -0
- package/src/internal/publicClient.ts +57 -0
- package/src/internal/walletClient.ts +50 -0
- package/src/legacy/client.ts +1652 -0
- package/src/legacy/prover.ts +135 -0
- package/src/poseidon2.ts +246 -0
- package/src/promises/Attestor.ts +25 -0
- package/src/promises/EvmPublicClient.ts +39 -0
- package/src/promises/EvmWalletClient.ts +63 -0
- package/src/promises/Payment.ts +86 -0
- package/src/promises/Prover.ts +26 -0
- package/src/promises/PublicClient.ts +47 -0
- package/src/promises/WalletClient.ts +38 -0
- package/src/promises/index.ts +7 -0
- package/src/rpc.ts +994 -0
- package/src/types.ts +281 -0
- package/types/package.json +6 -0
- package/dist/LICENSE +0 -1
- package/dist/chunk-37PNLRA6.js +0 -2418
- package/dist/cli.cjs +0 -3031
- package/dist/cli.js +0 -675
- package/dist/index.cjs +0 -2451
- package/dist/index.js +0 -1
- package/dist/package.json +0 -18
- package/dist/payments.d.ts +0 -835
- /package/{dist → src}/tsdoc-metadata.json +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prove.js","names":["_nodeFs","require","_commander","_client","_rpc","_config","_utils","proveCommand","exports","Command","description","requiredOption","option","action","options","config","loadConfig","secret","validateSecret","beneficiaries","parseBeneficiaries","beneficiary","validateAddress","clientIds","parseClientIds","selectedClientId","parseInt","selectedClient","isNaN","Error","includes","join","client","UnionPrivatePayments","proverUrl","sourceRpcUrl","destinationRpcUrl","srcZAssetAddress","dstZAssetAddress","sourceChainId","BigInt","destinationChainId","amount","console","error","slice","toString","result","generateProof","proof","success","proofJson","metadata","parseProofJson","output","depositAddress","value","nullifier","padStart","lightClients","map","lc","clientId","height","stateRoot","jsonOutput","JSON","stringify","writeFileSync","log","length","e","message","process","exit"],"sources":["../../../../src/cli/commands/prove.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.redeemCommand = void 0;
|
|
7
|
+
var _nodeFs = require("node:fs");
|
|
8
|
+
var _commander = require("commander");
|
|
9
|
+
var _viem = require("viem");
|
|
10
|
+
var _accounts = require("viem/accounts");
|
|
11
|
+
var _chains = require("viem/chains");
|
|
12
|
+
var _attestation = require("../../attestation.js");
|
|
13
|
+
var _client = require("../../legacy/client.js");
|
|
14
|
+
var _rpc = require("../../rpc.js");
|
|
15
|
+
var _config = require("../config.js");
|
|
16
|
+
var _utils = require("../utils.js");
|
|
17
|
+
const CHAIN_MAP = {
|
|
18
|
+
1: _chains.mainnet,
|
|
19
|
+
8453: _chains.base,
|
|
20
|
+
42161: _chains.arbitrum,
|
|
21
|
+
10: _chains.optimism,
|
|
22
|
+
137: _chains.polygon
|
|
23
|
+
};
|
|
24
|
+
const redeemCommand = exports.redeemCommand = /*#__PURE__*/new _commander.Command("redeem").description("Submit redemption transaction (with existing proof or generate on the fly)").option("--proof <file>", "Path to proof JSON file (from prove command)").option("--secret <hex>", "32-byte secret (0x-prefixed hex) - required if no --proof").option("--beneficiaries <addresses>", "Comma-separated beneficiary addresses for address derivation").option("--beneficiary <address>", "Address to redeem to - required if no --proof").option("--amount <value>", "Amount to redeem in smallest units - required if no --proof").option("--client-ids <ids>", "Comma-separated light client IDs for anonymity set - required if no --proof").option("--selected-client <id>", "Which client ID to use for proof - required if no --proof").option("--private-key <key>", "Private key to send transaction (or env SENDER_PRIVATE_KEY)").option("--config <path>", "Path to config file", "./private-payments.config.json").action(async options => {
|
|
25
|
+
try {
|
|
26
|
+
const config = (0, _config.loadConfig)(options.config);
|
|
27
|
+
const privateKey = options.privateKey ?? process.env.SENDER_PRIVATE_KEY;
|
|
28
|
+
if (!privateKey) {
|
|
29
|
+
throw new Error("Private key required. Use --private-key or set SENDER_PRIVATE_KEY env var");
|
|
30
|
+
}
|
|
31
|
+
if (!privateKey.startsWith("0x")) {
|
|
32
|
+
throw new Error("Private key must start with 0x");
|
|
33
|
+
}
|
|
34
|
+
if (!config.attestorUrl) {
|
|
35
|
+
throw new Error("attestorUrl required in config for redemption");
|
|
36
|
+
}
|
|
37
|
+
if (!config.attestorApiKey) {
|
|
38
|
+
throw new Error("attestorApiKey required in config for redemption");
|
|
39
|
+
}
|
|
40
|
+
let proofData;
|
|
41
|
+
if (options.proof) {
|
|
42
|
+
// Mode 1: Load existing proof from file
|
|
43
|
+
const proofContent = (0, _nodeFs.readFileSync)(options.proof, "utf-8");
|
|
44
|
+
proofData = JSON.parse(proofContent);
|
|
45
|
+
console.log("Loading proof from:", options.proof);
|
|
46
|
+
} else {
|
|
47
|
+
// Mode 2: Generate proof on the fly
|
|
48
|
+
if (!options.secret || !options.beneficiary || !options.amount || !options.clientIds || !options.selectedClient) {
|
|
49
|
+
throw new Error("When not using --proof, you must provide: --secret, --beneficiary, --amount, --client-ids, --selected-client");
|
|
50
|
+
}
|
|
51
|
+
const secret = (0, _utils.validateSecret)(options.secret);
|
|
52
|
+
const beneficiaries = (0, _utils.parseBeneficiaries)(options.beneficiaries);
|
|
53
|
+
const beneficiary = (0, _utils.validateAddress)(options.beneficiary, "beneficiary");
|
|
54
|
+
const clientIds = (0, _utils.parseClientIds)(options.clientIds);
|
|
55
|
+
const selectedClientId = parseInt(options.selectedClient, 10);
|
|
56
|
+
if (isNaN(selectedClientId)) {
|
|
57
|
+
throw new Error("Invalid selected client ID");
|
|
58
|
+
}
|
|
59
|
+
if (!clientIds.includes(selectedClientId)) {
|
|
60
|
+
throw new Error(`Selected client ${selectedClientId} not in client IDs: ${clientIds.join(", ")}`);
|
|
61
|
+
}
|
|
62
|
+
const client = new _client.UnionPrivatePayments({
|
|
63
|
+
proverUrl: config.proverUrl,
|
|
64
|
+
sourceRpcUrl: config.sourceRpcUrl,
|
|
65
|
+
destinationRpcUrl: config.destinationRpcUrl,
|
|
66
|
+
srcZAssetAddress: config.srcZAssetAddress,
|
|
67
|
+
dstZAssetAddress: config.dstZAssetAddress,
|
|
68
|
+
sourceChainId: BigInt(config.sourceChainId),
|
|
69
|
+
destinationChainId: BigInt(config.destinationChainId)
|
|
70
|
+
});
|
|
71
|
+
const amount = BigInt(options.amount);
|
|
72
|
+
console.log("Generating proof...");
|
|
73
|
+
console.log(" Secret:", secret.slice(0, 10) + "...");
|
|
74
|
+
console.log(" Beneficiary:", beneficiary);
|
|
75
|
+
console.log(" Amount:", amount.toString());
|
|
76
|
+
console.log(" Client IDs:", clientIds.join(", "));
|
|
77
|
+
console.log(" Selected Client:", selectedClientId);
|
|
78
|
+
const result = await client.generateProof(secret, beneficiaries, beneficiary, amount, clientIds, selectedClientId);
|
|
79
|
+
if (!result.proof.success || !result.proof.proofJson || !result.metadata) {
|
|
80
|
+
throw new Error(result.proof.error ?? "Proof generation failed");
|
|
81
|
+
}
|
|
82
|
+
console.log("Proof generated successfully!");
|
|
83
|
+
const proofJson = (0, _rpc.parseProofJson)(result.proof.proofJson);
|
|
84
|
+
proofData = {
|
|
85
|
+
proof: proofJson,
|
|
86
|
+
metadata: {
|
|
87
|
+
depositAddress: result.metadata.depositAddress,
|
|
88
|
+
beneficiary: result.metadata.beneficiary,
|
|
89
|
+
value: result.metadata.value.toString(),
|
|
90
|
+
nullifier: "0x" + result.metadata.nullifier.toString(16).padStart(64, "0"),
|
|
91
|
+
lightClients: result.metadata.lightClients.map(lc => ({
|
|
92
|
+
clientId: lc.clientId,
|
|
93
|
+
height: lc.height.toString(),
|
|
94
|
+
stateRoot: lc.stateRoot
|
|
95
|
+
}))
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
const lightClients = proofData.metadata.lightClients.map(lc => ({
|
|
100
|
+
clientId: lc.clientId,
|
|
101
|
+
height: BigInt(lc.height),
|
|
102
|
+
stateRoot: lc.stateRoot
|
|
103
|
+
}));
|
|
104
|
+
const nullifier = BigInt(proofData.metadata.nullifier);
|
|
105
|
+
const value = BigInt(proofData.metadata.value);
|
|
106
|
+
const beneficiary = proofData.metadata.beneficiary;
|
|
107
|
+
const depositAddress = proofData.metadata.depositAddress;
|
|
108
|
+
console.log("");
|
|
109
|
+
console.log("Redemption details:");
|
|
110
|
+
console.log(" Deposit Address:", depositAddress);
|
|
111
|
+
console.log(" Beneficiary:", beneficiary);
|
|
112
|
+
console.log(" Value:", value.toString());
|
|
113
|
+
console.log(" Nullifier:", proofData.metadata.nullifier);
|
|
114
|
+
console.log(" Light Clients:", lightClients.length);
|
|
115
|
+
console.log("");
|
|
116
|
+
console.log("Requesting attestation...");
|
|
117
|
+
const attestationClient = new _attestation.AttestationClient(config.attestorUrl, config.attestorApiKey);
|
|
118
|
+
const attestation = await attestationClient.getAttestation(depositAddress, beneficiary);
|
|
119
|
+
console.log(" Attested Message:", attestation.attestedMessage);
|
|
120
|
+
console.log(" Signature:", attestation.signature.slice(0, 20) + "...");
|
|
121
|
+
const redeemParams = (0, _rpc.proofJsonToRedeemParams)(proofData.proof, {
|
|
122
|
+
lightClients,
|
|
123
|
+
nullifier,
|
|
124
|
+
value,
|
|
125
|
+
beneficiary,
|
|
126
|
+
attestedMessage: attestation.attestedMessage,
|
|
127
|
+
signature: attestation.signature
|
|
128
|
+
});
|
|
129
|
+
const chain = CHAIN_MAP[config.destinationChainId];
|
|
130
|
+
if (!chain) {
|
|
131
|
+
throw new Error(`Unsupported destination chain ID: ${config.destinationChainId}`);
|
|
132
|
+
}
|
|
133
|
+
// Create wallet client from private key
|
|
134
|
+
const account = (0, _accounts.privateKeyToAccount)(privateKey);
|
|
135
|
+
const walletClient = (0, _viem.createWalletClient)({
|
|
136
|
+
account,
|
|
137
|
+
chain,
|
|
138
|
+
transport: (0, _viem.http)(config.destinationRpcUrl)
|
|
139
|
+
});
|
|
140
|
+
console.log("");
|
|
141
|
+
console.log("Submitting redeem transaction...");
|
|
142
|
+
const txHash = await (0, _rpc.submitRedeem)(config.dstZAssetAddress, redeemParams, walletClient);
|
|
143
|
+
console.log("");
|
|
144
|
+
console.log("Transaction submitted!");
|
|
145
|
+
console.log("Hash:", txHash);
|
|
146
|
+
console.log("Explorer:", (0, _utils.getExplorerUrl)(config.destinationChainId, txHash));
|
|
147
|
+
} catch (e) {
|
|
148
|
+
console.error("Error:", e.message);
|
|
149
|
+
process.exit(1);
|
|
150
|
+
}
|
|
151
|
+
});
|
|
152
|
+
//# sourceMappingURL=redeem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redeem.js","names":["_nodeFs","require","_commander","_viem","_accounts","_chains","_attestation","_client","_rpc","_config","_utils","CHAIN_MAP","mainnet","base","arbitrum","optimism","polygon","redeemCommand","exports","Command","description","option","action","options","config","loadConfig","privateKey","process","env","SENDER_PRIVATE_KEY","Error","startsWith","attestorUrl","attestorApiKey","proofData","proof","proofContent","readFileSync","JSON","parse","console","log","secret","beneficiary","amount","clientIds","selectedClient","validateSecret","beneficiaries","parseBeneficiaries","validateAddress","parseClientIds","selectedClientId","parseInt","isNaN","includes","join","client","UnionPrivatePayments","proverUrl","sourceRpcUrl","destinationRpcUrl","srcZAssetAddress","dstZAssetAddress","sourceChainId","BigInt","destinationChainId","slice","toString","result","generateProof","success","proofJson","metadata","error","parseProofJson","depositAddress","value","nullifier","padStart","lightClients","map","lc","clientId","height","stateRoot","length","attestationClient","AttestationClient","attestation","getAttestation","attestedMessage","signature","redeemParams","proofJsonToRedeemParams","chain","account","privateKeyToAccount","walletClient","createWalletClient","transport","http","txHash","submitRedeem","getExplorerUrl","e","message","exit"],"sources":["../../../../src/cli/commands/redeem.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.updateClientCommand = void 0;
|
|
7
|
+
var _commander = require("commander");
|
|
8
|
+
var _viem = require("viem");
|
|
9
|
+
var _accounts = require("viem/accounts");
|
|
10
|
+
var _rpc = require("../../rpc.js");
|
|
11
|
+
var _utils = require("../utils.js");
|
|
12
|
+
const updateClientCommand = exports.updateClientCommand = /*#__PURE__*/new _commander.Command("update-client").description("Update loopback light client to a specific block height").requiredOption("--rpc <url>", "RPC URL for the chain").requiredOption("--client-id <id>", "Light client ID to update").option("--height <height>", "Block height to update to (default: latest)", "latest").requiredOption("--ibc-handler <address>", "IBCHandler contract address").option("--private-key <key>", "Private key to send transaction (or env SENDER_PRIVATE_KEY)").action(async options => {
|
|
13
|
+
try {
|
|
14
|
+
const privateKey = options.privateKey ?? process.env.SENDER_PRIVATE_KEY;
|
|
15
|
+
if (!privateKey) {
|
|
16
|
+
throw new Error("Private key required. Use --private-key or set SENDER_PRIVATE_KEY env var");
|
|
17
|
+
}
|
|
18
|
+
if (!privateKey.startsWith("0x")) {
|
|
19
|
+
throw new Error("Private key must start with 0x");
|
|
20
|
+
}
|
|
21
|
+
const clientId = parseInt(options.clientId, 10);
|
|
22
|
+
if (isNaN(clientId)) {
|
|
23
|
+
throw new Error("Invalid client ID: must be a number");
|
|
24
|
+
}
|
|
25
|
+
const ibcHandlerAddress = options.ibcHandler;
|
|
26
|
+
if (!ibcHandlerAddress.startsWith("0x") || ibcHandlerAddress.length !== 42) {
|
|
27
|
+
throw new Error("Invalid IBC handler address");
|
|
28
|
+
}
|
|
29
|
+
const height = options.height === "latest" ? "latest" : BigInt(options.height);
|
|
30
|
+
// Get chain ID from RPC first
|
|
31
|
+
const publicClient = (0, _viem.createPublicClient)({
|
|
32
|
+
transport: (0, _viem.http)(options.rpc)
|
|
33
|
+
});
|
|
34
|
+
const chainId = await publicClient.getChainId();
|
|
35
|
+
// Create wallet client from private key
|
|
36
|
+
const account = (0, _accounts.privateKeyToAccount)(privateKey);
|
|
37
|
+
const walletClient = (0, _viem.createWalletClient)({
|
|
38
|
+
account,
|
|
39
|
+
chain: {
|
|
40
|
+
id: chainId
|
|
41
|
+
},
|
|
42
|
+
transport: (0, _viem.http)(options.rpc)
|
|
43
|
+
});
|
|
44
|
+
console.log("Updating loopback light client...");
|
|
45
|
+
console.log(" RPC:", options.rpc);
|
|
46
|
+
console.log(" IBC Handler:", ibcHandlerAddress);
|
|
47
|
+
console.log(" Client ID:", clientId);
|
|
48
|
+
console.log(" Height:", height === "latest" ? "latest" : height.toString());
|
|
49
|
+
console.log("");
|
|
50
|
+
const result = await (0, _rpc.updateLoopbackClient)(options.rpc, ibcHandlerAddress, clientId, height, walletClient);
|
|
51
|
+
console.log("Light client updated successfully!");
|
|
52
|
+
console.log(" Chain ID:", result.chainId.toString());
|
|
53
|
+
console.log(" Block Number:", result.blockNumber.toString());
|
|
54
|
+
console.log(" State Root:", result.stateRoot);
|
|
55
|
+
console.log(" Transaction:", result.txHash);
|
|
56
|
+
console.log(" Explorer:", (0, _utils.getExplorerUrl)(Number(result.chainId), result.txHash));
|
|
57
|
+
} catch (e) {
|
|
58
|
+
console.error("Error:", e.message);
|
|
59
|
+
process.exit(1);
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
//# sourceMappingURL=update-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-client.js","names":["_commander","require","_viem","_accounts","_rpc","_utils","updateClientCommand","exports","Command","description","requiredOption","option","action","options","privateKey","process","env","SENDER_PRIVATE_KEY","Error","startsWith","clientId","parseInt","isNaN","ibcHandlerAddress","ibcHandler","length","height","BigInt","publicClient","createPublicClient","transport","http","rpc","chainId","getChainId","account","privateKeyToAccount","walletClient","createWalletClient","chain","id","console","log","toString","result","updateLoopbackClient","blockNumber","stateRoot","txHash","getExplorerUrl","Number","e","error","message","exit"],"sources":["../../../../src/cli/commands/update-client.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.loadConfig = loadConfig;
|
|
7
|
+
var _nodeFs = require("node:fs");
|
|
8
|
+
const DEFAULT_CONFIG_PATH = "./private-payments.config.json";
|
|
9
|
+
function loadConfig(configPath) {
|
|
10
|
+
const path = configPath ?? DEFAULT_CONFIG_PATH;
|
|
11
|
+
if (!(0, _nodeFs.existsSync)(path)) {
|
|
12
|
+
throw new Error(`Config file not found: ${path}\nCreate a private-payments.config.json file or specify --config <path>`);
|
|
13
|
+
}
|
|
14
|
+
try {
|
|
15
|
+
const content = (0, _nodeFs.readFileSync)(path, "utf-8");
|
|
16
|
+
const config = JSON.parse(content);
|
|
17
|
+
// Validate required fields
|
|
18
|
+
const required = ["proverUrl", "sourceRpcUrl", "destinationRpcUrl", "srcZAssetAddress", "dstZAssetAddress", "sourceChainId", "destinationChainId"];
|
|
19
|
+
for (const field of required) {
|
|
20
|
+
if (config[field] === undefined) {
|
|
21
|
+
throw new Error(`Missing required field in config: ${field}`);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return config;
|
|
25
|
+
} catch (e) {
|
|
26
|
+
if (e instanceof SyntaxError) {
|
|
27
|
+
throw new Error(`Invalid JSON in config file: ${path}`);
|
|
28
|
+
}
|
|
29
|
+
throw e;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","names":["_nodeFs","require","DEFAULT_CONFIG_PATH","loadConfig","configPath","path","existsSync","Error","content","readFileSync","config","JSON","parse","required","field","undefined","e","SyntaxError"],"sources":["../../../src/cli/config.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAeA,MAAMC,mBAAmB,GAAG,gCAAgC;AAEtD,SAAUC,UAAUA,CAACC,UAAmB;EAC5C,MAAMC,IAAI,GAAGD,UAAU,IAAIF,mBAAmB;EAE9C,IAAI,CAAC,IAAAI,kBAAU,EAACD,IAAI,CAAC,EAAE;IACrB,MAAM,IAAIE,KAAK,CACb,0BAA0BF,IAAI,yEAAyE,CACxG;EACH;EAEA,IAAI;IACF,MAAMG,OAAO,GAAG,IAAAC,oBAAY,EAACJ,IAAI,EAAE,OAAO,CAAC;IAC3C,MAAMK,MAAM,GAAGC,IAAI,CAACC,KAAK,CAACJ,OAAO,CAAc;IAE/C;IACA,MAAMK,QAAQ,GAAwB,CACpC,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,oBAAoB,CACrB;IAED,KAAK,MAAMC,KAAK,IAAID,QAAQ,EAAE;MAC5B,IAAIH,MAAM,CAACI,KAAK,CAAC,KAAKC,SAAS,EAAE;QAC/B,MAAM,IAAIR,KAAK,CAAC,qCAAqCO,KAAK,EAAE,CAAC;MAC/D;IACF;IAEA,OAAOJ,MAAM;EACf,CAAC,CAAC,OAAOM,CAAC,EAAE;IACV,IAAIA,CAAC,YAAYC,WAAW,EAAE;MAC5B,MAAM,IAAIV,KAAK,CAAC,gCAAgCF,IAAI,EAAE,CAAC;IACzD;IACA,MAAMW,CAAC;EACT;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.formatAmount = formatAmount;
|
|
7
|
+
exports.getExplorerUrl = getExplorerUrl;
|
|
8
|
+
exports.isValidAddress = isValidAddress;
|
|
9
|
+
exports.padBeneficiaries = padBeneficiaries;
|
|
10
|
+
exports.parseAmount = parseAmount;
|
|
11
|
+
exports.parseBeneficiaries = parseBeneficiaries;
|
|
12
|
+
exports.parseClientIds = parseClientIds;
|
|
13
|
+
exports.validateAddress = validateAddress;
|
|
14
|
+
exports.validateSecret = validateSecret;
|
|
15
|
+
const ZERO_ADDRESS = "0x0000000000000000000000000000000000000000";
|
|
16
|
+
function parseBeneficiaries(input) {
|
|
17
|
+
if (!input || input.trim() === "") {
|
|
18
|
+
return [];
|
|
19
|
+
}
|
|
20
|
+
const addresses = input.split(",").map(s => s.trim().toLowerCase());
|
|
21
|
+
if (addresses.length > 4) {
|
|
22
|
+
throw new Error("Maximum 4 beneficiaries allowed");
|
|
23
|
+
}
|
|
24
|
+
for (const addr of addresses) {
|
|
25
|
+
if (!isValidAddress(addr)) {
|
|
26
|
+
throw new Error(`Invalid address: ${addr}`);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return addresses;
|
|
30
|
+
}
|
|
31
|
+
function padBeneficiaries(beneficiaries) {
|
|
32
|
+
return [beneficiaries[0] ?? ZERO_ADDRESS, beneficiaries[1] ?? ZERO_ADDRESS, beneficiaries[2] ?? ZERO_ADDRESS, beneficiaries[3] ?? ZERO_ADDRESS];
|
|
33
|
+
}
|
|
34
|
+
function parseClientIds(input) {
|
|
35
|
+
const ids = input.split(",").map(s => {
|
|
36
|
+
const id = parseInt(s.trim(), 10);
|
|
37
|
+
if (isNaN(id) || id < 0) {
|
|
38
|
+
throw new Error(`Invalid client ID: ${s}`);
|
|
39
|
+
}
|
|
40
|
+
return id;
|
|
41
|
+
});
|
|
42
|
+
if (ids.length === 0) {
|
|
43
|
+
throw new Error("At least one client ID is required");
|
|
44
|
+
}
|
|
45
|
+
return ids;
|
|
46
|
+
}
|
|
47
|
+
function validateSecret(secret) {
|
|
48
|
+
if (!secret.startsWith("0x")) {
|
|
49
|
+
throw new Error("Secret must start with 0x");
|
|
50
|
+
}
|
|
51
|
+
if (secret.length !== 66) {
|
|
52
|
+
throw new Error("Secret must be 32 bytes (66 characters with 0x prefix)");
|
|
53
|
+
}
|
|
54
|
+
if (!/^0x[0-9a-fA-F]{64}$/.test(secret)) {
|
|
55
|
+
throw new Error("Secret must be a valid hex string");
|
|
56
|
+
}
|
|
57
|
+
return secret.toLowerCase();
|
|
58
|
+
}
|
|
59
|
+
function isValidAddress(address) {
|
|
60
|
+
return /^0x[0-9a-fA-F]{40}$/.test(address);
|
|
61
|
+
}
|
|
62
|
+
function validateAddress(address, name) {
|
|
63
|
+
if (!isValidAddress(address)) {
|
|
64
|
+
throw new Error(`Invalid ${name} address: ${address}`);
|
|
65
|
+
}
|
|
66
|
+
return address.toLowerCase();
|
|
67
|
+
}
|
|
68
|
+
function formatAmount(amount, decimals, symbol) {
|
|
69
|
+
const divisor = 10n ** BigInt(decimals);
|
|
70
|
+
const whole = amount / divisor;
|
|
71
|
+
const fraction = amount % divisor;
|
|
72
|
+
const fractionStr = fraction.toString().padStart(decimals, "0");
|
|
73
|
+
const trimmedFraction = fractionStr.replace(/0+$/, "");
|
|
74
|
+
const formatted = trimmedFraction ? `${whole}.${trimmedFraction}` : whole.toString();
|
|
75
|
+
return symbol ? `${formatted} ${symbol}` : formatted;
|
|
76
|
+
}
|
|
77
|
+
function parseAmount(input, decimals) {
|
|
78
|
+
const parts = input.split(".");
|
|
79
|
+
if (parts.length > 2) {
|
|
80
|
+
throw new Error(`Invalid amount: ${input}`);
|
|
81
|
+
}
|
|
82
|
+
const whole = parts[0] ?? "0";
|
|
83
|
+
let fraction = parts[1] ?? "";
|
|
84
|
+
if (fraction.length > decimals) {
|
|
85
|
+
fraction = fraction.slice(0, decimals);
|
|
86
|
+
} else {
|
|
87
|
+
fraction = fraction.padEnd(decimals, "0");
|
|
88
|
+
}
|
|
89
|
+
const wholeBigInt = BigInt(whole);
|
|
90
|
+
const fractionBigInt = BigInt(fraction);
|
|
91
|
+
const divisor = 10n ** BigInt(decimals);
|
|
92
|
+
return wholeBigInt * divisor + fractionBigInt;
|
|
93
|
+
}
|
|
94
|
+
function getExplorerUrl(chainId, txHash) {
|
|
95
|
+
const explorers = {
|
|
96
|
+
1: "https://etherscan.io",
|
|
97
|
+
8453: "https://basescan.org",
|
|
98
|
+
42161: "https://arbiscan.io",
|
|
99
|
+
10: "https://optimistic.etherscan.io",
|
|
100
|
+
137: "https://polygonscan.com"
|
|
101
|
+
};
|
|
102
|
+
const explorer = explorers[chainId];
|
|
103
|
+
if (explorer) {
|
|
104
|
+
return `${explorer}/tx/${txHash}`;
|
|
105
|
+
}
|
|
106
|
+
return txHash;
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","names":["ZERO_ADDRESS","parseBeneficiaries","input","trim","addresses","split","map","s","toLowerCase","length","Error","addr","isValidAddress","padBeneficiaries","beneficiaries","parseClientIds","ids","id","parseInt","isNaN","validateSecret","secret","startsWith","test","address","validateAddress","name","formatAmount","amount","decimals","symbol","divisor","BigInt","whole","fraction","fractionStr","toString","padStart","trimmedFraction","replace","formatted","parseAmount","parts","slice","padEnd","wholeBigInt","fractionBigInt","getExplorerUrl","chainId","txHash","explorers","explorer"],"sources":["../../../src/cli/utils.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/cli.js
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
|
|
4
|
+
var _commander = require("commander");
|
|
5
|
+
var _balance = require("./cli/commands/balance.js");
|
|
6
|
+
var _deposit = require("./cli/commands/deposit.js");
|
|
7
|
+
var _exportVerifier = require("./cli/commands/export-verifier.js");
|
|
8
|
+
var _generate = require("./cli/commands/generate.js");
|
|
9
|
+
var _history = require("./cli/commands/history.js");
|
|
10
|
+
var _prove = require("./cli/commands/prove.js");
|
|
11
|
+
var _redeem = require("./cli/commands/redeem.js");
|
|
12
|
+
var _updateClient = require("./cli/commands/update-client.js");
|
|
13
|
+
const program = /*#__PURE__*/new _commander.Command();
|
|
14
|
+
program.name("payments").description("CLI for Union Private Payments - privacy-preserving transfers using ZK proofs").version("0.1.0");
|
|
15
|
+
program.addCommand(_generate.generateCommand);
|
|
16
|
+
program.addCommand(_balance.balanceCommand);
|
|
17
|
+
program.addCommand(_prove.proveCommand);
|
|
18
|
+
program.addCommand(_redeem.redeemCommand);
|
|
19
|
+
program.addCommand(_updateClient.updateClientCommand);
|
|
20
|
+
program.addCommand(_deposit.depositCommand);
|
|
21
|
+
program.addCommand(_history.historyCommand);
|
|
22
|
+
program.addCommand(_exportVerifier.exportVerifierCommand);
|
|
23
|
+
program.parse();
|
|
24
|
+
//# sourceMappingURL=cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","names":["_commander","require","_balance","_deposit","_exportVerifier","_generate","_history","_prove","_redeem","_updateClient","program","Command","name","description","version","addCommand","generateCommand","balanceCommand","proveCommand","redeemCommand","updateClientCommand","depositCommand","historyCommand","exportVerifierCommand","parse"],"sources":["../../src/cli.ts"],"sourcesContent":[null],"mappings":";;;AAEA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,OAAA,GAAAP,OAAA;AACA,IAAAQ,aAAA,GAAAR,OAAA;AAEA,MAAMS,OAAO,gBAAG,IAAIC,kBAAO,EAAE;AAE7BD,OAAO,CACJE,IAAI,CAAC,UAAU,CAAC,CAChBC,WAAW,CACV,+EAA+E,CAChF,CACAC,OAAO,CAAC,OAAO,CAAC;AAEnBJ,OAAO,CAACK,UAAU,CAACC,yBAAe,CAAC;AACnCN,OAAO,CAACK,UAAU,CAACE,uBAAc,CAAC;AAClCP,OAAO,CAACK,UAAU,CAACG,mBAAY,CAAC;AAChCR,OAAO,CAACK,UAAU,CAACI,qBAAa,CAAC;AACjCT,OAAO,CAACK,UAAU,CAACK,iCAAmB,CAAC;AACvCV,OAAO,CAACK,UAAU,CAACM,uBAAc,CAAC;AAClCX,OAAO,CAACK,UAAU,CAACO,uBAAc,CAAC;AAClCZ,OAAO,CAACK,UAAU,CAACQ,qCAAqB,CAAC;AAEzCb,OAAO,CAACc,KAAK,EAAE","ignoreList":[]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.IBC_CORE_REGISTRY = void 0;
|
|
7
|
+
exports.getIbcHandler = getIbcHandler;
|
|
8
|
+
exports.getIbcHandlerOrThrow = exports.getIbcHandlerOrError = void 0;
|
|
9
|
+
var _effect = require("effect");
|
|
10
|
+
var Domain = _interopRequireWildcard(require("../Domain.js"));
|
|
11
|
+
var Error = _interopRequireWildcard(require("../Error.js"));
|
|
12
|
+
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); }
|
|
13
|
+
const IBC_CORE_REGISTRY = exports.IBC_CORE_REGISTRY = {
|
|
14
|
+
"8453": /*#__PURE__*/Domain.IbcHandlerAddress("0xee4ea8d358473f0fcebf0329feed95d56e8c04d7")
|
|
15
|
+
};
|
|
16
|
+
function getIbcHandler(chainId) {
|
|
17
|
+
return _effect.Option.fromNullable(IBC_CORE_REGISTRY[`${chainId}`]);
|
|
18
|
+
}
|
|
19
|
+
const getIbcHandlerOrError = exports.getIbcHandlerOrError = /*#__PURE__*/(0, _effect.flow)(getIbcHandler, /*#__PURE__*/_effect.Effect.mapError(cause => new Error.SystemError({
|
|
20
|
+
module: "IbcCoreRegistry",
|
|
21
|
+
reason: "InvalidData",
|
|
22
|
+
method: "getIbcHandlerOrError",
|
|
23
|
+
cause
|
|
24
|
+
})));
|
|
25
|
+
const getIbcHandlerOrThrow = exports.getIbcHandlerOrThrow = /*#__PURE__*/(0, _effect.flow)(getIbcHandler, /*#__PURE__*/_effect.Option.getOrThrowWith(() => new Error.SystemError({
|
|
26
|
+
module: "IbcCoreRegistry",
|
|
27
|
+
reason: "InvalidData",
|
|
28
|
+
method: "getIbcHandlerOrError"
|
|
29
|
+
})));
|
|
30
|
+
//# sourceMappingURL=ibc-core-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ibc-core-registry.js","names":["_effect","require","Domain","_interopRequireWildcard","Error","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","IBC_CORE_REGISTRY","exports","IbcHandlerAddress","getIbcHandler","chainId","Option","fromNullable","getIbcHandlerOrError","flow","Effect","mapError","cause","SystemError","module","reason","method","getIbcHandlerOrThrow","getOrThrowWith"],"sources":["../../../src/constants/ibc-core-registry.ts"],"sourcesContent":[null],"mappings":";;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,uBAAA,CAAAF,OAAA;AACA,IAAAG,KAAA,GAAAD,uBAAA,CAAAF,OAAA;AAAoC,SAAAE,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;AAI7B,MAAMkB,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAE1B;EACF,MAAM,eAAEtB,MAAM,CAACwB,iBAAiB,CAC9B,4CAA4C;CAEtC;AAEJ,SAAUC,aAAaA,CAC3BC,OAAe;EAEf,OAAOC,cAAM,CAACC,YAAY,CAACN,iBAAiB,CAAC,GAAGI,OAAO,EAAE,CAAC,CAAC;AAC7D;AAEO,MAAMG,oBAAoB,GAAAN,OAAA,CAAAM,oBAAA,gBAAG,IAAAC,YAAI,EACtCL,aAAa,eACbM,cAAM,CAACC,QAAQ,CACZC,KAAK,IACJ,IAAI/B,KAAK,CAACgC,WAAW,CAAC;EACpBC,MAAM,EAAE,iBAAiB;EACzBC,MAAM,EAAE,aAAa;EACrBC,MAAM,EAAE,sBAAsB;EAC9BJ;CACD,CAAC,CACL,CACF;AAEM,MAAMK,oBAAoB,GAAAf,OAAA,CAAAe,oBAAA,gBAAG,IAAAR,YAAI,EACtCL,aAAa,eACbE,cAAM,CAACY,cAAc,CACnB,MACE,IAAIrC,KAAK,CAACgC,WAAW,CAAC;EACpBC,MAAM,EAAE,iBAAiB;EACzBC,MAAM,EAAE,aAAa;EACrBC,MAAM,EAAE;CACT,CAAC,CACL,CACF","ignoreList":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.DEFAULT_PROVER_URL = exports.DEFAULT_ATTESTOR_URL = void 0;
|
|
7
|
+
const DEFAULT_PROVER_URL = exports.DEFAULT_PROVER_URL = "https://prover.payments.union.build";
|
|
8
|
+
const DEFAULT_ATTESTOR_URL = exports.DEFAULT_ATTESTOR_URL = "https://attestor.payments.union.build/functions/v1/attest";
|
|
9
|
+
//# sourceMappingURL=services.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"services.js","names":["DEFAULT_PROVER_URL","exports","DEFAULT_ATTESTOR_URL"],"sources":["../../../src/constants/services.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAO,MAAMA,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,GAAG,qCAAqC;AAEhE,MAAME,oBAAoB,GAAAD,OAAA,CAAAC,oBAAA,GAC/B,2DAA2D","ignoreList":[]}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.Z_ASSET_REGISTRY = void 0;
|
|
7
|
+
exports.getZAsset = getZAsset;
|
|
8
|
+
exports.getZAssetOrThrow = exports.getZAssetOrError = void 0;
|
|
9
|
+
var _effect = require("effect");
|
|
10
|
+
var Domain = _interopRequireWildcard(require("../Domain.js"));
|
|
11
|
+
var Error = _interopRequireWildcard(require("../Error.js"));
|
|
12
|
+
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); }
|
|
13
|
+
const Z_ASSET_REGISTRY = exports.Z_ASSET_REGISTRY = {
|
|
14
|
+
"8453": {
|
|
15
|
+
[/*#__PURE__*/Domain.Erc20Address("0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913")]: /*#__PURE__*/Domain.ZAssetAddress("0xF0000101561619d8A61ABd045F47Af4f41Afe62D")
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
function getZAsset(chainId, assetAddress) {
|
|
19
|
+
return _effect.Option.fromNullable(Z_ASSET_REGISTRY[`${chainId}`]?.[assetAddress]);
|
|
20
|
+
}
|
|
21
|
+
const getZAssetOrError = exports.getZAssetOrError = /*#__PURE__*/(0, _effect.flow)(getZAsset, /*#__PURE__*/_effect.Effect.mapError(cause => new Error.SystemError({
|
|
22
|
+
method: "approveZAssetToSpendErc20",
|
|
23
|
+
module: "EvmWalletClient",
|
|
24
|
+
reason: "InvalidData",
|
|
25
|
+
cause
|
|
26
|
+
})));
|
|
27
|
+
const getZAssetOrThrow = exports.getZAssetOrThrow = /*#__PURE__*/(0, _effect.flow)(getZAsset, /*#__PURE__*/_effect.Option.getOrThrowWith(() => new Error.SystemError({
|
|
28
|
+
method: "approveZAssetToSpendErc20",
|
|
29
|
+
module: "EvmWalletClient",
|
|
30
|
+
reason: "InvalidData"
|
|
31
|
+
})));
|
|
32
|
+
//# sourceMappingURL=z-asset-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"z-asset-registry.js","names":["_effect","require","Domain","_interopRequireWildcard","Error","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Z_ASSET_REGISTRY","exports","Erc20Address","ZAssetAddress","getZAsset","chainId","assetAddress","Option","fromNullable","getZAssetOrError","flow","Effect","mapError","cause","SystemError","method","module","reason","getZAssetOrThrow","getOrThrowWith"],"sources":["../../../src/constants/z-asset-registry.ts"],"sourcesContent":[null],"mappings":";;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAC,uBAAA,CAAAF,OAAA;AACA,IAAAG,KAAA,GAAAD,uBAAA,CAAAF,OAAA;AAAoC,SAAAE,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;AAE7B,MAAMkB,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAIzB;EACF,MAAM,EAAE;IACN,cAACtB,MAAM,CAACwB,YAAY,CAAC,4CAA4C,CAAC,gBAChExB,MAAM,CAACyB,aAAa,CAAC,4CAA4C;;CAE7D;AAEJ,SAAUC,SAASA,CACvBC,OAAe,EACfC,YAA0B;EAE1B,OAAOC,cAAM,CAACC,YAAY,CAACR,gBAAgB,CAAC,GAAGK,OAAO,EAAE,CAAC,GAAGC,YAAY,CAAC,CAAC;AAC5E;AAEO,MAAMG,gBAAgB,GAAAR,OAAA,CAAAQ,gBAAA,gBAAG,IAAAC,YAAI,EAClCN,SAAS,eACTO,cAAM,CAACC,QAAQ,CACZC,KAAK,IACJ,IAAIjC,KAAK,CAACkC,WAAW,CAAC;EACpBC,MAAM,EAAE,2BAA2B;EACnCC,MAAM,EAAE,iBAAiB;EACzBC,MAAM,EAAE,aAAa;EACrBJ;CACD,CAAC,CACL,CACF;AAEM,MAAMK,gBAAgB,GAAAjB,OAAA,CAAAiB,gBAAA,gBAAG,IAAAR,YAAI,EAClCN,SAAS,eACTG,cAAM,CAACY,cAAc,CACnB,MACE,IAAIvC,KAAK,CAACkC,WAAW,CAAC;EACpBC,MAAM,EAAE,2BAA2B;EACnCC,MAAM,EAAE,iBAAiB;EACzBC,MAAM,EAAE;CACT,CAAC,CACL,CACF","ignoreList":[]}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.file_prover = exports.WitnessDataSchema = exports.VerifierResponseSchema = exports.VerifierRequestSchema = exports.ProverService = exports.ProofRequestSchema = exports.PollResponseSchema = exports.PendingSchema = exports.MPTProofDataSchema = exports.LightClientDataSchema = exports.FailedSchema = exports.DoneSchema = void 0;
|
|
7
|
+
var _codegenv = require("@bufbuild/protobuf/codegenv2");
|
|
8
|
+
// @generated by protoc-gen-es v2.10.1 with parameter "target=ts"
|
|
9
|
+
// @generated from file prover.proto (package prover, syntax proto3)
|
|
10
|
+
/* eslint-disable */
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Describes the file prover.proto.
|
|
14
|
+
*/
|
|
15
|
+
const file_prover = exports.file_prover = /*@__PURE__*/
|
|
16
|
+
(0, _codegenv.fileDesc)("Cgxwcm92ZXIucHJvdG8SBnByb3ZlciI0CgxQcm9vZlJlcXVlc3QSJAoHd2l0bmVzcxgBIAEoCzITLnByb3Zlci5XaXRuZXNzRGF0YSK1AgoLV2l0bmVzc0RhdGESDgoGc2VjcmV0GAEgASgJEhQKDGRzdF9jaGFpbl9pZBgCIAEoBBIVCg1iZW5lZmljaWFyaWVzGAMgAygJEhMKC2JlbmVmaWNpYXJ5GAQgASgJEhUKDXJlZGVlbV9hbW91bnQYBSABKAkSGAoQYWxyZWFkeV9yZWRlZW1lZBgGIAEoCRIuCg1saWdodF9jbGllbnRzGAcgAygLMhcucHJvdmVyLkxpZ2h0Q2xpZW50RGF0YRIdChVzZWxlY3RlZF9jbGllbnRfaW5kZXgYCCABKA0SJwoJbXB0X3Byb29mGAkgASgLMhQucHJvdmVyLk1QVFByb29mRGF0YRIVCg10b2tlbl9hZGRyZXNzGAogASgJEhQKDG1hcHBpbmdfc2xvdBgLIAEoCSJICg9MaWdodENsaWVudERhdGESEQoJY2xpZW50X2lkGAEgASgNEg4KBmhlaWdodBgCIAEoBBISCgpzdGF0ZV9yb290GAMgASgJImkKDE1QVFByb29mRGF0YRIVCg1hY2NvdW50X3Byb29mGAEgAygJEhUKDXN0b3JhZ2VfcHJvb2YYAiADKAkSFQoNc3RvcmFnZV92YWx1ZRgDIAEoCRIUCgxzdG9yYWdlX3Jvb3QYBCABKAkifAoMUG9sbFJlc3BvbnNlEiIKB3BlbmRpbmcYASABKAsyDy5wcm92ZXIuUGVuZGluZ0gAEhwKBGRvbmUYAiABKAsyDC5wcm92ZXIuRG9uZUgAEiAKBmZhaWxlZBgDIAEoCzIOLnByb3Zlci5GYWlsZWRIAEIICgZyZXN1bHQiCQoHUGVuZGluZyIuCgREb25lEhIKCnByb29mX2pzb24YASABKAwSEgoKY3JlYXRlZF9hdBgCIAEoAyIfCgZGYWlsZWQSFQoNZXJyb3JfbWVzc2FnZRgBIAEoCSIRCg9WZXJpZmllclJlcXVlc3QiLQoQVmVyaWZpZXJSZXNwb25zZRIZChF2ZXJpZmllcl9jb250cmFjdBgBIAEoCTKIAQoNUHJvdmVyU2VydmljZRIyCgRQb2xsEhQucHJvdmVyLlByb29mUmVxdWVzdBoULnByb3Zlci5Qb2xsUmVzcG9uc2USQwoORXhwb3J0VmVyaWZpZXISFy5wcm92ZXIuVmVyaWZpZXJSZXF1ZXN0GhgucHJvdmVyLlZlcmlmaWVyUmVzcG9uc2VCHFoacHJpdmF0ZS10cmFuc2Zlci9hcGkvcHJvdG9iBnByb3RvMw");
|
|
17
|
+
/**
|
|
18
|
+
* Describes the message prover.ProofRequest.
|
|
19
|
+
* Use `create(ProofRequestSchema)` to create a new message.
|
|
20
|
+
*/
|
|
21
|
+
const ProofRequestSchema = exports.ProofRequestSchema = /*@__PURE__*/
|
|
22
|
+
(0, _codegenv.messageDesc)(file_prover, 0);
|
|
23
|
+
/**
|
|
24
|
+
* Describes the message prover.WitnessData.
|
|
25
|
+
* Use `create(WitnessDataSchema)` to create a new message.
|
|
26
|
+
*/
|
|
27
|
+
const WitnessDataSchema = exports.WitnessDataSchema = /*@__PURE__*/
|
|
28
|
+
(0, _codegenv.messageDesc)(file_prover, 1);
|
|
29
|
+
/**
|
|
30
|
+
* Describes the message prover.LightClientData.
|
|
31
|
+
* Use `create(LightClientDataSchema)` to create a new message.
|
|
32
|
+
*/
|
|
33
|
+
const LightClientDataSchema = exports.LightClientDataSchema = /*@__PURE__*/
|
|
34
|
+
(0, _codegenv.messageDesc)(file_prover, 2);
|
|
35
|
+
/**
|
|
36
|
+
* Describes the message prover.MPTProofData.
|
|
37
|
+
* Use `create(MPTProofDataSchema)` to create a new message.
|
|
38
|
+
*/
|
|
39
|
+
const MPTProofDataSchema = exports.MPTProofDataSchema = /*@__PURE__*/
|
|
40
|
+
(0, _codegenv.messageDesc)(file_prover, 3);
|
|
41
|
+
/**
|
|
42
|
+
* Describes the message prover.PollResponse.
|
|
43
|
+
* Use `create(PollResponseSchema)` to create a new message.
|
|
44
|
+
*/
|
|
45
|
+
const PollResponseSchema = exports.PollResponseSchema = /*@__PURE__*/
|
|
46
|
+
(0, _codegenv.messageDesc)(file_prover, 4);
|
|
47
|
+
/**
|
|
48
|
+
* Describes the message prover.Pending.
|
|
49
|
+
* Use `create(PendingSchema)` to create a new message.
|
|
50
|
+
*/
|
|
51
|
+
const PendingSchema = exports.PendingSchema = /*@__PURE__*/
|
|
52
|
+
(0, _codegenv.messageDesc)(file_prover, 5);
|
|
53
|
+
/**
|
|
54
|
+
* Describes the message prover.Done.
|
|
55
|
+
* Use `create(DoneSchema)` to create a new message.
|
|
56
|
+
*/
|
|
57
|
+
const DoneSchema = exports.DoneSchema = /*@__PURE__*/
|
|
58
|
+
(0, _codegenv.messageDesc)(file_prover, 6);
|
|
59
|
+
/**
|
|
60
|
+
* Describes the message prover.Failed.
|
|
61
|
+
* Use `create(FailedSchema)` to create a new message.
|
|
62
|
+
*/
|
|
63
|
+
const FailedSchema = exports.FailedSchema = /*@__PURE__*/
|
|
64
|
+
(0, _codegenv.messageDesc)(file_prover, 7);
|
|
65
|
+
/**
|
|
66
|
+
* Describes the message prover.VerifierRequest.
|
|
67
|
+
* Use `create(VerifierRequestSchema)` to create a new message.
|
|
68
|
+
*/
|
|
69
|
+
const VerifierRequestSchema = exports.VerifierRequestSchema = /*@__PURE__*/
|
|
70
|
+
(0, _codegenv.messageDesc)(file_prover, 8);
|
|
71
|
+
/**
|
|
72
|
+
* Describes the message prover.VerifierResponse.
|
|
73
|
+
* Use `create(VerifierResponseSchema)` to create a new message.
|
|
74
|
+
*/
|
|
75
|
+
const VerifierResponseSchema = exports.VerifierResponseSchema = /*@__PURE__*/
|
|
76
|
+
(0, _codegenv.messageDesc)(file_prover, 9);
|
|
77
|
+
/**
|
|
78
|
+
* @generated from service prover.ProverService
|
|
79
|
+
*/
|
|
80
|
+
const ProverService = exports.ProverService = /*@__PURE__*/(0, _codegenv.serviceDesc)(file_prover, 0);
|
|
81
|
+
//# sourceMappingURL=prover_pb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prover_pb.js","names":["_codegenv","require","file_prover","exports","fileDesc","ProofRequestSchema","messageDesc","WitnessDataSchema","LightClientDataSchema","MPTProofDataSchema","PollResponseSchema","PendingSchema","DoneSchema","FailedSchema","VerifierRequestSchema","VerifierResponseSchema","ProverService","serviceDesc"],"sources":["../../../src/gen/prover_pb.ts"],"sourcesContent":[null],"mappings":";;;;;;AAUA,IAAAA,SAAA,GAAAC,OAAA;AAVA;AACA;AACA;;AAcA;;;AAGO,MAAMC,WAAW,GAAAC,OAAA,CAAAD,WAAA,GACtB;AACA,IAAAE,kBAAQ,EACN,g2CAAg2C,CACj2C;AAgBH;;;;AAIO,MAAMC,kBAAkB,GAAAF,OAAA,CAAAE,kBAAA,GAC7B;AACA,IAAAC,qBAAW,EAACJ,WAAW,EAAE,CAAC,CAAC;AA6F7B;;;;AAIO,MAAMK,iBAAiB,GAAAJ,OAAA,CAAAI,iBAAA,GAC5B;AACA,IAAAD,qBAAW,EAACJ,WAAW,EAAE,CAAC,CAAC;AA8B7B;;;;AAIO,MAAMM,qBAAqB,GAAAL,OAAA,CAAAK,qBAAA,GAChC;AACA,IAAAF,qBAAW,EAACJ,WAAW,EAAE,CAAC,CAAC;AAyC7B;;;;AAIO,MAAMO,kBAAkB,GAAAN,OAAA,CAAAM,kBAAA,GAC7B;AACA,IAAAH,qBAAW,EAACJ,WAAW,EAAE,CAAC,CAAC;AAkC7B;;;;AAIO,MAAMQ,kBAAkB,GAAAP,OAAA,CAAAO,kBAAA,GAC7B;AACA,IAAAJ,qBAAW,EAACJ,WAAW,EAAE,CAAC,CAAC;AAO7B;;;;AAIO,MAAMS,aAAa,GAAAR,OAAA,CAAAQ,aAAA,GACxB;AACA,IAAAL,qBAAW,EAACJ,WAAW,EAAE,CAAC,CAAC;AAiB7B;;;;AAIO,MAAMU,UAAU,GAAAT,OAAA,CAAAS,UAAA,GACrB;AACA,IAAAN,qBAAW,EAACJ,WAAW,EAAE,CAAC,CAAC;AAY7B;;;;AAIO,MAAMW,YAAY,GAAAV,OAAA,CAAAU,YAAA,GACvB;AACA,IAAAP,qBAAW,EAACJ,WAAW,EAAE,CAAC,CAAC;AAO7B;;;;AAIO,MAAMY,qBAAqB,GAAAX,OAAA,CAAAW,qBAAA,GAChC;AACA,IAAAR,qBAAW,EAACJ,WAAW,EAAE,CAAC,CAAC;AAY7B;;;;AAIO,MAAMa,sBAAsB,GAAAZ,OAAA,CAAAY,sBAAA,GACjC;AACA,IAAAT,qBAAW,EAACJ,WAAW,EAAE,CAAC,CAAC;AAE7B;;;AAGO,MAAMc,aAAa,GAAAb,OAAA,CAAAa,aAAA,GAiBrB,aAAc,IAAAC,qBAAW,EAACf,WAAW,EAAE,CAAC,CAAC","ignoreList":[]}
|