diff --git a/src/common/Url.res b/src/common/Url.res
index 1ae8f177b..d152d78ef 100644
--- a/src/common/Url.res
+++ b/src/common/Url.res
@@ -67,6 +67,7 @@ let parse = (route: string): t => {
let version = switch fullpath[foundVersionIndex] {
| Some(version) if version === Constants.versions.next => Next
| Some(version) if version === Constants.versions.latest => Latest
+ | Some("latest") => Latest // still used for React docs
| Some(v) => Version(v)
| None => NoVersion
}
diff --git a/src/layouts/DocsLayout.res b/src/layouts/DocsLayout.res
index ffdd2b501..7f54300df 100644
--- a/src/layouts/DocsLayout.res
+++ b/src/layouts/DocsLayout.res
@@ -85,7 +85,7 @@ let make = (
}, [])
let preludeSection =
-
+
{React.string(title)}
{switch version {
| Some(version) =>
@@ -178,6 +178,7 @@ module Make = (Content: StaticContent) => {
~frontmatter=?,
~version: option
=?,
~availableVersions: option>=?,
+ ~nextVersion: option<(string, string)>=?,
/* ~activeToc: option=?, */
~components: option=?,
~theme: option=?,
@@ -239,7 +240,7 @@ module Make = (Content: StaticContent) => {
?frontmatter,
?version,
?availableVersions,
- nextVersion: ?Constants.nextVersion,
+ ?nextVersion,
?activeToc,
categories,
?components,
diff --git a/src/layouts/DocsLayout.resi b/src/layouts/DocsLayout.resi
index 626611a22..a237a71ab 100644
--- a/src/layouts/DocsLayout.resi
+++ b/src/layouts/DocsLayout.resi
@@ -32,6 +32,7 @@ module Make: (Content: StaticContent) =>
~frontmatter: JSON.t=?,
~version: string=?,
~availableVersions: array<(string, string)>=?,
+ ~nextVersion: (string, string)=?,
/* ~activeToc: option=?, */
~components: MarkdownComponents.t=?,
~theme: ColorTheme.t=?,
diff --git a/src/layouts/ManualDocsLayout.res b/src/layouts/ManualDocsLayout.res
index 9912f4bfe..5c65f0fbd 100644
--- a/src/layouts/ManualDocsLayout.res
+++ b/src/layouts/ManualDocsLayout.res
@@ -62,6 +62,7 @@ module V1200 = {
title
metaTitleCategory="ReScript Language Manual"
availableVersions=Constants.allManualVersions
+ nextVersion=?Constants.nextVersion
?frontmatter
breadcrumbs>
{version === Constants.versions.next ? warnBanner : React.null}
@@ -89,6 +90,7 @@ module V1100 = {
title
metaTitleCategory="ReScript Language Manual"
availableVersions=Constants.allManualVersions
+ nextVersion=?Constants.nextVersion
?frontmatter
breadcrumbs>
children
@@ -129,6 +131,7 @@ module V1000 = {
title
metaTitleCategory="ReScript Language Manual"
availableVersions=Constants.allManualVersions
+ nextVersion=?Constants.nextVersion
?frontmatter
breadcrumbs>
children
@@ -173,6 +176,7 @@ module V900 = {
title
metaTitleCategory="ReScript Language Manual"
availableVersions=Constants.allManualVersions
+ nextVersion=?Constants.nextVersion
?frontmatter
breadcrumbs>
children
@@ -248,6 +252,7 @@ module V800 = {
title
metaTitleCategory="ReScript Language Manual"
availableVersions=Constants.allManualVersions
+ nextVersion=?Constants.nextVersion
?frontmatter
breadcrumbs>
warnBanner
diff --git a/src/layouts/ReactDocsLayout.res b/src/layouts/ReactDocsLayout.res
index 7beb45d75..59ea6669c 100644
--- a/src/layouts/ReactDocsLayout.res
+++ b/src/layouts/ReactDocsLayout.res
@@ -25,7 +25,11 @@ module Latest = {
let router = Next.Router.useRouter()
let route = router.route
let url = route->Url.parse
- let version = url->Url.getVersionString
+
+ let version = switch url.version {
+ | Version(version) => version
+ | _ => "latest"
+ }
let breadcrumbs = list{
{Url.name: "Docs", href: "/docs/latest"},
@@ -55,7 +59,11 @@ module V0110 = {
let router = Next.Router.useRouter()
let route = router.route
let url = route->Url.parse
- let version = url->Url.getVersionString
+
+ let version = switch url.version {
+ | Version(version) => version
+ | _ => "latest"
+ }
let breadcrumbs = list{
{Url.name: "Docs", href: "/docs/latest"},
@@ -84,7 +92,11 @@ module V0100 = {
let router = Next.Router.useRouter()
let route = router.route
let url = route->Url.parse
- let version = url->Url.getVersionString
+
+ let version = switch url.version {
+ | Version(version) => version
+ | _ => "latest"
+ }
let breadcrumbs = list{
{Url.name: "Docs", href: "/docs/latest"},