Skip to content

Commit a9b1b4f

Browse files
committed
add rewrite-local-links to prerendered GraphQL objects HTML
1 parent 4484068 commit a9b1b4f

2 files changed

Lines changed: 8 additions & 3 deletions

File tree

script/graphql/update-files.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ async function main () {
7272

7373
// 4. PRERENDER OBJECTS HTML
7474
// because the objects page is too big to render on page load
75-
prerenderedObjects[graphqlVersion] = await prerenderObjects(schemaJsonPerVersion)
75+
prerenderedObjects[graphqlVersion] = await prerenderObjects(schemaJsonPerVersion, version)
7676
}
7777

7878
updateStaticFile(previewsJson, path.join(graphqlStaticDir, 'previews.json'))

script/graphql/utils/prerender-objects.js

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
11
const fs = require('fs')
22
const path = require('path')
3+
const cheerio = require('cheerio')
34
const { liquid } = require('../../../lib/render-content')
45
const getMiniTocItems = require('../../../lib/get-mini-toc-items')
6+
const rewriteLocalLinks = require('../../../lib/rewrite-local-links')
57
const includes = path.join(process.cwd(), 'includes')
68
const objectIncludeFile = fs.readFileSync(path.join(includes, 'graphql-object.html'), 'utf8')
79
// TODO need to localize
810
const currentLanguage = 'en'
911

10-
module.exports = async function prerenderObjects (schemaJsonPerVersion) {
12+
module.exports = async function prerenderObjects (schemaJsonPerVersion, version) {
1113
const site = await require('../../../lib/site-data')()
1214

1315
// create a bare minimum context for rendering the graphql-object.html layout
@@ -23,7 +25,10 @@ module.exports = async function prerenderObjects (schemaJsonPerVersion) {
2325
for (const object of schemaJsonPerVersion.objects) {
2426
context.item = object
2527
const objectHtml = await liquid.parseAndRender(objectIncludeFile, context)
26-
objectsArray.push(objectHtml)
28+
const $ = cheerio.load(objectHtml)
29+
rewriteLocalLinks($, version, currentLanguage)
30+
const htmlWithVersionedLinks = $.html()
31+
objectsArray.push(htmlWithVersionedLinks)
2732
}
2833

2934
const objectsHtml = objectsArray.join('\n')

0 commit comments

Comments
 (0)