Skip to content

Commit cf44adf

Browse files
committed
fix(web): juror-number-input-crash
1 parent 592243f commit cf44adf

File tree

2 files changed

+8
-3
lines changed

2 files changed

+8
-3
lines changed

web/src/pages/Resolver/NavigationButtons/NextButton.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ const NextButton: React.FC<INextButton> = ({ nextRoute }) => {
4343
(location.pathname.includes("/resolver/description") && !disputeData.description) ||
4444
(location.pathname.includes("/resolver/court") &&
4545
(!disputeData.courtId || !isGatedTokenValid || !disputeData.disputeKitId)) ||
46-
(location.pathname.includes("/resolver/jurors") && !disputeData.arbitrationCost) ||
46+
(location.pathname.includes("/resolver/jurors") && (!disputeData.arbitrationCost || !disputeData.numberOfJurors)) ||
4747
(location.pathname.includes("/resolver/voting-options") && !areVotingOptionsFilled) ||
4848
(location.pathname.includes("/resolver/notable-persons") && !areAliasesValidOrEmpty) ||
4949
(location.pathname.includes("/resolver/policy") && (isPolicyUploading || !disputeData.policyURI));

web/src/pages/Resolver/Parameters/Jurors.tsx

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ const Jurors: React.FC = () => {
5858
enabled: !isUndefined(disputeData.numberOfJurors) && !Number.isNaN(disputeData.numberOfJurors),
5959
refetchInterval: REFETCH_INTERVAL,
6060
},
61-
args: [prepareArbitratorExtradata(disputeData.courtId ?? "", disputeData.numberOfJurors ?? "0")],
61+
args: [prepareArbitratorExtradata(disputeData.courtId ?? "", disputeData?.numberOfJurors ?? 0)],
6262
chainId: DEFAULT_CHAIN,
6363
});
6464

@@ -67,7 +67,12 @@ const Jurors: React.FC = () => {
6767
useEffect(() => setDisputeData({ ...disputeData, arbitrationCost: data?.toString() }), [data]);
6868

6969
const handleJurorsWrite = (event: React.ChangeEvent<HTMLInputElement>) => {
70-
setDisputeData({ ...disputeData, numberOfJurors: parseInt(event.target.value.replace(/\D/g, ""), 10) });
70+
const value = parseInt(event.target.value.replace(/\D/g, ""), 10);
71+
if (isUndefined(value) || isNaN(value)) {
72+
setDisputeData({ ...disputeData, numberOfJurors: 0 });
73+
} else {
74+
setDisputeData({ ...disputeData, numberOfJurors: value });
75+
}
7176
};
7277

7378
const noOfVotes = Number.isNaN(disputeData.numberOfJurors) ? "" : disputeData.numberOfJurors;

0 commit comments

Comments
 (0)