@b3dotfun/sdk 0.0.64 → 0.0.65-test.1
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/dist/cjs/anyspend/react/components/AnySpend.js +73 -33
- package/dist/cjs/anyspend/react/components/AnySpendCustom.js +1 -1
- package/dist/cjs/anyspend/react/components/AnySpendCustomExactIn.js +1 -5
- package/dist/cjs/anyspend/react/components/AnyspendDepositHype.js +1 -5
- package/dist/cjs/anyspend/react/components/common/CryptoPaymentMethod.js +1 -5
- package/dist/cjs/anyspend/react/components/common/FeeDetailPanel.js +1 -1
- package/dist/cjs/anyspend/react/components/common/FiatPaymentMethod.js +2 -2
- package/dist/cjs/anyspend/react/components/common/OrderHistory.d.ts +1 -1
- package/dist/cjs/anyspend/react/components/common/OrderHistory.js +7 -3
- package/dist/cjs/anyspend/react/components/common/PanelOnrampPayment.js +1 -1
- package/dist/cjs/anyspend/react/components/common/PointsDetailPanel.js +1 -1
- package/dist/cjs/anyspend/react/components/common/RecipientSelection.js +1 -1
- package/dist/cjs/anyspend/utils/index.d.ts +0 -1
- package/dist/cjs/anyspend/utils/index.js +0 -1
- package/dist/cjs/global-account/react/components/AccountAssets/AccountAssets.js +38 -2
- package/dist/cjs/global-account/react/components/AvatarEditor/AvatarEditor.js +139 -33
- package/dist/cjs/global-account/react/components/B3DynamicModal.js +29 -13
- package/dist/cjs/global-account/react/components/Deposit/Deposit.d.ts +1 -0
- package/dist/cjs/global-account/react/components/Deposit/Deposit.js +65 -0
- package/dist/cjs/global-account/react/components/LinkAccount/LinkAccount.d.ts +6 -4
- package/dist/cjs/global-account/react/components/LinkAccount/LinkAccount.js +113 -279
- package/dist/cjs/global-account/react/components/LinkAccount/LinkNewAccount.d.ts +4 -0
- package/dist/cjs/global-account/react/components/LinkAccount/LinkNewAccount.js +331 -0
- package/dist/cjs/global-account/react/components/ManageAccount/AppsContent.d.ts +6 -0
- package/dist/cjs/global-account/react/components/ManageAccount/AppsContent.js +34 -0
- package/dist/cjs/global-account/react/components/ManageAccount/BalanceContent.js +2 -2
- package/dist/cjs/global-account/react/components/ManageAccount/BottomNavigation.d.ts +2 -0
- package/dist/cjs/global-account/react/components/ManageAccount/BottomNavigation.js +23 -0
- package/dist/cjs/global-account/react/components/ManageAccount/Header.d.ts +3 -0
- package/dist/cjs/global-account/react/components/ManageAccount/Header.js +120 -0
- package/dist/cjs/global-account/react/components/ManageAccount/HomeActions.d.ts +5 -0
- package/dist/cjs/global-account/react/components/ManageAccount/HomeActions.js +43 -0
- package/dist/cjs/global-account/react/components/ManageAccount/HomeContent.d.ts +6 -0
- package/dist/cjs/global-account/react/components/ManageAccount/HomeContent.js +16 -0
- package/dist/cjs/global-account/react/components/ManageAccount/ManageAccount.js +24 -193
- package/dist/cjs/global-account/react/components/ManageAccount/NFTContent.d.ts +2 -0
- package/dist/cjs/global-account/react/components/ManageAccount/NFTContent.js +15 -0
- package/dist/cjs/global-account/react/components/ManageAccount/ProfileSection.d.ts +2 -0
- package/dist/cjs/global-account/react/components/ManageAccount/ProfileSection.js +44 -0
- package/dist/cjs/global-account/react/components/ManageAccount/SettingsContent.d.ts +7 -0
- package/dist/cjs/global-account/react/components/ManageAccount/SettingsContent.js +50 -0
- package/dist/cjs/global-account/react/components/ManageAccount/SettingsMenuItem.d.ts +9 -0
- package/dist/cjs/global-account/react/components/ManageAccount/SettingsMenuItem.js +8 -0
- package/dist/cjs/global-account/react/components/ManageAccount/SettingsProfileCard.d.ts +2 -0
- package/dist/cjs/global-account/react/components/ManageAccount/SettingsProfileCard.js +38 -0
- package/dist/cjs/global-account/react/components/ManageAccount/TokenContent.d.ts +2 -0
- package/dist/cjs/global-account/react/components/ManageAccount/TokenContent.js +22 -0
- package/dist/cjs/global-account/react/components/ModalHeader/ModalHeader.d.ts +10 -0
- package/dist/cjs/global-account/react/components/ModalHeader/ModalHeader.js +12 -0
- package/dist/cjs/global-account/react/components/Send/Send.d.ts +5 -0
- package/dist/cjs/global-account/react/components/Send/Send.js +187 -0
- package/dist/cjs/global-account/react/components/icons/BellIcon.d.ts +3 -0
- package/dist/cjs/global-account/react/components/icons/BellIcon.js +5 -0
- package/dist/cjs/global-account/react/components/icons/ChevronDownIcon.d.ts +2 -0
- package/dist/cjs/global-account/react/components/icons/ChevronDownIcon.js +7 -0
- package/dist/cjs/global-account/react/components/icons/CopyIcon.d.ts +2 -0
- package/dist/cjs/global-account/react/components/icons/CopyIcon.js +7 -0
- package/dist/cjs/global-account/react/components/icons/LinkIcon.d.ts +3 -0
- package/dist/cjs/global-account/react/components/icons/LinkIcon.js +5 -0
- package/dist/cjs/global-account/react/components/icons/LockIcon.d.ts +3 -0
- package/dist/cjs/global-account/react/components/icons/LockIcon.js +5 -0
- package/dist/cjs/global-account/react/components/icons/WalletIcon.d.ts +2 -0
- package/dist/cjs/global-account/react/components/icons/WalletIcon.js +7 -0
- package/dist/cjs/global-account/react/components/index.d.ts +4 -2
- package/dist/cjs/global-account/react/components/index.js +11 -4
- package/dist/cjs/global-account/react/components/ui/Tabs.js +2 -2
- package/dist/cjs/global-account/react/components/ui/dialog.js +2 -2
- package/dist/cjs/global-account/react/hooks/index.d.ts +1 -1
- package/dist/cjs/global-account/react/hooks/index.js +3 -1
- package/dist/cjs/global-account/react/hooks/useAuthentication.js +0 -11
- package/dist/cjs/global-account/react/hooks/useB3BalanceFromAddresses.js +1 -0
- package/dist/cjs/global-account/react/hooks/useGlobalAccount.d.ts +1 -0
- package/dist/cjs/global-account/react/hooks/useGlobalAccount.js +3 -0
- package/dist/cjs/global-account/react/stores/index.d.ts +1 -0
- package/dist/cjs/global-account/react/stores/index.js +3 -1
- package/dist/cjs/global-account/react/stores/useModalStore.d.ts +34 -3
- package/dist/cjs/global-account/react/stores/useRecentAddressesStore.d.ts +25 -0
- package/dist/cjs/global-account/react/stores/useRecentAddressesStore.js +36 -0
- package/dist/cjs/global-account/react/utils/profileDisplay.d.ts +2 -0
- package/dist/cjs/global-account/react/utils/profileDisplay.js +2 -2
- package/dist/cjs/shared/constants/chains/supported.d.ts +2 -2
- package/dist/cjs/shared/utils/ipfs.js +1 -1
- package/dist/esm/anyspend/react/components/AnySpend.js +74 -34
- package/dist/esm/anyspend/react/components/AnySpendCustom.js +1 -1
- package/dist/esm/anyspend/react/components/AnySpendCustomExactIn.js +2 -6
- package/dist/esm/anyspend/react/components/AnyspendDepositHype.js +2 -6
- package/dist/esm/anyspend/react/components/common/CryptoPaymentMethod.js +2 -6
- package/dist/esm/anyspend/react/components/common/FeeDetailPanel.js +1 -1
- package/dist/esm/anyspend/react/components/common/FiatPaymentMethod.js +2 -2
- package/dist/esm/anyspend/react/components/common/OrderHistory.d.ts +1 -1
- package/dist/esm/anyspend/react/components/common/OrderHistory.js +6 -5
- package/dist/esm/anyspend/react/components/common/PanelOnrampPayment.js +1 -1
- package/dist/esm/anyspend/react/components/common/PointsDetailPanel.js +1 -1
- package/dist/esm/anyspend/react/components/common/RecipientSelection.js +1 -1
- package/dist/esm/anyspend/utils/index.d.ts +0 -1
- package/dist/esm/anyspend/utils/index.js +0 -1
- package/dist/esm/global-account/react/components/AccountAssets/AccountAssets.js +38 -2
- package/dist/esm/global-account/react/components/AvatarEditor/AvatarEditor.js +140 -34
- package/dist/esm/global-account/react/components/B3DynamicModal.js +30 -14
- package/dist/esm/global-account/react/components/Deposit/Deposit.d.ts +1 -0
- package/dist/esm/global-account/react/components/Deposit/Deposit.js +59 -0
- package/dist/esm/global-account/react/components/LinkAccount/LinkAccount.d.ts +6 -4
- package/dist/esm/global-account/react/components/LinkAccount/LinkAccount.js +113 -280
- package/dist/esm/global-account/react/components/LinkAccount/LinkNewAccount.d.ts +4 -0
- package/dist/esm/global-account/react/components/LinkAccount/LinkNewAccount.js +325 -0
- package/dist/esm/global-account/react/components/ManageAccount/AppsContent.d.ts +6 -0
- package/dist/esm/global-account/react/components/ManageAccount/AppsContent.js +32 -0
- package/dist/esm/global-account/react/components/ManageAccount/BalanceContent.js +2 -2
- package/dist/esm/global-account/react/components/ManageAccount/BottomNavigation.d.ts +2 -0
- package/dist/esm/global-account/react/components/ManageAccount/BottomNavigation.js +21 -0
- package/dist/esm/global-account/react/components/ManageAccount/Header.d.ts +3 -0
- package/dist/esm/global-account/react/components/ManageAccount/Header.js +81 -0
- package/dist/esm/global-account/react/components/ManageAccount/HomeActions.d.ts +5 -0
- package/dist/esm/global-account/react/components/ManageAccount/HomeActions.js +41 -0
- package/dist/esm/global-account/react/components/ManageAccount/HomeContent.d.ts +6 -0
- package/dist/esm/global-account/react/components/ManageAccount/HomeContent.js +10 -0
- package/dist/esm/global-account/react/components/ManageAccount/ManageAccount.js +26 -195
- package/dist/esm/global-account/react/components/ManageAccount/NFTContent.d.ts +2 -0
- package/dist/esm/global-account/react/components/ManageAccount/NFTContent.js +13 -0
- package/dist/esm/global-account/react/components/ManageAccount/ProfileSection.d.ts +2 -0
- package/dist/esm/global-account/react/components/ManageAccount/ProfileSection.js +42 -0
- package/dist/esm/global-account/react/components/ManageAccount/SettingsContent.d.ts +7 -0
- package/dist/esm/global-account/react/components/ManageAccount/SettingsContent.js +45 -0
- package/dist/esm/global-account/react/components/ManageAccount/SettingsMenuItem.d.ts +9 -0
- package/dist/esm/global-account/react/components/ManageAccount/SettingsMenuItem.js +6 -0
- package/dist/esm/global-account/react/components/ManageAccount/SettingsProfileCard.d.ts +2 -0
- package/dist/esm/global-account/react/components/ManageAccount/SettingsProfileCard.js +36 -0
- package/dist/esm/global-account/react/components/ManageAccount/TokenContent.d.ts +2 -0
- package/dist/esm/global-account/react/components/ManageAccount/TokenContent.js +20 -0
- package/dist/esm/global-account/react/components/ModalHeader/ModalHeader.d.ts +10 -0
- package/dist/esm/global-account/react/components/ModalHeader/ModalHeader.js +10 -0
- package/dist/esm/global-account/react/components/Send/Send.d.ts +5 -0
- package/dist/esm/global-account/react/components/Send/Send.js +181 -0
- package/dist/esm/global-account/react/components/icons/BellIcon.d.ts +3 -0
- package/dist/esm/global-account/react/components/icons/BellIcon.js +3 -0
- package/dist/esm/global-account/react/components/icons/ChevronDownIcon.d.ts +2 -0
- package/dist/esm/global-account/react/components/icons/ChevronDownIcon.js +4 -0
- package/dist/esm/global-account/react/components/icons/CopyIcon.d.ts +2 -0
- package/dist/esm/global-account/react/components/icons/CopyIcon.js +4 -0
- package/dist/esm/global-account/react/components/icons/LinkIcon.d.ts +3 -0
- package/dist/esm/global-account/react/components/icons/LinkIcon.js +3 -0
- package/dist/esm/global-account/react/components/icons/LockIcon.d.ts +3 -0
- package/dist/esm/global-account/react/components/icons/LockIcon.js +3 -0
- package/dist/esm/global-account/react/components/icons/WalletIcon.d.ts +2 -0
- package/dist/esm/global-account/react/components/icons/WalletIcon.js +4 -0
- package/dist/esm/global-account/react/components/index.d.ts +4 -2
- package/dist/esm/global-account/react/components/index.js +7 -2
- package/dist/esm/global-account/react/components/ui/Tabs.js +2 -2
- package/dist/esm/global-account/react/components/ui/dialog.js +2 -2
- 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/useAuthentication.js +0 -11
- package/dist/esm/global-account/react/hooks/useB3BalanceFromAddresses.js +1 -0
- package/dist/esm/global-account/react/hooks/useGlobalAccount.d.ts +1 -0
- package/dist/esm/global-account/react/hooks/useGlobalAccount.js +3 -0
- package/dist/esm/global-account/react/stores/index.d.ts +1 -0
- package/dist/esm/global-account/react/stores/index.js +1 -0
- package/dist/esm/global-account/react/stores/useModalStore.d.ts +34 -3
- package/dist/esm/global-account/react/stores/useRecentAddressesStore.d.ts +25 -0
- package/dist/esm/global-account/react/stores/useRecentAddressesStore.js +33 -0
- package/dist/esm/global-account/react/utils/profileDisplay.d.ts +2 -0
- package/dist/esm/global-account/react/utils/profileDisplay.js +2 -2
- package/dist/esm/shared/constants/chains/supported.d.ts +2 -2
- package/dist/esm/shared/utils/ipfs.js +1 -1
- package/dist/styles/index.css +1 -1
- package/dist/types/anyspend/react/components/common/OrderHistory.d.ts +1 -1
- package/dist/types/anyspend/utils/index.d.ts +0 -1
- package/dist/types/global-account/react/components/Deposit/Deposit.d.ts +1 -0
- package/dist/types/global-account/react/components/LinkAccount/LinkAccount.d.ts +6 -4
- package/dist/types/global-account/react/components/LinkAccount/LinkNewAccount.d.ts +4 -0
- package/dist/types/global-account/react/components/ManageAccount/AppsContent.d.ts +6 -0
- package/dist/types/global-account/react/components/ManageAccount/BottomNavigation.d.ts +2 -0
- package/dist/types/global-account/react/components/ManageAccount/Header.d.ts +3 -0
- package/dist/types/global-account/react/components/ManageAccount/HomeActions.d.ts +5 -0
- package/dist/types/global-account/react/components/ManageAccount/HomeContent.d.ts +6 -0
- package/dist/types/global-account/react/components/ManageAccount/NFTContent.d.ts +2 -0
- package/dist/types/global-account/react/components/ManageAccount/ProfileSection.d.ts +2 -0
- package/dist/types/global-account/react/components/ManageAccount/SettingsContent.d.ts +7 -0
- package/dist/types/global-account/react/components/ManageAccount/SettingsMenuItem.d.ts +9 -0
- package/dist/types/global-account/react/components/ManageAccount/SettingsProfileCard.d.ts +2 -0
- package/dist/types/global-account/react/components/ManageAccount/TokenContent.d.ts +2 -0
- package/dist/types/global-account/react/components/ModalHeader/ModalHeader.d.ts +10 -0
- package/dist/types/global-account/react/components/Send/Send.d.ts +5 -0
- package/dist/types/global-account/react/components/icons/BellIcon.d.ts +3 -0
- package/dist/types/global-account/react/components/icons/ChevronDownIcon.d.ts +2 -0
- package/dist/types/global-account/react/components/icons/CopyIcon.d.ts +2 -0
- package/dist/types/global-account/react/components/icons/LinkIcon.d.ts +3 -0
- package/dist/types/global-account/react/components/icons/LockIcon.d.ts +3 -0
- package/dist/types/global-account/react/components/icons/WalletIcon.d.ts +2 -0
- package/dist/types/global-account/react/components/index.d.ts +4 -2
- package/dist/types/global-account/react/hooks/index.d.ts +1 -1
- package/dist/types/global-account/react/hooks/useGlobalAccount.d.ts +1 -0
- package/dist/types/global-account/react/stores/index.d.ts +1 -0
- package/dist/types/global-account/react/stores/useModalStore.d.ts +34 -3
- package/dist/types/global-account/react/stores/useRecentAddressesStore.d.ts +25 -0
- package/dist/types/global-account/react/utils/profileDisplay.d.ts +2 -0
- package/dist/types/shared/constants/chains/supported.d.ts +2 -2
- package/package.json +1 -1
- package/src/anyspend/react/components/AnySpend.tsx +225 -167
- package/src/anyspend/react/components/AnySpendCustom.tsx +1 -1
- package/src/anyspend/react/components/AnySpendCustomExactIn.tsx +2 -6
- package/src/anyspend/react/components/AnyspendDepositHype.tsx +2 -6
- package/src/anyspend/react/components/common/CryptoPaymentMethod.tsx +2 -7
- package/src/anyspend/react/components/common/FeeDetailPanel.tsx +1 -1
- package/src/anyspend/react/components/common/FiatPaymentMethod.tsx +2 -2
- package/src/anyspend/react/components/common/OrderHistory.tsx +8 -13
- package/src/anyspend/react/components/common/PanelOnrampPayment.tsx +1 -1
- package/src/anyspend/react/components/common/PointsDetailPanel.tsx +1 -1
- package/src/anyspend/react/components/common/RecipientSelection.tsx +1 -1
- package/src/anyspend/utils/index.ts +0 -1
- package/src/global-account/react/components/AccountAssets/AccountAssets.tsx +115 -25
- package/src/global-account/react/components/AvatarEditor/AvatarEditor.tsx +303 -126
- package/src/global-account/react/components/B3DynamicModal.tsx +33 -15
- package/src/global-account/react/components/Deposit/Deposit.tsx +211 -0
- package/src/global-account/react/components/LinkAccount/LinkAccount.tsx +332 -433
- package/src/global-account/react/components/LinkAccount/LinkNewAccount.tsx +490 -0
- package/src/global-account/react/components/ManageAccount/AppsContent.tsx +79 -0
- package/src/global-account/react/components/ManageAccount/BalanceContent.tsx +2 -3
- package/src/global-account/react/components/ManageAccount/BottomNavigation.tsx +83 -0
- package/src/global-account/react/components/ManageAccount/Header.tsx +230 -0
- package/src/global-account/react/components/ManageAccount/HomeActions.tsx +118 -0
- package/src/global-account/react/components/ManageAccount/HomeContent.tsx +42 -0
- package/src/global-account/react/components/ManageAccount/ManageAccount.tsx +73 -589
- package/src/global-account/react/components/ManageAccount/NFTContent.tsx +24 -0
- package/src/global-account/react/components/ManageAccount/ProfileSection.tsx +74 -0
- package/src/global-account/react/components/ManageAccount/SettingsContent.tsx +87 -0
- package/src/global-account/react/components/ManageAccount/SettingsMenuItem.tsx +31 -0
- package/src/global-account/react/components/ManageAccount/SettingsProfileCard.tsx +74 -0
- package/src/global-account/react/components/ManageAccount/TokenContent.tsx +41 -0
- package/src/global-account/react/components/ModalHeader/ModalHeader.tsx +50 -0
- package/src/global-account/react/components/Send/Send.tsx +585 -0
- package/src/global-account/react/components/icons/BellIcon.tsx +15 -0
- package/src/global-account/react/components/icons/ChevronDownIcon.tsx +17 -0
- package/src/global-account/react/components/icons/CopyIcon.tsx +22 -0
- package/src/global-account/react/components/icons/LinkIcon.tsx +15 -0
- package/src/global-account/react/components/icons/LockIcon.tsx +15 -0
- package/src/global-account/react/components/icons/WalletIcon.tsx +21 -0
- package/src/global-account/react/components/index.ts +9 -2
- package/src/global-account/react/components/ui/Tabs.tsx +5 -13
- package/src/global-account/react/components/ui/dialog.tsx +32 -14
- package/src/global-account/react/hooks/index.ts +3 -0
- package/src/global-account/react/hooks/useAuthentication.ts +0 -12
- package/src/global-account/react/hooks/useB3BalanceFromAddresses.ts +1 -0
- package/src/global-account/react/hooks/useGlobalAccount.tsx +3 -1
- package/src/global-account/react/stores/index.ts +1 -0
- package/src/global-account/react/stores/useModalStore.ts +39 -2
- package/src/global-account/react/stores/useRecentAddressesStore.ts +55 -0
- package/src/global-account/react/utils/profileDisplay.ts +4 -2
- package/src/shared/utils/ipfs.ts +1 -1
- package/src/styles/index.css +6 -1
- package/dist/cjs/anyspend/utils/accountStore.d.ts +0 -7
- package/dist/cjs/anyspend/utils/accountStore.js +0 -8
- package/dist/esm/anyspend/utils/accountStore.d.ts +0 -7
- package/dist/esm/anyspend/utils/accountStore.js +0 -5
- package/dist/types/anyspend/utils/accountStore.d.ts +0 -7
- package/src/anyspend/utils/accountStore.ts +0 -12
|
@@ -8,8 +8,7 @@ import { ArrowDown, Loader2 } from "lucide-react";
|
|
|
8
8
|
import { motion } from "motion/react";
|
|
9
9
|
import { useEffect, useMemo, useRef } from "react";
|
|
10
10
|
import { toast } from "sonner";
|
|
11
|
-
import {
|
|
12
|
-
import { useGlobalWalletState } from "../../utils";
|
|
11
|
+
import { useSetActiveWallet } from "thirdweb/react";
|
|
13
12
|
import { PanelView, useAnyspendFlow } from "../hooks/useAnyspendFlow";
|
|
14
13
|
import { AnySpendFingerprintWrapper, getFingerprintConfig } from "./AnySpendFingerprintWrapper";
|
|
15
14
|
import { CryptoPaySection } from "./common/CryptoPaySection";
|
|
@@ -145,19 +144,16 @@ function AnySpendCustomExactInInner({
|
|
|
145
144
|
|
|
146
145
|
const { connectedEOAWallet } = useAccountWallet();
|
|
147
146
|
const setActiveWallet = useSetActiveWallet();
|
|
148
|
-
const activeWallet = useActiveWallet();
|
|
149
|
-
const setGlobalAccountWallet = useGlobalWalletState(state => state.setGlobalAccountWallet);
|
|
150
147
|
const appliedPreferEoa = useRef(false);
|
|
151
148
|
|
|
152
149
|
useEffect(() => {
|
|
153
150
|
if (preferEoa && !appliedPreferEoa.current) {
|
|
154
151
|
if (connectedEOAWallet) {
|
|
155
152
|
appliedPreferEoa.current = true;
|
|
156
|
-
setGlobalAccountWallet(activeWallet);
|
|
157
153
|
setActiveWallet(connectedEOAWallet);
|
|
158
154
|
}
|
|
159
155
|
}
|
|
160
|
-
}, [preferEoa, connectedEOAWallet, setActiveWallet
|
|
156
|
+
}, [preferEoa, connectedEOAWallet, setActiveWallet]);
|
|
161
157
|
|
|
162
158
|
const selectedRecipientOrDefault = selectedRecipientAddress ?? recipientAddress;
|
|
163
159
|
|
|
@@ -6,7 +6,7 @@ import invariant from "invariant";
|
|
|
6
6
|
import { motion } from "motion/react";
|
|
7
7
|
import { useEffect, useMemo, useRef } from "react";
|
|
8
8
|
import { toast } from "sonner";
|
|
9
|
-
import {
|
|
9
|
+
import { useSetActiveWallet } from "thirdweb/react";
|
|
10
10
|
import { base } from "viem/chains";
|
|
11
11
|
import { PanelView, useAnyspendFlow } from "../hooks/useAnyspendFlow";
|
|
12
12
|
import { AnySpendFingerprintWrapper, getFingerprintConfig } from "./AnySpendFingerprintWrapper";
|
|
@@ -20,7 +20,6 @@ import { PointsDetailPanel } from "./common/PointsDetailPanel";
|
|
|
20
20
|
import { RecipientSelection } from "./common/RecipientSelection";
|
|
21
21
|
|
|
22
22
|
import { ArrowDown, Loader2 } from "lucide-react";
|
|
23
|
-
import { useGlobalWalletState } from "../../utils";
|
|
24
23
|
import { PanelOnramp } from "./common/PanelOnramp";
|
|
25
24
|
|
|
26
25
|
const SLIPPAGE_PERCENT = 3;
|
|
@@ -119,19 +118,16 @@ function AnySpendDepositHypeInner({
|
|
|
119
118
|
|
|
120
119
|
const { connectedEOAWallet: connectedEOAWallet } = useAccountWallet();
|
|
121
120
|
const setActiveWallet = useSetActiveWallet();
|
|
122
|
-
const activeWallet = useActiveWallet();
|
|
123
|
-
const setGlobalAccountWallet = useGlobalWalletState(state => state.setGlobalAccountWallet);
|
|
124
121
|
const appliedPreferEoa = useRef(false);
|
|
125
122
|
|
|
126
123
|
useEffect(() => {
|
|
127
124
|
if (preferEoa && !appliedPreferEoa.current) {
|
|
128
125
|
if (connectedEOAWallet) {
|
|
129
126
|
appliedPreferEoa.current = true;
|
|
130
|
-
setGlobalAccountWallet(activeWallet);
|
|
131
127
|
setActiveWallet(connectedEOAWallet);
|
|
132
128
|
}
|
|
133
129
|
}
|
|
134
|
-
}, [preferEoa, connectedEOAWallet, setActiveWallet
|
|
130
|
+
}, [preferEoa, connectedEOAWallet, setActiveWallet]);
|
|
135
131
|
|
|
136
132
|
// Button state logic
|
|
137
133
|
const btnInfo: { text: string; disable: boolean; error: boolean; loading: boolean } = useMemo(() => {
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import { useGlobalWalletState } from "@b3dotfun/sdk/anyspend/utils";
|
|
4
3
|
import { useAccountWallet } from "@b3dotfun/sdk/global-account/react";
|
|
5
4
|
import { cn } from "@b3dotfun/sdk/shared/utils/cn";
|
|
6
5
|
import { shortenAddress } from "@b3dotfun/sdk/shared/utils/formatAddress";
|
|
@@ -10,7 +9,7 @@ import { ChevronLeft, ChevronRightCircle, Wallet, X, ZapIcon } from "lucide-reac
|
|
|
10
9
|
import { useState } from "react";
|
|
11
10
|
import { createPortal } from "react-dom";
|
|
12
11
|
import { toast } from "sonner";
|
|
13
|
-
import {
|
|
12
|
+
import { useSetActiveWallet, useWalletInfo } from "thirdweb/react";
|
|
14
13
|
import { WalletId, createWallet } from "thirdweb/wallets";
|
|
15
14
|
import { useAccount, useConnect, useDisconnect, useWalletClient } from "wagmi";
|
|
16
15
|
import { useConnectedWalletDisplay } from "../../hooks/useConnectedWalletDisplay";
|
|
@@ -56,9 +55,6 @@ export function CryptoPaymentMethod({
|
|
|
56
55
|
const setActiveWallet = useSetActiveWallet();
|
|
57
56
|
const { data: eoaWalletInfo } = useWalletInfo(connectedEOAWallet?.id);
|
|
58
57
|
|
|
59
|
-
const activeWallet = useActiveWallet();
|
|
60
|
-
const setGlobalAccountWallet = useGlobalWalletState(state => state.setGlobalAccountWallet);
|
|
61
|
-
|
|
62
58
|
const isConnected = !!connectedEOAWallet;
|
|
63
59
|
const globalAddress = connectedSmartWallet?.getAccount()?.address;
|
|
64
60
|
|
|
@@ -196,7 +192,7 @@ export function CryptoPaymentMethod({
|
|
|
196
192
|
};
|
|
197
193
|
|
|
198
194
|
return (
|
|
199
|
-
<div className="crypto-payment-method mx-auto h-fit w-[460px] max-w-full">
|
|
195
|
+
<div className="crypto-payment-method mx-auto h-fit w-[460px] max-w-full px-5 pb-5">
|
|
200
196
|
<div className={cn("relative flex flex-col gap-10")}>
|
|
201
197
|
{/* Header */}
|
|
202
198
|
<button
|
|
@@ -225,7 +221,6 @@ export function CryptoPaymentMethod({
|
|
|
225
221
|
onClick={() => {
|
|
226
222
|
setSelectedPaymentMethod(CryptoPaymentMethodType.CONNECT_WALLET);
|
|
227
223
|
onSelectPaymentMethod(CryptoPaymentMethodType.CONNECT_WALLET);
|
|
228
|
-
setGlobalAccountWallet(activeWallet);
|
|
229
224
|
if (connectedEOAWallet) {
|
|
230
225
|
setActiveWallet(connectedEOAWallet);
|
|
231
226
|
}
|
|
@@ -83,7 +83,7 @@ export function FeeDetailPanel({ fee, transactionAmountUsd, onBack }: FeeDetailP
|
|
|
83
83
|
const [showAllDiscountTiers, setShowAllDiscountTiers] = useState(false);
|
|
84
84
|
|
|
85
85
|
return (
|
|
86
|
-
<div className="mx-auto flex w-[460px] max-w-full flex-col items-center gap-3">
|
|
86
|
+
<div className="mx-auto flex w-[460px] max-w-full flex-col items-center gap-3 px-5">
|
|
87
87
|
<div className="flex w-full flex-col gap-3">
|
|
88
88
|
<div className="text-center">
|
|
89
89
|
<h3 className="text-as-primary text-lg font-bold">Fee Breakdown</h3>
|
|
@@ -81,7 +81,7 @@ export function FiatPaymentMethodComponent({
|
|
|
81
81
|
// Show loading state while checking geo availability
|
|
82
82
|
if (isLoadingGeoOnramp) {
|
|
83
83
|
return (
|
|
84
|
-
<div className="fiat-payment-method mx-auto w-[460px] max-w-full">
|
|
84
|
+
<div className="fiat-payment-method mx-auto w-[460px] max-w-full px-5">
|
|
85
85
|
<div className="flex flex-col gap-6">
|
|
86
86
|
<div className="flex items-center gap-4">
|
|
87
87
|
<button
|
|
@@ -104,7 +104,7 @@ export function FiatPaymentMethodComponent({
|
|
|
104
104
|
}
|
|
105
105
|
|
|
106
106
|
return (
|
|
107
|
-
<div className="fiat-payment-method mx-auto w-[460px] max-w-full">
|
|
107
|
+
<div className="fiat-payment-method mx-auto w-[460px] max-w-full px-5">
|
|
108
108
|
<div className="flex flex-col gap-6">
|
|
109
109
|
{/* Header */}
|
|
110
110
|
<div className="flex items-center gap-4">
|
|
@@ -2,12 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
import { useAnyspendOrderHistory } from "@b3dotfun/sdk/anyspend/react";
|
|
4
4
|
import { Button, Skeleton, useAccountWallet } from "@b3dotfun/sdk/global-account/react";
|
|
5
|
-
import
|
|
5
|
+
import ModalHeader from "@b3dotfun/sdk/global-account/react/components/ModalHeader/ModalHeader";
|
|
6
|
+
import { RefreshCcw } from "lucide-react";
|
|
6
7
|
import { OrderHistoryItem } from "./OrderHistoryItem";
|
|
7
8
|
|
|
8
9
|
interface OrderHistoryProps {
|
|
9
10
|
mode: "modal" | "page";
|
|
10
|
-
onBack
|
|
11
|
+
onBack?: () => void;
|
|
11
12
|
onSelectOrder?: (orderId: string) => void;
|
|
12
13
|
}
|
|
13
14
|
|
|
@@ -17,13 +18,7 @@ export function OrderHistory({ mode, onBack, onSelectOrder }: OrderHistoryProps)
|
|
|
17
18
|
|
|
18
19
|
return (
|
|
19
20
|
<>
|
|
20
|
-
<
|
|
21
|
-
<Button onClick={onBack} variant="ghost" size="icon" className="hover:bg-as-surface-secondary">
|
|
22
|
-
<ArrowLeft className="h-5 w-5" />
|
|
23
|
-
</Button>
|
|
24
|
-
<div className="flex-1">
|
|
25
|
-
<h3 className="text-as-primary text-2xl font-bold">Order History</h3>
|
|
26
|
-
</div>
|
|
21
|
+
<ModalHeader title="Order History" showCloseButton={false} handleBack={onBack} className="w-full">
|
|
27
22
|
<Button
|
|
28
23
|
variant="ghost"
|
|
29
24
|
size="icon"
|
|
@@ -34,20 +29,20 @@ export function OrderHistory({ mode, onBack, onSelectOrder }: OrderHistoryProps)
|
|
|
34
29
|
>
|
|
35
30
|
<RefreshCcw className="text-as-secondary hover:text-as-primary h-5 w-5 cursor-pointer transition-all hover:rotate-180" />
|
|
36
31
|
</Button>
|
|
37
|
-
</
|
|
32
|
+
</ModalHeader>
|
|
38
33
|
|
|
39
34
|
{isLoadingOrderHistory ? (
|
|
40
|
-
<div className="w-full space-y-3">
|
|
35
|
+
<div className="w-full space-y-3 px-5">
|
|
41
36
|
{[1, 2, 3].map(i => (
|
|
42
37
|
<Skeleton key={i} className="h-[180px] w-full rounded-2xl" />
|
|
43
38
|
))}
|
|
44
39
|
</div>
|
|
45
40
|
) : !orderHistory?.length ? (
|
|
46
|
-
<div className="bg-as-surface-secondary w-full rounded-2xl p-12 text-center">
|
|
41
|
+
<div className="bg-as-surface-secondary w-full rounded-2xl p-12 px-5 text-center">
|
|
47
42
|
<p className="text-as-secondary text-sm">No order history found</p>
|
|
48
43
|
</div>
|
|
49
44
|
) : (
|
|
50
|
-
<div className="mb-12 w-full space-y-3">
|
|
45
|
+
<div className="mb-12 w-full space-y-3 px-5 pt-5">
|
|
51
46
|
{[...orderHistory]
|
|
52
47
|
.sort((a, b) => b.createdAt - a.createdAt)
|
|
53
48
|
.map(order => (
|
|
@@ -150,7 +150,7 @@ function PanelOnrampPaymentInner(props: PanelOnrampPaymentProps) {
|
|
|
150
150
|
};
|
|
151
151
|
|
|
152
152
|
return (
|
|
153
|
-
<div className="mx-auto flex w-full max-w-[460px] flex-col gap-6">
|
|
153
|
+
<div className="mx-auto flex w-full max-w-[460px] flex-col gap-6 px-5">
|
|
154
154
|
{/* Order Summary Section */}
|
|
155
155
|
<>
|
|
156
156
|
<h2 className="-mb-3 text-lg font-semibold">Order summary</h2>
|
|
@@ -9,7 +9,7 @@ interface PointsDetailPanelProps {
|
|
|
9
9
|
|
|
10
10
|
export function PointsDetailPanel({ pointsAmount = 0, onBack }: PointsDetailPanelProps) {
|
|
11
11
|
return (
|
|
12
|
-
<div className="mx-auto flex w-[460px] max-w-full flex-col items-center gap-4">
|
|
12
|
+
<div className="mx-auto flex w-[460px] max-w-full flex-col items-center gap-4 px-5">
|
|
13
13
|
<div className="flex flex-col items-center gap-4 text-center">
|
|
14
14
|
<h3 className="text-as-primary text-xl font-bold">Earn Points with Every Swap</h3>
|
|
15
15
|
<p className="text-as-primary/70 text-balance text-sm leading-relaxed">
|
|
@@ -88,7 +88,7 @@ export function RecipientSelection({
|
|
|
88
88
|
const canConfirm = recipientAddress && isAddressValid;
|
|
89
89
|
|
|
90
90
|
return (
|
|
91
|
-
<div className="recipient-selection mx-auto w-[460px] max-w-full">
|
|
91
|
+
<div className="recipient-selection mx-auto w-[460px] max-w-full px-5">
|
|
92
92
|
<div className="flex flex-col gap-6">
|
|
93
93
|
{/* Header */}
|
|
94
94
|
<div className="flex justify-around">
|
|
@@ -1,16 +1,35 @@
|
|
|
1
|
-
import { SimpleHashNFTResponse } from "@b3dotfun/sdk/global-account/types/simplehash.types";
|
|
1
|
+
import { NFT, SimpleHashNFTResponse } from "@b3dotfun/sdk/global-account/types/simplehash.types";
|
|
2
|
+
import { useState } from "react";
|
|
2
3
|
|
|
3
4
|
interface AccountAssetsProps {
|
|
4
5
|
nfts: SimpleHashNFTResponse;
|
|
5
6
|
isLoading?: boolean;
|
|
6
7
|
}
|
|
7
8
|
|
|
9
|
+
interface GroupedNFTs {
|
|
10
|
+
collection_id: string;
|
|
11
|
+
collection_name: string;
|
|
12
|
+
collection_image: string;
|
|
13
|
+
nfts: NFT[];
|
|
14
|
+
}
|
|
15
|
+
|
|
8
16
|
export function AccountAssets({ nfts, isLoading }: AccountAssetsProps) {
|
|
17
|
+
// Initialize with all collections expanded
|
|
18
|
+
const [expandedCollections, setExpandedCollections] = useState<Set<string>>(
|
|
19
|
+
() => new Set(collections.map(c => c.collection_id)),
|
|
20
|
+
);
|
|
21
|
+
|
|
9
22
|
if (isLoading) {
|
|
10
23
|
return (
|
|
11
|
-
<div className="
|
|
12
|
-
{[...Array(
|
|
13
|
-
<div key={i} className="
|
|
24
|
+
<div className="flex flex-col gap-3">
|
|
25
|
+
{[...Array(2)].map((_, i) => (
|
|
26
|
+
<div key={i} className="animate-pulse">
|
|
27
|
+
<div className="bg-b3-react-muted mb-3 h-6 w-48 rounded" />
|
|
28
|
+
<div className="flex gap-3">
|
|
29
|
+
<div className="bg-b3-react-muted h-[98px] w-[98px] shrink-0 rounded-lg" />
|
|
30
|
+
<div className="bg-b3-react-muted h-[98px] w-[98px] shrink-0 rounded-lg" />
|
|
31
|
+
</div>
|
|
32
|
+
</div>
|
|
14
33
|
))}
|
|
15
34
|
</div>
|
|
16
35
|
);
|
|
@@ -20,29 +39,100 @@ export function AccountAssets({ nfts, isLoading }: AccountAssetsProps) {
|
|
|
20
39
|
return <div className="text-b3-react-muted-foreground py-8 text-center">No NFTs found</div>;
|
|
21
40
|
}
|
|
22
41
|
|
|
42
|
+
// Group NFTs by collection
|
|
43
|
+
const groupedNFTs = nfts.nfts.reduce(
|
|
44
|
+
(acc, nft) => {
|
|
45
|
+
const collectionId = nft.collection?.collection_id || "unknown";
|
|
46
|
+
if (!acc[collectionId]) {
|
|
47
|
+
acc[collectionId] = {
|
|
48
|
+
collection_id: collectionId,
|
|
49
|
+
collection_name: nft.collection?.name || "Unknown Collection",
|
|
50
|
+
collection_image: nft.collection?.image_url || nft.previews?.image_small_url || "",
|
|
51
|
+
nfts: [],
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
acc[collectionId].nfts.push(nft);
|
|
55
|
+
return acc;
|
|
56
|
+
},
|
|
57
|
+
{} as Record<string, GroupedNFTs>,
|
|
58
|
+
);
|
|
59
|
+
|
|
60
|
+
const collections = Object.values(groupedNFTs);
|
|
61
|
+
|
|
62
|
+
const toggleCollection = (collectionId: string) => {
|
|
63
|
+
setExpandedCollections(prev => {
|
|
64
|
+
const next = new Set(prev);
|
|
65
|
+
if (next.has(collectionId)) {
|
|
66
|
+
next.delete(collectionId);
|
|
67
|
+
} else {
|
|
68
|
+
next.add(collectionId);
|
|
69
|
+
}
|
|
70
|
+
return next;
|
|
71
|
+
});
|
|
72
|
+
};
|
|
73
|
+
|
|
23
74
|
return (
|
|
24
|
-
<div className="
|
|
25
|
-
{
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
className="
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
75
|
+
<div className="flex flex-col gap-3 px-4">
|
|
76
|
+
{collections.map(collection => {
|
|
77
|
+
const isExpanded = expandedCollections.has(collection.collection_id);
|
|
78
|
+
|
|
79
|
+
return (
|
|
80
|
+
<div key={collection.collection_id} className="flex flex-col gap-3">
|
|
81
|
+
{/* Collection Header */}
|
|
82
|
+
<button
|
|
83
|
+
onClick={() => toggleCollection(collection.collection_id)}
|
|
84
|
+
className="flex w-full items-center justify-between"
|
|
85
|
+
>
|
|
86
|
+
<div className="flex items-center gap-1">
|
|
87
|
+
{collection.collection_image && (
|
|
88
|
+
<img
|
|
89
|
+
src={collection.collection_image}
|
|
90
|
+
alt={collection.collection_name}
|
|
91
|
+
className="h-5 w-5 shrink-0 rounded object-cover"
|
|
92
|
+
/>
|
|
93
|
+
)}
|
|
94
|
+
<p className="font-neue-montreal-medium text-[14px] text-[#3f3f46]">
|
|
95
|
+
{collection.collection_name} ({collection.nfts.length})
|
|
96
|
+
</p>
|
|
97
|
+
</div>
|
|
98
|
+
<svg
|
|
99
|
+
className={`h-[18px] w-[18px] shrink-0 transition-transform ${isExpanded ? "rotate-180" : ""}`}
|
|
100
|
+
viewBox="0 0 18 18"
|
|
101
|
+
fill="none"
|
|
102
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
103
|
+
>
|
|
104
|
+
<path
|
|
105
|
+
d="M4.5 6.75L9 11.25L13.5 6.75"
|
|
106
|
+
stroke="#51525C"
|
|
107
|
+
strokeWidth="1.5"
|
|
108
|
+
strokeLinecap="round"
|
|
109
|
+
strokeLinejoin="round"
|
|
110
|
+
/>
|
|
111
|
+
</svg>
|
|
112
|
+
</button>
|
|
113
|
+
|
|
114
|
+
{/* NFT Grid */}
|
|
115
|
+
{isExpanded && (
|
|
116
|
+
<div className="flex gap-3 overflow-x-auto">
|
|
117
|
+
{collection.nfts.map(nft => (
|
|
118
|
+
<div key={nft.nft_id} className="relative h-[98px] w-[98px] shrink-0 overflow-hidden rounded-lg">
|
|
119
|
+
<img
|
|
120
|
+
src={
|
|
121
|
+
nft.previews?.image_medium_url ||
|
|
122
|
+
nft.extra_metadata?.image_original_url ||
|
|
123
|
+
nft.collection?.image_url ||
|
|
124
|
+
""
|
|
125
|
+
}
|
|
126
|
+
alt={nft.name || "NFT"}
|
|
127
|
+
className="h-full w-full object-cover"
|
|
128
|
+
/>
|
|
129
|
+
</div>
|
|
130
|
+
))}
|
|
131
|
+
</div>
|
|
132
|
+
)}
|
|
43
133
|
</div>
|
|
44
|
-
|
|
45
|
-
)
|
|
134
|
+
);
|
|
135
|
+
})}
|
|
46
136
|
</div>
|
|
47
137
|
);
|
|
48
138
|
}
|