viem 2.17.10 → 2.18.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (464) hide show
  1. package/CHANGELOG.md +16 -2
  2. package/README.md +6 -0
  3. package/_cjs/account-abstraction/accounts/createWebAuthnCredential.js +6 -0
  4. package/_cjs/account-abstraction/accounts/createWebAuthnCredential.js.map +1 -0
  5. package/_cjs/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.js +688 -0
  6. package/_cjs/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.js.map +1 -0
  7. package/_cjs/account-abstraction/accounts/implementations/toSoladySmartAccount.js +704 -0
  8. package/_cjs/account-abstraction/accounts/implementations/toSoladySmartAccount.js.map +1 -0
  9. package/_cjs/account-abstraction/accounts/toSmartAccount.js +93 -0
  10. package/_cjs/account-abstraction/accounts/toSmartAccount.js.map +1 -0
  11. package/_cjs/account-abstraction/accounts/toWebAuthnAccount.js +24 -0
  12. package/_cjs/account-abstraction/accounts/toWebAuthnAccount.js.map +1 -0
  13. package/_cjs/account-abstraction/accounts/types.js +3 -0
  14. package/_cjs/account-abstraction/accounts/types.js.map +1 -0
  15. package/_cjs/account-abstraction/actions/bundler/estimateUserOperationGas.js +37 -0
  16. package/_cjs/account-abstraction/actions/bundler/estimateUserOperationGas.js.map +1 -0
  17. package/_cjs/account-abstraction/actions/bundler/getSupportedEntryPoints.js +7 -0
  18. package/_cjs/account-abstraction/actions/bundler/getSupportedEntryPoints.js.map +1 -0
  19. package/_cjs/account-abstraction/actions/bundler/getUserOperation.js +22 -0
  20. package/_cjs/account-abstraction/actions/bundler/getUserOperation.js.map +1 -0
  21. package/_cjs/account-abstraction/actions/bundler/getUserOperationReceipt.js +15 -0
  22. package/_cjs/account-abstraction/actions/bundler/getUserOperationReceipt.js.map +1 -0
  23. package/_cjs/account-abstraction/actions/bundler/prepareUserOperation.js +239 -0
  24. package/_cjs/account-abstraction/actions/bundler/prepareUserOperation.js.map +1 -0
  25. package/_cjs/account-abstraction/actions/bundler/sendUserOperation.js +36 -0
  26. package/_cjs/account-abstraction/actions/bundler/sendUserOperation.js.map +1 -0
  27. package/_cjs/account-abstraction/actions/bundler/waitForUserOperationReceipt.js +48 -0
  28. package/_cjs/account-abstraction/actions/bundler/waitForUserOperationReceipt.js.map +1 -0
  29. package/_cjs/account-abstraction/actions/paymaster/getPaymasterData.js +34 -0
  30. package/_cjs/account-abstraction/actions/paymaster/getPaymasterData.js.map +1 -0
  31. package/_cjs/account-abstraction/actions/paymaster/getPaymasterStubData.js +34 -0
  32. package/_cjs/account-abstraction/actions/paymaster/getPaymasterStubData.js.map +1 -0
  33. package/_cjs/account-abstraction/clients/createBundlerClient.js +18 -0
  34. package/_cjs/account-abstraction/clients/createBundlerClient.js.map +1 -0
  35. package/_cjs/account-abstraction/clients/createPaymasterClient.js +17 -0
  36. package/_cjs/account-abstraction/clients/createPaymasterClient.js.map +1 -0
  37. package/_cjs/account-abstraction/clients/decorators/bundler.js +24 -0
  38. package/_cjs/account-abstraction/clients/decorators/bundler.js.map +1 -0
  39. package/_cjs/account-abstraction/clients/decorators/paymaster.js +12 -0
  40. package/_cjs/account-abstraction/clients/decorators/paymaster.js.map +1 -0
  41. package/_cjs/account-abstraction/constants/abis.js +1318 -0
  42. package/_cjs/account-abstraction/constants/abis.js.map +1 -0
  43. package/_cjs/account-abstraction/constants/address.js +6 -0
  44. package/_cjs/account-abstraction/constants/address.js.map +1 -0
  45. package/_cjs/account-abstraction/errors/bundler.js +813 -0
  46. package/_cjs/account-abstraction/errors/bundler.js.map +1 -0
  47. package/_cjs/account-abstraction/errors/userOperation.js +91 -0
  48. package/_cjs/account-abstraction/errors/userOperation.js.map +1 -0
  49. package/_cjs/account-abstraction/index.js +90 -0
  50. package/_cjs/account-abstraction/index.js.map +1 -0
  51. package/_cjs/account-abstraction/types/account.js +3 -0
  52. package/_cjs/account-abstraction/types/account.js.map +1 -0
  53. package/_cjs/account-abstraction/types/entryPointVersion.js +3 -0
  54. package/_cjs/account-abstraction/types/entryPointVersion.js.map +1 -0
  55. package/_cjs/account-abstraction/types/rpc.js +3 -0
  56. package/_cjs/account-abstraction/types/rpc.js.map +1 -0
  57. package/_cjs/account-abstraction/types/userOperation.js +3 -0
  58. package/_cjs/account-abstraction/types/userOperation.js.map +1 -0
  59. package/_cjs/account-abstraction/utils/errors/getBundlerError.js +186 -0
  60. package/_cjs/account-abstraction/utils/errors/getBundlerError.js.map +1 -0
  61. package/_cjs/account-abstraction/utils/errors/getUserOperationError.js +87 -0
  62. package/_cjs/account-abstraction/utils/errors/getUserOperationError.js.map +1 -0
  63. package/_cjs/account-abstraction/utils/formatters/userOperation.js +24 -0
  64. package/_cjs/account-abstraction/utils/formatters/userOperation.js.map +1 -0
  65. package/_cjs/account-abstraction/utils/formatters/userOperationGas.js +18 -0
  66. package/_cjs/account-abstraction/utils/formatters/userOperationGas.js.map +1 -0
  67. package/_cjs/account-abstraction/utils/formatters/userOperationReceipt.js +18 -0
  68. package/_cjs/account-abstraction/utils/formatters/userOperationReceipt.js.map +1 -0
  69. package/_cjs/account-abstraction/utils/formatters/userOperationRequest.js +43 -0
  70. package/_cjs/account-abstraction/utils/formatters/userOperationRequest.js.map +1 -0
  71. package/_cjs/account-abstraction/utils/userOperation/getUserOperationHash.js +88 -0
  72. package/_cjs/account-abstraction/utils/userOperation/getUserOperationHash.js.map +1 -0
  73. package/_cjs/account-abstraction/utils/userOperation/toPackedUserOperation.js +44 -0
  74. package/_cjs/account-abstraction/utils/userOperation/toPackedUserOperation.js.map +1 -0
  75. package/_cjs/accounts/index.js +1 -3
  76. package/_cjs/accounts/index.js.map +1 -1
  77. package/_cjs/accounts/privateKeyToAccount.js +4 -0
  78. package/_cjs/accounts/privateKeyToAccount.js.map +1 -1
  79. package/_cjs/accounts/toAccount.js +1 -0
  80. package/_cjs/accounts/toAccount.js.map +1 -1
  81. package/_cjs/accounts/utils/parseAccount.js.map +1 -1
  82. package/_cjs/accounts/utils/sign.js +8 -2
  83. package/_cjs/accounts/utils/sign.js.map +1 -1
  84. package/_cjs/accounts/utils/signMessage.js +1 -3
  85. package/_cjs/accounts/utils/signMessage.js.map +1 -1
  86. package/_cjs/accounts/utils/signTypedData.js +2 -3
  87. package/_cjs/accounts/utils/signTypedData.js.map +1 -1
  88. package/_cjs/actions/wallet/sendTransaction.js +35 -22
  89. package/_cjs/actions/wallet/sendTransaction.js.map +1 -1
  90. package/_cjs/actions/wallet/signMessage.js +1 -1
  91. package/_cjs/actions/wallet/signMessage.js.map +1 -1
  92. package/_cjs/actions/wallet/signTransaction.js +1 -2
  93. package/_cjs/actions/wallet/signTransaction.js.map +1 -1
  94. package/_cjs/actions/wallet/signTypedData.js +1 -1
  95. package/_cjs/actions/wallet/signTypedData.js.map +1 -1
  96. package/_cjs/chains/definitions/bobaSepolia.js +23 -0
  97. package/_cjs/chains/definitions/bobaSepolia.js.map +1 -0
  98. package/_cjs/chains/index.js +9 -7
  99. package/_cjs/chains/index.js.map +1 -1
  100. package/_cjs/clients/decorators/public.js.map +1 -1
  101. package/_cjs/clients/decorators/wallet.js.map +1 -1
  102. package/_cjs/constants/abis.js +0 -3
  103. package/_cjs/constants/abis.js.map +1 -1
  104. package/_cjs/constants/address.js +3 -1
  105. package/_cjs/constants/address.js.map +1 -1
  106. package/_cjs/errors/account.js +17 -2
  107. package/_cjs/errors/account.js.map +1 -1
  108. package/_cjs/errors/contract.js +1 -1
  109. package/_cjs/errors/contract.js.map +1 -1
  110. package/_cjs/errors/rpc.js +6 -6
  111. package/_cjs/errors/rpc.js.map +1 -1
  112. package/_cjs/errors/version.js +1 -1
  113. package/_cjs/errors/version.js.map +1 -1
  114. package/_cjs/index.js +5 -3
  115. package/_cjs/index.js.map +1 -1
  116. package/_cjs/types/eip1193.js.map +1 -1
  117. package/_cjs/utils/buildRequest.js +4 -2
  118. package/_cjs/utils/buildRequest.js.map +1 -1
  119. package/_cjs/utils/errors/getNodeError.js +1 -2
  120. package/_cjs/utils/errors/getNodeError.js.map +1 -1
  121. package/_cjs/utils/index.js +3 -1
  122. package/_cjs/utils/index.js.map +1 -1
  123. package/_cjs/utils/signature/serializeErc6492Signature.js +6 -2
  124. package/_cjs/utils/signature/serializeErc6492Signature.js.map +1 -1
  125. package/_cjs/utils/signature/serializeSignature.js +6 -2
  126. package/_cjs/utils/signature/serializeSignature.js.map +1 -1
  127. package/_cjs/utils/signature/verifyHash.js +10 -0
  128. package/_cjs/utils/signature/verifyHash.js.map +1 -0
  129. package/_esm/account-abstraction/accounts/createWebAuthnCredential.js +3 -0
  130. package/_esm/account-abstraction/accounts/createWebAuthnCredential.js.map +1 -0
  131. package/_esm/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.js +709 -0
  132. package/_esm/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.js.map +1 -0
  133. package/_esm/account-abstraction/accounts/implementations/toSoladySmartAccount.js +718 -0
  134. package/_esm/account-abstraction/accounts/implementations/toSoladySmartAccount.js.map +1 -0
  135. package/_esm/account-abstraction/accounts/toSmartAccount.js +96 -0
  136. package/_esm/account-abstraction/accounts/toSmartAccount.js.map +1 -0
  137. package/_esm/account-abstraction/accounts/toWebAuthnAccount.js +26 -0
  138. package/_esm/account-abstraction/accounts/toWebAuthnAccount.js.map +1 -0
  139. package/_esm/account-abstraction/accounts/types.js +2 -0
  140. package/_esm/account-abstraction/accounts/types.js.map +1 -0
  141. package/_esm/account-abstraction/actions/bundler/estimateUserOperationGas.js +61 -0
  142. package/_esm/account-abstraction/actions/bundler/estimateUserOperationGas.js.map +1 -0
  143. package/_esm/account-abstraction/actions/bundler/getSupportedEntryPoints.js +25 -0
  144. package/_esm/account-abstraction/actions/bundler/getSupportedEntryPoints.js.map +1 -0
  145. package/_esm/account-abstraction/actions/bundler/getUserOperation.js +42 -0
  146. package/_esm/account-abstraction/actions/bundler/getUserOperation.js.map +1 -0
  147. package/_esm/account-abstraction/actions/bundler/getUserOperationReceipt.js +35 -0
  148. package/_esm/account-abstraction/actions/bundler/getUserOperationReceipt.js.map +1 -0
  149. package/_esm/account-abstraction/actions/bundler/prepareUserOperation.js +323 -0
  150. package/_esm/account-abstraction/actions/bundler/prepareUserOperation.js.map +1 -0
  151. package/_esm/account-abstraction/actions/bundler/sendUserOperation.js +60 -0
  152. package/_esm/account-abstraction/actions/bundler/sendUserOperation.js.map +1 -0
  153. package/_esm/account-abstraction/actions/bundler/waitForUserOperationReceipt.js +68 -0
  154. package/_esm/account-abstraction/actions/bundler/waitForUserOperationReceipt.js.map +1 -0
  155. package/_esm/account-abstraction/actions/paymaster/getPaymasterData.js +56 -0
  156. package/_esm/account-abstraction/actions/paymaster/getPaymasterData.js.map +1 -0
  157. package/_esm/account-abstraction/actions/paymaster/getPaymasterStubData.js +56 -0
  158. package/_esm/account-abstraction/actions/paymaster/getPaymasterStubData.js.map +1 -0
  159. package/_esm/account-abstraction/clients/createBundlerClient.js +15 -0
  160. package/_esm/account-abstraction/clients/createBundlerClient.js.map +1 -0
  161. package/_esm/account-abstraction/clients/createPaymasterClient.js +14 -0
  162. package/_esm/account-abstraction/clients/createPaymasterClient.js.map +1 -0
  163. package/_esm/account-abstraction/clients/decorators/bundler.js +21 -0
  164. package/_esm/account-abstraction/clients/decorators/bundler.js.map +1 -0
  165. package/_esm/account-abstraction/clients/decorators/paymaster.js +9 -0
  166. package/_esm/account-abstraction/clients/decorators/paymaster.js.map +1 -0
  167. package/_esm/account-abstraction/constants/abis.js +1315 -0
  168. package/_esm/account-abstraction/constants/abis.js.map +1 -0
  169. package/_esm/account-abstraction/constants/address.js +3 -0
  170. package/_esm/account-abstraction/constants/address.js.map +1 -0
  171. package/_esm/account-abstraction/errors/bundler.js +774 -0
  172. package/_esm/account-abstraction/errors/bundler.js.map +1 -0
  173. package/_esm/account-abstraction/errors/userOperation.js +84 -0
  174. package/_esm/account-abstraction/errors/userOperation.js.map +1 -0
  175. package/_esm/account-abstraction/index.js +31 -0
  176. package/_esm/account-abstraction/index.js.map +1 -0
  177. package/_esm/account-abstraction/types/account.js +2 -0
  178. package/_esm/account-abstraction/types/account.js.map +1 -0
  179. package/_esm/account-abstraction/types/entryPointVersion.js +2 -0
  180. package/_esm/account-abstraction/types/entryPointVersion.js.map +1 -0
  181. package/_esm/account-abstraction/types/rpc.js +2 -0
  182. package/_esm/account-abstraction/types/rpc.js.map +1 -0
  183. package/_esm/account-abstraction/types/userOperation.js +2 -0
  184. package/_esm/account-abstraction/types/userOperation.js.map +1 -0
  185. package/_esm/account-abstraction/utils/errors/getBundlerError.js +183 -0
  186. package/_esm/account-abstraction/utils/errors/getBundlerError.js.map +1 -0
  187. package/_esm/account-abstraction/utils/errors/getUserOperationError.js +85 -0
  188. package/_esm/account-abstraction/utils/errors/getUserOperationError.js.map +1 -0
  189. package/_esm/account-abstraction/utils/formatters/userOperation.js +21 -0
  190. package/_esm/account-abstraction/utils/formatters/userOperation.js.map +1 -0
  191. package/_esm/account-abstraction/utils/formatters/userOperationGas.js +15 -0
  192. package/_esm/account-abstraction/utils/formatters/userOperationGas.js.map +1 -0
  193. package/_esm/account-abstraction/utils/formatters/userOperationReceipt.js +15 -0
  194. package/_esm/account-abstraction/utils/formatters/userOperationReceipt.js.map +1 -0
  195. package/_esm/account-abstraction/utils/formatters/userOperationRequest.js +40 -0
  196. package/_esm/account-abstraction/utils/formatters/userOperationRequest.js.map +1 -0
  197. package/_esm/account-abstraction/utils/userOperation/getUserOperationHash.js +85 -0
  198. package/_esm/account-abstraction/utils/userOperation/getUserOperationHash.js.map +1 -0
  199. package/_esm/account-abstraction/utils/userOperation/toPackedUserOperation.js +41 -0
  200. package/_esm/account-abstraction/utils/userOperation/toPackedUserOperation.js.map +1 -0
  201. package/_esm/accounts/index.js +0 -1
  202. package/_esm/accounts/index.js.map +1 -1
  203. package/_esm/accounts/privateKeyToAccount.js +4 -0
  204. package/_esm/accounts/privateKeyToAccount.js.map +1 -1
  205. package/_esm/accounts/toAccount.js +2 -0
  206. package/_esm/accounts/toAccount.js.map +1 -1
  207. package/_esm/accounts/utils/parseAccount.js.map +1 -1
  208. package/_esm/accounts/utils/sign.js +9 -3
  209. package/_esm/accounts/utils/sign.js.map +1 -1
  210. package/_esm/accounts/utils/signMessage.js +1 -3
  211. package/_esm/accounts/utils/signMessage.js.map +1 -1
  212. package/_esm/accounts/utils/signTypedData.js +2 -3
  213. package/_esm/accounts/utils/signTypedData.js.map +1 -1
  214. package/_esm/actions/wallet/sendTransaction.js +37 -24
  215. package/_esm/actions/wallet/sendTransaction.js.map +1 -1
  216. package/_esm/actions/wallet/signMessage.js +1 -1
  217. package/_esm/actions/wallet/signMessage.js.map +1 -1
  218. package/_esm/actions/wallet/signTransaction.js +1 -2
  219. package/_esm/actions/wallet/signTransaction.js.map +1 -1
  220. package/_esm/actions/wallet/signTypedData.js +1 -1
  221. package/_esm/actions/wallet/signTypedData.js.map +1 -1
  222. package/_esm/chains/definitions/bobaSepolia.js +20 -0
  223. package/_esm/chains/definitions/bobaSepolia.js.map +1 -0
  224. package/_esm/chains/index.js +1 -0
  225. package/_esm/chains/index.js.map +1 -1
  226. package/_esm/clients/decorators/public.js.map +1 -1
  227. package/_esm/clients/decorators/wallet.js.map +1 -1
  228. package/_esm/constants/abis.js +0 -3
  229. package/_esm/constants/abis.js.map +1 -1
  230. package/_esm/constants/address.js +2 -0
  231. package/_esm/constants/address.js.map +1 -1
  232. package/_esm/errors/account.js +15 -1
  233. package/_esm/errors/account.js.map +1 -1
  234. package/_esm/errors/contract.js +1 -1
  235. package/_esm/errors/contract.js.map +1 -1
  236. package/_esm/errors/rpc.js +6 -6
  237. package/_esm/errors/rpc.js.map +1 -1
  238. package/_esm/errors/version.js +1 -1
  239. package/_esm/errors/version.js.map +1 -1
  240. package/_esm/index.js +1 -0
  241. package/_esm/index.js.map +1 -1
  242. package/_esm/types/eip1193.js.map +1 -1
  243. package/_esm/utils/buildRequest.js +4 -2
  244. package/_esm/utils/buildRequest.js.map +1 -1
  245. package/_esm/utils/errors/getNodeError.js +1 -2
  246. package/_esm/utils/errors/getNodeError.js.map +1 -1
  247. package/_esm/utils/index.js +1 -0
  248. package/_esm/utils/index.js.map +1 -1
  249. package/_esm/utils/signature/serializeErc6492Signature.js +6 -2
  250. package/_esm/utils/signature/serializeErc6492Signature.js.map +1 -1
  251. package/_esm/utils/signature/serializeSignature.js +6 -2
  252. package/_esm/utils/signature/serializeSignature.js.map +1 -1
  253. package/_esm/utils/signature/verifyHash.js +19 -0
  254. package/_esm/utils/signature/verifyHash.js.map +1 -0
  255. package/_types/account-abstraction/accounts/createWebAuthnCredential.d.ts +2 -0
  256. package/_types/account-abstraction/accounts/createWebAuthnCredential.d.ts.map +1 -0
  257. package/_types/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.d.ts +648 -0
  258. package/_types/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.d.ts.map +1 -0
  259. package/_types/account-abstraction/accounts/implementations/toSoladySmartAccount.d.ts +464 -0
  260. package/_types/account-abstraction/accounts/implementations/toSoladySmartAccount.d.ts.map +1 -0
  261. package/_types/account-abstraction/accounts/toSmartAccount.d.ts +14 -0
  262. package/_types/account-abstraction/accounts/toSmartAccount.d.ts.map +1 -0
  263. package/_types/account-abstraction/accounts/toWebAuthnAccount.d.ts +32 -0
  264. package/_types/account-abstraction/accounts/toWebAuthnAccount.d.ts.map +1 -0
  265. package/_types/account-abstraction/accounts/types.d.ts +174 -0
  266. package/_types/account-abstraction/accounts/types.d.ts.map +1 -0
  267. package/_types/account-abstraction/actions/bundler/estimateUserOperationGas.d.ts +62 -0
  268. package/_types/account-abstraction/actions/bundler/estimateUserOperationGas.d.ts.map +1 -0
  269. package/_types/account-abstraction/actions/bundler/getSupportedEntryPoints.d.ts +30 -0
  270. package/_types/account-abstraction/actions/bundler/getSupportedEntryPoints.d.ts.map +1 -0
  271. package/_types/account-abstraction/actions/bundler/getUserOperation.d.ts +57 -0
  272. package/_types/account-abstraction/actions/bundler/getUserOperation.d.ts.map +1 -0
  273. package/_types/account-abstraction/actions/bundler/getUserOperationReceipt.d.ts +39 -0
  274. package/_types/account-abstraction/actions/bundler/getUserOperationReceipt.d.ts.map +1 -0
  275. package/_types/account-abstraction/actions/bundler/prepareUserOperation.d.ts +106 -0
  276. package/_types/account-abstraction/actions/bundler/prepareUserOperation.d.ts.map +1 -0
  277. package/_types/account-abstraction/actions/bundler/sendUserOperation.d.ts +60 -0
  278. package/_types/account-abstraction/actions/bundler/sendUserOperation.d.ts.map +1 -0
  279. package/_types/account-abstraction/actions/bundler/waitForUserOperationReceipt.d.ts +52 -0
  280. package/_types/account-abstraction/actions/bundler/waitForUserOperationReceipt.d.ts.map +1 -0
  281. package/_types/account-abstraction/actions/paymaster/getPaymasterData.d.ts +49 -0
  282. package/_types/account-abstraction/actions/paymaster/getPaymasterData.d.ts.map +1 -0
  283. package/_types/account-abstraction/actions/paymaster/getPaymasterStubData.d.ts +55 -0
  284. package/_types/account-abstraction/actions/paymaster/getPaymasterStubData.d.ts.map +1 -0
  285. package/_types/account-abstraction/clients/createBundlerClient.d.ts +66 -0
  286. package/_types/account-abstraction/clients/createBundlerClient.d.ts.map +1 -0
  287. package/_types/account-abstraction/clients/createPaymasterClient.d.ts +27 -0
  288. package/_types/account-abstraction/clients/createPaymasterClient.d.ts.map +1 -0
  289. package/_types/account-abstraction/clients/decorators/bundler.d.ts +206 -0
  290. package/_types/account-abstraction/clients/decorators/bundler.d.ts.map +1 -0
  291. package/_types/account-abstraction/clients/decorators/paymaster.d.ts +60 -0
  292. package/_types/account-abstraction/clients/decorators/paymaster.d.ts.map +1 -0
  293. package/_types/account-abstraction/constants/abis.d.ts +1468 -0
  294. package/_types/account-abstraction/constants/abis.d.ts.map +1 -0
  295. package/_types/account-abstraction/constants/address.d.ts +3 -0
  296. package/_types/account-abstraction/constants/address.d.ts.map +1 -0
  297. package/_types/account-abstraction/errors/bundler.d.ts +391 -0
  298. package/_types/account-abstraction/errors/bundler.d.ts.map +1 -0
  299. package/_types/account-abstraction/errors/userOperation.d.ts +41 -0
  300. package/_types/account-abstraction/errors/userOperation.d.ts.map +1 -0
  301. package/_types/account-abstraction/index.d.ts +34 -0
  302. package/_types/account-abstraction/index.d.ts.map +1 -0
  303. package/_types/account-abstraction/types/account.d.ts +11 -0
  304. package/_types/account-abstraction/types/account.d.ts.map +1 -0
  305. package/_types/account-abstraction/types/entryPointVersion.d.ts +9 -0
  306. package/_types/account-abstraction/types/entryPointVersion.d.ts.map +1 -0
  307. package/_types/account-abstraction/types/rpc.d.ts +9 -0
  308. package/_types/account-abstraction/types/rpc.d.ts.map +1 -0
  309. package/_types/account-abstraction/types/userOperation.d.ts +157 -0
  310. package/_types/account-abstraction/types/userOperation.d.ts.map +1 -0
  311. package/_types/account-abstraction/utils/errors/getBundlerError.d.ts +8 -0
  312. package/_types/account-abstraction/utils/errors/getBundlerError.d.ts.map +1 -0
  313. package/_types/account-abstraction/utils/errors/getUserOperationError.d.ts +15 -0
  314. package/_types/account-abstraction/utils/errors/getUserOperationError.d.ts.map +1 -0
  315. package/_types/account-abstraction/utils/formatters/userOperation.d.ts +6 -0
  316. package/_types/account-abstraction/utils/formatters/userOperation.d.ts.map +1 -0
  317. package/_types/account-abstraction/utils/formatters/userOperationGas.d.ts +6 -0
  318. package/_types/account-abstraction/utils/formatters/userOperationGas.d.ts.map +1 -0
  319. package/_types/account-abstraction/utils/formatters/userOperationReceipt.d.ts +6 -0
  320. package/_types/account-abstraction/utils/formatters/userOperationReceipt.d.ts.map +1 -0
  321. package/_types/account-abstraction/utils/formatters/userOperationRequest.d.ts +7 -0
  322. package/_types/account-abstraction/utils/formatters/userOperationRequest.d.ts.map +1 -0
  323. package/_types/account-abstraction/utils/userOperation/getUserOperationHash.d.ts +13 -0
  324. package/_types/account-abstraction/utils/userOperation/getUserOperationHash.d.ts.map +1 -0
  325. package/_types/account-abstraction/utils/userOperation/toPackedUserOperation.d.ts +3 -0
  326. package/_types/account-abstraction/utils/userOperation/toPackedUserOperation.d.ts.map +1 -0
  327. package/_types/accounts/index.d.ts +0 -1
  328. package/_types/accounts/index.d.ts.map +1 -1
  329. package/_types/accounts/privateKeyToAccount.d.ts +2 -1
  330. package/_types/accounts/privateKeyToAccount.d.ts.map +1 -1
  331. package/_types/accounts/toAccount.d.ts.map +1 -1
  332. package/_types/accounts/types.d.ts +14 -7
  333. package/_types/accounts/types.d.ts.map +1 -1
  334. package/_types/accounts/utils/parseAccount.d.ts +1 -1
  335. package/_types/accounts/utils/parseAccount.d.ts.map +1 -1
  336. package/_types/accounts/utils/sign.d.ts +9 -6
  337. package/_types/accounts/utils/sign.d.ts.map +1 -1
  338. package/_types/accounts/utils/signMessage.d.ts +1 -2
  339. package/_types/accounts/utils/signMessage.d.ts.map +1 -1
  340. package/_types/accounts/utils/signTypedData.d.ts +1 -2
  341. package/_types/accounts/utils/signTypedData.d.ts.map +1 -1
  342. package/_types/actions/wallet/sendTransaction.d.ts +2 -1
  343. package/_types/actions/wallet/sendTransaction.d.ts.map +1 -1
  344. package/_types/actions/wallet/signMessage.d.ts.map +1 -1
  345. package/_types/actions/wallet/signTransaction.d.ts.map +1 -1
  346. package/_types/chains/definitions/bobaSepolia.d.ts +35 -0
  347. package/_types/chains/definitions/bobaSepolia.d.ts.map +1 -0
  348. package/_types/chains/definitions/lisk.d.ts +2 -2
  349. package/_types/chains/definitions/playfiAlbireo.d.ts +2 -2
  350. package/_types/chains/definitions/zkSync.d.ts +2 -2
  351. package/_types/chains/definitions/zkSyncInMemoryNode.d.ts +2 -2
  352. package/_types/chains/definitions/zkSyncLocalNode.d.ts +2 -2
  353. package/_types/chains/definitions/zkSyncSepoliaTestnet.d.ts +2 -2
  354. package/_types/chains/definitions/zkSyncTestnet.d.ts +2 -2
  355. package/_types/chains/index.d.ts +1 -0
  356. package/_types/chains/index.d.ts.map +1 -1
  357. package/_types/clients/decorators/public.d.ts +2 -2
  358. package/_types/clients/decorators/public.d.ts.map +1 -1
  359. package/_types/clients/decorators/wallet.d.ts +1 -1
  360. package/_types/clients/decorators/wallet.d.ts.map +1 -1
  361. package/_types/constants/abis.d.ts +0 -3
  362. package/_types/constants/abis.d.ts.map +1 -1
  363. package/_types/constants/address.d.ts +2 -0
  364. package/_types/constants/address.d.ts.map +1 -1
  365. package/_types/errors/account.d.ts +11 -0
  366. package/_types/errors/account.d.ts.map +1 -1
  367. package/_types/errors/rpc.d.ts +9 -3
  368. package/_types/errors/rpc.d.ts.map +1 -1
  369. package/_types/errors/version.d.ts +1 -1
  370. package/_types/errors/version.d.ts.map +1 -1
  371. package/_types/index.d.ts +5 -3
  372. package/_types/index.d.ts.map +1 -1
  373. package/_types/types/eip1193.d.ts +239 -2
  374. package/_types/types/eip1193.d.ts.map +1 -1
  375. package/_types/types/multicall.d.ts +1 -1
  376. package/_types/types/multicall.d.ts.map +1 -1
  377. package/_types/types/utils.d.ts +2 -2
  378. package/_types/types/utils.d.ts.map +1 -1
  379. package/_types/utils/buildRequest.d.ts.map +1 -1
  380. package/_types/utils/errors/getNodeError.d.ts.map +1 -1
  381. package/_types/utils/formatters/transaction.d.ts +1 -1
  382. package/_types/utils/index.d.ts +1 -0
  383. package/_types/utils/index.d.ts.map +1 -1
  384. package/_types/utils/signature/hashTypedData.d.ts +2 -2
  385. package/_types/utils/signature/hashTypedData.d.ts.map +1 -1
  386. package/_types/utils/signature/serializeErc6492Signature.d.ts +7 -4
  387. package/_types/utils/signature/serializeErc6492Signature.d.ts.map +1 -1
  388. package/_types/utils/signature/serializeSignature.d.ts +8 -2
  389. package/_types/utils/signature/serializeSignature.d.ts.map +1 -1
  390. package/_types/utils/signature/verifyHash.d.ts +30 -0
  391. package/_types/utils/signature/verifyHash.d.ts.map +1 -0
  392. package/_types/zksync/chainConfig.d.ts +2 -2
  393. package/_types/zksync/formatters.d.ts +2 -2
  394. package/account-abstraction/accounts/createWebAuthnCredential.ts +7 -0
  395. package/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.ts +817 -0
  396. package/account-abstraction/accounts/implementations/toSoladySmartAccount.ts +794 -0
  397. package/account-abstraction/accounts/toSmartAccount.ts +126 -0
  398. package/account-abstraction/accounts/toWebAuthnAccount.ts +56 -0
  399. package/account-abstraction/accounts/types.ts +208 -0
  400. package/account-abstraction/actions/bundler/estimateUserOperationGas.ts +170 -0
  401. package/account-abstraction/actions/bundler/getSupportedEntryPoints.ts +33 -0
  402. package/account-abstraction/actions/bundler/getUserOperation.ts +85 -0
  403. package/account-abstraction/actions/bundler/getUserOperationReceipt.ts +64 -0
  404. package/account-abstraction/actions/bundler/prepareUserOperation.ts +637 -0
  405. package/account-abstraction/actions/bundler/sendUserOperation.ts +149 -0
  406. package/account-abstraction/actions/bundler/waitForUserOperationReceipt.ts +139 -0
  407. package/account-abstraction/actions/paymaster/getPaymasterData.ts +135 -0
  408. package/account-abstraction/actions/paymaster/getPaymasterStubData.ts +138 -0
  409. package/account-abstraction/clients/createBundlerClient.ts +155 -0
  410. package/account-abstraction/clients/createPaymasterClient.ts +78 -0
  411. package/account-abstraction/clients/decorators/bundler.ts +296 -0
  412. package/account-abstraction/clients/decorators/paymaster.ts +81 -0
  413. package/account-abstraction/constants/abis.ts +1404 -0
  414. package/account-abstraction/constants/address.ts +4 -0
  415. package/account-abstraction/errors/bundler.ts +781 -0
  416. package/account-abstraction/errors/userOperation.ts +111 -0
  417. package/account-abstraction/index.ts +228 -0
  418. package/account-abstraction/package.json +6 -0
  419. package/account-abstraction/types/account.ts +21 -0
  420. package/account-abstraction/types/entryPointVersion.ts +24 -0
  421. package/account-abstraction/types/rpc.ts +29 -0
  422. package/account-abstraction/types/userOperation.ts +262 -0
  423. package/account-abstraction/utils/errors/getBundlerError.ts +309 -0
  424. package/account-abstraction/utils/errors/getUserOperationError.ts +153 -0
  425. package/account-abstraction/utils/formatters/userOperation.ts +31 -0
  426. package/account-abstraction/utils/formatters/userOperationGas.ts +26 -0
  427. package/account-abstraction/utils/formatters/userOperationReceipt.ts +24 -0
  428. package/account-abstraction/utils/formatters/userOperationRequest.ts +53 -0
  429. package/account-abstraction/utils/userOperation/getUserOperationHash.ts +138 -0
  430. package/account-abstraction/utils/userOperation/toPackedUserOperation.ts +64 -0
  431. package/accounts/index.ts +1 -1
  432. package/accounts/privateKeyToAccount.ts +5 -0
  433. package/accounts/toAccount.ts +3 -0
  434. package/accounts/types.ts +34 -12
  435. package/accounts/utils/parseAccount.ts +6 -3
  436. package/accounts/utils/sign.ts +24 -8
  437. package/accounts/utils/signMessage.ts +1 -7
  438. package/accounts/utils/signTypedData.ts +2 -7
  439. package/actions/wallet/sendTransaction.ts +48 -27
  440. package/actions/wallet/signMessage.ts +2 -1
  441. package/actions/wallet/signTransaction.ts +1 -2
  442. package/actions/wallet/signTypedData.ts +1 -1
  443. package/chains/definitions/bobaSepolia.ts +20 -0
  444. package/chains/index.ts +1 -0
  445. package/clients/decorators/public.ts +2 -3
  446. package/clients/decorators/wallet.ts +1 -2
  447. package/constants/abis.ts +0 -3
  448. package/constants/address.ts +4 -0
  449. package/errors/account.ts +22 -1
  450. package/errors/contract.ts +1 -1
  451. package/errors/rpc.ts +6 -6
  452. package/errors/version.ts +1 -1
  453. package/index.ts +20 -3
  454. package/package.json +7 -1
  455. package/types/eip1193.ts +314 -2
  456. package/types/multicall.ts +1 -1
  457. package/types/utils.ts +6 -5
  458. package/utils/buildRequest.ts +4 -2
  459. package/utils/errors/getNodeError.ts +1 -2
  460. package/utils/index.ts +6 -0
  461. package/utils/signature/hashTypedData.ts +6 -6
  462. package/utils/signature/serializeErc6492Signature.ts +17 -8
  463. package/utils/signature/serializeSignature.ts +24 -4
  464. package/utils/signature/verifyHash.ts +54 -0
@@ -0,0 +1,688 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toCoinbaseSmartAccount = toCoinbaseSmartAccount;
4
+ exports.sign = sign;
5
+ exports.toReplaySafeHash = toReplaySafeHash;
6
+ exports.toWebAuthnSignature = toWebAuthnSignature;
7
+ exports.wrapSignature = wrapSignature;
8
+ const abitype_1 = require("abitype");
9
+ const webauthn_p256_1 = require("webauthn-p256");
10
+ const readContract_js_1 = require("../../../actions/public/readContract.js");
11
+ const address_js_1 = require("../../../constants/address.js");
12
+ const base_js_1 = require("../../../errors/base.js");
13
+ const encodeAbiParameters_js_1 = require("../../../utils/abi/encodeAbiParameters.js");
14
+ const encodeFunctionData_js_1 = require("../../../utils/abi/encodeFunctionData.js");
15
+ const encodePacked_js_1 = require("../../../utils/abi/encodePacked.js");
16
+ const pad_js_1 = require("../../../utils/data/pad.js");
17
+ const size_js_1 = require("../../../utils/data/size.js");
18
+ const toHex_js_1 = require("../../../utils/encoding/toHex.js");
19
+ const hashMessage_js_1 = require("../../../utils/signature/hashMessage.js");
20
+ const hashTypedData_js_1 = require("../../../utils/signature/hashTypedData.js");
21
+ const parseSignature_js_1 = require("../../../utils/signature/parseSignature.js");
22
+ const abis_js_1 = require("../../constants/abis.js");
23
+ const getUserOperationHash_js_1 = require("../../utils/userOperation/getUserOperationHash.js");
24
+ const toSmartAccount_js_1 = require("../toSmartAccount.js");
25
+ async function toCoinbaseSmartAccount(parameters) {
26
+ const { address, client, owners, nonce = 0n } = parameters;
27
+ const entryPoint = {
28
+ abi: abis_js_1.entryPoint06Abi,
29
+ address: address_js_1.entryPoint06Address,
30
+ version: '0.6',
31
+ };
32
+ const factory = {
33
+ abi: factoryAbi,
34
+ address: '0x0ba5ed0c6aa8c49038f819e587e2633c4a9f428a',
35
+ };
36
+ const owners_bytes = owners.map((owner) => owner.type === 'webAuthn' ? owner.publicKey : (0, pad_js_1.pad)(owner.address));
37
+ const owner = owners[0];
38
+ return (0, toSmartAccount_js_1.toSmartAccount)({
39
+ client,
40
+ entryPoint,
41
+ extend: { abi, factory },
42
+ async encodeCalls(calls) {
43
+ if (calls.length === 1)
44
+ return (0, encodeFunctionData_js_1.encodeFunctionData)({
45
+ abi,
46
+ functionName: 'execute',
47
+ args: [calls[0].to, calls[0].value ?? 0n, calls[0].data ?? '0x'],
48
+ });
49
+ return (0, encodeFunctionData_js_1.encodeFunctionData)({
50
+ abi,
51
+ functionName: 'executeBatch',
52
+ args: [
53
+ calls.map((call) => ({
54
+ data: call.data ?? '0x',
55
+ target: call.to,
56
+ value: call.value ?? 0n,
57
+ })),
58
+ ],
59
+ });
60
+ },
61
+ async getAddress() {
62
+ if (address)
63
+ return address;
64
+ return await (0, readContract_js_1.readContract)(client, {
65
+ ...factory,
66
+ functionName: 'getAddress',
67
+ args: [owners_bytes, nonce],
68
+ });
69
+ },
70
+ async getFactoryArgs() {
71
+ const factoryData = (0, encodeFunctionData_js_1.encodeFunctionData)({
72
+ abi: factory.abi,
73
+ functionName: 'createAccount',
74
+ args: [owners_bytes, nonce],
75
+ });
76
+ return { factory: factory.address, factoryData };
77
+ },
78
+ async getNonce({ key = 0n } = {}) {
79
+ const address = await this.getAddress();
80
+ const nonce = await (0, readContract_js_1.readContract)(client, {
81
+ abi: (0, abitype_1.parseAbi)([
82
+ 'function getNonce(address, uint192) pure returns (uint256)',
83
+ ]),
84
+ address: entryPoint.address,
85
+ functionName: 'getNonce',
86
+ args: [address, key],
87
+ });
88
+ return nonce;
89
+ },
90
+ async getStubSignature() {
91
+ if (owner.type === 'webAuthn')
92
+ return '0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000000001949fc7c88032b9fcb5f6efc7a7b8c63668eae9871b765e23123bb473ff57aa831a7c0d9276168ebcc29f2875a0239cffdf2a9cd1c2007c5c77c071db9264df1d000000000000000000000000000000000000000000000000000000000000002549960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97630500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008a7b2274797065223a22776562617574686e2e676574222c226368616c6c656e6765223a2273496a396e6164474850596759334b7156384f7a4a666c726275504b474f716d59576f4d57516869467773222c226f726967696e223a2268747470733a2f2f7369676e2e636f696e626173652e636f6d222c2263726f73734f726967696e223a66616c73657d00000000000000000000000000000000000000000000';
93
+ return wrapSignature({
94
+ signature: '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c',
95
+ });
96
+ },
97
+ async sign(parameters) {
98
+ const address = await this.getAddress();
99
+ const hash = toReplaySafeHash({
100
+ address,
101
+ chainId: client.chain.id,
102
+ hash: parameters.hash,
103
+ });
104
+ const signature = await sign({ hash, owner });
105
+ return wrapSignature({
106
+ signature,
107
+ });
108
+ },
109
+ async signMessage(parameters) {
110
+ const { message } = parameters;
111
+ const address = await this.getAddress();
112
+ const hash = toReplaySafeHash({
113
+ address,
114
+ chainId: client.chain.id,
115
+ hash: (0, hashMessage_js_1.hashMessage)(message),
116
+ });
117
+ const signature = await sign({ hash, owner });
118
+ return wrapSignature({
119
+ signature,
120
+ });
121
+ },
122
+ async signTypedData(parameters) {
123
+ const { domain, types, primaryType, message } = parameters;
124
+ const address = await this.getAddress();
125
+ const hash = toReplaySafeHash({
126
+ address,
127
+ chainId: client.chain.id,
128
+ hash: (0, hashTypedData_js_1.hashTypedData)({
129
+ domain,
130
+ message,
131
+ primaryType,
132
+ types,
133
+ }),
134
+ });
135
+ const signature = await sign({ hash, owner });
136
+ return wrapSignature({
137
+ signature,
138
+ });
139
+ },
140
+ async signUserOperation(parameters) {
141
+ const { chainId = client.chain.id, ...userOperation } = parameters;
142
+ const address = await this.getAddress();
143
+ const hash = (0, getUserOperationHash_js_1.getUserOperationHash)({
144
+ chainId,
145
+ entryPointAddress: entryPoint.address,
146
+ entryPointVersion: entryPoint.version,
147
+ userOperation: {
148
+ ...userOperation,
149
+ sender: address,
150
+ },
151
+ });
152
+ const signature = await sign({ hash, owner });
153
+ return wrapSignature({
154
+ signature,
155
+ });
156
+ },
157
+ userOperation: {
158
+ async estimateGas(userOperation) {
159
+ if (owner.type !== 'webAuthn')
160
+ return;
161
+ return {
162
+ verificationGasLimit: BigInt(Math.max(Number(userOperation.verificationGasLimit ?? 0n), 800_000)),
163
+ };
164
+ },
165
+ },
166
+ });
167
+ }
168
+ async function sign({ hash, owner, }) {
169
+ if (owner.type === 'webAuthn') {
170
+ const { signature, webauthn } = await owner.sign({
171
+ hash,
172
+ });
173
+ return toWebAuthnSignature({ signature, webauthn });
174
+ }
175
+ if (owner.sign)
176
+ return owner.sign({ hash });
177
+ throw new base_js_1.BaseError('`owner` does not support raw sign.');
178
+ }
179
+ function toReplaySafeHash({ address, chainId, hash, }) {
180
+ return (0, hashTypedData_js_1.hashTypedData)({
181
+ domain: {
182
+ chainId,
183
+ name: 'Coinbase Smart Wallet',
184
+ verifyingContract: address,
185
+ version: '1',
186
+ },
187
+ types: {
188
+ CoinbaseSmartWalletMessage: [
189
+ {
190
+ name: 'hash',
191
+ type: 'bytes32',
192
+ },
193
+ ],
194
+ },
195
+ primaryType: 'CoinbaseSmartWalletMessage',
196
+ message: {
197
+ hash,
198
+ },
199
+ });
200
+ }
201
+ function toWebAuthnSignature({ webauthn, signature, }) {
202
+ const { r, s } = (0, webauthn_p256_1.parseSignature)(signature);
203
+ return (0, encodeAbiParameters_js_1.encodeAbiParameters)([
204
+ {
205
+ components: [
206
+ {
207
+ name: 'authenticatorData',
208
+ type: 'bytes',
209
+ },
210
+ { name: 'clientDataJSON', type: 'bytes' },
211
+ { name: 'challengeIndex', type: 'uint256' },
212
+ { name: 'typeIndex', type: 'uint256' },
213
+ {
214
+ name: 'r',
215
+ type: 'uint256',
216
+ },
217
+ {
218
+ name: 's',
219
+ type: 'uint256',
220
+ },
221
+ ],
222
+ type: 'tuple',
223
+ },
224
+ ], [
225
+ {
226
+ authenticatorData: webauthn.authenticatorData,
227
+ clientDataJSON: (0, toHex_js_1.stringToHex)(webauthn.clientDataJSON),
228
+ challengeIndex: BigInt(webauthn.challengeIndex),
229
+ typeIndex: BigInt(webauthn.typeIndex),
230
+ r,
231
+ s,
232
+ },
233
+ ]);
234
+ }
235
+ function wrapSignature(parameters) {
236
+ const { ownerIndex = 0 } = parameters;
237
+ const signatureData = (() => {
238
+ if ((0, size_js_1.size)(parameters.signature) !== 65)
239
+ return parameters.signature;
240
+ const signature = (0, parseSignature_js_1.parseSignature)(parameters.signature);
241
+ return (0, encodePacked_js_1.encodePacked)(['bytes32', 'bytes32', 'uint8'], [signature.r, signature.s, signature.yParity === 0 ? 27 : 28]);
242
+ })();
243
+ return (0, encodeAbiParameters_js_1.encodeAbiParameters)([
244
+ {
245
+ components: [
246
+ {
247
+ name: 'ownerIndex',
248
+ type: 'uint8',
249
+ },
250
+ {
251
+ name: 'signatureData',
252
+ type: 'bytes',
253
+ },
254
+ ],
255
+ type: 'tuple',
256
+ },
257
+ ], [
258
+ {
259
+ ownerIndex,
260
+ signatureData,
261
+ },
262
+ ]);
263
+ }
264
+ const abi = [
265
+ { inputs: [], stateMutability: 'nonpayable', type: 'constructor' },
266
+ {
267
+ inputs: [{ name: 'owner', type: 'bytes' }],
268
+ name: 'AlreadyOwner',
269
+ type: 'error',
270
+ },
271
+ { inputs: [], name: 'Initialized', type: 'error' },
272
+ {
273
+ inputs: [{ name: 'owner', type: 'bytes' }],
274
+ name: 'InvalidEthereumAddressOwner',
275
+ type: 'error',
276
+ },
277
+ {
278
+ inputs: [{ name: 'key', type: 'uint256' }],
279
+ name: 'InvalidNonceKey',
280
+ type: 'error',
281
+ },
282
+ {
283
+ inputs: [{ name: 'owner', type: 'bytes' }],
284
+ name: 'InvalidOwnerBytesLength',
285
+ type: 'error',
286
+ },
287
+ { inputs: [], name: 'LastOwner', type: 'error' },
288
+ {
289
+ inputs: [{ name: 'index', type: 'uint256' }],
290
+ name: 'NoOwnerAtIndex',
291
+ type: 'error',
292
+ },
293
+ {
294
+ inputs: [{ name: 'ownersRemaining', type: 'uint256' }],
295
+ name: 'NotLastOwner',
296
+ type: 'error',
297
+ },
298
+ {
299
+ inputs: [{ name: 'selector', type: 'bytes4' }],
300
+ name: 'SelectorNotAllowed',
301
+ type: 'error',
302
+ },
303
+ { inputs: [], name: 'Unauthorized', type: 'error' },
304
+ { inputs: [], name: 'UnauthorizedCallContext', type: 'error' },
305
+ { inputs: [], name: 'UpgradeFailed', type: 'error' },
306
+ {
307
+ inputs: [
308
+ { name: 'index', type: 'uint256' },
309
+ { name: 'expectedOwner', type: 'bytes' },
310
+ { name: 'actualOwner', type: 'bytes' },
311
+ ],
312
+ name: 'WrongOwnerAtIndex',
313
+ type: 'error',
314
+ },
315
+ {
316
+ anonymous: false,
317
+ inputs: [
318
+ {
319
+ indexed: true,
320
+ name: 'index',
321
+ type: 'uint256',
322
+ },
323
+ { indexed: false, name: 'owner', type: 'bytes' },
324
+ ],
325
+ name: 'AddOwner',
326
+ type: 'event',
327
+ },
328
+ {
329
+ anonymous: false,
330
+ inputs: [
331
+ {
332
+ indexed: true,
333
+ name: 'index',
334
+ type: 'uint256',
335
+ },
336
+ { indexed: false, name: 'owner', type: 'bytes' },
337
+ ],
338
+ name: 'RemoveOwner',
339
+ type: 'event',
340
+ },
341
+ {
342
+ anonymous: false,
343
+ inputs: [
344
+ {
345
+ indexed: true,
346
+ name: 'implementation',
347
+ type: 'address',
348
+ },
349
+ ],
350
+ name: 'Upgraded',
351
+ type: 'event',
352
+ },
353
+ { stateMutability: 'payable', type: 'fallback' },
354
+ {
355
+ inputs: [],
356
+ name: 'REPLAYABLE_NONCE_KEY',
357
+ outputs: [{ name: '', type: 'uint256' }],
358
+ stateMutability: 'view',
359
+ type: 'function',
360
+ },
361
+ {
362
+ inputs: [{ name: 'owner', type: 'address' }],
363
+ name: 'addOwnerAddress',
364
+ outputs: [],
365
+ stateMutability: 'nonpayable',
366
+ type: 'function',
367
+ },
368
+ {
369
+ inputs: [
370
+ { name: 'x', type: 'bytes32' },
371
+ { name: 'y', type: 'bytes32' },
372
+ ],
373
+ name: 'addOwnerPublicKey',
374
+ outputs: [],
375
+ stateMutability: 'nonpayable',
376
+ type: 'function',
377
+ },
378
+ {
379
+ inputs: [{ name: 'functionSelector', type: 'bytes4' }],
380
+ name: 'canSkipChainIdValidation',
381
+ outputs: [{ name: '', type: 'bool' }],
382
+ stateMutability: 'pure',
383
+ type: 'function',
384
+ },
385
+ {
386
+ inputs: [],
387
+ name: 'domainSeparator',
388
+ outputs: [{ name: '', type: 'bytes32' }],
389
+ stateMutability: 'view',
390
+ type: 'function',
391
+ },
392
+ {
393
+ inputs: [],
394
+ name: 'eip712Domain',
395
+ outputs: [
396
+ { name: 'fields', type: 'bytes1' },
397
+ { name: 'name', type: 'string' },
398
+ { name: 'version', type: 'string' },
399
+ { name: 'chainId', type: 'uint256' },
400
+ { name: 'verifyingContract', type: 'address' },
401
+ { name: 'salt', type: 'bytes32' },
402
+ { name: 'extensions', type: 'uint256[]' },
403
+ ],
404
+ stateMutability: 'view',
405
+ type: 'function',
406
+ },
407
+ {
408
+ inputs: [],
409
+ name: 'entryPoint',
410
+ outputs: [{ name: '', type: 'address' }],
411
+ stateMutability: 'view',
412
+ type: 'function',
413
+ },
414
+ {
415
+ inputs: [
416
+ { name: 'target', type: 'address' },
417
+ { name: 'value', type: 'uint256' },
418
+ { name: 'data', type: 'bytes' },
419
+ ],
420
+ name: 'execute',
421
+ outputs: [],
422
+ stateMutability: 'payable',
423
+ type: 'function',
424
+ },
425
+ {
426
+ inputs: [
427
+ {
428
+ components: [
429
+ { name: 'target', type: 'address' },
430
+ { name: 'value', type: 'uint256' },
431
+ { name: 'data', type: 'bytes' },
432
+ ],
433
+ name: 'calls',
434
+ type: 'tuple[]',
435
+ },
436
+ ],
437
+ name: 'executeBatch',
438
+ outputs: [],
439
+ stateMutability: 'payable',
440
+ type: 'function',
441
+ },
442
+ {
443
+ inputs: [{ name: 'calls', type: 'bytes[]' }],
444
+ name: 'executeWithoutChainIdValidation',
445
+ outputs: [],
446
+ stateMutability: 'payable',
447
+ type: 'function',
448
+ },
449
+ {
450
+ inputs: [
451
+ {
452
+ components: [
453
+ { name: 'sender', type: 'address' },
454
+ { name: 'nonce', type: 'uint256' },
455
+ { name: 'initCode', type: 'bytes' },
456
+ { name: 'callData', type: 'bytes' },
457
+ { name: 'callGasLimit', type: 'uint256' },
458
+ {
459
+ name: 'verificationGasLimit',
460
+ type: 'uint256',
461
+ },
462
+ {
463
+ name: 'preVerificationGas',
464
+ type: 'uint256',
465
+ },
466
+ { name: 'maxFeePerGas', type: 'uint256' },
467
+ {
468
+ name: 'maxPriorityFeePerGas',
469
+ type: 'uint256',
470
+ },
471
+ { name: 'paymasterAndData', type: 'bytes' },
472
+ { name: 'signature', type: 'bytes' },
473
+ ],
474
+ name: 'userOp',
475
+ type: 'tuple',
476
+ },
477
+ ],
478
+ name: 'getUserOpHashWithoutChainId',
479
+ outputs: [{ name: '', type: 'bytes32' }],
480
+ stateMutability: 'view',
481
+ type: 'function',
482
+ },
483
+ {
484
+ inputs: [],
485
+ name: 'implementation',
486
+ outputs: [{ name: '$', type: 'address' }],
487
+ stateMutability: 'view',
488
+ type: 'function',
489
+ },
490
+ {
491
+ inputs: [{ name: 'owners', type: 'bytes[]' }],
492
+ name: 'initialize',
493
+ outputs: [],
494
+ stateMutability: 'payable',
495
+ type: 'function',
496
+ },
497
+ {
498
+ inputs: [{ name: 'account', type: 'address' }],
499
+ name: 'isOwnerAddress',
500
+ outputs: [{ name: '', type: 'bool' }],
501
+ stateMutability: 'view',
502
+ type: 'function',
503
+ },
504
+ {
505
+ inputs: [{ name: 'account', type: 'bytes' }],
506
+ name: 'isOwnerBytes',
507
+ outputs: [{ name: '', type: 'bool' }],
508
+ stateMutability: 'view',
509
+ type: 'function',
510
+ },
511
+ {
512
+ inputs: [
513
+ { name: 'x', type: 'bytes32' },
514
+ { name: 'y', type: 'bytes32' },
515
+ ],
516
+ name: 'isOwnerPublicKey',
517
+ outputs: [{ name: '', type: 'bool' }],
518
+ stateMutability: 'view',
519
+ type: 'function',
520
+ },
521
+ {
522
+ inputs: [
523
+ { name: 'hash', type: 'bytes32' },
524
+ { name: 'signature', type: 'bytes' },
525
+ ],
526
+ name: 'isValidSignature',
527
+ outputs: [{ name: 'result', type: 'bytes4' }],
528
+ stateMutability: 'view',
529
+ type: 'function',
530
+ },
531
+ {
532
+ inputs: [],
533
+ name: 'nextOwnerIndex',
534
+ outputs: [{ name: '', type: 'uint256' }],
535
+ stateMutability: 'view',
536
+ type: 'function',
537
+ },
538
+ {
539
+ inputs: [{ name: 'index', type: 'uint256' }],
540
+ name: 'ownerAtIndex',
541
+ outputs: [{ name: '', type: 'bytes' }],
542
+ stateMutability: 'view',
543
+ type: 'function',
544
+ },
545
+ {
546
+ inputs: [],
547
+ name: 'ownerCount',
548
+ outputs: [{ name: '', type: 'uint256' }],
549
+ stateMutability: 'view',
550
+ type: 'function',
551
+ },
552
+ {
553
+ inputs: [],
554
+ name: 'proxiableUUID',
555
+ outputs: [{ name: '', type: 'bytes32' }],
556
+ stateMutability: 'view',
557
+ type: 'function',
558
+ },
559
+ {
560
+ inputs: [
561
+ { name: 'index', type: 'uint256' },
562
+ { name: 'owner', type: 'bytes' },
563
+ ],
564
+ name: 'removeLastOwner',
565
+ outputs: [],
566
+ stateMutability: 'nonpayable',
567
+ type: 'function',
568
+ },
569
+ {
570
+ inputs: [
571
+ { name: 'index', type: 'uint256' },
572
+ { name: 'owner', type: 'bytes' },
573
+ ],
574
+ name: 'removeOwnerAtIndex',
575
+ outputs: [],
576
+ stateMutability: 'nonpayable',
577
+ type: 'function',
578
+ },
579
+ {
580
+ inputs: [],
581
+ name: 'removedOwnersCount',
582
+ outputs: [{ name: '', type: 'uint256' }],
583
+ stateMutability: 'view',
584
+ type: 'function',
585
+ },
586
+ {
587
+ inputs: [{ name: 'hash', type: 'bytes32' }],
588
+ name: 'replaySafeHash',
589
+ outputs: [{ name: '', type: 'bytes32' }],
590
+ stateMutability: 'view',
591
+ type: 'function',
592
+ },
593
+ {
594
+ inputs: [
595
+ { name: 'newImplementation', type: 'address' },
596
+ { name: 'data', type: 'bytes' },
597
+ ],
598
+ name: 'upgradeToAndCall',
599
+ outputs: [],
600
+ stateMutability: 'payable',
601
+ type: 'function',
602
+ },
603
+ {
604
+ inputs: [
605
+ {
606
+ components: [
607
+ { name: 'sender', type: 'address' },
608
+ { name: 'nonce', type: 'uint256' },
609
+ { name: 'initCode', type: 'bytes' },
610
+ { name: 'callData', type: 'bytes' },
611
+ { name: 'callGasLimit', type: 'uint256' },
612
+ {
613
+ name: 'verificationGasLimit',
614
+ type: 'uint256',
615
+ },
616
+ {
617
+ name: 'preVerificationGas',
618
+ type: 'uint256',
619
+ },
620
+ { name: 'maxFeePerGas', type: 'uint256' },
621
+ {
622
+ name: 'maxPriorityFeePerGas',
623
+ type: 'uint256',
624
+ },
625
+ { name: 'paymasterAndData', type: 'bytes' },
626
+ { name: 'signature', type: 'bytes' },
627
+ ],
628
+ name: 'userOp',
629
+ type: 'tuple',
630
+ },
631
+ { name: 'userOpHash', type: 'bytes32' },
632
+ { name: 'missingAccountFunds', type: 'uint256' },
633
+ ],
634
+ name: 'validateUserOp',
635
+ outputs: [{ name: 'validationData', type: 'uint256' }],
636
+ stateMutability: 'nonpayable',
637
+ type: 'function',
638
+ },
639
+ { stateMutability: 'payable', type: 'receive' },
640
+ ];
641
+ const factoryAbi = [
642
+ {
643
+ inputs: [{ name: 'implementation_', type: 'address' }],
644
+ stateMutability: 'payable',
645
+ type: 'constructor',
646
+ },
647
+ { inputs: [], name: 'OwnerRequired', type: 'error' },
648
+ {
649
+ inputs: [
650
+ { name: 'owners', type: 'bytes[]' },
651
+ { name: 'nonce', type: 'uint256' },
652
+ ],
653
+ name: 'createAccount',
654
+ outputs: [
655
+ {
656
+ name: 'account',
657
+ type: 'address',
658
+ },
659
+ ],
660
+ stateMutability: 'payable',
661
+ type: 'function',
662
+ },
663
+ {
664
+ inputs: [
665
+ { name: 'owners', type: 'bytes[]' },
666
+ { name: 'nonce', type: 'uint256' },
667
+ ],
668
+ name: 'getAddress',
669
+ outputs: [{ name: '', type: 'address' }],
670
+ stateMutability: 'view',
671
+ type: 'function',
672
+ },
673
+ {
674
+ inputs: [],
675
+ name: 'implementation',
676
+ outputs: [{ name: '', type: 'address' }],
677
+ stateMutability: 'view',
678
+ type: 'function',
679
+ },
680
+ {
681
+ inputs: [],
682
+ name: 'initCodeHash',
683
+ outputs: [{ name: '', type: 'bytes32' }],
684
+ stateMutability: 'view',
685
+ type: 'function',
686
+ },
687
+ ];
688
+ //# sourceMappingURL=toCoinbaseSmartAccount.js.map