thirdweb 5.44.1 → 5.45.0-nightly-bbb4f1c53f982b1f9de00fb30efbf2c77f155e96-20240809000532

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 (588) hide show
  1. package/dist/cjs/adapters/ethers5.js +3 -2
  2. package/dist/cjs/adapters/ethers5.js.map +1 -1
  3. package/dist/cjs/adapters/wallet-adapter.js +3 -0
  4. package/dist/cjs/adapters/wallet-adapter.js.map +1 -1
  5. package/dist/cjs/auth/constants.js +1 -2
  6. package/dist/cjs/auth/constants.js.map +1 -1
  7. package/dist/cjs/auth/verify-hash.js +1 -1
  8. package/dist/cjs/auth/verify-hash.js.map +1 -1
  9. package/dist/cjs/chains/chain-definitions/abstract-testnet.js +20 -0
  10. package/dist/cjs/chains/chain-definitions/abstract-testnet.js.map +1 -0
  11. package/dist/cjs/chains/chain-definitions/fraxtal-testnet.js +20 -0
  12. package/dist/cjs/chains/chain-definitions/fraxtal-testnet.js.map +1 -0
  13. package/dist/cjs/chains/chain-definitions/mode-testnet.js +20 -0
  14. package/dist/cjs/chains/chain-definitions/mode-testnet.js.map +1 -0
  15. package/dist/cjs/chains/utils.js +7 -0
  16. package/dist/cjs/chains/utils.js.map +1 -1
  17. package/dist/cjs/exports/chains.js +3 -1
  18. package/dist/cjs/exports/chains.js.map +1 -1
  19. package/dist/cjs/exports/react.js +4 -2
  20. package/dist/cjs/exports/react.js.map +1 -1
  21. package/dist/cjs/exports/wallets/in-app.js +2 -2
  22. package/dist/cjs/exports/wallets/in-app.js.map +1 -1
  23. package/dist/cjs/exports/wallets.js +4 -1
  24. package/dist/cjs/exports/wallets.js.map +1 -1
  25. package/dist/cjs/react/core/hooks/others/useProfiles.js +36 -0
  26. package/dist/cjs/react/core/hooks/others/useProfiles.js.map +1 -0
  27. package/dist/cjs/react/core/utils/{socialIcons.js → walletIcon.js} +26 -1
  28. package/dist/cjs/react/core/utils/walletIcon.js.map +1 -0
  29. package/dist/cjs/react/native/ui/components/TokenIcon.js +2 -2
  30. package/dist/cjs/react/native/ui/components/TokenIcon.js.map +1 -1
  31. package/dist/cjs/react/native/ui/connect/ConnectButton.js +13 -8
  32. package/dist/cjs/react/native/ui/connect/ConnectButton.js.map +1 -1
  33. package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js +13 -8
  34. package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
  35. package/dist/cjs/react/web/ui/ConnectWallet/Details.js +22 -5
  36. package/dist/cjs/react/web/ui/ConnectWallet/Details.js.map +1 -1
  37. package/dist/cjs/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js +2 -2
  38. package/dist/cjs/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js.map +1 -1
  39. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js +13 -8
  40. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js.map +1 -1
  41. package/dist/cjs/react/web/ui/ConnectWallet/Modal/screen.js +1 -1
  42. package/dist/cjs/react/web/ui/ConnectWallet/Modal/screen.js.map +1 -1
  43. package/dist/cjs/react/web/ui/ConnectWallet/WalletSelector.js +2 -2
  44. package/dist/cjs/react/web/ui/ConnectWallet/WalletSelector.js.map +1 -1
  45. package/dist/cjs/react/web/ui/ConnectWallet/icons/AddUserIcon.js +12 -0
  46. package/dist/cjs/react/web/ui/ConnectWallet/icons/AddUserIcon.js.map +1 -0
  47. package/dist/cjs/react/web/ui/ConnectWallet/icons/MultiUserIcon.js +12 -0
  48. package/dist/cjs/react/web/ui/ConnectWallet/icons/MultiUserIcon.js.map +1 -0
  49. package/dist/cjs/react/web/ui/ConnectWallet/locale/de.js +6 -0
  50. package/dist/cjs/react/web/ui/ConnectWallet/locale/de.js.map +1 -1
  51. package/dist/cjs/react/web/ui/ConnectWallet/locale/en.js +6 -0
  52. package/dist/cjs/react/web/ui/ConnectWallet/locale/en.js.map +1 -1
  53. package/dist/cjs/react/web/ui/ConnectWallet/locale/es.js +6 -0
  54. package/dist/cjs/react/web/ui/ConnectWallet/locale/es.js.map +1 -1
  55. package/dist/cjs/react/web/ui/ConnectWallet/locale/fr.js +6 -0
  56. package/dist/cjs/react/web/ui/ConnectWallet/locale/fr.js.map +1 -1
  57. package/dist/cjs/react/web/ui/ConnectWallet/locale/ja.js +6 -0
  58. package/dist/cjs/react/web/ui/ConnectWallet/locale/ja.js.map +1 -1
  59. package/dist/cjs/react/web/ui/ConnectWallet/locale/kr.js +6 -0
  60. package/dist/cjs/react/web/ui/ConnectWallet/locale/kr.js.map +1 -1
  61. package/dist/cjs/react/web/ui/ConnectWallet/locale/tl.js +6 -0
  62. package/dist/cjs/react/web/ui/ConnectWallet/locale/tl.js.map +1 -1
  63. package/dist/cjs/react/web/ui/ConnectWallet/locale/vi.js +6 -0
  64. package/dist/cjs/react/web/ui/ConnectWallet/locale/vi.js.map +1 -1
  65. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +3 -1
  66. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  67. package/dist/cjs/react/web/ui/ConnectWallet/screens/LinkProfileScreen.js +42 -0
  68. package/dist/cjs/react/web/ui/ConnectWallet/screens/LinkProfileScreen.js.map +1 -0
  69. package/dist/cjs/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.js +58 -0
  70. package/dist/cjs/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.js.map +1 -0
  71. package/dist/cjs/react/web/ui/ConnectWallet/screens/ManageWalletScreen.js +8 -5
  72. package/dist/cjs/react/web/ui/ConnectWallet/screens/ManageWalletScreen.js.map +1 -1
  73. package/dist/cjs/react/web/ui/PayEmbed.js +13 -8
  74. package/dist/cjs/react/web/ui/PayEmbed.js.map +1 -1
  75. package/dist/cjs/react/web/ui/components/Spinner.js +1 -1
  76. package/dist/cjs/react/web/ui/components/Spinner.js.map +1 -1
  77. package/dist/cjs/react/web/ui/components/TokenIcon.js +2 -2
  78. package/dist/cjs/react/web/ui/components/TokenIcon.js.map +1 -1
  79. package/dist/cjs/react/web/ui/components/WalletImage.js +6 -32
  80. package/dist/cjs/react/web/ui/components/WalletImage.js.map +1 -1
  81. package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js +8 -4
  82. package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js.map +1 -1
  83. package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletFormUI.js +1 -1
  84. package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletFormUI.js.map +1 -1
  85. package/dist/cjs/react/web/wallets/in-app/InAppWalletConnectUI.js +8 -4
  86. package/dist/cjs/react/web/wallets/in-app/InAppWalletConnectUI.js.map +1 -1
  87. package/dist/cjs/react/web/wallets/in-app/InAppWalletFormUI.js +5 -5
  88. package/dist/cjs/react/web/wallets/in-app/InAppWalletFormUI.js.map +1 -1
  89. package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js +22 -16
  90. package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
  91. package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js +36 -49
  92. package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
  93. package/dist/cjs/react/web/wallets/shared/PassKeyLogin.js +47 -20
  94. package/dist/cjs/react/web/wallets/shared/PassKeyLogin.js.map +1 -1
  95. package/dist/cjs/react/web/wallets/shared/SocialLogin.js +33 -13
  96. package/dist/cjs/react/web/wallets/shared/SocialLogin.js.map +1 -1
  97. package/dist/cjs/react/web/wallets/shared/locale/en.js +1 -1
  98. package/dist/cjs/react/web/wallets/shared/oauthSignIn.js +1 -1
  99. package/dist/cjs/react/web/wallets/shared/oauthSignIn.js.map +1 -1
  100. package/dist/cjs/reactive/store.js +3 -0
  101. package/dist/cjs/reactive/store.js.map +1 -1
  102. package/dist/cjs/transaction/serialize-transaction.js +20 -142
  103. package/dist/cjs/transaction/serialize-transaction.js.map +1 -1
  104. package/dist/cjs/version.js +1 -1
  105. package/dist/cjs/version.js.map +1 -1
  106. package/dist/cjs/wallets/coinbase/coinbase-wallet.js +8 -1
  107. package/dist/cjs/wallets/coinbase/coinbase-wallet.js.map +1 -1
  108. package/dist/cjs/wallets/create-wallet.js +8 -1
  109. package/dist/cjs/wallets/create-wallet.js.map +1 -1
  110. package/dist/cjs/wallets/in-app/core/authentication/getLoginPath.js +14 -3
  111. package/dist/cjs/wallets/in-app/core/authentication/getLoginPath.js.map +1 -1
  112. package/dist/cjs/wallets/in-app/core/authentication/linkAccount.js +67 -0
  113. package/dist/cjs/wallets/in-app/core/authentication/linkAccount.js.map +1 -0
  114. package/dist/cjs/wallets/in-app/core/authentication/siwe.js +47 -0
  115. package/dist/cjs/wallets/in-app/core/authentication/siwe.js.map +1 -0
  116. package/dist/cjs/wallets/in-app/core/authentication/{type.js → types.js} +1 -1
  117. package/dist/cjs/wallets/in-app/core/authentication/types.js.map +1 -0
  118. package/dist/cjs/wallets/in-app/core/wallet/ecosystem-core.js +8 -1
  119. package/dist/cjs/wallets/in-app/core/wallet/ecosystem-core.js.map +1 -1
  120. package/dist/cjs/wallets/in-app/core/wallet/in-app-core.js +47 -1
  121. package/dist/cjs/wallets/in-app/core/wallet/in-app-core.js.map +1 -1
  122. package/dist/cjs/wallets/in-app/core/wallet/index.js +3 -3
  123. package/dist/cjs/wallets/in-app/core/wallet/index.js.map +1 -1
  124. package/dist/cjs/wallets/in-app/core/wallet/profiles.js +60 -0
  125. package/dist/cjs/wallets/in-app/core/wallet/profiles.js.map +1 -0
  126. package/dist/cjs/wallets/in-app/native/auth/index.js +3 -3
  127. package/dist/cjs/wallets/in-app/native/auth/index.js.map +1 -1
  128. package/dist/cjs/wallets/in-app/native/auth/native-auth.js +47 -112
  129. package/dist/cjs/wallets/in-app/native/auth/native-auth.js.map +1 -1
  130. package/dist/cjs/wallets/in-app/native/helpers/auth/middleware.js +5 -5
  131. package/dist/cjs/wallets/in-app/native/helpers/auth/middleware.js.map +1 -1
  132. package/dist/cjs/wallets/in-app/native/native-connector.js +76 -36
  133. package/dist/cjs/wallets/in-app/native/native-connector.js.map +1 -1
  134. package/dist/cjs/wallets/in-app/web/lib/auth/abstract-login.js +0 -2
  135. package/dist/cjs/wallets/in-app/web/lib/auth/abstract-login.js.map +1 -1
  136. package/dist/cjs/wallets/in-app/web/lib/auth/base-login.js +49 -148
  137. package/dist/cjs/wallets/in-app/web/lib/auth/base-login.js.map +1 -1
  138. package/dist/cjs/wallets/in-app/web/lib/auth/iframe-auth.js +26 -12
  139. package/dist/cjs/wallets/in-app/web/lib/auth/iframe-auth.js.map +1 -1
  140. package/dist/cjs/wallets/in-app/web/lib/auth/index.js +3 -3
  141. package/dist/cjs/wallets/in-app/web/lib/auth/index.js.map +1 -1
  142. package/dist/cjs/wallets/in-app/web/lib/auth/oauth.js +2 -2
  143. package/dist/cjs/wallets/in-app/web/lib/auth/oauth.js.map +1 -1
  144. package/dist/cjs/wallets/in-app/web/lib/auth/otp.js +89 -0
  145. package/dist/cjs/wallets/in-app/web/lib/auth/otp.js.map +1 -0
  146. package/dist/cjs/wallets/in-app/web/lib/in-app-account.js +7 -7
  147. package/dist/cjs/wallets/in-app/web/lib/in-app-account.js.map +1 -1
  148. package/dist/cjs/wallets/in-app/web/lib/web-connector.js +89 -30
  149. package/dist/cjs/wallets/in-app/web/lib/web-connector.js.map +1 -1
  150. package/dist/cjs/wallets/manager/index.js +41 -5
  151. package/dist/cjs/wallets/manager/index.js.map +1 -1
  152. package/dist/cjs/wallets/native/create-wallet.js +8 -1
  153. package/dist/cjs/wallets/native/create-wallet.js.map +1 -1
  154. package/dist/cjs/wallets/smart/lib/utils.js +4 -1
  155. package/dist/cjs/wallets/smart/lib/utils.js.map +1 -1
  156. package/dist/cjs/wallets/smart/smart-wallet.js +8 -1
  157. package/dist/cjs/wallets/smart/smart-wallet.js.map +1 -1
  158. package/dist/esm/adapters/ethers5.js +3 -2
  159. package/dist/esm/adapters/ethers5.js.map +1 -1
  160. package/dist/esm/adapters/wallet-adapter.js +3 -0
  161. package/dist/esm/adapters/wallet-adapter.js.map +1 -1
  162. package/dist/esm/auth/constants.js +0 -1
  163. package/dist/esm/auth/constants.js.map +1 -1
  164. package/dist/esm/auth/verify-hash.js +2 -2
  165. package/dist/esm/auth/verify-hash.js.map +1 -1
  166. package/dist/esm/chains/chain-definitions/abstract-testnet.js +17 -0
  167. package/dist/esm/chains/chain-definitions/abstract-testnet.js.map +1 -0
  168. package/dist/esm/chains/chain-definitions/fraxtal-testnet.js +17 -0
  169. package/dist/esm/chains/chain-definitions/fraxtal-testnet.js.map +1 -0
  170. package/dist/esm/chains/chain-definitions/mode-testnet.js +17 -0
  171. package/dist/esm/chains/chain-definitions/mode-testnet.js.map +1 -0
  172. package/dist/esm/chains/utils.js +6 -0
  173. package/dist/esm/chains/utils.js.map +1 -1
  174. package/dist/esm/exports/chains.js +1 -0
  175. package/dist/esm/exports/chains.js.map +1 -1
  176. package/dist/esm/exports/react.js +1 -0
  177. package/dist/esm/exports/react.js.map +1 -1
  178. package/dist/esm/exports/wallets/embedded.js +1 -1
  179. package/dist/esm/exports/wallets/embedded.js.map +1 -1
  180. package/dist/esm/exports/wallets/in-app.js +2 -2
  181. package/dist/esm/exports/wallets/in-app.js.map +1 -1
  182. package/dist/esm/exports/wallets/in-app.native.js +1 -1
  183. package/dist/esm/exports/wallets/in-app.native.js.map +1 -1
  184. package/dist/esm/exports/wallets.js +1 -0
  185. package/dist/esm/exports/wallets.js.map +1 -1
  186. package/dist/esm/react/core/hooks/others/useProfiles.js +33 -0
  187. package/dist/esm/react/core/hooks/others/useProfiles.js.map +1 -0
  188. package/dist/esm/react/core/utils/{socialIcons.js → walletIcon.js} +25 -1
  189. package/dist/esm/react/core/utils/walletIcon.js.map +1 -0
  190. package/dist/esm/react/native/ui/components/TokenIcon.js +1 -1
  191. package/dist/esm/react/native/ui/components/TokenIcon.js.map +1 -1
  192. package/dist/esm/react/native/ui/connect/ConnectButton.js +14 -9
  193. package/dist/esm/react/native/ui/connect/ConnectButton.js.map +1 -1
  194. package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js +13 -8
  195. package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
  196. package/dist/esm/react/web/ui/ConnectWallet/Details.js +22 -5
  197. package/dist/esm/react/web/ui/ConnectWallet/Details.js.map +1 -1
  198. package/dist/esm/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js +1 -1
  199. package/dist/esm/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js.map +1 -1
  200. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js +13 -8
  201. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js.map +1 -1
  202. package/dist/esm/react/web/ui/ConnectWallet/Modal/screen.js +1 -1
  203. package/dist/esm/react/web/ui/ConnectWallet/Modal/screen.js.map +1 -1
  204. package/dist/esm/react/web/ui/ConnectWallet/WalletSelector.js +1 -1
  205. package/dist/esm/react/web/ui/ConnectWallet/WalletSelector.js.map +1 -1
  206. package/dist/esm/react/web/ui/ConnectWallet/icons/AddUserIcon.js +8 -0
  207. package/dist/esm/react/web/ui/ConnectWallet/icons/AddUserIcon.js.map +1 -0
  208. package/dist/esm/react/web/ui/ConnectWallet/icons/MultiUserIcon.js +8 -0
  209. package/dist/esm/react/web/ui/ConnectWallet/icons/MultiUserIcon.js.map +1 -0
  210. package/dist/esm/react/web/ui/ConnectWallet/locale/de.js +6 -0
  211. package/dist/esm/react/web/ui/ConnectWallet/locale/de.js.map +1 -1
  212. package/dist/esm/react/web/ui/ConnectWallet/locale/en.js +6 -0
  213. package/dist/esm/react/web/ui/ConnectWallet/locale/en.js.map +1 -1
  214. package/dist/esm/react/web/ui/ConnectWallet/locale/es.js +6 -0
  215. package/dist/esm/react/web/ui/ConnectWallet/locale/es.js.map +1 -1
  216. package/dist/esm/react/web/ui/ConnectWallet/locale/fr.js +6 -0
  217. package/dist/esm/react/web/ui/ConnectWallet/locale/fr.js.map +1 -1
  218. package/dist/esm/react/web/ui/ConnectWallet/locale/ja.js +6 -0
  219. package/dist/esm/react/web/ui/ConnectWallet/locale/ja.js.map +1 -1
  220. package/dist/esm/react/web/ui/ConnectWallet/locale/kr.js +6 -0
  221. package/dist/esm/react/web/ui/ConnectWallet/locale/kr.js.map +1 -1
  222. package/dist/esm/react/web/ui/ConnectWallet/locale/tl.js +6 -0
  223. package/dist/esm/react/web/ui/ConnectWallet/locale/tl.js.map +1 -1
  224. package/dist/esm/react/web/ui/ConnectWallet/locale/vi.js +6 -0
  225. package/dist/esm/react/web/ui/ConnectWallet/locale/vi.js.map +1 -1
  226. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +3 -1
  227. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  228. package/dist/esm/react/web/ui/ConnectWallet/screens/LinkProfileScreen.js +39 -0
  229. package/dist/esm/react/web/ui/ConnectWallet/screens/LinkProfileScreen.js.map +1 -0
  230. package/dist/esm/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.js +55 -0
  231. package/dist/esm/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.js.map +1 -0
  232. package/dist/esm/react/web/ui/ConnectWallet/screens/ManageWalletScreen.js +8 -5
  233. package/dist/esm/react/web/ui/ConnectWallet/screens/ManageWalletScreen.js.map +1 -1
  234. package/dist/esm/react/web/ui/PayEmbed.js +14 -9
  235. package/dist/esm/react/web/ui/PayEmbed.js.map +1 -1
  236. package/dist/esm/react/web/ui/components/Spinner.js +1 -1
  237. package/dist/esm/react/web/ui/components/Spinner.js.map +1 -1
  238. package/dist/esm/react/web/ui/components/TokenIcon.js +1 -1
  239. package/dist/esm/react/web/ui/components/TokenIcon.js.map +1 -1
  240. package/dist/esm/react/web/ui/components/WalletImage.js +4 -30
  241. package/dist/esm/react/web/ui/components/WalletImage.js.map +1 -1
  242. package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js +8 -4
  243. package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js.map +1 -1
  244. package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletFormUI.js +2 -2
  245. package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletFormUI.js.map +1 -1
  246. package/dist/esm/react/web/wallets/in-app/InAppWalletConnectUI.js +8 -4
  247. package/dist/esm/react/web/wallets/in-app/InAppWalletConnectUI.js.map +1 -1
  248. package/dist/esm/react/web/wallets/in-app/InAppWalletFormUI.js +5 -5
  249. package/dist/esm/react/web/wallets/in-app/InAppWalletFormUI.js.map +1 -1
  250. package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js +18 -12
  251. package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
  252. package/dist/esm/react/web/wallets/shared/OTPLoginUI.js +36 -49
  253. package/dist/esm/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
  254. package/dist/esm/react/web/wallets/shared/PassKeyLogin.js +47 -20
  255. package/dist/esm/react/web/wallets/shared/PassKeyLogin.js.map +1 -1
  256. package/dist/esm/react/web/wallets/shared/SocialLogin.js +33 -13
  257. package/dist/esm/react/web/wallets/shared/SocialLogin.js.map +1 -1
  258. package/dist/esm/react/web/wallets/shared/locale/en.js +1 -1
  259. package/dist/esm/react/web/wallets/shared/oauthSignIn.js +2 -2
  260. package/dist/esm/react/web/wallets/shared/oauthSignIn.js.map +1 -1
  261. package/dist/esm/reactive/store.js +3 -0
  262. package/dist/esm/reactive/store.js.map +1 -1
  263. package/dist/esm/transaction/serialize-transaction.js +21 -142
  264. package/dist/esm/transaction/serialize-transaction.js.map +1 -1
  265. package/dist/esm/version.js +1 -1
  266. package/dist/esm/version.js.map +1 -1
  267. package/dist/esm/wallets/coinbase/coinbase-wallet.js +8 -1
  268. package/dist/esm/wallets/coinbase/coinbase-wallet.js.map +1 -1
  269. package/dist/esm/wallets/create-wallet.js +8 -1
  270. package/dist/esm/wallets/create-wallet.js.map +1 -1
  271. package/dist/esm/wallets/in-app/core/authentication/getLoginPath.js +11 -1
  272. package/dist/esm/wallets/in-app/core/authentication/getLoginPath.js.map +1 -1
  273. package/dist/esm/wallets/in-app/core/authentication/linkAccount.js +63 -0
  274. package/dist/esm/wallets/in-app/core/authentication/linkAccount.js.map +1 -0
  275. package/dist/esm/wallets/in-app/core/authentication/siwe.js +44 -0
  276. package/dist/esm/wallets/in-app/core/authentication/siwe.js.map +1 -0
  277. package/dist/esm/wallets/in-app/core/authentication/{type.js → types.js} +1 -1
  278. package/dist/esm/wallets/in-app/core/authentication/types.js.map +1 -0
  279. package/dist/esm/wallets/in-app/core/wallet/ecosystem-core.js +8 -1
  280. package/dist/esm/wallets/in-app/core/wallet/ecosystem-core.js.map +1 -1
  281. package/dist/esm/wallets/in-app/core/wallet/in-app-core.js +47 -1
  282. package/dist/esm/wallets/in-app/core/wallet/in-app-core.js.map +1 -1
  283. package/dist/esm/wallets/in-app/core/wallet/index.js +2 -2
  284. package/dist/esm/wallets/in-app/core/wallet/index.js.map +1 -1
  285. package/dist/esm/wallets/in-app/core/wallet/profiles.js +56 -0
  286. package/dist/esm/wallets/in-app/core/wallet/profiles.js.map +1 -0
  287. package/dist/esm/wallets/in-app/native/auth/index.js +2 -2
  288. package/dist/esm/wallets/in-app/native/auth/index.js.map +1 -1
  289. package/dist/esm/wallets/in-app/native/auth/native-auth.js +47 -112
  290. package/dist/esm/wallets/in-app/native/auth/native-auth.js.map +1 -1
  291. package/dist/esm/wallets/in-app/native/helpers/auth/middleware.js +1 -1
  292. package/dist/esm/wallets/in-app/native/helpers/auth/middleware.js.map +1 -1
  293. package/dist/esm/wallets/in-app/native/native-connector.js +67 -27
  294. package/dist/esm/wallets/in-app/native/native-connector.js.map +1 -1
  295. package/dist/esm/wallets/in-app/web/lib/auth/abstract-login.js +0 -2
  296. package/dist/esm/wallets/in-app/web/lib/auth/abstract-login.js.map +1 -1
  297. package/dist/esm/wallets/in-app/web/lib/auth/base-login.js +49 -148
  298. package/dist/esm/wallets/in-app/web/lib/auth/base-login.js.map +1 -1
  299. package/dist/esm/wallets/in-app/web/lib/auth/iframe-auth.js +26 -12
  300. package/dist/esm/wallets/in-app/web/lib/auth/iframe-auth.js.map +1 -1
  301. package/dist/esm/wallets/in-app/web/lib/auth/index.js +2 -2
  302. package/dist/esm/wallets/in-app/web/lib/auth/index.js.map +1 -1
  303. package/dist/esm/wallets/in-app/web/lib/auth/oauth.js +3 -3
  304. package/dist/esm/wallets/in-app/web/lib/auth/oauth.js.map +1 -1
  305. package/dist/esm/wallets/in-app/web/lib/auth/otp.js +84 -0
  306. package/dist/esm/wallets/in-app/web/lib/auth/otp.js.map +1 -0
  307. package/dist/esm/wallets/in-app/web/lib/in-app-account.js +1 -1
  308. package/dist/esm/wallets/in-app/web/lib/in-app-account.js.map +1 -1
  309. package/dist/esm/wallets/in-app/web/lib/web-connector.js +88 -29
  310. package/dist/esm/wallets/in-app/web/lib/web-connector.js.map +1 -1
  311. package/dist/esm/wallets/manager/index.js +41 -5
  312. package/dist/esm/wallets/manager/index.js.map +1 -1
  313. package/dist/esm/wallets/native/create-wallet.js +8 -1
  314. package/dist/esm/wallets/native/create-wallet.js.map +1 -1
  315. package/dist/esm/wallets/smart/lib/utils.js +4 -1
  316. package/dist/esm/wallets/smart/lib/utils.js.map +1 -1
  317. package/dist/esm/wallets/smart/smart-wallet.js +8 -1
  318. package/dist/esm/wallets/smart/smart-wallet.js.map +1 -1
  319. package/dist/types/adapters/ethers5.d.ts +1 -1
  320. package/dist/types/adapters/ethers5.d.ts.map +1 -1
  321. package/dist/types/adapters/wallet-adapter.d.ts.map +1 -1
  322. package/dist/types/auth/constants.d.ts +0 -1
  323. package/dist/types/auth/constants.d.ts.map +1 -1
  324. package/dist/types/auth/verify-hash.d.ts.map +1 -1
  325. package/dist/types/chains/chain-definitions/abstract-testnet.d.ts +7 -0
  326. package/dist/types/chains/chain-definitions/abstract-testnet.d.ts.map +1 -0
  327. package/dist/types/chains/chain-definitions/fraxtal-testnet.d.ts +7 -0
  328. package/dist/types/chains/chain-definitions/fraxtal-testnet.d.ts.map +1 -0
  329. package/dist/types/chains/chain-definitions/mode-testnet.d.ts +7 -0
  330. package/dist/types/chains/chain-definitions/mode-testnet.d.ts.map +1 -0
  331. package/dist/types/chains/utils.d.ts +6 -0
  332. package/dist/types/chains/utils.d.ts.map +1 -1
  333. package/dist/types/exports/chains.d.ts +1 -0
  334. package/dist/types/exports/chains.d.ts.map +1 -1
  335. package/dist/types/exports/react.d.ts +1 -0
  336. package/dist/types/exports/react.d.ts.map +1 -1
  337. package/dist/types/exports/wallets/embedded.d.ts +1 -1
  338. package/dist/types/exports/wallets/embedded.d.ts.map +1 -1
  339. package/dist/types/exports/wallets/in-app.d.ts +2 -2
  340. package/dist/types/exports/wallets/in-app.d.ts.map +1 -1
  341. package/dist/types/exports/wallets/in-app.native.d.ts +1 -1
  342. package/dist/types/exports/wallets/in-app.native.d.ts.map +1 -1
  343. package/dist/types/exports/wallets.d.ts +1 -0
  344. package/dist/types/exports/wallets.d.ts.map +1 -1
  345. package/dist/types/react/core/hooks/others/useProfiles.d.ts +23 -0
  346. package/dist/types/react/core/hooks/others/useProfiles.d.ts.map +1 -0
  347. package/dist/types/react/core/providers/connection-manager.d.ts +3 -0
  348. package/dist/types/react/core/providers/connection-manager.d.ts.map +1 -1
  349. package/dist/types/react/core/utils/storage.d.ts +2 -2
  350. package/dist/types/react/core/utils/storage.d.ts.map +1 -1
  351. package/dist/types/react/core/utils/{socialIcons.d.ts → walletIcon.d.ts} +2 -1
  352. package/dist/types/react/core/utils/walletIcon.d.ts.map +1 -0
  353. package/dist/types/react/native/ui/connect/ConnectButton.d.ts.map +1 -1
  354. package/dist/types/react/native/ui/connect/ConnectModal.d.ts +1 -1
  355. package/dist/types/react/native/ui/connect/ConnectModal.d.ts.map +1 -1
  356. package/dist/types/react/native/ui/connect/InAppWalletUI.d.ts +1 -1
  357. package/dist/types/react/native/ui/connect/InAppWalletUI.d.ts.map +1 -1
  358. package/dist/types/react/web/ui/ConnectWallet/ConnectButton.d.ts.map +1 -1
  359. package/dist/types/react/web/ui/ConnectWallet/Details.d.ts.map +1 -1
  360. package/dist/types/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.d.ts.map +1 -1
  361. package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectEmbed.d.ts.map +1 -1
  362. package/dist/types/react/web/ui/ConnectWallet/icons/AddUserIcon.d.ts +6 -0
  363. package/dist/types/react/web/ui/ConnectWallet/icons/AddUserIcon.d.ts.map +1 -0
  364. package/dist/types/react/web/ui/ConnectWallet/icons/MultiUserIcon.d.ts +6 -0
  365. package/dist/types/react/web/ui/ConnectWallet/icons/MultiUserIcon.d.ts.map +1 -0
  366. package/dist/types/react/web/ui/ConnectWallet/locale/de.d.ts.map +1 -1
  367. package/dist/types/react/web/ui/ConnectWallet/locale/en.d.ts.map +1 -1
  368. package/dist/types/react/web/ui/ConnectWallet/locale/es.d.ts.map +1 -1
  369. package/dist/types/react/web/ui/ConnectWallet/locale/fr.d.ts.map +1 -1
  370. package/dist/types/react/web/ui/ConnectWallet/locale/ja.d.ts.map +1 -1
  371. package/dist/types/react/web/ui/ConnectWallet/locale/kr.d.ts.map +1 -1
  372. package/dist/types/react/web/ui/ConnectWallet/locale/tl.d.ts.map +1 -1
  373. package/dist/types/react/web/ui/ConnectWallet/locale/types.d.ts +6 -0
  374. package/dist/types/react/web/ui/ConnectWallet/locale/types.d.ts.map +1 -1
  375. package/dist/types/react/web/ui/ConnectWallet/locale/vi.d.ts.map +1 -1
  376. package/dist/types/react/web/ui/ConnectWallet/screens/LinkProfileScreen.d.ts +11 -0
  377. package/dist/types/react/web/ui/ConnectWallet/screens/LinkProfileScreen.d.ts.map +1 -0
  378. package/dist/types/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.d.ts +13 -0
  379. package/dist/types/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.d.ts.map +1 -0
  380. package/dist/types/react/web/ui/ConnectWallet/screens/ManageWalletScreen.d.ts.map +1 -1
  381. package/dist/types/react/web/ui/ConnectWallet/screens/types.d.ts +1 -1
  382. package/dist/types/react/web/ui/ConnectWallet/screens/types.d.ts.map +1 -1
  383. package/dist/types/react/web/ui/PayEmbed.d.ts.map +1 -1
  384. package/dist/types/react/web/ui/components/WalletImage.d.ts.map +1 -1
  385. package/dist/types/react/web/wallets/ecosystem/EcosystemWalletConnectUI.d.ts +1 -0
  386. package/dist/types/react/web/wallets/ecosystem/EcosystemWalletConnectUI.d.ts.map +1 -1
  387. package/dist/types/react/web/wallets/ecosystem/EcosystemWalletFormUI.d.ts +1 -0
  388. package/dist/types/react/web/wallets/ecosystem/EcosystemWalletFormUI.d.ts.map +1 -1
  389. package/dist/types/react/web/wallets/in-app/InAppWalletConnectUI.d.ts +2 -1
  390. package/dist/types/react/web/wallets/in-app/InAppWalletConnectUI.d.ts.map +1 -1
  391. package/dist/types/react/web/wallets/in-app/InAppWalletFormUI.d.ts +2 -1
  392. package/dist/types/react/web/wallets/in-app/InAppWalletFormUI.d.ts.map +1 -1
  393. package/dist/types/react/web/wallets/shared/ConnectWalletSocialOptions.d.ts +3 -1
  394. package/dist/types/react/web/wallets/shared/ConnectWalletSocialOptions.d.ts.map +1 -1
  395. package/dist/types/react/web/wallets/shared/OTPLoginUI.d.ts +1 -0
  396. package/dist/types/react/web/wallets/shared/OTPLoginUI.d.ts.map +1 -1
  397. package/dist/types/react/web/wallets/shared/PassKeyLogin.d.ts +4 -1
  398. package/dist/types/react/web/wallets/shared/PassKeyLogin.d.ts.map +1 -1
  399. package/dist/types/react/web/wallets/shared/SocialLogin.d.ts +3 -0
  400. package/dist/types/react/web/wallets/shared/SocialLogin.d.ts.map +1 -1
  401. package/dist/types/reactive/store.d.ts.map +1 -1
  402. package/dist/types/transaction/serialize-transaction.d.ts +8 -8
  403. package/dist/types/transaction/serialize-transaction.d.ts.map +1 -1
  404. package/dist/types/utils/any-evm/keyless-transaction.d.ts +1 -1
  405. package/dist/types/version.d.ts +1 -1
  406. package/dist/types/version.d.ts.map +1 -1
  407. package/dist/types/wallets/coinbase/coinbase-wallet.d.ts.map +1 -1
  408. package/dist/types/wallets/create-wallet.d.ts.map +1 -1
  409. package/dist/types/wallets/ecosystem/types.d.ts +2 -8
  410. package/dist/types/wallets/ecosystem/types.d.ts.map +1 -1
  411. package/dist/types/wallets/in-app/core/authentication/getLoginPath.d.ts +8 -3
  412. package/dist/types/wallets/in-app/core/authentication/getLoginPath.d.ts.map +1 -1
  413. package/dist/types/wallets/in-app/core/authentication/linkAccount.d.ts +24 -0
  414. package/dist/types/wallets/in-app/core/authentication/linkAccount.d.ts.map +1 -0
  415. package/dist/types/wallets/in-app/core/authentication/siwe.d.ts +14 -0
  416. package/dist/types/wallets/in-app/core/authentication/siwe.d.ts.map +1 -0
  417. package/dist/types/wallets/in-app/core/authentication/{type.d.ts → types.d.ts} +17 -2
  418. package/dist/types/wallets/in-app/core/authentication/types.d.ts.map +1 -0
  419. package/dist/types/wallets/in-app/core/interfaces/connector.d.ts +4 -3
  420. package/dist/types/wallets/in-app/core/interfaces/connector.d.ts.map +1 -1
  421. package/dist/types/wallets/in-app/core/wallet/ecosystem-core.d.ts.map +1 -1
  422. package/dist/types/wallets/in-app/core/wallet/in-app-core.d.ts.map +1 -1
  423. package/dist/types/wallets/in-app/core/wallet/profiles.d.ts +48 -0
  424. package/dist/types/wallets/in-app/core/wallet/profiles.d.ts.map +1 -0
  425. package/dist/types/wallets/in-app/core/wallet/types.d.ts +1 -1
  426. package/dist/types/wallets/in-app/core/wallet/types.d.ts.map +1 -1
  427. package/dist/types/wallets/in-app/native/auth/index.d.ts +3 -3
  428. package/dist/types/wallets/in-app/native/auth/index.d.ts.map +1 -1
  429. package/dist/types/wallets/in-app/native/auth/native-auth.d.ts +7 -13
  430. package/dist/types/wallets/in-app/native/auth/native-auth.d.ts.map +1 -1
  431. package/dist/types/wallets/in-app/native/helpers/api/fetchers.d.ts +1 -1
  432. package/dist/types/wallets/in-app/native/helpers/api/fetchers.d.ts.map +1 -1
  433. package/dist/types/wallets/in-app/native/helpers/auth/logout.d.ts +1 -1
  434. package/dist/types/wallets/in-app/native/helpers/auth/logout.d.ts.map +1 -1
  435. package/dist/types/wallets/in-app/native/helpers/auth/middleware.d.ts +3 -3
  436. package/dist/types/wallets/in-app/native/helpers/auth/middleware.d.ts.map +1 -1
  437. package/dist/types/wallets/in-app/native/helpers/storage/local.d.ts +1 -1
  438. package/dist/types/wallets/in-app/native/helpers/storage/local.d.ts.map +1 -1
  439. package/dist/types/wallets/in-app/native/helpers/types.d.ts +1 -1
  440. package/dist/types/wallets/in-app/native/helpers/types.d.ts.map +1 -1
  441. package/dist/types/wallets/in-app/native/helpers/wallet/creation.d.ts +1 -1
  442. package/dist/types/wallets/in-app/native/helpers/wallet/retrieval.d.ts +1 -1
  443. package/dist/types/wallets/in-app/native/helpers/wallet/retrieval.d.ts.map +1 -1
  444. package/dist/types/wallets/in-app/native/native-connector.d.ts +6 -4
  445. package/dist/types/wallets/in-app/native/native-connector.d.ts.map +1 -1
  446. package/dist/types/wallets/in-app/web/lib/auth/abstract-login.d.ts +4 -12
  447. package/dist/types/wallets/in-app/web/lib/auth/abstract-login.d.ts.map +1 -1
  448. package/dist/types/wallets/in-app/web/lib/auth/base-login.d.ts +12 -15
  449. package/dist/types/wallets/in-app/web/lib/auth/base-login.d.ts.map +1 -1
  450. package/dist/types/wallets/in-app/web/lib/auth/iframe-auth.d.ts +11 -9
  451. package/dist/types/wallets/in-app/web/lib/auth/iframe-auth.d.ts.map +1 -1
  452. package/dist/types/wallets/in-app/web/lib/auth/index.d.ts +4 -4
  453. package/dist/types/wallets/in-app/web/lib/auth/index.d.ts.map +1 -1
  454. package/dist/types/wallets/in-app/web/lib/auth/oauth.d.ts +1 -1
  455. package/dist/types/wallets/in-app/web/lib/auth/oauth.d.ts.map +1 -1
  456. package/dist/types/wallets/in-app/web/lib/auth/otp.d.ts +15 -0
  457. package/dist/types/wallets/in-app/web/lib/auth/otp.d.ts.map +1 -0
  458. package/dist/types/wallets/in-app/web/lib/auth/passkeys.d.ts +1 -1
  459. package/dist/types/wallets/in-app/web/lib/auth/passkeys.d.ts.map +1 -1
  460. package/dist/types/wallets/in-app/web/lib/get-url-token.d.ts +1 -1
  461. package/dist/types/wallets/in-app/web/lib/get-url-token.d.ts.map +1 -1
  462. package/dist/types/wallets/in-app/web/lib/in-app-account.d.ts +1 -1
  463. package/dist/types/wallets/in-app/web/lib/in-app-account.d.ts.map +1 -1
  464. package/dist/types/wallets/in-app/web/lib/web-connector.d.ts +11 -4
  465. package/dist/types/wallets/in-app/web/lib/web-connector.d.ts.map +1 -1
  466. package/dist/types/wallets/in-app/web/types.d.ts +1 -1
  467. package/dist/types/wallets/in-app/web/types.d.ts.map +1 -1
  468. package/dist/types/wallets/interfaces/wallet.d.ts.map +1 -1
  469. package/dist/types/wallets/manager/index.d.ts +1 -0
  470. package/dist/types/wallets/manager/index.d.ts.map +1 -1
  471. package/dist/types/wallets/native/create-wallet.d.ts.map +1 -1
  472. package/dist/types/wallets/smart/lib/utils.d.ts.map +1 -1
  473. package/dist/types/wallets/smart/smart-wallet.d.ts.map +1 -1
  474. package/dist/types/wallets/types.d.ts +1 -1
  475. package/dist/types/wallets/types.d.ts.map +1 -1
  476. package/package.json +3 -3
  477. package/src/adapters/ethers5.ts +4 -2
  478. package/src/adapters/wallet-adapter.ts +3 -0
  479. package/src/auth/constants.ts +0 -3
  480. package/src/auth/verify-hash.ts +7 -5
  481. package/src/chains/chain-definitions/abstract-testnet.ts +17 -0
  482. package/src/chains/chain-definitions/fraxtal-testnet.ts +17 -0
  483. package/src/chains/chain-definitions/mode-testnet.ts +17 -0
  484. package/src/chains/utils.ts +7 -0
  485. package/src/exports/chains.ts +1 -0
  486. package/src/exports/react.ts +1 -0
  487. package/src/exports/wallets/embedded.ts +1 -1
  488. package/src/exports/wallets/in-app.native.ts +1 -1
  489. package/src/exports/wallets/in-app.ts +2 -2
  490. package/src/exports/wallets.ts +5 -0
  491. package/src/extensions/marketplace/direct-listings/direct-listings.test.ts +334 -337
  492. package/src/extensions/marketplace/english-auctions/english-auctions.test.ts +231 -236
  493. package/src/extensions/marketplace/offers/offers.test.ts +1 -1
  494. package/src/extensions/prebuilts/deploy-modular-core.test.ts +1 -1
  495. package/src/react/core/hooks/others/useProfiles.ts +36 -0
  496. package/src/react/core/utils/storage.ts +1 -1
  497. package/src/react/core/utils/{socialIcons.ts → walletIcon.ts} +25 -0
  498. package/src/react/native/ui/components/TokenIcon.tsx +1 -1
  499. package/src/react/native/ui/connect/ConnectButton.tsx +14 -9
  500. package/src/react/native/ui/connect/ConnectModal.tsx +1 -1
  501. package/src/react/native/ui/connect/InAppWalletUI.tsx +1 -1
  502. package/src/react/web/ui/ConnectWallet/ConnectButton.tsx +13 -8
  503. package/src/react/web/ui/ConnectWallet/Details.tsx +45 -11
  504. package/src/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.tsx +3 -1
  505. package/src/react/web/ui/ConnectWallet/Modal/ConnectEmbed.tsx +13 -8
  506. package/src/react/web/ui/ConnectWallet/Modal/screen.tsx +1 -1
  507. package/src/react/web/ui/ConnectWallet/WalletSelector.tsx +1 -1
  508. package/src/react/web/ui/ConnectWallet/icons/AddUserIcon.tsx +25 -0
  509. package/src/react/web/ui/ConnectWallet/icons/MultiUserIcon.tsx +25 -0
  510. package/src/react/web/ui/ConnectWallet/locale/de.ts +6 -0
  511. package/src/react/web/ui/ConnectWallet/locale/en.ts +6 -0
  512. package/src/react/web/ui/ConnectWallet/locale/es.ts +6 -0
  513. package/src/react/web/ui/ConnectWallet/locale/fr.ts +6 -0
  514. package/src/react/web/ui/ConnectWallet/locale/ja.ts +6 -0
  515. package/src/react/web/ui/ConnectWallet/locale/kr.ts +6 -0
  516. package/src/react/web/ui/ConnectWallet/locale/tl.ts +6 -1
  517. package/src/react/web/ui/ConnectWallet/locale/types.ts +6 -0
  518. package/src/react/web/ui/ConnectWallet/locale/vi.ts +6 -0
  519. package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +5 -1
  520. package/src/react/web/ui/ConnectWallet/screens/LinkProfileScreen.tsx +88 -0
  521. package/src/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.tsx +119 -0
  522. package/src/react/web/ui/ConnectWallet/screens/ManageWalletScreen.tsx +20 -4
  523. package/src/react/web/ui/ConnectWallet/screens/types.ts +3 -1
  524. package/src/react/web/ui/PayEmbed.tsx +14 -9
  525. package/src/react/web/ui/components/Spinner.tsx +1 -1
  526. package/src/react/web/ui/components/TokenIcon.tsx +1 -1
  527. package/src/react/web/ui/components/WalletImage.tsx +7 -41
  528. package/src/react/web/wallets/ecosystem/EcosystemWalletConnectUI.tsx +16 -4
  529. package/src/react/web/wallets/ecosystem/EcosystemWalletFormUI.tsx +14 -6
  530. package/src/react/web/wallets/in-app/InAppWalletConnectUI.tsx +17 -5
  531. package/src/react/web/wallets/in-app/InAppWalletFormUI.tsx +13 -12
  532. package/src/react/web/wallets/shared/ConnectWalletSocialOptions.tsx +20 -15
  533. package/src/react/web/wallets/shared/OTPLoginUI.tsx +49 -54
  534. package/src/react/web/wallets/shared/PassKeyLogin.tsx +59 -20
  535. package/src/react/web/wallets/shared/SocialLogin.tsx +46 -14
  536. package/src/react/web/wallets/shared/locale/en.ts +1 -1
  537. package/src/react/web/wallets/shared/oauthSignIn.ts +2 -2
  538. package/src/reactive/store.ts +3 -0
  539. package/src/transaction/serialize-transaction.test.ts +13 -9
  540. package/src/transaction/serialize-transaction.ts +31 -258
  541. package/src/version.ts +1 -1
  542. package/src/wallets/coinbase/coinbase-wallet.ts +9 -1
  543. package/src/wallets/create-wallet.ts +9 -1
  544. package/src/wallets/ecosystem/types.ts +2 -10
  545. package/src/wallets/in-app/core/authentication/getLoginPath.ts +22 -3
  546. package/src/wallets/in-app/core/authentication/linkAccount.ts +96 -0
  547. package/src/wallets/in-app/core/authentication/siwe.ts +63 -0
  548. package/src/wallets/in-app/core/authentication/{type.ts → types.ts} +18 -1
  549. package/src/wallets/in-app/core/interfaces/connector.ts +14 -5
  550. package/src/wallets/in-app/core/wallet/ecosystem-core.ts +10 -1
  551. package/src/wallets/in-app/core/wallet/in-app-core.ts +68 -3
  552. package/src/wallets/in-app/core/wallet/index.ts +2 -2
  553. package/src/wallets/in-app/core/wallet/profiles.ts +74 -0
  554. package/src/wallets/in-app/core/wallet/types.ts +1 -1
  555. package/src/wallets/in-app/native/auth/index.ts +2 -2
  556. package/src/wallets/in-app/native/auth/native-auth.ts +70 -183
  557. package/src/wallets/in-app/native/helpers/api/fetchers.ts +1 -1
  558. package/src/wallets/in-app/native/helpers/auth/logout.ts +1 -1
  559. package/src/wallets/in-app/native/helpers/auth/middleware.ts +1 -1
  560. package/src/wallets/in-app/native/helpers/storage/local.ts +1 -1
  561. package/src/wallets/in-app/native/helpers/types.ts +1 -1
  562. package/src/wallets/in-app/native/helpers/wallet/creation.ts +1 -1
  563. package/src/wallets/in-app/native/helpers/wallet/retrieval.ts +1 -1
  564. package/src/wallets/in-app/native/native-connector.ts +96 -35
  565. package/src/wallets/in-app/web/lib/auth/abstract-login.ts +4 -14
  566. package/src/wallets/in-app/web/lib/auth/base-login.ts +75 -177
  567. package/src/wallets/in-app/web/lib/auth/iframe-auth.ts +37 -18
  568. package/src/wallets/in-app/web/lib/auth/index.ts +2 -2
  569. package/src/wallets/in-app/web/lib/auth/oauth.ts +4 -4
  570. package/src/wallets/in-app/web/lib/auth/otp.ts +114 -0
  571. package/src/wallets/in-app/web/lib/auth/passkeys.ts +1 -1
  572. package/src/wallets/in-app/web/lib/get-url-token.ts +1 -1
  573. package/src/wallets/in-app/web/lib/in-app-account.ts +1 -1
  574. package/src/wallets/in-app/web/lib/web-connector.ts +93 -37
  575. package/src/wallets/in-app/web/types.ts +1 -1
  576. package/src/wallets/interfaces/wallet.ts +1 -0
  577. package/src/wallets/manager/index.ts +51 -5
  578. package/src/wallets/native/create-wallet.ts +9 -1
  579. package/src/wallets/smart/lib/utils.ts +6 -1
  580. package/src/wallets/smart/smart-wallet-integration.test.ts +3 -3
  581. package/src/wallets/smart/smart-wallet.ts +9 -1
  582. package/src/wallets/types.ts +6 -1
  583. package/dist/cjs/react/core/utils/socialIcons.js.map +0 -1
  584. package/dist/cjs/wallets/in-app/core/authentication/type.js.map +0 -1
  585. package/dist/esm/react/core/utils/socialIcons.js.map +0 -1
  586. package/dist/esm/wallets/in-app/core/authentication/type.js.map +0 -1
  587. package/dist/types/react/core/utils/socialIcons.d.ts.map +0 -1
  588. package/dist/types/wallets/in-app/core/authentication/type.d.ts.map +0 -1
@@ -1,24 +1,29 @@
1
1
  import type { ThirdwebClient } from "../../../client/client.js";
2
+ import type { InjectedSupportedWalletIds } from "../../../wallets/__generated__/wallet-ids.js";
2
3
  import type { Account } from "../../interfaces/wallet.js";
4
+ import { siweAuthenticate } from "../core/authentication/siwe.js";
3
5
  import {
4
6
  type AuthArgsType,
5
7
  type AuthLoginReturnType,
8
+ type AuthStoredTokenWithCookieReturnType,
6
9
  type GetUser,
7
10
  type LogoutReturnType,
11
+ type MultiStepAuthArgsType,
12
+ type MultiStepAuthProviderType,
8
13
  type OauthOption,
9
- type PreAuthArgsType,
10
- type SendEmailOtpReturnType,
11
14
  UserWalletStatus,
12
- } from "../core/authentication/type.js";
15
+ } from "../core/authentication/types.js";
13
16
  import type { InAppConnector } from "../core/interfaces/connector.js";
17
+ import { sendOtp, verifyOtp } from "../web/lib/auth/otp.js";
18
+ import type { Ecosystem } from "../web/types.js";
14
19
  import {
15
20
  authEndpoint,
21
+ authenticate,
16
22
  customJwt,
17
23
  deleteActiveAccount,
18
- sendVerificationEmail,
19
- sendVerificationSms,
24
+ otpLogin,
25
+ siweLogin,
20
26
  socialLogin,
21
- validateEmailOTP,
22
27
  } from "./auth/native-auth.js";
23
28
  import { fetchUserDetails } from "./helpers/api/fetchers.js";
24
29
  import { logoutUser } from "./helpers/auth/logout.js";
@@ -70,40 +75,60 @@ export class InAppNativeConnector implements InAppConnector {
70
75
  return getExistingUserAccount({ client: this.options.client });
71
76
  }
72
77
 
73
- preAuthenticate(params: PreAuthArgsType): Promise<SendEmailOtpReturnType> {
78
+ preAuthenticate(args: MultiStepAuthProviderType): Promise<void> {
79
+ return sendOtp({
80
+ ...args,
81
+ client: this.options.client,
82
+ });
83
+ }
84
+
85
+ async authenticate(
86
+ params: AuthArgsType,
87
+ ): Promise<AuthStoredTokenWithCookieReturnType> {
74
88
  const strategy = params.strategy;
75
89
  switch (strategy) {
76
- case "email": {
77
- return sendVerificationEmail({
78
- email: params.email,
79
- client: this.options.client,
80
- });
90
+ case "email":
91
+ case "phone": {
92
+ return verifyOtp(params);
81
93
  }
82
- case "phone":
83
- return sendVerificationSms({
84
- phoneNumber: params.phoneNumber,
94
+ case "siwe": {
95
+ return siweAuthenticate({
85
96
  client: this.options.client,
97
+ walletId: params.walletId,
98
+ chainId: params.chainId,
86
99
  });
100
+ }
101
+ case "google":
102
+ case "facebook":
103
+ case "discord":
104
+ case "apple": {
105
+ const ExpoLinking = require("expo-linking");
106
+ const redirectUrl =
107
+ params.redirectUrl || (ExpoLinking.createURL("") as string);
108
+ return authenticate({ strategy, redirectUrl }, this.options.client);
109
+ }
87
110
  default:
88
- assertUnreachable(strategy);
111
+ throw new Error(`Unsupported authentication type: ${strategy}`);
89
112
  }
90
113
  }
91
114
 
92
- async authenticate(params: AuthArgsType): Promise<AuthLoginReturnType> {
115
+ async connect(params: AuthArgsType): Promise<AuthLoginReturnType> {
93
116
  const strategy = params.strategy;
94
117
  switch (strategy) {
95
118
  case "email": {
96
- return await this.validateEmailOTP({
119
+ return await this.validateOtp({
97
120
  email: params.email,
98
- otp: params.verificationCode,
99
- recoveryCode: params.verificationCode,
121
+ verificationCode: params.verificationCode,
122
+ strategy: "email",
123
+ client: this.options.client,
100
124
  });
101
125
  }
102
126
  case "phone": {
103
- return await this.validateEmailOTP({
104
- email: params.phoneNumber,
105
- otp: params.verificationCode,
106
- recoveryCode: params.verificationCode,
127
+ return await this.validateOtp({
128
+ phoneNumber: params.phoneNumber,
129
+ verificationCode: params.verificationCode,
130
+ strategy: "phone",
131
+ client: this.options.client,
107
132
  });
108
133
  }
109
134
  case "google":
@@ -120,6 +145,12 @@ export class InAppNativeConnector implements InAppConnector {
120
145
  redirectUrl,
121
146
  });
122
147
  }
148
+ case "siwe": {
149
+ return this.siweLogin({
150
+ walletId: params.walletId,
151
+ chainId: params.chainId,
152
+ });
153
+ }
123
154
  case "jwt": {
124
155
  return this.customJwt({
125
156
  jwt: params.jwt,
@@ -146,18 +177,14 @@ export class InAppNativeConnector implements InAppConnector {
146
177
  }
147
178
  }
148
179
 
149
- private async validateEmailOTP(options: {
150
- email: string;
151
- otp: string;
152
- recoveryCode?: string;
153
- }): Promise<AuthLoginReturnType> {
180
+ private async validateOtp(
181
+ options: MultiStepAuthArgsType & {
182
+ client: ThirdwebClient;
183
+ ecosystem?: Ecosystem;
184
+ },
185
+ ): Promise<AuthLoginReturnType> {
154
186
  try {
155
- const { storedToken } = await validateEmailOTP({
156
- email: options.email,
157
- client: this.options.client,
158
- otp: options.otp,
159
- recoveryCode: options.recoveryCode,
160
- });
187
+ const { storedToken } = await otpLogin(options);
161
188
  const account = await this.getAccount();
162
189
  return {
163
190
  user: {
@@ -202,6 +229,40 @@ export class InAppNativeConnector implements InAppConnector {
202
229
  }
203
230
  }
204
231
 
232
+ private async siweLogin(options: {
233
+ walletId: InjectedSupportedWalletIds;
234
+ chainId: number;
235
+ }): Promise<AuthLoginReturnType> {
236
+ try {
237
+ const { storedToken } = await siweLogin(
238
+ this.options.client,
239
+ options.walletId,
240
+ options.chainId,
241
+ );
242
+ const account = await this.getAccount();
243
+ return {
244
+ user: {
245
+ status: UserWalletStatus.LOGGED_IN_WALLET_INITIALIZED,
246
+ account,
247
+ authDetails: storedToken.authDetails,
248
+ walletAddress: account.address,
249
+ },
250
+ };
251
+ } catch (error) {
252
+ console.error(
253
+ `Error while signing in with: ${options.walletId}. ${error}`,
254
+ );
255
+ if (error instanceof Error) {
256
+ throw new Error(
257
+ `Error signing in with ${options.walletId}: ${error.message}`,
258
+ );
259
+ }
260
+ throw new Error(
261
+ `An unknown error occurred signing in with ${options.walletId}`,
262
+ );
263
+ }
264
+ }
265
+
205
266
  private async customJwt(authOptions: {
206
267
  jwt: string;
207
268
  password: string;
@@ -4,7 +4,7 @@ import type {
4
4
  AuthLoginReturnType,
5
5
  AuthProvider,
6
6
  SendEmailOtpReturnType,
7
- } from "../../../core/authentication/type.js";
7
+ } from "../../../core/authentication/types.js";
8
8
  import type { ClientIdWithQuerierType, Ecosystem } from "../../types.js";
9
9
  import type { InAppWalletIframeCommunicator } from "../../utils/iFrameCommunication/InAppWalletIframeCommunicator.js";
10
10
 
@@ -28,11 +28,6 @@ export type LoginQuerierTypes = {
28
28
  getHeadlessOauthLoginLink: { authProvider: AuthProvider };
29
29
  };
30
30
 
31
- type OauthLoginType = {
32
- openedWindow?: Window | null;
33
- closeOpenedWindow?: (openedWindow: Window) => void;
34
- };
35
-
36
31
  /**
37
32
  * @internal
38
33
  */
@@ -90,10 +85,7 @@ export abstract class AbstractLogin<
90
85
  encryptionKey: string;
91
86
  }): Promise<AuthLoginReturnType>;
92
87
  abstract loginWithModal(args?: MODAL): Promise<AuthLoginReturnType>;
93
- abstract loginWithEmailOtp(args: EMAIL_MODAL): Promise<AuthLoginReturnType>;
94
- abstract loginWithOauth(
95
- args: OauthLoginType & { oauthProvider: AuthProvider },
96
- ): Promise<AuthLoginReturnType>;
88
+ abstract loginWithIframe(args: EMAIL_MODAL): Promise<AuthLoginReturnType>;
97
89
 
98
90
  /**
99
91
  * @internal
@@ -101,7 +93,6 @@ export abstract class AbstractLogin<
101
93
  async sendEmailLoginOtp({
102
94
  email,
103
95
  }: LoginQuerierTypes["sendThirdwebEmailLoginOtp"]): Promise<SendEmailOtpReturnType> {
104
- await this.preLogin();
105
96
  const result = await this.LoginQuerier.call<SendEmailOtpReturnType>({
106
97
  procedureName: "sendThirdwebEmailLoginOtp",
107
98
  params: { email },
@@ -116,7 +107,6 @@ export abstract class AbstractLogin<
116
107
  async sendSmsLoginOtp({
117
108
  phoneNumber,
118
109
  }: LoginQuerierTypes["sendThirdwebSmsLoginOtp"]): Promise<SendEmailOtpReturnType> {
119
- await this.preLogin();
120
110
  const result = await this.LoginQuerier.call<SendEmailOtpReturnType>({
121
111
  procedureName: "sendThirdwebSmsLoginOtp",
122
112
  params: { phoneNumber },
@@ -124,11 +114,11 @@ export abstract class AbstractLogin<
124
114
  return result;
125
115
  }
126
116
 
127
- abstract verifyEmailLoginOtp(
117
+ abstract loginWithEmailOtp(
128
118
  args: EMAIL_VERIFICATION,
129
119
  ): Promise<AuthLoginReturnType>;
130
120
 
131
- abstract verifySmsLoginOtp(args: {
121
+ abstract loginWithSmsOtp(args: {
132
122
  phoneNumber: string;
133
123
  otp: string;
134
124
  recoveryCode?: string;
@@ -1,9 +1,7 @@
1
- import {
2
- type AuthAndWalletRpcReturnType,
3
- type AuthLoginReturnType,
4
- AuthProvider,
5
- type GetHeadlessLoginLinkReturnType,
6
- } from "../../../core/authentication/type.js";
1
+ import type {
2
+ AuthAndWalletRpcReturnType,
3
+ AuthLoginReturnType,
4
+ } from "../../../core/authentication/types.js";
7
5
  import { AbstractLogin, type LoginQuerierTypes } from "./abstract-login.js";
8
6
 
9
7
  /**
@@ -14,20 +12,12 @@ export class BaseLogin extends AbstractLogin<
14
12
  { email: string },
15
13
  { email: string; otp: string; recoveryCode?: string }
16
14
  > {
17
- private async getOauthLoginUrl(
18
- authProvider: AuthProvider,
19
- ): Promise<GetHeadlessLoginLinkReturnType> {
20
- try {
21
- const result =
22
- await this.LoginQuerier.call<GetHeadlessLoginLinkReturnType>({
23
- procedureName: "getHeadlessOauthLoginLink",
24
- params: { authProvider },
25
- });
26
- return result;
27
- } catch (e) {
28
- console.error(e);
29
- throw e;
30
- }
15
+ async authenticateWithModal(): Promise<AuthAndWalletRpcReturnType> {
16
+ return this.LoginQuerier.call<AuthAndWalletRpcReturnType>({
17
+ procedureName: "loginWithThirdwebModal",
18
+ params: undefined,
19
+ showIframe: true,
20
+ });
31
21
  }
32
22
 
33
23
  /**
@@ -35,165 +25,42 @@ export class BaseLogin extends AbstractLogin<
35
25
  */
36
26
  override async loginWithModal(): Promise<AuthLoginReturnType> {
37
27
  await this.preLogin();
38
- const result = await this.LoginQuerier.call<AuthAndWalletRpcReturnType>({
39
- procedureName: "loginWithThirdwebModal",
40
- params: undefined,
41
- showIframe: true,
42
- });
28
+ const result = await this.authenticateWithModal();
43
29
  return this.postLogin(result);
44
30
  }
45
31
 
46
- /**
47
- * @internal
48
- */
49
- override async loginWithEmailOtp({
32
+ async authenticateWithIframe({
50
33
  email,
51
34
  }: {
52
35
  email: string;
53
- }): Promise<AuthLoginReturnType> {
54
- await this.preLogin();
55
- const result = await this.LoginQuerier.call<AuthAndWalletRpcReturnType>({
36
+ }): Promise<AuthAndWalletRpcReturnType> {
37
+ return this.LoginQuerier.call<AuthAndWalletRpcReturnType>({
56
38
  procedureName: "loginWithThirdwebModal",
57
39
  params: { email },
58
40
  showIframe: true,
59
41
  });
60
- return this.postLogin(result);
61
- }
62
-
63
- private closeWindow = ({
64
- isWindowOpenedByFn,
65
- win,
66
- closeOpenedWindow,
67
- }: {
68
- win?: Window | null;
69
- isWindowOpenedByFn: boolean;
70
- closeOpenedWindow?: (openedWindow: Window) => void;
71
- }) => {
72
- if (isWindowOpenedByFn) {
73
- win?.close();
74
- } else {
75
- if (win && closeOpenedWindow) {
76
- closeOpenedWindow(win);
77
- } else if (win) {
78
- win.close();
79
- }
80
- }
81
- };
82
-
83
- private getOauthPopUpSizing(authProvider: AuthProvider) {
84
- switch (authProvider) {
85
- case AuthProvider.FACEBOOK:
86
- return "width=715, height=555";
87
- default:
88
- return "width=350, height=500";
89
- }
90
42
  }
91
43
 
92
44
  /**
93
45
  * @internal
94
46
  */
95
- override async loginWithOauth(args: {
96
- oauthProvider: AuthProvider;
97
- openedWindow?: Window | null | undefined;
98
- closeOpenedWindow?: ((openedWindow: Window) => void) | undefined;
47
+ override async loginWithIframe({
48
+ email,
49
+ }: {
50
+ email: string;
99
51
  }): Promise<AuthLoginReturnType> {
100
- let win = args?.openedWindow;
101
- let isWindowOpenedByFn = false;
102
- if (!win) {
103
- win = window.open(
104
- "",
105
- "Login",
106
- this.getOauthPopUpSizing(args.oauthProvider),
107
- );
108
- isWindowOpenedByFn = true;
109
- }
110
- if (!win) {
111
- throw new Error("Something went wrong opening pop-up");
112
- }
113
- // logout the user
114
- // fetch the url to open the login window from iframe
115
- const [{ loginLink }] = await Promise.all([
116
- this.getOauthLoginUrl(args.oauthProvider),
117
- this.preLogin(),
118
- ]);
119
- win.location.href = loginLink;
120
- // listen to result from the login window
121
- const result = await new Promise<AuthAndWalletRpcReturnType>(
122
- (resolve, reject) => {
123
- // detect when the user closes the login window
124
- const pollTimer = window.setInterval(async () => {
125
- if (!win) {
126
- return;
127
- }
128
- if (win.closed) {
129
- clearInterval(pollTimer);
130
- window.removeEventListener("message", messageListener);
131
- reject(new Error("User closed login window"));
132
- }
133
- }, 1000);
134
-
135
- const messageListener = async (
136
- event: MessageEvent<{
137
- eventType: string;
138
- authResult?: AuthAndWalletRpcReturnType;
139
- error?: string;
140
- }>,
141
- ) => {
142
- if (event.origin !== this.baseUrl) {
143
- return;
144
- }
145
- if (typeof event.data !== "object") {
146
- reject(new Error("Invalid event data"));
147
- return;
148
- }
149
-
150
- switch (event.data.eventType) {
151
- case "userLoginSuccess": {
152
- window.removeEventListener("message", messageListener);
153
- clearInterval(pollTimer);
154
- this.closeWindow({
155
- isWindowOpenedByFn,
156
- win,
157
- closeOpenedWindow: args?.closeOpenedWindow,
158
- });
159
- if (event.data.authResult) {
160
- resolve(event.data.authResult);
161
- }
162
- break;
163
- }
164
- case "userLoginFailed": {
165
- window.removeEventListener("message", messageListener);
166
- clearInterval(pollTimer);
167
- this.closeWindow({
168
- isWindowOpenedByFn,
169
- win,
170
- closeOpenedWindow: args?.closeOpenedWindow,
171
- });
172
- reject(new Error(event.data.error));
173
- break;
174
- }
175
- case "injectDeveloperClientId": {
176
- win?.postMessage(
177
- {
178
- eventType: "injectDeveloperClientIdResult",
179
- developerClientId: this.client.clientId,
180
- authOption: args.oauthProvider,
181
- partnerId: this.ecosystem?.partnerId,
182
- ecosystemId: this.ecosystem?.id,
183
- },
184
- this.baseUrl,
185
- );
186
- break;
187
- }
188
- }
189
- };
190
- window.addEventListener("message", messageListener);
191
- },
192
- );
52
+ await this.preLogin();
53
+ const result = await this.authenticateWithIframe({ email });
54
+ return this.postLogin(result);
55
+ }
193
56
 
194
- return this.postLogin({
195
- storedToken: { ...result.storedToken, shouldStoreCookieString: true },
196
- walletDetails: { ...result.walletDetails, isIframeStorageEnabled: false },
57
+ async authenticateWithCustomJwt({
58
+ encryptionKey,
59
+ jwt,
60
+ }: LoginQuerierTypes["loginWithCustomJwt"]): Promise<AuthAndWalletRpcReturnType> {
61
+ return this.LoginQuerier.call<AuthAndWalletRpcReturnType>({
62
+ procedureName: "loginWithCustomJwt",
63
+ params: { encryptionKey, jwt },
197
64
  });
198
65
  }
199
66
 
@@ -205,13 +72,20 @@ export class BaseLogin extends AbstractLogin<
205
72
  jwt,
206
73
  }: LoginQuerierTypes["loginWithCustomJwt"]): Promise<AuthLoginReturnType> {
207
74
  await this.preLogin();
208
- const result = await this.LoginQuerier.call<AuthAndWalletRpcReturnType>({
209
- procedureName: "loginWithCustomJwt",
210
- params: { encryptionKey, jwt },
211
- });
75
+ const result = await this.authenticateWithCustomJwt({ encryptionKey, jwt });
212
76
  return this.postLogin(result);
213
77
  }
214
78
 
79
+ async authenticateWithCustomAuthEndpoint({
80
+ encryptionKey,
81
+ payload,
82
+ }: LoginQuerierTypes["loginWithCustomAuthEndpoint"]): Promise<AuthAndWalletRpcReturnType> {
83
+ return this.LoginQuerier.call<AuthAndWalletRpcReturnType>({
84
+ procedureName: "loginWithCustomAuthEndpoint",
85
+ params: { encryptionKey, payload },
86
+ });
87
+ }
88
+
215
89
  /**
216
90
  * @internal
217
91
  */
@@ -220,39 +94,63 @@ export class BaseLogin extends AbstractLogin<
220
94
  payload,
221
95
  }: LoginQuerierTypes["loginWithCustomAuthEndpoint"]): Promise<AuthLoginReturnType> {
222
96
  await this.preLogin();
223
- const result = await this.LoginQuerier.call<AuthAndWalletRpcReturnType>({
224
- procedureName: "loginWithCustomAuthEndpoint",
225
- params: { encryptionKey, payload },
97
+ const result = await this.authenticateWithCustomAuthEndpoint({
98
+ encryptionKey,
99
+ payload,
226
100
  });
227
101
  return this.postLogin(result);
228
102
  }
229
103
 
104
+ async authenticateWithEmailOtp({
105
+ email,
106
+ otp,
107
+ recoveryCode,
108
+ }: LoginQuerierTypes["verifyThirdwebEmailLoginOtp"]): Promise<AuthAndWalletRpcReturnType> {
109
+ return this.LoginQuerier.call<AuthAndWalletRpcReturnType>({
110
+ procedureName: "verifyThirdwebEmailLoginOtp",
111
+ params: { email, otp, recoveryCode },
112
+ });
113
+ }
114
+
230
115
  /**
231
116
  * @internal
232
117
  */
233
- override async verifyEmailLoginOtp({
118
+ override async loginWithEmailOtp({
234
119
  email,
235
120
  otp,
236
121
  recoveryCode,
237
122
  }: LoginQuerierTypes["verifyThirdwebEmailLoginOtp"]): Promise<AuthLoginReturnType> {
238
- const result = await this.LoginQuerier.call<AuthAndWalletRpcReturnType>({
239
- procedureName: "verifyThirdwebEmailLoginOtp",
240
- params: { email, otp, recoveryCode },
123
+ const result = await this.authenticateWithEmailOtp({
124
+ email,
125
+ otp,
126
+ recoveryCode,
241
127
  });
242
128
  return this.postLogin(result);
243
129
  }
244
130
 
131
+ async authenticateWithSmsOtp({
132
+ phoneNumber,
133
+ otp,
134
+ recoveryCode,
135
+ }: LoginQuerierTypes["verifyThirdwebSmsLoginOtp"]): Promise<AuthAndWalletRpcReturnType> {
136
+ return this.LoginQuerier.call<AuthAndWalletRpcReturnType>({
137
+ procedureName: "verifyThirdwebSmsLoginOtp",
138
+ params: { phoneNumber, otp, recoveryCode },
139
+ });
140
+ }
141
+
245
142
  /**
246
143
  * @internal
247
144
  */
248
- override async verifySmsLoginOtp({
145
+ override async loginWithSmsOtp({
249
146
  phoneNumber,
250
147
  otp,
251
148
  recoveryCode,
252
149
  }: LoginQuerierTypes["verifyThirdwebSmsLoginOtp"]): Promise<AuthLoginReturnType> {
253
- const result = await this.LoginQuerier.call<AuthAndWalletRpcReturnType>({
254
- procedureName: "verifyThirdwebSmsLoginOtp",
255
- params: { phoneNumber, otp, recoveryCode },
150
+ const result = await this.authenticateWithSmsOtp({
151
+ phoneNumber,
152
+ otp,
153
+ recoveryCode,
256
154
  });
257
155
  return this.postLogin(result);
258
156
  }
@@ -5,7 +5,7 @@ import type {
5
5
  AuthStoredTokenWithCookieReturnType,
6
6
  LogoutReturnType,
7
7
  SendEmailOtpReturnType,
8
- } from "../../../core/authentication/type.js";
8
+ } from "../../../core/authentication/types.js";
9
9
  import type { ClientIdWithQuerierType, Ecosystem } from "../../types.js";
10
10
  import { LocalStorage } from "../../utils/Storage/LocalStorage.js";
11
11
  import type { InAppWalletIframeCommunicator } from "../../utils/iFrameCommunication/InAppWalletIframeCommunicator.js";
@@ -129,6 +129,9 @@ export class Auth {
129
129
  async loginWithModal(): Promise<AuthLoginReturnType> {
130
130
  return this.BaseLogin.loginWithModal();
131
131
  }
132
+ async authenticateWithModal(): Promise<AuthAndWalletRpcReturnType> {
133
+ return this.BaseLogin.authenticateWithModal();
134
+ }
132
135
 
133
136
  /**
134
137
  * Used to log the user into their thirdweb wallet using email OTP
@@ -148,10 +151,15 @@ export class Auth {
148
151
  * @param args - args.email: We will send the email an OTP that needs to be entered in order for them to be logged in.
149
152
  * @returns `{{user: InitializedUser}}` An InitializedUser object. See {@link InAppWalletSdk.getUser} for more
150
153
  */
151
- async loginWithEmailOtp(
152
- args: Parameters<BaseLogin["loginWithEmailOtp"]>[0],
154
+ async loginWithIframe(
155
+ args: Parameters<BaseLogin["loginWithIframe"]>[0],
153
156
  ): Promise<AuthLoginReturnType> {
154
- return this.BaseLogin.loginWithEmailOtp(args);
157
+ return this.BaseLogin.loginWithIframe(args);
158
+ }
159
+ async authenticateWithIframe(
160
+ args: Parameters<BaseLogin["authenticateWithIframe"]>[0],
161
+ ): Promise<AuthAndWalletRpcReturnType> {
162
+ return this.BaseLogin.authenticateWithIframe(args);
155
163
  }
156
164
 
157
165
  /**
@@ -162,6 +170,11 @@ export class Auth {
162
170
  ): Promise<AuthLoginReturnType> {
163
171
  return this.BaseLogin.loginWithCustomJwt(args);
164
172
  }
173
+ async authenticateWithCustomJwt(
174
+ args: Parameters<BaseLogin["authenticateWithCustomJwt"]>[0],
175
+ ): Promise<AuthAndWalletRpcReturnType> {
176
+ return this.BaseLogin.authenticateWithCustomJwt(args);
177
+ }
165
178
 
166
179
  /**
167
180
  * @internal
@@ -171,19 +184,15 @@ export class Auth {
171
184
  ): Promise<AuthLoginReturnType> {
172
185
  return this.BaseLogin.loginWithCustomAuthEndpoint(args);
173
186
  }
174
-
175
- /**
176
- * @internal
177
- */
178
- async loginWithOauth(
179
- args: Parameters<BaseLogin["loginWithOauth"]>[0],
180
- ): Promise<AuthLoginReturnType> {
181
- return this.BaseLogin.loginWithOauth(args);
187
+ async authenticateWithCustomAuthEndpoint(
188
+ args: Parameters<BaseLogin["authenticateWithCustomAuthEndpoint"]>[0],
189
+ ): Promise<AuthAndWalletRpcReturnType> {
190
+ return this.BaseLogin.authenticateWithCustomAuthEndpoint(args);
182
191
  }
183
192
 
184
193
  /**
185
194
  * A headless way to send the users at the passed email an OTP code.
186
- * You need to then call {@link Auth.verifyEmailLoginOtp} in order to complete the login process
195
+ * You need to then call {@link Auth.loginWithEmailOtp} in order to complete the login process
187
196
  * @example
188
197
  * @param param0.email
189
198
  * ```typescript
@@ -240,17 +249,27 @@ export class Auth {
240
249
  * @returns `{{user: InitializedUser}}` An InitializedUser object containing the user's status, wallet, authDetails, and more
241
250
  * @internal
242
251
  */
243
- async verifyEmailLoginOtp(
244
- args: Parameters<BaseLogin["verifyEmailLoginOtp"]>[0],
252
+ async loginWithEmailOtp(args: Parameters<BaseLogin["loginWithEmailOtp"]>[0]) {
253
+ await this.preLogin();
254
+ return this.BaseLogin.loginWithEmailOtp(args);
255
+ }
256
+ async authenticateWithEmailOtp(
257
+ args: Parameters<BaseLogin["authenticateWithEmailOtp"]>[0],
245
258
  ) {
246
- return this.BaseLogin.verifyEmailLoginOtp(args);
259
+ return this.BaseLogin.authenticateWithEmailOtp(args);
247
260
  }
248
261
 
249
262
  /**
250
263
  * @internal
251
264
  */
252
- async verifySmsLoginOtp(args: Parameters<BaseLogin["verifySmsLoginOtp"]>[0]) {
253
- return this.BaseLogin.verifySmsLoginOtp(args);
265
+ async loginWithSmsOtp(args: Parameters<BaseLogin["loginWithSmsOtp"]>[0]) {
266
+ await this.preLogin();
267
+ return this.BaseLogin.loginWithSmsOtp(args);
268
+ }
269
+ async authenticateWithSmsOtp(
270
+ args: Parameters<BaseLogin["authenticateWithSmsOtp"]>[0],
271
+ ) {
272
+ return this.BaseLogin.authenticateWithSmsOtp(args);
254
273
  }
255
274
 
256
275
  /**