Skip to content

Commit ed45b6a

Browse files
committed
feat: public transactions, token fetch bug fix
1 parent 2c6fd2a commit ed45b6a

File tree

4 files changed

+43
-43
lines changed

4 files changed

+43
-43
lines changed

web/src/hooks/useNativeTokenSymbol.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
import { useAccount } from "wagmi";
1+
import { DEFAULT_CHAIN, getChain } from "consts/chains";
22

33
export const useNativeTokenSymbol = () => {
4-
const { chain } = useAccount();
5-
return chain?.nativeCurrency.symbol;
4+
return getChain(DEFAULT_CHAIN)?.nativeCurrency.symbol;
65
};

web/src/hooks/useTokenMetadata.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
import { useState, useEffect } from "react";
22
import { Alchemy } from "alchemy-sdk";
3-
import { useAccount } from "wagmi";
3+
4+
import { DEFAULT_CHAIN } from "consts/chains";
45
import { alchemyConfig } from "utils/alchemyConfig";
56

67
export const useTokenMetadata = (tokenAddress: string) => {
7-
const { chain } = useAccount();
88
const [tokenMetadata, setTokenMetadata] = useState<any>(null);
99

1010
useEffect(() => {
1111
const fetchTokenMetadata = async () => {
12-
if (!tokenAddress || tokenAddress === "native" || !chain) return;
13-
const alchemy = new Alchemy(alchemyConfig(chain.id));
12+
if (!tokenAddress || tokenAddress === "native") return;
13+
const alchemy = new Alchemy(alchemyConfig(DEFAULT_CHAIN));
1414
try {
1515
const metadata = await alchemy.core.getTokenMetadata(tokenAddress);
1616
setTokenMetadata(metadata);
@@ -21,7 +21,7 @@ export const useTokenMetadata = (tokenAddress: string) => {
2121
};
2222

2323
fetchTokenMetadata();
24-
}, [tokenAddress, chain]);
24+
}, [tokenAddress]);
2525

2626
return { tokenMetadata };
2727
};

web/src/pages/MyTransactions/TransactionsFetcher.tsx

Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,22 @@
11
import React, { useMemo } from "react";
2+
3+
import { BREAKPOINT_LANDSCAPE } from "styles/landscapeStyle";
4+
25
import { useParams, useNavigate } from "react-router-dom";
36
import { useWindowSize } from "react-use";
47
import { useAccount } from "wagmi";
8+
9+
import { DEFAULT_CHAIN } from "consts/chains";
510
import { useRootPath, decodeURIFilter } from "utils/uri";
6-
import { useMyTransactionsQuery } from "hooks/queries/useTransactionsQuery";
7-
import { useUserQuery } from "hooks/queries/useUserQuery";
8-
import TransactionsDisplay from "components/TransactionsDisplay";
9-
import { BREAKPOINT_LANDSCAPE } from "styles/landscapeStyle";
11+
12+
import { useMyTransactionsQuery } from "queries/useTransactionsQuery";
13+
import { useUserQuery } from "queries/useUserQuery";
1014
import { OrderDirection, TransactionDetailsFragment } from "src/graphql/graphql";
1115

16+
import TransactionsDisplay from "components/TransactionsDisplay";
17+
import ConnectWallet from "components/ConnectWallet";
18+
import { ConnectWalletContainer } from "./index";
19+
1220
const TransactionsFetcher: React.FC = () => {
1321
const { page, order, filter } = useParams();
1422
const navigate = useNavigate();
@@ -28,6 +36,8 @@ const TransactionsFetcher: React.FC = () => {
2836
decodedFilter,
2937
order === "asc" ? OrderDirection.Asc : OrderDirection.Desc
3038
);
39+
const { isConnected, chain } = useAccount();
40+
const isOnSupportedChain = chain?.id === DEFAULT_CHAIN;
3141

3242
const { totalTransactions, totalConcludedTransactions } = useMemo(() => {
3343
switch (decodedFilter.status) {
@@ -68,7 +78,7 @@ const TransactionsFetcher: React.FC = () => {
6878
return Math.ceil(totalTransactions / transactionsPerPage) || 1;
6979
}, [totalTransactions, transactionsPerPage]);
7080

71-
return (
81+
return isConnected && isOnSupportedChain ? (
7282
<TransactionsDisplay
7383
transactions={escrowData?.escrows as TransactionDetailsFragment[]}
7484
totalTransactions={totalTransactions}
@@ -78,6 +88,12 @@ const TransactionsFetcher: React.FC = () => {
7888
totalPages={totalPages}
7989
transactionsPerPage={transactionsPerPage}
8090
/>
91+
) : (
92+
<ConnectWalletContainer>
93+
To see your transactions, connect first and switch to the supported chain
94+
<hr />
95+
<ConnectWallet />
96+
</ConnectWalletContainer>
8197
);
8298
};
8399

web/src/pages/MyTransactions/index.tsx

Lines changed: 15 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,9 @@ import { MAX_WIDTH_LANDSCAPE, landscapeStyle } from "styles/landscapeStyle";
55
import { responsiveSize } from "styles/responsiveSize";
66

77
import { Route, Routes } from "react-router-dom";
8-
import { useAccount } from "wagmi";
98

10-
import { DEFAULT_CHAIN } from "consts/chains";
119
import { TransactionDetailsProvider } from "context/TransactionDetailsContext";
1210

13-
import ConnectWallet from "components/ConnectWallet";
1411
import TransactionsFetcher from "./TransactionsFetcher";
1512
import TransactionDetails from "./TransactionDetails";
1613

@@ -23,8 +20,8 @@ const Container = styled.div`
2320
2421
${landscapeStyle(
2522
() => css`
26-
padding: 48px ${responsiveSize(0, 132)} 60px;
27-
`
23+
padding: 48px ${responsiveSize(0, 132)} 60px;
24+
`
2825
)}
2926
`;
3027

@@ -36,34 +33,22 @@ export const ConnectWalletContainer = styled.div`
3633
color: ${({ theme }) => theme.primaryText};
3734
`;
3835

39-
const Dashboard: React.FC = () => {
40-
const { isConnected, chain } = useAccount();
41-
const isOnSupportedChain = chain?.id === DEFAULT_CHAIN;
36+
const Dashboard: React.FC = () =>
4237

43-
return (
38+
(
4439
<Container>
45-
{isConnected && isOnSupportedChain ? (
46-
<Routes>
47-
<Route path="/display/:page/:order/:filter" element={<TransactionsFetcher />} />
48-
49-
<Route
50-
path="/:id/*"
51-
element={
52-
<TransactionDetailsProvider>
53-
<TransactionDetails />
54-
</TransactionDetailsProvider>
55-
}
56-
/>
57-
</Routes>
58-
) : (
59-
<ConnectWalletContainer>
60-
To see your transactions, connect first and switch to the supported chain
61-
<hr />
62-
<ConnectWallet />
63-
</ConnectWalletContainer>
64-
)}
40+
<Routes>
41+
<Route path="/display/:page/:order/:filter" element={<TransactionsFetcher />} />
42+
<Route
43+
path="/:id/*"
44+
element={
45+
<TransactionDetailsProvider>
46+
<TransactionDetails />
47+
</TransactionDetailsProvider>
48+
}
49+
/>
50+
</Routes>
6551
</Container>
6652
);
67-
};
6853

6954
export default Dashboard;

0 commit comments

Comments
 (0)