Update dynamic storybook templates to reflect new story requirements

This commit is contained in:
Gabe Kangas
2026-01-13 16:45:53 -08:00
parent d80a7246e1
commit 04b9ae755e
14 changed files with 71 additions and 64 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
import { Canvas, Meta, Story } from '@storybook/addon-docs';
import { Meta } from '@storybook/addon-docs/blocks';
<Meta title="owncast/Documentation/{{title}}" parameters=\{{previewTabs: { canvas: { hidden: true } }, chromatic: { disableSnapshot: true }}}/>
+1 -1
View File
@@ -1,4 +1,4 @@
import { Canvas, Meta, Story, IconGallery, IconItem } from '@storybook/addon-docs';
import { Meta, IconGallery, IconItem } from '@storybook/addon-docs/blocks';
import { Image, ImageRow } from './ImageAsset';
<Meta title="owncast/Frontend Assets/Emoji" parameters=\{{previewTabs: { canvas: { hidden: true } }, chromatic: { disableSnapshot: true }}} />
+1 -1
View File
@@ -1,4 +1,4 @@
import { Canvas, Meta, Story, IconItem, IconGallery } from '@storybook/addon-docs';
import { Meta, IconItem, IconGallery } from '@storybook/addon-docs/blocks';
<Meta title="{{category}}" parameters=\{{previewTabs: { canvas: { hidden: true } }, chromatic: { disableSnapshot: true }}} />
+1 -1
View File
@@ -1,4 +1,4 @@
import { Canvas, Meta, Story } from '@storybook/addon-docs';
import { Meta } from '@storybook/addon-docs/blocks';
import { Image, ImageRow } from './ImageAsset';
<Meta title="{{category}}" parameters=\{{chromatic: { disableSnapshot: true }}} />
@@ -4,6 +4,13 @@ import handlebars from 'handlebars';
const template = fs.readFileSync('./Document.template', 'utf8');
let t = handlebars.compile(template, { noEscape: true });
// Strip YAML front matter from markdown content
function stripFrontMatter(content) {
// Match YAML front matter: starts with ---, ends with ---
const frontMatterRegex = /^---\s*\n[\s\S]*?\n---\s*\n/;
return content.replace(frontMatterRegex, '');
}
const documents = [
{
title: 'Product Definition',
@@ -28,7 +35,8 @@ documents.forEach(doc => {
return;
}
const document = fs.readFileSync(doc.path, 'utf8');
let document = fs.readFileSync(doc.path, 'utf8');
document = stripFrontMatter(document);
const output = t({ name: doc.name, title: doc.title, content: document });
fs.writeFileSync(`../stories-category-doc-pages/${doc.name}.mdx`, output);
});