-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathplopfile.js
27 lines (25 loc) · 914 Bytes
/
plopfile.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/**
* generator/index.js
*
* Exports the generators so plop knows them
*/
const fs = require('fs');
const path = require('path');
const componentGenerator = require('./generators/component/index.js');
const containerGenerator = require('./generators/container/index.js');
const domainGenerator = require('./generators/domain/index.js');
const appRoot = require('app-root-path').resolve(process.env.npm_package_reactGenerate_srcPath);
module.exports = plop => {
plop.setGenerator('domain', domainGenerator);
plop.setGenerator('container', containerGenerator);
plop.setGenerator('component', componentGenerator);
plop.addHelper('directory', comp => {
try {
fs.accessSync(path.join(appRoot, `/containers/${comp}`), fs.F_OK);
return `containers/${comp}`;
} catch (e) {
return `components/${comp}`;
}
});
plop.addHelper('curly', (object, open) => (open ? '{' : '}'));
};