From 1c1b5c71afd69c14499069984a1f6feb125ffcee Mon Sep 17 00:00:00 2001 From: Regalijan <r@regalijan.com> Date: Sun, 12 May 2024 02:02:41 -0400 Subject: [PATCH] Fix various components --- components/AppealCard.tsx | 4 +++- components/InactivityNoticeCard.tsx | 20 +++++++++++++++++--- index.d.ts | 1 + 3 files changed, 21 insertions(+), 4 deletions(-) diff --git a/components/AppealCard.tsx b/components/AppealCard.tsx index 4bf3757..28878b0 100644 --- a/components/AppealCard.tsx +++ b/components/AppealCard.tsx @@ -127,7 +127,9 @@ export default function (props: AppealCardProps & { port?: MessagePort }) { </Stack> </CardBody> <CardFooter pb="4px"> - <Box display={props.open ? undefined : "none"}> + <Box + display={typeof props.approved === "number" ? "none" : "undefined"} + > <Button colorScheme="red" onClick={() => showModal("Deny")}> Deny </Button> diff --git a/components/InactivityNoticeCard.tsx b/components/InactivityNoticeCard.tsx index 5eb37a4..5d2c04b 100644 --- a/components/InactivityNoticeCard.tsx +++ b/components/InactivityNoticeCard.tsx @@ -94,11 +94,13 @@ export default function ( </Text> </Box> ) : null} - {props.decisions ? ( + {Object.keys(props.decisions as { [k: string]: boolean }).length ? ( <Box> <Heading size="xs">Decisions</Heading> <UnorderedList> - {Object.entries(props.decisions).map(([dept, accepted]) => ( + {Object.entries( + props.decisions as { [k: string]: boolean }, + ).map(([dept, accepted]) => ( <ListItem> <Stack alignItems="center" direction="row"> <Text>{dept}: </Text> @@ -111,7 +113,19 @@ export default function ( ) : null} </Stack> </CardBody> - <CardFooter display={props.open ? undefined : "none"} pb="4px"> + <CardFooter + display={ + props.departments.length !== + Object.values( + props.decisions as { + [k: string]: boolean; + }, + ).length + ? undefined + : "none" + } + pb="4px" + > <Box> <Button colorScheme="red" diff --git a/index.d.ts b/index.d.ts index 51b0803..dd98716 100644 --- a/index.d.ts +++ b/index.d.ts @@ -20,6 +20,7 @@ declare global { type RequestContext = EventContext<Env, string, { [k: string]: any }>; interface AppealCardProps { + approved: number | null; ban_reason: string; created_at: number; id: string;