Merge pull request #167 from ethereum/default-downloads-os

Add default tab on downloads page based on user OS
This commit is contained in:
Paul Wackerow 2022-12-16 05:36:16 +01:00 committed by GitHub
commit 022a7be96e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 12 additions and 2 deletions

View File

@ -1,5 +1,5 @@
import { Stack, Tabs, TabList, Tab, Text, TabPanel, TabPanels } from '@chakra-ui/react';
import { FC } from 'react';
import { FC, useMemo } from 'react';
import { DataTable } from '../../UI';
@ -37,6 +37,16 @@ export const DownloadsTable: FC<Props> = ({
const LAST_2_LINUX_RELEASES = amountOfReleasesToShow + 12;
const getDefaultIndex = useMemo<number>(() => {
const OS: string = typeof window !== 'undefined' ? window.navigator.platform : '';
const userAgent = typeof window !== 'undefined' ? window.navigator.userAgent : '';
if (/Mac/i.test(OS)) return 1;
if (/Win/i.test(OS)) return 2;
if (/iPhone/i.test(OS)) return 3;
if (/Android/i.test(userAgent)) return 4;
return 0;
}, [])
return (
<Stack
sx={{ mt: '0 !important' }}
@ -46,7 +56,7 @@ export const DownloadsTable: FC<Props> = ({
: 'none'
}
>
<Tabs variant='unstyled' onChange={idx => setTotalReleases(totalReleases[idx])}>
<Tabs variant='unstyled' onChange={idx => setTotalReleases(totalReleases[idx])} defaultIndex={getDefaultIndex}>
<TabList color='primary' bg='button-bg'>
{DOWNLOADS_TABLE_TABS.map((tab, idx) => {
return (