prettier hints
parent
f4ac6ef7fb
commit
126bfa051a
@ -0,0 +1,29 @@
|
|||||||
|
import { GameHint } from "./rpcApi";
|
||||||
|
import * as React from 'react';
|
||||||
|
import { Alert, FormControlLabel, Switch } from '@mui/material';
|
||||||
|
import Markdown from '../Markdown';
|
||||||
|
|
||||||
|
function Hint({hint} : {hint: GameHint}) {
|
||||||
|
return <Alert severity="info" sx={{ mt: 1 }}><Markdown>{hint.text}</Markdown></Alert>
|
||||||
|
}
|
||||||
|
|
||||||
|
export function Hints({hints} : {hints: GameHint[]}) {
|
||||||
|
|
||||||
|
|
||||||
|
const [showHints, setShowHints] = React.useState(false);
|
||||||
|
const hasHints = hints.length > 0
|
||||||
|
|
||||||
|
|
||||||
|
const openHints = hints.filter(hint => !hint.hidden)
|
||||||
|
const hiddenHints = hints.filter(hint => hint.hidden)
|
||||||
|
|
||||||
|
return <>
|
||||||
|
{openHints.map(hint => <Hint hint={hint} />)}
|
||||||
|
{hasHints &&
|
||||||
|
<FormControlLabel
|
||||||
|
control={<Switch checked={showHints} onChange={() => setShowHints((prev) => !prev)} />}
|
||||||
|
label="More Help?"
|
||||||
|
/>}
|
||||||
|
{showHints && hiddenHints.map(hint => <Hint hint={hint} />)}
|
||||||
|
</>
|
||||||
|
}
|
Loading…
Reference in New Issue