From c12459d93e7e88c2c49a04584ce20e388eea8576 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 14 Sep 2021 19:34:28 +0200 Subject: [PATCH] api-extractor: tweak front matter handling Signed-off-by: Patrik Oldsberg --- scripts/api-extractor.ts | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/scripts/api-extractor.ts b/scripts/api-extractor.ts index fa85f1bcad..8596d43a8d 100644 --- a/scripts/api-extractor.ts +++ b/scripts/api-extractor.ts @@ -352,21 +352,15 @@ async function buildDocs({ class DocFrontMatter extends DocNode { static kind = 'DocFrontMatter'; - public readonly id: string; - public readonly title: string; - public readonly description: string; + public readonly values: { [name: string]: unknown }; public constructor( parameters: IDocNodeContainerParameters & { - id: string; - title: string; - description: string; + values: { [name: string]: unknown }; }, ) { super(parameters); - this.id = parameters.id; - this.title = parameters.title; - this.description = parameters.description; + this.values = parameters.values; } /** @override */ @@ -388,9 +382,11 @@ async function buildDocs({ case DocFrontMatter.kind: { const node = docNode as DocFrontMatter; context.writer.writeLine('---'); - context.writer.writeLine(`id: ${node.id}`); - context.writer.writeLine(`title: ${node.title}`); - context.writer.writeLine(`description: ${node.description}`); + for (const [name, value] of Object.entries(node.values)) { + if (value) { + context.writer.writeLine(`${name}: ${value}`); + } + } context.writer.writeLine('---'); context.writer.writeLine(); break; @@ -450,9 +446,11 @@ async function buildDocs({ output.appendNodeInParagraph( new DocFrontMatter({ configuration: this._tsdocConfiguration, - id: this._getFilenameForApiItem(apiItem).slice(0, -3), - title, - description, + values: { + id: this._getFilenameForApiItem(apiItem).slice(0, -3), + title, + description, + }, }), );