@zerodev/sdk 4.6.0 → 5.0.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 (703) hide show
  1. package/_cjs/accounts/addressToEmptyAccount.js +25 -0
  2. package/_cjs/accounts/addressToEmptyAccount.js.map +1 -0
  3. package/_cjs/accounts/index.js +12 -0
  4. package/_cjs/accounts/index.js.map +1 -0
  5. package/{dist/cjs/kernel-zerodev/abis → _cjs/accounts/kernel/abi}/KernelAccountAbi.js +256 -158
  6. package/_cjs/accounts/kernel/abi/KernelAccountAbi.js.map +1 -0
  7. package/{dist/cjs/kernel-zerodev/abis → _cjs/accounts/kernel/abi}/KernelFactoryAbi.js +87 -87
  8. package/_cjs/accounts/kernel/abi/KernelFactoryAbi.js.map +1 -0
  9. package/{dist/cjs/kernel-zerodev/abis → _cjs/accounts/kernel/abi}/TokenActionsAbi.js +18 -18
  10. package/_cjs/accounts/kernel/abi/TokenActionsAbi.js.map +1 -0
  11. package/_cjs/accounts/kernel/createKernelAccount.js +299 -0
  12. package/_cjs/accounts/kernel/createKernelAccount.js.map +1 -0
  13. package/_cjs/accounts/utils/index.js +6 -0
  14. package/_cjs/accounts/utils/index.js.map +1 -0
  15. package/_cjs/accounts/utils/toKernelPluginManager.js +124 -0
  16. package/_cjs/accounts/utils/toKernelPluginManager.js.map +1 -0
  17. package/_cjs/actions/account-client/signUserOperation.js +16 -0
  18. package/_cjs/actions/account-client/signUserOperation.js.map +1 -0
  19. package/_cjs/actions/index.js +8 -0
  20. package/_cjs/actions/index.js.map +1 -0
  21. package/_cjs/actions/paymaster/sponsorUserOperation.js +42 -0
  22. package/_cjs/actions/paymaster/sponsorUserOperation.js.map +1 -0
  23. package/_cjs/clients/decorators/index.js +6 -0
  24. package/_cjs/clients/decorators/index.js.map +1 -0
  25. package/_cjs/clients/decorators/kernel.js +19 -0
  26. package/_cjs/clients/decorators/kernel.js.map +1 -0
  27. package/_cjs/clients/index.js +8 -0
  28. package/_cjs/clients/index.js.map +1 -0
  29. package/_cjs/clients/kernelAccountClient.js +20 -0
  30. package/_cjs/clients/kernelAccountClient.js.map +1 -0
  31. package/_cjs/clients/paymasterClient.js +17 -0
  32. package/_cjs/clients/paymasterClient.js.map +1 -0
  33. package/_cjs/constants.js +12 -0
  34. package/_cjs/constants.js.map +1 -0
  35. package/_cjs/index.js +27 -0
  36. package/_cjs/index.js.map +1 -0
  37. package/_cjs/package.json +1 -0
  38. package/_cjs/types/index.js +6 -0
  39. package/_cjs/types/index.js.map +1 -0
  40. package/_cjs/types/kernel.js +10 -0
  41. package/_cjs/types/kernel.js.map +1 -0
  42. package/_cjs/utils.js +30 -0
  43. package/_cjs/utils.js.map +1 -0
  44. package/_esm/accounts/addressToEmptyAccount.js +21 -0
  45. package/_esm/accounts/addressToEmptyAccount.js.map +1 -0
  46. package/_esm/accounts/index.js +4 -0
  47. package/_esm/accounts/index.js.map +1 -0
  48. package/_esm/accounts/kernel/abi/KernelAccountAbi.js +796 -0
  49. package/_esm/accounts/kernel/abi/KernelAccountAbi.js.map +1 -0
  50. package/{dist/esm/kernel-zerodev/abis → _esm/accounts/kernel/abi}/KernelFactoryAbi.js +87 -87
  51. package/_esm/accounts/kernel/abi/KernelFactoryAbi.js.map +1 -0
  52. package/{dist/esm/kernel-zerodev/abis → _esm/accounts/kernel/abi}/TokenActionsAbi.js +18 -18
  53. package/_esm/accounts/kernel/abi/TokenActionsAbi.js.map +1 -0
  54. package/_esm/accounts/kernel/createKernelAccount.js +344 -0
  55. package/_esm/accounts/kernel/createKernelAccount.js.map +1 -0
  56. package/_esm/accounts/utils/index.js +3 -0
  57. package/_esm/accounts/utils/index.js.map +1 -0
  58. package/_esm/accounts/utils/toKernelPluginManager.js +124 -0
  59. package/_esm/accounts/utils/toKernelPluginManager.js.map +1 -0
  60. package/_esm/actions/account-client/signUserOperation.js +12 -0
  61. package/_esm/actions/account-client/signUserOperation.js.map +1 -0
  62. package/_esm/actions/index.js +3 -0
  63. package/_esm/actions/index.js.map +1 -0
  64. package/_esm/actions/paymaster/sponsorUserOperation.js +41 -0
  65. package/_esm/actions/paymaster/sponsorUserOperation.js.map +1 -0
  66. package/_esm/clients/decorators/index.js +2 -0
  67. package/_esm/clients/decorators/index.js.map +1 -0
  68. package/_esm/clients/decorators/kernel.js +14 -0
  69. package/_esm/clients/decorators/kernel.js.map +1 -0
  70. package/_esm/clients/index.js +3 -0
  71. package/_esm/clients/index.js.map +1 -0
  72. package/_esm/clients/kernelAccountClient.js +17 -0
  73. package/_esm/clients/kernelAccountClient.js.map +1 -0
  74. package/_esm/clients/paymasterClient.js +30 -0
  75. package/_esm/clients/paymasterClient.js.map +1 -0
  76. package/_esm/constants.js +10 -0
  77. package/_esm/constants.js.map +1 -0
  78. package/_esm/index.js +13 -0
  79. package/_esm/index.js.map +1 -0
  80. package/_esm/package.json +1 -0
  81. package/_esm/types/index.js +2 -0
  82. package/_esm/types/index.js.map +1 -0
  83. package/_esm/types/kernel.js +8 -0
  84. package/_esm/types/kernel.js.map +1 -0
  85. package/_esm/utils.js +25 -0
  86. package/_esm/utils.js.map +1 -0
  87. package/_types/accounts/addressToEmptyAccount.d.ts +4 -0
  88. package/_types/accounts/addressToEmptyAccount.d.ts.map +1 -0
  89. package/_types/accounts/index.d.ts +4 -0
  90. package/_types/accounts/index.d.ts.map +1 -0
  91. package/{dist/cjs/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelAccountAbi.d.ts +82 -0
  92. package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelAccountAbi.d.ts.map +1 -1
  93. package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelFactoryAbi.d.ts.map +1 -1
  94. package/_types/accounts/kernel/abi/TokenActionsAbi.d.ts.map +1 -0
  95. package/_types/accounts/kernel/createKernelAccount.d.ts +89 -0
  96. package/_types/accounts/kernel/createKernelAccount.d.ts.map +1 -0
  97. package/_types/accounts/utils/index.d.ts +3 -0
  98. package/_types/accounts/utils/index.d.ts.map +1 -0
  99. package/_types/accounts/utils/toKernelPluginManager.d.ts +5 -0
  100. package/_types/accounts/utils/toKernelPluginManager.d.ts.map +1 -0
  101. package/_types/actions/account-client/signUserOperation.d.ts +10 -0
  102. package/_types/actions/account-client/signUserOperation.d.ts.map +1 -0
  103. package/_types/actions/index.d.ts +3 -0
  104. package/_types/actions/index.d.ts.map +1 -0
  105. package/_types/actions/paymaster/sponsorUserOperation.d.ts +21 -0
  106. package/_types/actions/paymaster/sponsorUserOperation.d.ts.map +1 -0
  107. package/_types/clients/decorators/index.d.ts +2 -0
  108. package/_types/clients/decorators/index.d.ts.map +1 -0
  109. package/_types/clients/decorators/kernel.d.ts +25 -0
  110. package/_types/clients/decorators/kernel.d.ts.map +1 -0
  111. package/_types/clients/index.d.ts +3 -0
  112. package/_types/clients/index.d.ts.map +1 -0
  113. package/_types/clients/kernelAccountClient.d.ts +280 -0
  114. package/_types/clients/kernelAccountClient.d.ts.map +1 -0
  115. package/_types/clients/paymasterClient.d.ts +36 -0
  116. package/_types/clients/paymasterClient.d.ts.map +1 -0
  117. package/_types/constants.d.ts +8 -0
  118. package/_types/constants.d.ts.map +1 -0
  119. package/_types/index.d.ts +12 -0
  120. package/_types/index.d.ts.map +1 -0
  121. package/_types/types/index.d.ts +3 -0
  122. package/_types/types/index.d.ts.map +1 -0
  123. package/_types/types/kernel.d.ts +81 -0
  124. package/_types/types/kernel.d.ts.map +1 -0
  125. package/_types/utils.d.ts +12 -0
  126. package/_types/utils.d.ts.map +1 -0
  127. package/accounts/addressToEmptyAccount.ts +24 -0
  128. package/accounts/index.ts +8 -0
  129. package/{dist/esm/kernel-zerodev/abis/KernelAccountAbi.js → accounts/kernel/abi/KernelAccountAbi.ts} +264 -159
  130. package/accounts/kernel/abi/KernelFactoryAbi.ts +380 -0
  131. package/accounts/kernel/abi/TokenActionsAbi.ts +81 -0
  132. package/accounts/kernel/createKernelAccount.ts +465 -0
  133. package/accounts/utils/index.ts +2 -0
  134. package/accounts/utils/toKernelPluginManager.ts +173 -0
  135. package/actions/account-client/signUserOperation.ts +59 -0
  136. package/actions/index.ts +11 -0
  137. package/actions/paymaster/sponsorUserOperation.ts +85 -0
  138. package/clients/decorators/index.ts +4 -0
  139. package/clients/decorators/kernel.ts +78 -0
  140. package/clients/index.ts +9 -0
  141. package/clients/kernelAccountClient.ts +78 -0
  142. package/clients/paymasterClient.ts +53 -0
  143. package/constants.ts +12 -0
  144. package/index.ts +36 -0
  145. package/package.json +76 -60
  146. package/types/index.ts +12 -0
  147. package/types/kernel.ts +116 -0
  148. package/utils.ts +41 -0
  149. package/README.md +0 -5
  150. package/dist/cjs/index.d.ts +0 -22
  151. package/dist/cjs/index.js +0 -61
  152. package/dist/cjs/index.js.map +0 -1
  153. package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +0 -162
  154. package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js +0 -215
  155. package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js.map +0 -1
  156. package/dist/cjs/kernel-zerodev/abis/ERC20Abi.d.ts +0 -231
  157. package/dist/cjs/kernel-zerodev/abis/ERC20Abi.js +0 -157
  158. package/dist/cjs/kernel-zerodev/abis/ERC20Abi.js.map +0 -1
  159. package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +0 -158
  160. package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.js +0 -210
  161. package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.js.map +0 -1
  162. package/dist/cjs/kernel-zerodev/abis/KernelAccountAbi.js.map +0 -1
  163. package/dist/cjs/kernel-zerodev/abis/KernelFactoryAbi.d.ts +0 -293
  164. package/dist/cjs/kernel-zerodev/abis/KernelFactoryAbi.js.map +0 -1
  165. package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +0 -150
  166. package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.js +0 -200
  167. package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.js.map +0 -1
  168. package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.d.ts +0 -15
  169. package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.js +0 -24
  170. package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.js.map +0 -1
  171. package/dist/cjs/kernel-zerodev/abis/RecoveryActionAbi.d.ts +0 -15
  172. package/dist/cjs/kernel-zerodev/abis/RecoveryActionAbi.js +0 -24
  173. package/dist/cjs/kernel-zerodev/abis/RecoveryActionAbi.js.map +0 -1
  174. package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +0 -212
  175. package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.js +0 -281
  176. package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.js.map +0 -1
  177. package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.d.ts +0 -237
  178. package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.js +0 -161
  179. package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.js.map +0 -1
  180. package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.d.ts +0 -287
  181. package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.js +0 -377
  182. package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.js.map +0 -1
  183. package/dist/cjs/kernel-zerodev/abis/TokenActionsAbi.d.ts +0 -63
  184. package/dist/cjs/kernel-zerodev/abis/TokenActionsAbi.js.map +0 -1
  185. package/dist/cjs/kernel-zerodev/abis/WeightedValidatorAbi.d.ts +0 -340
  186. package/dist/cjs/kernel-zerodev/abis/WeightedValidatorAbi.js +0 -446
  187. package/dist/cjs/kernel-zerodev/abis/WeightedValidatorAbi.js.map +0 -1
  188. package/dist/cjs/kernel-zerodev/abis/index.d.ts +0 -8
  189. package/dist/cjs/kernel-zerodev/abis/index.js +0 -18
  190. package/dist/cjs/kernel-zerodev/abis/index.js.map +0 -1
  191. package/dist/cjs/kernel-zerodev/account.d.ts +0 -51
  192. package/dist/cjs/kernel-zerodev/account.js +0 -321
  193. package/dist/cjs/kernel-zerodev/account.js.map +0 -1
  194. package/dist/cjs/kernel-zerodev/api/index.d.ts +0 -5
  195. package/dist/cjs/kernel-zerodev/api/index.js +0 -68
  196. package/dist/cjs/kernel-zerodev/api/index.js.map +0 -1
  197. package/dist/cjs/kernel-zerodev/client/create-client.d.ts +0 -12
  198. package/dist/cjs/kernel-zerodev/client/create-client.js +0 -54
  199. package/dist/cjs/kernel-zerodev/client/create-client.js.map +0 -1
  200. package/dist/cjs/kernel-zerodev/constants.d.ts +0 -31
  201. package/dist/cjs/kernel-zerodev/constants.js +0 -78
  202. package/dist/cjs/kernel-zerodev/constants.js.map +0 -1
  203. package/dist/cjs/kernel-zerodev/errors.d.ts +0 -5
  204. package/dist/cjs/kernel-zerodev/errors.js +0 -12
  205. package/dist/cjs/kernel-zerodev/errors.js.map +0 -1
  206. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.d.ts +0 -31
  207. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.js +0 -147
  208. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.js.map +0 -1
  209. package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.d.ts +0 -22
  210. package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.js +0 -116
  211. package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.js.map +0 -1
  212. package/dist/cjs/kernel-zerodev/middleware/gas-estimator.d.ts +0 -19
  213. package/dist/cjs/kernel-zerodev/middleware/gas-estimator.js +0 -153
  214. package/dist/cjs/kernel-zerodev/middleware/gas-estimator.js.map +0 -1
  215. package/dist/cjs/kernel-zerodev/middleware/paymaster.d.ts +0 -5
  216. package/dist/cjs/kernel-zerodev/middleware/paymaster.js +0 -63
  217. package/dist/cjs/kernel-zerodev/middleware/paymaster.js.map +0 -1
  218. package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.d.ts +0 -11
  219. package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.js +0 -80
  220. package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.js.map +0 -1
  221. package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.d.ts +0 -2
  222. package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.js +0 -18
  223. package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.js.map +0 -1
  224. package/dist/cjs/kernel-zerodev/owner/index.d.ts +0 -2
  225. package/dist/cjs/kernel-zerodev/owner/index.js +0 -8
  226. package/dist/cjs/kernel-zerodev/owner/index.js.map +0 -1
  227. package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +0 -8
  228. package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.js +0 -74
  229. package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.js.map +0 -1
  230. package/dist/cjs/kernel-zerodev/owner/passkey/exceptions.d.ts +0 -3
  231. package/dist/cjs/kernel-zerodev/owner/passkey/exceptions.js +0 -16
  232. package/dist/cjs/kernel-zerodev/owner/passkey/exceptions.js.map +0 -1
  233. package/dist/cjs/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts +0 -6
  234. package/dist/cjs/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js +0 -48
  235. package/dist/cjs/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js.map +0 -1
  236. package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +0 -7
  237. package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.js +0 -44
  238. package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.js.map +0 -1
  239. package/dist/cjs/kernel-zerodev/owner/passkey/index.d.ts +0 -4
  240. package/dist/cjs/kernel-zerodev/owner/passkey/index.js +0 -12
  241. package/dist/cjs/kernel-zerodev/owner/passkey/index.js.map +0 -1
  242. package/dist/cjs/kernel-zerodev/owner/passkey/types.d.ts +0 -12
  243. package/dist/cjs/kernel-zerodev/owner/passkey/types.js +0 -3
  244. package/dist/cjs/kernel-zerodev/owner/passkey/types.js.map +0 -1
  245. package/dist/cjs/kernel-zerodev/owner/passkey/utils.d.ts +0 -14
  246. package/dist/cjs/kernel-zerodev/owner/passkey/utils.js +0 -114
  247. package/dist/cjs/kernel-zerodev/owner/passkey/utils.js.map +0 -1
  248. package/dist/cjs/kernel-zerodev/paymaster/base.d.ts +0 -18
  249. package/dist/cjs/kernel-zerodev/paymaster/base.js +0 -63
  250. package/dist/cjs/kernel-zerodev/paymaster/base.js.map +0 -1
  251. package/dist/cjs/kernel-zerodev/paymaster/index.d.ts +0 -3
  252. package/dist/cjs/kernel-zerodev/paymaster/index.js +0 -10
  253. package/dist/cjs/kernel-zerodev/paymaster/index.js.map +0 -1
  254. package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.d.ts +0 -15
  255. package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.js +0 -188
  256. package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.js.map +0 -1
  257. package/dist/cjs/kernel-zerodev/paymaster/types.d.ts +0 -29
  258. package/dist/cjs/kernel-zerodev/paymaster/types.js +0 -3
  259. package/dist/cjs/kernel-zerodev/paymaster/types.js.map +0 -1
  260. package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.d.ts +0 -8
  261. package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.js +0 -22
  262. package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.js.map +0 -1
  263. package/dist/cjs/kernel-zerodev/provider.d.ts +0 -57
  264. package/dist/cjs/kernel-zerodev/provider.js +0 -387
  265. package/dist/cjs/kernel-zerodev/provider.js.map +0 -1
  266. package/dist/cjs/kernel-zerodev/signer/empty-account.d.ts +0 -10
  267. package/dist/cjs/kernel-zerodev/signer/empty-account.js +0 -43
  268. package/dist/cjs/kernel-zerodev/signer/empty-account.js.map +0 -1
  269. package/dist/cjs/kernel-zerodev/types.d.ts +0 -7
  270. package/dist/cjs/kernel-zerodev/types.js +0 -3
  271. package/dist/cjs/kernel-zerodev/types.js.map +0 -1
  272. package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.d.ts +0 -5
  273. package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.js +0 -106
  274. package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.js.map +0 -1
  275. package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +0 -15
  276. package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.js +0 -33
  277. package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.js.map +0 -1
  278. package/dist/cjs/kernel-zerodev/utils/custom-chains.d.ts +0 -58
  279. package/dist/cjs/kernel-zerodev/utils/custom-chains.js +0 -57
  280. package/dist/cjs/kernel-zerodev/utils/custom-chains.js.map +0 -1
  281. package/dist/cjs/kernel-zerodev/utils.d.ts +0 -20
  282. package/dist/cjs/kernel-zerodev/utils.js +0 -119
  283. package/dist/cjs/kernel-zerodev/utils.js.map +0 -1
  284. package/dist/cjs/kernel-zerodev/validator/base.d.ts +0 -57
  285. package/dist/cjs/kernel-zerodev/validator/base.js +0 -285
  286. package/dist/cjs/kernel-zerodev/validator/base.js.map +0 -1
  287. package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.d.ts +0 -20
  288. package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.js +0 -97
  289. package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.js.map +0 -1
  290. package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.d.ts +0 -29
  291. package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.js +0 -118
  292. package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.js.map +0 -1
  293. package/dist/cjs/kernel-zerodev/validator/index.d.ts +0 -8
  294. package/dist/cjs/kernel-zerodev/validator/index.js +0 -21
  295. package/dist/cjs/kernel-zerodev/validator/index.js.map +0 -1
  296. package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.d.ts +0 -22
  297. package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.js +0 -122
  298. package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.js.map +0 -1
  299. package/dist/cjs/kernel-zerodev/validator/recovery-validator.d.ts +0 -56
  300. package/dist/cjs/kernel-zerodev/validator/recovery-validator.js +0 -349
  301. package/dist/cjs/kernel-zerodev/validator/recovery-validator.js.map +0 -1
  302. package/dist/cjs/kernel-zerodev/validator/session-key-validator.d.ts +0 -84
  303. package/dist/cjs/kernel-zerodev/validator/session-key-validator.js +0 -501
  304. package/dist/cjs/kernel-zerodev/validator/session-key-validator.js.map +0 -1
  305. package/dist/cjs/kernel-zerodev/validator/types.d.ts +0 -56
  306. package/dist/cjs/kernel-zerodev/validator/types.js +0 -3
  307. package/dist/cjs/kernel-zerodev/validator/types.js.map +0 -1
  308. package/dist/cjs/kernel-zerodev/validator-provider/base.d.ts +0 -29
  309. package/dist/cjs/kernel-zerodev/validator-provider/base.js +0 -129
  310. package/dist/cjs/kernel-zerodev/validator-provider/base.js.map +0 -1
  311. package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +0 -8
  312. package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.js +0 -60
  313. package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.js.map +0 -1
  314. package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +0 -8
  315. package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.js +0 -64
  316. package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.js.map +0 -1
  317. package/dist/cjs/kernel-zerodev/validator-provider/index.d.ts +0 -8
  318. package/dist/cjs/kernel-zerodev/validator-provider/index.js +0 -21
  319. package/dist/cjs/kernel-zerodev/validator-provider/index.js.map +0 -1
  320. package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +0 -8
  321. package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.js +0 -64
  322. package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.js.map +0 -1
  323. package/dist/cjs/kernel-zerodev/validator-provider/recovery-provider.d.ts +0 -27
  324. package/dist/cjs/kernel-zerodev/validator-provider/recovery-provider.js +0 -278
  325. package/dist/cjs/kernel-zerodev/validator-provider/recovery-provider.js.map +0 -1
  326. package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.d.ts +0 -18
  327. package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.js +0 -114
  328. package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.js.map +0 -1
  329. package/dist/cjs/kernel-zerodev/validator-provider/types.d.ts +0 -29
  330. package/dist/cjs/kernel-zerodev/validator-provider/types.js +0 -3
  331. package/dist/cjs/kernel-zerodev/validator-provider/types.js.map +0 -1
  332. package/dist/cjs/package.json +0 -1
  333. package/dist/esm/index.d.ts +0 -22
  334. package/dist/esm/index.js +0 -17
  335. package/dist/esm/index.js.map +0 -1
  336. package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +0 -162
  337. package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js +0 -212
  338. package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js.map +0 -1
  339. package/dist/esm/kernel-zerodev/abis/ERC20Abi.d.ts +0 -231
  340. package/dist/esm/kernel-zerodev/abis/ERC20Abi.js +0 -154
  341. package/dist/esm/kernel-zerodev/abis/ERC20Abi.js.map +0 -1
  342. package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +0 -158
  343. package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.js +0 -207
  344. package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.js.map +0 -1
  345. package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.d.ts +0 -534
  346. package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.js.map +0 -1
  347. package/dist/esm/kernel-zerodev/abis/KernelFactoryAbi.d.ts +0 -293
  348. package/dist/esm/kernel-zerodev/abis/KernelFactoryAbi.js.map +0 -1
  349. package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +0 -150
  350. package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.js +0 -197
  351. package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.js.map +0 -1
  352. package/dist/esm/kernel-zerodev/abis/MultiSendAbi.d.ts +0 -15
  353. package/dist/esm/kernel-zerodev/abis/MultiSendAbi.js +0 -21
  354. package/dist/esm/kernel-zerodev/abis/MultiSendAbi.js.map +0 -1
  355. package/dist/esm/kernel-zerodev/abis/RecoveryActionAbi.d.ts +0 -15
  356. package/dist/esm/kernel-zerodev/abis/RecoveryActionAbi.js +0 -21
  357. package/dist/esm/kernel-zerodev/abis/RecoveryActionAbi.js.map +0 -1
  358. package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +0 -212
  359. package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.js +0 -278
  360. package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.js.map +0 -1
  361. package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.d.ts +0 -237
  362. package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.js +0 -158
  363. package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.js.map +0 -1
  364. package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.d.ts +0 -287
  365. package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.js +0 -374
  366. package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.js.map +0 -1
  367. package/dist/esm/kernel-zerodev/abis/TokenActionsAbi.d.ts +0 -63
  368. package/dist/esm/kernel-zerodev/abis/TokenActionsAbi.js.map +0 -1
  369. package/dist/esm/kernel-zerodev/abis/WeightedValidatorAbi.d.ts +0 -340
  370. package/dist/esm/kernel-zerodev/abis/WeightedValidatorAbi.js +0 -443
  371. package/dist/esm/kernel-zerodev/abis/WeightedValidatorAbi.js.map +0 -1
  372. package/dist/esm/kernel-zerodev/abis/index.d.ts +0 -8
  373. package/dist/esm/kernel-zerodev/abis/index.js +0 -9
  374. package/dist/esm/kernel-zerodev/abis/index.js.map +0 -1
  375. package/dist/esm/kernel-zerodev/account.d.ts +0 -51
  376. package/dist/esm/kernel-zerodev/account.js +0 -317
  377. package/dist/esm/kernel-zerodev/account.js.map +0 -1
  378. package/dist/esm/kernel-zerodev/api/index.d.ts +0 -5
  379. package/dist/esm/kernel-zerodev/api/index.js +0 -58
  380. package/dist/esm/kernel-zerodev/api/index.js.map +0 -1
  381. package/dist/esm/kernel-zerodev/client/create-client.d.ts +0 -12
  382. package/dist/esm/kernel-zerodev/client/create-client.js +0 -50
  383. package/dist/esm/kernel-zerodev/client/create-client.js.map +0 -1
  384. package/dist/esm/kernel-zerodev/constants.d.ts +0 -31
  385. package/dist/esm/kernel-zerodev/constants.js +0 -75
  386. package/dist/esm/kernel-zerodev/constants.js.map +0 -1
  387. package/dist/esm/kernel-zerodev/errors.d.ts +0 -5
  388. package/dist/esm/kernel-zerodev/errors.js +0 -6
  389. package/dist/esm/kernel-zerodev/errors.js.map +0 -1
  390. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.d.ts +0 -31
  391. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.js +0 -145
  392. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.js.map +0 -1
  393. package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.d.ts +0 -22
  394. package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.js +0 -112
  395. package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.js.map +0 -1
  396. package/dist/esm/kernel-zerodev/middleware/gas-estimator.d.ts +0 -19
  397. package/dist/esm/kernel-zerodev/middleware/gas-estimator.js +0 -146
  398. package/dist/esm/kernel-zerodev/middleware/gas-estimator.js.map +0 -1
  399. package/dist/esm/kernel-zerodev/middleware/paymaster.d.ts +0 -5
  400. package/dist/esm/kernel-zerodev/middleware/paymaster.js +0 -59
  401. package/dist/esm/kernel-zerodev/middleware/paymaster.js.map +0 -1
  402. package/dist/esm/kernel-zerodev/owner/getCustodialOwner.d.ts +0 -11
  403. package/dist/esm/kernel-zerodev/owner/getCustodialOwner.js +0 -73
  404. package/dist/esm/kernel-zerodev/owner/getCustodialOwner.js.map +0 -1
  405. package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.d.ts +0 -2
  406. package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.js +0 -15
  407. package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.js.map +0 -1
  408. package/dist/esm/kernel-zerodev/owner/index.d.ts +0 -2
  409. package/dist/esm/kernel-zerodev/owner/index.js +0 -3
  410. package/dist/esm/kernel-zerodev/owner/index.js.map +0 -1
  411. package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +0 -8
  412. package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.js +0 -67
  413. package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.js.map +0 -1
  414. package/dist/esm/kernel-zerodev/owner/passkey/exceptions.d.ts +0 -3
  415. package/dist/esm/kernel-zerodev/owner/passkey/exceptions.js +0 -12
  416. package/dist/esm/kernel-zerodev/owner/passkey/exceptions.js.map +0 -1
  417. package/dist/esm/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts +0 -6
  418. package/dist/esm/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js +0 -41
  419. package/dist/esm/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js.map +0 -1
  420. package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +0 -7
  421. package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.js +0 -37
  422. package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.js.map +0 -1
  423. package/dist/esm/kernel-zerodev/owner/passkey/index.d.ts +0 -4
  424. package/dist/esm/kernel-zerodev/owner/passkey/index.js +0 -5
  425. package/dist/esm/kernel-zerodev/owner/passkey/index.js.map +0 -1
  426. package/dist/esm/kernel-zerodev/owner/passkey/types.d.ts +0 -12
  427. package/dist/esm/kernel-zerodev/owner/passkey/types.js +0 -2
  428. package/dist/esm/kernel-zerodev/owner/passkey/types.js.map +0 -1
  429. package/dist/esm/kernel-zerodev/owner/passkey/utils.d.ts +0 -14
  430. package/dist/esm/kernel-zerodev/owner/passkey/utils.js +0 -100
  431. package/dist/esm/kernel-zerodev/owner/passkey/utils.js.map +0 -1
  432. package/dist/esm/kernel-zerodev/paymaster/base.d.ts +0 -18
  433. package/dist/esm/kernel-zerodev/paymaster/base.js +0 -56
  434. package/dist/esm/kernel-zerodev/paymaster/base.js.map +0 -1
  435. package/dist/esm/kernel-zerodev/paymaster/index.d.ts +0 -3
  436. package/dist/esm/kernel-zerodev/paymaster/index.js +0 -7
  437. package/dist/esm/kernel-zerodev/paymaster/index.js.map +0 -1
  438. package/dist/esm/kernel-zerodev/paymaster/token-paymaster.d.ts +0 -15
  439. package/dist/esm/kernel-zerodev/paymaster/token-paymaster.js +0 -182
  440. package/dist/esm/kernel-zerodev/paymaster/token-paymaster.js.map +0 -1
  441. package/dist/esm/kernel-zerodev/paymaster/types.d.ts +0 -29
  442. package/dist/esm/kernel-zerodev/paymaster/types.js +0 -2
  443. package/dist/esm/kernel-zerodev/paymaster/types.js.map +0 -1
  444. package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.d.ts +0 -8
  445. package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.js +0 -18
  446. package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.js.map +0 -1
  447. package/dist/esm/kernel-zerodev/provider.d.ts +0 -57
  448. package/dist/esm/kernel-zerodev/provider.js +0 -383
  449. package/dist/esm/kernel-zerodev/provider.js.map +0 -1
  450. package/dist/esm/kernel-zerodev/signer/empty-account.d.ts +0 -10
  451. package/dist/esm/kernel-zerodev/signer/empty-account.js +0 -40
  452. package/dist/esm/kernel-zerodev/signer/empty-account.js.map +0 -1
  453. package/dist/esm/kernel-zerodev/types.d.ts +0 -7
  454. package/dist/esm/kernel-zerodev/types.js +0 -2
  455. package/dist/esm/kernel-zerodev/types.js.map +0 -1
  456. package/dist/esm/kernel-zerodev/utils/ERC4337-utils.d.ts +0 -5
  457. package/dist/esm/kernel-zerodev/utils/ERC4337-utils.js +0 -100
  458. package/dist/esm/kernel-zerodev/utils/ERC4337-utils.js.map +0 -1
  459. package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +0 -15
  460. package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.js +0 -29
  461. package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.js.map +0 -1
  462. package/dist/esm/kernel-zerodev/utils/custom-chains.d.ts +0 -58
  463. package/dist/esm/kernel-zerodev/utils/custom-chains.js +0 -54
  464. package/dist/esm/kernel-zerodev/utils/custom-chains.js.map +0 -1
  465. package/dist/esm/kernel-zerodev/utils.d.ts +0 -20
  466. package/dist/esm/kernel-zerodev/utils.js +0 -85
  467. package/dist/esm/kernel-zerodev/utils.js.map +0 -1
  468. package/dist/esm/kernel-zerodev/validator/base.d.ts +0 -57
  469. package/dist/esm/kernel-zerodev/validator/base.js +0 -282
  470. package/dist/esm/kernel-zerodev/validator/base.js.map +0 -1
  471. package/dist/esm/kernel-zerodev/validator/ecdsa-validator.d.ts +0 -20
  472. package/dist/esm/kernel-zerodev/validator/ecdsa-validator.js +0 -93
  473. package/dist/esm/kernel-zerodev/validator/ecdsa-validator.js.map +0 -1
  474. package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.d.ts +0 -29
  475. package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.js +0 -114
  476. package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.js.map +0 -1
  477. package/dist/esm/kernel-zerodev/validator/index.d.ts +0 -8
  478. package/dist/esm/kernel-zerodev/validator/index.js +0 -14
  479. package/dist/esm/kernel-zerodev/validator/index.js.map +0 -1
  480. package/dist/esm/kernel-zerodev/validator/kill-switch-validator.d.ts +0 -22
  481. package/dist/esm/kernel-zerodev/validator/kill-switch-validator.js +0 -118
  482. package/dist/esm/kernel-zerodev/validator/kill-switch-validator.js.map +0 -1
  483. package/dist/esm/kernel-zerodev/validator/recovery-validator.d.ts +0 -56
  484. package/dist/esm/kernel-zerodev/validator/recovery-validator.js +0 -344
  485. package/dist/esm/kernel-zerodev/validator/recovery-validator.js.map +0 -1
  486. package/dist/esm/kernel-zerodev/validator/session-key-validator.d.ts +0 -84
  487. package/dist/esm/kernel-zerodev/validator/session-key-validator.js +0 -496
  488. package/dist/esm/kernel-zerodev/validator/session-key-validator.js.map +0 -1
  489. package/dist/esm/kernel-zerodev/validator/types.d.ts +0 -56
  490. package/dist/esm/kernel-zerodev/validator/types.js +0 -3
  491. package/dist/esm/kernel-zerodev/validator/types.js.map +0 -1
  492. package/dist/esm/kernel-zerodev/validator-provider/base.d.ts +0 -29
  493. package/dist/esm/kernel-zerodev/validator-provider/base.js +0 -126
  494. package/dist/esm/kernel-zerodev/validator-provider/base.js.map +0 -1
  495. package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +0 -8
  496. package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.js +0 -56
  497. package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.js.map +0 -1
  498. package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +0 -8
  499. package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.js +0 -60
  500. package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.js.map +0 -1
  501. package/dist/esm/kernel-zerodev/validator-provider/index.d.ts +0 -8
  502. package/dist/esm/kernel-zerodev/validator-provider/index.js +0 -14
  503. package/dist/esm/kernel-zerodev/validator-provider/index.js.map +0 -1
  504. package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +0 -8
  505. package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.js +0 -60
  506. package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.js.map +0 -1
  507. package/dist/esm/kernel-zerodev/validator-provider/recovery-provider.d.ts +0 -27
  508. package/dist/esm/kernel-zerodev/validator-provider/recovery-provider.js +0 -275
  509. package/dist/esm/kernel-zerodev/validator-provider/recovery-provider.js.map +0 -1
  510. package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.d.ts +0 -18
  511. package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.js +0 -110
  512. package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.js.map +0 -1
  513. package/dist/esm/kernel-zerodev/validator-provider/types.d.ts +0 -29
  514. package/dist/esm/kernel-zerodev/validator-provider/types.js +0 -2
  515. package/dist/esm/kernel-zerodev/validator-provider/types.js.map +0 -1
  516. package/dist/esm/package.json +0 -1
  517. package/dist/types/index.d.ts +0 -23
  518. package/dist/types/index.d.ts.map +0 -1
  519. package/dist/types/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +0 -163
  520. package/dist/types/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts.map +0 -1
  521. package/dist/types/kernel-zerodev/abis/ERC20Abi.d.ts +0 -232
  522. package/dist/types/kernel-zerodev/abis/ERC20Abi.d.ts.map +0 -1
  523. package/dist/types/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +0 -159
  524. package/dist/types/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts.map +0 -1
  525. package/dist/types/kernel-zerodev/abis/KernelAccountAbi.d.ts +0 -535
  526. package/dist/types/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +0 -151
  527. package/dist/types/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts.map +0 -1
  528. package/dist/types/kernel-zerodev/abis/MultiSendAbi.d.ts +0 -16
  529. package/dist/types/kernel-zerodev/abis/MultiSendAbi.d.ts.map +0 -1
  530. package/dist/types/kernel-zerodev/abis/RecoveryActionAbi.d.ts +0 -16
  531. package/dist/types/kernel-zerodev/abis/RecoveryActionAbi.d.ts.map +0 -1
  532. package/dist/types/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +0 -213
  533. package/dist/types/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts.map +0 -1
  534. package/dist/types/kernel-zerodev/abis/Test_ERC20Abi.d.ts +0 -238
  535. package/dist/types/kernel-zerodev/abis/Test_ERC20Abi.d.ts.map +0 -1
  536. package/dist/types/kernel-zerodev/abis/Test_ERC721Abi.d.ts +0 -288
  537. package/dist/types/kernel-zerodev/abis/Test_ERC721Abi.d.ts.map +0 -1
  538. package/dist/types/kernel-zerodev/abis/TokenActionsAbi.d.ts.map +0 -1
  539. package/dist/types/kernel-zerodev/abis/WeightedValidatorAbi.d.ts +0 -341
  540. package/dist/types/kernel-zerodev/abis/WeightedValidatorAbi.d.ts.map +0 -1
  541. package/dist/types/kernel-zerodev/abis/index.d.ts +0 -9
  542. package/dist/types/kernel-zerodev/abis/index.d.ts.map +0 -1
  543. package/dist/types/kernel-zerodev/account.d.ts +0 -52
  544. package/dist/types/kernel-zerodev/account.d.ts.map +0 -1
  545. package/dist/types/kernel-zerodev/api/index.d.ts +0 -6
  546. package/dist/types/kernel-zerodev/api/index.d.ts.map +0 -1
  547. package/dist/types/kernel-zerodev/client/create-client.d.ts +0 -13
  548. package/dist/types/kernel-zerodev/client/create-client.d.ts.map +0 -1
  549. package/dist/types/kernel-zerodev/constants.d.ts +0 -32
  550. package/dist/types/kernel-zerodev/constants.d.ts.map +0 -1
  551. package/dist/types/kernel-zerodev/errors.d.ts +0 -6
  552. package/dist/types/kernel-zerodev/errors.d.ts.map +0 -1
  553. package/dist/types/kernel-zerodev/ethers-provider/account-signer.d.ts +0 -32
  554. package/dist/types/kernel-zerodev/ethers-provider/account-signer.d.ts.map +0 -1
  555. package/dist/types/kernel-zerodev/ethers-provider/ethers-provider.d.ts +0 -23
  556. package/dist/types/kernel-zerodev/ethers-provider/ethers-provider.d.ts.map +0 -1
  557. package/dist/types/kernel-zerodev/middleware/gas-estimator.d.ts +0 -20
  558. package/dist/types/kernel-zerodev/middleware/gas-estimator.d.ts.map +0 -1
  559. package/dist/types/kernel-zerodev/middleware/paymaster.d.ts +0 -6
  560. package/dist/types/kernel-zerodev/middleware/paymaster.d.ts.map +0 -1
  561. package/dist/types/kernel-zerodev/owner/getCustodialOwner.d.ts +0 -12
  562. package/dist/types/kernel-zerodev/owner/getCustodialOwner.d.ts.map +0 -1
  563. package/dist/types/kernel-zerodev/owner/getRPCProviderOwner.d.ts +0 -3
  564. package/dist/types/kernel-zerodev/owner/getRPCProviderOwner.d.ts.map +0 -1
  565. package/dist/types/kernel-zerodev/owner/index.d.ts +0 -3
  566. package/dist/types/kernel-zerodev/owner/index.d.ts.map +0 -1
  567. package/dist/types/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +0 -9
  568. package/dist/types/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts.map +0 -1
  569. package/dist/types/kernel-zerodev/owner/passkey/exceptions.d.ts +0 -4
  570. package/dist/types/kernel-zerodev/owner/passkey/exceptions.d.ts.map +0 -1
  571. package/dist/types/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts +0 -7
  572. package/dist/types/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts.map +0 -1
  573. package/dist/types/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +0 -8
  574. package/dist/types/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts.map +0 -1
  575. package/dist/types/kernel-zerodev/owner/passkey/index.d.ts +0 -5
  576. package/dist/types/kernel-zerodev/owner/passkey/index.d.ts.map +0 -1
  577. package/dist/types/kernel-zerodev/owner/passkey/types.d.ts +0 -13
  578. package/dist/types/kernel-zerodev/owner/passkey/types.d.ts.map +0 -1
  579. package/dist/types/kernel-zerodev/owner/passkey/utils.d.ts +0 -15
  580. package/dist/types/kernel-zerodev/owner/passkey/utils.d.ts.map +0 -1
  581. package/dist/types/kernel-zerodev/paymaster/base.d.ts +0 -19
  582. package/dist/types/kernel-zerodev/paymaster/base.d.ts.map +0 -1
  583. package/dist/types/kernel-zerodev/paymaster/index.d.ts +0 -4
  584. package/dist/types/kernel-zerodev/paymaster/index.d.ts.map +0 -1
  585. package/dist/types/kernel-zerodev/paymaster/token-paymaster.d.ts +0 -16
  586. package/dist/types/kernel-zerodev/paymaster/token-paymaster.d.ts.map +0 -1
  587. package/dist/types/kernel-zerodev/paymaster/types.d.ts +0 -30
  588. package/dist/types/kernel-zerodev/paymaster/types.d.ts.map +0 -1
  589. package/dist/types/kernel-zerodev/paymaster/verifying-paymaster.d.ts +0 -9
  590. package/dist/types/kernel-zerodev/paymaster/verifying-paymaster.d.ts.map +0 -1
  591. package/dist/types/kernel-zerodev/provider.d.ts +0 -58
  592. package/dist/types/kernel-zerodev/provider.d.ts.map +0 -1
  593. package/dist/types/kernel-zerodev/signer/empty-account.d.ts +0 -11
  594. package/dist/types/kernel-zerodev/signer/empty-account.d.ts.map +0 -1
  595. package/dist/types/kernel-zerodev/types.d.ts +0 -8
  596. package/dist/types/kernel-zerodev/types.d.ts.map +0 -1
  597. package/dist/types/kernel-zerodev/utils/ERC4337-utils.d.ts +0 -6
  598. package/dist/types/kernel-zerodev/utils/ERC4337-utils.d.ts.map +0 -1
  599. package/dist/types/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +0 -16
  600. package/dist/types/kernel-zerodev/utils/calc-pre-verification-gas.d.ts.map +0 -1
  601. package/dist/types/kernel-zerodev/utils/custom-chains.d.ts +0 -59
  602. package/dist/types/kernel-zerodev/utils/custom-chains.d.ts.map +0 -1
  603. package/dist/types/kernel-zerodev/utils.d.ts +0 -21
  604. package/dist/types/kernel-zerodev/utils.d.ts.map +0 -1
  605. package/dist/types/kernel-zerodev/validator/base.d.ts +0 -58
  606. package/dist/types/kernel-zerodev/validator/base.d.ts.map +0 -1
  607. package/dist/types/kernel-zerodev/validator/ecdsa-validator.d.ts +0 -21
  608. package/dist/types/kernel-zerodev/validator/ecdsa-validator.d.ts.map +0 -1
  609. package/dist/types/kernel-zerodev/validator/erc165-session-key-validator.d.ts +0 -30
  610. package/dist/types/kernel-zerodev/validator/erc165-session-key-validator.d.ts.map +0 -1
  611. package/dist/types/kernel-zerodev/validator/index.d.ts +0 -9
  612. package/dist/types/kernel-zerodev/validator/index.d.ts.map +0 -1
  613. package/dist/types/kernel-zerodev/validator/kill-switch-validator.d.ts +0 -23
  614. package/dist/types/kernel-zerodev/validator/kill-switch-validator.d.ts.map +0 -1
  615. package/dist/types/kernel-zerodev/validator/recovery-validator.d.ts +0 -57
  616. package/dist/types/kernel-zerodev/validator/recovery-validator.d.ts.map +0 -1
  617. package/dist/types/kernel-zerodev/validator/session-key-validator.d.ts +0 -85
  618. package/dist/types/kernel-zerodev/validator/session-key-validator.d.ts.map +0 -1
  619. package/dist/types/kernel-zerodev/validator/types.d.ts +0 -57
  620. package/dist/types/kernel-zerodev/validator/types.d.ts.map +0 -1
  621. package/dist/types/kernel-zerodev/validator-provider/base.d.ts +0 -30
  622. package/dist/types/kernel-zerodev/validator-provider/base.d.ts.map +0 -1
  623. package/dist/types/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +0 -9
  624. package/dist/types/kernel-zerodev/validator-provider/ecdsa-provider.d.ts.map +0 -1
  625. package/dist/types/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +0 -9
  626. package/dist/types/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts.map +0 -1
  627. package/dist/types/kernel-zerodev/validator-provider/index.d.ts +0 -9
  628. package/dist/types/kernel-zerodev/validator-provider/index.d.ts.map +0 -1
  629. package/dist/types/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +0 -9
  630. package/dist/types/kernel-zerodev/validator-provider/kill-switch-provider.d.ts.map +0 -1
  631. package/dist/types/kernel-zerodev/validator-provider/recovery-provider.d.ts +0 -28
  632. package/dist/types/kernel-zerodev/validator-provider/recovery-provider.d.ts.map +0 -1
  633. package/dist/types/kernel-zerodev/validator-provider/session-key-provider.d.ts +0 -19
  634. package/dist/types/kernel-zerodev/validator-provider/session-key-provider.d.ts.map +0 -1
  635. package/dist/types/kernel-zerodev/validator-provider/types.d.ts +0 -30
  636. package/dist/types/kernel-zerodev/validator-provider/types.d.ts.map +0 -1
  637. package/passkey/package.json +0 -5
  638. package/src/index.ts +0 -50
  639. package/src/kernel-zerodev/__tests__/config/index.ts +0 -19
  640. package/src/kernel-zerodev/__tests__/mocks/mock-signer.ts +0 -24
  641. package/src/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.ts +0 -211
  642. package/src/kernel-zerodev/abis/ERC20Abi.ts +0 -153
  643. package/src/kernel-zerodev/abis/ESCDAValidatorAbi.ts +0 -206
  644. package/src/kernel-zerodev/abis/KernelAccountAbi.ts +0 -691
  645. package/src/kernel-zerodev/abis/KernelFactoryAbi.ts +0 -380
  646. package/src/kernel-zerodev/abis/KillSwitchValidatorAbi.ts +0 -196
  647. package/src/kernel-zerodev/abis/MultiSendAbi.ts +0 -20
  648. package/src/kernel-zerodev/abis/RecoveryActionAbi.ts +0 -20
  649. package/src/kernel-zerodev/abis/SessionKeyValidatorAbi.ts +0 -277
  650. package/src/kernel-zerodev/abis/Test_ERC20Abi.ts +0 -157
  651. package/src/kernel-zerodev/abis/Test_ERC721Abi.ts +0 -373
  652. package/src/kernel-zerodev/abis/TokenActionsAbi.ts +0 -81
  653. package/src/kernel-zerodev/abis/WeightedValidatorAbi.ts +0 -442
  654. package/src/kernel-zerodev/abis/index.ts +0 -17
  655. package/src/kernel-zerodev/account.ts +0 -392
  656. package/src/kernel-zerodev/api/index.ts +0 -84
  657. package/src/kernel-zerodev/client/create-client.ts +0 -80
  658. package/src/kernel-zerodev/constants.ts +0 -114
  659. package/src/kernel-zerodev/errors.ts +0 -13
  660. package/src/kernel-zerodev/ethers-provider/account-signer.ts +0 -185
  661. package/src/kernel-zerodev/ethers-provider/ethers-provider.ts +0 -149
  662. package/src/kernel-zerodev/middleware/gas-estimator.ts +0 -213
  663. package/src/kernel-zerodev/middleware/paymaster.ts +0 -86
  664. package/src/kernel-zerodev/owner/getCustodialOwner.ts +0 -131
  665. package/src/kernel-zerodev/owner/getRPCProviderOwner.ts +0 -26
  666. package/src/kernel-zerodev/owner/index.ts +0 -2
  667. package/src/kernel-zerodev/owner/passkey/createPasskeyOwner.ts +0 -107
  668. package/src/kernel-zerodev/owner/passkey/exceptions.ts +0 -3
  669. package/src/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.ts +0 -81
  670. package/src/kernel-zerodev/owner/passkey/getPasskeyOwner.ts +0 -75
  671. package/src/kernel-zerodev/owner/passkey/index.ts +0 -4
  672. package/src/kernel-zerodev/owner/passkey/types.ts +0 -18
  673. package/src/kernel-zerodev/owner/passkey/utils.ts +0 -174
  674. package/src/kernel-zerodev/paymaster/base.ts +0 -90
  675. package/src/kernel-zerodev/paymaster/index.ts +0 -9
  676. package/src/kernel-zerodev/paymaster/token-paymaster.ts +0 -251
  677. package/src/kernel-zerodev/paymaster/types.ts +0 -40
  678. package/src/kernel-zerodev/paymaster/verifying-paymaster.ts +0 -32
  679. package/src/kernel-zerodev/provider.ts +0 -485
  680. package/src/kernel-zerodev/signer/empty-account.ts +0 -27
  681. package/src/kernel-zerodev/types.ts +0 -8
  682. package/src/kernel-zerodev/utils/ERC4337-utils.ts +0 -161
  683. package/src/kernel-zerodev/utils/calc-pre-verification-gas.ts +0 -88
  684. package/src/kernel-zerodev/utils/custom-chains.ts +0 -55
  685. package/src/kernel-zerodev/utils.ts +0 -155
  686. package/src/kernel-zerodev/validator/base.ts +0 -320
  687. package/src/kernel-zerodev/validator/ecdsa-validator.ts +0 -122
  688. package/src/kernel-zerodev/validator/erc165-session-key-validator.ts +0 -151
  689. package/src/kernel-zerodev/validator/index.ts +0 -22
  690. package/src/kernel-zerodev/validator/kill-switch-validator.ts +0 -160
  691. package/src/kernel-zerodev/validator/recovery-validator.ts +0 -429
  692. package/src/kernel-zerodev/validator/session-key-validator.ts +0 -696
  693. package/src/kernel-zerodev/validator/types.ts +0 -129
  694. package/src/kernel-zerodev/validator-provider/base.ts +0 -178
  695. package/src/kernel-zerodev/validator-provider/ecdsa-provider.ts +0 -64
  696. package/src/kernel-zerodev/validator-provider/erc165-session-key-provider.ts +0 -71
  697. package/src/kernel-zerodev/validator-provider/index.ts +0 -22
  698. package/src/kernel-zerodev/validator-provider/kill-switch-provider.ts +0 -71
  699. package/src/kernel-zerodev/validator-provider/recovery-provider.ts +0 -373
  700. package/src/kernel-zerodev/validator-provider/session-key-provider.ts +0 -150
  701. package/src/kernel-zerodev/validator-provider/types.ts +0 -42
  702. /package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelFactoryAbi.d.ts +0 -0
  703. /package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/TokenActionsAbi.d.ts +0 -0
@@ -1,383 +0,0 @@
1
- import { fromHex, getAbiItem, } from "viem";
2
- import { deepHexlify, resolveProperties, asyncPipe, noOpMiddleware, SmartAccountProvider, EntryPointAbi, } from "@alchemy/aa-core";
3
- import { BUNDLER_URL, DEFAULT_SEND_TX_MAX_RETRIES, DEFAULT_SEND_TX_RETRY_INTERVAL_MS, ENTRYPOINT_ADDRESS, minPriorityFeePerBidDefaults, } from "./constants.js";
4
- import { KernelSmartContractAccount, isKernelAccount } from "./account.js";
5
- import { withZeroDevGasEstimator } from "./middleware/gas-estimator.js";
6
- import { isValidRequest } from "./utils/ERC4337-utils.js";
7
- import { InvalidOperation } from "./errors.js";
8
- import { withZeroDevPaymasterAndData } from "./middleware/paymaster.js";
9
- import { createZeroDevPublicErc4337Client } from "./client/create-client.js";
10
- import { getChain } from "./utils.js";
11
- export var Operation;
12
- (function (Operation) {
13
- Operation[Operation["Call"] = 0] = "Call";
14
- Operation[Operation["DelegateCall"] = 1] = "DelegateCall";
15
- })(Operation || (Operation = {}));
16
- export class ZeroDevProvider extends SmartAccountProvider {
17
- constructor({ projectId, chain, entryPointAddress = ENTRYPOINT_ADDRESS, rpcUrl, bundlerRpcUrl = BUNDLER_URL, account, bundlerProvider, opts, }) {
18
- const _chain = typeof chain === "number" ? getChain(chain) : chain;
19
- const rpcClient = createZeroDevPublicErc4337Client({
20
- chain: _chain,
21
- rpcUrl,
22
- bundlerRpcUrl,
23
- projectId,
24
- bundlerProvider,
25
- });
26
- super(rpcClient, entryPointAddress, _chain, account, {
27
- ...opts,
28
- txMaxRetries: opts?.txMaxRetries ?? 20,
29
- txRetryIntervalMs: opts?.txRetryIntervalMs ?? 10000,
30
- minPriorityFeePerBid: opts?.minPriorityFeePerBid ??
31
- minPriorityFeePerBidDefaults.get(_chain.id),
32
- });
33
- Object.defineProperty(this, "projectId", {
34
- enumerable: true,
35
- configurable: true,
36
- writable: true,
37
- value: void 0
38
- });
39
- Object.defineProperty(this, "sendTxMaxRetries", {
40
- enumerable: true,
41
- configurable: true,
42
- writable: true,
43
- value: void 0
44
- });
45
- Object.defineProperty(this, "sendTxRetryIntervalMs", {
46
- enumerable: true,
47
- configurable: true,
48
- writable: true,
49
- value: void 0
50
- });
51
- Object.defineProperty(this, "bundlerProvider", {
52
- enumerable: true,
53
- configurable: true,
54
- writable: true,
55
- value: void 0
56
- });
57
- Object.defineProperty(this, "_txMaxRetries", {
58
- enumerable: true,
59
- configurable: true,
60
- writable: true,
61
- value: void 0
62
- });
63
- Object.defineProperty(this, "_txRetryIntervalMs", {
64
- enumerable: true,
65
- configurable: true,
66
- writable: true,
67
- value: void 0
68
- });
69
- Object.defineProperty(this, "_shouldConsume", {
70
- enumerable: true,
71
- configurable: true,
72
- writable: true,
73
- value: true
74
- });
75
- Object.defineProperty(this, "feeOptions", {
76
- enumerable: true,
77
- configurable: true,
78
- writable: true,
79
- value: void 0
80
- });
81
- Object.defineProperty(this, "getProjectId", {
82
- enumerable: true,
83
- configurable: true,
84
- writable: true,
85
- value: () => this.projectId
86
- });
87
- Object.defineProperty(this, "shouldConsume", {
88
- enumerable: true,
89
- configurable: true,
90
- writable: true,
91
- value: () => this._shouldConsume
92
- });
93
- Object.defineProperty(this, "sendTransaction", {
94
- enumerable: true,
95
- configurable: true,
96
- writable: true,
97
- value: async (request, operation = Operation.Call) => {
98
- if (!request.to) {
99
- throw new Error("transaction is missing to address");
100
- }
101
- const overrides = {};
102
- if (request.maxFeePerGas) {
103
- overrides.maxFeePerGas = request.maxFeePerGas;
104
- }
105
- if (request.maxPriorityFeePerGas) {
106
- overrides.maxPriorityFeePerGas = request.maxPriorityFeePerGas;
107
- }
108
- const { hash } = await this.sendUserOperation({
109
- target: request.to,
110
- data: request.data ?? "0x",
111
- value: request.value ? fromHex(request.value, "bigint") : 0n,
112
- }, overrides, operation);
113
- return await this.waitForUserOperationTransaction(hash);
114
- }
115
- });
116
- Object.defineProperty(this, "buildUserOperation", {
117
- enumerable: true,
118
- configurable: true,
119
- writable: true,
120
- value: async (data, overrides, operation = Operation.Call) => {
121
- this._shouldConsume = false;
122
- if (!isKernelAccount(this.account)) {
123
- throw new Error("account not connected!");
124
- }
125
- if (!this.account.validator) {
126
- throw new Error("validator not connected!");
127
- }
128
- let callData = "0x";
129
- if (Array.isArray(data)) {
130
- if (operation === Operation.Call) {
131
- callData = await this.account.encodeBatchExecute(data);
132
- }
133
- else {
134
- throw InvalidOperation;
135
- }
136
- }
137
- else if (isKernelAccount(this.account)) {
138
- if (operation === Operation.DelegateCall) {
139
- callData = await this.account.encodeExecuteDelegate(data.target, data.value ?? 0n, data.data);
140
- }
141
- else if (operation === Operation.Call) {
142
- callData = await this.account.encodeExecute(data.target, data.value ?? 0n, data.data);
143
- }
144
- else {
145
- throw InvalidOperation;
146
- }
147
- }
148
- else {
149
- throw InvalidOperation;
150
- }
151
- const initCode = await this.account.getInitCode();
152
- const nonce = await this.account.getNonce();
153
- const result = await this._runMiddlewareStack({
154
- initCode,
155
- sender: this.getAddress(),
156
- nonce,
157
- callData,
158
- signature: await this.account
159
- .getValidator()
160
- .getDynamicDummySignature(await this.getAddress(), callData),
161
- }, overrides);
162
- this._shouldConsume = true;
163
- return result;
164
- }
165
- });
166
- Object.defineProperty(this, "_runMiddlewareStack", {
167
- enumerable: true,
168
- configurable: true,
169
- writable: true,
170
- value: async (uo, overrides) => {
171
- const result = await asyncPipe(this.dummyPaymasterDataMiddleware, this.feeDataGetter, this.paymasterDataMiddleware, this.gasEstimator, this.customMiddleware ?? noOpMiddleware, async (struct) => ({ ...struct, ...overrides }))(uo);
172
- return deepHexlify(await resolveProperties(result));
173
- }
174
- });
175
- Object.defineProperty(this, "sendUserOperation", {
176
- enumerable: true,
177
- configurable: true,
178
- writable: true,
179
- value: async (data, overrides, operation = Operation.Call) => {
180
- if (!this._shouldConsume)
181
- throw new Error("Cannot send user operation while building user operation");
182
- if (!isKernelAccount(this.account)) {
183
- throw new Error("account not connected!");
184
- }
185
- if (!this.account.validator) {
186
- throw new Error("validator not connected!");
187
- }
188
- let callData = "0x";
189
- if (Array.isArray(data)) {
190
- if (operation === Operation.Call) {
191
- callData = await this.account.encodeBatchExecute(data);
192
- }
193
- else {
194
- throw InvalidOperation;
195
- }
196
- }
197
- else if (isKernelAccount(this.account)) {
198
- if (operation === Operation.DelegateCall) {
199
- callData = await this.account.encodeExecuteDelegate(data.target, data.value ?? 0n, data.data);
200
- }
201
- else if (operation === Operation.Call) {
202
- callData = await this.account.encodeExecute(data.target, data.value ?? 0n, data.data);
203
- }
204
- else {
205
- throw InvalidOperation;
206
- }
207
- }
208
- else {
209
- throw InvalidOperation;
210
- }
211
- const initCode = await this.account.getInitCode();
212
- let hash = "";
213
- let i = 0;
214
- const nonce = await this.account.getNonce();
215
- let uoStruct;
216
- let request;
217
- let maxFeePerGas, maxPriorityFeePerGas;
218
- do {
219
- uoStruct = await asyncPipe(this.dummyPaymasterDataMiddleware, this.feeDataGetter, this.paymasterDataMiddleware, this.gasEstimator, this.customMiddleware ?? noOpMiddleware, async (struct) => ({ ...struct, ...overrides }))({
220
- initCode,
221
- sender: this.getAddress(),
222
- nonce,
223
- callData,
224
- signature: await this.account
225
- .getValidator()
226
- .getDynamicDummySignature(await this.getAddress(), callData),
227
- maxFeePerGas,
228
- maxPriorityFeePerGas,
229
- });
230
- request = deepHexlify(await resolveProperties(uoStruct));
231
- if (!isValidRequest(request)) {
232
- throw new Error(`Request is missing parameters. All properties on UserOperationStruct must be set. uo: ${JSON.stringify(request, null, 2)}`);
233
- }
234
- await this.account.approvePlugin();
235
- request.signature = await this.account.validator.getSignature(request);
236
- try {
237
- hash = await this.rpcClient.sendUserOperation(request, this.entryPointAddress);
238
- }
239
- catch (error) {
240
- if (this.isReplacementOpError(error) && i++ < this.sendTxMaxRetries) {
241
- maxFeePerGas = (BigInt(request.maxFeePerGas) * 113n) / 100n;
242
- maxPriorityFeePerGas =
243
- (BigInt(request.maxPriorityFeePerGas) * 113n) / 100n;
244
- console.log(`After ${this.sendTxRetryIntervalMs / 60000} minutes, resending tx with Increased Gas fees: maxFeePerGas: ${maxFeePerGas}, maxPriorityFeePerGas: ${maxPriorityFeePerGas}`);
245
- await new Promise((resolve) => setTimeout(resolve, this.sendTxRetryIntervalMs));
246
- continue;
247
- }
248
- throw this.unwrapError(error);
249
- }
250
- } while (hash === "");
251
- return {
252
- hash,
253
- request,
254
- };
255
- }
256
- });
257
- Object.defineProperty(this, "waitForUserOperationTransaction", {
258
- enumerable: true,
259
- configurable: true,
260
- writable: true,
261
- value: async (hash) => {
262
- let blockNumber = await this.rpcClient.getBlockNumber();
263
- for (let i = 0; i < this._txMaxRetries; i++) {
264
- if (this.bundlerProvider === "GELATO") {
265
- const receipt = await this.getUserOperationReceipt(hash)
266
- .catch(() => null);
267
- if (receipt) {
268
- return this.getTransaction(receipt.receipt.transactionHash).then((x) => x.hash);
269
- }
270
- }
271
- else {
272
- const logs = await this.rpcClient.getLogs({
273
- address: ENTRYPOINT_ADDRESS,
274
- event: getAbiItem({ abi: EntryPointAbi, name: "UserOperationEvent" }),
275
- args: { userOpHash: hash },
276
- fromBlock: blockNumber - 100n,
277
- });
278
- if (logs.length) {
279
- return logs[0].transactionHash;
280
- }
281
- }
282
- await new Promise((resolve) => setTimeout(resolve, this._txRetryIntervalMs));
283
- }
284
- throw new Error("Failed to find transaction for User Operation");
285
- }
286
- });
287
- Object.defineProperty(this, "getAccount", {
288
- enumerable: true,
289
- configurable: true,
290
- writable: true,
291
- value: () => {
292
- if (!isKernelAccount(this.account)) {
293
- throw new Error("account not connected!");
294
- }
295
- return this.account;
296
- }
297
- });
298
- Object.defineProperty(this, "dummyPaymasterDataMiddleware", {
299
- enumerable: true,
300
- configurable: true,
301
- writable: true,
302
- value: async (struct) => {
303
- struct.paymasterAndData = "0x";
304
- return struct;
305
- }
306
- });
307
- Object.defineProperty(this, "request", {
308
- enumerable: true,
309
- configurable: true,
310
- writable: true,
311
- value: async (args) => {
312
- const { method, params } = args;
313
- switch (method) {
314
- case "eth_chainId":
315
- return this.chain.id;
316
- case "eth_sendTransaction":
317
- const [tx] = params;
318
- return this.sendTransaction(tx);
319
- case "eth_signTypedData_v4":
320
- return this.signTypedData(JSON.parse(params[1]));
321
- case "personal_sign":
322
- if (!this.account) {
323
- throw new Error("account not connected!");
324
- }
325
- const [data, address] = params;
326
- if (address.toLowerCase() !== (await this.getAddress()).toLowerCase()) {
327
- throw new Error("cannot sign for address that is not the current account");
328
- }
329
- return this.account.signMessageWith6492(data);
330
- default:
331
- return this.rpcClient.request(args);
332
- }
333
- }
334
- });
335
- this.feeOptions = {
336
- maxFeePerGasBufferPercentage: opts?.feeOptions?.maxFeePerGasBufferPercentage ?? 0,
337
- maxPriorityFeePerGasBufferPercentage: opts?.feeOptions?.maxPriorityFeePerGasBufferPercentage ?? 13,
338
- };
339
- this._txMaxRetries = opts?.txMaxRetries ?? 20;
340
- this._txRetryIntervalMs = opts?.txRetryIntervalMs ?? 5000;
341
- this.bundlerProvider = bundlerProvider;
342
- this.projectId = projectId;
343
- this.sendTxMaxRetries =
344
- opts?.sendTxMaxRetries ?? DEFAULT_SEND_TX_MAX_RETRIES;
345
- this.sendTxRetryIntervalMs =
346
- opts?.sendTxRetryIntervalMs ?? DEFAULT_SEND_TX_RETRY_INTERVAL_MS;
347
- withZeroDevGasEstimator(this);
348
- }
349
- isReplacementOpError(errorIn) {
350
- if (errorIn.cause != null) {
351
- const failedOpMessage = errorIn?.cause?.message;
352
- return ((failedOpMessage?.includes("replacement op must increase maxFeePerGas and MaxPriorityFeePerGas") ||
353
- failedOpMessage?.match(/.*replacement.*underpriced.*/) !== null) ??
354
- false);
355
- }
356
- return false;
357
- }
358
- unwrapError(errorIn) {
359
- if (errorIn?.cause != null) {
360
- let paymasterInfo = "";
361
- let failedOpMessage = errorIn?.cause?.message;
362
- if (failedOpMessage?.includes("FailedOp") === true) {
363
- const matched = failedOpMessage.match(/FailedOp\((.*)\)/);
364
- if (matched != null) {
365
- const split = matched[1].split(",");
366
- paymasterInfo = `(paymaster address: ${split[1]})`;
367
- failedOpMessage = split[2];
368
- }
369
- }
370
- const error = new Error(`The bundler has failed to include UserOperation in a batch: ${failedOpMessage} ${paymasterInfo}`);
371
- error.stack = errorIn.stack;
372
- return error;
373
- }
374
- return errorIn;
375
- }
376
- withZeroDevPaymasterAndData(config) {
377
- if (!this.isConnected()) {
378
- throw new Error("ZeroDevProvider: account is not set, did you call `connect` first?");
379
- }
380
- return withZeroDevPaymasterAndData(this, config);
381
- }
382
- }
383
- //# sourceMappingURL=provider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/kernel-zerodev/provider.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n fromHex,\n type Address,\n type Chain,\n type Hash,\n type Hex,\n type HttpTransport,\n type RpcTransactionRequest,\n getAbiItem,\n} from \"viem\";\nimport {\n deepHexlify,\n resolveProperties,\n type SmartAccountProviderOpts,\n type UserOperationCallData,\n type BatchUserOperationCallData,\n type SendUserOperationResult,\n asyncPipe,\n noOpMiddleware,\n type UserOperationStruct,\n type BytesLike,\n SmartAccountProvider,\n type AccountMiddlewareFn,\n type UserOperationOverrides,\n EntryPointAbi,\n} from \"@alchemy/aa-core\";\nimport {\n BUNDLER_URL,\n DEFAULT_SEND_TX_MAX_RETRIES,\n DEFAULT_SEND_TX_RETRY_INTERVAL_MS,\n ENTRYPOINT_ADDRESS,\n minPriorityFeePerBidDefaults,\n} from \"./constants.js\";\nimport { KernelSmartContractAccount, isKernelAccount } from \"./account.js\";\nimport { withZeroDevGasEstimator } from \"./middleware/gas-estimator.js\";\nimport { isValidRequest } from \"./utils/ERC4337-utils.js\";\nimport { InvalidOperation } from \"./errors.js\";\nimport { withZeroDevPaymasterAndData } from \"./middleware/paymaster.js\";\nimport { createZeroDevPublicErc4337Client } from \"./client/create-client.js\";\nimport type {\n PaymasterAndBundlerProviders,\n PaymasterConfig,\n PaymasterPolicy,\n} from \"./paymaster/types.js\";\nimport { getChain } from \"./utils.js\";\n\nexport type FeeOptions = {\n maxFeePerGasBufferPercentage?: number;\n maxPriorityFeePerGasBufferPercentage?: number;\n};\nexport type ZeroDevProviderConfig = {\n projectId: string;\n chain: Chain | number;\n entryPointAddress?: Address;\n rpcUrl?: string;\n bundlerRpcUrl?: string;\n account?: KernelSmartContractAccount;\n bundlerProvider?: PaymasterAndBundlerProviders;\n opts?: SmartAccountProviderOpts & {\n sendTxMaxRetries?: number;\n sendTxRetryIntervalMs?: number;\n feeOptions?: FeeOptions;\n };\n};\n\nexport enum Operation {\n Call = 0,\n DelegateCall = 1,\n}\n\ntype UserOpDataOperationTypes<T> = T extends UserOperationCallData\n ? Operation.Call | Operation.DelegateCall\n : T extends BatchUserOperationCallData\n ? Operation.Call\n : never;\n\nexport class ZeroDevProvider extends SmartAccountProvider<HttpTransport> {\n protected projectId: string;\n protected sendTxMaxRetries: number;\n protected sendTxRetryIntervalMs: number;\n readonly bundlerProvider?: PaymasterAndBundlerProviders;\n private _txMaxRetries: number;\n private _txRetryIntervalMs: number;\n private _shouldConsume: boolean = true;\n public feeOptions: Required<FeeOptions>;\n\n constructor({\n projectId,\n chain,\n entryPointAddress = ENTRYPOINT_ADDRESS,\n rpcUrl,\n bundlerRpcUrl = BUNDLER_URL,\n account,\n bundlerProvider,\n opts,\n }: ZeroDevProviderConfig) {\n const _chain = typeof chain === \"number\" ? getChain(chain) : chain;\n const rpcClient = createZeroDevPublicErc4337Client({\n chain: _chain,\n rpcUrl,\n bundlerRpcUrl,\n projectId,\n bundlerProvider,\n });\n\n super(rpcClient, entryPointAddress, _chain, account, {\n ...opts,\n txMaxRetries: opts?.txMaxRetries ?? 20,\n txRetryIntervalMs: opts?.txRetryIntervalMs ?? 10000,\n minPriorityFeePerBid:\n opts?.minPriorityFeePerBid ??\n minPriorityFeePerBidDefaults.get(_chain.id),\n });\n\n this.feeOptions = {\n maxFeePerGasBufferPercentage:\n opts?.feeOptions?.maxFeePerGasBufferPercentage ?? 0,\n maxPriorityFeePerGasBufferPercentage:\n opts?.feeOptions?.maxPriorityFeePerGasBufferPercentage ?? 13,\n };\n this._txMaxRetries = opts?.txMaxRetries ?? 20;\n this._txRetryIntervalMs = opts?.txRetryIntervalMs ?? 5000;\n this.bundlerProvider = bundlerProvider;\n this.projectId = projectId;\n this.sendTxMaxRetries =\n opts?.sendTxMaxRetries ?? DEFAULT_SEND_TX_MAX_RETRIES;\n this.sendTxRetryIntervalMs =\n opts?.sendTxRetryIntervalMs ?? DEFAULT_SEND_TX_RETRY_INTERVAL_MS;\n\n withZeroDevGasEstimator(this);\n }\n\n getProjectId = (): string => this.projectId;\n\n shouldConsume = (): boolean => this._shouldConsume;\n\n sendTransaction = async (\n request: RpcTransactionRequest,\n operation: UserOpDataOperationTypes<UserOperationCallData> = Operation.Call\n ): Promise<Hash> => {\n if (!request.to) {\n throw new Error(\"transaction is missing to address\");\n }\n\n const overrides: UserOperationOverrides = {};\n if (request.maxFeePerGas) {\n overrides.maxFeePerGas = request.maxFeePerGas;\n }\n if (request.maxPriorityFeePerGas) {\n overrides.maxPriorityFeePerGas = request.maxPriorityFeePerGas;\n }\n\n const { hash } = await this.sendUserOperation(\n {\n target: request.to,\n data: request.data ?? \"0x\",\n value: request.value ? fromHex(request.value, \"bigint\") : 0n,\n },\n overrides,\n operation\n );\n\n return await this.waitForUserOperationTransaction(hash as Hash);\n };\n\n buildUserOperation = async <\n T extends UserOperationCallData | BatchUserOperationCallData\n >(\n data: T,\n overrides?: UserOperationOverrides,\n operation: UserOpDataOperationTypes<T> = Operation.Call as UserOpDataOperationTypes<T>\n ): Promise<UserOperationStruct> => {\n this._shouldConsume = false;\n if (!isKernelAccount(this.account)) {\n throw new Error(\"account not connected!\");\n }\n if (!this.account.validator) {\n throw new Error(\"validator not connected!\");\n }\n\n let callData: BytesLike = \"0x\";\n\n if (Array.isArray(data)) {\n if (operation === Operation.Call) {\n callData = await this.account.encodeBatchExecute(data);\n } else {\n throw InvalidOperation;\n }\n } else if (isKernelAccount(this.account)) {\n if (operation === Operation.DelegateCall) {\n callData = await this.account.encodeExecuteDelegate(\n data.target,\n data.value ?? 0n,\n data.data\n );\n } else if (operation === Operation.Call) {\n callData = await this.account.encodeExecute(\n data.target,\n data.value ?? 0n,\n data.data\n );\n } else {\n throw InvalidOperation;\n }\n } else {\n throw InvalidOperation;\n }\n\n const initCode = await this.account.getInitCode();\n const nonce = await this.account.getNonce();\n const result = await this._runMiddlewareStack(\n {\n initCode,\n sender: this.getAddress(),\n nonce,\n callData,\n signature: await this.account\n .getValidator()\n .getDynamicDummySignature(await this.getAddress(), callData as Hex),\n } as UserOperationStruct,\n overrides\n );\n this._shouldConsume = true;\n return result;\n };\n\n private _runMiddlewareStack = async (\n uo: UserOperationStruct,\n overrides?: UserOperationOverrides\n ): Promise<UserOperationStruct> => {\n const result = await asyncPipe(\n this.dummyPaymasterDataMiddleware,\n this.feeDataGetter,\n this.paymasterDataMiddleware,\n this.gasEstimator,\n this.customMiddleware ?? noOpMiddleware,\n async (struct) => ({ ...struct, ...overrides })\n )(uo);\n\n return deepHexlify(await resolveProperties<UserOperationStruct>(result));\n };\n\n sendUserOperation = async <\n T extends UserOperationCallData | BatchUserOperationCallData\n >(\n data: T,\n overrides?: UserOperationOverrides,\n operation: UserOpDataOperationTypes<T> = Operation.Call as UserOpDataOperationTypes<T>\n ): Promise<SendUserOperationResult> => {\n if (!this._shouldConsume)\n throw new Error(\n \"Cannot send user operation while building user operation\"\n );\n if (!isKernelAccount(this.account)) {\n throw new Error(\"account not connected!\");\n }\n if (!this.account.validator) {\n throw new Error(\"validator not connected!\");\n }\n\n let callData: BytesLike = \"0x\";\n\n if (Array.isArray(data)) {\n if (operation === Operation.Call) {\n callData = await this.account.encodeBatchExecute(data);\n } else {\n throw InvalidOperation;\n }\n } else if (isKernelAccount(this.account)) {\n if (operation === Operation.DelegateCall) {\n callData = await this.account.encodeExecuteDelegate(\n data.target,\n data.value ?? 0n,\n data.data\n );\n } else if (operation === Operation.Call) {\n callData = await this.account.encodeExecute(\n data.target,\n data.value ?? 0n,\n data.data\n );\n } else {\n throw InvalidOperation;\n }\n } else {\n throw InvalidOperation;\n }\n\n const initCode = await this.account.getInitCode();\n let hash: string = \"\";\n let i = 0;\n const nonce = await this.account.getNonce();\n let uoStruct: UserOperationStruct;\n let request: UserOperationStruct;\n let maxFeePerGas, maxPriorityFeePerGas;\n do {\n uoStruct = await asyncPipe(\n this.dummyPaymasterDataMiddleware,\n this.feeDataGetter,\n this.paymasterDataMiddleware,\n this.gasEstimator,\n this.customMiddleware ?? noOpMiddleware,\n async (struct) => ({ ...struct, ...overrides })\n )({\n initCode,\n sender: this.getAddress(),\n nonce,\n callData,\n signature: await this.account\n .getValidator()\n .getDynamicDummySignature(await this.getAddress(), callData as Hex),\n maxFeePerGas,\n maxPriorityFeePerGas,\n } as UserOperationStruct);\n request = deepHexlify(await resolveProperties(uoStruct));\n\n if (!isValidRequest(request)) {\n // this pretty prints the uo\n throw new Error(\n `Request is missing parameters. All properties on UserOperationStruct must be set. uo: ${JSON.stringify(\n request,\n null,\n 2\n )}`\n );\n }\n\n await this.account.approvePlugin();\n\n request.signature = await this.account.validator.getSignature(request);\n try {\n hash = await this.rpcClient.sendUserOperation(\n request,\n this.entryPointAddress\n );\n } catch (error: any) {\n if (this.isReplacementOpError(error) && i++ < this.sendTxMaxRetries) {\n maxFeePerGas = (BigInt(request.maxFeePerGas) * 113n) / 100n;\n maxPriorityFeePerGas =\n (BigInt(request.maxPriorityFeePerGas) * 113n) / 100n;\n\n console.log(\n `After ${\n this.sendTxRetryIntervalMs / 60000\n } minutes, resending tx with Increased Gas fees: maxFeePerGas: ${maxFeePerGas}, maxPriorityFeePerGas: ${maxPriorityFeePerGas}`\n );\n await new Promise((resolve) =>\n setTimeout(resolve, this.sendTxRetryIntervalMs)\n );\n continue;\n }\n throw this.unwrapError(error);\n }\n } while (hash === \"\");\n\n return {\n hash,\n request,\n };\n };\n\n isReplacementOpError(errorIn: any): boolean {\n if (errorIn.cause != null) {\n const failedOpMessage: string | undefined = errorIn?.cause?.message;\n return (\n (failedOpMessage?.includes(\n \"replacement op must increase maxFeePerGas and MaxPriorityFeePerGas\"\n ) ||\n failedOpMessage?.match(/.*replacement.*underpriced.*/) !== null) ??\n false\n );\n }\n return false;\n }\n\n unwrapError(errorIn: any): Error {\n if (errorIn?.cause != null) {\n let paymasterInfo: string = \"\";\n let failedOpMessage: string | undefined = errorIn?.cause?.message;\n if (failedOpMessage?.includes(\"FailedOp\") === true) {\n // TODO: better error extraction methods will be needed\n const matched = failedOpMessage.match(/FailedOp\\((.*)\\)/);\n if (matched != null) {\n const split = matched[1].split(\",\");\n paymasterInfo = `(paymaster address: ${split[1]})`;\n failedOpMessage = split[2];\n }\n }\n const error = new Error(\n `The bundler has failed to include UserOperation in a batch: ${failedOpMessage} ${paymasterInfo}`\n );\n error.stack = errorIn.stack;\n return error;\n }\n return errorIn;\n }\n\n waitForUserOperationTransaction = async (hash: Hash): Promise<Hash> => {\n let blockNumber = await this.rpcClient.getBlockNumber();\n for (let i = 0; i < this._txMaxRetries; i++) {\n if (this.bundlerProvider === \"GELATO\") {\n const receipt = await this.getUserOperationReceipt(\n hash as `0x${string}`\n )\n // TODO: should maybe log the error?\n .catch(() => null);\n if (receipt) {\n return this.getTransaction(receipt.receipt.transactionHash).then(\n (x) => x.hash\n );\n }\n } else {\n const logs = await this.rpcClient.getLogs({\n address: ENTRYPOINT_ADDRESS,\n event: getAbiItem({ abi: EntryPointAbi, name: \"UserOperationEvent\" }),\n args: { userOpHash: hash },\n fromBlock: blockNumber - 100n,\n });\n if (logs.length) {\n return logs[0].transactionHash;\n }\n }\n await new Promise((resolve) =>\n setTimeout(resolve, this._txRetryIntervalMs)\n );\n }\n\n throw new Error(\"Failed to find transaction for User Operation\");\n };\n\n getAccount: () => KernelSmartContractAccount = () => {\n if (!isKernelAccount(this.account)) {\n throw new Error(\"account not connected!\");\n }\n return this.account;\n };\n\n dummyPaymasterDataMiddleware: AccountMiddlewareFn = async (\n struct: UserOperationStruct\n ): Promise<UserOperationStruct> => {\n struct.paymasterAndData = \"0x\";\n return struct;\n };\n\n withZeroDevPaymasterAndData(config: PaymasterConfig<PaymasterPolicy>) {\n if (!this.isConnected()) {\n throw new Error(\n \"ZeroDevProvider: account is not set, did you call `connect` first?\"\n );\n }\n\n return withZeroDevPaymasterAndData(this, config);\n }\n\n request: (args: { method: string; params?: any[] }) => Promise<any> = async (\n args\n ) => {\n const { method, params } = args;\n switch (method) {\n case \"eth_chainId\":\n return this.chain.id;\n case \"eth_sendTransaction\":\n const [tx] = params as [RpcTransactionRequest];\n return this.sendTransaction(tx);\n case \"eth_signTypedData_v4\":\n //@ts-expect-error\n return this.signTypedData(JSON.parse(params[1]));\n case \"personal_sign\":\n if (!this.account) {\n throw new Error(\"account not connected!\");\n }\n const [data, address] = params!;\n if (address.toLowerCase() !== (await this.getAddress()).toLowerCase()) {\n throw new Error(\n \"cannot sign for address that is not the current account\"\n );\n }\n // @ts-ignore\n return this.account.signMessageWith6492(data);\n default:\n // @ts-ignore\n return this.rpcClient.request(args);\n }\n };\n}\n"]}
@@ -1,10 +0,0 @@
1
- import type { SignTypedDataParams, SmartAccountSigner } from "@alchemy/aa-core";
2
- import { type Hex } from "viem";
3
- export declare class EmptyAccountSigner implements SmartAccountSigner {
4
- private owner;
5
- constructor(owner: Hex);
6
- readonly signMessage: (msg: string | Uint8Array) => Promise<`0x${string}`>;
7
- readonly signTypedData: (_params: SignTypedDataParams) => never;
8
- readonly getAddress: () => Promise<`0x${string}`>;
9
- static addressToAccountSigner(ownerAddress: Hex): EmptyAccountSigner;
10
- }
@@ -1,40 +0,0 @@
1
- import {} from "viem";
2
- export class EmptyAccountSigner {
3
- constructor(owner) {
4
- Object.defineProperty(this, "owner", {
5
- enumerable: true,
6
- configurable: true,
7
- writable: true,
8
- value: void 0
9
- });
10
- Object.defineProperty(this, "signMessage", {
11
- enumerable: true,
12
- configurable: true,
13
- writable: true,
14
- value: (_msg) => {
15
- throw Error("EmptyAccountSigner: method not implemented");
16
- }
17
- });
18
- Object.defineProperty(this, "signTypedData", {
19
- enumerable: true,
20
- configurable: true,
21
- writable: true,
22
- value: (_params) => {
23
- throw Error("EmptyAccountSigner: method not implemented");
24
- }
25
- });
26
- Object.defineProperty(this, "getAddress", {
27
- enumerable: true,
28
- configurable: true,
29
- writable: true,
30
- value: async () => {
31
- return this.owner;
32
- }
33
- });
34
- this.owner = owner;
35
- }
36
- static addressToAccountSigner(ownerAddress) {
37
- return new EmptyAccountSigner(ownerAddress);
38
- }
39
- }
40
- //# sourceMappingURL=empty-account.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"empty-account.js","sourceRoot":"","sources":["../../../../src/kernel-zerodev/signer/empty-account.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,MAAM,MAAM,CAAC;AAEhC,MAAM,OAAO,kBAAkB;IAE7B,YAAY,KAAU;QADd;;;;;WAAW;QAKV;;;;mBAAoE,CAC3E,IAAI,EACJ,EAAE;gBACF,MAAM,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAC5D,CAAC;WAAC;QAEO;;;;mBAAgB,CAAC,OAA4B,EAAE,EAAE;gBACxD,MAAM,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAC5D,CAAC;WAAC;QAEO;;;;mBAA2C,KAAK,IAAI,EAAE;gBAC7D,OAAO,IAAI,CAAC,KAAK,CAAC;YACpB,CAAC;WAAC;QAfA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAgBD,MAAM,CAAC,sBAAsB,CAAC,YAAiB;QAC7C,OAAO,IAAI,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC;CACF","sourcesContent":["import type { SignTypedDataParams, SmartAccountSigner } from \"@alchemy/aa-core\";\nimport { type Hex } from \"viem\";\n\nexport class EmptyAccountSigner implements SmartAccountSigner {\n private owner: Hex;\n constructor(owner: Hex) {\n this.owner = owner;\n }\n\n readonly signMessage: (msg: string | Uint8Array) => Promise<`0x${string}`> = (\n _msg\n ) => {\n throw Error(\"EmptyAccountSigner: method not implemented\");\n };\n\n readonly signTypedData = (_params: SignTypedDataParams) => {\n throw Error(\"EmptyAccountSigner: method not implemented\");\n };\n\n readonly getAddress: () => Promise<`0x${string}`> = async () => {\n return this.owner;\n };\n\n static addressToAccountSigner(ownerAddress: Hex): EmptyAccountSigner {\n return new EmptyAccountSigner(ownerAddress);\n }\n}\n"]}
@@ -1,7 +0,0 @@
1
- export type WithOptional<T, K extends keyof T> = Pick<Partial<T>, K>;
2
- export type WithRequired<T, K extends keyof T> = Required<Pick<T, K>>;
3
- export type MakeOptional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
4
- export type RequiredKeys<T> = {
5
- [K in keyof T]-?: {} extends Pick<T, K> ? never : K;
6
- }[keyof T];
7
- export type RequiredProps<T> = Pick<T, RequiredKeys<T>>;
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/kernel-zerodev/types.ts"],"names":[],"mappings":"","sourcesContent":["export type WithOptional<T, K extends keyof T> = Pick<Partial<T>, K>;\nexport type WithRequired<T, K extends keyof T> = Required<Pick<T, K>>;\nexport type MakeOptional<T, K extends keyof T> = Omit<T, K> &\n Partial<Pick<T, K>>;\nexport type RequiredKeys<T> = {\n [K in keyof T]-?: {} extends Pick<T, K> ? never : K;\n}[keyof T];\nexport type RequiredProps<T> = Pick<T, RequiredKeys<T>>;\n"]}
@@ -1,5 +0,0 @@
1
- import { type UserOperationRequest, type UserOperationStruct } from "@alchemy/aa-core";
2
- import type { NotPromise } from "./calc-pre-verification-gas.js";
3
- export declare function packUserOp(op: NotPromise<UserOperationStruct>, forSignature?: boolean): string;
4
- export declare function isValidRequest(request: UserOperationStruct): request is UserOperationRequest;
5
- export declare const hexifyUserOp: (resolvedUserOp: any) => {};
@@ -1,100 +0,0 @@
1
- import { EntryPointAbi, } from "@alchemy/aa-core";
2
- import { encodeAbiParameters, parseAbiParameters, keccak256, toHex, } from "viem";
3
- const validateUserOpMethod = "simulateValidation";
4
- const UserOpType = EntryPointAbi.find((entry) => entry.name === validateUserOpMethod)?.inputs[0];
5
- function encode(typevalues, forSignature) {
6
- const types = typevalues
7
- .map((typevalue) => typevalue.type === "bytes" && forSignature ? "bytes32" : typevalue.type)
8
- .join(", ");
9
- const values = typevalues.map((typevalue) => typevalue.type === "bytes" && forSignature
10
- ? keccak256(typevalue.val)
11
- : typevalue.val);
12
- return encodeAbiParameters(parseAbiParameters(types), values);
13
- }
14
- export function packUserOp(op, forSignature = true) {
15
- if (forSignature) {
16
- const userOpType = {
17
- components: [
18
- {
19
- type: "address",
20
- name: "sender",
21
- },
22
- {
23
- type: "uint256",
24
- name: "nonce",
25
- },
26
- {
27
- type: "bytes",
28
- name: "initCode",
29
- },
30
- {
31
- type: "bytes",
32
- name: "callData",
33
- },
34
- {
35
- type: "uint256",
36
- name: "callGasLimit",
37
- },
38
- {
39
- type: "uint256",
40
- name: "verificationGasLimit",
41
- },
42
- {
43
- type: "uint256",
44
- name: "preVerificationGas",
45
- },
46
- {
47
- type: "uint256",
48
- name: "maxFeePerGas",
49
- },
50
- {
51
- type: "uint256",
52
- name: "maxPriorityFeePerGas",
53
- },
54
- {
55
- type: "bytes",
56
- name: "paymasterAndData",
57
- },
58
- {
59
- type: "bytes",
60
- name: "signature",
61
- },
62
- ],
63
- name: "userOp",
64
- type: "tuple",
65
- };
66
- let encoded = encodeAbiParameters(userOpType.components, Object.values({
67
- ...op,
68
- signature: "0x",
69
- }));
70
- encoded = ("0x" + encoded.slice(66, encoded.length - 64));
71
- return encoded;
72
- }
73
- const typevalues = UserOpType.components.map((c) => ({
74
- type: c.type,
75
- val: op[c.name],
76
- }));
77
- return encode(typevalues, forSignature);
78
- }
79
- export function isValidRequest(request) {
80
- return (!!request.callGasLimit &&
81
- !!request.maxFeePerGas &&
82
- request.maxPriorityFeePerGas != null &&
83
- !!request.preVerificationGas &&
84
- !!request.verificationGasLimit);
85
- }
86
- export const hexifyUserOp = (resolvedUserOp) => {
87
- return Object.keys(resolvedUserOp)
88
- .map((key) => {
89
- let val = resolvedUserOp[key];
90
- if (typeof val !== "string" || !val.startsWith("0x")) {
91
- val = toHex(val);
92
- }
93
- return [key, val];
94
- })
95
- .reduce((set, [k, v]) => ({
96
- ...set,
97
- [k]: v,
98
- }), {});
99
- };
100
- //# sourceMappingURL=ERC4337-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ERC4337-utils.js","sourceRoot":"","sources":["../../../../src/kernel-zerodev/utils/ERC4337-utils.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n EntryPointAbi,\n type UserOperationRequest,\n type UserOperationStruct,\n} from \"@alchemy/aa-core\";\nimport type { NotPromise } from \"./calc-pre-verification-gas.js\";\nimport {\n encodeAbiParameters,\n parseAbiParameters,\n type Hex,\n keccak256,\n toHex,\n} from \"viem\";\n\n// UserOperation is the first parameter of validateUseOp\nconst validateUserOpMethod = \"simulateValidation\";\n\nconst UserOpType = EntryPointAbi.find(\n // @ts-ignore\n (entry) => entry.name === validateUserOpMethod\n // @ts-ignore\n)?.inputs[0];\n\nfunction encode(\n typevalues: Array<{ type: string; val: any }>,\n forSignature: boolean\n): string {\n const types = typevalues\n .map((typevalue) =>\n typevalue.type === \"bytes\" && forSignature ? \"bytes32\" : typevalue.type\n )\n .join(\", \");\n const values = typevalues.map((typevalue) =>\n typevalue.type === \"bytes\" && forSignature\n ? keccak256(typevalue.val)\n : typevalue.val\n );\n return encodeAbiParameters(parseAbiParameters(types), values);\n}\n\n/**\n * pack the userOperation\n * @param op\n * @param forSignature \"true\" if the hash is needed to calculate the getUserOpHash()\n * \"false\" to pack entire UserOp, for calculating the calldata cost of putting it on-chain.\n */\nexport function packUserOp(\n op: NotPromise<UserOperationStruct>,\n forSignature = true\n): string {\n if (forSignature) {\n // lighter signature scheme (must match UserOperation#pack): do encode a zero-length signature, but strip afterwards the appended zero-length value\n const userOpType = {\n components: [\n {\n type: \"address\",\n name: \"sender\",\n },\n {\n type: \"uint256\",\n name: \"nonce\",\n },\n {\n type: \"bytes\",\n name: \"initCode\",\n },\n {\n type: \"bytes\",\n name: \"callData\",\n },\n {\n type: \"uint256\",\n name: \"callGasLimit\",\n },\n {\n type: \"uint256\",\n name: \"verificationGasLimit\",\n },\n {\n type: \"uint256\",\n name: \"preVerificationGas\",\n },\n {\n type: \"uint256\",\n name: \"maxFeePerGas\",\n },\n {\n type: \"uint256\",\n name: \"maxPriorityFeePerGas\",\n },\n {\n type: \"bytes\",\n name: \"paymasterAndData\",\n },\n {\n type: \"bytes\",\n name: \"signature\",\n },\n ],\n name: \"userOp\",\n type: \"tuple\",\n };\n // console.log('hard-coded userOpType', userOpType)\n // console.log('from ABI userOpType', UserOpType)\n let encoded = encodeAbiParameters(\n userOpType.components,\n Object.values({\n ...op,\n signature: \"0x\",\n })\n );\n // remove leading word (total length) and trailing word (zero-length signature)\n encoded = (\"0x\" + encoded.slice(66, encoded.length - 64)) as Hex;\n return encoded;\n }\n\n const typevalues = (UserOpType as any).components.map(\n (c: { name: keyof typeof op; type: string }) => ({\n type: c.type,\n val: op[c.name],\n })\n );\n return encode(typevalues, forSignature);\n}\n\n/**\n * Utility method for asserting a {@link UserOperationStruct} is a {@link UserOperationRequest}\n *\n * @param request a {@link UserOperationStruct} to validate\n * @returns a type guard that asserts the {@link UserOperationStruct} is a {@link UserOperationRequest}\n */\nexport function isValidRequest(\n request: UserOperationStruct\n): request is UserOperationRequest {\n // These are the only ones marked as optional in the interface above\n return (\n !!request.callGasLimit &&\n !!request.maxFeePerGas &&\n request.maxPriorityFeePerGas != null &&\n !!request.preVerificationGas &&\n !!request.verificationGasLimit\n );\n}\n\nexport const hexifyUserOp = (resolvedUserOp: any) => {\n return Object.keys(resolvedUserOp)\n .map((key) => {\n let val = resolvedUserOp[key];\n if (typeof val !== \"string\" || !val.startsWith(\"0x\")) {\n val = toHex(val);\n }\n return [key, val];\n })\n .reduce(\n (set, [k, v]) => ({\n ...set,\n [k]: v,\n }),\n {}\n );\n};\n"]}
@@ -1,15 +0,0 @@
1
- import type { UserOperationStruct } from "@alchemy/aa-core";
2
- export interface GasOverheads {
3
- fixed: number;
4
- perUserOp: number;
5
- perUserOpWord: number;
6
- zeroByte: number;
7
- nonZeroByte: number;
8
- bundleSize: number;
9
- sigSize: number;
10
- }
11
- export declare const DefaultGasOverheads: GasOverheads;
12
- export type NotPromise<T> = {
13
- [P in keyof T]: Exclude<T[P], Promise<any>>;
14
- };
15
- export declare function calcPreVerificationGas(userOp: Partial<NotPromise<UserOperationStruct>>, overheads?: Partial<GasOverheads>): number;