Skip to content

Commit c7dc6b4

Browse files
authored
Merge pull request #1332 from kleros/fix(web)/cases-in-progress-and-pagination-overflow
fix(web)/cases-in-progress-and-pagination-overflow
2 parents cfe88a2 + cdc324a commit c7dc6b4

File tree

3 files changed

+14
-5
lines changed

3 files changed

+14
-5
lines changed

web/src/pages/Cases/CasesFetcher.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,10 @@ const CasesFetcher: React.FC = () => {
6161
() => calculateStats(isCourtFilter, courtData?.court, counterData?.counter, decodedFilter),
6262
[isCourtFilter, courtData?.court, counterData?.counter, decodedFilter]
6363
);
64+
const totalPages = useMemo(
65+
() => (!isUndefined(totalCases) ? Math.ceil(totalCases / casesPerPage) : 1),
66+
[totalCases, casesPerPage]
67+
);
6468

6569
return (
6670
<CasesDisplay
@@ -69,7 +73,7 @@ const CasesFetcher: React.FC = () => {
6973
numberClosedDisputes={ruledCases}
7074
currentPage={pageNumber}
7175
setCurrentPage={(newPage: number) => navigate(`${location}/${newPage}/${order}/${filter}`)}
72-
totalPages={!isUndefined(totalCases) ? Math.ceil(totalCases / casesPerPage) : 1}
76+
totalPages={totalPages}
7377
{...{ casesPerPage }}
7478
/>
7579
);

web/src/pages/Courts/CourtDetails/Stats.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ const stats: IStat[] = [
8787
},
8888
{
8989
title: "In Progress",
90-
getText: (data) => data?.numberDisputes,
90+
getText: (data) => data?.numberDisputes - data?.numberClosedDisputes,
9191
color: "orange",
9292
icon: BalanceIcon,
9393
},

web/src/pages/Dashboard/index.tsx

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1-
import React from "react";
1+
import React, { useMemo } from "react";
22
import styled from "styled-components";
33
import { useNavigate, useParams } from "react-router-dom";
44
import { useAccount } from "wagmi";
55
import { OrderDirection } from "src/graphql/graphql";
66
import { DisputeDetailsFragment, useMyCasesQuery } from "queries/useCasesQuery";
77
import { useUserQuery } from "queries/useUser";
88
import { decodeURIFilter, useRootPath } from "utils/uri";
9+
import { isUndefined } from "utils/index";
910
import CasesDisplay from "components/CasesDisplay";
1011
import ConnectWallet from "components/ConnectWallet";
1112
import JurorInfo from "./JurorInfo";
@@ -54,6 +55,10 @@ const Dashboard: React.FC = () => {
5455
);
5556
const { data: userData } = useUserQuery(address, decodedFilter);
5657
const totalCases = userData?.user?.disputes.length;
58+
const totalPages = useMemo(
59+
() => (!isUndefined(totalCases) ? Math.ceil(totalCases / casesPerPage) : 1),
60+
[totalCases, casesPerPage]
61+
);
5762

5863
return (
5964
<Container>
@@ -63,10 +68,10 @@ const Dashboard: React.FC = () => {
6368
<Courts />
6469
<StyledCasesDisplay
6570
title="My Cases"
66-
disputes={disputesData?.user?.disputes as DisputeDetailsFragment[]}
71+
disputes={userData?.user !== null ? (disputesData?.user?.disputes as DisputeDetailsFragment[]) : []}
6772
numberDisputes={totalCases}
6873
numberClosedDisputes={0}
69-
totalPages={10}
74+
totalPages={totalPages}
7075
currentPage={pageNumber}
7176
setCurrentPage={(newPage: number) => navigate(`${location}/${newPage}/${order}/${filter}`)}
7277
{...{ casesPerPage }}

0 commit comments

Comments
 (0)