1 | 'use strict';
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 | exports.getFilesAndMinify = getFilesAndMinify;
|
7 | exports.putFiles = putFiles;
|
8 | exports.runTasks = runTasks;
|
9 |
|
10 | var _fs = require('fs');
|
11 |
|
12 | var _fs2 = _interopRequireDefault(_fs);
|
13 |
|
14 | var _path = require('path');
|
15 |
|
16 | var _path2 = _interopRequireDefault(_path);
|
17 |
|
18 | var _ = require('../');
|
19 |
|
20 | var _2 = _interopRequireDefault(_);
|
21 |
|
22 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
23 |
|
24 | function getFilesAndMinify(argv, opts) {
|
25 | argv.results = argv._.map(fileOrDir => {
|
26 | if (_fs2.default.statSync(fileOrDir).isDirectory()) {
|
27 | opts.logger.error('Directories are not supported.');
|
28 | throw new Error('Input file is a Directory');
|
29 | }
|
30 | return fileOrDir;
|
31 | }).map(file => ({
|
32 | contents: String(_fs2.default.readFileSync(file)),
|
33 | filename: file
|
34 | })).map(_ref => {
|
35 | let contents = _ref.contents;
|
36 | let filename = _ref.filename;
|
37 | return {
|
38 | contents: (0, _2.default)(contents, argv),
|
39 | filename: filename
|
40 | };
|
41 | });
|
42 | }
|
43 |
|
44 | function putFiles(argv, opts) {
|
45 | argv.results.forEach(_ref2 => {
|
46 | let contents = _ref2.contents;
|
47 | let filename = _ref2.filename;
|
48 |
|
49 | if (argv._.length === 1) {
|
50 | if (argv.output) _fs2.default.writeFileSync(argv.output, contents);else opts.logger.log(contents);
|
51 | } else {
|
52 | if (argv.outputDir) {
|
53 | const basename = _path2.default.basename(filename);
|
54 | _fs2.default.writeFileSync(_path2.default.join(argv.outputDir, basename), contents);
|
55 | } else {
|
56 | opts.logger.error('Output Directory unspecified');
|
57 | throw new Error('Output Directory unspecified');
|
58 | }
|
59 | }
|
60 | });
|
61 | }
|
62 |
|
63 | function runTasks(argv, opts) {
|
64 | const tasks = [getFilesAndMinify, putFiles];
|
65 | tasks.forEach(task => task(argv, opts));
|
66 | } |
\ | No newline at end of file |