thirdweb 5.56.0-nightly-a5e605c65e360a9d3d2e553d6783e58582b50a70-20240917000331 → 5.57.0-nightly-cf1683c3feea6eb36ac6b902a1dd64c8ed8803c9-20240918000340

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 (298) hide show
  1. package/dist/cjs/contract/verification/index.js +29 -33
  2. package/dist/cjs/contract/verification/index.js.map +1 -1
  3. package/dist/cjs/react/core/hooks/pay/useBuyWithCryptoStatus.js +7 -1
  4. package/dist/cjs/react/core/hooks/pay/useBuyWithCryptoStatus.js.map +1 -1
  5. package/dist/cjs/react/core/hooks/pay/useBuyWithFiatStatus.js +15 -1
  6. package/dist/cjs/react/core/hooks/pay/useBuyWithFiatStatus.js.map +1 -1
  7. package/dist/cjs/react/core/providers/invalidateWalletBalance.js +1 -1
  8. package/dist/cjs/react/core/providers/invalidateWalletBalance.js.map +1 -1
  9. package/dist/cjs/react/core/utils/walletIcon.js +4 -1
  10. package/dist/cjs/react/core/utils/walletIcon.js.map +1 -1
  11. package/dist/cjs/react/native/ui/components/WalletImage.js +2 -0
  12. package/dist/cjs/react/native/ui/components/WalletImage.js.map +1 -1
  13. package/dist/cjs/react/native/ui/connect/InAppWalletUI.js +21 -1
  14. package/dist/cjs/react/native/ui/connect/InAppWalletUI.js.map +1 -1
  15. package/dist/cjs/react/native/ui/connect/TokenListScreen.js +2 -1
  16. package/dist/cjs/react/native/ui/connect/TokenListScreen.js.map +1 -1
  17. package/dist/cjs/react/native/ui/icons/svgs.js +2 -1
  18. package/dist/cjs/react/native/ui/icons/svgs.js.map +1 -1
  19. package/dist/cjs/react/web/ui/ConnectWallet/Details.js +15 -2
  20. package/dist/cjs/react/web/ui/ConnectWallet/Details.js.map +1 -1
  21. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +7 -2
  22. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  23. package/dist/cjs/react/web/ui/ConnectWallet/screens/SignatureScreen.js +12 -12
  24. package/dist/cjs/react/web/ui/ConnectWallet/screens/SignatureScreen.js.map +1 -1
  25. package/dist/cjs/react/web/ui/ConnectWallet/screens/TokenSelector.js +5 -5
  26. package/dist/cjs/react/web/ui/ConnectWallet/screens/TokenSelector.js.map +1 -1
  27. package/dist/cjs/react/web/ui/MediaRenderer/MediaRenderer.js +1 -1
  28. package/dist/cjs/react/web/ui/MediaRenderer/MediaRenderer.js.map +1 -1
  29. package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletHeader.js +3 -3
  30. package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletHeader.js.map +1 -1
  31. package/dist/cjs/react/web/wallets/in-app/InAppWalletConnectUI.js +4 -0
  32. package/dist/cjs/react/web/wallets/in-app/InAppWalletConnectUI.js.map +1 -1
  33. package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js +38 -19
  34. package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
  35. package/dist/cjs/react/web/wallets/shared/GuestLogin.js +81 -0
  36. package/dist/cjs/react/web/wallets/shared/GuestLogin.js.map +1 -0
  37. package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js +1 -1
  38. package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
  39. package/dist/cjs/react/web/wallets/shared/SocialLogin.js +1 -1
  40. package/dist/cjs/react/web/wallets/shared/SocialLogin.js.map +1 -1
  41. package/dist/cjs/react/web/wallets/shared/locale/de.js +2 -1
  42. package/dist/cjs/react/web/wallets/shared/locale/de.js.map +1 -1
  43. package/dist/cjs/react/web/wallets/shared/locale/en.js +1 -0
  44. package/dist/cjs/react/web/wallets/shared/locale/en.js.map +1 -1
  45. package/dist/cjs/react/web/wallets/shared/locale/es.js +2 -1
  46. package/dist/cjs/react/web/wallets/shared/locale/es.js.map +1 -1
  47. package/dist/cjs/react/web/wallets/shared/locale/fr.js +2 -1
  48. package/dist/cjs/react/web/wallets/shared/locale/fr.js.map +1 -1
  49. package/dist/cjs/react/web/wallets/shared/locale/ja.js +2 -1
  50. package/dist/cjs/react/web/wallets/shared/locale/ja.js.map +1 -1
  51. package/dist/cjs/react/web/wallets/shared/locale/kr.js +2 -1
  52. package/dist/cjs/react/web/wallets/shared/locale/kr.js.map +1 -1
  53. package/dist/cjs/react/web/wallets/shared/locale/tl.js +2 -1
  54. package/dist/cjs/react/web/wallets/shared/locale/tl.js.map +1 -1
  55. package/dist/cjs/react/web/wallets/shared/locale/vi.js +1 -0
  56. package/dist/cjs/react/web/wallets/shared/locale/vi.js.map +1 -1
  57. package/dist/cjs/react/web/wallets/shared/oauthSignIn.js +1 -0
  58. package/dist/cjs/react/web/wallets/shared/oauthSignIn.js.map +1 -1
  59. package/dist/cjs/transaction/resolve-method.js +8 -1
  60. package/dist/cjs/transaction/resolve-method.js.map +1 -1
  61. package/dist/cjs/utils/encoding/hex.js +1 -3
  62. package/dist/cjs/utils/encoding/hex.js.map +1 -1
  63. package/dist/cjs/utils/promise/p-limit.js.map +1 -1
  64. package/dist/cjs/utils/signatures/sign-message.js +2 -4
  65. package/dist/cjs/utils/signatures/sign-message.js.map +1 -1
  66. package/dist/cjs/version.js +1 -1
  67. package/dist/cjs/wallets/in-app/core/authentication/guest.js +33 -0
  68. package/dist/cjs/wallets/in-app/core/authentication/guest.js.map +1 -0
  69. package/dist/cjs/wallets/in-app/core/authentication/types.js +1 -0
  70. package/dist/cjs/wallets/in-app/core/authentication/types.js.map +1 -1
  71. package/dist/cjs/wallets/in-app/native/auth/native-auth.js +25 -0
  72. package/dist/cjs/wallets/in-app/native/auth/native-auth.js.map +1 -1
  73. package/dist/cjs/wallets/in-app/native/helpers/api/fetchers.js +1 -3
  74. package/dist/cjs/wallets/in-app/native/helpers/api/fetchers.js.map +1 -1
  75. package/dist/cjs/wallets/in-app/native/helpers/wallet/sss.js.map +1 -1
  76. package/dist/cjs/wallets/in-app/native/native-connector.js +32 -0
  77. package/dist/cjs/wallets/in-app/native/native-connector.js.map +1 -1
  78. package/dist/cjs/wallets/in-app/web/in-app.js +13 -1
  79. package/dist/cjs/wallets/in-app/web/in-app.js.map +1 -1
  80. package/dist/cjs/wallets/in-app/web/lib/web-connector.js +8 -0
  81. package/dist/cjs/wallets/in-app/web/lib/web-connector.js.map +1 -1
  82. package/dist/cjs/wallets/manager/index.js +5 -0
  83. package/dist/cjs/wallets/manager/index.js.map +1 -1
  84. package/dist/cjs/wallets/types.js +1 -0
  85. package/dist/cjs/wallets/types.js.map +1 -1
  86. package/dist/cjs/wallets/wallet-connect/receiver/request-handlers/switch-chain.js +2 -4
  87. package/dist/cjs/wallets/wallet-connect/receiver/request-handlers/switch-chain.js.map +1 -1
  88. package/dist/esm/contract/verification/index.js +29 -33
  89. package/dist/esm/contract/verification/index.js.map +1 -1
  90. package/dist/esm/react/core/hooks/pay/useBuyWithCryptoStatus.js +7 -1
  91. package/dist/esm/react/core/hooks/pay/useBuyWithCryptoStatus.js.map +1 -1
  92. package/dist/esm/react/core/hooks/pay/useBuyWithFiatStatus.js +15 -1
  93. package/dist/esm/react/core/hooks/pay/useBuyWithFiatStatus.js.map +1 -1
  94. package/dist/esm/react/core/providers/invalidateWalletBalance.js +1 -1
  95. package/dist/esm/react/core/providers/invalidateWalletBalance.js.map +1 -1
  96. package/dist/esm/react/core/utils/walletIcon.js +3 -0
  97. package/dist/esm/react/core/utils/walletIcon.js.map +1 -1
  98. package/dist/esm/react/native/ui/components/WalletImage.js +3 -1
  99. package/dist/esm/react/native/ui/components/WalletImage.js.map +1 -1
  100. package/dist/esm/react/native/ui/connect/InAppWalletUI.js +21 -1
  101. package/dist/esm/react/native/ui/connect/InAppWalletUI.js.map +1 -1
  102. package/dist/esm/react/native/ui/connect/TokenListScreen.js +2 -1
  103. package/dist/esm/react/native/ui/connect/TokenListScreen.js.map +1 -1
  104. package/dist/esm/react/native/ui/icons/svgs.js +1 -0
  105. package/dist/esm/react/native/ui/icons/svgs.js.map +1 -1
  106. package/dist/esm/react/web/ui/ConnectWallet/Details.js +15 -2
  107. package/dist/esm/react/web/ui/ConnectWallet/Details.js.map +1 -1
  108. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +7 -2
  109. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  110. package/dist/esm/react/web/ui/ConnectWallet/screens/SignatureScreen.js +12 -12
  111. package/dist/esm/react/web/ui/ConnectWallet/screens/SignatureScreen.js.map +1 -1
  112. package/dist/esm/react/web/ui/ConnectWallet/screens/TokenSelector.js +6 -6
  113. package/dist/esm/react/web/ui/ConnectWallet/screens/TokenSelector.js.map +1 -1
  114. package/dist/esm/react/web/ui/MediaRenderer/MediaRenderer.js +1 -1
  115. package/dist/esm/react/web/ui/MediaRenderer/MediaRenderer.js.map +1 -1
  116. package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletHeader.js +3 -3
  117. package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletHeader.js.map +1 -1
  118. package/dist/esm/react/web/wallets/in-app/InAppWalletConnectUI.js +4 -0
  119. package/dist/esm/react/web/wallets/in-app/InAppWalletConnectUI.js.map +1 -1
  120. package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js +38 -19
  121. package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
  122. package/dist/esm/react/web/wallets/shared/GuestLogin.js +78 -0
  123. package/dist/esm/react/web/wallets/shared/GuestLogin.js.map +1 -0
  124. package/dist/esm/react/web/wallets/shared/OTPLoginUI.js +1 -1
  125. package/dist/esm/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
  126. package/dist/esm/react/web/wallets/shared/SocialLogin.js +1 -1
  127. package/dist/esm/react/web/wallets/shared/SocialLogin.js.map +1 -1
  128. package/dist/esm/react/web/wallets/shared/locale/de.js +2 -1
  129. package/dist/esm/react/web/wallets/shared/locale/de.js.map +1 -1
  130. package/dist/esm/react/web/wallets/shared/locale/en.js +1 -0
  131. package/dist/esm/react/web/wallets/shared/locale/en.js.map +1 -1
  132. package/dist/esm/react/web/wallets/shared/locale/es.js +2 -1
  133. package/dist/esm/react/web/wallets/shared/locale/es.js.map +1 -1
  134. package/dist/esm/react/web/wallets/shared/locale/fr.js +2 -1
  135. package/dist/esm/react/web/wallets/shared/locale/fr.js.map +1 -1
  136. package/dist/esm/react/web/wallets/shared/locale/ja.js +2 -1
  137. package/dist/esm/react/web/wallets/shared/locale/ja.js.map +1 -1
  138. package/dist/esm/react/web/wallets/shared/locale/kr.js +2 -1
  139. package/dist/esm/react/web/wallets/shared/locale/kr.js.map +1 -1
  140. package/dist/esm/react/web/wallets/shared/locale/tl.js +2 -1
  141. package/dist/esm/react/web/wallets/shared/locale/tl.js.map +1 -1
  142. package/dist/esm/react/web/wallets/shared/locale/vi.js +1 -0
  143. package/dist/esm/react/web/wallets/shared/locale/vi.js.map +1 -1
  144. package/dist/esm/react/web/wallets/shared/oauthSignIn.js +1 -0
  145. package/dist/esm/react/web/wallets/shared/oauthSignIn.js.map +1 -1
  146. package/dist/esm/transaction/resolve-method.js +8 -1
  147. package/dist/esm/transaction/resolve-method.js.map +1 -1
  148. package/dist/esm/utils/encoding/hex.js +1 -3
  149. package/dist/esm/utils/encoding/hex.js.map +1 -1
  150. package/dist/esm/utils/promise/p-limit.js.map +1 -1
  151. package/dist/esm/utils/signatures/sign-message.js +2 -4
  152. package/dist/esm/utils/signatures/sign-message.js.map +1 -1
  153. package/dist/esm/version.js +1 -1
  154. package/dist/esm/wallets/in-app/core/authentication/guest.js +30 -0
  155. package/dist/esm/wallets/in-app/core/authentication/guest.js.map +1 -0
  156. package/dist/esm/wallets/in-app/core/authentication/types.js +1 -0
  157. package/dist/esm/wallets/in-app/core/authentication/types.js.map +1 -1
  158. package/dist/esm/wallets/in-app/native/auth/native-auth.js +24 -0
  159. package/dist/esm/wallets/in-app/native/auth/native-auth.js.map +1 -1
  160. package/dist/esm/wallets/in-app/native/helpers/api/fetchers.js +1 -3
  161. package/dist/esm/wallets/in-app/native/helpers/api/fetchers.js.map +1 -1
  162. package/dist/esm/wallets/in-app/native/helpers/wallet/sss.js.map +1 -1
  163. package/dist/esm/wallets/in-app/native/native-connector.js +33 -1
  164. package/dist/esm/wallets/in-app/native/native-connector.js.map +1 -1
  165. package/dist/esm/wallets/in-app/web/in-app.js +13 -1
  166. package/dist/esm/wallets/in-app/web/in-app.js.map +1 -1
  167. package/dist/esm/wallets/in-app/web/lib/web-connector.js +8 -0
  168. package/dist/esm/wallets/in-app/web/lib/web-connector.js.map +1 -1
  169. package/dist/esm/wallets/manager/index.js +5 -0
  170. package/dist/esm/wallets/manager/index.js.map +1 -1
  171. package/dist/esm/wallets/types.js +1 -0
  172. package/dist/esm/wallets/types.js.map +1 -1
  173. package/dist/esm/wallets/wallet-connect/receiver/request-handlers/switch-chain.js +2 -4
  174. package/dist/esm/wallets/wallet-connect/receiver/request-handlers/switch-chain.js.map +1 -1
  175. package/dist/types/contract/verification/index.d.ts.map +1 -1
  176. package/dist/types/exports/utils.d.ts +1 -0
  177. package/dist/types/exports/utils.d.ts.map +1 -1
  178. package/dist/types/react/core/hooks/connection/ConnectButtonProps.d.ts +7 -14
  179. package/dist/types/react/core/hooks/connection/ConnectButtonProps.d.ts.map +1 -1
  180. package/dist/types/react/core/hooks/pay/useBuyWithCryptoStatus.d.ts.map +1 -1
  181. package/dist/types/react/core/hooks/pay/useBuyWithFiatStatus.d.ts.map +1 -1
  182. package/dist/types/react/core/utils/storage.d.ts +1 -1
  183. package/dist/types/react/core/utils/storage.d.ts.map +1 -1
  184. package/dist/types/react/core/utils/walletIcon.d.ts +2 -1
  185. package/dist/types/react/core/utils/walletIcon.d.ts.map +1 -1
  186. package/dist/types/react/native/ui/components/WalletImage.d.ts.map +1 -1
  187. package/dist/types/react/native/ui/connect/InAppWalletUI.d.ts.map +1 -1
  188. package/dist/types/react/native/ui/connect/TokenListScreen.d.ts.map +1 -1
  189. package/dist/types/react/native/ui/icons/svgs.d.ts +1 -0
  190. package/dist/types/react/native/ui/icons/svgs.d.ts.map +1 -1
  191. package/dist/types/react/web/ui/ConnectWallet/Details.d.ts.map +1 -1
  192. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.d.ts.map +1 -1
  193. package/dist/types/react/web/ui/ConnectWallet/screens/TokenSelector.d.ts.map +1 -1
  194. package/dist/types/react/web/wallets/ecosystem/EcosystemWalletHeader.d.ts.map +1 -1
  195. package/dist/types/react/web/wallets/in-app/InAppWalletConnectUI.d.ts.map +1 -1
  196. package/dist/types/react/web/wallets/shared/ConnectWalletSocialOptions.d.ts +3 -0
  197. package/dist/types/react/web/wallets/shared/ConnectWalletSocialOptions.d.ts.map +1 -1
  198. package/dist/types/react/web/wallets/shared/GuestLogin.d.ts +19 -0
  199. package/dist/types/react/web/wallets/shared/GuestLogin.d.ts.map +1 -0
  200. package/dist/types/react/web/wallets/shared/OTPLoginUI.d.ts.map +1 -1
  201. package/dist/types/react/web/wallets/shared/locale/de.d.ts +1 -0
  202. package/dist/types/react/web/wallets/shared/locale/de.d.ts.map +1 -1
  203. package/dist/types/react/web/wallets/shared/locale/en.d.ts +1 -0
  204. package/dist/types/react/web/wallets/shared/locale/en.d.ts.map +1 -1
  205. package/dist/types/react/web/wallets/shared/locale/es.d.ts +1 -0
  206. package/dist/types/react/web/wallets/shared/locale/es.d.ts.map +1 -1
  207. package/dist/types/react/web/wallets/shared/locale/fr.d.ts +1 -0
  208. package/dist/types/react/web/wallets/shared/locale/fr.d.ts.map +1 -1
  209. package/dist/types/react/web/wallets/shared/locale/ja.d.ts +1 -0
  210. package/dist/types/react/web/wallets/shared/locale/ja.d.ts.map +1 -1
  211. package/dist/types/react/web/wallets/shared/locale/kr.d.ts +1 -0
  212. package/dist/types/react/web/wallets/shared/locale/kr.d.ts.map +1 -1
  213. package/dist/types/react/web/wallets/shared/locale/tl.d.ts +1 -0
  214. package/dist/types/react/web/wallets/shared/locale/tl.d.ts.map +1 -1
  215. package/dist/types/react/web/wallets/shared/locale/types.d.ts +1 -0
  216. package/dist/types/react/web/wallets/shared/locale/types.d.ts.map +1 -1
  217. package/dist/types/react/web/wallets/shared/locale/vi.d.ts +1 -0
  218. package/dist/types/react/web/wallets/shared/locale/vi.d.ts.map +1 -1
  219. package/dist/types/react/web/wallets/shared/oauthSignIn.d.ts.map +1 -1
  220. package/dist/types/transaction/resolve-method.d.ts +2 -2
  221. package/dist/types/transaction/resolve-method.d.ts.map +1 -1
  222. package/dist/types/utils/encoding/hex.d.ts.map +1 -1
  223. package/dist/types/utils/promise/p-limit.d.ts.map +1 -1
  224. package/dist/types/version.d.ts +1 -1
  225. package/dist/types/wallets/in-app/core/authentication/guest.d.ts +12 -0
  226. package/dist/types/wallets/in-app/core/authentication/guest.d.ts.map +1 -0
  227. package/dist/types/wallets/in-app/core/authentication/types.d.ts +8 -4
  228. package/dist/types/wallets/in-app/core/authentication/types.d.ts.map +1 -1
  229. package/dist/types/wallets/in-app/core/wallet/types.d.ts +2 -1
  230. package/dist/types/wallets/in-app/core/wallet/types.d.ts.map +1 -1
  231. package/dist/types/wallets/in-app/native/auth/native-auth.d.ts +4 -3
  232. package/dist/types/wallets/in-app/native/auth/native-auth.d.ts.map +1 -1
  233. package/dist/types/wallets/in-app/native/helpers/api/fetchers.d.ts.map +1 -1
  234. package/dist/types/wallets/in-app/native/helpers/wallet/sss.d.ts.map +1 -1
  235. package/dist/types/wallets/in-app/native/native-connector.d.ts +1 -0
  236. package/dist/types/wallets/in-app/native/native-connector.d.ts.map +1 -1
  237. package/dist/types/wallets/in-app/web/in-app.d.ts +13 -1
  238. package/dist/types/wallets/in-app/web/in-app.d.ts.map +1 -1
  239. package/dist/types/wallets/in-app/web/lib/auth/oauth.d.ts +3 -3
  240. package/dist/types/wallets/in-app/web/lib/auth/oauth.d.ts.map +1 -1
  241. package/dist/types/wallets/in-app/web/lib/web-connector.d.ts.map +1 -1
  242. package/dist/types/wallets/manager/index.d.ts.map +1 -1
  243. package/dist/types/wallets/types.d.ts +2 -1
  244. package/dist/types/wallets/types.d.ts.map +1 -1
  245. package/dist/types/wallets/wallet-connect/receiver/request-handlers/switch-chain.d.ts.map +1 -1
  246. package/package.json +10 -10
  247. package/src/contract/verification/index.ts +32 -34
  248. package/src/exports/utils.ts +9 -0
  249. package/src/react/core/hooks/connection/ConnectButtonProps.ts +7 -14
  250. package/src/react/core/hooks/pay/useBuyWithCryptoStatus.ts +7 -1
  251. package/src/react/core/hooks/pay/useBuyWithFiatStatus.ts +17 -1
  252. package/src/react/core/providers/invalidateWalletBalance.test.ts +1 -1
  253. package/src/react/core/providers/invalidateWalletBalance.ts +1 -1
  254. package/src/react/core/utils/walletIcon.ts +5 -0
  255. package/src/react/native/ui/components/WalletImage.tsx +3 -0
  256. package/src/react/native/ui/connect/InAppWalletUI.tsx +30 -0
  257. package/src/react/native/ui/connect/TokenListScreen.tsx +9 -12
  258. package/src/react/native/ui/icons/svgs.ts +2 -0
  259. package/src/react/web/ui/ConnectWallet/Details.tsx +15 -2
  260. package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +8 -2
  261. package/src/react/web/ui/ConnectWallet/screens/SignatureScreen.tsx +36 -38
  262. package/src/react/web/ui/ConnectWallet/screens/TokenSelector.tsx +34 -36
  263. package/src/react/web/ui/MediaRenderer/MediaRenderer.tsx +1 -1
  264. package/src/react/web/wallets/ecosystem/EcosystemWalletHeader.tsx +18 -20
  265. package/src/react/web/wallets/in-app/InAppWalletConnectUI.tsx +16 -0
  266. package/src/react/web/wallets/shared/ConnectWalletSocialOptions.tsx +128 -101
  267. package/src/react/web/wallets/shared/GuestLogin.tsx +159 -0
  268. package/src/react/web/wallets/shared/OTPLoginUI.tsx +3 -5
  269. package/src/react/web/wallets/shared/SocialLogin.tsx +1 -1
  270. package/src/react/web/wallets/shared/locale/de.ts +2 -1
  271. package/src/react/web/wallets/shared/locale/en.ts +1 -0
  272. package/src/react/web/wallets/shared/locale/es.ts +2 -1
  273. package/src/react/web/wallets/shared/locale/fr.ts +2 -1
  274. package/src/react/web/wallets/shared/locale/ja.ts +2 -1
  275. package/src/react/web/wallets/shared/locale/kr.ts +2 -1
  276. package/src/react/web/wallets/shared/locale/tl.ts +2 -1
  277. package/src/react/web/wallets/shared/locale/types.ts +1 -0
  278. package/src/react/web/wallets/shared/locale/vi.ts +1 -0
  279. package/src/react/web/wallets/shared/oauthSignIn.ts +6 -2
  280. package/src/transaction/resolve-method.test.ts +78 -0
  281. package/src/transaction/resolve-method.ts +14 -3
  282. package/src/utils/encoding/hex.ts +2 -3
  283. package/src/utils/promise/p-limit.ts +165 -165
  284. package/src/utils/signatures/sign-message.ts +3 -3
  285. package/src/version.ts +1 -1
  286. package/src/wallets/in-app/core/authentication/guest.ts +37 -0
  287. package/src/wallets/in-app/core/authentication/types.ts +9 -4
  288. package/src/wallets/in-app/core/wallet/types.ts +6 -1
  289. package/src/wallets/in-app/native/auth/native-auth.ts +34 -3
  290. package/src/wallets/in-app/native/helpers/api/fetchers.ts +1 -2
  291. package/src/wallets/in-app/native/helpers/wallet/sss.ts +1 -6
  292. package/src/wallets/in-app/native/native-connector.ts +42 -2
  293. package/src/wallets/in-app/web/in-app.ts +13 -1
  294. package/src/wallets/in-app/web/lib/auth/oauth.ts +3 -3
  295. package/src/wallets/in-app/web/lib/web-connector.ts +8 -0
  296. package/src/wallets/manager/index.ts +5 -0
  297. package/src/wallets/types.ts +2 -0
  298. package/src/wallets/wallet-connect/receiver/request-handlers/switch-chain.ts +2 -3
@@ -124,10 +124,40 @@ export function InAppWalletUI(props: InAppWalletFormUIProps) {
124
124
  }}
125
125
  />
126
126
  ) : null}
127
+ {authOptions.includes("guest") ? <GuestLogin {...props} /> : null}
127
128
  </View>
128
129
  );
129
130
  }
130
131
 
132
+ function GuestLogin(props: InAppWalletFormUIProps) {
133
+ const { theme, wallet, client, connector } = props;
134
+ const connectInAppWallet = useCallback(() => {
135
+ connector({
136
+ wallet,
137
+ connectFn: async () => {
138
+ await wallet.connect({
139
+ client,
140
+ strategy: "guest",
141
+ });
142
+ await setLastAuthProvider("guest", nativeLocalStorage);
143
+ return wallet;
144
+ },
145
+ authMethod: "guest",
146
+ });
147
+ }, [connector, wallet, client]);
148
+
149
+ return (
150
+ <ThemedButtonWithIcon
151
+ theme={theme}
152
+ title="Continue as guest"
153
+ icon={getAuthProviderImage("guest")}
154
+ onPress={() => {
155
+ connectInAppWallet();
156
+ }}
157
+ />
158
+ );
159
+ }
160
+
131
161
  function SocialLogin(
132
162
  props: InAppWalletFormUIProps & { auth: InAppWalletSocialAuth },
133
163
  ) {
@@ -88,18 +88,15 @@ export const TokenRow = (props: {
88
88
  <ThemedText theme={theme} type="defaultSemiBold">
89
89
  {tokenName}
90
90
  </ThemedText>
91
- {address && (
92
- <>
93
- {balanceQuery.data ? (
94
- <ThemedText theme={theme} type="subtext">
95
- {formatBalanceOnButton(Number(balanceQuery.data.displayValue))}{" "}
96
- {balanceQuery.data?.symbol}
97
- </ThemedText>
98
- ) : (
99
- <Skeleton theme={theme} style={{ width: 80, height: 14 }} />
100
- )}
101
- </>
102
- )}
91
+ {address &&
92
+ (balanceQuery.data ? (
93
+ <ThemedText theme={theme} type="subtext">
94
+ {formatBalanceOnButton(Number(balanceQuery.data.displayValue))}{" "}
95
+ {balanceQuery.data?.symbol}
96
+ </ThemedText>
97
+ ) : (
98
+ <Skeleton theme={theme} style={{ width: 80, height: 14 }} />
99
+ ))}
103
100
  </View>
104
101
  {props.onTokenSelected && (
105
102
  <>
@@ -98,6 +98,8 @@ export const X_ICON = `<svg width="320" height="320" viewBox="0 0 320 320" fill=
98
98
  <path d="M177.315 145.335L245.068 67H229.013L170.182 135.017L123.195 67H69L140.055 169.854L69 252H85.0563L147.183 180.172L196.805 252H251L177.311 145.335H177.315ZM155.323 170.76L148.124 160.518L90.8417 79.022H115.503L161.731 144.792L168.93 155.034L229.02 240.525H204.359L155.323 170.764V170.76Z" fill="white"/>
99
99
  </svg>`;
100
100
 
101
+ export const GUEST_ICON = `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-user"><path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>`;
102
+
101
103
  export const WALLET_ICON = `<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
102
104
  <path d="M12.6667 4.66667V2.66667C12.6667 2.48986 12.5964 2.32029 12.4714 2.19526C12.3464 2.07024 12.1768 2 12 2H3.33333C2.97971 2 2.64057 2.14048 2.39052 2.39052C2.14048 2.64057 2 2.97971 2 3.33333C2 3.68696 2.14048 4.02609 2.39052 4.27614C2.64057 4.52619 2.97971 4.66667 3.33333 4.66667H13.3333C13.5101 4.66667 13.6797 4.7369 13.8047 4.86193C13.9298 4.98695 14 5.15652 14 5.33333V8M14 8H12C11.6464 8 11.3072 8.14048 11.0572 8.39052C10.8071 8.64057 10.6667 8.97971 10.6667 9.33333C10.6667 9.68696 10.8071 10.0261 11.0572 10.2761C11.3072 10.5262 11.6464 10.6667 12 10.6667H14C14.1768 10.6667 14.3464 10.5964 14.4714 10.4714C14.5964 10.3464 14.6667 10.1768 14.6667 10V8.66667C14.6667 8.48986 14.5964 8.32029 14.4714 8.19526C14.3464 8.07024 14.1768 8 14 8Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
103
105
  <path d="M2 3.3335V12.6668C2 13.0205 2.14048 13.3596 2.39052 13.6096C2.64057 13.8597 2.97971 14.0002 3.33333 14.0002H13.3333C13.5101 14.0002 13.6797 13.9299 13.8047 13.8049C13.9298 13.6799 14 13.5103 14 13.3335V10.6668" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
@@ -14,8 +14,10 @@ import { trackPayEvent } from "../../../../analytics/track.js";
14
14
  import type { Chain } from "../../../../chains/types.js";
15
15
  import type { ThirdwebClient } from "../../../../client/client.js";
16
16
  import { getContract } from "../../../../contract/contract.js";
17
+ import { getLastAuthProvider } from "../../../../react/core/utils/storage.js";
17
18
  import { isContractDeployed } from "../../../../utils/bytecode/is-contract-deployed.js";
18
19
  import { formatNumber } from "../../../../utils/formatNumber.js";
20
+ import { webLocalStorage } from "../../../../utils/storage/webStorage.js";
19
21
  import type { Account, Wallet } from "../../../../wallets/interfaces/wallet.js";
20
22
  import type { SmartWalletOptions } from "../../../../wallets/smart/types.js";
21
23
  import type { AppMetadata } from "../../../../wallets/types.js";
@@ -1062,6 +1064,17 @@ function InAppWalletUserInfo(props: {
1062
1064
  const activeWallet = useActiveWallet();
1063
1065
  const { data: walletInfo } = useWalletInfo(activeWallet?.id);
1064
1066
  const isSmartWallet = hasSmartAccount(activeWallet);
1067
+ const { data: walletName } = useQuery({
1068
+ queryKey: [activeWallet?.id, "wallet-name"],
1069
+ queryFn: async () => {
1070
+ const lastAuthProvider = await getLastAuthProvider(webLocalStorage);
1071
+ if (lastAuthProvider === "guest") {
1072
+ return "Guest";
1073
+ }
1074
+ return walletInfo?.name;
1075
+ },
1076
+ enabled: !!activeWallet?.id,
1077
+ });
1065
1078
 
1066
1079
  const userInfoQuery = useQuery({
1067
1080
  queryKey: ["in-app-wallet-user", client, account?.address],
@@ -1088,10 +1101,10 @@ function InAppWalletUserInfo(props: {
1088
1101
  return <ConnectedToSmartWallet client={client} connectLocale={locale} />;
1089
1102
  }
1090
1103
 
1091
- if (userInfoQuery.data || walletInfo) {
1104
+ if (userInfoQuery.data || walletName) {
1092
1105
  return (
1093
1106
  <Text size="xs" weight={400}>
1094
- {userInfoQuery.data || walletInfo?.name}
1107
+ {userInfoQuery.data || walletName}
1095
1108
  </Text>
1096
1109
  );
1097
1110
  }
@@ -1,4 +1,5 @@
1
1
  import { IdCardIcon } from "@radix-ui/react-icons";
2
+ import { useQueryClient } from "@tanstack/react-query";
2
3
  import { useCallback, useMemo, useState } from "react";
3
4
  import { trackPayEvent } from "../../../../../../analytics/track.js";
4
5
  import type { Chain } from "../../../../../../chains/types.js";
@@ -24,6 +25,7 @@ import { useWalletBalance } from "../../../../../core/hooks/others/useWalletBala
24
25
  import { useBuyWithCryptoQuote } from "../../../../../core/hooks/pay/useBuyWithCryptoQuote.js";
25
26
  import { useBuyWithFiatQuote } from "../../../../../core/hooks/pay/useBuyWithFiatQuote.js";
26
27
  import { useActiveAccount } from "../../../../../core/hooks/wallets/useActiveAccount.js";
28
+ import { invalidateWalletBalance } from "../../../../../core/providers/invalidateWalletBalance.js";
27
29
  import type { SupportedTokens } from "../../../../../core/utils/defaultTokens.js";
28
30
  import { LoadingScreen } from "../../../../wallets/shared/LoadingScreen.js";
29
31
  import type { PayEmbedConnectOptions } from "../../../PayEmbed.js";
@@ -226,14 +228,17 @@ function BuyScreenContent(props: BuyScreenContentProps) {
226
228
 
227
229
  // screens ----------------------------
228
230
 
231
+ const queryClient = useQueryClient();
232
+
229
233
  const onSwapSuccess = useCallback(
230
234
  (_status: BuyWithCryptoStatus) => {
231
235
  props.payOptions.onPurchaseSuccess?.({
232
236
  type: "crypto",
233
237
  status: _status,
234
238
  });
239
+ invalidateWalletBalance(queryClient);
235
240
  },
236
- [props.payOptions.onPurchaseSuccess],
241
+ [props.payOptions.onPurchaseSuccess, queryClient],
237
242
  );
238
243
 
239
244
  const onFiatSuccess = useCallback(
@@ -242,8 +247,9 @@ function BuyScreenContent(props: BuyScreenContentProps) {
242
247
  type: "fiat",
243
248
  status: _status,
244
249
  });
250
+ invalidateWalletBalance(queryClient);
245
251
  },
246
- [props.payOptions.onPurchaseSuccess],
252
+ [props.payOptions.onPurchaseSuccess, queryClient],
247
253
  );
248
254
 
249
255
  if (screen.id === "connect-payer-wallet") {
@@ -259,45 +259,43 @@ function HeadlessSignIn({
259
259
  {status === "signing" && <Spinner size="xl" color="accentText" />}
260
260
 
261
261
  {status === "failed" && (
262
- <>
263
- <Container>
264
- <Spacer y="lg" />
265
- <Text size="lg" center color="danger">
266
- {locale.signingScreen.failedToSignIn}
267
- </Text>
262
+ <Container>
263
+ <Spacer y="lg" />
264
+ <Text size="lg" center color="danger">
265
+ {locale.signingScreen.failedToSignIn}
266
+ </Text>
268
267
 
269
- <Spacer y="lg" />
270
- <Button
271
- fullWidth
272
- variant="accent"
273
- onClick={() => {
274
- signIn();
275
- }}
276
- style={{
277
- gap: spacing.xs,
278
- alignItems: "center",
279
- padding: spacing.md,
280
- }}
281
- >
282
- <ReloadIcon width={iconSize.sm} height={iconSize.sm} />
283
- {locale.signingScreen.tryAgain}
284
- </Button>
285
- <Spacer y="sm" />
286
- <Button
287
- fullWidth
288
- variant="secondary"
289
- onClick={() => {
290
- disconnect(wallet);
291
- }}
292
- style={{
293
- alignItems: "center",
294
- padding: spacing.md,
295
- }}
296
- >
297
- {locale.instructionScreen.disconnectWallet}
298
- </Button>
299
- </Container>
300
- </>
268
+ <Spacer y="lg" />
269
+ <Button
270
+ fullWidth
271
+ variant="accent"
272
+ onClick={() => {
273
+ signIn();
274
+ }}
275
+ style={{
276
+ gap: spacing.xs,
277
+ alignItems: "center",
278
+ padding: spacing.md,
279
+ }}
280
+ >
281
+ <ReloadIcon width={iconSize.sm} height={iconSize.sm} />
282
+ {locale.signingScreen.tryAgain}
283
+ </Button>
284
+ <Spacer y="sm" />
285
+ <Button
286
+ fullWidth
287
+ variant="secondary"
288
+ onClick={() => {
289
+ disconnect(wallet);
290
+ }}
291
+ style={{
292
+ alignItems: "center",
293
+ padding: spacing.md,
294
+ }}
295
+ >
296
+ {locale.instructionScreen.disconnectWallet}
297
+ </Button>
298
+ </Container>
301
299
  )}
302
300
  </Container>
303
301
  </Container>
@@ -154,43 +154,41 @@ export function TokenSelector(props: {
154
154
  <Spacer y="md" />
155
155
 
156
156
  {props.chainSelection && (
157
- <>
158
- <Container px="lg">
159
- <Text size="sm">Select Network</Text>
160
- <Spacer y="xxs" />
161
- <SelectTokenBtn
162
- fullWidth
163
- variant="secondary"
164
- onClick={() => {
165
- setScreen("select-chain");
166
- }}
167
- >
168
- <ChainIcon
169
- chainIconUrl={chainIconQuery.url}
170
- size={iconSize.lg}
171
- client={props.client}
172
- />
157
+ <Container px="lg">
158
+ <Text size="sm">Select Network</Text>
159
+ <Spacer y="xxs" />
160
+ <SelectTokenBtn
161
+ fullWidth
162
+ variant="secondary"
163
+ onClick={() => {
164
+ setScreen("select-chain");
165
+ }}
166
+ >
167
+ <ChainIcon
168
+ chainIconUrl={chainIconQuery.url}
169
+ size={iconSize.lg}
170
+ client={props.client}
171
+ />
173
172
 
174
- {chainNameQuery.name ? (
175
- <Text color="primaryText" size="sm">
176
- {chainNameQuery.name}
177
- </Text>
178
- ) : (
179
- <Skeleton height={fontSize.md} />
180
- )}
181
-
182
- <ChevronDownIcon
183
- width={iconSize.sm}
184
- height={iconSize.sm}
185
- style={{
186
- marginLeft: "auto",
187
- }}
188
- />
189
- </SelectTokenBtn>
190
- <Spacer y="xl" />
191
- <Text size="sm">Select Token</Text>
192
- </Container>
193
- </>
173
+ {chainNameQuery.name ? (
174
+ <Text color="primaryText" size="sm">
175
+ {chainNameQuery.name}
176
+ </Text>
177
+ ) : (
178
+ <Skeleton height={fontSize.md} />
179
+ )}
180
+
181
+ <ChevronDownIcon
182
+ width={iconSize.sm}
183
+ height={iconSize.sm}
184
+ style={{
185
+ marginLeft: "auto",
186
+ }}
187
+ />
188
+ </SelectTokenBtn>
189
+ <Spacer y="xl" />
190
+ <Text size="sm">Select Token</Text>
191
+ </Container>
194
192
  )}
195
193
 
196
194
  <Container px="lg">
@@ -549,7 +549,7 @@ const IframePlayer = /* @__PURE__ */ (() =>
549
549
  <div style={{ position: "relative", ...style }} {...restProps}>
550
550
  <iframe
551
551
  title={alt || "thirdweb iframe player"}
552
- src={playing ? src ?? undefined : undefined}
552
+ src={playing ? (src ?? undefined) : undefined}
553
553
  ref={ref}
554
554
  style={{
555
555
  objectFit: "contain",
@@ -23,26 +23,24 @@ export function EcosystemWalletHeader(props: {
23
23
  <ModalHeader
24
24
  onBack={props.onBack}
25
25
  title={
26
- <>
27
- {walletInfo.isLoading ? (
28
- <Skeleton height="24px" width="200px" />
29
- ) : (
30
- <>
31
- {!walletInfo.data?.image_id ? null : (
32
- <Img
33
- src={walletInfo.data?.image_id}
34
- style={{
35
- borderRadius: radius.sm,
36
- }}
37
- width={iconSize.md}
38
- height={iconSize.md}
39
- client={props.client}
40
- />
41
- )}
42
- <ModalTitle>{walletInfo.data?.name}</ModalTitle>
43
- </>
44
- )}
45
- </>
26
+ walletInfo.isLoading ? (
27
+ <Skeleton height="24px" width="200px" />
28
+ ) : (
29
+ <>
30
+ {!walletInfo.data?.image_id ? null : (
31
+ <Img
32
+ src={walletInfo.data?.image_id}
33
+ style={{
34
+ borderRadius: radius.sm,
35
+ }}
36
+ width={iconSize.md}
37
+ height={iconSize.md}
38
+ client={props.client}
39
+ />
40
+ )}
41
+ <ModalTitle>{walletInfo.data?.name}</ModalTitle>
42
+ </>
43
+ )
46
44
  }
47
45
  leftAligned
48
46
  />
@@ -9,6 +9,7 @@ import {
9
9
  import { useScreenContext } from "../../ui/ConnectWallet/Modal/screen.js";
10
10
  import type { ConnectLocale } from "../../ui/ConnectWallet/locale/types.js";
11
11
  import type { ConnectWalletSelectUIState } from "../shared/ConnectWalletSocialOptions.js";
12
+ import { GuestLogin } from "../shared/GuestLogin.js";
12
13
  import { LoadingScreen } from "../shared/LoadingScreen.js";
13
14
  import { OTPLoginUI } from "../shared/OTPLoginUI.js";
14
15
  import { PassKeyLogin } from "../shared/PassKeyLogin.js";
@@ -135,6 +136,21 @@ function InAppWalletConnectUI(props: {
135
136
  );
136
137
  }
137
138
 
139
+ if (state?.guestLogin) {
140
+ return (
141
+ <GuestLogin
142
+ locale={locale}
143
+ done={done}
144
+ goBack={goBackToMain}
145
+ wallet={props.wallet}
146
+ state={state}
147
+ client={props.client}
148
+ size={props.size}
149
+ connectLocale={props.connectLocale}
150
+ />
151
+ );
152
+ }
153
+
138
154
  return (
139
155
  <InAppWalletFormUIScreen
140
156
  select={() => {}}