1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | const fs = require('fs');
|
4 | const path = require('path');
|
5 | const chalk = require('chalk');
|
6 | const pkg = require('../package.json');
|
7 | const availableActions = (templates) => {
|
8 | const generators = fs
|
9 | .readdirSync(templates)
|
10 | .filter(_ => fs.lstatSync(path.join(templates, _)).isDirectory());
|
11 | return generators.reduce((acc, generator) => {
|
12 | const actions = fs.readdirSync(path.join(templates, generator));
|
13 | acc[generator] = actions;
|
14 | return acc;
|
15 | }, {});
|
16 | };
|
17 | exports.availableActions = availableActions;
|
18 | const printHelp = (templates, logger) => {
|
19 | logger.log(`Hygen v${pkg.version}`);
|
20 | logger.log('\nAvailable actions:');
|
21 | if (!templates) {
|
22 | logger.log(`No generators or actions found.
|
23 |
|
24 | This means I didn't find a _templates folder right here,
|
25 | or anywhere up the folder tree starting here.
|
26 |
|
27 | Here's how to start using Hygen:
|
28 |
|
29 | $ hygen init self
|
30 | $ hygen with-prompt new --name my-generator
|
31 |
|
32 | (edit your generator in _templates/my-generator)
|
33 |
|
34 | $ hygen my-generator
|
35 |
|
36 | See http://hygen.io for more.
|
37 |
|
38 | `);
|
39 | return;
|
40 | }
|
41 | Object.entries(availableActions(templates)).forEach(([k, v]) => {
|
42 |
|
43 | logger.log(`${chalk.bold(k)}: ${v.join(', ')}`);
|
44 | });
|
45 | };
|
46 | exports.printHelp = printHelp;
|
47 |
|
\ | No newline at end of file |