permissionless 0.0.27 → 0.0.29

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.
Files changed (82) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/_cjs/accounts/biconomy/signerToBiconomySmartAccount.js +16 -13
  3. package/_cjs/accounts/biconomy/signerToBiconomySmartAccount.js.map +1 -1
  4. package/_cjs/accounts/kernel/signerToEcdsaKernelSmartAccount.js +16 -13
  5. package/_cjs/accounts/kernel/signerToEcdsaKernelSmartAccount.js.map +1 -1
  6. package/_cjs/accounts/signerToSafeSmartAccount.js +20 -17
  7. package/_cjs/accounts/signerToSafeSmartAccount.js.map +1 -1
  8. package/_cjs/accounts/signerToSimpleSmartAccount.js +15 -12
  9. package/_cjs/accounts/signerToSimpleSmartAccount.js.map +1 -1
  10. package/_cjs/actions/bundler/estimateUserOperationGas.js +10 -5
  11. package/_cjs/actions/bundler/estimateUserOperationGas.js.map +1 -1
  12. package/_cjs/actions/smartAccount/prepareUserOperationRequest.js +2 -2
  13. package/_cjs/actions/smartAccount/prepareUserOperationRequest.js.map +1 -1
  14. package/_cjs/clients/decorators/bundler.js +1 -1
  15. package/_cjs/clients/decorators/bundler.js.map +1 -1
  16. package/_cjs/clients/decorators/smartAccount.js +2 -2
  17. package/_cjs/clients/decorators/smartAccount.js.map +1 -1
  18. package/_cjs/utils/getAction.js +1 -1
  19. package/_cjs/utils/getAction.js.map +1 -1
  20. package/_cjs/utils/index.js +3 -1
  21. package/_cjs/utils/index.js.map +1 -1
  22. package/_cjs/utils/isSmartAccountDeployed.js +15 -0
  23. package/_cjs/utils/isSmartAccountDeployed.js.map +1 -0
  24. package/_esm/accounts/biconomy/signerToBiconomySmartAccount.js +17 -14
  25. package/_esm/accounts/biconomy/signerToBiconomySmartAccount.js.map +1 -1
  26. package/_esm/accounts/kernel/signerToEcdsaKernelSmartAccount.js +17 -14
  27. package/_esm/accounts/kernel/signerToEcdsaKernelSmartAccount.js.map +1 -1
  28. package/_esm/accounts/signerToSafeSmartAccount.js +21 -18
  29. package/_esm/accounts/signerToSafeSmartAccount.js.map +1 -1
  30. package/_esm/accounts/signerToSimpleSmartAccount.js +16 -13
  31. package/_esm/accounts/signerToSimpleSmartAccount.js.map +1 -1
  32. package/_esm/actions/bundler/estimateUserOperationGas.js +10 -5
  33. package/_esm/actions/bundler/estimateUserOperationGas.js.map +1 -1
  34. package/_esm/actions/smartAccount/prepareUserOperationRequest.js +2 -2
  35. package/_esm/actions/smartAccount/prepareUserOperationRequest.js.map +1 -1
  36. package/_esm/clients/decorators/bundler.js +1 -1
  37. package/_esm/clients/decorators/bundler.js.map +1 -1
  38. package/_esm/clients/decorators/smartAccount.js +2 -2
  39. package/_esm/clients/decorators/smartAccount.js.map +1 -1
  40. package/_esm/utils/getAction.js +1 -1
  41. package/_esm/utils/getAction.js.map +1 -1
  42. package/_esm/utils/index.js +2 -1
  43. package/_esm/utils/index.js.map +1 -1
  44. package/_esm/utils/isSmartAccountDeployed.js +11 -0
  45. package/_esm/utils/isSmartAccountDeployed.js.map +1 -0
  46. package/_types/accounts/biconomy/signerToBiconomySmartAccount.d.ts +2 -1
  47. package/_types/accounts/biconomy/signerToBiconomySmartAccount.d.ts.map +1 -1
  48. package/_types/accounts/kernel/signerToEcdsaKernelSmartAccount.d.ts +2 -1
  49. package/_types/accounts/kernel/signerToEcdsaKernelSmartAccount.d.ts.map +1 -1
  50. package/_types/accounts/signerToSafeSmartAccount.d.ts +3 -2
  51. package/_types/accounts/signerToSafeSmartAccount.d.ts.map +1 -1
  52. package/_types/accounts/signerToSimpleSmartAccount.d.ts +2 -1
  53. package/_types/accounts/signerToSimpleSmartAccount.d.ts.map +1 -1
  54. package/_types/actions/bundler/estimateUserOperationGas.d.ts +2 -2
  55. package/_types/actions/bundler/estimateUserOperationGas.d.ts.map +1 -1
  56. package/_types/actions/smartAccount/prepareUserOperationRequest.d.ts +2 -1
  57. package/_types/actions/smartAccount/prepareUserOperationRequest.d.ts.map +1 -1
  58. package/_types/clients/decorators/bundler.d.ts +2 -1
  59. package/_types/clients/decorators/bundler.d.ts.map +1 -1
  60. package/_types/clients/decorators/smartAccount.d.ts +2 -1
  61. package/_types/clients/decorators/smartAccount.d.ts.map +1 -1
  62. package/_types/types/bundler.d.ts +27 -1
  63. package/_types/types/bundler.d.ts.map +1 -1
  64. package/_types/utils/getAction.d.ts +1 -1
  65. package/_types/utils/getAction.d.ts.map +1 -1
  66. package/_types/utils/index.d.ts +2 -1
  67. package/_types/utils/index.d.ts.map +1 -1
  68. package/_types/utils/isSmartAccountDeployed.d.ts +3 -0
  69. package/_types/utils/isSmartAccountDeployed.d.ts.map +1 -0
  70. package/accounts/biconomy/signerToBiconomySmartAccount.ts +25 -18
  71. package/accounts/kernel/signerToEcdsaKernelSmartAccount.ts +24 -13
  72. package/accounts/signerToSafeSmartAccount.ts +24 -18
  73. package/accounts/signerToSimpleSmartAccount.ts +25 -18
  74. package/actions/bundler/estimateUserOperationGas.ts +13 -7
  75. package/actions/smartAccount/prepareUserOperationRequest.ts +11 -9
  76. package/clients/decorators/bundler.ts +8 -3
  77. package/clients/decorators/smartAccount.ts +12 -6
  78. package/package.json +1 -1
  79. package/types/bundler.ts +28 -1
  80. package/utils/getAction.ts +5 -5
  81. package/utils/index.ts +3 -1
  82. package/utils/isSmartAccountDeployed.ts +16 -0
@@ -1,8 +1,9 @@
1
1
  import { concatHex, encodeAbiParameters, encodeFunctionData, encodePacked, getContractAddress, hexToBigInt, keccak256, parseAbiParameters } from "viem";
2
2
  import { toAccount } from "viem/accounts";
3
- import { getBytecode, getChainId, signMessage, signTypedData } from "viem/actions";
3
+ import { getChainId, signMessage, signTypedData } from "viem/actions";
4
4
  import { getAccountNonce } from "../../actions/public/getAccountNonce.js";
5
5
  import { getUserOperationHash } from "../../utils/getUserOperationHash.js";
6
+ import { isSmartAccountDeployed } from "../../utils/isSmartAccountDeployed.js";
6
7
  import { SignTransactionNotSupportedBySmartAccount } from "../types.js";
7
8
  import { BiconomyExecuteAbi, BiconomyInitAbi } from "./abi/BiconomySmartAccountAbi.js";
8
9
  /**
@@ -111,7 +112,7 @@ const getAccountAddress = async ({ factoryAddress, accountLogicAddress, fallback
111
112
  * @param accountLogicAddress
112
113
  * @param ecdsaModuleAddress
113
114
  */
114
- export async function signerToBiconomySmartAccount(client, { signer, entryPoint, index = 0n, factoryAddress = BICONOMY_ADDRESSES.FACTORY_ADDRESS, accountLogicAddress = BICONOMY_ADDRESSES.ACCOUNT_V2_0_LOGIC, fallbackHandlerAddress = BICONOMY_ADDRESSES.DEFAULT_FALLBACK_HANDLER_ADDRESS, ecdsaModuleAddress = BICONOMY_ADDRESSES.ECDSA_OWNERSHIP_REGISTRY_MODULE }) {
115
+ export async function signerToBiconomySmartAccount(client, { signer, address, entryPoint, index = 0n, factoryAddress = BICONOMY_ADDRESSES.FACTORY_ADDRESS, accountLogicAddress = BICONOMY_ADDRESSES.ACCOUNT_V2_0_LOGIC, fallbackHandlerAddress = BICONOMY_ADDRESSES.DEFAULT_FALLBACK_HANDLER_ADDRESS, ecdsaModuleAddress = BICONOMY_ADDRESSES.ECDSA_OWNERSHIP_REGISTRY_MODULE }) {
115
116
  // Get the private key related account
116
117
  const viemSigner = {
117
118
  ...signer,
@@ -128,18 +129,20 @@ export async function signerToBiconomySmartAccount(client, { signer, entryPoint,
128
129
  });
129
130
  // Fetch account address and chain id
130
131
  const [accountAddress, chainId] = await Promise.all([
131
- getAccountAddress({
132
- owner: viemSigner.address,
133
- ecdsaModuleAddress,
134
- factoryAddress,
135
- accountLogicAddress,
136
- fallbackHandlerAddress,
137
- index
138
- }),
132
+ address ??
133
+ getAccountAddress({
134
+ owner: viemSigner.address,
135
+ ecdsaModuleAddress,
136
+ factoryAddress,
137
+ accountLogicAddress,
138
+ fallbackHandlerAddress,
139
+ index
140
+ }),
139
141
  getChainId(client)
140
142
  ]);
141
143
  if (!accountAddress)
142
144
  throw new Error("Account address not found");
145
+ let smartAccountDeployed = await isSmartAccountDeployed(client, accountAddress);
143
146
  // Build the EOA Signer
144
147
  const account = toAccount({
145
148
  address: accountAddress,
@@ -189,10 +192,10 @@ export async function signerToBiconomySmartAccount(client, { signer, entryPoint,
189
192
  },
190
193
  // Encode the init code
191
194
  async getInitCode() {
192
- const contractCode = await getBytecode(client, {
193
- address: accountAddress
194
- });
195
- if ((contractCode?.length ?? 0) > 2)
195
+ if (smartAccountDeployed)
196
+ return "0x";
197
+ smartAccountDeployed = await isSmartAccountDeployed(client, accountAddress);
198
+ if (smartAccountDeployed)
196
199
  return "0x";
197
200
  return generateInitCode();
198
201
  },
@@ -1 +1 @@
1
- {"version":3,"file":"signerToBiconomySmartAccount.js","sourceRoot":"","sources":["../../../accounts/biconomy/signerToBiconomySmartAccount.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signerToBiconomySmartAccount.js","sourceRoot":"","sources":["../../../accounts/biconomy/signerToBiconomySmartAccount.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { concatHex, encodeFunctionData, isAddressEqual } from "viem";
2
2
  import { toAccount } from "viem/accounts";
3
- import { getBytecode, getChainId, readContract, signMessage, signTypedData } from "viem/actions";
3
+ import { getChainId, readContract, signMessage, signTypedData } from "viem/actions";
4
4
  import { getAccountNonce } from "../../actions/public/getAccountNonce.js";
5
5
  import { getSenderAddress } from "../../actions/public/getSenderAddress.js";
6
6
  import { getUserOperationHash } from "../../utils/getUserOperationHash.js";
7
+ import { isSmartAccountDeployed } from "../../utils/isSmartAccountDeployed.js";
7
8
  import { SignTransactionNotSupportedBySmartAccount } from "../types.js";
8
9
  import { KernelExecuteAbi, KernelInitAbi } from "./abi/KernelAccountAbi.js";
9
10
  /**
@@ -140,7 +141,7 @@ const getAccountAddress = async ({ client, owner, entryPoint, initCodeProvider,
140
141
  * @param ecdsaValidatorAddress
141
142
  * @param deployedAccountAddress
142
143
  */
143
- export async function signerToEcdsaKernelSmartAccount(client, { signer, entryPoint, index = 0n, factoryAddress = KERNEL_ADDRESSES.FACTORY_ADDRESS, accountLogicAddress = KERNEL_ADDRESSES.ACCOUNT_V2_2_LOGIC, ecdsaValidatorAddress = KERNEL_ADDRESSES.ECDSA_VALIDATOR, deployedAccountAddress }) {
144
+ export async function signerToEcdsaKernelSmartAccount(client, { signer, address, entryPoint, index = 0n, factoryAddress = KERNEL_ADDRESSES.FACTORY_ADDRESS, accountLogicAddress = KERNEL_ADDRESSES.ACCOUNT_V2_2_LOGIC, ecdsaValidatorAddress = KERNEL_ADDRESSES.ECDSA_VALIDATOR, deployedAccountAddress }) {
144
145
  // Get the private key related account
145
146
  const viemSigner = {
146
147
  ...signer,
@@ -158,18 +159,20 @@ export async function signerToEcdsaKernelSmartAccount(client, { signer, entryPoi
158
159
  });
159
160
  // Fetch account address and chain id
160
161
  const [accountAddress, chainId] = await Promise.all([
161
- getAccountAddress({
162
- client,
163
- entryPoint,
164
- owner: viemSigner.address,
165
- ecdsaValidatorAddress,
166
- initCodeProvider: generateInitCode,
167
- deployedAccountAddress
168
- }),
162
+ address ??
163
+ getAccountAddress({
164
+ client,
165
+ entryPoint,
166
+ owner: viemSigner.address,
167
+ ecdsaValidatorAddress,
168
+ initCodeProvider: generateInitCode,
169
+ deployedAccountAddress
170
+ }),
169
171
  getChainId(client)
170
172
  ]);
171
173
  if (!accountAddress)
172
174
  throw new Error("Account address not found");
175
+ let smartAccountDeployed = await isSmartAccountDeployed(client, accountAddress);
173
176
  // Build the EOA Signer
174
177
  const account = toAccount({
175
178
  address: accountAddress,
@@ -218,10 +221,10 @@ export async function signerToEcdsaKernelSmartAccount(client, { signer, entryPoi
218
221
  },
219
222
  // Encode the init code
220
223
  async getInitCode() {
221
- const contractCode = await getBytecode(client, {
222
- address: accountAddress
223
- });
224
- if ((contractCode?.length ?? 0) > 2)
224
+ if (smartAccountDeployed)
225
+ return "0x";
226
+ smartAccountDeployed = await isSmartAccountDeployed(client, accountAddress);
227
+ if (smartAccountDeployed)
225
228
  return "0x";
226
229
  return generateInitCode();
227
230
  },
@@ -1 +1 @@
1
- {"version":3,"file":"signerToEcdsaKernelSmartAccount.js","sourceRoot":"","sources":["../../../accounts/kernel/signerToEcdsaKernelSmartAccount.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signerToEcdsaKernelSmartAccount.js","sourceRoot":"","sources":["../../../accounts/kernel/signerToEcdsaKernelSmartAccount.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import { concat, concatHex, encodeFunctionData, encodePacked, getContractAddress, hashMessage, hashTypedData, hexToBigInt, keccak256, toBytes, zeroAddress } from "viem";
2
2
  import { toAccount } from "viem/accounts";
3
- import { getBytecode, getChainId, readContract, signMessage, signTypedData } from "viem/actions";
3
+ import { getChainId, readContract, signMessage, signTypedData } from "viem/actions";
4
4
  import { getAccountNonce } from "../actions/public/getAccountNonce.js";
5
+ import { isSmartAccountDeployed } from "../utils/isSmartAccountDeployed.js";
5
6
  import { SignTransactionNotSupportedBySmartAccount } from "./types.js";
6
7
  const EIP712_SAFE_OPERATION_TYPE = {
7
8
  SafeOp: [
@@ -295,7 +296,7 @@ const getDefaultAddresses = (safeVersion, { addModuleLibAddress: _addModuleLibAd
295
296
  *
296
297
  * @returns A Private Key Simple Account.
297
298
  */
298
- export async function signerToSafeSmartAccount(client, { signer, safeVersion, entryPoint, addModuleLibAddress: _addModuleLibAddress, safe4337ModuleAddress: _safe4337ModuleAddress, safeProxyFactoryAddress: _safeProxyFactoryAddress, safeSingletonAddress: _safeSingletonAddress, multiSendAddress: _multiSendAddress, multiSendCallOnlyAddress: _multiSendCallOnlyAddress, saltNonce = 0n, validUntil = 0, validAfter = 0, safeModules = [], setupTransactions = [] }) {
299
+ export async function signerToSafeSmartAccount(client, { signer, address, safeVersion, entryPoint, addModuleLibAddress: _addModuleLibAddress, safe4337ModuleAddress: _safe4337ModuleAddress, safeProxyFactoryAddress: _safeProxyFactoryAddress, safeSingletonAddress: _safeSingletonAddress, multiSendAddress: _multiSendAddress, multiSendCallOnlyAddress: _multiSendCallOnlyAddress, saltNonce = 0n, validUntil = 0, validAfter = 0, safeModules = [], setupTransactions = [] }) {
299
300
  const chainId = await getChainId(client);
300
301
  const viemSigner = {
301
302
  ...signer,
@@ -311,20 +312,22 @@ export async function signerToSafeSmartAccount(client, { signer, safeVersion, en
311
312
  multiSendAddress: _multiSendAddress,
312
313
  multiSendCallOnlyAddress: _multiSendCallOnlyAddress
313
314
  });
314
- const accountAddress = await getAccountAddress({
315
- client,
316
- owner: viemSigner.address,
317
- addModuleLibAddress,
318
- safe4337ModuleAddress,
319
- safeProxyFactoryAddress,
320
- safeSingletonAddress,
321
- multiSendAddress,
322
- saltNonce,
323
- setupTransactions,
324
- safeModules
325
- });
315
+ const accountAddress = address ??
316
+ (await getAccountAddress({
317
+ client,
318
+ owner: viemSigner.address,
319
+ addModuleLibAddress,
320
+ safe4337ModuleAddress,
321
+ safeProxyFactoryAddress,
322
+ safeSingletonAddress,
323
+ multiSendAddress,
324
+ saltNonce,
325
+ setupTransactions,
326
+ safeModules
327
+ }));
326
328
  if (!accountAddress)
327
329
  throw new Error("Account address not found");
330
+ let safeDeployed = await isSmartAccountDeployed(client, accountAddress);
328
331
  const account = toAccount({
329
332
  address: accountAddress,
330
333
  async signMessage({ message }) {
@@ -417,10 +420,10 @@ export async function signerToSafeSmartAccount(client, { signer, safeVersion, en
417
420
  return encodePacked(["uint48", "uint48", "bytes"], [validAfter, validUntil, signatureBytes]);
418
421
  },
419
422
  async getInitCode() {
420
- const contractCode = await getBytecode(client, {
421
- address: accountAddress
422
- });
423
- if ((contractCode?.length ?? 0) > 2)
423
+ if (safeDeployed)
424
+ return "0x";
425
+ safeDeployed = await isSmartAccountDeployed(client, accountAddress);
426
+ if (safeDeployed)
424
427
  return "0x";
425
428
  return getAccountInitCode({
426
429
  owner: viemSigner.address,
@@ -1 +1 @@
1
- {"version":3,"file":"signerToSafeSmartAccount.js","sourceRoot":"","sources":["../../accounts/signerToSafeSmartAccount.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signerToSafeSmartAccount.js","sourceRoot":"","sources":["../../accounts/signerToSafeSmartAccount.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { concatHex, encodeFunctionData } from "viem";
2
2
  import { toAccount } from "viem/accounts";
3
- import { getBytecode, getChainId, signMessage, signTypedData } from "viem/actions";
3
+ import { getChainId, signMessage, signTypedData } from "viem/actions";
4
4
  import { getAccountNonce } from "../actions/public/getAccountNonce.js";
5
5
  import { getSenderAddress } from "../actions/public/getSenderAddress.js";
6
6
  import { getUserOperationHash } from "../utils/getUserOperationHash.js";
7
+ import { isSmartAccountDeployed } from "../utils/isSmartAccountDeployed.js";
7
8
  import { SignTransactionNotSupportedBySmartAccount } from "./types.js";
8
9
  const getAccountInitCode = async (factoryAddress, owner, index = 0n) => {
9
10
  if (!owner)
@@ -54,7 +55,7 @@ const getAccountAddress = async ({ client, factoryAddress, entryPoint, owner, in
54
55
  *
55
56
  * @returns A Private Key Simple Account.
56
57
  */
57
- export async function signerToSimpleSmartAccount(client, { signer, factoryAddress, entryPoint, index = 0n }) {
58
+ export async function signerToSimpleSmartAccount(client, { signer, factoryAddress, entryPoint, index = 0n, address }) {
58
59
  const viemSigner = {
59
60
  ...signer,
60
61
  signTransaction: (_, __) => {
@@ -62,17 +63,19 @@ export async function signerToSimpleSmartAccount(client, { signer, factoryAddres
62
63
  }
63
64
  };
64
65
  const [accountAddress, chainId] = await Promise.all([
65
- getAccountAddress({
66
- client,
67
- factoryAddress,
68
- entryPoint,
69
- owner: viemSigner.address,
70
- index
71
- }),
66
+ address ??
67
+ getAccountAddress({
68
+ client,
69
+ factoryAddress,
70
+ entryPoint,
71
+ owner: viemSigner.address,
72
+ index
73
+ }),
72
74
  getChainId(client)
73
75
  ]);
74
76
  if (!accountAddress)
75
77
  throw new Error("Account address not found");
78
+ let smartAccountDeployed = await isSmartAccountDeployed(client, accountAddress);
76
79
  const account = toAccount({
77
80
  address: accountAddress,
78
81
  async signMessage({ message }) {
@@ -112,10 +115,10 @@ export async function signerToSimpleSmartAccount(client, { signer, factoryAddres
112
115
  });
113
116
  },
114
117
  async getInitCode() {
115
- const contractCode = await getBytecode(client, {
116
- address: accountAddress
117
- });
118
- if ((contractCode?.length ?? 0) > 2)
118
+ if (smartAccountDeployed)
119
+ return "0x";
120
+ smartAccountDeployed = await isSmartAccountDeployed(client, accountAddress);
121
+ if (smartAccountDeployed)
119
122
  return "0x";
120
123
  return getAccountInitCode(factoryAddress, viemSigner.address, index);
121
124
  },
@@ -1 +1 @@
1
- {"version":3,"file":"signerToSimpleSmartAccount.js","sourceRoot":"","sources":["../../accounts/signerToSimpleSmartAccount.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signerToSimpleSmartAccount.js","sourceRoot":"","sources":["../../accounts/signerToSimpleSmartAccount.ts"],"names":[],"mappings":"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"}
@@ -26,14 +26,19 @@ import { deepHexlify } from "../../utils/deepHexlify.js";
26
26
  * // Return {preVerificationGas: 43492n, verificationGasLimit: 59436n, callGasLimit: 9000n}
27
27
  *
28
28
  */
29
- export const estimateUserOperationGas = async (client, args) => {
29
+ export const estimateUserOperationGas = async (client, args, stateOverrides) => {
30
30
  const { userOperation, entryPoint } = args;
31
+ const userOperationWithBigIntAsHex = deepHexlify(userOperation);
32
+ const stateOverridesWithBigIntAsHex = deepHexlify(stateOverrides);
31
33
  const response = await client.request({
32
34
  method: "eth_estimateUserOperationGas",
33
- params: [
34
- deepHexlify(userOperation),
35
- entryPoint
36
- ]
35
+ params: stateOverrides
36
+ ? [
37
+ userOperationWithBigIntAsHex,
38
+ entryPoint,
39
+ stateOverridesWithBigIntAsHex
40
+ ]
41
+ : [userOperationWithBigIntAsHex, entryPoint]
37
42
  });
38
43
  return {
39
44
  preVerificationGas: BigInt(response.preVerificationGas || 0),
@@ -1 +1 @@
1
- {"version":3,"file":"estimateUserOperationGas.js","sourceRoot":"","sources":["../../../actions/bundler/estimateUserOperationGas.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAgBxD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAKzC,MAA8D,EAC9D,IAAkD,EACG,EAAE;IACvD,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,IAAI,CAAA;IAE1C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,EAAE,8BAA8B;QACtC,MAAM,EAAE;YACJ,WAAW,CAAC,aAAa,CAAiC;YAC1D,UAAqB;SACxB;KACJ,CAAC,CAAA;IAEF,OAAO;QACH,kBAAkB,EAAE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,IAAI,CAAC,CAAC;QAC5D,oBAAoB,EAAE,MAAM,CAAC,QAAQ,CAAC,oBAAoB,IAAI,CAAC,CAAC;QAChE,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY,IAAI,CAAC,CAAC;KACnD,CAAA;AACL,CAAC,CAAA"}
1
+ {"version":3,"file":"estimateUserOperationGas.js","sourceRoot":"","sources":["../../../actions/bundler/estimateUserOperationGas.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAgBxD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAKzC,MAA8D,EAC9D,IAAkD,EAClD,cAA+B,EACsB,EAAE;IACvD,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,IAAI,CAAA;IAE1C,MAAM,4BAA4B,GAAG,WAAW,CAAC,aAAa,CAAC,CAAA;IAC/D,MAAM,6BAA6B,GAAG,WAAW,CAAC,cAAc,CAAC,CAAA;IAEjE,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,EAAE,8BAA8B;QACtC,MAAM,EAAE,cAAc;YAClB,CAAC,CAAC;gBACI,4BAA4B;gBAC5B,UAAU;gBACV,6BAA6B;aAChC;YACH,CAAC,CAAC,CAAC,4BAA4B,EAAE,UAAU,CAAC;KACnD,CAAC,CAAA;IAEF,OAAO;QACH,kBAAkB,EAAE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,IAAI,CAAC,CAAC;QAC5D,oBAAoB,EAAE,MAAM,CAAC,QAAQ,CAAC,oBAAoB,IAAI,CAAC,CAAC;QAChE,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY,IAAI,CAAC,CAAC;KACnD,CAAA;AACL,CAAC,CAAA"}
@@ -2,7 +2,7 @@ import { estimateFeesPerGas } from "viem/actions";
2
2
  import { getAction } from "../../utils/getAction.js";
3
3
  import { AccountOrClientNotFoundError, parseAccount } from "../../utils/index.js";
4
4
  import { estimateUserOperationGas } from "../bundler/estimateUserOperationGas.js";
5
- export async function prepareUserOperationRequest(client, args) {
5
+ export async function prepareUserOperationRequest(client, args, stateOverrides) {
6
6
  const { account: account_ = client.account, userOperation: partialUserOperation, sponsorUserOperation } = args;
7
7
  if (!account_)
8
8
  throw new AccountOrClientNotFoundError();
@@ -51,7 +51,7 @@ export async function prepareUserOperationRequest(client, args) {
51
51
  ...userOperation
52
52
  },
53
53
  entryPoint: account.entryPoint
54
- });
54
+ }, stateOverrides);
55
55
  userOperation.callGasLimit =
56
56
  userOperation.callGasLimit || gasParameters.callGasLimit;
57
57
  userOperation.verificationGasLimit =
@@ -1 +1 @@
1
- {"version":3,"file":"prepareUserOperationRequest.js","sourceRoot":"","sources":["../../../actions/smartAccount/prepareUserOperationRequest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prepareUserOperationRequest.js","sourceRoot":"","sources":["../../../actions/smartAccount/prepareUserOperationRequest.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import { supportedEntryPoints } from "../../actions/bundler/supportedEntryPoints
7
7
  import { waitForUserOperationReceipt } from "../../actions/bundler/waitForUserOperationReceipt.js";
8
8
  const bundlerActions = (client) => ({
9
9
  sendUserOperation: async (args) => sendUserOperation(client, args),
10
- estimateUserOperationGas: (args) => estimateUserOperationGas(client, args),
10
+ estimateUserOperationGas: (args, stateOverrides) => estimateUserOperationGas(client, args, stateOverrides),
11
11
  supportedEntryPoints: () => supportedEntryPoints(client),
12
12
  chainId: () => chainId(client),
13
13
  getUserOperationByHash: (args) => getUserOperationByHash(client, args),
@@ -1 +1 @@
1
- {"version":3,"file":"bundler.js","sourceRoot":"","sources":["../../../clients/decorators/bundler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAA;AAC1D,OAAO,EAGH,wBAAwB,EAC3B,MAAM,mDAAmD,CAAA;AAC1D,OAAO,EAGH,sBAAsB,EACzB,MAAM,iDAAiD,CAAA;AACxD,OAAO,EAGH,uBAAuB,EAC1B,MAAM,kDAAkD,CAAA;AACzD,OAAO,EAEH,iBAAiB,EACpB,MAAM,4CAA4C,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAA;AACpF,OAAO,EAEH,2BAA2B,EAC9B,MAAM,sDAAsD,CAAA;AAmL7D,MAAM,cAAc,GAAG,CAAC,MAAc,EAAkB,EAAE,CAAC,CAAC;IACxD,iBAAiB,EAAE,KAAK,EACpB,IAAiC,EACpB,EAAE,CAAC,iBAAiB,CAAC,MAAuB,EAAE,IAAI,CAAC;IACpE,wBAAwB,EAAE,CAAC,IAAwC,EAAE,EAAE,CACnE,wBAAwB,CAAC,MAAuB,EAAE,IAAI,CAAC;IAC3D,oBAAoB,EAAE,GAAuB,EAAE,CAC3C,oBAAoB,CAAC,MAAuB,CAAC;IACjD,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAuB,CAAC;IAC/C,sBAAsB,EAAE,CAAC,IAAsC,EAAE,EAAE,CAC/D,sBAAsB,CAAC,MAAuB,EAAE,IAAI,CAAC;IACzD,uBAAuB,EAAE,CAAC,IAAuC,EAAE,EAAE,CACjE,uBAAuB,CAAC,MAAuB,EAAE,IAAI,CAAC;IAC1D,2BAA2B,EAAE,CACzB,IAA2C,EAC7C,EAAE,CAAC,2BAA2B,CAAC,MAAuB,EAAE,IAAI,CAAC;CAClE,CAAC,CAAA;AAEF,OAAO,EAAE,cAAc,EAAE,CAAA"}
1
+ {"version":3,"file":"bundler.js","sourceRoot":"","sources":["../../../clients/decorators/bundler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAA;AAC1D,OAAO,EAGH,wBAAwB,EAC3B,MAAM,mDAAmD,CAAA;AAC1D,OAAO,EAGH,sBAAsB,EACzB,MAAM,iDAAiD,CAAA;AACxD,OAAO,EAGH,uBAAuB,EAC1B,MAAM,kDAAkD,CAAA;AACzD,OAAO,EAEH,iBAAiB,EACpB,MAAM,4CAA4C,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAA;AACpF,OAAO,EAEH,2BAA2B,EAC9B,MAAM,sDAAsD,CAAA;AAqL7D,MAAM,cAAc,GAAG,CAAC,MAAc,EAAkB,EAAE,CAAC,CAAC;IACxD,iBAAiB,EAAE,KAAK,EACpB,IAAiC,EACpB,EAAE,CAAC,iBAAiB,CAAC,MAAuB,EAAE,IAAI,CAAC;IACpE,wBAAwB,EAAE,CACtB,IAAwC,EACxC,cAAc,EAChB,EAAE,CACA,wBAAwB,CAAC,MAAuB,EAAE,IAAI,EAAE,cAAc,CAAC;IAC3E,oBAAoB,EAAE,GAAuB,EAAE,CAC3C,oBAAoB,CAAC,MAAuB,CAAC;IACjD,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAuB,CAAC;IAC/C,sBAAsB,EAAE,CAAC,IAAsC,EAAE,EAAE,CAC/D,sBAAsB,CAAC,MAAuB,EAAE,IAAI,CAAC;IACzD,uBAAuB,EAAE,CAAC,IAAuC,EAAE,EAAE,CACjE,uBAAuB,CAAC,MAAuB,EAAE,IAAI,CAAC;IAC1D,2BAA2B,EAAE,CACzB,IAA2C,EAC7C,EAAE,CAAC,2BAA2B,CAAC,MAAuB,EAAE,IAAI,CAAC;CAClE,CAAC,CAAA;AAEF,OAAO,EAAE,cAAc,EAAE,CAAA"}
@@ -8,10 +8,10 @@ import { signTypedData } from "../../actions/smartAccount/signTypedData.js";
8
8
  import { writeContract } from "../../actions/smartAccount/writeContract.js";
9
9
  export function smartAccountActions({ sponsorUserOperation }) {
10
10
  return (client) => ({
11
- prepareUserOperationRequest: (args) => prepareUserOperationRequest(client, {
11
+ prepareUserOperationRequest: (args, stateOverrides) => prepareUserOperationRequest(client, {
12
12
  ...args,
13
13
  sponsorUserOperation
14
- }),
14
+ }, stateOverrides),
15
15
  deployContract: (args) => deployContract(client, {
16
16
  ...args,
17
17
  sponsorUserOperation
@@ -1 +1 @@
1
- {"version":3,"file":"smartAccount.js","sourceRoot":"","sources":["../../../clients/decorators/smartAccount.ts"],"names":[],"mappings":"AAcA,OAAO,EAEH,gBAAgB,EACnB,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAEH,cAAc,EACjB,MAAM,8CAA8C,CAAA;AACrD,OAAO,EAGH,2BAA2B,EAC9B,MAAM,2DAA2D,CAAA;AAClE,OAAO,EAEH,eAAe,EAClB,MAAM,+CAA+C,CAAA;AACtD,OAAO,EAEH,iBAAiB,EACpB,MAAM,iDAAiD,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAA;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAA;AAC3E,OAAO,EAEH,aAAa,EAChB,MAAM,6CAA6C,CAAA;AAkZpD,MAAM,UAAU,mBAAmB,CAAC,EAChC,oBAAoB,EACS;IAC7B,OAAO,CAOH,MAAiD,EACP,EAAE,CAAC,CAAC;QAC9C,2BAA2B,EAAE,CAAC,IAAI,EAAE,EAAE,CAClC,2BAA2B,CAAC,MAAM,EAAE;YAChC,GAAG,IAAI;YACP,oBAAoB;SACvB,CAAC;QACN,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE,CACrB,cAAc,CAAC,MAAM,EAAE;YACnB,GAAG,IAAI;YACP,oBAAoB;SACkB,CAAC;QAC/C,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CACtB,eAAe,CAAC,MAAM,EAAE;YACpB,GAAG,IAAI;YACP,oBAAoB;SAC0C,CAAC;QACvE,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE,CACvB,gBAAgB,CAAC,MAAM,EAAE;YACrB,GAAG,IAAI;YACP,oBAAoB;SACmC,CAAC;QAChE,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CACxB,iBAAiB,CAAC,MAAM,EAAE;YACtB,GAAG,IAAI;YACP,oBAAoB;SACuB,CAAC;QACpD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC;QAChD,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC;QACpD,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CACpB,aAAa,CAAC,MAAM,EAAE;YAClB,GAAG,IAAI;YACP,oBAAoB;SACwC,CAAC;KACxE,CAAC,CAAA;AACN,CAAC"}
1
+ {"version":3,"file":"smartAccount.js","sourceRoot":"","sources":["../../../clients/decorators/smartAccount.ts"],"names":[],"mappings":"AAcA,OAAO,EAEH,gBAAgB,EACnB,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAEH,cAAc,EACjB,MAAM,8CAA8C,CAAA;AACrD,OAAO,EAGH,2BAA2B,EAC9B,MAAM,2DAA2D,CAAA;AAClE,OAAO,EAEH,eAAe,EAClB,MAAM,+CAA+C,CAAA;AACtD,OAAO,EAEH,iBAAiB,EACpB,MAAM,iDAAiD,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAA;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAA;AAC3E,OAAO,EAEH,aAAa,EAChB,MAAM,6CAA6C,CAAA;AAoZpD,MAAM,UAAU,mBAAmB,CAAC,EAChC,oBAAoB,EACS;IAC7B,OAAO,CAOH,MAAiD,EACP,EAAE,CAAC,CAAC;QAC9C,2BAA2B,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,CAClD,2BAA2B,CACvB,MAAM,EACN;YACI,GAAG,IAAI;YACP,oBAAoB;SACvB,EACD,cAAc,CACjB;QACL,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE,CACrB,cAAc,CAAC,MAAM,EAAE;YACnB,GAAG,IAAI;YACP,oBAAoB;SACkB,CAAC;QAC/C,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CACtB,eAAe,CAAC,MAAM,EAAE;YACpB,GAAG,IAAI;YACP,oBAAoB;SAC0C,CAAC;QACvE,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE,CACvB,gBAAgB,CAAC,MAAM,EAAE;YACrB,GAAG,IAAI;YACP,oBAAoB;SACmC,CAAC;QAChE,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CACxB,iBAAiB,CAAC,MAAM,EAAE;YACtB,GAAG,IAAI;YACP,oBAAoB;SACuB,CAAC;QACpD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC;QAChD,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC;QACpD,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CACpB,aAAa,CAAC,MAAM,EAAE;YAClB,GAAG,IAAI;YACP,oBAAoB;SACwC,CAAC;KACxE,CAAC,CAAA;AACN,CAAC"}
@@ -1,6 +1,6 @@
1
1
  export function getAction(client,
2
2
  // biome-ignore lint/suspicious/noExplicitAny: it's a recursive function, so it's hard to type
3
3
  action, actionName = action.name) {
4
- return (params) => client[actionName]?.(params) ?? action(client, params);
4
+ return (...params) => client[actionName]?.(...params) ?? action(client, ...params);
5
5
  }
6
6
  //# sourceMappingURL=getAction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getAction.js","sourceRoot":"","sources":["../../utils/getAction.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,SAAS,CACrB,MAAc;AACd,8FAA8F;AAC9F,MAA8C,EAC9C,aAAqB,MAAM,CAAC,IAAI;IAEhC,OAAO,CAAC,MAAc,EAAc,EAAE,CAE9B,MAGH,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AACzD,CAAC"}
1
+ {"version":3,"file":"getAction.js","sourceRoot":"","sources":["../../utils/getAction.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,SAAS,CACrB,MAAc;AACd,8FAA8F;AAC9F,MAAiD,EACjD,aAAqB,MAAM,CAAC,IAAI;IAEhC,OAAO,CAAC,GAAG,MAAc,EAAc,EAAE,CAEjC,MAGH,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAA;AAC/D,CAAC"}
@@ -2,6 +2,7 @@ import { deepHexlify, transactionReceiptStatus } from "./deepHexlify.js";
2
2
  import { getAction } from "./getAction.js";
3
3
  import { getRequiredPrefund } from "./getRequiredPrefund.js";
4
4
  import { getUserOperationHash } from "./getUserOperationHash.js";
5
+ import { isSmartAccountDeployed } from "./isSmartAccountDeployed";
5
6
  import { AccountOrClientNotFoundError, signUserOperationHashWithECDSA } from "./signUserOperationHashWithECDSA.js";
6
7
  import { walletClientToCustomSigner } from "./walletClientToCustomSigner.js";
7
8
  export function parseAccount(account) {
@@ -9,5 +10,5 @@ export function parseAccount(account) {
9
10
  return { address: account, type: "json-rpc" };
10
11
  return account;
11
12
  }
12
- export { transactionReceiptStatus, deepHexlify, getAction, getUserOperationHash, getRequiredPrefund, walletClientToCustomSigner, signUserOperationHashWithECDSA, AccountOrClientNotFoundError };
13
+ export { transactionReceiptStatus, deepHexlify, getAction, getUserOperationHash, getRequiredPrefund, walletClientToCustomSigner, signUserOperationHashWithECDSA, AccountOrClientNotFoundError, isSmartAccountDeployed };
13
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../utils/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAA;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAEH,kBAAkB,EACrB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAEH,oBAAoB,EACvB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACH,4BAA4B,EAE5B,8BAA8B,EACjC,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAA;AAE5E,MAAM,UAAU,YAAY,CAAC,OAA0B;IACnD,IAAI,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAA;IACjD,OAAO,OAAO,CAAA;AAClB,CAAC;AAED,OAAO,EACH,wBAAwB,EACxB,WAAW,EACX,SAAS,EACT,oBAAoB,EACpB,kBAAkB,EAClB,0BAA0B,EAG1B,8BAA8B,EAE9B,4BAA4B,EAC/B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../utils/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAA;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAEH,kBAAkB,EACrB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAEH,oBAAoB,EACvB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,EACH,4BAA4B,EAE5B,8BAA8B,EACjC,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAA;AAE5E,MAAM,UAAU,YAAY,CAAC,OAA0B;IACnD,IAAI,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAA;IACjD,OAAO,OAAO,CAAA;AAClB,CAAC;AAED,OAAO,EACH,wBAAwB,EACxB,WAAW,EACX,SAAS,EACT,oBAAoB,EACpB,kBAAkB,EAClB,0BAA0B,EAG1B,8BAA8B,EAE9B,4BAA4B,EAC5B,sBAAsB,EACzB,CAAA"}
@@ -0,0 +1,11 @@
1
+ import { getBytecode } from "viem/actions";
2
+ export const isSmartAccountDeployed = async (client, address) => {
3
+ const contractCode = await getBytecode(client, {
4
+ address: address
5
+ });
6
+ if ((contractCode?.length ?? 0) > 2) {
7
+ return true;
8
+ }
9
+ return false;
10
+ };
11
+ //# sourceMappingURL=isSmartAccountDeployed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isSmartAccountDeployed.js","sourceRoot":"","sources":["../../utils/isSmartAccountDeployed.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EACvC,MAAc,EACd,OAAgB,EACA,EAAE;IAClB,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE;QAC3C,OAAO,EAAE,OAAO;KACnB,CAAC,CAAA;IAEF,IAAI,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QAClC,OAAO,IAAI,CAAA;IACf,CAAC;IACD,OAAO,KAAK,CAAA;AAChB,CAAC,CAAA"}
@@ -11,9 +11,10 @@ export type BiconomySmartAccount<transport extends Transport = Transport, chain
11
11
  * @param accountLogicAddress
12
12
  * @param ecdsaModuleAddress
13
13
  */
14
- export declare function signerToBiconomySmartAccount<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TSource extends string = "custom", TAddress extends Address = Address>(client: Client<TTransport, TChain, undefined>, { signer, entryPoint, index, factoryAddress, accountLogicAddress, fallbackHandlerAddress, ecdsaModuleAddress }: {
14
+ export declare function signerToBiconomySmartAccount<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TSource extends string = "custom", TAddress extends Address = Address>(client: Client<TTransport, TChain, undefined>, { signer, address, entryPoint, index, factoryAddress, accountLogicAddress, fallbackHandlerAddress, ecdsaModuleAddress }: {
15
15
  signer: SmartAccountSigner<TSource, TAddress>;
16
16
  entryPoint: Address;
17
+ address?: Address;
17
18
  index?: bigint;
18
19
  factoryAddress?: Address;
19
20
  accountLogicAddress?: Address;
@@ -1 +1 @@
1
- {"version":3,"file":"signerToBiconomySmartAccount.d.ts","sourceRoot":"","sources":["../../../accounts/biconomy/signerToBiconomySmartAccount.ts"],"names":[],"mappings":"AACA,OAAO,EACH,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,MAAM,EAGX,KAAK,SAAS,EAUjB,MAAM,MAAM,CAAA;AAUb,OAAO,EAEH,KAAK,YAAY,EACjB,KAAK,kBAAkB,EAC1B,MAAM,aAAa,CAAA;AAOpB,MAAM,MAAM,oBAAoB,CAC5B,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IACnD,YAAY,CAAC,sBAAsB,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;AAqJ1D;;;;;;;;;GASG;AACH,wBAAsB,4BAA4B,CAC9C,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,OAAO,SAAS,MAAM,GAAG,QAAQ,EACjC,QAAQ,SAAS,OAAO,GAAG,OAAO,EAElC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAC7C,EACI,MAAM,EACN,UAAU,EACV,KAAU,EACV,cAAmD,EACnD,mBAA2D,EAC3D,sBAA4E,EAC5E,kBAAuE,EAC1E,EAAE;IACC,MAAM,EAAE,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC7C,UAAU,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC/B,GACF,OAAO,CAAC,oBAAoB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAwJnD"}
1
+ {"version":3,"file":"signerToBiconomySmartAccount.d.ts","sourceRoot":"","sources":["../../../accounts/biconomy/signerToBiconomySmartAccount.ts"],"names":[],"mappings":"AACA,OAAO,EACH,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,MAAM,EAGX,KAAK,SAAS,EAUjB,MAAM,MAAM,CAAA;AAMb,OAAO,EAEH,KAAK,YAAY,EACjB,KAAK,kBAAkB,EAC1B,MAAM,aAAa,CAAA;AAOpB,MAAM,MAAM,oBAAoB,CAC5B,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IACnD,YAAY,CAAC,sBAAsB,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;AAqJ1D;;;;;;;;;GASG;AACH,wBAAsB,4BAA4B,CAC9C,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,OAAO,SAAS,MAAM,GAAG,QAAQ,EACjC,QAAQ,SAAS,OAAO,GAAG,OAAO,EAElC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAC7C,EACI,MAAM,EACN,OAAO,EACP,UAAU,EACV,KAAU,EACV,cAAmD,EACnD,mBAA2D,EAC3D,sBAA4E,EAC5E,kBAAuE,EAC1E,EAAE;IACC,MAAM,EAAE,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC7C,UAAU,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC/B,GACF,OAAO,CAAC,oBAAoB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAiKnD"}