Skip to content

Commit 27eea66

Browse files
committed
refactor: remove indicators from voting tab, move to overview tab, substitute current verdict compon
1 parent a1f57bf commit 27eea66

File tree

4 files changed

+17
-13
lines changed

4 files changed

+17
-13
lines changed

web/src/components/DisputeView/CardLabels/Label.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ const LabelContainer = styled.div<{ backgroundColor: string }>`
1717
width: max-content;
1818
padding: 4px 8px;
1919
align-items: center;
20-
gap: 10px;
20+
gap: 8px;
2121
border-radius: 300px;
2222
background-color: ${({ backgroundColor }) => backgroundColor};
2323
`;

web/src/components/Verdict/FinalDecision.tsx

+10-2
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,14 @@ import { usePopulatedDisputeData } from "hooks/queries/usePopulatedDisputeData";
1515
import { useVotingHistory } from "hooks/queries/useVotingHistory";
1616
import { useVotingContext } from "hooks/useVotingContext";
1717
import { getLocalRounds } from "utils/getLocalRounds";
18+
import { isUndefined } from "utils/index";
1819

1920
import { useDisputeDetailsQuery } from "queries/useDisputeDetailsQuery";
2021

2122
import { responsiveSize } from "styles/responsiveSize";
2223

24+
import RulingAndRewardsIndicators from "./RulingAndRewardsIndicators";
2325
import AnswerDisplay from "./Answer";
24-
import VerdictBanner from "./VerdictBanner";
2526
import { Divider } from "../Divider";
2627
import { StyledArrowLink } from "../StyledArrowLink";
2728

@@ -90,6 +91,8 @@ const FinalDecision: React.FC<IFinalDecision> = ({ arbitrable }) => {
9091
});
9192
const currentRuling = Number(currentRulingArray?.[0]);
9293
const answer = populatedDisputeData?.answers?.[currentRuling! - 1];
94+
const rounds = votingHistory?.dispute?.rounds;
95+
const jurorRewardsDispersed = useMemo(() => Boolean(rounds?.every((round) => round.jurorRewardsDispersed)), [rounds]);
9396
const buttonText = useMemo(() => {
9497
if (!wasDrawn || isDisconnected) return "Check how the jury voted";
9598
if (isCommitPeriod && !commited) return "Commit your vote";
@@ -101,7 +104,12 @@ const FinalDecision: React.FC<IFinalDecision> = ({ arbitrable }) => {
101104
return (
102105
<Container>
103106
<VerdictContainer>
104-
<VerdictBanner ruled={ruled} />
107+
{!isUndefined(Boolean(disputeDetails?.dispute?.ruled)) || jurorRewardsDispersed ? (
108+
<RulingAndRewardsIndicators
109+
ruled={Boolean(disputeDetails?.dispute?.ruled)}
110+
jurorRewardsDispersed={jurorRewardsDispersed}
111+
/>
112+
) : null}
105113
{ruled && (
106114
<JuryContainer>
107115
<JuryDecisionTag>The jury decided in favor of:</JuryDecisionTag>

web/src/pages/Cases/CaseDetails/Voting/RulingAndRewardsIndicators.tsx renamed to web/src/components/Verdict/RulingAndRewardsIndicators.tsx

+6-1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import React from "react";
22
import styled from "styled-components";
33

44
import CheckCircle from "svgs/icons/check-circle-outline.svg";
5+
import Hourglass from "svgs/icons/hourglass.svg";
56
import Coins from "svgs/icons/pile-coins.svg";
67

78
import Label from "components/DisputeView/CardLabels/Label";
@@ -19,7 +20,11 @@ interface IRulingAndRewardsIndicators {
1920

2021
const RulingAndRewardsIndicators: React.FC<IRulingAndRewardsIndicators> = ({ jurorRewardsDispersed, ruled }) => (
2122
<Container>
22-
{ruled ? <Label icon={CheckCircle} text="Ruling executed" color="green" /> : null}
23+
{ruled ? (
24+
<Label icon={CheckCircle} text="Case closed" color="green" />
25+
) : (
26+
<Label icon={Hourglass} text="Case in progress" color="blue" />
27+
)}
2328
{jurorRewardsDispersed ? <Label icon={Coins} text="Juror rewards distributed" color="green" /> : null}
2429
</Container>
2530
);

web/src/pages/Cases/CaseDetails/Voting/VotingHistory.tsx

-9
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ import HowItWorks from "components/HowItWorks";
2222
import BinaryVoting from "components/Popup/MiniGuides/BinaryVoting";
2323

2424
import PendingVotesBox from "./PendingVotesBox";
25-
import RulingAndRewardsIndicators from "./RulingAndRewardsIndicators";
2625
import VotesAccordion from "./VotesDetails";
2726

2827
const Container = styled.div`
@@ -80,16 +79,8 @@ const VotingHistory: React.FC<{ arbitrable?: `0x${string}`; isQuestion: boolean
8079
[votingHistory, currentTab]
8180
);
8281

83-
const jurorRewardsDispersed = useMemo(() => Boolean(rounds?.every((round) => round.jurorRewardsDispersed)), [rounds]);
84-
8582
return (
8683
<Container>
87-
{Boolean(disputeData?.dispute?.ruled) || jurorRewardsDispersed ? (
88-
<RulingAndRewardsIndicators
89-
ruled={Boolean(disputeData?.dispute?.ruled)}
90-
jurorRewardsDispersed={jurorRewardsDispersed}
91-
/>
92-
) : null}
9384
<Header>
9485
<StyledTitle>Voting History</StyledTitle>
9586
<HowItWorks

0 commit comments

Comments
 (0)