@zerodev/sdk 5.3.26 → 5.4.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/_cjs/accounts/index.js.map +1 -1
  2. package/_cjs/accounts/kernel/createKernelAccount.js +171 -199
  3. package/_cjs/accounts/kernel/createKernelAccount.js.map +1 -1
  4. package/_cjs/accounts/kernel/utils/account/ep0_6/encodeCallData.js +13 -9
  5. package/_cjs/accounts/kernel/utils/account/ep0_6/encodeCallData.js.map +1 -1
  6. package/_cjs/accounts/kernel/utils/account/ep0_6/encodeDeployCallData.js.map +1 -1
  7. package/_cjs/accounts/kernel/utils/account/ep0_6/encodeModuleInstallCallData.js +18 -17
  8. package/_cjs/accounts/kernel/utils/account/ep0_6/encodeModuleInstallCallData.js.map +1 -1
  9. package/_cjs/accounts/kernel/utils/account/ep0_7/encodeCallData.js +12 -8
  10. package/_cjs/accounts/kernel/utils/account/ep0_7/encodeCallData.js.map +1 -1
  11. package/_cjs/accounts/kernel/utils/account/ep0_7/encodeDeployCallData.js.map +1 -1
  12. package/_cjs/accounts/kernel/utils/common/accountMetadata.js.map +1 -1
  13. package/_cjs/accounts/kernel/utils/common/getActionSelector.js +2 -2
  14. package/_cjs/accounts/kernel/utils/common/getActionSelector.js.map +1 -1
  15. package/_cjs/accounts/kernel/utils/ep0_6/encodeExecuteBatchCall.js +2 -2
  16. package/_cjs/accounts/kernel/utils/ep0_6/encodeExecuteBatchCall.js.map +1 -1
  17. package/_cjs/accounts/kernel/utils/ep0_6/encodeExecuteDelegateCall.js +1 -1
  18. package/_cjs/accounts/kernel/utils/ep0_6/encodeExecuteDelegateCall.js.map +1 -1
  19. package/_cjs/accounts/kernel/utils/ep0_6/encodeExecuteSingleCall.js +1 -1
  20. package/_cjs/accounts/kernel/utils/ep0_6/encodeExecuteSingleCall.js.map +1 -1
  21. package/_cjs/accounts/kernel/utils/ep0_7/encodeExecuteBatchCall.js +2 -2
  22. package/_cjs/accounts/kernel/utils/ep0_7/encodeExecuteBatchCall.js.map +1 -1
  23. package/_cjs/accounts/kernel/utils/ep0_7/encodeExecuteCall.js +2 -2
  24. package/_cjs/accounts/kernel/utils/ep0_7/encodeExecuteCall.js.map +1 -1
  25. package/_cjs/accounts/kernel/utils/plugins/ep0_6/getEncodedPluginsData.js.map +1 -1
  26. package/_cjs/accounts/kernel/utils/plugins/ep0_6/getPluginsEnableTypedData.js.map +1 -1
  27. package/_cjs/accounts/kernel/utils/plugins/ep0_7/getPluginsEnableTypedData.js.map +1 -1
  28. package/_cjs/accounts/kernel/v1/createKernelAccountV1.js +81 -94
  29. package/_cjs/accounts/kernel/v1/createKernelAccountV1.js.map +1 -1
  30. package/_cjs/accounts/kernel/v2/createKernelAccountV0_2.js +104 -110
  31. package/_cjs/accounts/kernel/v2/createKernelAccountV0_2.js.map +1 -1
  32. package/_cjs/accounts/utils/getCustomNonceKeyFromString.js +2 -4
  33. package/_cjs/accounts/utils/getCustomNonceKeyFromString.js.map +1 -1
  34. package/_cjs/accounts/utils/index.js +1 -7
  35. package/_cjs/accounts/utils/index.js.map +1 -1
  36. package/_cjs/accounts/utils/multisend.js.map +1 -1
  37. package/_cjs/accounts/utils/toKernelPluginManager.js +14 -16
  38. package/_cjs/accounts/utils/toKernelPluginManager.js.map +1 -1
  39. package/_cjs/actions/account-client/changeSudoValidator.js +27 -21
  40. package/_cjs/actions/account-client/changeSudoValidator.js.map +1 -1
  41. package/_cjs/actions/account-client/getKernelV3ModuleCurrentNonce.js +8 -6
  42. package/_cjs/actions/account-client/getKernelV3ModuleCurrentNonce.js.map +1 -1
  43. package/_cjs/actions/account-client/invalidateNonce.js +20 -15
  44. package/_cjs/actions/account-client/invalidateNonce.js.map +1 -1
  45. package/_cjs/actions/account-client/sendTransaction.js +42 -0
  46. package/_cjs/actions/account-client/sendTransaction.js.map +1 -0
  47. package/_cjs/actions/account-client/signMessage.js +15 -0
  48. package/_cjs/actions/account-client/signMessage.js.map +1 -0
  49. package/_cjs/actions/account-client/signTypedData.js +32 -0
  50. package/_cjs/actions/account-client/signTypedData.js.map +1 -0
  51. package/_cjs/actions/account-client/signUserOperation.js +7 -5
  52. package/_cjs/actions/account-client/signUserOperation.js.map +1 -1
  53. package/_cjs/actions/account-client/uninstallPlugin.js +13 -12
  54. package/_cjs/actions/account-client/uninstallPlugin.js.map +1 -1
  55. package/_cjs/actions/account-client/writeContract.js +21 -0
  56. package/_cjs/actions/account-client/writeContract.js.map +1 -0
  57. package/_cjs/actions/index.js +13 -3
  58. package/_cjs/actions/index.js.map +1 -1
  59. package/_cjs/actions/paymaster/estimateGasInERC20.js +4 -4
  60. package/_cjs/actions/paymaster/estimateGasInERC20.js.map +1 -1
  61. package/_cjs/actions/paymaster/sponsorUserOperation.js +4 -6
  62. package/_cjs/actions/paymaster/sponsorUserOperation.js.map +1 -1
  63. package/_cjs/actions/public/getAccountNonce.js +38 -0
  64. package/_cjs/actions/public/getAccountNonce.js.map +1 -0
  65. package/_cjs/actions/public/getSenderAddress.js +166 -0
  66. package/_cjs/actions/public/getSenderAddress.js.map +1 -0
  67. package/_cjs/actions/public/index.js +8 -0
  68. package/_cjs/actions/public/index.js.map +1 -0
  69. package/_cjs/clients/decorators/kernel.js +17 -27
  70. package/_cjs/clients/decorators/kernel.js.map +1 -1
  71. package/_cjs/clients/fallbackKernelAccountClient.js.map +1 -1
  72. package/_cjs/clients/kernelAccountClient.js +27 -45
  73. package/_cjs/clients/kernelAccountClient.js.map +1 -1
  74. package/_cjs/clients/paymasterClient.js +7 -18
  75. package/_cjs/clients/paymasterClient.js.map +1 -1
  76. package/_cjs/errors/index.js +18 -0
  77. package/_cjs/errors/index.js.map +1 -0
  78. package/_cjs/gasTokenAddresses.js +2 -1
  79. package/_cjs/gasTokenAddresses.js.map +1 -1
  80. package/_cjs/index.js.map +1 -1
  81. package/_cjs/providers/KernelEIP1193Provider.js.map +1 -1
  82. package/_cjs/types/kernel.js.map +1 -1
  83. package/_cjs/utils.js +27 -7
  84. package/_cjs/utils.js.map +1 -1
  85. package/_esm/accounts/index.js.map +1 -1
  86. package/_esm/accounts/kernel/createKernelAccount.js +181 -217
  87. package/_esm/accounts/kernel/createKernelAccount.js.map +1 -1
  88. package/_esm/accounts/kernel/utils/account/ep0_6/encodeCallData.js +13 -9
  89. package/_esm/accounts/kernel/utils/account/ep0_6/encodeCallData.js.map +1 -1
  90. package/_esm/accounts/kernel/utils/account/ep0_6/encodeDeployCallData.js.map +1 -1
  91. package/_esm/accounts/kernel/utils/account/ep0_6/encodeModuleInstallCallData.js +18 -17
  92. package/_esm/accounts/kernel/utils/account/ep0_6/encodeModuleInstallCallData.js.map +1 -1
  93. package/_esm/accounts/kernel/utils/account/ep0_7/encodeCallData.js +12 -8
  94. package/_esm/accounts/kernel/utils/account/ep0_7/encodeCallData.js.map +1 -1
  95. package/_esm/accounts/kernel/utils/account/ep0_7/encodeDeployCallData.js.map +1 -1
  96. package/_esm/accounts/kernel/utils/common/accountMetadata.js.map +1 -1
  97. package/_esm/accounts/kernel/utils/common/getActionSelector.js +2 -2
  98. package/_esm/accounts/kernel/utils/common/getActionSelector.js.map +1 -1
  99. package/_esm/accounts/kernel/utils/ep0_6/encodeExecuteBatchCall.js +2 -2
  100. package/_esm/accounts/kernel/utils/ep0_6/encodeExecuteBatchCall.js.map +1 -1
  101. package/_esm/accounts/kernel/utils/ep0_6/encodeExecuteDelegateCall.js +1 -1
  102. package/_esm/accounts/kernel/utils/ep0_6/encodeExecuteDelegateCall.js.map +1 -1
  103. package/_esm/accounts/kernel/utils/ep0_6/encodeExecuteSingleCall.js +1 -1
  104. package/_esm/accounts/kernel/utils/ep0_6/encodeExecuteSingleCall.js.map +1 -1
  105. package/_esm/accounts/kernel/utils/ep0_7/encodeExecuteBatchCall.js +2 -2
  106. package/_esm/accounts/kernel/utils/ep0_7/encodeExecuteBatchCall.js.map +1 -1
  107. package/_esm/accounts/kernel/utils/ep0_7/encodeExecuteCall.js +2 -2
  108. package/_esm/accounts/kernel/utils/ep0_7/encodeExecuteCall.js.map +1 -1
  109. package/_esm/accounts/kernel/utils/plugins/ep0_6/getEncodedPluginsData.js.map +1 -1
  110. package/_esm/accounts/kernel/utils/plugins/ep0_6/getPluginsEnableTypedData.js.map +1 -1
  111. package/_esm/accounts/kernel/utils/plugins/ep0_7/getPluginsEnableTypedData.js.map +1 -1
  112. package/_esm/accounts/kernel/v1/createKernelAccountV1.js +91 -98
  113. package/_esm/accounts/kernel/v1/createKernelAccountV1.js.map +1 -1
  114. package/_esm/accounts/kernel/v2/createKernelAccountV0_2.js +105 -118
  115. package/_esm/accounts/kernel/v2/createKernelAccountV0_2.js.map +1 -1
  116. package/_esm/accounts/utils/getCustomNonceKeyFromString.js +2 -4
  117. package/_esm/accounts/utils/getCustomNonceKeyFromString.js.map +1 -1
  118. package/_esm/accounts/utils/index.js +0 -5
  119. package/_esm/accounts/utils/index.js.map +1 -1
  120. package/_esm/accounts/utils/multisend.js.map +1 -1
  121. package/_esm/accounts/utils/toKernelPluginManager.js +14 -16
  122. package/_esm/accounts/utils/toKernelPluginManager.js.map +1 -1
  123. package/_esm/actions/account-client/changeSudoValidator.js +23 -17
  124. package/_esm/actions/account-client/changeSudoValidator.js.map +1 -1
  125. package/_esm/actions/account-client/getKernelV3ModuleCurrentNonce.js +8 -6
  126. package/_esm/actions/account-client/getKernelV3ModuleCurrentNonce.js.map +1 -1
  127. package/_esm/actions/account-client/invalidateNonce.js +20 -15
  128. package/_esm/actions/account-client/invalidateNonce.js.map +1 -1
  129. package/_esm/actions/account-client/sendTransaction.js +85 -0
  130. package/_esm/actions/account-client/sendTransaction.js.map +1 -0
  131. package/_esm/actions/account-client/signMessage.js +58 -0
  132. package/_esm/actions/account-client/signMessage.js.map +1 -0
  133. package/_esm/actions/account-client/signTypedData.js +127 -0
  134. package/_esm/actions/account-client/signTypedData.js.map +1 -0
  135. package/_esm/actions/account-client/signUserOperation.js +7 -5
  136. package/_esm/actions/account-client/signUserOperation.js.map +1 -1
  137. package/_esm/actions/account-client/uninstallPlugin.js +10 -9
  138. package/_esm/actions/account-client/uninstallPlugin.js.map +1 -1
  139. package/_esm/actions/account-client/writeContract.js +18 -0
  140. package/_esm/actions/account-client/writeContract.js.map +1 -0
  141. package/_esm/actions/index.js +6 -1
  142. package/_esm/actions/index.js.map +1 -1
  143. package/_esm/actions/paymaster/estimateGasInERC20.js +3 -3
  144. package/_esm/actions/paymaster/estimateGasInERC20.js.map +1 -1
  145. package/_esm/actions/paymaster/sponsorUserOperation.js +3 -5
  146. package/_esm/actions/paymaster/sponsorUserOperation.js.map +1 -1
  147. package/_esm/actions/public/getAccountNonce.js +61 -0
  148. package/_esm/actions/public/getAccountNonce.js.map +1 -0
  149. package/_esm/actions/public/getSenderAddress.js +191 -0
  150. package/_esm/actions/public/getSenderAddress.js.map +1 -0
  151. package/_esm/actions/public/index.js +3 -0
  152. package/_esm/actions/public/index.js.map +1 -0
  153. package/_esm/clients/decorators/kernel.js +19 -28
  154. package/_esm/clients/decorators/kernel.js.map +1 -1
  155. package/_esm/clients/fallbackKernelAccountClient.js.map +1 -1
  156. package/_esm/clients/kernelAccountClient.js +28 -46
  157. package/_esm/clients/kernelAccountClient.js.map +1 -1
  158. package/_esm/clients/paymasterClient.js +8 -19
  159. package/_esm/clients/paymasterClient.js.map +1 -1
  160. package/_esm/errors/index.js +14 -0
  161. package/_esm/errors/index.js.map +1 -0
  162. package/_esm/gasTokenAddresses.js +2 -1
  163. package/_esm/gasTokenAddresses.js.map +1 -1
  164. package/_esm/index.js.map +1 -1
  165. package/_esm/providers/KernelEIP1193Provider.js.map +1 -1
  166. package/_esm/types/kernel.js.map +1 -1
  167. package/_esm/utils.js +29 -7
  168. package/_esm/utils.js.map +1 -1
  169. package/_types/accounts/index.d.ts +2 -2
  170. package/_types/accounts/index.d.ts.map +1 -1
  171. package/_types/accounts/kernel/createKernelAccount.d.ts +21 -18
  172. package/_types/accounts/kernel/createKernelAccount.d.ts.map +1 -1
  173. package/_types/accounts/kernel/utils/account/ep0_6/encodeCallData.d.ts +8 -3
  174. package/_types/accounts/kernel/utils/account/ep0_6/encodeCallData.d.ts.map +1 -1
  175. package/_types/accounts/kernel/utils/account/ep0_6/encodeDeployCallData.d.ts +3 -2
  176. package/_types/accounts/kernel/utils/account/ep0_6/encodeDeployCallData.d.ts.map +1 -1
  177. package/_types/accounts/kernel/utils/account/ep0_6/encodeModuleInstallCallData.d.ts +0 -1
  178. package/_types/accounts/kernel/utils/account/ep0_6/encodeModuleInstallCallData.d.ts.map +1 -1
  179. package/_types/accounts/kernel/utils/account/ep0_7/encodeCallData.d.ts +8 -3
  180. package/_types/accounts/kernel/utils/account/ep0_7/encodeCallData.d.ts.map +1 -1
  181. package/_types/accounts/kernel/utils/account/ep0_7/encodeDeployCallData.d.ts +3 -2
  182. package/_types/accounts/kernel/utils/account/ep0_7/encodeDeployCallData.d.ts.map +1 -1
  183. package/_types/accounts/kernel/utils/common/accountMetadata.d.ts +2 -2
  184. package/_types/accounts/kernel/utils/common/accountMetadata.d.ts.map +1 -1
  185. package/_types/accounts/kernel/utils/common/getActionSelector.d.ts +1 -1
  186. package/_types/accounts/kernel/utils/common/getActionSelector.d.ts.map +1 -1
  187. package/_types/accounts/kernel/utils/ep0_6/encodeExecuteBatchCall.d.ts +1 -1
  188. package/_types/accounts/kernel/utils/ep0_6/encodeExecuteBatchCall.d.ts.map +1 -1
  189. package/_types/accounts/kernel/utils/ep0_7/encodeExecuteBatchCall.d.ts +1 -1
  190. package/_types/accounts/kernel/utils/ep0_7/encodeExecuteBatchCall.d.ts.map +1 -1
  191. package/_types/accounts/kernel/utils/plugins/ep0_6/getEncodedPluginsData.d.ts +2 -3
  192. package/_types/accounts/kernel/utils/plugins/ep0_6/getEncodedPluginsData.d.ts.map +1 -1
  193. package/_types/accounts/kernel/utils/plugins/ep0_6/getPluginsEnableTypedData.d.ts +4 -5
  194. package/_types/accounts/kernel/utils/plugins/ep0_6/getPluginsEnableTypedData.d.ts.map +1 -1
  195. package/_types/accounts/kernel/utils/plugins/ep0_7/getPluginsEnableTypedData.d.ts +2 -3
  196. package/_types/accounts/kernel/utils/plugins/ep0_7/getPluginsEnableTypedData.d.ts.map +1 -1
  197. package/_types/accounts/kernel/utils/types.d.ts +2 -2
  198. package/_types/accounts/kernel/utils/types.d.ts.map +1 -1
  199. package/_types/accounts/kernel/v1/createKernelAccountV1.d.ts +18 -9
  200. package/_types/accounts/kernel/v1/createKernelAccountV1.d.ts.map +1 -1
  201. package/_types/accounts/kernel/v2/createKernelAccountV0_2.d.ts +9 -7
  202. package/_types/accounts/kernel/v2/createKernelAccountV0_2.d.ts.map +1 -1
  203. package/_types/accounts/utils/getCustomNonceKeyFromString.d.ts +2 -2
  204. package/_types/accounts/utils/getCustomNonceKeyFromString.d.ts.map +1 -1
  205. package/_types/accounts/utils/index.d.ts +0 -2
  206. package/_types/accounts/utils/index.d.ts.map +1 -1
  207. package/_types/accounts/utils/multisend.d.ts +2 -2
  208. package/_types/accounts/utils/multisend.d.ts.map +1 -1
  209. package/_types/accounts/utils/toKernelPluginManager.d.ts +4 -4
  210. package/_types/accounts/utils/toKernelPluginManager.d.ts.map +1 -1
  211. package/_types/actions/account-client/changeSudoValidator.d.ts +5 -11
  212. package/_types/actions/account-client/changeSudoValidator.d.ts.map +1 -1
  213. package/_types/actions/account-client/getKernelV3ModuleCurrentNonce.d.ts +2 -5
  214. package/_types/actions/account-client/getKernelV3ModuleCurrentNonce.d.ts.map +1 -1
  215. package/_types/actions/account-client/invalidateNonce.d.ts +4 -6
  216. package/_types/actions/account-client/invalidateNonce.d.ts.map +1 -1
  217. package/_types/actions/account-client/sendTransaction.d.ts +50 -0
  218. package/_types/actions/account-client/sendTransaction.d.ts.map +1 -0
  219. package/_types/actions/account-client/signMessage.d.ts +50 -0
  220. package/_types/actions/account-client/signMessage.d.ts.map +1 -0
  221. package/_types/actions/account-client/signTypedData.d.ts +104 -0
  222. package/_types/actions/account-client/signTypedData.d.ts.map +1 -0
  223. package/_types/actions/account-client/signUserOperation.d.ts +4 -6
  224. package/_types/actions/account-client/signUserOperation.d.ts.map +1 -1
  225. package/_types/actions/account-client/uninstallPlugin.d.ts +5 -7
  226. package/_types/actions/account-client/uninstallPlugin.d.ts.map +1 -1
  227. package/_types/actions/account-client/writeContract.d.ts +4 -0
  228. package/_types/actions/account-client/writeContract.d.ts.map +1 -0
  229. package/_types/actions/index.d.ts +6 -1
  230. package/_types/actions/index.d.ts.map +1 -1
  231. package/_types/actions/paymaster/estimateGasInERC20.d.ts +1305 -4
  232. package/_types/actions/paymaster/estimateGasInERC20.d.ts.map +1 -1
  233. package/_types/actions/paymaster/sponsorUserOperation.d.ts +1314 -10
  234. package/_types/actions/paymaster/sponsorUserOperation.d.ts.map +1 -1
  235. package/_types/actions/public/getAccountNonce.d.ts +34 -0
  236. package/_types/actions/public/getAccountNonce.d.ts.map +1 -0
  237. package/_types/actions/public/getSenderAddress.d.ts +46 -0
  238. package/_types/actions/public/getSenderAddress.d.ts.map +1 -0
  239. package/_types/actions/public/index.d.ts +3 -0
  240. package/_types/actions/public/index.d.ts.map +1 -0
  241. package/_types/clients/decorators/kernel.d.ts +774 -20
  242. package/_types/clients/decorators/kernel.d.ts.map +1 -1
  243. package/_types/clients/fallbackKernelAccountClient.d.ts +255 -4
  244. package/_types/clients/fallbackKernelAccountClient.d.ts.map +1 -1
  245. package/_types/clients/kernelAccountClient.d.ts +34 -36
  246. package/_types/clients/kernelAccountClient.d.ts.map +1 -1
  247. package/_types/clients/paymasterClient.d.ts +10 -24
  248. package/_types/clients/paymasterClient.d.ts.map +1 -1
  249. package/_types/errors/index.d.ts +7 -0
  250. package/_types/errors/index.d.ts.map +1 -0
  251. package/_types/gasTokenAddresses.d.ts +1 -1
  252. package/_types/gasTokenAddresses.d.ts.map +1 -1
  253. package/_types/index.d.ts +1 -1
  254. package/_types/index.d.ts.map +1 -1
  255. package/_types/providers/KernelEIP1193Provider.d.ts +3 -4
  256. package/_types/providers/KernelEIP1193Provider.d.ts.map +1 -1
  257. package/_types/types/index.d.ts +1 -0
  258. package/_types/types/index.d.ts.map +1 -1
  259. package/_types/types/kernel.d.ts +25 -27
  260. package/_types/types/kernel.d.ts.map +1 -1
  261. package/_types/utils.d.ts +1310 -4
  262. package/_types/utils.d.ts.map +1 -1
  263. package/accounts/index.ts +5 -2
  264. package/accounts/kernel/createKernelAccount.ts +312 -357
  265. package/accounts/kernel/utils/account/ep0_6/encodeCallData.ts +22 -12
  266. package/accounts/kernel/utils/account/ep0_6/encodeDeployCallData.ts +6 -3
  267. package/accounts/kernel/utils/account/ep0_6/encodeModuleInstallCallData.ts +22 -19
  268. package/accounts/kernel/utils/account/ep0_7/encodeCallData.ts +21 -11
  269. package/accounts/kernel/utils/account/ep0_7/encodeDeployCallData.ts +6 -3
  270. package/accounts/kernel/utils/common/accountMetadata.ts +2 -7
  271. package/accounts/kernel/utils/common/getActionSelector.ts +3 -3
  272. package/accounts/kernel/utils/ep0_6/encodeExecuteBatchCall.ts +3 -3
  273. package/accounts/kernel/utils/ep0_6/encodeExecuteDelegateCall.ts +1 -1
  274. package/accounts/kernel/utils/ep0_6/encodeExecuteSingleCall.ts +1 -1
  275. package/accounts/kernel/utils/ep0_7/encodeExecuteBatchCall.ts +3 -3
  276. package/accounts/kernel/utils/ep0_7/encodeExecuteCall.ts +2 -2
  277. package/accounts/kernel/utils/plugins/ep0_6/getEncodedPluginsData.ts +2 -8
  278. package/accounts/kernel/utils/plugins/ep0_6/getPluginsEnableTypedData.ts +4 -10
  279. package/accounts/kernel/utils/plugins/ep0_7/getPluginsEnableTypedData.ts +2 -8
  280. package/accounts/kernel/utils/types.ts +2 -2
  281. package/accounts/kernel/v1/createKernelAccountV1.ts +147 -174
  282. package/accounts/kernel/v2/createKernelAccountV0_2.ts +135 -179
  283. package/accounts/utils/getCustomNonceKeyFromString.ts +3 -6
  284. package/accounts/utils/index.ts +0 -9
  285. package/accounts/utils/multisend.ts +5 -2
  286. package/accounts/utils/toKernelPluginManager.ts +23 -27
  287. package/actions/account-client/changeSudoValidator.ts +61 -85
  288. package/actions/account-client/getKernelV3ModuleCurrentNonce.ts +12 -51
  289. package/actions/account-client/invalidateNonce.ts +38 -67
  290. package/actions/account-client/sendTransaction.ts +134 -0
  291. package/actions/account-client/signMessage.ts +75 -0
  292. package/actions/account-client/signTypedData.ts +159 -0
  293. package/actions/account-client/signUserOperation.ts +31 -63
  294. package/actions/account-client/uninstallPlugin.ts +35 -56
  295. package/actions/account-client/writeContract.ts +72 -0
  296. package/actions/index.ts +15 -6
  297. package/actions/paymaster/estimateGasInERC20.ts +12 -8
  298. package/actions/paymaster/sponsorUserOperation.ts +52 -50
  299. package/actions/public/getAccountNonce.ts +77 -0
  300. package/actions/public/getSenderAddress.ts +276 -0
  301. package/actions/public/index.ts +9 -0
  302. package/clients/decorators/kernel.ts +363 -159
  303. package/clients/fallbackKernelAccountClient.ts +9 -11
  304. package/clients/kernelAccountClient.ts +142 -104
  305. package/clients/paymasterClient.ts +69 -43
  306. package/errors/index.ts +17 -0
  307. package/gasTokenAddresses.ts +3 -2
  308. package/index.ts +5 -2
  309. package/package.json +11 -34
  310. package/providers/KernelEIP1193Provider.ts +4 -7
  311. package/types/index.ts +2 -0
  312. package/types/kernel.ts +64 -63
  313. package/utils.ts +41 -13
  314. package/_cjs/actions/paymaster/sponsorUserOperationEip7677.js +0 -59
  315. package/_cjs/actions/paymaster/sponsorUserOperationEip7677.js.map +0 -1
  316. package/_esm/actions/paymaster/sponsorUserOperationEip7677.js +0 -58
  317. package/_esm/actions/paymaster/sponsorUserOperationEip7677.js.map +0 -1
  318. package/_types/actions/paymaster/sponsorUserOperationEip7677.d.ts +0 -16
  319. package/_types/actions/paymaster/sponsorUserOperationEip7677.d.ts.map +0 -1
  320. package/actions/paymaster/sponsorUserOperationEip7677.ts +0 -152
@@ -1,5 +1,4 @@
1
- import { getEntryPointVersion } from "permissionless";
2
- import { deepHexlify } from "permissionless/utils";
1
+ import { deepHexlify } from "../../utils.js";
3
2
  /**
4
3
  * Returns paymasterAndData & updated gas parameters required to sponsor a userOperation.
5
4
  */
@@ -10,7 +9,7 @@ export const sponsorUserOperation = async (client, args) => {
10
9
  {
11
10
  chainId: client.chain?.id,
12
11
  userOp: deepHexlify(args.userOperation),
13
- entryPointAddress: args.entryPoint,
12
+ entryPointAddress: args.entryPoint.address,
14
13
  gasTokenData: args.gasToken && {
15
14
  tokenAddress: args.gasToken
16
15
  },
@@ -19,8 +18,7 @@ export const sponsorUserOperation = async (client, args) => {
19
18
  }
20
19
  ]
21
20
  });
22
- const entryPointVersion = getEntryPointVersion(args.entryPoint);
23
- if (entryPointVersion === "v0.6") {
21
+ if (args.entryPoint.version === "0.6") {
24
22
  return {
25
23
  paymasterAndData: response.paymasterAndData,
26
24
  preVerificationGas: BigInt(response.preVerificationGas),
@@ -1 +1 @@
1
- {"version":3,"file":"sponsorUserOperation.js","sourceRoot":"","sources":["../../../actions/paymaster/sponsorUserOperation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAOrD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAqDlD;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EACrC,MAA0C,EAC1C,IAAgD,EACG,EAAE;IACrD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,EAAE,yBAAyB;QACjC,MAAM,EAAE;YACJ;gBACI,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,EAAY;gBACnC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC;gBACvC,iBAAiB,EAAE,IAAI,CAAC,UAAU;gBAClC,YAAY,EAAE,IAAI,CAAC,QAAQ,IAAI;oBAC3B,YAAY,EAAE,IAAI,CAAC,QAAQ;iBAC9B;gBACD,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,IAAI,KAAK;gBAClD,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,IAAI;aAC5C;SACJ;KACJ,CAAC,CAAA;IACF,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC/D,IAAI,iBAAiB,KAAK,MAAM,EAAE,CAAC;QAC/B,OAAO;YACH,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;YAC3C,kBAAkB,EAAE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YACvD,oBAAoB,EAAE,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC;YAC3D,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC3C,YAAY,EACR,QAAQ,CAAC,YAAY,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC1D,oBAAoB,EAChB,QAAQ,CAAC,oBAAoB;gBAC7B,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC;SACE,CAAA;IACnD,CAAC;IACD,MAAM,WAAW,GAAG,QAWnB,CAAA;IAED,OAAO;QACH,YAAY,EAAE,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC;QAC9C,oBAAoB,EAAE,MAAM,CAAC,WAAW,CAAC,oBAAoB,CAAC;QAC9D,kBAAkB,EAAE,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC;QAC1D,SAAS,EAAE,WAAW,CAAC,SAAS;QAChC,6BAA6B,EAAE,MAAM,CACjC,WAAW,CAAC,6BAA6B,CAC5C;QACD,uBAAuB,EAAE,MAAM,CAAC,WAAW,CAAC,uBAAuB,CAAC;QACpE,aAAa,EAAE,WAAW,CAAC,aAAa;QACxC,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC;QACpE,oBAAoB,EAChB,QAAQ,CAAC,oBAAoB;YAC7B,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC;KACE,CAAA;AACnD,CAAC,CAAA"}
1
+ {"version":3,"file":"sponsorUserOperation.js","sourceRoot":"","sources":["../../../actions/paymaster/sponsorUserOperation.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAwD5C;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAGrC,MAAiD,EACjD,IAAuD,EACG,EAAE;IAC5D,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,EAAE,yBAAyB;QACjC,MAAM,EAAE;YACJ;gBACI,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,EAAY;gBACnC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC;gBACvC,iBAAiB,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO;gBAC1C,YAAY,EAAE,IAAI,CAAC,QAAQ,IAAI;oBAC3B,YAAY,EAAE,IAAI,CAAC,QAAQ;iBAC9B;gBACD,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,IAAI,KAAK;gBAClD,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,IAAI;aAC5C;SACJ;KACJ,CAAC,CAAA;IACF,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QACpC,OAAO;YACH,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;YAC3C,kBAAkB,EAAE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YACvD,oBAAoB,EAAE,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC;YAC3D,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC3C,YAAY,EACR,QAAQ,CAAC,YAAY,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC1D,oBAAoB,EAChB,QAAQ,CAAC,oBAAoB;gBAC7B,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC;SACS,CAAA;IAC1D,CAAC;IACD,MAAM,WAAW,GAAG,QAWnB,CAAA;IAED,OAAO;QACH,YAAY,EAAE,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC;QAC9C,oBAAoB,EAAE,MAAM,CAAC,WAAW,CAAC,oBAAoB,CAAC;QAC9D,kBAAkB,EAAE,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC;QAC1D,SAAS,EAAE,WAAW,CAAC,SAAS;QAChC,6BAA6B,EAAE,MAAM,CACjC,WAAW,CAAC,6BAA6B,CAC5C;QACD,uBAAuB,EAAE,MAAM,CAAC,WAAW,CAAC,uBAAuB,CAAC;QACpE,aAAa,EAAE,WAAW,CAAC,aAAa;QACxC,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC;QACpE,oBAAoB,EAChB,QAAQ,CAAC,oBAAoB;YAC7B,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC;KACS,CAAA;AAC1D,CAAC,CAAA"}
@@ -0,0 +1,61 @@
1
+ // Copied from: https://github.com/pimlicolabs/permissionless.js/blob/main/packages/permissionless/actions/public/getAccountNonce.ts
2
+ import { readContract } from "viem/actions";
3
+ import { getAction } from "viem/utils";
4
+ /**
5
+ * Returns the nonce of the account with the entry point.
6
+ *
7
+ * - Docs: https://docs.pimlico.io/permissionless/reference/public-actions/getAccountNonce
8
+ *
9
+ * @param client {@link client} that you created using viem's createPublicClient.
10
+ * @param args {@link GetAccountNonceParams} address, entryPoint & key
11
+ * @returns bigint nonce
12
+ *
13
+ * @example
14
+ * import { createPublicClient } from "viem"
15
+ * import { getAccountNonce } from "permissionless/actions"
16
+ *
17
+ * const client = createPublicClient({
18
+ * chain: goerli,
19
+ * transport: http("https://goerli.infura.io/v3/your-infura-key")
20
+ * })
21
+ *
22
+ * const nonce = await getAccountNonce(client, {
23
+ * address,
24
+ * entryPoint,
25
+ * key
26
+ * })
27
+ *
28
+ * // Return 0n
29
+ */
30
+ export const getAccountNonce = async (client, args) => {
31
+ const { address, entryPointAddress, key = BigInt(0) } = args;
32
+ return await getAction(client, readContract, "readContract")({
33
+ address: entryPointAddress,
34
+ abi: [
35
+ {
36
+ inputs: [
37
+ {
38
+ name: "sender",
39
+ type: "address"
40
+ },
41
+ {
42
+ name: "key",
43
+ type: "uint192"
44
+ }
45
+ ],
46
+ name: "getNonce",
47
+ outputs: [
48
+ {
49
+ name: "nonce",
50
+ type: "uint256"
51
+ }
52
+ ],
53
+ stateMutability: "view",
54
+ type: "function"
55
+ }
56
+ ],
57
+ functionName: "getNonce",
58
+ args: [address, key]
59
+ });
60
+ };
61
+ //# sourceMappingURL=getAccountNonce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAccountNonce.js","sourceRoot":"","sources":["../../../actions/public/getAccountNonce.ts"],"names":[],"mappings":"AAAA,oIAAoI;AAGpI,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAQtC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAChC,MAAc,EACd,IAA2B,EACZ,EAAE;IACjB,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAA;IAE5D,OAAO,MAAM,SAAS,CAClB,MAAM,EACN,YAAY,EACZ,cAAc,CACjB,CAAC;QACE,OAAO,EAAE,iBAAiB;QAC1B,GAAG,EAAE;YACD;gBACI,MAAM,EAAE;oBACJ;wBACI,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,SAAS;qBAClB;oBACD;wBACI,IAAI,EAAE,KAAK;wBACX,IAAI,EAAE,SAAS;qBAClB;iBACJ;gBACD,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE;oBACL;wBACI,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,SAAS;qBAClB;iBACJ;gBACD,eAAe,EAAE,MAAM;gBACvB,IAAI,EAAE,UAAU;aACnB;SACJ;QACD,YAAY,EAAE,UAAU;QACxB,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC;KACvB,CAAC,CAAA;AACN,CAAC,CAAA"}
@@ -0,0 +1,191 @@
1
+ // Copied from: https://github.com/pimlicolabs/permissionless.js/blob/main/packages/permissionless/actions/public/getSenderAddress.ts
2
+ import { BaseError, ContractFunctionRevertedError, InvalidInputRpcError, RawContractError, RpcRequestError, UnknownRpcError, concat, decodeErrorResult } from "viem";
3
+ import { simulateContract } from "viem/actions";
4
+ import { getAction } from "viem/utils";
5
+ export class InvalidEntryPointError extends BaseError {
6
+ constructor({ cause, entryPointAddress } = {}) {
7
+ super(`The entry point address (\`entryPoint\`${entryPointAddress ? ` = ${entryPointAddress}` : ""}) is not a valid entry point. getSenderAddress did not revert with a SenderAddressResult error.`, {
8
+ cause
9
+ });
10
+ Object.defineProperty(this, "name", {
11
+ enumerable: true,
12
+ configurable: true,
13
+ writable: true,
14
+ value: "InvalidEntryPointError"
15
+ });
16
+ }
17
+ }
18
+ /**
19
+ * Returns the address of the account that will be deployed with the given init code.
20
+ *
21
+ * - Docs: https://docs.pimlico.io/permissionless/reference/public-actions/getSenderAddress
22
+ *
23
+ * @param client {@link Client} that you created using viem's createPublicClient.
24
+ * @param args {@link GetSenderAddressParams} initCode & entryPoint
25
+ * @returns Sender's Address
26
+ *
27
+ * @example
28
+ * import { createPublicClient } from "viem"
29
+ * import { getSenderAddress } from "permissionless/actions"
30
+ *
31
+ * const publicClient = createPublicClient({
32
+ * chain: goerli,
33
+ * transport: http("https://goerli.infura.io/v3/your-infura-key")
34
+ * })
35
+ *
36
+ * const senderAddress = await getSenderAddress(publicClient, {
37
+ * initCode,
38
+ * entryPoint
39
+ * })
40
+ *
41
+ * // Return '0x7a88a206ba40b37a8c07a2b5688cf8b287318b63'
42
+ */
43
+ export const getSenderAddress = async (client, args) => {
44
+ const { initCode, entryPointAddress, factory, factoryData } = args;
45
+ if (!initCode && !factory && !factoryData) {
46
+ throw new Error("Either `initCode` or `factory` and `factoryData` must be provided");
47
+ }
48
+ try {
49
+ await getAction(client, simulateContract, "simulateContract")({
50
+ address: entryPointAddress,
51
+ abi: [
52
+ {
53
+ inputs: [
54
+ {
55
+ internalType: "address",
56
+ name: "sender",
57
+ type: "address"
58
+ }
59
+ ],
60
+ name: "SenderAddressResult",
61
+ type: "error"
62
+ },
63
+ {
64
+ inputs: [
65
+ {
66
+ internalType: "bytes",
67
+ name: "initCode",
68
+ type: "bytes"
69
+ }
70
+ ],
71
+ name: "getSenderAddress",
72
+ outputs: [],
73
+ stateMutability: "nonpayable",
74
+ type: "function"
75
+ }
76
+ ],
77
+ functionName: "getSenderAddress",
78
+ args: [initCode || concat([factory, factoryData])]
79
+ });
80
+ }
81
+ catch (e) {
82
+ const revertError = e.walk((err) => err instanceof ContractFunctionRevertedError ||
83
+ err instanceof RpcRequestError ||
84
+ err instanceof InvalidInputRpcError ||
85
+ err instanceof UnknownRpcError);
86
+ if (!revertError) {
87
+ // biome-ignore lint/suspicious/noExplicitAny:
88
+ const cause = e.cause;
89
+ const errorName = cause?.data?.errorName ?? "";
90
+ if (errorName === "SenderAddressResult" &&
91
+ cause?.data?.args &&
92
+ cause?.data?.args[0]) {
93
+ return cause.data?.args[0];
94
+ }
95
+ }
96
+ if (revertError instanceof ContractFunctionRevertedError) {
97
+ const errorName = revertError.data?.errorName ?? "";
98
+ if (errorName === "SenderAddressResult" &&
99
+ revertError.data?.args &&
100
+ revertError.data?.args[0]) {
101
+ return revertError.data?.args[0];
102
+ }
103
+ }
104
+ if (revertError instanceof RpcRequestError) {
105
+ const hexStringRegex = /0x[a-fA-F0-9]+/;
106
+ // biome-ignore lint/suspicious/noExplicitAny:
107
+ const match = revertError.cause.data.match(hexStringRegex);
108
+ if (!match) {
109
+ throw new Error("Failed to parse revert bytes from RPC response");
110
+ }
111
+ const data = match[0];
112
+ const error = decodeErrorResult({
113
+ abi: [
114
+ {
115
+ inputs: [
116
+ {
117
+ internalType: "address",
118
+ name: "sender",
119
+ type: "address"
120
+ }
121
+ ],
122
+ name: "SenderAddressResult",
123
+ type: "error"
124
+ }
125
+ ],
126
+ data
127
+ });
128
+ return error.args[0];
129
+ }
130
+ if (revertError instanceof InvalidInputRpcError) {
131
+ const { data: data_ } = (e instanceof RawContractError
132
+ ? e
133
+ : e instanceof BaseError
134
+ ? e.walk((err) => "data" in err) || e.walk()
135
+ : {});
136
+ const data = typeof data_ === "string" ? data_ : data_?.data;
137
+ if (data === undefined) {
138
+ throw new Error("Failed to parse revert bytes from RPC response");
139
+ }
140
+ const error = decodeErrorResult({
141
+ abi: [
142
+ {
143
+ inputs: [
144
+ {
145
+ internalType: "address",
146
+ name: "sender",
147
+ type: "address"
148
+ }
149
+ ],
150
+ name: "SenderAddressResult",
151
+ type: "error"
152
+ }
153
+ ],
154
+ data
155
+ });
156
+ return error.args[0];
157
+ }
158
+ if (revertError instanceof UnknownRpcError) {
159
+ const parsedBody = JSON.parse(
160
+ // biome-ignore lint/suspicious/noExplicitAny:
161
+ revertError.cause.body);
162
+ const revertData = parsedBody.error.data;
163
+ const hexStringRegex = /0x[a-fA-F0-9]+/;
164
+ const match = revertData.match(hexStringRegex);
165
+ if (!match) {
166
+ throw new Error("Failed to parse revert bytes from RPC response");
167
+ }
168
+ const data = match[0];
169
+ const error = decodeErrorResult({
170
+ abi: [
171
+ {
172
+ inputs: [
173
+ {
174
+ internalType: "address",
175
+ name: "sender",
176
+ type: "address"
177
+ }
178
+ ],
179
+ name: "SenderAddressResult",
180
+ type: "error"
181
+ }
182
+ ],
183
+ data
184
+ });
185
+ return error.args[0];
186
+ }
187
+ throw e;
188
+ }
189
+ throw new InvalidEntryPointError({ entryPointAddress });
190
+ };
191
+ //# sourceMappingURL=getSenderAddress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSenderAddress.js","sourceRoot":"","sources":["../../../actions/public/getSenderAddress.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { getAccountNonce } from "./getAccountNonce.js";
2
+ export { getSenderAddress } from "./getSenderAddress.js";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../actions/public/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,eAAe,EAClB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAGH,gBAAgB,EACnB,MAAM,uBAAuB,CAAA"}
@@ -1,42 +1,33 @@
1
- import { smartAccountActions } from "permissionless";
2
1
  import { getKernelV3ModuleCurrentNonce } from "../../actions/account-client/getKernelV3ModuleCurrentNonce.js";
3
2
  import { getUserOperationGasPrice } from "../../actions/account-client/getUserOperationGasPrice.js";
4
3
  import { invalidateNonce } from "../../actions/account-client/invalidateNonce.js";
5
- import { changeSudoValidator, signUserOperation, sponsorUserOperationEip7677, uninstallPlugin } from "../../actions/index.js";
4
+ import { sendTransaction } from "../../actions/account-client/sendTransaction.js";
5
+ import { signMessage } from "../../actions/account-client/signMessage.js";
6
+ import { signTypedData } from "../../actions/account-client/signTypedData.js";
7
+ import { writeContract } from "../../actions/account-client/writeContract.js";
8
+ import { changeSudoValidator, signUserOperation, uninstallPlugin } from "../../actions/index.js";
6
9
  import { estimateGasInERC20 } from "../../actions/paymaster/estimateGasInERC20.js";
7
10
  import { sponsorUserOperation } from "../../actions/paymaster/sponsorUserOperation.js";
8
- export const zerodevPaymasterActions = (entryPointAddress) => (client) => ({
11
+ export const zerodevPaymasterActions = (entryPoint) => (client) => ({
9
12
  sponsorUserOperation: async (args) => sponsorUserOperation(client, {
10
13
  ...args,
11
- entryPoint: entryPointAddress
14
+ entryPoint
12
15
  }),
13
- estimateGasInERC20: async (args) => estimateGasInERC20(client, args),
14
- sponsorUserOperationEip7677: async (args, bundlerClient, stateOverrides) => sponsorUserOperationEip7677(client, args, bundlerClient, stateOverrides)
16
+ estimateGasInERC20: async (args) => estimateGasInERC20(client, args)
15
17
  });
16
- export function kernelAccountClientActions({ middleware }) {
18
+ export function kernelAccountClientActions() {
17
19
  return (client) => ({
18
- ...smartAccountActions({ middleware })(client),
19
- signUserOperation: (args) => signUserOperation(client, {
20
- ...args,
21
- middleware
22
- }),
20
+ signUserOperation: (args) => signUserOperation(client, args),
23
21
  getUserOperationGasPrice: async () => getUserOperationGasPrice(client),
24
- uninstallPlugin: async (args) => uninstallPlugin(client, {
25
- ...args,
26
- middleware
27
- }),
28
- changeSudoValidator: async (args) => changeSudoValidator(client, {
29
- ...args,
30
- middleware
31
- }),
32
- invalidateNonce: async (args) => invalidateNonce(client, {
33
- ...args,
34
- middleware
35
- }),
36
- getKernelV3ModuleCurrentNonce: async (args) => getKernelV3ModuleCurrentNonce(client, {
37
- ...args,
38
- middleware
39
- })
22
+ uninstallPlugin: async (args) => uninstallPlugin(client, args),
23
+ changeSudoValidator: async (args) => changeSudoValidator(client, args),
24
+ invalidateNonce: async (args) => invalidateNonce(client, args),
25
+ getKernelV3ModuleCurrentNonce: async () => getKernelV3ModuleCurrentNonce(client),
26
+ // biome-ignore lint/suspicious/noExplicitAny: <explanation>
27
+ sendTransaction: (args) => sendTransaction(client, args),
28
+ signMessage: (args) => signMessage(client, args),
29
+ signTypedData: (args) => signTypedData(client, args),
30
+ writeContract: (args) => writeContract(client, args)
40
31
  });
41
32
  }
42
33
  //# sourceMappingURL=kernel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,mBAAmB,EACtB,MAAM,gBAAgB,CAAA;AAMvB,OAAO,EAEH,6BAA6B,EAChC,MAAM,+DAA+D,CAAA;AACtE,OAAO,EAEH,wBAAwB,EAC3B,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAEH,eAAe,EAClB,MAAM,iDAAiD,CAAA;AASxD,OAAO,EACH,mBAAmB,EACnB,iBAAiB,EACjB,2BAA2B,EAC3B,eAAe,EAClB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAGH,kBAAkB,EACrB,MAAM,+CAA+C,CAAA;AACtD,OAAO,EAGH,oBAAoB,EACvB,MAAM,iDAAiD,CAAA;AAoBxD,MAAM,CAAC,MAAM,uBAAuB,GAChC,CAAgC,iBAA6B,EAAE,EAAE,CACjE,CAAC,MAAc,EAA6C,EAAE,CAAC,CAAC;IAC5D,oBAAoB,EAAE,KAAK,EACvB,IAAoE,EACtE,EAAE,CACA,oBAAoB,CAChB,MAA4C,EAC5C;QACI,GAAG,IAAI;QACP,UAAU,EAAE,iBAAiB;KAChC,CACJ;IACL,kBAAkB,EAAE,KAAK,EAAE,IAAkC,EAAE,EAAE,CAC7D,kBAAkB,CACd,MAA4C,EAC5C,IAAI,CACP;IACL,2BAA2B,EAAE,KAAK,EAC9B,IAAuD,EACvD,aAAwC,EACxC,cAA+B,EACjC,EAAE,CACA,2BAA2B,CACvB,MAA4C,EAC5C,IAAI,EACJ,aAAa,EACb,cAAc,CACjB;CACR,CAAC,CAAA;AAyGN,MAAM,UAAU,0BAA0B,CAAgC,EACtE,UAAU,EACW;IACrB,OAAO,CASH,MAAiD,EAMnD,EAAE,CAAC,CAAC;QACF,GAAG,mBAAmB,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;QAC9C,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CACxB,iBAAiB,CACb,MAAM,EACN;YACI,GAAG,IAAI;YACP,UAAU;SAMb,CACJ;QACL,wBAAwB,EAAE,KAAK,IAAI,EAAE,CAAC,wBAAwB,CAAC,MAAM,CAAC;QACtE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAC5B,eAAe,CACX,MAAM,EACN;YACI,GAAG,IAAI;YACP,UAAU;SAMb,CACJ;QACL,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAChC,mBAAmB,CACf,MAAM,EACN;YACI,GAAG,IAAI;YACP,UAAU;SAMb,CACJ;QACL,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAC5B,eAAe,CAAC,MAAM,EAAE;YACpB,GAAG,IAAI;YACP,UAAU;SAMb,CAAC;QACN,6BAA6B,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAC1C,6BAA6B,CAAC,MAAM,EAAE;YAClC,GAAG,IAAI;YACP,UAAU;SAMb,CAAC;KACT,CAAC,CAAA;AACN,CAAC"}
1
+ {"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,6BAA6B,EAAE,MAAM,+DAA+D,CAAA;AAC7G,OAAO,EAEH,wBAAwB,EAC3B,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAEH,eAAe,EAClB,MAAM,iDAAiD,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAA;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,6CAA6C,CAAA;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAM7E,OAAO,EACH,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EAClB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAGH,kBAAkB,EACrB,MAAM,+CAA+C,CAAA;AACtD,OAAO,EAGH,oBAAoB,EACvB,MAAM,iDAAiD,CAAA;AAiBxD,MAAM,CAAC,MAAM,uBAAuB,GAChC,CAA8C,UAG7C,EAAE,EAAE,CACL,CAAC,MAAc,EAAoD,EAAE,CAAC,CAAC;IACnE,oBAAoB,EAAE,KAAK,EACvB,IAGC,EACH,EAAE,CACA,oBAAoB,CAChB,MAAmD,EACnD;QACI,GAAG,IAAI;QACP,UAAU;KACb,CACJ;IACL,kBAAkB,EAAE,KAAK,EAAE,IAAkC,EAAE,EAAE,CAC7D,kBAAkB,CACd,MAAmD,EACnD,IAAI,CACP;CACR,CAAC,CAAA;AAuXN,MAAM,UAAU,0BAA0B;IACtC,OAAO,CAMH,MAAgD,EACC,EAAE,CAAC,CAAC;QACrD,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC;QAC5D,wBAAwB,EAAE,KAAK,IAAI,EAAE,CAAC,wBAAwB,CAAC,MAAM,CAAC;QACtE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC;QAC9D,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC;QACtE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC;QAC9D,6BAA6B,EAAE,KAAK,IAAI,EAAE,CACtC,6BAA6B,CAAC,MAAM,CAAC;QACzC,4DAA4D;QAC5D,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,IAAW,CAAC;QAC/D,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC;QAChD,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC;QACpD,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC;KACvD,CAAC,CAAA;AACN,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fallbackKernelAccountClient.js","sourceRoot":"","sources":["../../clients/fallbackKernelAccountClient.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAQ7C,OAEC,EACD,OAA4D,EACO,EAAE;IACrE,6DAA6D;IAC7D,+EAA+E;IAC/E,SAAS,oBAAoB,CAAC,IAAiB;QAC3C,2DAA2D;QAC3D,OAAO,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;YAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACtC,IAAI,CAAC;oBACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;oBAC5C,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;wBAC/B,OAAO,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC,CAAA;oBAChC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CACT,UAAU,MAAM,CAAC,IAAI,CAAC,uBAClB,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GACzB,6BAA6B,CAChC,CAAA;oBACD,sCAAsC;oBACtC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;wBACxB,MAAM,OAAO,CAAC,KAAc,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;oBAC3D,CAAC;oBACD,IAAI,CAAC,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC3B,MAAM,KAAK,CAAA;oBACf,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC,CAAA;IACL,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACtC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ;YACvB,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACpB,2DAA2D;gBAC3D,OAAO,CAAC,EAAO,EAAE,EAAE;oBACf,MAAM,aAAa,GAAG,EAAE,CAAC,WAAW,CAAC,CAAA;oBACrC,KAAK,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAC5C,aAAa,CAChB,EAAE,CAAC;wBACA,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE,CAAC;4BACrC,2DAA2D;4BAC3D,CAAC;4BAAC,WAAmB,CAAC,GAAG,CAAC,GAAG,KAAK;4BAC9B,2DAA2D;4BAC3D,GAAG,IAAW,EAChB,EAAE;gCACA,OAAO,YAAY,CAAC,GAAG,IAAI,CAAC,CAAA;4BAChC,CAAC,CAAA;wBACL,CAAC;6BAAM,CAAC;4BACJ,OAAO,CAAC,KAAK,CACT,2CAA2C,GAAG,uBAAuB,OAAO,YAAY,EAAE,CAC7F,CAAA;wBACL,CAAC;oBACL,CAAC;oBACD,OAAO,WAAW,CAAA;gBACtB,CAAC,CAAA;YACL,CAAC;YAED,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;YAClD,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAC9B,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAA;YACrC,CAAC;YACD,OAAO,KAAK,CAAA;QAChB,CAAC;KACJ,CAAC,CAAA;IAEF,OAAO,WAAW,CAAA;AACtB,CAAC,CAAA"}
1
+ {"version":3,"file":"fallbackKernelAccountClient.js","sourceRoot":"","sources":["../../clients/fallbackKernelAccountClient.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAO7C,OAEC,EACD,OAA4D,EACK,EAAE;IACnE,6DAA6D;IAC7D,+EAA+E;IAC/E,SAAS,oBAAoB,CAAC,IAAiB;QAC3C,2DAA2D;QAC3D,OAAO,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;YAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACtC,IAAI,CAAC;oBACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;oBAC5C,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;wBAC/B,OAAO,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC,CAAA;oBAChC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CACT,UAAU,MAAM,CAAC,IAAI,CAAC,uBAClB,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GACzB,6BAA6B,CAChC,CAAA;oBACD,sCAAsC;oBACtC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;wBACxB,MAAM,OAAO,CAAC,KAAc,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;oBAC3D,CAAC;oBACD,IAAI,CAAC,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC3B,MAAM,KAAK,CAAA;oBACf,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC,CAAA;IACL,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACtC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ;YACvB,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACpB,2DAA2D;gBAC3D,OAAO,CAAC,EAAO,EAAE,EAAE;oBACf,MAAM,aAAa,GAAG,EAAE,CAAC,WAAW,CAAC,CAAA;oBACrC,KAAK,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAC5C,aAAa,CAChB,EAAE,CAAC;wBACA,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE,CAAC;4BACrC,2DAA2D;4BAC3D,CAAC;4BAAC,WAAmB,CAAC,GAAG,CAAC,GAAG,KAAK;4BAC9B,2DAA2D;4BAC3D,GAAG,IAAW,EAChB,EAAE;gCACA,OAAO,YAAY,CAAC,GAAG,IAAI,CAAC,CAAA;4BAChC,CAAC,CAAA;wBACL,CAAC;6BAAM,CAAC;4BACJ,OAAO,CAAC,KAAK,CACT,2CAA2C,GAAG,uBAAuB,OAAO,YAAY,EAAE,CAC7F,CAAA;wBACL,CAAC;oBACL,CAAC;oBACD,OAAO,WAAW,CAAA;gBACtB,CAAC,CAAA;YACL,CAAC;YAED,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;YAClD,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAC9B,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAA;YACrC,CAAC;YACD,OAAO,KAAK,CAAA;QAChB,CAAC;KACJ,CAAC,CAAA;IAEF,OAAO,WAAW,CAAA;AACtB,CAAC,CAAA"}
@@ -1,53 +1,35 @@
1
- import { getEntryPointVersion } from "permissionless";
2
- import { http, createClient } from "viem";
3
- import { getUserOperationGasPrice } from "../actions/account-client/getUserOperationGasPrice.js";
1
+ import { createClient } from "viem";
2
+ import { bundlerActions } from "viem/account-abstraction";
4
3
  import { kernelAccountClientActions } from "./decorators/kernel.js";
5
- import { isProviderSet, setPimlicoAsProvider } from "./utils.js";
6
- export const createKernelAccountClient = (parameters) => {
7
- const { key = "Account", name = "Kernel Account Client", bundlerTransport, entryPoint } = parameters;
8
- const entryPointVersion = getEntryPointVersion(entryPoint);
9
- const shouldIncludePimlicoProvider = bundlerTransport({}).config.key === "http" &&
10
- entryPointVersion === "v0.7";
11
- const client = createClient({
4
+ export function createKernelAccountClient(parameters) {
5
+ const { client: client_, key = "Account", name = "Kernel Account Client", paymaster, paymasterContext, bundlerTransport, userOperation } = parameters;
6
+ const client = Object.assign(createClient({
12
7
  ...parameters,
8
+ chain: parameters.chain ?? client_?.chain,
9
+ transport: bundlerTransport,
13
10
  key,
14
11
  name,
15
- transport: (opts) => {
16
- let _bundlerTransport = bundlerTransport({
17
- ...opts,
18
- timeout: bundlerTransport({}).config.timeout,
19
- retryCount: 0
20
- });
21
- if (!shouldIncludePimlicoProvider ||
22
- isProviderSet(_bundlerTransport.value?.url, "ALCHEMY") ||
23
- isProviderSet(_bundlerTransport.value?.url, "ZERODEV") ||
24
- isProviderSet(_bundlerTransport.value?.url, "THIRDWEB") ||
25
- isProviderSet(_bundlerTransport.value?.url, "CONDUIT"))
26
- return _bundlerTransport;
27
- _bundlerTransport = http(setPimlicoAsProvider(_bundlerTransport.value?.url))({
28
- ...opts,
29
- timeout: bundlerTransport({}).config.timeout,
30
- retryCount: 0
31
- });
32
- return _bundlerTransport;
33
- },
34
12
  type: "kernelAccountClient"
35
- });
36
- let middleware = parameters.middleware;
37
- if ((!middleware ||
38
- (typeof middleware !== "function" && !middleware.gasPrice)) &&
39
- client.transport?.url &&
40
- (isProviderSet(client.transport.url, "PIMLICO") ||
41
- isProviderSet(client.transport.url, "THIRDWEB") ||
42
- isProviderSet(client.transport.url, "CONDUIT"))) {
43
- const gasPrice = () => getUserOperationGasPrice(client);
44
- middleware = {
45
- ...middleware,
46
- gasPrice
47
- };
13
+ }), { client: client_, paymaster, paymasterContext, userOperation });
14
+ if (parameters.userOperation?.prepareUserOperation) {
15
+ const customPrepareUserOp = parameters.userOperation.prepareUserOperation;
16
+ return client
17
+ .extend(bundlerActions)
18
+ .extend((client) => ({
19
+ prepareUserOperation: (args) => {
20
+ return customPrepareUserOp(client, args);
21
+ }
22
+ }))
23
+ .extend(bundlerActions)
24
+ .extend((client) => ({
25
+ prepareUserOperation: (args) => {
26
+ return customPrepareUserOp(client, args);
27
+ }
28
+ }))
29
+ .extend(kernelAccountClientActions());
48
30
  }
49
- return client.extend(kernelAccountClientActions({
50
- middleware
51
- }));
52
- };
31
+ return client
32
+ .extend(bundlerActions)
33
+ .extend(kernelAccountClientActions());
34
+ }
53
35
  //# sourceMappingURL=kernelAccountClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"kernelAccountClient.js","sourceRoot":"","sources":["../../clients/kernelAccountClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAKrD,OAAO,EACH,IAAI,EAKJ,YAAY,EACf,MAAM,MAAM,CAAA;AAEb,OAAO,EAAE,wBAAwB,EAAE,MAAM,uDAAuD,CAAA;AAChG,OAAO,EAEH,0BAA0B,EAC7B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAwChE,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAUrC,UAKC,EACkE,EAAE;IACrE,MAAM,EACF,GAAG,GAAG,SAAS,EACf,IAAI,GAAG,uBAAuB,EAC9B,gBAAgB,EAChB,UAAU,EACb,GAAG,UAAU,CAAA;IACd,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAA;IAC1D,MAAM,4BAA4B,GAC9B,gBAAgB,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,MAAM;QAC1C,iBAAiB,KAAK,MAAM,CAAA;IAEhC,MAAM,MAAM,GAAG,YAAY,CAAC;QACxB,GAAG,UAAU;QACb,GAAG;QACH,IAAI;QACJ,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,IAAI,iBAAiB,GAAG,gBAAgB,CAAC;gBACrC,GAAG,IAAI;gBACP,OAAO,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;gBAC5C,UAAU,EAAE,CAAC;aAChB,CAAC,CAAA;YACF,IACI,CAAC,4BAA4B;gBAC7B,aAAa,CAAC,iBAAiB,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC;gBACtD,aAAa,CAAC,iBAAiB,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC;gBACtD,aAAa,CAAC,iBAAiB,CAAC,KAAK,EAAE,GAAG,EAAE,UAAU,CAAC;gBACvD,aAAa,CAAC,iBAAiB,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC;gBAEtD,OAAO,iBAAiB,CAAA;YAC5B,iBAAiB,GAAG,IAAI,CACpB,oBAAoB,CAAC,iBAAiB,CAAC,KAAK,EAAE,GAAG,CAAC,CACrD,CAAC;gBACE,GAAG,IAAI;gBACP,OAAO,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;gBAC5C,UAAU,EAAE,CAAC;aAChB,CAAC,CAAA;YACF,OAAO,iBAAiB,CAAA;QAC5B,CAAC;QACD,IAAI,EAAE,qBAAqB;KAC9B,CAAC,CAAA;IAEF,IAAI,UAAU,GAAG,UAAU,CAAC,UAAU,CAAA;IAEtC,IACI,CAAC,CAAC,UAAU;QACR,CAAC,OAAO,UAAU,KAAK,UAAU,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC/D,MAAM,CAAC,SAAS,EAAE,GAAG;QACrB,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC;YAC3C,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC;YAC/C,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,EACrD,CAAC;QACC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAA;QACvD,UAAU,GAAG;YACT,GAAG,UAAU;YACb,QAAQ;SACX,CAAA;IACL,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAChB,0BAA0B,CAAC;QACvB,UAAU;KACb,CAAC,CACkE,CAAA;AAC5E,CAAC,CAAA"}
1
+ {"version":3,"file":"kernelAccountClient.js","sourceRoot":"","sources":["../../clients/kernelAccountClient.ts"],"names":[],"mappings":"AAAA,OAAO,EASH,YAAY,EACf,MAAM,MAAM,CAAA;AACb,OAAO,EAOH,cAAc,EAEjB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAEH,0BAA0B,EAC7B,MAAM,wBAAwB,CAAA;AAoG/B,MAAM,UAAU,yBAAyB,CACrC,UAAoC;IAEpC,MAAM,EACF,MAAM,EAAE,OAAO,EACf,GAAG,GAAG,SAAS,EACf,IAAI,GAAG,uBAAuB,EAC9B,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EAChB,GAAG,UAAU,CAAA;IAEd,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CACxB,YAAY,CAAC;QACT,GAAG,UAAU;QACb,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,OAAO,EAAE,KAAK;QACzC,SAAS,EAAE,gBAAgB;QAC3B,GAAG;QACH,IAAI;QACJ,IAAI,EAAE,qBAAqB;KAC9B,CAAC,EACF,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,CAClE,CAAA;IAED,IAAI,UAAU,CAAC,aAAa,EAAE,oBAAoB,EAAE,CAAC;QACjD,MAAM,mBAAmB,GACrB,UAAU,CAAC,aAAa,CAAC,oBAAoB,CAAA;QAEjD,OAAO,MAAM;aACR,MAAM,CAAC,cAAc,CAAC;aACtB,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACjB,oBAAoB,EAAE,CAClB,IAAoC,EACtC,EAAE;gBACA,OAAO,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YAC5C,CAAC;SACJ,CAAC,CAAC;aACF,MAAM,CAAC,cAAc,CAAC;aACtB,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACjB,oBAAoB,EAAE,CAClB,IAAoC,EACtC,EAAE;gBACA,OAAO,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YAC5C,CAAC;SACJ,CAAC,CAAC;aACF,MAAM,CAAC,0BAA0B,EAAE,CAAwB,CAAA;IACpE,CAAC;IAED,OAAO,MAAM;SACR,MAAM,CAAC,cAAc,CAAC;SACtB,MAAM,CAAC,0BAA0B,EAAE,CAAwB,CAAA;AACpE,CAAC"}
@@ -1,7 +1,6 @@
1
- import { getEntryPointVersion } from "permissionless";
2
- import { http, createClient } from "viem";
1
+ import { createClient } from "viem";
2
+ import { entryPoint07Address, paymasterActions } from "viem/account-abstraction";
3
3
  import { zerodevPaymasterActions } from "./decorators/kernel.js";
4
- import { isProviderSet, setPimlicoAsProvider } from "./utils.js";
5
4
  /**
6
5
  * Creates a ZeroDev-specific Paymaster Client with a given [Transport](https://viem.sh/docs/clients/intro.html) configured for a [Chain](https://viem.sh/docs/clients/chains.html).
7
6
  *
@@ -20,32 +19,22 @@ import { isProviderSet, setPimlicoAsProvider } from "./utils.js";
20
19
  * })
21
20
  */
22
21
  export const createZeroDevPaymasterClient = (parameters) => {
23
- const { key = "public", name = "ZeroDev Paymaster Client", entryPoint: entryPointAddress, transport } = parameters;
24
- const entryPointVersion = getEntryPointVersion(entryPointAddress);
25
- const shouldIncludePimlicoProvider = transport({}).config.key === "http" && entryPointVersion === "v0.7";
22
+ const { key = "public", name = "ZeroDev Paymaster Client", entryPoint, transport } = parameters;
26
23
  const client = createClient({
27
24
  ...parameters,
28
25
  transport: (opts) => {
29
- let _transport = transport({
26
+ return transport({
30
27
  ...opts,
31
28
  retryCount: 0
32
29
  });
33
- if (!shouldIncludePimlicoProvider ||
34
- isProviderSet(_transport.value?.url, "ALCHEMY") ||
35
- isProviderSet(_transport.value?.url, "ZERODEV") ||
36
- isProviderSet(_transport.value?.url, "THIRDWEB") ||
37
- isProviderSet(_transport.value?.url, "CONDUIT"))
38
- return _transport;
39
- _transport = http(setPimlicoAsProvider(_transport.value?.url))({
40
- ...opts,
41
- retryCount: 0
42
- });
43
- return _transport;
44
30
  },
45
31
  key,
46
32
  name,
47
33
  type: "zerodevPaymasterClient"
48
34
  });
49
- return client.extend(zerodevPaymasterActions(parameters.entryPoint));
35
+ return client.extend(paymasterActions).extend(zerodevPaymasterActions({
36
+ address: entryPoint?.address ?? entryPoint07Address,
37
+ version: entryPoint?.version ?? "0.7"
38
+ }));
50
39
  };
51
40
  //# sourceMappingURL=paymasterClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"paymasterClient.js","sourceRoot":"","sources":["../../clients/paymasterClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAErD,OAAO,EACH,IAAI,EAMJ,YAAY,EACf,MAAM,MAAM,CAAA;AAEb,OAAO,EAEH,uBAAuB,EAC1B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAShE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAKxC,UAEC,EACiC,EAAE;IACpC,MAAM,EACF,GAAG,GAAG,QAAQ,EACd,IAAI,GAAG,0BAA0B,EACjC,UAAU,EAAE,iBAAiB,EAC7B,SAAS,EACZ,GAAG,UAAU,CAAA;IACd,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,CAAA;IACjE,MAAM,4BAA4B,GAC9B,SAAS,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,MAAM,IAAI,iBAAiB,KAAK,MAAM,CAAA;IACvE,MAAM,MAAM,GAAG,YAAY,CAAC;QACxB,GAAG,UAAU;QACb,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,IAAI,UAAU,GAAG,SAAS,CAAC;gBACvB,GAAG,IAAI;gBACP,UAAU,EAAE,CAAC;aAChB,CAAC,CAAA;YACF,IACI,CAAC,4BAA4B;gBAC7B,aAAa,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC;gBAC/C,aAAa,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC;gBAC/C,aAAa,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,UAAU,CAAC;gBAChD,aAAa,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC;gBAE/C,OAAO,UAAU,CAAA;YACrB,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC3D,GAAG,IAAI;gBACP,UAAU,EAAE,CAAC;aAChB,CAAC,CAAA;YACF,OAAO,UAAU,CAAA;QACrB,CAAC;QACD,GAAG;QACH,IAAI;QACJ,IAAI,EAAE,wBAAwB;KACjC,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAA;AACxE,CAAC,CAAA"}
1
+ {"version":3,"file":"paymasterClient.js","sourceRoot":"","sources":["../../clients/paymasterClient.ts"],"names":[],"mappings":"AAAA,OAAO,EASH,YAAY,EACf,MAAM,MAAM,CAAA;AACb,OAAO,EAGH,mBAAmB,EACnB,gBAAgB,EACnB,MAAM,0BAA0B,CAAA;AAEjC,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAkDhE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CACxC,UAAwC,EAClB,EAAE;IACxB,MAAM,EACF,GAAG,GAAG,QAAQ,EACd,IAAI,GAAG,0BAA0B,EACjC,UAAU,EACV,SAAS,EACZ,GAAG,UAAU,CAAA;IACd,MAAM,MAAM,GAAG,YAAY,CAAC;QACxB,GAAG,UAAU;QACb,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,OAAO,SAAS,CAAC;gBACb,GAAG,IAAI;gBACP,UAAU,EAAE,CAAC;aAChB,CAAC,CAAA;QACN,CAAC;QACD,GAAG;QACH,IAAI;QACJ,IAAI,EAAE,wBAAwB;KACjC,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,MAAM,CACzC,uBAAuB,CAAC;QACpB,OAAO,EAAE,UAAU,EAAE,OAAO,IAAI,mBAAmB;QACnD,OAAO,EAAE,UAAU,EAAE,OAAO,IAAI,KAAK;KACxC,CAAC,CACL,CAAA;AACL,CAAC,CAAA"}
@@ -0,0 +1,14 @@
1
+ import { BaseError } from "viem";
2
+ export class AccountNotFoundError extends BaseError {
3
+ constructor({ docsPath } = {}) {
4
+ super([
5
+ "Could not find an Account to execute with this Action.",
6
+ "Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client."
7
+ ].join("\n"), {
8
+ docsPath,
9
+ docsSlug: "account",
10
+ name: "AccountNotFoundError"
11
+ });
12
+ }
13
+ }
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../errors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAEhC,MAAM,OAAO,oBAAqB,SAAQ,SAAS;IAC/C,YAAY,EAAE,QAAQ,KAAwC,EAAE;QAC5D,KAAK,CACD;YACI,wDAAwD;YACxD,kHAAkH;SACrH,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ;YACI,QAAQ;YACR,QAAQ,EAAE,SAAS;YACnB,IAAI,EAAE,sBAAsB;SAC/B,CACJ,CAAA;IACL,CAAC;CACJ"}
@@ -346,7 +346,8 @@ export const gasTokenAddresses = {
346
346
  "6TEST": "0x3870419Ba2BBf0127060bCB37f69A1b1C090992B"
347
347
  },
348
348
  11155111: {
349
- "6TEST": "0x3870419Ba2BBf0127060bCB37f69A1b1C090992B"
349
+ "6TEST": "0x3870419Ba2BBf0127060bCB37f69A1b1C090992B",
350
+ USDC: "0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238"
350
351
  },
351
352
  11155420: {
352
353
  "6TEST": "0x3870419Ba2BBf0127060bCB37f69A1b1C090992B"