permissionless 0.0.27 → 0.0.28

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 (44) hide show
  1. package/CHANGELOG.md +6 -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/utils/index.js +3 -1
  11. package/_cjs/utils/index.js.map +1 -1
  12. package/_cjs/utils/isSmartAccountDeployed.js +15 -0
  13. package/_cjs/utils/isSmartAccountDeployed.js.map +1 -0
  14. package/_esm/accounts/biconomy/signerToBiconomySmartAccount.js +17 -14
  15. package/_esm/accounts/biconomy/signerToBiconomySmartAccount.js.map +1 -1
  16. package/_esm/accounts/kernel/signerToEcdsaKernelSmartAccount.js +17 -14
  17. package/_esm/accounts/kernel/signerToEcdsaKernelSmartAccount.js.map +1 -1
  18. package/_esm/accounts/signerToSafeSmartAccount.js +21 -18
  19. package/_esm/accounts/signerToSafeSmartAccount.js.map +1 -1
  20. package/_esm/accounts/signerToSimpleSmartAccount.js +16 -13
  21. package/_esm/accounts/signerToSimpleSmartAccount.js.map +1 -1
  22. package/_esm/utils/index.js +2 -1
  23. package/_esm/utils/index.js.map +1 -1
  24. package/_esm/utils/isSmartAccountDeployed.js +11 -0
  25. package/_esm/utils/isSmartAccountDeployed.js.map +1 -0
  26. package/_types/accounts/biconomy/signerToBiconomySmartAccount.d.ts +2 -1
  27. package/_types/accounts/biconomy/signerToBiconomySmartAccount.d.ts.map +1 -1
  28. package/_types/accounts/kernel/signerToEcdsaKernelSmartAccount.d.ts +2 -1
  29. package/_types/accounts/kernel/signerToEcdsaKernelSmartAccount.d.ts.map +1 -1
  30. package/_types/accounts/signerToSafeSmartAccount.d.ts +3 -2
  31. package/_types/accounts/signerToSafeSmartAccount.d.ts.map +1 -1
  32. package/_types/accounts/signerToSimpleSmartAccount.d.ts +2 -1
  33. package/_types/accounts/signerToSimpleSmartAccount.d.ts.map +1 -1
  34. package/_types/utils/index.d.ts +2 -1
  35. package/_types/utils/index.d.ts.map +1 -1
  36. package/_types/utils/isSmartAccountDeployed.d.ts +3 -0
  37. package/_types/utils/isSmartAccountDeployed.d.ts.map +1 -0
  38. package/accounts/biconomy/signerToBiconomySmartAccount.ts +25 -18
  39. package/accounts/kernel/signerToEcdsaKernelSmartAccount.ts +24 -13
  40. package/accounts/signerToSafeSmartAccount.ts +24 -18
  41. package/accounts/signerToSimpleSmartAccount.ts +25 -18
  42. package/package.json +1 -1
  43. package/utils/index.ts +3 -1
  44. package/utils/isSmartAccountDeployed.ts +16 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # permissionless
2
2
 
3
+ ## 0.0.28
4
+
5
+ ### Patch Changes
6
+
7
+ - 341b5948b44e22cd9b3dcdfd1449a76c45530d2d: Add ability to pass deployed account address to signer\*\*Account actions
8
+
3
9
  ## 0.0.27
4
10
 
5
11
  ### Patch Changes
@@ -6,6 +6,7 @@ const accounts_1 = require("viem/accounts");
6
6
  const actions_1 = require("viem/actions");
7
7
  const getAccountNonce_js_1 = require("../../actions/public/getAccountNonce.js");
8
8
  const getUserOperationHash_js_1 = require("../../utils/getUserOperationHash.js");
9
+ const isSmartAccountDeployed_js_1 = require("../../utils/isSmartAccountDeployed.js");
9
10
  const types_js_1 = require("../types.js");
10
11
  const BiconomySmartAccountAbi_js_1 = require("./abi/BiconomySmartAccountAbi.js");
11
12
  const createAccountAbi = [
@@ -87,7 +88,7 @@ const getAccountAddress = async ({ factoryAddress, accountLogicAddress, fallback
87
88
  opcode: "CREATE2"
88
89
  });
89
90
  };
90
- 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 }) {
91
+ 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 }) {
91
92
  const viemSigner = {
92
93
  ...signer,
93
94
  signTransaction: (_, __) => {
@@ -101,18 +102,20 @@ async function signerToBiconomySmartAccount(client, { signer, entryPoint, index
101
102
  ecdsaModuleAddress
102
103
  });
103
104
  const [accountAddress, chainId] = await Promise.all([
104
- getAccountAddress({
105
- owner: viemSigner.address,
106
- ecdsaModuleAddress,
107
- factoryAddress,
108
- accountLogicAddress,
109
- fallbackHandlerAddress,
110
- index
111
- }),
105
+ address ??
106
+ getAccountAddress({
107
+ owner: viemSigner.address,
108
+ ecdsaModuleAddress,
109
+ factoryAddress,
110
+ accountLogicAddress,
111
+ fallbackHandlerAddress,
112
+ index
113
+ }),
112
114
  (0, actions_1.getChainId)(client)
113
115
  ]);
114
116
  if (!accountAddress)
115
117
  throw new Error("Account address not found");
118
+ let smartAccountDeployed = await (0, isSmartAccountDeployed_js_1.isSmartAccountDeployed)(client, accountAddress);
116
119
  const account = (0, accounts_1.toAccount)({
117
120
  address: accountAddress,
118
121
  async signMessage({ message }) {
@@ -157,10 +160,10 @@ async function signerToBiconomySmartAccount(client, { signer, entryPoint, index
157
160
  return signatureWithModuleAddress;
158
161
  },
159
162
  async getInitCode() {
160
- const contractCode = await (0, actions_1.getBytecode)(client, {
161
- address: accountAddress
162
- });
163
- if ((contractCode?.length ?? 0) > 2)
163
+ if (smartAccountDeployed)
164
+ return "0x";
165
+ smartAccountDeployed = await (0, isSmartAccountDeployed_js_1.isSmartAccountDeployed)(client, accountAddress);
166
+ if (smartAccountDeployed)
164
167
  return "0x";
165
168
  return generateInitCode();
166
169
  },
@@ -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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"}
@@ -7,6 +7,7 @@ const actions_1 = require("viem/actions");
7
7
  const getAccountNonce_js_1 = require("../../actions/public/getAccountNonce.js");
8
8
  const getSenderAddress_js_1 = require("../../actions/public/getSenderAddress.js");
9
9
  const getUserOperationHash_js_1 = require("../../utils/getUserOperationHash.js");
10
+ const isSmartAccountDeployed_js_1 = require("../../utils/isSmartAccountDeployed.js");
10
11
  const types_js_1 = require("../types.js");
11
12
  const KernelAccountAbi_js_1 = require("./abi/KernelAccountAbi.js");
12
13
  const createAccountAbi = [
@@ -101,7 +102,7 @@ const getAccountAddress = async ({ client, owner, entryPoint, initCodeProvider,
101
102
  entryPoint
102
103
  });
103
104
  };
104
- 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 }) {
105
+ 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 }) {
105
106
  const viemSigner = {
106
107
  ...signer,
107
108
  signTransaction: (_, __) => {
@@ -116,18 +117,20 @@ async function signerToEcdsaKernelSmartAccount(client, { signer, entryPoint, ind
116
117
  ecdsaValidatorAddress
117
118
  });
118
119
  const [accountAddress, chainId] = await Promise.all([
119
- getAccountAddress({
120
- client,
121
- entryPoint,
122
- owner: viemSigner.address,
123
- ecdsaValidatorAddress,
124
- initCodeProvider: generateInitCode,
125
- deployedAccountAddress
126
- }),
120
+ address ??
121
+ getAccountAddress({
122
+ client,
123
+ entryPoint,
124
+ owner: viemSigner.address,
125
+ ecdsaValidatorAddress,
126
+ initCodeProvider: generateInitCode,
127
+ deployedAccountAddress
128
+ }),
127
129
  (0, actions_1.getChainId)(client)
128
130
  ]);
129
131
  if (!accountAddress)
130
132
  throw new Error("Account address not found");
133
+ let smartAccountDeployed = await (0, isSmartAccountDeployed_js_1.isSmartAccountDeployed)(client, accountAddress);
131
134
  const account = (0, accounts_1.toAccount)({
132
135
  address: accountAddress,
133
136
  async signMessage({ message }) {
@@ -171,10 +174,10 @@ async function signerToEcdsaKernelSmartAccount(client, { signer, entryPoint, ind
171
174
  return (0, viem_1.concatHex)(["0x00000000", signature]);
172
175
  },
173
176
  async getInitCode() {
174
- const contractCode = await (0, actions_1.getBytecode)(client, {
175
- address: accountAddress
176
- });
177
- if ((contractCode?.length ?? 0) > 2)
177
+ if (smartAccountDeployed)
178
+ return "0x";
179
+ smartAccountDeployed = await (0, isSmartAccountDeployed_js_1.isSmartAccountDeployed)(client, accountAddress);
180
+ if (smartAccountDeployed)
178
181
  return "0x";
179
182
  return generateInitCode();
180
183
  },
@@ -1 +1 @@
1
- {"version":3,"file":"signerToEcdsaKernelSmartAccount.js","sourceRoot":"","sources":["../../../accounts/kernel/signerToEcdsaKernelSmartAccount.ts"],"names":[],"mappings":";;;AACA,+BAWa;AACb,4CAAyC;AACzC,0CAMqB;AACrB,gFAAyE;AACzE,kFAA2E;AAC3E,iFAA0E;AAE1E,0CAGoB;AACpB,mEAA2E;AAU3E,MAAM,gBAAgB,GAAG;IACrB;QACI,MAAM,EAAE;YACJ;gBACI,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,SAAS;aAClB;YACD;gBACI,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;aAChB;YACD;gBACI,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAClB;SACJ;QACD,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE;YACL;gBACI,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;aAClB;SACJ;QACD,eAAe,EAAE,SAAS;QAC1B,IAAI,EAAE,UAAU;KACnB;CACK,CAAA;AAKV,MAAM,gBAAgB,GAIlB;IACA,eAAe,EAAE,4CAA4C;IAC7D,kBAAkB,EAAE,4CAA4C;IAChE,eAAe,EAAE,4CAA4C;CAChE,CAAA;AAUD,MAAM,kBAAkB,GAAG,KAAK,EAAE,EAC9B,KAAK,EACL,KAAK,EACL,cAAc,EACd,mBAAmB,EACnB,qBAAqB,EAOxB,EAAgB,EAAE;IACf,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAGtD,MAAM,kBAAkB,GAAG,IAAA,yBAAkB,EAAC;QAC1C,GAAG,EAAE,mCAAa;QAClB,YAAY,EAAE,YAAY;QAC1B,IAAI,EAAE,CAAC,qBAAqB,EAAE,KAAK,CAAC;KACvC,CAAC,CAAA;IAGF,OAAO,IAAA,gBAAS,EAAC;QACb,cAAc;QACd,IAAA,yBAAkB,EAAC;YACf,GAAG,EAAE,gBAAgB;YACrB,YAAY,EAAE,eAAe;YAC7B,IAAI,EAAE,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,KAAK,CAAC;SACzD,CAAQ;KACZ,CAAC,CAAA;AACN,CAAC,CAAA;AAWD,MAAM,iBAAiB,GAAG,KAAK,EAG7B,EACE,MAAM,EACN,KAAK,EACL,UAAU,EACV,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EAQzB,EAAoB,EAAE;IAEnB,IAAI,sBAAsB,KAAK,SAAS,EAAE,CAAC;QAEvC,MAAM,oBAAoB,GAAG,MAAM,IAAA,sBAAY,EAAC,MAAM,EAAE;YACpD,OAAO,EAAE,qBAAqB;YAC9B,GAAG,EAAE;gBACD;oBACI,MAAM,EAAE;wBACJ;4BACI,YAAY,EAAE,SAAS;4BACvB,IAAI,EAAE,EAAE;4BACR,IAAI,EAAE,SAAS;yBAClB;qBACJ;oBACD,IAAI,EAAE,uBAAuB;oBAC7B,OAAO,EAAE;wBACL;4BACI,YAAY,EAAE,SAAS;4BACvB,IAAI,EAAE,OAAO;4BACb,IAAI,EAAE,SAAS;yBAClB;qBACJ;oBACD,eAAe,EAAE,MAAM;oBACvB,IAAI,EAAE,UAAU;iBACnB;aACJ;YACD,YAAY,EAAE,uBAAuB;YACrC,IAAI,EAAE,CAAC,sBAAsB,CAAC;SACjC,CAAC,CAAA;QAGF,IAAI,CAAC,IAAA,qBAAc,EAAC,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;QACrE,CAAC;QAGD,OAAO,sBAAsB,CAAA;IACjC,CAAC;IAGD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,EAAE,CAAA;IAGzC,OAAO,IAAA,sCAAgB,EAAC,MAAM,EAAE;QAC5B,QAAQ;QACR,UAAU;KACb,CAAC,CAAA;AACN,CAAC,CAAA;AAaM,KAAK,UAAU,+BAA+B,CAMjD,MAA6C,EAC7C,EACI,MAAM,EACN,UAAU,EACV,KAAK,GAAG,EAAE,EACV,cAAc,GAAG,gBAAgB,CAAC,eAAe,EACjD,mBAAmB,GAAG,gBAAgB,CAAC,kBAAkB,EACzD,qBAAqB,GAAG,gBAAgB,CAAC,eAAe,EACxD,sBAAsB,EASzB;IAGD,MAAM,UAAU,GAAiB;QAC7B,GAAG,MAAM;QACT,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE;YACvB,MAAM,IAAI,oDAAyC,EAAE,CAAA;QACzD,CAAC;KACY,CAAA;IAGjB,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAC1B,kBAAkB,CAAC;QACf,KAAK,EAAE,UAAU,CAAC,OAAO;QACzB,KAAK;QACL,cAAc;QACd,mBAAmB;QACnB,qBAAqB;KACxB,CAAC,CAAA;IAGN,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAChD,iBAAiB,CAAqB;YAClC,MAAM;YACN,UAAU;YACV,KAAK,EAAE,UAAU,CAAC,OAAO;YACzB,qBAAqB;YACrB,gBAAgB,EAAE,gBAAgB;YAClC,sBAAsB;SACzB,CAAC;QACF,IAAA,oBAAU,EAAC,MAAM,CAAC;KACrB,CAAC,CAAA;IAEF,IAAI,CAAC,cAAc;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;IAGjE,MAAM,OAAO,GAAG,IAAA,oBAAS,EAAC;QACtB,OAAO,EAAE,cAAc;QACvB,KAAK,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE;YACzB,OAAO,IAAA,qBAAW,EAAC,MAAM,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAA;QAChE,CAAC;QACD,KAAK,CAAC,eAAe,CAAC,CAAC,EAAE,EAAE;YACvB,MAAM,IAAI,oDAAyC,EAAE,CAAA;QACzD,CAAC;QACD,KAAK,CAAC,aAAa,CAKjB,SAAwD;YACtD,OAAO,IAAA,uBAAa,EAChB,MAAM,EACN;gBACI,OAAO,EAAE,UAAU;gBACnB,GAAG,SAAS;aACf,CACJ,CAAA;QACL,CAAC;KACJ,CAAC,CAAA;IAEF,OAAO;QACH,GAAG,OAAO;QACV,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,cAAc;QACzB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,yBAAyB;QAGjC,KAAK,CAAC,QAAQ;YACV,OAAO,IAAA,oCAAe,EAAC,MAAM,EAAE;gBAC3B,MAAM,EAAE,cAAc;gBACtB,UAAU,EAAE,UAAU;aACzB,CAAC,CAAA;QACN,CAAC;QAGD,KAAK,CAAC,iBAAiB,CAAC,aAAa;YACjC,MAAM,IAAI,GAAG,IAAA,8CAAoB,EAAC;gBAC9B,aAAa,EAAE;oBACX,GAAG,aAAa;oBAChB,SAAS,EAAE,IAAI;iBAClB;gBACD,UAAU,EAAE,UAAU;gBACtB,OAAO,EAAE,OAAO;aACnB,CAAC,CAAA;YACF,MAAM,SAAS,GAAG,MAAM,IAAA,qBAAW,EAAC,MAAM,EAAE;gBACxC,OAAO,EAAE,UAAU;gBACnB,OAAO,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE;aACzB,CAAC,CAAA;YAEF,OAAO,IAAA,gBAAS,EAAC,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAA;QAC/C,CAAC;QAGD,KAAK,CAAC,WAAW;YACb,MAAM,YAAY,GAAG,MAAM,IAAA,qBAAW,EAAC,MAAM,EAAE;gBAC3C,OAAO,EAAE,cAAc;aAC1B,CAAC,CAAA;YAEF,IAAI,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAA;YAEhD,OAAO,gBAAgB,EAAE,CAAA;QAC7B,CAAC;QAGD,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAA;QACxE,CAAC;QAGD,KAAK,CAAC,cAAc,CAAC,GAAG;YACpB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBAErB,OAAO,IAAA,yBAAkB,EAAC;oBACtB,GAAG,EAAE,sCAAgB;oBACrB,YAAY,EAAE,cAAc;oBAC5B,IAAI,EAAE;wBACF,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;4BACb,EAAE,EAAE,EAAE,CAAC,EAAE;4BACT,KAAK,EAAE,EAAE,CAAC,KAAK;4BACf,IAAI,EAAE,EAAE,CAAC,IAAI;yBAChB,CAAC,CAAC;qBACN;iBACJ,CAAC,CAAA;YACN,CAAC;YAED,OAAO,IAAA,yBAAkB,EAAC;gBACtB,GAAG,EAAE,sCAAgB;gBACrB,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;aACzC,CAAC,CAAA;QACN,CAAC;QAGD,KAAK,CAAC,iBAAiB,CAAC,cAAc;YAClC,OAAO,8IAA8I,CAAA;QACzJ,CAAC;KACJ,CAAA;AACL,CAAC;AAjKD,0EAiKC"}
1
+ {"version":3,"file":"signerToEcdsaKernelSmartAccount.js","sourceRoot":"","sources":["../../../accounts/kernel/signerToEcdsaKernelSmartAccount.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ const viem_1 = require("viem");
5
5
  const accounts_1 = require("viem/accounts");
6
6
  const actions_1 = require("viem/actions");
7
7
  const getAccountNonce_js_1 = require("../actions/public/getAccountNonce.js");
8
+ const isSmartAccountDeployed_js_1 = require("../utils/isSmartAccountDeployed.js");
8
9
  const types_js_1 = require("./types.js");
9
10
  const EIP712_SAFE_OPERATION_TYPE = {
10
11
  SafeOp: [
@@ -293,7 +294,7 @@ const getDefaultAddresses = (safeVersion, { addModuleLibAddress: _addModuleLibAd
293
294
  multiSendCallOnlyAddress
294
295
  };
295
296
  };
296
- 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 = [] }) {
297
+ 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 = [] }) {
297
298
  const chainId = await (0, actions_1.getChainId)(client);
298
299
  const viemSigner = {
299
300
  ...signer,
@@ -309,20 +310,22 @@ async function signerToSafeSmartAccount(client, { signer, safeVersion, entryPoin
309
310
  multiSendAddress: _multiSendAddress,
310
311
  multiSendCallOnlyAddress: _multiSendCallOnlyAddress
311
312
  });
312
- const accountAddress = await getAccountAddress({
313
- client,
314
- owner: viemSigner.address,
315
- addModuleLibAddress,
316
- safe4337ModuleAddress,
317
- safeProxyFactoryAddress,
318
- safeSingletonAddress,
319
- multiSendAddress,
320
- saltNonce,
321
- setupTransactions,
322
- safeModules
323
- });
313
+ const accountAddress = address ??
314
+ (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
+ }));
324
326
  if (!accountAddress)
325
327
  throw new Error("Account address not found");
328
+ let safeDeployed = await (0, isSmartAccountDeployed_js_1.isSmartAccountDeployed)(client, accountAddress);
326
329
  const account = (0, accounts_1.toAccount)({
327
330
  address: accountAddress,
328
331
  async signMessage({ message }) {
@@ -415,10 +418,10 @@ async function signerToSafeSmartAccount(client, { signer, safeVersion, entryPoin
415
418
  return (0, viem_1.encodePacked)(["uint48", "uint48", "bytes"], [validAfter, validUntil, signatureBytes]);
416
419
  },
417
420
  async getInitCode() {
418
- const contractCode = await (0, actions_1.getBytecode)(client, {
419
- address: accountAddress
420
- });
421
- if ((contractCode?.length ?? 0) > 2)
421
+ if (safeDeployed)
422
+ return "0x";
423
+ safeDeployed = await (0, isSmartAccountDeployed_js_1.isSmartAccountDeployed)(client, accountAddress);
424
+ if (safeDeployed)
422
425
  return "0x";
423
426
  return getAccountInitCode({
424
427
  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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"}
@@ -7,6 +7,7 @@ const actions_1 = require("viem/actions");
7
7
  const getAccountNonce_js_1 = require("../actions/public/getAccountNonce.js");
8
8
  const getSenderAddress_js_1 = require("../actions/public/getSenderAddress.js");
9
9
  const getUserOperationHash_js_1 = require("../utils/getUserOperationHash.js");
10
+ const isSmartAccountDeployed_js_1 = require("../utils/isSmartAccountDeployed.js");
10
11
  const types_js_1 = require("./types.js");
11
12
  const getAccountInitCode = async (factoryAddress, owner, index = 0n) => {
12
13
  if (!owner)
@@ -52,7 +53,7 @@ const getAccountAddress = async ({ client, factoryAddress, entryPoint, owner, in
52
53
  entryPoint
53
54
  });
54
55
  };
55
- async function signerToSimpleSmartAccount(client, { signer, factoryAddress, entryPoint, index = 0n }) {
56
+ async function signerToSimpleSmartAccount(client, { signer, factoryAddress, entryPoint, index = 0n, address }) {
56
57
  const viemSigner = {
57
58
  ...signer,
58
59
  signTransaction: (_, __) => {
@@ -60,17 +61,19 @@ async function signerToSimpleSmartAccount(client, { signer, factoryAddress, entr
60
61
  }
61
62
  };
62
63
  const [accountAddress, chainId] = await Promise.all([
63
- getAccountAddress({
64
- client,
65
- factoryAddress,
66
- entryPoint,
67
- owner: viemSigner.address,
68
- index
69
- }),
64
+ address ??
65
+ getAccountAddress({
66
+ client,
67
+ factoryAddress,
68
+ entryPoint,
69
+ owner: viemSigner.address,
70
+ index
71
+ }),
70
72
  (0, actions_1.getChainId)(client)
71
73
  ]);
72
74
  if (!accountAddress)
73
75
  throw new Error("Account address not found");
76
+ let smartAccountDeployed = await (0, isSmartAccountDeployed_js_1.isSmartAccountDeployed)(client, accountAddress);
74
77
  const account = (0, accounts_1.toAccount)({
75
78
  address: accountAddress,
76
79
  async signMessage({ message }) {
@@ -110,10 +113,10 @@ async function signerToSimpleSmartAccount(client, { signer, factoryAddress, entr
110
113
  });
111
114
  },
112
115
  async getInitCode() {
113
- const contractCode = await (0, actions_1.getBytecode)(client, {
114
- address: accountAddress
115
- });
116
- if ((contractCode?.length ?? 0) > 2)
116
+ if (smartAccountDeployed)
117
+ return "0x";
118
+ smartAccountDeployed = await (0, isSmartAccountDeployed_js_1.isSmartAccountDeployed)(client, accountAddress);
119
+ if (smartAccountDeployed)
117
120
  return "0x";
118
121
  return getAccountInitCode(factoryAddress, viemSigner.address, index);
119
122
  },
@@ -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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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AccountOrClientNotFoundError = exports.signUserOperationHashWithECDSA = exports.walletClientToCustomSigner = exports.getRequiredPrefund = exports.getUserOperationHash = exports.getAction = exports.deepHexlify = exports.transactionReceiptStatus = exports.parseAccount = void 0;
3
+ exports.isSmartAccountDeployed = exports.AccountOrClientNotFoundError = exports.signUserOperationHashWithECDSA = exports.walletClientToCustomSigner = exports.getRequiredPrefund = exports.getUserOperationHash = exports.getAction = exports.deepHexlify = exports.transactionReceiptStatus = exports.parseAccount = void 0;
4
4
  const deepHexlify_js_1 = require("./deepHexlify.js");
5
5
  Object.defineProperty(exports, "deepHexlify", { enumerable: true, get: function () { return deepHexlify_js_1.deepHexlify; } });
6
6
  Object.defineProperty(exports, "transactionReceiptStatus", { enumerable: true, get: function () { return deepHexlify_js_1.transactionReceiptStatus; } });
@@ -10,6 +10,8 @@ const getRequiredPrefund_js_1 = require("./getRequiredPrefund.js");
10
10
  Object.defineProperty(exports, "getRequiredPrefund", { enumerable: true, get: function () { return getRequiredPrefund_js_1.getRequiredPrefund; } });
11
11
  const getUserOperationHash_js_1 = require("./getUserOperationHash.js");
12
12
  Object.defineProperty(exports, "getUserOperationHash", { enumerable: true, get: function () { return getUserOperationHash_js_1.getUserOperationHash; } });
13
+ const isSmartAccountDeployed_1 = require("./isSmartAccountDeployed");
14
+ Object.defineProperty(exports, "isSmartAccountDeployed", { enumerable: true, get: function () { return isSmartAccountDeployed_1.isSmartAccountDeployed; } });
13
15
  const signUserOperationHashWithECDSA_js_1 = require("./signUserOperationHashWithECDSA.js");
14
16
  Object.defineProperty(exports, "AccountOrClientNotFoundError", { enumerable: true, get: function () { return signUserOperationHashWithECDSA_js_1.AccountOrClientNotFoundError; } });
15
17
  Object.defineProperty(exports, "signUserOperationHashWithECDSA", { enumerable: true, get: function () { return signUserOperationHashWithECDSA_js_1.signUserOperationHashWithECDSA; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../utils/index.ts"],"names":[],"mappings":";;;AACA,qDAAwE;AAyBpE,4FAzBK,4BAAW,OAyBL;AADX,yGAxBkB,yCAAwB,OAwBlB;AAvB5B,iDAA0C;AAyBtC,0FAzBK,wBAAS,OAyBL;AAxBb,mEAGgC;AAuB5B,mGAxBA,0CAAkB,OAwBA;AAtBtB,uEAGkC;AAkB9B,qGAnBA,8CAAoB,OAmBA;AAjBxB,2FAI4C;AAoBxC,6GAvBA,gEAA4B,OAuBA;AAF5B,+GAnBA,kEAA8B,OAmBA;AAjBlC,mFAA4E;AAcxE,2GAdK,0DAA0B,OAcL;AAZ9B,SAAgB,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;AAJD,oCAIC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../utils/index.ts"],"names":[],"mappings":";;;AACA,qDAAwE;AA0BpE,4FA1BK,4BAAW,OA0BL;AADX,yGAzBkB,yCAAwB,OAyBlB;AAxB5B,iDAA0C;AA0BtC,0FA1BK,wBAAS,OA0BL;AAzBb,mEAGgC;AAwB5B,mGAzBA,0CAAkB,OAyBA;AAvBtB,uEAGkC;AAmB9B,qGApBA,8CAAoB,OAoBA;AAlBxB,qEAAiE;AA0B7D,uGA1BK,+CAAsB,OA0BL;AAzB1B,2FAI4C;AAoBxC,6GAvBA,gEAA4B,OAuBA;AAF5B,+GAnBA,kEAA8B,OAmBA;AAjBlC,mFAA4E;AAcxE,2GAdK,0DAA0B,OAcL;AAZ9B,SAAgB,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;AAJD,oCAIC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isSmartAccountDeployed = void 0;
4
+ const actions_1 = require("viem/actions");
5
+ const isSmartAccountDeployed = async (client, address) => {
6
+ const contractCode = await (0, actions_1.getBytecode)(client, {
7
+ address: address
8
+ });
9
+ if ((contractCode?.length ?? 0) > 2) {
10
+ return true;
11
+ }
12
+ return false;
13
+ };
14
+ exports.isSmartAccountDeployed = isSmartAccountDeployed;
15
+ //# sourceMappingURL=isSmartAccountDeployed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isSmartAccountDeployed.js","sourceRoot":"","sources":["../../utils/isSmartAccountDeployed.ts"],"names":[],"mappings":";;;AACA,0CAA0C;AAEnC,MAAM,sBAAsB,GAAG,KAAK,EACvC,MAAc,EACd,OAAgB,EACA,EAAE;IAClB,MAAM,YAAY,GAAG,MAAM,IAAA,qBAAW,EAAC,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;AAZY,QAAA,sBAAsB,0BAYlC"}
@@ -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
  },