From 9a97a2bf94542b4129997bad4d6b14fe45e0dce2 Mon Sep 17 00:00:00 2001 From: Maximilian Kaske <56969857+mxkaske@users.noreply.github.com> Date: Wed, 4 Oct 2023 20:52:38 +0200 Subject: [PATCH] fix: widget (#357) --- apps/docs/pages/api-server/status-widget.mdx | 25 ++++++++++++------- .../components/layout/marketing-footer.tsx | 10 ++------ apps/web/src/components/status-widget.tsx | 24 ++++++++++++------ 3 files changed, 34 insertions(+), 25 deletions(-) diff --git a/apps/docs/pages/api-server/status-widget.mdx b/apps/docs/pages/api-server/status-widget.mdx index 08f4ccc9..d4b0d84e 100644 --- a/apps/docs/pages/api-server/status-widget.mdx +++ b/apps/docs/pages/api-server/status-widget.mdx @@ -72,7 +72,7 @@ const statusEnum = z.enum([ "degraded_performance", "partial_outage", "major_outage", - "under_maintenance", // currently not in use + "under_maintenance", "unknown", ]); @@ -112,15 +112,13 @@ export async function StatusWidget({ slug }: { slug: string }) { const data = await res.json(); const parsed = statusSchema.safeParse(data); - let label = "Unknown"; - let color = "bg-gray-500"; - - if (parsed.success) { - const status = dictionary[parsed.data.status]; - label = status.label; - color = status.color; + if (!parsed.success) { + return null; } + const key = parsed.data.status; + const { label, color } = dictionary[key]; + return ( {label} - + + {parsed.data.status === "operational" ? ( + + ) : null} + + ); } diff --git a/apps/web/src/components/layout/marketing-footer.tsx b/apps/web/src/components/layout/marketing-footer.tsx index 57173c42..8bc6f368 100644 --- a/apps/web/src/components/layout/marketing-footer.tsx +++ b/apps/web/src/components/layout/marketing-footer.tsx @@ -14,13 +14,8 @@ export function MarketingFooter({ className }: Props) { ); diff --git a/apps/web/src/components/status-widget.tsx b/apps/web/src/components/status-widget.tsx index 255ac836..6d5d0a03 100644 --- a/apps/web/src/components/status-widget.tsx +++ b/apps/web/src/components/status-widget.tsx @@ -5,6 +5,7 @@ const statusEnum = z.enum([ "degraded_performance", "partial_outage", "major_outage", + "under_maintenance", "unknown", ]); @@ -44,15 +45,13 @@ export async function StatusWidget({ slug }: { slug: string }) { const data = await res.json(); const parsed = statusSchema.safeParse(data); - let label = "Unknown"; - let color = "bg-gray-500"; - - if (parsed.success) { - const status = dictionary[parsed.data.status]; - label = status.label; - color = status.color; + if (!parsed.success) { + return null; } + const key = parsed.data.status; + const { label, color } = dictionary[key]; + return ( {label} - + + {parsed.data.status === "operational" ? ( + + ) : null} + + ); } -- 2.51.2