File tree 7 files changed +347
-5
lines changed
7 files changed +347
-5
lines changed Original file line number Diff line number Diff line change @@ -10,6 +10,7 @@ import {SidebarLink} from './SidebarLink';
10
10
import { useCollapse } from 'react-collapsed' ;
11
11
import usePendingRoute from 'hooks/usePendingRoute' ;
12
12
import type { RouteItem } from 'components/Layout/getRouteMeta' ;
13
+ import { siteConfig } from 'siteConfig' ;
13
14
14
15
interface SidebarRouteTreeProps {
15
16
isForceExpanded : boolean ;
@@ -150,8 +151,12 @@ export function SidebarRouteTree({
150
151
) ;
151
152
}
152
153
if ( hasSectionHeader ) {
154
+ let sectionHeaderText =
155
+ sectionHeader != null
156
+ ? sectionHeader . replace ( '{{version}}' , siteConfig . version )
157
+ : '' ;
153
158
return (
154
- < Fragment key = { `${ sectionHeader } -${ level } -separator` } >
159
+ < Fragment key = { `${ sectionHeaderText } -${ level } -separator` } >
155
160
{ index !== 0 && (
156
161
< li
157
162
role = "separator"
@@ -163,7 +168,7 @@ export function SidebarRouteTree({
163
168
'mb-1 text-sm font-bold ms-5 text-tertiary dark:text-tertiary-dark' ,
164
169
index !== 0 && 'mt-2'
165
170
) } >
166
- { sectionHeader }
171
+ { sectionHeaderText }
167
172
</ h3 >
168
173
</ Fragment >
169
174
) ;
Original file line number Diff line number Diff line change @@ -24,6 +24,7 @@ import {Logo} from '../../Logo';
24
24
import { Feedback } from '../Feedback' ;
25
25
import { SidebarRouteTree } from '../Sidebar' ;
26
26
import type { RouteItem } from '../getRouteMeta' ;
27
+ import { siteConfig } from 'siteConfig' ;
27
28
28
29
declare global {
29
30
interface Window {
@@ -247,7 +248,7 @@ export default function TopNav({
247
248
) } >
248
249
{ isMenuOpen ? < IconClose /> : < IconHamburger /> }
249
250
</ button >
250
- < div className = "flex 3xl:flex-1 align-center " >
251
+ < div className = "f " >
251
252
< NextLink
252
253
href = "/"
253
254
className = { `active:scale-95 overflow-hidden transition-transform relative items-center text-primary dark:text-primary-dark p-1 whitespace-nowrap outline-link rounded-full 3xl:rounded-xl inline-flex text-lg font-normal gap-2` } >
@@ -259,6 +260,13 @@ export default function TopNav({
259
260
< span className = "sr-only 3xl:not-sr-only" > React</ span >
260
261
</ NextLink >
261
262
</ div >
263
+ < div className = "flex flex-column justify-center items-center" >
264
+ < NextLink
265
+ href = "/versions"
266
+ className = " flex py-2 flex-column justify-center items-center text-gray-50 dark:text-gray-30 hover:text-link hover:dark:text-link-dark hover:underline text-sm ms-1 cursor-pointer" >
267
+ v{ siteConfig . version }
268
+ </ NextLink >
269
+ </ div >
262
270
</ div >
263
271
< div className = "items-center justify-center flex-1 hidden w-full md:flex 3xl:w-auto 3xl:shrink-0 3xl:justify-center" >
264
272
< button
Original file line number Diff line number Diff line change @@ -8,6 +8,8 @@ All stable builds of React go through a high level of testing and follow semanti
8
8
9
9
</Intro >
10
10
11
+ For a list of previous releases, see the [ Versions] ( /versions ) page.
12
+
11
13
## Stable releases {/* stable-releases* /}
12
14
13
15
Stable React releases (also known as "Latest" release channel) follow [ semantic versioning (semver)] ( https://semver.org/ ) principles.
Load Diff Large diffs are not rendered by default.
Original file line number Diff line number Diff line change 4
4
"routes" : [
5
5
{
6
6
"hasSectionHeader" : true ,
7
- "sectionHeader" : " react@18.2.0 "
7
+ "sectionHeader" : " react@{{version}} "
8
8
},
9
9
{
10
10
"title" : " Overview" ,
156
156
},
157
157
{
158
158
"hasSectionHeader" : true ,
159
- "sectionHeader" : " react-dom@18.2.0 "
159
+ "sectionHeader" : " react-dom@{{version}} "
160
160
},
161
161
{
162
162
"title" : " Hooks" ,
Original file line number Diff line number Diff line change 3
3
*/
4
4
5
5
exports . siteConfig = {
6
+ version : '18.3.1' ,
6
7
// --------------------------------------
7
8
// Translations should replace these lines:
8
9
languageCode : 'en' ,
Original file line number Diff line number Diff line change 4
4
},
5
5
"trailingSlash" : false ,
6
6
"redirects" : [
7
+ {
8
+ "source" : " /" ,
9
+ "has" : [
10
+ {
11
+ "type" : " host" ,
12
+ "value" : " 18.react.dev"
13
+ }
14
+ ],
15
+ "permanent" : false ,
16
+ "destination" : " https://react.dev/"
17
+ },
18
+ {
19
+ "source" : " /" ,
20
+ "has" : [
21
+ {
22
+ "type" : " host" ,
23
+ "value" : " 17.react.dev"
24
+ }
25
+ ],
26
+ "permanent" : true ,
27
+ "destination" : " https://17.reactjs.org/"
28
+ },
29
+ {
30
+ "source" : " /" ,
31
+ "has" : [
32
+ {
33
+ "type" : " host" ,
34
+ "value" : " 16.react.dev"
35
+ }
36
+ ],
37
+ "permanent" : true ,
38
+ "destination" : " https://17.reactjs.org/"
39
+ },
40
+ {
41
+ "source" : " /" ,
42
+ "has" : [
43
+ {
44
+ "type" : " host" ,
45
+ "value" : " 15.react.dev"
46
+ }
47
+ ],
48
+ "permanent" : true ,
49
+ "destination" : " https://react-legacy.netlify.app/"
50
+ },
7
51
{
8
52
"source" : " /reference" ,
9
53
"destination" : " /reference/react" ,
You can’t perform that action at this time.
0 commit comments