@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":"EvmWalletClient.js","names":["A","_interopRequireWildcard","require","Brand","Context","Effect","_Function","Layer","Number","Ref","Abi","ZAssetRegistry","Domain","Error","EvmPublicClient","Client","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","EvmWalletClient","GenericTag","makeViem","wallet","gen","Viem","tryPromise","try","then","x","catch","cause","SystemError","reason","method","module","description","ViemActions","publicClient","pipe","createPublicClient","chain","transport","custom","flatMap","transactionCount","getTransactionCount","address","account","blockTag","make","encodeFunctionData","fn","parameters","writeContract","params","map","hash","SubmissionResult","viemWriteContract","nominal","prepareTransactionRequest","nonce","tap","update","increment","prepareBatchTransactionRequest","calls","chainNonce","log","simulationResult","simulateCalls","to","data","value","results","gasEstimates","gasUsed","BigInt","undefined","prepared","length","gas","request","push","signTransaction","sendRawTransaction","sign","liftPredicate","PreparedRequest","$is","SignedRequest","viem","submit","serializedTransaction","signAndSubmit","sendTransaction","approveZAssetToSpendErc20","args","getZAsset","srcErc20Address","mapError","zAsset","abi","ERC20_ABI","functionName","amount","kind","updateLoopbackClient","clientId","height","ibcHandlerAddress","extend","publicActions","blockNumber","block","getBlock","toRlpHex","hex","toString","headerFields","parentHash","sha3Uncles","miner","stateRoot","transactionsRoot","receiptsRoot","logsBloom","repeat","difficulty","number","gasLimit","timestamp","extraData","mixHash","baseFeePerGas","withdrawalsRoot","blobGasUsed","excessBlobGas","parentBeaconBlockRoot","blockAny","requestsHash","rlpEncoded","toRlp","computedHash","keccak256","clientMessage","encodeAbiParameters","type","name","LIGHTCLIENT_ABI","inputs","outputs","stateMutability","currentBlock","getBlockNumber","sleep","loopbackClient","readContract","IBC_STORE_ABI","depositUnderlyingZAsset","zAssetAddr","ZASSET_ABI","transferZAsset","depositAddress","prepareDeposit","zAssetAddress","Z_ASSET_REGISTRY","sourceChainId","approvalData","depositData","transferData","all","concurrency","preparedTxs","approval","deposit","transfer","prepareRedemption","dstErc20Address","proof","commitments","commitmentPok","lightClients","nullifier","beneficiary","attestedMessage","signature","unwrap","assign","layerFromViem","config","scopedContext","client","add","WalletClient","makeBrowser","options","Mipd","store","createStore","providers","getProviders","selected","findFirst","providerPredicate","provider","accountPredicate","catchTag","ViemChains","createWalletClient","base","layerFromBrowser","unwrapScoped"],"sources":["../../src/EvmWalletClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.computeStorageSlot = void 0;
|
|
7
|
+
exports.deterministicShuffleClients = deterministicShuffleClients;
|
|
8
|
+
exports.prepareRedemption = exports.prepareDeposit = exports.getNullifier = exports.getDepositAddress = exports.generateProof = exports.generateKey = void 0;
|
|
9
|
+
var _effect = require("effect");
|
|
10
|
+
var A = _interopRequireWildcard(require("effect/Array"));
|
|
11
|
+
var _viem = require("viem");
|
|
12
|
+
var Attestor = _interopRequireWildcard(require("./Attestor.js"));
|
|
13
|
+
var Constants = _interopRequireWildcard(require("./Constants.js"));
|
|
14
|
+
var ZAssetRegistry = _interopRequireWildcard(require("./constants/z-asset-registry.js"));
|
|
15
|
+
var Domain = _interopRequireWildcard(require("./Domain.js"));
|
|
16
|
+
var Error = _interopRequireWildcard(require("./Error.js"));
|
|
17
|
+
var Prover = _interopRequireWildcard(require("./Prover.js"));
|
|
18
|
+
var PublicClient = _interopRequireWildcard(require("./PublicClient.js"));
|
|
19
|
+
var Poseidon2 = _interopRequireWildcard(require("./poseidon2.js"));
|
|
20
|
+
var Utils = _interopRequireWildcard(require("./Utils.js"));
|
|
21
|
+
var WalletClient = _interopRequireWildcard(require("./WalletClient.js"));
|
|
22
|
+
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); }
|
|
23
|
+
/**
|
|
24
|
+
* - for deposits you only need to sign on the source chain
|
|
25
|
+
* - for redemptions you need wallet on dest chain
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
// TODO: into poseidon2 module
|
|
29
|
+
const PRIME = 0x30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001n; // BN254 Fr order
|
|
30
|
+
const getDepositAddress = exports.getDepositAddress = /*#__PURE__*/_effect.Effect.fn("getDepositAddress")((secret, beneficiaries, destinationChainId) => _effect.Effect.gen(function* () {
|
|
31
|
+
const paddedBeneficiaries = yield* padBeneficiaries(beneficiaries);
|
|
32
|
+
const unspendableAddress = Poseidon2.computeUnspendableAddress(secret, destinationChainId, paddedBeneficiaries);
|
|
33
|
+
return Domain.ZAssetAddress(unspendableAddress);
|
|
34
|
+
}));
|
|
35
|
+
const padBeneficiaries = /*#__PURE__*/_effect.Effect.fn("padBeneficiaries")(beneficiaries => _effect.Effect.gen(function* () {
|
|
36
|
+
if (beneficiaries.length > 4) {
|
|
37
|
+
// throw new Error("Maximum 4 beneficiaries allowed");
|
|
38
|
+
return yield* new Error.SystemError({
|
|
39
|
+
method: "padBeneficiaries",
|
|
40
|
+
module: "PaymentClient",
|
|
41
|
+
reason: "InvalidData",
|
|
42
|
+
description: "Maximum 4 beneficiaries allowed"
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
const padded = [beneficiaries[0] ?? Constants.ZERO_ADDRESS, beneficiaries[1] ?? Constants.ZERO_ADDRESS, beneficiaries[2] ?? Constants.ZERO_ADDRESS, beneficiaries[3] ?? Constants.ZERO_ADDRESS];
|
|
46
|
+
return padded;
|
|
47
|
+
}));
|
|
48
|
+
const getNullifier = exports.getNullifier = /*#__PURE__*/_effect.Effect.fn("getNullifier")((secret, destinationChainId) => _effect.Effect.try({
|
|
49
|
+
try: () => Poseidon2.computeNullifier(secret, destinationChainId),
|
|
50
|
+
catch: cause => new Error.SystemError({
|
|
51
|
+
method: "getNullifier",
|
|
52
|
+
module: "PaymentClient",
|
|
53
|
+
reason: "InvalidData",
|
|
54
|
+
cause
|
|
55
|
+
})
|
|
56
|
+
}));
|
|
57
|
+
/**
|
|
58
|
+
* Deterministically shuffle light clients using the secret as seed.
|
|
59
|
+
* Same secret always produces the same ordering for privacy.
|
|
60
|
+
* @public
|
|
61
|
+
*/
|
|
62
|
+
function deterministicShuffleClients(clients, secret) {
|
|
63
|
+
if (clients.length <= 1) {
|
|
64
|
+
return [...clients];
|
|
65
|
+
}
|
|
66
|
+
// Seed = SHA256(secret || clientHeights as big-endian uint64s)
|
|
67
|
+
const secretBytes = (0, _viem.hexToBytes)(secret);
|
|
68
|
+
const heightsBytes = new Uint8Array(clients.length * 8);
|
|
69
|
+
for (let i = 0; i < clients.length; i++) {
|
|
70
|
+
const view = new DataView(heightsBytes.buffer, i * 8, 8);
|
|
71
|
+
view.setBigUint64(0, clients[i].height, false);
|
|
72
|
+
}
|
|
73
|
+
const combined = new Uint8Array(secretBytes.length + heightsBytes.length);
|
|
74
|
+
combined.set(secretBytes, 0);
|
|
75
|
+
combined.set(heightsBytes, secretBytes.length);
|
|
76
|
+
const seedHex = (0, _viem.sha256)(combined);
|
|
77
|
+
const seed = (0, _viem.hexToBytes)(seedHex);
|
|
78
|
+
// Fisher-Yates shuffle with deterministic PRNG
|
|
79
|
+
const shuffled = [...clients];
|
|
80
|
+
let seedIndex = 0;
|
|
81
|
+
for (let i = shuffled.length - 1; i > 0; i--) {
|
|
82
|
+
const randomByte = seed[seedIndex % seed.length];
|
|
83
|
+
seedIndex++;
|
|
84
|
+
const j = randomByte % (i + 1);
|
|
85
|
+
[shuffled[i], shuffled[j]] = [shuffled[j], shuffled[i]];
|
|
86
|
+
}
|
|
87
|
+
return shuffled;
|
|
88
|
+
}
|
|
89
|
+
const computeStorageSlot = exports.computeStorageSlot = /*#__PURE__*/_effect.Effect.fn("computeStorageSlot")(function* (address, mappingSlot) {
|
|
90
|
+
const paddedAddress = (0, _viem.padHex)(address, {
|
|
91
|
+
size: 32
|
|
92
|
+
});
|
|
93
|
+
const paddedSlot = (0, _viem.padHex)((0, _viem.toHex)(mappingSlot), {
|
|
94
|
+
size: 32
|
|
95
|
+
});
|
|
96
|
+
return yield* _effect.Effect.succeed((0, _viem.keccak256)((0, _viem.encodePacked)(["bytes32", "bytes32"], [paddedAddress, paddedSlot])));
|
|
97
|
+
});
|
|
98
|
+
const fetchMptProof = /*#__PURE__*/_effect.Effect.fn(function* (options) {
|
|
99
|
+
yield* _effect.Effect.log(options);
|
|
100
|
+
const srcClient = yield* PublicClient.SourcePublicClient;
|
|
101
|
+
const proof = yield* srcClient.getProof({
|
|
102
|
+
address: options.tokenAddress,
|
|
103
|
+
storageKeys: [options.storageSlot],
|
|
104
|
+
blockNumber: options.blockNumber
|
|
105
|
+
});
|
|
106
|
+
let storageProof = [];
|
|
107
|
+
let storageValue = "0x0";
|
|
108
|
+
if (proof.storageProof.length > 0 && proof.storageProof[0]) {
|
|
109
|
+
storageProof = proof.storageProof[0].proof;
|
|
110
|
+
storageValue = (0, _viem.toHex)(proof.storageProof[0].value);
|
|
111
|
+
}
|
|
112
|
+
const obj = {
|
|
113
|
+
accountProof: proof.accountProof,
|
|
114
|
+
storageProof,
|
|
115
|
+
storageValue,
|
|
116
|
+
storageRoot: proof.storageHash
|
|
117
|
+
};
|
|
118
|
+
yield* _effect.Effect.log("[fetchMptProof]", obj);
|
|
119
|
+
return obj;
|
|
120
|
+
});
|
|
121
|
+
const generateProof = exports.generateProof = /*#__PURE__*/_effect.Effect.fn(function* (options) {
|
|
122
|
+
if (!options.clientIds.includes(options.selectedClientId)) {
|
|
123
|
+
return yield* _effect.Effect.fail({
|
|
124
|
+
proof: {
|
|
125
|
+
success: false,
|
|
126
|
+
error: `selectedClientId ${options.selectedClientId} not in clientIds`
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
if (options.beneficiary === Constants.ZERO_ADDRESS) {
|
|
131
|
+
return yield* _effect.Effect.fail({
|
|
132
|
+
proof: {
|
|
133
|
+
success: false,
|
|
134
|
+
error: "Beneficiary address cannot be zero"
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
const srcZAssetAddress = yield* ZAssetRegistry.getZAssetOrError(options.srcChainId, options.srcErc20Address);
|
|
139
|
+
const dstZAssetAddress = yield* ZAssetRegistry.getZAssetOrError(options.dstChainId, options.dstErc20Address);
|
|
140
|
+
const prover = yield* Prover.Prover;
|
|
141
|
+
const destinationPublicClient = yield* PublicClient.DestinationPublicClient;
|
|
142
|
+
const paddedBeneficiaries = yield* padBeneficiaries(options.beneficiaries);
|
|
143
|
+
const depositAddress = yield* getDepositAddress(options.secret, options.beneficiaries, options.dstChainId);
|
|
144
|
+
const lightClients = yield* fetchLightClients({
|
|
145
|
+
zAssetAddress: dstZAssetAddress,
|
|
146
|
+
clientIds: options.clientIds
|
|
147
|
+
});
|
|
148
|
+
if (!A.isNonEmptyReadonlyArray(lightClients)) {
|
|
149
|
+
return yield* new Error.SystemError({
|
|
150
|
+
module: "PaymentClient",
|
|
151
|
+
method: "generateProof",
|
|
152
|
+
reason: "InvalidData",
|
|
153
|
+
description: "No valid light clients found"
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
// Deterministic shuffle: same secret always produces the same ordering for privacy
|
|
157
|
+
const shuffled = deterministicShuffleClients(lightClients, options.secret);
|
|
158
|
+
const selectedClientIndex = yield* (0, _effect.pipe)(A.findFirstIndex(shuffled, c => c.clientId === options.selectedClientId), _effect.Effect.mapError(cause => new Error.SystemError({
|
|
159
|
+
module: "PaymentClient",
|
|
160
|
+
method: "generateProof",
|
|
161
|
+
reason: "InvalidData",
|
|
162
|
+
cause,
|
|
163
|
+
description: `Client not found after fetching`
|
|
164
|
+
})));
|
|
165
|
+
const selectedClient = A.unsafeGet(shuffled, selectedClientIndex);
|
|
166
|
+
const {
|
|
167
|
+
tokenAddressKey,
|
|
168
|
+
balanceSlot
|
|
169
|
+
} = yield* destinationPublicClient.getCounterparty(dstZAssetAddress, options.selectedClientId);
|
|
170
|
+
// Check if counterparty is configured for this light client
|
|
171
|
+
const ZERO_BYTES32 = "0x0000000000000000000000000000000000000000000000000000000000000000";
|
|
172
|
+
yield* _effect.Effect.log({
|
|
173
|
+
balanceSlot
|
|
174
|
+
});
|
|
175
|
+
if (balanceSlot === ZERO_BYTES32 || tokenAddressKey === ZERO_BYTES32) {
|
|
176
|
+
return yield* new Error.SystemError({
|
|
177
|
+
module: "PaymentClient",
|
|
178
|
+
method: "generateProof",
|
|
179
|
+
reason: "InvalidData",
|
|
180
|
+
description: `Light client is not configured as a counterparty on the destination ZAsset. ` + `Please call setCounterparty() on the ZAsset contract first.`
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
const mappingSlot = (0, _viem.hexToBigInt)(balanceSlot);
|
|
184
|
+
yield* _effect.Effect.log({
|
|
185
|
+
mappingSlot
|
|
186
|
+
});
|
|
187
|
+
const nullifier = yield* getNullifier(options.secret, options.dstChainId);
|
|
188
|
+
// Check balance at the selected light client's height
|
|
189
|
+
const balance = yield* destinationPublicClient.readBalanceAtHeight({
|
|
190
|
+
srcErc20Address: options.srcErc20Address,
|
|
191
|
+
dstErc20Address: options.dstErc20Address,
|
|
192
|
+
srcChainId: options.srcChainId,
|
|
193
|
+
dstChainId: options.dstChainId,
|
|
194
|
+
depositAddress,
|
|
195
|
+
nullifier,
|
|
196
|
+
height: selectedClient.height
|
|
197
|
+
});
|
|
198
|
+
if (options.amount > balance.available) {
|
|
199
|
+
return yield* new Error.SystemError({
|
|
200
|
+
module: "PaymentClient",
|
|
201
|
+
method: "generateProof",
|
|
202
|
+
reason: "InvalidData",
|
|
203
|
+
description: `Insufficient available balance. Requested: ${options.amount}, Available: ${balance.available} ` + `(Confirmed at height ${selectedClient.height}: ${balance.confirmed}, Already redeemed: ${balance.redeemed})`
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
const storageSlot = yield* computeStorageSlot(depositAddress, mappingSlot);
|
|
207
|
+
const mptProof = yield* fetchMptProof({
|
|
208
|
+
tokenAddress: srcZAssetAddress,
|
|
209
|
+
storageSlot,
|
|
210
|
+
blockNumber: selectedClient.height
|
|
211
|
+
});
|
|
212
|
+
const witness = {
|
|
213
|
+
secret: options.secret,
|
|
214
|
+
dstChainId: options.dstChainId,
|
|
215
|
+
beneficiaries: paddedBeneficiaries,
|
|
216
|
+
beneficiary: options.beneficiary,
|
|
217
|
+
redeemAmount: options.amount,
|
|
218
|
+
alreadyRedeemed: balance.redeemed,
|
|
219
|
+
lightClients: shuffled,
|
|
220
|
+
selectedClientIndex,
|
|
221
|
+
mptProof,
|
|
222
|
+
srcZAssetAddress: srcZAssetAddress,
|
|
223
|
+
mappingSlot: `0x${mappingSlot.toString(16)}`
|
|
224
|
+
};
|
|
225
|
+
const proofResult = yield* prover.generateProof(witness);
|
|
226
|
+
yield* _effect.Effect.log({
|
|
227
|
+
proofResult
|
|
228
|
+
});
|
|
229
|
+
return {
|
|
230
|
+
proof: proofResult,
|
|
231
|
+
metadata: {
|
|
232
|
+
depositAddress,
|
|
233
|
+
beneficiary: options.beneficiary,
|
|
234
|
+
value: options.amount,
|
|
235
|
+
lightClients: shuffled,
|
|
236
|
+
nullifier
|
|
237
|
+
}
|
|
238
|
+
};
|
|
239
|
+
});
|
|
240
|
+
const fetchLightClients = /*#__PURE__*/_effect.Effect.fn(function* (options) {
|
|
241
|
+
const {
|
|
242
|
+
zAssetAddress,
|
|
243
|
+
clientIds
|
|
244
|
+
} = options;
|
|
245
|
+
const dstClient = yield* PublicClient.PublicClient;
|
|
246
|
+
const ibcHandlerAddress = yield* dstClient.getIbcHandlerAddress(zAssetAddress);
|
|
247
|
+
const results = [];
|
|
248
|
+
for (const clientId of clientIds) {
|
|
249
|
+
const lightClientAddress = yield* dstClient.getLightClientAddress(ibcHandlerAddress, clientId);
|
|
250
|
+
const height = yield* dstClient.getLatestHeight(lightClientAddress, clientId);
|
|
251
|
+
const stateRootIndex = yield* dstClient.getStateRootIndex(zAssetAddress, clientId);
|
|
252
|
+
const {
|
|
253
|
+
stateRoot
|
|
254
|
+
} = yield* dstClient.getConsensusState(lightClientAddress, clientId, height, stateRootIndex);
|
|
255
|
+
results.push({
|
|
256
|
+
clientId,
|
|
257
|
+
height,
|
|
258
|
+
stateRoot
|
|
259
|
+
});
|
|
260
|
+
}
|
|
261
|
+
return results;
|
|
262
|
+
});
|
|
263
|
+
const prepareRedemption = exports.prepareRedemption = /*#__PURE__*/_effect.Effect.fn(function* (options) {
|
|
264
|
+
const dstWalletClient = yield* WalletClient.DestinationWalletClient;
|
|
265
|
+
const attestor = yield* Attestor.Attestor;
|
|
266
|
+
// 1. Generate proof
|
|
267
|
+
const proofResult = yield* generateProof({
|
|
268
|
+
secret: options.paymentKey,
|
|
269
|
+
beneficiaries: options.beneficiaries,
|
|
270
|
+
beneficiary: options.beneficiary,
|
|
271
|
+
amount: options.amount,
|
|
272
|
+
clientIds: options.clientIds,
|
|
273
|
+
selectedClientId: options.selectedClientId,
|
|
274
|
+
srcChainId: options.srcChainId,
|
|
275
|
+
dstChainId: options.dstChainId,
|
|
276
|
+
srcErc20Address: options.srcErc20Address,
|
|
277
|
+
dstErc20Address: options.dstErc20Address
|
|
278
|
+
});
|
|
279
|
+
yield* _effect.Effect.log({
|
|
280
|
+
proofResult
|
|
281
|
+
});
|
|
282
|
+
const depositAddress = yield* getDepositAddress(options.paymentKey, options.beneficiaries, options.dstChainId);
|
|
283
|
+
yield* _effect.Effect.log({
|
|
284
|
+
depositAddress
|
|
285
|
+
});
|
|
286
|
+
// 2. Get attestation
|
|
287
|
+
const attestationResponse = yield* attestor.get({
|
|
288
|
+
unspendableAddress: depositAddress,
|
|
289
|
+
beneficiary: options.beneficiary
|
|
290
|
+
});
|
|
291
|
+
yield* _effect.Effect.log({
|
|
292
|
+
attestationResponse
|
|
293
|
+
});
|
|
294
|
+
// 3. Build redeem params
|
|
295
|
+
const redeemParams = Utils.proofJsonToRedeemParams(proofResult.proof, {
|
|
296
|
+
lightClients: proofResult.metadata.lightClients,
|
|
297
|
+
nullifier: proofResult.metadata.nullifier,
|
|
298
|
+
value: proofResult.metadata.value,
|
|
299
|
+
beneficiary: proofResult.metadata.beneficiary,
|
|
300
|
+
attestedMessage: attestationResponse.attestedMessage,
|
|
301
|
+
signature: attestationResponse.signature
|
|
302
|
+
});
|
|
303
|
+
yield* _effect.Effect.log({
|
|
304
|
+
redeemParams
|
|
305
|
+
});
|
|
306
|
+
return yield* dstWalletClient.prepareRedemption({
|
|
307
|
+
...redeemParams,
|
|
308
|
+
dstErc20Address: options.dstErc20Address
|
|
309
|
+
});
|
|
310
|
+
});
|
|
311
|
+
const generateKey = exports.generateKey = /*#__PURE__*/_effect.Effect.gen(function* () {
|
|
312
|
+
while (true) {
|
|
313
|
+
const bytes = new Uint8Array(32);
|
|
314
|
+
crypto.getRandomValues(bytes);
|
|
315
|
+
const value = BigInt("0x" + Array.from(bytes).map(b => b.toString(16).padStart(2, "0")).join(""));
|
|
316
|
+
if (value < PRIME) {
|
|
317
|
+
return "0x" + Array.from(bytes).map(b => b.toString(16).padStart(2, "0")).join("");
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
});
|
|
321
|
+
const prepareDeposit = exports.prepareDeposit = /*#__PURE__*/_effect.Effect.fn("deposit")(options => _effect.Effect.gen(function* () {
|
|
322
|
+
const srcWalletClient = yield* WalletClient.SourceWalletClient;
|
|
323
|
+
const depositAddress = yield* getDepositAddress(options.paymentKey, options.beneficiaries, options.destinationChainId);
|
|
324
|
+
return yield* srcWalletClient.prepareDeposit({
|
|
325
|
+
amount: options.amount,
|
|
326
|
+
depositAddress,
|
|
327
|
+
sourceChainId: options.sourceChainId,
|
|
328
|
+
srcErc20Address: options.srcErc20Address,
|
|
329
|
+
beneficiaries: options.beneficiaries,
|
|
330
|
+
destinationChainId: options.destinationChainId
|
|
331
|
+
});
|
|
332
|
+
}));
|
|
333
|
+
//# sourceMappingURL=Payment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Payment.js","names":["_effect","require","A","_interopRequireWildcard","_viem","Attestor","Constants","ZAssetRegistry","Domain","Error","Prover","PublicClient","Poseidon2","Utils","WalletClient","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","PRIME","getDepositAddress","exports","Effect","fn","secret","beneficiaries","destinationChainId","gen","paddedBeneficiaries","padBeneficiaries","unspendableAddress","computeUnspendableAddress","ZAssetAddress","length","SystemError","method","module","reason","description","padded","ZERO_ADDRESS","getNullifier","try","computeNullifier","catch","cause","deterministicShuffleClients","clients","secretBytes","hexToBytes","heightsBytes","Uint8Array","view","DataView","buffer","setBigUint64","height","combined","seedHex","sha256","seed","shuffled","seedIndex","randomByte","j","computeStorageSlot","address","mappingSlot","paddedAddress","padHex","size","paddedSlot","toHex","succeed","keccak256","encodePacked","fetchMptProof","options","log","srcClient","SourcePublicClient","proof","getProof","tokenAddress","storageKeys","storageSlot","blockNumber","storageProof","storageValue","value","obj","accountProof","storageRoot","storageHash","generateProof","clientIds","includes","selectedClientId","fail","success","error","beneficiary","srcZAssetAddress","getZAssetOrError","srcChainId","srcErc20Address","dstZAssetAddress","dstChainId","dstErc20Address","prover","destinationPublicClient","DestinationPublicClient","depositAddress","lightClients","fetchLightClients","zAssetAddress","isNonEmptyReadonlyArray","selectedClientIndex","pipe","findFirstIndex","c","clientId","mapError","selectedClient","unsafeGet","tokenAddressKey","balanceSlot","getCounterparty","ZERO_BYTES32","hexToBigInt","nullifier","balance","readBalanceAtHeight","amount","available","confirmed","redeemed","mptProof","witness","redeemAmount","alreadyRedeemed","toString","proofResult","metadata","dstClient","ibcHandlerAddress","getIbcHandlerAddress","results","lightClientAddress","getLightClientAddress","getLatestHeight","stateRootIndex","getStateRootIndex","stateRoot","getConsensusState","push","prepareRedemption","dstWalletClient","DestinationWalletClient","attestor","paymentKey","attestationResponse","redeemParams","proofJsonToRedeemParams","attestedMessage","signature","generateKey","bytes","crypto","getRandomValues","BigInt","Array","from","map","b","padStart","join","prepareDeposit","srcWalletClient","SourceWalletClient","sourceChainId"],"sources":["../../src/Payment.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.PaymentErrorTypeId = exports.PaymentError = void 0;
|
|
7
|
+
var _Error = require("./Error.js");
|
|
8
|
+
/**
|
|
9
|
+
* @since 1.0.0
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* @since 1.0.0
|
|
14
|
+
*/
|
|
15
|
+
const PaymentErrorTypeId = exports.PaymentErrorTypeId = /*#__PURE__*/Symbol.for("@unionlabs/payments/PaymentError");
|
|
16
|
+
/**
|
|
17
|
+
* @since 1.0.0
|
|
18
|
+
*/
|
|
19
|
+
class PaymentError extends /*#__PURE__*/(0, _Error.TypeIdError)(PaymentErrorTypeId, "PaymentError") {}
|
|
20
|
+
// /**
|
|
21
|
+
// * @since 1.0.0
|
|
22
|
+
// */
|
|
23
|
+
// export class ResultLengthMismatch extends TypeIdError(PaymentErrorTypeId, "ResultLengthMismatch")<{
|
|
24
|
+
// readonly expected: number
|
|
25
|
+
// readonly actual: number
|
|
26
|
+
// }> {
|
|
27
|
+
// get message() {
|
|
28
|
+
// return `Expected ${this.expected} results but got ${this.actual}`
|
|
29
|
+
// }
|
|
30
|
+
// }
|
|
31
|
+
exports.PaymentError = PaymentError;
|
|
32
|
+
//# sourceMappingURL=PaymentError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PaymentError.js","names":["_Error","require","PaymentErrorTypeId","exports","Symbol","for","PaymentError","TypeIdError"],"sources":["../../src/PaymentError.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGA,IAAAA,MAAA,GAAAC,OAAA;AAHA;;;;AAKA;;;AAGO,MAAMC,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,gBAAkBE,MAAM,CAACC,GAAG,CACzD,kCAAkC,CACnC;AAOD;;;AAGM,MAAOC,YAAa,sBAAQ,IAAAC,kBAAW,EAC3CL,kBAAkB,EAClB,cAAc,CAId;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAAC,OAAA,CAAAG,YAAA,GAAAA,YAAA","ignoreList":[]}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isPending = exports.isFailed = exports.isDone = exports.Prover = exports.ProofFromBytes = exports.Proof = void 0;
|
|
7
|
+
var _protobuf = require("@bufbuild/protobuf");
|
|
8
|
+
var _connect = require("@connectrpc/connect");
|
|
9
|
+
var _connectWeb = require("@connectrpc/connect-web");
|
|
10
|
+
var _effect = require("effect");
|
|
11
|
+
var S = _interopRequireWildcard(require("effect/Schema"));
|
|
12
|
+
var _services = require("./constants/services.js");
|
|
13
|
+
var Error = _interopRequireWildcard(require("./Error.js"));
|
|
14
|
+
var GenProver = _interopRequireWildcard(require("./gen/prover_pb.js"));
|
|
15
|
+
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); }
|
|
16
|
+
const Options = /*#__PURE__*/S.Struct({
|
|
17
|
+
proverUrl: /*#__PURE__*/S.optionalWith(/*#__PURE__*/S.Union(S.URLFromSelf, S.URL), {
|
|
18
|
+
default: () => new globalThis.URL(_services.DEFAULT_PROVER_URL)
|
|
19
|
+
})
|
|
20
|
+
});
|
|
21
|
+
const isPending = result => result.case === "pending";
|
|
22
|
+
exports.isPending = isPending;
|
|
23
|
+
const isDone = result => result.case === "done";
|
|
24
|
+
exports.isDone = isDone;
|
|
25
|
+
const isFailed = result => result.case === "failed";
|
|
26
|
+
exports.isFailed = isFailed;
|
|
27
|
+
class PollPending extends /*#__PURE__*/_effect.Data.TaggedError("PollPending") {}
|
|
28
|
+
class PollFailed extends /*#__PURE__*/_effect.Data.TaggedError("PollFailed") {}
|
|
29
|
+
const Proof = exports.Proof = /*#__PURE__*/S.Struct({
|
|
30
|
+
proof: /*#__PURE__*/S.Tuple(S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String),
|
|
31
|
+
commitments: /*#__PURE__*/S.Tuple(S.String, S.String),
|
|
32
|
+
commitmentPok: /*#__PURE__*/S.Tuple(S.String, S.String),
|
|
33
|
+
publicInputs: /*#__PURE__*/S.Array(S.String)
|
|
34
|
+
// TODO: createdAt
|
|
35
|
+
});
|
|
36
|
+
const ProofFromBytes = exports.ProofFromBytes = /*#__PURE__*/S.compose(/*#__PURE__*/S.transform(S.Uint8ArrayFromSelf, S.String, {
|
|
37
|
+
decode: bytes => new globalThis.TextDecoder().decode(bytes),
|
|
38
|
+
encode: text => new globalThis.TextEncoder().encode(text)
|
|
39
|
+
}), /*#__PURE__*/S.parseJson(Proof));
|
|
40
|
+
/**
|
|
41
|
+
* Prover client for communicating with the prover gRPC-web server
|
|
42
|
+
*
|
|
43
|
+
* Uses `@connectrpc/connect-web` to communicate with the gRPC-web server.
|
|
44
|
+
* @public
|
|
45
|
+
*/
|
|
46
|
+
class Prover extends /*#__PURE__*/_effect.Effect.Service()("Prover", {
|
|
47
|
+
scoped: /*#__PURE__*/_effect.Effect.fn(function* (options) {
|
|
48
|
+
const {
|
|
49
|
+
proverUrl
|
|
50
|
+
} = yield* (0, _effect.pipe)(options, S.decode(Options), _effect.Effect.mapError(cause => new Error.SystemError({
|
|
51
|
+
method: "Prover",
|
|
52
|
+
module: "Prover",
|
|
53
|
+
reason: "InvalidData",
|
|
54
|
+
cause
|
|
55
|
+
})));
|
|
56
|
+
const transport = (0, _connectWeb.createGrpcWebTransport)({
|
|
57
|
+
baseUrl: proverUrl.toString()
|
|
58
|
+
});
|
|
59
|
+
const client = (0, _connect.createClient)(GenProver.ProverService, transport);
|
|
60
|
+
const matchPollResult = _effect.Match.type().pipe(_effect.Match.when({
|
|
61
|
+
case: "done"
|
|
62
|
+
}, ({
|
|
63
|
+
value
|
|
64
|
+
}) => _effect.Effect.succeed(value)), _effect.Match.when({
|
|
65
|
+
case: "pending"
|
|
66
|
+
}, () => _effect.Effect.fail(new PollPending())), _effect.Match.when({
|
|
67
|
+
case: "failed"
|
|
68
|
+
}, ({
|
|
69
|
+
value
|
|
70
|
+
}) => _effect.Effect.fail(new PollFailed({
|
|
71
|
+
message: value.errorMessage
|
|
72
|
+
}))), _effect.Match.when({
|
|
73
|
+
case: undefined
|
|
74
|
+
}, () => _effect.Effect.fail(new PollFailed({
|
|
75
|
+
message: "Unset result"
|
|
76
|
+
}))), _effect.Match.exhaustive);
|
|
77
|
+
const poll = _effect.Effect.fn("poll")((...[request, options]) => (0, _effect.pipe)(_effect.Effect.tryPromise({
|
|
78
|
+
try: () => client.poll(request, options),
|
|
79
|
+
catch: cause => new Error.SystemError({
|
|
80
|
+
module: "Prover",
|
|
81
|
+
method: "poll",
|
|
82
|
+
reason: "InvalidData",
|
|
83
|
+
cause
|
|
84
|
+
})
|
|
85
|
+
}), _effect.Effect.map(response => response.result), _effect.Effect.flatMap(matchPollResult), _effect.Effect.retry({
|
|
86
|
+
while: error => error._tag === "PollPending",
|
|
87
|
+
schedule: _effect.Schedule.spaced("1 second")
|
|
88
|
+
}), _effect.Effect.flatMap(x => S.decode(ProofFromBytes)(x.proofJson)), _effect.Effect.catchTags({
|
|
89
|
+
ParseError: cause => new Error.SystemError({
|
|
90
|
+
method: "poll",
|
|
91
|
+
module: "Prover",
|
|
92
|
+
reason: "InvalidData",
|
|
93
|
+
cause
|
|
94
|
+
}),
|
|
95
|
+
PollFailed: cause => new Error.SystemError({
|
|
96
|
+
method: "poll",
|
|
97
|
+
module: "Prover",
|
|
98
|
+
reason: "InvalidData",
|
|
99
|
+
cause
|
|
100
|
+
}),
|
|
101
|
+
PollPending: cause => new Error.SystemError({
|
|
102
|
+
method: "poll",
|
|
103
|
+
module: "Prover",
|
|
104
|
+
reason: "InvalidData",
|
|
105
|
+
cause
|
|
106
|
+
})
|
|
107
|
+
})));
|
|
108
|
+
const witnessToProto = witness => (0, _protobuf.create)(GenProver.WitnessDataSchema, {
|
|
109
|
+
secret: witness.secret,
|
|
110
|
+
dstChainId: witness.dstChainId,
|
|
111
|
+
beneficiaries: [...witness.beneficiaries],
|
|
112
|
+
beneficiary: witness.beneficiary,
|
|
113
|
+
redeemAmount: witness.redeemAmount.toString(),
|
|
114
|
+
alreadyRedeemed: witness.alreadyRedeemed.toString(),
|
|
115
|
+
lightClients: witness.lightClients.map(lc => (0, _protobuf.create)(GenProver.LightClientDataSchema, {
|
|
116
|
+
clientId: lc.clientId,
|
|
117
|
+
height: lc.height,
|
|
118
|
+
stateRoot: lc.stateRoot
|
|
119
|
+
})),
|
|
120
|
+
selectedClientIndex: witness.selectedClientIndex,
|
|
121
|
+
mptProof: (0, _protobuf.create)(GenProver.MPTProofDataSchema, {
|
|
122
|
+
accountProof: [...witness.mptProof.accountProof],
|
|
123
|
+
storageProof: [...witness.mptProof.storageProof],
|
|
124
|
+
storageValue: witness.mptProof.storageValue,
|
|
125
|
+
storageRoot: witness.mptProof.storageRoot
|
|
126
|
+
}),
|
|
127
|
+
tokenAddress: witness.srcZAssetAddress,
|
|
128
|
+
mappingSlot: witness.mappingSlot
|
|
129
|
+
});
|
|
130
|
+
const generateProof = _effect.Effect.fn("generateProof")(function* (witness) {
|
|
131
|
+
const protoWitness = witnessToProto(witness);
|
|
132
|
+
const request = (0, _protobuf.create)(GenProver.ProofRequestSchema, {
|
|
133
|
+
witness: protoWitness
|
|
134
|
+
});
|
|
135
|
+
return yield* poll(request);
|
|
136
|
+
});
|
|
137
|
+
const exportVerifier = (0, _effect.pipe)(_effect.Effect.tryPromise({
|
|
138
|
+
try: () => client.exportVerifier({}),
|
|
139
|
+
catch: cause => new Error.SystemError({
|
|
140
|
+
module: "Prover",
|
|
141
|
+
method: "exportVerifier",
|
|
142
|
+
reason: "InvalidData",
|
|
143
|
+
cause
|
|
144
|
+
})
|
|
145
|
+
}), _effect.Effect.map(response => response.verifierContract));
|
|
146
|
+
return {
|
|
147
|
+
generateProof,
|
|
148
|
+
exportVerifier
|
|
149
|
+
};
|
|
150
|
+
})
|
|
151
|
+
}) {}
|
|
152
|
+
exports.Prover = Prover;
|
|
153
|
+
//# sourceMappingURL=Prover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Prover.js","names":["_protobuf","require","_connect","_connectWeb","_effect","S","_interopRequireWildcard","_services","Error","GenProver","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Options","Struct","proverUrl","optionalWith","Union","URLFromSelf","URL","globalThis","DEFAULT_PROVER_URL","isPending","result","case","exports","isDone","isFailed","PollPending","Data","TaggedError","PollFailed","Proof","proof","Tuple","String","commitments","commitmentPok","publicInputs","Array","ProofFromBytes","compose","transform","Uint8ArrayFromSelf","decode","bytes","TextDecoder","encode","text","TextEncoder","parseJson","Prover","Effect","Service","scoped","fn","options","pipe","mapError","cause","SystemError","method","module","reason","transport","createGrpcWebTransport","baseUrl","toString","client","createClient","ProverService","matchPollResult","Match","type","when","value","succeed","fail","message","errorMessage","undefined","exhaustive","poll","request","tryPromise","try","catch","map","response","flatMap","retry","while","error","_tag","schedule","Schedule","spaced","x","proofJson","catchTags","ParseError","witnessToProto","witness","create","WitnessDataSchema","secret","dstChainId","beneficiaries","beneficiary","redeemAmount","alreadyRedeemed","lightClients","lc","LightClientDataSchema","clientId","height","stateRoot","selectedClientIndex","mptProof","MPTProofDataSchema","accountProof","storageProof","storageValue","storageRoot","tokenAddress","srcZAssetAddress","mappingSlot","generateProof","protoWitness","ProofRequestSchema","exportVerifier","verifierContract"],"sources":["../../src/Prover.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|