@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,74 @@
|
|
|
1
|
+
import {
|
|
2
|
+
encodeAbiParameters,
|
|
3
|
+
hexToBigInt,
|
|
4
|
+
keccak256,
|
|
5
|
+
type Address,
|
|
6
|
+
type Chain,
|
|
7
|
+
type Hash,
|
|
8
|
+
type Hex,
|
|
9
|
+
} from "viem";
|
|
10
|
+
import { EntryPointAbi_v6 } from "../abis/EntryPointAbi_v6.js";
|
|
11
|
+
import type { UserOperationRequest } from "../types.js";
|
|
12
|
+
import type { SupportedEntryPoint } from "./types.js";
|
|
13
|
+
|
|
14
|
+
const packUserOperation = (request: UserOperationRequest<"0.6.0">): Hex => {
|
|
15
|
+
const hashedInitCode = keccak256(request.initCode);
|
|
16
|
+
const hashedCallData = keccak256(request.callData);
|
|
17
|
+
const hashedPaymasterAndData = keccak256(request.paymasterAndData);
|
|
18
|
+
|
|
19
|
+
return encodeAbiParameters(
|
|
20
|
+
[
|
|
21
|
+
{ type: "address" },
|
|
22
|
+
{ type: "uint256" },
|
|
23
|
+
{ type: "bytes32" },
|
|
24
|
+
{ type: "bytes32" },
|
|
25
|
+
{ type: "uint256" },
|
|
26
|
+
{ type: "uint256" },
|
|
27
|
+
{ type: "uint256" },
|
|
28
|
+
{ type: "uint256" },
|
|
29
|
+
{ type: "uint256" },
|
|
30
|
+
{ type: "bytes32" },
|
|
31
|
+
],
|
|
32
|
+
[
|
|
33
|
+
request.sender as Address,
|
|
34
|
+
hexToBigInt(request.nonce),
|
|
35
|
+
hashedInitCode,
|
|
36
|
+
hashedCallData,
|
|
37
|
+
hexToBigInt(request.callGasLimit),
|
|
38
|
+
hexToBigInt(request.verificationGasLimit),
|
|
39
|
+
hexToBigInt(request.preVerificationGas),
|
|
40
|
+
hexToBigInt(request.maxFeePerGas),
|
|
41
|
+
hexToBigInt(request.maxPriorityFeePerGas),
|
|
42
|
+
hashedPaymasterAndData,
|
|
43
|
+
]
|
|
44
|
+
);
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
export default {
|
|
48
|
+
version: "0.6.0",
|
|
49
|
+
|
|
50
|
+
address: {
|
|
51
|
+
default: "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789",
|
|
52
|
+
},
|
|
53
|
+
|
|
54
|
+
abi: EntryPointAbi_v6,
|
|
55
|
+
|
|
56
|
+
getUserOperationHash: (
|
|
57
|
+
request: UserOperationRequest<"0.6.0">,
|
|
58
|
+
entryPointAddress: Address,
|
|
59
|
+
chainId: number
|
|
60
|
+
): Hash => {
|
|
61
|
+
const encoded = encodeAbiParameters(
|
|
62
|
+
[{ type: "bytes32" }, { type: "address" }, { type: "uint256" }],
|
|
63
|
+
[
|
|
64
|
+
keccak256(packUserOperation(request)),
|
|
65
|
+
entryPointAddress,
|
|
66
|
+
BigInt(chainId),
|
|
67
|
+
]
|
|
68
|
+
);
|
|
69
|
+
|
|
70
|
+
return keccak256(encoded);
|
|
71
|
+
},
|
|
72
|
+
|
|
73
|
+
packUserOperation,
|
|
74
|
+
} satisfies SupportedEntryPoint<"0.6.0", Chain, typeof EntryPointAbi_v6>;
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
import {
|
|
2
|
+
concat,
|
|
3
|
+
encodeAbiParameters,
|
|
4
|
+
hexToBigInt,
|
|
5
|
+
isAddress,
|
|
6
|
+
keccak256,
|
|
7
|
+
pad,
|
|
8
|
+
type Address,
|
|
9
|
+
type Chain,
|
|
10
|
+
type Hash,
|
|
11
|
+
type Hex,
|
|
12
|
+
} from "viem";
|
|
13
|
+
import { EntryPointAbi_v7 } from "../abis/EntryPointAbi_v7.js";
|
|
14
|
+
import type {
|
|
15
|
+
UserOperationRequest,
|
|
16
|
+
UserOperationRequest_v7,
|
|
17
|
+
} from "../types.js";
|
|
18
|
+
import type { SupportedEntryPoint } from "./types.js";
|
|
19
|
+
|
|
20
|
+
const packUserOperation = (request: UserOperationRequest<"0.7.0">): Hex => {
|
|
21
|
+
const initCode =
|
|
22
|
+
request.factory && request.factoryData
|
|
23
|
+
? concat([request.factory, request.factoryData])
|
|
24
|
+
: "0x";
|
|
25
|
+
const accountGasLimits = packAccountGasLimits(
|
|
26
|
+
(({ verificationGasLimit, callGasLimit }) => ({
|
|
27
|
+
verificationGasLimit,
|
|
28
|
+
callGasLimit,
|
|
29
|
+
}))(request)
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
const gasFees = packAccountGasLimits(
|
|
33
|
+
(({ maxPriorityFeePerGas, maxFeePerGas }) => ({
|
|
34
|
+
maxPriorityFeePerGas,
|
|
35
|
+
maxFeePerGas,
|
|
36
|
+
}))(request)
|
|
37
|
+
);
|
|
38
|
+
|
|
39
|
+
const paymasterAndData =
|
|
40
|
+
request.paymaster && isAddress(request.paymaster)
|
|
41
|
+
? packPaymasterData(
|
|
42
|
+
(({
|
|
43
|
+
paymaster,
|
|
44
|
+
paymasterVerificationGasLimit,
|
|
45
|
+
paymasterPostOpGasLimit,
|
|
46
|
+
paymasterData,
|
|
47
|
+
}) => ({
|
|
48
|
+
paymaster,
|
|
49
|
+
paymasterVerificationGasLimit,
|
|
50
|
+
paymasterPostOpGasLimit,
|
|
51
|
+
paymasterData,
|
|
52
|
+
}))(request)
|
|
53
|
+
)
|
|
54
|
+
: "0x";
|
|
55
|
+
|
|
56
|
+
return encodeAbiParameters(
|
|
57
|
+
[
|
|
58
|
+
{ type: "address" },
|
|
59
|
+
{ type: "uint256" },
|
|
60
|
+
{ type: "bytes32" },
|
|
61
|
+
{ type: "bytes32" },
|
|
62
|
+
{ type: "bytes32" },
|
|
63
|
+
{ type: "uint256" },
|
|
64
|
+
{ type: "bytes32" },
|
|
65
|
+
{ type: "bytes32" },
|
|
66
|
+
],
|
|
67
|
+
[
|
|
68
|
+
request.sender as Address,
|
|
69
|
+
hexToBigInt(request.nonce),
|
|
70
|
+
keccak256(initCode),
|
|
71
|
+
keccak256(request.callData),
|
|
72
|
+
accountGasLimits,
|
|
73
|
+
hexToBigInt(request.preVerificationGas),
|
|
74
|
+
gasFees,
|
|
75
|
+
keccak256(paymasterAndData),
|
|
76
|
+
]
|
|
77
|
+
);
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
export default {
|
|
81
|
+
version: "0.7.0",
|
|
82
|
+
|
|
83
|
+
address: {
|
|
84
|
+
default: "0x0000000071727De22E5E9d8BAf0edAc6f37da032",
|
|
85
|
+
},
|
|
86
|
+
|
|
87
|
+
abi: EntryPointAbi_v7,
|
|
88
|
+
|
|
89
|
+
getUserOperationHash: (
|
|
90
|
+
request: UserOperationRequest<"0.7.0">,
|
|
91
|
+
entryPointAddress: Address,
|
|
92
|
+
chainId: number
|
|
93
|
+
): Hash => {
|
|
94
|
+
const encoded = encodeAbiParameters(
|
|
95
|
+
[{ type: "bytes32" }, { type: "address" }, { type: "uint256" }],
|
|
96
|
+
[
|
|
97
|
+
keccak256(packUserOperation(request)),
|
|
98
|
+
entryPointAddress,
|
|
99
|
+
BigInt(chainId),
|
|
100
|
+
]
|
|
101
|
+
);
|
|
102
|
+
|
|
103
|
+
return keccak256(encoded);
|
|
104
|
+
},
|
|
105
|
+
|
|
106
|
+
packUserOperation,
|
|
107
|
+
} satisfies SupportedEntryPoint<"0.7.0", Chain, typeof EntryPointAbi_v7>;
|
|
108
|
+
|
|
109
|
+
export function packAccountGasLimits(
|
|
110
|
+
data:
|
|
111
|
+
| Pick<UserOperationRequest_v7, "verificationGasLimit" | "callGasLimit">
|
|
112
|
+
| Pick<UserOperationRequest_v7, "maxPriorityFeePerGas" | "maxFeePerGas">
|
|
113
|
+
): Hex {
|
|
114
|
+
return concat(Object.values(data).map((v) => pad(v, { size: 16 })));
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
export function packPaymasterData({
|
|
118
|
+
paymaster,
|
|
119
|
+
paymasterVerificationGasLimit,
|
|
120
|
+
paymasterPostOpGasLimit,
|
|
121
|
+
paymasterData,
|
|
122
|
+
}: Pick<
|
|
123
|
+
UserOperationRequest_v7,
|
|
124
|
+
| "paymaster"
|
|
125
|
+
| "paymasterVerificationGasLimit"
|
|
126
|
+
| "paymasterPostOpGasLimit"
|
|
127
|
+
| "paymasterData"
|
|
128
|
+
>): Hex {
|
|
129
|
+
if (
|
|
130
|
+
!paymaster ||
|
|
131
|
+
!paymasterVerificationGasLimit ||
|
|
132
|
+
!paymasterPostOpGasLimit ||
|
|
133
|
+
!paymasterData
|
|
134
|
+
) {
|
|
135
|
+
return "0x";
|
|
136
|
+
}
|
|
137
|
+
return concat([
|
|
138
|
+
paymaster,
|
|
139
|
+
pad(paymasterVerificationGasLimit, { size: 16 }),
|
|
140
|
+
pad(paymasterPostOpGasLimit, { size: 16 }),
|
|
141
|
+
paymasterData,
|
|
142
|
+
]);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
export function unpackAccountGasLimits(accountGasLimits: string): {
|
|
146
|
+
verificationGasLimit: number;
|
|
147
|
+
callGasLimit: number;
|
|
148
|
+
} {
|
|
149
|
+
return {
|
|
150
|
+
verificationGasLimit: parseInt(accountGasLimits.slice(2, 34), 16),
|
|
151
|
+
callGasLimit: parseInt(accountGasLimits.slice(34), 16),
|
|
152
|
+
};
|
|
153
|
+
}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { type Chain } from "viem";
|
|
2
|
+
import { EntryPointNotFoundError } from "../errors/entrypoint.js";
|
|
3
|
+
import EntryPoint_v6 from "./0.6.js";
|
|
4
|
+
import EntryPoint_v7 from "./0.7.js";
|
|
5
|
+
import type {
|
|
6
|
+
DefaultEntryPointVersion,
|
|
7
|
+
EntryPointDefRegistry,
|
|
8
|
+
EntryPointRegistry,
|
|
9
|
+
EntryPointVersion,
|
|
10
|
+
GetEntryPointOptions,
|
|
11
|
+
} from "./types.js";
|
|
12
|
+
|
|
13
|
+
export const defaultEntryPointVersion: DefaultEntryPointVersion = "0.6.0";
|
|
14
|
+
|
|
15
|
+
export const entryPointRegistry: EntryPointRegistry = {
|
|
16
|
+
"0.6.0": EntryPoint_v6,
|
|
17
|
+
"0.7.0": EntryPoint_v7,
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export const isEntryPointVersion = (
|
|
21
|
+
value: any
|
|
22
|
+
): value is keyof EntryPointRegistry => {
|
|
23
|
+
return Object.keys(entryPointRegistry).includes(value);
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
export function getEntryPoint<
|
|
27
|
+
TEntryPointVersion extends EntryPointVersion = DefaultEntryPointVersion,
|
|
28
|
+
TChain extends Chain = Chain
|
|
29
|
+
>(
|
|
30
|
+
chain: TChain,
|
|
31
|
+
options: GetEntryPointOptions<TEntryPointVersion>
|
|
32
|
+
): EntryPointDefRegistry<TChain>[TEntryPointVersion];
|
|
33
|
+
|
|
34
|
+
export function getEntryPoint<
|
|
35
|
+
TEntryPointVersion extends DefaultEntryPointVersion = DefaultEntryPointVersion,
|
|
36
|
+
TChain extends Chain = Chain
|
|
37
|
+
>(
|
|
38
|
+
chain: TChain,
|
|
39
|
+
options?: GetEntryPointOptions<TEntryPointVersion>
|
|
40
|
+
): EntryPointDefRegistry<TChain>[TEntryPointVersion];
|
|
41
|
+
|
|
42
|
+
export function getEntryPoint<TChain extends Chain = Chain>(
|
|
43
|
+
chain: TChain,
|
|
44
|
+
options?: GetEntryPointOptions<DefaultEntryPointVersion>
|
|
45
|
+
): EntryPointDefRegistry<TChain>[DefaultEntryPointVersion];
|
|
46
|
+
|
|
47
|
+
export function getEntryPoint<
|
|
48
|
+
TEntryPointVersion extends EntryPointVersion,
|
|
49
|
+
TChain extends Chain = Chain
|
|
50
|
+
>(
|
|
51
|
+
chain: TChain,
|
|
52
|
+
options: GetEntryPointOptions<TEntryPointVersion>
|
|
53
|
+
): EntryPointDefRegistry<TChain>[EntryPointVersion] {
|
|
54
|
+
const { version = defaultEntryPointVersion, addressOverride } = options ?? {
|
|
55
|
+
version: defaultEntryPointVersion,
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
const entryPoint = entryPointRegistry[version ?? defaultEntryPointVersion];
|
|
59
|
+
const address =
|
|
60
|
+
addressOverride ??
|
|
61
|
+
entryPoint.address[chain.id] ??
|
|
62
|
+
entryPoint.address.default;
|
|
63
|
+
if (!address) {
|
|
64
|
+
throw new EntryPointNotFoundError(chain, version);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
if (entryPoint.version === "0.6.0") {
|
|
68
|
+
return {
|
|
69
|
+
version: entryPoint.version,
|
|
70
|
+
address,
|
|
71
|
+
chain,
|
|
72
|
+
abi: entryPoint.abi,
|
|
73
|
+
getUserOperationHash: (r) =>
|
|
74
|
+
entryPoint.getUserOperationHash(r, address, chain.id),
|
|
75
|
+
packUserOperation: entryPoint.packUserOperation,
|
|
76
|
+
};
|
|
77
|
+
} else if (entryPoint.version === "0.7.0") {
|
|
78
|
+
return {
|
|
79
|
+
version: entryPoint.version,
|
|
80
|
+
address,
|
|
81
|
+
chain,
|
|
82
|
+
abi: entryPoint.abi,
|
|
83
|
+
getUserOperationHash: (r) =>
|
|
84
|
+
entryPoint.getUserOperationHash(r, address, chain.id),
|
|
85
|
+
packUserOperation: entryPoint.packUserOperation,
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
throw new EntryPointNotFoundError(chain, version);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
// // =================================================================================
|
|
93
|
+
// // TODO: Add tests for the following cases
|
|
94
|
+
|
|
95
|
+
// const chain: Chain = mainnet;
|
|
96
|
+
|
|
97
|
+
// // 1. left and right hand side version type should match, as well as the param
|
|
98
|
+
|
|
99
|
+
// // === Error ===
|
|
100
|
+
// const ep1_a: EntryPointDef<"0.6.0"> = getEntryPoint(chain, {
|
|
101
|
+
// version: "0.7.0",
|
|
102
|
+
// }); // error
|
|
103
|
+
// const ep1_b: EntryPointDef<"0.7.0"> = getEntryPoint(chain); // error
|
|
104
|
+
// const ep1_c: EntryPointDef<"0.6.0"> = getEntryPoint(chain, {
|
|
105
|
+
// version: "0.7.0",
|
|
106
|
+
// }); // error
|
|
107
|
+
// const ep1_d: EntryPointDef<"0.6.0"> = getEntryPoint<"0.6.0">(chain, {
|
|
108
|
+
// version: "0.7.0",
|
|
109
|
+
// }); // error
|
|
110
|
+
|
|
111
|
+
// // === Valid ===
|
|
112
|
+
// const ep1a: EntryPointDef<"0.6.0"> = getEntryPoint(chain);
|
|
113
|
+
// const ep1b: EntryPointDef<"0.6.0"> = getEntryPoint(chain, { version: "0.6.0" });
|
|
114
|
+
// const ep1c: EntryPointDef<"0.7.0"> = getEntryPoint(chain, { version: "0.7.0" });
|
|
115
|
+
// const ep1d: EntryPointDef<"0.6.0"> = getEntryPoint(chain, {
|
|
116
|
+
// addressOverride: "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789",
|
|
117
|
+
// });
|
|
118
|
+
// const ep1e: EntryPointDef<"0.6.0"> = getEntryPoint(chain, {
|
|
119
|
+
// addressOverride: "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789",
|
|
120
|
+
// version: "0.6.0",
|
|
121
|
+
// });
|
|
122
|
+
// const ep1f: EntryPointDef<"0.7.0"> = getEntryPoint(chain, {
|
|
123
|
+
// addressOverride: "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789",
|
|
124
|
+
// version: "0.7.0",
|
|
125
|
+
// });
|
|
126
|
+
|
|
127
|
+
// // 2. If non-default type is specified, version option param of the type is required
|
|
128
|
+
|
|
129
|
+
// // === Error ===
|
|
130
|
+
// const ep2_a: EntryPointDef<"0.7.0"> = getEntryPoint<"0.7.0">(chain); // error
|
|
131
|
+
// const ep2_b: EntryPointDef<"0.7.0"> = getEntryPoint<"0.7.0">(chain, {
|
|
132
|
+
// addressOverride: "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789",
|
|
133
|
+
// });
|
|
134
|
+
|
|
135
|
+
// // === Valid ===
|
|
136
|
+
// const ep2a: EntryPointDef<"0.7.0"> = getEntryPoint<"0.7.0">(chain, {
|
|
137
|
+
// version: "0.7.0",
|
|
138
|
+
// addressOverride: "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789",
|
|
139
|
+
// });
|
|
140
|
+
// const ep2b: EntryPointDef<"0.6.0"> = getEntryPoint<"0.6.0">(chain, {
|
|
141
|
+
// version: "0.6.0",
|
|
142
|
+
// });
|
|
143
|
+
// const ep2c: EntryPointDef<"0.6.0"> = getEntryPoint<"0.6.0">(chain);
|
|
144
|
+
// const ep2d: EntryPointDef<"0.6.0"> = getEntryPoint<"0.6.0">(chain, {
|
|
145
|
+
// addressOverride: "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789",
|
|
146
|
+
// });
|
|
147
|
+
// const ep2e: EntryPointDef<"0.7.0"> = getEntryPoint<"0.7.0">(chain, {
|
|
148
|
+
// version: "0.7.0",
|
|
149
|
+
// addressOverride: "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789",
|
|
150
|
+
// });
|
|
151
|
+
|
|
152
|
+
// // =================================================================================
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
Abi,
|
|
3
|
+
Account,
|
|
4
|
+
Address,
|
|
5
|
+
Chain,
|
|
6
|
+
GetContractParameters,
|
|
7
|
+
Hash,
|
|
8
|
+
Hex,
|
|
9
|
+
Transport,
|
|
10
|
+
} from "viem";
|
|
11
|
+
import type { EntryPointAbi_v6 } from "../abis/EntryPointAbi_v6";
|
|
12
|
+
import type { EntryPointAbi_v7 } from "../abis/EntryPointAbi_v7";
|
|
13
|
+
import type { UserOperationRequest } from "../types";
|
|
14
|
+
import type { EQ, IsOneOf, OneOf } from "../utils";
|
|
15
|
+
|
|
16
|
+
export interface EntryPointRegistryBase<T> {
|
|
17
|
+
"0.6.0": T;
|
|
18
|
+
"0.7.0": T;
|
|
19
|
+
}
|
|
20
|
+
export type EntryPointVersion = keyof EntryPointRegistryBase<unknown>;
|
|
21
|
+
export type DefaultEntryPointVersion = OneOf<"0.6.0", EntryPointVersion>;
|
|
22
|
+
|
|
23
|
+
export type SupportedEntryPoint<
|
|
24
|
+
TEntryPointVersion extends EntryPointVersion = EntryPointVersion,
|
|
25
|
+
TChain extends Chain = Chain,
|
|
26
|
+
TAbi extends Abi | readonly unknown[] = Abi
|
|
27
|
+
> = {
|
|
28
|
+
version: TEntryPointVersion;
|
|
29
|
+
address: Record<TChain["id"] | "default", Address>;
|
|
30
|
+
abi: GetContractParameters<Transport, TChain, Account, TAbi>["abi"];
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Generates a hash for a UserOperation valid from entry point version 0.6 onwards
|
|
34
|
+
*
|
|
35
|
+
* @param request - the UserOperation to get the hash for
|
|
36
|
+
* @param entryPointAddress - the entry point address that will be used to execute the UserOperation
|
|
37
|
+
* @param chainId - the chain on which this UserOperation will be executed
|
|
38
|
+
* @returns the hash of the UserOperation
|
|
39
|
+
*/
|
|
40
|
+
getUserOperationHash: (
|
|
41
|
+
request: UserOperationRequest<TEntryPointVersion>,
|
|
42
|
+
entryPointAddress: Address,
|
|
43
|
+
chainId: number
|
|
44
|
+
) => Hash;
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Pack the user operation data into bytes for hashing for entry point version 0.6 onwards
|
|
48
|
+
* Reference:
|
|
49
|
+
* v6: https://github.com/eth-infinitism/account-abstraction/blob/releases/v0.6/test/UserOp.ts#L16-L61
|
|
50
|
+
* v7: https://github.com/eth-infinitism/account-abstraction/blob/releases/v0.7/test/UserOp.ts#L28-L67
|
|
51
|
+
*
|
|
52
|
+
* @param request - the UserOperation to get the hash for
|
|
53
|
+
* @returns the hash of the UserOperation
|
|
54
|
+
*/
|
|
55
|
+
packUserOperation: (
|
|
56
|
+
userOperation: UserOperationRequest<TEntryPointVersion>
|
|
57
|
+
) => Hex;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export interface EntryPointRegistry<TChain extends Chain = Chain>
|
|
61
|
+
extends EntryPointRegistryBase<
|
|
62
|
+
SupportedEntryPoint<EntryPointVersion, TChain, Abi>
|
|
63
|
+
> {
|
|
64
|
+
"0.6.0": SupportedEntryPoint<"0.6.0", TChain, typeof EntryPointAbi_v6>;
|
|
65
|
+
"0.7.0": SupportedEntryPoint<"0.7.0", TChain, typeof EntryPointAbi_v7>;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// [!region EntryPointDef]
|
|
69
|
+
export type EntryPointDef<
|
|
70
|
+
TEntryPointVersion extends EntryPointVersion = EntryPointVersion,
|
|
71
|
+
TChain extends Chain = Chain,
|
|
72
|
+
TAbi extends Abi | readonly unknown[] = Abi
|
|
73
|
+
> = {
|
|
74
|
+
version: TEntryPointVersion;
|
|
75
|
+
address: Address;
|
|
76
|
+
chain: TChain;
|
|
77
|
+
abi: GetContractParameters<Transport, TChain, Account, TAbi>["abi"];
|
|
78
|
+
getUserOperationHash: (
|
|
79
|
+
request: UserOperationRequest<TEntryPointVersion>
|
|
80
|
+
) => Hex;
|
|
81
|
+
packUserOperation: (
|
|
82
|
+
userOperation: UserOperationRequest<TEntryPointVersion>
|
|
83
|
+
) => Hex;
|
|
84
|
+
};
|
|
85
|
+
// [!endregion EntryPointDef]
|
|
86
|
+
|
|
87
|
+
export interface EntryPointDefRegistry<TChain extends Chain = Chain>
|
|
88
|
+
extends EntryPointRegistryBase<
|
|
89
|
+
EntryPointDef<EntryPointVersion, TChain, Abi>
|
|
90
|
+
> {
|
|
91
|
+
"0.6.0": EntryPointDef<"0.6.0", TChain, typeof EntryPointAbi_v6>;
|
|
92
|
+
"0.7.0": EntryPointDef<"0.7.0", TChain, typeof EntryPointAbi_v7>;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
export type GetEntryPointOptions<
|
|
96
|
+
TEntryPointVersion extends EntryPointVersion = DefaultEntryPointVersion
|
|
97
|
+
> = EQ<TEntryPointVersion, DefaultEntryPointVersion> extends true
|
|
98
|
+
?
|
|
99
|
+
| {
|
|
100
|
+
addressOverride?: Address;
|
|
101
|
+
version?: OneOf<TEntryPointVersion, EntryPointVersion>;
|
|
102
|
+
}
|
|
103
|
+
| undefined
|
|
104
|
+
: {
|
|
105
|
+
addressOverride?: Address;
|
|
106
|
+
version: OneOf<TEntryPointVersion, EntryPointVersion>;
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
export type EntryPointParameter<
|
|
110
|
+
TEntryPointVersion extends EntryPointVersion,
|
|
111
|
+
TChain extends Chain = Chain
|
|
112
|
+
> = EQ<TEntryPointVersion, DefaultEntryPointVersion> extends true
|
|
113
|
+
? {
|
|
114
|
+
entryPoint?: EntryPointDef<TEntryPointVersion, TChain>;
|
|
115
|
+
}
|
|
116
|
+
: {
|
|
117
|
+
entryPoint: IsOneOf<TEntryPointVersion, EntryPointVersion> extends true
|
|
118
|
+
? EntryPointDef<TEntryPointVersion, TChain>
|
|
119
|
+
: never;
|
|
120
|
+
};
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import type { Chain } from "viem";
|
|
2
|
+
import type { EntryPointVersion } from "../entrypoint/types.js";
|
|
3
|
+
import { BaseError } from "./base.js";
|
|
4
|
+
|
|
5
|
+
export class AccountNotFoundError extends BaseError {
|
|
6
|
+
override name = "AccountNotFoundError";
|
|
7
|
+
|
|
8
|
+
// TODO: extend this further using docs path as well
|
|
9
|
+
constructor() {
|
|
10
|
+
super("Could not find an Account to execute with this Action.");
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export class DefaultFactoryNotDefinedError extends BaseError {
|
|
15
|
+
override name = "DefaultFactoryNotDefinedError";
|
|
16
|
+
constructor(accountType: string, chain: Chain, version: EntryPointVersion) {
|
|
17
|
+
super(
|
|
18
|
+
[
|
|
19
|
+
`No default factory for ${accountType} found on chain ${chain.name} for entrypoint version ${version}`,
|
|
20
|
+
"Supply an override via the `factoryAddress` parameter when creating an account",
|
|
21
|
+
].join("\n")
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export class GetCounterFactualAddressError extends BaseError {
|
|
27
|
+
override name = "GetCounterFactualAddressError";
|
|
28
|
+
constructor() {
|
|
29
|
+
super("getCounterFactualAddress failed");
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export class UpgradesNotSupportedError extends BaseError {
|
|
34
|
+
override name = "UpgradesNotSupported";
|
|
35
|
+
constructor(accountType: string) {
|
|
36
|
+
super(`Upgrades are not supported by ${accountType}`);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export class SignTransactionNotSupportedError extends BaseError {
|
|
41
|
+
override name = "SignTransactionNotSupported";
|
|
42
|
+
constructor() {
|
|
43
|
+
super(`SignTransaction is not supported by smart contracts`);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export class FailedToGetStorageSlotError extends BaseError {
|
|
48
|
+
override name = "FailedToGetStorageSlotError";
|
|
49
|
+
constructor(slot: string, slotDescriptor: string) {
|
|
50
|
+
super(`Failed to get storage slot ${slot} (${slotDescriptor})`);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export class BatchExecutionNotSupportedError extends BaseError {
|
|
55
|
+
override name = "BatchExecutionNotSupportedError";
|
|
56
|
+
constructor(accountType: string) {
|
|
57
|
+
super(`Batch execution is not supported by ${accountType}`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export class AccountRequiresOwnerError extends BaseError {
|
|
62
|
+
override name = "AccountRequiresOwnerError";
|
|
63
|
+
constructor(accountType: string) {
|
|
64
|
+
super(`Account of type ${accountType} requires an owner to execute`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export class UpgradeToAndCallNotSupportedError extends BaseError {
|
|
69
|
+
override name = "UpgradeToAndCallNotSupportedError";
|
|
70
|
+
constructor(accountType: string) {
|
|
71
|
+
super(`UpgradeToAndCall is not supported by ${accountType}`);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export class IncorrectAccountType extends BaseError {
|
|
76
|
+
override name = "IncorrectAccountTypeError";
|
|
77
|
+
constructor(expected: string, actual: string) {
|
|
78
|
+
super(`Expected account type ${expected}, got ${actual}`);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export class SmartAccountWithSignerRequiredError extends BaseError {
|
|
83
|
+
override name = "SmartAccountWithSignerRequiredError";
|
|
84
|
+
constructor() {
|
|
85
|
+
super("Smart account requires a signer");
|
|
86
|
+
}
|
|
87
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { BaseError as ViemBaseError } from "viem";
|
|
2
|
+
import { VERSION } from "../version.js";
|
|
3
|
+
|
|
4
|
+
type BaseErrorParameters = {
|
|
5
|
+
docsPath?: string;
|
|
6
|
+
docsSlug?: string;
|
|
7
|
+
metaMessages?: string[];
|
|
8
|
+
} & (
|
|
9
|
+
| {
|
|
10
|
+
cause?: never;
|
|
11
|
+
details?: string;
|
|
12
|
+
}
|
|
13
|
+
| {
|
|
14
|
+
cause: BaseError | Error;
|
|
15
|
+
details?: never;
|
|
16
|
+
}
|
|
17
|
+
);
|
|
18
|
+
|
|
19
|
+
// This is based on on viem's BaseError type (obviously from the import and extend)
|
|
20
|
+
// we want the errors here to point to our docs if we supply a docsPath though
|
|
21
|
+
export class BaseError extends ViemBaseError {
|
|
22
|
+
override name = "AASDKError";
|
|
23
|
+
override version = VERSION;
|
|
24
|
+
|
|
25
|
+
constructor(shortMessage: string, args: BaseErrorParameters = {}) {
|
|
26
|
+
super(shortMessage, args);
|
|
27
|
+
|
|
28
|
+
const docsPath =
|
|
29
|
+
args.cause instanceof BaseError
|
|
30
|
+
? args.cause.docsPath || args.docsPath
|
|
31
|
+
: args.docsPath;
|
|
32
|
+
|
|
33
|
+
this.message = [
|
|
34
|
+
shortMessage || "An error occurred.",
|
|
35
|
+
"",
|
|
36
|
+
...(args.metaMessages ? [...args.metaMessages, ""] : []),
|
|
37
|
+
...(docsPath
|
|
38
|
+
? [
|
|
39
|
+
`Docs: https://accountkit.alchemy.com${docsPath}${
|
|
40
|
+
args.docsSlug ? `#${args.docsSlug}` : ""
|
|
41
|
+
}`,
|
|
42
|
+
]
|
|
43
|
+
: []),
|
|
44
|
+
...(this.details ? [`Details: ${this.details}`] : []),
|
|
45
|
+
`Version: ${this.version}`,
|
|
46
|
+
].join("\n");
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { Client } from "viem";
|
|
2
|
+
import { BaseError } from "./base.js";
|
|
3
|
+
|
|
4
|
+
export class IncompatibleClientError extends BaseError {
|
|
5
|
+
override name = "IncompatibleClientError";
|
|
6
|
+
constructor(expectedClient: string, method: string, client: Client) {
|
|
7
|
+
super(
|
|
8
|
+
[
|
|
9
|
+
`Client of type (${client.type}) is not a ${expectedClient}.`,
|
|
10
|
+
`Create one with \`createSmartAccountClient\` first before using \`${method}\``,
|
|
11
|
+
].join("\n")
|
|
12
|
+
);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export class InvalidRpcUrlError extends BaseError {
|
|
17
|
+
override name = "InvalidRpcUrlError";
|
|
18
|
+
constructor(rpcUrl?: string) {
|
|
19
|
+
super(`Invalid RPC URL ${rpcUrl}`);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export class ChainNotFoundError extends BaseError {
|
|
24
|
+
override name = "ChainNotFoundError";
|
|
25
|
+
constructor() {
|
|
26
|
+
super("No chain supplied to the client");
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { Chain } from "viem";
|
|
2
|
+
import { BaseError } from "./base.js";
|
|
3
|
+
|
|
4
|
+
export class EntryPointNotFoundError extends BaseError {
|
|
5
|
+
override name = "EntryPointNotFoundError";
|
|
6
|
+
|
|
7
|
+
constructor(chain: Chain, entryPointVersion: any) {
|
|
8
|
+
super(
|
|
9
|
+
[
|
|
10
|
+
`No default entry point v${entryPointVersion} exists for ${chain.name}.`,
|
|
11
|
+
`Supply an override.`,
|
|
12
|
+
].join("\n")
|
|
13
|
+
);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export class InvalidEntryPointError extends BaseError {
|
|
18
|
+
override name = "InvalidEntryPointError";
|
|
19
|
+
|
|
20
|
+
constructor(chain: Chain, entryPointVersion: any) {
|
|
21
|
+
super(
|
|
22
|
+
`Invalid entry point: unexpected version ${entryPointVersion} for ${chain.name}.`
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
}
|