thirdweb 5.44.2-nightly-7c2f616dfe6880beefa4eb48f8dcbce6bba9461a-20240808000401 → 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 (565) 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/fraxtal-testnet.js +20 -0
  10. package/dist/cjs/chains/chain-definitions/fraxtal-testnet.js.map +1 -0
  11. package/dist/cjs/chains/chain-definitions/mode-testnet.js +20 -0
  12. package/dist/cjs/chains/chain-definitions/mode-testnet.js.map +1 -0
  13. package/dist/cjs/chains/utils.js +7 -0
  14. package/dist/cjs/chains/utils.js.map +1 -1
  15. package/dist/cjs/exports/react.js +4 -2
  16. package/dist/cjs/exports/react.js.map +1 -1
  17. package/dist/cjs/exports/wallets/in-app.js +2 -2
  18. package/dist/cjs/exports/wallets/in-app.js.map +1 -1
  19. package/dist/cjs/exports/wallets.js +4 -1
  20. package/dist/cjs/exports/wallets.js.map +1 -1
  21. package/dist/cjs/react/core/hooks/others/useProfiles.js +36 -0
  22. package/dist/cjs/react/core/hooks/others/useProfiles.js.map +1 -0
  23. package/dist/cjs/react/core/utils/{socialIcons.js → walletIcon.js} +26 -1
  24. package/dist/cjs/react/core/utils/walletIcon.js.map +1 -0
  25. package/dist/cjs/react/native/ui/components/TokenIcon.js +2 -2
  26. package/dist/cjs/react/native/ui/components/TokenIcon.js.map +1 -1
  27. package/dist/cjs/react/native/ui/connect/ConnectButton.js +13 -8
  28. package/dist/cjs/react/native/ui/connect/ConnectButton.js.map +1 -1
  29. package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js +13 -8
  30. package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
  31. package/dist/cjs/react/web/ui/ConnectWallet/Details.js +22 -5
  32. package/dist/cjs/react/web/ui/ConnectWallet/Details.js.map +1 -1
  33. package/dist/cjs/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js +2 -2
  34. package/dist/cjs/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js.map +1 -1
  35. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js +13 -8
  36. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js.map +1 -1
  37. package/dist/cjs/react/web/ui/ConnectWallet/Modal/screen.js +1 -1
  38. package/dist/cjs/react/web/ui/ConnectWallet/Modal/screen.js.map +1 -1
  39. package/dist/cjs/react/web/ui/ConnectWallet/WalletSelector.js +2 -2
  40. package/dist/cjs/react/web/ui/ConnectWallet/WalletSelector.js.map +1 -1
  41. package/dist/cjs/react/web/ui/ConnectWallet/icons/AddUserIcon.js +12 -0
  42. package/dist/cjs/react/web/ui/ConnectWallet/icons/AddUserIcon.js.map +1 -0
  43. package/dist/cjs/react/web/ui/ConnectWallet/icons/MultiUserIcon.js +12 -0
  44. package/dist/cjs/react/web/ui/ConnectWallet/icons/MultiUserIcon.js.map +1 -0
  45. package/dist/cjs/react/web/ui/ConnectWallet/locale/de.js +6 -0
  46. package/dist/cjs/react/web/ui/ConnectWallet/locale/de.js.map +1 -1
  47. package/dist/cjs/react/web/ui/ConnectWallet/locale/en.js +6 -0
  48. package/dist/cjs/react/web/ui/ConnectWallet/locale/en.js.map +1 -1
  49. package/dist/cjs/react/web/ui/ConnectWallet/locale/es.js +6 -0
  50. package/dist/cjs/react/web/ui/ConnectWallet/locale/es.js.map +1 -1
  51. package/dist/cjs/react/web/ui/ConnectWallet/locale/fr.js +6 -0
  52. package/dist/cjs/react/web/ui/ConnectWallet/locale/fr.js.map +1 -1
  53. package/dist/cjs/react/web/ui/ConnectWallet/locale/ja.js +6 -0
  54. package/dist/cjs/react/web/ui/ConnectWallet/locale/ja.js.map +1 -1
  55. package/dist/cjs/react/web/ui/ConnectWallet/locale/kr.js +6 -0
  56. package/dist/cjs/react/web/ui/ConnectWallet/locale/kr.js.map +1 -1
  57. package/dist/cjs/react/web/ui/ConnectWallet/locale/tl.js +6 -0
  58. package/dist/cjs/react/web/ui/ConnectWallet/locale/tl.js.map +1 -1
  59. package/dist/cjs/react/web/ui/ConnectWallet/locale/vi.js +6 -0
  60. package/dist/cjs/react/web/ui/ConnectWallet/locale/vi.js.map +1 -1
  61. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +3 -1
  62. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  63. package/dist/cjs/react/web/ui/ConnectWallet/screens/LinkProfileScreen.js +42 -0
  64. package/dist/cjs/react/web/ui/ConnectWallet/screens/LinkProfileScreen.js.map +1 -0
  65. package/dist/cjs/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.js +58 -0
  66. package/dist/cjs/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.js.map +1 -0
  67. package/dist/cjs/react/web/ui/ConnectWallet/screens/ManageWalletScreen.js +8 -5
  68. package/dist/cjs/react/web/ui/ConnectWallet/screens/ManageWalletScreen.js.map +1 -1
  69. package/dist/cjs/react/web/ui/PayEmbed.js +13 -8
  70. package/dist/cjs/react/web/ui/PayEmbed.js.map +1 -1
  71. package/dist/cjs/react/web/ui/components/Spinner.js +1 -1
  72. package/dist/cjs/react/web/ui/components/Spinner.js.map +1 -1
  73. package/dist/cjs/react/web/ui/components/TokenIcon.js +2 -2
  74. package/dist/cjs/react/web/ui/components/TokenIcon.js.map +1 -1
  75. package/dist/cjs/react/web/ui/components/WalletImage.js +6 -32
  76. package/dist/cjs/react/web/ui/components/WalletImage.js.map +1 -1
  77. package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js +8 -4
  78. package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js.map +1 -1
  79. package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletFormUI.js +1 -1
  80. package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletFormUI.js.map +1 -1
  81. package/dist/cjs/react/web/wallets/in-app/InAppWalletConnectUI.js +8 -4
  82. package/dist/cjs/react/web/wallets/in-app/InAppWalletConnectUI.js.map +1 -1
  83. package/dist/cjs/react/web/wallets/in-app/InAppWalletFormUI.js +5 -5
  84. package/dist/cjs/react/web/wallets/in-app/InAppWalletFormUI.js.map +1 -1
  85. package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js +22 -16
  86. package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
  87. package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js +36 -49
  88. package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
  89. package/dist/cjs/react/web/wallets/shared/PassKeyLogin.js +47 -20
  90. package/dist/cjs/react/web/wallets/shared/PassKeyLogin.js.map +1 -1
  91. package/dist/cjs/react/web/wallets/shared/SocialLogin.js +33 -13
  92. package/dist/cjs/react/web/wallets/shared/SocialLogin.js.map +1 -1
  93. package/dist/cjs/react/web/wallets/shared/locale/en.js +1 -1
  94. package/dist/cjs/react/web/wallets/shared/oauthSignIn.js +1 -1
  95. package/dist/cjs/react/web/wallets/shared/oauthSignIn.js.map +1 -1
  96. package/dist/cjs/reactive/store.js +3 -0
  97. package/dist/cjs/reactive/store.js.map +1 -1
  98. package/dist/cjs/transaction/serialize-transaction.js +20 -142
  99. package/dist/cjs/transaction/serialize-transaction.js.map +1 -1
  100. package/dist/cjs/version.js +1 -1
  101. package/dist/cjs/wallets/coinbase/coinbase-wallet.js +8 -1
  102. package/dist/cjs/wallets/coinbase/coinbase-wallet.js.map +1 -1
  103. package/dist/cjs/wallets/create-wallet.js +8 -1
  104. package/dist/cjs/wallets/create-wallet.js.map +1 -1
  105. package/dist/cjs/wallets/in-app/core/authentication/getLoginPath.js +14 -3
  106. package/dist/cjs/wallets/in-app/core/authentication/getLoginPath.js.map +1 -1
  107. package/dist/cjs/wallets/in-app/core/authentication/linkAccount.js +67 -0
  108. package/dist/cjs/wallets/in-app/core/authentication/linkAccount.js.map +1 -0
  109. package/dist/cjs/wallets/in-app/core/authentication/siwe.js +47 -0
  110. package/dist/cjs/wallets/in-app/core/authentication/siwe.js.map +1 -0
  111. package/dist/cjs/wallets/in-app/core/authentication/{type.js → types.js} +1 -1
  112. package/dist/cjs/wallets/in-app/core/authentication/types.js.map +1 -0
  113. package/dist/cjs/wallets/in-app/core/wallet/ecosystem-core.js +8 -1
  114. package/dist/cjs/wallets/in-app/core/wallet/ecosystem-core.js.map +1 -1
  115. package/dist/cjs/wallets/in-app/core/wallet/in-app-core.js +47 -1
  116. package/dist/cjs/wallets/in-app/core/wallet/in-app-core.js.map +1 -1
  117. package/dist/cjs/wallets/in-app/core/wallet/index.js +3 -3
  118. package/dist/cjs/wallets/in-app/core/wallet/index.js.map +1 -1
  119. package/dist/cjs/wallets/in-app/core/wallet/profiles.js +60 -0
  120. package/dist/cjs/wallets/in-app/core/wallet/profiles.js.map +1 -0
  121. package/dist/cjs/wallets/in-app/native/auth/index.js +3 -3
  122. package/dist/cjs/wallets/in-app/native/auth/index.js.map +1 -1
  123. package/dist/cjs/wallets/in-app/native/auth/native-auth.js +47 -112
  124. package/dist/cjs/wallets/in-app/native/auth/native-auth.js.map +1 -1
  125. package/dist/cjs/wallets/in-app/native/helpers/auth/middleware.js +5 -5
  126. package/dist/cjs/wallets/in-app/native/helpers/auth/middleware.js.map +1 -1
  127. package/dist/cjs/wallets/in-app/native/native-connector.js +76 -36
  128. package/dist/cjs/wallets/in-app/native/native-connector.js.map +1 -1
  129. package/dist/cjs/wallets/in-app/web/lib/auth/abstract-login.js +0 -2
  130. package/dist/cjs/wallets/in-app/web/lib/auth/abstract-login.js.map +1 -1
  131. package/dist/cjs/wallets/in-app/web/lib/auth/base-login.js +49 -148
  132. package/dist/cjs/wallets/in-app/web/lib/auth/base-login.js.map +1 -1
  133. package/dist/cjs/wallets/in-app/web/lib/auth/iframe-auth.js +26 -12
  134. package/dist/cjs/wallets/in-app/web/lib/auth/iframe-auth.js.map +1 -1
  135. package/dist/cjs/wallets/in-app/web/lib/auth/index.js +3 -3
  136. package/dist/cjs/wallets/in-app/web/lib/auth/index.js.map +1 -1
  137. package/dist/cjs/wallets/in-app/web/lib/auth/oauth.js +2 -2
  138. package/dist/cjs/wallets/in-app/web/lib/auth/oauth.js.map +1 -1
  139. package/dist/cjs/wallets/in-app/web/lib/auth/otp.js +89 -0
  140. package/dist/cjs/wallets/in-app/web/lib/auth/otp.js.map +1 -0
  141. package/dist/cjs/wallets/in-app/web/lib/in-app-account.js +7 -7
  142. package/dist/cjs/wallets/in-app/web/lib/in-app-account.js.map +1 -1
  143. package/dist/cjs/wallets/in-app/web/lib/web-connector.js +89 -30
  144. package/dist/cjs/wallets/in-app/web/lib/web-connector.js.map +1 -1
  145. package/dist/cjs/wallets/manager/index.js +41 -5
  146. package/dist/cjs/wallets/manager/index.js.map +1 -1
  147. package/dist/cjs/wallets/native/create-wallet.js +8 -1
  148. package/dist/cjs/wallets/native/create-wallet.js.map +1 -1
  149. package/dist/cjs/wallets/smart/smart-wallet.js +8 -1
  150. package/dist/cjs/wallets/smart/smart-wallet.js.map +1 -1
  151. package/dist/esm/adapters/ethers5.js +3 -2
  152. package/dist/esm/adapters/ethers5.js.map +1 -1
  153. package/dist/esm/adapters/wallet-adapter.js +3 -0
  154. package/dist/esm/adapters/wallet-adapter.js.map +1 -1
  155. package/dist/esm/auth/constants.js +0 -1
  156. package/dist/esm/auth/constants.js.map +1 -1
  157. package/dist/esm/auth/verify-hash.js +2 -2
  158. package/dist/esm/auth/verify-hash.js.map +1 -1
  159. package/dist/esm/chains/chain-definitions/fraxtal-testnet.js +17 -0
  160. package/dist/esm/chains/chain-definitions/fraxtal-testnet.js.map +1 -0
  161. package/dist/esm/chains/chain-definitions/mode-testnet.js +17 -0
  162. package/dist/esm/chains/chain-definitions/mode-testnet.js.map +1 -0
  163. package/dist/esm/chains/utils.js +6 -0
  164. package/dist/esm/chains/utils.js.map +1 -1
  165. package/dist/esm/exports/react.js +1 -0
  166. package/dist/esm/exports/react.js.map +1 -1
  167. package/dist/esm/exports/wallets/embedded.js +1 -1
  168. package/dist/esm/exports/wallets/embedded.js.map +1 -1
  169. package/dist/esm/exports/wallets/in-app.js +2 -2
  170. package/dist/esm/exports/wallets/in-app.js.map +1 -1
  171. package/dist/esm/exports/wallets/in-app.native.js +1 -1
  172. package/dist/esm/exports/wallets/in-app.native.js.map +1 -1
  173. package/dist/esm/exports/wallets.js +1 -0
  174. package/dist/esm/exports/wallets.js.map +1 -1
  175. package/dist/esm/react/core/hooks/others/useProfiles.js +33 -0
  176. package/dist/esm/react/core/hooks/others/useProfiles.js.map +1 -0
  177. package/dist/esm/react/core/utils/{socialIcons.js → walletIcon.js} +25 -1
  178. package/dist/esm/react/core/utils/walletIcon.js.map +1 -0
  179. package/dist/esm/react/native/ui/components/TokenIcon.js +1 -1
  180. package/dist/esm/react/native/ui/components/TokenIcon.js.map +1 -1
  181. package/dist/esm/react/native/ui/connect/ConnectButton.js +14 -9
  182. package/dist/esm/react/native/ui/connect/ConnectButton.js.map +1 -1
  183. package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js +13 -8
  184. package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
  185. package/dist/esm/react/web/ui/ConnectWallet/Details.js +22 -5
  186. package/dist/esm/react/web/ui/ConnectWallet/Details.js.map +1 -1
  187. package/dist/esm/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js +1 -1
  188. package/dist/esm/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js.map +1 -1
  189. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js +13 -8
  190. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js.map +1 -1
  191. package/dist/esm/react/web/ui/ConnectWallet/Modal/screen.js +1 -1
  192. package/dist/esm/react/web/ui/ConnectWallet/Modal/screen.js.map +1 -1
  193. package/dist/esm/react/web/ui/ConnectWallet/WalletSelector.js +1 -1
  194. package/dist/esm/react/web/ui/ConnectWallet/WalletSelector.js.map +1 -1
  195. package/dist/esm/react/web/ui/ConnectWallet/icons/AddUserIcon.js +8 -0
  196. package/dist/esm/react/web/ui/ConnectWallet/icons/AddUserIcon.js.map +1 -0
  197. package/dist/esm/react/web/ui/ConnectWallet/icons/MultiUserIcon.js +8 -0
  198. package/dist/esm/react/web/ui/ConnectWallet/icons/MultiUserIcon.js.map +1 -0
  199. package/dist/esm/react/web/ui/ConnectWallet/locale/de.js +6 -0
  200. package/dist/esm/react/web/ui/ConnectWallet/locale/de.js.map +1 -1
  201. package/dist/esm/react/web/ui/ConnectWallet/locale/en.js +6 -0
  202. package/dist/esm/react/web/ui/ConnectWallet/locale/en.js.map +1 -1
  203. package/dist/esm/react/web/ui/ConnectWallet/locale/es.js +6 -0
  204. package/dist/esm/react/web/ui/ConnectWallet/locale/es.js.map +1 -1
  205. package/dist/esm/react/web/ui/ConnectWallet/locale/fr.js +6 -0
  206. package/dist/esm/react/web/ui/ConnectWallet/locale/fr.js.map +1 -1
  207. package/dist/esm/react/web/ui/ConnectWallet/locale/ja.js +6 -0
  208. package/dist/esm/react/web/ui/ConnectWallet/locale/ja.js.map +1 -1
  209. package/dist/esm/react/web/ui/ConnectWallet/locale/kr.js +6 -0
  210. package/dist/esm/react/web/ui/ConnectWallet/locale/kr.js.map +1 -1
  211. package/dist/esm/react/web/ui/ConnectWallet/locale/tl.js +6 -0
  212. package/dist/esm/react/web/ui/ConnectWallet/locale/tl.js.map +1 -1
  213. package/dist/esm/react/web/ui/ConnectWallet/locale/vi.js +6 -0
  214. package/dist/esm/react/web/ui/ConnectWallet/locale/vi.js.map +1 -1
  215. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +3 -1
  216. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  217. package/dist/esm/react/web/ui/ConnectWallet/screens/LinkProfileScreen.js +39 -0
  218. package/dist/esm/react/web/ui/ConnectWallet/screens/LinkProfileScreen.js.map +1 -0
  219. package/dist/esm/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.js +55 -0
  220. package/dist/esm/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.js.map +1 -0
  221. package/dist/esm/react/web/ui/ConnectWallet/screens/ManageWalletScreen.js +8 -5
  222. package/dist/esm/react/web/ui/ConnectWallet/screens/ManageWalletScreen.js.map +1 -1
  223. package/dist/esm/react/web/ui/PayEmbed.js +14 -9
  224. package/dist/esm/react/web/ui/PayEmbed.js.map +1 -1
  225. package/dist/esm/react/web/ui/components/Spinner.js +1 -1
  226. package/dist/esm/react/web/ui/components/Spinner.js.map +1 -1
  227. package/dist/esm/react/web/ui/components/TokenIcon.js +1 -1
  228. package/dist/esm/react/web/ui/components/TokenIcon.js.map +1 -1
  229. package/dist/esm/react/web/ui/components/WalletImage.js +4 -30
  230. package/dist/esm/react/web/ui/components/WalletImage.js.map +1 -1
  231. package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js +8 -4
  232. package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js.map +1 -1
  233. package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletFormUI.js +2 -2
  234. package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletFormUI.js.map +1 -1
  235. package/dist/esm/react/web/wallets/in-app/InAppWalletConnectUI.js +8 -4
  236. package/dist/esm/react/web/wallets/in-app/InAppWalletConnectUI.js.map +1 -1
  237. package/dist/esm/react/web/wallets/in-app/InAppWalletFormUI.js +5 -5
  238. package/dist/esm/react/web/wallets/in-app/InAppWalletFormUI.js.map +1 -1
  239. package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js +18 -12
  240. package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
  241. package/dist/esm/react/web/wallets/shared/OTPLoginUI.js +36 -49
  242. package/dist/esm/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
  243. package/dist/esm/react/web/wallets/shared/PassKeyLogin.js +47 -20
  244. package/dist/esm/react/web/wallets/shared/PassKeyLogin.js.map +1 -1
  245. package/dist/esm/react/web/wallets/shared/SocialLogin.js +33 -13
  246. package/dist/esm/react/web/wallets/shared/SocialLogin.js.map +1 -1
  247. package/dist/esm/react/web/wallets/shared/locale/en.js +1 -1
  248. package/dist/esm/react/web/wallets/shared/oauthSignIn.js +2 -2
  249. package/dist/esm/react/web/wallets/shared/oauthSignIn.js.map +1 -1
  250. package/dist/esm/reactive/store.js +3 -0
  251. package/dist/esm/reactive/store.js.map +1 -1
  252. package/dist/esm/transaction/serialize-transaction.js +21 -142
  253. package/dist/esm/transaction/serialize-transaction.js.map +1 -1
  254. package/dist/esm/version.js +1 -1
  255. package/dist/esm/wallets/coinbase/coinbase-wallet.js +8 -1
  256. package/dist/esm/wallets/coinbase/coinbase-wallet.js.map +1 -1
  257. package/dist/esm/wallets/create-wallet.js +8 -1
  258. package/dist/esm/wallets/create-wallet.js.map +1 -1
  259. package/dist/esm/wallets/in-app/core/authentication/getLoginPath.js +11 -1
  260. package/dist/esm/wallets/in-app/core/authentication/getLoginPath.js.map +1 -1
  261. package/dist/esm/wallets/in-app/core/authentication/linkAccount.js +63 -0
  262. package/dist/esm/wallets/in-app/core/authentication/linkAccount.js.map +1 -0
  263. package/dist/esm/wallets/in-app/core/authentication/siwe.js +44 -0
  264. package/dist/esm/wallets/in-app/core/authentication/siwe.js.map +1 -0
  265. package/dist/esm/wallets/in-app/core/authentication/{type.js → types.js} +1 -1
  266. package/dist/esm/wallets/in-app/core/authentication/types.js.map +1 -0
  267. package/dist/esm/wallets/in-app/core/wallet/ecosystem-core.js +8 -1
  268. package/dist/esm/wallets/in-app/core/wallet/ecosystem-core.js.map +1 -1
  269. package/dist/esm/wallets/in-app/core/wallet/in-app-core.js +47 -1
  270. package/dist/esm/wallets/in-app/core/wallet/in-app-core.js.map +1 -1
  271. package/dist/esm/wallets/in-app/core/wallet/index.js +2 -2
  272. package/dist/esm/wallets/in-app/core/wallet/index.js.map +1 -1
  273. package/dist/esm/wallets/in-app/core/wallet/profiles.js +56 -0
  274. package/dist/esm/wallets/in-app/core/wallet/profiles.js.map +1 -0
  275. package/dist/esm/wallets/in-app/native/auth/index.js +2 -2
  276. package/dist/esm/wallets/in-app/native/auth/index.js.map +1 -1
  277. package/dist/esm/wallets/in-app/native/auth/native-auth.js +47 -112
  278. package/dist/esm/wallets/in-app/native/auth/native-auth.js.map +1 -1
  279. package/dist/esm/wallets/in-app/native/helpers/auth/middleware.js +1 -1
  280. package/dist/esm/wallets/in-app/native/helpers/auth/middleware.js.map +1 -1
  281. package/dist/esm/wallets/in-app/native/native-connector.js +67 -27
  282. package/dist/esm/wallets/in-app/native/native-connector.js.map +1 -1
  283. package/dist/esm/wallets/in-app/web/lib/auth/abstract-login.js +0 -2
  284. package/dist/esm/wallets/in-app/web/lib/auth/abstract-login.js.map +1 -1
  285. package/dist/esm/wallets/in-app/web/lib/auth/base-login.js +49 -148
  286. package/dist/esm/wallets/in-app/web/lib/auth/base-login.js.map +1 -1
  287. package/dist/esm/wallets/in-app/web/lib/auth/iframe-auth.js +26 -12
  288. package/dist/esm/wallets/in-app/web/lib/auth/iframe-auth.js.map +1 -1
  289. package/dist/esm/wallets/in-app/web/lib/auth/index.js +2 -2
  290. package/dist/esm/wallets/in-app/web/lib/auth/index.js.map +1 -1
  291. package/dist/esm/wallets/in-app/web/lib/auth/oauth.js +3 -3
  292. package/dist/esm/wallets/in-app/web/lib/auth/oauth.js.map +1 -1
  293. package/dist/esm/wallets/in-app/web/lib/auth/otp.js +84 -0
  294. package/dist/esm/wallets/in-app/web/lib/auth/otp.js.map +1 -0
  295. package/dist/esm/wallets/in-app/web/lib/in-app-account.js +1 -1
  296. package/dist/esm/wallets/in-app/web/lib/in-app-account.js.map +1 -1
  297. package/dist/esm/wallets/in-app/web/lib/web-connector.js +88 -29
  298. package/dist/esm/wallets/in-app/web/lib/web-connector.js.map +1 -1
  299. package/dist/esm/wallets/manager/index.js +41 -5
  300. package/dist/esm/wallets/manager/index.js.map +1 -1
  301. package/dist/esm/wallets/native/create-wallet.js +8 -1
  302. package/dist/esm/wallets/native/create-wallet.js.map +1 -1
  303. package/dist/esm/wallets/smart/smart-wallet.js +8 -1
  304. package/dist/esm/wallets/smart/smart-wallet.js.map +1 -1
  305. package/dist/types/adapters/ethers5.d.ts +1 -1
  306. package/dist/types/adapters/ethers5.d.ts.map +1 -1
  307. package/dist/types/adapters/wallet-adapter.d.ts.map +1 -1
  308. package/dist/types/auth/constants.d.ts +0 -1
  309. package/dist/types/auth/constants.d.ts.map +1 -1
  310. package/dist/types/auth/verify-hash.d.ts.map +1 -1
  311. package/dist/types/chains/chain-definitions/fraxtal-testnet.d.ts +7 -0
  312. package/dist/types/chains/chain-definitions/fraxtal-testnet.d.ts.map +1 -0
  313. package/dist/types/chains/chain-definitions/mode-testnet.d.ts +7 -0
  314. package/dist/types/chains/chain-definitions/mode-testnet.d.ts.map +1 -0
  315. package/dist/types/chains/utils.d.ts +6 -0
  316. package/dist/types/chains/utils.d.ts.map +1 -1
  317. package/dist/types/exports/react.d.ts +1 -0
  318. package/dist/types/exports/react.d.ts.map +1 -1
  319. package/dist/types/exports/wallets/embedded.d.ts +1 -1
  320. package/dist/types/exports/wallets/embedded.d.ts.map +1 -1
  321. package/dist/types/exports/wallets/in-app.d.ts +2 -2
  322. package/dist/types/exports/wallets/in-app.d.ts.map +1 -1
  323. package/dist/types/exports/wallets/in-app.native.d.ts +1 -1
  324. package/dist/types/exports/wallets/in-app.native.d.ts.map +1 -1
  325. package/dist/types/exports/wallets.d.ts +1 -0
  326. package/dist/types/exports/wallets.d.ts.map +1 -1
  327. package/dist/types/react/core/hooks/others/useProfiles.d.ts +23 -0
  328. package/dist/types/react/core/hooks/others/useProfiles.d.ts.map +1 -0
  329. package/dist/types/react/core/providers/connection-manager.d.ts +3 -0
  330. package/dist/types/react/core/providers/connection-manager.d.ts.map +1 -1
  331. package/dist/types/react/core/utils/storage.d.ts +2 -2
  332. package/dist/types/react/core/utils/storage.d.ts.map +1 -1
  333. package/dist/types/react/core/utils/{socialIcons.d.ts → walletIcon.d.ts} +2 -1
  334. package/dist/types/react/core/utils/walletIcon.d.ts.map +1 -0
  335. package/dist/types/react/native/ui/connect/ConnectButton.d.ts.map +1 -1
  336. package/dist/types/react/native/ui/connect/ConnectModal.d.ts +1 -1
  337. package/dist/types/react/native/ui/connect/ConnectModal.d.ts.map +1 -1
  338. package/dist/types/react/native/ui/connect/InAppWalletUI.d.ts +1 -1
  339. package/dist/types/react/native/ui/connect/InAppWalletUI.d.ts.map +1 -1
  340. package/dist/types/react/web/ui/ConnectWallet/ConnectButton.d.ts.map +1 -1
  341. package/dist/types/react/web/ui/ConnectWallet/Details.d.ts.map +1 -1
  342. package/dist/types/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.d.ts.map +1 -1
  343. package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectEmbed.d.ts.map +1 -1
  344. package/dist/types/react/web/ui/ConnectWallet/icons/AddUserIcon.d.ts +6 -0
  345. package/dist/types/react/web/ui/ConnectWallet/icons/AddUserIcon.d.ts.map +1 -0
  346. package/dist/types/react/web/ui/ConnectWallet/icons/MultiUserIcon.d.ts +6 -0
  347. package/dist/types/react/web/ui/ConnectWallet/icons/MultiUserIcon.d.ts.map +1 -0
  348. package/dist/types/react/web/ui/ConnectWallet/locale/de.d.ts.map +1 -1
  349. package/dist/types/react/web/ui/ConnectWallet/locale/en.d.ts.map +1 -1
  350. package/dist/types/react/web/ui/ConnectWallet/locale/es.d.ts.map +1 -1
  351. package/dist/types/react/web/ui/ConnectWallet/locale/fr.d.ts.map +1 -1
  352. package/dist/types/react/web/ui/ConnectWallet/locale/ja.d.ts.map +1 -1
  353. package/dist/types/react/web/ui/ConnectWallet/locale/kr.d.ts.map +1 -1
  354. package/dist/types/react/web/ui/ConnectWallet/locale/tl.d.ts.map +1 -1
  355. package/dist/types/react/web/ui/ConnectWallet/locale/types.d.ts +6 -0
  356. package/dist/types/react/web/ui/ConnectWallet/locale/types.d.ts.map +1 -1
  357. package/dist/types/react/web/ui/ConnectWallet/locale/vi.d.ts.map +1 -1
  358. package/dist/types/react/web/ui/ConnectWallet/screens/LinkProfileScreen.d.ts +11 -0
  359. package/dist/types/react/web/ui/ConnectWallet/screens/LinkProfileScreen.d.ts.map +1 -0
  360. package/dist/types/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.d.ts +13 -0
  361. package/dist/types/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.d.ts.map +1 -0
  362. package/dist/types/react/web/ui/ConnectWallet/screens/ManageWalletScreen.d.ts.map +1 -1
  363. package/dist/types/react/web/ui/ConnectWallet/screens/types.d.ts +1 -1
  364. package/dist/types/react/web/ui/ConnectWallet/screens/types.d.ts.map +1 -1
  365. package/dist/types/react/web/ui/PayEmbed.d.ts.map +1 -1
  366. package/dist/types/react/web/ui/components/WalletImage.d.ts.map +1 -1
  367. package/dist/types/react/web/wallets/ecosystem/EcosystemWalletConnectUI.d.ts +1 -0
  368. package/dist/types/react/web/wallets/ecosystem/EcosystemWalletConnectUI.d.ts.map +1 -1
  369. package/dist/types/react/web/wallets/ecosystem/EcosystemWalletFormUI.d.ts +1 -0
  370. package/dist/types/react/web/wallets/ecosystem/EcosystemWalletFormUI.d.ts.map +1 -1
  371. package/dist/types/react/web/wallets/in-app/InAppWalletConnectUI.d.ts +2 -1
  372. package/dist/types/react/web/wallets/in-app/InAppWalletConnectUI.d.ts.map +1 -1
  373. package/dist/types/react/web/wallets/in-app/InAppWalletFormUI.d.ts +2 -1
  374. package/dist/types/react/web/wallets/in-app/InAppWalletFormUI.d.ts.map +1 -1
  375. package/dist/types/react/web/wallets/shared/ConnectWalletSocialOptions.d.ts +3 -1
  376. package/dist/types/react/web/wallets/shared/ConnectWalletSocialOptions.d.ts.map +1 -1
  377. package/dist/types/react/web/wallets/shared/OTPLoginUI.d.ts +1 -0
  378. package/dist/types/react/web/wallets/shared/OTPLoginUI.d.ts.map +1 -1
  379. package/dist/types/react/web/wallets/shared/PassKeyLogin.d.ts +4 -1
  380. package/dist/types/react/web/wallets/shared/PassKeyLogin.d.ts.map +1 -1
  381. package/dist/types/react/web/wallets/shared/SocialLogin.d.ts +3 -0
  382. package/dist/types/react/web/wallets/shared/SocialLogin.d.ts.map +1 -1
  383. package/dist/types/reactive/store.d.ts.map +1 -1
  384. package/dist/types/transaction/serialize-transaction.d.ts +8 -8
  385. package/dist/types/transaction/serialize-transaction.d.ts.map +1 -1
  386. package/dist/types/utils/any-evm/keyless-transaction.d.ts +1 -1
  387. package/dist/types/version.d.ts +1 -1
  388. package/dist/types/wallets/coinbase/coinbase-wallet.d.ts.map +1 -1
  389. package/dist/types/wallets/create-wallet.d.ts.map +1 -1
  390. package/dist/types/wallets/ecosystem/types.d.ts +2 -8
  391. package/dist/types/wallets/ecosystem/types.d.ts.map +1 -1
  392. package/dist/types/wallets/in-app/core/authentication/getLoginPath.d.ts +8 -3
  393. package/dist/types/wallets/in-app/core/authentication/getLoginPath.d.ts.map +1 -1
  394. package/dist/types/wallets/in-app/core/authentication/linkAccount.d.ts +24 -0
  395. package/dist/types/wallets/in-app/core/authentication/linkAccount.d.ts.map +1 -0
  396. package/dist/types/wallets/in-app/core/authentication/siwe.d.ts +14 -0
  397. package/dist/types/wallets/in-app/core/authentication/siwe.d.ts.map +1 -0
  398. package/dist/types/wallets/in-app/core/authentication/{type.d.ts → types.d.ts} +17 -2
  399. package/dist/types/wallets/in-app/core/authentication/types.d.ts.map +1 -0
  400. package/dist/types/wallets/in-app/core/interfaces/connector.d.ts +4 -3
  401. package/dist/types/wallets/in-app/core/interfaces/connector.d.ts.map +1 -1
  402. package/dist/types/wallets/in-app/core/wallet/ecosystem-core.d.ts.map +1 -1
  403. package/dist/types/wallets/in-app/core/wallet/in-app-core.d.ts.map +1 -1
  404. package/dist/types/wallets/in-app/core/wallet/profiles.d.ts +48 -0
  405. package/dist/types/wallets/in-app/core/wallet/profiles.d.ts.map +1 -0
  406. package/dist/types/wallets/in-app/core/wallet/types.d.ts +1 -1
  407. package/dist/types/wallets/in-app/core/wallet/types.d.ts.map +1 -1
  408. package/dist/types/wallets/in-app/native/auth/index.d.ts +3 -3
  409. package/dist/types/wallets/in-app/native/auth/index.d.ts.map +1 -1
  410. package/dist/types/wallets/in-app/native/auth/native-auth.d.ts +7 -13
  411. package/dist/types/wallets/in-app/native/auth/native-auth.d.ts.map +1 -1
  412. package/dist/types/wallets/in-app/native/helpers/api/fetchers.d.ts +1 -1
  413. package/dist/types/wallets/in-app/native/helpers/api/fetchers.d.ts.map +1 -1
  414. package/dist/types/wallets/in-app/native/helpers/auth/logout.d.ts +1 -1
  415. package/dist/types/wallets/in-app/native/helpers/auth/logout.d.ts.map +1 -1
  416. package/dist/types/wallets/in-app/native/helpers/auth/middleware.d.ts +3 -3
  417. package/dist/types/wallets/in-app/native/helpers/auth/middleware.d.ts.map +1 -1
  418. package/dist/types/wallets/in-app/native/helpers/storage/local.d.ts +1 -1
  419. package/dist/types/wallets/in-app/native/helpers/storage/local.d.ts.map +1 -1
  420. package/dist/types/wallets/in-app/native/helpers/types.d.ts +1 -1
  421. package/dist/types/wallets/in-app/native/helpers/types.d.ts.map +1 -1
  422. package/dist/types/wallets/in-app/native/helpers/wallet/creation.d.ts +1 -1
  423. package/dist/types/wallets/in-app/native/helpers/wallet/retrieval.d.ts +1 -1
  424. package/dist/types/wallets/in-app/native/helpers/wallet/retrieval.d.ts.map +1 -1
  425. package/dist/types/wallets/in-app/native/native-connector.d.ts +6 -4
  426. package/dist/types/wallets/in-app/native/native-connector.d.ts.map +1 -1
  427. package/dist/types/wallets/in-app/web/lib/auth/abstract-login.d.ts +4 -12
  428. package/dist/types/wallets/in-app/web/lib/auth/abstract-login.d.ts.map +1 -1
  429. package/dist/types/wallets/in-app/web/lib/auth/base-login.d.ts +12 -15
  430. package/dist/types/wallets/in-app/web/lib/auth/base-login.d.ts.map +1 -1
  431. package/dist/types/wallets/in-app/web/lib/auth/iframe-auth.d.ts +11 -9
  432. package/dist/types/wallets/in-app/web/lib/auth/iframe-auth.d.ts.map +1 -1
  433. package/dist/types/wallets/in-app/web/lib/auth/index.d.ts +4 -4
  434. package/dist/types/wallets/in-app/web/lib/auth/index.d.ts.map +1 -1
  435. package/dist/types/wallets/in-app/web/lib/auth/oauth.d.ts +1 -1
  436. package/dist/types/wallets/in-app/web/lib/auth/oauth.d.ts.map +1 -1
  437. package/dist/types/wallets/in-app/web/lib/auth/otp.d.ts +15 -0
  438. package/dist/types/wallets/in-app/web/lib/auth/otp.d.ts.map +1 -0
  439. package/dist/types/wallets/in-app/web/lib/auth/passkeys.d.ts +1 -1
  440. package/dist/types/wallets/in-app/web/lib/auth/passkeys.d.ts.map +1 -1
  441. package/dist/types/wallets/in-app/web/lib/get-url-token.d.ts +1 -1
  442. package/dist/types/wallets/in-app/web/lib/get-url-token.d.ts.map +1 -1
  443. package/dist/types/wallets/in-app/web/lib/in-app-account.d.ts +1 -1
  444. package/dist/types/wallets/in-app/web/lib/in-app-account.d.ts.map +1 -1
  445. package/dist/types/wallets/in-app/web/lib/web-connector.d.ts +11 -4
  446. package/dist/types/wallets/in-app/web/lib/web-connector.d.ts.map +1 -1
  447. package/dist/types/wallets/in-app/web/types.d.ts +1 -1
  448. package/dist/types/wallets/in-app/web/types.d.ts.map +1 -1
  449. package/dist/types/wallets/interfaces/wallet.d.ts.map +1 -1
  450. package/dist/types/wallets/manager/index.d.ts +1 -0
  451. package/dist/types/wallets/manager/index.d.ts.map +1 -1
  452. package/dist/types/wallets/native/create-wallet.d.ts.map +1 -1
  453. package/dist/types/wallets/smart/smart-wallet.d.ts.map +1 -1
  454. package/dist/types/wallets/types.d.ts +1 -1
  455. package/dist/types/wallets/types.d.ts.map +1 -1
  456. package/package.json +2 -2
  457. package/src/adapters/ethers5.ts +4 -2
  458. package/src/adapters/wallet-adapter.ts +3 -0
  459. package/src/auth/constants.ts +0 -3
  460. package/src/auth/verify-hash.ts +7 -5
  461. package/src/chains/chain-definitions/fraxtal-testnet.ts +17 -0
  462. package/src/chains/chain-definitions/mode-testnet.ts +17 -0
  463. package/src/chains/utils.ts +7 -0
  464. package/src/exports/react.ts +1 -0
  465. package/src/exports/wallets/embedded.ts +1 -1
  466. package/src/exports/wallets/in-app.native.ts +1 -1
  467. package/src/exports/wallets/in-app.ts +2 -2
  468. package/src/exports/wallets.ts +5 -0
  469. package/src/extensions/marketplace/direct-listings/direct-listings.test.ts +334 -337
  470. package/src/extensions/marketplace/english-auctions/english-auctions.test.ts +231 -236
  471. package/src/extensions/marketplace/offers/offers.test.ts +1 -1
  472. package/src/extensions/prebuilts/deploy-modular-core.test.ts +1 -1
  473. package/src/react/core/hooks/others/useProfiles.ts +36 -0
  474. package/src/react/core/utils/storage.ts +1 -1
  475. package/src/react/core/utils/{socialIcons.ts → walletIcon.ts} +25 -0
  476. package/src/react/native/ui/components/TokenIcon.tsx +1 -1
  477. package/src/react/native/ui/connect/ConnectButton.tsx +14 -9
  478. package/src/react/native/ui/connect/ConnectModal.tsx +1 -1
  479. package/src/react/native/ui/connect/InAppWalletUI.tsx +1 -1
  480. package/src/react/web/ui/ConnectWallet/ConnectButton.tsx +13 -8
  481. package/src/react/web/ui/ConnectWallet/Details.tsx +45 -11
  482. package/src/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.tsx +3 -1
  483. package/src/react/web/ui/ConnectWallet/Modal/ConnectEmbed.tsx +13 -8
  484. package/src/react/web/ui/ConnectWallet/Modal/screen.tsx +1 -1
  485. package/src/react/web/ui/ConnectWallet/WalletSelector.tsx +1 -1
  486. package/src/react/web/ui/ConnectWallet/icons/AddUserIcon.tsx +25 -0
  487. package/src/react/web/ui/ConnectWallet/icons/MultiUserIcon.tsx +25 -0
  488. package/src/react/web/ui/ConnectWallet/locale/de.ts +6 -0
  489. package/src/react/web/ui/ConnectWallet/locale/en.ts +6 -0
  490. package/src/react/web/ui/ConnectWallet/locale/es.ts +6 -0
  491. package/src/react/web/ui/ConnectWallet/locale/fr.ts +6 -0
  492. package/src/react/web/ui/ConnectWallet/locale/ja.ts +6 -0
  493. package/src/react/web/ui/ConnectWallet/locale/kr.ts +6 -0
  494. package/src/react/web/ui/ConnectWallet/locale/tl.ts +6 -1
  495. package/src/react/web/ui/ConnectWallet/locale/types.ts +6 -0
  496. package/src/react/web/ui/ConnectWallet/locale/vi.ts +6 -0
  497. package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +5 -1
  498. package/src/react/web/ui/ConnectWallet/screens/LinkProfileScreen.tsx +88 -0
  499. package/src/react/web/ui/ConnectWallet/screens/LinkedProfilesScreen.tsx +119 -0
  500. package/src/react/web/ui/ConnectWallet/screens/ManageWalletScreen.tsx +20 -4
  501. package/src/react/web/ui/ConnectWallet/screens/types.ts +3 -1
  502. package/src/react/web/ui/PayEmbed.tsx +14 -9
  503. package/src/react/web/ui/components/Spinner.tsx +1 -1
  504. package/src/react/web/ui/components/TokenIcon.tsx +1 -1
  505. package/src/react/web/ui/components/WalletImage.tsx +7 -41
  506. package/src/react/web/wallets/ecosystem/EcosystemWalletConnectUI.tsx +16 -4
  507. package/src/react/web/wallets/ecosystem/EcosystemWalletFormUI.tsx +14 -6
  508. package/src/react/web/wallets/in-app/InAppWalletConnectUI.tsx +17 -5
  509. package/src/react/web/wallets/in-app/InAppWalletFormUI.tsx +13 -12
  510. package/src/react/web/wallets/shared/ConnectWalletSocialOptions.tsx +20 -15
  511. package/src/react/web/wallets/shared/OTPLoginUI.tsx +49 -54
  512. package/src/react/web/wallets/shared/PassKeyLogin.tsx +59 -20
  513. package/src/react/web/wallets/shared/SocialLogin.tsx +46 -14
  514. package/src/react/web/wallets/shared/locale/en.ts +1 -1
  515. package/src/react/web/wallets/shared/oauthSignIn.ts +2 -2
  516. package/src/reactive/store.ts +3 -0
  517. package/src/transaction/serialize-transaction.test.ts +13 -9
  518. package/src/transaction/serialize-transaction.ts +31 -258
  519. package/src/version.ts +1 -1
  520. package/src/wallets/coinbase/coinbase-wallet.ts +9 -1
  521. package/src/wallets/create-wallet.ts +9 -1
  522. package/src/wallets/ecosystem/types.ts +2 -10
  523. package/src/wallets/in-app/core/authentication/getLoginPath.ts +22 -3
  524. package/src/wallets/in-app/core/authentication/linkAccount.ts +96 -0
  525. package/src/wallets/in-app/core/authentication/siwe.ts +63 -0
  526. package/src/wallets/in-app/core/authentication/{type.ts → types.ts} +18 -1
  527. package/src/wallets/in-app/core/interfaces/connector.ts +14 -5
  528. package/src/wallets/in-app/core/wallet/ecosystem-core.ts +10 -1
  529. package/src/wallets/in-app/core/wallet/in-app-core.ts +68 -3
  530. package/src/wallets/in-app/core/wallet/index.ts +2 -2
  531. package/src/wallets/in-app/core/wallet/profiles.ts +74 -0
  532. package/src/wallets/in-app/core/wallet/types.ts +1 -1
  533. package/src/wallets/in-app/native/auth/index.ts +2 -2
  534. package/src/wallets/in-app/native/auth/native-auth.ts +70 -183
  535. package/src/wallets/in-app/native/helpers/api/fetchers.ts +1 -1
  536. package/src/wallets/in-app/native/helpers/auth/logout.ts +1 -1
  537. package/src/wallets/in-app/native/helpers/auth/middleware.ts +1 -1
  538. package/src/wallets/in-app/native/helpers/storage/local.ts +1 -1
  539. package/src/wallets/in-app/native/helpers/types.ts +1 -1
  540. package/src/wallets/in-app/native/helpers/wallet/creation.ts +1 -1
  541. package/src/wallets/in-app/native/helpers/wallet/retrieval.ts +1 -1
  542. package/src/wallets/in-app/native/native-connector.ts +96 -35
  543. package/src/wallets/in-app/web/lib/auth/abstract-login.ts +4 -14
  544. package/src/wallets/in-app/web/lib/auth/base-login.ts +75 -177
  545. package/src/wallets/in-app/web/lib/auth/iframe-auth.ts +37 -18
  546. package/src/wallets/in-app/web/lib/auth/index.ts +2 -2
  547. package/src/wallets/in-app/web/lib/auth/oauth.ts +4 -4
  548. package/src/wallets/in-app/web/lib/auth/otp.ts +114 -0
  549. package/src/wallets/in-app/web/lib/auth/passkeys.ts +1 -1
  550. package/src/wallets/in-app/web/lib/get-url-token.ts +1 -1
  551. package/src/wallets/in-app/web/lib/in-app-account.ts +1 -1
  552. package/src/wallets/in-app/web/lib/web-connector.ts +93 -37
  553. package/src/wallets/in-app/web/types.ts +1 -1
  554. package/src/wallets/interfaces/wallet.ts +1 -0
  555. package/src/wallets/manager/index.ts +51 -5
  556. package/src/wallets/native/create-wallet.ts +9 -1
  557. package/src/wallets/smart/smart-wallet-integration.test.ts +3 -3
  558. package/src/wallets/smart/smart-wallet.ts +9 -1
  559. package/src/wallets/types.ts +6 -1
  560. package/dist/cjs/react/core/utils/socialIcons.js.map +0 -1
  561. package/dist/cjs/wallets/in-app/core/authentication/type.js.map +0 -1
  562. package/dist/esm/react/core/utils/socialIcons.js.map +0 -1
  563. package/dist/esm/wallets/in-app/core/authentication/type.js.map +0 -1
  564. package/dist/types/react/core/utils/socialIcons.d.ts.map +0 -1
  565. package/dist/types/wallets/in-app/core/authentication/type.d.ts.map +0 -1
@@ -1,4 +1,4 @@
1
- import { useCallback, useRef, useState } from "react";
1
+ import { useCallback, useEffect, useRef, useState } from "react";
2
2
  import {
3
3
  Animated,
4
4
  Dimensions,
@@ -9,13 +9,13 @@ import {
9
9
  StyleSheet,
10
10
  View,
11
11
  } from "react-native";
12
- import { cacheChains } from "../../../../chains/utils.js";
13
12
  import { parseTheme } from "../../../core/design-system/CustomThemeProvider.js";
14
13
  import { useSiweAuth } from "../../../core/hooks/auth/useSiweAuth.js";
15
14
  import type { ConnectButtonProps } from "../../../core/hooks/connection/ConnectButtonProps.js";
16
15
  import { useActiveAccount } from "../../../core/hooks/wallets/useActiveAccount.js";
17
16
  import { useActiveWallet } from "../../../core/hooks/wallets/useActiveWallet.js";
18
17
  import { useActiveWalletConnectionStatus } from "../../../core/hooks/wallets/useActiveWalletConnectionStatus.js";
18
+ import { useConnectionManager } from "../../../core/providers/connection-manager.js";
19
19
  import { useAutoConnect } from "../../hooks/wallets/useAutoConnect.js";
20
20
  import { ThemedButton } from "../components/button.js";
21
21
  import { ThemedSpinner } from "../components/spinner.js";
@@ -45,6 +45,7 @@ export function ConnectButton(props: ConnectButtonProps) {
45
45
  const wallet = useActiveWallet();
46
46
  const account = useActiveAccount();
47
47
  const status = useActiveWalletConnectionStatus();
48
+ const connectionManager = useConnectionManager();
48
49
  const siweAuth = useSiweAuth(wallet, account, props.auth);
49
50
  useAutoConnect(props);
50
51
 
@@ -68,14 +69,18 @@ export function ConnectButton(props: ConnectButtonProps) {
68
69
  ]).start();
69
70
  }, []);
70
71
 
71
- // to update cached chains ASAP, we skip using useEffect - this does not trigger a re-render so it's fine
72
- if (props.chains) {
73
- cacheChains(props.chains);
74
- }
72
+ // Add props.chain and props.chains to defined chains store
73
+ useEffect(() => {
74
+ if (props.chain) {
75
+ connectionManager.defineChains([props.chain]);
76
+ }
77
+ }, [props.chain, connectionManager]);
75
78
 
76
- if (props.chain) {
77
- cacheChains([props.chain]);
78
- }
79
+ useEffect(() => {
80
+ if (props.chains) {
81
+ connectionManager.defineChains(props.chains);
82
+ }
83
+ }, [props.chains, connectionManager]);
79
84
 
80
85
  const closeModal = useCallback(() => {
81
86
  Animated.parallel([
@@ -1,7 +1,7 @@
1
1
  import { useCallback, useState } from "react";
2
2
  import { Platform, StyleSheet, View } from "react-native";
3
3
  import { SvgXml } from "react-native-svg";
4
- import type { MultiStepAuthProviderType } from "../../../../wallets/in-app/core/authentication/type.js";
4
+ import type { MultiStepAuthProviderType } from "../../../../wallets/in-app/core/authentication/types.js";
5
5
  import type { InAppWalletAuth } from "../../../../wallets/in-app/core/wallet/types.js";
6
6
  import type { Wallet } from "../../../../wallets/interfaces/wallet.js";
7
7
  import { parseTheme } from "../../../core/design-system/CustomThemeProvider.js";
@@ -6,7 +6,7 @@ import { nativeLocalStorage } from "../../../../utils/storage/nativeStorage.js";
6
6
  import type {
7
7
  MultiStepAuthProviderType,
8
8
  PreAuthArgsType,
9
- } from "../../../../wallets/in-app/core/authentication/type.js";
9
+ } from "../../../../wallets/in-app/core/authentication/types.js";
10
10
  import type {
11
11
  InAppWalletAuth,
12
12
  InAppWalletSocialAuth,
@@ -2,13 +2,13 @@
2
2
 
3
3
  import styled from "@emotion/styled";
4
4
  import { useEffect, useMemo, useState } from "react";
5
- import { cacheChains } from "../../../../chains/utils.js";
6
5
  import { iconSize } from "../../../core/design-system/index.js";
7
6
  import { useSiweAuth } from "../../../core/hooks/auth/useSiweAuth.js";
8
7
  import type { ConnectButtonProps } from "../../../core/hooks/connection/ConnectButtonProps.js";
9
8
  import { useActiveAccount } from "../../../core/hooks/wallets/useActiveAccount.js";
10
9
  import { useActiveWallet } from "../../../core/hooks/wallets/useActiveWallet.js";
11
10
  import { useActiveWalletConnectionStatus } from "../../../core/hooks/wallets/useActiveWalletConnectionStatus.js";
11
+ import { useConnectionManager } from "../../../core/providers/connection-manager.js";
12
12
  import { defaultTokens } from "../../../core/utils/defaultTokens.js";
13
13
  import {
14
14
  WalletUIStatesProvider,
@@ -267,20 +267,25 @@ export function ConnectButton(props: ConnectButtonProps) {
267
267
  [props.wallets, props.appMetadata, props.chains],
268
268
  );
269
269
  const localeQuery = useConnectLocale(props.locale || "en_US");
270
+ const connectionManager = useConnectionManager();
270
271
 
271
272
  usePreloadWalletProviders({
272
273
  wallets,
273
274
  client: props.client,
274
275
  });
275
276
 
276
- // to update cached chains ASAP, we skip using useEffect - this does not trigger a re-render so it's fine
277
- if (props.chains) {
278
- cacheChains(props.chains);
279
- }
277
+ // Add props.chain and props.chains to defined chains store
278
+ useEffect(() => {
279
+ if (props.chain) {
280
+ connectionManager.defineChains([props.chain]);
281
+ }
282
+ }, [props.chain, connectionManager]);
280
283
 
281
- if (props.chain) {
282
- cacheChains([props.chain]);
283
- }
284
+ useEffect(() => {
285
+ if (props.chains) {
286
+ connectionManager.defineChains(props.chains);
287
+ }
288
+ }, [props.chains, connectionManager]);
284
289
 
285
290
  const size = useMemo(() => {
286
291
  return !canFitWideModal() || wallets.length === 1
@@ -53,6 +53,7 @@ import type {
53
53
  } from "../../../core/utils/defaultTokens.js";
54
54
  import { hasSmartAccount } from "../../../core/utils/isSmartWallet.js";
55
55
  import { useConnectedWalletDetails } from "../../../core/utils/wallet.js";
56
+ import { WalletUIStatesProvider } from "../../providers/wallet-ui-states-provider.js";
56
57
  import { ChainIcon } from "../components/ChainIcon.js";
57
58
  import { CopyIcon } from "../components/CopyIcon.js";
58
59
  import { Img } from "../components/Img.js";
@@ -68,6 +69,7 @@ import { fadeInAnimation } from "../design-system/animations.js";
68
69
  import { StyledButton } from "../design-system/elements.js";
69
70
  import type { LocaleId } from "../types.js";
70
71
  import { MenuButton, MenuLink } from "./MenuButton.js";
72
+ import { ScreenSetupContext, useSetupScreen } from "./Modal/screen.js";
71
73
  import {
72
74
  NetworkSelectorContent,
73
75
  type NetworkSelectorProps,
@@ -84,6 +86,8 @@ import { getConnectLocale } from "./locale/getConnectLocale.js";
84
86
  import type { ConnectLocale } from "./locale/types.js";
85
87
  import { LazyBuyScreen } from "./screens/Buy/LazyBuyScreen.js";
86
88
  import { WalletManagerScreen } from "./screens/Details/WalletManagerScreen.js";
89
+ import { LinkProfileScreen } from "./screens/LinkProfileScreen.js";
90
+ import { LinkedProfilesScreen } from "./screens/LinkedProfilesScreen.js";
87
91
  import { ManageWalletScreen } from "./screens/ManageWalletScreen.js";
88
92
  import { PrivateKey } from "./screens/PrivateKey.js";
89
93
  import { ReceiveFunds } from "./screens/ReceiveFunds.js";
@@ -277,6 +281,12 @@ function DetailsModal(props: {
277
281
 
278
282
  const disableSwitchChain = !activeWallet?.switchChain;
279
283
 
284
+ const screenSetup = useSetupScreen({
285
+ size: "compact",
286
+ welcomeScreen: undefined,
287
+ wallets: activeWallet ? [activeWallet] : [],
288
+ });
289
+
280
290
  function closeModal() {
281
291
  setIsOpen(false);
282
292
  onModalUnmount(() => {
@@ -778,6 +788,25 @@ function DetailsModal(props: {
778
788
  client={client}
779
789
  />
780
790
  );
791
+ } else if (screen === "linked-profiles") {
792
+ content = (
793
+ <LinkedProfilesScreen
794
+ onBack={() => setScreen("manage-wallet")}
795
+ client={client}
796
+ locale={locale}
797
+ setScreen={setScreen}
798
+ />
799
+ );
800
+ } else if (screen === "link-profile") {
801
+ content = (
802
+ <LinkProfileScreen
803
+ onBack={() => {
804
+ setScreen("linked-profiles");
805
+ }}
806
+ client={client}
807
+ locale={locale}
808
+ />
809
+ );
781
810
  }
782
811
 
783
812
  // send funds
@@ -832,17 +861,21 @@ function DetailsModal(props: {
832
861
 
833
862
  return (
834
863
  <CustomThemeProvider theme={props.theme}>
835
- <Modal
836
- size={"compact"}
837
- open={isOpen}
838
- setOpen={(_open) => {
839
- if (!_open) {
840
- closeModal();
841
- }
842
- }}
843
- >
844
- {content}
845
- </Modal>
864
+ <WalletUIStatesProvider theme={props.theme} isOpen={false}>
865
+ <ScreenSetupContext.Provider value={screenSetup}>
866
+ <Modal
867
+ size={"compact"}
868
+ open={isOpen}
869
+ setOpen={(_open) => {
870
+ if (!_open) {
871
+ closeModal();
872
+ }
873
+ }}
874
+ >
875
+ {content}
876
+ </Modal>
877
+ </ScreenSetupContext.Provider>
878
+ </WalletUIStatesProvider>
846
879
  </CustomThemeProvider>
847
880
  );
848
881
  }
@@ -1191,6 +1224,7 @@ export type UseWalletDetailsModalOptions = {
1191
1224
  * ```
1192
1225
  */
1193
1226
  chains?: Chain[];
1227
+
1194
1228
  /**
1195
1229
  * Show a "Request Testnet funds" link in Wallet Details Modal when user is connected to a testnet.
1196
1230
  *
@@ -16,7 +16,6 @@ import type { Wallet } from "../../../../../wallets/interfaces/wallet.js";
16
16
  import type { EcosystemWalletId } from "../../../../../wallets/wallet-types.js";
17
17
  import { iconSize } from "../../../../core/design-system/index.js";
18
18
  import { useWalletInfo } from "../../../../core/utils/wallet.js";
19
- import EcosystemWalletConnectUI from "../../../wallets/ecosystem/EcosystemWalletConnectUI.js";
20
19
  import { getInjectedWalletLocale } from "../../../wallets/injected/locale/getInjectedWalletLocale.js";
21
20
  import { GetStartedScreen } from "../../../wallets/shared/GetStartedScreen.js";
22
21
  import { LoadingScreen } from "../../../wallets/shared/LoadingScreen.js";
@@ -38,6 +37,9 @@ const CoinbaseSDKWalletConnectUI = /* @__PURE__ */ lazy(
38
37
  const InAppWalletConnectUI = /* @__PURE__ */ lazy(
39
38
  () => import("../../../wallets/in-app/InAppWalletConnectUI.js"),
40
39
  );
40
+ const EcosystemWalletConnectUI = /* @__PURE__ */ lazy(
41
+ () => import("../../../wallets/ecosystem/EcosystemWalletConnectUI.js"),
42
+ );
41
43
 
42
44
  /**
43
45
  * @internal
@@ -1,7 +1,6 @@
1
1
  "use client";
2
2
  import { useEffect, useMemo } from "react";
3
3
  import type { Chain } from "../../../../../chains/types.js";
4
- import { cacheChains } from "../../../../../chains/utils.js";
5
4
  import type { ThirdwebClient } from "../../../../../client/client.js";
6
5
  import type { Wallet } from "../../../../../wallets/interfaces/wallet.js";
7
6
  import type { SmartWalletOptions } from "../../../../../wallets/smart/types.js";
@@ -18,6 +17,7 @@ import type { ConnectEmbedProps } from "../../../../core/hooks/connection/Connec
18
17
  import { useActiveAccount } from "../../../../core/hooks/wallets/useActiveAccount.js";
19
18
  import { useActiveWallet } from "../../../../core/hooks/wallets/useActiveWallet.js";
20
19
  import { useIsAutoConnecting } from "../../../../core/hooks/wallets/useIsAutoConnecting.js";
20
+ import { useConnectionManager } from "../../../../core/providers/connection-manager.js";
21
21
  import { WalletUIStatesProvider } from "../../../providers/wallet-ui-states-provider.js";
22
22
  import { canFitWideModal } from "../../../utils/canFitWideModal.js";
23
23
  import { usePreloadWalletProviders } from "../../../utils/usePreloadWalletProviders.js";
@@ -184,15 +184,20 @@ export function ConnectEmbed(props: ConnectEmbedProps) {
184
184
  const siweAuth = useSiweAuth(activeWallet, activeAccount, props.auth);
185
185
  const show =
186
186
  !activeAccount || (siweAuth.requiresAuth && !siweAuth.isLoggedIn);
187
+ const connectionManager = useConnectionManager();
187
188
 
188
- // to update cached chains ASAP, we skip using useEffect - this does not trigger a re-render so it's fine
189
- if (props.chains) {
190
- cacheChains(props.chains);
191
- }
189
+ // Add props.chain and props.chains to defined chains store
190
+ useEffect(() => {
191
+ if (props.chain) {
192
+ connectionManager.defineChains([props.chain]);
193
+ }
194
+ }, [props.chain, connectionManager]);
192
195
 
193
- if (props.chain) {
194
- cacheChains([props.chain]);
195
- }
196
+ useEffect(() => {
197
+ if (props.chains) {
198
+ connectionManager.defineChains(props.chains);
199
+ }
200
+ }, [props.chains, connectionManager]);
196
201
 
197
202
  const wallets = useMemo(
198
203
  () =>
@@ -70,7 +70,7 @@ export function useScreenContext() {
70
70
  const ctx = useContext(ScreenSetupContext);
71
71
  if (!ctx) {
72
72
  throw new Error(
73
- "useScreenContext must be used within a <ScreenProvider />",
73
+ "useScreenContext must be used within a <ScreenSetupContext.Provider />",
74
74
  );
75
75
  }
76
76
  return ctx;
@@ -16,7 +16,7 @@ import {
16
16
  radius,
17
17
  spacing,
18
18
  } from "../../../core/design-system/index.js";
19
- import { genericWalletIcon } from "../../../core/utils/socialIcons.js";
19
+ import { genericWalletIcon } from "../../../core/utils/walletIcon.js";
20
20
  import { useSetSelectionData } from "../../providers/wallet-ui-states-provider.js";
21
21
  import { sortWallets } from "../../utils/sortWallets.js";
22
22
  import { LoadingScreen } from "../../wallets/shared/LoadingScreen.js";
@@ -0,0 +1,25 @@
1
+ import type { IconFC } from "./types.js";
2
+
3
+ /**
4
+ * @internal
5
+ */
6
+ export const AddUserIcon: IconFC = (props) => {
7
+ return (
8
+ <svg
9
+ width={props.size}
10
+ height={props.size}
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ role="presentation"
14
+ xmlns="http://www.w3.org/2000/svg"
15
+ >
16
+ <path
17
+ d="M12 15.5H7.5C6.10444 15.5 5.40665 15.5 4.83886 15.6722C3.56045 16.06 2.56004 17.0605 2.17224 18.3389C2 18.9067 2 19.6044 2 21M19 21V15M16 18H22M14.5 7.5C14.5 9.98528 12.4853 12 10 12C7.51472 12 5.5 9.98528 5.5 7.5C5.5 5.01472 7.51472 3 10 3C12.4853 3 14.5 5.01472 14.5 7.5Z"
18
+ stroke="currentColor"
19
+ strokeWidth="2"
20
+ strokeLinecap="round"
21
+ strokeLinejoin="round"
22
+ />
23
+ </svg>
24
+ );
25
+ };
@@ -0,0 +1,25 @@
1
+ import type { IconFC } from "./types.js";
2
+
3
+ /**
4
+ * @internal
5
+ */
6
+ export const MultiUserIcon: IconFC = (props) => {
7
+ return (
8
+ <svg
9
+ width={props.size}
10
+ height={props.size}
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ role="presentation"
14
+ xmlns="http://www.w3.org/2000/svg"
15
+ >
16
+ <path
17
+ d="M22 21V19C22 17.1362 20.7252 15.5701 19 15.126M15.5 3.29076C16.9659 3.88415 18 5.32131 18 7C18 8.67869 16.9659 10.1159 15.5 10.7092M17 21C17 19.1362 17 18.2044 16.6955 17.4693C16.2895 16.4892 15.5108 15.7105 14.5307 15.3045C13.7956 15 12.8638 15 11 15H8C6.13623 15 5.20435 15 4.46927 15.3045C3.48915 15.7105 2.71046 16.4892 2.30448 17.4693C2 18.2044 2 19.1362 2 21M13.5 7C13.5 9.20914 11.7091 11 9.5 11C7.29086 11 5.5 9.20914 5.5 7C5.5 4.79086 7.29086 3 9.5 3C11.7091 3 13.5 4.79086 13.5 7Z"
18
+ stroke="currentColor"
19
+ strokeWidth="2"
20
+ strokeLinecap="round"
21
+ strokeLinejoin="round"
22
+ />
23
+ </svg>
24
+ );
25
+ };
@@ -37,6 +37,10 @@ const connectLocaleDe: ConnectLocale = {
37
37
  smartWallet: "Smart Wallet",
38
38
  or: "Oder",
39
39
  goBackButton: "Zurück",
40
+ passkeys: {
41
+ title: "Passkeys",
42
+ linkPasskey: "Passkey verknüpfen",
43
+ },
40
44
  welcomeScreen: {
41
45
  defaultTitle: "Dein Tor zur dezentralen Welt",
42
46
  defaultSubtitle: "Verbinde ein Wallet, um loszulegen",
@@ -104,6 +108,8 @@ const connectLocaleDe: ConnectLocale = {
104
108
  manageWallet: {
105
109
  title: "Wallet verwalten",
106
110
  connectAnApp: "App verbinden",
111
+ linkProfile: "Profil verknüpfen",
112
+ linkedProfiles: "Verknüpfte Profile",
107
113
  exportPrivateKey: "PrivateKey exportieren",
108
114
  },
109
115
  viewFunds: {
@@ -37,6 +37,10 @@ const connectLocaleEn: ConnectLocale = {
37
37
  smartWallet: "Smart Wallet",
38
38
  or: "OR",
39
39
  goBackButton: "Back",
40
+ passkeys: {
41
+ title: "Passkeys",
42
+ linkPasskey: "Link a Passkey",
43
+ },
40
44
  welcomeScreen: {
41
45
  defaultTitle: "Your gateway to the decentralized world",
42
46
  defaultSubtitle: "Connect a wallet to get started",
@@ -102,6 +106,8 @@ const connectLocaleEn: ConnectLocale = {
102
106
  },
103
107
  manageWallet: {
104
108
  title: "Manage Wallet",
109
+ linkedProfiles: "Linked Profiles",
110
+ linkProfile: "Link a Profile",
105
111
  connectAnApp: "Connect an App",
106
112
  exportPrivateKey: "Export Private Key",
107
113
  },
@@ -37,6 +37,10 @@ const connectWalletLocalEs: ConnectLocale = {
37
37
  smartWallet: "Cartera inteligente",
38
38
  or: "O",
39
39
  goBackButton: "Atras",
40
+ passkeys: {
41
+ title: "Clave de acceso",
42
+ linkPasskey: "Vincular una clave de acceso",
43
+ },
40
44
  welcomeScreen: {
41
45
  defaultTitle: "Tu puerta de entrada al mundo descentralizado",
42
46
  defaultSubtitle: "Conecta una cartera para empezar",
@@ -104,6 +108,8 @@ const connectWalletLocalEs: ConnectLocale = {
104
108
  },
105
109
  manageWallet: {
106
110
  title: "Gestionar Cartera",
111
+ linkedProfiles: "Perfiles vinculados",
112
+ linkProfile: "Vincular un perfil",
107
113
  connectAnApp: "Conectar una Aplicación",
108
114
  exportPrivateKey: "Exportar Clave Privada",
109
115
  },
@@ -37,6 +37,10 @@ const connectLocaleFr: ConnectLocale = {
37
37
  smartWallet: "Portefeuille intelligent",
38
38
  or: "OU",
39
39
  goBackButton: "Retour",
40
+ passkeys: {
41
+ title: "Clés d'accès",
42
+ linkPasskey: "Lier une clé d'accès",
43
+ },
40
44
  welcomeScreen: {
41
45
  defaultTitle: "Votre porte d'entrée vers le monde décentralisé",
42
46
  defaultSubtitle: "Connectez un portefeuille pour commencer",
@@ -104,6 +108,8 @@ const connectLocaleFr: ConnectLocale = {
104
108
  },
105
109
  manageWallet: {
106
110
  title: "Gérer le portefeuille",
111
+ linkedProfiles: "Profils liés",
112
+ linkProfile: "Lier un profil",
107
113
  connectAnApp: "Connecter une application",
108
114
  exportPrivateKey: "Exporter la clé privée",
109
115
  },
@@ -37,6 +37,10 @@ const connectWalletLocalJa: ConnectLocale = {
37
37
  smartWallet: "スマートウォレット",
38
38
  or: "または",
39
39
  goBackButton: "戻る", // TODO - check translation
40
+ passkeys: {
41
+ linkPasskey: "パスキーをリンクする",
42
+ title: "パスキー",
43
+ },
40
44
  welcomeScreen: {
41
45
  defaultTitle: "分散型世界へのゲートウェイ",
42
46
  defaultSubtitle: "始めるためにウォレットを接続してください",
@@ -104,6 +108,8 @@ const connectWalletLocalJa: ConnectLocale = {
104
108
  },
105
109
  manageWallet: {
106
110
  title: "ウォレットを管理",
111
+ linkedProfiles: "リンクされたプロファイル",
112
+ linkProfile: "プロフィールをリンクする",
107
113
  connectAnApp: "アプリを接続",
108
114
  exportPrivateKey: "秘密鍵をエクスポート",
109
115
  },
@@ -36,6 +36,10 @@ const connectLocaleKr: ConnectLocale = {
36
36
  smartWallet: "스마트 지갑",
37
37
  or: "또는",
38
38
  goBackButton: "뒤로",
39
+ passkeys: {
40
+ title: "패스키",
41
+ linkPasskey: "패스키 연결",
42
+ },
39
43
  welcomeScreen: {
40
44
  defaultTitle: "분산된 세계로의 게이트웨이",
41
45
  defaultSubtitle: "시작하려면 지갑을 연결하십시오",
@@ -101,6 +105,8 @@ const connectLocaleKr: ConnectLocale = {
101
105
  },
102
106
  manageWallet: {
103
107
  title: "지갑 관리",
108
+ linkedProfiles: "연결된 프로필",
109
+ linkProfile: "링크 프로필",
104
110
  connectAnApp: "앱 연결",
105
111
  exportPrivateKey: "개인 키 내보내기",
106
112
  },
@@ -37,7 +37,10 @@ const connectWalletLocalTl: ConnectLocale = {
37
37
  smartWallet: "Smart Wallet",
38
38
  or: "O",
39
39
  goBackButton: "Bumalik",
40
-
40
+ passkeys: {
41
+ title: "Mga Passkey",
42
+ linkPasskey: "I-link ang Passkey",
43
+ },
41
44
  welcomeScreen: {
42
45
  defaultTitle: "Ang iyong daan patungo sa decentralized na mundo",
43
46
  defaultSubtitle: "Kumonekta ng wallet para magsimula",
@@ -104,6 +107,8 @@ const connectWalletLocalTl: ConnectLocale = {
104
107
  },
105
108
  manageWallet: {
106
109
  title: "Pamahalaan ang Wallet",
110
+ linkedProfiles: "Linked Profiles",
111
+ linkProfile: "Link a Profile",
107
112
  connectAnApp: "Ikonekta ang isang App",
108
113
  exportPrivateKey: "I-export ang Pribadong Susi",
109
114
  },
@@ -25,6 +25,10 @@ export type ConnectLocale = {
25
25
  buy: string;
26
26
  guestWalletWarning: string;
27
27
  installed: string;
28
+ passkeys: {
29
+ title: string;
30
+ linkPasskey: string;
31
+ };
28
32
  networkSelector: {
29
33
  addCustomNetwork: string;
30
34
  allNetworks: string;
@@ -94,7 +98,9 @@ export type ConnectLocale = {
94
98
  welcomeScreen: { defaultSubtitle: string; defaultTitle: string };
95
99
  manageWallet: {
96
100
  title: string;
101
+ linkedProfiles: string;
97
102
  connectAnApp: string;
103
+ linkProfile: string;
98
104
  exportPrivateKey: string;
99
105
  };
100
106
  viewFunds: {
@@ -37,6 +37,10 @@ const connectLocaleVi: ConnectLocale = {
37
37
  smartWallet: "Ví Thông Minh",
38
38
  or: "hoặc",
39
39
  goBackButton: "Quay lại",
40
+ passkeys: {
41
+ title: "Khóa truy cập",
42
+ linkPasskey: "Liên kết khóa truy cập",
43
+ },
40
44
  welcomeScreen: {
41
45
  defaultTitle: "Cánh cổng dẫn tới thế giới phi tập trung",
42
46
  defaultSubtitle: "Kết nối ví để bắt đầu",
@@ -102,6 +106,8 @@ const connectLocaleVi: ConnectLocale = {
102
106
  },
103
107
  manageWallet: {
104
108
  title: "Quản lý ví",
109
+ linkedProfiles: "Tài khoản",
110
+ linkProfile: "Thêm tính năng xác thực",
105
111
  connectAnApp: "Kết nối ứng dụng",
106
112
  exportPrivateKey: "Sao lưu private key",
107
113
  },
@@ -227,7 +227,11 @@ function BuyScreenContent(props: BuyScreenContentProps) {
227
227
  }
228
228
  }}
229
229
  recommendedWallets={props.connectOptions?.recommendedWallets}
230
- showAllWallets={!!props.connectOptions?.showAllWallets}
230
+ showAllWallets={
231
+ props.connectOptions?.showAllWallets === undefined
232
+ ? true
233
+ : props.connectOptions?.showAllWallets
234
+ }
231
235
  walletConnect={props.connectOptions?.walletConnect}
232
236
  wallets={props.connectOptions?.wallets}
233
237
  />
@@ -0,0 +1,88 @@
1
+ "use client";
2
+ import { CrossCircledIcon } from "@radix-ui/react-icons";
3
+ import { useQueryClient } from "@tanstack/react-query";
4
+ import { Suspense, lazy } from "react";
5
+ import type { ThirdwebClient } from "../../../../../client/client.js";
6
+ import type { Wallet } from "../../../../../wallets/interfaces/wallet.js";
7
+ import { iconSize } from "../../../../core/design-system/index.js";
8
+ import { useActiveWallet } from "../../../../core/hooks/wallets/useActiveWallet.js";
9
+ import { useActiveWalletChain } from "../../../../core/hooks/wallets/useActiveWalletChain.js";
10
+ import { LoadingScreen } from "../../../wallets/shared/LoadingScreen.js";
11
+ import { Container, Line, ModalHeader } from "../../components/basic.js";
12
+ import { Text } from "../../components/text.js";
13
+ import type { ConnectLocale } from "../locale/types.js";
14
+
15
+ const InAppWalletConnectUI = /* @__PURE__ */ lazy(
16
+ () => import("../../../wallets/in-app/InAppWalletConnectUI.js"),
17
+ );
18
+
19
+ /**
20
+ * @internal
21
+ */
22
+ export function LinkProfileScreen(props: {
23
+ onBack: () => void;
24
+ locale: ConnectLocale;
25
+ client: ThirdwebClient;
26
+ }) {
27
+ const activeWallet = useActiveWallet();
28
+ const chain = useActiveWalletChain();
29
+ const queryClient = useQueryClient();
30
+
31
+ if (!activeWallet) {
32
+ return <LoadingScreen />;
33
+ }
34
+
35
+ if (activeWallet.id === "inApp") {
36
+ return (
37
+ <Suspense fallback={<LoadingScreen />}>
38
+ <InAppWalletConnectUI
39
+ wallet={activeWallet as Wallet<"inApp">}
40
+ done={() => {
41
+ queryClient.invalidateQueries({ queryKey: ["profiles"] });
42
+ props.onBack();
43
+ }}
44
+ connectLocale={props.locale}
45
+ client={props.client}
46
+ size="compact"
47
+ chain={chain}
48
+ meta={{
49
+ title: props.locale.manageWallet.linkProfile,
50
+ showThirdwebBranding: false,
51
+ }}
52
+ isLinking={true}
53
+ goBack={props.onBack}
54
+ />
55
+ </Suspense>
56
+ );
57
+ }
58
+
59
+ return (
60
+ <Container
61
+ style={{
62
+ minHeight: "300px",
63
+ }}
64
+ >
65
+ <Container p="lg">
66
+ <ModalHeader
67
+ title={props.locale.manageWallet.linkProfile}
68
+ onBack={props.onBack}
69
+ />
70
+ </Container>
71
+ <Line />
72
+ <Container
73
+ flex="column"
74
+ gap="md"
75
+ center="both"
76
+ px="xl"
77
+ color="secondaryText"
78
+ style={{
79
+ flex: "1",
80
+ minHeight: "250px",
81
+ }}
82
+ >
83
+ <CrossCircledIcon width={iconSize.xl} height={iconSize.xl} />
84
+ <Text center>This wallet does not support account linking</Text>
85
+ </Container>
86
+ </Container>
87
+ );
88
+ }