Skip to content

Commit 13bd4b5

Browse files
authored
Merge pull request #9887 from ethereum/dev
Deploy v7.8.0
2 parents 64c20e3 + 9fd174b commit 13bd4b5

File tree

295 files changed

+24301
-6413
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

295 files changed

+24301
-6413
lines changed

i18n/config.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -383,6 +383,14 @@
383383
"langDir": "ltr",
384384
"dateFormat": "MM/DD/YYYY"
385385
},
386+
{
387+
"code": "ur-in",
388+
"hrefLang": "ur-in",
389+
"name": "Urdu (India)",
390+
"localName": "اردو",
391+
"langDir": "rtl",
392+
"dateFormat": "MM/DD/YYYY"
393+
},
386394
{
387395
"code": "uz",
388396
"hrefLang": "uz",

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "ethereum-org-website",
3-
"version": "7.7.3",
3+
"version": "7.8.0",
44
"description": "Website of ethereum.org",
55
"main": "index.js",
66
"repository": "git@github.com:ethereum/ethereum-org-website.git",

redirects.json

Lines changed: 48 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -216,17 +216,61 @@
216216
"toPath": "/en/roadmap/danksharding/"
217217
},
218218
{
219-
"fromPath": "/*/eth2/staking/",
220-
"toPath": "/:splat/staking/"
219+
"fromPath": "/upgrades/merge",
220+
"toPath": "/en/roadmap/merge/"
221221
},
222222
{
223-
"fromPath": "/*/eth2/vision/",
224-
"toPath": "/:splat/roadmap/vision/"
223+
"fromPath": "/*/upgrades/merge",
224+
"toPath": "/:splat/roadmap/merge/"
225+
},
226+
{
227+
"fromPath": "/upgrades/merge/issuance",
228+
"toPath": "/en/roadmap/merge/issuance"
229+
},
230+
{
231+
"fromPath": "/*/upgrades/merge/issuance",
232+
"toPath": "/:splat/roadmap/merge/issuance"
233+
},
234+
{
235+
"fromPath": "/upgrades/beacon-chain",
236+
"toPath": "/en/roadmap/beacon-chain"
237+
},
238+
{
239+
"fromPath": "/*/upgrades/beacon-chain",
240+
"toPath": "/:splat/roadmap/beacon-chain"
241+
},
242+
{
243+
"fromPath": "/upgrades/vision/",
244+
"toPath": "/en/roadmap/vision/"
225245
},
226246
{
227247
"fromPath": "/*/upgrades/vision/",
228248
"toPath": "/:splat/roadmap/vision/"
229249
},
250+
{
251+
"fromPath": "/upgrades",
252+
"toPath": "/en/roadmap"
253+
},
254+
{
255+
"fromPath": "/*/upgrades",
256+
"toPath": "/:splat/roadmap"
257+
},
258+
{
259+
"fromPath": "/upgrades/get-involved",
260+
"toPath": "/contributing"
261+
},
262+
{
263+
"fromPath": "/*/upgrades/get-involved",
264+
"toPath": "/:splat/contributing"
265+
},
266+
{
267+
"fromPath": "/*/eth2/staking/",
268+
"toPath": "/:splat/staking/"
269+
},
270+
{
271+
"fromPath": "/*/eth2/vision/",
272+
"toPath": "/:splat/roadmap/vision/"
273+
},
230274
{
231275
"fromPath": "/*/eth2/get-involved/",
232276
"toPath": "/:splat/upgrades/get-involved/"

src/components/Footer.tsx

Lines changed: 93 additions & 96 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import {
88
SimpleGrid,
99
useToken,
1010
} from "@chakra-ui/react"
11-
import { graphql, StaticQuery } from "gatsby"
11+
import { graphql, useStaticQuery } from "gatsby"
1212
import React from "react"
1313
import { FaGithub, FaTwitter, FaYoutube, FaDiscord } from "react-icons/fa"
1414
import { useI18next, useTranslation } from "gatsby-plugin-react-i18next"
@@ -279,107 +279,104 @@ const Footer: React.FC<IProps> = () => {
279279
},
280280
]
281281

282-
return (
283-
<StaticQuery
284-
query={graphql`
285-
query FooterQuery {
286-
allSiteBuildMetadata {
287-
edges {
288-
node {
289-
buildTime
290-
}
291-
}
282+
const data = useStaticQuery(graphql`
283+
query {
284+
allSiteBuildMetadata {
285+
edges {
286+
node {
287+
buildTime
292288
}
293289
}
294-
`}
295-
render={(data) => (
296-
<Box as="footer" p="1rem 2rem">
297-
<Flex
298-
fontSize="sm"
299-
justify="space-between"
300-
alignItems="center"
301-
flexWrap="wrap"
302-
>
303-
<Box color="text200">
304-
<Translation id="website-last-updated" />:{" "}
305-
{getLocaleTimestamp(
306-
language as Lang,
307-
data.allSiteBuildMetadata.edges[0].node.buildTime
308-
)}
309-
</Box>
310-
<Box my={4}>
311-
{socialLinks.map((link, idk) => {
312-
return (
290+
}
291+
}
292+
`)
293+
294+
return (
295+
<Box as="footer" p="1rem 2rem">
296+
<Flex
297+
fontSize="sm"
298+
justify="space-between"
299+
alignItems="center"
300+
flexWrap="wrap"
301+
>
302+
<Box color="text200">
303+
<Translation id="website-last-updated" />:{" "}
304+
{getLocaleTimestamp(
305+
language as Lang,
306+
data.allSiteBuildMetadata.edges[0].node.buildTime
307+
)}
308+
</Box>
309+
<Box my={4}>
310+
{socialLinks.map((link, idk) => {
311+
return (
312+
<Link
313+
key={idk}
314+
to={link.to}
315+
hideArrow
316+
color="secondary"
317+
aria-label={link.ariaLabel}
318+
>
319+
<Icon as={link.icon} fontSize="4xl" ml={4} />
320+
</Link>
321+
)
322+
})}
323+
</Box>
324+
</Flex>
325+
<SimpleGrid
326+
gap={4}
327+
justifyContent="space-between"
328+
gridTemplateColumns="repeat(6, auto)"
329+
sx={{
330+
"@media (max-width: 1300px)": {
331+
gridTemplateColumns: "repeat(3, auto)",
332+
},
333+
[`@media (max-width: ${medBp})`]: {
334+
gridTemplateColumns: "repeat(2, auto)",
335+
},
336+
"@media (max-width: 500px)": {
337+
gridTemplateColumns: "auto",
338+
},
339+
}}
340+
>
341+
{linkSections.map((section: LinkSection, idx) => (
342+
<Box key={idx}>
343+
<Heading as="h3" fontSize="sm" lineHeight="1.6" my="1.14em">
344+
<Translation id={section.title} />
345+
</Heading>
346+
<List fontSize="sm" lineHeight="1.6" fontWeight="400" m={0}>
347+
{section.links.map((link, linkIdx) => (
348+
<ListItem key={linkIdx} mb={4}>
313349
<Link
314-
key={idk}
315350
to={link.to}
316-
hideArrow
317-
color="secondary"
318-
aria-label={link.ariaLabel}
351+
isPartiallyActive={false}
352+
dir={isPageRightToLeft ? "auto" : "ltr"}
353+
textDecor="none"
354+
color="text200"
355+
_hover={{
356+
textDecor: "none",
357+
color: "primary",
358+
_after: {
359+
color: "primary",
360+
},
361+
"& svg": {
362+
fill: "primary",
363+
},
364+
}}
365+
sx={{
366+
"& svg": {
367+
fill: "text200",
368+
},
369+
}}
319370
>
320-
<Icon as={link.icon} fontSize="4xl" ml={4} />
371+
{link.text}
321372
</Link>
322-
)
323-
})}
324-
</Box>
325-
</Flex>
326-
<SimpleGrid
327-
gap={4}
328-
justifyContent="space-between"
329-
gridTemplateColumns="repeat(6, auto)"
330-
sx={{
331-
"@media (max-width: 1300px)": {
332-
gridTemplateColumns: "repeat(3, auto)",
333-
},
334-
[`@media (max-width: ${medBp})`]: {
335-
gridTemplateColumns: "repeat(2, auto)",
336-
},
337-
"@media (max-width: 500px)": {
338-
gridTemplateColumns: "auto",
339-
},
340-
}}
341-
>
342-
{linkSections.map((section: LinkSection, idx) => (
343-
<Box key={idx}>
344-
<Heading as="h3" fontSize="sm" lineHeight="1.6" my="1.14em">
345-
{section.title}
346-
</Heading>
347-
<List fontSize="sm" lineHeight="1.6" fontWeight="400" m={0}>
348-
{section.links.map((link, linkIdx) => (
349-
<ListItem key={linkIdx} mb={4}>
350-
<Link
351-
to={link.to}
352-
isPartiallyActive={false}
353-
dir={isPageRightToLeft ? "auto" : "ltr"}
354-
textDecor="none"
355-
color="text200"
356-
_hover={{
357-
textDecor: "none",
358-
color: "primary",
359-
_after: {
360-
color: "primary",
361-
},
362-
"& svg": {
363-
fill: "primary",
364-
},
365-
}}
366-
sx={{
367-
"& svg": {
368-
fill: "text200",
369-
},
370-
}}
371-
>
372-
{link.text}
373-
</Link>
374-
</ListItem>
375-
))}
376-
</List>
377-
</Box>
378-
))}
379-
</SimpleGrid>
380-
</Box>
381-
)}
382-
/>
373+
</ListItem>
374+
))}
375+
</List>
376+
</Box>
377+
))}
378+
</SimpleGrid>
379+
</Box>
383380
)
384381
}
385382

src/components/Nav/Mobile.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -329,9 +329,9 @@ const MobileNavMenu: React.FC<IProps> = ({
329329
</BottomItemText>
330330
</BottomItem>
331331
<BottomItem onClick={toggleTheme}>
332-
<Icon name={isDarkTheme ? "darkTheme" : "lightTheme"} />
332+
<Icon name={!isDarkTheme ? "darkTheme" : "lightTheme"} />
333333
<BottomItemText>
334-
<Translation id={isDarkTheme ? "dark-mode" : "light-mode"} />
334+
<Translation id={!isDarkTheme ? "dark-mode" : "light-mode"} />
335335
</BottomItemText>
336336
</BottomItem>
337337
<BottomItem onClick={handleClick}>
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import * as React from "react"
2+
import { Button, forwardRef } from "@chakra-ui/react"
3+
import { DocSearchButton, DocSearchButtonProps } from "@docsearch/react"
4+
5+
import { getSearchButtonStyles } from "./utils"
6+
7+
const SearchButton = forwardRef<DocSearchButtonProps, "button">(
8+
(props, ref) => {
9+
return (
10+
<Button
11+
as={DocSearchButton}
12+
ref={ref}
13+
className="DocSearch-Button"
14+
{...getSearchButtonStyles()}
15+
{...props}
16+
/>
17+
)
18+
}
19+
)
20+
21+
export default SearchButton

src/components/Search/SearchModal.tsx

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
import * as React from "react"
2+
import { chakra, useBreakpoint, useToken } from "@chakra-ui/react"
3+
import { DocSearchModal, DocSearchModalProps } from "@docsearch/react"
4+
import { getSearchModalStyles } from "./utils"
5+
6+
type ModalPropsNoScroll = Omit<DocSearchModalProps, "initialScrollY">
7+
8+
const DocSearchModalWithChakra = chakra(
9+
(props: ModalPropsNoScroll & { className?: string }) => {
10+
const { className, ...docModalProps } = props
11+
return (
12+
<div className={className}>
13+
<DocSearchModal initialScrollY={0} {...docModalProps} />
14+
</div>
15+
)
16+
}
17+
)
18+
19+
const SearchModal = (props: ModalPropsNoScroll) => {
20+
return <DocSearchModalWithChakra {...props} sx={getSearchModalStyles()} />
21+
}
22+
23+
export default SearchModal

0 commit comments

Comments
 (0)