UNPKG

@m1stergo/storybook-autodocs

Version:

Storybook autodocs is an utility that takes the typescript definitions of your Vue component and defines the argTypes for storybook automatically.

35 lines (32 loc) 1.01 kB
const fs = require("fs"); const path = require("path"); const vueParser = require("./vueParser.js"); const createArgTypes = require("./createArgTypes.js"); const writeDoc = require("./writeDoc.js"); function parseFiles(files = []) { files.forEach(([vuePath, storyPath]) => { fs.readFile(vuePath, "utf-8", (err, data) => { if (err) { throw new Error(err); } const extension = path.extname(vuePath); const fileName = path.basename(vuePath, extension); try { console.log(`Parsing ${fileName}${extension}`); const parsedFile = vueParser.parse(data); const argTypes = createArgTypes(parsedFile); const component = { fileName, storyPath, argTypes, description: parsedFile.description }; writeDoc(component); } catch(error) { console.log(`Unable to parse ${fileName}${extension}`); console.log(error.message); } }); }); } module.exports = parseFiles;