Skip to content

Commit 55012f3

Browse files
phillipjjasnell
authored andcommitted
docs: dynamical URLs in API docs navigation links.
Previously the API docs navigation links displayed on to the left on /:language/docs/ had `v4.x` and `v6.x` hardcoded in their URL. These changes fixes that by using the actual LTS/current major versions based on the https://nodejs.org/download/release/index.json.
1 parent 14805d5 commit 55012f3

File tree

11 files changed

+33
-17
lines changed

11 files changed

+33
-17
lines changed

locale/de/site.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,12 +81,12 @@
8181
"text": "FAQ"
8282
},
8383
"api-lts": {
84-
"link": "/dist/latest-v4.x/docs/api",
84+
"link": "/dist/latest-%ver-major%/docs/api",
8585
"subtext": "LTS",
8686
"text": "%ver% API"
8787
},
8888
"api-current": {
89-
"link": "/dist/latest-v6.x/docs/api",
89+
"link": "/dist/latest-%ver-major%/docs/api",
9090
"text": "%ver% API"
9191
},
9292
"guides": {

locale/en/site.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,12 +81,12 @@
8181
"text": "FAQ"
8282
},
8383
"api-lts": {
84-
"link": "/dist/latest-v4.x/docs/api",
84+
"link": "/dist/latest-%ver-major%/docs/api",
8585
"subtext": "LTS",
8686
"text": "%ver% API"
8787
},
8888
"api-current": {
89-
"link": "/dist/latest-v6.x/docs/api",
89+
"link": "/dist/latest-%ver-major%/docs/api",
9090
"text": "%ver% API"
9191
},
9292
"guides": {

locale/es/site.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,12 +81,12 @@
8181
"text": "FAQ"
8282
},
8383
"api-lts": {
84-
"link": "/dist/latest-v4.x/docs/api",
84+
"link": "/dist/latest-%ver-major%/docs/api",
8585
"subtext": "LTS",
8686
"text": "%ver% API"
8787
},
8888
"api-current": {
89-
"link": "/dist/latest-v6.x/docs/api",
89+
"link": "/dist/latest-%ver-major%/docs/api",
9090
"text": "%ver% API"
9191
},
9292
"guides": {

locale/it/site.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,12 +79,12 @@
7979
"text": "FAQ"
8080
},
8181
"api-lts": {
82-
"link": "/dist/latest-v4.x/docs/api",
82+
"link": "/dist/latest-%ver-major%/docs/api",
8383
"subtext": "LTS",
8484
"text": "%ver% API"
8585
},
8686
"api-current": {
87-
"link": "/dist/latest-v6.x/docs/api",
87+
"link": "/dist/latest-%ver-major%/docs/api",
8888
"text": "%ver% API"
8989
},
9090
"guides": {

locale/ja/site.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,12 +81,12 @@
8181
"text": "よくある質問"
8282
},
8383
"api-lts": {
84-
"link": "/dist/latest-v4.x/docs/api",
84+
"link": "/dist/latest-%ver-major%/docs/api",
8585
"subtext": "LTS",
8686
"text": "%ver% API"
8787
},
8888
"api-current": {
89-
"link": "/dist/latest-v6.x/docs/api",
89+
"link": "/dist/latest-%ver-major%/docs/api",
9090
"text": "%ver% API"
9191
},
9292
"guides": {

locale/ko/site.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,12 +81,12 @@
8181
"text": "FAQ"
8282
},
8383
"api-lts": {
84-
"link": "/dist/latest-v4.x/docs/api",
84+
"link": "/dist/latest-%ver-major%/docs/api",
8585
"subtext": "LTS",
8686
"text": "%ver% API"
8787
},
8888
"api-current": {
89-
"link": "/dist/latest-v6.x/docs/api",
89+
"link": "/dist/latest-%ver-major%/docs/api",
9090
"text": "%ver% API"
9191
},
9292
"guides": {

locale/uk/site.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,12 +77,12 @@
7777
"text": "FAQ"
7878
},
7979
"api-lts": {
80-
"link": "/dist/latest-v4.x/docs/api",
80+
"link": "/dist/latest-%ver-major%/docs/api",
8181
"subtext": "LTS",
8282
"text": "%ver% API"
8383
},
8484
"api-current": {
85-
"link": "/dist/latest-v6.x/docs/api",
85+
"link": "/dist/latest-%ver-major%/docs/api",
8686
"text": "%ver% API"
8787
},
8888
"guides": {

locale/zh-cn/site.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,12 +81,12 @@
8181
"text": "FAQ"
8282
},
8383
"api-lts": {
84-
"link": "/dist/latest-v4.x/docs/api",
84+
"link": "/dist/latest-%ver-major%/docs/api",
8585
"subtext": "LTS",
8686
"text": "%ver% API"
8787
},
8888
"api-current": {
89-
"link": "/dist/latest-v6.x/docs/api",
89+
"link": "/dist/latest-%ver-major%/docs/api",
9090
"text": "%ver% API"
9191
},
9292
"guides": {

scripts/helpers/latestversion.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ const semver = require('semver')
44

55
const map = (release) => release && {
66
node: release.version,
7+
nodeMajor: majorStr(release),
78
npm: release.npm,
89
v8: release.v8,
910
openssl: release.openssl
@@ -15,3 +16,7 @@ exports.current = (releases) => {
1516
}
1617

1718
exports.lts = (releases) => map(releases.find((release) => release.lts))
19+
20+
function majorStr (release) {
21+
return `v${semver.major(release.version)}.x`
22+
}

scripts/plugins/navigation.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,11 @@ module.exports = function buildNavigation (latestVersions) {
1919
// Insert latest versions for API docs
2020
if (key === 'api-current') {
2121
obj[key].text = obj[key].text.replace(/%ver%/, latestVersions.current.node)
22+
obj[key].link = obj[key].link.replace(/%ver-major%/, latestVersions.current.nodeMajor)
2223
}
2324
if (key === 'api-lts') {
2425
obj[key].text = obj[key].text.replace(/%ver%/, latestVersions.lts.node)
26+
obj[key].link = obj[key].link.replace(/%ver-major%/, latestVersions.lts.nodeMajor)
2527
}
2628

2729
meta.nav[level] = meta.nav[level] || parent

0 commit comments

Comments
 (0)