diff --git a/src/components/download.tsx b/src/components/download.tsx index 766605d..2dae059 100644 --- a/src/components/download.tsx +++ b/src/components/download.tsx @@ -69,6 +69,8 @@ const FieldDescription = styled.div` margin-bottom: 1rem; `; +type Platform = "Windows" | "MacOS" | "Linux" | "Unsupported"; + export default function DownloadPage() { const [platform, setPlatform] = useState(null); const [architecture, setArchitecture] = useState(null); @@ -79,7 +81,7 @@ export default function DownloadPage() { null, ); - const [selectedPlatform, setSelectedPlatform] = useState(""); + const [selectedPlatform, setSelectedPlatform] = useState(""); const [selectedArchitecture, setSelectedArchitecture] = useState("specific"); const [selectedWindowsDownloadType, setSelectedWindowsDownloadType] = useState("installer"); @@ -94,14 +96,19 @@ export default function DownloadPage() { if (typeof window !== "undefined") { userAgent = window.navigator.userAgent; } - if (userAgent.includes("Win")) { - setSelectedPlatform("Windows"); - } - if (userAgent.includes("Mac")) { - setSelectedPlatform("MacOS"); - } - if (userAgent.includes("Linux")) { - setSelectedPlatform("Linux"); + switch (true) { + case userAgent.includes("Win"): + setSelectedPlatform("Windows"); + break; + case userAgent.includes("Mac"): + setSelectedPlatform("MacOS"); + break; + case userAgent.includes("Linux"): + setSelectedPlatform("Linux"); + break; + default: + setSelectedPlatform("Unsupported"); + break; } }, []); const throwConfetti = () => { @@ -579,7 +586,7 @@ export default function DownloadPage() { )} - {selectedPlatform === "" && ( + {selectedPlatform === "Unsupported" && (