@zerodev/sdk 4.7.4 → 5.0.0-alpha-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 (766) 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 +14 -0
  4. package/_cjs/accounts/index.js.map +1 -0
  5. package/{dist/cjs/kernel-zerodev/abis → _cjs/accounts/kernel/abi}/KernelAccountAbi.js +274 -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/abi/kernel_v_3_0_0/KernelAccountAbi.js +738 -0
  12. package/_cjs/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js.map +1 -0
  13. package/_cjs/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.js +15 -0
  14. package/_cjs/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.js.map +1 -0
  15. package/_cjs/accounts/kernel/createKernelAccount.js +511 -0
  16. package/_cjs/accounts/kernel/createKernelAccount.js.map +1 -0
  17. package/_cjs/accounts/kernel/v1/createKernelV1Account.js +201 -0
  18. package/_cjs/accounts/kernel/v1/createKernelV1Account.js.map +1 -0
  19. package/_cjs/accounts/kernel/v1/multisend.js +31 -0
  20. package/_cjs/accounts/kernel/v1/multisend.js.map +1 -0
  21. package/_cjs/accounts/utils/6492.js +47 -0
  22. package/_cjs/accounts/utils/6492.js.map +1 -0
  23. package/_cjs/accounts/utils/index.js +15 -0
  24. package/_cjs/accounts/utils/index.js.map +1 -0
  25. package/_cjs/accounts/utils/toKernelPluginManager.js +270 -0
  26. package/_cjs/accounts/utils/toKernelPluginManager.js.map +1 -0
  27. package/_cjs/actions/account-client/signUserOperation.js +16 -0
  28. package/_cjs/actions/account-client/signUserOperation.js.map +1 -0
  29. package/_cjs/actions/index.js +10 -0
  30. package/_cjs/actions/index.js.map +1 -0
  31. package/_cjs/actions/paymaster/estimateGasInERC20.js +26 -0
  32. package/_cjs/actions/paymaster/estimateGasInERC20.js.map +1 -0
  33. package/_cjs/actions/paymaster/sponsorUserOperation.js +43 -0
  34. package/_cjs/actions/paymaster/sponsorUserOperation.js.map +1 -0
  35. package/_cjs/clients/decorators/index.js +6 -0
  36. package/_cjs/clients/decorators/index.js.map +1 -0
  37. package/_cjs/clients/decorators/kernel.js +24 -0
  38. package/_cjs/clients/decorators/kernel.js.map +1 -0
  39. package/_cjs/clients/index.js +8 -0
  40. package/_cjs/clients/index.js.map +1 -0
  41. package/_cjs/clients/kernelAccountClient.js +20 -0
  42. package/_cjs/clients/kernelAccountClient.js.map +1 -0
  43. package/_cjs/clients/paymasterClient.js +17 -0
  44. package/_cjs/clients/paymasterClient.js.map +1 -0
  45. package/_cjs/constants.js +40 -0
  46. package/_cjs/constants.js.map +1 -0
  47. package/_cjs/gasTokenAddresses.js +358 -0
  48. package/_cjs/gasTokenAddresses.js.map +1 -0
  49. package/_cjs/index.js +38 -0
  50. package/_cjs/index.js.map +1 -0
  51. package/_cjs/package.json +1 -0
  52. package/_cjs/providers/KernelEIP1193Provider.js +62 -0
  53. package/_cjs/providers/KernelEIP1193Provider.js.map +1 -0
  54. package/_cjs/providers/index.js +6 -0
  55. package/_cjs/providers/index.js.map +1 -0
  56. package/_cjs/types/index.js +6 -0
  57. package/_cjs/types/index.js.map +1 -0
  58. package/_cjs/types/kernel.js +10 -0
  59. package/_cjs/types/kernel.js.map +1 -0
  60. package/_cjs/utils.js +84 -0
  61. package/_cjs/utils.js.map +1 -0
  62. package/_esm/accounts/addressToEmptyAccount.js +21 -0
  63. package/_esm/accounts/addressToEmptyAccount.js.map +1 -0
  64. package/_esm/accounts/index.js +5 -0
  65. package/_esm/accounts/index.js.map +1 -0
  66. package/_esm/accounts/kernel/abi/KernelAccountAbi.js +814 -0
  67. package/_esm/accounts/kernel/abi/KernelAccountAbi.js.map +1 -0
  68. package/{dist/esm/kernel-zerodev/abis → _esm/accounts/kernel/abi}/KernelFactoryAbi.js +87 -87
  69. package/_esm/accounts/kernel/abi/KernelFactoryAbi.js.map +1 -0
  70. package/{dist/esm/kernel-zerodev/abis → _esm/accounts/kernel/abi}/TokenActionsAbi.js +18 -18
  71. package/_esm/accounts/kernel/abi/TokenActionsAbi.js.map +1 -0
  72. package/_esm/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js +735 -0
  73. package/_esm/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js.map +1 -0
  74. package/_esm/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.js +12 -0
  75. package/_esm/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.js.map +1 -0
  76. package/_esm/accounts/kernel/createKernelAccount.js +559 -0
  77. package/_esm/accounts/kernel/createKernelAccount.js.map +1 -0
  78. package/_esm/accounts/kernel/v1/createKernelV1Account.js +208 -0
  79. package/_esm/accounts/kernel/v1/createKernelV1Account.js.map +1 -0
  80. package/_esm/accounts/kernel/v1/multisend.js +28 -0
  81. package/_esm/accounts/kernel/v1/multisend.js.map +1 -0
  82. package/_esm/accounts/utils/6492.js +50 -0
  83. package/_esm/accounts/utils/6492.js.map +1 -0
  84. package/_esm/accounts/utils/index.js +8 -0
  85. package/_esm/accounts/utils/index.js.map +1 -0
  86. package/_esm/accounts/utils/toKernelPluginManager.js +267 -0
  87. package/_esm/accounts/utils/toKernelPluginManager.js.map +1 -0
  88. package/_esm/actions/account-client/signUserOperation.js +12 -0
  89. package/_esm/actions/account-client/signUserOperation.js.map +1 -0
  90. package/_esm/actions/index.js +4 -0
  91. package/_esm/actions/index.js.map +1 -0
  92. package/_esm/actions/paymaster/estimateGasInERC20.js +25 -0
  93. package/_esm/actions/paymaster/estimateGasInERC20.js.map +1 -0
  94. package/_esm/actions/paymaster/sponsorUserOperation.js +61 -0
  95. package/_esm/actions/paymaster/sponsorUserOperation.js.map +1 -0
  96. package/_esm/clients/decorators/index.js +2 -0
  97. package/_esm/clients/decorators/index.js.map +1 -0
  98. package/_esm/clients/decorators/kernel.js +20 -0
  99. package/_esm/clients/decorators/kernel.js.map +1 -0
  100. package/_esm/clients/index.js +3 -0
  101. package/_esm/clients/index.js.map +1 -0
  102. package/_esm/clients/kernelAccountClient.js +17 -0
  103. package/_esm/clients/kernelAccountClient.js.map +1 -0
  104. package/_esm/clients/paymasterClient.js +30 -0
  105. package/_esm/clients/paymasterClient.js.map +1 -0
  106. package/_esm/constants.js +38 -0
  107. package/_esm/constants.js.map +1 -0
  108. package/_esm/gasTokenAddresses.js +355 -0
  109. package/_esm/gasTokenAddresses.js.map +1 -0
  110. package/_esm/index.js +17 -0
  111. package/_esm/index.js.map +1 -0
  112. package/_esm/package.json +1 -0
  113. package/_esm/providers/KernelEIP1193Provider.js +60 -0
  114. package/_esm/providers/KernelEIP1193Provider.js.map +1 -0
  115. package/_esm/providers/index.js +2 -0
  116. package/_esm/providers/index.js.map +1 -0
  117. package/_esm/types/index.js +2 -0
  118. package/_esm/types/index.js.map +1 -0
  119. package/_esm/types/kernel.js +9 -0
  120. package/_esm/types/kernel.js.map +1 -0
  121. package/_esm/utils.js +76 -0
  122. package/_esm/utils.js.map +1 -0
  123. package/_types/accounts/addressToEmptyAccount.d.ts +4 -0
  124. package/_types/accounts/addressToEmptyAccount.d.ts.map +1 -0
  125. package/_types/accounts/index.d.ts +5 -0
  126. package/_types/accounts/index.d.ts.map +1 -0
  127. package/{dist/cjs/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelAccountAbi.d.ts +96 -0
  128. package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelAccountAbi.d.ts.map +1 -1
  129. package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelFactoryAbi.d.ts.map +1 -1
  130. package/_types/accounts/kernel/abi/TokenActionsAbi.d.ts.map +1 -0
  131. package/_types/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.d.ts +843 -0
  132. package/_types/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.d.ts.map +1 -0
  133. package/_types/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.d.ts +16 -0
  134. package/_types/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.d.ts.map +1 -0
  135. package/_types/accounts/kernel/createKernelAccount.d.ts +92 -0
  136. package/_types/accounts/kernel/createKernelAccount.d.ts.map +1 -0
  137. package/_types/accounts/kernel/v1/createKernelV1Account.d.ts +11 -0
  138. package/_types/accounts/kernel/v1/createKernelV1Account.d.ts.map +1 -0
  139. package/_types/accounts/kernel/v1/multisend.d.ts +13 -0
  140. package/_types/accounts/kernel/v1/multisend.d.ts.map +1 -0
  141. package/_types/accounts/utils/6492.d.ts +18 -0
  142. package/_types/accounts/utils/6492.d.ts.map +1 -0
  143. package/_types/accounts/utils/index.d.ts +5 -0
  144. package/_types/accounts/utils/index.d.ts.map +1 -0
  145. package/_types/accounts/utils/toKernelPluginManager.d.ts +6 -0
  146. package/_types/accounts/utils/toKernelPluginManager.d.ts.map +1 -0
  147. package/_types/actions/account-client/signUserOperation.d.ts +10 -0
  148. package/_types/actions/account-client/signUserOperation.d.ts.map +1 -0
  149. package/_types/actions/index.d.ts +4 -0
  150. package/_types/actions/index.d.ts.map +1 -0
  151. package/_types/actions/paymaster/estimateGasInERC20.d.ts +21 -0
  152. package/_types/actions/paymaster/estimateGasInERC20.d.ts.map +1 -0
  153. package/_types/actions/paymaster/sponsorUserOperation.d.ts +18 -0
  154. package/_types/actions/paymaster/sponsorUserOperation.d.ts.map +1 -0
  155. package/_types/clients/decorators/index.d.ts +2 -0
  156. package/_types/clients/decorators/index.d.ts.map +1 -0
  157. package/_types/clients/decorators/kernel.d.ts +28 -0
  158. package/_types/clients/decorators/kernel.d.ts.map +1 -0
  159. package/_types/clients/index.d.ts +3 -0
  160. package/_types/clients/index.d.ts.map +1 -0
  161. package/_types/clients/kernelAccountClient.d.ts +359 -0
  162. package/_types/clients/kernelAccountClient.d.ts.map +1 -0
  163. package/_types/clients/paymasterClient.d.ts +39 -0
  164. package/_types/clients/paymasterClient.d.ts.map +1 -0
  165. package/_types/constants.d.ts +30 -0
  166. package/_types/constants.d.ts.map +1 -0
  167. package/_types/gasTokenAddresses.d.ts +27 -0
  168. package/_types/gasTokenAddresses.d.ts.map +1 -0
  169. package/_types/index.d.ts +16 -0
  170. package/_types/index.d.ts.map +1 -0
  171. package/_types/providers/KernelEIP1193Provider.d.ts +15 -0
  172. package/_types/providers/KernelEIP1193Provider.d.ts.map +1 -0
  173. package/_types/providers/index.d.ts +2 -0
  174. package/_types/providers/index.d.ts.map +1 -0
  175. package/_types/types/index.d.ts +3 -0
  176. package/_types/types/index.d.ts.map +1 -0
  177. package/_types/types/kernel.d.ts +136 -0
  178. package/_types/types/kernel.d.ts.map +1 -0
  179. package/_types/utils.d.ts +22 -0
  180. package/_types/utils.d.ts.map +1 -0
  181. package/accounts/addressToEmptyAccount.ts +24 -0
  182. package/accounts/index.ts +9 -0
  183. package/{dist/esm/kernel-zerodev/abis/KernelAccountAbi.js → accounts/kernel/abi/KernelAccountAbi.ts} +282 -159
  184. package/accounts/kernel/abi/KernelFactoryAbi.ts +380 -0
  185. package/accounts/kernel/abi/TokenActionsAbi.ts +81 -0
  186. package/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.ts +736 -0
  187. package/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.ts +11 -0
  188. package/accounts/kernel/createKernelAccount.ts +842 -0
  189. package/accounts/kernel/v1/createKernelV1Account.ts +315 -0
  190. package/accounts/kernel/v1/multisend.ts +43 -0
  191. package/accounts/utils/6492.ts +96 -0
  192. package/accounts/utils/index.ts +12 -0
  193. package/accounts/utils/toKernelPluginManager.ts +369 -0
  194. package/actions/account-client/signUserOperation.ts +71 -0
  195. package/actions/index.ts +17 -0
  196. package/actions/paymaster/estimateGasInERC20.ts +58 -0
  197. package/actions/paymaster/sponsorUserOperation.ts +143 -0
  198. package/clients/decorators/index.ts +4 -0
  199. package/clients/decorators/kernel.ts +97 -0
  200. package/clients/index.ts +9 -0
  201. package/clients/kernelAccountClient.ts +87 -0
  202. package/clients/paymasterClient.ts +57 -0
  203. package/constants.ts +38 -0
  204. package/gasTokenAddresses.ts +670 -0
  205. package/index.ts +45 -0
  206. package/package.json +95 -71
  207. package/providers/KernelEIP1193Provider.ts +79 -0
  208. package/providers/index.ts +1 -0
  209. package/types/index.ts +12 -0
  210. package/types/kernel.ts +186 -0
  211. package/utils.ts +114 -0
  212. package/README.md +0 -5
  213. package/dist/cjs/index.d.ts +0 -22
  214. package/dist/cjs/index.js +0 -61
  215. package/dist/cjs/index.js.map +0 -1
  216. package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +0 -162
  217. package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js +0 -215
  218. package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js.map +0 -1
  219. package/dist/cjs/kernel-zerodev/abis/ERC20Abi.d.ts +0 -231
  220. package/dist/cjs/kernel-zerodev/abis/ERC20Abi.js +0 -157
  221. package/dist/cjs/kernel-zerodev/abis/ERC20Abi.js.map +0 -1
  222. package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +0 -158
  223. package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.js +0 -210
  224. package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.js.map +0 -1
  225. package/dist/cjs/kernel-zerodev/abis/KernelAccountAbi.js.map +0 -1
  226. package/dist/cjs/kernel-zerodev/abis/KernelFactoryAbi.d.ts +0 -293
  227. package/dist/cjs/kernel-zerodev/abis/KernelFactoryAbi.js.map +0 -1
  228. package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +0 -150
  229. package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.js +0 -200
  230. package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.js.map +0 -1
  231. package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.d.ts +0 -15
  232. package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.js +0 -24
  233. package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.js.map +0 -1
  234. package/dist/cjs/kernel-zerodev/abis/RecoveryActionAbi.d.ts +0 -15
  235. package/dist/cjs/kernel-zerodev/abis/RecoveryActionAbi.js +0 -24
  236. package/dist/cjs/kernel-zerodev/abis/RecoveryActionAbi.js.map +0 -1
  237. package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +0 -212
  238. package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.js +0 -281
  239. package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.js.map +0 -1
  240. package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.d.ts +0 -237
  241. package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.js +0 -161
  242. package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.js.map +0 -1
  243. package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.d.ts +0 -287
  244. package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.js +0 -377
  245. package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.js.map +0 -1
  246. package/dist/cjs/kernel-zerodev/abis/TokenActionsAbi.d.ts +0 -63
  247. package/dist/cjs/kernel-zerodev/abis/TokenActionsAbi.js.map +0 -1
  248. package/dist/cjs/kernel-zerodev/abis/WeightedValidatorAbi.d.ts +0 -375
  249. package/dist/cjs/kernel-zerodev/abis/WeightedValidatorAbi.js +0 -272
  250. package/dist/cjs/kernel-zerodev/abis/WeightedValidatorAbi.js.map +0 -1
  251. package/dist/cjs/kernel-zerodev/abis/index.d.ts +0 -8
  252. package/dist/cjs/kernel-zerodev/abis/index.js +0 -18
  253. package/dist/cjs/kernel-zerodev/abis/index.js.map +0 -1
  254. package/dist/cjs/kernel-zerodev/account.d.ts +0 -51
  255. package/dist/cjs/kernel-zerodev/account.js +0 -323
  256. package/dist/cjs/kernel-zerodev/account.js.map +0 -1
  257. package/dist/cjs/kernel-zerodev/api/index.d.ts +0 -5
  258. package/dist/cjs/kernel-zerodev/api/index.js +0 -68
  259. package/dist/cjs/kernel-zerodev/api/index.js.map +0 -1
  260. package/dist/cjs/kernel-zerodev/client/create-client.d.ts +0 -12
  261. package/dist/cjs/kernel-zerodev/client/create-client.js +0 -54
  262. package/dist/cjs/kernel-zerodev/client/create-client.js.map +0 -1
  263. package/dist/cjs/kernel-zerodev/constants.d.ts +0 -31
  264. package/dist/cjs/kernel-zerodev/constants.js +0 -85
  265. package/dist/cjs/kernel-zerodev/constants.js.map +0 -1
  266. package/dist/cjs/kernel-zerodev/errors.d.ts +0 -5
  267. package/dist/cjs/kernel-zerodev/errors.js +0 -12
  268. package/dist/cjs/kernel-zerodev/errors.js.map +0 -1
  269. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.d.ts +0 -31
  270. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.js +0 -147
  271. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.js.map +0 -1
  272. package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.d.ts +0 -22
  273. package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.js +0 -116
  274. package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.js.map +0 -1
  275. package/dist/cjs/kernel-zerodev/middleware/gas-estimator.d.ts +0 -24
  276. package/dist/cjs/kernel-zerodev/middleware/gas-estimator.js +0 -160
  277. package/dist/cjs/kernel-zerodev/middleware/gas-estimator.js.map +0 -1
  278. package/dist/cjs/kernel-zerodev/middleware/paymaster.d.ts +0 -5
  279. package/dist/cjs/kernel-zerodev/middleware/paymaster.js +0 -63
  280. package/dist/cjs/kernel-zerodev/middleware/paymaster.js.map +0 -1
  281. package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.d.ts +0 -11
  282. package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.js +0 -80
  283. package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.js.map +0 -1
  284. package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.d.ts +0 -2
  285. package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.js +0 -18
  286. package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.js.map +0 -1
  287. package/dist/cjs/kernel-zerodev/owner/index.d.ts +0 -2
  288. package/dist/cjs/kernel-zerodev/owner/index.js +0 -8
  289. package/dist/cjs/kernel-zerodev/owner/index.js.map +0 -1
  290. package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +0 -8
  291. package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.js +0 -74
  292. package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.js.map +0 -1
  293. package/dist/cjs/kernel-zerodev/owner/passkey/exceptions.d.ts +0 -3
  294. package/dist/cjs/kernel-zerodev/owner/passkey/exceptions.js +0 -16
  295. package/dist/cjs/kernel-zerodev/owner/passkey/exceptions.js.map +0 -1
  296. package/dist/cjs/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts +0 -6
  297. package/dist/cjs/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js +0 -48
  298. package/dist/cjs/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js.map +0 -1
  299. package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +0 -7
  300. package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.js +0 -44
  301. package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.js.map +0 -1
  302. package/dist/cjs/kernel-zerodev/owner/passkey/index.d.ts +0 -4
  303. package/dist/cjs/kernel-zerodev/owner/passkey/index.js +0 -12
  304. package/dist/cjs/kernel-zerodev/owner/passkey/index.js.map +0 -1
  305. package/dist/cjs/kernel-zerodev/owner/passkey/types.d.ts +0 -12
  306. package/dist/cjs/kernel-zerodev/owner/passkey/types.js +0 -3
  307. package/dist/cjs/kernel-zerodev/owner/passkey/types.js.map +0 -1
  308. package/dist/cjs/kernel-zerodev/owner/passkey/utils.d.ts +0 -14
  309. package/dist/cjs/kernel-zerodev/owner/passkey/utils.js +0 -114
  310. package/dist/cjs/kernel-zerodev/owner/passkey/utils.js.map +0 -1
  311. package/dist/cjs/kernel-zerodev/paymaster/base.d.ts +0 -18
  312. package/dist/cjs/kernel-zerodev/paymaster/base.js +0 -63
  313. package/dist/cjs/kernel-zerodev/paymaster/base.js.map +0 -1
  314. package/dist/cjs/kernel-zerodev/paymaster/index.d.ts +0 -3
  315. package/dist/cjs/kernel-zerodev/paymaster/index.js +0 -10
  316. package/dist/cjs/kernel-zerodev/paymaster/index.js.map +0 -1
  317. package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.d.ts +0 -15
  318. package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.js +0 -188
  319. package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.js.map +0 -1
  320. package/dist/cjs/kernel-zerodev/paymaster/types.d.ts +0 -29
  321. package/dist/cjs/kernel-zerodev/paymaster/types.js +0 -3
  322. package/dist/cjs/kernel-zerodev/paymaster/types.js.map +0 -1
  323. package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.d.ts +0 -8
  324. package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.js +0 -22
  325. package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.js.map +0 -1
  326. package/dist/cjs/kernel-zerodev/provider.d.ts +0 -57
  327. package/dist/cjs/kernel-zerodev/provider.js +0 -387
  328. package/dist/cjs/kernel-zerodev/provider.js.map +0 -1
  329. package/dist/cjs/kernel-zerodev/signer/empty-account.d.ts +0 -10
  330. package/dist/cjs/kernel-zerodev/signer/empty-account.js +0 -43
  331. package/dist/cjs/kernel-zerodev/signer/empty-account.js.map +0 -1
  332. package/dist/cjs/kernel-zerodev/types.d.ts +0 -7
  333. package/dist/cjs/kernel-zerodev/types.js +0 -3
  334. package/dist/cjs/kernel-zerodev/types.js.map +0 -1
  335. package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.d.ts +0 -5
  336. package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.js +0 -106
  337. package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.js.map +0 -1
  338. package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +0 -15
  339. package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.js +0 -33
  340. package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.js.map +0 -1
  341. package/dist/cjs/kernel-zerodev/utils/custom-chains.d.ts +0 -92
  342. package/dist/cjs/kernel-zerodev/utils/custom-chains.js +0 -84
  343. package/dist/cjs/kernel-zerodev/utils/custom-chains.js.map +0 -1
  344. package/dist/cjs/kernel-zerodev/utils.d.ts +0 -20
  345. package/dist/cjs/kernel-zerodev/utils.js +0 -119
  346. package/dist/cjs/kernel-zerodev/utils.js.map +0 -1
  347. package/dist/cjs/kernel-zerodev/validator/base.d.ts +0 -56
  348. package/dist/cjs/kernel-zerodev/validator/base.js +0 -276
  349. package/dist/cjs/kernel-zerodev/validator/base.js.map +0 -1
  350. package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.d.ts +0 -20
  351. package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.js +0 -97
  352. package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.js.map +0 -1
  353. package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.d.ts +0 -29
  354. package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.js +0 -118
  355. package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.js.map +0 -1
  356. package/dist/cjs/kernel-zerodev/validator/index.d.ts +0 -8
  357. package/dist/cjs/kernel-zerodev/validator/index.js +0 -21
  358. package/dist/cjs/kernel-zerodev/validator/index.js.map +0 -1
  359. package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.d.ts +0 -22
  360. package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.js +0 -122
  361. package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.js.map +0 -1
  362. package/dist/cjs/kernel-zerodev/validator/recovery-validator.d.ts +0 -58
  363. package/dist/cjs/kernel-zerodev/validator/recovery-validator.js +0 -365
  364. package/dist/cjs/kernel-zerodev/validator/recovery-validator.js.map +0 -1
  365. package/dist/cjs/kernel-zerodev/validator/session-key-validator.d.ts +0 -84
  366. package/dist/cjs/kernel-zerodev/validator/session-key-validator.js +0 -501
  367. package/dist/cjs/kernel-zerodev/validator/session-key-validator.js.map +0 -1
  368. package/dist/cjs/kernel-zerodev/validator/types.d.ts +0 -56
  369. package/dist/cjs/kernel-zerodev/validator/types.js +0 -3
  370. package/dist/cjs/kernel-zerodev/validator/types.js.map +0 -1
  371. package/dist/cjs/kernel-zerodev/validator-provider/base.d.ts +0 -29
  372. package/dist/cjs/kernel-zerodev/validator-provider/base.js +0 -129
  373. package/dist/cjs/kernel-zerodev/validator-provider/base.js.map +0 -1
  374. package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +0 -8
  375. package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.js +0 -61
  376. package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.js.map +0 -1
  377. package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +0 -8
  378. package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.js +0 -65
  379. package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.js.map +0 -1
  380. package/dist/cjs/kernel-zerodev/validator-provider/index.d.ts +0 -8
  381. package/dist/cjs/kernel-zerodev/validator-provider/index.js +0 -21
  382. package/dist/cjs/kernel-zerodev/validator-provider/index.js.map +0 -1
  383. package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +0 -8
  384. package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.js +0 -65
  385. package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.js.map +0 -1
  386. package/dist/cjs/kernel-zerodev/validator-provider/recovery-provider.d.ts +0 -28
  387. package/dist/cjs/kernel-zerodev/validator-provider/recovery-provider.js +0 -298
  388. package/dist/cjs/kernel-zerodev/validator-provider/recovery-provider.js.map +0 -1
  389. package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.d.ts +0 -18
  390. package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.js +0 -115
  391. package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.js.map +0 -1
  392. package/dist/cjs/kernel-zerodev/validator-provider/types.d.ts +0 -29
  393. package/dist/cjs/kernel-zerodev/validator-provider/types.js +0 -3
  394. package/dist/cjs/kernel-zerodev/validator-provider/types.js.map +0 -1
  395. package/dist/cjs/package.json +0 -1
  396. package/dist/esm/index.d.ts +0 -22
  397. package/dist/esm/index.js +0 -17
  398. package/dist/esm/index.js.map +0 -1
  399. package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +0 -162
  400. package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js +0 -212
  401. package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js.map +0 -1
  402. package/dist/esm/kernel-zerodev/abis/ERC20Abi.d.ts +0 -231
  403. package/dist/esm/kernel-zerodev/abis/ERC20Abi.js +0 -154
  404. package/dist/esm/kernel-zerodev/abis/ERC20Abi.js.map +0 -1
  405. package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +0 -158
  406. package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.js +0 -207
  407. package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.js.map +0 -1
  408. package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.d.ts +0 -534
  409. package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.js.map +0 -1
  410. package/dist/esm/kernel-zerodev/abis/KernelFactoryAbi.d.ts +0 -293
  411. package/dist/esm/kernel-zerodev/abis/KernelFactoryAbi.js.map +0 -1
  412. package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +0 -150
  413. package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.js +0 -197
  414. package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.js.map +0 -1
  415. package/dist/esm/kernel-zerodev/abis/MultiSendAbi.d.ts +0 -15
  416. package/dist/esm/kernel-zerodev/abis/MultiSendAbi.js +0 -21
  417. package/dist/esm/kernel-zerodev/abis/MultiSendAbi.js.map +0 -1
  418. package/dist/esm/kernel-zerodev/abis/RecoveryActionAbi.d.ts +0 -15
  419. package/dist/esm/kernel-zerodev/abis/RecoveryActionAbi.js +0 -21
  420. package/dist/esm/kernel-zerodev/abis/RecoveryActionAbi.js.map +0 -1
  421. package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +0 -212
  422. package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.js +0 -278
  423. package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.js.map +0 -1
  424. package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.d.ts +0 -237
  425. package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.js +0 -158
  426. package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.js.map +0 -1
  427. package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.d.ts +0 -287
  428. package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.js +0 -374
  429. package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.js.map +0 -1
  430. package/dist/esm/kernel-zerodev/abis/TokenActionsAbi.d.ts +0 -63
  431. package/dist/esm/kernel-zerodev/abis/TokenActionsAbi.js.map +0 -1
  432. package/dist/esm/kernel-zerodev/abis/WeightedValidatorAbi.d.ts +0 -375
  433. package/dist/esm/kernel-zerodev/abis/WeightedValidatorAbi.js +0 -269
  434. package/dist/esm/kernel-zerodev/abis/WeightedValidatorAbi.js.map +0 -1
  435. package/dist/esm/kernel-zerodev/abis/index.d.ts +0 -8
  436. package/dist/esm/kernel-zerodev/abis/index.js +0 -9
  437. package/dist/esm/kernel-zerodev/abis/index.js.map +0 -1
  438. package/dist/esm/kernel-zerodev/account.d.ts +0 -51
  439. package/dist/esm/kernel-zerodev/account.js +0 -319
  440. package/dist/esm/kernel-zerodev/account.js.map +0 -1
  441. package/dist/esm/kernel-zerodev/api/index.d.ts +0 -5
  442. package/dist/esm/kernel-zerodev/api/index.js +0 -58
  443. package/dist/esm/kernel-zerodev/api/index.js.map +0 -1
  444. package/dist/esm/kernel-zerodev/client/create-client.d.ts +0 -12
  445. package/dist/esm/kernel-zerodev/client/create-client.js +0 -50
  446. package/dist/esm/kernel-zerodev/client/create-client.js.map +0 -1
  447. package/dist/esm/kernel-zerodev/constants.d.ts +0 -31
  448. package/dist/esm/kernel-zerodev/constants.js +0 -82
  449. package/dist/esm/kernel-zerodev/constants.js.map +0 -1
  450. package/dist/esm/kernel-zerodev/errors.d.ts +0 -5
  451. package/dist/esm/kernel-zerodev/errors.js +0 -6
  452. package/dist/esm/kernel-zerodev/errors.js.map +0 -1
  453. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.d.ts +0 -31
  454. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.js +0 -145
  455. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.js.map +0 -1
  456. package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.d.ts +0 -22
  457. package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.js +0 -112
  458. package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.js.map +0 -1
  459. package/dist/esm/kernel-zerodev/middleware/gas-estimator.d.ts +0 -24
  460. package/dist/esm/kernel-zerodev/middleware/gas-estimator.js +0 -152
  461. package/dist/esm/kernel-zerodev/middleware/gas-estimator.js.map +0 -1
  462. package/dist/esm/kernel-zerodev/middleware/paymaster.d.ts +0 -5
  463. package/dist/esm/kernel-zerodev/middleware/paymaster.js +0 -59
  464. package/dist/esm/kernel-zerodev/middleware/paymaster.js.map +0 -1
  465. package/dist/esm/kernel-zerodev/owner/getCustodialOwner.d.ts +0 -11
  466. package/dist/esm/kernel-zerodev/owner/getCustodialOwner.js +0 -73
  467. package/dist/esm/kernel-zerodev/owner/getCustodialOwner.js.map +0 -1
  468. package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.d.ts +0 -2
  469. package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.js +0 -15
  470. package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.js.map +0 -1
  471. package/dist/esm/kernel-zerodev/owner/index.d.ts +0 -2
  472. package/dist/esm/kernel-zerodev/owner/index.js +0 -3
  473. package/dist/esm/kernel-zerodev/owner/index.js.map +0 -1
  474. package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +0 -8
  475. package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.js +0 -67
  476. package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.js.map +0 -1
  477. package/dist/esm/kernel-zerodev/owner/passkey/exceptions.d.ts +0 -3
  478. package/dist/esm/kernel-zerodev/owner/passkey/exceptions.js +0 -12
  479. package/dist/esm/kernel-zerodev/owner/passkey/exceptions.js.map +0 -1
  480. package/dist/esm/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts +0 -6
  481. package/dist/esm/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js +0 -41
  482. package/dist/esm/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js.map +0 -1
  483. package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +0 -7
  484. package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.js +0 -37
  485. package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.js.map +0 -1
  486. package/dist/esm/kernel-zerodev/owner/passkey/index.d.ts +0 -4
  487. package/dist/esm/kernel-zerodev/owner/passkey/index.js +0 -5
  488. package/dist/esm/kernel-zerodev/owner/passkey/index.js.map +0 -1
  489. package/dist/esm/kernel-zerodev/owner/passkey/types.d.ts +0 -12
  490. package/dist/esm/kernel-zerodev/owner/passkey/types.js +0 -2
  491. package/dist/esm/kernel-zerodev/owner/passkey/types.js.map +0 -1
  492. package/dist/esm/kernel-zerodev/owner/passkey/utils.d.ts +0 -14
  493. package/dist/esm/kernel-zerodev/owner/passkey/utils.js +0 -100
  494. package/dist/esm/kernel-zerodev/owner/passkey/utils.js.map +0 -1
  495. package/dist/esm/kernel-zerodev/paymaster/base.d.ts +0 -18
  496. package/dist/esm/kernel-zerodev/paymaster/base.js +0 -56
  497. package/dist/esm/kernel-zerodev/paymaster/base.js.map +0 -1
  498. package/dist/esm/kernel-zerodev/paymaster/index.d.ts +0 -3
  499. package/dist/esm/kernel-zerodev/paymaster/index.js +0 -7
  500. package/dist/esm/kernel-zerodev/paymaster/index.js.map +0 -1
  501. package/dist/esm/kernel-zerodev/paymaster/token-paymaster.d.ts +0 -15
  502. package/dist/esm/kernel-zerodev/paymaster/token-paymaster.js +0 -182
  503. package/dist/esm/kernel-zerodev/paymaster/token-paymaster.js.map +0 -1
  504. package/dist/esm/kernel-zerodev/paymaster/types.d.ts +0 -29
  505. package/dist/esm/kernel-zerodev/paymaster/types.js +0 -2
  506. package/dist/esm/kernel-zerodev/paymaster/types.js.map +0 -1
  507. package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.d.ts +0 -8
  508. package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.js +0 -18
  509. package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.js.map +0 -1
  510. package/dist/esm/kernel-zerodev/provider.d.ts +0 -57
  511. package/dist/esm/kernel-zerodev/provider.js +0 -383
  512. package/dist/esm/kernel-zerodev/provider.js.map +0 -1
  513. package/dist/esm/kernel-zerodev/signer/empty-account.d.ts +0 -10
  514. package/dist/esm/kernel-zerodev/signer/empty-account.js +0 -40
  515. package/dist/esm/kernel-zerodev/signer/empty-account.js.map +0 -1
  516. package/dist/esm/kernel-zerodev/types.d.ts +0 -7
  517. package/dist/esm/kernel-zerodev/types.js +0 -2
  518. package/dist/esm/kernel-zerodev/types.js.map +0 -1
  519. package/dist/esm/kernel-zerodev/utils/ERC4337-utils.d.ts +0 -5
  520. package/dist/esm/kernel-zerodev/utils/ERC4337-utils.js +0 -100
  521. package/dist/esm/kernel-zerodev/utils/ERC4337-utils.js.map +0 -1
  522. package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +0 -15
  523. package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.js +0 -29
  524. package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.js.map +0 -1
  525. package/dist/esm/kernel-zerodev/utils/custom-chains.d.ts +0 -92
  526. package/dist/esm/kernel-zerodev/utils/custom-chains.js +0 -81
  527. package/dist/esm/kernel-zerodev/utils/custom-chains.js.map +0 -1
  528. package/dist/esm/kernel-zerodev/utils.d.ts +0 -20
  529. package/dist/esm/kernel-zerodev/utils.js +0 -85
  530. package/dist/esm/kernel-zerodev/utils.js.map +0 -1
  531. package/dist/esm/kernel-zerodev/validator/base.d.ts +0 -56
  532. package/dist/esm/kernel-zerodev/validator/base.js +0 -273
  533. package/dist/esm/kernel-zerodev/validator/base.js.map +0 -1
  534. package/dist/esm/kernel-zerodev/validator/ecdsa-validator.d.ts +0 -20
  535. package/dist/esm/kernel-zerodev/validator/ecdsa-validator.js +0 -93
  536. package/dist/esm/kernel-zerodev/validator/ecdsa-validator.js.map +0 -1
  537. package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.d.ts +0 -29
  538. package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.js +0 -114
  539. package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.js.map +0 -1
  540. package/dist/esm/kernel-zerodev/validator/index.d.ts +0 -8
  541. package/dist/esm/kernel-zerodev/validator/index.js +0 -14
  542. package/dist/esm/kernel-zerodev/validator/index.js.map +0 -1
  543. package/dist/esm/kernel-zerodev/validator/kill-switch-validator.d.ts +0 -22
  544. package/dist/esm/kernel-zerodev/validator/kill-switch-validator.js +0 -118
  545. package/dist/esm/kernel-zerodev/validator/kill-switch-validator.js.map +0 -1
  546. package/dist/esm/kernel-zerodev/validator/recovery-validator.d.ts +0 -58
  547. package/dist/esm/kernel-zerodev/validator/recovery-validator.js +0 -359
  548. package/dist/esm/kernel-zerodev/validator/recovery-validator.js.map +0 -1
  549. package/dist/esm/kernel-zerodev/validator/session-key-validator.d.ts +0 -84
  550. package/dist/esm/kernel-zerodev/validator/session-key-validator.js +0 -496
  551. package/dist/esm/kernel-zerodev/validator/session-key-validator.js.map +0 -1
  552. package/dist/esm/kernel-zerodev/validator/types.d.ts +0 -56
  553. package/dist/esm/kernel-zerodev/validator/types.js +0 -3
  554. package/dist/esm/kernel-zerodev/validator/types.js.map +0 -1
  555. package/dist/esm/kernel-zerodev/validator-provider/base.d.ts +0 -29
  556. package/dist/esm/kernel-zerodev/validator-provider/base.js +0 -126
  557. package/dist/esm/kernel-zerodev/validator-provider/base.js.map +0 -1
  558. package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +0 -8
  559. package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.js +0 -57
  560. package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.js.map +0 -1
  561. package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +0 -8
  562. package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.js +0 -61
  563. package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.js.map +0 -1
  564. package/dist/esm/kernel-zerodev/validator-provider/index.d.ts +0 -8
  565. package/dist/esm/kernel-zerodev/validator-provider/index.js +0 -14
  566. package/dist/esm/kernel-zerodev/validator-provider/index.js.map +0 -1
  567. package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +0 -8
  568. package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.js +0 -61
  569. package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.js.map +0 -1
  570. package/dist/esm/kernel-zerodev/validator-provider/recovery-provider.d.ts +0 -28
  571. package/dist/esm/kernel-zerodev/validator-provider/recovery-provider.js +0 -295
  572. package/dist/esm/kernel-zerodev/validator-provider/recovery-provider.js.map +0 -1
  573. package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.d.ts +0 -18
  574. package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.js +0 -111
  575. package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.js.map +0 -1
  576. package/dist/esm/kernel-zerodev/validator-provider/types.d.ts +0 -29
  577. package/dist/esm/kernel-zerodev/validator-provider/types.js +0 -2
  578. package/dist/esm/kernel-zerodev/validator-provider/types.js.map +0 -1
  579. package/dist/esm/package.json +0 -1
  580. package/dist/types/index.d.ts +0 -23
  581. package/dist/types/index.d.ts.map +0 -1
  582. package/dist/types/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +0 -163
  583. package/dist/types/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts.map +0 -1
  584. package/dist/types/kernel-zerodev/abis/ERC20Abi.d.ts +0 -232
  585. package/dist/types/kernel-zerodev/abis/ERC20Abi.d.ts.map +0 -1
  586. package/dist/types/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +0 -159
  587. package/dist/types/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts.map +0 -1
  588. package/dist/types/kernel-zerodev/abis/KernelAccountAbi.d.ts +0 -535
  589. package/dist/types/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +0 -151
  590. package/dist/types/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts.map +0 -1
  591. package/dist/types/kernel-zerodev/abis/MultiSendAbi.d.ts +0 -16
  592. package/dist/types/kernel-zerodev/abis/MultiSendAbi.d.ts.map +0 -1
  593. package/dist/types/kernel-zerodev/abis/RecoveryActionAbi.d.ts +0 -16
  594. package/dist/types/kernel-zerodev/abis/RecoveryActionAbi.d.ts.map +0 -1
  595. package/dist/types/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +0 -213
  596. package/dist/types/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts.map +0 -1
  597. package/dist/types/kernel-zerodev/abis/Test_ERC20Abi.d.ts +0 -238
  598. package/dist/types/kernel-zerodev/abis/Test_ERC20Abi.d.ts.map +0 -1
  599. package/dist/types/kernel-zerodev/abis/Test_ERC721Abi.d.ts +0 -288
  600. package/dist/types/kernel-zerodev/abis/Test_ERC721Abi.d.ts.map +0 -1
  601. package/dist/types/kernel-zerodev/abis/TokenActionsAbi.d.ts.map +0 -1
  602. package/dist/types/kernel-zerodev/abis/WeightedValidatorAbi.d.ts +0 -376
  603. package/dist/types/kernel-zerodev/abis/WeightedValidatorAbi.d.ts.map +0 -1
  604. package/dist/types/kernel-zerodev/abis/index.d.ts +0 -9
  605. package/dist/types/kernel-zerodev/abis/index.d.ts.map +0 -1
  606. package/dist/types/kernel-zerodev/account.d.ts +0 -52
  607. package/dist/types/kernel-zerodev/account.d.ts.map +0 -1
  608. package/dist/types/kernel-zerodev/api/index.d.ts +0 -6
  609. package/dist/types/kernel-zerodev/api/index.d.ts.map +0 -1
  610. package/dist/types/kernel-zerodev/client/create-client.d.ts +0 -13
  611. package/dist/types/kernel-zerodev/client/create-client.d.ts.map +0 -1
  612. package/dist/types/kernel-zerodev/constants.d.ts +0 -32
  613. package/dist/types/kernel-zerodev/constants.d.ts.map +0 -1
  614. package/dist/types/kernel-zerodev/errors.d.ts +0 -6
  615. package/dist/types/kernel-zerodev/errors.d.ts.map +0 -1
  616. package/dist/types/kernel-zerodev/ethers-provider/account-signer.d.ts +0 -32
  617. package/dist/types/kernel-zerodev/ethers-provider/account-signer.d.ts.map +0 -1
  618. package/dist/types/kernel-zerodev/ethers-provider/ethers-provider.d.ts +0 -23
  619. package/dist/types/kernel-zerodev/ethers-provider/ethers-provider.d.ts.map +0 -1
  620. package/dist/types/kernel-zerodev/middleware/gas-estimator.d.ts +0 -25
  621. package/dist/types/kernel-zerodev/middleware/gas-estimator.d.ts.map +0 -1
  622. package/dist/types/kernel-zerodev/middleware/paymaster.d.ts +0 -6
  623. package/dist/types/kernel-zerodev/middleware/paymaster.d.ts.map +0 -1
  624. package/dist/types/kernel-zerodev/owner/getCustodialOwner.d.ts +0 -12
  625. package/dist/types/kernel-zerodev/owner/getCustodialOwner.d.ts.map +0 -1
  626. package/dist/types/kernel-zerodev/owner/getRPCProviderOwner.d.ts +0 -3
  627. package/dist/types/kernel-zerodev/owner/getRPCProviderOwner.d.ts.map +0 -1
  628. package/dist/types/kernel-zerodev/owner/index.d.ts +0 -3
  629. package/dist/types/kernel-zerodev/owner/index.d.ts.map +0 -1
  630. package/dist/types/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +0 -9
  631. package/dist/types/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts.map +0 -1
  632. package/dist/types/kernel-zerodev/owner/passkey/exceptions.d.ts +0 -4
  633. package/dist/types/kernel-zerodev/owner/passkey/exceptions.d.ts.map +0 -1
  634. package/dist/types/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts +0 -7
  635. package/dist/types/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts.map +0 -1
  636. package/dist/types/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +0 -8
  637. package/dist/types/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts.map +0 -1
  638. package/dist/types/kernel-zerodev/owner/passkey/index.d.ts +0 -5
  639. package/dist/types/kernel-zerodev/owner/passkey/index.d.ts.map +0 -1
  640. package/dist/types/kernel-zerodev/owner/passkey/types.d.ts +0 -13
  641. package/dist/types/kernel-zerodev/owner/passkey/types.d.ts.map +0 -1
  642. package/dist/types/kernel-zerodev/owner/passkey/utils.d.ts +0 -15
  643. package/dist/types/kernel-zerodev/owner/passkey/utils.d.ts.map +0 -1
  644. package/dist/types/kernel-zerodev/paymaster/base.d.ts +0 -19
  645. package/dist/types/kernel-zerodev/paymaster/base.d.ts.map +0 -1
  646. package/dist/types/kernel-zerodev/paymaster/index.d.ts +0 -4
  647. package/dist/types/kernel-zerodev/paymaster/index.d.ts.map +0 -1
  648. package/dist/types/kernel-zerodev/paymaster/token-paymaster.d.ts +0 -16
  649. package/dist/types/kernel-zerodev/paymaster/token-paymaster.d.ts.map +0 -1
  650. package/dist/types/kernel-zerodev/paymaster/types.d.ts +0 -30
  651. package/dist/types/kernel-zerodev/paymaster/types.d.ts.map +0 -1
  652. package/dist/types/kernel-zerodev/paymaster/verifying-paymaster.d.ts +0 -9
  653. package/dist/types/kernel-zerodev/paymaster/verifying-paymaster.d.ts.map +0 -1
  654. package/dist/types/kernel-zerodev/provider.d.ts +0 -58
  655. package/dist/types/kernel-zerodev/provider.d.ts.map +0 -1
  656. package/dist/types/kernel-zerodev/signer/empty-account.d.ts +0 -11
  657. package/dist/types/kernel-zerodev/signer/empty-account.d.ts.map +0 -1
  658. package/dist/types/kernel-zerodev/types.d.ts +0 -8
  659. package/dist/types/kernel-zerodev/types.d.ts.map +0 -1
  660. package/dist/types/kernel-zerodev/utils/ERC4337-utils.d.ts +0 -6
  661. package/dist/types/kernel-zerodev/utils/ERC4337-utils.d.ts.map +0 -1
  662. package/dist/types/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +0 -16
  663. package/dist/types/kernel-zerodev/utils/calc-pre-verification-gas.d.ts.map +0 -1
  664. package/dist/types/kernel-zerodev/utils/custom-chains.d.ts +0 -93
  665. package/dist/types/kernel-zerodev/utils/custom-chains.d.ts.map +0 -1
  666. package/dist/types/kernel-zerodev/utils.d.ts +0 -21
  667. package/dist/types/kernel-zerodev/utils.d.ts.map +0 -1
  668. package/dist/types/kernel-zerodev/validator/base.d.ts +0 -57
  669. package/dist/types/kernel-zerodev/validator/base.d.ts.map +0 -1
  670. package/dist/types/kernel-zerodev/validator/ecdsa-validator.d.ts +0 -21
  671. package/dist/types/kernel-zerodev/validator/ecdsa-validator.d.ts.map +0 -1
  672. package/dist/types/kernel-zerodev/validator/erc165-session-key-validator.d.ts +0 -30
  673. package/dist/types/kernel-zerodev/validator/erc165-session-key-validator.d.ts.map +0 -1
  674. package/dist/types/kernel-zerodev/validator/index.d.ts +0 -9
  675. package/dist/types/kernel-zerodev/validator/index.d.ts.map +0 -1
  676. package/dist/types/kernel-zerodev/validator/kill-switch-validator.d.ts +0 -23
  677. package/dist/types/kernel-zerodev/validator/kill-switch-validator.d.ts.map +0 -1
  678. package/dist/types/kernel-zerodev/validator/recovery-validator.d.ts +0 -59
  679. package/dist/types/kernel-zerodev/validator/recovery-validator.d.ts.map +0 -1
  680. package/dist/types/kernel-zerodev/validator/session-key-validator.d.ts +0 -85
  681. package/dist/types/kernel-zerodev/validator/session-key-validator.d.ts.map +0 -1
  682. package/dist/types/kernel-zerodev/validator/types.d.ts +0 -57
  683. package/dist/types/kernel-zerodev/validator/types.d.ts.map +0 -1
  684. package/dist/types/kernel-zerodev/validator-provider/base.d.ts +0 -30
  685. package/dist/types/kernel-zerodev/validator-provider/base.d.ts.map +0 -1
  686. package/dist/types/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +0 -9
  687. package/dist/types/kernel-zerodev/validator-provider/ecdsa-provider.d.ts.map +0 -1
  688. package/dist/types/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +0 -9
  689. package/dist/types/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts.map +0 -1
  690. package/dist/types/kernel-zerodev/validator-provider/index.d.ts +0 -9
  691. package/dist/types/kernel-zerodev/validator-provider/index.d.ts.map +0 -1
  692. package/dist/types/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +0 -9
  693. package/dist/types/kernel-zerodev/validator-provider/kill-switch-provider.d.ts.map +0 -1
  694. package/dist/types/kernel-zerodev/validator-provider/recovery-provider.d.ts +0 -29
  695. package/dist/types/kernel-zerodev/validator-provider/recovery-provider.d.ts.map +0 -1
  696. package/dist/types/kernel-zerodev/validator-provider/session-key-provider.d.ts +0 -19
  697. package/dist/types/kernel-zerodev/validator-provider/session-key-provider.d.ts.map +0 -1
  698. package/dist/types/kernel-zerodev/validator-provider/types.d.ts +0 -30
  699. package/dist/types/kernel-zerodev/validator-provider/types.d.ts.map +0 -1
  700. package/passkey/package.json +0 -5
  701. package/src/index.ts +0 -50
  702. package/src/kernel-zerodev/__tests__/config/index.ts +0 -19
  703. package/src/kernel-zerodev/__tests__/mocks/mock-signer.ts +0 -24
  704. package/src/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.ts +0 -211
  705. package/src/kernel-zerodev/abis/ERC20Abi.ts +0 -153
  706. package/src/kernel-zerodev/abis/ESCDAValidatorAbi.ts +0 -206
  707. package/src/kernel-zerodev/abis/KernelAccountAbi.ts +0 -691
  708. package/src/kernel-zerodev/abis/KernelFactoryAbi.ts +0 -380
  709. package/src/kernel-zerodev/abis/KillSwitchValidatorAbi.ts +0 -196
  710. package/src/kernel-zerodev/abis/MultiSendAbi.ts +0 -20
  711. package/src/kernel-zerodev/abis/RecoveryActionAbi.ts +0 -20
  712. package/src/kernel-zerodev/abis/SessionKeyValidatorAbi.ts +0 -277
  713. package/src/kernel-zerodev/abis/Test_ERC20Abi.ts +0 -157
  714. package/src/kernel-zerodev/abis/Test_ERC721Abi.ts +0 -373
  715. package/src/kernel-zerodev/abis/TokenActionsAbi.ts +0 -81
  716. package/src/kernel-zerodev/abis/WeightedValidatorAbi.ts +0 -268
  717. package/src/kernel-zerodev/abis/index.ts +0 -17
  718. package/src/kernel-zerodev/account.ts +0 -394
  719. package/src/kernel-zerodev/api/index.ts +0 -84
  720. package/src/kernel-zerodev/client/create-client.ts +0 -81
  721. package/src/kernel-zerodev/constants.ts +0 -121
  722. package/src/kernel-zerodev/errors.ts +0 -13
  723. package/src/kernel-zerodev/ethers-provider/account-signer.ts +0 -185
  724. package/src/kernel-zerodev/ethers-provider/ethers-provider.ts +0 -149
  725. package/src/kernel-zerodev/middleware/gas-estimator.ts +0 -219
  726. package/src/kernel-zerodev/middleware/paymaster.ts +0 -86
  727. package/src/kernel-zerodev/owner/getCustodialOwner.ts +0 -131
  728. package/src/kernel-zerodev/owner/getRPCProviderOwner.ts +0 -26
  729. package/src/kernel-zerodev/owner/index.ts +0 -2
  730. package/src/kernel-zerodev/owner/passkey/createPasskeyOwner.ts +0 -107
  731. package/src/kernel-zerodev/owner/passkey/exceptions.ts +0 -3
  732. package/src/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.ts +0 -81
  733. package/src/kernel-zerodev/owner/passkey/getPasskeyOwner.ts +0 -75
  734. package/src/kernel-zerodev/owner/passkey/index.ts +0 -4
  735. package/src/kernel-zerodev/owner/passkey/types.ts +0 -18
  736. package/src/kernel-zerodev/owner/passkey/utils.ts +0 -174
  737. package/src/kernel-zerodev/paymaster/base.ts +0 -90
  738. package/src/kernel-zerodev/paymaster/index.ts +0 -9
  739. package/src/kernel-zerodev/paymaster/token-paymaster.ts +0 -251
  740. package/src/kernel-zerodev/paymaster/types.ts +0 -40
  741. package/src/kernel-zerodev/paymaster/verifying-paymaster.ts +0 -32
  742. package/src/kernel-zerodev/provider.ts +0 -485
  743. package/src/kernel-zerodev/signer/empty-account.ts +0 -27
  744. package/src/kernel-zerodev/types.ts +0 -8
  745. package/src/kernel-zerodev/utils/ERC4337-utils.ts +0 -161
  746. package/src/kernel-zerodev/utils/calc-pre-verification-gas.ts +0 -88
  747. package/src/kernel-zerodev/utils/custom-chains.ts +0 -83
  748. package/src/kernel-zerodev/utils.ts +0 -159
  749. package/src/kernel-zerodev/validator/base.ts +0 -321
  750. package/src/kernel-zerodev/validator/ecdsa-validator.ts +0 -122
  751. package/src/kernel-zerodev/validator/erc165-session-key-validator.ts +0 -151
  752. package/src/kernel-zerodev/validator/index.ts +0 -22
  753. package/src/kernel-zerodev/validator/kill-switch-validator.ts +0 -160
  754. package/src/kernel-zerodev/validator/recovery-validator.ts +0 -447
  755. package/src/kernel-zerodev/validator/session-key-validator.ts +0 -696
  756. package/src/kernel-zerodev/validator/types.ts +0 -129
  757. package/src/kernel-zerodev/validator-provider/base.ts +0 -178
  758. package/src/kernel-zerodev/validator-provider/ecdsa-provider.ts +0 -65
  759. package/src/kernel-zerodev/validator-provider/erc165-session-key-provider.ts +0 -72
  760. package/src/kernel-zerodev/validator-provider/index.ts +0 -22
  761. package/src/kernel-zerodev/validator-provider/kill-switch-provider.ts +0 -72
  762. package/src/kernel-zerodev/validator-provider/recovery-provider.ts +0 -400
  763. package/src/kernel-zerodev/validator-provider/session-key-provider.ts +0 -151
  764. package/src/kernel-zerodev/validator-provider/types.ts +0 -42
  765. /package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelFactoryAbi.d.ts +0 -0
  766. /package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/TokenActionsAbi.d.ts +0 -0
@@ -1,44 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getPasskeyOwner = void 0;
7
- const webauthn_1 = require("@turnkey/http/dist/webauthn");
8
- const axios_1 = __importDefault(require("axios"));
9
- const utils_js_1 = require("./utils.js");
10
- const constants_js_1 = require("../../constants.js");
11
- async function getPasskeyOwner({ projectId, name, apiUrl = constants_js_1.API_URL, withCredentials = false, }) {
12
- if (typeof window !== "undefined") {
13
- const challenge = (0, utils_js_1.generateRandomBuffer)();
14
- try {
15
- (0, utils_js_1.abortWebauthn)();
16
- const assertion = JSON.parse(await (0, webauthn_1.getWebAuthnAssertion)((0, utils_js_1.base64UrlEncode)(challenge), {
17
- publicKey: {
18
- rpId: window.location.hostname,
19
- userVerification: "required",
20
- allowCredentials: withCredentials
21
- ? await (0, utils_js_1.getCredentials)(projectId, name)
22
- : undefined,
23
- },
24
- }));
25
- const response = await axios_1.default.post(`${apiUrl}/projects/${projectId}/wallets/${assertion.credentialId}`, {
26
- challenge: (0, utils_js_1.base64UrlEncode)(challenge),
27
- assertion,
28
- });
29
- const { id, walletId, address } = await response.data;
30
- const owner = {
31
- getAddress: async () => address,
32
- signMessage: (msg) => (0, utils_js_1.signMessage)(msg, id, walletId, projectId, assertion.credentialId, apiUrl),
33
- signTypedData: (params) => (0, utils_js_1.signTypedData)(params, id, walletId, projectId, assertion.credentialId, apiUrl),
34
- };
35
- return owner;
36
- }
37
- catch (e) {
38
- console.log(e);
39
- }
40
- }
41
- return;
42
- }
43
- exports.getPasskeyOwner = getPasskeyOwner;
44
- //# sourceMappingURL=getPasskeyOwner.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getPasskeyOwner.js","sourceRoot":"","sources":["../../../../../src/kernel-zerodev/owner/passkey/getPasskeyOwner.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAmE;AACnE,kDAA0B;AAE1B,yCAOoB;AACpB,qDAA6C;AAEtC,KAAK,UAAU,eAAe,CAAC,EACpC,SAAS,EACT,IAAI,EACJ,MAAM,GAAG,sBAAO,EAChB,eAAe,GAAG,KAAK,GAMxB;IACC,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,MAAM,SAAS,GAAG,IAAA,+BAAoB,GAAE,CAAC;QACzC,IAAI;YACF,IAAA,wBAAa,GAAE,CAAC;YAChB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAC1B,MAAM,IAAA,+BAAoB,EAAC,IAAA,0BAAe,EAAC,SAAS,CAAC,EAAE;gBACrD,SAAS,EAAE;oBACT,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ;oBAC9B,gBAAgB,EAAE,UAAU;oBAC5B,gBAAgB,EAAE,eAAe;wBAC/B,CAAC,CAAC,MAAM,IAAA,yBAAc,EAAC,SAAS,EAAE,IAAI,CAAC;wBACvC,CAAC,CAAC,SAAS;iBACd;aACF,CAAC,CACH,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,IAAI,CAC/B,GAAG,MAAM,aAAa,SAAS,YAAY,SAAS,CAAC,YAAY,EAAE,EACnE;gBACE,SAAS,EAAE,IAAA,0BAAe,EAAC,SAAS,CAAC;gBACrC,SAAS;aACV,CACF,CAAC;YACF,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC;YACtD,MAAM,KAAK,GAAuB;gBAChC,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO;gBAC/B,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CACnB,IAAA,sBAAW,EACT,GAAG,EACH,EAAE,EACF,QAAQ,EACR,SAAS,EACT,SAAS,CAAC,YAAY,EACtB,MAAM,CACP;gBACH,aAAa,EAAE,CAAC,MAA2B,EAAE,EAAE,CAC7C,IAAA,wBAAa,EACX,MAAM,EACN,EAAE,EACF,QAAQ,EACR,SAAS,EACT,SAAS,CAAC,YAAY,EACtB,MAAM,CACP;aACJ,CAAC;YACF,OAAO,KAAK,CAAC;SACd;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAChB;KACF;IACD,OAAO;AACT,CAAC;AA7DD,0CA6DC","sourcesContent":["import { getWebAuthnAssertion } from \"@turnkey/http/dist/webauthn\";\nimport axios from \"axios\";\nimport type { SignTypedDataParams, SmartAccountSigner } from \"@alchemy/aa-core\";\nimport {\n abortWebauthn,\n base64UrlEncode,\n generateRandomBuffer,\n getCredentials,\n signMessage,\n signTypedData,\n} from \"./utils.js\";\nimport { API_URL } from \"../../constants.js\";\n\nexport async function getPasskeyOwner({\n projectId,\n name,\n apiUrl = API_URL,\n withCredentials = false,\n}: {\n projectId: string;\n name?: string;\n apiUrl?: string;\n withCredentials?: boolean;\n}): Promise<SmartAccountSigner | undefined> {\n if (typeof window !== \"undefined\") {\n const challenge = generateRandomBuffer();\n try {\n abortWebauthn();\n const assertion = JSON.parse(\n await getWebAuthnAssertion(base64UrlEncode(challenge), {\n publicKey: {\n rpId: window.location.hostname,\n userVerification: \"required\",\n allowCredentials: withCredentials\n ? await getCredentials(projectId, name)\n : undefined,\n },\n })\n );\n const response = await axios.post(\n `${apiUrl}/projects/${projectId}/wallets/${assertion.credentialId}`,\n {\n challenge: base64UrlEncode(challenge),\n assertion,\n }\n );\n const { id, walletId, address } = await response.data;\n const owner: SmartAccountSigner = {\n getAddress: async () => address,\n signMessage: (msg) =>\n signMessage(\n msg,\n id,\n walletId,\n projectId,\n assertion.credentialId,\n apiUrl\n ),\n signTypedData: (params: SignTypedDataParams) =>\n signTypedData(\n params,\n id,\n walletId,\n projectId,\n assertion.credentialId,\n apiUrl\n ),\n };\n return owner;\n } catch (e) {\n console.log(e);\n }\n }\n return;\n}\n"]}
@@ -1,4 +0,0 @@
1
- export { abortWebauthn } from "./utils.js";
2
- export { getPasskeyOwner } from "./getPasskeyOwner.js";
3
- export { createPasskeyOwner } from "./createPasskeyOwner.js";
4
- export { getAutocompletePasskeyOwner } from "./getAutocompletePasskeyOwner.js";
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getAutocompletePasskeyOwner = exports.createPasskeyOwner = exports.getPasskeyOwner = exports.abortWebauthn = void 0;
4
- var utils_js_1 = require("./utils.js");
5
- Object.defineProperty(exports, "abortWebauthn", { enumerable: true, get: function () { return utils_js_1.abortWebauthn; } });
6
- var getPasskeyOwner_js_1 = require("./getPasskeyOwner.js");
7
- Object.defineProperty(exports, "getPasskeyOwner", { enumerable: true, get: function () { return getPasskeyOwner_js_1.getPasskeyOwner; } });
8
- var createPasskeyOwner_js_1 = require("./createPasskeyOwner.js");
9
- Object.defineProperty(exports, "createPasskeyOwner", { enumerable: true, get: function () { return createPasskeyOwner_js_1.createPasskeyOwner; } });
10
- var getAutocompletePasskeyOwner_js_1 = require("./getAutocompletePasskeyOwner.js");
11
- Object.defineProperty(exports, "getAutocompletePasskeyOwner", { enumerable: true, get: function () { return getAutocompletePasskeyOwner_js_1.getAutocompletePasskeyOwner; } });
12
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/kernel-zerodev/owner/passkey/index.ts"],"names":[],"mappings":";;;AAAA,uCAA2C;AAAlC,yGAAA,aAAa,OAAA;AACtB,2DAAuD;AAA9C,qHAAA,eAAe,OAAA;AACxB,iEAA6D;AAApD,2HAAA,kBAAkB,OAAA;AAC3B,mFAA+E;AAAtE,6IAAA,2BAA2B,OAAA","sourcesContent":["export { abortWebauthn } from \"./utils.js\";\nexport { getPasskeyOwner } from \"./getPasskeyOwner.js\";\nexport { createPasskeyOwner } from \"./createPasskeyOwner.js\";\nexport { getAutocompletePasskeyOwner } from \"./getAutocompletePasskeyOwner.js\";\n"]}
@@ -1,12 +0,0 @@
1
- export type ByteArray = Uint8Array;
2
- export type Hex = `0x${string}`;
3
- export type Hash = `0x${string}`;
4
- export type LogTopic = Hex | Hex[] | null;
5
- export type SignableMessage = string | {
6
- raw: Hex | ByteArray;
7
- };
8
- export type Signature = {
9
- r: Hex;
10
- s: Hex;
11
- v: bigint;
12
- };
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/kernel-zerodev/owner/passkey/types.ts"],"names":[],"mappings":"","sourcesContent":["export type ByteArray = Uint8Array;\nexport type Hex = `0x${string}`;\nexport type Hash = `0x${string}`;\nexport type LogTopic = Hex | Hex[] | null;\nexport type SignableMessage =\n | string\n | {\n /** Raw data representation of the message. */\n raw: Hex | ByteArray;\n };\nexport type Signature = {\n // TODO(v2): Make `bigint`\n r: Hex;\n // TODO(v2): Make `bigint`\n s: Hex;\n // TODO(v2): `v` to `recovery`\n v: bigint;\n};\n"]}
@@ -1,14 +0,0 @@
1
- import type { SignTypedDataParams } from "@alchemy/aa-core";
2
- export declare const abortController: {
3
- controller: AbortController;
4
- };
5
- export declare function abortWebauthn(): void;
6
- export declare const publicKey = "public-key";
7
- export declare const es256 = -7;
8
- export declare const generateRandomBuffer: () => ArrayBuffer;
9
- export declare const base64UrlEncode: (challenge: ArrayBuffer) => string;
10
- export declare const signMessageImplementation: (msg: string, id: string, walletId: string, projectId: string, credentialId: string, apiUrl?: string) => Promise<`0x${string}`>;
11
- export declare const signMessage: (msg: string | Uint8Array, id: string, walletId: string, projectId: string, credentialId: string, apiUrl?: string) => Promise<`0x${string}`>;
12
- export declare const signTypedData: (params: SignTypedDataParams, id: string, walletId: string, projectId: string, credentialId: string, apiUrl?: string) => Promise<`0x${string}`>;
13
- export declare const getCredentials: (projectId: string, name?: string, apiUrl?: string) => Promise<any>;
14
- export declare function base64URLStringToBuffer(base64URLString: string): ArrayBuffer;
@@ -1,114 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.base64URLStringToBuffer = exports.getCredentials = exports.signTypedData = exports.signMessage = exports.signMessageImplementation = exports.base64UrlEncode = exports.generateRandomBuffer = exports.es256 = exports.publicKey = exports.abortWebauthn = exports.abortController = void 0;
7
- const http_1 = require("@turnkey/http");
8
- const axios_1 = __importDefault(require("axios"));
9
- const constants_js_1 = require("../../constants.js");
10
- const viem_1 = require("viem");
11
- (0, http_1.browserInit)({
12
- baseUrl: "https://api.turnkey.com",
13
- });
14
- exports.abortController = {
15
- controller: new AbortController(),
16
- };
17
- function abortWebauthn() {
18
- exports.abortController.controller.abort("ZeroDev: Reset previous Webauthn request");
19
- exports.abortController.controller = new AbortController();
20
- }
21
- exports.abortWebauthn = abortWebauthn;
22
- exports.publicKey = "public-key";
23
- exports.es256 = -7;
24
- const generateRandomBuffer = () => {
25
- const arr = new Uint8Array(32);
26
- crypto.getRandomValues(arr);
27
- return arr.buffer;
28
- };
29
- exports.generateRandomBuffer = generateRandomBuffer;
30
- const base64UrlEncode = (challenge) => {
31
- return Buffer.from(challenge)
32
- .toString("base64")
33
- .replace(/\+/g, "-")
34
- .replace(/\//g, "_")
35
- .replace(/=/g, "");
36
- };
37
- exports.base64UrlEncode = base64UrlEncode;
38
- const signMessageImplementation = async (msg, id, walletId, projectId, credentialId, apiUrl = constants_js_1.API_URL) => {
39
- abortWebauthn();
40
- const signedRequest = await http_1.TurnkeyApi.signSignRawPayload({
41
- body: {
42
- type: "ACTIVITY_TYPE_SIGN_RAW_PAYLOAD",
43
- organizationId: id,
44
- parameters: {
45
- privateKeyId: walletId,
46
- payload: msg,
47
- encoding: "PAYLOAD_ENCODING_HEXADECIMAL",
48
- hashFunction: "HASH_FUNCTION_NO_OP",
49
- },
50
- timestampMs: String(Date.now()),
51
- },
52
- }, {
53
- publicKey: {
54
- allowCredentials: [
55
- {
56
- id: base64URLStringToBuffer(credentialId),
57
- type: exports.publicKey,
58
- },
59
- ],
60
- },
61
- });
62
- const proxyResponse = await axios_1.default.post(`${apiUrl}/projects/${projectId}/wallets/proxy`, {
63
- signedRequest,
64
- });
65
- const { activity } = await proxyResponse.data;
66
- if (activity.status === "ACTIVITY_STATUS_COMPLETED") {
67
- let result = activity?.result?.signRawPayloadResult;
68
- if (result) {
69
- const signatureHex = (0, viem_1.signatureToHex)({
70
- r: `0x${result.r}`,
71
- s: `0x${result.s}`,
72
- v: result.v === "00" ? 27n : 28n,
73
- });
74
- if (signatureHex) {
75
- return signatureHex;
76
- }
77
- }
78
- }
79
- return "0x";
80
- };
81
- exports.signMessageImplementation = signMessageImplementation;
82
- const signMessage = async (msg, id, walletId, projectId, credentialId, apiUrl = constants_js_1.API_URL) => {
83
- return await (0, exports.signMessageImplementation)((0, viem_1.hashMessage)(typeof msg === "string" ? msg : { raw: msg }), id, walletId, projectId, credentialId, apiUrl);
84
- };
85
- exports.signMessage = signMessage;
86
- const signTypedData = async (params, id, walletId, projectId, credentialId, apiUrl = constants_js_1.API_URL) => {
87
- const hashToSign = (0, viem_1.hashTypedData)(params);
88
- return await (0, exports.signMessageImplementation)(hashToSign, id, walletId, projectId, credentialId, apiUrl);
89
- };
90
- exports.signTypedData = signTypedData;
91
- const getCredentials = async (projectId, name, apiUrl = constants_js_1.API_URL) => {
92
- const url = `${apiUrl}/projects/${projectId}/wallets` + (name ? `/${name}` : "");
93
- const response = await axios_1.default.get(url);
94
- const credentials = response.data;
95
- return credentials.map((credential) => ({
96
- id: base64URLStringToBuffer(credential),
97
- type: "public-key",
98
- }));
99
- };
100
- exports.getCredentials = getCredentials;
101
- function base64URLStringToBuffer(base64URLString) {
102
- const base64 = base64URLString.replace(/-/g, "+").replace(/_/g, "/");
103
- const padLength = (4 - (base64.length % 4)) % 4;
104
- const padded = base64.padEnd(base64.length + padLength, "=");
105
- const binary = atob(padded);
106
- const buffer = new ArrayBuffer(binary.length);
107
- const bytes = new Uint8Array(buffer);
108
- for (let i = 0; i < binary.length; i++) {
109
- bytes[i] = binary.charCodeAt(i);
110
- }
111
- return buffer;
112
- }
113
- exports.base64URLStringToBuffer = base64URLStringToBuffer;
114
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/kernel-zerodev/owner/passkey/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { browserInit, TurnkeyApi } from \"@turnkey/http\";\nimport axios from \"axios\";\nimport { API_URL } from \"../../constants.js\";\nimport type { SignTypedDataParams } from \"@alchemy/aa-core\";\nimport { hashTypedData, signatureToHex, hashMessage } from \"viem\";\n\nbrowserInit({\n baseUrl: \"https://api.turnkey.com\",\n});\n\nexport const abortController = {\n controller: new AbortController(),\n};\n\nexport function abortWebauthn() {\n abortController.controller.abort(\"ZeroDev: Reset previous Webauthn request\");\n abortController.controller = new AbortController();\n}\n\nexport const publicKey = \"public-key\";\n\nexport const es256 = -7;\n\nexport const generateRandomBuffer = (): ArrayBuffer => {\n const arr = new Uint8Array(32);\n crypto.getRandomValues(arr);\n return arr.buffer;\n};\n\nexport const base64UrlEncode = (challenge: ArrayBuffer): string => {\n return Buffer.from(challenge)\n .toString(\"base64\")\n .replace(/\\+/g, \"-\")\n .replace(/\\//g, \"_\")\n .replace(/=/g, \"\");\n};\n\nexport const signMessageImplementation = async (\n msg: string,\n id: string,\n walletId: string,\n projectId: string,\n credentialId: string,\n apiUrl = API_URL\n) => {\n abortWebauthn();\n const signedRequest = await TurnkeyApi.signSignRawPayload(\n {\n body: {\n type: \"ACTIVITY_TYPE_SIGN_RAW_PAYLOAD\",\n organizationId: id,\n parameters: {\n privateKeyId: walletId,\n payload: msg,\n encoding: \"PAYLOAD_ENCODING_HEXADECIMAL\",\n hashFunction: \"HASH_FUNCTION_NO_OP\",\n },\n timestampMs: String(Date.now()),\n },\n },\n {\n publicKey: {\n allowCredentials: [\n {\n id: base64URLStringToBuffer(credentialId),\n type: publicKey,\n },\n ],\n },\n }\n );\n const proxyResponse = await axios.post(\n `${apiUrl}/projects/${projectId}/wallets/proxy`,\n {\n signedRequest,\n }\n );\n const { activity } = await proxyResponse.data;\n if (activity.status === \"ACTIVITY_STATUS_COMPLETED\") {\n let result = activity?.result?.signRawPayloadResult;\n\n if (result) {\n const signatureHex = signatureToHex({\n r: `0x${result.r}`,\n s: `0x${result.s}`,\n v: result.v === \"00\" ? 27n : 28n,\n });\n if (signatureHex) {\n return signatureHex;\n }\n }\n }\n return \"0x\";\n};\n\nexport const signMessage = async (\n msg: string | Uint8Array,\n id: string,\n walletId: string,\n projectId: string,\n credentialId: string,\n apiUrl = API_URL\n) => {\n return await signMessageImplementation(\n hashMessage(typeof msg === \"string\" ? msg : { raw: msg }),\n id,\n walletId,\n projectId,\n credentialId,\n apiUrl\n );\n};\n\nexport const signTypedData = async (\n params: SignTypedDataParams,\n id: string,\n walletId: string,\n projectId: string,\n credentialId: string,\n apiUrl = API_URL\n) => {\n const hashToSign = hashTypedData(params);\n return await signMessageImplementation(\n hashToSign,\n id,\n walletId,\n projectId,\n credentialId,\n apiUrl\n );\n};\n\nexport const getCredentials = async (\n projectId: string,\n name?: string,\n apiUrl = API_URL\n) => {\n const url =\n `${apiUrl}/projects/${projectId}/wallets` + (name ? `/${name}` : \"\");\n const response = await axios.get(url);\n const credentials = response.data;\n return credentials.map((credential: string) => ({\n id: base64URLStringToBuffer(credential),\n type: \"public-key\",\n }));\n};\n\n// https://github.com/MasterKale/SimpleWebAuthn/blob/master/packages/browser/src/helpers/base64URLStringToBuffer.ts#L8\nexport function base64URLStringToBuffer(base64URLString: string): ArrayBuffer {\n // Convert from Base64URL to Base64\n const base64 = base64URLString.replace(/-/g, \"+\").replace(/_/g, \"/\");\n /**\n * Pad with '=' until it's a multiple of four\n * (4 - (85 % 4 = 1) = 3) % 4 = 3 padding\n * (4 - (86 % 4 = 2) = 2) % 4 = 2 padding\n * (4 - (87 % 4 = 3) = 1) % 4 = 1 padding\n * (4 - (88 % 4 = 0) = 4) % 4 = 0 padding\n */\n const padLength = (4 - (base64.length % 4)) % 4;\n const padded = base64.padEnd(base64.length + padLength, \"=\");\n\n // Convert to a binary string\n const binary = atob(padded);\n\n // Convert binary string to buffer\n const buffer = new ArrayBuffer(binary.length);\n const bytes = new Uint8Array(buffer);\n\n for (let i = 0; i < binary.length; i++) {\n bytes[i] = binary.charCodeAt(i);\n }\n\n return buffer;\n}\n"]}
@@ -1,18 +0,0 @@
1
- import { type BytesLike, type PromiseOrValue, type UserOperationStruct } from "@alchemy/aa-core";
2
- import type { ZeroDevProvider } from "../provider.js";
3
- import type { PaymasterAndBundlerProviders } from "./types.js";
4
- export declare abstract class Paymaster {
5
- protected provider: ZeroDevProvider;
6
- constructor(provider: ZeroDevProvider);
7
- abstract getPaymasterResponse(struct: UserOperationStruct, paymasterProvider?: PaymasterAndBundlerProviders, shouldOverrideFee?: boolean, shouldConsume?: boolean): Promise<UserOperationStruct | undefined>;
8
- protected signUserOp({ userOp, callData, gasTokenAddress, erc20UserOp, erc20CallData, paymasterProvider, shouldOverrideFee, shouldConsume, }: {
9
- userOp: UserOperationStruct;
10
- callData?: PromiseOrValue<BytesLike>;
11
- gasTokenAddress?: string;
12
- erc20UserOp?: Partial<UserOperationStruct>;
13
- erc20CallData?: PromiseOrValue<BytesLike>;
14
- paymasterProvider?: PaymasterAndBundlerProviders;
15
- shouldOverrideFee?: boolean;
16
- shouldConsume?: boolean;
17
- }): Promise<any>;
18
- }
@@ -1,63 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Paymaster = void 0;
7
- const aa_core_1 = require("@alchemy/aa-core");
8
- const axios_1 = __importDefault(require("axios"));
9
- const constants_js_1 = require("../constants.js");
10
- const ERC4337_utils_js_1 = require("../utils/ERC4337-utils.js");
11
- const index_js_1 = require("../api/index.js");
12
- class Paymaster {
13
- constructor(provider) {
14
- Object.defineProperty(this, "provider", {
15
- enumerable: true,
16
- configurable: true,
17
- writable: true,
18
- value: provider
19
- });
20
- }
21
- async signUserOp({ userOp, callData, gasTokenAddress, erc20UserOp, erc20CallData, paymasterProvider, shouldOverrideFee = false, shouldConsume = true, }) {
22
- const hexifiedUserOp = (0, aa_core_1.deepHexlify)(await (0, aa_core_1.resolveProperties)(userOp));
23
- let resolvedERC20UserOp;
24
- let hexifiedERC20UserOp;
25
- if (erc20UserOp) {
26
- resolvedERC20UserOp = await (0, aa_core_1.resolveProperties)(erc20UserOp);
27
- hexifiedERC20UserOp = (0, ERC4337_utils_js_1.hexifyUserOp)(resolvedERC20UserOp);
28
- }
29
- const chainId = await (0, index_js_1.getChainId)(this.provider.getProjectId());
30
- if (!chainId)
31
- throw new Error("ChainId not found");
32
- let requestBodyParams = Object.fromEntries(Object.entries({
33
- projectId: this.provider.getProjectId(),
34
- chainId,
35
- userOp: hexifiedUserOp,
36
- entryPointAddress: constants_js_1.ENTRYPOINT_ADDRESS,
37
- callData: callData instanceof Promise ? await callData : callData,
38
- gasTokenData: gasTokenAddress && hexifiedERC20UserOp && erc20CallData
39
- ? {
40
- tokenAddress: gasTokenAddress,
41
- erc20UserOp: hexifiedERC20UserOp,
42
- erc20CallData: erc20CallData instanceof Promise
43
- ? await erc20CallData
44
- : erc20CallData,
45
- }
46
- : undefined,
47
- tokenAddress: gasTokenAddress,
48
- erc20UserOp: hexifiedERC20UserOp,
49
- erc20CallData: erc20CallData instanceof Promise
50
- ? await erc20CallData
51
- : erc20CallData,
52
- paymasterProvider,
53
- shouldOverrideFee,
54
- shouldConsume,
55
- }).filter(([_, value]) => value !== undefined));
56
- const { data: paymasterResp } = await axios_1.default.post(`${constants_js_1.PAYMASTER_URL}/getPaymasterAndData`, {
57
- ...requestBodyParams,
58
- }, { headers: { "Content-Type": "application/json" } });
59
- return paymasterResp;
60
- }
61
- }
62
- exports.Paymaster = Paymaster;
63
- //# sourceMappingURL=base.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/kernel-zerodev/paymaster/base.ts"],"names":[],"mappings":";;;;;;AAAA,8CAM0B;AAC1B,kDAA0B;AAC1B,kDAAoE;AAEpE,gEAAyD;AAEzD,8CAA6C;AAE7C,MAAsB,SAAS;IAC7B,YAAsB,QAAyB;QAAnC;;;;mBAAU,QAAQ;WAAiB;IAAG,CAAC;IAOzC,KAAK,CAAC,UAAU,CAAC,EACzB,MAAM,EACN,QAAQ,EACR,eAAe,EACf,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,iBAAiB,GAAG,KAAK,EACzB,aAAa,GAAG,IAAI,GAUrB;QACC,MAAM,cAAc,GAAG,IAAA,qBAAW,EAAC,MAAM,IAAA,2BAAiB,EAAC,MAAM,CAAC,CAAC,CAAC;QACpE,IAAI,mBAAmB,CAAC;QACxB,IAAI,mBAAwB,CAAC;QAC7B,IAAI,WAAW,EAAE;YACf,mBAAmB,GAAG,MAAM,IAAA,2BAAiB,EAAC,WAAW,CAAC,CAAC;YAE3D,mBAAmB,GAAG,IAAA,+BAAY,EAAC,mBAAmB,CAAC,CAAC;SACzD;QACD,MAAM,OAAO,GAAG,MAAM,IAAA,qBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACnD,IAAI,iBAAiB,GAAG,MAAM,CAAC,WAAW,CACxC,MAAM,CAAC,OAAO,CAAC;YACb,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;YACvC,OAAO;YACP,MAAM,EAAE,cAAc;YACtB,iBAAiB,EAAE,iCAAkB;YACrC,QAAQ,EAAE,QAAQ,YAAY,OAAO,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,QAAQ;YACjE,YAAY,EACV,eAAe,IAAI,mBAAmB,IAAI,aAAa;gBACrD,CAAC,CAAC;oBACE,YAAY,EAAE,eAAe;oBAC7B,WAAW,EAAE,mBAAmB;oBAChC,aAAa,EACX,aAAa,YAAY,OAAO;wBAC9B,CAAC,CAAC,MAAM,aAAa;wBACrB,CAAC,CAAC,aAAa;iBACpB;gBACH,CAAC,CAAC,SAAS;YACf,YAAY,EAAE,eAAe;YAC7B,WAAW,EAAE,mBAAmB;YAChC,aAAa,EACX,aAAa,YAAY,OAAO;gBAC9B,CAAC,CAAC,MAAM,aAAa;gBACrB,CAAC,CAAC,aAAa;YACnB,iBAAiB;YACjB,iBAAiB;YACjB,aAAa;SACd,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAC/C,CAAC;QACF,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,MAAM,eAAK,CAAC,IAAI,CAC9C,GAAG,4BAAa,sBAAsB,EACtC;YACE,GAAG,iBAAiB;SACrB,EACD,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,CACpD,CAAC;QACF,OAAO,aAAa,CAAC;IACvB,CAAC;CACF;AA3ED,8BA2EC","sourcesContent":["import {\n deepHexlify,\n type BytesLike,\n type PromiseOrValue,\n type UserOperationStruct,\n resolveProperties,\n} from \"@alchemy/aa-core\";\nimport axios from \"axios\";\nimport { ENTRYPOINT_ADDRESS, PAYMASTER_URL } from \"../constants.js\";\nimport type { ZeroDevProvider } from \"../provider.js\";\nimport { hexifyUserOp } from \"../utils/ERC4337-utils.js\";\nimport type { PaymasterAndBundlerProviders } from \"./types.js\";\nimport { getChainId } from \"../api/index.js\";\n\nexport abstract class Paymaster {\n constructor(protected provider: ZeroDevProvider) {}\n abstract getPaymasterResponse(\n struct: UserOperationStruct,\n paymasterProvider?: PaymasterAndBundlerProviders,\n shouldOverrideFee?: boolean,\n shouldConsume?: boolean\n ): Promise<UserOperationStruct | undefined>;\n protected async signUserOp({\n userOp,\n callData,\n gasTokenAddress,\n erc20UserOp,\n erc20CallData,\n paymasterProvider,\n shouldOverrideFee = false,\n shouldConsume = true,\n }: {\n userOp: UserOperationStruct;\n callData?: PromiseOrValue<BytesLike>;\n gasTokenAddress?: string;\n erc20UserOp?: Partial<UserOperationStruct>;\n erc20CallData?: PromiseOrValue<BytesLike>;\n paymasterProvider?: PaymasterAndBundlerProviders;\n shouldOverrideFee?: boolean;\n shouldConsume?: boolean;\n }): Promise<any> {\n const hexifiedUserOp = deepHexlify(await resolveProperties(userOp));\n let resolvedERC20UserOp;\n let hexifiedERC20UserOp: any;\n if (erc20UserOp) {\n resolvedERC20UserOp = await resolveProperties(erc20UserOp);\n\n hexifiedERC20UserOp = hexifyUserOp(resolvedERC20UserOp);\n }\n const chainId = await getChainId(this.provider.getProjectId());\n if (!chainId) throw new Error(\"ChainId not found\");\n let requestBodyParams = Object.fromEntries(\n Object.entries({\n projectId: this.provider.getProjectId(),\n chainId,\n userOp: hexifiedUserOp,\n entryPointAddress: ENTRYPOINT_ADDRESS,\n callData: callData instanceof Promise ? await callData : callData,\n gasTokenData:\n gasTokenAddress && hexifiedERC20UserOp && erc20CallData\n ? {\n tokenAddress: gasTokenAddress,\n erc20UserOp: hexifiedERC20UserOp,\n erc20CallData:\n erc20CallData instanceof Promise\n ? await erc20CallData\n : erc20CallData,\n }\n : undefined,\n tokenAddress: gasTokenAddress,\n erc20UserOp: hexifiedERC20UserOp,\n erc20CallData:\n erc20CallData instanceof Promise\n ? await erc20CallData\n : erc20CallData,\n paymasterProvider,\n shouldOverrideFee,\n shouldConsume,\n }).filter(([_, value]) => value !== undefined)\n );\n const { data: paymasterResp } = await axios.post(\n `${PAYMASTER_URL}/getPaymasterAndData`,\n {\n ...requestBodyParams,\n },\n { headers: { \"Content-Type\": \"application/json\" } }\n );\n return paymasterResp;\n }\n}\n"]}
@@ -1,3 +0,0 @@
1
- import type { PaymasterMap } from "./types.js";
2
- import type { ZeroDevProvider } from "../provider.js";
3
- export declare const Paymasters: PaymasterMap<ZeroDevProvider>;
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Paymasters = void 0;
4
- const token_paymaster_js_1 = require("./token-paymaster.js");
5
- const verifying_paymaster_js_1 = require("./verifying-paymaster.js");
6
- exports.Paymasters = {
7
- VERIFYING_PAYMASTER: verifying_paymaster_js_1.VerifyingPaymaster,
8
- TOKEN_PAYMASTER: token_paymaster_js_1.TokenPaymaster,
9
- };
10
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/kernel-zerodev/paymaster/index.ts"],"names":[],"mappings":";;;AAAA,6DAAsD;AAEtD,qEAA8D;AAGjD,QAAA,UAAU,GAAkC;IACvD,mBAAmB,EAAE,2CAAkB;IACvC,eAAe,EAAE,mCAAc;CAChC,CAAC","sourcesContent":["import { TokenPaymaster } from \"./token-paymaster.js\";\nimport type { PaymasterMap } from \"./types.js\";\nimport { VerifyingPaymaster } from \"./verifying-paymaster.js\";\nimport type { ZeroDevProvider } from \"../provider.js\";\n\nexport const Paymasters: PaymasterMap<ZeroDevProvider> = {\n VERIFYING_PAYMASTER: VerifyingPaymaster,\n TOKEN_PAYMASTER: TokenPaymaster,\n};\n"]}
@@ -1,15 +0,0 @@
1
- import { type PromiseOrValue, type BytesLike, type UserOperationCallData, type UserOperationStruct, type BatchUserOperationCallData } from "@alchemy/aa-core";
2
- import { type Hex } from "viem";
3
- import type { ZeroDevProvider } from "../provider.js";
4
- import { type UserOperationCallDataWithDelegate } from "../utils.js";
5
- import { Paymaster } from "./base.js";
6
- import { type PaymasterAndBundlerProviders, type PaymasterConfig } from "./types.js";
7
- export declare function isBatchUserOperationCallData(data: any): data is BatchUserOperationCallData;
8
- export declare class TokenPaymaster extends Paymaster {
9
- protected paymasterConfig: PaymasterConfig<"TOKEN_PAYMASTER">;
10
- constructor(provider: ZeroDevProvider, paymasterConfig: PaymasterConfig<"TOKEN_PAYMASTER">);
11
- getPaymasterAddress(paymasterProvider?: PaymasterAndBundlerProviders): Promise<Hex | undefined>;
12
- decodeMainCallFromCallData(kernelAddress: PromiseOrValue<string>, callData: PromiseOrValue<BytesLike>): Promise<UserOperationCallData | BatchUserOperationCallData | UserOperationCallDataWithDelegate | undefined>;
13
- getERC20UserOp<T extends UserOperationCallData | BatchUserOperationCallData>(struct: UserOperationStruct, mainCall: T, gasTokenAddress: Hex, paymasterAddress: Hex): Promise<UserOperationStruct | undefined>;
14
- getPaymasterResponse(struct: UserOperationStruct, paymasterProvider?: PaymasterAndBundlerProviders, shouldOverrideFee?: boolean, shouldConsume?: boolean): Promise<UserOperationStruct | undefined>;
15
- }
@@ -1,188 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.TokenPaymaster = exports.isBatchUserOperationCallData = void 0;
7
- const axios_1 = __importDefault(require("axios"));
8
- const viem_1 = require("viem");
9
- const ERC20Abi_js_1 = require("../abis/ERC20Abi.js");
10
- const KernelAccountAbi_js_1 = require("../abis/KernelAccountAbi.js");
11
- const constants_js_1 = require("../constants.js");
12
- const errors_js_1 = require("../errors.js");
13
- const utils_js_1 = require("../utils.js");
14
- const base_js_1 = require("./base.js");
15
- const index_js_1 = require("../api/index.js");
16
- const MultiSendAbi_js_1 = require("../abis/MultiSendAbi.js");
17
- function isBatchUserOperationCallData(data) {
18
- return data && Array.isArray(data);
19
- }
20
- exports.isBatchUserOperationCallData = isBatchUserOperationCallData;
21
- class TokenPaymaster extends base_js_1.Paymaster {
22
- constructor(provider, paymasterConfig) {
23
- super(provider);
24
- Object.defineProperty(this, "paymasterConfig", {
25
- enumerable: true,
26
- configurable: true,
27
- writable: true,
28
- value: paymasterConfig
29
- });
30
- }
31
- async getPaymasterAddress(paymasterProvider) {
32
- const chainId = await (0, index_js_1.getChainId)(this.provider.getProjectId());
33
- try {
34
- const { data: paymasterResp } = await axios_1.default.post(`${constants_js_1.PAYMASTER_URL}/getPaymasterAddress`, {
35
- chainId,
36
- entryPointAddress: constants_js_1.ENTRYPOINT_ADDRESS,
37
- paymasterProvider,
38
- }, { headers: { "Content-Type": "application/json" } });
39
- return paymasterResp;
40
- }
41
- catch (e) {
42
- console.log(e);
43
- return undefined;
44
- }
45
- }
46
- async decodeMainCallFromCallData(kernelAddress, callData) {
47
- let data = "0x";
48
- if (callData instanceof Promise) {
49
- const _data = await callData;
50
- if (_data instanceof Uint8Array) {
51
- data = (0, viem_1.toHex)(_data);
52
- }
53
- else {
54
- data = _data;
55
- }
56
- }
57
- else if (callData instanceof Uint8Array) {
58
- data = (0, viem_1.toHex)(callData);
59
- }
60
- else {
61
- data = callData;
62
- }
63
- try {
64
- const { functionName, args } = (0, viem_1.decodeFunctionData)({
65
- abi: KernelAccountAbi_js_1.KernelAccountAbi,
66
- data: data,
67
- });
68
- if (functionName === "execute") {
69
- const [target, value, data] = args;
70
- let msFuntionName;
71
- try {
72
- ({ functionName: msFuntionName } = (0, viem_1.decodeFunctionData)({
73
- abi: MultiSendAbi_js_1.MultiSendAbi,
74
- data,
75
- }));
76
- }
77
- catch (error) { }
78
- let mainCall = {
79
- target,
80
- value: value ?? 0n,
81
- data,
82
- };
83
- if (msFuntionName === "multiSend") {
84
- mainCall = {
85
- ...mainCall,
86
- target: constants_js_1.MULTISEND_ADDR,
87
- delegateCall: true,
88
- data,
89
- };
90
- }
91
- return mainCall;
92
- }
93
- else if (functionName === "executeBatch") {
94
- const [txs] = args;
95
- return txs.map((tx) => ({
96
- target: tx.to,
97
- value: tx.value ?? 0n,
98
- data: tx.data,
99
- }));
100
- }
101
- }
102
- catch (error) {
103
- return {
104
- target: (kernelAddress instanceof Promise
105
- ? await kernelAddress
106
- : kernelAddress),
107
- data,
108
- value: 0n,
109
- delegateCall: true,
110
- };
111
- }
112
- return;
113
- }
114
- async getERC20UserOp(struct, mainCall, gasTokenAddress, paymasterAddress) {
115
- try {
116
- const approveData = {
117
- target: gasTokenAddress,
118
- value: BigInt(0),
119
- data: (0, viem_1.encodeFunctionData)({
120
- abi: ERC20Abi_js_1.ERC20Abi,
121
- functionName: "approve",
122
- args: [paymasterAddress, constants_js_1.ERC20_APPROVAL_AMOUNT[gasTokenAddress]],
123
- }),
124
- };
125
- if (!this.provider.account) {
126
- throw errors_js_1.AccountNotConnected;
127
- }
128
- let calls;
129
- if (isBatchUserOperationCallData(mainCall)) {
130
- calls = [approveData, ...mainCall];
131
- }
132
- else {
133
- calls = [approveData, mainCall];
134
- }
135
- const erc20CallData = await this.provider.account.encodeBatchExecute(calls);
136
- return {
137
- ...struct,
138
- callData: erc20CallData,
139
- callGasLimit: await this.provider.rpcClient.estimateGas({
140
- account: constants_js_1.ENTRYPOINT_ADDRESS,
141
- to: await this.provider.getAddress(),
142
- data: erc20CallData,
143
- }),
144
- signature: await this.provider
145
- .getAccount()
146
- .getValidator()
147
- .getDynamicDummySignature((await struct.sender), erc20CallData),
148
- };
149
- }
150
- catch (error) {
151
- return;
152
- }
153
- }
154
- async getPaymasterResponse(struct, paymasterProvider, shouldOverrideFee, shouldConsume) {
155
- const mainCall = await this.decodeMainCallFromCallData(struct.sender, struct.callData);
156
- if (!mainCall) {
157
- throw errors_js_1.IncorrectCallDataForTokenPaymaster;
158
- }
159
- const chainId = await (0, index_js_1.getChainId)(this.provider.getProjectId());
160
- if (!chainId) {
161
- throw new Error("ChainId not found");
162
- }
163
- const gasTokenAddress = (0, utils_js_1.getGasTokenAddress)(this.paymasterConfig.gasToken, chainId);
164
- let paymasterAddress = await this.getPaymasterAddress(paymasterProvider);
165
- if (gasTokenAddress !== undefined &&
166
- paymasterAddress !== undefined &&
167
- (0, viem_1.isAddress)(paymasterAddress)) {
168
- const erc20UserOp = await this.getERC20UserOp(struct, mainCall, gasTokenAddress, paymasterAddress);
169
- if (!erc20UserOp) {
170
- return;
171
- }
172
- const paymasterResp = await this.signUserOp({
173
- userOp: struct,
174
- callData: struct.callData,
175
- gasTokenAddress,
176
- erc20UserOp,
177
- erc20CallData: erc20UserOp.callData,
178
- paymasterProvider,
179
- shouldOverrideFee,
180
- shouldConsume,
181
- });
182
- return paymasterResp;
183
- }
184
- return;
185
- }
186
- }
187
- exports.TokenPaymaster = TokenPaymaster;
188
- //# sourceMappingURL=token-paymaster.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"token-paymaster.js","sourceRoot":"","sources":["../../../../src/kernel-zerodev/paymaster/token-paymaster.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n type PromiseOrValue,\n type BytesLike,\n type UserOperationCallData,\n type UserOperationStruct,\n type BatchUserOperationCallData,\n} from \"@alchemy/aa-core\";\nimport axios from \"axios\";\nimport {\n type Hex,\n toHex,\n decodeFunctionData,\n encodeFunctionData,\n isAddress,\n} from \"viem\";\nimport { ERC20Abi } from \"../abis/ERC20Abi.js\";\nimport { KernelAccountAbi } from \"../abis/KernelAccountAbi.js\";\nimport {\n PAYMASTER_URL,\n ENTRYPOINT_ADDRESS,\n ERC20_APPROVAL_AMOUNT,\n MULTISEND_ADDR,\n} from \"../constants.js\";\nimport {\n AccountNotConnected,\n IncorrectCallDataForTokenPaymaster,\n} from \"../errors.js\";\nimport type { ZeroDevProvider } from \"../provider.js\";\nimport {\n getGasTokenAddress,\n type UserOperationCallDataWithDelegate,\n} from \"../utils.js\";\nimport { Paymaster } from \"./base.js\";\nimport {\n type PaymasterAndBundlerProviders,\n type PaymasterConfig,\n} from \"./types.js\";\nimport { getChainId } from \"../api/index.js\";\nimport { MultiSendAbi } from \"../abis/MultiSendAbi.js\";\n\nexport function isBatchUserOperationCallData(\n data: any\n): data is BatchUserOperationCallData {\n return data && Array.isArray(data);\n}\nexport class TokenPaymaster extends Paymaster {\n constructor(\n provider: ZeroDevProvider,\n protected paymasterConfig: PaymasterConfig<\"TOKEN_PAYMASTER\">\n ) {\n super(provider);\n }\n async getPaymasterAddress(\n paymasterProvider?: PaymasterAndBundlerProviders\n ): Promise<Hex | undefined> {\n const chainId = await getChainId(this.provider.getProjectId());\n\n try {\n const { data: paymasterResp } = await axios.post(\n `${PAYMASTER_URL}/getPaymasterAddress`,\n {\n chainId,\n entryPointAddress: ENTRYPOINT_ADDRESS,\n paymasterProvider,\n },\n { headers: { \"Content-Type\": \"application/json\" } }\n );\n return paymasterResp as Hex;\n } catch (e) {\n console.log(e);\n return undefined;\n }\n }\n async decodeMainCallFromCallData(\n kernelAddress: PromiseOrValue<string>,\n callData: PromiseOrValue<BytesLike>\n ): Promise<\n | UserOperationCallData\n | BatchUserOperationCallData\n | UserOperationCallDataWithDelegate\n | undefined\n > {\n let data: Hex = \"0x\";\n if (callData instanceof Promise) {\n const _data = await callData;\n if (_data instanceof Uint8Array) {\n data = toHex(_data);\n } else {\n data = _data as Hex;\n }\n } else if (callData instanceof Uint8Array) {\n data = toHex(callData);\n } else {\n data = callData as Hex;\n }\n\n try {\n const { functionName, args } = decodeFunctionData({\n abi: KernelAccountAbi,\n data: data,\n });\n if (functionName === \"execute\") {\n const [target, value, data] = args;\n let msFuntionName;\n try {\n ({ functionName: msFuntionName } = decodeFunctionData({\n abi: MultiSendAbi,\n data,\n }));\n } catch (error) {}\n let mainCall:\n | UserOperationCallData\n | UserOperationCallDataWithDelegate = {\n target,\n value: value ?? 0n,\n data,\n };\n if (msFuntionName === \"multiSend\") {\n mainCall = {\n ...mainCall,\n target: MULTISEND_ADDR,\n delegateCall: true,\n data,\n };\n }\n return mainCall;\n } else if (functionName === \"executeBatch\") {\n const [txs] = args;\n return txs.map((tx) => ({\n target: tx.to,\n value: tx.value ?? 0n,\n data: tx.data,\n }));\n }\n } catch (error) {\n return {\n target: (kernelAddress instanceof Promise\n ? await kernelAddress\n : kernelAddress) as Hex,\n data,\n value: 0n,\n delegateCall: true,\n };\n }\n return;\n }\n\n async getERC20UserOp<\n T extends UserOperationCallData | BatchUserOperationCallData\n >(\n struct: UserOperationStruct,\n mainCall: T,\n gasTokenAddress: Hex,\n paymasterAddress: Hex\n ): Promise<UserOperationStruct | undefined> {\n try {\n const approveData: UserOperationCallData = {\n target: gasTokenAddress,\n value: BigInt(0),\n data: encodeFunctionData({\n abi: ERC20Abi,\n functionName: \"approve\",\n args: [paymasterAddress, ERC20_APPROVAL_AMOUNT[gasTokenAddress]],\n }),\n };\n if (!this.provider.account) {\n throw AccountNotConnected;\n }\n\n let calls: BatchUserOperationCallData;\n\n if (isBatchUserOperationCallData(mainCall)) {\n calls = [approveData, ...mainCall];\n } else {\n calls = [approveData, mainCall];\n }\n const erc20CallData = await this.provider.account.encodeBatchExecute(\n calls\n );\n return {\n ...struct,\n callData: erc20CallData,\n callGasLimit: await this.provider.rpcClient.estimateGas({\n account: ENTRYPOINT_ADDRESS,\n to: await this.provider.getAddress(),\n data: erc20CallData,\n }),\n signature: await this.provider\n .getAccount()\n .getValidator()\n .getDynamicDummySignature(\n (await struct.sender) as Hex,\n erc20CallData\n ),\n };\n } catch (error) {\n return;\n }\n }\n\n async getPaymasterResponse(\n struct: UserOperationStruct,\n paymasterProvider?: PaymasterAndBundlerProviders,\n shouldOverrideFee?: boolean,\n shouldConsume?: boolean\n ): Promise<UserOperationStruct | undefined> {\n const mainCall = await this.decodeMainCallFromCallData(\n struct.sender,\n struct.callData\n );\n if (!mainCall) {\n throw IncorrectCallDataForTokenPaymaster;\n }\n const chainId = await getChainId(this.provider.getProjectId());\n if (!chainId) {\n throw new Error(\"ChainId not found\");\n }\n const gasTokenAddress = getGasTokenAddress(\n this.paymasterConfig.gasToken,\n chainId\n );\n let paymasterAddress = await this.getPaymasterAddress(paymasterProvider);\n if (\n gasTokenAddress !== undefined &&\n paymasterAddress !== undefined &&\n isAddress(paymasterAddress)\n ) {\n const erc20UserOp = await this.getERC20UserOp(\n struct,\n mainCall,\n gasTokenAddress,\n paymasterAddress\n );\n if (!erc20UserOp) {\n return;\n }\n const paymasterResp = await this.signUserOp({\n userOp: struct,\n callData: struct.callData,\n gasTokenAddress,\n erc20UserOp,\n erc20CallData: erc20UserOp.callData,\n paymasterProvider,\n shouldOverrideFee,\n shouldConsume,\n });\n return paymasterResp;\n }\n return;\n }\n}\n"]}
@@ -1,29 +0,0 @@
1
- import type { Hex } from "viem";
2
- import type { Paymaster } from "./base.js";
3
- import type { ZeroDevProvider } from "../provider.js";
4
- export type PaymasterAndBundlerProviders = "ALCHEMY" | "STACKUP" | "PIMLICO" | "GELATO";
5
- export type SupportedGasToken = "USDC" | "PEPE" | "TEST_ERC20";
6
- export type PaymasterPolicy = "VERIFYING_PAYMASTER" | "TOKEN_PAYMASTER";
7
- interface PaymasterConfigOptions {
8
- VERIFYING_PAYMASTER: {};
9
- TOKEN_PAYMASTER: {
10
- gasToken: SupportedGasToken;
11
- };
12
- }
13
- export type PaymasterConfig<T extends PaymasterPolicy> = {
14
- policy: T;
15
- paymasterProvider?: PaymasterAndBundlerProviders;
16
- onlySendSponsoredTransaction?: boolean;
17
- } & PaymasterConfigOptions[T];
18
- export interface IGasTokenAddresses {
19
- [key: string]: {
20
- [chainId: number]: Hex;
21
- };
22
- }
23
- export interface IPaymaster<Provider extends ZeroDevProvider, P extends PaymasterPolicy> {
24
- new (provider: Provider, paymasterConfig: PaymasterConfig<P>): Paymaster;
25
- }
26
- export type PaymasterMap<Provider extends ZeroDevProvider> = {
27
- [P in PaymasterPolicy]: IPaymaster<Provider, P>;
28
- };
29
- export {};
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map