1 | #!/usr/bin/env node
|
2 | "use strict";
|
3 |
|
4 | var _get = _interopRequireDefault(require("lodash/get"));
|
5 |
|
6 | var _commander = _interopRequireDefault(require("commander"));
|
7 |
|
8 | var _ = _interopRequireDefault(require(".."));
|
9 |
|
10 | var _helpers = require("../helpers");
|
11 |
|
12 | var _package = _interopRequireDefault(require("../../package.json"));
|
13 |
|
14 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
15 |
|
16 | _commander.default.version(_package.default.version).description(_package.default.description).usage('[options] <source directory>').option('-w, --watch', 'Watch files for changes').option('--root <directory>', 'Root directory for babel. This is where presets are resolved from').option('--ignored <list>', 'Ignored files and directories that match the given globs', value => value.split(',').map(item => item.trim()).filter(Boolean)).option('--ignored-for-restart <list>', 'These files are compiled, but do not cause restart').option('--write-flow-sources', 'Write .flow files that are symlinked to source files. Helps with monorepos in some cases').option('--disable-cache', 'Force recompile all files ignoring cache').option('--keep-extra-files', 'Do NOT delete extra files in the output directory').option('-o, --output-directory <directory>', 'Output directory to write transpiled files to').option('-x, --execute <entryFile>', 'Relative path of file to execute (only supported in watcher mode)').option('--execute-delay <delay>', 'Delay in ms to in between restarts of executed file (defaults to 1000ms)', value => parseInt(value, 10) || 1000).option('--typescript', 'Enables typescript support by processing .ts and .tsx files').parse(process.argv);
|
17 |
|
18 | if (_commander.default.args.length !== 1) {
|
19 | _commander.default.outputHelp();
|
20 |
|
21 | process.exit(1);
|
22 | }
|
23 |
|
24 | if (typeof _commander.default.outputDirectory === 'undefined') {
|
25 | console.log('ERROR: You must specify output directory');
|
26 |
|
27 | _commander.default.outputHelp();
|
28 |
|
29 | process.exit(1);
|
30 | }
|
31 |
|
32 | const config = {
|
33 | root: (0, _get.default)(_commander.default, 'root', process.cwd()),
|
34 | watch: (0, _get.default)(_commander.default, 'watch', false),
|
35 | ignored: (0, _get.default)(_commander.default, 'ignored', []),
|
36 | ignoredForRestart: (0, _get.default)(_commander.default, 'ignoredForRestart', null),
|
37 | disableCache: (0, _get.default)(_commander.default, 'disableCache', false),
|
38 | writeFlowSources: (0, _get.default)(_commander.default, 'writeFlowSources', false),
|
39 | keepExtraFiles: (0, _get.default)(_commander.default, 'keepExtraFiles', false),
|
40 | sourceDirectory: _commander.default.args[0],
|
41 | outputDirectory: _commander.default.outputDirectory,
|
42 | typescript: _commander.default.typescript,
|
43 | execute: (0, _get.default)(_commander.default, 'execute', ''),
|
44 | executeDelay: (0, _get.default)(_commander.default, 'executeDelay', 250)
|
45 | };
|
46 |
|
47 | if (!config.watch && config.execute) {
|
48 | console.error('ERROR: --execute is not supported without --watch');
|
49 | process.exit(1);
|
50 | }
|
51 |
|
52 | (0, _.default)(config).catch(error => {
|
53 | (0, _helpers.logError)(error);
|
54 | process.exit(1);
|
55 | }); |
\ | No newline at end of file |