import * as _ from "lodash"; import * as fs from "fs-extra"; export const generateComponentIndexTs = (data: any) => { const { filteredComponents, componentFolder, templateFolder } = data; fs.readFile( `${templateFolder}/components/component.template/index.ts.template`, "utf8", (err, data) => { if (err) return console.error(err); // loop over array of components _.forEach(filteredComponents, component => { // pass [name] to component.template/index.ts.template const indexTs = _.template(data)({ name: component.name }); // save result to {outFolder}/components/{[Name]}/index.ts fs.outputFile( `${componentFolder}/${component["name"]}/index.ts`, indexTs ); }); } ); };