permissionless 0.3.3 → 0.3.5
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/CHANGELOG.md +12 -0
- package/_cjs/accounts/biconomy/toBiconomySmartAccount.js.map +1 -1
- package/_cjs/accounts/etherspot/constants.js +1 -1
- package/_cjs/accounts/etherspot/constants.js.map +1 -1
- package/_cjs/accounts/etherspot/toEtherspotSmartAccount.js.map +1 -1
- package/_cjs/accounts/etherspot/utils/getInitMSAData.js.map +1 -1
- package/_cjs/accounts/etherspot/utils/getNonceKey.js +3 -3
- package/_cjs/accounts/etherspot/utils/getNonceKey.js.map +1 -1
- package/_cjs/accounts/etherspot/utils/wrapMessageHash.js.map +1 -1
- package/_cjs/accounts/index.js +12 -12
- package/_cjs/accounts/index.js.map +1 -1
- package/_cjs/accounts/kernel/constants.js.map +1 -1
- package/_cjs/accounts/kernel/to7702KernelSmartAccount.js.map +1 -1
- package/_cjs/accounts/kernel/toEcdsaKernelSmartAccount.js.map +1 -1
- package/_cjs/accounts/kernel/toKernelSmartAccount.js.map +1 -1
- package/_cjs/accounts/kernel/utils/decodeCallData.js.map +1 -1
- package/_cjs/accounts/kernel/utils/encodeCallData.js.map +1 -1
- package/_cjs/accounts/kernel/utils/getNonceKey.js +3 -3
- package/_cjs/accounts/kernel/utils/getNonceKey.js.map +1 -1
- package/_cjs/accounts/kernel/utils/isKernelV2.js.map +1 -1
- package/_cjs/accounts/kernel/utils/isWebAuthnAccount.js.map +1 -1
- package/_cjs/accounts/kernel/utils/signMessage.js +1 -1
- package/_cjs/accounts/kernel/utils/signMessage.js.map +1 -1
- package/_cjs/accounts/kernel/utils/signTypedData.js.map +1 -1
- package/_cjs/accounts/kernel/utils/wrapMessageHash.js.map +1 -1
- package/_cjs/accounts/light/toLightSmartAccount.js.map +1 -1
- package/_cjs/accounts/nexus/toNexusSmartAccount.js.map +1 -1
- package/_cjs/accounts/safe/signUserOperation.js.map +1 -1
- package/_cjs/accounts/safe/toSafeSmartAccount.js +25 -5
- package/_cjs/accounts/safe/toSafeSmartAccount.js.map +1 -1
- package/_cjs/accounts/simple/to7702SimpleSmartAccount.js.map +1 -1
- package/_cjs/accounts/simple/toSimpleSmartAccount.js.map +1 -1
- package/_cjs/accounts/thirdweb/toThirdwebSmartAccount.js.map +1 -1
- package/_cjs/accounts/thirdweb/utils/decodeCallData.js.map +1 -1
- package/_cjs/accounts/thirdweb/utils/encodeCallData.js.map +1 -1
- package/_cjs/accounts/thirdweb/utils/getAccountAddress.js.map +1 -1
- package/_cjs/accounts/thirdweb/utils/getFactoryData.js.map +1 -1
- package/_cjs/accounts/thirdweb/utils/signMessage.js.map +1 -1
- package/_cjs/accounts/thirdweb/utils/signTypedData.js.map +1 -1
- package/_cjs/accounts/trust/toTrustSmartAccount.js.map +1 -1
- package/_cjs/accounts/trust/utils/decodeCallData.js.map +1 -1
- package/_cjs/accounts/trust/utils/encodeCallData.js.map +1 -1
- package/_cjs/accounts/trust/utils/getFactoryData.js.map +1 -1
- package/_cjs/actions/erc7579/accountId.js.map +1 -1
- package/_cjs/actions/erc7579/installModule.js.map +1 -1
- package/_cjs/actions/erc7579/installModules.js.map +1 -1
- package/_cjs/actions/erc7579/isModuleInstalled.js.map +1 -1
- package/_cjs/actions/erc7579/supportsExecutionMode.js.map +1 -1
- package/_cjs/actions/erc7579/supportsModule.js.map +1 -1
- package/_cjs/actions/erc7579/uninstallModule.js.map +1 -1
- package/_cjs/actions/erc7579/uninstallModules.js.map +1 -1
- package/_cjs/actions/erc7579.js.map +1 -1
- package/_cjs/actions/etherspot/getUserOperationGasPrice.js.map +1 -1
- package/_cjs/actions/etherspot.js +1 -1
- package/_cjs/actions/etherspot.js.map +1 -1
- package/_cjs/actions/index.js +2 -2
- package/_cjs/actions/index.js.map +1 -1
- package/_cjs/actions/passkeyServer/getCredentials.js.map +1 -1
- package/_cjs/actions/passkeyServer/startAuthentication.js.map +1 -1
- package/_cjs/actions/passkeyServer/startRegistration.js.map +1 -1
- package/_cjs/actions/passkeyServer/verifyAuthentication.js.map +1 -1
- package/_cjs/actions/passkeyServer/verifyRegistration.js.map +1 -1
- package/_cjs/actions/passkeyServer.js +3 -3
- package/_cjs/actions/passkeyServer.js.map +1 -1
- package/_cjs/actions/pimlico/estimateErc20PaymasterCost.js.map +1 -1
- package/_cjs/actions/pimlico/getTokenQuotes.js.map +1 -1
- package/_cjs/actions/pimlico/getUserOperationGasPrice.js.map +1 -1
- package/_cjs/actions/pimlico/getUserOperationStatus.js.map +1 -1
- package/_cjs/actions/pimlico/sendCompressedUserOperation.js.map +1 -1
- package/_cjs/actions/pimlico/sponsorUserOperation.js.map +1 -1
- package/_cjs/actions/pimlico/validateSponsorshipPolicies.js.map +1 -1
- package/_cjs/actions/pimlico.js +7 -7
- package/_cjs/actions/pimlico.js.map +1 -1
- package/_cjs/actions/public/getAccountNonce.js.map +1 -1
- package/_cjs/actions/public/getSenderAddress.js +1 -6
- package/_cjs/actions/public/getSenderAddress.js.map +1 -1
- package/_cjs/actions/smartAccount/getCallsStatus.js.map +1 -1
- package/_cjs/actions/smartAccount/sendCalls.js.map +1 -1
- package/_cjs/actions/smartAccount/sendTransaction.js.map +1 -1
- package/_cjs/actions/smartAccount/signMessage.js.map +1 -1
- package/_cjs/actions/smartAccount/signTypedData.js.map +1 -1
- package/_cjs/actions/smartAccount/writeContract.js +1 -1
- package/_cjs/actions/smartAccount/writeContract.js.map +1 -1
- package/_cjs/actions/smartAccount.js +4 -4
- package/_cjs/actions/smartAccount.js.map +1 -1
- package/_cjs/clients/createSmartAccountClient.js.map +1 -1
- package/_cjs/clients/decorators/passkeyServer.js.map +1 -1
- package/_cjs/clients/decorators/pimlico.js.map +1 -1
- package/_cjs/clients/decorators/smartAccount.js.map +1 -1
- package/_cjs/clients/passkeyServer.js.map +1 -1
- package/_cjs/clients/pimlico.js.map +1 -1
- package/_cjs/errors/index.js.map +1 -1
- package/_cjs/experimental/pimlico/index.js +1 -1
- package/_cjs/experimental/pimlico/index.js.map +1 -1
- package/_cjs/experimental/pimlico/utils/prepareUserOperationForErc20Paymaster.js +1 -1
- package/_cjs/experimental/pimlico/utils/prepareUserOperationForErc20Paymaster.js.map +1 -1
- package/_cjs/utils/decode7579Calls.js.map +1 -1
- package/_cjs/utils/decodeNonce.js.map +1 -1
- package/_cjs/utils/deepHexlify.js.map +1 -1
- package/_cjs/utils/encode7579Calls.js.map +1 -1
- package/_cjs/utils/encodeInstallModule.js.map +1 -1
- package/_cjs/utils/encodeNonce.js.map +1 -1
- package/_cjs/utils/encodeUninstallModule.js.map +1 -1
- package/_cjs/utils/erc20AllowanceOverride.js.map +1 -1
- package/_cjs/utils/erc20BalanceOverride.js.map +1 -1
- package/_cjs/utils/getAddressFromInitCodeOrPaymasterAndData.js.map +1 -1
- package/_cjs/utils/getEstimationCallData.js.map +1 -1
- package/_cjs/utils/getPackedUserOperation.js.map +1 -1
- package/_cjs/utils/getRequiredPrefund.js.map +1 -1
- package/_cjs/utils/index.js +15 -15
- package/_cjs/utils/index.js.map +1 -1
- package/_cjs/utils/isSmartAccountDeployed.js.map +1 -1
- package/_cjs/utils/ox.js +3 -1
- package/_cjs/utils/ox.js.map +1 -1
- package/_cjs/utils/toOwner.js.map +1 -1
- package/_esm/accounts/biconomy/toBiconomySmartAccount.js.map +1 -1
- package/_esm/accounts/etherspot/constants.js +2 -1
- package/_esm/accounts/etherspot/constants.js.map +1 -1
- package/_esm/accounts/etherspot/toEtherspotSmartAccount.js.map +1 -1
- package/_esm/accounts/etherspot/utils/getInitMSAData.js.map +1 -1
- package/_esm/accounts/etherspot/utils/getNonceKey.js.map +1 -1
- package/_esm/accounts/etherspot/utils/wrapMessageHash.js.map +1 -1
- package/_esm/accounts/kernel/constants.js +2 -1
- package/_esm/accounts/kernel/constants.js.map +1 -1
- package/_esm/accounts/kernel/to7702KernelSmartAccount.js.map +1 -1
- package/_esm/accounts/kernel/toEcdsaKernelSmartAccount.js.map +1 -1
- package/_esm/accounts/kernel/toKernelSmartAccount.js.map +1 -1
- package/_esm/accounts/kernel/utils/decodeCallData.js.map +1 -1
- package/_esm/accounts/kernel/utils/encodeCallData.js.map +1 -1
- package/_esm/accounts/kernel/utils/getNonceKey.js.map +1 -1
- package/_esm/accounts/kernel/utils/isKernelV2.js.map +1 -1
- package/_esm/accounts/kernel/utils/isWebAuthnAccount.js.map +1 -1
- package/_esm/accounts/kernel/utils/signMessage.js +1 -1
- package/_esm/accounts/kernel/utils/signMessage.js.map +1 -1
- package/_esm/accounts/kernel/utils/signTypedData.js.map +1 -1
- package/_esm/accounts/kernel/utils/wrapMessageHash.js.map +1 -1
- package/_esm/accounts/light/toLightSmartAccount.js.map +1 -1
- package/_esm/accounts/nexus/toNexusSmartAccount.js.map +1 -1
- package/_esm/accounts/safe/signUserOperation.js.map +1 -1
- package/_esm/accounts/safe/toSafeSmartAccount.js +24 -4
- package/_esm/accounts/safe/toSafeSmartAccount.js.map +1 -1
- package/_esm/accounts/simple/to7702SimpleSmartAccount.js.map +1 -1
- package/_esm/accounts/simple/toSimpleSmartAccount.js.map +1 -1
- package/_esm/accounts/thirdweb/toThirdwebSmartAccount.js.map +1 -1
- package/_esm/accounts/thirdweb/utils/decodeCallData.js.map +1 -1
- package/_esm/accounts/thirdweb/utils/encodeCallData.js.map +1 -1
- package/_esm/accounts/thirdweb/utils/getAccountAddress.js.map +1 -1
- package/_esm/accounts/thirdweb/utils/getFactoryData.js.map +1 -1
- package/_esm/accounts/thirdweb/utils/signMessage.js.map +1 -1
- package/_esm/accounts/thirdweb/utils/signTypedData.js.map +1 -1
- package/_esm/accounts/trust/toTrustSmartAccount.js.map +1 -1
- package/_esm/accounts/trust/utils/decodeCallData.js.map +1 -1
- package/_esm/accounts/trust/utils/encodeCallData.js.map +1 -1
- package/_esm/accounts/trust/utils/getFactoryData.js.map +1 -1
- package/_esm/actions/erc7579/accountId.js.map +1 -1
- package/_esm/actions/erc7579/installModule.js.map +1 -1
- package/_esm/actions/erc7579/installModules.js.map +1 -1
- package/_esm/actions/erc7579/isModuleInstalled.js.map +1 -1
- package/_esm/actions/erc7579/supportsExecutionMode.js.map +1 -1
- package/_esm/actions/erc7579/supportsModule.js.map +1 -1
- package/_esm/actions/erc7579/uninstallModule.js.map +1 -1
- package/_esm/actions/erc7579/uninstallModules.js.map +1 -1
- package/_esm/actions/erc7579.js.map +1 -1
- package/_esm/actions/etherspot/getUserOperationGasPrice.js.map +1 -1
- package/_esm/actions/passkeyServer/getCredentials.js.map +1 -1
- package/_esm/actions/passkeyServer/startAuthentication.js.map +1 -1
- package/_esm/actions/passkeyServer/startRegistration.js.map +1 -1
- package/_esm/actions/passkeyServer/verifyAuthentication.js.map +1 -1
- package/_esm/actions/passkeyServer/verifyRegistration.js.map +1 -1
- package/_esm/actions/pimlico/estimateErc20PaymasterCost.js.map +1 -1
- package/_esm/actions/pimlico/getTokenQuotes.js.map +1 -1
- package/_esm/actions/pimlico/getUserOperationGasPrice.js.map +1 -1
- package/_esm/actions/pimlico/getUserOperationStatus.js.map +1 -1
- package/_esm/actions/pimlico/sendCompressedUserOperation.js.map +1 -1
- package/_esm/actions/pimlico/sponsorUserOperation.js.map +1 -1
- package/_esm/actions/pimlico/validateSponsorshipPolicies.js.map +1 -1
- package/_esm/actions/public/getAccountNonce.js.map +1 -1
- package/_esm/actions/public/getSenderAddress.js +1 -6
- package/_esm/actions/public/getSenderAddress.js.map +1 -1
- package/_esm/actions/smartAccount/getCallsStatus.js.map +1 -1
- package/_esm/actions/smartAccount/sendCalls.js.map +1 -1
- package/_esm/actions/smartAccount/sendTransaction.js.map +1 -1
- package/_esm/actions/smartAccount/signMessage.js.map +1 -1
- package/_esm/actions/smartAccount/signTypedData.js.map +1 -1
- package/_esm/actions/smartAccount/writeContract.js +1 -1
- package/_esm/actions/smartAccount/writeContract.js.map +1 -1
- package/_esm/clients/createSmartAccountClient.js.map +1 -1
- package/_esm/clients/decorators/smartAccount.js.map +1 -1
- package/_esm/clients/passkeyServer.js.map +1 -1
- package/_esm/clients/pimlico.js.map +1 -1
- package/_esm/errors/index.js.map +1 -1
- package/_esm/experimental/pimlico/utils/prepareUserOperationForErc20Paymaster.js.map +1 -1
- package/_esm/utils/decode7579Calls.js.map +1 -1
- package/_esm/utils/decodeNonce.js.map +1 -1
- package/_esm/utils/deepHexlify.js.map +1 -1
- package/_esm/utils/encode7579Calls.js.map +1 -1
- package/_esm/utils/encodeInstallModule.js.map +1 -1
- package/_esm/utils/encodeNonce.js.map +1 -1
- package/_esm/utils/encodeUninstallModule.js.map +1 -1
- package/_esm/utils/erc20AllowanceOverride.js.map +1 -1
- package/_esm/utils/erc20BalanceOverride.js.map +1 -1
- package/_esm/utils/getAddressFromInitCodeOrPaymasterAndData.js.map +1 -1
- package/_esm/utils/getEstimationCallData.js.map +1 -1
- package/_esm/utils/getPackedUserOperation.js.map +1 -1
- package/_esm/utils/getRequiredPrefund.js.map +1 -1
- package/_esm/utils/isSmartAccountDeployed.js.map +1 -1
- package/_esm/utils/ox.js.map +1 -1
- package/_esm/utils/toOwner.js.map +1 -1
- package/_types/accounts/etherspot/utils/getInitMSAData.d.ts +1 -2
- package/_types/accounts/etherspot/utils/getInitMSAData.d.ts.map +1 -1
- package/_types/accounts/etherspot/utils/getNonceKey.d.ts +1 -2
- package/_types/accounts/etherspot/utils/getNonceKey.d.ts.map +1 -1
- package/_types/accounts/etherspot/utils/wrapMessageHash.d.ts +2 -2
- package/_types/accounts/etherspot/utils/wrapMessageHash.d.ts.map +1 -1
- package/_types/accounts/kernel/toKernelSmartAccount.d.ts +1 -1
- package/_types/accounts/kernel/toKernelSmartAccount.d.ts.map +1 -1
- package/_types/accounts/kernel/utils/decodeCallData.d.ts +3 -4
- package/_types/accounts/kernel/utils/decodeCallData.d.ts.map +1 -1
- package/_types/accounts/kernel/utils/encodeCallData.d.ts +2 -3
- package/_types/accounts/kernel/utils/encodeCallData.d.ts.map +1 -1
- package/_types/accounts/kernel/utils/getNonceKey.d.ts +1 -2
- package/_types/accounts/kernel/utils/getNonceKey.d.ts.map +1 -1
- package/_types/accounts/kernel/utils/isKernelV2.d.ts.map +1 -1
- package/_types/accounts/kernel/utils/isWebAuthnAccount.d.ts.map +1 -1
- package/_types/accounts/kernel/utils/wrapMessageHash.d.ts +2 -2
- package/_types/accounts/kernel/utils/wrapMessageHash.d.ts.map +1 -1
- package/_types/accounts/safe/signUserOperation.d.ts +4 -4
- package/_types/accounts/safe/signUserOperation.d.ts.map +1 -1
- package/_types/accounts/safe/toSafeSmartAccount.d.ts +19 -10
- package/_types/accounts/safe/toSafeSmartAccount.d.ts.map +1 -1
- package/_types/accounts/simple/toSimpleSmartAccount.d.ts +603 -603
- package/_types/accounts/simple/toSimpleSmartAccount.d.ts.map +1 -1
- package/_types/accounts/thirdweb/toThirdwebSmartAccount.d.ts +2 -2
- package/_types/accounts/thirdweb/toThirdwebSmartAccount.d.ts.map +1 -1
- package/_types/accounts/thirdweb/utils/decodeCallData.d.ts +4 -5
- package/_types/accounts/thirdweb/utils/decodeCallData.d.ts.map +1 -1
- package/_types/accounts/thirdweb/utils/encodeCallData.d.ts +2 -3
- package/_types/accounts/thirdweb/utils/encodeCallData.d.ts.map +1 -1
- package/_types/accounts/thirdweb/utils/getAccountAddress.d.ts +1 -1
- package/_types/accounts/thirdweb/utils/getAccountAddress.d.ts.map +1 -1
- package/_types/accounts/thirdweb/utils/getFactoryData.d.ts +2 -3
- package/_types/accounts/thirdweb/utils/getFactoryData.d.ts.map +1 -1
- package/_types/accounts/trust/utils/decodeCallData.d.ts +4 -5
- package/_types/accounts/trust/utils/decodeCallData.d.ts.map +1 -1
- package/_types/accounts/trust/utils/encodeCallData.d.ts +2 -3
- package/_types/accounts/trust/utils/encodeCallData.d.ts.map +1 -1
- package/_types/accounts/trust/utils/getFactoryData.d.ts +2 -3
- package/_types/accounts/trust/utils/getFactoryData.d.ts.map +1 -1
- package/_types/actions/erc7579.d.ts.map +1 -1
- package/_types/actions/etherspot/getUserOperationGasPrice.d.ts.map +1 -1
- package/_types/actions/passkeyServer/getCredentials.d.ts +1 -1
- package/_types/actions/passkeyServer/getCredentials.d.ts.map +1 -1
- package/_types/actions/passkeyServer/startAuthentication.d.ts.map +1 -1
- package/_types/actions/passkeyServer/startRegistration.d.ts.map +1 -1
- package/_types/actions/passkeyServer/verifyAuthentication.d.ts.map +1 -1
- package/_types/actions/passkeyServer/verifyRegistration.d.ts.map +1 -1
- package/_types/actions/pimlico/estimateErc20PaymasterCost.d.ts.map +1 -1
- package/_types/actions/pimlico/getTokenQuotes.d.ts.map +1 -1
- package/_types/actions/pimlico/getUserOperationGasPrice.d.ts.map +1 -1
- package/_types/actions/pimlico/getUserOperationStatus.d.ts +1 -1
- package/_types/actions/pimlico/getUserOperationStatus.d.ts.map +1 -1
- package/_types/actions/pimlico/sendCompressedUserOperation.d.ts +2 -2
- package/_types/actions/pimlico/sendCompressedUserOperation.d.ts.map +1 -1
- package/_types/actions/pimlico/sponsorUserOperation.d.ts.map +1 -1
- package/_types/actions/pimlico/validateSponsorshipPolicies.d.ts.map +1 -1
- package/_types/actions/public/getAccountNonce.d.ts.map +1 -1
- package/_types/actions/public/getSenderAddress.d.ts +1 -1
- package/_types/actions/public/getSenderAddress.d.ts.map +1 -1
- package/_types/clients/decorators/passkeyServer.d.ts.map +1 -1
- package/_types/clients/decorators/pimlico.d.ts +2 -2
- package/_types/clients/decorators/pimlico.d.ts.map +1 -1
- package/_types/errors/index.d.ts.map +1 -1
- package/_types/experimental/pimlico/utils/prepareUserOperationForErc20Paymaster.d.ts +67 -4
- package/_types/experimental/pimlico/utils/prepareUserOperationForErc20Paymaster.d.ts.map +1 -1
- package/_types/utils/getPackedUserOperation.d.ts +18 -1
- package/_types/utils/getPackedUserOperation.d.ts.map +1 -1
- package/_types/utils/getRequiredPrefund.d.ts.map +1 -1
- package/_types/utils/isSmartAccountDeployed.d.ts +2 -2
- package/_types/utils/isSmartAccountDeployed.d.ts.map +1 -1
- package/accounts/kernel/utils/isWebAuthnAccount.ts +2 -2
- package/accounts/kernel/utils/signMessage.ts +1 -1
- package/accounts/safe/toSafeSmartAccount.ts +38 -1
- package/actions/passkeyServer/startRegistration.ts +2 -2
- package/package.json +3 -3
- package/_cjs/vitest.config.js +0 -33
- package/_cjs/vitest.config.js.map +0 -1
- package/_esm/vitest.config.js +0 -31
- package/_esm/vitest.config.js.map +0 -1
- package/_types/vitest.config.d.ts +0 -3
- package/_types/vitest.config.d.ts.map +0 -1
|
@@ -704,6 +704,7 @@ const getInitializerCode = async ({
|
|
|
704
704
|
erc7579LaunchpadAddress,
|
|
705
705
|
setupTransactions = [],
|
|
706
706
|
safeModules = [],
|
|
707
|
+
useMultiSendForSetup = true,
|
|
707
708
|
validators = [],
|
|
708
709
|
executors = [],
|
|
709
710
|
fallbacks = [],
|
|
@@ -729,6 +730,7 @@ const getInitializerCode = async ({
|
|
|
729
730
|
value: bigint
|
|
730
731
|
}[]
|
|
731
732
|
safeModules?: Address[]
|
|
733
|
+
useMultiSendForSetup?: boolean
|
|
732
734
|
validators?: { address: Address; context: Address }[]
|
|
733
735
|
executors?: {
|
|
734
736
|
address: Address
|
|
@@ -902,6 +904,23 @@ const getInitializerCode = async ({
|
|
|
902
904
|
})
|
|
903
905
|
}
|
|
904
906
|
|
|
907
|
+
if (!useMultiSendForSetup && multiCalls.length === 1) {
|
|
908
|
+
return encodeFunctionData({
|
|
909
|
+
abi: setupAbi,
|
|
910
|
+
functionName: "setup",
|
|
911
|
+
args: [
|
|
912
|
+
ownerAddresses,
|
|
913
|
+
threshold,
|
|
914
|
+
multiCalls[0].to,
|
|
915
|
+
multiCalls[0].data,
|
|
916
|
+
safe4337ModuleAddress,
|
|
917
|
+
paymentToken,
|
|
918
|
+
payment,
|
|
919
|
+
paymentReceiver
|
|
920
|
+
]
|
|
921
|
+
})
|
|
922
|
+
}
|
|
923
|
+
|
|
905
924
|
const multiSendCallData = encodeMultiSend(multiCalls)
|
|
906
925
|
|
|
907
926
|
return encodeFunctionData({
|
|
@@ -962,6 +981,7 @@ const getAccountInitCode = async ({
|
|
|
962
981
|
saltNonce = BigInt(0),
|
|
963
982
|
setupTransactions = [],
|
|
964
983
|
safeModules = [],
|
|
984
|
+
useMultiSendForSetup = true,
|
|
965
985
|
validators = [],
|
|
966
986
|
executors = [],
|
|
967
987
|
fallbacks = [],
|
|
@@ -985,6 +1005,7 @@ const getAccountInitCode = async ({
|
|
|
985
1005
|
value: bigint
|
|
986
1006
|
}[]
|
|
987
1007
|
safeModules?: Address[]
|
|
1008
|
+
useMultiSendForSetup?: boolean
|
|
988
1009
|
validators?: { address: Address; context: Address }[]
|
|
989
1010
|
executors?: {
|
|
990
1011
|
address: Address
|
|
@@ -1009,6 +1030,7 @@ const getAccountInitCode = async ({
|
|
|
1009
1030
|
setupTransactions,
|
|
1010
1031
|
safeSingletonAddress,
|
|
1011
1032
|
safeModules,
|
|
1033
|
+
useMultiSendForSetup,
|
|
1012
1034
|
erc7579LaunchpadAddress,
|
|
1013
1035
|
validators,
|
|
1014
1036
|
executors,
|
|
@@ -1183,6 +1205,15 @@ export type ToSafeSmartAccountParameters<
|
|
|
1183
1205
|
payment?: bigint
|
|
1184
1206
|
paymentReceiver?: Address
|
|
1185
1207
|
onchainIdentifier?: Hex
|
|
1208
|
+
/**
|
|
1209
|
+
* When true (default), the Safe setup always routes through MultiSend,
|
|
1210
|
+
* even for a single setup transaction. When false, a single setup
|
|
1211
|
+
* transaction (e.g. just enableModules) is called directly without
|
|
1212
|
+
* MultiSend wrapping. This produces a different counterfactual address
|
|
1213
|
+
* and is compatible with Safe Protocol Kit / relay-kit address derivation.
|
|
1214
|
+
* @default true
|
|
1215
|
+
*/
|
|
1216
|
+
useMultiSendForSetup?: boolean
|
|
1186
1217
|
} & GetErc7579Params<TErc7579>
|
|
1187
1218
|
|
|
1188
1219
|
function isErc7579Args<entryPointVersion extends "0.6" | "0.7" = "0.7">(
|
|
@@ -1224,6 +1255,7 @@ const getAccountAddress = async ({
|
|
|
1224
1255
|
paymentReceiver,
|
|
1225
1256
|
setupTransactions = [],
|
|
1226
1257
|
safeModules = [],
|
|
1258
|
+
useMultiSendForSetup = true,
|
|
1227
1259
|
saltNonce = BigInt(0),
|
|
1228
1260
|
validators = [],
|
|
1229
1261
|
executors = [],
|
|
@@ -1251,6 +1283,7 @@ const getAccountAddress = async ({
|
|
|
1251
1283
|
payment?: bigint
|
|
1252
1284
|
paymentReceiver?: Address
|
|
1253
1285
|
safeModules?: Address[]
|
|
1286
|
+
useMultiSendForSetup?: boolean
|
|
1254
1287
|
saltNonce?: bigint
|
|
1255
1288
|
erc7579LaunchpadAddress?: Address
|
|
1256
1289
|
validators?: { address: Address; context: Address }[]
|
|
@@ -1280,6 +1313,7 @@ const getAccountAddress = async ({
|
|
|
1280
1313
|
setupTransactions,
|
|
1281
1314
|
safeSingletonAddress,
|
|
1282
1315
|
safeModules,
|
|
1316
|
+
useMultiSendForSetup,
|
|
1283
1317
|
erc7579LaunchpadAddress,
|
|
1284
1318
|
validators,
|
|
1285
1319
|
executors,
|
|
@@ -1364,7 +1398,8 @@ export async function toSafeSmartAccount<
|
|
|
1364
1398
|
paymentToken,
|
|
1365
1399
|
payment,
|
|
1366
1400
|
paymentReceiver,
|
|
1367
|
-
onchainIdentifier
|
|
1401
|
+
onchainIdentifier,
|
|
1402
|
+
useMultiSendForSetup = true
|
|
1368
1403
|
} = parameters
|
|
1369
1404
|
|
|
1370
1405
|
const owners = await Promise.all(
|
|
@@ -1511,6 +1546,7 @@ export async function toSafeSmartAccount<
|
|
|
1511
1546
|
saltNonce,
|
|
1512
1547
|
setupTransactions,
|
|
1513
1548
|
safeModules,
|
|
1549
|
+
useMultiSendForSetup,
|
|
1514
1550
|
validators,
|
|
1515
1551
|
executors,
|
|
1516
1552
|
fallbacks,
|
|
@@ -1547,6 +1583,7 @@ export async function toSafeSmartAccount<
|
|
|
1547
1583
|
saltNonce,
|
|
1548
1584
|
setupTransactions,
|
|
1549
1585
|
safeModules,
|
|
1586
|
+
useMultiSendForSetup,
|
|
1550
1587
|
validators,
|
|
1551
1588
|
executors,
|
|
1552
1589
|
fallbacks,
|
|
@@ -78,7 +78,7 @@ export type StartRegistrationParameters = {
|
|
|
78
78
|
}
|
|
79
79
|
export type StartRegistrationReturnType = CreateWebAuthnCredentialParameters
|
|
80
80
|
|
|
81
|
-
export const startRegistration
|
|
81
|
+
export const startRegistration: (
|
|
82
82
|
client: Client<
|
|
83
83
|
Transport,
|
|
84
84
|
Chain | undefined,
|
|
@@ -86,7 +86,7 @@ export const startRegistration = async (
|
|
|
86
86
|
PasskeyServerRpcSchema
|
|
87
87
|
>,
|
|
88
88
|
args?: StartRegistrationParameters
|
|
89
|
-
)
|
|
89
|
+
) => Promise<StartRegistrationReturnType> = async (client, args) => {
|
|
90
90
|
const response = await client.request({
|
|
91
91
|
method: "pks_startRegistration",
|
|
92
92
|
params: [args?.context]
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "permissionless",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.5",
|
|
4
4
|
"author": "Pimlico",
|
|
5
5
|
"homepage": "https://docs.pimlico.io/permissionless",
|
|
6
6
|
"repository": "github:pimlicolabs/permissionless.js",
|
|
@@ -97,8 +97,8 @@
|
|
|
97
97
|
}
|
|
98
98
|
},
|
|
99
99
|
"peerDependencies": {
|
|
100
|
-
"viem": "^2.
|
|
101
|
-
"ox": "^0.
|
|
100
|
+
"viem": "^2.44.4",
|
|
101
|
+
"ox": "^0.11.3"
|
|
102
102
|
},
|
|
103
103
|
"peerDependenciesMeta": {
|
|
104
104
|
"ox": {
|
package/_cjs/vitest.config.js
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const node_path_1 = require("node:path");
|
|
4
|
-
const vite_1 = require("vite");
|
|
5
|
-
const config_1 = require("vitest/config");
|
|
6
|
-
exports.default = (0, config_1.defineConfig)({
|
|
7
|
-
test: {
|
|
8
|
-
coverage: {
|
|
9
|
-
all: true,
|
|
10
|
-
provider: "v8",
|
|
11
|
-
reporter: process.env.CI ? ["lcov"] : ["text", "json", "html"],
|
|
12
|
-
include: ["**/permissionless/**"],
|
|
13
|
-
exclude: [
|
|
14
|
-
"**/errors/utils.ts",
|
|
15
|
-
"**/*.test.ts",
|
|
16
|
-
"**/permissionless-test/**",
|
|
17
|
-
"**/_cjs/**",
|
|
18
|
-
"**/_esm/**",
|
|
19
|
-
"**/_types/**"
|
|
20
|
-
]
|
|
21
|
-
},
|
|
22
|
-
sequence: {
|
|
23
|
-
concurrent: false
|
|
24
|
-
},
|
|
25
|
-
fileParallelism: true,
|
|
26
|
-
environment: "node",
|
|
27
|
-
testTimeout: 60_000,
|
|
28
|
-
hookTimeout: 45_000,
|
|
29
|
-
include: [(0, node_path_1.join)(__dirname, "./**/*.test.ts")],
|
|
30
|
-
env: (0, vite_1.loadEnv)("test", process.cwd())
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
//# sourceMappingURL=vitest.config.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vitest.config.js","sourceRoot":"","sources":["../vitest.config.ts"],"names":[],"mappings":";;AAAA,yCAAgC;AAChC,+BAA8B;AAC9B,0CAA4C;AAE5C,kBAAe,IAAA,qBAAY,EAAC;IACxB,IAAI,EAAE;QACF,QAAQ,EAAE;YACN,GAAG,EAAE,IAAI;YACT,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC9D,OAAO,EAAE,CAAC,sBAAsB,CAAC;YACjC,OAAO,EAAE;gBACL,oBAAoB;gBACpB,cAAc;gBACd,2BAA2B;gBAC3B,YAAY;gBACZ,YAAY;gBACZ,cAAc;aACjB;SACJ;QACD,QAAQ,EAAE;YACN,UAAU,EAAE,KAAK;SACpB;QACD,eAAe,EAAE,IAAI;QACrB,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,MAAM;QACnB,OAAO,EAAE,CAAC,IAAA,gBAAI,EAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QAC5C,GAAG,EAAE,IAAA,cAAO,EAAC,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;KACtC;CACJ,CAAC,CAAA"}
|
package/_esm/vitest.config.js
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { join } from "node:path";
|
|
2
|
-
import { loadEnv } from "vite";
|
|
3
|
-
import { defineConfig } from "vitest/config";
|
|
4
|
-
export default defineConfig({
|
|
5
|
-
test: {
|
|
6
|
-
coverage: {
|
|
7
|
-
all: true,
|
|
8
|
-
provider: "v8",
|
|
9
|
-
reporter: process.env.CI ? ["lcov"] : ["text", "json", "html"],
|
|
10
|
-
include: ["**/permissionless/**"],
|
|
11
|
-
exclude: [
|
|
12
|
-
"**/errors/utils.ts",
|
|
13
|
-
"**/*.test.ts",
|
|
14
|
-
"**/permissionless-test/**",
|
|
15
|
-
"**/_cjs/**",
|
|
16
|
-
"**/_esm/**",
|
|
17
|
-
"**/_types/**"
|
|
18
|
-
]
|
|
19
|
-
},
|
|
20
|
-
sequence: {
|
|
21
|
-
concurrent: false
|
|
22
|
-
},
|
|
23
|
-
fileParallelism: true,
|
|
24
|
-
environment: "node",
|
|
25
|
-
testTimeout: 60_000,
|
|
26
|
-
hookTimeout: 45_000,
|
|
27
|
-
include: [join(__dirname, "./**/*.test.ts")],
|
|
28
|
-
env: loadEnv("test", process.cwd())
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
//# sourceMappingURL=vitest.config.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vitest.config.js","sourceRoot":"","sources":["../vitest.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAE5C,eAAe,YAAY,CAAC;IACxB,IAAI,EAAE;QACF,QAAQ,EAAE;YACN,GAAG,EAAE,IAAI;YACT,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC9D,OAAO,EAAE,CAAC,sBAAsB,CAAC;YACjC,OAAO,EAAE;gBACL,oBAAoB;gBACpB,cAAc;gBACd,2BAA2B;gBAC3B,YAAY;gBACZ,YAAY;gBACZ,cAAc;aACjB;SACJ;QACD,QAAQ,EAAE;YACN,UAAU,EAAE,KAAK;SACpB;QACD,eAAe,EAAE,IAAI;QACrB,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,MAAM;QACnB,OAAO,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QAC5C,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;KACtC;CACJ,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vitest.config.d.ts","sourceRoot":"","sources":["../vitest.config.ts"],"names":[],"mappings":";AAIA,wBA0BE"}
|