permissionless 0.1.48 → 0.1.49

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 (711) hide show
  1. package/_cjs/accounts/biconomy/abi/BiconomySmartAccountAbi.js +102 -0
  2. package/_cjs/accounts/biconomy/abi/BiconomySmartAccountAbi.js.map +1 -0
  3. package/_cjs/accounts/biconomy/privateKeyToBiconomySmartAccount.js +14 -0
  4. package/_cjs/accounts/biconomy/privateKeyToBiconomySmartAccount.js.map +1 -0
  5. package/_cjs/accounts/biconomy/signerToBiconomySmartAccount.js +233 -0
  6. package/_cjs/accounts/biconomy/signerToBiconomySmartAccount.js.map +1 -0
  7. package/_cjs/accounts/index.js +30 -0
  8. package/_cjs/accounts/index.js.map +1 -0
  9. package/_cjs/accounts/kernel/abi/KernelAccountAbi.js +84 -0
  10. package/_cjs/accounts/kernel/abi/KernelAccountAbi.js.map +1 -0
  11. package/_cjs/accounts/kernel/abi/KernelV3AccountAbi.js +110 -0
  12. package/_cjs/accounts/kernel/abi/KernelV3AccountAbi.js.map +1 -0
  13. package/_cjs/accounts/kernel/abi/KernelV3MetaFactoryAbi.js +21 -0
  14. package/_cjs/accounts/kernel/abi/KernelV3MetaFactoryAbi.js.map +1 -0
  15. package/_cjs/accounts/kernel/constants.js +27 -0
  16. package/_cjs/accounts/kernel/constants.js.map +1 -0
  17. package/_cjs/accounts/kernel/signerToEcdsaKernelSmartAccount.js +332 -0
  18. package/_cjs/accounts/kernel/signerToEcdsaKernelSmartAccount.js.map +1 -0
  19. package/_cjs/accounts/kernel/utils/encodeCallData.js +90 -0
  20. package/_cjs/accounts/kernel/utils/encodeCallData.js.map +1 -0
  21. package/_cjs/accounts/kernel/utils/getExecMode.js +15 -0
  22. package/_cjs/accounts/kernel/utils/getExecMode.js.map +1 -0
  23. package/_cjs/accounts/kernel/utils/getNonceKey.js +25 -0
  24. package/_cjs/accounts/kernel/utils/getNonceKey.js.map +1 -0
  25. package/_cjs/accounts/kernel/utils/isKernelV2.js +9 -0
  26. package/_cjs/accounts/kernel/utils/isKernelV2.js.map +1 -0
  27. package/_cjs/accounts/kernel/utils/signMessage.js +29 -0
  28. package/_cjs/accounts/kernel/utils/signMessage.js.map +1 -0
  29. package/_cjs/accounts/kernel/utils/signTypedData.js +41 -0
  30. package/_cjs/accounts/kernel/utils/signTypedData.js.map +1 -0
  31. package/_cjs/accounts/kernel/utils/wrapMessageHash.js +20 -0
  32. package/_cjs/accounts/kernel/utils/wrapMessageHash.js.map +1 -0
  33. package/_cjs/accounts/light/privateKeyToLightSmartAccount.js +14 -0
  34. package/_cjs/accounts/light/privateKeyToLightSmartAccount.js.map +1 -0
  35. package/_cjs/accounts/light/signerToLightSmartAccount.js +256 -0
  36. package/_cjs/accounts/light/signerToLightSmartAccount.js.map +1 -0
  37. package/_cjs/accounts/safe/privateKeyToSafeSmartAccount.js +14 -0
  38. package/_cjs/accounts/safe/privateKeyToSafeSmartAccount.js.map +1 -0
  39. package/_cjs/accounts/safe/signerToSafeSmartAccount.js +1012 -0
  40. package/_cjs/accounts/safe/signerToSafeSmartAccount.js.map +1 -0
  41. package/_cjs/accounts/simple/privateKeyToSimpleSmartAccount.js +14 -0
  42. package/_cjs/accounts/simple/privateKeyToSimpleSmartAccount.js.map +1 -0
  43. package/_cjs/accounts/simple/signerToSimpleSmartAccount.js +259 -0
  44. package/_cjs/accounts/simple/signerToSimpleSmartAccount.js.map +1 -0
  45. package/_cjs/accounts/toSmartAccount.js +84 -0
  46. package/_cjs/accounts/toSmartAccount.js.map +1 -0
  47. package/_cjs/accounts/trust/privateKeyToTrustSmartAccount.js +14 -0
  48. package/_cjs/accounts/trust/privateKeyToTrustSmartAccount.js.map +1 -0
  49. package/_cjs/accounts/trust/signerToTrustSmartAccount.js +134 -0
  50. package/_cjs/accounts/trust/signerToTrustSmartAccount.js.map +1 -0
  51. package/_cjs/accounts/trust/utils/encodeCallData.js +74 -0
  52. package/_cjs/accounts/trust/utils/encodeCallData.js.map +1 -0
  53. package/_cjs/accounts/trust/utils/getAccountAddress.js +19 -0
  54. package/_cjs/accounts/trust/utils/getAccountAddress.js.map +1 -0
  55. package/_cjs/accounts/trust/utils/getDummySignature.js +8 -0
  56. package/_cjs/accounts/trust/utils/getDummySignature.js.map +1 -0
  57. package/_cjs/accounts/trust/utils/getFactoryData.js +43 -0
  58. package/_cjs/accounts/trust/utils/getFactoryData.js.map +1 -0
  59. package/_cjs/accounts/trust/utils/signMessage.js +9 -0
  60. package/_cjs/accounts/trust/utils/signMessage.js.map +1 -0
  61. package/_cjs/accounts/trust/utils/signTransaction.js +9 -0
  62. package/_cjs/accounts/trust/utils/signTransaction.js.map +1 -0
  63. package/_cjs/accounts/trust/utils/signUserOperation.js +19 -0
  64. package/_cjs/accounts/trust/utils/signUserOperation.js.map +1 -0
  65. package/_cjs/accounts/types.js +23 -0
  66. package/_cjs/accounts/types.js.map +1 -0
  67. package/_cjs/actions/bundler/chainId.js +11 -0
  68. package/_cjs/actions/bundler/chainId.js.map +1 -0
  69. package/_cjs/actions/bundler/estimateUserOperationGas.js +49 -0
  70. package/_cjs/actions/bundler/estimateUserOperationGas.js.map +1 -0
  71. package/_cjs/actions/bundler/getUserOperationByHash.js +47 -0
  72. package/_cjs/actions/bundler/getUserOperationByHash.js.map +1 -0
  73. package/_cjs/actions/bundler/getUserOperationReceipt.js +52 -0
  74. package/_cjs/actions/bundler/getUserOperationReceipt.js.map +1 -0
  75. package/_cjs/actions/bundler/sendUserOperation.js +23 -0
  76. package/_cjs/actions/bundler/sendUserOperation.js.map +1 -0
  77. package/_cjs/actions/bundler/supportedEntryPoints.js +11 -0
  78. package/_cjs/actions/bundler/supportedEntryPoints.js.map +1 -0
  79. package/_cjs/actions/bundler/waitForUserOperationReceipt.js +67 -0
  80. package/_cjs/actions/bundler/waitForUserOperationReceipt.js.map +1 -0
  81. package/_cjs/actions/erc7579/accountId.js +66 -0
  82. package/_cjs/actions/erc7579/accountId.js.map +1 -0
  83. package/_cjs/actions/erc7579/installModule.js +65 -0
  84. package/_cjs/actions/erc7579/installModule.js.map +1 -0
  85. package/_cjs/actions/erc7579/installModules.js +65 -0
  86. package/_cjs/actions/erc7579/installModules.js.map +1 -0
  87. package/_cjs/actions/erc7579/isModuleInstalled.js +86 -0
  88. package/_cjs/actions/erc7579/isModuleInstalled.js.map +1 -0
  89. package/_cjs/actions/erc7579/supportsExecutionMode.js +95 -0
  90. package/_cjs/actions/erc7579/supportsExecutionMode.js.map +1 -0
  91. package/_cjs/actions/erc7579/supportsModule.js +84 -0
  92. package/_cjs/actions/erc7579/supportsModule.js.map +1 -0
  93. package/_cjs/actions/erc7579/uninstallModule.js +65 -0
  94. package/_cjs/actions/erc7579/uninstallModule.js.map +1 -0
  95. package/_cjs/actions/erc7579/uninstallModules.js +65 -0
  96. package/_cjs/actions/erc7579/uninstallModules.js.map +1 -0
  97. package/_cjs/actions/erc7579.js +33 -0
  98. package/_cjs/actions/erc7579.js.map +1 -0
  99. package/_cjs/actions/index.js +25 -0
  100. package/_cjs/actions/index.js.map +1 -0
  101. package/_cjs/actions/pimlico/getUserOperationGasPrice.js +25 -0
  102. package/_cjs/actions/pimlico/getUserOperationGasPrice.js.map +1 -0
  103. package/_cjs/actions/pimlico/getUserOperationStatus.js +11 -0
  104. package/_cjs/actions/pimlico/getUserOperationStatus.js.map +1 -0
  105. package/_cjs/actions/pimlico/sendCompressedUserOperation.js +16 -0
  106. package/_cjs/actions/pimlico/sendCompressedUserOperation.js.map +1 -0
  107. package/_cjs/actions/pimlico/sponsorUserOperation.js +43 -0
  108. package/_cjs/actions/pimlico/sponsorUserOperation.js.map +1 -0
  109. package/_cjs/actions/pimlico/validateSponsorshipPolicies.js +16 -0
  110. package/_cjs/actions/pimlico/validateSponsorshipPolicies.js.map +1 -0
  111. package/_cjs/actions/pimlico.js +17 -0
  112. package/_cjs/actions/pimlico.js.map +1 -0
  113. package/_cjs/actions/public/getAccountNonce.js +38 -0
  114. package/_cjs/actions/public/getAccountNonce.js.map +1 -0
  115. package/_cjs/actions/public/getSenderAddress.js +59 -0
  116. package/_cjs/actions/public/getSenderAddress.js.map +1 -0
  117. package/_cjs/actions/smartAccount/deployContract.js +38 -0
  118. package/_cjs/actions/smartAccount/deployContract.js.map +1 -0
  119. package/_cjs/actions/smartAccount/prepareUserOperationRequest.js +195 -0
  120. package/_cjs/actions/smartAccount/prepareUserOperationRequest.js.map +1 -0
  121. package/_cjs/actions/smartAccount/sendTransaction.js +43 -0
  122. package/_cjs/actions/smartAccount/sendTransaction.js.map +1 -0
  123. package/_cjs/actions/smartAccount/sendTransactions.js +45 -0
  124. package/_cjs/actions/smartAccount/sendTransactions.js.map +1 -0
  125. package/_cjs/actions/smartAccount/sendUserOperation.js +21 -0
  126. package/_cjs/actions/smartAccount/sendUserOperation.js.map +1 -0
  127. package/_cjs/actions/smartAccount/signMessage.js +16 -0
  128. package/_cjs/actions/smartAccount/signMessage.js.map +1 -0
  129. package/_cjs/actions/smartAccount/signTypedData.js +34 -0
  130. package/_cjs/actions/smartAccount/signTypedData.js.map +1 -0
  131. package/_cjs/actions/smartAccount/writeContract.js +21 -0
  132. package/_cjs/actions/smartAccount/writeContract.js.map +1 -0
  133. package/_cjs/actions/smartAccount.js +20 -0
  134. package/_cjs/actions/smartAccount.js.map +1 -0
  135. package/_cjs/actions/stackup/accounts.js +12 -0
  136. package/_cjs/actions/stackup/accounts.js.map +1 -0
  137. package/_cjs/actions/stackup/sponsorUserOperation.js +32 -0
  138. package/_cjs/actions/stackup/sponsorUserOperation.js.map +1 -0
  139. package/_cjs/actions/stackup.js +10 -0
  140. package/_cjs/actions/stackup.js.map +1 -0
  141. package/_cjs/clients/createBundlerClient.js +17 -0
  142. package/_cjs/clients/createBundlerClient.js.map +1 -0
  143. package/_cjs/clients/createSmartAccountClient.js +20 -0
  144. package/_cjs/clients/createSmartAccountClient.js.map +1 -0
  145. package/_cjs/clients/decorators/bundler.js +24 -0
  146. package/_cjs/clients/decorators/bundler.js.map +1 -0
  147. package/_cjs/clients/decorators/pimlico.js +25 -0
  148. package/_cjs/clients/decorators/pimlico.js.map +1 -0
  149. package/_cjs/clients/decorators/smartAccount.js +43 -0
  150. package/_cjs/clients/decorators/smartAccount.js.map +1 -0
  151. package/_cjs/clients/decorators/stackup.js +14 -0
  152. package/_cjs/clients/decorators/stackup.js.map +1 -0
  153. package/_cjs/clients/pimlico.js +31 -0
  154. package/_cjs/clients/pimlico.js.map +1 -0
  155. package/_cjs/clients/stackup.js +20 -0
  156. package/_cjs/clients/stackup.js.map +1 -0
  157. package/_cjs/errors/account.js +311 -0
  158. package/_cjs/errors/account.js.map +1 -0
  159. package/_cjs/errors/bundler.js +61 -0
  160. package/_cjs/errors/bundler.js.map +1 -0
  161. package/_cjs/errors/estimateUserOperationGas.js +53 -0
  162. package/_cjs/errors/estimateUserOperationGas.js.map +1 -0
  163. package/_cjs/errors/gas.js +113 -0
  164. package/_cjs/errors/gas.js.map +1 -0
  165. package/_cjs/errors/index.js +35 -0
  166. package/_cjs/errors/index.js.map +1 -0
  167. package/_cjs/errors/paymaster.js +228 -0
  168. package/_cjs/errors/paymaster.js.map +1 -0
  169. package/_cjs/errors/sendUserOperation.js +37 -0
  170. package/_cjs/errors/sendUserOperation.js.map +1 -0
  171. package/_cjs/errors/utils.js +18 -0
  172. package/_cjs/errors/utils.js.map +1 -0
  173. package/_cjs/experimental/eip7677/actions/getPaymasterData.js +41 -0
  174. package/_cjs/experimental/eip7677/actions/getPaymasterData.js.map +1 -0
  175. package/_cjs/experimental/eip7677/actions/getPaymasterStubData.js +51 -0
  176. package/_cjs/experimental/eip7677/actions/getPaymasterStubData.js.map +1 -0
  177. package/_cjs/experimental/eip7677/clients/decorators/paymasterActionsEip7677.js +21 -0
  178. package/_cjs/experimental/eip7677/clients/decorators/paymasterActionsEip7677.js.map +1 -0
  179. package/_cjs/experimental/eip7677/index.js +10 -0
  180. package/_cjs/experimental/eip7677/index.js.map +1 -0
  181. package/_cjs/experimental/eip7677/types/paymaster.js +3 -0
  182. package/_cjs/experimental/eip7677/types/paymaster.js.map +1 -0
  183. package/_cjs/experimental/index.js +5 -0
  184. package/_cjs/experimental/index.js.map +1 -0
  185. package/_cjs/index.js +37 -0
  186. package/_cjs/index.js.map +1 -0
  187. package/_cjs/package.json +1 -0
  188. package/_cjs/types/bundler.js +3 -0
  189. package/_cjs/types/bundler.js.map +1 -0
  190. package/_cjs/types/entrypoint.js +3 -0
  191. package/_cjs/types/entrypoint.js.map +1 -0
  192. package/_cjs/types/index.js +3 -0
  193. package/_cjs/types/index.js.map +1 -0
  194. package/_cjs/types/pimlico.js +3 -0
  195. package/_cjs/types/pimlico.js.map +1 -0
  196. package/_cjs/types/stackup.js +3 -0
  197. package/_cjs/types/stackup.js.map +1 -0
  198. package/_cjs/types/userOperation.js +3 -0
  199. package/_cjs/types/userOperation.js.map +1 -0
  200. package/_cjs/utils/decodeNonce.js +12 -0
  201. package/_cjs/utils/decodeNonce.js.map +1 -0
  202. package/_cjs/utils/deepHexlify.js +31 -0
  203. package/_cjs/utils/deepHexlify.js.map +1 -0
  204. package/_cjs/utils/encode7579CallData.js +81 -0
  205. package/_cjs/utils/encode7579CallData.js.map +1 -0
  206. package/_cjs/utils/encodeNonce.js +11 -0
  207. package/_cjs/utils/encodeNonce.js.map +1 -0
  208. package/_cjs/utils/errors/getBundlerError.js +124 -0
  209. package/_cjs/utils/errors/getBundlerError.js.map +1 -0
  210. package/_cjs/utils/errors/getEstimateUserOperationGasError.js +19 -0
  211. package/_cjs/utils/errors/getEstimateUserOperationGasError.js.map +1 -0
  212. package/_cjs/utils/errors/getSendUserOperationError.js +19 -0
  213. package/_cjs/utils/errors/getSendUserOperationError.js.map +1 -0
  214. package/_cjs/utils/getAddressFromInitCodeOrPaymasterAndData.js +15 -0
  215. package/_cjs/utils/getAddressFromInitCodeOrPaymasterAndData.js.map +1 -0
  216. package/_cjs/utils/getEntryPointVersion.js +16 -0
  217. package/_cjs/utils/getEntryPointVersion.js.map +1 -0
  218. package/_cjs/utils/getPackedUserOperation.js +106 -0
  219. package/_cjs/utils/getPackedUserOperation.js.map +1 -0
  220. package/_cjs/utils/getRequiredPrefund.js +27 -0
  221. package/_cjs/utils/getRequiredPrefund.js.map +1 -0
  222. package/_cjs/utils/getUserOperationHash.js +94 -0
  223. package/_cjs/utils/getUserOperationHash.js.map +1 -0
  224. package/_cjs/utils/index.js +38 -0
  225. package/_cjs/utils/index.js.map +1 -0
  226. package/_cjs/utils/isSmartAccountDeployed.js +15 -0
  227. package/_cjs/utils/isSmartAccountDeployed.js.map +1 -0
  228. package/_cjs/utils/observe.js +44 -0
  229. package/_cjs/utils/observe.js.map +1 -0
  230. package/_cjs/utils/providerToSmartAccountSigner.js +32 -0
  231. package/_cjs/utils/providerToSmartAccountSigner.js.map +1 -0
  232. package/_cjs/utils/signUserOperationHashWithECDSA.js +58 -0
  233. package/_cjs/utils/signUserOperationHashWithECDSA.js.map +1 -0
  234. package/_cjs/utils/walletClientToSmartAccountSigner.js +23 -0
  235. package/_cjs/utils/walletClientToSmartAccountSigner.js.map +1 -0
  236. package/_cjs/vitest.config.js +31 -0
  237. package/_cjs/vitest.config.js.map +1 -0
  238. package/_esm/accounts/biconomy/abi/BiconomySmartAccountAbi.js +105 -0
  239. package/_esm/accounts/biconomy/abi/BiconomySmartAccountAbi.js.map +1 -0
  240. package/_esm/accounts/biconomy/privateKeyToBiconomySmartAccount.js +15 -0
  241. package/_esm/accounts/biconomy/privateKeyToBiconomySmartAccount.js.map +1 -0
  242. package/_esm/accounts/biconomy/signerToBiconomySmartAccount.js +268 -0
  243. package/_esm/accounts/biconomy/signerToBiconomySmartAccount.js.map +1 -0
  244. package/_esm/accounts/index.js +15 -0
  245. package/_esm/accounts/index.js.map +1 -0
  246. package/_esm/accounts/kernel/abi/KernelAccountAbi.js +87 -0
  247. package/_esm/accounts/kernel/abi/KernelAccountAbi.js.map +1 -0
  248. package/_esm/accounts/kernel/abi/KernelV3AccountAbi.js +107 -0
  249. package/_esm/accounts/kernel/abi/KernelV3AccountAbi.js.map +1 -0
  250. package/_esm/accounts/kernel/abi/KernelV3MetaFactoryAbi.js +18 -0
  251. package/_esm/accounts/kernel/abi/KernelV3MetaFactoryAbi.js.map +1 -0
  252. package/_esm/accounts/kernel/constants.js +24 -0
  253. package/_esm/accounts/kernel/constants.js.map +1 -0
  254. package/_esm/accounts/kernel/signerToEcdsaKernelSmartAccount.js +395 -0
  255. package/_esm/accounts/kernel/signerToEcdsaKernelSmartAccount.js.map +1 -0
  256. package/_esm/accounts/kernel/utils/encodeCallData.js +89 -0
  257. package/_esm/accounts/kernel/utils/encodeCallData.js.map +1 -0
  258. package/_esm/accounts/kernel/utils/getExecMode.js +11 -0
  259. package/_esm/accounts/kernel/utils/getExecMode.js.map +1 -0
  260. package/_esm/accounts/kernel/utils/getNonceKey.js +21 -0
  261. package/_esm/accounts/kernel/utils/getNonceKey.js.map +1 -0
  262. package/_esm/accounts/kernel/utils/isKernelV2.js +5 -0
  263. package/_esm/accounts/kernel/utils/isKernelV2.js.map +1 -0
  264. package/_esm/accounts/kernel/utils/signMessage.js +25 -0
  265. package/_esm/accounts/kernel/utils/signMessage.js.map +1 -0
  266. package/_esm/accounts/kernel/utils/signTypedData.js +39 -0
  267. package/_esm/accounts/kernel/utils/signTypedData.js.map +1 -0
  268. package/_esm/accounts/kernel/utils/wrapMessageHash.js +16 -0
  269. package/_esm/accounts/kernel/utils/wrapMessageHash.js.map +1 -0
  270. package/_esm/accounts/light/privateKeyToLightSmartAccount.js +15 -0
  271. package/_esm/accounts/light/privateKeyToLightSmartAccount.js.map +1 -0
  272. package/_esm/accounts/light/signerToLightSmartAccount.js +258 -0
  273. package/_esm/accounts/light/signerToLightSmartAccount.js.map +1 -0
  274. package/_esm/accounts/safe/privateKeyToSafeSmartAccount.js +15 -0
  275. package/_esm/accounts/safe/privateKeyToSafeSmartAccount.js.map +1 -0
  276. package/_esm/accounts/safe/signerToSafeSmartAccount.js +1014 -0
  277. package/_esm/accounts/safe/signerToSafeSmartAccount.js.map +1 -0
  278. package/_esm/accounts/simple/privateKeyToSimpleSmartAccount.js +15 -0
  279. package/_esm/accounts/simple/privateKeyToSimpleSmartAccount.js.map +1 -0
  280. package/_esm/accounts/simple/signerToSimpleSmartAccount.js +261 -0
  281. package/_esm/accounts/simple/signerToSimpleSmartAccount.js.map +1 -0
  282. package/_esm/accounts/toSmartAccount.js +80 -0
  283. package/_esm/accounts/toSmartAccount.js.map +1 -0
  284. package/_esm/accounts/trust/privateKeyToTrustSmartAccount.js +15 -0
  285. package/_esm/accounts/trust/privateKeyToTrustSmartAccount.js.map +1 -0
  286. package/_esm/accounts/trust/signerToTrustSmartAccount.js +138 -0
  287. package/_esm/accounts/trust/signerToTrustSmartAccount.js.map +1 -0
  288. package/_esm/accounts/trust/utils/encodeCallData.js +70 -0
  289. package/_esm/accounts/trust/utils/encodeCallData.js.map +1 -0
  290. package/_esm/accounts/trust/utils/getAccountAddress.js +15 -0
  291. package/_esm/accounts/trust/utils/getAccountAddress.js.map +1 -0
  292. package/_esm/accounts/trust/utils/getDummySignature.js +4 -0
  293. package/_esm/accounts/trust/utils/getDummySignature.js.map +1 -0
  294. package/_esm/accounts/trust/utils/getFactoryData.js +42 -0
  295. package/_esm/accounts/trust/utils/getFactoryData.js.map +1 -0
  296. package/_esm/accounts/trust/utils/signMessage.js +5 -0
  297. package/_esm/accounts/trust/utils/signMessage.js.map +1 -0
  298. package/_esm/accounts/trust/utils/signTransaction.js +5 -0
  299. package/_esm/accounts/trust/utils/signTransaction.js.map +1 -0
  300. package/_esm/accounts/trust/utils/signUserOperation.js +15 -0
  301. package/_esm/accounts/trust/utils/signUserOperation.js.map +1 -0
  302. package/_esm/accounts/types.js +19 -0
  303. package/_esm/accounts/types.js.map +1 -0
  304. package/_esm/actions/bundler/chainId.js +29 -0
  305. package/_esm/actions/bundler/chainId.js.map +1 -0
  306. package/_esm/actions/bundler/estimateUserOperationGas.js +72 -0
  307. package/_esm/actions/bundler/estimateUserOperationGas.js.map +1 -0
  308. package/_esm/actions/bundler/getUserOperationByHash.js +65 -0
  309. package/_esm/actions/bundler/getUserOperationByHash.js.map +1 -0
  310. package/_esm/actions/bundler/getUserOperationReceipt.js +70 -0
  311. package/_esm/actions/bundler/getUserOperationReceipt.js.map +1 -0
  312. package/_esm/actions/bundler/sendUserOperation.js +44 -0
  313. package/_esm/actions/bundler/sendUserOperation.js.map +1 -0
  314. package/_esm/actions/bundler/supportedEntryPoints.js +29 -0
  315. package/_esm/actions/bundler/supportedEntryPoints.js.map +1 -0
  316. package/_esm/actions/bundler/waitForUserOperationReceipt.js +83 -0
  317. package/_esm/actions/bundler/waitForUserOperationReceipt.js.map +1 -0
  318. package/_esm/actions/erc7579/accountId.js +62 -0
  319. package/_esm/actions/erc7579/accountId.js.map +1 -0
  320. package/_esm/actions/erc7579/installModule.js +61 -0
  321. package/_esm/actions/erc7579/installModule.js.map +1 -0
  322. package/_esm/actions/erc7579/installModules.js +61 -0
  323. package/_esm/actions/erc7579/installModules.js.map +1 -0
  324. package/_esm/actions/erc7579/isModuleInstalled.js +82 -0
  325. package/_esm/actions/erc7579/isModuleInstalled.js.map +1 -0
  326. package/_esm/actions/erc7579/supportsExecutionMode.js +90 -0
  327. package/_esm/actions/erc7579/supportsExecutionMode.js.map +1 -0
  328. package/_esm/actions/erc7579/supportsModule.js +79 -0
  329. package/_esm/actions/erc7579/supportsModule.js.map +1 -0
  330. package/_esm/actions/erc7579/uninstallModule.js +61 -0
  331. package/_esm/actions/erc7579/uninstallModule.js.map +1 -0
  332. package/_esm/actions/erc7579/uninstallModules.js +61 -0
  333. package/_esm/actions/erc7579/uninstallModules.js.map +1 -0
  334. package/_esm/actions/erc7579.js +22 -0
  335. package/_esm/actions/erc7579.js.map +1 -0
  336. package/_esm/actions/index.js +12 -0
  337. package/_esm/actions/index.js.map +1 -0
  338. package/_esm/actions/pimlico/getUserOperationGasPrice.js +42 -0
  339. package/_esm/actions/pimlico/getUserOperationGasPrice.js.map +1 -0
  340. package/_esm/actions/pimlico/getUserOperationStatus.js +30 -0
  341. package/_esm/actions/pimlico/getUserOperationStatus.js.map +1 -0
  342. package/_esm/actions/pimlico/sendCompressedUserOperation.js +37 -0
  343. package/_esm/actions/pimlico/sendCompressedUserOperation.js.map +1 -0
  344. package/_esm/actions/pimlico/sponsorUserOperation.js +64 -0
  345. package/_esm/actions/pimlico/sponsorUserOperation.js.map +1 -0
  346. package/_esm/actions/pimlico/validateSponsorshipPolicies.js +47 -0
  347. package/_esm/actions/pimlico/validateSponsorshipPolicies.js.map +1 -0
  348. package/_esm/actions/pimlico.js +8 -0
  349. package/_esm/actions/pimlico.js.map +1 -0
  350. package/_esm/actions/public/getAccountNonce.js +60 -0
  351. package/_esm/actions/public/getAccountNonce.js.map +1 -0
  352. package/_esm/actions/public/getSenderAddress.js +80 -0
  353. package/_esm/actions/public/getSenderAddress.js.map +1 -0
  354. package/_esm/actions/smartAccount/deployContract.js +62 -0
  355. package/_esm/actions/smartAccount/deployContract.js.map +1 -0
  356. package/_esm/actions/smartAccount/prepareUserOperationRequest.js +195 -0
  357. package/_esm/actions/smartAccount/prepareUserOperationRequest.js.map +1 -0
  358. package/_esm/actions/smartAccount/sendTransaction.js +85 -0
  359. package/_esm/actions/smartAccount/sendTransaction.js.map +1 -0
  360. package/_esm/actions/smartAccount/sendTransactions.js +87 -0
  361. package/_esm/actions/smartAccount/sendTransactions.js.map +1 -0
  362. package/_esm/actions/smartAccount/sendUserOperation.js +17 -0
  363. package/_esm/actions/smartAccount/sendUserOperation.js.map +1 -0
  364. package/_esm/actions/smartAccount/signMessage.js +58 -0
  365. package/_esm/actions/smartAccount/signMessage.js.map +1 -0
  366. package/_esm/actions/smartAccount/signTypedData.js +128 -0
  367. package/_esm/actions/smartAccount/signTypedData.js.map +1 -0
  368. package/_esm/actions/smartAccount/writeContract.js +17 -0
  369. package/_esm/actions/smartAccount/writeContract.js.map +1 -0
  370. package/_esm/actions/smartAccount.js +10 -0
  371. package/_esm/actions/smartAccount.js.map +1 -0
  372. package/_esm/actions/stackup/accounts.js +30 -0
  373. package/_esm/actions/stackup/accounts.js.map +1 -0
  374. package/_esm/actions/stackup/sponsorUserOperation.js +53 -0
  375. package/_esm/actions/stackup/sponsorUserOperation.js.map +1 -0
  376. package/_esm/actions/stackup.js +5 -0
  377. package/_esm/actions/stackup.js.map +1 -0
  378. package/_esm/clients/createBundlerClient.js +32 -0
  379. package/_esm/clients/createBundlerClient.js.map +1 -0
  380. package/_esm/clients/createSmartAccountClient.js +35 -0
  381. package/_esm/clients/createSmartAccountClient.js.map +1 -0
  382. package/_esm/clients/decorators/bundler.js +21 -0
  383. package/_esm/clients/decorators/bundler.js.map +1 -0
  384. package/_esm/clients/decorators/pimlico.js +64 -0
  385. package/_esm/clients/decorators/pimlico.js.map +1 -0
  386. package/_esm/clients/decorators/smartAccount.js +39 -0
  387. package/_esm/clients/decorators/smartAccount.js.map +1 -0
  388. package/_esm/clients/decorators/stackup.js +10 -0
  389. package/_esm/clients/decorators/stackup.js.map +1 -0
  390. package/_esm/clients/pimlico.js +64 -0
  391. package/_esm/clients/pimlico.js.map +1 -0
  392. package/_esm/clients/stackup.js +35 -0
  393. package/_esm/clients/stackup.js.map +1 -0
  394. package/_esm/errors/account.js +298 -0
  395. package/_esm/errors/account.js.map +1 -0
  396. package/_esm/errors/bundler.js +56 -0
  397. package/_esm/errors/bundler.js.map +1 -0
  398. package/_esm/errors/estimateUserOperationGas.js +49 -0
  399. package/_esm/errors/estimateUserOperationGas.js.map +1 -0
  400. package/_esm/errors/gas.js +106 -0
  401. package/_esm/errors/gas.js.map +1 -0
  402. package/_esm/errors/index.js +8 -0
  403. package/_esm/errors/index.js.map +1 -0
  404. package/_esm/errors/paymaster.js +218 -0
  405. package/_esm/errors/paymaster.js.map +1 -0
  406. package/_esm/errors/sendUserOperation.js +33 -0
  407. package/_esm/errors/sendUserOperation.js.map +1 -0
  408. package/_esm/errors/utils.js +14 -0
  409. package/_esm/errors/utils.js.map +1 -0
  410. package/_esm/experimental/eip7677/actions/getPaymasterData.js +37 -0
  411. package/_esm/experimental/eip7677/actions/getPaymasterData.js.map +1 -0
  412. package/_esm/experimental/eip7677/actions/getPaymasterStubData.js +47 -0
  413. package/_esm/experimental/eip7677/actions/getPaymasterStubData.js.map +1 -0
  414. package/_esm/experimental/eip7677/clients/decorators/paymasterActionsEip7677.js +18 -0
  415. package/_esm/experimental/eip7677/clients/decorators/paymasterActionsEip7677.js.map +1 -0
  416. package/_esm/experimental/eip7677/index.js +5 -0
  417. package/_esm/experimental/eip7677/index.js.map +1 -0
  418. package/_esm/experimental/eip7677/types/paymaster.js +2 -0
  419. package/_esm/experimental/eip7677/types/paymaster.js.map +1 -0
  420. package/_esm/experimental/index.js +2 -0
  421. package/_esm/experimental/index.js.map +1 -0
  422. package/_esm/index.js +20 -0
  423. package/_esm/index.js.map +1 -0
  424. package/_esm/package.json +1 -0
  425. package/_esm/types/bundler.js +2 -0
  426. package/_esm/types/bundler.js.map +1 -0
  427. package/_esm/types/entrypoint.js +2 -0
  428. package/_esm/types/entrypoint.js.map +1 -0
  429. package/_esm/types/index.js +2 -0
  430. package/_esm/types/index.js.map +1 -0
  431. package/_esm/types/pimlico.js +2 -0
  432. package/_esm/types/pimlico.js.map +1 -0
  433. package/_esm/types/stackup.js +2 -0
  434. package/_esm/types/stackup.js.map +1 -0
  435. package/_esm/types/userOperation.js +2 -0
  436. package/_esm/types/userOperation.js.map +1 -0
  437. package/_esm/utils/decodeNonce.js +8 -0
  438. package/_esm/utils/decodeNonce.js.map +1 -0
  439. package/_esm/utils/deepHexlify.js +30 -0
  440. package/_esm/utils/deepHexlify.js.map +1 -0
  441. package/_esm/utils/encode7579CallData.js +77 -0
  442. package/_esm/utils/encode7579CallData.js.map +1 -0
  443. package/_esm/utils/encodeNonce.js +7 -0
  444. package/_esm/utils/encodeNonce.js.map +1 -0
  445. package/_esm/utils/errors/getBundlerError.js +121 -0
  446. package/_esm/utils/errors/getBundlerError.js.map +1 -0
  447. package/_esm/utils/errors/getEstimateUserOperationGasError.js +18 -0
  448. package/_esm/utils/errors/getEstimateUserOperationGasError.js.map +1 -0
  449. package/_esm/utils/errors/getSendUserOperationError.js +15 -0
  450. package/_esm/utils/errors/getSendUserOperationError.js.map +1 -0
  451. package/_esm/utils/getAddressFromInitCodeOrPaymasterAndData.js +11 -0
  452. package/_esm/utils/getAddressFromInitCodeOrPaymasterAndData.js.map +1 -0
  453. package/_esm/utils/getEntryPointVersion.js +11 -0
  454. package/_esm/utils/getEntryPointVersion.js.map +1 -0
  455. package/_esm/utils/getPackedUserOperation.js +94 -0
  456. package/_esm/utils/getPackedUserOperation.js.map +1 -0
  457. package/_esm/utils/getRequiredPrefund.js +37 -0
  458. package/_esm/utils/getRequiredPrefund.js.map +1 -0
  459. package/_esm/utils/getUserOperationHash.js +111 -0
  460. package/_esm/utils/getUserOperationHash.js.map +1 -0
  461. package/_esm/utils/index.js +19 -0
  462. package/_esm/utils/index.js.map +1 -0
  463. package/_esm/utils/isSmartAccountDeployed.js +11 -0
  464. package/_esm/utils/isSmartAccountDeployed.js.map +1 -0
  465. package/_esm/utils/observe.js +47 -0
  466. package/_esm/utils/observe.js.map +1 -0
  467. package/_esm/utils/providerToSmartAccountSigner.js +28 -0
  468. package/_esm/utils/providerToSmartAccountSigner.js.map +1 -0
  469. package/_esm/utils/signUserOperationHashWithECDSA.js +76 -0
  470. package/_esm/utils/signUserOperationHashWithECDSA.js.map +1 -0
  471. package/_esm/utils/walletClientToSmartAccountSigner.js +19 -0
  472. package/_esm/utils/walletClientToSmartAccountSigner.js.map +1 -0
  473. package/_esm/vitest.config.js +29 -0
  474. package/_esm/vitest.config.js.map +1 -0
  475. package/_types/accounts/biconomy/abi/BiconomySmartAccountAbi.d.ts +59 -0
  476. package/_types/accounts/biconomy/abi/BiconomySmartAccountAbi.d.ts.map +1 -0
  477. package/_types/accounts/biconomy/privateKeyToBiconomySmartAccount.d.ts +13 -0
  478. package/_types/accounts/biconomy/privateKeyToBiconomySmartAccount.d.ts.map +1 -0
  479. package/_types/accounts/biconomy/signerToBiconomySmartAccount.d.ts +29 -0
  480. package/_types/accounts/biconomy/signerToBiconomySmartAccount.d.ts.map +1 -0
  481. package/_types/accounts/index.d.ts +15 -0
  482. package/_types/accounts/index.d.ts.map +1 -0
  483. package/_types/accounts/kernel/abi/KernelAccountAbi.d.ts +68 -0
  484. package/_types/accounts/kernel/abi/KernelAccountAbi.d.ts.map +1 -0
  485. package/_types/accounts/kernel/abi/KernelV3AccountAbi.d.ts +135 -0
  486. package/_types/accounts/kernel/abi/KernelV3AccountAbi.d.ts.map +1 -0
  487. package/_types/accounts/kernel/abi/KernelV3MetaFactoryAbi.d.ts +24 -0
  488. package/_types/accounts/kernel/abi/KernelV3MetaFactoryAbi.d.ts.map +1 -0
  489. package/_types/accounts/kernel/constants.d.ts +21 -0
  490. package/_types/accounts/kernel/constants.d.ts.map +1 -0
  491. package/_types/accounts/kernel/signerToEcdsaKernelSmartAccount.d.ts +44 -0
  492. package/_types/accounts/kernel/signerToEcdsaKernelSmartAccount.d.ts.map +1 -0
  493. package/_types/accounts/kernel/utils/encodeCallData.d.ts +13 -0
  494. package/_types/accounts/kernel/utils/encodeCallData.d.ts.map +1 -0
  495. package/_types/accounts/kernel/utils/getExecMode.d.ts +7 -0
  496. package/_types/accounts/kernel/utils/getExecMode.d.ts.map +1 -0
  497. package/_types/accounts/kernel/utils/getNonceKey.d.ts +5 -0
  498. package/_types/accounts/kernel/utils/getNonceKey.d.ts.map +1 -0
  499. package/_types/accounts/kernel/utils/isKernelV2.d.ts +4 -0
  500. package/_types/accounts/kernel/utils/isKernelV2.d.ts.map +1 -0
  501. package/_types/accounts/kernel/utils/signMessage.d.ts +4 -0
  502. package/_types/accounts/kernel/utils/signMessage.d.ts.map +1 -0
  503. package/_types/accounts/kernel/utils/signTypedData.d.ts +4 -0
  504. package/_types/accounts/kernel/utils/signTypedData.d.ts.map +1 -0
  505. package/_types/accounts/kernel/utils/wrapMessageHash.d.ts +11 -0
  506. package/_types/accounts/kernel/utils/wrapMessageHash.d.ts.map +1 -0
  507. package/_types/accounts/light/privateKeyToLightSmartAccount.d.ts +14 -0
  508. package/_types/accounts/light/privateKeyToLightSmartAccount.d.ts.map +1 -0
  509. package/_types/accounts/light/signerToLightSmartAccount.d.ts +22 -0
  510. package/_types/accounts/light/signerToLightSmartAccount.d.ts.map +1 -0
  511. package/_types/accounts/safe/privateKeyToSafeSmartAccount.d.ts +13 -0
  512. package/_types/accounts/safe/privateKeyToSafeSmartAccount.d.ts.map +1 -0
  513. package/_types/accounts/safe/signerToSafeSmartAccount.d.ts +61 -0
  514. package/_types/accounts/safe/signerToSafeSmartAccount.d.ts.map +1 -0
  515. package/_types/accounts/simple/privateKeyToSimpleSmartAccount.d.ts +13 -0
  516. package/_types/accounts/simple/privateKeyToSimpleSmartAccount.d.ts.map +1 -0
  517. package/_types/accounts/simple/signerToSimpleSmartAccount.d.ts +20 -0
  518. package/_types/accounts/simple/signerToSimpleSmartAccount.d.ts.map +1 -0
  519. package/_types/accounts/toSmartAccount.d.ts +26 -0
  520. package/_types/accounts/toSmartAccount.d.ts.map +1 -0
  521. package/_types/accounts/trust/privateKeyToTrustSmartAccount.d.ts +13 -0
  522. package/_types/accounts/trust/privateKeyToTrustSmartAccount.d.ts.map +1 -0
  523. package/_types/accounts/trust/signerToTrustSmartAccount.d.ts +27 -0
  524. package/_types/accounts/trust/signerToTrustSmartAccount.d.ts.map +1 -0
  525. package/_types/accounts/trust/utils/encodeCallData.d.ts +12 -0
  526. package/_types/accounts/trust/utils/encodeCallData.d.ts.map +1 -0
  527. package/_types/accounts/trust/utils/getAccountAddress.d.ts +10 -0
  528. package/_types/accounts/trust/utils/getAccountAddress.d.ts.map +1 -0
  529. package/_types/accounts/trust/utils/getDummySignature.d.ts +3 -0
  530. package/_types/accounts/trust/utils/getDummySignature.d.ts.map +1 -0
  531. package/_types/accounts/trust/utils/getFactoryData.d.ts +10 -0
  532. package/_types/accounts/trust/utils/getFactoryData.d.ts.map +1 -0
  533. package/_types/accounts/trust/utils/signMessage.d.ts +4 -0
  534. package/_types/accounts/trust/utils/signMessage.d.ts.map +1 -0
  535. package/_types/accounts/trust/utils/signTransaction.d.ts +5 -0
  536. package/_types/accounts/trust/utils/signTransaction.d.ts.map +1 -0
  537. package/_types/accounts/trust/utils/signUserOperation.d.ts +9 -0
  538. package/_types/accounts/trust/utils/signUserOperation.d.ts.map +1 -0
  539. package/_types/accounts/types.d.ts +32 -0
  540. package/_types/accounts/types.d.ts.map +1 -0
  541. package/_types/actions/bundler/chainId.d.ts +27 -0
  542. package/_types/actions/bundler/chainId.d.ts.map +1 -0
  543. package/_types/actions/bundler/estimateUserOperationGas.d.ts +91 -0
  544. package/_types/actions/bundler/estimateUserOperationGas.d.ts.map +1 -0
  545. package/_types/actions/bundler/getUserOperationByHash.d.ts +39 -0
  546. package/_types/actions/bundler/getUserOperationByHash.d.ts.map +1 -0
  547. package/_types/actions/bundler/getUserOperationReceipt.d.ts +58 -0
  548. package/_types/actions/bundler/getUserOperationReceipt.d.ts.map +1 -0
  549. package/_types/actions/bundler/sendUserOperation.d.ts +39 -0
  550. package/_types/actions/bundler/sendUserOperation.d.ts.map +1 -0
  551. package/_types/actions/bundler/supportedEntryPoints.d.ts +27 -0
  552. package/_types/actions/bundler/supportedEntryPoints.d.ts.map +1 -0
  553. package/_types/actions/bundler/waitForUserOperationReceipt.d.ts +43 -0
  554. package/_types/actions/bundler/waitForUserOperationReceipt.d.ts.map +1 -0
  555. package/_types/actions/erc7579/accountId.d.ts +6 -0
  556. package/_types/actions/erc7579/accountId.d.ts.map +1 -0
  557. package/_types/actions/erc7579/installModule.d.ts +16 -0
  558. package/_types/actions/erc7579/installModule.d.ts.map +1 -0
  559. package/_types/actions/erc7579/installModules.d.ts +18 -0
  560. package/_types/actions/erc7579/installModules.d.ts.map +1 -0
  561. package/_types/actions/erc7579/isModuleInstalled.d.ts +12 -0
  562. package/_types/actions/erc7579/isModuleInstalled.d.ts.map +1 -0
  563. package/_types/actions/erc7579/supportsExecutionMode.d.ts +15 -0
  564. package/_types/actions/erc7579/supportsExecutionMode.d.ts.map +1 -0
  565. package/_types/actions/erc7579/supportsModule.d.ts +11 -0
  566. package/_types/actions/erc7579/supportsModule.d.ts.map +1 -0
  567. package/_types/actions/erc7579/uninstallModule.d.ts +16 -0
  568. package/_types/actions/erc7579/uninstallModule.d.ts.map +1 -0
  569. package/_types/actions/erc7579/uninstallModules.d.ts +20 -0
  570. package/_types/actions/erc7579/uninstallModules.d.ts.map +1 -0
  571. package/_types/actions/erc7579.d.ts +30 -0
  572. package/_types/actions/erc7579.d.ts.map +1 -0
  573. package/_types/actions/index.d.ts +20 -0
  574. package/_types/actions/index.d.ts.map +1 -0
  575. package/_types/actions/pimlico/getUserOperationGasPrice.d.ts +40 -0
  576. package/_types/actions/pimlico/getUserOperationGasPrice.d.ts.map +1 -0
  577. package/_types/actions/pimlico/getUserOperationStatus.d.ts +32 -0
  578. package/_types/actions/pimlico/getUserOperationStatus.d.ts.map +1 -0
  579. package/_types/actions/pimlico/sendCompressedUserOperation.d.ts +35 -0
  580. package/_types/actions/pimlico/sendCompressedUserOperation.d.ts.map +1 -0
  581. package/_types/actions/pimlico/sponsorUserOperation.d.ts +52 -0
  582. package/_types/actions/pimlico/sponsorUserOperation.d.ts.map +1 -0
  583. package/_types/actions/pimlico/validateSponsorshipPolicies.d.ts +56 -0
  584. package/_types/actions/pimlico/validateSponsorshipPolicies.d.ts.map +1 -0
  585. package/_types/actions/pimlico.d.ts +10 -0
  586. package/_types/actions/pimlico.d.ts.map +1 -0
  587. package/_types/actions/public/getAccountNonce.d.ts +36 -0
  588. package/_types/actions/public/getAccountNonce.d.ts.map +1 -0
  589. package/_types/actions/public/getSenderAddress.d.ts +48 -0
  590. package/_types/actions/public/getSenderAddress.d.ts.map +1 -0
  591. package/_types/actions/smartAccount/deployContract.d.ts +36 -0
  592. package/_types/actions/smartAccount/deployContract.d.ts.map +1 -0
  593. package/_types/actions/smartAccount/prepareUserOperationRequest.d.ts +28 -0
  594. package/_types/actions/smartAccount/prepareUserOperationRequest.d.ts.map +1 -0
  595. package/_types/actions/smartAccount/sendTransaction.d.ts +54 -0
  596. package/_types/actions/smartAccount/sendTransaction.d.ts.map +1 -0
  597. package/_types/actions/smartAccount/sendTransactions.d.ts +64 -0
  598. package/_types/actions/smartAccount/sendTransactions.d.ts.map +1 -0
  599. package/_types/actions/smartAccount/sendUserOperation.d.ts +10 -0
  600. package/_types/actions/smartAccount/sendUserOperation.d.ts.map +1 -0
  601. package/_types/actions/smartAccount/signMessage.d.ts +51 -0
  602. package/_types/actions/smartAccount/signMessage.d.ts.map +1 -0
  603. package/_types/actions/smartAccount/signTypedData.d.ts +105 -0
  604. package/_types/actions/smartAccount/signTypedData.d.ts.map +1 -0
  605. package/_types/actions/smartAccount/writeContract.d.ts +58 -0
  606. package/_types/actions/smartAccount/writeContract.d.ts.map +1 -0
  607. package/_types/actions/smartAccount.d.ts +10 -0
  608. package/_types/actions/smartAccount.d.ts.map +1 -0
  609. package/_types/actions/stackup/accounts.d.ts +30 -0
  610. package/_types/actions/stackup/accounts.d.ts.map +1 -0
  611. package/_types/actions/stackup/sponsorUserOperation.d.ts +38 -0
  612. package/_types/actions/stackup/sponsorUserOperation.d.ts.map +1 -0
  613. package/_types/actions/stackup.d.ts +7 -0
  614. package/_types/actions/stackup.d.ts.map +1 -0
  615. package/_types/clients/createBundlerClient.d.ts +28 -0
  616. package/_types/clients/createBundlerClient.d.ts.map +1 -0
  617. package/_types/clients/createSmartAccountClient.d.ts +40 -0
  618. package/_types/clients/createSmartAccountClient.d.ts.map +1 -0
  619. package/_types/clients/decorators/bundler.d.ts +175 -0
  620. package/_types/clients/decorators/bundler.d.ts.map +1 -0
  621. package/_types/clients/decorators/pimlico.d.ts +142 -0
  622. package/_types/clients/decorators/pimlico.d.ts.map +1 -0
  623. package/_types/clients/decorators/smartAccount.d.ts +330 -0
  624. package/_types/clients/decorators/smartAccount.d.ts.map +1 -0
  625. package/_types/clients/decorators/stackup.d.ts +55 -0
  626. package/_types/clients/decorators/stackup.d.ts.map +1 -0
  627. package/_types/clients/pimlico.d.ts +52 -0
  628. package/_types/clients/pimlico.d.ts.map +1 -0
  629. package/_types/clients/stackup.d.ts +29 -0
  630. package/_types/clients/stackup.d.ts.map +1 -0
  631. package/_types/errors/account.d.ts +121 -0
  632. package/_types/errors/account.d.ts.map +1 -0
  633. package/_types/errors/bundler.d.ts +24 -0
  634. package/_types/errors/bundler.d.ts.map +1 -0
  635. package/_types/errors/estimateUserOperationGas.d.ts +14 -0
  636. package/_types/errors/estimateUserOperationGas.d.ts.map +1 -0
  637. package/_types/errors/gas.d.ts +47 -0
  638. package/_types/errors/gas.d.ts.map +1 -0
  639. package/_types/errors/index.d.ts +8 -0
  640. package/_types/errors/index.d.ts.map +1 -0
  641. package/_types/errors/paymaster.d.ts +85 -0
  642. package/_types/errors/paymaster.d.ts.map +1 -0
  643. package/_types/errors/sendUserOperation.d.ts +14 -0
  644. package/_types/errors/sendUserOperation.d.ts.map +1 -0
  645. package/_types/errors/utils.d.ts +5 -0
  646. package/_types/errors/utils.d.ts.map +1 -0
  647. package/_types/experimental/eip7677/actions/getPaymasterData.d.ts +51 -0
  648. package/_types/experimental/eip7677/actions/getPaymasterData.d.ts.map +1 -0
  649. package/_types/experimental/eip7677/actions/getPaymasterStubData.d.ts +63 -0
  650. package/_types/experimental/eip7677/actions/getPaymasterStubData.d.ts.map +1 -0
  651. package/_types/experimental/eip7677/clients/decorators/paymasterActionsEip7677.d.ts +11 -0
  652. package/_types/experimental/eip7677/clients/decorators/paymasterActionsEip7677.d.ts.map +1 -0
  653. package/_types/experimental/eip7677/index.d.ts +6 -0
  654. package/_types/experimental/eip7677/index.d.ts.map +1 -0
  655. package/_types/experimental/eip7677/types/paymaster.d.ts +52 -0
  656. package/_types/experimental/eip7677/types/paymaster.d.ts.map +1 -0
  657. package/_types/experimental/index.d.ts +2 -0
  658. package/_types/experimental/index.d.ts.map +1 -0
  659. package/_types/index.d.ts +33 -0
  660. package/_types/index.d.ts.map +1 -0
  661. package/_types/types/bundler.d.ts +110 -0
  662. package/_types/types/bundler.d.ts.map +1 -0
  663. package/_types/types/entrypoint.d.ts +6 -0
  664. package/_types/types/entrypoint.d.ts.map +1 -0
  665. package/_types/types/index.d.ts +27 -0
  666. package/_types/types/index.d.ts.map +1 -0
  667. package/_types/types/pimlico.d.ts +93 -0
  668. package/_types/types/pimlico.d.ts.map +1 -0
  669. package/_types/types/stackup.d.ts +49 -0
  670. package/_types/types/stackup.d.ts.map +1 -0
  671. package/_types/types/userOperation.d.ts +93 -0
  672. package/_types/types/userOperation.d.ts.map +1 -0
  673. package/_types/utils/decodeNonce.d.ts +5 -0
  674. package/_types/utils/decodeNonce.d.ts.map +1 -0
  675. package/_types/utils/deepHexlify.d.ts +6 -0
  676. package/_types/utils/deepHexlify.d.ts.map +1 -0
  677. package/_types/utils/encode7579CallData.d.ts +16 -0
  678. package/_types/utils/encode7579CallData.d.ts.map +1 -0
  679. package/_types/utils/encodeNonce.d.ts +5 -0
  680. package/_types/utils/encodeNonce.d.ts.map +1 -0
  681. package/_types/utils/errors/getBundlerError.d.ts +11 -0
  682. package/_types/utils/errors/getBundlerError.d.ts.map +1 -0
  683. package/_types/utils/errors/getEstimateUserOperationGasError.d.ts +10 -0
  684. package/_types/utils/errors/getEstimateUserOperationGasError.d.ts.map +1 -0
  685. package/_types/utils/errors/getSendUserOperationError.d.ts +5 -0
  686. package/_types/utils/errors/getSendUserOperationError.d.ts.map +1 -0
  687. package/_types/utils/getAddressFromInitCodeOrPaymasterAndData.d.ts +3 -0
  688. package/_types/utils/getAddressFromInitCodeOrPaymasterAndData.d.ts.map +1 -0
  689. package/_types/utils/getEntryPointVersion.d.ts +8 -0
  690. package/_types/utils/getEntryPointVersion.d.ts.map +1 -0
  691. package/_types/utils/getPackedUserOperation.d.ts +39 -0
  692. package/_types/utils/getPackedUserOperation.d.ts.map +1 -0
  693. package/_types/utils/getRequiredPrefund.d.ts +21 -0
  694. package/_types/utils/getRequiredPrefund.d.ts.map +1 -0
  695. package/_types/utils/getUserOperationHash.d.ts +31 -0
  696. package/_types/utils/getUserOperationHash.d.ts.map +1 -0
  697. package/_types/utils/index.d.ts +16 -0
  698. package/_types/utils/index.d.ts.map +1 -0
  699. package/_types/utils/isSmartAccountDeployed.d.ts +3 -0
  700. package/_types/utils/isSmartAccountDeployed.d.ts.map +1 -0
  701. package/_types/utils/observe.d.ts +17 -0
  702. package/_types/utils/observe.d.ts.map +1 -0
  703. package/_types/utils/providerToSmartAccountSigner.d.ts +5 -0
  704. package/_types/utils/providerToSmartAccountSigner.d.ts.map +1 -0
  705. package/_types/utils/signUserOperationHashWithECDSA.d.ts +45 -0
  706. package/_types/utils/signUserOperationHashWithECDSA.d.ts.map +1 -0
  707. package/_types/utils/walletClientToSmartAccountSigner.d.ts +4 -0
  708. package/_types/utils/walletClientToSmartAccountSigner.d.ts.map +1 -0
  709. package/_types/vitest.config.d.ts +3 -0
  710. package/_types/vitest.config.d.ts.map +1 -0
  711. package/package.json +1 -1
@@ -0,0 +1,195 @@
1
+ import { estimateFeesPerGas } from "viem/actions";
2
+ import { getAction } from "viem/utils";
3
+ import { AccountOrClientNotFoundError, parseAccount } from "../../utils/index.js";
4
+ import { getEntryPointVersion } from "../../utils/getEntryPointVersion.js";
5
+ import { estimateUserOperationGas } from "../bundler/estimateUserOperationGas.js";
6
+ async function prepareUserOperationRequestForEntryPointV06(client, args, stateOverrides) {
7
+ const { account: account_ = client.account, userOperation: partialUserOperation, middleware } = args;
8
+ if (!account_)
9
+ throw new AccountOrClientNotFoundError();
10
+ const account = parseAccount(account_);
11
+ const [sender, nonce, initCode, callData] = await Promise.all([
12
+ partialUserOperation.sender || account.address,
13
+ partialUserOperation.nonce || account.getNonce(),
14
+ partialUserOperation.initCode || account.getInitCode(),
15
+ partialUserOperation.callData
16
+ ]);
17
+ const userOperation = {
18
+ sender,
19
+ nonce,
20
+ initCode,
21
+ callData,
22
+ paymasterAndData: "0x",
23
+ signature: partialUserOperation.signature || "0x",
24
+ maxFeePerGas: partialUserOperation.maxFeePerGas || BigInt(0),
25
+ maxPriorityFeePerGas: partialUserOperation.maxPriorityFeePerGas || BigInt(0),
26
+ callGasLimit: partialUserOperation.callGasLimit || BigInt(0),
27
+ verificationGasLimit: partialUserOperation.verificationGasLimit || BigInt(0),
28
+ preVerificationGas: partialUserOperation.preVerificationGas || BigInt(0)
29
+ };
30
+ if (userOperation.signature === "0x") {
31
+ userOperation.signature = await account.getDummySignature(userOperation);
32
+ }
33
+ if (typeof middleware === "function") {
34
+ return middleware({
35
+ userOperation,
36
+ entryPoint: account.entryPoint
37
+ });
38
+ }
39
+ if (middleware && typeof middleware !== "function" && middleware.gasPrice) {
40
+ const gasPrice = await middleware.gasPrice();
41
+ userOperation.maxFeePerGas = gasPrice.maxFeePerGas;
42
+ userOperation.maxPriorityFeePerGas = gasPrice.maxPriorityFeePerGas;
43
+ }
44
+ if (!userOperation.maxFeePerGas || !userOperation.maxPriorityFeePerGas) {
45
+ const estimateGas = await estimateFeesPerGas(account.client);
46
+ userOperation.maxFeePerGas =
47
+ userOperation.maxFeePerGas || estimateGas.maxFeePerGas;
48
+ userOperation.maxPriorityFeePerGas =
49
+ userOperation.maxPriorityFeePerGas ||
50
+ estimateGas.maxPriorityFeePerGas;
51
+ }
52
+ if (middleware &&
53
+ typeof middleware !== "function" &&
54
+ middleware.sponsorUserOperation) {
55
+ const sponsorUserOperationData = (await middleware.sponsorUserOperation({
56
+ userOperation,
57
+ entryPoint: account.entryPoint
58
+ }));
59
+ userOperation.callGasLimit = sponsorUserOperationData.callGasLimit;
60
+ userOperation.verificationGasLimit =
61
+ sponsorUserOperationData.verificationGasLimit;
62
+ userOperation.preVerificationGas =
63
+ sponsorUserOperationData.preVerificationGas;
64
+ userOperation.paymasterAndData =
65
+ sponsorUserOperationData.paymasterAndData;
66
+ userOperation.maxFeePerGas =
67
+ sponsorUserOperationData.maxFeePerGas || userOperation.maxFeePerGas;
68
+ userOperation.maxPriorityFeePerGas =
69
+ sponsorUserOperationData.maxPriorityFeePerGas ||
70
+ userOperation.maxPriorityFeePerGas;
71
+ return userOperation;
72
+ }
73
+ if (!userOperation.callGasLimit ||
74
+ !userOperation.verificationGasLimit ||
75
+ !userOperation.preVerificationGas) {
76
+ const gasParameters = await getAction(client, estimateUserOperationGas, "estimateUserOperationGas")({
77
+ userOperation,
78
+ entryPoint: account.entryPoint
79
+ },
80
+ // @ts-ignore getAction takes only two params but when compiled this will work
81
+ stateOverrides);
82
+ userOperation.callGasLimit |= gasParameters.callGasLimit;
83
+ userOperation.verificationGasLimit =
84
+ userOperation.verificationGasLimit ||
85
+ gasParameters.verificationGasLimit;
86
+ userOperation.preVerificationGas =
87
+ userOperation.preVerificationGas || gasParameters.preVerificationGas;
88
+ }
89
+ return userOperation;
90
+ }
91
+ async function prepareUserOperationRequestEntryPointV07(client, args, stateOverrides) {
92
+ const { account: account_ = client.account, userOperation: partialUserOperation, middleware } = args;
93
+ if (!account_)
94
+ throw new AccountOrClientNotFoundError();
95
+ const account = parseAccount(account_);
96
+ const [sender, nonce, factory, factoryData, callData] = await Promise.all([
97
+ partialUserOperation.sender || account.address,
98
+ partialUserOperation.nonce || account.getNonce(),
99
+ partialUserOperation.factory || account.getFactory(),
100
+ partialUserOperation.factoryData || account.getFactoryData(),
101
+ partialUserOperation.callData
102
+ ]);
103
+ const userOperation = {
104
+ sender,
105
+ nonce,
106
+ factory: factory,
107
+ factoryData: factoryData,
108
+ callData,
109
+ callGasLimit: partialUserOperation.callGasLimit || BigInt(0),
110
+ verificationGasLimit: partialUserOperation.verificationGasLimit || BigInt(0),
111
+ preVerificationGas: partialUserOperation.preVerificationGas || BigInt(0),
112
+ maxFeePerGas: partialUserOperation.maxFeePerGas || BigInt(0),
113
+ maxPriorityFeePerGas: partialUserOperation.maxPriorityFeePerGas || BigInt(0),
114
+ signature: partialUserOperation.signature || "0x"
115
+ };
116
+ if (userOperation.signature === "0x") {
117
+ userOperation.signature = await account.getDummySignature(userOperation);
118
+ }
119
+ if (typeof middleware === "function") {
120
+ return middleware({
121
+ userOperation,
122
+ entryPoint: account.entryPoint
123
+ });
124
+ }
125
+ if (middleware && typeof middleware !== "function" && middleware.gasPrice) {
126
+ const gasPrice = await middleware.gasPrice();
127
+ userOperation.maxFeePerGas = gasPrice.maxFeePerGas;
128
+ userOperation.maxPriorityFeePerGas = gasPrice.maxPriorityFeePerGas;
129
+ }
130
+ if (!userOperation.maxFeePerGas || !userOperation.maxPriorityFeePerGas) {
131
+ const estimateGas = await estimateFeesPerGas(account.client);
132
+ userOperation.maxFeePerGas =
133
+ userOperation.maxFeePerGas || estimateGas.maxFeePerGas;
134
+ userOperation.maxPriorityFeePerGas =
135
+ userOperation.maxPriorityFeePerGas ||
136
+ estimateGas.maxPriorityFeePerGas;
137
+ }
138
+ if (middleware &&
139
+ typeof middleware !== "function" &&
140
+ middleware.sponsorUserOperation) {
141
+ const sponsorUserOperationData = (await middleware.sponsorUserOperation({
142
+ userOperation,
143
+ entryPoint: account.entryPoint
144
+ }));
145
+ userOperation.callGasLimit = sponsorUserOperationData.callGasLimit;
146
+ userOperation.verificationGasLimit =
147
+ sponsorUserOperationData.verificationGasLimit;
148
+ userOperation.preVerificationGas =
149
+ sponsorUserOperationData.preVerificationGas;
150
+ userOperation.paymaster = sponsorUserOperationData.paymaster;
151
+ userOperation.paymasterVerificationGasLimit =
152
+ sponsorUserOperationData.paymasterVerificationGasLimit;
153
+ userOperation.paymasterPostOpGasLimit =
154
+ sponsorUserOperationData.paymasterPostOpGasLimit;
155
+ userOperation.paymasterData = sponsorUserOperationData.paymasterData;
156
+ userOperation.maxFeePerGas =
157
+ sponsorUserOperationData.maxFeePerGas || userOperation.maxFeePerGas;
158
+ userOperation.maxPriorityFeePerGas =
159
+ sponsorUserOperationData.maxPriorityFeePerGas ||
160
+ userOperation.maxPriorityFeePerGas;
161
+ return userOperation;
162
+ }
163
+ if (!userOperation.callGasLimit ||
164
+ !userOperation.verificationGasLimit ||
165
+ !userOperation.preVerificationGas) {
166
+ const gasParameters = await getAction(client, (estimateUserOperationGas), "estimateUserOperationGas")({
167
+ userOperation,
168
+ entryPoint: account.entryPoint
169
+ },
170
+ // @ts-ignore getAction takes only two params but when compiled this will work
171
+ stateOverrides);
172
+ userOperation.callGasLimit |= gasParameters.callGasLimit;
173
+ userOperation.verificationGasLimit =
174
+ userOperation.verificationGasLimit ||
175
+ gasParameters.verificationGasLimit;
176
+ userOperation.preVerificationGas =
177
+ userOperation.preVerificationGas || gasParameters.preVerificationGas;
178
+ userOperation.paymasterPostOpGasLimit =
179
+ userOperation.paymasterPostOpGasLimit ||
180
+ gasParameters.paymasterPostOpGasLimit;
181
+ }
182
+ return userOperation;
183
+ }
184
+ export async function prepareUserOperationRequest(client, args, stateOverrides) {
185
+ const { account: account_ = client.account } = args;
186
+ if (!account_)
187
+ throw new AccountOrClientNotFoundError();
188
+ const account = parseAccount(account_);
189
+ const entryPointVersion = getEntryPointVersion(account.entryPoint);
190
+ if (entryPointVersion === "v0.6") {
191
+ return prepareUserOperationRequestForEntryPointV06(client, args, stateOverrides);
192
+ }
193
+ return prepareUserOperationRequestEntryPointV07(client, args, stateOverrides);
194
+ }
195
+ //# sourceMappingURL=prepareUserOperationRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepareUserOperationRequest.js","sourceRoot":"","sources":["../../../actions/smartAccount/prepareUserOperationRequest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ import { getAction } from "viem/utils";
2
+ import { AccountOrClientNotFoundError, parseAccount } from "../../utils/index.js";
3
+ import { waitForUserOperationReceipt } from "../bundler/waitForUserOperationReceipt.js";
4
+ import { sendUserOperation } from "./sendUserOperation.js";
5
+ /**
6
+ * Creates, signs, and sends a new transaction to the network.
7
+ * This function also allows you to sponsor this transaction if sender is a smartAccount
8
+ *
9
+ * - Docs: https://viem.sh/docs/actions/wallet/sendTransaction.html
10
+ * - Examples: https://stackblitz.com/github/wagmi-dev/viem/tree/main/examples/transactions/sending-transactions
11
+ * - JSON-RPC Methods:
12
+ * - JSON-RPC Accounts: [`eth_sendTransaction`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_sendtransaction)
13
+ * - Local Accounts: [`eth_sendRawTransaction`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_sendrawtransaction)
14
+ *
15
+ * @param client - Client to use
16
+ * @param parameters - {@link SendTransactionParameters}
17
+ * @returns The [Transaction](https://viem.sh/docs/glossary/terms.html#transaction) hash.
18
+ *
19
+ * @example
20
+ * import { createWalletClient, custom } from 'viem'
21
+ * import { mainnet } from 'viem/chains'
22
+ * import { sendTransaction } from 'viem/wallet'
23
+ *
24
+ * const client = createWalletClient({
25
+ * chain: mainnet,
26
+ * transport: custom(window.ethereum),
27
+ * })
28
+ * const hash = await sendTransaction(client, {
29
+ * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
30
+ * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',
31
+ * value: 1000000000000000000n,
32
+ * })
33
+ *
34
+ * @example
35
+ * // Account Hoisting
36
+ * import { createWalletClient, http } from 'viem'
37
+ * import { privateKeyToAccount } from 'viem/accounts'
38
+ * import { mainnet } from 'viem/chains'
39
+ * import { sendTransaction } from 'viem/wallet'
40
+ *
41
+ * const client = createWalletClient({
42
+ * account: privateKeyToAccount('0x…'),
43
+ * chain: mainnet,
44
+ * transport: http(),
45
+ * })
46
+ * const hash = await sendTransaction(client, {
47
+ * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',
48
+ * value: 1000000000000000000n,
49
+ * })
50
+ */
51
+ export async function sendTransaction(client, args) {
52
+ const { account: account_ = client.account, data, maxFeePerGas, maxPriorityFeePerGas, to, value, nonce, middleware } = args;
53
+ if (!account_) {
54
+ throw new AccountOrClientNotFoundError({
55
+ docsPath: "/docs/actions/wallet/sendTransaction"
56
+ });
57
+ }
58
+ const account = parseAccount(account_);
59
+ if (!to)
60
+ throw new Error("Missing to address");
61
+ if (account.type !== "local") {
62
+ throw new Error("RPC account type not supported");
63
+ }
64
+ const callData = await account.encodeCallData({
65
+ to,
66
+ value: value || BigInt(0),
67
+ data: data || "0x"
68
+ });
69
+ const userOpHash = await getAction(client, (sendUserOperation), "sendUserOperation")({
70
+ userOperation: {
71
+ sender: account.address,
72
+ maxFeePerGas: maxFeePerGas,
73
+ maxPriorityFeePerGas: maxPriorityFeePerGas,
74
+ callData: callData,
75
+ nonce: nonce ? BigInt(nonce) : undefined
76
+ },
77
+ account,
78
+ middleware
79
+ });
80
+ const userOperationReceipt = await getAction(client, waitForUserOperationReceipt, "waitForUserOperationReceipt")({
81
+ hash: userOpHash
82
+ });
83
+ return userOperationReceipt?.receipt.transactionHash;
84
+ }
85
+ //# sourceMappingURL=sendTransaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sendTransaction.js","sourceRoot":"","sources":["../../../actions/smartAccount/sendTransaction.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAItC,OAAO,EAAE,4BAA4B,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAA;AAEpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAevD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CASjC,MAA2C,EAC3C,IAQC;IAED,MAAM,EACF,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAClC,IAAI,EACJ,YAAY,EACZ,oBAAoB,EACpB,EAAE,EACF,KAAK,EACL,KAAK,EACL,UAAU,EACb,GAAG,IAAI,CAAA;IAER,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,MAAM,IAAI,4BAA4B,CAAC;YACnC,QAAQ,EAAE,sCAAsC;SACnD,CAAC,CAAA;IACN,CAAC;IAED,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAKpC,CAAA;IAED,IAAI,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;IAE9C,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;IACrD,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC;QAC1C,EAAE;QACF,KAAK,EAAE,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC;QACzB,IAAI,EAAE,IAAI,IAAI,IAAI;KACrB,CAAC,CAAA;IAEF,MAAM,UAAU,GAAG,MAAM,SAAS,CAC9B,MAAM,EACN,CAAA,iBAKC,CAAA,EACD,mBAAmB,CACtB,CAAC;QACE,aAAa,EAAE;YACX,MAAM,EAAE,OAAO,CAAC,OAAO;YACvB,YAAY,EAAE,YAAY;YAC1B,oBAAoB,EAAE,oBAAoB;YAC1C,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;SAC3C;QACD,OAAO;QACP,UAAU;KACb,CAAC,CAAA;IAEF,MAAM,oBAAoB,GAAG,MAAM,SAAS,CACxC,MAAM,EACN,2BAA2B,EAC3B,6BAA6B,CAChC,CAAC;QACE,IAAI,EAAE,UAAU;KACnB,CAAC,CAAA;IAEF,OAAO,oBAAoB,EAAE,OAAO,CAAC,eAAe,CAAA;AACxD,CAAC"}
@@ -0,0 +1,87 @@
1
+ import { getAction } from "viem/utils";
2
+ import { AccountOrClientNotFoundError, parseAccount } from "../../utils/index.js";
3
+ import { waitForUserOperationReceipt } from "../bundler/waitForUserOperationReceipt.js";
4
+ import { sendUserOperation } from "./sendUserOperation.js";
5
+ /**
6
+ * Creates, signs, and sends a new transactions to the network.
7
+ * This function also allows you to sponsor this transaction if sender is a smartAccount
8
+ *
9
+ * @param client - Client to use
10
+ * @param parameters - {@link SendTransactionParameters}
11
+ * @returns The [Transaction](https://viem.sh/docs/glossary/terms.html#transaction) hash.
12
+ *
13
+ * @example
14
+ * import { createWalletClient, custom } from 'viem'
15
+ * import { mainnet } from 'viem/chains'
16
+ * import { sendTransaction } from 'viem/wallet'
17
+ *
18
+ * const client = createWalletClient({
19
+ * chain: mainnet,
20
+ * transport: custom(window.ethereum),
21
+ * })
22
+ * const hash = await sendTransaction(client, [{
23
+ * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
24
+ * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',
25
+ * value: 1000000000000000000n,
26
+ * }, {
27
+ * to: '0x61897970c51812dc3a010c7d01b50e0d17dc1234',
28
+ * value: 10000000000000000n,
29
+ * }])
30
+ *
31
+ * @example
32
+ * // Account Hoisting
33
+ * import { createWalletClient, http } from 'viem'
34
+ * import { privateKeyToAccount } from 'viem/accounts'
35
+ * import { mainnet } from 'viem/chains'
36
+ * import { sendTransaction } from 'viem/wallet'
37
+ *
38
+ * const client = createWalletClient({
39
+ * account: privateKeyToAccount('0x…'),
40
+ * chain: mainnet,
41
+ * transport: http(),
42
+ * })
43
+ * const hash = await sendTransactions(client, [{
44
+ * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',
45
+ * value: 1000000000000000000n,
46
+ * }, {
47
+ * to: '0x61897970c51812dc3a010c7d01b50e0d17dc1234',
48
+ * value: 10000000000000000n,
49
+ * }])
50
+ */
51
+ export async function sendTransactions(client, args) {
52
+ const { account: account_ = client.account, transactions, middleware, maxFeePerGas, maxPriorityFeePerGas, nonce } = args;
53
+ if (!account_) {
54
+ throw new AccountOrClientNotFoundError({
55
+ docsPath: "/docs/actions/wallet/sendTransaction"
56
+ });
57
+ }
58
+ const account = parseAccount(account_);
59
+ if (account.type !== "local") {
60
+ throw new Error("RPC account type not supported");
61
+ }
62
+ const callData = await account.encodeCallData(transactions.map(({ to, value, data }) => {
63
+ if (!to)
64
+ throw new Error("Missing to address");
65
+ return {
66
+ to,
67
+ value: value || BigInt(0),
68
+ data: data || "0x"
69
+ };
70
+ }));
71
+ const userOpHash = await getAction(client, (sendUserOperation), "sendUserOperation")({
72
+ userOperation: {
73
+ sender: account.address,
74
+ maxFeePerGas: maxFeePerGas,
75
+ maxPriorityFeePerGas: maxPriorityFeePerGas,
76
+ callData: callData,
77
+ nonce: nonce
78
+ },
79
+ account: account,
80
+ middleware
81
+ });
82
+ const userOperationReceipt = await getAction(client, waitForUserOperationReceipt, "waitForUserOperationReceipt")({
83
+ hash: userOpHash
84
+ });
85
+ return userOperationReceipt?.receipt.transactionHash;
86
+ }
87
+ //# sourceMappingURL=sendTransactions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sendTransactions.js","sourceRoot":"","sources":["../../../actions/smartAccount/sendTransactions.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAItC,OAAO,EAAE,4BAA4B,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAA;AAEpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAqBvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAQlC,MAA2C,EAC3C,IAOC;IAED,MAAM,EACF,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAClC,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,oBAAoB,EACpB,KAAK,EACR,GAAG,IAAI,CAAA;IAER,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,MAAM,IAAI,4BAA4B,CAAC;YACnC,QAAQ,EAAE,sCAAsC;SACnD,CAAC,CAAA;IACN,CAAC;IAED,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAKpC,CAAA;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;IACrD,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,cAAc,CACzC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;QACrC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;QAC9C,OAAO;YACH,EAAE;YACF,KAAK,EAAE,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC;YACzB,IAAI,EAAE,IAAI,IAAI,IAAI;SACrB,CAAA;IACL,CAAC,CAAC,CACL,CAAA;IAED,MAAM,UAAU,GAAG,MAAM,SAAS,CAC9B,MAAM,EACN,CAAA,iBAKC,CAAA,EACD,mBAAmB,CACtB,CAAC;QACE,aAAa,EAAE;YACX,MAAM,EAAE,OAAO,CAAC,OAAO;YACvB,YAAY,EAAE,YAAY;YAC1B,oBAAoB,EAAE,oBAAoB;YAC1C,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,KAAK;SACf;QACD,OAAO,EAAE,OAAO;QAChB,UAAU;KACb,CAAC,CAAA;IAEF,MAAM,oBAAoB,GAAG,MAAM,SAAS,CACxC,MAAM,EACN,2BAA2B,EAC3B,6BAA6B,CAChC,CAAC;QACE,IAAI,EAAE,UAAU;KACnB,CAAC,CAAA;IAEF,OAAO,oBAAoB,EAAE,OAAO,CAAC,eAAe,CAAA;AACxD,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { getAction } from "viem/utils";
2
+ import { AccountOrClientNotFoundError, parseAccount } from "../../utils/index.js";
3
+ import { sendUserOperation as sendUserOperationBundler } from "../bundler/sendUserOperation.js";
4
+ import { prepareUserOperationRequest } from "./prepareUserOperationRequest.js";
5
+ export async function sendUserOperation(client, args) {
6
+ const { account: account_ = client.account } = args;
7
+ if (!account_)
8
+ throw new AccountOrClientNotFoundError();
9
+ const account = parseAccount(account_);
10
+ const userOperation = await getAction(client, (prepareUserOperationRequest), "prepareUserOperationRequest")({ ...args, account });
11
+ userOperation.signature = await account.signUserOperation(userOperation);
12
+ return sendUserOperationBundler(client, {
13
+ userOperation: userOperation,
14
+ entryPoint: account.entryPoint
15
+ });
16
+ }
17
+ //# sourceMappingURL=sendUserOperation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sendUserOperation.js","sourceRoot":"","sources":["../../../actions/smartAccount/sendUserOperation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAatC,OAAO,EAAE,4BAA4B,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AACzE,OAAO,EAAE,iBAAiB,IAAI,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAC5F,OAAO,EAGH,2BAA2B,EAC9B,MAAM,+BAA+B,CAAA;AA8CtC,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAUnC,MAA4C,EAC5C,IAEC;IAED,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAA;IACnD,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,4BAA4B,EAAE,CAAA;IAEvD,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAKpC,CAAA;IAED,MAAM,aAAa,GAAG,MAAM,SAAS,CACjC,MAAM,EACN,CAAA,2BAAqE,CAAA,EACrE,6BAA6B,CAChC,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAKnB,CAAC,CAAA;IAEF,aAAa,CAAC,SAAS,GAAG,MAAM,OAAO,CAAC,iBAAiB,CACrD,aAAgE,CACnE,CAAA;IAED,OAAO,wBAAwB,CAAC,MAAM,EAAE;QACpC,aAAa,EAAE,aAEd;QACD,UAAU,EAAE,OAAO,CAAC,UAAU;KACjC,CAAC,CAAA;AACN,CAAC"}
@@ -0,0 +1,58 @@
1
+ import { AccountOrClientNotFoundError, parseAccount } from "../../utils/index.js";
2
+ /**
3
+ * Calculates an Ethereum-specific signature in [EIP-191 format](https://eips.ethereum.org/EIPS/eip-191): `keccak256("\x19Ethereum Signed Message:\n" + len(message) + message))`.
4
+ *
5
+ * - Docs: https://viem.sh/docs/actions/wallet/signMessage.html
6
+ * - JSON-RPC Methods:
7
+ * - JSON-RPC Accounts: [`personal_sign`](https://docs.metamask.io/guide/signing-data.html#personal-sign)
8
+ * - Local Accounts: Signs locally. No JSON-RPC request.
9
+ *
10
+ * With the calculated signature, you can:
11
+ * - use [`verifyMessage`](https://viem.sh/docs/utilities/verifyMessage.html) to verify the signature,
12
+ * - use [`recoverMessageAddress`](https://viem.sh/docs/utilities/recoverMessageAddress.html) to recover the signing address from a signature.
13
+ *
14
+ * @param client - Client to use
15
+ * @param parameters - {@link SignMessageParameters}
16
+ * @returns The signed message. {@link SignMessageReturnType}
17
+ *
18
+ * @example
19
+ * import { createWalletClient, custom } from 'viem'
20
+ * import { mainnet } from 'viem/chains'
21
+ * import { signMessage } from 'viem/wallet'
22
+ *
23
+ * const client = createWalletClient({
24
+ * chain: mainnet,
25
+ * transport: custom(window.ethereum),
26
+ * })
27
+ * const signature = await signMessage(client, {
28
+ * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
29
+ * message: 'hello world',
30
+ * })
31
+ *
32
+ * @example
33
+ * // Account Hoisting
34
+ * import { createWalletClient, custom } from 'viem'
35
+ * import { privateKeyToAccount } from 'viem/accounts'
36
+ * import { mainnet } from 'viem/chains'
37
+ * import { signMessage } from 'viem/wallet'
38
+ *
39
+ * const client = createWalletClient({
40
+ * account: privateKeyToAccount('0x…'),
41
+ * chain: mainnet,
42
+ * transport: custom(window.ethereum),
43
+ * })
44
+ * const signature = await signMessage(client, {
45
+ * message: 'hello world',
46
+ * })
47
+ */
48
+ export async function signMessage(client, { account: account_ = client.account, message }) {
49
+ if (!account_)
50
+ throw new AccountOrClientNotFoundError({
51
+ docsPath: "/docs/actions/wallet/signMessage"
52
+ });
53
+ const account = parseAccount(account_);
54
+ if (account.type === "local")
55
+ return account.signMessage({ message });
56
+ throw new Error("Sign message is not supported by this account");
57
+ }
58
+ //# sourceMappingURL=signMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signMessage.js","sourceRoot":"","sources":["../../../actions/smartAccount/signMessage.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,4BAA4B,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAEzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAU7B,MAA2C,EAC3C,EACI,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAClC,OAAO,EACuB;IAElC,IAAI,CAAC,QAAQ;QACT,MAAM,IAAI,4BAA4B,CAAC;YACnC,QAAQ,EAAE,kCAAkC;SAC/C,CAAC,CAAA;IAEN,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IACtC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,OAAO,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IAErE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;AACpE,CAAC"}
@@ -0,0 +1,128 @@
1
+ import { getTypesForEIP712Domain, validateTypedData } from "viem";
2
+ import { AccountOrClientNotFoundError, parseAccount } from "../../utils/index.js";
3
+ /**
4
+ * Signs typed data and calculates an Ethereum-specific signature in [https://eips.ethereum.org/EIPS/eip-712](https://eips.ethereum.org/EIPS/eip-712): `sign(keccak256("\x19\x01" ‖ domainSeparator ‖ hashStruct(message)))`
5
+ *
6
+ * - Docs: https://viem.sh/docs/actions/wallet/signTypedData.html
7
+ * - JSON-RPC Methods:
8
+ * - JSON-RPC Accounts: [`eth_signTypedData_v4`](https://docs.metamask.io/guide/signing-data.html#signtypeddata-v4)
9
+ * - Local Accounts: Signs locally. No JSON-RPC request.
10
+ *
11
+ * @param client - Client to use
12
+ * @param parameters - {@link SignTypedDataParameters}
13
+ * @returns The signed data. {@link SignTypedDataReturnType}
14
+ *
15
+ * @example
16
+ * import { createWalletClient, custom } from 'viem'
17
+ * import { mainnet } from 'viem/chains'
18
+ * import { signTypedData } from 'viem/wallet'
19
+ *
20
+ * const client = createWalletClient({
21
+ * chain: mainnet,
22
+ * transport: custom(window.ethereum),
23
+ * })
24
+ * const signature = await signTypedData(client, {
25
+ * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
26
+ * domain: {
27
+ * name: 'Ether Mail',
28
+ * version: '1',
29
+ * chainId: 1,
30
+ * verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC',
31
+ * },
32
+ * types: {
33
+ * Person: [
34
+ * { name: 'name', type: 'string' },
35
+ * { name: 'wallet', type: 'address' },
36
+ * ],
37
+ * Mail: [
38
+ * { name: 'from', type: 'Person' },
39
+ * { name: 'to', type: 'Person' },
40
+ * { name: 'contents', type: 'string' },
41
+ * ],
42
+ * },
43
+ * primaryType: 'Mail',
44
+ * message: {
45
+ * from: {
46
+ * name: 'Cow',
47
+ * wallet: '0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826',
48
+ * },
49
+ * to: {
50
+ * name: 'Bob',
51
+ * wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB',
52
+ * },
53
+ * contents: 'Hello, Bob!',
54
+ * },
55
+ * })
56
+ *
57
+ * @example
58
+ * // Account Hoisting
59
+ * import { createWalletClient, http } from 'viem'
60
+ * import { privateKeyToAccount } from 'viem/accounts'
61
+ * import { mainnet } from 'viem/chains'
62
+ * import { signTypedData } from 'viem/wallet'
63
+ *
64
+ * const client = createWalletClient({
65
+ * account: privateKeyToAccount('0x…'),
66
+ * chain: mainnet,
67
+ * transport: http(),
68
+ * })
69
+ * const signature = await signTypedData(client, {
70
+ * domain: {
71
+ * name: 'Ether Mail',
72
+ * version: '1',
73
+ * chainId: 1,
74
+ * verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC',
75
+ * },
76
+ * types: {
77
+ * Person: [
78
+ * { name: 'name', type: 'string' },
79
+ * { name: 'wallet', type: 'address' },
80
+ * ],
81
+ * Mail: [
82
+ * { name: 'from', type: 'Person' },
83
+ * { name: 'to', type: 'Person' },
84
+ * { name: 'contents', type: 'string' },
85
+ * ],
86
+ * },
87
+ * primaryType: 'Mail',
88
+ * message: {
89
+ * from: {
90
+ * name: 'Cow',
91
+ * wallet: '0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826',
92
+ * },
93
+ * to: {
94
+ * name: 'Bob',
95
+ * wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB',
96
+ * },
97
+ * contents: 'Hello, Bob!',
98
+ * },
99
+ * })
100
+ */
101
+ export async function signTypedData(client, { account: account_ = client.account, domain, message, primaryType, types: types_ }) {
102
+ if (!account_) {
103
+ throw new AccountOrClientNotFoundError({
104
+ docsPath: "/docs/actions/wallet/signMessage"
105
+ });
106
+ }
107
+ const account = parseAccount(account_);
108
+ const types = {
109
+ EIP712Domain: getTypesForEIP712Domain({ domain }),
110
+ ...types_
111
+ };
112
+ validateTypedData({
113
+ domain,
114
+ message,
115
+ primaryType,
116
+ types
117
+ });
118
+ if (account.type === "local") {
119
+ return account.signTypedData({
120
+ domain,
121
+ primaryType,
122
+ types,
123
+ message
124
+ });
125
+ }
126
+ throw new Error("Sign type message is not supported by this account");
127
+ }
128
+ //# sourceMappingURL=signTypedData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signTypedData.js","sourceRoot":"","sources":["../../../actions/smartAccount/signTypedData.ts"],"names":[],"mappings":"AAAA,OAAO,EASH,uBAAuB,EACvB,iBAAiB,EACpB,MAAM,MAAM,CAAA;AAGb,OAAO,EAAE,4BAA4B,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAEzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAY/B,MAA2C,EAC3C,EACI,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAClC,MAAM,EACN,OAAO,EACP,WAAW,EACX,KAAK,EAAE,MAAM,EAC6C;IAE9D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,MAAM,IAAI,4BAA4B,CAAC;YACnC,QAAQ,EAAE,kCAAkC;SAC/C,CAAC,CAAA;IACN,CAAC;IAED,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IAEtC,MAAM,KAAK,GAAG;QACV,YAAY,EAAE,uBAAuB,CAAC,EAAE,MAAM,EAE7C,CAAC;QACF,GAAI,MAAqB;KAC5B,CAAA;IACD,iBAAiB,CAAC;QACd,MAAM;QACN,OAAO;QACP,WAAW;QACX,KAAK;KACe,CAAC,CAAA;IAEzB,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,aAAa,CAAC;YACzB,MAAM;YACN,WAAW;YACX,KAAK;YACL,OAAO;SACa,CAAC,CAAA;IAC7B,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;AACzE,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { encodeFunctionData } from "viem";
2
+ import { getAction } from "viem/utils";
3
+ import { sendTransaction } from "./sendTransaction.js";
4
+ export async function writeContract(client, { abi, address, args, dataSuffix, functionName, ...request }) {
5
+ const data = encodeFunctionData({
6
+ abi,
7
+ args,
8
+ functionName
9
+ });
10
+ const hash = await getAction(client, (sendTransaction), "sendTransaction")({
11
+ data: `${data}${dataSuffix ? dataSuffix.replace("0x", "") : ""}`,
12
+ to: address,
13
+ ...request
14
+ });
15
+ return hash;
16
+ }
17
+ //# sourceMappingURL=writeContract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writeContract.js","sourceRoot":"","sources":["../../../actions/smartAccount/writeContract.ts"],"names":[],"mappings":"AAAA,OAAO,EAUH,kBAAkB,EACrB,MAAM,MAAM,CAAA;AACb,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAItC,OAAO,EAEH,eAAe,EAClB,MAAM,mBAAmB,CAAA;AAmF1B,MAAM,CAAC,KAAK,UAAU,aAAa,CAmB/B,MAA2C,EAC3C,EACI,GAAG,EACH,OAAO,EACP,IAAI,EACJ,UAAU,EACV,YAAY,EACZ,GAAG,OAAO,EAUb;IAED,MAAM,IAAI,GAAG,kBAAkB,CAAsB;QACjD,GAAG;QACH,IAAI;QACJ,YAAY;KACsC,CAAC,CAAA;IACvD,MAAM,IAAI,GAAG,MAAM,SAAS,CACxB,MAAM,EACN,CAAA,eAMC,CAAA,EACD,iBAAiB,CACpB,CAAC;QACE,IAAI,EAAE,GAAG,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;QAChE,EAAE,EAAE,OAAO;QACX,GAAG,OAAO;KAOb,CAAC,CAAA;IACF,OAAO,IAAI,CAAA;AACf,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { deployContract } from "./smartAccount/deployContract.js";
2
+ import { prepareUserOperationRequest } from "./smartAccount/prepareUserOperationRequest.js";
3
+ import { sendTransaction } from "./smartAccount/sendTransaction.js";
4
+ import { sendUserOperation } from "./smartAccount/sendUserOperation.js";
5
+ import { signMessage } from "./smartAccount/signMessage.js";
6
+ import { signTypedData } from "./smartAccount/signTypedData.js";
7
+ import { sendTransactions } from "./smartAccount/sendTransactions.js";
8
+ import { writeContract } from "./smartAccount/writeContract.js";
9
+ export { deployContract, prepareUserOperationRequest, sendTransaction, sendUserOperation, signMessage, signTypedData, sendTransactions, writeContract };
10
+ //# sourceMappingURL=smartAccount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smartAccount.js","sourceRoot":"","sources":["../../actions/smartAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,cAAc,EACjB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EAKH,2BAA2B,EAC9B,MAAM,4CAA4C,CAAA;AAEnD,OAAO,EAEH,eAAe,EAClB,MAAM,gCAAgC,CAAA;AAEvC,OAAO,EAEH,iBAAiB,EACpB,MAAM,kCAAkC,CAAA;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAExD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAE5D,OAAO,EAEH,gBAAgB,EACnB,MAAM,iCAAiC,CAAA;AAExC,OAAO,EAEH,aAAa,EAChB,MAAM,8BAA8B,CAAA;AAErC,OAAO,EACH,cAAc,EAEd,2BAA2B,EAI3B,eAAe,EACf,iBAAiB,EAEjB,WAAW,EACX,aAAa,EAGb,gBAAgB,EAGhB,aAAa,EAChB,CAAA"}