// Generate components import * as _ from "lodash"; import * as fs from "fs-extra"; import { getRelativePath, getRelativeProjectPath } from "../../lib/files"; import { generateAPIFolders, generateAPIIndexTs, generateAPIIndexTestTs, generateClassMDX } from "./generators/api"; export const generateAPI = (content: any, outputPath: string) => { // grab the api details const { api } = content; const templateFolder: string = getRelativeProjectPath( "./src/commands/scaffold/templates" ); const apiFolder: string = getRelativePath(outputPath) + "/api"; // create a api folder fs.ensureDir(apiFolder); // generate folders for each class // & generate api/index.ts generateAPIFolders({ api, apiFolder, templateFolder }); // generate index.ts for each class generateAPIIndexTs({ api, apiFolder, templateFolder }); // generate index.test.ts for each class generateAPIIndexTestTs({ api, apiFolder, templateFolder }); // generate [class].mdx for each class generateClassMDX({ api, apiFolder, templateFolder }); return content; };