Skip to content

Commit ba690e0

Browse files
committed
fix(web): use populate() for title suffix template
Moves the title suffix string into defaultConfiguration as a template ("Node.js {version} Documentation") and uses populate() to resolve it at runtime, consistent with how other config strings are handled. Fixes #722
1 parent 797c8d3 commit ba690e0

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

src/generators/web/index.mjs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ export default createLazyGenerator({
3030
defaultConfiguration: {
3131
templatePath: join(import.meta.dirname, 'template.html'),
3232
title: 'Node.js',
33+
titleSuffix: 'Node.js {version} Documentation',
3334
editURL: `${GITHUB_EDIT_URL}/doc/api{path}.md`,
3435
pageURL: '{baseURL}/latest-{version}/api{path}.html',
3536
imports: {

src/generators/web/utils/processing.mjs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import { createChunkedRequire } from './chunks.mjs';
99
import createConfigSource from './config.mjs';
1010
import createASTBuilder from './generate.mjs';
1111
import getConfig from '../../../utils/configuration/index.mjs';
12+
import { populate } from '../../../utils/configuration/templates.mjs';
1213
import { minifyHTML } from '../../../utils/html-minifier.mjs';
1314
import { relative } from '../../../utils/url.mjs';
1415
import { SPECULATION_RULES } from '../constants.mjs';
@@ -79,7 +80,7 @@ async function executeServerCode(serverCodeMap, requireFn, virtualImports) {
7980
* @param {string} template - The HTML template string for the output pages.
8081
*/
8182
export async function processJSXEntries(entries, template) {
82-
const { version } = getConfig('web');
83+
const { version, titleSuffix: titleSuffixTemplate } = getConfig('web');
8384
const astBuilders = createASTBuilder();
8485
const requireFn = createRequire(import.meta.url);
8586
const virtualImports = {
@@ -98,7 +99,9 @@ export async function processJSXEntries(entries, template) {
9899
bundleCode(clientCodeMap, virtualImports),
99100
]);
100101

101-
const titleSuffix = `Node.js ${version.version} Documentation`;
102+
const titleSuffix = populate(titleSuffixTemplate, {
103+
version: version.version,
104+
});
102105

103106
// Step 3: Render final HTML pages
104107
const results = await Promise.all(

0 commit comments

Comments
 (0)