mirror of https://github.com/ethereum/go-ethereum
commit
bfcf91fa31
Before Width: | Height: | Size: 834 B After Width: | Height: | Size: 837 B |
@ -0,0 +1,113 @@ |
|||||||
|
import { Box, Flex, Input, InputGroup, Link, Stack, Text } from '@chakra-ui/react'; |
||||||
|
import { FC } from 'react'; |
||||||
|
import NextLink from 'next/link'; |
||||||
|
|
||||||
|
import { HamburguerIcon, LensIcon, MoonIcon } from '../UI/icons'; |
||||||
|
import { DOCS_PAGE, DOWNLOADS_PAGE } from '../../constants'; |
||||||
|
|
||||||
|
export const Header: FC = () => { |
||||||
|
return ( |
||||||
|
<Flex |
||||||
|
mb={4} |
||||||
|
border='2px solid' |
||||||
|
borderColor='brand.light.primary' |
||||||
|
justifyContent='space-between' |
||||||
|
> |
||||||
|
<Stack |
||||||
|
p={4} |
||||||
|
justifyContent='center' |
||||||
|
alignItems='flex-start' |
||||||
|
borderRight={{ base: 'none', sm: '2px solid' }} |
||||||
|
borderColor='brand.light.primary' |
||||||
|
flexGrow={2} |
||||||
|
> |
||||||
|
<Text textStyle='header-font'> |
||||||
|
go-ethereum |
||||||
|
</Text> |
||||||
|
</Stack> |
||||||
|
|
||||||
|
<Flex> |
||||||
|
{/* DOWNLOADS */} |
||||||
|
<Stack |
||||||
|
p={4} |
||||||
|
justifyContent='center' |
||||||
|
borderRight='2px solid' |
||||||
|
borderColor='brand.light.primary' |
||||||
|
display={{ base: 'none', md: 'block' }} |
||||||
|
color='brand.light.primary' |
||||||
|
_hover={{ |
||||||
|
textDecoration: 'none', |
||||||
|
bg: 'brand.light.primary', |
||||||
|
color: 'yellow.50 !important' |
||||||
|
}} |
||||||
|
> |
||||||
|
<NextLink href={DOWNLOADS_PAGE} passHref> |
||||||
|
<Link _hover={{ textDecoration: 'none' }}> |
||||||
|
<Text textStyle='header-font' textTransform='uppercase'> |
||||||
|
downloads |
||||||
|
</Text> |
||||||
|
</Link> |
||||||
|
</NextLink> |
||||||
|
</Stack> |
||||||
|
|
||||||
|
{/* DOCUMENTATION */} |
||||||
|
<Stack |
||||||
|
p={4} |
||||||
|
justifyContent='center' |
||||||
|
borderRight={{ base: 'none', md: '2px solid' }} |
||||||
|
borderColor='brand.light.primary' |
||||||
|
display={{ base: 'none', md: 'block' }} |
||||||
|
color='brand.light.primary' |
||||||
|
_hover={{ |
||||||
|
textDecoration: 'none', |
||||||
|
bg: 'brand.light.primary', |
||||||
|
color: 'yellow.50 !important' |
||||||
|
}} |
||||||
|
> |
||||||
|
<NextLink href={DOCS_PAGE} passHref> |
||||||
|
<Link _hover={{ textDecoration: 'none' }}> |
||||||
|
<Text textStyle='header-font' textTransform='uppercase'> |
||||||
|
documentation |
||||||
|
</Text> |
||||||
|
</Link> |
||||||
|
</NextLink> |
||||||
|
</Stack> |
||||||
|
|
||||||
|
{/* SEARCH */} |
||||||
|
<Stack |
||||||
|
p={4} |
||||||
|
display={{ base: 'none', md: 'block' }} |
||||||
|
borderRight={{ base: 'none', md: '2px solid' }} |
||||||
|
borderColor='brand.light.primary' |
||||||
|
> |
||||||
|
<InputGroup> |
||||||
|
<Input |
||||||
|
variant='unstyled' |
||||||
|
placeholder='search' |
||||||
|
size='md' |
||||||
|
_placeholder={{ color: 'brand.light.primary', fontStyle: 'italic' }} |
||||||
|
/> |
||||||
|
|
||||||
|
<Stack pl={4} justifyContent='center' alignItems='center'> |
||||||
|
<LensIcon /> |
||||||
|
</Stack> |
||||||
|
</InputGroup> |
||||||
|
</Stack> |
||||||
|
|
||||||
|
{/* DARK MODE SWITCH */} |
||||||
|
<Box |
||||||
|
p={4} |
||||||
|
borderRight={{ base: '2px solid', lg: 'none' }} |
||||||
|
borderColor='brand.light.primary' |
||||||
|
> |
||||||
|
<MoonIcon /> |
||||||
|
</Box> |
||||||
|
|
||||||
|
{/* HAMBURGUER MENU */} |
||||||
|
<Box p={4} display={{ base: 'block', md: 'none' }}> |
||||||
|
<HamburguerIcon /> |
||||||
|
</Box> |
||||||
|
</Flex> |
||||||
|
</Flex> |
||||||
|
); |
||||||
|
}; |
@ -1,3 +1,3 @@ |
|||||||
export * from './DownloadsHero'; |
export * from './DownloadsHero'; |
||||||
export * from './DownloadsSection' |
export * from './DownloadsSection'; |
||||||
export * from './DownloadsTable' |
export * from './DownloadsTable'; |
||||||
|
@ -0,0 +1,67 @@ |
|||||||
|
import { Box, Grid, GridItem, Image, Link, Stack, Text } from '@chakra-ui/react'; |
||||||
|
import { FC } from 'react'; |
||||||
|
import NextLink from 'next/link'; |
||||||
|
|
||||||
|
import { ETHEREUM_ORG_URL } from '../../../constants'; |
||||||
|
|
||||||
|
interface Props { |
||||||
|
children: React.ReactNode; |
||||||
|
} |
||||||
|
|
||||||
|
export const WhatIsEthereum: FC<Props> = ({ children }) => { |
||||||
|
return ( |
||||||
|
<Stack border='2px solid' borderColor='brand.light.primary'> |
||||||
|
<Grid |
||||||
|
templateColumns={{ base: 'repeat(1, 1fr)', md: 'repeat(2, 1fr)' }} |
||||||
|
borderBottom={{ base: 'none', md: '2px solid #11866f' }} |
||||||
|
> |
||||||
|
<GridItem |
||||||
|
borderRight={{ base: 'none', md: '2px solid #11866f' }} |
||||||
|
order={{ base: 2, md: 1 }} |
||||||
|
> |
||||||
|
<Stack |
||||||
|
p={4} |
||||||
|
borderBottom='2px solid' |
||||||
|
borderColor='brand.light.primary' |
||||||
|
sx={{ mt: '0 !important' }} |
||||||
|
> |
||||||
|
<Box as='h2' textStyle='h2'> |
||||||
|
What is Ethereum |
||||||
|
</Box> |
||||||
|
</Stack> |
||||||
|
|
||||||
|
<Stack |
||||||
|
p={4} |
||||||
|
borderBottom={{ base: '2px solid', md: 'none' }} |
||||||
|
borderColor='brand.light.primary' |
||||||
|
sx={{ mt: '0 !important' }} |
||||||
|
> |
||||||
|
{children} |
||||||
|
</Stack> |
||||||
|
</GridItem> |
||||||
|
|
||||||
|
<GridItem order={{ base: 1, md: 2 }}> |
||||||
|
<Stack |
||||||
|
justifyContent='center' |
||||||
|
alignItems='center' |
||||||
|
p={4} |
||||||
|
borderBottom={{ base: '2px solid', md: 'none' }} |
||||||
|
borderColor='brand.light.primary' |
||||||
|
h='100%' |
||||||
|
> |
||||||
|
{/* TODO: use NextImage */} |
||||||
|
<Image src='/images/pages/glyph-home-light.svg' alt='Ethereum glyph' /> |
||||||
|
</Stack> |
||||||
|
</GridItem> |
||||||
|
</Grid> |
||||||
|
|
||||||
|
<Stack sx={{ mt: '0 !important' }}> |
||||||
|
<NextLink href={ETHEREUM_ORG_URL} passHref> |
||||||
|
<Link variant='button-link-secondary' isExternal> |
||||||
|
<Text textStyle='home-section-link-label'>Learn more on Ethereum.org</Text> |
||||||
|
</Link> |
||||||
|
</NextLink> |
||||||
|
</Stack> |
||||||
|
</Stack> |
||||||
|
); |
||||||
|
}; |
@ -0,0 +1,64 @@ |
|||||||
|
import { Box, Grid, GridItem, Image, Link, Stack, Text } from '@chakra-ui/react'; |
||||||
|
import { FC } from 'react'; |
||||||
|
import NextLink from 'next/link'; |
||||||
|
|
||||||
|
import { ETHEREUM_ORG_RUN_A_NODE_URL } from '../../../constants'; |
||||||
|
|
||||||
|
interface Props { |
||||||
|
children: React.ReactNode; |
||||||
|
} |
||||||
|
|
||||||
|
export const WhyRunANode: FC<Props> = ({ children }) => { |
||||||
|
return ( |
||||||
|
<Stack border='2px solid' borderColor='brand.light.primary'> |
||||||
|
<Grid |
||||||
|
templateColumns={{ base: 'repeat(1, 1fr)', md: 'repeat(2, 1fr)' }} |
||||||
|
borderBottom={{ base: 'none', md: '2px solid #11866f' }} |
||||||
|
> |
||||||
|
<GridItem order={{ base: 1, md: 2 }}> |
||||||
|
<Stack |
||||||
|
p={4} |
||||||
|
borderBottom='2px solid' |
||||||
|
borderColor='brand.light.primary' |
||||||
|
sx={{ mt: '0 !important' }} |
||||||
|
> |
||||||
|
<Box as='h2' textStyle='h2'> |
||||||
|
Why run a node? |
||||||
|
</Box> |
||||||
|
</Stack> |
||||||
|
|
||||||
|
<Stack |
||||||
|
p={4} |
||||||
|
borderBottom={{ base: '2px solid', md: 'none' }} |
||||||
|
borderColor='brand.light.primary' |
||||||
|
sx={{ mt: '0 !important' }} |
||||||
|
> |
||||||
|
{children} |
||||||
|
</Stack> |
||||||
|
</GridItem> |
||||||
|
|
||||||
|
<GridItem rowSpan={2}> |
||||||
|
<Stack |
||||||
|
justifyContent='center' |
||||||
|
alignItems='center' |
||||||
|
p={4} |
||||||
|
borderBottom={{ base: '2px solid #11866f', md: 'none' }} |
||||||
|
borderRight={{ base: 'none', md: '2px solid #11866f' }} |
||||||
|
h='100%' |
||||||
|
> |
||||||
|
{/* TODO: use NextImage */} |
||||||
|
<Image src='/images/pages/gopher-home-nodes.svg' alt='Gopher staring at nodes' /> |
||||||
|
</Stack> |
||||||
|
</GridItem> |
||||||
|
</Grid> |
||||||
|
|
||||||
|
<Stack sx={{ mt: '0 !important' }}> |
||||||
|
<NextLink href={ETHEREUM_ORG_RUN_A_NODE_URL} passHref> |
||||||
|
<Link variant='button-link-secondary' isExternal> |
||||||
|
<Text textStyle='home-section-link-label'>Read more about running a node</Text> |
||||||
|
</Link> |
||||||
|
</NextLink> |
||||||
|
</Stack> |
||||||
|
</Stack> |
||||||
|
); |
||||||
|
}; |
@ -1,4 +1,6 @@ |
|||||||
export * from './Gopher'; |
export * from './Gopher'; |
||||||
export * from './HomeHero'; |
export * from './HomeHero'; |
||||||
export * from './HomeSection'; |
export * from './HomeSection'; |
||||||
|
export * from './WhatIsEthereum'; |
||||||
|
export * from './WhyRunANode'; |
||||||
export * from './QuickLinks'; |
export * from './QuickLinks'; |
||||||
|
@ -0,0 +1,16 @@ |
|||||||
|
import { createIcon } from '@chakra-ui/icons'; |
||||||
|
|
||||||
|
export const HamburguerIcon = createIcon({ |
||||||
|
displayName: 'HamburguerIcon', |
||||||
|
viewBox: '0 0 22 14', |
||||||
|
path: ( |
||||||
|
<svg width={22} height={14} fill='none' xmlns='http://www.w3.org/2000/svg'> |
||||||
|
<path |
||||||
|
fillRule='evenodd' |
||||||
|
clipRule='evenodd' |
||||||
|
d='M0 .5h22v.97H0V.5Zm0 6.017h22v.97H0v-.97Zm22 6.013H0v.97h22v-.97Z' |
||||||
|
fill='#11866F' |
||||||
|
/> |
||||||
|
</svg> |
||||||
|
) |
||||||
|
}); |
@ -0,0 +1,14 @@ |
|||||||
|
import { createIcon } from '@chakra-ui/icons'; |
||||||
|
|
||||||
|
export const LensIcon = createIcon({ |
||||||
|
displayName: 'LensIcon', |
||||||
|
viewBox: '0 0 17 18', |
||||||
|
path: ( |
||||||
|
<svg width={17} height={18} fill='none' xmlns='http://www.w3.org/2000/svg'> |
||||||
|
<path |
||||||
|
d='M12.15 11.192h-.768l-.272-.263a6.29 6.29 0 0 0 1.526-4.111 6.317 6.317 0 1 0-6.318 6.318 6.29 6.29 0 0 0 4.111-1.526l.263.272v.768l4.86 4.85L17 16.052l-4.85-4.86Zm-5.832 0a4.368 4.368 0 0 1-4.374-4.374 4.368 4.368 0 0 1 4.374-4.374 4.368 4.368 0 0 1 4.374 4.374 4.368 4.368 0 0 1-4.374 4.374Z' |
||||||
|
fill='#11866F' |
||||||
|
/> |
||||||
|
</svg> |
||||||
|
) |
||||||
|
}); |
@ -0,0 +1,14 @@ |
|||||||
|
import { createIcon } from '@chakra-ui/icons'; |
||||||
|
|
||||||
|
export const MoonIcon = createIcon({ |
||||||
|
displayName: 'MoonIcon', |
||||||
|
viewBox: '0 0 22 22', |
||||||
|
path: ( |
||||||
|
<svg width={22} height={22} fill='none' xmlns='http://www.w3.org/2000/svg'> |
||||||
|
<path |
||||||
|
d='M8.333.334C6.392.334 4.568.867 3 1.774c3.19 1.845 5.333 5.28 5.333 9.227 0 3.946-2.144 7.381-5.333 9.226a10.638 10.638 0 0 0 5.333 1.44C14.221 21.667 19 16.89 19 11.001 19 5.113 14.221.334 8.333.334Z' |
||||||
|
fill='#11866F' |
||||||
|
/> |
||||||
|
</svg> |
||||||
|
) |
||||||
|
}); |
@ -0,0 +1,6 @@ |
|||||||
|
export * from './DiscordIcon' |
||||||
|
export * from './GitHubIcon' |
||||||
|
export * from './HamburguerIcon'; |
||||||
|
export * from './LensIcon'; |
||||||
|
export * from './MoonIcon'; |
||||||
|
export * from './TwitterIcon' |
@ -1,3 +0,0 @@ |
|||||||
export * from './DiscordIcon' |
|
||||||
export * from './GitHubIcon' |
|
||||||
export * from './TwitterIcon' |
|
@ -0,0 +1,2 @@ |
|||||||
|
export * from './DataTable'; |
||||||
|
export * from './Header'; |
@ -1,32 +1,32 @@ |
|||||||
export const pgpBuildTestData = [ |
export const pgpBuildTestData = [ |
||||||
{ |
{ |
||||||
"build server": "Android Builder", |
'build server': 'Android Builder', |
||||||
"unique id": "Go Ethereum Android Builder <geth-ci@ethereum.org>", |
'unique id': 'Go Ethereum Android Builder <geth-ci@ethereum.org>', |
||||||
"openpgp key": "F9585DE6", |
'openpgp key': 'F9585DE6', |
||||||
"fingerprint": "8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6" |
fingerprint: '8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6' |
||||||
}, |
}, |
||||||
{ |
{ |
||||||
"build server": "iOS Builder", |
'build server': 'iOS Builder', |
||||||
"unique id": "Go Ethereum iOS Builder <geth-ci@ethereum.org>", |
'unique id': 'Go Ethereum iOS Builder <geth-ci@ethereum.org>', |
||||||
"openpgp key": "F9585DE6", |
'openpgp key': 'F9585DE6', |
||||||
"fingerprint": "8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6" |
fingerprint: '8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6' |
||||||
}, |
}, |
||||||
{ |
{ |
||||||
"build server": "Linux Builder", |
'build server': 'Linux Builder', |
||||||
"unique id": "Go Ethereum Linux Builder <geth-ci@ethereum.org>", |
'unique id': 'Go Ethereum Linux Builder <geth-ci@ethereum.org>', |
||||||
"openpgp key": "F9585DE6", |
'openpgp key': 'F9585DE6', |
||||||
"fingerprint": "8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6" |
fingerprint: '8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6' |
||||||
}, |
}, |
||||||
{ |
{ |
||||||
"build server": "macOS Builder", |
'build server': 'macOS Builder', |
||||||
"unique id": "Go Ethereum macOS Builder <geth-ci@ethereum.org>", |
'unique id': 'Go Ethereum macOS Builder <geth-ci@ethereum.org>', |
||||||
"openpgp key": "F9585DE6", |
'openpgp key': 'F9585DE6', |
||||||
"fingerprint": "8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6" |
fingerprint: '8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6' |
||||||
}, |
}, |
||||||
{ |
{ |
||||||
"build server": "Windows Builder", |
'build server': 'Windows Builder', |
||||||
"unique id": "Go Ethereum Windows Builder <geth-ci@ethereum.org>", |
'unique id': 'Go Ethereum Windows Builder <geth-ci@ethereum.org>', |
||||||
"openpgp key": "F9585DE6", |
'openpgp key': 'F9585DE6', |
||||||
"fingerprint": "8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6" |
fingerprint: '8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6' |
||||||
}, |
} |
||||||
] |
]; |
||||||
|
@ -1,20 +1,20 @@ |
|||||||
export const pgpDeveloperTestData = [ |
export const pgpDeveloperTestData = [ |
||||||
{ |
{ |
||||||
"developer": "Felix Lange", |
developer: 'Felix Lange', |
||||||
"unique id": "Felix Lange <fjl@ethereum.org>", |
'unique id': 'Felix Lange <fjl@ethereum.org>', |
||||||
"openpgp key": "F9585DE6", |
'openpgp key': 'F9585DE6', |
||||||
"fingerprint": "8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6" |
fingerprint: '8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6' |
||||||
}, |
}, |
||||||
{ |
{ |
||||||
"developer": "Martin Holst Swende", |
developer: 'Martin Holst Swende', |
||||||
"unique id": "Martin Holst Swende <martin.swende@ethereum.org>", |
'unique id': 'Martin Holst Swende <martin.swende@ethereum.org>', |
||||||
"openpgp key": "F9585DE6", |
'openpgp key': 'F9585DE6', |
||||||
"fingerprint": "8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6" |
fingerprint: '8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6' |
||||||
}, |
}, |
||||||
{ |
{ |
||||||
"developer": "Péter Szilágyi", |
developer: 'Péter Szilágyi', |
||||||
"unique id": "Péter Szilágyi <peter@ethereum.org>", |
'unique id': 'Péter Szilágyi <peter@ethereum.org>', |
||||||
"openpgp key": "F9585DE6", |
'openpgp key': 'F9585DE6', |
||||||
"fingerprint": "8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6" |
fingerprint: '8272 1824 F4D7 46E0 B5A7 AB95 70AD 154B F958 5DE6' |
||||||
}, |
} |
||||||
] |
]; |
||||||
|
@ -1,3 +1,3 @@ |
|||||||
export const shadows = { |
export const shadows = { |
||||||
linkBoxShadow: '0 0 0 1px #11866f !important' |
linkBoxShadow: '0 0 0 1px #11866f !important' |
||||||
} |
}; |
||||||
|
Loading…
Reference in new issue