thirdweb 5.73.1-nightly-33c23e789e577bd6463e135cec4e25cfcfc9964a-20241205000340 → 5.75.0-nightly-ec84ed37d6db8281d3afb12bc47a20ccc5fe9713-20241207000341

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 (597) hide show
  1. package/dist/cjs/adapters/ethers5.js +2 -2
  2. package/dist/cjs/adapters/ethers5.js.map +1 -1
  3. package/dist/cjs/adapters/ethers6.js.map +1 -1
  4. package/dist/cjs/auth/verify-hash.js +2 -1
  5. package/dist/cjs/auth/verify-hash.js.map +1 -1
  6. package/dist/cjs/auth/verify-signature.js.map +1 -1
  7. package/dist/cjs/contract/actions/resolve-abi.js +4 -0
  8. package/dist/cjs/contract/actions/resolve-abi.js.map +1 -1
  9. package/dist/cjs/exports/wallets/smart.js +4 -1
  10. package/dist/cjs/exports/wallets/smart.js.map +1 -1
  11. package/dist/cjs/extensions/erc1271/checkContractWalletSignedTypedData.js +6 -2
  12. package/dist/cjs/extensions/erc1271/checkContractWalletSignedTypedData.js.map +1 -1
  13. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.js +27 -0
  14. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.js.map +1 -0
  15. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.js +27 -0
  16. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.js.map +1 -0
  17. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/accountId.js +71 -0
  18. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/accountId.js.map +1 -0
  19. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.js +132 -0
  20. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.js.map +1 -0
  21. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.js +121 -0
  22. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.js.map +1 -0
  23. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.js +114 -0
  24. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.js.map +1 -0
  25. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.js +114 -0
  26. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.js.map +1 -0
  27. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/execute.js +127 -0
  28. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/execute.js.map +1 -0
  29. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.js +132 -0
  30. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.js.map +1 -0
  31. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/installModule.js +139 -0
  32. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/installModule.js.map +1 -0
  33. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.js +139 -0
  34. package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.js.map +1 -0
  35. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.js +32 -0
  36. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.js.map +1 -0
  37. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.js +31 -0
  38. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.js.map +1 -0
  39. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.js +70 -0
  40. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.js.map +1 -0
  41. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.js +70 -0
  42. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.js.map +1 -0
  43. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.js +122 -0
  44. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.js.map +1 -0
  45. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.js +71 -0
  46. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.js.map +1 -0
  47. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.js +71 -0
  48. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.js.map +1 -0
  49. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.js +117 -0
  50. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.js.map +1 -0
  51. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.js +157 -0
  52. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.js.map +1 -0
  53. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.js +51 -0
  54. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.js.map +1 -0
  55. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.js +117 -0
  56. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.js.map +1 -0
  57. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.js +51 -0
  58. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.js.map +1 -0
  59. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.js +117 -0
  60. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.js.map +1 -0
  61. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.js +139 -0
  62. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.js.map +1 -0
  63. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.js +117 -0
  64. package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.js.map +1 -0
  65. package/dist/cjs/extensions/marketplace/direct-listings/write/buyFromListing.js +6 -0
  66. package/dist/cjs/extensions/marketplace/direct-listings/write/buyFromListing.js.map +1 -1
  67. package/dist/cjs/extensions/pack/createNewPack.js +1 -0
  68. package/dist/cjs/extensions/pack/createNewPack.js.map +1 -1
  69. package/dist/cjs/react/web/ui/ConnectWallet/screens/SignatureScreen.js +12 -10
  70. package/dist/cjs/react/web/ui/ConnectWallet/screens/SignatureScreen.js.map +1 -1
  71. package/dist/cjs/react/web/ui/prebuilt/Account/avatar.js +1 -0
  72. package/dist/cjs/react/web/ui/prebuilt/Account/avatar.js.map +1 -1
  73. package/dist/cjs/react/web/ui/prebuilt/Account/balance.js +1 -0
  74. package/dist/cjs/react/web/ui/prebuilt/Account/balance.js.map +1 -1
  75. package/dist/cjs/react/web/ui/prebuilt/Account/name.js +1 -0
  76. package/dist/cjs/react/web/ui/prebuilt/Account/name.js.map +1 -1
  77. package/dist/cjs/react/web/utils/usePreloadWalletProviders.js +1 -1
  78. package/dist/cjs/react/web/utils/usePreloadWalletProviders.js.map +1 -1
  79. package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js +1 -1
  80. package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
  81. package/dist/cjs/transaction/actions/estimate-gas.js.map +1 -1
  82. package/dist/cjs/transaction/actions/gasless/providers/biconomy.js.map +1 -1
  83. package/dist/cjs/transaction/actions/gasless/providers/engine.js.map +1 -1
  84. package/dist/cjs/transaction/actions/gasless/providers/openzeppelin.js.map +1 -1
  85. package/dist/cjs/transaction/actions/sign-transaction.js +4 -7
  86. package/dist/cjs/transaction/actions/sign-transaction.js.map +1 -1
  87. package/dist/cjs/transaction/actions/to-serializable-transaction.js.map +1 -1
  88. package/dist/cjs/transaction/actions/zksync/getEip721Domain.js.map +1 -1
  89. package/dist/cjs/transaction/serialize-transaction.js +76 -9
  90. package/dist/cjs/transaction/serialize-transaction.js.map +1 -1
  91. package/dist/cjs/utils/any-evm/keyless-transaction.js +25 -4
  92. package/dist/cjs/utils/any-evm/keyless-transaction.js.map +1 -1
  93. package/dist/cjs/utils/hashing/hashMessage.js +2 -2
  94. package/dist/cjs/utils/hashing/hashMessage.js.map +1 -1
  95. package/dist/cjs/utils/hashing/hashTypedData.js +8 -6
  96. package/dist/cjs/utils/hashing/hashTypedData.js.map +1 -1
  97. package/dist/cjs/utils/signatures/helpers/{parseTypedData.js → parse-typed-data.js} +4 -4
  98. package/dist/cjs/utils/signatures/helpers/parse-typed-data.js.map +1 -0
  99. package/dist/cjs/utils/signatures/sign-message.js +12 -6
  100. package/dist/cjs/utils/signatures/sign-message.js.map +1 -1
  101. package/dist/cjs/utils/signatures/sign-typed-data.js +11 -8
  102. package/dist/cjs/utils/signatures/sign-typed-data.js.map +1 -1
  103. package/dist/cjs/utils/signatures/sign.js +4 -4
  104. package/dist/cjs/utils/signatures/sign.js.map +1 -1
  105. package/dist/cjs/utils/signatures/signature-to-hex.js +17 -10
  106. package/dist/cjs/utils/signatures/signature-to-hex.js.map +1 -1
  107. package/dist/cjs/utils/types.js +5 -0
  108. package/dist/cjs/utils/types.js.map +1 -1
  109. package/dist/cjs/version.js +1 -1
  110. package/dist/cjs/wallets/coinbase/{coinbaseMobileSDK.js → coinbase-mobile.js} +1 -1
  111. package/dist/cjs/wallets/coinbase/coinbase-mobile.js.map +1 -0
  112. package/dist/cjs/wallets/coinbase/coinbase-wallet.js +2 -2
  113. package/dist/cjs/wallets/coinbase/coinbase-wallet.js.map +1 -1
  114. package/dist/cjs/wallets/coinbase/{coinbaseWebSDK.js → coinbase-web.js} +11 -11
  115. package/dist/cjs/wallets/coinbase/coinbase-web.js.map +1 -0
  116. package/dist/cjs/wallets/create-wallet.js +2 -2
  117. package/dist/cjs/wallets/create-wallet.js.map +1 -1
  118. package/dist/cjs/wallets/ecosystem/is-ecosystem-wallet.js +1 -1
  119. package/dist/cjs/wallets/eip5792/get-calls-status.js +3 -3
  120. package/dist/cjs/wallets/eip5792/get-calls-status.js.map +1 -1
  121. package/dist/cjs/wallets/eip5792/get-capabilities.js +3 -3
  122. package/dist/cjs/wallets/eip5792/get-capabilities.js.map +1 -1
  123. package/dist/cjs/wallets/eip5792/send-calls.js +3 -3
  124. package/dist/cjs/wallets/eip5792/send-calls.js.map +1 -1
  125. package/dist/cjs/wallets/eip5792/show-calls-status.js +3 -3
  126. package/dist/cjs/wallets/eip5792/show-calls-status.js.map +1 -1
  127. package/dist/cjs/wallets/in-app/core/actions/sign-typed-data.enclave.js.map +1 -1
  128. package/dist/cjs/wallets/in-app/core/wallet/enclave-wallet.js +2 -2
  129. package/dist/cjs/wallets/in-app/core/wallet/enclave-wallet.js.map +1 -1
  130. package/dist/cjs/wallets/in-app/core/wallet/in-app-core.js +8 -4
  131. package/dist/cjs/wallets/in-app/core/wallet/in-app-core.js.map +1 -1
  132. package/dist/cjs/wallets/in-app/web/ecosystem.js +1 -1
  133. package/dist/cjs/wallets/in-app/web/in-app.js +2 -2
  134. package/dist/cjs/wallets/in-app/web/lib/iframe-wallet.js +3 -3
  135. package/dist/cjs/wallets/in-app/web/lib/iframe-wallet.js.map +1 -1
  136. package/dist/cjs/wallets/injected/index.js +2 -2
  137. package/dist/cjs/wallets/injected/index.js.map +1 -1
  138. package/dist/cjs/wallets/native/create-wallet.js +2 -2
  139. package/dist/cjs/wallets/native/create-wallet.js.map +1 -1
  140. package/dist/cjs/wallets/private-key.js +2 -5
  141. package/dist/cjs/wallets/private-key.js.map +1 -1
  142. package/dist/cjs/wallets/smart/index.js +45 -172
  143. package/dist/cjs/wallets/smart/index.js.map +1 -1
  144. package/dist/cjs/wallets/smart/lib/bundler.js +2 -1
  145. package/dist/cjs/wallets/smart/lib/bundler.js.map +1 -1
  146. package/dist/cjs/wallets/smart/lib/calls.js +2 -2
  147. package/dist/cjs/wallets/smart/lib/calls.js.map +1 -1
  148. package/dist/cjs/wallets/smart/lib/constants.js +21 -1
  149. package/dist/cjs/wallets/smart/lib/constants.js.map +1 -1
  150. package/dist/cjs/wallets/smart/lib/paymaster.js +7 -6
  151. package/dist/cjs/wallets/smart/lib/paymaster.js.map +1 -1
  152. package/dist/cjs/wallets/smart/lib/signing.js +166 -0
  153. package/dist/cjs/wallets/smart/lib/signing.js.map +1 -0
  154. package/dist/cjs/wallets/smart/lib/userop.js +20 -5
  155. package/dist/cjs/wallets/smart/lib/userop.js.map +1 -1
  156. package/dist/cjs/wallets/smart/presets/7579.js +218 -0
  157. package/dist/cjs/wallets/smart/presets/7579.js.map +1 -0
  158. package/dist/cjs/wallets/smart/presets/index.js +6 -0
  159. package/dist/cjs/wallets/smart/presets/index.js.map +1 -0
  160. package/dist/cjs/wallets/smart/smart-wallet.js +1 -1
  161. package/dist/cjs/wallets/smart/smart-wallet.js.map +1 -1
  162. package/dist/cjs/wallets/smart/types.js.map +1 -1
  163. package/dist/cjs/wallets/wallet-connect/controller.js +2 -2
  164. package/dist/cjs/wallets/wallet-connect/controller.js.map +1 -1
  165. package/dist/esm/adapters/ethers5.js +2 -2
  166. package/dist/esm/adapters/ethers5.js.map +1 -1
  167. package/dist/esm/adapters/ethers6.js.map +1 -1
  168. package/dist/esm/auth/verify-hash.js +2 -1
  169. package/dist/esm/auth/verify-hash.js.map +1 -1
  170. package/dist/esm/auth/verify-signature.js.map +1 -1
  171. package/dist/esm/contract/actions/resolve-abi.js +4 -0
  172. package/dist/esm/contract/actions/resolve-abi.js.map +1 -1
  173. package/dist/esm/exports/wallets/smart.js +3 -1
  174. package/dist/esm/exports/wallets/smart.js.map +1 -1
  175. package/dist/esm/extensions/erc1271/checkContractWalletSignedTypedData.js +6 -2
  176. package/dist/esm/extensions/erc1271/checkContractWalletSignedTypedData.js.map +1 -1
  177. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.js +24 -0
  178. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.js.map +1 -0
  179. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.js +24 -0
  180. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.js.map +1 -0
  181. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/accountId.js +65 -0
  182. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/accountId.js.map +1 -0
  183. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.js +124 -0
  184. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.js.map +1 -0
  185. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.js +113 -0
  186. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.js.map +1 -0
  187. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.js +106 -0
  188. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.js.map +1 -0
  189. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.js +106 -0
  190. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.js.map +1 -0
  191. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/execute.js +120 -0
  192. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/execute.js.map +1 -0
  193. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.js +125 -0
  194. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.js.map +1 -0
  195. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/installModule.js +132 -0
  196. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/installModule.js.map +1 -0
  197. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.js +132 -0
  198. package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.js.map +1 -0
  199. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.js +29 -0
  200. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.js.map +1 -0
  201. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.js +28 -0
  202. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.js.map +1 -0
  203. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.js +64 -0
  204. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.js.map +1 -0
  205. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.js +64 -0
  206. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.js.map +1 -0
  207. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.js +114 -0
  208. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.js.map +1 -0
  209. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.js +65 -0
  210. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.js.map +1 -0
  211. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.js +65 -0
  212. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.js.map +1 -0
  213. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.js +110 -0
  214. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.js.map +1 -0
  215. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.js +150 -0
  216. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.js.map +1 -0
  217. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.js +46 -0
  218. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.js.map +1 -0
  219. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.js +110 -0
  220. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.js.map +1 -0
  221. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.js +46 -0
  222. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.js.map +1 -0
  223. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.js +110 -0
  224. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.js.map +1 -0
  225. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.js +132 -0
  226. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.js.map +1 -0
  227. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.js +110 -0
  228. package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.js.map +1 -0
  229. package/dist/esm/extensions/marketplace/direct-listings/write/buyFromListing.js +6 -0
  230. package/dist/esm/extensions/marketplace/direct-listings/write/buyFromListing.js.map +1 -1
  231. package/dist/esm/extensions/pack/createNewPack.js +1 -0
  232. package/dist/esm/extensions/pack/createNewPack.js.map +1 -1
  233. package/dist/esm/react/web/ui/ConnectWallet/screens/SignatureScreen.js +12 -10
  234. package/dist/esm/react/web/ui/ConnectWallet/screens/SignatureScreen.js.map +1 -1
  235. package/dist/esm/react/web/ui/prebuilt/Account/avatar.js +1 -0
  236. package/dist/esm/react/web/ui/prebuilt/Account/avatar.js.map +1 -1
  237. package/dist/esm/react/web/ui/prebuilt/Account/balance.js +1 -0
  238. package/dist/esm/react/web/ui/prebuilt/Account/balance.js.map +1 -1
  239. package/dist/esm/react/web/ui/prebuilt/Account/name.js +1 -0
  240. package/dist/esm/react/web/ui/prebuilt/Account/name.js.map +1 -1
  241. package/dist/esm/react/web/utils/usePreloadWalletProviders.js +1 -1
  242. package/dist/esm/react/web/utils/usePreloadWalletProviders.js.map +1 -1
  243. package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js +1 -1
  244. package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
  245. package/dist/esm/transaction/actions/estimate-gas.js +3 -3
  246. package/dist/esm/transaction/actions/estimate-gas.js.map +1 -1
  247. package/dist/esm/transaction/actions/gasless/providers/biconomy.js.map +1 -1
  248. package/dist/esm/transaction/actions/gasless/providers/engine.js.map +1 -1
  249. package/dist/esm/transaction/actions/gasless/providers/openzeppelin.js.map +1 -1
  250. package/dist/esm/transaction/actions/sign-transaction.js +5 -8
  251. package/dist/esm/transaction/actions/sign-transaction.js.map +1 -1
  252. package/dist/esm/transaction/actions/to-serializable-transaction.js.map +1 -1
  253. package/dist/esm/transaction/actions/zksync/getEip721Domain.js.map +1 -1
  254. package/dist/esm/transaction/serialize-transaction.js +76 -9
  255. package/dist/esm/transaction/serialize-transaction.js.map +1 -1
  256. package/dist/esm/utils/any-evm/keyless-transaction.js +26 -5
  257. package/dist/esm/utils/any-evm/keyless-transaction.js.map +1 -1
  258. package/dist/esm/utils/hashing/hashMessage.js +2 -2
  259. package/dist/esm/utils/hashing/hashMessage.js.map +1 -1
  260. package/dist/esm/utils/hashing/hashTypedData.js +8 -6
  261. package/dist/esm/utils/hashing/hashTypedData.js.map +1 -1
  262. package/dist/esm/utils/signatures/helpers/parse-typed-data.js +15 -0
  263. package/dist/esm/utils/signatures/helpers/parse-typed-data.js.map +1 -0
  264. package/dist/esm/utils/signatures/sign-message.js +12 -6
  265. package/dist/esm/utils/signatures/sign-message.js.map +1 -1
  266. package/dist/esm/utils/signatures/sign-typed-data.js +11 -8
  267. package/dist/esm/utils/signatures/sign-typed-data.js.map +1 -1
  268. package/dist/esm/utils/signatures/sign.js +4 -4
  269. package/dist/esm/utils/signatures/sign.js.map +1 -1
  270. package/dist/esm/utils/signatures/signature-to-hex.js +17 -10
  271. package/dist/esm/utils/signatures/signature-to-hex.js.map +1 -1
  272. package/dist/esm/utils/types.js +4 -1
  273. package/dist/esm/utils/types.js.map +1 -1
  274. package/dist/esm/version.js +1 -1
  275. package/dist/esm/wallets/coinbase/{coinbaseMobileSDK.js → coinbase-mobile.js} +1 -1
  276. package/dist/esm/wallets/coinbase/coinbase-mobile.js.map +1 -0
  277. package/dist/esm/wallets/coinbase/coinbase-wallet.js +2 -2
  278. package/dist/esm/wallets/coinbase/coinbase-wallet.js.map +1 -1
  279. package/dist/esm/wallets/coinbase/{coinbaseWebSDK.js → coinbase-web.js} +11 -11
  280. package/dist/esm/wallets/coinbase/coinbase-web.js.map +1 -0
  281. package/dist/esm/wallets/create-wallet.js +1 -1
  282. package/dist/esm/wallets/create-wallet.js.map +1 -1
  283. package/dist/esm/wallets/ecosystem/is-ecosystem-wallet.js +1 -1
  284. package/dist/esm/wallets/eip5792/get-calls-status.js +2 -2
  285. package/dist/esm/wallets/eip5792/get-calls-status.js.map +1 -1
  286. package/dist/esm/wallets/eip5792/get-capabilities.js +2 -2
  287. package/dist/esm/wallets/eip5792/get-capabilities.js.map +1 -1
  288. package/dist/esm/wallets/eip5792/send-calls.js +2 -2
  289. package/dist/esm/wallets/eip5792/send-calls.js.map +1 -1
  290. package/dist/esm/wallets/eip5792/show-calls-status.js +2 -2
  291. package/dist/esm/wallets/eip5792/show-calls-status.js.map +1 -1
  292. package/dist/esm/wallets/in-app/core/actions/sign-typed-data.enclave.js.map +1 -1
  293. package/dist/esm/wallets/in-app/core/wallet/enclave-wallet.js +1 -1
  294. package/dist/esm/wallets/in-app/core/wallet/enclave-wallet.js.map +1 -1
  295. package/dist/esm/wallets/in-app/core/wallet/in-app-core.js +9 -5
  296. package/dist/esm/wallets/in-app/core/wallet/in-app-core.js.map +1 -1
  297. package/dist/esm/wallets/in-app/web/ecosystem.js +1 -1
  298. package/dist/esm/wallets/in-app/web/in-app.js +2 -2
  299. package/dist/esm/wallets/in-app/web/lib/iframe-wallet.js +2 -2
  300. package/dist/esm/wallets/in-app/web/lib/iframe-wallet.js.map +1 -1
  301. package/dist/esm/wallets/injected/index.js +1 -1
  302. package/dist/esm/wallets/injected/index.js.map +1 -1
  303. package/dist/esm/wallets/native/create-wallet.js +1 -1
  304. package/dist/esm/wallets/native/create-wallet.js.map +1 -1
  305. package/dist/esm/wallets/private-key.js +2 -5
  306. package/dist/esm/wallets/private-key.js.map +1 -1
  307. package/dist/esm/wallets/smart/index.js +44 -171
  308. package/dist/esm/wallets/smart/index.js.map +1 -1
  309. package/dist/esm/wallets/smart/lib/bundler.js +2 -1
  310. package/dist/esm/wallets/smart/lib/bundler.js.map +1 -1
  311. package/dist/esm/wallets/smart/lib/calls.js +2 -2
  312. package/dist/esm/wallets/smart/lib/calls.js.map +1 -1
  313. package/dist/esm/wallets/smart/lib/constants.js +20 -0
  314. package/dist/esm/wallets/smart/lib/constants.js.map +1 -1
  315. package/dist/esm/wallets/smart/lib/paymaster.js +7 -6
  316. package/dist/esm/wallets/smart/lib/paymaster.js.map +1 -1
  317. package/dist/esm/wallets/smart/lib/signing.js +161 -0
  318. package/dist/esm/wallets/smart/lib/signing.js.map +1 -0
  319. package/dist/esm/wallets/smart/lib/userop.js +21 -6
  320. package/dist/esm/wallets/smart/lib/userop.js.map +1 -1
  321. package/dist/esm/wallets/smart/presets/7579.js +215 -0
  322. package/dist/esm/wallets/smart/presets/7579.js.map +1 -0
  323. package/dist/esm/wallets/smart/presets/index.js +2 -0
  324. package/dist/esm/wallets/smart/presets/index.js.map +1 -0
  325. package/dist/esm/wallets/smart/smart-wallet.js +1 -1
  326. package/dist/esm/wallets/smart/smart-wallet.js.map +1 -1
  327. package/dist/esm/wallets/smart/types.js.map +1 -1
  328. package/dist/esm/wallets/wallet-connect/controller.js +1 -1
  329. package/dist/esm/wallets/wallet-connect/controller.js.map +1 -1
  330. package/dist/types/adapters/ethers5.d.ts.map +1 -1
  331. package/dist/types/adapters/ethers6.d.ts.map +1 -1
  332. package/dist/types/auth/verify-hash.d.ts.map +1 -1
  333. package/dist/types/auth/verify-signature.d.ts +2 -2
  334. package/dist/types/auth/verify-signature.d.ts.map +1 -1
  335. package/dist/types/contract/actions/resolve-abi.d.ts.map +1 -1
  336. package/dist/types/exports/wallets/smart.d.ts +2 -1
  337. package/dist/types/exports/wallets/smart.d.ts.map +1 -1
  338. package/dist/types/exports/wallets.d.ts +1 -1
  339. package/dist/types/exports/wallets.d.ts.map +1 -1
  340. package/dist/types/exports/wallets.native.d.ts +1 -1
  341. package/dist/types/exports/wallets.native.d.ts.map +1 -1
  342. package/dist/types/extensions/erc1271/checkContractWalletSignedTypedData.d.ts +4 -4
  343. package/dist/types/extensions/erc1271/checkContractWalletSignedTypedData.d.ts.map +1 -1
  344. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.d.ts +29 -0
  345. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.d.ts.map +1 -0
  346. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.d.ts +29 -0
  347. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.d.ts.map +1 -0
  348. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/accountId.d.ts +44 -0
  349. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/accountId.d.ts.map +1 -0
  350. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.d.ts +97 -0
  351. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.d.ts.map +1 -0
  352. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.d.ts +90 -0
  353. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.d.ts.map +1 -0
  354. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.d.ts +83 -0
  355. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.d.ts.map +1 -0
  356. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.d.ts +83 -0
  357. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.d.ts.map +1 -0
  358. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/execute.d.ts +86 -0
  359. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/execute.d.ts.map +1 -0
  360. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.d.ts +86 -0
  361. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.d.ts.map +1 -0
  362. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/installModule.d.ts +93 -0
  363. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/installModule.d.ts.map +1 -0
  364. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.d.ts +93 -0
  365. package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.d.ts.map +1 -0
  366. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.d.ts +51 -0
  367. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.d.ts.map +1 -0
  368. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.d.ts +41 -0
  369. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.d.ts.map +1 -0
  370. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.d.ts +44 -0
  371. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.d.ts.map +1 -0
  372. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.d.ts +44 -0
  373. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.d.ts.map +1 -0
  374. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.d.ts +90 -0
  375. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.d.ts.map +1 -0
  376. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.d.ts +44 -0
  377. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.d.ts.map +1 -0
  378. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.d.ts +44 -0
  379. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.d.ts.map +1 -0
  380. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.d.ts +79 -0
  381. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.d.ts.map +1 -0
  382. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.d.ts +107 -0
  383. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.d.ts.map +1 -0
  384. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.d.ts +33 -0
  385. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.d.ts.map +1 -0
  386. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.d.ts +79 -0
  387. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.d.ts.map +1 -0
  388. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.d.ts +33 -0
  389. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.d.ts.map +1 -0
  390. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.d.ts +79 -0
  391. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.d.ts.map +1 -0
  392. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.d.ts +93 -0
  393. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.d.ts.map +1 -0
  394. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.d.ts +79 -0
  395. package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.d.ts.map +1 -0
  396. package/dist/types/extensions/marketplace/direct-listings/write/buyFromListing.d.ts.map +1 -1
  397. package/dist/types/extensions/pack/createNewPack.d.ts.map +1 -1
  398. package/dist/types/react/web/ui/ConnectWallet/screens/SignatureScreen.d.ts.map +1 -1
  399. package/dist/types/react/web/ui/prebuilt/Account/avatar.d.ts.map +1 -1
  400. package/dist/types/react/web/ui/prebuilt/Account/balance.d.ts.map +1 -1
  401. package/dist/types/react/web/ui/prebuilt/Account/name.d.ts.map +1 -1
  402. package/dist/types/transaction/actions/gasless/providers/biconomy.d.ts +2 -2
  403. package/dist/types/transaction/actions/gasless/providers/biconomy.d.ts.map +1 -1
  404. package/dist/types/transaction/actions/gasless/providers/engine.d.ts +2 -2
  405. package/dist/types/transaction/actions/gasless/providers/engine.d.ts.map +1 -1
  406. package/dist/types/transaction/actions/gasless/providers/openzeppelin.d.ts +2 -2
  407. package/dist/types/transaction/actions/gasless/providers/openzeppelin.d.ts.map +1 -1
  408. package/dist/types/transaction/actions/gasless/send-gasless-transaction.d.ts +2 -2
  409. package/dist/types/transaction/actions/gasless/send-gasless-transaction.d.ts.map +1 -1
  410. package/dist/types/transaction/actions/sign-transaction.d.ts +2 -2
  411. package/dist/types/transaction/actions/sign-transaction.d.ts.map +1 -1
  412. package/dist/types/transaction/actions/to-serializable-transaction.d.ts.map +1 -1
  413. package/dist/types/transaction/actions/zksync/getEip721Domain.d.ts +2 -2
  414. package/dist/types/transaction/actions/zksync/getEip721Domain.d.ts.map +1 -1
  415. package/dist/types/transaction/serialize-transaction.d.ts +24 -4
  416. package/dist/types/transaction/serialize-transaction.d.ts.map +1 -1
  417. package/dist/types/utils/any-evm/keyless-transaction.d.ts +6 -4
  418. package/dist/types/utils/any-evm/keyless-transaction.d.ts.map +1 -1
  419. package/dist/types/utils/hashing/hashMessage.d.ts +3 -2
  420. package/dist/types/utils/hashing/hashMessage.d.ts.map +1 -1
  421. package/dist/types/utils/hashing/hashTypedData.d.ts +3 -3
  422. package/dist/types/utils/hashing/hashTypedData.d.ts.map +1 -1
  423. package/dist/types/utils/signatures/helpers/parse-typed-data.d.ts +6 -0
  424. package/dist/types/utils/signatures/helpers/parse-typed-data.d.ts.map +1 -0
  425. package/dist/types/utils/signatures/sign-message.d.ts.map +1 -1
  426. package/dist/types/utils/signatures/sign-typed-data.d.ts +3 -4
  427. package/dist/types/utils/signatures/sign-typed-data.d.ts.map +1 -1
  428. package/dist/types/utils/signatures/sign.d.ts +6 -2
  429. package/dist/types/utils/signatures/sign.d.ts.map +1 -1
  430. package/dist/types/utils/signatures/signature-to-hex.d.ts +7 -3
  431. package/dist/types/utils/signatures/signature-to-hex.d.ts.map +1 -1
  432. package/dist/types/utils/types.d.ts +13 -0
  433. package/dist/types/utils/types.d.ts.map +1 -1
  434. package/dist/types/version.d.ts +1 -1
  435. package/dist/types/wallets/coinbase/{coinbaseMobileSDK.d.ts → coinbase-mobile.d.ts} +2 -2
  436. package/dist/types/wallets/coinbase/coinbase-mobile.d.ts.map +1 -0
  437. package/dist/types/wallets/coinbase/{coinbaseWebSDK.d.ts → coinbase-web.d.ts} +1 -1
  438. package/dist/types/wallets/coinbase/coinbase-web.d.ts.map +1 -0
  439. package/dist/types/wallets/ecosystem/get-ecosystem-wallet-auth-options.d.ts +1 -1
  440. package/dist/types/wallets/ecosystem/get-ecosystem-wallet-auth-options.d.ts.map +1 -1
  441. package/dist/types/wallets/in-app/core/actions/sign-typed-data.enclave.d.ts +3 -4
  442. package/dist/types/wallets/in-app/core/actions/sign-typed-data.enclave.d.ts.map +1 -1
  443. package/dist/types/wallets/in-app/core/wallet/in-app-core.d.ts.map +1 -1
  444. package/dist/types/wallets/in-app/web/ecosystem.d.ts +1 -1
  445. package/dist/types/wallets/in-app/web/in-app.d.ts +2 -2
  446. package/dist/types/wallets/interfaces/wallet.d.ts +6 -4
  447. package/dist/types/wallets/interfaces/wallet.d.ts.map +1 -1
  448. package/dist/types/wallets/private-key.d.ts.map +1 -1
  449. package/dist/types/wallets/smart/index.d.ts +3 -2
  450. package/dist/types/wallets/smart/index.d.ts.map +1 -1
  451. package/dist/types/wallets/smart/lib/bundler.d.ts +9 -3
  452. package/dist/types/wallets/smart/lib/bundler.d.ts.map +1 -1
  453. package/dist/types/wallets/smart/lib/calls.d.ts +2 -2
  454. package/dist/types/wallets/smart/lib/calls.d.ts.map +1 -1
  455. package/dist/types/wallets/smart/lib/constants.d.ts +4 -0
  456. package/dist/types/wallets/smart/lib/constants.d.ts.map +1 -1
  457. package/dist/types/wallets/smart/lib/paymaster.d.ts.map +1 -1
  458. package/dist/types/wallets/smart/lib/signing.d.ts +20 -0
  459. package/dist/types/wallets/smart/lib/signing.d.ts.map +1 -0
  460. package/dist/types/wallets/smart/lib/userop.d.ts.map +1 -1
  461. package/dist/types/wallets/smart/presets/7579.d.ts +34 -0
  462. package/dist/types/wallets/smart/presets/7579.d.ts.map +1 -0
  463. package/dist/types/wallets/smart/presets/index.d.ts +2 -0
  464. package/dist/types/wallets/smart/presets/index.d.ts.map +1 -0
  465. package/dist/types/wallets/smart/smart-wallet.d.ts +3 -3
  466. package/dist/types/wallets/smart/smart-wallet.d.ts.map +1 -1
  467. package/dist/types/wallets/smart/types.d.ts +30 -13
  468. package/dist/types/wallets/smart/types.d.ts.map +1 -1
  469. package/dist/types/wallets/wallet-types.d.ts +1 -1
  470. package/dist/types/wallets/wallet-types.d.ts.map +1 -1
  471. package/package.json +23 -23
  472. package/src/adapters/ethers5.test.ts +92 -0
  473. package/src/adapters/ethers5.ts +6 -5
  474. package/src/adapters/ethers6.ts +3 -2
  475. package/src/adapters/viem.test.ts +5 -4
  476. package/src/auth/verify-hash.ts +2 -1
  477. package/src/auth/verify-signature.ts +2 -2
  478. package/src/contract/actions/resolve-abi.ts +6 -0
  479. package/src/exports/wallets/smart.ts +4 -0
  480. package/src/exports/wallets.native.ts +1 -1
  481. package/src/exports/wallets.ts +1 -1
  482. package/src/extensions/erc1271/checkContractWalletSignedTypedData.ts +9 -5
  483. package/src/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.ts +24 -0
  484. package/src/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.ts +24 -0
  485. package/src/extensions/erc7579/__generated__/IERC7579Account/read/accountId.ts +71 -0
  486. package/src/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.ts +153 -0
  487. package/src/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.ts +133 -0
  488. package/src/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.ts +132 -0
  489. package/src/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.ts +128 -0
  490. package/src/extensions/erc7579/__generated__/IERC7579Account/write/execute.ts +149 -0
  491. package/src/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.ts +158 -0
  492. package/src/extensions/erc7579/__generated__/IERC7579Account/write/installModule.ts +164 -0
  493. package/src/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.ts +167 -0
  494. package/src/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.ts +49 -0
  495. package/src/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.ts +40 -0
  496. package/src/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.ts +70 -0
  497. package/src/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.ts +70 -0
  498. package/src/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.ts +134 -0
  499. package/src/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.ts +71 -0
  500. package/src/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.ts +71 -0
  501. package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.ts +138 -0
  502. package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.ts +193 -0
  503. package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.ts +50 -0
  504. package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.ts +139 -0
  505. package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.ts +50 -0
  506. package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.ts +140 -0
  507. package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.ts +159 -0
  508. package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.ts +137 -0
  509. package/src/extensions/marketplace/direct-listings/direct-listings.test.ts +74 -14
  510. package/src/extensions/marketplace/direct-listings/write/buyFromListing.ts +6 -0
  511. package/src/extensions/pack/createNewPack.ts +1 -0
  512. package/src/react/web/ui/ConnectWallet/screens/SignatureScreen.test.tsx +287 -0
  513. package/src/react/web/ui/ConnectWallet/screens/SignatureScreen.tsx +13 -5
  514. package/src/react/web/ui/prebuilt/Account/avatar.tsx +1 -0
  515. package/src/react/web/ui/prebuilt/Account/balance.tsx +1 -0
  516. package/src/react/web/ui/prebuilt/Account/name.tsx +1 -0
  517. package/src/react/web/utils/usePreloadWalletProviders.ts +1 -1
  518. package/src/react/web/wallets/shared/ConnectWalletSocialOptions.test.tsx +87 -0
  519. package/src/react/web/wallets/shared/ConnectWalletSocialOptions.tsx +1 -1
  520. package/src/transaction/actions/estimate-gas.ts +3 -3
  521. package/src/transaction/actions/gasless/providers/biconomy.ts +3 -2
  522. package/src/transaction/actions/gasless/providers/engine.ts +2 -2
  523. package/src/transaction/actions/gasless/providers/openzeppelin.ts +2 -2
  524. package/src/transaction/actions/gasless/send-gasless-transaction.ts +2 -2
  525. package/src/transaction/actions/sign-transaction.test.ts +8 -15
  526. package/src/transaction/actions/sign-transaction.ts +9 -11
  527. package/src/transaction/actions/to-serializable-transaction.ts +2 -2
  528. package/src/transaction/actions/zksync/getEip721Domain.ts +2 -2
  529. package/src/transaction/serialize-transaction.test.ts +135 -229
  530. package/src/transaction/serialize-transaction.ts +131 -22
  531. package/src/utils/any-evm/keyless-transaction.test.ts +91 -0
  532. package/src/utils/any-evm/keyless-transaction.ts +43 -14
  533. package/src/utils/hashing/hashMessage.ts +4 -3
  534. package/src/utils/hashing/hashTypedData.ts +24 -27
  535. package/src/utils/signatures/helpers/parse-typed-data.test.ts +56 -0
  536. package/src/utils/signatures/helpers/parse-typed-data.ts +29 -0
  537. package/src/utils/signatures/sign-message.ts +15 -6
  538. package/src/utils/signatures/sign-typed-data.ts +18 -12
  539. package/src/utils/signatures/sign.ts +5 -6
  540. package/src/utils/signatures/signature-to-hex.ts +29 -13
  541. package/src/utils/types.ts +17 -0
  542. package/src/version.ts +1 -1
  543. package/src/wallets/coinbase/coinbase-mobile.test.ts +69 -0
  544. package/src/wallets/coinbase/{coinbaseMobileSDK.ts → coinbase-mobile.ts} +1 -1
  545. package/src/wallets/coinbase/coinbase-wallet.ts +2 -2
  546. package/src/wallets/coinbase/coinbase-web.test.ts +176 -0
  547. package/src/wallets/coinbase/{coinbaseWebSDK.ts → coinbase-web.ts} +13 -17
  548. package/src/wallets/create-wallet.ts +1 -1
  549. package/src/wallets/ecosystem/get-ecosystem-wallet-auth-options.ts +1 -1
  550. package/src/wallets/ecosystem/is-ecosystem-wallet.ts +1 -1
  551. package/src/wallets/eip5792/get-calls-status.ts +2 -2
  552. package/src/wallets/eip5792/get-capabilities.ts +2 -2
  553. package/src/wallets/eip5792/send-calls.ts +2 -2
  554. package/src/wallets/eip5792/show-calls-status.ts +2 -2
  555. package/src/wallets/in-app/core/actions/sign-typed-data.enclave.ts +3 -4
  556. package/src/wallets/in-app/core/wallet/enclave-wallet.ts +1 -1
  557. package/src/wallets/in-app/core/wallet/in-app-core.test.ts +270 -0
  558. package/src/wallets/in-app/core/wallet/in-app-core.ts +16 -5
  559. package/src/wallets/in-app/web/ecosystem.ts +1 -1
  560. package/src/wallets/in-app/web/in-app.ts +2 -2
  561. package/src/wallets/in-app/web/lib/iframe-wallet.ts +2 -2
  562. package/src/wallets/injected/index.ts +1 -1
  563. package/src/wallets/interfaces/wallet.ts +7 -11
  564. package/src/wallets/native/create-wallet.ts +1 -1
  565. package/src/wallets/private-key.ts +16 -14
  566. package/src/wallets/smart/index.ts +68 -235
  567. package/src/wallets/smart/lib/bundler.ts +18 -7
  568. package/src/wallets/smart/lib/calls.ts +4 -2
  569. package/src/wallets/smart/lib/constants.ts +23 -0
  570. package/src/wallets/smart/lib/paymaster.ts +8 -6
  571. package/src/wallets/smart/lib/signing.ts +231 -0
  572. package/src/wallets/smart/lib/userop.ts +34 -10
  573. package/src/wallets/smart/presets/7579.ts +269 -0
  574. package/src/wallets/smart/presets/index.ts +1 -0
  575. package/src/wallets/smart/smart-wallet-dev.test.ts +5 -4
  576. package/src/wallets/smart/smart-wallet-integration-v07.test.ts +299 -0
  577. package/src/wallets/smart/smart-wallet-integration.test.ts +399 -0
  578. package/src/wallets/smart/smart-wallet-modular.test.ts +134 -0
  579. package/src/wallets/smart/smart-wallet-tokenpaymaster.test.ts +117 -0
  580. package/src/wallets/smart/smart-wallet.ts +4 -6
  581. package/src/wallets/smart/smart.test.ts +87 -0
  582. package/src/wallets/smart/types.ts +39 -12
  583. package/src/wallets/wallet-connect/controller.ts +1 -1
  584. package/src/wallets/wallet-connect/receiver/session-request.test.ts +5 -5
  585. package/src/wallets/wallet-types.ts +1 -1
  586. package/dist/cjs/utils/signatures/helpers/parseTypedData.js.map +0 -1
  587. package/dist/cjs/wallets/coinbase/coinbaseMobileSDK.js.map +0 -1
  588. package/dist/cjs/wallets/coinbase/coinbaseWebSDK.js.map +0 -1
  589. package/dist/esm/utils/signatures/helpers/parseTypedData.js +0 -15
  590. package/dist/esm/utils/signatures/helpers/parseTypedData.js.map +0 -1
  591. package/dist/esm/wallets/coinbase/coinbaseMobileSDK.js.map +0 -1
  592. package/dist/esm/wallets/coinbase/coinbaseWebSDK.js.map +0 -1
  593. package/dist/types/utils/signatures/helpers/parseTypedData.d.ts +0 -7
  594. package/dist/types/utils/signatures/helpers/parseTypedData.d.ts.map +0 -1
  595. package/dist/types/wallets/coinbase/coinbaseMobileSDK.d.ts.map +0 -1
  596. package/dist/types/wallets/coinbase/coinbaseWebSDK.d.ts.map +0 -1
  597. package/src/utils/signatures/helpers/parseTypedData.ts +0 -25
@@ -0,0 +1,120 @@
1
+ import { prepareContractCall } from "../../../../../transaction/prepare-contract-call.js";
2
+ import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
3
+ import { once } from "../../../../../utils/promise/once.js";
4
+ import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
5
+ export const FN_SELECTOR = "0xe9ae5c53";
6
+ const FN_INPUTS = [
7
+ {
8
+ type: "bytes32",
9
+ name: "mode",
10
+ },
11
+ {
12
+ type: "bytes",
13
+ name: "executionCalldata",
14
+ },
15
+ ];
16
+ const FN_OUTPUTS = [];
17
+ /**
18
+ * Checks if the `execute` method is supported by the given contract.
19
+ * @param availableSelectors An array of 4byte function selectors of the contract. You can get this in various ways, such as using "whatsabi" or if you have the ABI of the contract available you can use it to generate the selectors.
20
+ * @returns A boolean indicating if the `execute` method is supported.
21
+ * @extension ERC7579
22
+ * @example
23
+ * ```ts
24
+ * import { isExecuteSupported } from "thirdweb/extensions/erc7579";
25
+ *
26
+ * const supported = isExecuteSupported(["0x..."]);
27
+ * ```
28
+ */
29
+ export function isExecuteSupported(availableSelectors) {
30
+ return detectMethod({
31
+ availableSelectors,
32
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
33
+ });
34
+ }
35
+ /**
36
+ * Encodes the parameters for the "execute" function.
37
+ * @param options - The options for the execute function.
38
+ * @returns The encoded ABI parameters.
39
+ * @extension ERC7579
40
+ * @example
41
+ * ```ts
42
+ * import { encodeExecuteParams } from "thirdweb/extensions/erc7579";
43
+ * const result = encodeExecuteParams({
44
+ * mode: ...,
45
+ * executionCalldata: ...,
46
+ * });
47
+ * ```
48
+ */
49
+ export function encodeExecuteParams(options) {
50
+ return encodeAbiParameters(FN_INPUTS, [
51
+ options.mode,
52
+ options.executionCalldata,
53
+ ]);
54
+ }
55
+ /**
56
+ * Encodes the "execute" function into a Hex string with its parameters.
57
+ * @param options - The options for the execute function.
58
+ * @returns The encoded hexadecimal string.
59
+ * @extension ERC7579
60
+ * @example
61
+ * ```ts
62
+ * import { encodeExecute } from "thirdweb/extensions/erc7579";
63
+ * const result = encodeExecute({
64
+ * mode: ...,
65
+ * executionCalldata: ...,
66
+ * });
67
+ * ```
68
+ */
69
+ export function encodeExecute(options) {
70
+ // we do a "manual" concat here to avoid the overhead of the "concatHex" function
71
+ // we can do this because we know the specific formats of the values
72
+ return (FN_SELECTOR +
73
+ encodeExecuteParams(options).slice(2));
74
+ }
75
+ /**
76
+ * Prepares a transaction to call the "execute" function on the contract.
77
+ * @param options - The options for the "execute" function.
78
+ * @returns A prepared transaction object.
79
+ * @extension ERC7579
80
+ * @example
81
+ * ```ts
82
+ * import { sendTransaction } from "thirdweb";
83
+ * import { execute } from "thirdweb/extensions/erc7579";
84
+ *
85
+ * const transaction = execute({
86
+ * contract,
87
+ * mode: ...,
88
+ * executionCalldata: ...,
89
+ * overrides: {
90
+ * ...
91
+ * }
92
+ * });
93
+ *
94
+ * // Send the transaction
95
+ * await sendTransaction({ transaction, account });
96
+ * ```
97
+ */
98
+ export function execute(options) {
99
+ const asyncOptions = once(async () => {
100
+ return "asyncParams" in options ? await options.asyncParams() : options;
101
+ });
102
+ return prepareContractCall({
103
+ contract: options.contract,
104
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
105
+ params: async () => {
106
+ const resolvedOptions = await asyncOptions();
107
+ return [resolvedOptions.mode, resolvedOptions.executionCalldata];
108
+ },
109
+ value: async () => (await asyncOptions()).overrides?.value,
110
+ accessList: async () => (await asyncOptions()).overrides?.accessList,
111
+ gas: async () => (await asyncOptions()).overrides?.gas,
112
+ gasPrice: async () => (await asyncOptions()).overrides?.gasPrice,
113
+ maxFeePerGas: async () => (await asyncOptions()).overrides?.maxFeePerGas,
114
+ maxPriorityFeePerGas: async () => (await asyncOptions()).overrides?.maxPriorityFeePerGas,
115
+ nonce: async () => (await asyncOptions()).overrides?.nonce,
116
+ extraGas: async () => (await asyncOptions()).overrides?.extraGas,
117
+ erc20Value: async () => (await asyncOptions()).overrides?.erc20Value,
118
+ });
119
+ }
120
+ //# sourceMappingURL=execute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../../../../../src/extensions/erc7579/__generated__/IERC7579Account/write/execute.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,125 @@
1
+ import { prepareContractCall } from "../../../../../transaction/prepare-contract-call.js";
2
+ import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
3
+ import { once } from "../../../../../utils/promise/once.js";
4
+ import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
5
+ export const FN_SELECTOR = "0xd691c964";
6
+ const FN_INPUTS = [
7
+ {
8
+ type: "bytes32",
9
+ name: "mode",
10
+ },
11
+ {
12
+ type: "bytes",
13
+ name: "executionCalldata",
14
+ },
15
+ ];
16
+ const FN_OUTPUTS = [
17
+ {
18
+ type: "bytes[]",
19
+ name: "returnData",
20
+ },
21
+ ];
22
+ /**
23
+ * Checks if the `executeFromExecutor` method is supported by the given contract.
24
+ * @param availableSelectors An array of 4byte function selectors of the contract. You can get this in various ways, such as using "whatsabi" or if you have the ABI of the contract available you can use it to generate the selectors.
25
+ * @returns A boolean indicating if the `executeFromExecutor` method is supported.
26
+ * @extension ERC7579
27
+ * @example
28
+ * ```ts
29
+ * import { isExecuteFromExecutorSupported } from "thirdweb/extensions/erc7579";
30
+ *
31
+ * const supported = isExecuteFromExecutorSupported(["0x..."]);
32
+ * ```
33
+ */
34
+ export function isExecuteFromExecutorSupported(availableSelectors) {
35
+ return detectMethod({
36
+ availableSelectors,
37
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
38
+ });
39
+ }
40
+ /**
41
+ * Encodes the parameters for the "executeFromExecutor" function.
42
+ * @param options - The options for the executeFromExecutor function.
43
+ * @returns The encoded ABI parameters.
44
+ * @extension ERC7579
45
+ * @example
46
+ * ```ts
47
+ * import { encodeExecuteFromExecutorParams } from "thirdweb/extensions/erc7579";
48
+ * const result = encodeExecuteFromExecutorParams({
49
+ * mode: ...,
50
+ * executionCalldata: ...,
51
+ * });
52
+ * ```
53
+ */
54
+ export function encodeExecuteFromExecutorParams(options) {
55
+ return encodeAbiParameters(FN_INPUTS, [
56
+ options.mode,
57
+ options.executionCalldata,
58
+ ]);
59
+ }
60
+ /**
61
+ * Encodes the "executeFromExecutor" function into a Hex string with its parameters.
62
+ * @param options - The options for the executeFromExecutor function.
63
+ * @returns The encoded hexadecimal string.
64
+ * @extension ERC7579
65
+ * @example
66
+ * ```ts
67
+ * import { encodeExecuteFromExecutor } from "thirdweb/extensions/erc7579";
68
+ * const result = encodeExecuteFromExecutor({
69
+ * mode: ...,
70
+ * executionCalldata: ...,
71
+ * });
72
+ * ```
73
+ */
74
+ export function encodeExecuteFromExecutor(options) {
75
+ // we do a "manual" concat here to avoid the overhead of the "concatHex" function
76
+ // we can do this because we know the specific formats of the values
77
+ return (FN_SELECTOR +
78
+ encodeExecuteFromExecutorParams(options).slice(2));
79
+ }
80
+ /**
81
+ * Prepares a transaction to call the "executeFromExecutor" function on the contract.
82
+ * @param options - The options for the "executeFromExecutor" function.
83
+ * @returns A prepared transaction object.
84
+ * @extension ERC7579
85
+ * @example
86
+ * ```ts
87
+ * import { sendTransaction } from "thirdweb";
88
+ * import { executeFromExecutor } from "thirdweb/extensions/erc7579";
89
+ *
90
+ * const transaction = executeFromExecutor({
91
+ * contract,
92
+ * mode: ...,
93
+ * executionCalldata: ...,
94
+ * overrides: {
95
+ * ...
96
+ * }
97
+ * });
98
+ *
99
+ * // Send the transaction
100
+ * await sendTransaction({ transaction, account });
101
+ * ```
102
+ */
103
+ export function executeFromExecutor(options) {
104
+ const asyncOptions = once(async () => {
105
+ return "asyncParams" in options ? await options.asyncParams() : options;
106
+ });
107
+ return prepareContractCall({
108
+ contract: options.contract,
109
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
110
+ params: async () => {
111
+ const resolvedOptions = await asyncOptions();
112
+ return [resolvedOptions.mode, resolvedOptions.executionCalldata];
113
+ },
114
+ value: async () => (await asyncOptions()).overrides?.value,
115
+ accessList: async () => (await asyncOptions()).overrides?.accessList,
116
+ gas: async () => (await asyncOptions()).overrides?.gas,
117
+ gasPrice: async () => (await asyncOptions()).overrides?.gasPrice,
118
+ maxFeePerGas: async () => (await asyncOptions()).overrides?.maxFeePerGas,
119
+ maxPriorityFeePerGas: async () => (await asyncOptions()).overrides?.maxPriorityFeePerGas,
120
+ nonce: async () => (await asyncOptions()).overrides?.nonce,
121
+ extraGas: async () => (await asyncOptions()).overrides?.extraGas,
122
+ erc20Value: async () => (await asyncOptions()).overrides?.erc20Value,
123
+ });
124
+ }
125
+ //# sourceMappingURL=executeFromExecutor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executeFromExecutor.js","sourceRoot":"","sources":["../../../../../../../src/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,IAAI,EAAE,MAAM,sCAAsC,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAahF,MAAM,CAAC,MAAM,WAAW,GAAG,YAAqB,CAAC;AACjD,MAAM,SAAS,GAAG;IAChB;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,MAAM;KACb;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,mBAAmB;KAC1B;CACO,CAAC;AACX,MAAM,UAAU,GAAG;IACjB;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,YAAY;KACnB;CACO,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,8BAA8B,CAAC,kBAA4B;IACzE,OAAO,YAAY,CAAC;QAClB,kBAAkB;QAClB,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAU;KACtD,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,+BAA+B,CAC7C,OAAkC;IAElC,OAAO,mBAAmB,CAAC,SAAS,EAAE;QACpC,OAAO,CAAC,IAAI;QACZ,OAAO,CAAC,iBAAiB;KAC1B,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAkC;IAC1E,iFAAiF;IACjF,oEAAoE;IACpE,OAAO,CAAC,WAAW;QACjB,+BAA+B,CAAC,OAAO,CAAC,CAAC,KAAK,CAC5C,CAAC,CACF,CAAqC,CAAC;AAC3C,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,mBAAmB,CACjC,OAKC;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE;QACnC,OAAO,aAAa,IAAI,OAAO,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,OAAO,mBAAmB,CAAC;QACzB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAU;QACrD,MAAM,EAAE,KAAK,IAAI,EAAE;YACjB,MAAM,eAAe,GAAG,MAAM,YAAY,EAAE,CAAC;YAC7C,OAAO,CAAC,eAAe,CAAC,IAAI,EAAE,eAAe,CAAC,iBAAiB,CAAU,CAAC;QAC5E,CAAC;QACD,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK;QAC1D,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,UAAU;QACpE,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,GAAG;QACtD,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ;QAChE,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,YAAY;QACxE,oBAAoB,EAAE,KAAK,IAAI,EAAE,CAC/B,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,oBAAoB;QACxD,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK;QAC1D,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ;QAChE,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,UAAU;KACrE,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,132 @@
1
+ import { prepareContractCall } from "../../../../../transaction/prepare-contract-call.js";
2
+ import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
3
+ import { once } from "../../../../../utils/promise/once.js";
4
+ import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
5
+ export const FN_SELECTOR = "0x9517e29f";
6
+ const FN_INPUTS = [
7
+ {
8
+ type: "uint256",
9
+ name: "moduleTypeId",
10
+ },
11
+ {
12
+ type: "address",
13
+ name: "module",
14
+ },
15
+ {
16
+ type: "bytes",
17
+ name: "initData",
18
+ },
19
+ ];
20
+ const FN_OUTPUTS = [];
21
+ /**
22
+ * Checks if the `installModule` method is supported by the given contract.
23
+ * @param availableSelectors An array of 4byte function selectors of the contract. You can get this in various ways, such as using "whatsabi" or if you have the ABI of the contract available you can use it to generate the selectors.
24
+ * @returns A boolean indicating if the `installModule` method is supported.
25
+ * @extension ERC7579
26
+ * @example
27
+ * ```ts
28
+ * import { isInstallModuleSupported } from "thirdweb/extensions/erc7579";
29
+ *
30
+ * const supported = isInstallModuleSupported(["0x..."]);
31
+ * ```
32
+ */
33
+ export function isInstallModuleSupported(availableSelectors) {
34
+ return detectMethod({
35
+ availableSelectors,
36
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
37
+ });
38
+ }
39
+ /**
40
+ * Encodes the parameters for the "installModule" function.
41
+ * @param options - The options for the installModule function.
42
+ * @returns The encoded ABI parameters.
43
+ * @extension ERC7579
44
+ * @example
45
+ * ```ts
46
+ * import { encodeInstallModuleParams } from "thirdweb/extensions/erc7579";
47
+ * const result = encodeInstallModuleParams({
48
+ * moduleTypeId: ...,
49
+ * module: ...,
50
+ * initData: ...,
51
+ * });
52
+ * ```
53
+ */
54
+ export function encodeInstallModuleParams(options) {
55
+ return encodeAbiParameters(FN_INPUTS, [
56
+ options.moduleTypeId,
57
+ options.module,
58
+ options.initData,
59
+ ]);
60
+ }
61
+ /**
62
+ * Encodes the "installModule" function into a Hex string with its parameters.
63
+ * @param options - The options for the installModule function.
64
+ * @returns The encoded hexadecimal string.
65
+ * @extension ERC7579
66
+ * @example
67
+ * ```ts
68
+ * import { encodeInstallModule } from "thirdweb/extensions/erc7579";
69
+ * const result = encodeInstallModule({
70
+ * moduleTypeId: ...,
71
+ * module: ...,
72
+ * initData: ...,
73
+ * });
74
+ * ```
75
+ */
76
+ export function encodeInstallModule(options) {
77
+ // we do a "manual" concat here to avoid the overhead of the "concatHex" function
78
+ // we can do this because we know the specific formats of the values
79
+ return (FN_SELECTOR +
80
+ encodeInstallModuleParams(options).slice(2));
81
+ }
82
+ /**
83
+ * Prepares a transaction to call the "installModule" function on the contract.
84
+ * @param options - The options for the "installModule" function.
85
+ * @returns A prepared transaction object.
86
+ * @extension ERC7579
87
+ * @example
88
+ * ```ts
89
+ * import { sendTransaction } from "thirdweb";
90
+ * import { installModule } from "thirdweb/extensions/erc7579";
91
+ *
92
+ * const transaction = installModule({
93
+ * contract,
94
+ * moduleTypeId: ...,
95
+ * module: ...,
96
+ * initData: ...,
97
+ * overrides: {
98
+ * ...
99
+ * }
100
+ * });
101
+ *
102
+ * // Send the transaction
103
+ * await sendTransaction({ transaction, account });
104
+ * ```
105
+ */
106
+ export function installModule(options) {
107
+ const asyncOptions = once(async () => {
108
+ return "asyncParams" in options ? await options.asyncParams() : options;
109
+ });
110
+ return prepareContractCall({
111
+ contract: options.contract,
112
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
113
+ params: async () => {
114
+ const resolvedOptions = await asyncOptions();
115
+ return [
116
+ resolvedOptions.moduleTypeId,
117
+ resolvedOptions.module,
118
+ resolvedOptions.initData,
119
+ ];
120
+ },
121
+ value: async () => (await asyncOptions()).overrides?.value,
122
+ accessList: async () => (await asyncOptions()).overrides?.accessList,
123
+ gas: async () => (await asyncOptions()).overrides?.gas,
124
+ gasPrice: async () => (await asyncOptions()).overrides?.gasPrice,
125
+ maxFeePerGas: async () => (await asyncOptions()).overrides?.maxFeePerGas,
126
+ maxPriorityFeePerGas: async () => (await asyncOptions()).overrides?.maxPriorityFeePerGas,
127
+ nonce: async () => (await asyncOptions()).overrides?.nonce,
128
+ extraGas: async () => (await asyncOptions()).overrides?.extraGas,
129
+ erc20Value: async () => (await asyncOptions()).overrides?.erc20Value,
130
+ });
131
+ }
132
+ //# sourceMappingURL=installModule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"installModule.js","sourceRoot":"","sources":["../../../../../../../src/extensions/erc7579/__generated__/IERC7579Account/write/installModule.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,132 @@
1
+ import { prepareContractCall } from "../../../../../transaction/prepare-contract-call.js";
2
+ import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
3
+ import { once } from "../../../../../utils/promise/once.js";
4
+ import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
5
+ export const FN_SELECTOR = "0xa71763a8";
6
+ const FN_INPUTS = [
7
+ {
8
+ type: "uint256",
9
+ name: "moduleTypeId",
10
+ },
11
+ {
12
+ type: "address",
13
+ name: "module",
14
+ },
15
+ {
16
+ type: "bytes",
17
+ name: "deInitData",
18
+ },
19
+ ];
20
+ const FN_OUTPUTS = [];
21
+ /**
22
+ * Checks if the `uninstallModule` method is supported by the given contract.
23
+ * @param availableSelectors An array of 4byte function selectors of the contract. You can get this in various ways, such as using "whatsabi" or if you have the ABI of the contract available you can use it to generate the selectors.
24
+ * @returns A boolean indicating if the `uninstallModule` method is supported.
25
+ * @extension ERC7579
26
+ * @example
27
+ * ```ts
28
+ * import { isUninstallModuleSupported } from "thirdweb/extensions/erc7579";
29
+ *
30
+ * const supported = isUninstallModuleSupported(["0x..."]);
31
+ * ```
32
+ */
33
+ export function isUninstallModuleSupported(availableSelectors) {
34
+ return detectMethod({
35
+ availableSelectors,
36
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
37
+ });
38
+ }
39
+ /**
40
+ * Encodes the parameters for the "uninstallModule" function.
41
+ * @param options - The options for the uninstallModule function.
42
+ * @returns The encoded ABI parameters.
43
+ * @extension ERC7579
44
+ * @example
45
+ * ```ts
46
+ * import { encodeUninstallModuleParams } from "thirdweb/extensions/erc7579";
47
+ * const result = encodeUninstallModuleParams({
48
+ * moduleTypeId: ...,
49
+ * module: ...,
50
+ * deInitData: ...,
51
+ * });
52
+ * ```
53
+ */
54
+ export function encodeUninstallModuleParams(options) {
55
+ return encodeAbiParameters(FN_INPUTS, [
56
+ options.moduleTypeId,
57
+ options.module,
58
+ options.deInitData,
59
+ ]);
60
+ }
61
+ /**
62
+ * Encodes the "uninstallModule" function into a Hex string with its parameters.
63
+ * @param options - The options for the uninstallModule function.
64
+ * @returns The encoded hexadecimal string.
65
+ * @extension ERC7579
66
+ * @example
67
+ * ```ts
68
+ * import { encodeUninstallModule } from "thirdweb/extensions/erc7579";
69
+ * const result = encodeUninstallModule({
70
+ * moduleTypeId: ...,
71
+ * module: ...,
72
+ * deInitData: ...,
73
+ * });
74
+ * ```
75
+ */
76
+ export function encodeUninstallModule(options) {
77
+ // we do a "manual" concat here to avoid the overhead of the "concatHex" function
78
+ // we can do this because we know the specific formats of the values
79
+ return (FN_SELECTOR +
80
+ encodeUninstallModuleParams(options).slice(2));
81
+ }
82
+ /**
83
+ * Prepares a transaction to call the "uninstallModule" function on the contract.
84
+ * @param options - The options for the "uninstallModule" function.
85
+ * @returns A prepared transaction object.
86
+ * @extension ERC7579
87
+ * @example
88
+ * ```ts
89
+ * import { sendTransaction } from "thirdweb";
90
+ * import { uninstallModule } from "thirdweb/extensions/erc7579";
91
+ *
92
+ * const transaction = uninstallModule({
93
+ * contract,
94
+ * moduleTypeId: ...,
95
+ * module: ...,
96
+ * deInitData: ...,
97
+ * overrides: {
98
+ * ...
99
+ * }
100
+ * });
101
+ *
102
+ * // Send the transaction
103
+ * await sendTransaction({ transaction, account });
104
+ * ```
105
+ */
106
+ export function uninstallModule(options) {
107
+ const asyncOptions = once(async () => {
108
+ return "asyncParams" in options ? await options.asyncParams() : options;
109
+ });
110
+ return prepareContractCall({
111
+ contract: options.contract,
112
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
113
+ params: async () => {
114
+ const resolvedOptions = await asyncOptions();
115
+ return [
116
+ resolvedOptions.moduleTypeId,
117
+ resolvedOptions.module,
118
+ resolvedOptions.deInitData,
119
+ ];
120
+ },
121
+ value: async () => (await asyncOptions()).overrides?.value,
122
+ accessList: async () => (await asyncOptions()).overrides?.accessList,
123
+ gas: async () => (await asyncOptions()).overrides?.gas,
124
+ gasPrice: async () => (await asyncOptions()).overrides?.gasPrice,
125
+ maxFeePerGas: async () => (await asyncOptions()).overrides?.maxFeePerGas,
126
+ maxPriorityFeePerGas: async () => (await asyncOptions()).overrides?.maxPriorityFeePerGas,
127
+ nonce: async () => (await asyncOptions()).overrides?.nonce,
128
+ extraGas: async () => (await asyncOptions()).overrides?.extraGas,
129
+ erc20Value: async () => (await asyncOptions()).overrides?.erc20Value,
130
+ });
131
+ }
132
+ //# sourceMappingURL=uninstallModule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uninstallModule.js","sourceRoot":"","sources":["../../../../../../../src/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,IAAI,EAAE,MAAM,sCAAsC,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAiBhF,MAAM,CAAC,MAAM,WAAW,GAAG,YAAqB,CAAC;AACjD,MAAM,SAAS,GAAG;IAChB;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,cAAc;KACrB;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,QAAQ;KACf;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,YAAY;KACnB;CACO,CAAC;AACX,MAAM,UAAU,GAAG,EAAW,CAAC;AAE/B;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,0BAA0B,CAAC,kBAA4B;IACrE,OAAO,YAAY,CAAC;QAClB,kBAAkB;QAClB,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAU;KACtD,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAA8B;IACxE,OAAO,mBAAmB,CAAC,SAAS,EAAE;QACpC,OAAO,CAAC,YAAY;QACpB,OAAO,CAAC,MAAM;QACd,OAAO,CAAC,UAAU;KACnB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAA8B;IAClE,iFAAiF;IACjF,oEAAoE;IACpE,OAAO,CAAC,WAAW;QACjB,2BAA2B,CAAC,OAAO,CAAC,CAAC,KAAK,CACxC,CAAC,CACF,CAAqC,CAAC;AAC3C,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,eAAe,CAC7B,OAKC;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE;QACnC,OAAO,aAAa,IAAI,OAAO,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,OAAO,mBAAmB,CAAC;QACzB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAU;QACrD,MAAM,EAAE,KAAK,IAAI,EAAE;YACjB,MAAM,eAAe,GAAG,MAAM,YAAY,EAAE,CAAC;YAC7C,OAAO;gBACL,eAAe,CAAC,YAAY;gBAC5B,eAAe,CAAC,MAAM;gBACtB,eAAe,CAAC,UAAU;aAClB,CAAC;QACb,CAAC;QACD,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK;QAC1D,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,UAAU;QACpE,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,GAAG;QACtD,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ;QAChE,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,YAAY;QACxE,oBAAoB,EAAE,KAAK,IAAI,EAAE,CAC/B,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,oBAAoB;QACxD,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK;QAC1D,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ;QAChE,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,UAAU;KACrE,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { prepareEvent } from "../../../../../event/prepare-event.js";
2
+ /**
3
+ * Creates an event object for the OwnershipTransferred event.
4
+ * @param filters - Optional filters to apply to the event.
5
+ * @returns The prepared event object.
6
+ * @extension ERC7579
7
+ * @example
8
+ * ```ts
9
+ * import { getContractEvents } from "thirdweb";
10
+ * import { ownershipTransferredEvent } from "thirdweb/extensions/erc7579";
11
+ *
12
+ * const events = await getContractEvents({
13
+ * contract,
14
+ * events: [
15
+ * ownershipTransferredEvent({
16
+ * oldOwner: ...,
17
+ * newOwner: ...,
18
+ * })
19
+ * ],
20
+ * });
21
+ * ```
22
+ */
23
+ export function ownershipTransferredEvent(filters = {}) {
24
+ return prepareEvent({
25
+ signature: "event OwnershipTransferred(address indexed oldOwner, address indexed newOwner)",
26
+ filters,
27
+ });
28
+ }
29
+ //# sourceMappingURL=OwnershipTransferred.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OwnershipTransferred.js","sourceRoot":"","sources":["../../../../../../../src/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAmBrE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,yBAAyB,CACvC,UAA4C,EAAE;IAE9C,OAAO,YAAY,CAAC;QAClB,SAAS,EACP,gFAAgF;QAClF,OAAO;KACR,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { prepareEvent } from "../../../../../event/prepare-event.js";
2
+ /**
3
+ * Creates an event object for the Upgraded event.
4
+ * @param filters - Optional filters to apply to the event.
5
+ * @returns The prepared event object.
6
+ * @extension ERC7579
7
+ * @example
8
+ * ```ts
9
+ * import { getContractEvents } from "thirdweb";
10
+ * import { upgradedEvent } from "thirdweb/extensions/erc7579";
11
+ *
12
+ * const events = await getContractEvents({
13
+ * contract,
14
+ * events: [
15
+ * upgradedEvent({
16
+ * implementation: ...,
17
+ * })
18
+ * ],
19
+ * });
20
+ * ```
21
+ */
22
+ export function upgradedEvent(filters = {}) {
23
+ return prepareEvent({
24
+ signature: "event Upgraded(address indexed implementation)",
25
+ filters,
26
+ });
27
+ }
28
+ //# sourceMappingURL=Upgraded.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Upgraded.js","sourceRoot":"","sources":["../../../../../../../src/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAcrE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,aAAa,CAAC,UAAgC,EAAE;IAC9D,OAAO,YAAY,CAAC;QAClB,SAAS,EAAE,gDAAgD;QAC3D,OAAO;KACR,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,64 @@
1
+ import { readContract } from "../../../../../transaction/read-contract.js";
2
+ import { decodeAbiParameters } from "viem";
3
+ import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
4
+ export const FN_SELECTOR = "0x11464fbe";
5
+ const FN_INPUTS = [];
6
+ const FN_OUTPUTS = [
7
+ {
8
+ type: "address",
9
+ },
10
+ ];
11
+ /**
12
+ * Checks if the `accountImplementation` method is supported by the given contract.
13
+ * @param availableSelectors An array of 4byte function selectors of the contract. You can get this in various ways, such as using "whatsabi" or if you have the ABI of the contract available you can use it to generate the selectors.
14
+ * @returns A boolean indicating if the `accountImplementation` method is supported.
15
+ * @extension ERC7579
16
+ * @example
17
+ * ```ts
18
+ * import { isAccountImplementationSupported } from "thirdweb/extensions/erc7579";
19
+ * const supported = isAccountImplementationSupported(["0x..."]);
20
+ * ```
21
+ */
22
+ export function isAccountImplementationSupported(availableSelectors) {
23
+ return detectMethod({
24
+ availableSelectors,
25
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
26
+ });
27
+ }
28
+ /**
29
+ * Decodes the result of the accountImplementation function call.
30
+ * @param result - The hexadecimal result to decode.
31
+ * @returns The decoded result as per the FN_OUTPUTS definition.
32
+ * @extension ERC7579
33
+ * @example
34
+ * ```ts
35
+ * import { decodeAccountImplementationResult } from "thirdweb/extensions/erc7579";
36
+ * const result = decodeAccountImplementationResultResult("...");
37
+ * ```
38
+ */
39
+ export function decodeAccountImplementationResult(result) {
40
+ return decodeAbiParameters(FN_OUTPUTS, result)[0];
41
+ }
42
+ /**
43
+ * Calls the "accountImplementation" function on the contract.
44
+ * @param options - The options for the accountImplementation function.
45
+ * @returns The parsed result of the function call.
46
+ * @extension ERC7579
47
+ * @example
48
+ * ```ts
49
+ * import { accountImplementation } from "thirdweb/extensions/erc7579";
50
+ *
51
+ * const result = await accountImplementation({
52
+ * contract,
53
+ * });
54
+ *
55
+ * ```
56
+ */
57
+ export async function accountImplementation(options) {
58
+ return readContract({
59
+ contract: options.contract,
60
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
61
+ params: [],
62
+ });
63
+ }
64
+ //# sourceMappingURL=accountImplementation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accountImplementation.js","sourceRoot":"","sources":["../../../../../../../src/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAG3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAEhF,MAAM,CAAC,MAAM,WAAW,GAAG,YAAqB,CAAC;AACjD,MAAM,SAAS,GAAG,EAAW,CAAC;AAC9B,MAAM,UAAU,GAAG;IACjB;QACE,IAAI,EAAE,SAAS;KAChB;CACO,CAAC;AAEX;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gCAAgC,CAAC,kBAA4B;IAC3E,OAAO,YAAY,CAAC;QAClB,kBAAkB;QAClB,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAU;KACtD,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iCAAiC,CAAC,MAAW;IAC3D,OAAO,mBAAmB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAA+B;IACzE,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAU;QACrD,MAAM,EAAE,EAAE;KACX,CAAC,CAAC;AACL,CAAC"}