thirdweb 5.32.2-nightly-a6ed6e66dae7f2fa239c76a57e93b545e5d8da8d-20240704000330 → 5.32.3

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 (414) hide show
  1. package/dist/cjs/gas/fee-data.js +13 -6
  2. package/dist/cjs/gas/fee-data.js.map +1 -1
  3. package/dist/cjs/pay/buyWithCrypto/getQuote.js +1 -0
  4. package/dist/cjs/pay/buyWithCrypto/getQuote.js.map +1 -1
  5. package/dist/cjs/pay/buyWithFiat/getPostOnRampQuote.js +5 -0
  6. package/dist/cjs/pay/buyWithFiat/getPostOnRampQuote.js.map +1 -1
  7. package/dist/cjs/pay/buyWithFiat/getQuote.js.map +1 -1
  8. package/dist/cjs/react/core/hooks/auth/useSiweAuth.js +4 -1
  9. package/dist/cjs/react/core/hooks/auth/useSiweAuth.js.map +1 -1
  10. package/dist/cjs/react/native/ui/components/Header.js +1 -1
  11. package/dist/cjs/react/native/ui/components/Header.js.map +1 -1
  12. package/dist/cjs/react/native/ui/components/button.js +1 -1
  13. package/dist/cjs/react/native/ui/components/button.js.map +1 -1
  14. package/dist/cjs/react/native/ui/connect/ConnectButton.js +1 -1
  15. package/dist/cjs/react/native/ui/connect/ConnectButton.js.map +1 -1
  16. package/dist/cjs/react/native/ui/connect/ConnectModal.js +7 -8
  17. package/dist/cjs/react/native/ui/connect/ConnectModal.js.map +1 -1
  18. package/dist/cjs/react/native/ui/connect/InAppWalletUI.js +1 -1
  19. package/dist/cjs/react/native/ui/connect/InAppWalletUI.js.map +1 -1
  20. package/dist/cjs/react/native/ui/icons/svgs.js +5 -5
  21. package/dist/cjs/react/web/hooks/transaction/useSendTransaction.js +2 -2
  22. package/dist/cjs/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
  23. package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js +12 -2
  24. package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
  25. package/dist/cjs/react/web/ui/ConnectWallet/Details.js +19 -5
  26. package/dist/cjs/react/web/ui/ConnectWallet/Details.js.map +1 -1
  27. package/dist/cjs/react/web/ui/ConnectWallet/Modal/AllWalletsUI.js +1 -1
  28. package/dist/cjs/react/web/ui/ConnectWallet/Modal/AllWalletsUI.js.map +1 -1
  29. package/dist/cjs/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js +5 -4
  30. package/dist/cjs/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js.map +1 -1
  31. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js +5 -4
  32. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js.map +1 -1
  33. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModal.js +1 -1
  34. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModal.js.map +1 -1
  35. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModalContent.js +11 -8
  36. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModalContent.js.map +1 -1
  37. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModalInline.js +1 -1
  38. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModalInline.js.map +1 -1
  39. package/dist/cjs/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.js +12 -12
  40. package/dist/cjs/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.js.map +1 -1
  41. package/dist/cjs/react/web/ui/ConnectWallet/WalletEntryButton.js +3 -5
  42. package/dist/cjs/react/web/ui/ConnectWallet/WalletEntryButton.js.map +1 -1
  43. package/dist/cjs/react/web/ui/ConnectWallet/WalletSelector.js +24 -14
  44. package/dist/cjs/react/web/ui/ConnectWallet/WalletSelector.js.map +1 -1
  45. package/dist/cjs/react/web/ui/ConnectWallet/locale/en.js +1 -0
  46. package/dist/cjs/react/web/ui/ConnectWallet/locale/en.js.map +1 -1
  47. package/dist/cjs/react/web/ui/ConnectWallet/locale/es.js +1 -0
  48. package/dist/cjs/react/web/ui/ConnectWallet/locale/es.js.map +1 -1
  49. package/dist/cjs/react/web/ui/ConnectWallet/locale/ja.js +1 -0
  50. package/dist/cjs/react/web/ui/ConnectWallet/locale/ja.js.map +1 -1
  51. package/dist/cjs/react/web/ui/ConnectWallet/locale/tl.js +1 -0
  52. package/dist/cjs/react/web/ui/ConnectWallet/locale/tl.js.map +1 -1
  53. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +144 -87
  54. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  55. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.js +49 -0
  56. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.js.map +1 -0
  57. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js +32 -0
  58. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js.map +1 -0
  59. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js +1 -1
  60. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js.map +1 -1
  61. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js +1 -1
  62. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js.map +1 -1
  63. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js +6 -1
  64. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js.map +1 -1
  65. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js +2 -4
  66. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js.map +1 -1
  67. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.js +1 -1
  68. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.js.map +1 -1
  69. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +18 -17
  70. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
  71. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js +2 -6
  72. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js.map +1 -1
  73. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.js +1 -1
  74. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.js.map +1 -1
  75. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js +26 -0
  76. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js.map +1 -0
  77. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/BuyTxHistory.js +12 -1
  78. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/BuyTxHistory.js.map +1 -1
  79. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.js +1 -1
  80. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.js.map +1 -1
  81. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/SwapDetailsScreen.js +8 -1
  82. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/SwapDetailsScreen.js.map +1 -1
  83. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.js +1 -1
  84. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.js.map +1 -1
  85. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/types.js +3 -0
  86. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/types.js.map +1 -0
  87. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.js +55 -0
  88. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.js.map +1 -0
  89. package/dist/cjs/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.js +78 -0
  90. package/dist/cjs/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.js.map +1 -0
  91. package/dist/cjs/react/web/ui/ConnectWallet/screens/SendFunds.js +3 -4
  92. package/dist/cjs/react/web/ui/ConnectWallet/screens/SendFunds.js.map +1 -1
  93. package/dist/cjs/react/web/ui/ConnectWallet/screens/SignatureScreen.js +1 -1
  94. package/dist/cjs/react/web/ui/ConnectWallet/screens/SignatureScreen.js.map +1 -1
  95. package/dist/cjs/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.js +31 -0
  96. package/dist/cjs/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.js.map +1 -0
  97. package/dist/cjs/react/web/ui/MediaRenderer/MediaRenderer.js +19 -26
  98. package/dist/cjs/react/web/ui/MediaRenderer/MediaRenderer.js.map +1 -1
  99. package/dist/cjs/react/web/ui/MediaRenderer/ModelViewer.js +2 -2
  100. package/dist/cjs/react/web/ui/MediaRenderer/ModelViewer.js.map +1 -1
  101. package/dist/cjs/react/web/ui/PayEmbed.js +3 -17
  102. package/dist/cjs/react/web/ui/PayEmbed.js.map +1 -1
  103. package/dist/cjs/react/web/ui/components/CopyIcon.js +1 -1
  104. package/dist/cjs/react/web/ui/components/CopyIcon.js.map +1 -1
  105. package/dist/cjs/react/web/ui/components/Drawer.js +51 -17
  106. package/dist/cjs/react/web/ui/components/Drawer.js.map +1 -1
  107. package/dist/cjs/react/web/ui/components/SwitchNetwork.js +1 -3
  108. package/dist/cjs/react/web/ui/components/SwitchNetwork.js.map +1 -1
  109. package/dist/cjs/react/web/ui/components/WalletImage.js +1 -0
  110. package/dist/cjs/react/web/ui/components/WalletImage.js.map +1 -1
  111. package/dist/cjs/react/web/ui/components/buttons.js +5 -1
  112. package/dist/cjs/react/web/ui/components/buttons.js.map +1 -1
  113. package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js +2 -1
  114. package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js.map +1 -1
  115. package/dist/cjs/react/web/wallets/in-app/InAppWalletConnectUI.js +2 -1
  116. package/dist/cjs/react/web/wallets/in-app/InAppWalletConnectUI.js.map +1 -1
  117. package/dist/cjs/react/web/wallets/in-app/InAppWalletSelectionUI.js +2 -2
  118. package/dist/cjs/react/web/wallets/in-app/InAppWalletSelectionUI.js.map +1 -1
  119. package/dist/cjs/utils/formatNumber.js +4 -1
  120. package/dist/cjs/utils/formatNumber.js.map +1 -1
  121. package/dist/cjs/version.js +1 -1
  122. package/dist/cjs/version.js.map +1 -1
  123. package/dist/esm/gas/fee-data.js +13 -6
  124. package/dist/esm/gas/fee-data.js.map +1 -1
  125. package/dist/esm/pay/buyWithCrypto/getQuote.js +1 -0
  126. package/dist/esm/pay/buyWithCrypto/getQuote.js.map +1 -1
  127. package/dist/esm/pay/buyWithFiat/getPostOnRampQuote.js +5 -0
  128. package/dist/esm/pay/buyWithFiat/getPostOnRampQuote.js.map +1 -1
  129. package/dist/esm/pay/buyWithFiat/getQuote.js.map +1 -1
  130. package/dist/esm/react/core/hooks/auth/useSiweAuth.js +4 -1
  131. package/dist/esm/react/core/hooks/auth/useSiweAuth.js.map +1 -1
  132. package/dist/esm/react/native/ui/components/Header.js +1 -1
  133. package/dist/esm/react/native/ui/components/Header.js.map +1 -1
  134. package/dist/esm/react/native/ui/components/button.js +1 -1
  135. package/dist/esm/react/native/ui/components/button.js.map +1 -1
  136. package/dist/esm/react/native/ui/connect/ConnectButton.js +1 -1
  137. package/dist/esm/react/native/ui/connect/ConnectButton.js.map +1 -1
  138. package/dist/esm/react/native/ui/connect/ConnectModal.js +8 -9
  139. package/dist/esm/react/native/ui/connect/ConnectModal.js.map +1 -1
  140. package/dist/esm/react/native/ui/connect/InAppWalletUI.js +1 -1
  141. package/dist/esm/react/native/ui/connect/InAppWalletUI.js.map +1 -1
  142. package/dist/esm/react/native/ui/icons/svgs.js +5 -5
  143. package/dist/esm/react/web/hooks/transaction/useSendTransaction.js +2 -2
  144. package/dist/esm/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
  145. package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js +12 -2
  146. package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
  147. package/dist/esm/react/web/ui/ConnectWallet/Details.js +20 -6
  148. package/dist/esm/react/web/ui/ConnectWallet/Details.js.map +1 -1
  149. package/dist/esm/react/web/ui/ConnectWallet/Modal/AllWalletsUI.js +1 -1
  150. package/dist/esm/react/web/ui/ConnectWallet/Modal/AllWalletsUI.js.map +1 -1
  151. package/dist/esm/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js +5 -4
  152. package/dist/esm/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js.map +1 -1
  153. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js +2 -2
  154. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js.map +1 -1
  155. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModal.js +1 -1
  156. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModal.js.map +1 -1
  157. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModalContent.js +11 -8
  158. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModalContent.js.map +1 -1
  159. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModalInline.js +1 -1
  160. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModalInline.js.map +1 -1
  161. package/dist/esm/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.js +12 -12
  162. package/dist/esm/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.js.map +1 -1
  163. package/dist/esm/react/web/ui/ConnectWallet/WalletEntryButton.js +2 -4
  164. package/dist/esm/react/web/ui/ConnectWallet/WalletEntryButton.js.map +1 -1
  165. package/dist/esm/react/web/ui/ConnectWallet/WalletSelector.js +25 -15
  166. package/dist/esm/react/web/ui/ConnectWallet/WalletSelector.js.map +1 -1
  167. package/dist/esm/react/web/ui/ConnectWallet/locale/en.js +1 -0
  168. package/dist/esm/react/web/ui/ConnectWallet/locale/en.js.map +1 -1
  169. package/dist/esm/react/web/ui/ConnectWallet/locale/es.js +1 -0
  170. package/dist/esm/react/web/ui/ConnectWallet/locale/es.js.map +1 -1
  171. package/dist/esm/react/web/ui/ConnectWallet/locale/ja.js +1 -0
  172. package/dist/esm/react/web/ui/ConnectWallet/locale/ja.js.map +1 -1
  173. package/dist/esm/react/web/ui/ConnectWallet/locale/tl.js +1 -0
  174. package/dist/esm/react/web/ui/ConnectWallet/locale/tl.js.map +1 -1
  175. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +145 -88
  176. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  177. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.js +46 -0
  178. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.js.map +1 -0
  179. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js +29 -0
  180. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js.map +1 -0
  181. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js +1 -1
  182. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js.map +1 -1
  183. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js +1 -1
  184. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js.map +1 -1
  185. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js +6 -1
  186. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js.map +1 -1
  187. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js +2 -4
  188. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js.map +1 -1
  189. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.js +1 -1
  190. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.js.map +1 -1
  191. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +18 -17
  192. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
  193. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js +3 -7
  194. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js.map +1 -1
  195. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.js +1 -1
  196. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.js.map +1 -1
  197. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js +23 -0
  198. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js.map +1 -0
  199. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/BuyTxHistory.js +12 -1
  200. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/BuyTxHistory.js.map +1 -1
  201. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.js +1 -1
  202. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.js.map +1 -1
  203. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/SwapDetailsScreen.js +8 -1
  204. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/SwapDetailsScreen.js.map +1 -1
  205. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.js +1 -1
  206. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.js.map +1 -1
  207. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/types.js +2 -0
  208. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/types.js.map +1 -0
  209. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.js +52 -0
  210. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.js.map +1 -0
  211. package/dist/esm/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.js +75 -0
  212. package/dist/esm/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.js.map +1 -0
  213. package/dist/esm/react/web/ui/ConnectWallet/screens/SendFunds.js +4 -5
  214. package/dist/esm/react/web/ui/ConnectWallet/screens/SendFunds.js.map +1 -1
  215. package/dist/esm/react/web/ui/ConnectWallet/screens/SignatureScreen.js +1 -1
  216. package/dist/esm/react/web/ui/ConnectWallet/screens/SignatureScreen.js.map +1 -1
  217. package/dist/esm/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.js +28 -0
  218. package/dist/esm/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.js.map +1 -0
  219. package/dist/esm/react/web/ui/MediaRenderer/MediaRenderer.js +19 -26
  220. package/dist/esm/react/web/ui/MediaRenderer/MediaRenderer.js.map +1 -1
  221. package/dist/esm/react/web/ui/MediaRenderer/ModelViewer.js +2 -2
  222. package/dist/esm/react/web/ui/MediaRenderer/ModelViewer.js.map +1 -1
  223. package/dist/esm/react/web/ui/PayEmbed.js +3 -17
  224. package/dist/esm/react/web/ui/PayEmbed.js.map +1 -1
  225. package/dist/esm/react/web/ui/components/CopyIcon.js +1 -1
  226. package/dist/esm/react/web/ui/components/CopyIcon.js.map +1 -1
  227. package/dist/esm/react/web/ui/components/Drawer.js +54 -20
  228. package/dist/esm/react/web/ui/components/Drawer.js.map +1 -1
  229. package/dist/esm/react/web/ui/components/SwitchNetwork.js +1 -3
  230. package/dist/esm/react/web/ui/components/SwitchNetwork.js.map +1 -1
  231. package/dist/esm/react/web/ui/components/WalletImage.js +1 -0
  232. package/dist/esm/react/web/ui/components/WalletImage.js.map +1 -1
  233. package/dist/esm/react/web/ui/components/buttons.js +5 -1
  234. package/dist/esm/react/web/ui/components/buttons.js.map +1 -1
  235. package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js +2 -1
  236. package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js.map +1 -1
  237. package/dist/esm/react/web/wallets/in-app/InAppWalletConnectUI.js +2 -1
  238. package/dist/esm/react/web/wallets/in-app/InAppWalletConnectUI.js.map +1 -1
  239. package/dist/esm/react/web/wallets/in-app/InAppWalletSelectionUI.js +2 -2
  240. package/dist/esm/react/web/wallets/in-app/InAppWalletSelectionUI.js.map +1 -1
  241. package/dist/esm/utils/formatNumber.js +4 -1
  242. package/dist/esm/utils/formatNumber.js.map +1 -1
  243. package/dist/esm/version.js +1 -1
  244. package/dist/esm/version.js.map +1 -1
  245. package/dist/types/gas/fee-data.d.ts.map +1 -1
  246. package/dist/types/pay/buyWithCrypto/getQuote.d.ts +5 -1
  247. package/dist/types/pay/buyWithCrypto/getQuote.d.ts.map +1 -1
  248. package/dist/types/pay/buyWithFiat/getPostOnRampQuote.d.ts.map +1 -1
  249. package/dist/types/pay/buyWithFiat/getQuote.d.ts +4 -0
  250. package/dist/types/pay/buyWithFiat/getQuote.d.ts.map +1 -1
  251. package/dist/types/react/core/hooks/auth/useSiweAuth.d.ts.map +1 -1
  252. package/dist/types/react/native/ui/components/Header.d.ts +1 -1
  253. package/dist/types/react/native/ui/components/Header.d.ts.map +1 -1
  254. package/dist/types/react/native/ui/components/button.d.ts.map +1 -1
  255. package/dist/types/react/native/ui/connect/ConnectModal.d.ts.map +1 -1
  256. package/dist/types/react/native/ui/connect/InAppWalletUI.d.ts.map +1 -1
  257. package/dist/types/react/native/ui/icons/svgs.d.ts +3 -3
  258. package/dist/types/react/native/ui/icons/svgs.d.ts.map +1 -1
  259. package/dist/types/react/web/ui/ConnectWallet/Details.d.ts +21 -1
  260. package/dist/types/react/web/ui/ConnectWallet/Details.d.ts.map +1 -1
  261. package/dist/types/react/web/ui/ConnectWallet/Modal/AllWalletsUI.d.ts.map +1 -1
  262. package/dist/types/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.d.ts +0 -2
  263. package/dist/types/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.d.ts.map +1 -1
  264. package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectEmbed.d.ts +6 -0
  265. package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectEmbed.d.ts.map +1 -1
  266. package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectModal.d.ts.map +1 -1
  267. package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectModalContent.d.ts +7 -3
  268. package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectModalContent.d.ts.map +1 -1
  269. package/dist/types/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.d.ts +0 -2
  270. package/dist/types/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.d.ts.map +1 -1
  271. package/dist/types/react/web/ui/ConnectWallet/WalletEntryButton.d.ts +3 -1
  272. package/dist/types/react/web/ui/ConnectWallet/WalletEntryButton.d.ts.map +1 -1
  273. package/dist/types/react/web/ui/ConnectWallet/WalletSelector.d.ts +7 -5
  274. package/dist/types/react/web/ui/ConnectWallet/WalletSelector.d.ts.map +1 -1
  275. package/dist/types/react/web/ui/ConnectWallet/locale/en.d.ts.map +1 -1
  276. package/dist/types/react/web/ui/ConnectWallet/locale/es.d.ts.map +1 -1
  277. package/dist/types/react/web/ui/ConnectWallet/locale/ja.d.ts.map +1 -1
  278. package/dist/types/react/web/ui/ConnectWallet/locale/tl.d.ts.map +1 -1
  279. package/dist/types/react/web/ui/ConnectWallet/locale/types.d.ts +2 -0
  280. package/dist/types/react/web/ui/ConnectWallet/locale/types.d.ts.map +1 -1
  281. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.d.ts +5 -4
  282. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.d.ts.map +1 -1
  283. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.d.ts +8 -0
  284. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.d.ts.map +1 -0
  285. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.d.ts +13 -0
  286. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.d.ts.map +1 -0
  287. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.d.ts +2 -0
  288. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.d.ts.map +1 -1
  289. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.d.ts +2 -0
  290. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.d.ts.map +1 -1
  291. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.d.ts +2 -0
  292. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.d.ts.map +1 -1
  293. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.d.ts +2 -0
  294. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.d.ts.map +1 -1
  295. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts +12 -3
  296. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts.map +1 -1
  297. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.d.ts +2 -0
  298. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.d.ts.map +1 -1
  299. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.d.ts +2 -0
  300. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.d.ts.map +1 -1
  301. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.d.ts +2 -2
  302. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.d.ts.map +1 -1
  303. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.d.ts +12 -0
  304. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.d.ts.map +1 -0
  305. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/tx-history/BuyTxHistory.d.ts.map +1 -1
  306. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.d.ts +2 -0
  307. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.d.ts.map +1 -1
  308. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/tx-history/SwapDetailsScreen.d.ts.map +1 -1
  309. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.d.ts +2 -0
  310. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.d.ts.map +1 -1
  311. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/types.d.ts +9 -0
  312. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/types.d.ts.map +1 -0
  313. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.d.ts +6 -0
  314. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.d.ts.map +1 -0
  315. package/dist/types/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.d.ts +9 -0
  316. package/dist/types/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.d.ts.map +1 -0
  317. package/dist/types/react/web/ui/ConnectWallet/screens/SignatureScreen.d.ts +1 -1
  318. package/dist/types/react/web/ui/ConnectWallet/screens/SignatureScreen.d.ts.map +1 -1
  319. package/dist/types/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.d.ts +25 -0
  320. package/dist/types/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.d.ts.map +1 -0
  321. package/dist/types/react/web/ui/ConnectWallet/screens/types.d.ts +1 -1
  322. package/dist/types/react/web/ui/ConnectWallet/screens/types.d.ts.map +1 -1
  323. package/dist/types/react/web/ui/MediaRenderer/MediaRenderer.d.ts.map +1 -1
  324. package/dist/types/react/web/ui/MediaRenderer/ModelViewer.d.ts +1 -1
  325. package/dist/types/react/web/ui/MediaRenderer/ModelViewer.d.ts.map +1 -1
  326. package/dist/types/react/web/ui/MediaRenderer/types.d.ts +0 -2
  327. package/dist/types/react/web/ui/MediaRenderer/types.d.ts.map +1 -1
  328. package/dist/types/react/web/ui/PayEmbed.d.ts +1 -1
  329. package/dist/types/react/web/ui/PayEmbed.d.ts.map +1 -1
  330. package/dist/types/react/web/ui/components/CopyIcon.d.ts.map +1 -1
  331. package/dist/types/react/web/ui/components/Drawer.d.ts +2 -1
  332. package/dist/types/react/web/ui/components/Drawer.d.ts.map +1 -1
  333. package/dist/types/react/web/ui/components/SwitchNetwork.d.ts +1 -2
  334. package/dist/types/react/web/ui/components/SwitchNetwork.d.ts.map +1 -1
  335. package/dist/types/react/web/ui/components/WalletImage.d.ts +1 -0
  336. package/dist/types/react/web/ui/components/WalletImage.d.ts.map +1 -1
  337. package/dist/types/react/web/ui/components/buttons.d.ts.map +1 -1
  338. package/dist/types/react/web/wallets/ecosystem/EcosystemWalletConnectUI.d.ts +0 -2
  339. package/dist/types/react/web/wallets/ecosystem/EcosystemWalletConnectUI.d.ts.map +1 -1
  340. package/dist/types/react/web/wallets/in-app/InAppWalletConnectUI.d.ts +0 -2
  341. package/dist/types/react/web/wallets/in-app/InAppWalletConnectUI.d.ts.map +1 -1
  342. package/dist/types/react/web/wallets/in-app/InAppWalletSelectionUI.d.ts +0 -2
  343. package/dist/types/react/web/wallets/in-app/InAppWalletSelectionUI.d.ts.map +1 -1
  344. package/dist/types/utils/formatNumber.d.ts.map +1 -1
  345. package/dist/types/version.d.ts +1 -1
  346. package/dist/types/version.d.ts.map +1 -1
  347. package/package.json +1 -1
  348. package/src/gas/fee-data.ts +14 -6
  349. package/src/pay/buyWithCrypto/getQuote.ts +7 -3
  350. package/src/pay/buyWithFiat/getPostOnRampQuote.ts +5 -0
  351. package/src/pay/buyWithFiat/getQuote.ts +4 -0
  352. package/src/react/core/hooks/auth/useSiweAuth.ts +4 -1
  353. package/src/react/native/ui/components/Header.tsx +2 -2
  354. package/src/react/native/ui/components/button.tsx +6 -1
  355. package/src/react/native/ui/connect/ConnectButton.tsx +1 -1
  356. package/src/react/native/ui/connect/ConnectModal.tsx +9 -4
  357. package/src/react/native/ui/connect/InAppWalletUI.tsx +24 -20
  358. package/src/react/native/ui/icons/svgs.ts +5 -5
  359. package/src/react/web/hooks/transaction/useSendTransaction.tsx +30 -17
  360. package/src/react/web/ui/ConnectWallet/ConnectButton.tsx +12 -1
  361. package/src/react/web/ui/ConnectWallet/Details.tsx +73 -2
  362. package/src/react/web/ui/ConnectWallet/Modal/AllWalletsUI.tsx +2 -0
  363. package/src/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.tsx +3 -6
  364. package/src/react/web/ui/ConnectWallet/Modal/ConnectEmbed.tsx +3 -2
  365. package/src/react/web/ui/ConnectWallet/Modal/ConnectModal.tsx +2 -1
  366. package/src/react/web/ui/ConnectWallet/Modal/ConnectModalContent.tsx +17 -11
  367. package/src/react/web/ui/ConnectWallet/Modal/ConnectModalInline.tsx +2 -1
  368. package/src/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.tsx +14 -15
  369. package/src/react/web/ui/ConnectWallet/WalletEntryButton.tsx +12 -13
  370. package/src/react/web/ui/ConnectWallet/WalletSelector.tsx +35 -20
  371. package/src/react/web/ui/ConnectWallet/locale/en.ts +1 -0
  372. package/src/react/web/ui/ConnectWallet/locale/es.ts +1 -0
  373. package/src/react/web/ui/ConnectWallet/locale/ja.ts +1 -0
  374. package/src/react/web/ui/ConnectWallet/locale/tl.ts +1 -0
  375. package/src/react/web/ui/ConnectWallet/locale/types.ts +3 -0
  376. package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +435 -266
  377. package/src/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.tsx +118 -0
  378. package/src/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.tsx +86 -0
  379. package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.tsx +3 -0
  380. package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.tsx +2 -0
  381. package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.tsx +23 -0
  382. package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.tsx +4 -5
  383. package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.tsx +3 -0
  384. package/src/react/web/ui/ConnectWallet/screens/Buy/main/types.ts +15 -4
  385. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.tsx +43 -32
  386. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.tsx +4 -7
  387. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.tsx +3 -2
  388. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.tsx +66 -0
  389. package/src/react/web/ui/ConnectWallet/screens/Buy/tx-history/BuyTxHistory.tsx +16 -0
  390. package/src/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.tsx +3 -0
  391. package/src/react/web/ui/ConnectWallet/screens/Buy/tx-history/SwapDetailsScreen.tsx +27 -0
  392. package/src/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.tsx +3 -0
  393. package/src/react/web/ui/ConnectWallet/screens/Buy/types.ts +9 -0
  394. package/src/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.tsx +63 -0
  395. package/src/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.tsx +203 -0
  396. package/src/react/web/ui/ConnectWallet/screens/SendFunds.tsx +1 -13
  397. package/src/react/web/ui/ConnectWallet/screens/SignatureScreen.tsx +2 -2
  398. package/src/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.tsx +83 -0
  399. package/src/react/web/ui/ConnectWallet/screens/types.ts +2 -1
  400. package/src/react/web/ui/MediaRenderer/MediaRenderer.tsx +151 -111
  401. package/src/react/web/ui/MediaRenderer/ModelViewer.tsx +5 -5
  402. package/src/react/web/ui/MediaRenderer/types.ts +0 -3
  403. package/src/react/web/ui/PayEmbed.tsx +7 -29
  404. package/src/react/web/ui/components/CopyIcon.tsx +5 -1
  405. package/src/react/web/ui/components/Drawer.tsx +91 -40
  406. package/src/react/web/ui/components/SwitchNetwork.tsx +2 -5
  407. package/src/react/web/ui/components/WalletImage.tsx +2 -0
  408. package/src/react/web/ui/components/buttons.tsx +5 -1
  409. package/src/react/web/wallets/ecosystem/EcosystemWalletConnectUI.tsx +2 -3
  410. package/src/react/web/wallets/in-app/InAppWalletConnectUI.tsx +2 -3
  411. package/src/react/web/wallets/in-app/InAppWalletSelectionUI.tsx +3 -3
  412. package/src/utils/format-number.test.ts +23 -8
  413. package/src/utils/formatNumber.ts +4 -1
  414. package/src/version.ts +1 -1
@@ -4,15 +4,16 @@ import type { Chain } from "../../../../../chains/types.js";
4
4
  import type { ThirdwebClient } from "../../../../../client/client.js";
5
5
  import type { Wallet } from "../../../../../wallets/interfaces/wallet.js";
6
6
  import type { SmartWalletOptions } from "../../../../../wallets/smart/types.js";
7
+ import type { WalletId } from "../../../../../wallets/wallet-types.js";
7
8
  import {
8
9
  type SiweAuthOptions,
9
10
  useSiweAuth,
10
11
  } from "../../../../core/hooks/auth/useSiweAuth.js";
11
12
  import { useActiveWallet } from "../../../hooks/wallets/useActiveWallet.js";
12
13
  import { useSetActiveWallet } from "../../../hooks/wallets/useSetActiveWallet.js";
14
+ import { connectionManager } from "../../../index.js";
13
15
  import { useSetSelectionData } from "../../../providers/wallet-ui-states-provider.js";
14
16
  import { LoadingScreen } from "../../../wallets/shared/LoadingScreen.js";
15
- import type { LocaleId } from "../../types.js";
16
17
  import { WalletSelector } from "../WalletSelector.js";
17
18
  import { onModalUnmount, reservedScreens } from "../constants.js";
18
19
  import type { ConnectLocale } from "../locale/types.js";
@@ -34,7 +35,7 @@ const AllWalletsUI = /* @__PURE__ */ lazy(() => import("./AllWalletsUI.js"));
34
35
  */
35
36
  export const ConnectModalContent = (props: {
36
37
  screenSetup: ScreenSetup;
37
- onClose: () => void;
38
+ onClose: (() => void) | undefined;
38
39
  isOpen: boolean;
39
40
  setModalVisibility: (value: boolean) => void;
40
41
  shouldSetActive: boolean;
@@ -55,7 +56,6 @@ export const ConnectModalContent = (props: {
55
56
  client: ThirdwebClient;
56
57
  isEmbed: boolean;
57
58
  recommendedWallets: Wallet[] | undefined;
58
- localeId: LocaleId;
59
59
  chain: Chain | undefined;
60
60
  chains: Chain[] | undefined;
61
61
  showAllWallets: boolean | undefined;
@@ -64,6 +64,13 @@ export const ConnectModalContent = (props: {
64
64
  projectId?: string;
65
65
  }
66
66
  | undefined;
67
+ modalHeader:
68
+ | {
69
+ title: string;
70
+ onBack: () => void;
71
+ }
72
+ | undefined;
73
+ walletIdsToHide: WalletId[] | undefined;
67
74
  }) => {
68
75
  const { setModalVisibility, onClose, shouldSetActive } = props;
69
76
  const { screen, setScreen, initialScreen } = props.screenSetup;
@@ -78,6 +85,8 @@ export const ConnectModalContent = (props: {
78
85
  (wallet: Wallet) => {
79
86
  if (shouldSetActive) {
80
87
  setActiveWallet(wallet);
88
+ } else {
89
+ connectionManager.addConnectedWallet(wallet);
81
90
  }
82
91
 
83
92
  if (props.onConnect) {
@@ -93,7 +102,8 @@ export const ConnectModalContent = (props: {
93
102
  if (showSignatureScreen) {
94
103
  setScreen(reservedScreens.signIn);
95
104
  } else {
96
- onClose();
105
+ setScreen(initialScreen);
106
+ onClose?.();
97
107
  }
98
108
  },
99
109
  [
@@ -105,6 +115,7 @@ export const ConnectModalContent = (props: {
105
115
  setScreen,
106
116
  setSelectionData,
107
117
  shouldSetActive,
118
+ initialScreen,
108
119
  ],
109
120
  );
110
121
 
@@ -117,11 +128,7 @@ export const ConnectModalContent = (props: {
117
128
  <WalletSelector
118
129
  title={props.meta.title || props.connectLocale.defaultModalTitle}
119
130
  wallets={props.wallets}
120
- onGetStarted={() => {
121
- setScreen(reservedScreens.getStarted);
122
- }}
123
131
  selectWallet={(newWallet) => {
124
- setSelectionData({});
125
132
  if (newWallet.onConnectRequested) {
126
133
  newWallet
127
134
  .onConnectRequested()
@@ -142,13 +149,14 @@ export const ConnectModalContent = (props: {
142
149
  isEmbed={props.isEmbed}
143
150
  recommendedWallets={props.recommendedWallets}
144
151
  accountAbstraction={props.accountAbstraction}
145
- localeId={props.localeId}
146
152
  chain={props.chain}
147
153
  showAllWallets={props.showAllWallets}
148
154
  chains={props.chains}
149
155
  walletConnect={props.walletConnect}
150
156
  meta={props.meta}
151
157
  size={props.size}
158
+ modalHeader={props.modalHeader}
159
+ walletIdsToHide={props.walletIdsToHide}
152
160
  />
153
161
  );
154
162
 
@@ -191,7 +199,6 @@ export const ConnectModalContent = (props: {
191
199
  setModalVisibility={props.setModalVisibility}
192
200
  meta={props.meta}
193
201
  size={props.size}
194
- localeId={props.localeId}
195
202
  chain={props.chain}
196
203
  chains={props.chains}
197
204
  client={props.client}
@@ -215,7 +222,6 @@ export const ConnectModalContent = (props: {
215
222
  client={props.client}
216
223
  meta={props.meta}
217
224
  size={props.size}
218
- localeId={props.localeId}
219
225
  walletConnect={props.walletConnect}
220
226
  connectLocale={props.connectLocale}
221
227
  />
@@ -160,13 +160,14 @@ function ConnectModalInlineContent(props: {
160
160
  meta={props.meta}
161
161
  welcomeScreen={props.welcomeScreen}
162
162
  isEmbed={props.isEmbed}
163
- localeId={props.localeId}
164
163
  onConnect={props.onConnect}
165
164
  recommendedWallets={props.recommendedWallets}
166
165
  showAllWallets={props.showAllWallets}
167
166
  wallets={props.wallets}
168
167
  chains={props.chains}
169
168
  walletConnect={props.walletConnect}
169
+ modalHeader={undefined}
170
+ walletIdsToHide={undefined}
170
171
  />
171
172
 
172
173
  {/* close icon */}
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
  import { ExclamationTriangleIcon } from "@radix-ui/react-icons";
3
+ import { useQuery } from "@tanstack/react-query";
3
4
  import { useCallback, useEffect, useRef, useState } from "react";
4
5
  import type { Chain } from "../../../../../chains/types.js";
5
6
  import type { ThirdwebClient } from "../../../../../client/client.js";
@@ -35,7 +36,6 @@ export function SmartConnectUI(props: {
35
36
  onBack?: () => void;
36
37
  accountAbstraction: SmartWalletOptions;
37
38
  setModalVisibility: (value: boolean) => void;
38
- localeId: LocaleId;
39
39
  meta: {
40
40
  title?: string;
41
41
  titleIconUrl?: string;
@@ -76,7 +76,6 @@ export function SmartConnectUI(props: {
76
76
  client={props.client}
77
77
  meta={props.meta}
78
78
  size={props.size}
79
- localeId={props.localeId}
80
79
  walletConnect={props.walletConnect}
81
80
  connectLocale={props.connectLocale}
82
81
  />
@@ -90,7 +89,7 @@ export function SmartConnectUI(props: {
90
89
  accountAbstraction={props.accountAbstraction}
91
90
  onBack={props.onBack}
92
91
  personalWalletInfo={personalWalletInfo.data}
93
- localeId={props.localeId}
92
+ localeId={props.connectLocale.id}
94
93
  size={props.size}
95
94
  client={props.client}
96
95
  />
@@ -107,14 +106,12 @@ function SmartWalletConnecting(props: {
107
106
  size: "compact" | "wide";
108
107
  client: ThirdwebClient;
109
108
  }) {
110
- const [locale, setLocale] = useState<SmartWalletLocale | undefined>();
109
+ const localeQuery = useQuery<SmartWalletLocale>({
110
+ queryKey: ["getSmartWalletLocale", props.localeId],
111
+ queryFn: () => getSmartWalletLocale(props.localeId),
112
+ });
111
113
  const { chain: smartWalletChain } = props.accountAbstraction;
112
114
 
113
- // FIXME: use a query instead
114
- useEffect(() => {
115
- getSmartWalletLocale(props.localeId).then(setLocale);
116
- }, [props.localeId]);
117
-
118
115
  const { personalWallet } = props;
119
116
  const { done } = props;
120
117
 
@@ -170,7 +167,7 @@ function SmartWalletConnecting(props: {
170
167
  }
171
168
  }, [handleConnect, wrongNetwork]);
172
169
 
173
- if (!locale) {
170
+ if (!localeQuery.data) {
174
171
  return <LoadingScreen />;
175
172
  }
176
173
 
@@ -198,13 +195,13 @@ function SmartWalletConnecting(props: {
198
195
  <Spacer y="md" />
199
196
 
200
197
  <Text size="lg" color="primaryText" center weight={500}>
201
- {locale.wrongNetworkScreen.title}
198
+ {localeQuery.data.wrongNetworkScreen.title}
202
199
  </Text>
203
200
 
204
201
  <Spacer y="lg" />
205
202
 
206
203
  <Text multiline center>
207
- {locale.wrongNetworkScreen.subtitle}
204
+ {localeQuery.data.wrongNetworkScreen.subtitle}
208
205
  </Text>
209
206
 
210
207
  <Spacer y="xl" />
@@ -265,7 +262,9 @@ function SmartWalletConnecting(props: {
265
262
  width={iconSize.sm}
266
263
  height={iconSize.sm}
267
264
  />
268
- <span>{locale.wrongNetworkScreen.failedToSwitch}</span>
265
+ <span>
266
+ {localeQuery.data.wrongNetworkScreen.failedToSwitch}
267
+ </span>
269
268
  </Container>
270
269
  </Container>
271
270
  </Container>
@@ -286,7 +285,7 @@ function SmartWalletConnecting(props: {
286
285
  minHeight: "300px",
287
286
  }}
288
287
  >
289
- <Text color="danger">{locale.failedToConnect}</Text>
288
+ <Text color="danger">{localeQuery.data.failedToConnect}</Text>
290
289
  </Container>
291
290
  );
292
291
  }
@@ -301,7 +300,7 @@ function SmartWalletConnecting(props: {
301
300
  }}
302
301
  >
303
302
  <Text color="primaryText" multiline center>
304
- {locale.connecting}
303
+ {localeQuery.data.connecting}
305
304
  </Text>
306
305
  <Spacer y="lg" />
307
306
  <Spinner color="accentText" size="lg" />
@@ -16,7 +16,6 @@ import { WalletImage } from "../components/WalletImage.js";
16
16
  import { Container } from "../components/basic.js";
17
17
  import { Text } from "../components/text.js";
18
18
  import { StyledButton } from "../design-system/elements.js";
19
- import { useScreenContext } from "./Modal/screen.js";
20
19
  import type { ConnectLocale } from "./locale/types.js";
21
20
 
22
21
  /**
@@ -28,12 +27,14 @@ export function WalletEntryButton(props: {
28
27
  connectLocale: ConnectLocale;
29
28
  recommendedWallets: Wallet[] | undefined;
30
29
  client: ThirdwebClient;
30
+ isActive: boolean;
31
+ badge: string | undefined;
31
32
  }) {
32
33
  const { walletId, selectWallet } = props;
33
34
  const isRecommended = props.recommendedWallets?.find(
34
35
  (w) => w.id === walletId,
35
36
  );
36
- const { screen } = useScreenContext();
37
+
37
38
  const walletInfo = useWalletInfo(walletId);
38
39
 
39
40
  const walletName =
@@ -45,12 +46,10 @@ export function WalletEntryButton(props: {
45
46
  );
46
47
 
47
48
  return (
48
- <WalletButton
49
+ <WalletButtonEl
49
50
  type="button"
50
51
  onClick={selectWallet}
51
- data-active={
52
- screen && typeof screen === "object" && screen.id === walletId
53
- }
52
+ data-active={props.isActive}
54
53
  >
55
54
  <WalletImage id={walletId} size={iconSize.xl} client={props.client} />
56
55
 
@@ -63,19 +62,19 @@ export function WalletEntryButton(props: {
63
62
  <Skeleton width="100px" height={fontSize.md} />
64
63
  )}
65
64
 
66
- {isRecommended && (
65
+ {props.badge ? (
66
+ <Text size="sm">{props.badge}</Text>
67
+ ) : isRecommended ? (
67
68
  <Text size="sm">{props.connectLocale.recommended}</Text>
68
- )}
69
-
70
- {!isRecommended && isInstalled && (
69
+ ) : isInstalled ? (
71
70
  <Text size="sm">{props.connectLocale.installed}</Text>
72
- )}
71
+ ) : null}
73
72
  </Container>
74
- </WalletButton>
73
+ </WalletButtonEl>
75
74
  );
76
75
  }
77
76
 
78
- export const WalletButton = /* @__PURE__ */ StyledButton((_) => {
77
+ export const WalletButtonEl = /* @__PURE__ */ StyledButton((_) => {
79
78
  const theme = useCustomTheme();
80
79
  return {
81
80
  all: "unset",
@@ -34,11 +34,11 @@ import { ModalTitle } from "../components/modalElements.js";
34
34
  import { Link } from "../components/text.js";
35
35
  import { Text } from "../components/text.js";
36
36
  import { StyledDiv, StyledUl } from "../design-system/elements.js";
37
- import type { LocaleId } from "../types.js";
38
37
  import { SmartConnectUI } from "./Modal/SmartWalletConnectUI.js";
39
38
  import { TOS } from "./Modal/TOS.js";
39
+ import { useScreenContext } from "./Modal/screen.js";
40
40
  import { PoweredByThirdweb } from "./PoweredByTW.js";
41
- import { WalletButton, WalletEntryButton } from "./WalletEntryButton.js";
41
+ import { WalletButtonEl, WalletEntryButton } from "./WalletEntryButton.js";
42
42
  import { WalletTypeRowButton } from "./WalletTypeRowButton.js";
43
43
  import { compactModalMaxHeight } from "./constants.js";
44
44
  import type { ConnectLocale } from "./locale/types.js";
@@ -50,10 +50,9 @@ const InAppWalletSelectionUI = /* @__PURE__ */ lazy(
50
50
  // const localWalletId = "local";
51
51
  const inAppWalletId: WalletId = "inApp";
52
52
 
53
- type WalletSelectorProps = {
53
+ export type WalletSelectorProps = {
54
54
  wallets: Wallet[];
55
55
  selectWallet: (wallet: Wallet) => void;
56
- onGetStarted: () => void;
57
56
  title: string;
58
57
  done: (wallet: Wallet) => void;
59
58
  goBack?: () => void;
@@ -72,7 +71,6 @@ type WalletSelectorProps = {
72
71
  connectLocale: ConnectLocale;
73
72
  recommendedWallets: Wallet[] | undefined;
74
73
  isEmbed: boolean;
75
- localeId: LocaleId;
76
74
  chain: Chain | undefined;
77
75
  chains: Chain[] | undefined;
78
76
  showAllWallets: boolean | undefined;
@@ -81,6 +79,13 @@ type WalletSelectorProps = {
81
79
  projectId?: string;
82
80
  }
83
81
  | undefined;
82
+ modalHeader:
83
+ | {
84
+ title: string;
85
+ onBack: () => void;
86
+ }
87
+ | undefined;
88
+ walletIdsToHide: WalletId[] | undefined;
84
89
  };
85
90
 
86
91
  /**
@@ -103,7 +108,6 @@ export function WalletSelector(props: WalletSelectorProps) {
103
108
  onBack={props.goBack}
104
109
  meta={props.meta}
105
110
  size={props.size}
106
- localeId={props.localeId}
107
111
  chain={props.chain}
108
112
  chains={props.chains}
109
113
  client={props.client}
@@ -127,12 +131,13 @@ export function WalletSelector(props: WalletSelectorProps) {
127
131
  * @internal
128
132
  */
129
133
  const WalletSelectorInner: React.FC<WalletSelectorProps> = (props) => {
134
+ const { walletIdsToHide } = props;
130
135
  const isCompact = props.size === "compact";
131
136
  const [isWalletGroupExpanded, setIsWalletGroupExpanded] = useState(false);
132
137
 
133
138
  const installedWallets = getInstalledWallets();
134
139
  const propsWallets = props.wallets;
135
- const _wallets: Wallet[] = [...propsWallets];
140
+ let _wallets: Wallet[] = [...propsWallets];
136
141
 
137
142
  for (const iW of installedWallets) {
138
143
  if (!propsWallets.find((w) => w.id === iW.id)) {
@@ -140,6 +145,10 @@ const WalletSelectorInner: React.FC<WalletSelectorProps> = (props) => {
140
145
  }
141
146
  }
142
147
 
148
+ if (walletIdsToHide) {
149
+ _wallets = _wallets.filter((w) => !walletIdsToHide?.includes(w.id));
150
+ }
151
+
143
152
  const localWalletConfig = false; // _wallets.find((w) => w.id === localWalletId);
144
153
 
145
154
  const nonLocalWalletConfigs = _wallets; // _wallets.filter((w) => w.id !== localWalletId);
@@ -182,7 +191,12 @@ const WalletSelectorInner: React.FC<WalletSelectorProps> = (props) => {
182
191
  }, 1000);
183
192
  }, []);
184
193
 
185
- const twTitle = (
194
+ const twTitle = props.modalHeader ? (
195
+ <ModalHeader
196
+ title={props.modalHeader.title}
197
+ onBack={props.modalHeader.onBack}
198
+ />
199
+ ) : (
186
200
  <Container gap="xxs" center="y" flex="row">
187
201
  {!props.meta.titleIconUrl ? null : (
188
202
  <Img
@@ -263,7 +277,6 @@ const WalletSelectorInner: React.FC<WalletSelectorProps> = (props) => {
263
277
  recommendedWallets={props.recommendedWallets}
264
278
  chain={props.chain}
265
279
  showAllWallets={props.showAllWallets}
266
- localeId={props.localeId}
267
280
  />
268
281
  );
269
282
 
@@ -291,7 +304,6 @@ const WalletSelectorInner: React.FC<WalletSelectorProps> = (props) => {
291
304
  recommendedWallets={props.recommendedWallets}
292
305
  chain={props.chain}
293
306
  showAllWallets={props.showAllWallets}
294
- localeId={props.localeId}
295
307
  />
296
308
  );
297
309
 
@@ -335,7 +347,6 @@ const WalletSelectorInner: React.FC<WalletSelectorProps> = (props) => {
335
347
  recommendedWallets={props.recommendedWallets}
336
348
  chain={props.chain}
337
349
  showAllWallets={props.showAllWallets}
338
- localeId={props.localeId}
339
350
  />
340
351
  {eoaWallets.length > 0 && (
341
352
  <>
@@ -406,7 +417,6 @@ const WalletSelectorInner: React.FC<WalletSelectorProps> = (props) => {
406
417
  recommendedWallets={props.recommendedWallets}
407
418
  chain={props.chain}
408
419
  showAllWallets={props.showAllWallets}
409
- localeId={props.localeId}
410
420
  />
411
421
  </Container>
412
422
 
@@ -445,7 +455,6 @@ const WalletSelectorInner: React.FC<WalletSelectorProps> = (props) => {
445
455
  recommendedWallets={props.recommendedWallets}
446
456
  chain={props.chain}
447
457
  showAllWallets={props.showAllWallets}
448
- localeId={props.localeId}
449
458
  />
450
459
  );
451
460
 
@@ -456,6 +465,8 @@ const WalletSelectorInner: React.FC<WalletSelectorProps> = (props) => {
456
465
  }
457
466
  }
458
467
 
468
+ const showHeader = !props.isEmbed || props.modalHeader;
469
+
459
470
  return (
460
471
  <Container
461
472
  scrollY
@@ -467,7 +478,7 @@ const WalletSelectorInner: React.FC<WalletSelectorProps> = (props) => {
467
478
  }}
468
479
  >
469
480
  {/* Header */}
470
- {!props.isEmbed && (
481
+ {showHeader && (
471
482
  <Container p="lg">
472
483
  {isWalletGroupExpanded ? (
473
484
  <ModalHeader
@@ -488,7 +499,7 @@ const WalletSelectorInner: React.FC<WalletSelectorProps> = (props) => {
488
499
  scrollY
489
500
  px="md"
490
501
  style={
491
- props.isEmbed
502
+ !showHeader
492
503
  ? {
493
504
  paddingTop: spacing.lg,
494
505
  }
@@ -497,7 +508,7 @@ const WalletSelectorInner: React.FC<WalletSelectorProps> = (props) => {
497
508
  }
498
509
  }
499
510
  >
500
- {props.isEmbed && isWalletGroupExpanded && (
511
+ {!props.modalHeader && props.isEmbed && isWalletGroupExpanded && (
501
512
  <Container
502
513
  flex="row"
503
514
  center="y"
@@ -566,9 +577,9 @@ const WalletSelection: React.FC<{
566
577
  connectLocale: ConnectLocale;
567
578
  client: ThirdwebClient;
568
579
  chain: Chain | undefined;
569
- localeId: LocaleId;
570
580
  }> = (props) => {
571
581
  const wallets = sortWallets(props.wallets, props.recommendedWallets);
582
+ const { screen } = useScreenContext();
572
583
 
573
584
  return (
574
585
  <WalletList
@@ -577,6 +588,9 @@ const WalletSelection: React.FC<{
577
588
  }}
578
589
  >
579
590
  {wallets.map((wallet) => {
591
+ const isActive = screen
592
+ ? typeof screen === "object" && screen.id === wallet.id
593
+ : false;
580
594
  return (
581
595
  <li
582
596
  key={wallet.id}
@@ -594,7 +608,6 @@ const WalletSelection: React.FC<{
594
608
  size={props.size}
595
609
  recommendedWallets={props.recommendedWallets}
596
610
  chain={props.chain}
597
- localeId={props.localeId}
598
611
  />
599
612
  </Suspense>
600
613
  ) : (
@@ -606,6 +619,8 @@ const WalletSelection: React.FC<{
606
619
  connectLocale={props.connectLocale}
607
620
  client={props.client}
608
621
  recommendedWallets={props.recommendedWallets}
622
+ isActive={isActive}
623
+ badge={undefined}
609
624
  />
610
625
  )}
611
626
  </li>
@@ -614,7 +629,7 @@ const WalletSelection: React.FC<{
614
629
 
615
630
  {props.onShowAll && props.showAllWallets !== false && (
616
631
  <ButtonContainer>
617
- <WalletButton onClick={props.onShowAll}>
632
+ <WalletButtonEl onClick={props.onShowAll}>
618
633
  <ShowAllWalletsIcon>
619
634
  <div data-dot />
620
635
  <div data-dot />
@@ -625,7 +640,7 @@ const WalletSelection: React.FC<{
625
640
  <Text color="primaryText">All Wallets</Text>
626
641
  <BadgeText> 350+ </BadgeText>
627
642
  </Container>
628
- </WalletButton>
643
+ </WalletButtonEl>
629
644
  </ButtonContainer>
630
645
  )}
631
646
  </WalletList>
@@ -1,6 +1,7 @@
1
1
  import type { ConnectLocale } from "./types.js";
2
2
 
3
3
  const connectLocaleEn: ConnectLocale = {
4
+ id: "en_US",
4
5
  signIn: "Sign in",
5
6
  defaultButtonTitle: "Connect Wallet",
6
7
  connecting: "Connecting",
@@ -1,6 +1,7 @@
1
1
  import type { ConnectLocale } from "./types.js";
2
2
 
3
3
  const connectWalletLocalEs: ConnectLocale = {
4
+ id: "es_ES",
4
5
  signIn: "Iniciar sesión",
5
6
  defaultButtonTitle: "Conectar cartera",
6
7
  connecting: "Conectando",
@@ -1,6 +1,7 @@
1
1
  import type { ConnectLocale } from "./types.js";
2
2
 
3
3
  const connectWalletLocalJa: ConnectLocale = {
4
+ id: "ja_JP",
4
5
  signIn: "サインイン",
5
6
  defaultButtonTitle: "ウォレット接続",
6
7
  connecting: "接続中",
@@ -1,6 +1,7 @@
1
1
  import type { ConnectLocale } from "./types.js";
2
2
 
3
3
  const connectWalletLocalTl: ConnectLocale = {
4
+ id: "tl_PH",
4
5
  signIn: "Mag-sign in",
5
6
  defaultButtonTitle: "Ikonekta ang Wallet",
6
7
  connecting: "Kumokonekta",
@@ -1,4 +1,7 @@
1
+ import type { LocaleId } from "../../types.js";
2
+
1
3
  export type ConnectLocale = {
4
+ id: LocaleId;
2
5
  agreement: {
3
6
  and: string;
4
7
  prefix: string;