@0xsequence/wallet-widget 5.2.0 → 5.2.2
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/components/Filter/CollectionsFilter.d.ts.map +1 -1
- package/dist/cjs/components/Filter/CollectionsFilter.js +7 -23
- package/dist/cjs/components/Filter/CollectionsFilter.js.map +1 -1
- package/dist/cjs/components/Filter/FilterMenu.d.ts.map +1 -1
- package/dist/cjs/components/Filter/FilterMenu.js +7 -23
- package/dist/cjs/components/Filter/FilterMenu.js.map +1 -1
- package/dist/cjs/components/InfiniteScroll.js +4 -4
- package/dist/cjs/components/InfiniteScroll.js.map +1 -1
- package/dist/cjs/components/NavigationHeader/index.js +2 -2
- package/dist/cjs/components/NavigationHeader/index.js.map +1 -1
- package/dist/cjs/components/SearchLists/CollectiblesList.d.ts +7 -2
- package/dist/cjs/components/SearchLists/CollectiblesList.d.ts.map +1 -1
- package/dist/cjs/components/SearchLists/CollectiblesList.js +7 -7
- package/dist/cjs/components/SearchLists/CollectiblesList.js.map +1 -1
- package/dist/cjs/components/SearchLists/TokenList.d.ts +2 -2
- package/dist/cjs/components/SearchLists/TokenList.d.ts.map +1 -1
- package/dist/cjs/components/SearchLists/TokenList.js +7 -8
- package/dist/cjs/components/SearchLists/TokenList.js.map +1 -1
- package/dist/cjs/components/Select/SelectWalletRow.d.ts.map +1 -1
- package/dist/cjs/components/Select/SelectWalletRow.js +1 -2
- package/dist/cjs/components/Select/SelectWalletRow.js.map +1 -1
- package/dist/cjs/components/SequenceWalletProvider/ProviderComponents/FiatWalletsMapProvider.d.ts.map +1 -1
- package/dist/cjs/components/SequenceWalletProvider/ProviderComponents/FiatWalletsMapProvider.js +8 -11
- package/dist/cjs/components/SequenceWalletProvider/ProviderComponents/FiatWalletsMapProvider.js.map +1 -1
- package/dist/cjs/components/SequenceWalletProvider/ProviderComponents/SwapProvider.js +2 -2
- package/dist/cjs/components/SequenceWalletProvider/ProviderComponents/SwapProvider.js.map +1 -1
- package/dist/cjs/components/SequenceWalletProvider/utils/index.d.ts.map +1 -1
- package/dist/cjs/components/SequenceWalletProvider/utils/index.js +3 -3
- package/dist/cjs/components/SequenceWalletProvider/utils/index.js.map +1 -1
- package/dist/cjs/components/TransactionHistoryList/TransactionHistoryItem.js +4 -4
- package/dist/cjs/components/TransactionHistoryList/index.d.ts +2 -2
- package/dist/cjs/components/TransactionHistoryList/index.js +2 -2
- package/dist/cjs/contexts/Navigation.d.ts +12 -2
- package/dist/cjs/contexts/Navigation.d.ts.map +1 -1
- package/dist/cjs/contexts/Navigation.js.map +1 -1
- package/dist/cjs/hooks/index.d.ts +5 -0
- package/dist/cjs/hooks/index.d.ts.map +1 -1
- package/dist/cjs/hooks/index.js +5 -0
- package/dist/cjs/hooks/index.js.map +1 -1
- package/dist/cjs/hooks/useGetAllTokensDetails.d.ts +10 -0
- package/dist/cjs/hooks/useGetAllTokensDetails.d.ts.map +1 -0
- package/dist/cjs/hooks/useGetAllTokensDetails.js +29 -0
- package/dist/cjs/hooks/useGetAllTokensDetails.js.map +1 -0
- package/dist/cjs/hooks/useGetCollections.d.ts +14 -0
- package/dist/cjs/hooks/useGetCollections.d.ts.map +1 -0
- package/dist/cjs/hooks/useGetCollections.js +40 -0
- package/dist/cjs/hooks/useGetCollections.js.map +1 -0
- package/dist/cjs/hooks/useGetMoreBalances.d.ts +7 -0
- package/dist/cjs/hooks/useGetMoreBalances.d.ts.map +1 -0
- package/dist/cjs/hooks/useGetMoreBalances.js +23 -0
- package/dist/cjs/hooks/useGetMoreBalances.js.map +1 -0
- package/dist/cjs/hooks/useOpenWalletModal.d.ts +13 -11
- package/dist/cjs/hooks/useOpenWalletModal.d.ts.map +1 -1
- package/dist/cjs/hooks/useOpenWalletModal.js +10 -9
- package/dist/cjs/hooks/useOpenWalletModal.js.map +1 -1
- package/dist/cjs/hooks/useSettings.d.ts +2 -16
- package/dist/cjs/hooks/useSettings.d.ts.map +1 -1
- package/dist/cjs/hooks/useSettings.js +1 -23
- package/dist/cjs/hooks/useSettings.js.map +1 -1
- package/dist/cjs/utils/tokens.d.ts +1 -4
- package/dist/cjs/utils/tokens.d.ts.map +1 -1
- package/dist/cjs/utils/tokens.js +1 -20
- package/dist/cjs/utils/tokens.js.map +1 -1
- package/dist/cjs/views/CoinDetails/index.d.ts.map +1 -1
- package/dist/cjs/views/CoinDetails/index.js +20 -29
- package/dist/cjs/views/CoinDetails/index.js.map +1 -1
- package/dist/cjs/views/CollectibleDetails/index.d.ts.map +1 -1
- package/dist/cjs/views/CollectibleDetails/index.js +19 -23
- package/dist/cjs/views/CollectibleDetails/index.js.map +1 -1
- package/dist/cjs/views/History.js +3 -3
- package/dist/cjs/views/History.js.map +1 -1
- package/dist/cjs/views/Home/index.d.ts.map +1 -1
- package/dist/cjs/views/Home/index.js +10 -15
- package/dist/cjs/views/Home/index.js.map +1 -1
- package/dist/cjs/views/Search/SearchCollectibles.d.ts +4 -1
- package/dist/cjs/views/Search/SearchCollectibles.d.ts.map +1 -1
- package/dist/cjs/views/Search/SearchCollectibles.js +43 -13
- package/dist/cjs/views/Search/SearchCollectibles.js.map +1 -1
- package/dist/cjs/views/Search/SearchTokens.d.ts.map +1 -1
- package/dist/cjs/views/Search/SearchTokens.js +7 -11
- package/dist/cjs/views/Search/SearchTokens.js.map +1 -1
- package/dist/cjs/views/Send/SendCoin.d.ts.map +1 -1
- package/dist/cjs/views/Send/SendCoin.js +81 -47
- package/dist/cjs/views/Send/SendCoin.js.map +1 -1
- package/dist/cjs/views/Send/SendCollectible.d.ts.map +1 -1
- package/dist/cjs/views/Send/SendCollectible.js +98 -70
- package/dist/cjs/views/Send/SendCollectible.js.map +1 -1
- package/dist/cjs/views/Send/SendGeneral.d.ts.map +1 -1
- package/dist/cjs/views/Send/SendGeneral.js +8 -20
- package/dist/cjs/views/Send/SendGeneral.js.map +1 -1
- package/dist/cjs/views/Settings/Apps.js +2 -2
- package/dist/cjs/views/Settings/Apps.js.map +1 -1
- package/dist/cjs/views/Settings/QrScan.d.ts +1 -1
- package/dist/cjs/views/Settings/QrScan.d.ts.map +1 -1
- package/dist/cjs/views/Settings/QrScan.js +90 -46
- package/dist/cjs/views/Settings/QrScan.js.map +1 -1
- package/dist/cjs/views/Settings/index.d.ts +0 -1
- package/dist/cjs/views/Settings/index.d.ts.map +1 -1
- package/dist/cjs/views/Settings/index.js +1 -1
- package/dist/cjs/views/Settings/index.js.map +1 -1
- package/dist/cjs/views/Swap/CoinInput.d.ts.map +1 -1
- package/dist/cjs/views/Swap/CoinInput.js +1 -2
- package/dist/cjs/views/Swap/CoinInput.js.map +1 -1
- package/dist/cjs/views/Swap/CoinSelect.d.ts.map +1 -1
- package/dist/cjs/views/Swap/CoinSelect.js +1 -2
- package/dist/cjs/views/Swap/CoinSelect.js.map +1 -1
- package/dist/cjs/views/Swap/Swap.d.ts.map +1 -1
- package/dist/cjs/views/Swap/Swap.js +5 -3
- package/dist/cjs/views/Swap/Swap.js.map +1 -1
- package/dist/cjs/views/SwapCoin/SwapList.js +1 -1
- package/dist/cjs/views/SwapCoin/SwapList.js.map +1 -1
- package/dist/cjs/views/SwapCoin/index.d.ts.map +1 -1
- package/dist/cjs/views/SwapCoin/index.js +8 -14
- package/dist/cjs/views/SwapCoin/index.js.map +1 -1
- package/dist/cjs/views/TransactionDetails/index.js +6 -6
- package/dist/esm/components/Filter/CollectionsFilter.d.ts.map +1 -1
- package/dist/esm/components/Filter/CollectionsFilter.js +6 -22
- package/dist/esm/components/Filter/CollectionsFilter.js.map +1 -1
- package/dist/esm/components/Filter/FilterMenu.d.ts.map +1 -1
- package/dist/esm/components/Filter/FilterMenu.js +7 -23
- package/dist/esm/components/Filter/FilterMenu.js.map +1 -1
- package/dist/esm/components/InfiniteScroll.js +4 -4
- package/dist/esm/components/InfiniteScroll.js.map +1 -1
- package/dist/esm/components/NavigationHeader/index.js +1 -1
- package/dist/esm/components/NavigationHeader/index.js.map +1 -1
- package/dist/esm/components/SearchLists/CollectiblesList.d.ts +7 -2
- package/dist/esm/components/SearchLists/CollectiblesList.d.ts.map +1 -1
- package/dist/esm/components/SearchLists/CollectiblesList.js +5 -5
- package/dist/esm/components/SearchLists/CollectiblesList.js.map +1 -1
- package/dist/esm/components/SearchLists/TokenList.d.ts +2 -2
- package/dist/esm/components/SearchLists/TokenList.d.ts.map +1 -1
- package/dist/esm/components/SearchLists/TokenList.js +6 -7
- package/dist/esm/components/SearchLists/TokenList.js.map +1 -1
- package/dist/esm/components/Select/SelectWalletRow.d.ts.map +1 -1
- package/dist/esm/components/Select/SelectWalletRow.js +1 -2
- package/dist/esm/components/Select/SelectWalletRow.js.map +1 -1
- package/dist/esm/components/SequenceWalletProvider/ProviderComponents/FiatWalletsMapProvider.d.ts.map +1 -1
- package/dist/esm/components/SequenceWalletProvider/ProviderComponents/FiatWalletsMapProvider.js +11 -14
- package/dist/esm/components/SequenceWalletProvider/ProviderComponents/FiatWalletsMapProvider.js.map +1 -1
- package/dist/esm/components/SequenceWalletProvider/ProviderComponents/SwapProvider.js +1 -1
- package/dist/esm/components/SequenceWalletProvider/ProviderComponents/SwapProvider.js.map +1 -1
- package/dist/esm/components/SequenceWalletProvider/utils/index.d.ts.map +1 -1
- package/dist/esm/components/SequenceWalletProvider/utils/index.js +6 -4
- package/dist/esm/components/SequenceWalletProvider/utils/index.js.map +1 -1
- package/dist/esm/components/TransactionHistoryList/TransactionHistoryItem.js +4 -4
- package/dist/esm/components/TransactionHistoryList/index.d.ts +2 -2
- package/dist/esm/components/TransactionHistoryList/index.js +2 -2
- package/dist/esm/contexts/Navigation.d.ts +12 -2
- package/dist/esm/contexts/Navigation.d.ts.map +1 -1
- package/dist/esm/contexts/Navigation.js.map +1 -1
- package/dist/esm/hooks/index.d.ts +5 -0
- package/dist/esm/hooks/index.d.ts.map +1 -1
- package/dist/esm/hooks/index.js +5 -0
- package/dist/esm/hooks/index.js.map +1 -1
- package/dist/esm/hooks/useGetAllTokensDetails.d.ts +10 -0
- package/dist/esm/hooks/useGetAllTokensDetails.d.ts.map +1 -0
- package/dist/esm/hooks/useGetAllTokensDetails.js +25 -0
- package/dist/esm/hooks/useGetAllTokensDetails.js.map +1 -0
- package/dist/esm/hooks/useGetCollections.d.ts +14 -0
- package/dist/esm/hooks/useGetCollections.d.ts.map +1 -0
- package/dist/esm/hooks/useGetCollections.js +36 -0
- package/dist/esm/hooks/useGetCollections.js.map +1 -0
- package/dist/esm/hooks/useGetMoreBalances.d.ts +7 -0
- package/dist/esm/hooks/useGetMoreBalances.d.ts.map +1 -0
- package/dist/esm/hooks/useGetMoreBalances.js +19 -0
- package/dist/esm/hooks/useGetMoreBalances.js.map +1 -0
- package/dist/esm/hooks/useOpenWalletModal.d.ts +13 -11
- package/dist/esm/hooks/useOpenWalletModal.d.ts.map +1 -1
- package/dist/esm/hooks/useOpenWalletModal.js +10 -9
- package/dist/esm/hooks/useOpenWalletModal.js.map +1 -1
- package/dist/esm/hooks/useSettings.d.ts +2 -16
- package/dist/esm/hooks/useSettings.d.ts.map +1 -1
- package/dist/esm/hooks/useSettings.js +1 -23
- package/dist/esm/hooks/useSettings.js.map +1 -1
- package/dist/esm/utils/tokens.d.ts +1 -4
- package/dist/esm/utils/tokens.d.ts.map +1 -1
- package/dist/esm/utils/tokens.js +0 -18
- package/dist/esm/utils/tokens.js.map +1 -1
- package/dist/esm/views/CoinDetails/index.d.ts.map +1 -1
- package/dist/esm/views/CoinDetails/index.js +22 -31
- package/dist/esm/views/CoinDetails/index.js.map +1 -1
- package/dist/esm/views/CollectibleDetails/index.d.ts.map +1 -1
- package/dist/esm/views/CollectibleDetails/index.js +21 -25
- package/dist/esm/views/CollectibleDetails/index.js.map +1 -1
- package/dist/esm/views/History.js +3 -3
- package/dist/esm/views/History.js.map +1 -1
- package/dist/esm/views/Home/index.d.ts.map +1 -1
- package/dist/esm/views/Home/index.js +11 -16
- package/dist/esm/views/Home/index.js.map +1 -1
- package/dist/esm/views/Search/SearchCollectibles.d.ts +4 -1
- package/dist/esm/views/Search/SearchCollectibles.d.ts.map +1 -1
- package/dist/esm/views/Search/SearchCollectibles.js +45 -15
- package/dist/esm/views/Search/SearchCollectibles.js.map +1 -1
- package/dist/esm/views/Search/SearchTokens.d.ts.map +1 -1
- package/dist/esm/views/Search/SearchTokens.js +5 -9
- package/dist/esm/views/Search/SearchTokens.js.map +1 -1
- package/dist/esm/views/Send/SendCoin.d.ts.map +1 -1
- package/dist/esm/views/Send/SendCoin.js +83 -49
- package/dist/esm/views/Send/SendCoin.js.map +1 -1
- package/dist/esm/views/Send/SendCollectible.d.ts.map +1 -1
- package/dist/esm/views/Send/SendCollectible.js +100 -72
- package/dist/esm/views/Send/SendCollectible.js.map +1 -1
- package/dist/esm/views/Send/SendGeneral.d.ts.map +1 -1
- package/dist/esm/views/Send/SendGeneral.js +6 -18
- package/dist/esm/views/Send/SendGeneral.js.map +1 -1
- package/dist/esm/views/Settings/Apps.js +1 -1
- package/dist/esm/views/Settings/Apps.js.map +1 -1
- package/dist/esm/views/Settings/QrScan.d.ts +1 -1
- package/dist/esm/views/Settings/QrScan.d.ts.map +1 -1
- package/dist/esm/views/Settings/QrScan.js +91 -45
- package/dist/esm/views/Settings/QrScan.js.map +1 -1
- package/dist/esm/views/Settings/index.d.ts +0 -1
- package/dist/esm/views/Settings/index.d.ts.map +1 -1
- package/dist/esm/views/Settings/index.js +1 -1
- package/dist/esm/views/Settings/index.js.map +1 -1
- package/dist/esm/views/Swap/CoinInput.d.ts.map +1 -1
- package/dist/esm/views/Swap/CoinInput.js +1 -2
- package/dist/esm/views/Swap/CoinInput.js.map +1 -1
- package/dist/esm/views/Swap/CoinSelect.d.ts.map +1 -1
- package/dist/esm/views/Swap/CoinSelect.js +1 -2
- package/dist/esm/views/Swap/CoinSelect.js.map +1 -1
- package/dist/esm/views/Swap/Swap.d.ts.map +1 -1
- package/dist/esm/views/Swap/Swap.js +5 -3
- package/dist/esm/views/Swap/Swap.js.map +1 -1
- package/dist/esm/views/SwapCoin/SwapList.js +1 -1
- package/dist/esm/views/SwapCoin/SwapList.js.map +1 -1
- package/dist/esm/views/SwapCoin/index.d.ts.map +1 -1
- package/dist/esm/views/SwapCoin/index.js +9 -15
- package/dist/esm/views/SwapCoin/index.js.map +1 -1
- package/dist/esm/views/TransactionDetails/index.js +6 -6
- package/package.json +12 -13
|
@@ -1,28 +1,47 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import { useGetTokenBalancesDetails } from '@0xsequence/hooks';
|
|
2
|
+
import { useGetContractInfo } from '@0xsequence/hooks';
|
|
4
3
|
import { useObservable } from 'micro-observables';
|
|
4
|
+
import { useEffect } from 'react';
|
|
5
5
|
import { CollectiblesList } from '../../components/SearchLists/CollectiblesList';
|
|
6
|
-
import { useSettings, useNavigation } from '../../hooks';
|
|
7
|
-
export const SearchCollectibles = () => {
|
|
8
|
-
const { selectedWalletsObservable, selectedNetworksObservable, selectedCollectionsObservable, hideUnlistedTokens } = useSettings();
|
|
6
|
+
import { useSettings, useNavigation, useGetAllTokensDetails } from '../../hooks';
|
|
7
|
+
export const SearchCollectibles = ({ contractAddress, chainId }) => {
|
|
8
|
+
const { selectedWalletsObservable, selectedNetworksObservable, selectedCollectionsObservable, hideUnlistedTokens, setSelectedCollections } = useSettings();
|
|
9
9
|
const { setNavigation } = useNavigation();
|
|
10
|
+
// Only fetch contract info if contract address and chain id are provided
|
|
11
|
+
const { data: contractInfo } = useGetContractInfo({
|
|
12
|
+
chainID: String(chainId),
|
|
13
|
+
contractAddress: contractAddress || ''
|
|
14
|
+
}, { disabled: !contractAddress || !chainId });
|
|
15
|
+
useEffect(() => {
|
|
16
|
+
if (contractAddress && chainId && contractInfo) {
|
|
17
|
+
setSelectedCollections([
|
|
18
|
+
{
|
|
19
|
+
contractAddress,
|
|
20
|
+
chainId: Number(chainId),
|
|
21
|
+
logoURI: contractInfo.logoURI,
|
|
22
|
+
name: contractInfo.name
|
|
23
|
+
}
|
|
24
|
+
]);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
setSelectedCollections([]);
|
|
28
|
+
}
|
|
29
|
+
}, [contractInfo, contractAddress, chainId]);
|
|
10
30
|
const selectedWallets = useObservable(selectedWalletsObservable);
|
|
11
31
|
const selectedNetworks = useObservable(selectedNetworksObservable);
|
|
12
32
|
const selectedCollections = useObservable(selectedCollectionsObservable);
|
|
13
|
-
const { data: tokenBalancesData = [],
|
|
33
|
+
const { data: tokenBalancesData = [], isLoading } = useGetAllTokensDetails({
|
|
34
|
+
accountAddresses: selectedWallets.map(wallet => wallet.address),
|
|
14
35
|
chainIds: selectedNetworks,
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
contractStatus: hideUnlistedTokens ? ContractVerificationStatus.VERIFIED : ContractVerificationStatus.ALL,
|
|
18
|
-
contractWhitelist: selectedCollections.map(collection => collection.contractAddress),
|
|
19
|
-
omitNativeBalances: false
|
|
20
|
-
}
|
|
36
|
+
contractWhitelist: selectedCollections.map(collection => collection.contractAddress),
|
|
37
|
+
hideUnlistedTokens
|
|
21
38
|
});
|
|
22
39
|
const isSingleCollectionSelected = selectedCollections.length === 1;
|
|
23
40
|
const collectibleBalancesFiltered = tokenBalancesData.filter(token => {
|
|
24
|
-
if (isSingleCollectionSelected) {
|
|
25
|
-
|
|
41
|
+
if (isSingleCollectionSelected && selectedCollections[0]) {
|
|
42
|
+
// Ensure we only show tokens from the selected collection's chain and contract
|
|
43
|
+
return (token.chainId === selectedCollections[0].chainId &&
|
|
44
|
+
token.contractAddress.toLowerCase() === selectedCollections[0].contractAddress.toLowerCase());
|
|
26
45
|
}
|
|
27
46
|
return true;
|
|
28
47
|
});
|
|
@@ -37,6 +56,17 @@ export const SearchCollectibles = () => {
|
|
|
37
56
|
}
|
|
38
57
|
});
|
|
39
58
|
};
|
|
40
|
-
|
|
59
|
+
// Get the single selected collection details if available
|
|
60
|
+
const singleCollection = isSingleCollectionSelected ? selectedCollections[0] : null;
|
|
61
|
+
// Prepare the header info object, only if a single collection is selected
|
|
62
|
+
const collectionHeaderInfo = singleCollection
|
|
63
|
+
? {
|
|
64
|
+
logoURI: singleCollection.logoURI,
|
|
65
|
+
name: singleCollection.name,
|
|
66
|
+
chainId: singleCollection.chainId
|
|
67
|
+
// We could add collectibleBalancesFiltered.length here if needed later
|
|
68
|
+
}
|
|
69
|
+
: undefined;
|
|
70
|
+
return (_jsx("div", { className: "p-4 pt-2 w-full flex flex-col", children: _jsx(CollectiblesList, { tokenBalancesData: collectibleBalancesFiltered, isLoadingFirstPage: isLoading, collectionHeaderInfo: collectionHeaderInfo, onTokenClick: onHandleCollectibleClick }) }));
|
|
41
71
|
};
|
|
42
72
|
//# sourceMappingURL=SearchCollectibles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchCollectibles.js","sourceRoot":"","sources":["../../../../src/views/Search/SearchCollectibles.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"SearchCollectibles.js","sourceRoot":"","sources":["../../../../src/views/Search/SearchCollectibles.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchTokens.d.ts","sourceRoot":"","sources":["../../../../src/views/Search/SearchTokens.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SearchTokens.d.ts","sourceRoot":"","sources":["../../../../src/views/Search/SearchTokens.tsx"],"names":[],"mappings":"AAOA,eAAO,MAAM,YAAY,+CAkCxB,CAAA"}
|
|
@@ -1,21 +1,17 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useGetTokenBalancesSummary } from '@0xsequence/hooks';
|
|
3
|
-
import { ContractVerificationStatus } from '@0xsequence/indexer';
|
|
4
2
|
import { useObservable } from 'micro-observables';
|
|
5
3
|
import { TokenList } from '../../components/SearchLists';
|
|
6
4
|
import { useNavigation, useSettings } from '../../hooks';
|
|
5
|
+
import { useGetAllTokensDetails } from '../../hooks';
|
|
7
6
|
export const SearchTokens = () => {
|
|
8
7
|
const { setNavigation } = useNavigation();
|
|
9
8
|
const { selectedWalletsObservable, selectedNetworksObservable, hideUnlistedTokens } = useSettings();
|
|
10
9
|
const selectedWallets = useObservable(selectedWalletsObservable);
|
|
11
10
|
const selectedNetworks = useObservable(selectedNetworksObservable);
|
|
12
|
-
const { data: tokenBalancesData
|
|
11
|
+
const { data: tokenBalancesData, isLoading } = useGetAllTokensDetails({
|
|
12
|
+
accountAddresses: selectedWallets.map(wallet => wallet.address),
|
|
13
13
|
chainIds: selectedNetworks,
|
|
14
|
-
|
|
15
|
-
accountAddresses: selectedWallets.map(wallet => wallet.address),
|
|
16
|
-
contractStatus: hideUnlistedTokens ? ContractVerificationStatus.VERIFIED : ContractVerificationStatus.ALL,
|
|
17
|
-
omitNativeBalances: false
|
|
18
|
-
}
|
|
14
|
+
hideUnlistedTokens
|
|
19
15
|
});
|
|
20
16
|
const handleTokenClick = (balance) => {
|
|
21
17
|
setNavigation({
|
|
@@ -27,6 +23,6 @@ export const SearchTokens = () => {
|
|
|
27
23
|
}
|
|
28
24
|
});
|
|
29
25
|
};
|
|
30
|
-
return (_jsx("div", { className: "p-4 pt-2 w-full", children: _jsx(TokenList, { tokenBalancesData: tokenBalancesData,
|
|
26
|
+
return (_jsx("div", { className: "p-4 pt-2 w-full", children: _jsx(TokenList, { tokenBalancesData: tokenBalancesData, isLoadingFirstPage: isLoading, onTokenClick: handleTokenClick, includeUserAddress: true }) }));
|
|
31
27
|
};
|
|
32
28
|
//# sourceMappingURL=SearchTokens.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchTokens.js","sourceRoot":"","sources":["../../../../src/views/Search/SearchTokens.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"SearchTokens.js","sourceRoot":"","sources":["../../../../src/views/Search/SearchTokens.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AACxD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAGpD,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE;IAC/B,MAAM,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAAA;IACzC,MAAM,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,GAAG,WAAW,EAAE,CAAA;IAEnG,MAAM,eAAe,GAAG,aAAa,CAAC,yBAAyB,CAAC,CAAA;IAChE,MAAM,gBAAgB,GAAG,aAAa,CAAC,0BAA0B,CAAC,CAAA;IAElE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,sBAAsB,CAAC;QACpE,gBAAgB,EAAE,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;QAC/D,QAAQ,EAAE,gBAAgB;QAC1B,kBAAkB;KACnB,CAAC,CAAA;IAEF,MAAM,gBAAgB,GAAG,CAAC,OAA8B,EAAE,EAAE;QAC1D,aAAa,CAAC;YACZ,QAAQ,EAAE,cAAc;YACxB,MAAM,EAAE;gBACN,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,cAAc,EAAE,OAAO,CAAC,cAAc;aACvC;SACF,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,OAAO,CACL,cAAK,SAAS,EAAC,iBAAiB,YAC9B,KAAC,SAAS,IACR,iBAAiB,EAAE,iBAAiB,EACpC,kBAAkB,EAAE,SAAS,EAC7B,YAAY,EAAE,gBAAgB,EAC9B,kBAAkB,SAClB,GACE,CACP,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SendCoin.d.ts","sourceRoot":"","sources":["../../../../src/views/Send/SendCoin.tsx"],"names":[],"mappings":"AA6CA,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,MAAM,CAAA;CACxB;AAED,eAAO,MAAM,QAAQ,GAAI,8BAA8B,aAAa,
|
|
1
|
+
{"version":3,"file":"SendCoin.d.ts","sourceRoot":"","sources":["../../../../src/views/Send/SendCoin.tsx"],"names":[],"mappings":"AA6CA,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,MAAM,CAAA;CACxB;AAED,eAAO,MAAM,QAAQ,GAAI,8BAA8B,aAAa,mDAsYnE,CAAA"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { compareAddress, getNativeTokenInfoByChainId, useAnalyticsContext, truncateAtMiddle, useCheckWaasFeeOptions, useWaasFeeOptions, waitForTransactionReceipt, TRANSACTION_CONFIRMATIONS_DEFAULT, useWallets } from '@0xsequence/connect';
|
|
3
3
|
import { Button, ChevronRightIcon, CopyIcon, CloseIcon, GradientAvatar, Text, NumericInput, TextInput, Spinner, Card, useToast } from '@0xsequence/design-system';
|
|
4
|
-
import { useClearCachedBalances,
|
|
5
|
-
import { ContractVerificationStatus } from '@0xsequence/indexer';
|
|
4
|
+
import { useClearCachedBalances, useGetCoinPrices, useGetExchangeRate, useIndexerClient, useGetSingleTokenBalance } from '@0xsequence/hooks';
|
|
6
5
|
import { useState, useRef, useEffect } from 'react';
|
|
7
6
|
import { encodeFunctionData, formatUnits, parseUnits, toHex, zeroAddress } from 'viem';
|
|
8
|
-
import { useAccount, useChainId, useSwitchChain, useConfig,
|
|
7
|
+
import { useAccount, useChainId, useSwitchChain, useConfig, usePublicClient, useWalletClient } from 'wagmi';
|
|
9
8
|
import { WalletSelect } from '../../components/Select/WalletSelect';
|
|
10
9
|
import { SendItemInfo } from '../../components/SendItemInfo';
|
|
11
10
|
import { TransactionConfirmation } from '../../components/TransactionConfirmation';
|
|
@@ -33,7 +32,7 @@ export const SendCoin = ({ chainId, contractAddress }) => {
|
|
|
33
32
|
const { fiatCurrency } = useSettings();
|
|
34
33
|
const [amount, setAmount] = useState('0');
|
|
35
34
|
const [toAddress, setToAddress] = useState('');
|
|
36
|
-
const {
|
|
35
|
+
const { data: walletClient } = useWalletClient();
|
|
37
36
|
const [isSendTxnPending, setIsSendTxnPending] = useState(false);
|
|
38
37
|
const [showConfirmation, setShowConfirmation] = useState(false);
|
|
39
38
|
const [feeOptions, setFeeOptions] = useState();
|
|
@@ -41,25 +40,20 @@ export const SendCoin = ({ chainId, contractAddress }) => {
|
|
|
41
40
|
const [selectedFeeTokenAddress, setSelectedFeeTokenAddress] = useState(null);
|
|
42
41
|
const checkFeeOptions = useCheckWaasFeeOptions();
|
|
43
42
|
const [pendingFeeOption, confirmFeeOption, _rejectFeeOption] = useWaasFeeOptions();
|
|
44
|
-
const { data:
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
contractStatus: ContractVerificationStatus.ALL,
|
|
49
|
-
contractWhitelist: [contractAddress],
|
|
50
|
-
omitNativeBalances: false
|
|
51
|
-
}
|
|
43
|
+
const { data: tokenBalance, isLoading: isLoadingBalances } = useGetSingleTokenBalance({
|
|
44
|
+
chainId,
|
|
45
|
+
contractAddress,
|
|
46
|
+
accountAddress
|
|
52
47
|
});
|
|
53
48
|
const nativeTokenInfo = getNativeTokenInfoByChainId(chainId, chains);
|
|
54
|
-
const
|
|
55
|
-
const { data: coinPrices = [], isPending: isPendingCoinPrices } = useGetCoinPrices([
|
|
49
|
+
const { data: coinPrices = [], isLoading: isLoadingCoinPrices } = useGetCoinPrices([
|
|
56
50
|
{
|
|
57
51
|
chainId,
|
|
58
52
|
contractAddress
|
|
59
53
|
}
|
|
60
54
|
]);
|
|
61
|
-
const { data: conversionRate = 1,
|
|
62
|
-
const
|
|
55
|
+
const { data: conversionRate = 1, isLoading: isLoadingConversionRate } = useGetExchangeRate(fiatCurrency.symbol);
|
|
56
|
+
const isLoading = isLoadingBalances || isLoadingCoinPrices || isLoadingConversionRate;
|
|
63
57
|
// Handle fee option confirmation when pendingFeeOption is available
|
|
64
58
|
useEffect(() => {
|
|
65
59
|
if (pendingFeeOption && selectedFeeTokenAddress !== null) {
|
|
@@ -70,7 +64,7 @@ export const SendCoin = ({ chainId, contractAddress }) => {
|
|
|
70
64
|
useEffect(() => {
|
|
71
65
|
setIsBackButtonEnabled(!showConfirmation);
|
|
72
66
|
}, [showConfirmation, setIsBackButtonEnabled]);
|
|
73
|
-
if (
|
|
67
|
+
if (isLoading) {
|
|
74
68
|
return null;
|
|
75
69
|
}
|
|
76
70
|
const isNativeCoin = compareAddress(contractAddress, zeroAddress);
|
|
@@ -158,47 +152,87 @@ export const SendCoin = ({ chainId, contractAddress }) => {
|
|
|
158
152
|
source: 'sequence-kit/wallet'
|
|
159
153
|
}
|
|
160
154
|
});
|
|
155
|
+
if (!walletClient) {
|
|
156
|
+
console.error('Wallet client not found');
|
|
157
|
+
toast({
|
|
158
|
+
title: 'Error',
|
|
159
|
+
description: 'Wallet client not available. Please ensure your wallet is connected.',
|
|
160
|
+
variant: 'error'
|
|
161
|
+
});
|
|
162
|
+
setIsSendTxnPending(false);
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
161
165
|
setIsSendTxnPending(true);
|
|
162
166
|
const sendAmount = parseUnits(amountToSendFormatted, decimals);
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
|
|
167
|
+
let txHash;
|
|
168
|
+
try {
|
|
169
|
+
if (isNativeCoin) {
|
|
170
|
+
console.log('Sending native coin via walletClient');
|
|
171
|
+
txHash = await walletClient.sendTransaction({
|
|
172
|
+
account: accountAddress,
|
|
173
|
+
to: toAddress,
|
|
174
|
+
value: BigInt(sendAmount.toString()),
|
|
175
|
+
chain: chains.find(c => c.id === chainId)
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
console.log('Sending ERC20 coin via walletClient');
|
|
180
|
+
txHash = await walletClient.sendTransaction({
|
|
181
|
+
account: accountAddress,
|
|
182
|
+
to: tokenBalance?.contractAddress,
|
|
183
|
+
data: encodeFunctionData({ abi: ERC_20_ABI, functionName: 'transfer', args: [toAddress, toHex(sendAmount)] }),
|
|
184
|
+
chain: chains.find(c => c.id === chainId)
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
// Handle successful transaction submission
|
|
188
|
+
setIsBackButtonEnabled(true);
|
|
189
|
+
if (txHash) {
|
|
190
|
+
setNavigation({
|
|
191
|
+
location: 'home'
|
|
192
|
+
});
|
|
193
|
+
setIsSendTxnPending(false); // Set pending to false immediately after getting hash
|
|
182
194
|
toast({
|
|
183
195
|
title: 'Transaction sent',
|
|
184
196
|
description: `Successfully sent ${amountToSendFormatted} ${symbol} to ${toAddress}`,
|
|
185
197
|
variant: 'success'
|
|
186
198
|
});
|
|
199
|
+
// Wait for receipt in the background
|
|
200
|
+
if (publicClient) {
|
|
201
|
+
waitForTransactionReceipt({
|
|
202
|
+
indexerClient,
|
|
203
|
+
txnHash: txHash,
|
|
204
|
+
publicClient,
|
|
205
|
+
confirmations: TRANSACTION_CONFIRMATIONS_DEFAULT
|
|
206
|
+
})
|
|
207
|
+
.then(() => {
|
|
208
|
+
clearCachedBalances();
|
|
209
|
+
console.log('Transaction confirmed and balances cleared:', txHash);
|
|
210
|
+
})
|
|
211
|
+
.catch(error => {
|
|
212
|
+
console.error('Error waiting for transaction receipt:', error);
|
|
213
|
+
// Optionally show another toast for confirmation failure
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
else {
|
|
218
|
+
// Handle case where txHash is unexpectedly undefined
|
|
219
|
+
setIsSendTxnPending(false);
|
|
220
|
+
toast({
|
|
221
|
+
title: 'Transaction Error',
|
|
222
|
+
description: 'Transaction submitted but no hash received.',
|
|
223
|
+
variant: 'error'
|
|
224
|
+
});
|
|
187
225
|
}
|
|
188
|
-
};
|
|
189
|
-
if (isNativeCoin) {
|
|
190
|
-
sendTransaction({
|
|
191
|
-
to: toAddress,
|
|
192
|
-
value: BigInt(sendAmount.toString()),
|
|
193
|
-
gas: null
|
|
194
|
-
}, txOptions);
|
|
195
226
|
}
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
227
|
+
catch (error) {
|
|
228
|
+
console.error('Transaction failed:', error);
|
|
229
|
+
setIsSendTxnPending(false);
|
|
230
|
+
setIsBackButtonEnabled(true);
|
|
231
|
+
toast({
|
|
232
|
+
title: 'Transaction Failed',
|
|
233
|
+
description: error?.shortMessage || error?.message || 'An unknown error occurred.',
|
|
234
|
+
variant: 'error'
|
|
235
|
+
});
|
|
202
236
|
}
|
|
203
237
|
};
|
|
204
238
|
return (_jsxs("form", { className: "flex px-4 pb-4 gap-2 flex-col", style: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SendCoin.js","sourceRoot":"","sources":["../../../../src/views/Send/SendCoin.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SendCoin.js","sourceRoot":"","sources":["../../../../src/views/Send/SendCoin.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SendCollectible.d.ts","sourceRoot":"","sources":["../../../../src/views/Send/SendCollectible.tsx"],"names":[],"mappings":"AAwCA,UAAU,oBAAoB;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,MAAM,CAAA;IACvB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,eAAO,MAAM,eAAe,GAAI,uCAAuC,oBAAoB,
|
|
1
|
+
{"version":3,"file":"SendCollectible.d.ts","sourceRoot":"","sources":["../../../../src/views/Send/SendCollectible.tsx"],"names":[],"mappings":"AAwCA,UAAU,oBAAoB;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,MAAM,CAAA;IACvB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,eAAO,MAAM,eAAe,GAAI,uCAAuC,oBAAoB,mDAub1F,CAAA"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { getNativeTokenInfoByChainId, useAnalyticsContext, truncateAtMiddle, useCheckWaasFeeOptions, useWaasFeeOptions, waitForTransactionReceipt, TRANSACTION_CONFIRMATIONS_DEFAULT, useWallets } from '@0xsequence/connect';
|
|
3
3
|
import { Button, ChevronRightIcon, CopyIcon, CloseIcon, GradientAvatar, AddIcon, SubtractIcon, Text, NumericInput, TextInput, Spinner, Card, useToast } from '@0xsequence/design-system';
|
|
4
|
-
import {
|
|
5
|
-
import { ContractVerificationStatus } from '@0xsequence/indexer';
|
|
4
|
+
import { useClearCachedBalances, useIndexerClient, useGetSingleTokenBalance } from '@0xsequence/hooks';
|
|
6
5
|
import { useRef, useState, useEffect } from 'react';
|
|
7
6
|
import { encodeFunctionData, formatUnits, parseUnits, toHex } from 'viem';
|
|
8
|
-
import { useAccount, useChainId, useSwitchChain, useConfig,
|
|
7
|
+
import { useAccount, useChainId, useSwitchChain, useConfig, usePublicClient, useWalletClient } from 'wagmi';
|
|
9
8
|
import { WalletSelect } from '../../components/Select/WalletSelect';
|
|
10
9
|
import { SendItemInfo } from '../../components/SendItemInfo';
|
|
11
10
|
import { TransactionConfirmation } from '../../components/TransactionConfirmation';
|
|
@@ -33,7 +32,7 @@ export const SendCollectible = ({ chainId, contractAddress, tokenId }) => {
|
|
|
33
32
|
const [amount, setAmount] = useState('0');
|
|
34
33
|
const [toAddress, setToAddress] = useState('');
|
|
35
34
|
const [showAmountControls, setShowAmountControls] = useState(false);
|
|
36
|
-
const {
|
|
35
|
+
const { data: walletClient } = useWalletClient();
|
|
37
36
|
const [isSendTxnPending, setIsSendTxnPending] = useState(false);
|
|
38
37
|
const [showConfirmation, setShowConfirmation] = useState(false);
|
|
39
38
|
const [feeOptions, setFeeOptions] = useState();
|
|
@@ -41,16 +40,12 @@ export const SendCollectible = ({ chainId, contractAddress, tokenId }) => {
|
|
|
41
40
|
const [selectedFeeTokenAddress, setSelectedFeeTokenAddress] = useState(null);
|
|
42
41
|
const checkFeeOptions = useCheckWaasFeeOptions();
|
|
43
42
|
const [pendingFeeOption, confirmFeeOption, _rejectFeeOption] = useWaasFeeOptions();
|
|
44
|
-
const { data:
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
omitNativeBalances: false
|
|
50
|
-
},
|
|
51
|
-
chainIds: [chainId]
|
|
43
|
+
const { data: tokenBalance, isLoading: isLoadingBalances } = useGetSingleTokenBalance({
|
|
44
|
+
chainId,
|
|
45
|
+
contractAddress,
|
|
46
|
+
accountAddress,
|
|
47
|
+
tokenId
|
|
52
48
|
});
|
|
53
|
-
const tokenBalance = dataTokens && dataTokens.length > 0 ? dataTokens.find(balance => balance.tokenID === tokenId) : undefined;
|
|
54
49
|
let contractType;
|
|
55
50
|
if (tokenBalance) {
|
|
56
51
|
contractType = tokenBalance.contractType;
|
|
@@ -78,8 +73,8 @@ export const SendCollectible = ({ chainId, contractAddress, tokenId }) => {
|
|
|
78
73
|
setIsBackButtonEnabled(!showConfirmation);
|
|
79
74
|
}, [showConfirmation, setIsBackButtonEnabled]);
|
|
80
75
|
const nativeTokenInfo = getNativeTokenInfoByChainId(chainId, chains);
|
|
81
|
-
const
|
|
82
|
-
if (
|
|
76
|
+
const isLoading = isLoadingBalances;
|
|
77
|
+
if (isLoading) {
|
|
83
78
|
return null;
|
|
84
79
|
}
|
|
85
80
|
const decimals = tokenBalance?.tokenMetadata?.decimals || 0;
|
|
@@ -169,76 +164,109 @@ export const SendCollectible = ({ chainId, contractAddress, tokenId }) => {
|
|
|
169
164
|
setIsCheckingFeeOptions(false);
|
|
170
165
|
};
|
|
171
166
|
const executeTransaction = async () => {
|
|
172
|
-
if (!isCorrectChainId && isConnectorSequenceBased) {
|
|
167
|
+
if (!isCorrectChainId && !isConnectorSequenceBased) {
|
|
173
168
|
await switchChainAsync({ chainId });
|
|
174
169
|
}
|
|
170
|
+
analytics?.track({
|
|
171
|
+
event: 'SEND_TRANSACTION_REQUEST',
|
|
172
|
+
props: {
|
|
173
|
+
walletClient: connector?._wallet?.id || 'unknown',
|
|
174
|
+
source: 'sequence-kit/wallet'
|
|
175
|
+
}
|
|
176
|
+
});
|
|
177
|
+
if (!walletClient) {
|
|
178
|
+
console.error('Wallet client not found');
|
|
179
|
+
toast({
|
|
180
|
+
title: 'Error',
|
|
181
|
+
description: 'Wallet client not available. Please ensure your wallet is connected.',
|
|
182
|
+
variant: 'error'
|
|
183
|
+
});
|
|
184
|
+
setIsSendTxnPending(false);
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
setIsSendTxnPending(true);
|
|
175
188
|
const sendAmount = parseUnits(amountToSendFormatted, decimals);
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
189
|
+
let txHash;
|
|
190
|
+
let txData;
|
|
191
|
+
try {
|
|
192
|
+
switch (contractType) {
|
|
193
|
+
case 'ERC721':
|
|
194
|
+
console.log('Sending ERC721 via walletClient');
|
|
195
|
+
txData = encodeFunctionData({
|
|
196
|
+
abi: ERC_721_ABI,
|
|
197
|
+
functionName: 'safeTransferFrom',
|
|
198
|
+
args: [accountAddress, toAddress, tokenId]
|
|
182
199
|
});
|
|
183
|
-
|
|
184
|
-
|
|
200
|
+
txHash = await walletClient.sendTransaction({
|
|
201
|
+
account: accountAddress,
|
|
202
|
+
to: tokenBalance.contractAddress,
|
|
203
|
+
data: txData,
|
|
204
|
+
chain: chains.find(c => c.id === chainId)
|
|
205
|
+
});
|
|
206
|
+
break;
|
|
207
|
+
case 'ERC1155':
|
|
208
|
+
default:
|
|
209
|
+
console.log('Sending ERC1155 via walletClient');
|
|
210
|
+
txData = encodeFunctionData({
|
|
211
|
+
abi: ERC_1155_ABI,
|
|
212
|
+
functionName: 'safeBatchTransferFrom',
|
|
213
|
+
args: [accountAddress, toAddress, [tokenId], [toHex(sendAmount)], toHex(new Uint8Array())]
|
|
214
|
+
});
|
|
215
|
+
txHash = await walletClient.sendTransaction({
|
|
216
|
+
account: accountAddress,
|
|
217
|
+
to: tokenBalance.contractAddress,
|
|
218
|
+
data: txData,
|
|
219
|
+
chain: chains.find(c => c.id === chainId)
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
// Handle successful transaction submission
|
|
223
|
+
setIsBackButtonEnabled(true);
|
|
224
|
+
if (txHash) {
|
|
225
|
+
setNavigation({
|
|
226
|
+
location: 'home'
|
|
227
|
+
});
|
|
228
|
+
setIsSendTxnPending(false); // Set pending to false immediately after getting hash
|
|
229
|
+
toast({
|
|
230
|
+
title: 'Transaction sent',
|
|
231
|
+
description: `Successfully sent ${amountToSendFormatted} ${name} to ${toAddress}`,
|
|
232
|
+
variant: 'success'
|
|
233
|
+
});
|
|
234
|
+
// Wait for receipt in the background
|
|
185
235
|
if (publicClient) {
|
|
186
|
-
|
|
236
|
+
waitForTransactionReceipt({
|
|
187
237
|
indexerClient,
|
|
188
|
-
txnHash:
|
|
238
|
+
txnHash: txHash,
|
|
189
239
|
publicClient,
|
|
190
240
|
confirmations: TRANSACTION_CONFIRMATIONS_DEFAULT
|
|
241
|
+
})
|
|
242
|
+
.then(() => {
|
|
243
|
+
clearCachedBalances();
|
|
244
|
+
console.log('Transaction confirmed and balances cleared:', txHash);
|
|
245
|
+
})
|
|
246
|
+
.catch(error => {
|
|
247
|
+
console.error('Error waiting for transaction receipt:', error);
|
|
191
248
|
});
|
|
192
|
-
clearCachedBalances();
|
|
193
249
|
}
|
|
250
|
+
}
|
|
251
|
+
else {
|
|
252
|
+
// Handle case where txHash is unexpectedly undefined
|
|
253
|
+
setIsSendTxnPending(false);
|
|
194
254
|
toast({
|
|
195
|
-
title: 'Transaction
|
|
196
|
-
description:
|
|
197
|
-
variant: '
|
|
255
|
+
title: 'Transaction Error',
|
|
256
|
+
description: 'Transaction submitted but no hash received.',
|
|
257
|
+
variant: 'error'
|
|
198
258
|
});
|
|
199
259
|
}
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
setIsSendTxnPending(true);
|
|
211
|
-
// _from, _to, _id
|
|
212
|
-
sendTransaction({
|
|
213
|
-
to: tokenBalance.contractAddress,
|
|
214
|
-
data: encodeFunctionData({
|
|
215
|
-
abi: ERC_721_ABI,
|
|
216
|
-
functionName: 'safeTransferFrom',
|
|
217
|
-
args: [accountAddress, toAddress, tokenId]
|
|
218
|
-
}),
|
|
219
|
-
gas: null
|
|
220
|
-
}, txOptions);
|
|
221
|
-
break;
|
|
222
|
-
case 'ERC1155':
|
|
223
|
-
default:
|
|
224
|
-
analytics?.track({
|
|
225
|
-
event: 'SEND_TRANSACTION_REQUEST',
|
|
226
|
-
props: {
|
|
227
|
-
walletClient: connector?._wallet?.id || 'unknown',
|
|
228
|
-
source: 'sequence-kit/wallet'
|
|
229
|
-
}
|
|
230
|
-
});
|
|
231
|
-
setIsSendTxnPending(true);
|
|
232
|
-
// _from, _to, _ids, _amounts, _data
|
|
233
|
-
sendTransaction({
|
|
234
|
-
to: tokenBalance.contractAddress,
|
|
235
|
-
data: encodeFunctionData({
|
|
236
|
-
abi: ERC_1155_ABI,
|
|
237
|
-
functionName: 'safeBatchTransferFrom',
|
|
238
|
-
args: [accountAddress, toAddress, [tokenId], [toHex(sendAmount)], toHex(new Uint8Array())]
|
|
239
|
-
}),
|
|
240
|
-
gas: null
|
|
241
|
-
}, txOptions);
|
|
260
|
+
}
|
|
261
|
+
catch (error) {
|
|
262
|
+
console.error('Transaction failed:', error);
|
|
263
|
+
setIsSendTxnPending(false);
|
|
264
|
+
setIsBackButtonEnabled(true);
|
|
265
|
+
toast({
|
|
266
|
+
title: 'Transaction Failed',
|
|
267
|
+
description: error?.shortMessage || error?.message || 'An unknown error occurred.',
|
|
268
|
+
variant: 'error'
|
|
269
|
+
});
|
|
242
270
|
}
|
|
243
271
|
};
|
|
244
272
|
const maxAmount = formatUnits(BigInt(tokenBalance?.balance || 0), decimals).toString();
|