1
- import React , { useMemo , useState , createContext , useContext } from "react" ;
1
+ import React , { useMemo , createContext , useContext , useState } from "react" ;
2
2
3
3
import { useParams } from "react-router-dom" ;
4
4
@@ -7,6 +7,7 @@ import { Periods } from "consts/periods";
7
7
import { usePopulatedDisputeData } from "hooks/queries/usePopulatedDisputeData" ;
8
8
import { useCountdown } from "hooks/useCountdown" ;
9
9
import { getLocalRounds } from "utils/getLocalRounds" ;
10
+ import { isUndefined } from "utils/index" ;
10
11
11
12
import { useAppealCost } from "queries/useAppealCost" ;
12
13
import { useClassicAppealQuery , ClassicAppealQuery } from "queries/useClassicAppealQuery" ;
@@ -15,6 +16,7 @@ import { useDisputeKitClassicMultipliers } from "queries/useDisputeKitClassicMul
15
16
interface ICountdownContext {
16
17
loserSideCountdown ?: number ;
17
18
winnerSideCountdown ?: number ;
19
+ isLoading ?: boolean ;
18
20
}
19
21
const CountdownContext = createContext < ICountdownContext > ( { } ) ;
20
22
@@ -73,6 +75,8 @@ export const ClassicAppealProvider: React.FC<{
73
75
dispute ?. court . timesPerPeriod [ Periods . appeal ]
74
76
) ;
75
77
78
+ const isLoading = useMemo ( ( ) => isUndefined ( dispute ) || isUndefined ( multipliers ) , [ dispute , multipliers ] ) ;
79
+
76
80
const { loserRequiredFunding, winnerRequiredFunding } = useMemo (
77
81
( ) => ( {
78
82
loserRequiredFunding : getRequiredFunding ( appealCost , multipliers ?. loser_stake_multiplier ) ,
@@ -85,7 +89,10 @@ export const ClassicAppealProvider: React.FC<{
85
89
86
90
return (
87
91
< CountdownContext . Provider
88
- value = { useMemo ( ( ) => ( { loserSideCountdown, winnerSideCountdown } ) , [ loserSideCountdown , winnerSideCountdown ] ) }
92
+ value = { useMemo (
93
+ ( ) => ( { loserSideCountdown, winnerSideCountdown, isLoading } ) ,
94
+ [ loserSideCountdown , winnerSideCountdown , isLoading ]
95
+ ) }
89
96
>
90
97
< SelectedOptionContext . Provider
91
98
value = { useMemo ( ( ) => ( { selectedOption, setSelectedOption } ) , [ selectedOption , setSelectedOption ] ) }
0 commit comments