@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.
- package/constants/chains/b3Chain.js +3 -1
- package/dist/cjs/anyspend/constants/rpc.d.ts +2 -1
- package/dist/cjs/anyspend/constants/rpc.js +4 -2
- package/dist/cjs/anyspend/react/components/AnySpend.d.ts +2 -0
- package/dist/cjs/anyspend/react/components/AnySpend.js +12 -4
- package/dist/cjs/anyspend/react/components/AnySpendBondKit.d.ts +1 -1
- package/dist/cjs/anyspend/react/components/AnySpendBondKit.js +2 -2
- package/dist/cjs/anyspend/react/components/AnySpendBuySpin.d.ts +2 -1
- package/dist/cjs/anyspend/react/components/AnySpendBuySpin.js +2 -2
- package/dist/cjs/anyspend/react/components/AnySpendCollectorClubPurchase.d.ts +5 -1
- package/dist/cjs/anyspend/react/components/AnySpendCollectorClubPurchase.js +2 -2
- package/dist/cjs/anyspend/react/components/AnySpendCustom.d.ts +2 -0
- package/dist/cjs/anyspend/react/components/AnySpendCustom.js +7 -3
- package/dist/cjs/anyspend/react/components/AnySpendCustomExactIn.d.ts +2 -0
- package/dist/cjs/anyspend/react/components/AnySpendCustomExactIn.js +21 -14
- package/dist/cjs/anyspend/react/components/AnySpendDeposit.d.ts +3 -1
- package/dist/cjs/anyspend/react/components/AnySpendDeposit.js +12 -6
- package/dist/cjs/anyspend/react/components/AnySpendDepositUpside.d.ts +2 -1
- package/dist/cjs/anyspend/react/components/AnySpendDepositUpside.js +2 -2
- package/dist/cjs/anyspend/react/components/AnySpendNFT.d.ts +3 -1
- package/dist/cjs/anyspend/react/components/AnySpendNFT.js +4 -4
- package/dist/cjs/anyspend/react/components/AnySpendStakeB3.d.ts +2 -1
- package/dist/cjs/anyspend/react/components/AnySpendStakeB3.js +3 -3
- package/dist/cjs/anyspend/react/components/AnySpendStakeB3ExactIn.d.ts +2 -1
- package/dist/cjs/anyspend/react/components/AnySpendStakeB3ExactIn.js +3 -3
- package/dist/cjs/anyspend/react/components/AnySpendStakeUpside.d.ts +3 -1
- package/dist/cjs/anyspend/react/components/AnySpendStakeUpside.js +2 -2
- package/dist/cjs/anyspend/react/components/AnySpendStakeUpsideExactIn.d.ts +2 -1
- package/dist/cjs/anyspend/react/components/AnySpendStakeUpsideExactIn.js +2 -2
- package/dist/cjs/anyspend/react/components/AnySpendWorkflowTrigger.d.ts +3 -1
- package/dist/cjs/anyspend/react/components/AnySpendWorkflowTrigger.js +2 -2
- package/dist/cjs/anyspend/react/components/AnyspendDepositHype.d.ts +2 -1
- package/dist/cjs/anyspend/react/components/AnyspendDepositHype.js +2 -2
- package/dist/cjs/anyspend/react/components/AnyspendSignatureMint.d.ts +2 -1
- package/dist/cjs/anyspend/react/components/AnyspendSignatureMint.js +2 -2
- package/dist/cjs/anyspend/react/components/checkout/AnySpendCheckout.d.ts +5 -1
- package/dist/cjs/anyspend/react/components/checkout/AnySpendCheckout.js +15 -6
- package/dist/cjs/anyspend/react/components/checkout/AnySpendCheckoutTrigger.d.ts +3 -1
- package/dist/cjs/anyspend/react/components/checkout/AnySpendCheckoutTrigger.js +2 -2
- package/dist/cjs/anyspend/react/components/checkout/CartItemRow.d.ts +2 -1
- package/dist/cjs/anyspend/react/components/checkout/CartSummary.d.ts +6 -4
- package/dist/cjs/anyspend/react/components/checkout/CartSummary.js +13 -11
- package/dist/cjs/anyspend/react/components/checkout/CheckoutCartPanel.d.ts +3 -1
- package/dist/cjs/anyspend/react/components/checkout/CheckoutCartPanel.js +5 -4
- package/dist/cjs/anyspend/react/components/checkout/CheckoutFormPanel.d.ts +3 -1
- package/dist/cjs/anyspend/react/components/checkout/CheckoutFormPanel.js +2 -2
- package/dist/cjs/anyspend/react/components/checkout/CheckoutPaymentPanel.d.ts +3 -1
- package/dist/cjs/anyspend/react/components/checkout/CheckoutPaymentPanel.js +15 -7
- package/dist/cjs/anyspend/react/components/checkout/CheckoutSuccess.d.ts +2 -1
- package/dist/cjs/anyspend/react/components/checkout/CheckoutSuccess.js +5 -3
- package/dist/cjs/anyspend/react/components/checkout/CryptoPayPanel.js +43 -23
- package/dist/cjs/anyspend/react/components/checkout/DiscountCodeInput.d.ts +3 -1
- package/dist/cjs/anyspend/react/components/checkout/DiscountCodeInput.js +3 -6
- package/dist/cjs/anyspend/react/components/checkout/FiatCheckoutPanel.js +1 -2
- package/dist/cjs/anyspend/react/components/checkout/KycGate.js +1 -2
- package/dist/cjs/anyspend/react/components/checkout/PriceSkeleton.d.ts +5 -0
- package/dist/cjs/anyspend/react/components/checkout/PriceSkeleton.js +9 -0
- package/dist/cjs/anyspend/react/components/checkout/ShippingSelector.d.ts +3 -1
- package/dist/cjs/anyspend/react/components/checkout/ShippingSelector.js +3 -2
- package/dist/cjs/anyspend/react/components/common/CryptoPaymentMethod.d.ts +8 -0
- package/dist/cjs/anyspend/react/components/common/CryptoPaymentMethod.js +10 -9
- package/dist/cjs/anyspend/react/components/common/InsufficientDepositPayment.js +2 -2
- package/dist/cjs/anyspend/react/components/common/OrderDetails.js +7 -2
- package/dist/cjs/anyspend/react/components/common/OrderDetailsCollapsible.js +2 -2
- package/dist/cjs/anyspend/react/components/common/OrderStatus.js +37 -6
- package/dist/cjs/anyspend/react/components/common/StepProgress.d.ts +2 -0
- package/dist/cjs/anyspend/react/components/common/StepProgress.js +7 -2
- package/dist/cjs/anyspend/react/components/common/TransferCryptoDetails.js +2 -2
- package/dist/cjs/anyspend/react/hooks/useAnyspendCreateOnrampOrder.js +4 -6
- package/dist/cjs/anyspend/react/hooks/useCreateDepositFirstOrder.d.ts +3 -3
- package/dist/cjs/anyspend/react/hooks/useKycStatus.d.ts +3 -1
- package/dist/cjs/anyspend/react/hooks/useKycStatus.js +11 -7
- package/dist/cjs/anyspend/utils/chain.d.ts +39 -1
- package/dist/cjs/anyspend/utils/chain.js +31 -9
- package/dist/cjs/anyspend/utils/token.d.ts +2 -0
- package/dist/cjs/anyspend/utils/token.js +15 -1
- package/dist/cjs/app.shared.d.ts +9 -1
- package/dist/cjs/app.shared.js +28 -7
- package/dist/cjs/global-account/app.native.d.ts +1 -1
- package/dist/cjs/global-account/better-auth-client.d.ts +5161 -0
- package/dist/cjs/global-account/better-auth-client.js +42 -0
- package/dist/cjs/global-account/bsmnt.d.ts +2 -3
- package/dist/cjs/global-account/bsmnt.js +0 -6
- package/dist/cjs/global-account/bsmnt.native.d.ts +1 -1
- package/dist/cjs/global-account/client-manager.d.ts +7 -5
- package/dist/cjs/global-account/client-manager.js +19 -4
- package/dist/cjs/global-account/react/components/AvatarEditor/AvatarEditor.js +9 -12
- package/dist/cjs/global-account/react/components/B3DynamicModal.js +5 -2
- package/dist/cjs/global-account/react/components/B3Provider/AuthenticationProvider.d.ts +3 -1
- package/dist/cjs/global-account/react/components/B3Provider/AuthenticationProvider.js +2 -1
- package/dist/cjs/global-account/react/components/B3Provider/B3ConfigProvider.d.ts +4 -1
- package/dist/cjs/global-account/react/components/B3Provider/B3ConfigProvider.js +2 -1
- package/dist/cjs/global-account/react/components/B3Provider/B3Provider.d.ts +22 -2
- package/dist/cjs/global-account/react/components/B3Provider/B3Provider.js +32 -13
- package/dist/cjs/global-account/react/components/B3Provider/B3Provider.native.js +6 -8
- package/dist/cjs/global-account/react/components/B3Provider/BetterAuthProvider.d.ts +16 -0
- package/dist/cjs/global-account/react/components/B3Provider/BetterAuthProvider.js +161 -0
- package/dist/cjs/global-account/react/components/B3Provider/LocalSDKProvider.d.ts +3 -1
- package/dist/cjs/global-account/react/components/B3Provider/LocalSDKProvider.js +3 -1
- package/dist/cjs/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.d.ts +3 -1
- package/dist/cjs/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.js +4 -2
- package/dist/cjs/global-account/react/components/LinkAccount/LinkedAccountItem.js +2 -1
- package/dist/cjs/global-account/react/components/ManageAccount/BottomNavigation.js +4 -2
- package/dist/cjs/global-account/react/components/ManageAccount/Header.js +36 -4
- package/dist/cjs/global-account/react/components/ManageAccount/HomeContent.js +4 -1
- package/dist/cjs/global-account/react/components/ManageAccount/ManageAccount.js +6 -0
- package/dist/cjs/global-account/react/components/ManageAccount/ProfileSection.js +17 -6
- package/dist/cjs/global-account/react/components/ManageAccount/SessionDurationContent.d.ts +5 -0
- package/dist/cjs/global-account/react/components/ManageAccount/SessionDurationContent.js +57 -0
- package/dist/cjs/global-account/react/components/ManageAccount/SettingsContent.js +14 -29
- package/dist/cjs/global-account/react/components/ManageAccount/SettingsProfileCard.js +27 -16
- package/dist/cjs/global-account/react/components/Send/Send.js +5 -2
- package/dist/cjs/global-account/react/components/SignInWithB3/BetterAuthResetPassword.d.ts +21 -0
- package/dist/cjs/global-account/react/components/SignInWithB3/BetterAuthResetPassword.js +68 -0
- package/dist/cjs/global-account/react/components/SignInWithB3/BetterAuthSignIn.d.ts +39 -0
- package/dist/cjs/global-account/react/components/SignInWithB3/BetterAuthSignIn.js +173 -0
- package/dist/cjs/global-account/react/components/SignInWithB3/BetterAuthVerifyEmail.d.ts +37 -0
- package/dist/cjs/global-account/react/components/SignInWithB3/BetterAuthVerifyEmail.js +85 -0
- package/dist/cjs/global-account/react/components/SignInWithB3/SignIn.js +14 -4
- package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Flow.d.ts +1 -1
- package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Flow.js +15 -10
- package/dist/cjs/global-account/react/components/SignInWithB3/components/AuthButton.js +10 -1
- package/dist/cjs/global-account/react/components/SignInWithB3/components/PasswordInput.d.ts +10 -0
- package/dist/cjs/global-account/react/components/SignInWithB3/components/PasswordInput.js +10 -0
- package/dist/cjs/global-account/react/components/SignInWithB3/steps/LoginStepBetterAuth.d.ts +8 -0
- package/dist/cjs/global-account/react/components/SignInWithB3/steps/LoginStepBetterAuth.js +141 -0
- package/dist/cjs/global-account/react/components/SignInWithB3/steps/LoginStepCustom.js +96 -15
- package/dist/cjs/global-account/react/components/SignInWithB3/utils/signInUtils.d.ts +7 -4
- package/dist/cjs/global-account/react/components/SignInWithB3/utils/signInUtils.js +21 -6
- package/dist/cjs/global-account/react/components/SingleUserSearchSelector/SingleUserSearchSelector.js +2 -1
- package/dist/cjs/global-account/react/components/Toast/ToastContext.d.ts +3 -0
- package/dist/cjs/global-account/react/components/Toast/ToastContext.js +30 -7
- package/dist/cjs/global-account/react/components/UserAvatar/UserAvatar.d.ts +18 -0
- package/dist/cjs/global-account/react/components/UserAvatar/UserAvatar.js +27 -0
- package/dist/cjs/global-account/react/components/custom/Button.d.ts +1 -1
- package/dist/cjs/global-account/react/components/index.d.ts +5 -1
- package/dist/cjs/global-account/react/components/index.js +12 -5
- package/dist/cjs/global-account/react/components/ui/button.d.ts +1 -1
- package/dist/cjs/global-account/react/hooks/index.d.ts +1 -1
- package/dist/cjs/global-account/react/hooks/index.js +5 -4
- package/dist/cjs/global-account/react/hooks/useAuth.d.ts +3 -3
- package/dist/cjs/global-account/react/hooks/useAuth.js +26 -15
- package/dist/cjs/global-account/react/hooks/useAuthentication.d.ts +1 -1
- package/dist/cjs/global-account/react/hooks/useAuthentication.js +24 -13
- package/dist/cjs/global-account/react/hooks/useAutoSelectWallet.d.ts +6 -3
- package/dist/cjs/global-account/react/hooks/useAutoSelectWallet.js +31 -3
- package/dist/cjs/global-account/react/hooks/useBetterAuth.d.ts +2608 -0
- package/dist/cjs/global-account/react/hooks/useBetterAuth.js +158 -0
- package/dist/cjs/global-account/react/hooks/useClient.d.ts +3 -3
- package/dist/cjs/global-account/react/hooks/useConnect.d.ts +2 -2
- package/dist/cjs/global-account/react/hooks/useFirstEOA.d.ts +8 -8
- package/dist/cjs/global-account/react/hooks/useNativeBalance.js +2 -2
- package/dist/cjs/global-account/react/hooks/useSiwe.d.ts +1 -1
- package/dist/cjs/global-account/react/hooks/useSiwe.native.d.ts +1 -1
- package/dist/cjs/global-account/react/hooks/useTWAuth.d.ts +1 -1
- package/dist/cjs/global-account/react/hooks/useTWAuth.js +0 -1
- package/dist/cjs/global-account/react/hooks/useUnifiedChainSwitchAndExecute.js +20 -17
- package/dist/cjs/global-account/react/stores/useModalStore.d.ts +42 -1
- package/dist/cjs/global-account/react/utils/createWagmiConfig.d.ts +4 -31
- package/dist/cjs/global-account/react/utils/createWagmiConfig.js +5 -24
- package/dist/cjs/global-account/react/utils/index.d.ts +0 -1
- package/dist/cjs/global-account/react/utils/index.js +0 -1
- package/dist/cjs/global-account/react/utils/profileDisplay.js +17 -18
- package/dist/cjs/global-account/types/b3-api.types.d.ts +5 -0
- package/dist/cjs/global-account/types/feature-flags.d.ts +5 -5
- package/dist/cjs/notifications/services/api.js +1 -0
- package/dist/cjs/shared/constants/chains/b3Chain.d.ts +0 -48
- package/dist/cjs/shared/constants/chains/b3Chain.js +2 -38
- package/dist/cjs/shared/constants/chains/b3Viem.d.ts +6 -0
- package/dist/cjs/shared/constants/chains/b3Viem.js +19 -0
- package/dist/cjs/shared/constants/chains/supported.d.ts +1 -49
- package/dist/cjs/shared/constants/chains/supported.js +8 -36
- package/dist/cjs/shared/constants/index.d.ts +1 -0
- package/dist/cjs/shared/constants/index.js +2 -1
- package/dist/cjs/shared/utils/chain-transformers.d.ts +4 -4
- package/dist/cjs/shared/utils/chain-transformers.js +38 -37
- package/dist/cjs/shared/utils/chains.d.ts +1 -1
- package/dist/cjs/shared/utils/chains.js +2 -2
- package/dist/cjs/shared/utils/session-duration.d.ts +15 -0
- package/dist/cjs/shared/utils/session-duration.js +69 -0
- package/dist/cjs/shared/utils/thirdweb-insights.js +2 -2
- package/dist/cjs/shared/utils/upload.d.ts +9 -0
- package/dist/cjs/shared/utils/upload.js +34 -0
- package/dist/cjs/wallet/react/components/ConnectWallet.d.ts +11 -0
- package/dist/cjs/wallet/react/components/ConnectWallet.js +467 -0
- package/dist/cjs/wallet/react/components/WalletProvider.d.ts +35 -0
- package/dist/cjs/wallet/react/components/WalletProvider.js +20 -0
- package/dist/cjs/wallet/react/hooks/useWalletDisconnect.d.ts +13 -0
- package/dist/cjs/wallet/react/hooks/useWalletDisconnect.js +22 -0
- package/dist/cjs/wallet/react/hooks/useWalletState.d.ts +31 -0
- package/dist/cjs/wallet/react/hooks/useWalletState.js +63 -0
- package/dist/cjs/wallet/react/index.d.ts +5 -0
- package/dist/cjs/wallet/react/index.js +16 -0
- package/dist/cjs/wallet/utils/createWalletConfig.d.ts +21 -0
- package/dist/cjs/wallet/utils/createWalletConfig.js +24 -0
- package/dist/esm/anyspend/constants/rpc.d.ts +2 -1
- package/dist/esm/anyspend/constants/rpc.js +3 -1
- package/dist/esm/anyspend/react/components/AnySpend.d.ts +2 -0
- package/dist/esm/anyspend/react/components/AnySpend.js +12 -4
- package/dist/esm/anyspend/react/components/AnySpendBondKit.d.ts +1 -1
- package/dist/esm/anyspend/react/components/AnySpendBondKit.js +2 -2
- package/dist/esm/anyspend/react/components/AnySpendBuySpin.d.ts +2 -1
- package/dist/esm/anyspend/react/components/AnySpendBuySpin.js +2 -2
- package/dist/esm/anyspend/react/components/AnySpendCollectorClubPurchase.d.ts +5 -1
- package/dist/esm/anyspend/react/components/AnySpendCollectorClubPurchase.js +2 -2
- package/dist/esm/anyspend/react/components/AnySpendCustom.d.ts +2 -0
- package/dist/esm/anyspend/react/components/AnySpendCustom.js +7 -3
- package/dist/esm/anyspend/react/components/AnySpendCustomExactIn.d.ts +2 -0
- package/dist/esm/anyspend/react/components/AnySpendCustomExactIn.js +21 -14
- package/dist/esm/anyspend/react/components/AnySpendDeposit.d.ts +3 -1
- package/dist/esm/anyspend/react/components/AnySpendDeposit.js +13 -7
- package/dist/esm/anyspend/react/components/AnySpendDepositUpside.d.ts +2 -1
- package/dist/esm/anyspend/react/components/AnySpendDepositUpside.js +2 -2
- package/dist/esm/anyspend/react/components/AnySpendNFT.d.ts +3 -1
- package/dist/esm/anyspend/react/components/AnySpendNFT.js +4 -4
- package/dist/esm/anyspend/react/components/AnySpendStakeB3.d.ts +2 -1
- package/dist/esm/anyspend/react/components/AnySpendStakeB3.js +4 -4
- package/dist/esm/anyspend/react/components/AnySpendStakeB3ExactIn.d.ts +2 -1
- package/dist/esm/anyspend/react/components/AnySpendStakeB3ExactIn.js +4 -4
- package/dist/esm/anyspend/react/components/AnySpendStakeUpside.d.ts +3 -1
- package/dist/esm/anyspend/react/components/AnySpendStakeUpside.js +2 -2
- package/dist/esm/anyspend/react/components/AnySpendStakeUpsideExactIn.d.ts +2 -1
- package/dist/esm/anyspend/react/components/AnySpendStakeUpsideExactIn.js +2 -2
- package/dist/esm/anyspend/react/components/AnySpendWorkflowTrigger.d.ts +3 -1
- package/dist/esm/anyspend/react/components/AnySpendWorkflowTrigger.js +2 -2
- package/dist/esm/anyspend/react/components/AnyspendDepositHype.d.ts +2 -1
- package/dist/esm/anyspend/react/components/AnyspendDepositHype.js +2 -2
- package/dist/esm/anyspend/react/components/AnyspendSignatureMint.d.ts +2 -1
- package/dist/esm/anyspend/react/components/AnyspendSignatureMint.js +2 -2
- package/dist/esm/anyspend/react/components/checkout/AnySpendCheckout.d.ts +5 -1
- package/dist/esm/anyspend/react/components/checkout/AnySpendCheckout.js +15 -6
- package/dist/esm/anyspend/react/components/checkout/AnySpendCheckoutTrigger.d.ts +3 -1
- package/dist/esm/anyspend/react/components/checkout/AnySpendCheckoutTrigger.js +2 -2
- package/dist/esm/anyspend/react/components/checkout/CartItemRow.d.ts +2 -1
- package/dist/esm/anyspend/react/components/checkout/CartSummary.d.ts +6 -4
- package/dist/esm/anyspend/react/components/checkout/CartSummary.js +13 -11
- package/dist/esm/anyspend/react/components/checkout/CheckoutCartPanel.d.ts +3 -1
- package/dist/esm/anyspend/react/components/checkout/CheckoutCartPanel.js +5 -4
- package/dist/esm/anyspend/react/components/checkout/CheckoutFormPanel.d.ts +3 -1
- package/dist/esm/anyspend/react/components/checkout/CheckoutFormPanel.js +2 -2
- package/dist/esm/anyspend/react/components/checkout/CheckoutPaymentPanel.d.ts +3 -1
- package/dist/esm/anyspend/react/components/checkout/CheckoutPaymentPanel.js +16 -8
- package/dist/esm/anyspend/react/components/checkout/CheckoutSuccess.d.ts +2 -1
- package/dist/esm/anyspend/react/components/checkout/CheckoutSuccess.js +5 -3
- package/dist/esm/anyspend/react/components/checkout/CryptoPayPanel.js +44 -24
- package/dist/esm/anyspend/react/components/checkout/DiscountCodeInput.d.ts +3 -1
- package/dist/esm/anyspend/react/components/checkout/DiscountCodeInput.js +3 -6
- package/dist/esm/anyspend/react/components/checkout/FiatCheckoutPanel.js +2 -3
- package/dist/esm/anyspend/react/components/checkout/KycGate.js +2 -3
- package/dist/esm/anyspend/react/components/checkout/PriceSkeleton.d.ts +5 -0
- package/dist/esm/anyspend/react/components/checkout/PriceSkeleton.js +6 -0
- package/dist/esm/anyspend/react/components/checkout/ShippingSelector.d.ts +3 -1
- package/dist/esm/anyspend/react/components/checkout/ShippingSelector.js +3 -2
- package/dist/esm/anyspend/react/components/common/CryptoPaymentMethod.d.ts +8 -0
- package/dist/esm/anyspend/react/components/common/CryptoPaymentMethod.js +9 -8
- package/dist/esm/anyspend/react/components/common/InsufficientDepositPayment.js +2 -2
- package/dist/esm/anyspend/react/components/common/OrderDetails.js +8 -3
- package/dist/esm/anyspend/react/components/common/OrderDetailsCollapsible.js +2 -2
- package/dist/esm/anyspend/react/components/common/OrderStatus.js +34 -3
- package/dist/esm/anyspend/react/components/common/StepProgress.d.ts +2 -0
- package/dist/esm/anyspend/react/components/common/StepProgress.js +4 -2
- package/dist/esm/anyspend/react/components/common/TransferCryptoDetails.js +2 -2
- package/dist/esm/anyspend/react/hooks/useAnyspendCreateOnrampOrder.js +5 -7
- package/dist/esm/anyspend/react/hooks/useCreateDepositFirstOrder.d.ts +3 -3
- package/dist/esm/anyspend/react/hooks/useKycStatus.d.ts +3 -1
- package/dist/esm/anyspend/react/hooks/useKycStatus.js +9 -5
- package/dist/esm/anyspend/utils/chain.d.ts +39 -1
- package/dist/esm/anyspend/utils/chain.js +33 -11
- package/dist/esm/anyspend/utils/token.d.ts +2 -0
- package/dist/esm/anyspend/utils/token.js +13 -0
- package/dist/esm/app.shared.d.ts +9 -1
- package/dist/esm/app.shared.js +26 -7
- package/dist/esm/global-account/app.native.d.ts +1 -1
- package/dist/esm/global-account/better-auth-client.d.ts +5161 -0
- package/dist/esm/global-account/better-auth-client.js +36 -0
- package/dist/esm/global-account/bsmnt.d.ts +2 -3
- package/dist/esm/global-account/bsmnt.js +0 -5
- package/dist/esm/global-account/bsmnt.native.d.ts +1 -1
- package/dist/esm/global-account/client-manager.d.ts +7 -5
- package/dist/esm/global-account/client-manager.js +19 -5
- package/dist/esm/global-account/react/components/AvatarEditor/AvatarEditor.js +9 -12
- package/dist/esm/global-account/react/components/B3DynamicModal.js +5 -2
- package/dist/esm/global-account/react/components/B3Provider/AuthenticationProvider.d.ts +3 -1
- package/dist/esm/global-account/react/components/B3Provider/AuthenticationProvider.js +2 -1
- package/dist/esm/global-account/react/components/B3Provider/B3ConfigProvider.d.ts +4 -1
- package/dist/esm/global-account/react/components/B3Provider/B3ConfigProvider.js +2 -1
- package/dist/esm/global-account/react/components/B3Provider/B3Provider.d.ts +22 -2
- package/dist/esm/global-account/react/components/B3Provider/B3Provider.js +28 -9
- package/dist/esm/global-account/react/components/B3Provider/B3Provider.native.js +4 -6
- package/dist/esm/global-account/react/components/B3Provider/BetterAuthProvider.d.ts +16 -0
- package/dist/esm/global-account/react/components/B3Provider/BetterAuthProvider.js +156 -0
- package/dist/esm/global-account/react/components/B3Provider/LocalSDKProvider.d.ts +3 -1
- package/dist/esm/global-account/react/components/B3Provider/LocalSDKProvider.js +3 -1
- package/dist/esm/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.d.ts +3 -1
- package/dist/esm/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.js +4 -2
- package/dist/esm/global-account/react/components/LinkAccount/LinkedAccountItem.js +2 -1
- package/dist/esm/global-account/react/components/ManageAccount/BottomNavigation.js +5 -3
- package/dist/esm/global-account/react/components/ManageAccount/Header.js +37 -5
- package/dist/esm/global-account/react/components/ManageAccount/HomeContent.js +4 -1
- package/dist/esm/global-account/react/components/ManageAccount/ManageAccount.js +7 -1
- package/dist/esm/global-account/react/components/ManageAccount/ProfileSection.js +16 -8
- package/dist/esm/global-account/react/components/ManageAccount/SessionDurationContent.d.ts +5 -0
- package/dist/esm/global-account/react/components/ManageAccount/SessionDurationContent.js +52 -0
- package/dist/esm/global-account/react/components/ManageAccount/SettingsContent.js +16 -31
- package/dist/esm/global-account/react/components/ManageAccount/SettingsProfileCard.js +27 -16
- package/dist/esm/global-account/react/components/Send/Send.js +5 -2
- package/dist/esm/global-account/react/components/SignInWithB3/BetterAuthResetPassword.d.ts +21 -0
- package/dist/esm/global-account/react/components/SignInWithB3/BetterAuthResetPassword.js +65 -0
- package/dist/esm/global-account/react/components/SignInWithB3/BetterAuthSignIn.d.ts +39 -0
- package/dist/esm/global-account/react/components/SignInWithB3/BetterAuthSignIn.js +170 -0
- package/dist/esm/global-account/react/components/SignInWithB3/BetterAuthVerifyEmail.d.ts +37 -0
- package/dist/esm/global-account/react/components/SignInWithB3/BetterAuthVerifyEmail.js +82 -0
- package/dist/esm/global-account/react/components/SignInWithB3/SignIn.js +15 -5
- package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Flow.d.ts +1 -1
- package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Flow.js +15 -10
- package/dist/esm/global-account/react/components/SignInWithB3/components/AuthButton.js +11 -2
- package/dist/esm/global-account/react/components/SignInWithB3/components/PasswordInput.d.ts +10 -0
- package/dist/esm/global-account/react/components/SignInWithB3/components/PasswordInput.js +7 -0
- package/dist/esm/global-account/react/components/SignInWithB3/steps/LoginStepBetterAuth.d.ts +8 -0
- package/dist/esm/global-account/react/components/SignInWithB3/steps/LoginStepBetterAuth.js +138 -0
- package/dist/esm/global-account/react/components/SignInWithB3/steps/LoginStepCustom.js +100 -19
- package/dist/esm/global-account/react/components/SignInWithB3/utils/signInUtils.d.ts +7 -4
- package/dist/esm/global-account/react/components/SignInWithB3/utils/signInUtils.js +20 -5
- package/dist/esm/global-account/react/components/SingleUserSearchSelector/SingleUserSearchSelector.js +2 -1
- package/dist/esm/global-account/react/components/Toast/ToastContext.d.ts +3 -0
- package/dist/esm/global-account/react/components/Toast/ToastContext.js +30 -7
- package/dist/esm/global-account/react/components/UserAvatar/UserAvatar.d.ts +18 -0
- package/dist/esm/global-account/react/components/UserAvatar/UserAvatar.js +21 -0
- package/dist/esm/global-account/react/components/custom/Button.d.ts +1 -1
- package/dist/esm/global-account/react/components/index.d.ts +5 -1
- package/dist/esm/global-account/react/components/index.js +5 -1
- package/dist/esm/global-account/react/components/ui/button.d.ts +1 -1
- package/dist/esm/global-account/react/hooks/index.d.ts +1 -1
- package/dist/esm/global-account/react/hooks/index.js +1 -1
- package/dist/esm/global-account/react/hooks/useAuth.d.ts +3 -3
- package/dist/esm/global-account/react/hooks/useAuth.js +28 -17
- package/dist/esm/global-account/react/hooks/useAuthentication.d.ts +1 -1
- package/dist/esm/global-account/react/hooks/useAuthentication.js +25 -14
- package/dist/esm/global-account/react/hooks/useAutoSelectWallet.d.ts +6 -3
- package/dist/esm/global-account/react/hooks/useAutoSelectWallet.js +33 -5
- package/dist/esm/global-account/react/hooks/useBetterAuth.d.ts +2608 -0
- package/dist/esm/global-account/react/hooks/useBetterAuth.js +150 -0
- package/dist/esm/global-account/react/hooks/useClient.d.ts +3 -3
- package/dist/esm/global-account/react/hooks/useConnect.d.ts +2 -2
- package/dist/esm/global-account/react/hooks/useFirstEOA.d.ts +8 -8
- package/dist/esm/global-account/react/hooks/useNativeBalance.js +1 -1
- package/dist/esm/global-account/react/hooks/useSiwe.d.ts +1 -1
- package/dist/esm/global-account/react/hooks/useSiwe.native.d.ts +1 -1
- package/dist/esm/global-account/react/hooks/useTWAuth.d.ts +1 -1
- package/dist/esm/global-account/react/hooks/useTWAuth.js +0 -1
- package/dist/esm/global-account/react/hooks/useUnifiedChainSwitchAndExecute.js +20 -17
- package/dist/esm/global-account/react/stores/useModalStore.d.ts +42 -1
- package/dist/esm/global-account/react/utils/createWagmiConfig.d.ts +4 -31
- package/dist/esm/global-account/react/utils/createWagmiConfig.js +5 -23
- package/dist/esm/global-account/react/utils/index.d.ts +0 -1
- package/dist/esm/global-account/react/utils/index.js +0 -1
- package/dist/esm/global-account/react/utils/profileDisplay.js +17 -18
- package/dist/esm/global-account/types/b3-api.types.d.ts +5 -0
- package/dist/esm/global-account/types/feature-flags.d.ts +5 -5
- package/dist/esm/notifications/services/api.js +1 -0
- package/dist/esm/shared/constants/chains/b3Chain.d.ts +0 -48
- package/dist/esm/shared/constants/chains/b3Chain.js +1 -35
- package/dist/esm/shared/constants/chains/b3Viem.d.ts +6 -0
- package/dist/esm/shared/constants/chains/b3Viem.js +16 -0
- package/dist/esm/shared/constants/chains/supported.d.ts +1 -49
- package/dist/esm/shared/constants/chains/supported.js +7 -35
- package/dist/esm/shared/constants/index.d.ts +1 -0
- package/dist/esm/shared/constants/index.js +1 -0
- package/dist/esm/shared/utils/chain-transformers.d.ts +4 -4
- package/dist/esm/shared/utils/chain-transformers.js +38 -37
- package/dist/esm/shared/utils/chains.d.ts +1 -1
- package/dist/esm/shared/utils/chains.js +2 -2
- package/dist/esm/shared/utils/session-duration.d.ts +15 -0
- package/dist/esm/shared/utils/session-duration.js +64 -0
- package/dist/esm/shared/utils/thirdweb-insights.js +2 -2
- package/dist/esm/shared/utils/upload.d.ts +9 -0
- package/dist/esm/shared/utils/upload.js +31 -0
- package/dist/esm/wallet/react/components/ConnectWallet.d.ts +11 -0
- package/dist/esm/wallet/react/components/ConnectWallet.js +431 -0
- package/dist/esm/wallet/react/components/WalletProvider.d.ts +35 -0
- package/dist/esm/wallet/react/components/WalletProvider.js +17 -0
- package/dist/esm/wallet/react/hooks/useWalletDisconnect.d.ts +13 -0
- package/dist/esm/wallet/react/hooks/useWalletDisconnect.js +19 -0
- package/dist/esm/wallet/react/hooks/useWalletState.d.ts +31 -0
- package/dist/esm/wallet/react/hooks/useWalletState.js +60 -0
- package/dist/esm/wallet/react/index.d.ts +5 -0
- package/dist/esm/wallet/react/index.js +8 -0
- package/dist/esm/wallet/utils/createWalletConfig.d.ts +21 -0
- package/dist/esm/wallet/utils/createWalletConfig.js +21 -0
- package/dist/styles/index.css +1 -1
- package/dist/types/anyspend/constants/rpc.d.ts +2 -1
- package/dist/types/anyspend/react/components/AnySpend.d.ts +2 -0
- package/dist/types/anyspend/react/components/AnySpendBondKit.d.ts +1 -1
- package/dist/types/anyspend/react/components/AnySpendBuySpin.d.ts +2 -1
- package/dist/types/anyspend/react/components/AnySpendCollectorClubPurchase.d.ts +5 -1
- package/dist/types/anyspend/react/components/AnySpendCustom.d.ts +2 -0
- package/dist/types/anyspend/react/components/AnySpendCustomExactIn.d.ts +2 -0
- package/dist/types/anyspend/react/components/AnySpendDeposit.d.ts +3 -1
- package/dist/types/anyspend/react/components/AnySpendDepositUpside.d.ts +2 -1
- package/dist/types/anyspend/react/components/AnySpendNFT.d.ts +3 -1
- package/dist/types/anyspend/react/components/AnySpendStakeB3.d.ts +2 -1
- package/dist/types/anyspend/react/components/AnySpendStakeB3ExactIn.d.ts +2 -1
- package/dist/types/anyspend/react/components/AnySpendStakeUpside.d.ts +3 -1
- package/dist/types/anyspend/react/components/AnySpendStakeUpsideExactIn.d.ts +2 -1
- package/dist/types/anyspend/react/components/AnySpendWorkflowTrigger.d.ts +3 -1
- package/dist/types/anyspend/react/components/AnyspendDepositHype.d.ts +2 -1
- package/dist/types/anyspend/react/components/AnyspendSignatureMint.d.ts +2 -1
- package/dist/types/anyspend/react/components/checkout/AnySpendCheckout.d.ts +5 -1
- package/dist/types/anyspend/react/components/checkout/AnySpendCheckoutTrigger.d.ts +3 -1
- package/dist/types/anyspend/react/components/checkout/CartItemRow.d.ts +2 -1
- package/dist/types/anyspend/react/components/checkout/CartSummary.d.ts +6 -4
- package/dist/types/anyspend/react/components/checkout/CheckoutCartPanel.d.ts +3 -1
- package/dist/types/anyspend/react/components/checkout/CheckoutFormPanel.d.ts +3 -1
- package/dist/types/anyspend/react/components/checkout/CheckoutPaymentPanel.d.ts +3 -1
- package/dist/types/anyspend/react/components/checkout/CheckoutSuccess.d.ts +2 -1
- package/dist/types/anyspend/react/components/checkout/DiscountCodeInput.d.ts +3 -1
- package/dist/types/anyspend/react/components/checkout/PriceSkeleton.d.ts +5 -0
- package/dist/types/anyspend/react/components/checkout/ShippingSelector.d.ts +3 -1
- package/dist/types/anyspend/react/components/common/CryptoPaymentMethod.d.ts +8 -0
- package/dist/types/anyspend/react/components/common/StepProgress.d.ts +2 -0
- package/dist/types/anyspend/react/hooks/useCreateDepositFirstOrder.d.ts +3 -3
- package/dist/types/anyspend/react/hooks/useKycStatus.d.ts +3 -1
- package/dist/types/anyspend/utils/chain.d.ts +39 -1
- package/dist/types/anyspend/utils/token.d.ts +2 -0
- package/dist/types/app.shared.d.ts +9 -1
- package/dist/types/global-account/app.native.d.ts +1 -1
- package/dist/types/global-account/better-auth-client.d.ts +5161 -0
- package/dist/types/global-account/bsmnt.d.ts +2 -3
- package/dist/types/global-account/bsmnt.native.d.ts +1 -1
- package/dist/types/global-account/client-manager.d.ts +7 -5
- package/dist/types/global-account/react/components/B3Provider/AuthenticationProvider.d.ts +3 -1
- package/dist/types/global-account/react/components/B3Provider/B3ConfigProvider.d.ts +4 -1
- package/dist/types/global-account/react/components/B3Provider/B3Provider.d.ts +22 -2
- package/dist/types/global-account/react/components/B3Provider/BetterAuthProvider.d.ts +16 -0
- package/dist/types/global-account/react/components/B3Provider/LocalSDKProvider.d.ts +3 -1
- package/dist/types/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.d.ts +3 -1
- package/dist/types/global-account/react/components/ManageAccount/SessionDurationContent.d.ts +5 -0
- package/dist/types/global-account/react/components/SignInWithB3/BetterAuthResetPassword.d.ts +21 -0
- package/dist/types/global-account/react/components/SignInWithB3/BetterAuthSignIn.d.ts +39 -0
- package/dist/types/global-account/react/components/SignInWithB3/BetterAuthVerifyEmail.d.ts +37 -0
- package/dist/types/global-account/react/components/SignInWithB3/SignInWithB3Flow.d.ts +1 -1
- package/dist/types/global-account/react/components/SignInWithB3/components/PasswordInput.d.ts +10 -0
- package/dist/types/global-account/react/components/SignInWithB3/steps/LoginStepBetterAuth.d.ts +8 -0
- package/dist/types/global-account/react/components/SignInWithB3/utils/signInUtils.d.ts +7 -4
- package/dist/types/global-account/react/components/Toast/ToastContext.d.ts +3 -0
- package/dist/types/global-account/react/components/UserAvatar/UserAvatar.d.ts +18 -0
- package/dist/types/global-account/react/components/custom/Button.d.ts +1 -1
- package/dist/types/global-account/react/components/index.d.ts +5 -1
- package/dist/types/global-account/react/components/ui/button.d.ts +1 -1
- package/dist/types/global-account/react/hooks/index.d.ts +1 -1
- package/dist/types/global-account/react/hooks/useAuth.d.ts +3 -3
- package/dist/types/global-account/react/hooks/useAuthentication.d.ts +1 -1
- package/dist/types/global-account/react/hooks/useAutoSelectWallet.d.ts +6 -3
- package/dist/types/global-account/react/hooks/useBetterAuth.d.ts +2608 -0
- package/dist/types/global-account/react/hooks/useClient.d.ts +3 -3
- package/dist/types/global-account/react/hooks/useConnect.d.ts +2 -2
- package/dist/types/global-account/react/hooks/useFirstEOA.d.ts +8 -8
- package/dist/types/global-account/react/hooks/useSiwe.d.ts +1 -1
- package/dist/types/global-account/react/hooks/useSiwe.native.d.ts +1 -1
- package/dist/types/global-account/react/hooks/useTWAuth.d.ts +1 -1
- package/dist/types/global-account/react/stores/useModalStore.d.ts +42 -1
- package/dist/types/global-account/react/utils/createWagmiConfig.d.ts +4 -31
- package/dist/types/global-account/react/utils/index.d.ts +0 -1
- package/dist/types/global-account/types/b3-api.types.d.ts +5 -0
- package/dist/types/global-account/types/feature-flags.d.ts +5 -5
- package/dist/types/shared/constants/chains/b3Chain.d.ts +0 -48
- package/dist/types/shared/constants/chains/b3Viem.d.ts +6 -0
- package/dist/types/shared/constants/chains/supported.d.ts +1 -49
- package/dist/types/shared/constants/index.d.ts +1 -0
- package/dist/types/shared/utils/chain-transformers.d.ts +4 -4
- package/dist/types/shared/utils/chains.d.ts +1 -1
- package/dist/types/shared/utils/session-duration.d.ts +15 -0
- package/dist/types/shared/utils/upload.d.ts +9 -0
- package/dist/types/wallet/react/components/ConnectWallet.d.ts +11 -0
- package/dist/types/wallet/react/components/WalletProvider.d.ts +35 -0
- package/dist/types/wallet/react/hooks/useWalletDisconnect.d.ts +13 -0
- package/dist/types/wallet/react/hooks/useWalletState.d.ts +31 -0
- package/dist/types/wallet/react/index.d.ts +5 -0
- package/dist/types/wallet/utils/createWalletConfig.d.ts +21 -0
- package/node_modules/@b3/chain-registry/chains.json +1160 -0
- package/node_modules/@b3/chain-registry/package.json +14 -0
- package/node_modules/@b3/chain-registry/src/index.ts +169 -0
- package/node_modules/@b3/chain-registry/tsconfig.json +16 -0
- package/package.json +90 -33
- package/src/anyspend/constants/rpc.ts +3 -1
- package/src/anyspend/react/components/AnySpend.tsx +24 -12
- package/src/anyspend/react/components/AnySpendBondKit.tsx +2 -0
- package/src/anyspend/react/components/AnySpendBuySpin.tsx +3 -0
- package/src/anyspend/react/components/AnySpendCollectorClubPurchase.tsx +6 -0
- package/src/anyspend/react/components/AnySpendCustom.tsx +12 -2
- package/src/anyspend/react/components/AnySpendCustomExactIn.tsx +29 -14
- package/src/anyspend/react/components/AnySpendDeposit.tsx +51 -34
- package/src/anyspend/react/components/AnySpendDepositUpside.tsx +3 -0
- package/src/anyspend/react/components/AnySpendNFT.tsx +6 -2
- package/src/anyspend/react/components/AnySpendStakeB3.tsx +5 -2
- package/src/anyspend/react/components/AnySpendStakeB3ExactIn.tsx +5 -2
- package/src/anyspend/react/components/AnySpendStakeUpside.tsx +4 -0
- package/src/anyspend/react/components/AnySpendStakeUpsideExactIn.tsx +3 -0
- package/src/anyspend/react/components/AnySpendWorkflowTrigger.tsx +4 -0
- package/src/anyspend/react/components/AnyspendDepositHype.tsx +3 -0
- package/src/anyspend/react/components/AnyspendSignatureMint.tsx +3 -0
- package/src/anyspend/react/components/checkout/AnySpendCheckout.tsx +29 -5
- package/src/anyspend/react/components/checkout/AnySpendCheckoutTrigger.tsx +4 -0
- package/src/anyspend/react/components/checkout/CartItemRow.tsx +2 -1
- package/src/anyspend/react/components/checkout/CartSummary.tsx +24 -20
- package/src/anyspend/react/components/checkout/CheckoutCartPanel.tsx +12 -3
- package/src/anyspend/react/components/checkout/CheckoutFormPanel.tsx +5 -0
- package/src/anyspend/react/components/checkout/CheckoutPaymentPanel.tsx +99 -83
- package/src/anyspend/react/components/checkout/CheckoutSuccess.tsx +13 -3
- package/src/anyspend/react/components/checkout/CryptoPayPanel.tsx +45 -27
- package/src/anyspend/react/components/checkout/DiscountCodeInput.tsx +15 -5
- package/src/anyspend/react/components/checkout/FiatCheckoutPanel.tsx +9 -3
- package/src/anyspend/react/components/checkout/KycGate.tsx +8 -3
- package/src/anyspend/react/components/checkout/PriceSkeleton.tsx +19 -0
- package/src/anyspend/react/components/checkout/ShippingSelector.tsx +5 -1
- package/src/anyspend/react/components/common/CryptoPaymentMethod.tsx +10 -8
- package/src/anyspend/react/components/common/InsufficientDepositPayment.tsx +2 -2
- package/src/anyspend/react/components/common/OrderDetails.tsx +10 -2
- package/src/anyspend/react/components/common/OrderDetailsCollapsible.tsx +4 -4
- package/src/anyspend/react/components/common/OrderStatus.tsx +38 -3
- package/src/anyspend/react/components/common/StepProgress.tsx +15 -5
- package/src/anyspend/react/components/common/TransferCryptoDetails.tsx +2 -2
- package/src/anyspend/react/hooks/useAnyspendCreateOnrampOrder.ts +5 -7
- package/src/anyspend/react/hooks/useAnyspendQuote.ts +13 -13
- package/src/anyspend/react/hooks/useCreateDepositFirstOrder.ts +4 -4
- package/src/anyspend/react/hooks/useKycStatus.ts +8 -5
- package/src/anyspend/types/api_req_res.ts +10 -5
- package/src/anyspend/utils/chain.ts +35 -10
- package/src/anyspend/utils/token.ts +14 -0
- package/src/app.shared.ts +29 -8
- package/src/global-account/app.native.ts +5 -1
- package/src/global-account/better-auth-client.ts +43 -0
- package/src/global-account/bsmnt.native.ts +5 -1
- package/src/global-account/bsmnt.ts +9 -8
- package/src/global-account/client-manager.ts +41 -9
- package/src/global-account/react/components/AvatarEditor/AvatarEditor.tsx +9 -12
- package/src/global-account/react/components/B3DynamicModal.tsx +5 -2
- package/src/global-account/react/components/B3Provider/AuthenticationProvider.tsx +4 -0
- package/src/global-account/react/components/B3Provider/B3ConfigProvider.tsx +6 -0
- package/src/global-account/react/components/B3Provider/B3Provider.native.tsx +16 -21
- package/src/global-account/react/components/B3Provider/B3Provider.tsx +94 -37
- package/src/global-account/react/components/B3Provider/BetterAuthProvider.tsx +173 -0
- package/src/global-account/react/components/B3Provider/LocalSDKProvider.tsx +5 -0
- package/src/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.tsx +17 -10
- package/src/global-account/react/components/LinkAccount/LinkedAccountItem.tsx +2 -1
- package/src/global-account/react/components/ManageAccount/BottomNavigation.tsx +18 -14
- package/src/global-account/react/components/ManageAccount/Header.tsx +71 -4
- package/src/global-account/react/components/ManageAccount/HomeContent.tsx +25 -19
- package/src/global-account/react/components/ManageAccount/ManageAccount.tsx +13 -0
- package/src/global-account/react/components/ManageAccount/ProfileSection.tsx +40 -15
- package/src/global-account/react/components/ManageAccount/SessionDurationContent.tsx +107 -0
- package/src/global-account/react/components/ManageAccount/SettingsContent.tsx +35 -54
- package/src/global-account/react/components/ManageAccount/SettingsProfileCard.tsx +31 -22
- package/src/global-account/react/components/Send/Send.tsx +8 -5
- package/src/global-account/react/components/SignInWithB3/BetterAuthResetPassword.tsx +145 -0
- package/src/global-account/react/components/SignInWithB3/BetterAuthSignIn.tsx +446 -0
- package/src/global-account/react/components/SignInWithB3/BetterAuthVerifyEmail.tsx +155 -0
- package/src/global-account/react/components/SignInWithB3/SignIn.tsx +42 -13
- package/src/global-account/react/components/SignInWithB3/SignInWithB3Flow.tsx +21 -8
- package/src/global-account/react/components/SignInWithB3/components/AuthButton.tsx +21 -2
- package/src/global-account/react/components/SignInWithB3/components/PasswordInput.tsx +62 -0
- package/src/global-account/react/components/SignInWithB3/steps/LoginStepBetterAuth.tsx +315 -0
- package/src/global-account/react/components/SignInWithB3/steps/LoginStepCustom.tsx +207 -54
- package/src/global-account/react/components/SignInWithB3/utils/signInUtils.ts +26 -8
- package/src/global-account/react/components/SingleUserSearchSelector/SingleUserSearchSelector.tsx +2 -1
- package/src/global-account/react/components/Toast/ToastContext.tsx +39 -7
- package/src/global-account/react/components/UserAvatar/UserAvatar.tsx +45 -0
- package/src/global-account/react/components/index.ts +11 -1
- package/src/global-account/react/components/ui/button.tsx +1 -2
- package/src/global-account/react/hooks/index.ts +1 -1
- package/src/global-account/react/hooks/useAuth.ts +30 -19
- package/src/global-account/react/hooks/useAuthentication.ts +26 -15
- package/src/global-account/react/hooks/useAutoSelectWallet.ts +40 -6
- package/src/global-account/react/hooks/useBetterAuth.ts +192 -0
- package/src/global-account/react/hooks/useClient.ts +11 -2
- package/src/global-account/react/hooks/useConnect.tsx +2 -2
- package/src/global-account/react/hooks/useNativeBalance.tsx +1 -1
- package/src/global-account/react/hooks/useSiwe.native.tsx +1 -1
- package/src/global-account/react/hooks/useSiwe.tsx +1 -1
- package/src/global-account/react/hooks/useTWAuth.tsx +1 -2
- package/src/global-account/react/hooks/useUnifiedChainSwitchAndExecute.ts +22 -20
- package/src/global-account/react/stores/useModalStore.ts +43 -0
- package/src/global-account/react/utils/createWagmiConfig.tsx +6 -25
- package/src/global-account/react/utils/index.ts +0 -1
- package/src/global-account/react/utils/profileDisplay.ts +21 -19
- package/src/global-account/types/b3-api.types.ts +5 -1
- package/src/notifications/services/api.ts +1 -0
- package/src/shared/constants/chains/b3Chain.ts +1 -40
- package/src/shared/constants/chains/b3Viem.ts +18 -0
- package/src/shared/constants/chains/supported.ts +9 -48
- package/src/shared/constants/index.ts +2 -0
- package/src/shared/utils/chain-transformers.ts +41 -39
- package/src/shared/utils/chains.ts +3 -2
- package/src/shared/utils/session-duration.ts +64 -0
- package/src/shared/utils/thirdweb-insights.ts +2 -2
- package/src/shared/utils/upload.ts +48 -0
- package/src/styles/index.css +27 -0
- package/src/types/torph.d.ts +4 -0
- package/src/wallet/__tests__/createWalletConfig.test.ts +39 -0
- package/src/wallet/react/components/ConnectWallet.tsx +665 -0
- package/src/wallet/react/components/WalletProvider.tsx +64 -0
- package/src/wallet/react/hooks/useWalletDisconnect.ts +22 -0
- package/src/wallet/react/hooks/useWalletState.ts +93 -0
- package/src/wallet/react/index.ts +10 -0
- package/src/wallet/utils/createWalletConfig.ts +39 -0
- package/dist/cjs/global-account/react/components/AvatarCreator/AvatarCreator.d.ts +0 -6
- package/dist/cjs/global-account/react/components/AvatarCreator/AvatarCreator.js +0 -54
- package/dist/cjs/global-account/react/components/ProfileAvatar.d.ts +0 -0
- package/dist/cjs/global-account/react/components/ProfileAvatar.js +0 -127
- package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Privy.d.ts +0 -10
- package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Privy.js +0 -46
- package/dist/cjs/global-account/react/hooks/useHandleConnectWithPrivy.d.ts +0 -11
- package/dist/cjs/global-account/react/hooks/useHandleConnectWithPrivy.js +0 -70
- package/dist/cjs/global-account/react/hooks/useRPMToken.d.ts +0 -7
- package/dist/cjs/global-account/react/hooks/useRPMToken.js +0 -11
- package/dist/cjs/global-account/react/utils/updateAvatar.d.ts +0 -4
- package/dist/cjs/global-account/react/utils/updateAvatar.js +0 -54
- package/dist/cjs/global-account/types/chain-networks.d.ts +0 -44
- package/dist/cjs/global-account/types/chain-networks.js +0 -48
- package/dist/cjs/shared/generated/chain-networks.json +0 -684
- package/dist/esm/global-account/react/components/AvatarCreator/AvatarCreator.d.ts +0 -6
- package/dist/esm/global-account/react/components/AvatarCreator/AvatarCreator.js +0 -51
- package/dist/esm/global-account/react/components/ProfileAvatar.d.ts +0 -0
- package/dist/esm/global-account/react/components/ProfileAvatar.js +0 -127
- package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Privy.d.ts +0 -10
- package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Privy.js +0 -43
- package/dist/esm/global-account/react/hooks/useHandleConnectWithPrivy.d.ts +0 -11
- package/dist/esm/global-account/react/hooks/useHandleConnectWithPrivy.js +0 -67
- package/dist/esm/global-account/react/hooks/useRPMToken.d.ts +0 -7
- package/dist/esm/global-account/react/hooks/useRPMToken.js +0 -8
- package/dist/esm/global-account/react/utils/updateAvatar.d.ts +0 -4
- package/dist/esm/global-account/react/utils/updateAvatar.js +0 -18
- package/dist/esm/global-account/types/chain-networks.d.ts +0 -44
- package/dist/esm/global-account/types/chain-networks.js +0 -45
- package/dist/esm/shared/generated/chain-networks.json +0 -684
- package/dist/types/global-account/react/components/AvatarCreator/AvatarCreator.d.ts +0 -6
- package/dist/types/global-account/react/components/ProfileAvatar.d.ts +0 -0
- package/dist/types/global-account/react/components/SignInWithB3/SignInWithB3Privy.d.ts +0 -10
- package/dist/types/global-account/react/hooks/useHandleConnectWithPrivy.d.ts +0 -11
- package/dist/types/global-account/react/hooks/useRPMToken.d.ts +0 -7
- package/dist/types/global-account/react/utils/updateAvatar.d.ts +0 -4
- package/dist/types/global-account/types/chain-networks.d.ts +0 -44
- package/src/global-account/react/components/AvatarCreator/AvatarCreator.tsx +0 -90
- package/src/global-account/react/components/ProfileAvatar.tsx +0 -138
- package/src/global-account/react/components/SignInWithB3/SignInWithB3Privy.tsx +0 -63
- package/src/global-account/react/hooks/useHandleConnectWithPrivy.tsx +0 -79
- package/src/global-account/react/hooks/useRPMToken.ts +0 -17
- package/src/global-account/react/utils/updateAvatar.ts +0 -21
- package/src/global-account/types/chain-networks.ts +0 -54
- package/src/shared/generated/chain-networks.json +0 -684
|
@@ -3,15 +3,16 @@ import {
|
|
|
3
3
|
ABSTRACT_PUBLIC_RPC,
|
|
4
4
|
ARBITRUM_PUBLIC_RPC,
|
|
5
5
|
AVALANCHE_PUBLIC_RPC,
|
|
6
|
-
B3_PUBLIC_RPC,
|
|
7
6
|
BASE_PUBLIC_RPC,
|
|
8
7
|
BSC_PUBLIC_RPC,
|
|
9
8
|
ETHEREUM_PUBLIC_RPC,
|
|
10
9
|
HYPEREVM_PUBLIC_RPC,
|
|
11
10
|
OPTIMISM_PUBLIC_RPC,
|
|
11
|
+
PLUME_PUBLIC_RPC,
|
|
12
12
|
POLYGON_PUBLIC_RPC,
|
|
13
13
|
} from "@b3dotfun/sdk/anyspend/constants/rpc";
|
|
14
14
|
import { components } from "@b3dotfun/sdk/anyspend/types/api";
|
|
15
|
+
import { b3Viem } from "@b3dotfun/sdk/shared/constants/chains/b3Viem";
|
|
15
16
|
import invariant from "invariant";
|
|
16
17
|
import {
|
|
17
18
|
Account,
|
|
@@ -25,7 +26,7 @@ import {
|
|
|
25
26
|
Transport,
|
|
26
27
|
WalletClient,
|
|
27
28
|
} from "viem";
|
|
28
|
-
import { abstract, arbitrum, avalanche,
|
|
29
|
+
import { abstract, arbitrum, avalanche, base, bsc, mainnet, optimism, polygon } from "viem/chains";
|
|
29
30
|
import { ChainType, IBaseChain, IEVMChain, IHyperliquidChain, ISolanaChain } from "../types/chain";
|
|
30
31
|
import {
|
|
31
32
|
getAvaxToken,
|
|
@@ -33,10 +34,12 @@ import {
|
|
|
33
34
|
getEthToken,
|
|
34
35
|
getHyperEVMNativeToken,
|
|
35
36
|
getHyperliquidUSDCToken,
|
|
37
|
+
getPlumeNativeToken,
|
|
36
38
|
getPolToken,
|
|
37
39
|
getSolanaToken,
|
|
38
40
|
HYPEREVM_CHAIN_ID,
|
|
39
41
|
HYPERLIQUID_CHAIN_ID,
|
|
42
|
+
PLUME_CHAIN_ID,
|
|
40
43
|
} from "./token";
|
|
41
44
|
|
|
42
45
|
function getCustomEvmChain(chain: Chain, rpcUrl: string): Chain {
|
|
@@ -84,11 +87,19 @@ export function clearChainRpcOverrides(): void {
|
|
|
84
87
|
export const hyperEVM = defineChain({
|
|
85
88
|
id: HYPEREVM_CHAIN_ID,
|
|
86
89
|
name: "HyperEVM",
|
|
87
|
-
nativeCurrency: { name: "
|
|
90
|
+
nativeCurrency: { name: "Hyperliquid", symbol: "HYPE", decimals: 18 },
|
|
88
91
|
rpcUrls: { default: { http: [HYPEREVM_PUBLIC_RPC] } },
|
|
89
92
|
blockExplorers: { default: { name: "HyperEVM Explorer", url: "https://hyperevmscan.io/" } },
|
|
90
93
|
});
|
|
91
94
|
|
|
95
|
+
export const plume = defineChain({
|
|
96
|
+
id: PLUME_CHAIN_ID,
|
|
97
|
+
name: "Plume",
|
|
98
|
+
nativeCurrency: { name: "Plume", symbol: "PLUME", decimals: 18 },
|
|
99
|
+
rpcUrls: { default: { http: [PLUME_PUBLIC_RPC] } },
|
|
100
|
+
blockExplorers: { default: { name: "Plume Explorer", url: "https://explorer.plume.org" } },
|
|
101
|
+
});
|
|
102
|
+
|
|
92
103
|
// export const b4testnet = defineChain({
|
|
93
104
|
// id: 19934,
|
|
94
105
|
// name: "B4 Testnet",
|
|
@@ -203,16 +214,16 @@ export const EVM_MAINNET: Record<number, IEVMChain> = {
|
|
|
203
214
|
coingeckoName: "bsc",
|
|
204
215
|
wethAddress: "0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c",
|
|
205
216
|
},
|
|
206
|
-
[
|
|
207
|
-
id:
|
|
208
|
-
name:
|
|
217
|
+
[b3Viem.id]: {
|
|
218
|
+
id: b3Viem.id,
|
|
219
|
+
name: b3Viem.name,
|
|
209
220
|
logoUrl: "https://assets.relay.link/icons/square/8333/light.png",
|
|
210
221
|
type: ChainType.EVM,
|
|
211
222
|
nativeRequired: parseEther("0.0001"),
|
|
212
223
|
canDepositNative: true,
|
|
213
|
-
defaultToken: getEthToken(
|
|
214
|
-
nativeToken: getEthToken(
|
|
215
|
-
viem:
|
|
224
|
+
defaultToken: getEthToken(b3Viem.id),
|
|
225
|
+
nativeToken: getEthToken(b3Viem.id),
|
|
226
|
+
viem: b3Viem,
|
|
216
227
|
pollingInterval: 1000, // 1 second for B3
|
|
217
228
|
zapperEnum: "B3_MAINNET",
|
|
218
229
|
coingeckoName: "b3",
|
|
@@ -247,6 +258,20 @@ export const EVM_MAINNET: Record<number, IEVMChain> = {
|
|
|
247
258
|
coingeckoName: "hyperevm",
|
|
248
259
|
wethAddress: "0x5555555555555555555555555555555555555555",
|
|
249
260
|
},
|
|
261
|
+
[plume.id]: {
|
|
262
|
+
id: plume.id,
|
|
263
|
+
name: plume.name,
|
|
264
|
+
logoUrl: "https://cdn.b3.fun/b3os-icons/plume.svg",
|
|
265
|
+
type: ChainType.EVM,
|
|
266
|
+
nativeRequired: parseEther("5"), // 5 PLUME ≈ $0.06 — gas reserve; Plume gasPrice ~1000 gwei × 2.2M gas (approve+deposit) needs ~2.2 PLUME, +headroom for spikes
|
|
267
|
+
canDepositNative: true,
|
|
268
|
+
defaultToken: getPlumeNativeToken(),
|
|
269
|
+
nativeToken: getPlumeNativeToken(),
|
|
270
|
+
viem: plume,
|
|
271
|
+
pollingInterval: 1000, // 1 second for Plume (L2 fast blocks)
|
|
272
|
+
coingeckoName: "plume-network",
|
|
273
|
+
wethAddress: "0xea237441c92cae6fc17caaf9a7acb3f953be4bd1", // WPLUME (wrapped native)
|
|
274
|
+
},
|
|
250
275
|
};
|
|
251
276
|
|
|
252
277
|
export const EVM_TESTNET: Record<number, IEVMChain> = {
|
|
@@ -605,7 +630,7 @@ export function getPaymentUrl(
|
|
|
605
630
|
}
|
|
606
631
|
|
|
607
632
|
export function getExplorerTxUrl(chainId: number, txHash: string) {
|
|
608
|
-
if (chainId ===
|
|
633
|
+
if (chainId === b3Viem.id) {
|
|
609
634
|
return "https://explorer.b3.fun/b3/tx/" + txHash;
|
|
610
635
|
}
|
|
611
636
|
if (EVM_CHAINS[chainId]) {
|
|
@@ -4,6 +4,7 @@ import { avalanche, bsc, polygon } from "viem/chains";
|
|
|
4
4
|
|
|
5
5
|
export const HYPERLIQUID_CHAIN_ID = 1337;
|
|
6
6
|
export const HYPEREVM_CHAIN_ID = 999;
|
|
7
|
+
export const PLUME_CHAIN_ID = 98866;
|
|
7
8
|
|
|
8
9
|
/**
|
|
9
10
|
* Hyperliquid uses a special 34-character USDC address format (0x + 32 hex digits)
|
|
@@ -106,3 +107,16 @@ export function getHyperliquidUSDCToken(): components["schemas"]["Token"] {
|
|
|
106
107
|
},
|
|
107
108
|
};
|
|
108
109
|
}
|
|
110
|
+
|
|
111
|
+
export function getPlumeNativeToken(): components["schemas"]["Token"] {
|
|
112
|
+
return {
|
|
113
|
+
chainId: PLUME_CHAIN_ID,
|
|
114
|
+
address: ZERO_ADDRESS,
|
|
115
|
+
symbol: "PLUME",
|
|
116
|
+
name: "Plume",
|
|
117
|
+
decimals: 18,
|
|
118
|
+
metadata: {
|
|
119
|
+
logoURI: "https://cdn.b3.fun/b3os-icons/plume.svg",
|
|
120
|
+
},
|
|
121
|
+
};
|
|
122
|
+
}
|
package/src/app.shared.ts
CHANGED
|
@@ -2,18 +2,37 @@ import { ClientApplication } from "@b3dotfun/b3-api";
|
|
|
2
2
|
import { AuthenticationClient } from "@feathersjs/authentication-client";
|
|
3
3
|
import Cookies from "js-cookie";
|
|
4
4
|
import { B3_AUTH_COOKIE_NAME } from "./shared/constants";
|
|
5
|
+
import { getSessionDurationDays } from "./shared/utils/session-duration";
|
|
5
6
|
|
|
7
|
+
/** Default API URL derived from environment variables. */
|
|
6
8
|
export const B3_API_URL =
|
|
7
9
|
process.env.EXPO_PUBLIC_B3_API || process.env.NEXT_PUBLIC_B3_API || process.env.PUBLIC_B3_API || "https://api.b3.fun";
|
|
8
10
|
|
|
9
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Runtime-overridable API URL. Set by `B3Provider` when an `apiUrl` prop
|
|
13
|
+
* is provided. Falls back to the env-var-derived `B3_API_URL`.
|
|
14
|
+
*/
|
|
15
|
+
let _apiUrlOverride: string | null = null;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Override the B3 API URL at runtime. Called by `B3Provider` when an
|
|
19
|
+
* `apiUrl` prop is provided. Pass `null` to revert to the default.
|
|
20
|
+
*/
|
|
21
|
+
export function setB3ApiUrl(url: string | null): void {
|
|
22
|
+
_apiUrlOverride = url;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/** Get the current B3 API URL (prefers runtime override, then env var). */
|
|
26
|
+
export function getB3ApiUrl(): string {
|
|
27
|
+
return _apiUrlOverride || B3_API_URL;
|
|
28
|
+
}
|
|
10
29
|
|
|
11
30
|
export const authenticate = async (
|
|
12
31
|
app: ClientApplication,
|
|
13
32
|
accessToken: string,
|
|
14
33
|
identityToken: string,
|
|
15
34
|
params?: Record<string, any>,
|
|
16
|
-
) => {
|
|
35
|
+
): Promise<Record<string, any> | null> => {
|
|
17
36
|
const fullToken = `${accessToken}+${identityToken}`;
|
|
18
37
|
|
|
19
38
|
// Do not authenticate if there is no token
|
|
@@ -33,12 +52,14 @@ export const authenticate = async (
|
|
|
33
52
|
},
|
|
34
53
|
);
|
|
35
54
|
|
|
36
|
-
|
|
37
|
-
if (
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
55
|
+
const token = Cookies.get(B3_AUTH_COOKIE_NAME);
|
|
56
|
+
if (token) {
|
|
57
|
+
const days = getSessionDurationDays(response?.user?.preferences, params?.partnerId);
|
|
58
|
+
Cookies.set(B3_AUTH_COOKIE_NAME, token, {
|
|
59
|
+
...(days > 0 ? { expires: days } : {}),
|
|
60
|
+
secure: true,
|
|
61
|
+
sameSite: "Lax",
|
|
62
|
+
});
|
|
42
63
|
}
|
|
43
64
|
|
|
44
65
|
return response;
|
|
@@ -77,7 +77,11 @@ const app = createClient(socketio(socket), {
|
|
|
77
77
|
storageKey: B3_AUTH_COOKIE_NAME,
|
|
78
78
|
});
|
|
79
79
|
|
|
80
|
-
export const authenticate = async (
|
|
80
|
+
export const authenticate = async (
|
|
81
|
+
accessToken: string,
|
|
82
|
+
identityToken: string,
|
|
83
|
+
params?: Record<string, any>,
|
|
84
|
+
): Promise<Record<string, any> | null> => {
|
|
81
85
|
const fullToken = `${accessToken}+${identityToken}`;
|
|
82
86
|
|
|
83
87
|
// Do not authenticate if there is no token
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { createAuthClient } from "better-auth/client";
|
|
2
|
+
import { twoFactorClient } from "better-auth/client/plugins";
|
|
3
|
+
import { getB3ApiUrl } from "../app.shared";
|
|
4
|
+
|
|
5
|
+
export type B3BetterAuthClient = ReturnType<typeof createB3BetterAuthClient>;
|
|
6
|
+
|
|
7
|
+
export function createB3BetterAuthClient(baseURL?: string) {
|
|
8
|
+
return createAuthClient({
|
|
9
|
+
baseURL: baseURL ?? getB3ApiUrl(),
|
|
10
|
+
basePath: "/auth",
|
|
11
|
+
fetchOptions: {
|
|
12
|
+
credentials: "include",
|
|
13
|
+
},
|
|
14
|
+
plugins: [twoFactorClient()],
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
// Lazily-initialized singleton. Recreated when the API URL changes via
|
|
19
|
+
// `resetBetterAuthClient()` (called by B3Provider when `apiUrl` changes).
|
|
20
|
+
let _client: B3BetterAuthClient | null = null;
|
|
21
|
+
let _clientUrl: string | null = null;
|
|
22
|
+
|
|
23
|
+
/** Get the shared BetterAuth client, creating it if needed. */
|
|
24
|
+
export function getBetterAuthClient(): B3BetterAuthClient {
|
|
25
|
+
const url = getB3ApiUrl();
|
|
26
|
+
if (!_client || _clientUrl !== url) {
|
|
27
|
+
_client = createB3BetterAuthClient(url);
|
|
28
|
+
_clientUrl = url;
|
|
29
|
+
}
|
|
30
|
+
return _client;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/** Force-recreate the client on next access (e.g. after API URL change). */
|
|
34
|
+
export function resetBetterAuthClient(): void {
|
|
35
|
+
_client = null;
|
|
36
|
+
_clientUrl = null;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* @deprecated Use `getBetterAuthClient()` instead. This static singleton
|
|
41
|
+
* does not reflect runtime API URL changes via `B3Provider apiUrl` prop.
|
|
42
|
+
*/
|
|
43
|
+
export const betterAuthClient = createB3BetterAuthClient();
|
|
@@ -80,7 +80,11 @@ const app = createClient(socketio(socket), {
|
|
|
80
80
|
storageKey: BSMNT_AUTH_COOKIE_NAME,
|
|
81
81
|
});
|
|
82
82
|
|
|
83
|
-
export const authenticate = async (
|
|
83
|
+
export const authenticate = async (
|
|
84
|
+
accessToken: string,
|
|
85
|
+
identityToken: string,
|
|
86
|
+
params?: Record<string, any>,
|
|
87
|
+
): Promise<Record<string, any> | null> => {
|
|
84
88
|
const fullToken = `${accessToken}+${identityToken}`;
|
|
85
89
|
|
|
86
90
|
// Do not authenticate if there is no token
|
|
@@ -42,7 +42,11 @@ const app = createClient(socketio(socket), {
|
|
|
42
42
|
storageKey: BSMNT_AUTH_COOKIE_NAME,
|
|
43
43
|
});
|
|
44
44
|
|
|
45
|
-
export const authenticate = async (
|
|
45
|
+
export const authenticate = async (
|
|
46
|
+
accessToken: string,
|
|
47
|
+
identityToken: string,
|
|
48
|
+
params?: Record<string, any>,
|
|
49
|
+
): Promise<Record<string, any> | null> => {
|
|
46
50
|
const fullToken = `${accessToken}+${identityToken}`;
|
|
47
51
|
|
|
48
52
|
// Do not authenticate if there is no token
|
|
@@ -73,13 +77,10 @@ export const resetSocket = () => {
|
|
|
73
77
|
// reset the socket connection
|
|
74
78
|
};
|
|
75
79
|
|
|
76
|
-
export
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
export const authenticateWithB3JWT = async (fullToken: string, params?: Record<string, any>) => {
|
|
80
|
+
export const authenticateWithB3JWT = async (
|
|
81
|
+
fullToken: string,
|
|
82
|
+
params?: Record<string, any>,
|
|
83
|
+
): Promise<Record<string, any> | null> => {
|
|
83
84
|
// Do not authenticate if there is no token
|
|
84
85
|
if (!fullToken) {
|
|
85
86
|
console.log("No token found, not authenticating");
|
|
@@ -2,7 +2,7 @@ import { ClientApplication, createClient } from "@b3dotfun/b3-api";
|
|
|
2
2
|
import rest from "@feathersjs/rest-client";
|
|
3
3
|
import socketio from "@feathersjs/socketio-client";
|
|
4
4
|
import io from "socket.io-client";
|
|
5
|
-
import { authenticate as authenticateB3,
|
|
5
|
+
import { authenticate as authenticateB3, getB3ApiUrl, clientOptions } from "../app.shared";
|
|
6
6
|
|
|
7
7
|
export type ClientType = "socket" | "rest";
|
|
8
8
|
|
|
@@ -13,17 +13,21 @@ let currentClient: ClientApplication | null = null;
|
|
|
13
13
|
// Socket client instance
|
|
14
14
|
let socketClient: ClientApplication | null = null;
|
|
15
15
|
let socketInstance: any = null;
|
|
16
|
+
let socketClientUrl: string | null = null;
|
|
16
17
|
|
|
17
18
|
// REST client instance
|
|
18
19
|
let restClient: ClientApplication | null = null;
|
|
20
|
+
let restClientUrl: string | null = null;
|
|
19
21
|
|
|
20
22
|
/**
|
|
21
23
|
* Creates a socket client
|
|
22
24
|
*/
|
|
23
25
|
function createSocketClient(): ClientApplication {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
+
const url = getB3ApiUrl();
|
|
27
|
+
if (!socketClient || socketClientUrl !== url) {
|
|
28
|
+
socketInstance = io(url, { transports: ["websocket"] });
|
|
26
29
|
socketClient = createClient(socketio(socketInstance), clientOptions);
|
|
30
|
+
socketClientUrl = url;
|
|
27
31
|
}
|
|
28
32
|
return socketClient;
|
|
29
33
|
}
|
|
@@ -40,13 +44,24 @@ function resolveFetch(): typeof fetch {
|
|
|
40
44
|
}
|
|
41
45
|
|
|
42
46
|
function createRestClient(): ClientApplication {
|
|
43
|
-
|
|
44
|
-
|
|
47
|
+
const url = getB3ApiUrl();
|
|
48
|
+
if (!restClient || restClientUrl !== url) {
|
|
49
|
+
const connection = rest(url).fetch(resolveFetch());
|
|
45
50
|
restClient = createClient(connection, clientOptions);
|
|
51
|
+
restClientUrl = url;
|
|
46
52
|
}
|
|
47
53
|
return restClient;
|
|
48
54
|
}
|
|
49
55
|
|
|
56
|
+
/** Reset all cached clients (called when API URL changes). */
|
|
57
|
+
export function resetClients(): void {
|
|
58
|
+
socketClient = null;
|
|
59
|
+
socketClientUrl = null;
|
|
60
|
+
restClient = null;
|
|
61
|
+
restClientUrl = null;
|
|
62
|
+
currentClient = null;
|
|
63
|
+
}
|
|
64
|
+
|
|
50
65
|
/**
|
|
51
66
|
* Sets the active client type and creates the appropriate client
|
|
52
67
|
*
|
|
@@ -99,7 +114,11 @@ export function resetSocket(): void {
|
|
|
99
114
|
/**
|
|
100
115
|
* Authenticates with the current active client
|
|
101
116
|
*/
|
|
102
|
-
export const authenticate = async (
|
|
117
|
+
export const authenticate = async (
|
|
118
|
+
accessToken: string,
|
|
119
|
+
identityToken: string,
|
|
120
|
+
params?: Record<string, any>,
|
|
121
|
+
): Promise<Record<string, any> | null> => {
|
|
103
122
|
return authenticateB3(getClient(), accessToken, identityToken, params);
|
|
104
123
|
};
|
|
105
124
|
|
|
@@ -111,7 +130,7 @@ export const authenticateWithClient = async (
|
|
|
111
130
|
accessToken: string,
|
|
112
131
|
identityToken: string,
|
|
113
132
|
params?: Record<string, any>,
|
|
114
|
-
) => {
|
|
133
|
+
): Promise<Record<string, any> | null> => {
|
|
115
134
|
const client = getClientByType(clientType);
|
|
116
135
|
return authenticateB3(client, accessToken, identityToken, params);
|
|
117
136
|
};
|
|
@@ -119,7 +138,15 @@ export const authenticateWithClient = async (
|
|
|
119
138
|
/**
|
|
120
139
|
* Authenticates with both clients in parallel (useful for migration scenarios)
|
|
121
140
|
*/
|
|
122
|
-
export const authenticateBoth = async (
|
|
141
|
+
export const authenticateBoth = async (
|
|
142
|
+
accessToken: string,
|
|
143
|
+
identityToken: string,
|
|
144
|
+
params?: Record<string, any>,
|
|
145
|
+
): Promise<{
|
|
146
|
+
socket: Record<string, any> | null;
|
|
147
|
+
rest: Record<string, any> | null;
|
|
148
|
+
success: boolean;
|
|
149
|
+
}> => {
|
|
123
150
|
const [socketResult, restResult] = await Promise.allSettled([
|
|
124
151
|
authenticateWithClient("socket", accessToken, identityToken, params),
|
|
125
152
|
authenticateWithClient("rest", accessToken, identityToken, params),
|
|
@@ -135,7 +162,12 @@ export const authenticateBoth = async (accessToken: string, identityToken: strin
|
|
|
135
162
|
/**
|
|
136
163
|
* Switches the client type and authenticates
|
|
137
164
|
*/
|
|
138
|
-
export async function switchClientAndAuth(
|
|
165
|
+
export async function switchClientAndAuth(
|
|
166
|
+
type: ClientType,
|
|
167
|
+
access: string,
|
|
168
|
+
id: string,
|
|
169
|
+
params?: any,
|
|
170
|
+
): Promise<Record<string, any> | null> {
|
|
139
171
|
setClientType(type);
|
|
140
172
|
return authenticateWithClient(type, access, id, params);
|
|
141
173
|
}
|
|
@@ -13,7 +13,7 @@ import { validateImageUrl } from "@b3dotfun/sdk/global-account/react/utils/profi
|
|
|
13
13
|
import { cn } from "@b3dotfun/sdk/shared/utils/cn";
|
|
14
14
|
import { debugB3React } from "@b3dotfun/sdk/shared/utils/debug";
|
|
15
15
|
import { getIpfsUrl } from "@b3dotfun/sdk/shared/utils/ipfs";
|
|
16
|
-
import {
|
|
16
|
+
import { uploadFile as uploadToB3 } from "@b3dotfun/sdk/shared/utils/upload";
|
|
17
17
|
import { Loader2, Upload, X } from "lucide-react";
|
|
18
18
|
import { useCallback, useRef, useState } from "react";
|
|
19
19
|
import type { Area } from "react-easy-crop";
|
|
@@ -21,7 +21,6 @@ import Cropper from "react-easy-crop";
|
|
|
21
21
|
import "react-easy-crop/react-easy-crop.css";
|
|
22
22
|
|
|
23
23
|
import { useActiveAccount } from "thirdweb/react";
|
|
24
|
-
import { upload } from "thirdweb/storage";
|
|
25
24
|
import { useModalStore } from "../../stores";
|
|
26
25
|
import ModalHeader from "../ModalHeader/ModalHeader";
|
|
27
26
|
|
|
@@ -62,6 +61,8 @@ export function AvatarEditor({ onSetAvatar, className }: AvatarEditorProps) {
|
|
|
62
61
|
const setB3ModalContentType = useModalStore(state => state.setB3ModalContentType);
|
|
63
62
|
const contentType = useModalStore(state => state.contentType);
|
|
64
63
|
|
|
64
|
+
const { authStrategy } = useB3Config();
|
|
65
|
+
const isBetterAuth = authStrategy === "better-auth";
|
|
65
66
|
const account = useActiveAccount();
|
|
66
67
|
const { data: profile, refetch: refreshProfile } = useProfile({
|
|
67
68
|
address: account?.address,
|
|
@@ -162,7 +163,7 @@ export function AvatarEditor({ onSetAvatar, className }: AvatarEditorProps) {
|
|
|
162
163
|
};
|
|
163
164
|
|
|
164
165
|
const handleSaveChanges = async () => {
|
|
165
|
-
if (!account?.address) {
|
|
166
|
+
if (!isBetterAuth && !account?.address) {
|
|
166
167
|
toast.error("No account connected");
|
|
167
168
|
return;
|
|
168
169
|
}
|
|
@@ -241,22 +242,18 @@ export function AvatarEditor({ onSetAvatar, className }: AvatarEditorProps) {
|
|
|
241
242
|
}
|
|
242
243
|
}
|
|
243
244
|
|
|
244
|
-
// Upload
|
|
245
|
+
// Upload file if we have one
|
|
245
246
|
if (fileToUpload) {
|
|
246
|
-
debug("Starting upload
|
|
247
|
+
debug("Starting upload", fileToUpload);
|
|
247
248
|
|
|
248
|
-
|
|
249
|
-
const ipfsUrl = await upload({
|
|
250
|
-
client,
|
|
251
|
-
files: [fileToUpload],
|
|
252
|
-
});
|
|
249
|
+
const avatarUrl = await uploadToB3(fileToUpload);
|
|
253
250
|
|
|
254
|
-
debug("Upload successful",
|
|
251
|
+
debug("Upload successful", avatarUrl);
|
|
255
252
|
|
|
256
253
|
// Save avatar URL using profiles service
|
|
257
254
|
const user = await app.service("users").setAvatar(
|
|
258
255
|
{
|
|
259
|
-
avatar:
|
|
256
|
+
avatar: avatarUrl,
|
|
260
257
|
},
|
|
261
258
|
// @ts-expect-error - our typed client is expecting context even though it's set elsewhere
|
|
262
259
|
{},
|
|
@@ -27,6 +27,7 @@ import { LinkAccount } from "./LinkAccount/LinkAccount";
|
|
|
27
27
|
import { LinkNewAccount } from "./LinkAccount/LinkNewAccount";
|
|
28
28
|
import { ManageAccount } from "./ManageAccount/ManageAccount";
|
|
29
29
|
import NotificationsContent from "./ManageAccount/NotificationsContent";
|
|
30
|
+
import SessionDurationContent from "./ManageAccount/SessionDurationContent";
|
|
30
31
|
import { RequestPermissions } from "./RequestPermissions/RequestPermissions";
|
|
31
32
|
import { Send } from "./Send/Send";
|
|
32
33
|
import { SignInWithB3Flow } from "./SignInWithB3/SignInWithB3Flow";
|
|
@@ -43,7 +44,7 @@ export function B3DynamicModal() {
|
|
|
43
44
|
const navigateBack = useModalStore(state => state.navigateBack);
|
|
44
45
|
const { theme } = useB3Config();
|
|
45
46
|
const isMobile = useIsMobile();
|
|
46
|
-
const { toasts, removeToast } = useToastContext();
|
|
47
|
+
const { toasts, removeToast, headerMode } = useToastContext();
|
|
47
48
|
|
|
48
49
|
// Define arrays for different modal type groups
|
|
49
50
|
const fullWidthTypes = [
|
|
@@ -172,6 +173,8 @@ export function B3DynamicModal() {
|
|
|
172
173
|
return <Send {...contentType} />;
|
|
173
174
|
case "notifications":
|
|
174
175
|
return <NotificationsContent {...contentType} />;
|
|
176
|
+
case "sessionDuration":
|
|
177
|
+
return <SessionDurationContent partnerId={contentType.partnerId} />;
|
|
175
178
|
// Add other modal types here
|
|
176
179
|
default:
|
|
177
180
|
return null;
|
|
@@ -247,7 +250,7 @@ export function B3DynamicModal() {
|
|
|
247
250
|
|
|
248
251
|
{/* Toast Container - Part of modal-inner-content layer */}
|
|
249
252
|
<AnimatePresence>
|
|
250
|
-
{toasts.length > 0 && (
|
|
253
|
+
{!headerMode && toasts.length > 0 && (
|
|
251
254
|
<motion.div
|
|
252
255
|
initial={{ height: 0 }}
|
|
253
256
|
animate={{ height: "auto" }}
|
|
@@ -1,16 +1,20 @@
|
|
|
1
|
+
import { EIP1193 } from "thirdweb/wallets";
|
|
1
2
|
import { useAuthentication } from "../../hooks";
|
|
2
3
|
import { useAutoSelectWallet } from "../../hooks/useAutoSelectWallet";
|
|
3
4
|
|
|
4
5
|
const AuthenticationProvider = ({
|
|
5
6
|
partnerId,
|
|
6
7
|
automaticallySetFirstEoa,
|
|
8
|
+
defaultEoaProvider,
|
|
7
9
|
}: {
|
|
8
10
|
partnerId: string;
|
|
9
11
|
automaticallySetFirstEoa: boolean;
|
|
12
|
+
defaultEoaProvider?: EIP1193.EIP1193Provider;
|
|
10
13
|
}) => {
|
|
11
14
|
useAuthentication(partnerId);
|
|
12
15
|
useAutoSelectWallet({
|
|
13
16
|
enabled: automaticallySetFirstEoa,
|
|
17
|
+
defaultEoaProvider,
|
|
14
18
|
});
|
|
15
19
|
|
|
16
20
|
return null;
|
|
@@ -15,6 +15,8 @@ const DEFAULT_PERMISSIONS: PermissionsConfig = {
|
|
|
15
15
|
endDate: new Date(Date.now() + 1000 * 60 * 60 * 24 * 365), // 1 year from now
|
|
16
16
|
};
|
|
17
17
|
|
|
18
|
+
export type AuthStrategy = "thirdweb" | "better-auth";
|
|
19
|
+
|
|
18
20
|
export interface B3ConfigContextType {
|
|
19
21
|
accountOverride?: Account;
|
|
20
22
|
automaticallySetFirstEoa: boolean;
|
|
@@ -25,6 +27,7 @@ export interface B3ConfigContextType {
|
|
|
25
27
|
partnerId: string;
|
|
26
28
|
stripePublishableKey?: string;
|
|
27
29
|
createClientReferenceId?: (params: CreateOrderParams | CreateOnrampOrderParams) => Promise<string>;
|
|
30
|
+
authStrategy: AuthStrategy;
|
|
28
31
|
}
|
|
29
32
|
|
|
30
33
|
const B3ConfigContext = createContext<B3ConfigContextType | null>(null);
|
|
@@ -40,6 +43,7 @@ export function B3ConfigProvider({
|
|
|
40
43
|
partnerId,
|
|
41
44
|
stripePublishableKey,
|
|
42
45
|
createClientReferenceId,
|
|
46
|
+
authStrategy = "thirdweb",
|
|
43
47
|
}: {
|
|
44
48
|
children: React.ReactNode;
|
|
45
49
|
accountOverride?: Account;
|
|
@@ -51,6 +55,7 @@ export function B3ConfigProvider({
|
|
|
51
55
|
partnerId: string;
|
|
52
56
|
stripePublishableKey?: string;
|
|
53
57
|
createClientReferenceId?: (params: CreateOrderParams | CreateOnrampOrderParams) => Promise<string>;
|
|
58
|
+
authStrategy?: AuthStrategy;
|
|
54
59
|
}) {
|
|
55
60
|
return (
|
|
56
61
|
<B3ConfigContext.Provider
|
|
@@ -64,6 +69,7 @@ export function B3ConfigProvider({
|
|
|
64
69
|
partnerId,
|
|
65
70
|
stripePublishableKey,
|
|
66
71
|
createClientReferenceId,
|
|
72
|
+
authStrategy,
|
|
67
73
|
}}
|
|
68
74
|
>
|
|
69
75
|
{children}
|
|
@@ -1,19 +1,16 @@
|
|
|
1
1
|
import { PermissionsConfig } from "@b3dotfun/sdk/global-account/types/permissions";
|
|
2
|
-
import {
|
|
2
|
+
import { WalletProvider } from "@b3dotfun/sdk/wallet/react";
|
|
3
3
|
import { ThirdwebProvider } from "thirdweb/react";
|
|
4
4
|
import { Account, Wallet } from "thirdweb/wallets";
|
|
5
5
|
|
|
6
6
|
import { ClientType } from "../../../client-manager";
|
|
7
7
|
|
|
8
|
-
import {
|
|
8
|
+
import { useMemo } from "react";
|
|
9
9
|
import { createWagmiConfig } from "../../utils/createWagmiConfig";
|
|
10
10
|
import AuthenticationProvider from "./AuthenticationProvider";
|
|
11
11
|
import { B3ConfigProvider } from "./B3ConfigProvider";
|
|
12
12
|
import { LocalSDKProvider } from "./LocalSDKProvider";
|
|
13
13
|
|
|
14
|
-
// Create queryClient instance
|
|
15
|
-
const queryClient = new QueryClient();
|
|
16
|
-
|
|
17
14
|
/**
|
|
18
15
|
* Main B3Provider component
|
|
19
16
|
*/
|
|
@@ -82,23 +79,21 @@ export function InnerProvider({
|
|
|
82
79
|
partnerId: string;
|
|
83
80
|
rpcUrls?: Record<number, string>;
|
|
84
81
|
}) {
|
|
85
|
-
const wagmiConfig = createWagmiConfig({ partnerId, rpcUrls });
|
|
82
|
+
const wagmiConfig = useMemo(() => createWagmiConfig({ partnerId, rpcUrls }), [partnerId, rpcUrls]);
|
|
86
83
|
|
|
87
84
|
return (
|
|
88
|
-
<
|
|
89
|
-
<
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
</QueryClientProvider>
|
|
102
|
-
</WagmiProvider>
|
|
85
|
+
<WalletProvider wagmiConfig={wagmiConfig}>
|
|
86
|
+
<B3ConfigProvider
|
|
87
|
+
accountOverride={accountOverride}
|
|
88
|
+
environment={environment}
|
|
89
|
+
automaticallySetFirstEoa={false}
|
|
90
|
+
theme={theme}
|
|
91
|
+
clientType={clientType}
|
|
92
|
+
partnerId={partnerId}
|
|
93
|
+
defaultPermissions={defaultPermissions}
|
|
94
|
+
>
|
|
95
|
+
{children}
|
|
96
|
+
</B3ConfigProvider>
|
|
97
|
+
</WalletProvider>
|
|
103
98
|
);
|
|
104
99
|
}
|