|
1 |
| -import React, { useCallback, useEffect, useMemo, useState } from "react"; |
| 1 | +import React, { useCallback, useMemo, useState } from "react"; |
2 | 2 | import styled from "styled-components";
|
3 | 3 |
|
4 | 4 | import { RULING_MODE } from "consts";
|
@@ -45,25 +45,18 @@ const AutomaticPresetInputsContainer = styled.div`
|
45 | 45 | flex-wrap: wrap;
|
46 | 46 | `;
|
47 | 47 |
|
| 48 | +const StyledLabel = styled.label``; |
| 49 | + |
48 | 50 | const RulingModes: React.FC = () => {
|
49 | 51 | const { isConnected, chainId } = useAccount();
|
50 | 52 | const { arbitrable, arbitrableSettings } = useRulerContext();
|
51 |
| - const [rulingMode, setRulingMode] = useState<RULING_MODE>(); |
| 53 | + const [rulingMode, setRulingMode] = useState<RULING_MODE>(RULING_MODE.Uninitialized); |
52 | 54 | const [tie, setTie] = useState(false);
|
53 | 55 | const [overriden, setOverriden] = useState(false);
|
54 | 56 | const [ruling, setRuling] = useState(0);
|
55 | 57 | const [isSending, setIsSending] = useState(false);
|
56 | 58 |
|
57 | 59 | const publicClient = usePublicClient();
|
58 |
| - useEffect(() => { |
59 |
| - // only update once the arbitrable settings are fetched and only update initially, not updated on refetch |
60 |
| - if (!isUndefined(rulingMode) || !arbitrableSettings) return; |
61 |
| - |
62 |
| - setRulingMode(arbitrableSettings.rulingMode); |
63 |
| - setOverriden(arbitrableSettings.overridden); |
64 |
| - setRuling(arbitrableSettings.ruling); |
65 |
| - setTie(arbitrableSettings.tied); |
66 |
| - }, [rulingMode, arbitrableSettings]); |
67 | 60 |
|
68 | 61 | const {
|
69 | 62 | data: manualModeConfig,
|
@@ -220,6 +213,9 @@ const RulingModes: React.FC = () => {
|
220 | 213 | return (
|
221 | 214 | <Container>
|
222 | 215 | <Header text="Ruling Mode" />
|
| 216 | + <StyledLabel> |
| 217 | + Current mode: <small>{getRulingModeText(arbitrableSettings?.rulingMode)}</small> |
| 218 | + </StyledLabel> |
223 | 219 | <SelectContainer>
|
224 | 220 | <Radio
|
225 | 221 | small
|
@@ -282,4 +278,18 @@ const RulingModes: React.FC = () => {
|
282 | 278 | );
|
283 | 279 | };
|
284 | 280 |
|
| 281 | +const getRulingModeText = (mode?: RULING_MODE) => { |
| 282 | + if (!mode) return "Uninitialized"; |
| 283 | + switch (mode) { |
| 284 | + case RULING_MODE.Manual: |
| 285 | + return "Manual"; |
| 286 | + case RULING_MODE.AutomaticRandom: |
| 287 | + return "Automatic Random"; |
| 288 | + case RULING_MODE.AutomaticPreset: |
| 289 | + return "Automatic Preset"; |
| 290 | + default: |
| 291 | + return "Uninitialized"; |
| 292 | + } |
| 293 | +}; |
| 294 | + |
285 | 295 | export default RulingModes;
|
0 commit comments