@aa-sdk/core 4.0.0-alpha.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/LICENSE +21 -0
- package/README.md +54 -0
- package/dist/cjs/abis/EntryPointAbi_v6.d.ts +1018 -0
- package/dist/cjs/abis/EntryPointAbi_v6.js +1313 -0
- package/dist/cjs/abis/EntryPointAbi_v6.js.map +1 -0
- package/dist/cjs/abis/EntryPointAbi_v7.d.ts +775 -0
- package/dist/cjs/abis/EntryPointAbi_v7.js +661 -0
- package/dist/cjs/abis/EntryPointAbi_v7.js.map +1 -0
- package/dist/cjs/abis/SimpleAccountAbi_v6.d.ts +405 -0
- package/dist/cjs/abis/SimpleAccountAbi_v6.js +528 -0
- package/dist/cjs/abis/SimpleAccountAbi_v6.js.map +1 -0
- package/dist/cjs/abis/SimpleAccountAbi_v7.d.ts +410 -0
- package/dist/cjs/abis/SimpleAccountAbi_v7.js +538 -0
- package/dist/cjs/abis/SimpleAccountAbi_v7.js.map +1 -0
- package/dist/cjs/abis/SimpleAccountFactoryAbi.d.ts +55 -0
- package/dist/cjs/abis/SimpleAccountFactoryAbi.js +78 -0
- package/dist/cjs/abis/SimpleAccountFactoryAbi.js.map +1 -0
- package/dist/cjs/account/base.d.ts +49 -0
- package/dist/cjs/account/base.js +257 -0
- package/dist/cjs/account/base.js.map +1 -0
- package/dist/cjs/account/schema.d.ts +100 -0
- package/dist/cjs/account/schema.js +43 -0
- package/dist/cjs/account/schema.js.map +1 -0
- package/dist/cjs/account/simple.d.ts +14 -0
- package/dist/cjs/account/simple.js +119 -0
- package/dist/cjs/account/simple.js.map +1 -0
- package/dist/cjs/account/smartContractAccount.d.ts +68 -0
- package/dist/cjs/account/smartContractAccount.js +174 -0
- package/dist/cjs/account/smartContractAccount.js.map +1 -0
- package/dist/cjs/account/types.d.ts +30 -0
- package/dist/cjs/account/types.js +3 -0
- package/dist/cjs/account/types.js.map +1 -0
- package/dist/cjs/actions/bundler/estimateUserOperationGas.d.ts +8 -0
- package/dist/cjs/actions/bundler/estimateUserOperationGas.js +18 -0
- package/dist/cjs/actions/bundler/estimateUserOperationGas.js.map +1 -0
- package/dist/cjs/actions/bundler/getSupportedEntryPoints.d.ts +3 -0
- package/dist/cjs/actions/bundler/getSupportedEntryPoints.js +11 -0
- package/dist/cjs/actions/bundler/getSupportedEntryPoints.js.map +1 -0
- package/dist/cjs/actions/bundler/getUserOperationByHash.d.ts +6 -0
- package/dist/cjs/actions/bundler/getUserOperationByHash.js +11 -0
- package/dist/cjs/actions/bundler/getUserOperationByHash.js.map +1 -0
- package/dist/cjs/actions/bundler/getUserOperationReceipt.d.ts +6 -0
- package/dist/cjs/actions/bundler/getUserOperationReceipt.js +11 -0
- package/dist/cjs/actions/bundler/getUserOperationReceipt.js.map +1 -0
- package/dist/cjs/actions/bundler/sendRawUserOperation.d.ts +7 -0
- package/dist/cjs/actions/bundler/sendRawUserOperation.js +11 -0
- package/dist/cjs/actions/bundler/sendRawUserOperation.js.map +1 -0
- package/dist/cjs/actions/smartAccount/buildUserOperation.d.ts +5 -0
- package/dist/cjs/actions/smartAccount/buildUserOperation.js +25 -0
- package/dist/cjs/actions/smartAccount/buildUserOperation.js.map +1 -0
- package/dist/cjs/actions/smartAccount/buildUserOperationFromTx.d.ts +5 -0
- package/dist/cjs/actions/smartAccount/buildUserOperationFromTx.js +39 -0
- package/dist/cjs/actions/smartAccount/buildUserOperationFromTx.js.map +1 -0
- package/dist/cjs/actions/smartAccount/buildUserOperationFromTxs.d.ts +4 -0
- package/dist/cjs/actions/smartAccount/buildUserOperationFromTxs.js +62 -0
- package/dist/cjs/actions/smartAccount/buildUserOperationFromTxs.js.map +1 -0
- package/dist/cjs/actions/smartAccount/checkGasSponsorshipEligibility.d.ts +4 -0
- package/dist/cjs/actions/smartAccount/checkGasSponsorshipEligibility.js +34 -0
- package/dist/cjs/actions/smartAccount/checkGasSponsorshipEligibility.js.map +1 -0
- package/dist/cjs/actions/smartAccount/dropAndReplaceUserOperation.d.ts +5 -0
- package/dist/cjs/actions/smartAccount/dropAndReplaceUserOperation.js +64 -0
- package/dist/cjs/actions/smartAccount/dropAndReplaceUserOperation.js.map +1 -0
- package/dist/cjs/actions/smartAccount/estimateUserOperationGas.d.ts +5 -0
- package/dist/cjs/actions/smartAccount/estimateUserOperationGas.js +23 -0
- package/dist/cjs/actions/smartAccount/estimateUserOperationGas.js.map +1 -0
- package/dist/cjs/actions/smartAccount/getAddress.d.ts +4 -0
- package/dist/cjs/actions/smartAccount/getAddress.js +13 -0
- package/dist/cjs/actions/smartAccount/getAddress.js.map +1 -0
- package/dist/cjs/actions/smartAccount/internal/initUserOperation.d.ts +7 -0
- package/dist/cjs/actions/smartAccount/internal/initUserOperation.js +42 -0
- package/dist/cjs/actions/smartAccount/internal/initUserOperation.js.map +1 -0
- package/dist/cjs/actions/smartAccount/internal/runMiddlewareStack.d.ts +10 -0
- package/dist/cjs/actions/smartAccount/internal/runMiddlewareStack.js +47 -0
- package/dist/cjs/actions/smartAccount/internal/runMiddlewareStack.js.map +1 -0
- package/dist/cjs/actions/smartAccount/internal/sendUserOperation.d.ts +10 -0
- package/dist/cjs/actions/smartAccount/internal/sendUserOperation.js +28 -0
- package/dist/cjs/actions/smartAccount/internal/sendUserOperation.js.map +1 -0
- package/dist/cjs/actions/smartAccount/sendTransaction.d.ts +5 -0
- package/dist/cjs/actions/smartAccount/sendTransaction.js +35 -0
- package/dist/cjs/actions/smartAccount/sendTransaction.js.map +1 -0
- package/dist/cjs/actions/smartAccount/sendTransactions.d.ts +4 -0
- package/dist/cjs/actions/smartAccount/sendTransactions.js +36 -0
- package/dist/cjs/actions/smartAccount/sendTransactions.js.map +1 -0
- package/dist/cjs/actions/smartAccount/sendUserOperation.d.ts +5 -0
- package/dist/cjs/actions/smartAccount/sendUserOperation.js +31 -0
- package/dist/cjs/actions/smartAccount/sendUserOperation.js.map +1 -0
- package/dist/cjs/actions/smartAccount/signMessage.d.ts +6 -0
- package/dist/cjs/actions/smartAccount/signMessage.js +12 -0
- package/dist/cjs/actions/smartAccount/signMessage.js.map +1 -0
- package/dist/cjs/actions/smartAccount/signMessageWith6492.d.ts +4 -0
- package/dist/cjs/actions/smartAccount/signMessageWith6492.js +12 -0
- package/dist/cjs/actions/smartAccount/signMessageWith6492.js.map +1 -0
- package/dist/cjs/actions/smartAccount/signTypedData.d.ts +10 -0
- package/dist/cjs/actions/smartAccount/signTypedData.js +12 -0
- package/dist/cjs/actions/smartAccount/signTypedData.js.map +1 -0
- package/dist/cjs/actions/smartAccount/signTypedDataWith6492.d.ts +6 -0
- package/dist/cjs/actions/smartAccount/signTypedDataWith6492.js +12 -0
- package/dist/cjs/actions/smartAccount/signTypedDataWith6492.js.map +1 -0
- package/dist/cjs/actions/smartAccount/signUserOperation.d.ts +5 -0
- package/dist/cjs/actions/smartAccount/signUserOperation.js +30 -0
- package/dist/cjs/actions/smartAccount/signUserOperation.js.map +1 -0
- package/dist/cjs/actions/smartAccount/types.d.ts +42 -0
- package/dist/cjs/actions/smartAccount/types.js +3 -0
- package/dist/cjs/actions/smartAccount/types.js.map +1 -0
- package/dist/cjs/actions/smartAccount/upgradeAccount.d.ts +4 -0
- package/dist/cjs/actions/smartAccount/upgradeAccount.js +38 -0
- package/dist/cjs/actions/smartAccount/upgradeAccount.js.map +1 -0
- package/dist/cjs/actions/smartAccount/waitForUserOperationTransacation.d.ts +3 -0
- package/dist/cjs/actions/smartAccount/waitForUserOperationTransacation.js +36 -0
- package/dist/cjs/actions/smartAccount/waitForUserOperationTransacation.js.map +1 -0
- package/dist/cjs/chains/index.d.ts +20 -0
- package/dist/cjs/chains/index.js +169 -0
- package/dist/cjs/chains/index.js.map +1 -0
- package/dist/cjs/client/bundlerClient.d.ts +10 -0
- package/dist/cjs/client/bundlerClient.js +51 -0
- package/dist/cjs/client/bundlerClient.js.map +1 -0
- package/dist/cjs/client/decorators/bundlerClient.d.ts +41 -0
- package/dist/cjs/client/decorators/bundlerClient.js +17 -0
- package/dist/cjs/client/decorators/bundlerClient.js.map +1 -0
- package/dist/cjs/client/decorators/smartAccountClient.d.ts +35 -0
- package/dist/cjs/client/decorators/smartAccountClient.js +43 -0
- package/dist/cjs/client/decorators/smartAccountClient.js.map +1 -0
- package/dist/cjs/client/isSmartAccountClient.d.ts +5 -0
- package/dist/cjs/client/isSmartAccountClient.js +18 -0
- package/dist/cjs/client/isSmartAccountClient.js.map +1 -0
- package/dist/cjs/client/schema.d.ts +767 -0
- package/dist/cjs/client/schema.js +63 -0
- package/dist/cjs/client/schema.js.map +1 -0
- package/dist/cjs/client/smartAccountClient.d.ts +33 -0
- package/dist/cjs/client/smartAccountClient.js +93 -0
- package/dist/cjs/client/smartAccountClient.js.map +1 -0
- package/dist/cjs/client/types.d.ts +26 -0
- package/dist/cjs/client/types.js +3 -0
- package/dist/cjs/client/types.js.map +1 -0
- package/dist/cjs/ens/utils.d.ts +6 -0
- package/dist/cjs/ens/utils.js +53 -0
- package/dist/cjs/ens/utils.js.map +1 -0
- package/dist/cjs/entrypoint/0.6.d.ts +1029 -0
- package/dist/cjs/entrypoint/0.6.js +49 -0
- package/dist/cjs/entrypoint/0.6.js.map +1 -0
- package/dist/cjs/entrypoint/0.7.d.ts +792 -0
- package/dist/cjs/entrypoint/0.7.js +88 -0
- package/dist/cjs/entrypoint/0.7.js.map +1 -0
- package/dist/cjs/entrypoint/index.d.ts +8 -0
- package/dist/cjs/entrypoint/index.js +53 -0
- package/dist/cjs/entrypoint/index.js.map +1 -0
- package/dist/cjs/entrypoint/types.d.ts +46 -0
- package/dist/cjs/entrypoint/types.js +3 -0
- package/dist/cjs/entrypoint/types.js.map +1 -0
- package/dist/cjs/errors/account.d.ts +47 -0
- package/dist/cjs/errors/account.js +140 -0
- package/dist/cjs/errors/account.js.map +1 -0
- package/dist/cjs/errors/base.d.ts +18 -0
- package/dist/cjs/errors/base.js +39 -0
- package/dist/cjs/errors/base.js.map +1 -0
- package/dist/cjs/errors/client.d.ts +14 -0
- package/dist/cjs/errors/client.js +44 -0
- package/dist/cjs/errors/client.js.map +1 -0
- package/dist/cjs/errors/entrypoint.d.ts +10 -0
- package/dist/cjs/errors/entrypoint.js +32 -0
- package/dist/cjs/errors/entrypoint.js.map +1 -0
- package/dist/cjs/errors/signer.d.ts +5 -0
- package/dist/cjs/errors/signer.js +20 -0
- package/dist/cjs/errors/signer.js.map +1 -0
- package/dist/cjs/errors/transaction.d.ts +10 -0
- package/dist/cjs/errors/transaction.js +29 -0
- package/dist/cjs/errors/transaction.js.map +1 -0
- package/dist/cjs/errors/useroperation.d.ts +10 -0
- package/dist/cjs/errors/useroperation.js +34 -0
- package/dist/cjs/errors/useroperation.js.map +1 -0
- package/dist/cjs/index.d.ts +63 -0
- package/dist/cjs/index.js +198 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/logger.d.ts +20 -0
- package/dist/cjs/logger.js +60 -0
- package/dist/cjs/logger.js.map +1 -0
- package/dist/cjs/middleware/actions.d.ts +12 -0
- package/dist/cjs/middleware/actions.js +37 -0
- package/dist/cjs/middleware/actions.js.map +1 -0
- package/dist/cjs/middleware/defaults/feeEstimator.d.ts +3 -0
- package/dist/cjs/middleware/defaults/feeEstimator.js +21 -0
- package/dist/cjs/middleware/defaults/feeEstimator.js.map +1 -0
- package/dist/cjs/middleware/defaults/gasEstimator.d.ts +3 -0
- package/dist/cjs/middleware/defaults/gasEstimator.js +26 -0
- package/dist/cjs/middleware/defaults/gasEstimator.js.map +1 -0
- package/dist/cjs/middleware/defaults/paymasterAndData.d.ts +2 -0
- package/dist/cjs/middleware/defaults/paymasterAndData.js +12 -0
- package/dist/cjs/middleware/defaults/paymasterAndData.js.map +1 -0
- package/dist/cjs/middleware/defaults/userOpSigner.d.ts +2 -0
- package/dist/cjs/middleware/defaults/userOpSigner.js +26 -0
- package/dist/cjs/middleware/defaults/userOpSigner.js.map +1 -0
- package/dist/cjs/middleware/noopMiddleware.d.ts +2 -0
- package/dist/cjs/middleware/noopMiddleware.js +8 -0
- package/dist/cjs/middleware/noopMiddleware.js.map +1 -0
- package/dist/cjs/middleware/types.d.ts +21 -0
- package/dist/cjs/middleware/types.js +3 -0
- package/dist/cjs/middleware/types.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/signer/local-account.d.ts +219 -0
- package/dist/cjs/signer/local-account.js +56 -0
- package/dist/cjs/signer/local-account.js.map +1 -0
- package/dist/cjs/signer/schema.d.ts +4 -0
- package/dist/cjs/signer/schema.js +16 -0
- package/dist/cjs/signer/schema.js.map +1 -0
- package/dist/cjs/signer/types.d.ts +15 -0
- package/dist/cjs/signer/types.js +3 -0
- package/dist/cjs/signer/types.js.map +1 -0
- package/dist/cjs/signer/utils.d.ts +15 -0
- package/dist/cjs/signer/utils.js +31 -0
- package/dist/cjs/signer/utils.js.map +1 -0
- package/dist/cjs/signer/wallet-client.d.ts +217 -0
- package/dist/cjs/signer/wallet-client.js +58 -0
- package/dist/cjs/signer/wallet-client.js.map +1 -0
- package/dist/cjs/transport/split.d.ts +9 -0
- package/dist/cjs/transport/split.js +26 -0
- package/dist/cjs/transport/split.js.map +1 -0
- package/dist/cjs/types.d.ts +158 -0
- package/dist/cjs/types.js +3 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/cjs/utils/bigint.d.ts +10 -0
- package/dist/cjs/utils/bigint.js +55 -0
- package/dist/cjs/utils/bigint.js.map +1 -0
- package/dist/cjs/utils/bytes.d.ts +7 -0
- package/dist/cjs/utils/bytes.js +11 -0
- package/dist/cjs/utils/bytes.js.map +1 -0
- package/dist/cjs/utils/defaults.d.ts +6 -0
- package/dist/cjs/utils/defaults.js +59 -0
- package/dist/cjs/utils/defaults.js.map +1 -0
- package/dist/cjs/utils/index.d.ts +23 -0
- package/dist/cjs/utils/index.js +127 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/schema.d.ts +25 -0
- package/dist/cjs/utils/schema.js +35 -0
- package/dist/cjs/utils/schema.js.map +1 -0
- package/dist/cjs/utils/stateOverride.d.ts +4 -0
- package/dist/cjs/utils/stateOverride.js +52 -0
- package/dist/cjs/utils/stateOverride.js.map +1 -0
- package/dist/cjs/utils/testUtils.d.ts +6 -0
- package/dist/cjs/utils/testUtils.js +33 -0
- package/dist/cjs/utils/testUtils.js.map +1 -0
- package/dist/cjs/utils/types.d.ts +16 -0
- package/dist/cjs/utils/types.js +3 -0
- package/dist/cjs/utils/types.js.map +1 -0
- package/dist/cjs/utils/userop.d.ts +49 -0
- package/dist/cjs/utils/userop.js +75 -0
- package/dist/cjs/utils/userop.js.map +1 -0
- package/dist/cjs/version.d.ts +1 -0
- package/dist/cjs/version.js +5 -0
- package/dist/cjs/version.js.map +1 -0
- package/dist/esm/abis/EntryPointAbi_v6.d.ts +1018 -0
- package/dist/esm/abis/EntryPointAbi_v6.js +1310 -0
- package/dist/esm/abis/EntryPointAbi_v6.js.map +1 -0
- package/dist/esm/abis/EntryPointAbi_v7.d.ts +775 -0
- package/dist/esm/abis/EntryPointAbi_v7.js +658 -0
- package/dist/esm/abis/EntryPointAbi_v7.js.map +1 -0
- package/dist/esm/abis/SimpleAccountAbi_v6.d.ts +405 -0
- package/dist/esm/abis/SimpleAccountAbi_v6.js +525 -0
- package/dist/esm/abis/SimpleAccountAbi_v6.js.map +1 -0
- package/dist/esm/abis/SimpleAccountAbi_v7.d.ts +410 -0
- package/dist/esm/abis/SimpleAccountAbi_v7.js +535 -0
- package/dist/esm/abis/SimpleAccountAbi_v7.js.map +1 -0
- package/dist/esm/abis/SimpleAccountFactoryAbi.d.ts +55 -0
- package/dist/esm/abis/SimpleAccountFactoryAbi.js +75 -0
- package/dist/esm/abis/SimpleAccountFactoryAbi.js.map +1 -0
- package/dist/esm/account/base.d.ts +49 -0
- package/dist/esm/account/base.js +253 -0
- package/dist/esm/account/base.js.map +1 -0
- package/dist/esm/account/schema.d.ts +100 -0
- package/dist/esm/account/schema.js +35 -0
- package/dist/esm/account/schema.js.map +1 -0
- package/dist/esm/account/simple.d.ts +14 -0
- package/dist/esm/account/simple.js +115 -0
- package/dist/esm/account/simple.js.map +1 -0
- package/dist/esm/account/smartContractAccount.d.ts +68 -0
- package/dist/esm/account/smartContractAccount.js +167 -0
- package/dist/esm/account/smartContractAccount.js.map +1 -0
- package/dist/esm/account/types.d.ts +30 -0
- package/dist/esm/account/types.js +2 -0
- package/dist/esm/account/types.js.map +1 -0
- package/dist/esm/actions/bundler/estimateUserOperationGas.d.ts +8 -0
- package/dist/esm/actions/bundler/estimateUserOperationGas.js +14 -0
- package/dist/esm/actions/bundler/estimateUserOperationGas.js.map +1 -0
- package/dist/esm/actions/bundler/getSupportedEntryPoints.d.ts +3 -0
- package/dist/esm/actions/bundler/getSupportedEntryPoints.js +7 -0
- package/dist/esm/actions/bundler/getSupportedEntryPoints.js.map +1 -0
- package/dist/esm/actions/bundler/getUserOperationByHash.d.ts +6 -0
- package/dist/esm/actions/bundler/getUserOperationByHash.js +7 -0
- package/dist/esm/actions/bundler/getUserOperationByHash.js.map +1 -0
- package/dist/esm/actions/bundler/getUserOperationReceipt.d.ts +6 -0
- package/dist/esm/actions/bundler/getUserOperationReceipt.js +7 -0
- package/dist/esm/actions/bundler/getUserOperationReceipt.js.map +1 -0
- package/dist/esm/actions/bundler/sendRawUserOperation.d.ts +7 -0
- package/dist/esm/actions/bundler/sendRawUserOperation.js +7 -0
- package/dist/esm/actions/bundler/sendRawUserOperation.js.map +1 -0
- package/dist/esm/actions/smartAccount/buildUserOperation.d.ts +5 -0
- package/dist/esm/actions/smartAccount/buildUserOperation.js +22 -0
- package/dist/esm/actions/smartAccount/buildUserOperation.js.map +1 -0
- package/dist/esm/actions/smartAccount/buildUserOperationFromTx.d.ts +5 -0
- package/dist/esm/actions/smartAccount/buildUserOperationFromTx.js +36 -0
- package/dist/esm/actions/smartAccount/buildUserOperationFromTx.js.map +1 -0
- package/dist/esm/actions/smartAccount/buildUserOperationFromTxs.d.ts +4 -0
- package/dist/esm/actions/smartAccount/buildUserOperationFromTxs.js +58 -0
- package/dist/esm/actions/smartAccount/buildUserOperationFromTxs.js.map +1 -0
- package/dist/esm/actions/smartAccount/checkGasSponsorshipEligibility.d.ts +4 -0
- package/dist/esm/actions/smartAccount/checkGasSponsorshipEligibility.js +30 -0
- package/dist/esm/actions/smartAccount/checkGasSponsorshipEligibility.js.map +1 -0
- package/dist/esm/actions/smartAccount/dropAndReplaceUserOperation.d.ts +5 -0
- package/dist/esm/actions/smartAccount/dropAndReplaceUserOperation.js +60 -0
- package/dist/esm/actions/smartAccount/dropAndReplaceUserOperation.js.map +1 -0
- package/dist/esm/actions/smartAccount/estimateUserOperationGas.d.ts +5 -0
- package/dist/esm/actions/smartAccount/estimateUserOperationGas.js +20 -0
- package/dist/esm/actions/smartAccount/estimateUserOperationGas.js.map +1 -0
- package/dist/esm/actions/smartAccount/getAddress.d.ts +4 -0
- package/dist/esm/actions/smartAccount/getAddress.js +9 -0
- package/dist/esm/actions/smartAccount/getAddress.js.map +1 -0
- package/dist/esm/actions/smartAccount/internal/initUserOperation.d.ts +7 -0
- package/dist/esm/actions/smartAccount/internal/initUserOperation.js +38 -0
- package/dist/esm/actions/smartAccount/internal/initUserOperation.js.map +1 -0
- package/dist/esm/actions/smartAccount/internal/runMiddlewareStack.d.ts +10 -0
- package/dist/esm/actions/smartAccount/internal/runMiddlewareStack.js +43 -0
- package/dist/esm/actions/smartAccount/internal/runMiddlewareStack.js.map +1 -0
- package/dist/esm/actions/smartAccount/internal/sendUserOperation.d.ts +10 -0
- package/dist/esm/actions/smartAccount/internal/sendUserOperation.js +24 -0
- package/dist/esm/actions/smartAccount/internal/sendUserOperation.js.map +1 -0
- package/dist/esm/actions/smartAccount/sendTransaction.d.ts +5 -0
- package/dist/esm/actions/smartAccount/sendTransaction.js +31 -0
- package/dist/esm/actions/smartAccount/sendTransaction.js.map +1 -0
- package/dist/esm/actions/smartAccount/sendTransactions.d.ts +4 -0
- package/dist/esm/actions/smartAccount/sendTransactions.js +32 -0
- package/dist/esm/actions/smartAccount/sendTransactions.js.map +1 -0
- package/dist/esm/actions/smartAccount/sendUserOperation.d.ts +5 -0
- package/dist/esm/actions/smartAccount/sendUserOperation.js +27 -0
- package/dist/esm/actions/smartAccount/sendUserOperation.js.map +1 -0
- package/dist/esm/actions/smartAccount/signMessage.d.ts +6 -0
- package/dist/esm/actions/smartAccount/signMessage.js +8 -0
- package/dist/esm/actions/smartAccount/signMessage.js.map +1 -0
- package/dist/esm/actions/smartAccount/signMessageWith6492.d.ts +4 -0
- package/dist/esm/actions/smartAccount/signMessageWith6492.js +8 -0
- package/dist/esm/actions/smartAccount/signMessageWith6492.js.map +1 -0
- package/dist/esm/actions/smartAccount/signTypedData.d.ts +10 -0
- package/dist/esm/actions/smartAccount/signTypedData.js +8 -0
- package/dist/esm/actions/smartAccount/signTypedData.js.map +1 -0
- package/dist/esm/actions/smartAccount/signTypedDataWith6492.d.ts +6 -0
- package/dist/esm/actions/smartAccount/signTypedDataWith6492.js +8 -0
- package/dist/esm/actions/smartAccount/signTypedDataWith6492.js.map +1 -0
- package/dist/esm/actions/smartAccount/signUserOperation.d.ts +5 -0
- package/dist/esm/actions/smartAccount/signUserOperation.js +26 -0
- package/dist/esm/actions/smartAccount/signUserOperation.js.map +1 -0
- package/dist/esm/actions/smartAccount/types.d.ts +42 -0
- package/dist/esm/actions/smartAccount/types.js +2 -0
- package/dist/esm/actions/smartAccount/types.js.map +1 -0
- package/dist/esm/actions/smartAccount/upgradeAccount.d.ts +4 -0
- package/dist/esm/actions/smartAccount/upgradeAccount.js +34 -0
- package/dist/esm/actions/smartAccount/upgradeAccount.js.map +1 -0
- package/dist/esm/actions/smartAccount/waitForUserOperationTransacation.d.ts +3 -0
- package/dist/esm/actions/smartAccount/waitForUserOperationTransacation.js +32 -0
- package/dist/esm/actions/smartAccount/waitForUserOperationTransacation.js.map +1 -0
- package/dist/esm/chains/index.d.ts +20 -0
- package/dist/esm/chains/index.js +166 -0
- package/dist/esm/chains/index.js.map +1 -0
- package/dist/esm/client/bundlerClient.d.ts +10 -0
- package/dist/esm/client/bundlerClient.js +46 -0
- package/dist/esm/client/bundlerClient.js.map +1 -0
- package/dist/esm/client/decorators/bundlerClient.d.ts +41 -0
- package/dist/esm/client/decorators/bundlerClient.js +13 -0
- package/dist/esm/client/decorators/bundlerClient.js.map +1 -0
- package/dist/esm/client/decorators/smartAccountClient.d.ts +35 -0
- package/dist/esm/client/decorators/smartAccountClient.js +40 -0
- package/dist/esm/client/decorators/smartAccountClient.js.map +1 -0
- package/dist/esm/client/isSmartAccountClient.d.ts +5 -0
- package/dist/esm/client/isSmartAccountClient.js +13 -0
- package/dist/esm/client/isSmartAccountClient.js.map +1 -0
- package/dist/esm/client/schema.d.ts +767 -0
- package/dist/esm/client/schema.js +59 -0
- package/dist/esm/client/schema.js.map +1 -0
- package/dist/esm/client/smartAccountClient.d.ts +33 -0
- package/dist/esm/client/smartAccountClient.js +90 -0
- package/dist/esm/client/smartAccountClient.js.map +1 -0
- package/dist/esm/client/types.d.ts +26 -0
- package/dist/esm/client/types.js +2 -0
- package/dist/esm/client/types.js.map +1 -0
- package/dist/esm/ens/utils.d.ts +6 -0
- package/dist/esm/ens/utils.js +24 -0
- package/dist/esm/ens/utils.js.map +1 -0
- package/dist/esm/entrypoint/0.6.d.ts +1029 -0
- package/dist/esm/entrypoint/0.6.js +47 -0
- package/dist/esm/entrypoint/0.6.js.map +1 -0
- package/dist/esm/entrypoint/0.7.d.ts +792 -0
- package/dist/esm/entrypoint/0.7.js +82 -0
- package/dist/esm/entrypoint/0.7.js.map +1 -0
- package/dist/esm/entrypoint/index.d.ts +8 -0
- package/dist/esm/entrypoint/index.js +46 -0
- package/dist/esm/entrypoint/index.js.map +1 -0
- package/dist/esm/entrypoint/types.d.ts +46 -0
- package/dist/esm/entrypoint/types.js +2 -0
- package/dist/esm/entrypoint/types.js.map +1 -0
- package/dist/esm/errors/account.d.ts +47 -0
- package/dist/esm/errors/account.js +126 -0
- package/dist/esm/errors/account.js.map +1 -0
- package/dist/esm/errors/base.d.ts +18 -0
- package/dist/esm/errors/base.js +35 -0
- package/dist/esm/errors/base.js.map +1 -0
- package/dist/esm/errors/client.d.ts +14 -0
- package/dist/esm/errors/client.js +38 -0
- package/dist/esm/errors/client.js.map +1 -0
- package/dist/esm/errors/entrypoint.d.ts +10 -0
- package/dist/esm/errors/entrypoint.js +27 -0
- package/dist/esm/errors/entrypoint.js.map +1 -0
- package/dist/esm/errors/signer.d.ts +5 -0
- package/dist/esm/errors/signer.js +16 -0
- package/dist/esm/errors/signer.js.map +1 -0
- package/dist/esm/errors/transaction.d.ts +10 -0
- package/dist/esm/errors/transaction.js +24 -0
- package/dist/esm/errors/transaction.js.map +1 -0
- package/dist/esm/errors/useroperation.d.ts +10 -0
- package/dist/esm/errors/useroperation.js +29 -0
- package/dist/esm/errors/useroperation.js.map +1 -0
- package/dist/esm/index.d.ts +63 -0
- package/dist/esm/index.js +48 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/logger.d.ts +20 -0
- package/dist/esm/logger.js +56 -0
- package/dist/esm/logger.js.map +1 -0
- package/dist/esm/middleware/actions.d.ts +12 -0
- package/dist/esm/middleware/actions.js +33 -0
- package/dist/esm/middleware/actions.js.map +1 -0
- package/dist/esm/middleware/defaults/feeEstimator.d.ts +3 -0
- package/dist/esm/middleware/defaults/feeEstimator.js +17 -0
- package/dist/esm/middleware/defaults/feeEstimator.js.map +1 -0
- package/dist/esm/middleware/defaults/gasEstimator.d.ts +3 -0
- package/dist/esm/middleware/defaults/gasEstimator.js +22 -0
- package/dist/esm/middleware/defaults/gasEstimator.js.map +1 -0
- package/dist/esm/middleware/defaults/paymasterAndData.d.ts +2 -0
- package/dist/esm/middleware/defaults/paymasterAndData.js +8 -0
- package/dist/esm/middleware/defaults/paymasterAndData.js.map +1 -0
- package/dist/esm/middleware/defaults/userOpSigner.d.ts +2 -0
- package/dist/esm/middleware/defaults/userOpSigner.js +22 -0
- package/dist/esm/middleware/defaults/userOpSigner.js.map +1 -0
- package/dist/esm/middleware/noopMiddleware.d.ts +2 -0
- package/dist/esm/middleware/noopMiddleware.js +4 -0
- package/dist/esm/middleware/noopMiddleware.js.map +1 -0
- package/dist/esm/middleware/types.d.ts +21 -0
- package/dist/esm/middleware/types.js +2 -0
- package/dist/esm/middleware/types.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/signer/local-account.d.ts +219 -0
- package/dist/esm/signer/local-account.js +53 -0
- package/dist/esm/signer/local-account.js.map +1 -0
- package/dist/esm/signer/schema.d.ts +4 -0
- package/dist/esm/signer/schema.js +12 -0
- package/dist/esm/signer/schema.js.map +1 -0
- package/dist/esm/signer/types.d.ts +15 -0
- package/dist/esm/signer/types.js +2 -0
- package/dist/esm/signer/types.js.map +1 -0
- package/dist/esm/signer/utils.d.ts +15 -0
- package/dist/esm/signer/utils.js +26 -0
- package/dist/esm/signer/utils.js.map +1 -0
- package/dist/esm/signer/wallet-client.d.ts +217 -0
- package/dist/esm/signer/wallet-client.js +54 -0
- package/dist/esm/signer/wallet-client.js.map +1 -0
- package/dist/esm/transport/split.d.ts +9 -0
- package/dist/esm/transport/split.js +22 -0
- package/dist/esm/transport/split.js.map +1 -0
- package/dist/esm/types.d.ts +158 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/utils/bigint.d.ts +10 -0
- package/dist/esm/utils/bigint.js +47 -0
- package/dist/esm/utils/bigint.js.map +1 -0
- package/dist/esm/utils/bytes.d.ts +7 -0
- package/dist/esm/utils/bytes.js +7 -0
- package/dist/esm/utils/bytes.js.map +1 -0
- package/dist/esm/utils/defaults.d.ts +6 -0
- package/dist/esm/utils/defaults.js +55 -0
- package/dist/esm/utils/defaults.js.map +1 -0
- package/dist/esm/utils/index.d.ts +23 -0
- package/dist/esm/utils/index.js +88 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/schema.d.ts +25 -0
- package/dist/esm/utils/schema.js +30 -0
- package/dist/esm/utils/schema.js.map +1 -0
- package/dist/esm/utils/stateOverride.d.ts +4 -0
- package/dist/esm/utils/stateOverride.js +48 -0
- package/dist/esm/utils/stateOverride.js.map +1 -0
- package/dist/esm/utils/testUtils.d.ts +6 -0
- package/dist/esm/utils/testUtils.js +28 -0
- package/dist/esm/utils/testUtils.js.map +1 -0
- package/dist/esm/utils/types.d.ts +16 -0
- package/dist/esm/utils/types.js +2 -0
- package/dist/esm/utils/types.js.map +1 -0
- package/dist/esm/utils/userop.d.ts +49 -0
- package/dist/esm/utils/userop.js +62 -0
- package/dist/esm/utils/userop.js.map +1 -0
- package/dist/esm/version.d.ts +1 -0
- package/dist/esm/version.js +2 -0
- package/dist/esm/version.js.map +1 -0
- package/dist/types/abis/EntryPointAbi_v6.d.ts +1019 -0
- package/dist/types/abis/EntryPointAbi_v6.d.ts.map +1 -0
- package/dist/types/abis/EntryPointAbi_v7.d.ts +776 -0
- package/dist/types/abis/EntryPointAbi_v7.d.ts.map +1 -0
- package/dist/types/abis/SimpleAccountAbi_v6.d.ts +406 -0
- package/dist/types/abis/SimpleAccountAbi_v6.d.ts.map +1 -0
- package/dist/types/abis/SimpleAccountAbi_v7.d.ts +411 -0
- package/dist/types/abis/SimpleAccountAbi_v7.d.ts.map +1 -0
- package/dist/types/abis/SimpleAccountFactoryAbi.d.ts +56 -0
- package/dist/types/abis/SimpleAccountFactoryAbi.d.ts.map +1 -0
- package/dist/types/account/base.d.ts +128 -0
- package/dist/types/account/base.d.ts.map +1 -0
- package/dist/types/account/schema.d.ts +101 -0
- package/dist/types/account/schema.d.ts.map +1 -0
- package/dist/types/account/simple.d.ts +15 -0
- package/dist/types/account/simple.d.ts.map +1 -0
- package/dist/types/account/smartContractAccount.d.ts +69 -0
- package/dist/types/account/smartContractAccount.d.ts.map +1 -0
- package/dist/types/account/types.d.ts +144 -0
- package/dist/types/account/types.d.ts.map +1 -0
- package/dist/types/actions/bundler/estimateUserOperationGas.d.ts +9 -0
- package/dist/types/actions/bundler/estimateUserOperationGas.d.ts.map +1 -0
- package/dist/types/actions/bundler/getSupportedEntryPoints.d.ts +4 -0
- package/dist/types/actions/bundler/getSupportedEntryPoints.d.ts.map +1 -0
- package/dist/types/actions/bundler/getUserOperationByHash.d.ts +7 -0
- package/dist/types/actions/bundler/getUserOperationByHash.d.ts.map +1 -0
- package/dist/types/actions/bundler/getUserOperationReceipt.d.ts +7 -0
- package/dist/types/actions/bundler/getUserOperationReceipt.d.ts.map +1 -0
- package/dist/types/actions/bundler/sendRawUserOperation.d.ts +8 -0
- package/dist/types/actions/bundler/sendRawUserOperation.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/buildUserOperation.d.ts +6 -0
- package/dist/types/actions/smartAccount/buildUserOperation.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/buildUserOperationFromTx.d.ts +45 -0
- package/dist/types/actions/smartAccount/buildUserOperationFromTx.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/buildUserOperationFromTxs.d.ts +75 -0
- package/dist/types/actions/smartAccount/buildUserOperationFromTxs.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/checkGasSponsorshipEligibility.d.ts +33 -0
- package/dist/types/actions/smartAccount/checkGasSponsorshipEligibility.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/dropAndReplaceUserOperation.d.ts +6 -0
- package/dist/types/actions/smartAccount/dropAndReplaceUserOperation.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/estimateUserOperationGas.d.ts +19 -0
- package/dist/types/actions/smartAccount/estimateUserOperationGas.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/getAddress.d.ts +5 -0
- package/dist/types/actions/smartAccount/getAddress.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/internal/initUserOperation.d.ts +22 -0
- package/dist/types/actions/smartAccount/internal/initUserOperation.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/internal/runMiddlewareStack.d.ts +25 -0
- package/dist/types/actions/smartAccount/internal/runMiddlewareStack.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/internal/sendUserOperation.d.ts +18 -0
- package/dist/types/actions/smartAccount/internal/sendUserOperation.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/sendTransaction.d.ts +6 -0
- package/dist/types/actions/smartAccount/sendTransaction.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/sendTransactions.d.ts +5 -0
- package/dist/types/actions/smartAccount/sendTransactions.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/sendUserOperation.d.ts +13 -0
- package/dist/types/actions/smartAccount/sendUserOperation.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/signMessage.d.ts +7 -0
- package/dist/types/actions/smartAccount/signMessage.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/signMessageWith6492.d.ts +5 -0
- package/dist/types/actions/smartAccount/signMessageWith6492.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/signTypedData.d.ts +11 -0
- package/dist/types/actions/smartAccount/signTypedData.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/signTypedDataWith6492.d.ts +7 -0
- package/dist/types/actions/smartAccount/signTypedDataWith6492.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/signUserOperation.d.ts +6 -0
- package/dist/types/actions/smartAccount/signUserOperation.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/types.d.ts +57 -0
- package/dist/types/actions/smartAccount/types.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/upgradeAccount.d.ts +5 -0
- package/dist/types/actions/smartAccount/upgradeAccount.d.ts.map +1 -0
- package/dist/types/actions/smartAccount/waitForUserOperationTransacation.d.ts +4 -0
- package/dist/types/actions/smartAccount/waitForUserOperationTransacation.d.ts.map +1 -0
- package/dist/types/chains/index.d.ts +21 -0
- package/dist/types/chains/index.d.ts.map +1 -0
- package/dist/types/client/bundlerClient.d.ts +17 -0
- package/dist/types/client/bundlerClient.d.ts.map +1 -0
- package/dist/types/client/decorators/bundlerClient.d.ts +74 -0
- package/dist/types/client/decorators/bundlerClient.d.ts.map +1 -0
- package/dist/types/client/decorators/smartAccountClient.d.ts +36 -0
- package/dist/types/client/decorators/smartAccountClient.d.ts.map +1 -0
- package/dist/types/client/isSmartAccountClient.d.ts +22 -0
- package/dist/types/client/isSmartAccountClient.d.ts.map +1 -0
- package/dist/types/client/schema.d.ts +780 -0
- package/dist/types/client/schema.d.ts.map +1 -0
- package/dist/types/client/smartAccountClient.d.ts +34 -0
- package/dist/types/client/smartAccountClient.d.ts.map +1 -0
- package/dist/types/client/types.d.ts +27 -0
- package/dist/types/client/types.d.ts.map +1 -0
- package/dist/types/ens/utils.d.ts +7 -0
- package/dist/types/ens/utils.d.ts.map +1 -0
- package/dist/types/entrypoint/0.6.d.ts +1030 -0
- package/dist/types/entrypoint/0.6.d.ts.map +1 -0
- package/dist/types/entrypoint/0.7.d.ts +793 -0
- package/dist/types/entrypoint/0.7.d.ts.map +1 -0
- package/dist/types/entrypoint/index.d.ts +9 -0
- package/dist/types/entrypoint/index.d.ts.map +1 -0
- package/dist/types/entrypoint/types.d.ts +64 -0
- package/dist/types/entrypoint/types.d.ts.map +1 -0
- package/dist/types/errors/account.d.ts +48 -0
- package/dist/types/errors/account.d.ts.map +1 -0
- package/dist/types/errors/base.d.ts +19 -0
- package/dist/types/errors/base.d.ts.map +1 -0
- package/dist/types/errors/client.d.ts +15 -0
- package/dist/types/errors/client.d.ts.map +1 -0
- package/dist/types/errors/entrypoint.d.ts +11 -0
- package/dist/types/errors/entrypoint.d.ts.map +1 -0
- package/dist/types/errors/signer.d.ts +6 -0
- package/dist/types/errors/signer.d.ts.map +1 -0
- package/dist/types/errors/transaction.d.ts +11 -0
- package/dist/types/errors/transaction.d.ts.map +1 -0
- package/dist/types/errors/useroperation.d.ts +36 -0
- package/dist/types/errors/useroperation.d.ts.map +1 -0
- package/dist/types/index.d.ts +64 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/logger.d.ts +21 -0
- package/dist/types/logger.d.ts.map +1 -0
- package/dist/types/middleware/actions.d.ts +27 -0
- package/dist/types/middleware/actions.d.ts.map +1 -0
- package/dist/types/middleware/defaults/feeEstimator.d.ts +4 -0
- package/dist/types/middleware/defaults/feeEstimator.d.ts.map +1 -0
- package/dist/types/middleware/defaults/gasEstimator.d.ts +12 -0
- package/dist/types/middleware/defaults/gasEstimator.d.ts.map +1 -0
- package/dist/types/middleware/defaults/paymasterAndData.d.ts +3 -0
- package/dist/types/middleware/defaults/paymasterAndData.d.ts.map +1 -0
- package/dist/types/middleware/defaults/userOpSigner.d.ts +3 -0
- package/dist/types/middleware/defaults/userOpSigner.d.ts.map +1 -0
- package/dist/types/middleware/noopMiddleware.d.ts +10 -0
- package/dist/types/middleware/noopMiddleware.d.ts.map +1 -0
- package/dist/types/middleware/types.d.ts +22 -0
- package/dist/types/middleware/types.d.ts.map +1 -0
- package/dist/types/signer/local-account.d.ts +220 -0
- package/dist/types/signer/local-account.d.ts.map +1 -0
- package/dist/types/signer/schema.d.ts +5 -0
- package/dist/types/signer/schema.d.ts.map +1 -0
- package/dist/types/signer/types.d.ts +28 -0
- package/dist/types/signer/types.d.ts.map +1 -0
- package/dist/types/signer/utils.d.ts +16 -0
- package/dist/types/signer/utils.d.ts.map +1 -0
- package/dist/types/signer/wallet-client.d.ts +218 -0
- package/dist/types/signer/wallet-client.d.ts.map +1 -0
- package/dist/types/transport/split.d.ts +42 -0
- package/dist/types/transport/split.d.ts.map +1 -0
- package/dist/types/types.d.ts +176 -0
- package/dist/types/types.d.ts.map +1 -0
- package/dist/types/utils/bigint.d.ts +56 -0
- package/dist/types/utils/bigint.d.ts.map +1 -0
- package/dist/types/utils/bytes.d.ts +17 -0
- package/dist/types/utils/bytes.d.ts.map +1 -0
- package/dist/types/utils/defaults.d.ts +15 -0
- package/dist/types/utils/defaults.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +63 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- package/dist/types/utils/schema.d.ts +29 -0
- package/dist/types/utils/schema.d.ts.map +1 -0
- package/dist/types/utils/stateOverride.d.ts +5 -0
- package/dist/types/utils/stateOverride.d.ts.map +1 -0
- package/dist/types/utils/testUtils.d.ts +7 -0
- package/dist/types/utils/testUtils.d.ts.map +1 -0
- package/dist/types/utils/types.d.ts +39 -0
- package/dist/types/utils/types.d.ts.map +1 -0
- package/dist/types/utils/userop.d.ts +129 -0
- package/dist/types/utils/userop.d.ts.map +1 -0
- package/dist/types/version.d.ts +2 -0
- package/dist/types/version.d.ts.map +1 -0
- package/package.json +70 -0
- package/src/abis/EntryPointAbi_v6.ts +1309 -0
- package/src/abis/EntryPointAbi_v7.ts +658 -0
- package/src/abis/SimpleAccountAbi_v6.ts +524 -0
- package/src/abis/SimpleAccountAbi_v7.ts +534 -0
- package/src/abis/SimpleAccountFactoryAbi.ts +74 -0
- package/src/account/base.ts +415 -0
- package/src/account/schema.ts +51 -0
- package/src/account/simple.ts +215 -0
- package/src/account/smartContractAccount.ts +406 -0
- package/src/account/types.ts +184 -0
- package/src/actions/bundler/estimateUserOperationGas.ts +32 -0
- package/src/actions/bundler/getSupportedEntryPoints.ts +13 -0
- package/src/actions/bundler/getUserOperationByHash.ts +17 -0
- package/src/actions/bundler/getUserOperationReceipt.ts +17 -0
- package/src/actions/bundler/sendRawUserOperation.ts +20 -0
- package/src/actions/smartAccount/buildUserOperation.ts +52 -0
- package/src/actions/smartAccount/buildUserOperationFromTx.ts +112 -0
- package/src/actions/smartAccount/buildUserOperationFromTxs.ts +168 -0
- package/src/actions/smartAccount/checkGasSponsorshipEligibility.ts +86 -0
- package/src/actions/smartAccount/dropAndReplaceUserOperation.ts +111 -0
- package/src/actions/smartAccount/estimateUserOperationGas.ts +65 -0
- package/src/actions/smartAccount/getAddress.ts +25 -0
- package/src/actions/smartAccount/internal/initUserOperation.ts +93 -0
- package/src/actions/smartAccount/internal/runMiddlewareStack.ts +121 -0
- package/src/actions/smartAccount/internal/sendUserOperation.ts +64 -0
- package/src/actions/smartAccount/sendTransaction.ts +73 -0
- package/src/actions/smartAccount/sendTransactions.ts +53 -0
- package/src/actions/smartAccount/sendUserOperation.ts +65 -0
- package/src/actions/smartAccount/signMessage.ts +28 -0
- package/src/actions/smartAccount/signMessageWith6492.ts +21 -0
- package/src/actions/smartAccount/signTypedData.ts +42 -0
- package/src/actions/smartAccount/signTypedDataWith6492.ts +23 -0
- package/src/actions/smartAccount/signUserOperation.ts +54 -0
- package/src/actions/smartAccount/types.ts +158 -0
- package/src/actions/smartAccount/upgradeAccount.ts +66 -0
- package/src/actions/smartAccount/waitForUserOperationTransacation.ts +58 -0
- package/src/chains/index.ts +194 -0
- package/src/client/bundlerClient.ts +107 -0
- package/src/client/decorators/bundlerClient.ts +129 -0
- package/src/client/decorators/smartAccountClient.ts +177 -0
- package/src/client/isSmartAccountClient.ts +53 -0
- package/src/client/schema.ts +92 -0
- package/src/client/smartAccountClient.ts +276 -0
- package/src/client/types.ts +51 -0
- package/src/ens/utils.ts +37 -0
- package/src/entrypoint/0.6.ts +74 -0
- package/src/entrypoint/0.7.ts +153 -0
- package/src/entrypoint/index.ts +152 -0
- package/src/entrypoint/types.ts +120 -0
- package/src/errors/account.ts +87 -0
- package/src/errors/base.ts +48 -0
- package/src/errors/client.ts +28 -0
- package/src/errors/entrypoint.ts +25 -0
- package/src/errors/signer.ts +13 -0
- package/src/errors/transaction.ts +16 -0
- package/src/errors/useroperation.ts +54 -0
- package/src/index.ts +172 -0
- package/src/logger.ts +58 -0
- package/src/middleware/actions.ts +92 -0
- package/src/middleware/defaults/feeEstimator.ts +50 -0
- package/src/middleware/defaults/gasEstimator.ts +66 -0
- package/src/middleware/defaults/paymasterAndData.ts +13 -0
- package/src/middleware/defaults/userOpSigner.ts +35 -0
- package/src/middleware/noopMiddleware.ts +12 -0
- package/src/middleware/types.ts +49 -0
- package/src/signer/local-account.ts +59 -0
- package/src/signer/schema.ts +16 -0
- package/src/signer/types.ts +46 -0
- package/src/signer/utils.ts +68 -0
- package/src/signer/wallet-client.ts +49 -0
- package/src/transport/split.ts +69 -0
- package/src/types.ts +411 -0
- package/src/utils/bigint.ts +118 -0
- package/src/utils/bytes.ts +23 -0
- package/src/utils/defaults.ts +93 -0
- package/src/utils/index.ts +173 -0
- package/src/utils/schema.ts +52 -0
- package/src/utils/stateOverride.ts +80 -0
- package/src/utils/testUtils.ts +42 -0
- package/src/utils/types.ts +94 -0
- package/src/utils/userop.ts +220 -0
- package/src/version.ts +3 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BaseError } from "./base.js";
|
|
2
|
+
|
|
3
|
+
export class InvalidSignerTypeError extends BaseError {
|
|
4
|
+
override name = "InvalidSignerTypeError";
|
|
5
|
+
constructor(signerType?: string) {
|
|
6
|
+
super(
|
|
7
|
+
[
|
|
8
|
+
"Invalid signer type parameter passed to SmartAccountSigner.",
|
|
9
|
+
signerType ?? "A signerType must be provided.",
|
|
10
|
+
].join("\n")
|
|
11
|
+
);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Hex } from "viem";
|
|
2
|
+
import { BaseError } from "./base.js";
|
|
3
|
+
|
|
4
|
+
export class TransactionMissingToParamError extends BaseError {
|
|
5
|
+
override name = "TransactionMissingToParamError";
|
|
6
|
+
constructor() {
|
|
7
|
+
super("Transaction is missing `to` address set on request");
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export class FailedToFindTransactionError extends BaseError {
|
|
12
|
+
override name = "FailedToFindTransactionError";
|
|
13
|
+
constructor(hash: Hex) {
|
|
14
|
+
super(`Failed to find transaction for user operation ${hash}`);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { UserOperationRequest, UserOperationStruct } from "../types.js";
|
|
2
|
+
import { BaseError } from "./base.js";
|
|
3
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
4
|
+
import type { dropAndReplaceUserOperation } from "../actions/smartAccount/dropAndReplaceUserOperation.js";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Thrown when a {@link UserOperationStruct} is not a valid request
|
|
8
|
+
*
|
|
9
|
+
* extends viem BaseError
|
|
10
|
+
*/
|
|
11
|
+
export class InvalidUserOperationError extends BaseError {
|
|
12
|
+
/**
|
|
13
|
+
* @inheritdoc
|
|
14
|
+
*/
|
|
15
|
+
override name = "InvalidUserOperationError";
|
|
16
|
+
/**
|
|
17
|
+
* Creates an instance of InvalidUserOperationError.
|
|
18
|
+
*
|
|
19
|
+
* InvalidUserOperationError constructor
|
|
20
|
+
*
|
|
21
|
+
* @param uo the invalid user operation struct
|
|
22
|
+
*/
|
|
23
|
+
constructor(uo: UserOperationStruct) {
|
|
24
|
+
super(
|
|
25
|
+
`Request is missing parameters. All properties on UserOperationStruct must be set. uo: ${JSON.stringify(
|
|
26
|
+
uo,
|
|
27
|
+
(_key, value) =>
|
|
28
|
+
typeof value === "bigint"
|
|
29
|
+
? {
|
|
30
|
+
type: "bigint",
|
|
31
|
+
value: value.toString(),
|
|
32
|
+
}
|
|
33
|
+
: value,
|
|
34
|
+
2
|
|
35
|
+
)}`
|
|
36
|
+
);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Error thrown when waiting for user operation request to be mined.
|
|
42
|
+
*
|
|
43
|
+
* Includes the internal error as well as the request that failed. This request
|
|
44
|
+
* can then be used with {@link dropAndReplaceUserOperation} to retry the operation.
|
|
45
|
+
*/
|
|
46
|
+
export class WaitForUserOperationError extends BaseError {
|
|
47
|
+
/**
|
|
48
|
+
* @param request the user operation request that failed
|
|
49
|
+
* @param error the underlying error that caused the failure
|
|
50
|
+
*/
|
|
51
|
+
constructor(public request: UserOperationRequest, error: Error) {
|
|
52
|
+
super(`Failed to find User Operation: ${error.message}`);
|
|
53
|
+
}
|
|
54
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
export type { Abi } from "abitype";
|
|
2
|
+
export type { Address, HttpTransport } from "viem";
|
|
3
|
+
export * as chains from "viem/chains";
|
|
4
|
+
|
|
5
|
+
export { EntryPointAbi_v6 } from "./abis/EntryPointAbi_v6.js";
|
|
6
|
+
export { EntryPointAbi_v7 } from "./abis/EntryPointAbi_v7.js";
|
|
7
|
+
export { SimpleAccountAbi_v6 } from "./abis/SimpleAccountAbi_v6.js";
|
|
8
|
+
export { SimpleAccountAbi_v7 } from "./abis/SimpleAccountAbi_v7.js";
|
|
9
|
+
export { SimpleAccountFactoryAbi } from "./abis/SimpleAccountFactoryAbi.js";
|
|
10
|
+
export { BaseSmartContractAccount } from "./account/base.js";
|
|
11
|
+
export { createSimpleSmartAccount } from "./account/simple.js";
|
|
12
|
+
export type { SimpleSmartAccount } from "./account/simple.js";
|
|
13
|
+
export type * from "./account/smartContractAccount.js";
|
|
14
|
+
export {
|
|
15
|
+
getAccountAddress,
|
|
16
|
+
isSmartAccountWithSigner,
|
|
17
|
+
parseFactoryAddressFromAccountInitCode,
|
|
18
|
+
toSmartContractAccount,
|
|
19
|
+
} from "./account/smartContractAccount.js";
|
|
20
|
+
export type {
|
|
21
|
+
BaseSmartAccountParams,
|
|
22
|
+
SignTypedDataParams,
|
|
23
|
+
} from "./account/types.js";
|
|
24
|
+
export { buildUserOperation } from "./actions/smartAccount/buildUserOperation.js";
|
|
25
|
+
export { buildUserOperationFromTx } from "./actions/smartAccount/buildUserOperationFromTx.js";
|
|
26
|
+
export { buildUserOperationFromTxs } from "./actions/smartAccount/buildUserOperationFromTxs.js";
|
|
27
|
+
export { checkGasSponsorshipEligibility } from "./actions/smartAccount/checkGasSponsorshipEligibility.js";
|
|
28
|
+
export { dropAndReplaceUserOperation } from "./actions/smartAccount/dropAndReplaceUserOperation.js";
|
|
29
|
+
export { sendTransaction } from "./actions/smartAccount/sendTransaction.js";
|
|
30
|
+
export { sendTransactions } from "./actions/smartAccount/sendTransactions.js";
|
|
31
|
+
export { sendUserOperation } from "./actions/smartAccount/sendUserOperation.js";
|
|
32
|
+
export type * from "./actions/smartAccount/types.js";
|
|
33
|
+
export { waitForUserOperationTransaction } from "./actions/smartAccount/waitForUserOperationTransacation.js";
|
|
34
|
+
export {
|
|
35
|
+
arbitrum,
|
|
36
|
+
arbitrumGoerli,
|
|
37
|
+
arbitrumSepolia,
|
|
38
|
+
base,
|
|
39
|
+
baseGoerli,
|
|
40
|
+
baseSepolia,
|
|
41
|
+
fraxtal,
|
|
42
|
+
fraxtalSepolia,
|
|
43
|
+
goerli,
|
|
44
|
+
mainnet,
|
|
45
|
+
optimism,
|
|
46
|
+
optimismGoerli,
|
|
47
|
+
optimismSepolia,
|
|
48
|
+
polygon,
|
|
49
|
+
polygonAmoy,
|
|
50
|
+
polygonMumbai,
|
|
51
|
+
sepolia,
|
|
52
|
+
zora,
|
|
53
|
+
zoraSepolia,
|
|
54
|
+
} from "./chains/index.js";
|
|
55
|
+
export type * from "./client/bundlerClient.js";
|
|
56
|
+
export {
|
|
57
|
+
createBundlerClient,
|
|
58
|
+
createBundlerClientFromExisting,
|
|
59
|
+
} from "./client/bundlerClient.js";
|
|
60
|
+
export type * from "./client/decorators/bundlerClient.js";
|
|
61
|
+
export { bundlerActions } from "./client/decorators/bundlerClient.js";
|
|
62
|
+
export type * from "./client/decorators/smartAccountClient.js";
|
|
63
|
+
export { smartAccountClientActions } from "./client/decorators/smartAccountClient.js";
|
|
64
|
+
export { isSmartAccountClient } from "./client/isSmartAccountClient.js";
|
|
65
|
+
export {
|
|
66
|
+
ConnectionConfigSchema,
|
|
67
|
+
SmartAccountClientOptsSchema,
|
|
68
|
+
} from "./client/schema.js";
|
|
69
|
+
export type * from "./client/smartAccountClient.js";
|
|
70
|
+
export {
|
|
71
|
+
createSmartAccountClient,
|
|
72
|
+
createSmartAccountClientFromExisting,
|
|
73
|
+
} from "./client/smartAccountClient.js";
|
|
74
|
+
export type * from "./client/types.js";
|
|
75
|
+
export {
|
|
76
|
+
convertChainIdToCoinType,
|
|
77
|
+
convertCoinTypeToChain,
|
|
78
|
+
convertCoinTypeToChainId,
|
|
79
|
+
} from "./ens/utils.js";
|
|
80
|
+
export {
|
|
81
|
+
defaultEntryPointVersion,
|
|
82
|
+
entryPointRegistry,
|
|
83
|
+
getEntryPoint,
|
|
84
|
+
isEntryPointVersion,
|
|
85
|
+
} from "./entrypoint/index.js";
|
|
86
|
+
export type * from "./entrypoint/types.js";
|
|
87
|
+
export {
|
|
88
|
+
AccountNotFoundError,
|
|
89
|
+
AccountRequiresOwnerError,
|
|
90
|
+
BatchExecutionNotSupportedError,
|
|
91
|
+
DefaultFactoryNotDefinedError,
|
|
92
|
+
FailedToGetStorageSlotError,
|
|
93
|
+
GetCounterFactualAddressError,
|
|
94
|
+
IncorrectAccountType,
|
|
95
|
+
SignTransactionNotSupportedError,
|
|
96
|
+
SmartAccountWithSignerRequiredError,
|
|
97
|
+
UpgradeToAndCallNotSupportedError,
|
|
98
|
+
UpgradesNotSupportedError,
|
|
99
|
+
} from "./errors/account.js";
|
|
100
|
+
export { BaseError } from "./errors/base.js";
|
|
101
|
+
export {
|
|
102
|
+
ChainNotFoundError,
|
|
103
|
+
IncompatibleClientError,
|
|
104
|
+
InvalidRpcUrlError,
|
|
105
|
+
} from "./errors/client.js";
|
|
106
|
+
export {
|
|
107
|
+
EntryPointNotFoundError,
|
|
108
|
+
InvalidEntryPointError,
|
|
109
|
+
} from "./errors/entrypoint.js";
|
|
110
|
+
export { InvalidSignerTypeError } from "./errors/signer.js";
|
|
111
|
+
export {
|
|
112
|
+
FailedToFindTransactionError,
|
|
113
|
+
TransactionMissingToParamError,
|
|
114
|
+
} from "./errors/transaction.js";
|
|
115
|
+
export {
|
|
116
|
+
InvalidUserOperationError,
|
|
117
|
+
WaitForUserOperationError,
|
|
118
|
+
} from "./errors/useroperation.js";
|
|
119
|
+
export { LogLevel, Logger } from "./logger.js";
|
|
120
|
+
export { middlewareActions } from "./middleware/actions.js";
|
|
121
|
+
export { defaultFeeEstimator } from "./middleware/defaults/feeEstimator.js";
|
|
122
|
+
export { defaultGasEstimator } from "./middleware/defaults/gasEstimator.js";
|
|
123
|
+
export { defaultPaymasterAndData } from "./middleware/defaults/paymasterAndData.js";
|
|
124
|
+
export { defaultUserOpSigner } from "./middleware/defaults/userOpSigner.js";
|
|
125
|
+
export { noopMiddleware } from "./middleware/noopMiddleware.js";
|
|
126
|
+
export type * from "./middleware/types.js";
|
|
127
|
+
export { LocalAccountSigner } from "./signer/local-account.js";
|
|
128
|
+
export { SignerSchema, isSigner } from "./signer/schema.js";
|
|
129
|
+
export type {
|
|
130
|
+
SmartAccountAuthenticator,
|
|
131
|
+
SmartAccountSigner,
|
|
132
|
+
} from "./signer/types.js";
|
|
133
|
+
export {
|
|
134
|
+
verifyEIP6492Signature,
|
|
135
|
+
wrapSignatureWith6492,
|
|
136
|
+
} from "./signer/utils.js";
|
|
137
|
+
export { WalletClientSigner } from "./signer/wallet-client.js";
|
|
138
|
+
export { split, type SplitTransportParams } from "./transport/split.js";
|
|
139
|
+
export type * from "./types.js";
|
|
140
|
+
export type * from "./utils/index.js";
|
|
141
|
+
export {
|
|
142
|
+
AlchemyChainMap,
|
|
143
|
+
BigNumberishRangeSchema,
|
|
144
|
+
BigNumberishSchema,
|
|
145
|
+
ChainSchema,
|
|
146
|
+
HexSchema,
|
|
147
|
+
MultiplierSchema,
|
|
148
|
+
allEqual,
|
|
149
|
+
applyUserOpFeeOption,
|
|
150
|
+
applyUserOpOverride,
|
|
151
|
+
applyUserOpOverrideOrFeeOption,
|
|
152
|
+
asyncPipe,
|
|
153
|
+
bigIntMax,
|
|
154
|
+
bigIntMultiply,
|
|
155
|
+
bypassPaymasterAndData,
|
|
156
|
+
bypassPaymasterAndDataEmptyHex,
|
|
157
|
+
concatPaymasterAndData,
|
|
158
|
+
deepHexlify,
|
|
159
|
+
defineReadOnly,
|
|
160
|
+
filterUndefined,
|
|
161
|
+
getChain,
|
|
162
|
+
getDefaultSimpleAccountFactoryAddress,
|
|
163
|
+
getDefaultUserOperationFeeOptions,
|
|
164
|
+
isBigNumberish,
|
|
165
|
+
isMultiplier,
|
|
166
|
+
isValidRequest,
|
|
167
|
+
parsePaymasterAndData,
|
|
168
|
+
pick,
|
|
169
|
+
resolveProperties,
|
|
170
|
+
takeBytes,
|
|
171
|
+
toRecord,
|
|
172
|
+
} from "./utils/index.js";
|
package/src/logger.ts
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
export enum LogLevel {
|
|
2
|
+
VERBOSE = 5,
|
|
3
|
+
DEBUG = 4,
|
|
4
|
+
INFO = 3,
|
|
5
|
+
WARN = 2,
|
|
6
|
+
ERROR = 1,
|
|
7
|
+
NONE = 0,
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export class Logger {
|
|
11
|
+
static logLevel: LogLevel = LogLevel.INFO;
|
|
12
|
+
static logFilter?: string;
|
|
13
|
+
|
|
14
|
+
static setLogLevel(logLevel: LogLevel) {
|
|
15
|
+
this.logLevel = logLevel;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
static setLogFilter(pattern: string) {
|
|
19
|
+
this.logFilter = pattern;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
static error(msg: string, ...args: any[]) {
|
|
23
|
+
if (!this.shouldLog(msg, LogLevel.ERROR)) return;
|
|
24
|
+
|
|
25
|
+
console.error(msg, ...args);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
static warn(msg: string, ...args: any[]) {
|
|
29
|
+
if (!this.shouldLog(msg, LogLevel.WARN)) return;
|
|
30
|
+
|
|
31
|
+
console.warn(msg, ...args);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
static debug(msg: string, ...args: any[]) {
|
|
35
|
+
if (!this.shouldLog(msg, LogLevel.DEBUG)) return;
|
|
36
|
+
|
|
37
|
+
console.debug(msg, ...args);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
static info(msg: string, ...args: any[]) {
|
|
41
|
+
if (!this.shouldLog(msg, LogLevel.INFO)) return;
|
|
42
|
+
|
|
43
|
+
console.info(msg, ...args);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
static verbose(msg: string, ...args: any[]) {
|
|
47
|
+
if (!this.shouldLog(msg, LogLevel.VERBOSE)) return;
|
|
48
|
+
|
|
49
|
+
console.log(msg, ...args);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
private static shouldLog(msg: string, level: LogLevel) {
|
|
53
|
+
if (this.logLevel < level) return false;
|
|
54
|
+
if (this.logFilter && !msg.includes(this.logFilter)) return false;
|
|
55
|
+
|
|
56
|
+
return true;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import {
|
|
2
|
+
isHex,
|
|
3
|
+
type Chain,
|
|
4
|
+
type Client,
|
|
5
|
+
type PublicActions,
|
|
6
|
+
type PublicRpcSchema,
|
|
7
|
+
type Transport,
|
|
8
|
+
} from "viem";
|
|
9
|
+
import type { SmartContractAccount } from "../account/smartContractAccount.js";
|
|
10
|
+
import type {
|
|
11
|
+
BundlerActions,
|
|
12
|
+
BundlerRpcSchema,
|
|
13
|
+
} from "../client/decorators/bundlerClient.js";
|
|
14
|
+
import type { ClientMiddlewareConfig } from "../client/types.js";
|
|
15
|
+
import {
|
|
16
|
+
concatPaymasterAndData,
|
|
17
|
+
parsePaymasterAndData,
|
|
18
|
+
} from "../utils/userop.js";
|
|
19
|
+
import { defaultFeeEstimator } from "./defaults/feeEstimator.js";
|
|
20
|
+
import { defaultGasEstimator } from "./defaults/gasEstimator.js";
|
|
21
|
+
import { defaultPaymasterAndData } from "./defaults/paymasterAndData.js";
|
|
22
|
+
import { defaultUserOpSigner } from "./defaults/userOpSigner.js";
|
|
23
|
+
import { noopMiddleware } from "./noopMiddleware.js";
|
|
24
|
+
import type { ClientMiddleware } from "./types.js";
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Middleware client type
|
|
28
|
+
*
|
|
29
|
+
* @template {Transport} TTransport
|
|
30
|
+
* @template {Chain | undefined} TChain
|
|
31
|
+
* @template {SmartContractAccount | undefined} TAccount
|
|
32
|
+
*/
|
|
33
|
+
export type MiddlewareClient<
|
|
34
|
+
TTransport extends Transport = Transport,
|
|
35
|
+
TChain extends Chain | undefined = Chain | undefined,
|
|
36
|
+
TAccount extends SmartContractAccount | undefined =
|
|
37
|
+
| SmartContractAccount
|
|
38
|
+
| undefined
|
|
39
|
+
> = Client<
|
|
40
|
+
TTransport,
|
|
41
|
+
TChain,
|
|
42
|
+
TAccount,
|
|
43
|
+
[...BundlerRpcSchema, ...PublicRpcSchema],
|
|
44
|
+
PublicActions & BundlerActions
|
|
45
|
+
>;
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* export function that takes in {@link ClientMiddlewareConfig} used during client initiation
|
|
49
|
+
* and returns the middleware actions object that the smart account client extends with
|
|
50
|
+
*
|
|
51
|
+
* @param overrides - {@link ClientMiddlewareConfig} used during client initiation for overriding default middlewares
|
|
52
|
+
* @returns middleware actions object
|
|
53
|
+
*/
|
|
54
|
+
export const middlewareActions =
|
|
55
|
+
(overrides: ClientMiddlewareConfig) =>
|
|
56
|
+
<
|
|
57
|
+
TTransport extends Transport = Transport,
|
|
58
|
+
TChain extends Chain | undefined = Chain | undefined,
|
|
59
|
+
TAccount extends SmartContractAccount | undefined =
|
|
60
|
+
| SmartContractAccount
|
|
61
|
+
| undefined
|
|
62
|
+
>(
|
|
63
|
+
client: MiddlewareClient<TTransport, TChain, TAccount>
|
|
64
|
+
): { middleware: ClientMiddleware } => ({
|
|
65
|
+
middleware: {
|
|
66
|
+
customMiddleware: overrides.customMiddleware ?? noopMiddleware,
|
|
67
|
+
dummyPaymasterAndData: overrides.paymasterAndData?.dummyPaymasterAndData
|
|
68
|
+
? async (struct, { account }) => {
|
|
69
|
+
const data = overrides.paymasterAndData!.dummyPaymasterAndData();
|
|
70
|
+
const paymasterOverrides =
|
|
71
|
+
account.getEntryPoint().version === "0.7.0"
|
|
72
|
+
? isHex(data)
|
|
73
|
+
? parsePaymasterAndData(data)
|
|
74
|
+
: data
|
|
75
|
+
: {
|
|
76
|
+
paymasterAndData: isHex(data)
|
|
77
|
+
? data
|
|
78
|
+
: concatPaymasterAndData(data),
|
|
79
|
+
};
|
|
80
|
+
return { ...struct, ...paymasterOverrides };
|
|
81
|
+
}
|
|
82
|
+
: defaultPaymasterAndData,
|
|
83
|
+
|
|
84
|
+
feeEstimator: overrides.feeEstimator ?? defaultFeeEstimator(client),
|
|
85
|
+
gasEstimator: overrides.gasEstimator ?? defaultGasEstimator(client),
|
|
86
|
+
paymasterAndData:
|
|
87
|
+
overrides.paymasterAndData?.paymasterAndData ?? defaultPaymasterAndData,
|
|
88
|
+
userOperationSimulator:
|
|
89
|
+
overrides.userOperationSimulator ?? noopMiddleware,
|
|
90
|
+
signUserOperation: overrides.signUserOperation ?? defaultUserOpSigner,
|
|
91
|
+
},
|
|
92
|
+
});
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { BigNumberish } from "../../types";
|
|
2
|
+
import { applyUserOpOverrideOrFeeOption } from "../../utils/index.js";
|
|
3
|
+
import type { MiddlewareClient } from "../actions";
|
|
4
|
+
import type { ClientMiddlewareFn } from "../types";
|
|
5
|
+
|
|
6
|
+
export const defaultFeeEstimator: <C extends MiddlewareClient>(
|
|
7
|
+
client: C
|
|
8
|
+
) => ClientMiddlewareFn =
|
|
9
|
+
(client) =>
|
|
10
|
+
async (struct, { overrides, feeOptions }) => {
|
|
11
|
+
// maxFeePerGas must be at least the sum of maxPriorityFeePerGas and baseFee
|
|
12
|
+
// so we need to accommodate for the fee option applied maxPriorityFeePerGas for the maxFeePerGas
|
|
13
|
+
//
|
|
14
|
+
// Note that if maxFeePerGas is not at least the sum of maxPriorityFeePerGas and required baseFee
|
|
15
|
+
// after applying the fee options, then the transaction will fail
|
|
16
|
+
//
|
|
17
|
+
// Refer to https://docs.alchemy.com/docs/maxpriorityfeepergas-vs-maxfeepergas
|
|
18
|
+
// for more information about maxFeePerGas and maxPriorityFeePerGas
|
|
19
|
+
|
|
20
|
+
const feeData = await client.estimateFeesPerGas();
|
|
21
|
+
if (!feeData.maxFeePerGas || feeData.maxPriorityFeePerGas == null) {
|
|
22
|
+
throw new Error(
|
|
23
|
+
"feeData is missing maxFeePerGas or maxPriorityFeePerGas"
|
|
24
|
+
);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
let maxPriorityFeePerGas: BigNumberish =
|
|
28
|
+
await client.estimateMaxPriorityFeePerGas();
|
|
29
|
+
|
|
30
|
+
maxPriorityFeePerGas = applyUserOpOverrideOrFeeOption(
|
|
31
|
+
maxPriorityFeePerGas,
|
|
32
|
+
overrides?.maxPriorityFeePerGas,
|
|
33
|
+
feeOptions?.maxPriorityFeePerGas
|
|
34
|
+
);
|
|
35
|
+
|
|
36
|
+
let maxFeePerGas: BigNumberish =
|
|
37
|
+
feeData.maxFeePerGas -
|
|
38
|
+
feeData.maxPriorityFeePerGas +
|
|
39
|
+
BigInt(maxPriorityFeePerGas);
|
|
40
|
+
|
|
41
|
+
maxFeePerGas = applyUserOpOverrideOrFeeOption(
|
|
42
|
+
maxFeePerGas,
|
|
43
|
+
overrides?.maxFeePerGas,
|
|
44
|
+
feeOptions?.maxFeePerGas
|
|
45
|
+
);
|
|
46
|
+
|
|
47
|
+
struct.maxFeePerGas = maxFeePerGas;
|
|
48
|
+
struct.maxPriorityFeePerGas = maxPriorityFeePerGas;
|
|
49
|
+
return struct;
|
|
50
|
+
};
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
UserOperationFeeOptions,
|
|
3
|
+
UserOperationOverrides,
|
|
4
|
+
UserOperationStruct,
|
|
5
|
+
} from "../../types.js";
|
|
6
|
+
import { deepHexlify, resolveProperties } from "../../utils/index.js";
|
|
7
|
+
import { applyUserOpOverrideOrFeeOption } from "../../utils/userop.js";
|
|
8
|
+
import type { MiddlewareClient } from "../actions.js";
|
|
9
|
+
import type { ClientMiddlewareFn } from "../types.js";
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Description default gas estimator middleware for `SmartAccountClient`
|
|
13
|
+
* You can override this middleware with your custom gas estimator middleware
|
|
14
|
+
* by passing it to the client constructor
|
|
15
|
+
*
|
|
16
|
+
* @param client smart account client instance to apply the middleware to
|
|
17
|
+
* @returns middleware execution function used to estimate gas for user operations
|
|
18
|
+
*/
|
|
19
|
+
export const defaultGasEstimator: <C extends MiddlewareClient>(
|
|
20
|
+
client: C
|
|
21
|
+
) => ClientMiddlewareFn =
|
|
22
|
+
(client) =>
|
|
23
|
+
async (struct, { account, overrides, feeOptions }) => {
|
|
24
|
+
const request = deepHexlify(await resolveProperties(struct));
|
|
25
|
+
|
|
26
|
+
const estimates = await client.estimateUserOperationGas(
|
|
27
|
+
request,
|
|
28
|
+
account.getEntryPoint().address,
|
|
29
|
+
overrides?.stateOverride
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
const callGasLimit = applyUserOpOverrideOrFeeOption(
|
|
33
|
+
estimates.callGasLimit,
|
|
34
|
+
overrides?.callGasLimit,
|
|
35
|
+
feeOptions?.callGasLimit
|
|
36
|
+
);
|
|
37
|
+
const verificationGasLimit = applyUserOpOverrideOrFeeOption(
|
|
38
|
+
estimates.verificationGasLimit,
|
|
39
|
+
overrides?.verificationGasLimit,
|
|
40
|
+
feeOptions?.verificationGasLimit
|
|
41
|
+
);
|
|
42
|
+
const preVerificationGas = applyUserOpOverrideOrFeeOption(
|
|
43
|
+
estimates.preVerificationGas,
|
|
44
|
+
overrides?.preVerificationGas,
|
|
45
|
+
feeOptions?.preVerificationGas
|
|
46
|
+
);
|
|
47
|
+
|
|
48
|
+
struct.callGasLimit = callGasLimit;
|
|
49
|
+
struct.verificationGasLimit = verificationGasLimit;
|
|
50
|
+
struct.preVerificationGas = preVerificationGas;
|
|
51
|
+
|
|
52
|
+
const entryPoint = account.getEntryPoint();
|
|
53
|
+
if (entryPoint.version === "0.7.0") {
|
|
54
|
+
const paymasterVerificationGasLimit = applyUserOpOverrideOrFeeOption(
|
|
55
|
+
estimates.paymasterVerificationGasLimit,
|
|
56
|
+
(overrides as UserOperationOverrides<"0.7.0">)
|
|
57
|
+
?.paymasterVerificationGasLimit,
|
|
58
|
+
(feeOptions as UserOperationFeeOptions<"0.7.0">)
|
|
59
|
+
?.paymasterVerificationGasLimit
|
|
60
|
+
);
|
|
61
|
+
(struct as UserOperationStruct<"0.7.0">).paymasterVerificationGasLimit =
|
|
62
|
+
paymasterVerificationGasLimit;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
return struct;
|
|
66
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { UserOperationStruct } from "../../types";
|
|
2
|
+
import type { ClientMiddlewareFn } from "../types";
|
|
3
|
+
|
|
4
|
+
export const defaultPaymasterAndData: ClientMiddlewareFn = async (
|
|
5
|
+
struct,
|
|
6
|
+
{ account }
|
|
7
|
+
) => {
|
|
8
|
+
const entryPoint = account.getEntryPoint();
|
|
9
|
+
if (entryPoint.version === "0.6.0") {
|
|
10
|
+
(struct as UserOperationStruct<"0.6.0">).paymasterAndData = "0x";
|
|
11
|
+
}
|
|
12
|
+
return struct;
|
|
13
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { AccountNotFoundError } from "../../errors/account.js";
|
|
2
|
+
import { ChainNotFoundError } from "../../errors/client.js";
|
|
3
|
+
import { InvalidUserOperationError } from "../../errors/useroperation.js";
|
|
4
|
+
import {
|
|
5
|
+
deepHexlify,
|
|
6
|
+
isValidRequest,
|
|
7
|
+
resolveProperties,
|
|
8
|
+
} from "../../utils/index.js";
|
|
9
|
+
import type { ClientMiddlewareFn } from "../types";
|
|
10
|
+
|
|
11
|
+
export const defaultUserOpSigner: ClientMiddlewareFn = async (
|
|
12
|
+
struct,
|
|
13
|
+
{ client, account = client.account }
|
|
14
|
+
) => {
|
|
15
|
+
if (!account) {
|
|
16
|
+
throw new AccountNotFoundError();
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
if (!client?.chain) {
|
|
20
|
+
throw new ChainNotFoundError();
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
const resolvedStruct = await resolveProperties(struct);
|
|
24
|
+
const request = deepHexlify(resolvedStruct);
|
|
25
|
+
if (!isValidRequest(request)) {
|
|
26
|
+
throw new InvalidUserOperationError(resolvedStruct);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
return {
|
|
30
|
+
...resolvedStruct,
|
|
31
|
+
signature: await account.signUserOperationHash(
|
|
32
|
+
account.getEntryPoint().getUserOperationHash(request)
|
|
33
|
+
),
|
|
34
|
+
};
|
|
35
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ClientMiddlewareFn } from "./types";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Noop middleware that does nothing and passes the arguments through
|
|
5
|
+
*
|
|
6
|
+
* @async
|
|
7
|
+
* @param args the client middleware arguments passed to the middleware
|
|
8
|
+
* @returns the arguments passed to the middleware and returned as is without modification
|
|
9
|
+
*/
|
|
10
|
+
export const noopMiddleware: ClientMiddlewareFn = async (args) => {
|
|
11
|
+
return args;
|
|
12
|
+
};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
GetEntryPointFromAccount,
|
|
3
|
+
SmartContractAccount,
|
|
4
|
+
} from "../account/smartContractAccount";
|
|
5
|
+
import type { UserOperationContext } from "../actions/smartAccount/types";
|
|
6
|
+
import type {
|
|
7
|
+
UserOperationFeeOptions,
|
|
8
|
+
UserOperationOverrides,
|
|
9
|
+
UserOperationStruct,
|
|
10
|
+
} from "../types";
|
|
11
|
+
import type { Deferrable } from "../utils";
|
|
12
|
+
import type { MiddlewareClient } from "./actions";
|
|
13
|
+
|
|
14
|
+
// [!region ClientMiddlewareFn]
|
|
15
|
+
export type ClientMiddlewareFn<
|
|
16
|
+
TContext extends UserOperationContext | undefined =
|
|
17
|
+
| UserOperationContext
|
|
18
|
+
| undefined
|
|
19
|
+
> = <
|
|
20
|
+
TAccount extends SmartContractAccount,
|
|
21
|
+
C extends MiddlewareClient,
|
|
22
|
+
TEntryPointVersion extends GetEntryPointFromAccount<TAccount> = GetEntryPointFromAccount<TAccount>
|
|
23
|
+
>(
|
|
24
|
+
struct: Deferrable<UserOperationStruct<TEntryPointVersion>>,
|
|
25
|
+
args: {
|
|
26
|
+
overrides?: UserOperationOverrides<TEntryPointVersion>;
|
|
27
|
+
context?: TContext;
|
|
28
|
+
feeOptions?: UserOperationFeeOptions;
|
|
29
|
+
account: TAccount;
|
|
30
|
+
client: C;
|
|
31
|
+
}
|
|
32
|
+
) => Promise<Deferrable<UserOperationStruct<TEntryPointVersion>>>;
|
|
33
|
+
// [!endregion ClientMiddlewareFn]
|
|
34
|
+
|
|
35
|
+
// [!region ClientMiddleware]
|
|
36
|
+
export type ClientMiddleware<
|
|
37
|
+
TContext extends UserOperationContext | undefined =
|
|
38
|
+
| UserOperationContext
|
|
39
|
+
| undefined
|
|
40
|
+
> = {
|
|
41
|
+
dummyPaymasterAndData: ClientMiddlewareFn<TContext>;
|
|
42
|
+
feeEstimator: ClientMiddlewareFn<TContext>;
|
|
43
|
+
gasEstimator: ClientMiddlewareFn<TContext>;
|
|
44
|
+
customMiddleware: ClientMiddlewareFn<TContext>;
|
|
45
|
+
paymasterAndData: ClientMiddlewareFn<TContext>;
|
|
46
|
+
userOperationSimulator: ClientMiddlewareFn<TContext>;
|
|
47
|
+
signUserOperation: ClientMiddlewareFn<TContext>;
|
|
48
|
+
};
|
|
49
|
+
// [!endregion ClientMiddleware]
|