@b3dotfun/sdk 0.1.69 → 0.1.70-alpha.10

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 (650) hide show
  1. package/constants/chains/b3Chain.js +3 -1
  2. package/dist/cjs/anyspend/constants/rpc.d.ts +2 -1
  3. package/dist/cjs/anyspend/constants/rpc.js +4 -2
  4. package/dist/cjs/anyspend/react/components/AnySpend.d.ts +2 -0
  5. package/dist/cjs/anyspend/react/components/AnySpend.js +12 -4
  6. package/dist/cjs/anyspend/react/components/AnySpendBondKit.d.ts +1 -1
  7. package/dist/cjs/anyspend/react/components/AnySpendBondKit.js +2 -2
  8. package/dist/cjs/anyspend/react/components/AnySpendBuySpin.d.ts +2 -1
  9. package/dist/cjs/anyspend/react/components/AnySpendBuySpin.js +2 -2
  10. package/dist/cjs/anyspend/react/components/AnySpendCollectorClubPurchase.d.ts +5 -1
  11. package/dist/cjs/anyspend/react/components/AnySpendCollectorClubPurchase.js +2 -2
  12. package/dist/cjs/anyspend/react/components/AnySpendCustom.d.ts +2 -0
  13. package/dist/cjs/anyspend/react/components/AnySpendCustom.js +7 -3
  14. package/dist/cjs/anyspend/react/components/AnySpendCustomExactIn.d.ts +2 -0
  15. package/dist/cjs/anyspend/react/components/AnySpendCustomExactIn.js +21 -14
  16. package/dist/cjs/anyspend/react/components/AnySpendDeposit.d.ts +3 -1
  17. package/dist/cjs/anyspend/react/components/AnySpendDeposit.js +12 -6
  18. package/dist/cjs/anyspend/react/components/AnySpendDepositUpside.d.ts +2 -1
  19. package/dist/cjs/anyspend/react/components/AnySpendDepositUpside.js +2 -2
  20. package/dist/cjs/anyspend/react/components/AnySpendNFT.d.ts +3 -1
  21. package/dist/cjs/anyspend/react/components/AnySpendNFT.js +4 -4
  22. package/dist/cjs/anyspend/react/components/AnySpendStakeB3.d.ts +2 -1
  23. package/dist/cjs/anyspend/react/components/AnySpendStakeB3.js +3 -3
  24. package/dist/cjs/anyspend/react/components/AnySpendStakeB3ExactIn.d.ts +2 -1
  25. package/dist/cjs/anyspend/react/components/AnySpendStakeB3ExactIn.js +3 -3
  26. package/dist/cjs/anyspend/react/components/AnySpendStakeUpside.d.ts +3 -1
  27. package/dist/cjs/anyspend/react/components/AnySpendStakeUpside.js +2 -2
  28. package/dist/cjs/anyspend/react/components/AnySpendStakeUpsideExactIn.d.ts +2 -1
  29. package/dist/cjs/anyspend/react/components/AnySpendStakeUpsideExactIn.js +2 -2
  30. package/dist/cjs/anyspend/react/components/AnySpendWorkflowTrigger.d.ts +3 -1
  31. package/dist/cjs/anyspend/react/components/AnySpendWorkflowTrigger.js +2 -2
  32. package/dist/cjs/anyspend/react/components/AnyspendDepositHype.d.ts +2 -1
  33. package/dist/cjs/anyspend/react/components/AnyspendDepositHype.js +2 -2
  34. package/dist/cjs/anyspend/react/components/AnyspendSignatureMint.d.ts +2 -1
  35. package/dist/cjs/anyspend/react/components/AnyspendSignatureMint.js +2 -2
  36. package/dist/cjs/anyspend/react/components/checkout/AnySpendCheckout.d.ts +5 -1
  37. package/dist/cjs/anyspend/react/components/checkout/AnySpendCheckout.js +15 -6
  38. package/dist/cjs/anyspend/react/components/checkout/AnySpendCheckoutTrigger.d.ts +3 -1
  39. package/dist/cjs/anyspend/react/components/checkout/AnySpendCheckoutTrigger.js +2 -2
  40. package/dist/cjs/anyspend/react/components/checkout/CartItemRow.d.ts +2 -1
  41. package/dist/cjs/anyspend/react/components/checkout/CartSummary.d.ts +6 -4
  42. package/dist/cjs/anyspend/react/components/checkout/CartSummary.js +13 -11
  43. package/dist/cjs/anyspend/react/components/checkout/CheckoutCartPanel.d.ts +3 -1
  44. package/dist/cjs/anyspend/react/components/checkout/CheckoutCartPanel.js +5 -4
  45. package/dist/cjs/anyspend/react/components/checkout/CheckoutFormPanel.d.ts +3 -1
  46. package/dist/cjs/anyspend/react/components/checkout/CheckoutFormPanel.js +2 -2
  47. package/dist/cjs/anyspend/react/components/checkout/CheckoutPaymentPanel.d.ts +3 -1
  48. package/dist/cjs/anyspend/react/components/checkout/CheckoutPaymentPanel.js +15 -7
  49. package/dist/cjs/anyspend/react/components/checkout/CheckoutSuccess.d.ts +2 -1
  50. package/dist/cjs/anyspend/react/components/checkout/CheckoutSuccess.js +5 -3
  51. package/dist/cjs/anyspend/react/components/checkout/CryptoPayPanel.js +43 -23
  52. package/dist/cjs/anyspend/react/components/checkout/DiscountCodeInput.d.ts +3 -1
  53. package/dist/cjs/anyspend/react/components/checkout/DiscountCodeInput.js +3 -6
  54. package/dist/cjs/anyspend/react/components/checkout/FiatCheckoutPanel.js +1 -2
  55. package/dist/cjs/anyspend/react/components/checkout/KycGate.js +1 -2
  56. package/dist/cjs/anyspend/react/components/checkout/PriceSkeleton.d.ts +5 -0
  57. package/dist/cjs/anyspend/react/components/checkout/PriceSkeleton.js +9 -0
  58. package/dist/cjs/anyspend/react/components/checkout/ShippingSelector.d.ts +3 -1
  59. package/dist/cjs/anyspend/react/components/checkout/ShippingSelector.js +3 -2
  60. package/dist/cjs/anyspend/react/components/common/CryptoPaymentMethod.d.ts +8 -0
  61. package/dist/cjs/anyspend/react/components/common/CryptoPaymentMethod.js +10 -9
  62. package/dist/cjs/anyspend/react/components/common/InsufficientDepositPayment.js +2 -2
  63. package/dist/cjs/anyspend/react/components/common/OrderDetails.js +7 -2
  64. package/dist/cjs/anyspend/react/components/common/OrderDetailsCollapsible.js +2 -2
  65. package/dist/cjs/anyspend/react/components/common/OrderStatus.js +37 -6
  66. package/dist/cjs/anyspend/react/components/common/StepProgress.d.ts +2 -0
  67. package/dist/cjs/anyspend/react/components/common/StepProgress.js +7 -2
  68. package/dist/cjs/anyspend/react/components/common/TransferCryptoDetails.js +2 -2
  69. package/dist/cjs/anyspend/react/hooks/useAnyspendCreateOnrampOrder.js +4 -6
  70. package/dist/cjs/anyspend/react/hooks/useCreateDepositFirstOrder.d.ts +3 -3
  71. package/dist/cjs/anyspend/react/hooks/useKycStatus.d.ts +3 -1
  72. package/dist/cjs/anyspend/react/hooks/useKycStatus.js +11 -7
  73. package/dist/cjs/anyspend/utils/chain.d.ts +39 -1
  74. package/dist/cjs/anyspend/utils/chain.js +31 -9
  75. package/dist/cjs/anyspend/utils/token.d.ts +2 -0
  76. package/dist/cjs/anyspend/utils/token.js +15 -1
  77. package/dist/cjs/app.shared.d.ts +9 -1
  78. package/dist/cjs/app.shared.js +28 -7
  79. package/dist/cjs/global-account/app.native.d.ts +1 -1
  80. package/dist/cjs/global-account/better-auth-client.d.ts +5161 -0
  81. package/dist/cjs/global-account/better-auth-client.js +42 -0
  82. package/dist/cjs/global-account/bsmnt.d.ts +2 -3
  83. package/dist/cjs/global-account/bsmnt.js +0 -6
  84. package/dist/cjs/global-account/bsmnt.native.d.ts +1 -1
  85. package/dist/cjs/global-account/client-manager.d.ts +7 -5
  86. package/dist/cjs/global-account/client-manager.js +19 -4
  87. package/dist/cjs/global-account/react/components/AvatarEditor/AvatarEditor.js +9 -12
  88. package/dist/cjs/global-account/react/components/B3DynamicModal.js +5 -2
  89. package/dist/cjs/global-account/react/components/B3Provider/AuthenticationProvider.d.ts +3 -1
  90. package/dist/cjs/global-account/react/components/B3Provider/AuthenticationProvider.js +2 -1
  91. package/dist/cjs/global-account/react/components/B3Provider/B3ConfigProvider.d.ts +4 -1
  92. package/dist/cjs/global-account/react/components/B3Provider/B3ConfigProvider.js +2 -1
  93. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.d.ts +22 -2
  94. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.js +32 -13
  95. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.native.js +6 -8
  96. package/dist/cjs/global-account/react/components/B3Provider/BetterAuthProvider.d.ts +16 -0
  97. package/dist/cjs/global-account/react/components/B3Provider/BetterAuthProvider.js +161 -0
  98. package/dist/cjs/global-account/react/components/B3Provider/LocalSDKProvider.d.ts +3 -1
  99. package/dist/cjs/global-account/react/components/B3Provider/LocalSDKProvider.js +3 -1
  100. package/dist/cjs/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.d.ts +3 -1
  101. package/dist/cjs/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.js +4 -2
  102. package/dist/cjs/global-account/react/components/LinkAccount/LinkedAccountItem.js +2 -1
  103. package/dist/cjs/global-account/react/components/ManageAccount/BottomNavigation.js +4 -2
  104. package/dist/cjs/global-account/react/components/ManageAccount/Header.js +36 -4
  105. package/dist/cjs/global-account/react/components/ManageAccount/HomeContent.js +4 -1
  106. package/dist/cjs/global-account/react/components/ManageAccount/ManageAccount.js +6 -0
  107. package/dist/cjs/global-account/react/components/ManageAccount/ProfileSection.js +17 -6
  108. package/dist/cjs/global-account/react/components/ManageAccount/SessionDurationContent.d.ts +5 -0
  109. package/dist/cjs/global-account/react/components/ManageAccount/SessionDurationContent.js +57 -0
  110. package/dist/cjs/global-account/react/components/ManageAccount/SettingsContent.js +14 -29
  111. package/dist/cjs/global-account/react/components/ManageAccount/SettingsProfileCard.js +27 -16
  112. package/dist/cjs/global-account/react/components/Send/Send.js +5 -2
  113. package/dist/cjs/global-account/react/components/SignInWithB3/BetterAuthResetPassword.d.ts +21 -0
  114. package/dist/cjs/global-account/react/components/SignInWithB3/BetterAuthResetPassword.js +68 -0
  115. package/dist/cjs/global-account/react/components/SignInWithB3/BetterAuthSignIn.d.ts +39 -0
  116. package/dist/cjs/global-account/react/components/SignInWithB3/BetterAuthSignIn.js +173 -0
  117. package/dist/cjs/global-account/react/components/SignInWithB3/BetterAuthVerifyEmail.d.ts +37 -0
  118. package/dist/cjs/global-account/react/components/SignInWithB3/BetterAuthVerifyEmail.js +85 -0
  119. package/dist/cjs/global-account/react/components/SignInWithB3/SignIn.js +14 -4
  120. package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Flow.d.ts +1 -1
  121. package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Flow.js +15 -10
  122. package/dist/cjs/global-account/react/components/SignInWithB3/components/AuthButton.js +10 -1
  123. package/dist/cjs/global-account/react/components/SignInWithB3/components/PasswordInput.d.ts +10 -0
  124. package/dist/cjs/global-account/react/components/SignInWithB3/components/PasswordInput.js +10 -0
  125. package/dist/cjs/global-account/react/components/SignInWithB3/steps/LoginStepBetterAuth.d.ts +8 -0
  126. package/dist/cjs/global-account/react/components/SignInWithB3/steps/LoginStepBetterAuth.js +141 -0
  127. package/dist/cjs/global-account/react/components/SignInWithB3/steps/LoginStepCustom.js +96 -15
  128. package/dist/cjs/global-account/react/components/SignInWithB3/utils/signInUtils.d.ts +7 -4
  129. package/dist/cjs/global-account/react/components/SignInWithB3/utils/signInUtils.js +21 -6
  130. package/dist/cjs/global-account/react/components/SingleUserSearchSelector/SingleUserSearchSelector.js +2 -1
  131. package/dist/cjs/global-account/react/components/Toast/ToastContext.d.ts +3 -0
  132. package/dist/cjs/global-account/react/components/Toast/ToastContext.js +30 -7
  133. package/dist/cjs/global-account/react/components/UserAvatar/UserAvatar.d.ts +18 -0
  134. package/dist/cjs/global-account/react/components/UserAvatar/UserAvatar.js +27 -0
  135. package/dist/cjs/global-account/react/components/custom/Button.d.ts +1 -1
  136. package/dist/cjs/global-account/react/components/index.d.ts +5 -1
  137. package/dist/cjs/global-account/react/components/index.js +12 -5
  138. package/dist/cjs/global-account/react/components/ui/button.d.ts +1 -1
  139. package/dist/cjs/global-account/react/hooks/index.d.ts +1 -1
  140. package/dist/cjs/global-account/react/hooks/index.js +5 -4
  141. package/dist/cjs/global-account/react/hooks/useAuth.d.ts +3 -3
  142. package/dist/cjs/global-account/react/hooks/useAuth.js +26 -15
  143. package/dist/cjs/global-account/react/hooks/useAuthentication.d.ts +1 -1
  144. package/dist/cjs/global-account/react/hooks/useAuthentication.js +24 -13
  145. package/dist/cjs/global-account/react/hooks/useAutoSelectWallet.d.ts +6 -3
  146. package/dist/cjs/global-account/react/hooks/useAutoSelectWallet.js +31 -3
  147. package/dist/cjs/global-account/react/hooks/useBetterAuth.d.ts +2608 -0
  148. package/dist/cjs/global-account/react/hooks/useBetterAuth.js +158 -0
  149. package/dist/cjs/global-account/react/hooks/useClient.d.ts +3 -3
  150. package/dist/cjs/global-account/react/hooks/useConnect.d.ts +2 -2
  151. package/dist/cjs/global-account/react/hooks/useFirstEOA.d.ts +8 -8
  152. package/dist/cjs/global-account/react/hooks/useNativeBalance.js +2 -2
  153. package/dist/cjs/global-account/react/hooks/useSiwe.d.ts +1 -1
  154. package/dist/cjs/global-account/react/hooks/useSiwe.native.d.ts +1 -1
  155. package/dist/cjs/global-account/react/hooks/useTWAuth.d.ts +1 -1
  156. package/dist/cjs/global-account/react/hooks/useTWAuth.js +0 -1
  157. package/dist/cjs/global-account/react/hooks/useUnifiedChainSwitchAndExecute.js +20 -17
  158. package/dist/cjs/global-account/react/stores/useModalStore.d.ts +42 -1
  159. package/dist/cjs/global-account/react/utils/createWagmiConfig.d.ts +4 -31
  160. package/dist/cjs/global-account/react/utils/createWagmiConfig.js +5 -24
  161. package/dist/cjs/global-account/react/utils/index.d.ts +0 -1
  162. package/dist/cjs/global-account/react/utils/index.js +0 -1
  163. package/dist/cjs/global-account/react/utils/profileDisplay.js +17 -18
  164. package/dist/cjs/global-account/types/b3-api.types.d.ts +5 -0
  165. package/dist/cjs/global-account/types/feature-flags.d.ts +5 -5
  166. package/dist/cjs/notifications/services/api.js +1 -0
  167. package/dist/cjs/shared/constants/chains/b3Chain.d.ts +0 -48
  168. package/dist/cjs/shared/constants/chains/b3Chain.js +2 -38
  169. package/dist/cjs/shared/constants/chains/b3Viem.d.ts +6 -0
  170. package/dist/cjs/shared/constants/chains/b3Viem.js +19 -0
  171. package/dist/cjs/shared/constants/chains/supported.d.ts +1 -49
  172. package/dist/cjs/shared/constants/chains/supported.js +8 -36
  173. package/dist/cjs/shared/constants/index.d.ts +1 -0
  174. package/dist/cjs/shared/constants/index.js +2 -1
  175. package/dist/cjs/shared/utils/chain-transformers.d.ts +4 -4
  176. package/dist/cjs/shared/utils/chain-transformers.js +38 -37
  177. package/dist/cjs/shared/utils/chains.d.ts +1 -1
  178. package/dist/cjs/shared/utils/chains.js +2 -2
  179. package/dist/cjs/shared/utils/session-duration.d.ts +15 -0
  180. package/dist/cjs/shared/utils/session-duration.js +69 -0
  181. package/dist/cjs/shared/utils/thirdweb-insights.js +2 -2
  182. package/dist/cjs/shared/utils/upload.d.ts +9 -0
  183. package/dist/cjs/shared/utils/upload.js +34 -0
  184. package/dist/cjs/wallet/react/components/ConnectWallet.d.ts +11 -0
  185. package/dist/cjs/wallet/react/components/ConnectWallet.js +467 -0
  186. package/dist/cjs/wallet/react/components/WalletProvider.d.ts +35 -0
  187. package/dist/cjs/wallet/react/components/WalletProvider.js +20 -0
  188. package/dist/cjs/wallet/react/hooks/useWalletDisconnect.d.ts +13 -0
  189. package/dist/cjs/wallet/react/hooks/useWalletDisconnect.js +22 -0
  190. package/dist/cjs/wallet/react/hooks/useWalletState.d.ts +31 -0
  191. package/dist/cjs/wallet/react/hooks/useWalletState.js +63 -0
  192. package/dist/cjs/wallet/react/index.d.ts +5 -0
  193. package/dist/cjs/wallet/react/index.js +16 -0
  194. package/dist/cjs/wallet/utils/createWalletConfig.d.ts +21 -0
  195. package/dist/cjs/wallet/utils/createWalletConfig.js +24 -0
  196. package/dist/esm/anyspend/constants/rpc.d.ts +2 -1
  197. package/dist/esm/anyspend/constants/rpc.js +3 -1
  198. package/dist/esm/anyspend/react/components/AnySpend.d.ts +2 -0
  199. package/dist/esm/anyspend/react/components/AnySpend.js +12 -4
  200. package/dist/esm/anyspend/react/components/AnySpendBondKit.d.ts +1 -1
  201. package/dist/esm/anyspend/react/components/AnySpendBondKit.js +2 -2
  202. package/dist/esm/anyspend/react/components/AnySpendBuySpin.d.ts +2 -1
  203. package/dist/esm/anyspend/react/components/AnySpendBuySpin.js +2 -2
  204. package/dist/esm/anyspend/react/components/AnySpendCollectorClubPurchase.d.ts +5 -1
  205. package/dist/esm/anyspend/react/components/AnySpendCollectorClubPurchase.js +2 -2
  206. package/dist/esm/anyspend/react/components/AnySpendCustom.d.ts +2 -0
  207. package/dist/esm/anyspend/react/components/AnySpendCustom.js +7 -3
  208. package/dist/esm/anyspend/react/components/AnySpendCustomExactIn.d.ts +2 -0
  209. package/dist/esm/anyspend/react/components/AnySpendCustomExactIn.js +21 -14
  210. package/dist/esm/anyspend/react/components/AnySpendDeposit.d.ts +3 -1
  211. package/dist/esm/anyspend/react/components/AnySpendDeposit.js +13 -7
  212. package/dist/esm/anyspend/react/components/AnySpendDepositUpside.d.ts +2 -1
  213. package/dist/esm/anyspend/react/components/AnySpendDepositUpside.js +2 -2
  214. package/dist/esm/anyspend/react/components/AnySpendNFT.d.ts +3 -1
  215. package/dist/esm/anyspend/react/components/AnySpendNFT.js +4 -4
  216. package/dist/esm/anyspend/react/components/AnySpendStakeB3.d.ts +2 -1
  217. package/dist/esm/anyspend/react/components/AnySpendStakeB3.js +4 -4
  218. package/dist/esm/anyspend/react/components/AnySpendStakeB3ExactIn.d.ts +2 -1
  219. package/dist/esm/anyspend/react/components/AnySpendStakeB3ExactIn.js +4 -4
  220. package/dist/esm/anyspend/react/components/AnySpendStakeUpside.d.ts +3 -1
  221. package/dist/esm/anyspend/react/components/AnySpendStakeUpside.js +2 -2
  222. package/dist/esm/anyspend/react/components/AnySpendStakeUpsideExactIn.d.ts +2 -1
  223. package/dist/esm/anyspend/react/components/AnySpendStakeUpsideExactIn.js +2 -2
  224. package/dist/esm/anyspend/react/components/AnySpendWorkflowTrigger.d.ts +3 -1
  225. package/dist/esm/anyspend/react/components/AnySpendWorkflowTrigger.js +2 -2
  226. package/dist/esm/anyspend/react/components/AnyspendDepositHype.d.ts +2 -1
  227. package/dist/esm/anyspend/react/components/AnyspendDepositHype.js +2 -2
  228. package/dist/esm/anyspend/react/components/AnyspendSignatureMint.d.ts +2 -1
  229. package/dist/esm/anyspend/react/components/AnyspendSignatureMint.js +2 -2
  230. package/dist/esm/anyspend/react/components/checkout/AnySpendCheckout.d.ts +5 -1
  231. package/dist/esm/anyspend/react/components/checkout/AnySpendCheckout.js +15 -6
  232. package/dist/esm/anyspend/react/components/checkout/AnySpendCheckoutTrigger.d.ts +3 -1
  233. package/dist/esm/anyspend/react/components/checkout/AnySpendCheckoutTrigger.js +2 -2
  234. package/dist/esm/anyspend/react/components/checkout/CartItemRow.d.ts +2 -1
  235. package/dist/esm/anyspend/react/components/checkout/CartSummary.d.ts +6 -4
  236. package/dist/esm/anyspend/react/components/checkout/CartSummary.js +13 -11
  237. package/dist/esm/anyspend/react/components/checkout/CheckoutCartPanel.d.ts +3 -1
  238. package/dist/esm/anyspend/react/components/checkout/CheckoutCartPanel.js +5 -4
  239. package/dist/esm/anyspend/react/components/checkout/CheckoutFormPanel.d.ts +3 -1
  240. package/dist/esm/anyspend/react/components/checkout/CheckoutFormPanel.js +2 -2
  241. package/dist/esm/anyspend/react/components/checkout/CheckoutPaymentPanel.d.ts +3 -1
  242. package/dist/esm/anyspend/react/components/checkout/CheckoutPaymentPanel.js +16 -8
  243. package/dist/esm/anyspend/react/components/checkout/CheckoutSuccess.d.ts +2 -1
  244. package/dist/esm/anyspend/react/components/checkout/CheckoutSuccess.js +5 -3
  245. package/dist/esm/anyspend/react/components/checkout/CryptoPayPanel.js +44 -24
  246. package/dist/esm/anyspend/react/components/checkout/DiscountCodeInput.d.ts +3 -1
  247. package/dist/esm/anyspend/react/components/checkout/DiscountCodeInput.js +3 -6
  248. package/dist/esm/anyspend/react/components/checkout/FiatCheckoutPanel.js +2 -3
  249. package/dist/esm/anyspend/react/components/checkout/KycGate.js +2 -3
  250. package/dist/esm/anyspend/react/components/checkout/PriceSkeleton.d.ts +5 -0
  251. package/dist/esm/anyspend/react/components/checkout/PriceSkeleton.js +6 -0
  252. package/dist/esm/anyspend/react/components/checkout/ShippingSelector.d.ts +3 -1
  253. package/dist/esm/anyspend/react/components/checkout/ShippingSelector.js +3 -2
  254. package/dist/esm/anyspend/react/components/common/CryptoPaymentMethod.d.ts +8 -0
  255. package/dist/esm/anyspend/react/components/common/CryptoPaymentMethod.js +9 -8
  256. package/dist/esm/anyspend/react/components/common/InsufficientDepositPayment.js +2 -2
  257. package/dist/esm/anyspend/react/components/common/OrderDetails.js +8 -3
  258. package/dist/esm/anyspend/react/components/common/OrderDetailsCollapsible.js +2 -2
  259. package/dist/esm/anyspend/react/components/common/OrderStatus.js +34 -3
  260. package/dist/esm/anyspend/react/components/common/StepProgress.d.ts +2 -0
  261. package/dist/esm/anyspend/react/components/common/StepProgress.js +4 -2
  262. package/dist/esm/anyspend/react/components/common/TransferCryptoDetails.js +2 -2
  263. package/dist/esm/anyspend/react/hooks/useAnyspendCreateOnrampOrder.js +5 -7
  264. package/dist/esm/anyspend/react/hooks/useCreateDepositFirstOrder.d.ts +3 -3
  265. package/dist/esm/anyspend/react/hooks/useKycStatus.d.ts +3 -1
  266. package/dist/esm/anyspend/react/hooks/useKycStatus.js +9 -5
  267. package/dist/esm/anyspend/utils/chain.d.ts +39 -1
  268. package/dist/esm/anyspend/utils/chain.js +33 -11
  269. package/dist/esm/anyspend/utils/token.d.ts +2 -0
  270. package/dist/esm/anyspend/utils/token.js +13 -0
  271. package/dist/esm/app.shared.d.ts +9 -1
  272. package/dist/esm/app.shared.js +26 -7
  273. package/dist/esm/global-account/app.native.d.ts +1 -1
  274. package/dist/esm/global-account/better-auth-client.d.ts +5161 -0
  275. package/dist/esm/global-account/better-auth-client.js +36 -0
  276. package/dist/esm/global-account/bsmnt.d.ts +2 -3
  277. package/dist/esm/global-account/bsmnt.js +0 -5
  278. package/dist/esm/global-account/bsmnt.native.d.ts +1 -1
  279. package/dist/esm/global-account/client-manager.d.ts +7 -5
  280. package/dist/esm/global-account/client-manager.js +19 -5
  281. package/dist/esm/global-account/react/components/AvatarEditor/AvatarEditor.js +9 -12
  282. package/dist/esm/global-account/react/components/B3DynamicModal.js +5 -2
  283. package/dist/esm/global-account/react/components/B3Provider/AuthenticationProvider.d.ts +3 -1
  284. package/dist/esm/global-account/react/components/B3Provider/AuthenticationProvider.js +2 -1
  285. package/dist/esm/global-account/react/components/B3Provider/B3ConfigProvider.d.ts +4 -1
  286. package/dist/esm/global-account/react/components/B3Provider/B3ConfigProvider.js +2 -1
  287. package/dist/esm/global-account/react/components/B3Provider/B3Provider.d.ts +22 -2
  288. package/dist/esm/global-account/react/components/B3Provider/B3Provider.js +28 -9
  289. package/dist/esm/global-account/react/components/B3Provider/B3Provider.native.js +4 -6
  290. package/dist/esm/global-account/react/components/B3Provider/BetterAuthProvider.d.ts +16 -0
  291. package/dist/esm/global-account/react/components/B3Provider/BetterAuthProvider.js +156 -0
  292. package/dist/esm/global-account/react/components/B3Provider/LocalSDKProvider.d.ts +3 -1
  293. package/dist/esm/global-account/react/components/B3Provider/LocalSDKProvider.js +3 -1
  294. package/dist/esm/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.d.ts +3 -1
  295. package/dist/esm/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.js +4 -2
  296. package/dist/esm/global-account/react/components/LinkAccount/LinkedAccountItem.js +2 -1
  297. package/dist/esm/global-account/react/components/ManageAccount/BottomNavigation.js +5 -3
  298. package/dist/esm/global-account/react/components/ManageAccount/Header.js +37 -5
  299. package/dist/esm/global-account/react/components/ManageAccount/HomeContent.js +4 -1
  300. package/dist/esm/global-account/react/components/ManageAccount/ManageAccount.js +7 -1
  301. package/dist/esm/global-account/react/components/ManageAccount/ProfileSection.js +16 -8
  302. package/dist/esm/global-account/react/components/ManageAccount/SessionDurationContent.d.ts +5 -0
  303. package/dist/esm/global-account/react/components/ManageAccount/SessionDurationContent.js +52 -0
  304. package/dist/esm/global-account/react/components/ManageAccount/SettingsContent.js +16 -31
  305. package/dist/esm/global-account/react/components/ManageAccount/SettingsProfileCard.js +27 -16
  306. package/dist/esm/global-account/react/components/Send/Send.js +5 -2
  307. package/dist/esm/global-account/react/components/SignInWithB3/BetterAuthResetPassword.d.ts +21 -0
  308. package/dist/esm/global-account/react/components/SignInWithB3/BetterAuthResetPassword.js +65 -0
  309. package/dist/esm/global-account/react/components/SignInWithB3/BetterAuthSignIn.d.ts +39 -0
  310. package/dist/esm/global-account/react/components/SignInWithB3/BetterAuthSignIn.js +170 -0
  311. package/dist/esm/global-account/react/components/SignInWithB3/BetterAuthVerifyEmail.d.ts +37 -0
  312. package/dist/esm/global-account/react/components/SignInWithB3/BetterAuthVerifyEmail.js +82 -0
  313. package/dist/esm/global-account/react/components/SignInWithB3/SignIn.js +15 -5
  314. package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Flow.d.ts +1 -1
  315. package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Flow.js +15 -10
  316. package/dist/esm/global-account/react/components/SignInWithB3/components/AuthButton.js +11 -2
  317. package/dist/esm/global-account/react/components/SignInWithB3/components/PasswordInput.d.ts +10 -0
  318. package/dist/esm/global-account/react/components/SignInWithB3/components/PasswordInput.js +7 -0
  319. package/dist/esm/global-account/react/components/SignInWithB3/steps/LoginStepBetterAuth.d.ts +8 -0
  320. package/dist/esm/global-account/react/components/SignInWithB3/steps/LoginStepBetterAuth.js +138 -0
  321. package/dist/esm/global-account/react/components/SignInWithB3/steps/LoginStepCustom.js +100 -19
  322. package/dist/esm/global-account/react/components/SignInWithB3/utils/signInUtils.d.ts +7 -4
  323. package/dist/esm/global-account/react/components/SignInWithB3/utils/signInUtils.js +20 -5
  324. package/dist/esm/global-account/react/components/SingleUserSearchSelector/SingleUserSearchSelector.js +2 -1
  325. package/dist/esm/global-account/react/components/Toast/ToastContext.d.ts +3 -0
  326. package/dist/esm/global-account/react/components/Toast/ToastContext.js +30 -7
  327. package/dist/esm/global-account/react/components/UserAvatar/UserAvatar.d.ts +18 -0
  328. package/dist/esm/global-account/react/components/UserAvatar/UserAvatar.js +21 -0
  329. package/dist/esm/global-account/react/components/custom/Button.d.ts +1 -1
  330. package/dist/esm/global-account/react/components/index.d.ts +5 -1
  331. package/dist/esm/global-account/react/components/index.js +5 -1
  332. package/dist/esm/global-account/react/components/ui/button.d.ts +1 -1
  333. package/dist/esm/global-account/react/hooks/index.d.ts +1 -1
  334. package/dist/esm/global-account/react/hooks/index.js +1 -1
  335. package/dist/esm/global-account/react/hooks/useAuth.d.ts +3 -3
  336. package/dist/esm/global-account/react/hooks/useAuth.js +28 -17
  337. package/dist/esm/global-account/react/hooks/useAuthentication.d.ts +1 -1
  338. package/dist/esm/global-account/react/hooks/useAuthentication.js +25 -14
  339. package/dist/esm/global-account/react/hooks/useAutoSelectWallet.d.ts +6 -3
  340. package/dist/esm/global-account/react/hooks/useAutoSelectWallet.js +33 -5
  341. package/dist/esm/global-account/react/hooks/useBetterAuth.d.ts +2608 -0
  342. package/dist/esm/global-account/react/hooks/useBetterAuth.js +150 -0
  343. package/dist/esm/global-account/react/hooks/useClient.d.ts +3 -3
  344. package/dist/esm/global-account/react/hooks/useConnect.d.ts +2 -2
  345. package/dist/esm/global-account/react/hooks/useFirstEOA.d.ts +8 -8
  346. package/dist/esm/global-account/react/hooks/useNativeBalance.js +1 -1
  347. package/dist/esm/global-account/react/hooks/useSiwe.d.ts +1 -1
  348. package/dist/esm/global-account/react/hooks/useSiwe.native.d.ts +1 -1
  349. package/dist/esm/global-account/react/hooks/useTWAuth.d.ts +1 -1
  350. package/dist/esm/global-account/react/hooks/useTWAuth.js +0 -1
  351. package/dist/esm/global-account/react/hooks/useUnifiedChainSwitchAndExecute.js +20 -17
  352. package/dist/esm/global-account/react/stores/useModalStore.d.ts +42 -1
  353. package/dist/esm/global-account/react/utils/createWagmiConfig.d.ts +4 -31
  354. package/dist/esm/global-account/react/utils/createWagmiConfig.js +5 -23
  355. package/dist/esm/global-account/react/utils/index.d.ts +0 -1
  356. package/dist/esm/global-account/react/utils/index.js +0 -1
  357. package/dist/esm/global-account/react/utils/profileDisplay.js +17 -18
  358. package/dist/esm/global-account/types/b3-api.types.d.ts +5 -0
  359. package/dist/esm/global-account/types/feature-flags.d.ts +5 -5
  360. package/dist/esm/notifications/services/api.js +1 -0
  361. package/dist/esm/shared/constants/chains/b3Chain.d.ts +0 -48
  362. package/dist/esm/shared/constants/chains/b3Chain.js +1 -35
  363. package/dist/esm/shared/constants/chains/b3Viem.d.ts +6 -0
  364. package/dist/esm/shared/constants/chains/b3Viem.js +16 -0
  365. package/dist/esm/shared/constants/chains/supported.d.ts +1 -49
  366. package/dist/esm/shared/constants/chains/supported.js +7 -35
  367. package/dist/esm/shared/constants/index.d.ts +1 -0
  368. package/dist/esm/shared/constants/index.js +1 -0
  369. package/dist/esm/shared/utils/chain-transformers.d.ts +4 -4
  370. package/dist/esm/shared/utils/chain-transformers.js +38 -37
  371. package/dist/esm/shared/utils/chains.d.ts +1 -1
  372. package/dist/esm/shared/utils/chains.js +2 -2
  373. package/dist/esm/shared/utils/session-duration.d.ts +15 -0
  374. package/dist/esm/shared/utils/session-duration.js +64 -0
  375. package/dist/esm/shared/utils/thirdweb-insights.js +2 -2
  376. package/dist/esm/shared/utils/upload.d.ts +9 -0
  377. package/dist/esm/shared/utils/upload.js +31 -0
  378. package/dist/esm/wallet/react/components/ConnectWallet.d.ts +11 -0
  379. package/dist/esm/wallet/react/components/ConnectWallet.js +431 -0
  380. package/dist/esm/wallet/react/components/WalletProvider.d.ts +35 -0
  381. package/dist/esm/wallet/react/components/WalletProvider.js +17 -0
  382. package/dist/esm/wallet/react/hooks/useWalletDisconnect.d.ts +13 -0
  383. package/dist/esm/wallet/react/hooks/useWalletDisconnect.js +19 -0
  384. package/dist/esm/wallet/react/hooks/useWalletState.d.ts +31 -0
  385. package/dist/esm/wallet/react/hooks/useWalletState.js +60 -0
  386. package/dist/esm/wallet/react/index.d.ts +5 -0
  387. package/dist/esm/wallet/react/index.js +8 -0
  388. package/dist/esm/wallet/utils/createWalletConfig.d.ts +21 -0
  389. package/dist/esm/wallet/utils/createWalletConfig.js +21 -0
  390. package/dist/styles/index.css +1 -1
  391. package/dist/types/anyspend/constants/rpc.d.ts +2 -1
  392. package/dist/types/anyspend/react/components/AnySpend.d.ts +2 -0
  393. package/dist/types/anyspend/react/components/AnySpendBondKit.d.ts +1 -1
  394. package/dist/types/anyspend/react/components/AnySpendBuySpin.d.ts +2 -1
  395. package/dist/types/anyspend/react/components/AnySpendCollectorClubPurchase.d.ts +5 -1
  396. package/dist/types/anyspend/react/components/AnySpendCustom.d.ts +2 -0
  397. package/dist/types/anyspend/react/components/AnySpendCustomExactIn.d.ts +2 -0
  398. package/dist/types/anyspend/react/components/AnySpendDeposit.d.ts +3 -1
  399. package/dist/types/anyspend/react/components/AnySpendDepositUpside.d.ts +2 -1
  400. package/dist/types/anyspend/react/components/AnySpendNFT.d.ts +3 -1
  401. package/dist/types/anyspend/react/components/AnySpendStakeB3.d.ts +2 -1
  402. package/dist/types/anyspend/react/components/AnySpendStakeB3ExactIn.d.ts +2 -1
  403. package/dist/types/anyspend/react/components/AnySpendStakeUpside.d.ts +3 -1
  404. package/dist/types/anyspend/react/components/AnySpendStakeUpsideExactIn.d.ts +2 -1
  405. package/dist/types/anyspend/react/components/AnySpendWorkflowTrigger.d.ts +3 -1
  406. package/dist/types/anyspend/react/components/AnyspendDepositHype.d.ts +2 -1
  407. package/dist/types/anyspend/react/components/AnyspendSignatureMint.d.ts +2 -1
  408. package/dist/types/anyspend/react/components/checkout/AnySpendCheckout.d.ts +5 -1
  409. package/dist/types/anyspend/react/components/checkout/AnySpendCheckoutTrigger.d.ts +3 -1
  410. package/dist/types/anyspend/react/components/checkout/CartItemRow.d.ts +2 -1
  411. package/dist/types/anyspend/react/components/checkout/CartSummary.d.ts +6 -4
  412. package/dist/types/anyspend/react/components/checkout/CheckoutCartPanel.d.ts +3 -1
  413. package/dist/types/anyspend/react/components/checkout/CheckoutFormPanel.d.ts +3 -1
  414. package/dist/types/anyspend/react/components/checkout/CheckoutPaymentPanel.d.ts +3 -1
  415. package/dist/types/anyspend/react/components/checkout/CheckoutSuccess.d.ts +2 -1
  416. package/dist/types/anyspend/react/components/checkout/DiscountCodeInput.d.ts +3 -1
  417. package/dist/types/anyspend/react/components/checkout/PriceSkeleton.d.ts +5 -0
  418. package/dist/types/anyspend/react/components/checkout/ShippingSelector.d.ts +3 -1
  419. package/dist/types/anyspend/react/components/common/CryptoPaymentMethod.d.ts +8 -0
  420. package/dist/types/anyspend/react/components/common/StepProgress.d.ts +2 -0
  421. package/dist/types/anyspend/react/hooks/useCreateDepositFirstOrder.d.ts +3 -3
  422. package/dist/types/anyspend/react/hooks/useKycStatus.d.ts +3 -1
  423. package/dist/types/anyspend/utils/chain.d.ts +39 -1
  424. package/dist/types/anyspend/utils/token.d.ts +2 -0
  425. package/dist/types/app.shared.d.ts +9 -1
  426. package/dist/types/global-account/app.native.d.ts +1 -1
  427. package/dist/types/global-account/better-auth-client.d.ts +5161 -0
  428. package/dist/types/global-account/bsmnt.d.ts +2 -3
  429. package/dist/types/global-account/bsmnt.native.d.ts +1 -1
  430. package/dist/types/global-account/client-manager.d.ts +7 -5
  431. package/dist/types/global-account/react/components/B3Provider/AuthenticationProvider.d.ts +3 -1
  432. package/dist/types/global-account/react/components/B3Provider/B3ConfigProvider.d.ts +4 -1
  433. package/dist/types/global-account/react/components/B3Provider/B3Provider.d.ts +22 -2
  434. package/dist/types/global-account/react/components/B3Provider/BetterAuthProvider.d.ts +16 -0
  435. package/dist/types/global-account/react/components/B3Provider/LocalSDKProvider.d.ts +3 -1
  436. package/dist/types/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.d.ts +3 -1
  437. package/dist/types/global-account/react/components/ManageAccount/SessionDurationContent.d.ts +5 -0
  438. package/dist/types/global-account/react/components/SignInWithB3/BetterAuthResetPassword.d.ts +21 -0
  439. package/dist/types/global-account/react/components/SignInWithB3/BetterAuthSignIn.d.ts +39 -0
  440. package/dist/types/global-account/react/components/SignInWithB3/BetterAuthVerifyEmail.d.ts +37 -0
  441. package/dist/types/global-account/react/components/SignInWithB3/SignInWithB3Flow.d.ts +1 -1
  442. package/dist/types/global-account/react/components/SignInWithB3/components/PasswordInput.d.ts +10 -0
  443. package/dist/types/global-account/react/components/SignInWithB3/steps/LoginStepBetterAuth.d.ts +8 -0
  444. package/dist/types/global-account/react/components/SignInWithB3/utils/signInUtils.d.ts +7 -4
  445. package/dist/types/global-account/react/components/Toast/ToastContext.d.ts +3 -0
  446. package/dist/types/global-account/react/components/UserAvatar/UserAvatar.d.ts +18 -0
  447. package/dist/types/global-account/react/components/custom/Button.d.ts +1 -1
  448. package/dist/types/global-account/react/components/index.d.ts +5 -1
  449. package/dist/types/global-account/react/components/ui/button.d.ts +1 -1
  450. package/dist/types/global-account/react/hooks/index.d.ts +1 -1
  451. package/dist/types/global-account/react/hooks/useAuth.d.ts +3 -3
  452. package/dist/types/global-account/react/hooks/useAuthentication.d.ts +1 -1
  453. package/dist/types/global-account/react/hooks/useAutoSelectWallet.d.ts +6 -3
  454. package/dist/types/global-account/react/hooks/useBetterAuth.d.ts +2608 -0
  455. package/dist/types/global-account/react/hooks/useClient.d.ts +3 -3
  456. package/dist/types/global-account/react/hooks/useConnect.d.ts +2 -2
  457. package/dist/types/global-account/react/hooks/useFirstEOA.d.ts +8 -8
  458. package/dist/types/global-account/react/hooks/useSiwe.d.ts +1 -1
  459. package/dist/types/global-account/react/hooks/useSiwe.native.d.ts +1 -1
  460. package/dist/types/global-account/react/hooks/useTWAuth.d.ts +1 -1
  461. package/dist/types/global-account/react/stores/useModalStore.d.ts +42 -1
  462. package/dist/types/global-account/react/utils/createWagmiConfig.d.ts +4 -31
  463. package/dist/types/global-account/react/utils/index.d.ts +0 -1
  464. package/dist/types/global-account/types/b3-api.types.d.ts +5 -0
  465. package/dist/types/global-account/types/feature-flags.d.ts +5 -5
  466. package/dist/types/shared/constants/chains/b3Chain.d.ts +0 -48
  467. package/dist/types/shared/constants/chains/b3Viem.d.ts +6 -0
  468. package/dist/types/shared/constants/chains/supported.d.ts +1 -49
  469. package/dist/types/shared/constants/index.d.ts +1 -0
  470. package/dist/types/shared/utils/chain-transformers.d.ts +4 -4
  471. package/dist/types/shared/utils/chains.d.ts +1 -1
  472. package/dist/types/shared/utils/session-duration.d.ts +15 -0
  473. package/dist/types/shared/utils/upload.d.ts +9 -0
  474. package/dist/types/wallet/react/components/ConnectWallet.d.ts +11 -0
  475. package/dist/types/wallet/react/components/WalletProvider.d.ts +35 -0
  476. package/dist/types/wallet/react/hooks/useWalletDisconnect.d.ts +13 -0
  477. package/dist/types/wallet/react/hooks/useWalletState.d.ts +31 -0
  478. package/dist/types/wallet/react/index.d.ts +5 -0
  479. package/dist/types/wallet/utils/createWalletConfig.d.ts +21 -0
  480. package/node_modules/@b3/chain-registry/chains.json +1160 -0
  481. package/node_modules/@b3/chain-registry/package.json +14 -0
  482. package/node_modules/@b3/chain-registry/src/index.ts +169 -0
  483. package/node_modules/@b3/chain-registry/tsconfig.json +16 -0
  484. package/package.json +90 -33
  485. package/src/anyspend/constants/rpc.ts +3 -1
  486. package/src/anyspend/react/components/AnySpend.tsx +24 -12
  487. package/src/anyspend/react/components/AnySpendBondKit.tsx +2 -0
  488. package/src/anyspend/react/components/AnySpendBuySpin.tsx +3 -0
  489. package/src/anyspend/react/components/AnySpendCollectorClubPurchase.tsx +6 -0
  490. package/src/anyspend/react/components/AnySpendCustom.tsx +12 -2
  491. package/src/anyspend/react/components/AnySpendCustomExactIn.tsx +29 -14
  492. package/src/anyspend/react/components/AnySpendDeposit.tsx +51 -34
  493. package/src/anyspend/react/components/AnySpendDepositUpside.tsx +3 -0
  494. package/src/anyspend/react/components/AnySpendNFT.tsx +6 -2
  495. package/src/anyspend/react/components/AnySpendStakeB3.tsx +5 -2
  496. package/src/anyspend/react/components/AnySpendStakeB3ExactIn.tsx +5 -2
  497. package/src/anyspend/react/components/AnySpendStakeUpside.tsx +4 -0
  498. package/src/anyspend/react/components/AnySpendStakeUpsideExactIn.tsx +3 -0
  499. package/src/anyspend/react/components/AnySpendWorkflowTrigger.tsx +4 -0
  500. package/src/anyspend/react/components/AnyspendDepositHype.tsx +3 -0
  501. package/src/anyspend/react/components/AnyspendSignatureMint.tsx +3 -0
  502. package/src/anyspend/react/components/checkout/AnySpendCheckout.tsx +29 -5
  503. package/src/anyspend/react/components/checkout/AnySpendCheckoutTrigger.tsx +4 -0
  504. package/src/anyspend/react/components/checkout/CartItemRow.tsx +2 -1
  505. package/src/anyspend/react/components/checkout/CartSummary.tsx +24 -20
  506. package/src/anyspend/react/components/checkout/CheckoutCartPanel.tsx +12 -3
  507. package/src/anyspend/react/components/checkout/CheckoutFormPanel.tsx +5 -0
  508. package/src/anyspend/react/components/checkout/CheckoutPaymentPanel.tsx +99 -83
  509. package/src/anyspend/react/components/checkout/CheckoutSuccess.tsx +13 -3
  510. package/src/anyspend/react/components/checkout/CryptoPayPanel.tsx +45 -27
  511. package/src/anyspend/react/components/checkout/DiscountCodeInput.tsx +15 -5
  512. package/src/anyspend/react/components/checkout/FiatCheckoutPanel.tsx +9 -3
  513. package/src/anyspend/react/components/checkout/KycGate.tsx +8 -3
  514. package/src/anyspend/react/components/checkout/PriceSkeleton.tsx +19 -0
  515. package/src/anyspend/react/components/checkout/ShippingSelector.tsx +5 -1
  516. package/src/anyspend/react/components/common/CryptoPaymentMethod.tsx +10 -8
  517. package/src/anyspend/react/components/common/InsufficientDepositPayment.tsx +2 -2
  518. package/src/anyspend/react/components/common/OrderDetails.tsx +10 -2
  519. package/src/anyspend/react/components/common/OrderDetailsCollapsible.tsx +4 -4
  520. package/src/anyspend/react/components/common/OrderStatus.tsx +38 -3
  521. package/src/anyspend/react/components/common/StepProgress.tsx +15 -5
  522. package/src/anyspend/react/components/common/TransferCryptoDetails.tsx +2 -2
  523. package/src/anyspend/react/hooks/useAnyspendCreateOnrampOrder.ts +5 -7
  524. package/src/anyspend/react/hooks/useAnyspendQuote.ts +13 -13
  525. package/src/anyspend/react/hooks/useCreateDepositFirstOrder.ts +4 -4
  526. package/src/anyspend/react/hooks/useKycStatus.ts +8 -5
  527. package/src/anyspend/types/api_req_res.ts +10 -5
  528. package/src/anyspend/utils/chain.ts +35 -10
  529. package/src/anyspend/utils/token.ts +14 -0
  530. package/src/app.shared.ts +29 -8
  531. package/src/global-account/app.native.ts +5 -1
  532. package/src/global-account/better-auth-client.ts +43 -0
  533. package/src/global-account/bsmnt.native.ts +5 -1
  534. package/src/global-account/bsmnt.ts +9 -8
  535. package/src/global-account/client-manager.ts +41 -9
  536. package/src/global-account/react/components/AvatarEditor/AvatarEditor.tsx +9 -12
  537. package/src/global-account/react/components/B3DynamicModal.tsx +5 -2
  538. package/src/global-account/react/components/B3Provider/AuthenticationProvider.tsx +4 -0
  539. package/src/global-account/react/components/B3Provider/B3ConfigProvider.tsx +6 -0
  540. package/src/global-account/react/components/B3Provider/B3Provider.native.tsx +16 -21
  541. package/src/global-account/react/components/B3Provider/B3Provider.tsx +94 -37
  542. package/src/global-account/react/components/B3Provider/BetterAuthProvider.tsx +173 -0
  543. package/src/global-account/react/components/B3Provider/LocalSDKProvider.tsx +5 -0
  544. package/src/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.tsx +17 -10
  545. package/src/global-account/react/components/LinkAccount/LinkedAccountItem.tsx +2 -1
  546. package/src/global-account/react/components/ManageAccount/BottomNavigation.tsx +18 -14
  547. package/src/global-account/react/components/ManageAccount/Header.tsx +71 -4
  548. package/src/global-account/react/components/ManageAccount/HomeContent.tsx +25 -19
  549. package/src/global-account/react/components/ManageAccount/ManageAccount.tsx +13 -0
  550. package/src/global-account/react/components/ManageAccount/ProfileSection.tsx +40 -15
  551. package/src/global-account/react/components/ManageAccount/SessionDurationContent.tsx +107 -0
  552. package/src/global-account/react/components/ManageAccount/SettingsContent.tsx +35 -54
  553. package/src/global-account/react/components/ManageAccount/SettingsProfileCard.tsx +31 -22
  554. package/src/global-account/react/components/Send/Send.tsx +8 -5
  555. package/src/global-account/react/components/SignInWithB3/BetterAuthResetPassword.tsx +145 -0
  556. package/src/global-account/react/components/SignInWithB3/BetterAuthSignIn.tsx +446 -0
  557. package/src/global-account/react/components/SignInWithB3/BetterAuthVerifyEmail.tsx +155 -0
  558. package/src/global-account/react/components/SignInWithB3/SignIn.tsx +42 -13
  559. package/src/global-account/react/components/SignInWithB3/SignInWithB3Flow.tsx +21 -8
  560. package/src/global-account/react/components/SignInWithB3/components/AuthButton.tsx +21 -2
  561. package/src/global-account/react/components/SignInWithB3/components/PasswordInput.tsx +62 -0
  562. package/src/global-account/react/components/SignInWithB3/steps/LoginStepBetterAuth.tsx +315 -0
  563. package/src/global-account/react/components/SignInWithB3/steps/LoginStepCustom.tsx +207 -54
  564. package/src/global-account/react/components/SignInWithB3/utils/signInUtils.ts +26 -8
  565. package/src/global-account/react/components/SingleUserSearchSelector/SingleUserSearchSelector.tsx +2 -1
  566. package/src/global-account/react/components/Toast/ToastContext.tsx +39 -7
  567. package/src/global-account/react/components/UserAvatar/UserAvatar.tsx +45 -0
  568. package/src/global-account/react/components/index.ts +11 -1
  569. package/src/global-account/react/components/ui/button.tsx +1 -2
  570. package/src/global-account/react/hooks/index.ts +1 -1
  571. package/src/global-account/react/hooks/useAuth.ts +30 -19
  572. package/src/global-account/react/hooks/useAuthentication.ts +26 -15
  573. package/src/global-account/react/hooks/useAutoSelectWallet.ts +40 -6
  574. package/src/global-account/react/hooks/useBetterAuth.ts +192 -0
  575. package/src/global-account/react/hooks/useClient.ts +11 -2
  576. package/src/global-account/react/hooks/useConnect.tsx +2 -2
  577. package/src/global-account/react/hooks/useNativeBalance.tsx +1 -1
  578. package/src/global-account/react/hooks/useSiwe.native.tsx +1 -1
  579. package/src/global-account/react/hooks/useSiwe.tsx +1 -1
  580. package/src/global-account/react/hooks/useTWAuth.tsx +1 -2
  581. package/src/global-account/react/hooks/useUnifiedChainSwitchAndExecute.ts +22 -20
  582. package/src/global-account/react/stores/useModalStore.ts +43 -0
  583. package/src/global-account/react/utils/createWagmiConfig.tsx +6 -25
  584. package/src/global-account/react/utils/index.ts +0 -1
  585. package/src/global-account/react/utils/profileDisplay.ts +21 -19
  586. package/src/global-account/types/b3-api.types.ts +5 -1
  587. package/src/notifications/services/api.ts +1 -0
  588. package/src/shared/constants/chains/b3Chain.ts +1 -40
  589. package/src/shared/constants/chains/b3Viem.ts +18 -0
  590. package/src/shared/constants/chains/supported.ts +9 -48
  591. package/src/shared/constants/index.ts +2 -0
  592. package/src/shared/utils/chain-transformers.ts +41 -39
  593. package/src/shared/utils/chains.ts +3 -2
  594. package/src/shared/utils/session-duration.ts +64 -0
  595. package/src/shared/utils/thirdweb-insights.ts +2 -2
  596. package/src/shared/utils/upload.ts +48 -0
  597. package/src/styles/index.css +27 -0
  598. package/src/types/torph.d.ts +4 -0
  599. package/src/wallet/__tests__/createWalletConfig.test.ts +39 -0
  600. package/src/wallet/react/components/ConnectWallet.tsx +665 -0
  601. package/src/wallet/react/components/WalletProvider.tsx +64 -0
  602. package/src/wallet/react/hooks/useWalletDisconnect.ts +22 -0
  603. package/src/wallet/react/hooks/useWalletState.ts +93 -0
  604. package/src/wallet/react/index.ts +10 -0
  605. package/src/wallet/utils/createWalletConfig.ts +39 -0
  606. package/dist/cjs/global-account/react/components/AvatarCreator/AvatarCreator.d.ts +0 -6
  607. package/dist/cjs/global-account/react/components/AvatarCreator/AvatarCreator.js +0 -54
  608. package/dist/cjs/global-account/react/components/ProfileAvatar.d.ts +0 -0
  609. package/dist/cjs/global-account/react/components/ProfileAvatar.js +0 -127
  610. package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Privy.d.ts +0 -10
  611. package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Privy.js +0 -46
  612. package/dist/cjs/global-account/react/hooks/useHandleConnectWithPrivy.d.ts +0 -11
  613. package/dist/cjs/global-account/react/hooks/useHandleConnectWithPrivy.js +0 -70
  614. package/dist/cjs/global-account/react/hooks/useRPMToken.d.ts +0 -7
  615. package/dist/cjs/global-account/react/hooks/useRPMToken.js +0 -11
  616. package/dist/cjs/global-account/react/utils/updateAvatar.d.ts +0 -4
  617. package/dist/cjs/global-account/react/utils/updateAvatar.js +0 -54
  618. package/dist/cjs/global-account/types/chain-networks.d.ts +0 -44
  619. package/dist/cjs/global-account/types/chain-networks.js +0 -48
  620. package/dist/cjs/shared/generated/chain-networks.json +0 -684
  621. package/dist/esm/global-account/react/components/AvatarCreator/AvatarCreator.d.ts +0 -6
  622. package/dist/esm/global-account/react/components/AvatarCreator/AvatarCreator.js +0 -51
  623. package/dist/esm/global-account/react/components/ProfileAvatar.d.ts +0 -0
  624. package/dist/esm/global-account/react/components/ProfileAvatar.js +0 -127
  625. package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Privy.d.ts +0 -10
  626. package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Privy.js +0 -43
  627. package/dist/esm/global-account/react/hooks/useHandleConnectWithPrivy.d.ts +0 -11
  628. package/dist/esm/global-account/react/hooks/useHandleConnectWithPrivy.js +0 -67
  629. package/dist/esm/global-account/react/hooks/useRPMToken.d.ts +0 -7
  630. package/dist/esm/global-account/react/hooks/useRPMToken.js +0 -8
  631. package/dist/esm/global-account/react/utils/updateAvatar.d.ts +0 -4
  632. package/dist/esm/global-account/react/utils/updateAvatar.js +0 -18
  633. package/dist/esm/global-account/types/chain-networks.d.ts +0 -44
  634. package/dist/esm/global-account/types/chain-networks.js +0 -45
  635. package/dist/esm/shared/generated/chain-networks.json +0 -684
  636. package/dist/types/global-account/react/components/AvatarCreator/AvatarCreator.d.ts +0 -6
  637. package/dist/types/global-account/react/components/ProfileAvatar.d.ts +0 -0
  638. package/dist/types/global-account/react/components/SignInWithB3/SignInWithB3Privy.d.ts +0 -10
  639. package/dist/types/global-account/react/hooks/useHandleConnectWithPrivy.d.ts +0 -11
  640. package/dist/types/global-account/react/hooks/useRPMToken.d.ts +0 -7
  641. package/dist/types/global-account/react/utils/updateAvatar.d.ts +0 -4
  642. package/dist/types/global-account/types/chain-networks.d.ts +0 -44
  643. package/src/global-account/react/components/AvatarCreator/AvatarCreator.tsx +0 -90
  644. package/src/global-account/react/components/ProfileAvatar.tsx +0 -138
  645. package/src/global-account/react/components/SignInWithB3/SignInWithB3Privy.tsx +0 -63
  646. package/src/global-account/react/hooks/useHandleConnectWithPrivy.tsx +0 -79
  647. package/src/global-account/react/hooks/useRPMToken.ts +0 -17
  648. package/src/global-account/react/utils/updateAvatar.ts +0 -21
  649. package/src/global-account/types/chain-networks.ts +0 -54
  650. package/src/shared/generated/chain-networks.json +0 -684
@@ -7,6 +7,7 @@ const utils_1 = require("../../../../shared/utils");
7
7
  const lucide_react_1 = require("lucide-react");
8
8
  const react_1 = require("react");
9
9
  const profileApi_1 = require("../../utils/profileApi");
10
+ const profileDisplay_1 = require("../../utils/profileDisplay");
10
11
  const IPFSMediaRenderer_1 = require("../IPFSMediaRenderer/IPFSMediaRenderer");
11
12
  const input_1 = require("../ui/input");
12
13
  /**
@@ -159,5 +160,5 @@ function SingleUserSearchSelector({ onSelectUser, profileTypeFilter, placeholder
159
160
  const getProfileTypeBadges = (profiles) => {
160
161
  return profiles.map(p => p.type);
161
162
  };
162
- return ((0, jsx_runtime_1.jsxs)("div", { className: (0, utils_1.cn)("single-user-search-selector b3-root relative w-full", className), ref: dropdownRef, children: [(0, jsx_runtime_1.jsxs)("div", { className: "single-user-search-input-wrapper relative flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Search, { className: "single-user-search-icon pointer-events-none absolute text-gray-400", style: { left: "12px", width: "16px", height: "16px" } }), (0, jsx_runtime_1.jsx)(input_1.Input, { ref: inputRef, type: "text", value: searchQuery, onChange: e => setSearchQuery(e.target.value), placeholder: placeholder, className: (0, utils_1.cn)("single-user-search-input w-full border-gray-300 focus:border-blue-500 focus:ring-blue-500"), style: { paddingLeft: "44px", paddingRight: "44px" } }), showClearButton && searchQuery && ((0, jsx_runtime_1.jsx)("button", { onClick: handleClear, className: "single-user-search-clear-button absolute text-gray-400 transition-colors hover:text-gray-600", style: { right: "12px" }, type: "button", children: (0, jsx_runtime_1.jsx)(lucide_react_1.X, { style: { width: "16px", height: "16px" } }) }))] }), isSearching && (0, jsx_runtime_1.jsx)("div", { className: "single-user-search-loading mt-2 text-sm text-gray-500", children: "Searching..." }), error && !isSearching && (0, jsx_runtime_1.jsx)("div", { className: "single-user-search-error mt-2 text-sm text-red-500", children: error }), showDropdown && searchResult && !isSearching && ((0, jsx_runtime_1.jsx)("div", { className: "single-user-search-dropdown absolute z-50 mt-2 w-full rounded-lg border border-gray-200 bg-white shadow-lg", children: (0, jsx_runtime_1.jsx)("button", { onClick: () => handleSelectUser(searchResult), className: "single-user-search-result-button w-full px-4 py-3 text-left transition-colors hover:bg-gray-50", type: "button", children: (0, jsx_runtime_1.jsxs)("div", { className: "flex items-start gap-3", children: [(0, jsx_runtime_1.jsx)("div", { className: "single-user-search-result-avatar h-11 w-11 shrink-0", children: (0, jsx_runtime_1.jsx)(IPFSMediaRenderer_1.IPFSMediaRenderer, { src: searchResult.avatar, alt: getDisplayName(searchResult), className: "h-full w-full rounded-full object-cover" }) }), (0, jsx_runtime_1.jsxs)("div", { className: "single-user-search-result-info min-w-0 flex-1 pt-0.5", children: [(0, jsx_runtime_1.jsx)("div", { className: "single-user-search-result-name text-base font-semibold text-gray-900", children: getDisplayName(searchResult) }), searchResult.address && ((0, jsx_runtime_1.jsxs)("div", { className: "single-user-search-result-address mt-1 font-mono text-xs text-gray-500", children: [searchResult.address.slice(0, 6), "...", searchResult.address.slice(-4)] })), searchResult.bio && ((0, jsx_runtime_1.jsx)("div", { className: "single-user-search-result-bio mt-1.5 line-clamp-2 text-sm text-gray-600", children: searchResult.bio })), showBadges && ((0, jsx_runtime_1.jsx)("div", { className: "single-user-search-result-badges mt-2 flex flex-wrap gap-1.5", children: getProfileTypeBadges(searchResult.profiles).map((type, index) => ((0, jsx_runtime_1.jsx)("span", { className: "single-user-search-result-badge inline-flex items-center rounded-full bg-blue-100 px-2.5 py-0.5 text-xs font-medium text-blue-800", children: type }, `${type}-${index}`))) }))] })] }) }) }))] }));
163
+ return ((0, jsx_runtime_1.jsxs)("div", { className: (0, utils_1.cn)("single-user-search-selector b3-root relative w-full", className), ref: dropdownRef, children: [(0, jsx_runtime_1.jsxs)("div", { className: "single-user-search-input-wrapper relative flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Search, { className: "single-user-search-icon pointer-events-none absolute text-gray-400", style: { left: "12px", width: "16px", height: "16px" } }), (0, jsx_runtime_1.jsx)(input_1.Input, { ref: inputRef, type: "text", value: searchQuery, onChange: e => setSearchQuery(e.target.value), placeholder: placeholder, className: (0, utils_1.cn)("single-user-search-input w-full border-gray-300 focus:border-blue-500 focus:ring-blue-500"), style: { paddingLeft: "44px", paddingRight: "44px" } }), showClearButton && searchQuery && ((0, jsx_runtime_1.jsx)("button", { onClick: handleClear, className: "single-user-search-clear-button absolute text-gray-400 transition-colors hover:text-gray-600", style: { right: "12px" }, type: "button", children: (0, jsx_runtime_1.jsx)(lucide_react_1.X, { style: { width: "16px", height: "16px" } }) }))] }), isSearching && (0, jsx_runtime_1.jsx)("div", { className: "single-user-search-loading mt-2 text-sm text-gray-500", children: "Searching..." }), error && !isSearching && (0, jsx_runtime_1.jsx)("div", { className: "single-user-search-error mt-2 text-sm text-red-500", children: error }), showDropdown && searchResult && !isSearching && ((0, jsx_runtime_1.jsx)("div", { className: "single-user-search-dropdown absolute z-50 mt-2 w-full rounded-lg border border-gray-200 bg-white shadow-lg", children: (0, jsx_runtime_1.jsx)("button", { onClick: () => handleSelectUser(searchResult), className: "single-user-search-result-button w-full px-4 py-3 text-left transition-colors hover:bg-gray-50", type: "button", children: (0, jsx_runtime_1.jsxs)("div", { className: "flex items-start gap-3", children: [(0, jsx_runtime_1.jsx)("div", { className: "single-user-search-result-avatar h-11 w-11 shrink-0", children: (0, jsx_runtime_1.jsx)(IPFSMediaRenderer_1.IPFSMediaRenderer, { src: (0, profileDisplay_1.validateImageUrl)(searchResult.avatar) ?? undefined, alt: getDisplayName(searchResult), className: "h-full w-full rounded-full object-cover" }) }), (0, jsx_runtime_1.jsxs)("div", { className: "single-user-search-result-info min-w-0 flex-1 pt-0.5", children: [(0, jsx_runtime_1.jsx)("div", { className: "single-user-search-result-name text-base font-semibold text-gray-900", children: getDisplayName(searchResult) }), searchResult.address && ((0, jsx_runtime_1.jsxs)("div", { className: "single-user-search-result-address mt-1 font-mono text-xs text-gray-500", children: [searchResult.address.slice(0, 6), "...", searchResult.address.slice(-4)] })), searchResult.bio && ((0, jsx_runtime_1.jsx)("div", { className: "single-user-search-result-bio mt-1.5 line-clamp-2 text-sm text-gray-600", children: searchResult.bio })), showBadges && ((0, jsx_runtime_1.jsx)("div", { className: "single-user-search-result-badges mt-2 flex flex-wrap gap-1.5", children: getProfileTypeBadges(searchResult.profiles).map((type, index) => ((0, jsx_runtime_1.jsx)("span", { className: "single-user-search-result-badge inline-flex items-center rounded-full bg-blue-100 px-2.5 py-0.5 text-xs font-medium text-blue-800", children: type }, `${type}-${index}`))) }))] })] }) }) }))] }));
163
164
  }
@@ -11,6 +11,9 @@ interface ToastContextType {
11
11
  addToast: (type: ToastType, message: string, duration?: number) => string;
12
12
  removeToast: (id: string) => void;
13
13
  clearAll: () => void;
14
+ headerMode: boolean;
15
+ setHeaderMode: (enabled: boolean) => void;
16
+ latestToast: ToastItem | null;
14
17
  }
15
18
  export declare function ToastProvider({ children }: {
16
19
  children: React.ReactNode;
@@ -8,6 +8,9 @@ const ToastContext = (0, react_1.createContext)(undefined);
8
8
  let globalToastCounter = 0;
9
9
  function ToastProvider({ children }) {
10
10
  const [toasts, setToasts] = (0, react_1.useState)([]);
11
+ const [headerMode, setHeaderMode] = (0, react_1.useState)(false);
12
+ const headerModeRef = (0, react_1.useRef)(false);
13
+ const [latestToast, setLatestToast] = (0, react_1.useState)(null);
11
14
  const timeoutsRef = (0, react_1.useRef)(new Map());
12
15
  const removeToast = (0, react_1.useCallback)((id) => {
13
16
  setToasts(prev => prev.filter(toast => toast.id !== id));
@@ -26,12 +29,23 @@ function ToastProvider({ children }) {
26
29
  duration,
27
30
  createdAt: Date.now(),
28
31
  };
29
- setToasts(prev => [...prev, newToast]);
30
- if (duration > 0) {
31
- const timeout = setTimeout(() => {
32
- removeToast(id);
33
- }, duration);
34
- timeoutsRef.current.set(id, timeout);
32
+ if (headerModeRef.current) {
33
+ setLatestToast(newToast);
34
+ if (duration > 0) {
35
+ const timeout = setTimeout(() => {
36
+ setLatestToast(null);
37
+ }, duration);
38
+ timeoutsRef.current.set(id, timeout);
39
+ }
40
+ }
41
+ else {
42
+ setToasts(prev => [...prev, newToast]);
43
+ if (duration > 0) {
44
+ const timeout = setTimeout(() => {
45
+ removeToast(id);
46
+ }, duration);
47
+ timeoutsRef.current.set(id, timeout);
48
+ }
35
49
  }
36
50
  return id;
37
51
  }, [removeToast]);
@@ -40,6 +54,15 @@ function ToastProvider({ children }) {
40
54
  timeoutsRef.current.clear();
41
55
  setToasts([]);
42
56
  }, []);
57
+ const setHeaderModeCallback = (0, react_1.useCallback)((enabled) => {
58
+ setHeaderMode(enabled);
59
+ headerModeRef.current = enabled;
60
+ if (!enabled) {
61
+ setLatestToast(null);
62
+ timeoutsRef.current.forEach(timeout => clearTimeout(timeout));
63
+ timeoutsRef.current.clear();
64
+ }
65
+ }, []);
43
66
  // Cleanup on unmount
44
67
  (0, react_1.useEffect)(() => {
45
68
  const timeouts = timeoutsRef.current;
@@ -48,7 +71,7 @@ function ToastProvider({ children }) {
48
71
  timeouts.clear();
49
72
  };
50
73
  }, []);
51
- return (0, jsx_runtime_1.jsx)(ToastContext.Provider, { value: { toasts, addToast, removeToast, clearAll }, children: children });
74
+ return ((0, jsx_runtime_1.jsx)(ToastContext.Provider, { value: { toasts, addToast, removeToast, clearAll, headerMode, setHeaderMode: setHeaderModeCallback, latestToast }, children: children }));
52
75
  }
53
76
  function useToastContext() {
54
77
  const context = (0, react_1.useContext)(ToastContext);
@@ -0,0 +1,18 @@
1
+ interface UserAvatarProps {
2
+ /** Direct avatar URL (IPFS or HTTP). Resolved and validated internally. */
3
+ avatarUrl?: string | null;
4
+ /** Seed for the generated fallback avatar + alt text. Use email, username, or address. */
5
+ name?: string;
6
+ /** Avatar size in pixels (square). */
7
+ size?: number;
8
+ /** Additional className for the outer container. */
9
+ className?: string;
10
+ }
11
+ /**
12
+ * Renders a user avatar with IPFS support and boring-avatars fallback.
13
+ *
14
+ * - If `avatarUrl` is provided and valid, renders via IPFSMediaRenderer.
15
+ * - On load failure or missing URL, falls back to a deterministic boring-avatars beam.
16
+ */
17
+ export declare function UserAvatar({ avatarUrl, name, size, className }: UserAvatarProps): import("react/jsx-runtime").JSX.Element;
18
+ export {};
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.UserAvatar = UserAvatar;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const profileDisplay_1 = require("../../../../global-account/react/utils/profileDisplay");
9
+ const constants_1 = require("../../../../shared/constants");
10
+ const boring_avatars_1 = __importDefault(require("boring-avatars"));
11
+ const react_1 = require("react");
12
+ const IPFSMediaRenderer_1 = require("../IPFSMediaRenderer/IPFSMediaRenderer");
13
+ /**
14
+ * Renders a user avatar with IPFS support and boring-avatars fallback.
15
+ *
16
+ * - If `avatarUrl` is provided and valid, renders via IPFSMediaRenderer.
17
+ * - On load failure or missing URL, falls back to a deterministic boring-avatars beam.
18
+ */
19
+ function UserAvatar({ avatarUrl, name = "user", size = 40, className }) {
20
+ const resolvedSrc = (0, profileDisplay_1.validateImageUrl)(avatarUrl);
21
+ const [imgError, setImgError] = (0, react_1.useState)(false);
22
+ (0, react_1.useEffect)(() => {
23
+ setImgError(false);
24
+ }, [avatarUrl]);
25
+ const handleImgError = (0, react_1.useCallback)(() => setImgError(true), []);
26
+ return ((0, jsx_runtime_1.jsx)("div", { className: className, style: { width: size, height: size, minWidth: size, minHeight: size }, children: resolvedSrc && !imgError ? ((0, jsx_runtime_1.jsx)("div", { onErrorCapture: handleImgError, className: "h-full w-full overflow-hidden rounded-full", children: (0, jsx_runtime_1.jsx)(IPFSMediaRenderer_1.IPFSMediaRenderer, { src: resolvedSrc, alt: name, className: "h-full w-full object-cover" }) })) : ((0, jsx_runtime_1.jsx)(boring_avatars_1.default, { name: name, variant: "beam", size: size, colors: constants_1.AVATAR_COLORS })) }));
27
+ }
@@ -1,6 +1,6 @@
1
1
  import * as React from "react";
2
2
  declare const buttonVariants: (props?: ({
3
- variant?: "link" | "default" | "b3" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
3
+ variant?: "default" | "link" | "b3" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
4
4
  size?: "default" | "icon" | "sm" | "lg" | null | undefined;
5
5
  } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
6
6
  interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
@@ -1,19 +1,23 @@
1
1
  export { B3DynamicModal } from "./B3DynamicModal";
2
2
  export { B3Provider } from "./B3Provider/B3Provider";
3
+ export type { AuthStrategy } from "./B3Provider/B3ConfigProvider";
3
4
  export { RelayKitProviderWrapper } from "./B3Provider/RelayKitProviderWrapper";
4
5
  export { useB3 } from "./B3Provider/useB3";
5
6
  export { useB3Account } from "./B3Provider/useB3Account";
6
7
  export { useB3Config } from "./B3Provider/useB3Config";
7
8
  export { StyleRoot } from "./StyleRoot";
9
+ export { BetterAuthResetPassword, type BetterAuthResetPasswordProps } from "./SignInWithB3/BetterAuthResetPassword";
10
+ export { BetterAuthSignIn, type BetterAuthSignInProps } from "./SignInWithB3/BetterAuthSignIn";
11
+ export { BetterAuthVerifyEmail, type BetterAuthVerifyEmailProps, type BetterAuthVerifyEmailState, } from "./SignInWithB3/BetterAuthVerifyEmail";
8
12
  export { AuthButton } from "./SignInWithB3/components/AuthButton";
9
13
  export { PermissionItem } from "./SignInWithB3/components/PermissionItem";
10
14
  export { WalletRow } from "./SignInWithB3/components/WalletRow";
11
15
  export { SignInWithB3 } from "./SignInWithB3/SignInWithB3";
12
16
  export { SignInWithB3Flow } from "./SignInWithB3/SignInWithB3Flow";
13
- export { SignInWithB3Privy } from "./SignInWithB3/SignInWithB3Privy";
14
17
  export { LoginStepContainer } from "./SignInWithB3/steps/LoginStep";
15
18
  export { getConnectOptionsFromStrategy, isWalletType, type AllowedStrategy } from "./SignInWithB3/utils/signInUtils";
16
19
  export { ManageAccount } from "./ManageAccount/ManageAccount";
20
+ export { UserAvatar } from "./UserAvatar/UserAvatar";
17
21
  export { Deposit } from "./Deposit/Deposit";
18
22
  export { Send } from "./Send/Send";
19
23
  export { IPFSMediaRenderer } from "./IPFSMediaRenderer/IPFSMediaRenderer";
@@ -3,9 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.DialogDescription = exports.DialogContent = exports.DialogClose = exports.Dialog = exports.CommandShortcut = exports.CommandSeparator = exports.CommandList = exports.CommandItem = exports.CommandInput = exports.CommandGroup = exports.CommandEmpty = exports.CommandDialog = exports.Command = exports.buttonVariants = exports.Button = exports.badgeVariants = exports.Badge = exports.WalletConnectorIcon = exports.StaggeredFadeLoader = exports.CopyToClipboard = exports.ClientOnly = exports.customButtonVariants = exports.CustomButton = exports.SingleUserSearchSelector = exports.SendERC20Button = exports.SendETHButton = exports.MintButton = exports.AccountAssets = exports.RequestPermissionsButton = exports.RequestPermissions = exports.IPFSMediaRenderer = exports.Send = exports.Deposit = exports.ManageAccount = exports.isWalletType = exports.getConnectOptionsFromStrategy = exports.LoginStepContainer = exports.SignInWithB3Privy = exports.SignInWithB3Flow = exports.SignInWithB3 = exports.WalletRow = exports.PermissionItem = exports.AuthButton = exports.StyleRoot = exports.useB3Config = exports.useB3Account = exports.useB3 = exports.RelayKitProviderWrapper = exports.B3Provider = exports.B3DynamicModal = void 0;
7
- exports.toast = exports.AnimatedLottie = exports.TransitionPanel = exports.TooltipTrigger = exports.TooltipProvider = exports.TooltipContent = exports.Tooltip = exports.TextShimmer = exports.TextLoop = exports.TabTrigger = exports.TabsTransitionWrapper = exports.TabsList = exports.TabsContent = exports.Tabs = exports.TabTriggerPrimitive = exports.TabsPrimitive = exports.TabsListPrimitive = exports.TabsContentPrimitive = exports.Skeleton = exports.ShinyButton = exports.ScrollBar = exports.ScrollArea = exports.PopoverTrigger = exports.PopoverContent = exports.Popover = exports.Loading = exports.Input = exports.GlareCardRounded = exports.GlareCard = exports.DropdownMenuTrigger = exports.DropdownMenuSeparator = exports.DropdownMenuItem = exports.DropdownMenuContent = exports.DropdownMenu = exports.DrawerTrigger = exports.DrawerTitle = exports.DrawerPortal = exports.DrawerOverlay = exports.DrawerHeader = exports.DrawerFooter = exports.DrawerDescription = exports.DrawerContent = exports.DrawerClose = exports.Drawer = exports.DialogTrigger = exports.DialogTitle = exports.DialogPortal = exports.DialogOverlay = exports.DialogHeader = exports.DialogFooter = void 0;
8
- exports.WalletImage = exports.useToastContext = exports.ToastProvider = exports.ToastContainer = exports.Toast = void 0;
6
+ exports.Dialog = exports.CommandShortcut = exports.CommandSeparator = exports.CommandList = exports.CommandItem = exports.CommandInput = exports.CommandGroup = exports.CommandEmpty = exports.CommandDialog = exports.Command = exports.buttonVariants = exports.Button = exports.badgeVariants = exports.Badge = exports.WalletConnectorIcon = exports.StaggeredFadeLoader = exports.CopyToClipboard = exports.ClientOnly = exports.customButtonVariants = exports.CustomButton = exports.SingleUserSearchSelector = exports.SendERC20Button = exports.SendETHButton = exports.MintButton = exports.AccountAssets = exports.RequestPermissionsButton = exports.RequestPermissions = exports.IPFSMediaRenderer = exports.Send = exports.Deposit = exports.UserAvatar = exports.ManageAccount = exports.isWalletType = exports.getConnectOptionsFromStrategy = exports.LoginStepContainer = exports.SignInWithB3Flow = exports.SignInWithB3 = exports.WalletRow = exports.PermissionItem = exports.AuthButton = exports.BetterAuthVerifyEmail = exports.BetterAuthSignIn = exports.BetterAuthResetPassword = exports.StyleRoot = exports.useB3Config = exports.useB3Account = exports.useB3 = exports.RelayKitProviderWrapper = exports.B3Provider = exports.B3DynamicModal = void 0;
7
+ exports.TooltipTrigger = exports.TooltipProvider = exports.TooltipContent = exports.Tooltip = exports.TextShimmer = exports.TextLoop = exports.TabTrigger = exports.TabsTransitionWrapper = exports.TabsList = exports.TabsContent = exports.Tabs = exports.TabTriggerPrimitive = exports.TabsPrimitive = exports.TabsListPrimitive = exports.TabsContentPrimitive = exports.Skeleton = exports.ShinyButton = exports.ScrollBar = exports.ScrollArea = exports.PopoverTrigger = exports.PopoverContent = exports.Popover = exports.Loading = exports.Input = exports.GlareCardRounded = exports.GlareCard = exports.DropdownMenuTrigger = exports.DropdownMenuSeparator = exports.DropdownMenuItem = exports.DropdownMenuContent = exports.DropdownMenu = exports.DrawerTrigger = exports.DrawerTitle = exports.DrawerPortal = exports.DrawerOverlay = exports.DrawerHeader = exports.DrawerFooter = exports.DrawerDescription = exports.DrawerContent = exports.DrawerClose = exports.Drawer = exports.DialogTrigger = exports.DialogTitle = exports.DialogPortal = exports.DialogOverlay = exports.DialogHeader = exports.DialogFooter = exports.DialogDescription = exports.DialogContent = exports.DialogClose = void 0;
8
+ exports.WalletImage = exports.useToastContext = exports.ToastProvider = exports.ToastContainer = exports.Toast = exports.toast = exports.AnimatedLottie = exports.TransitionPanel = void 0;
9
9
  // TODO woj: Barrel file for all components, this might be reason of bundle size issues
10
10
  // Core Components
11
11
  var B3DynamicModal_1 = require("./B3DynamicModal");
@@ -23,6 +23,12 @@ Object.defineProperty(exports, "useB3Config", { enumerable: true, get: function
23
23
  var StyleRoot_1 = require("./StyleRoot");
24
24
  Object.defineProperty(exports, "StyleRoot", { enumerable: true, get: function () { return StyleRoot_1.StyleRoot; } });
25
25
  // SignInWithB3 Components
26
+ var BetterAuthResetPassword_1 = require("./SignInWithB3/BetterAuthResetPassword");
27
+ Object.defineProperty(exports, "BetterAuthResetPassword", { enumerable: true, get: function () { return BetterAuthResetPassword_1.BetterAuthResetPassword; } });
28
+ var BetterAuthSignIn_1 = require("./SignInWithB3/BetterAuthSignIn");
29
+ Object.defineProperty(exports, "BetterAuthSignIn", { enumerable: true, get: function () { return BetterAuthSignIn_1.BetterAuthSignIn; } });
30
+ var BetterAuthVerifyEmail_1 = require("./SignInWithB3/BetterAuthVerifyEmail");
31
+ Object.defineProperty(exports, "BetterAuthVerifyEmail", { enumerable: true, get: function () { return BetterAuthVerifyEmail_1.BetterAuthVerifyEmail; } });
26
32
  var AuthButton_1 = require("./SignInWithB3/components/AuthButton");
27
33
  Object.defineProperty(exports, "AuthButton", { enumerable: true, get: function () { return AuthButton_1.AuthButton; } });
28
34
  var PermissionItem_1 = require("./SignInWithB3/components/PermissionItem");
@@ -33,8 +39,6 @@ var SignInWithB3_1 = require("./SignInWithB3/SignInWithB3");
33
39
  Object.defineProperty(exports, "SignInWithB3", { enumerable: true, get: function () { return SignInWithB3_1.SignInWithB3; } });
34
40
  var SignInWithB3Flow_1 = require("./SignInWithB3/SignInWithB3Flow");
35
41
  Object.defineProperty(exports, "SignInWithB3Flow", { enumerable: true, get: function () { return SignInWithB3Flow_1.SignInWithB3Flow; } });
36
- var SignInWithB3Privy_1 = require("./SignInWithB3/SignInWithB3Privy");
37
- Object.defineProperty(exports, "SignInWithB3Privy", { enumerable: true, get: function () { return SignInWithB3Privy_1.SignInWithB3Privy; } });
38
42
  var LoginStep_1 = require("./SignInWithB3/steps/LoginStep");
39
43
  Object.defineProperty(exports, "LoginStepContainer", { enumerable: true, get: function () { return LoginStep_1.LoginStepContainer; } });
40
44
  var signInUtils_1 = require("./SignInWithB3/utils/signInUtils");
@@ -43,6 +47,9 @@ Object.defineProperty(exports, "isWalletType", { enumerable: true, get: function
43
47
  // ManageAccount Components
44
48
  var ManageAccount_1 = require("./ManageAccount/ManageAccount");
45
49
  Object.defineProperty(exports, "ManageAccount", { enumerable: true, get: function () { return ManageAccount_1.ManageAccount; } });
50
+ // UserAvatar
51
+ var UserAvatar_1 = require("./UserAvatar/UserAvatar");
52
+ Object.defineProperty(exports, "UserAvatar", { enumerable: true, get: function () { return UserAvatar_1.UserAvatar; } });
46
53
  // Deposit Components
47
54
  var Deposit_1 = require("./Deposit/Deposit");
48
55
  Object.defineProperty(exports, "Deposit", { enumerable: true, get: function () { return Deposit_1.Deposit; } });
@@ -1,7 +1,7 @@
1
1
  import { type VariantProps } from "class-variance-authority";
2
2
  import * as React from "react";
3
3
  declare const buttonVariants: (props?: ({
4
- variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
4
+ variant?: "default" | "link" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
5
5
  size?: "default" | "icon" | "sm" | "lg" | null | undefined;
6
6
  } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
7
7
  export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
@@ -5,6 +5,7 @@ export { useAddTWSessionKey } from "./useAddTWSessionKey";
5
5
  export { useAnalytics } from "./useAnalytics";
6
6
  export { useAuth } from "./useAuth";
7
7
  export { useAuthentication } from "./useAuthentication";
8
+ export { useBetterAuth, EmailVerificationRequiredError } from "./useBetterAuth";
8
9
  export { useB3BalanceFromAddresses } from "./useB3BalanceFromAddresses";
9
10
  export { useB3EnsName } from "./useB3EnsName";
10
11
  export { useChainSwitchWithAction } from "./useChainSwitchWithAction";
@@ -16,7 +17,6 @@ export { useFirstEOA } from "./useFirstEOA";
16
17
  export { useGetAllTWSigners, type TWSignerWithMetadata } from "./useGetAllTWSigners";
17
18
  export { useGetGeo } from "./useGetGeo";
18
19
  export { useGlobalAccount } from "./useGlobalAccount";
19
- export { useHandleConnectWithPrivy } from "./useHandleConnectWithPrivy";
20
20
  export { useHasMounted } from "./useHasMounted";
21
21
  export { useIsMobile } from "./useIsMobile";
22
22
  export { useIsomorphicLayoutEffect } from "./useIsomorphicLayoutEffect";
@@ -14,8 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.useURLParams = exports.useUnifiedChainSwitchAndExecute = exports.useTokensFromAddress = exports.useTokenPriceWithFallback = exports.useTokenPrice = exports.useTokenFromUrl = exports.useTokenData = exports.useTokenBalancesByChain = exports.useTokenBalanceDirect = exports.useTokenBalance = exports.useSiwe = exports.useSimCollectibles = exports.useSimTokenBalance = exports.useSimSvmBalance = exports.useSimBalance = exports.useSearchParamsSSR = exports.useRouter = exports.useRemoveSessionKey = exports.useQueryBSMNT = exports.useQueryB3 = exports.useProfileSettings = exports.useProfilePreference = exports.useProfile = exports.useDisplayName = exports.useOneBalance = exports.useNotifications = exports.useNativeBalanceFromRPC = exports.useNativeBalance = exports.useMediaQuery = exports.useIsomorphicLayoutEffect = exports.useIsMobile = exports.useHasMounted = exports.useHandleConnectWithPrivy = exports.useGlobalAccount = exports.useGetGeo = exports.useGetAllTWSigners = exports.useFirstEOA = exports.useExchangeRate = exports.useConnect = exports.useClient = exports.useChainSwitchWithAction = exports.useB3EnsName = exports.useB3BalanceFromAddresses = exports.useAuthentication = exports.useAuth = exports.useAnalytics = exports.useAddTWSessionKey = exports.useAccountWallet = exports.useAccountAssets = exports.createWagmiConfig = void 0;
18
- exports.useUser = void 0;
17
+ exports.useUnifiedChainSwitchAndExecute = exports.useTokensFromAddress = exports.useTokenPriceWithFallback = exports.useTokenPrice = exports.useTokenFromUrl = exports.useTokenData = exports.useTokenBalancesByChain = exports.useTokenBalanceDirect = exports.useTokenBalance = exports.useSiwe = exports.useSimCollectibles = exports.useSimTokenBalance = exports.useSimSvmBalance = exports.useSimBalance = exports.useSearchParamsSSR = exports.useRouter = exports.useRemoveSessionKey = exports.useQueryBSMNT = exports.useQueryB3 = exports.useProfileSettings = exports.useProfilePreference = exports.useProfile = exports.useDisplayName = exports.useOneBalance = exports.useNotifications = exports.useNativeBalanceFromRPC = exports.useNativeBalance = exports.useMediaQuery = exports.useIsomorphicLayoutEffect = exports.useIsMobile = exports.useHasMounted = exports.useGlobalAccount = exports.useGetGeo = exports.useGetAllTWSigners = exports.useFirstEOA = exports.useExchangeRate = exports.useConnect = exports.useClient = exports.useChainSwitchWithAction = exports.useB3EnsName = exports.useB3BalanceFromAddresses = exports.EmailVerificationRequiredError = exports.useBetterAuth = exports.useAuthentication = exports.useAuth = exports.useAnalytics = exports.useAddTWSessionKey = exports.useAccountWallet = exports.useAccountAssets = exports.createWagmiConfig = void 0;
18
+ exports.useUser = exports.useURLParams = void 0;
19
19
  var createWagmiConfig_1 = require("../utils/createWagmiConfig");
20
20
  Object.defineProperty(exports, "createWagmiConfig", { enumerable: true, get: function () { return createWagmiConfig_1.createWagmiConfig; } });
21
21
  var useAccountAssets_1 = require("./useAccountAssets");
@@ -30,6 +30,9 @@ var useAuth_1 = require("./useAuth");
30
30
  Object.defineProperty(exports, "useAuth", { enumerable: true, get: function () { return useAuth_1.useAuth; } });
31
31
  var useAuthentication_1 = require("./useAuthentication");
32
32
  Object.defineProperty(exports, "useAuthentication", { enumerable: true, get: function () { return useAuthentication_1.useAuthentication; } });
33
+ var useBetterAuth_1 = require("./useBetterAuth");
34
+ Object.defineProperty(exports, "useBetterAuth", { enumerable: true, get: function () { return useBetterAuth_1.useBetterAuth; } });
35
+ Object.defineProperty(exports, "EmailVerificationRequiredError", { enumerable: true, get: function () { return useBetterAuth_1.EmailVerificationRequiredError; } });
33
36
  var useB3BalanceFromAddresses_1 = require("./useB3BalanceFromAddresses");
34
37
  Object.defineProperty(exports, "useB3BalanceFromAddresses", { enumerable: true, get: function () { return useB3BalanceFromAddresses_1.useB3BalanceFromAddresses; } });
35
38
  var useB3EnsName_1 = require("./useB3EnsName");
@@ -51,8 +54,6 @@ var useGetGeo_1 = require("./useGetGeo");
51
54
  Object.defineProperty(exports, "useGetGeo", { enumerable: true, get: function () { return useGetGeo_1.useGetGeo; } });
52
55
  var useGlobalAccount_1 = require("./useGlobalAccount");
53
56
  Object.defineProperty(exports, "useGlobalAccount", { enumerable: true, get: function () { return useGlobalAccount_1.useGlobalAccount; } });
54
- var useHandleConnectWithPrivy_1 = require("./useHandleConnectWithPrivy");
55
- Object.defineProperty(exports, "useHandleConnectWithPrivy", { enumerable: true, get: function () { return useHandleConnectWithPrivy_1.useHandleConnectWithPrivy; } });
56
57
  var useHasMounted_1 = require("./useHasMounted");
57
58
  Object.defineProperty(exports, "useHasMounted", { enumerable: true, get: function () { return useHasMounted_1.useHasMounted; } });
58
59
  var useIsMobile_1 = require("./useIsMobile");
@@ -6,8 +6,8 @@ import { preAuthenticate } from "thirdweb/wallets/in-app";
6
6
  * This hook provides 1:1 feature parity with useAuthentication.ts
7
7
  */
8
8
  export declare function useAuth(): {
9
- authenticate: (accessToken: string, partnerId: string, strategy?: string) => Promise<import("@feathersjs/authentication").AuthenticationResult>;
10
- reAuthenticate: () => Promise<import("@feathersjs/authentication").AuthenticationResult>;
9
+ authenticate: (accessToken: string, partnerId: string, strategy?: string) => Promise<Record<string, any>>;
10
+ reAuthenticate: () => Promise<Record<string, any>>;
11
11
  logout: (callback?: () => void) => Promise<void>;
12
12
  isAuthenticated: boolean;
13
13
  isReady: boolean;
@@ -70,6 +70,6 @@ export declare function useAuth(): {
70
70
  turnkeyOtpId?: string | undefined;
71
71
  };
72
72
  } | undefined;
73
- refetchUser: () => Promise<import("@feathersjs/authentication").AuthenticationResult>;
73
+ refetchUser: () => Promise<Record<string, any>>;
74
74
  setUser: (newUser?: import("@b3dotfun/b3-api").Users) => void;
75
75
  };
@@ -27,7 +27,7 @@ const debug = (0, debug_1.debugB3React)("useAuth");
27
27
  * This hook provides 1:1 feature parity with useAuthentication.ts
28
28
  */
29
29
  function useAuth() {
30
- const { onConnectCallback } = (0, react_2.useContext)(LocalSDKProvider_1.LocalSDKContext);
30
+ const { onConnectCallback, disableBSMNTAuthentication } = (0, react_2.useContext)(LocalSDKProvider_1.LocalSDKContext);
31
31
  const { disconnect } = (0, react_3.useDisconnect)();
32
32
  const wallets = (0, react_3.useConnectedWallets)();
33
33
  const activeWallet = (0, react_3.useActiveWallet)();
@@ -44,7 +44,7 @@ function useAuth() {
44
44
  const useAutoConnectLoadingPrevious = (0, react_2.useRef)(false);
45
45
  const referralCode = (0, useSearchParamsSSR_1.useSearchParam)("referralCode");
46
46
  const { partnerId } = (0, react_1.useB3Config)();
47
- const wagmiConfig = (0, createWagmiConfig_1.getCachedWagmiConfig)({ partnerId });
47
+ const wagmiConfig = (0, react_2.useMemo)(() => (0, createWagmiConfig_1.createWagmiConfig)({ partnerId }), [partnerId]);
48
48
  const { connect } = (0, wagmi_1.useConnect)();
49
49
  const activeWagmiAccount = (0, wagmi_1.useAccount)();
50
50
  const { switchAccount } = (0, wagmi_1.useSwitchAccount)();
@@ -69,8 +69,10 @@ function useAuth() {
69
69
  }
70
70
  // Authenticate with BSMNT
71
71
  try {
72
- const b3Jwt = await (0, bsmnt_1.authenticateWithB3JWT)(response.accessToken);
73
- debug("BSMNT re-authentication successful", b3Jwt);
72
+ if (!disableBSMNTAuthentication) {
73
+ const b3Jwt = await (0, bsmnt_1.authenticateWithB3JWT)(response.accessToken);
74
+ debug("BSMNT re-authentication successful", b3Jwt);
75
+ }
74
76
  }
75
77
  catch (bsmntError) {
76
78
  // BSMNT authentication failure shouldn't block the main auth flow
@@ -82,7 +84,7 @@ function useAuth() {
82
84
  debug("Re-authentication failed", err);
83
85
  throw err;
84
86
  }
85
- }, [setUser]);
87
+ }, [setUser, disableBSMNTAuthentication]);
86
88
  const syncWagmi = (0, react_2.useCallback)(async () => {
87
89
  function syncWagmiFunc() {
88
90
  const connectors = (0, core_1.getConnectors)(wagmiConfig);
@@ -126,9 +128,7 @@ function useAuth() {
126
128
  });
127
129
  }
128
130
  syncWagmiFunc();
129
- // wagmi config shouldn't change
130
- // eslint-disable-next-line react-hooks/exhaustive-deps
131
- }, [partnerId, wallets]);
131
+ }, [wagmiConfig, wallets, connect, switchAccount]);
132
132
  (0, react_2.useEffect)(() => {
133
133
  syncWagmi();
134
134
  }, [wallets, syncWagmi]);
@@ -145,9 +145,11 @@ function useAuth() {
145
145
  setIsAuthenticated(true);
146
146
  setIsAuthenticating(false);
147
147
  debug("Re-authenticated successfully", { userAuth });
148
- // Authenticate on BSMNT with B3 JWT
149
- const b3Jwt = await (0, bsmnt_1.authenticateWithB3JWT)(userAuth.accessToken);
150
- debug("@@b3Jwt", b3Jwt);
148
+ if (!disableBSMNTAuthentication) {
149
+ // Authenticate on BSMNT with B3 JWT
150
+ const b3Jwt = await (0, bsmnt_1.authenticateWithB3JWT)(userAuth.accessToken);
151
+ debug("@@b3Jwt", b3Jwt);
152
+ }
151
153
  return userAuth;
152
154
  }
153
155
  catch (error) {
@@ -157,7 +159,14 @@ function useAuth() {
157
159
  setIsAuthenticating(false);
158
160
  throw new Error("Authentication required. Please authenticate.");
159
161
  }
160
- }, [reAuthenticate, setIsAuthenticated, setIsAuthenticating, setUser, setHasStartedConnecting]);
162
+ }, [
163
+ reAuthenticate,
164
+ setIsAuthenticated,
165
+ setIsAuthenticating,
166
+ setUser,
167
+ setHasStartedConnecting,
168
+ disableBSMNTAuthentication,
169
+ ]);
161
170
  /**
162
171
  * Authenticate with B3
163
172
  *
@@ -187,8 +196,10 @@ function useAuth() {
187
196
  }
188
197
  // Step 3: Authenticate with BSMNT for basement integration
189
198
  try {
190
- const b3Jwt = await (0, bsmnt_1.authenticateWithB3JWT)(response.accessToken);
191
- debug("BSMNT authentication successful", b3Jwt);
199
+ if (!disableBSMNTAuthentication) {
200
+ const b3Jwt = await (0, bsmnt_1.authenticateWithB3JWT)(response.accessToken);
201
+ debug("BSMNT authentication successful", b3Jwt);
202
+ }
192
203
  }
193
204
  catch (bsmntError) {
194
205
  // BSMNT authentication failure shouldn't block the main auth flow
@@ -200,7 +211,7 @@ function useAuth() {
200
211
  debug("Authentication failed", err);
201
212
  throw err;
202
213
  }
203
- }, [referralCode, setUser]);
214
+ }, [referralCode, setUser, disableBSMNTAuthentication]);
204
215
  /**
205
216
  * Handle wallet connection
206
217
  */
@@ -65,6 +65,6 @@ export declare function useAuthentication(partnerId: string, { skipAutoConnect }
65
65
  turnkeyOtpId?: string | undefined;
66
66
  };
67
67
  } | undefined;
68
- refetchUser: (wallet?: Wallet) => Promise<import("@feathersjs/authentication").AuthenticationResult>;
68
+ refetchUser: (wallet?: Wallet) => Promise<Record<string, any>>;
69
69
  setUser: (newUser?: import("@b3dotfun/b3-api").Users) => void;
70
70
  };
@@ -22,7 +22,7 @@ const useTWAuth_1 = require("./useTWAuth");
22
22
  const useUserQuery_1 = require("./useUserQuery");
23
23
  const debug = (0, debug_1.debugB3React)("useAuthentication");
24
24
  function useAuthentication(partnerId, { skipAutoConnect = false } = {}) {
25
- const { onConnectCallback, onLogoutCallback } = (0, react_2.useContext)(LocalSDKProvider_1.LocalSDKContext);
25
+ const { onConnectCallback, onLogoutCallback, disableBSMNTAuthentication } = (0, react_2.useContext)(LocalSDKProvider_1.LocalSDKContext);
26
26
  const { disconnect } = (0, react_3.useDisconnect)();
27
27
  const wallets = (0, react_3.useConnectedWallets)();
28
28
  // Keep refs so logout() always disconnects current wallets, not stale closure values.
@@ -54,7 +54,7 @@ function useAuthentication(partnerId, { skipAutoConnect = false } = {}) {
54
54
  const { authenticate } = (0, useTWAuth_1.useTWAuth)();
55
55
  const { user, setUser } = (0, useUserQuery_1.useUserQuery)();
56
56
  const useAutoConnectLoadingPrevious = (0, react_2.useRef)(false);
57
- const wagmiConfig = (0, createWagmiConfig_1.createWagmiConfig)({ partnerId });
57
+ const wagmiConfig = (0, react_2.useMemo)(() => (0, createWagmiConfig_1.createWagmiConfig)({ partnerId }), [partnerId]);
58
58
  const { connect } = (0, wagmi_1.useConnect)();
59
59
  const activeWagmiAccount = (0, wagmi_1.useAccount)();
60
60
  const { switchAccount } = (0, wagmi_1.useSwitchAccount)();
@@ -105,9 +105,7 @@ function useAuthentication(partnerId, { skipAutoConnect = false } = {}) {
105
105
  });
106
106
  }
107
107
  syncWagmiFunc();
108
- // wagmi config shouldn't change
109
- // eslint-disable-next-line react-hooks/exhaustive-deps
110
- }, [partnerId, wallets]);
108
+ }, [wagmiConfig, wallets, connect, switchAccount]);
111
109
  (0, react_2.useEffect)(() => {
112
110
  syncWagmi();
113
111
  }, [wallets, syncWagmi]);
@@ -127,9 +125,11 @@ function useAuthentication(partnerId, { skipAutoConnect = false } = {}) {
127
125
  setIsAuthenticated(true);
128
126
  setIsAuthenticating(false);
129
127
  debug("Re-authenticated successfully", { userAuth });
130
- // Authenticate on BSMNT with B3 JWT
131
- const b3Jwt = await (0, bsmnt_1.authenticateWithB3JWT)(userAuth.accessToken);
132
- debug("@@b3Jwt", b3Jwt);
128
+ if (!disableBSMNTAuthentication) {
129
+ // Authenticate on BSMNT with B3 JWT
130
+ const b3Jwt = await (0, bsmnt_1.authenticateWithB3JWT)(userAuth.accessToken);
131
+ debug("@@b3Jwt", b3Jwt);
132
+ }
133
133
  return userAuth;
134
134
  }
135
135
  catch (error) {
@@ -140,12 +140,23 @@ function useAuthentication(partnerId, { skipAutoConnect = false } = {}) {
140
140
  setIsAuthenticated(true);
141
141
  setIsAuthenticating(false);
142
142
  debug("Fresh authentication successful", { userAuth });
143
- // Authenticate on BSMNT with B3 JWT
144
- const b3Jwt = await (0, bsmnt_1.authenticateWithB3JWT)(userAuth.accessToken);
145
- debug("@@b3Jwt", b3Jwt);
143
+ if (!disableBSMNTAuthentication) {
144
+ // Authenticate on BSMNT with B3 JWT
145
+ const b3Jwt = await (0, bsmnt_1.authenticateWithB3JWT)(userAuth.accessToken);
146
+ debug("@@b3Jwt", b3Jwt);
147
+ }
146
148
  return userAuth;
147
149
  }
148
- }, [activeWallet, partnerId, authenticate, setIsAuthenticated, setIsAuthenticating, setUser, setHasStartedConnecting]);
150
+ }, [
151
+ activeWallet,
152
+ partnerId,
153
+ authenticate,
154
+ setIsAuthenticated,
155
+ setIsAuthenticating,
156
+ setUser,
157
+ setHasStartedConnecting,
158
+ disableBSMNTAuthentication,
159
+ ]);
149
160
  const logout = (0, react_2.useCallback)(async (callback) => {
150
161
  // Disconnect ecosystem/smart wallets from the connected wallets list.
151
162
  // EOA wallets (MetaMask, Coinbase Wallet) are left in the list so they can
@@ -181,7 +192,7 @@ function useAuthentication(partnerId, { skipAutoConnect = false } = {}) {
181
192
  localStorage.removeItem("lastAuthProvider");
182
193
  localStorage.removeItem("b3-user");
183
194
  }
184
- app_1.default.logout();
195
+ await app_1.default.logout();
185
196
  debug("@@logout:loggedOut");
186
197
  setIsAuthenticated(false);
187
198
  setIsConnected(false);
@@ -1,7 +1,10 @@
1
+ import { EIP1193 } from "thirdweb/wallets";
1
2
  /**
2
- * Hook to automatically select the first EOA wallet when user is authenticated
3
- * Only auto-selects if the last auth was via wallet or no previous auth provider
3
+ * Hook to automatically connect a default EOA provider (if given) and
4
+ * select the first EOA wallet when user is authenticated.
5
+ * Only auto-selects if the last auth was via wallet or no previous auth provider.
4
6
  */
5
- export declare function useAutoSelectWallet({ enabled }: {
7
+ export declare function useAutoSelectWallet({ enabled, defaultEoaProvider, }: {
6
8
  enabled: boolean;
9
+ defaultEoaProvider?: EIP1193.EIP1193Provider;
7
10
  }): void;
@@ -1,19 +1,47 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useAutoSelectWallet = useAutoSelectWallet;
4
+ const thirdweb_1 = require("../../../shared/utils/thirdweb");
4
5
  const debug_1 = require("../../../shared/utils/debug");
5
6
  const react_1 = require("react");
6
7
  const react_2 = require("thirdweb/react");
8
+ const wallets_1 = require("thirdweb/wallets");
7
9
  const stores_1 = require("../stores");
8
10
  const debug = (0, debug_1.debugB3React)("useAutoSelectWallet");
9
11
  /**
10
- * Hook to automatically select the first EOA wallet when user is authenticated
11
- * Only auto-selects if the last auth was via wallet or no previous auth provider
12
+ * Hook to automatically connect a default EOA provider (if given) and
13
+ * select the first EOA wallet when user is authenticated.
14
+ * Only auto-selects if the last auth was via wallet or no previous auth provider.
12
15
  */
13
- function useAutoSelectWallet({ enabled }) {
16
+ function useAutoSelectWallet({ enabled, defaultEoaProvider, }) {
14
17
  const isAuthenticated = (0, stores_1.useAuthStore)(state => state.isAuthenticated);
15
18
  const wallets = (0, react_2.useConnectedWallets)();
16
19
  const setActiveWallet = (0, react_2.useSetActiveWallet)();
20
+ const addConnectedWallet = (0, react_2.useAddConnectedWallet)();
21
+ const hasConnectedProvider = (0, react_1.useRef)(false);
22
+ // Auto-connect the default EOA provider (e.g. Farcaster frame wallet) on mount.
23
+ // Uses useAddConnectedWallet instead of useConnect so the wallet is added to
24
+ // connectedWallets WITHOUT becoming the active wallet. This prevents
25
+ // useAuthentication's logout/onTimeout from disconnecting it (logout only
26
+ // disconnects ecosystem wallets and the active wallet).
27
+ (0, react_1.useEffect)(() => {
28
+ if (!defaultEoaProvider || hasConnectedProvider.current)
29
+ return;
30
+ hasConnectedProvider.current = true;
31
+ const connectDefaultProvider = async () => {
32
+ try {
33
+ const wallet = wallets_1.EIP1193.fromProvider({ provider: defaultEoaProvider });
34
+ await wallet.connect({ client: thirdweb_1.client });
35
+ addConnectedWallet(wallet);
36
+ debug("Auto-connected default EOA provider", wallet.id);
37
+ }
38
+ catch (error) {
39
+ debug("Failed to auto-connect default EOA provider", error);
40
+ hasConnectedProvider.current = false;
41
+ }
42
+ };
43
+ connectDefaultProvider();
44
+ }, [defaultEoaProvider, addConnectedWallet]);
17
45
  const setWallet = (0, react_1.useCallback)((wallet) => {
18
46
  debug("@@setWallet", wallet.id, wallet.getAccount()?.address);
19
47
  setActiveWallet(wallet);