@hv/celestial
Version:
A styleguide for documenting your Astro-components
27 lines • 1.04 kB
JavaScript
import path from "node:path";
import { writeFile } from 'fs';
import { emptyDirSync, ensureDirSync } from 'fs-extra';
import { STYLEGUIDE_PAGE_DIR } from "./constants.js";
import { generateDocsPage } from "../lib/generators/generateDocsPage.js";
export function writeDoc(doc) {
return new Promise(resolve => {
const targetPath = path.join(STYLEGUIDE_PAGE_DIR, doc.pathSlug);
ensureDirSync(targetPath);
const targetFile = path.join(targetPath, '[...slug].astro');
writeFile(targetFile, generateDocsPage(targetPath, doc), (error) => {
if (error) {
console.warn('🚨 Could not write file', targetFile);
}
else {
console.log('💧 Generated doc page', targetFile);
}
resolve();
});
});
}
export async function writeAllDocs(docs) {
emptyDirSync(STYLEGUIDE_PAGE_DIR);
const docCreators = docs.map(doc => writeDoc(doc));
return Promise.all(docCreators);
}
//# sourceMappingURL=writeStories.js.map