1 | 'use strict';
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 |
|
7 | var _regenerator = require('babel-runtime/regenerator');
|
8 |
|
9 | var _regenerator2 = _interopRequireDefault(_regenerator);
|
10 |
|
11 | var _asyncToGenerator2 = require('babel-runtime/helpers/asyncToGenerator');
|
12 |
|
13 | var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2);
|
14 |
|
15 | var getSrc = function () {
|
16 | var _ref = (0, _asyncToGenerator3.default)( _regenerator2.default.mark(function _callee() {
|
17 | return _regenerator2.default.wrap(function _callee$(_context) {
|
18 | while (1) {
|
19 | switch (_context.prev = _context.next) {
|
20 | case 0:
|
21 | _context.next = 2;
|
22 | return (0, _fsExtra.pathExists)('dev');
|
23 |
|
24 | case 2:
|
25 | if (!_context.sent) {
|
26 | _context.next = 4;
|
27 | break;
|
28 | }
|
29 |
|
30 | return _context.abrupt('return', 'dev');
|
31 |
|
32 | case 4:
|
33 | _context.next = 6;
|
34 | return (0, _fsExtra.pathExists)('src');
|
35 |
|
36 | case 6:
|
37 | if (!_context.sent) {
|
38 | _context.next = 8;
|
39 | break;
|
40 | }
|
41 |
|
42 | return _context.abrupt('return', 'src');
|
43 |
|
44 | case 8:
|
45 | return _context.abrupt('return', false);
|
46 |
|
47 | case 9:
|
48 | case 'end':
|
49 | return _context.stop();
|
50 | }
|
51 | }
|
52 | }, _callee, this);
|
53 | }));
|
54 |
|
55 | return function getSrc() {
|
56 | return _ref.apply(this, arguments);
|
57 | };
|
58 | }();
|
59 |
|
60 | var dev = function () {
|
61 | var _ref2 = (0, _asyncToGenerator3.default)( _regenerator2.default.mark(function _callee2(options) {
|
62 | var args, cmd;
|
63 | return _regenerator2.default.wrap(function _callee2$(_context2) {
|
64 | while (1) {
|
65 | switch (_context2.prev = _context2.next) {
|
66 | case 0:
|
67 | args = [];
|
68 |
|
69 | if (options.src) {
|
70 | _context2.next = 7;
|
71 | break;
|
72 | }
|
73 |
|
74 | _context2.next = 4;
|
75 | return getSrc();
|
76 |
|
77 | case 4:
|
78 | options.src = _context2.sent;
|
79 |
|
80 | if (!options.src) {
|
81 | console.error('No src directory found');
|
82 | process.exit(1);
|
83 | }
|
84 | console.log('Found source directory');
|
85 |
|
86 | case 7:
|
87 | if (!options.dist) {
|
88 | if (options.src === 'src') {
|
89 | options.dist = 'dist';
|
90 | } else {
|
91 | options.dist = 'dist-' + options.src;
|
92 | }
|
93 | }
|
94 | args.push('--out-dir', '"' + options.dist + '"');
|
95 | _context2.next = 11;
|
96 | return (0, _fsExtra.pathExists)(options.src + '/index.html');
|
97 |
|
98 | case 11:
|
99 | if (!_context2.sent) {
|
100 | _context2.next = 15;
|
101 | break;
|
102 | }
|
103 |
|
104 | console.log('Found index.html');
|
105 | options.src = options.src + '/index.html';
|
106 | args.push('--open');
|
107 |
|
108 | case 15:
|
109 | if (options['no-config']) {
|
110 | _context2.next = 18;
|
111 | break;
|
112 | }
|
113 |
|
114 | _context2.next = 18;
|
115 | return Promise.all([(0, _copyConfig2.default)(options), (0, _copyConfig4.default)(options)]);
|
116 |
|
117 | case 18:
|
118 | if (options['no-hmr']) {
|
119 | args.push('--no-hmr');
|
120 | }
|
121 | console.log('Running dev in ' + options.src);
|
122 | cmd = 'parcel serve ' + options.src;
|
123 |
|
124 | (0, _childProcessPromise.spawn)(cmd, args, {
|
125 | shell: true,
|
126 | stdio: 'inherit'
|
127 | });
|
128 |
|
129 | case 22:
|
130 | case 'end':
|
131 | return _context2.stop();
|
132 | }
|
133 | }
|
134 | }, _callee2, this);
|
135 | }));
|
136 |
|
137 | return function dev(_x) {
|
138 | return _ref2.apply(this, arguments);
|
139 | };
|
140 | }();
|
141 |
|
142 | var _childProcessPromise = require('child-process-promise');
|
143 |
|
144 | var _fsExtra = require('fs-extra');
|
145 |
|
146 | var _copyConfig = require('./babel/copy-config');
|
147 |
|
148 | var _copyConfig2 = _interopRequireDefault(_copyConfig);
|
149 |
|
150 | var _copyConfig3 = require('./postcss/copy-config');
|
151 |
|
152 | var _copyConfig4 = _interopRequireDefault(_copyConfig3);
|
153 |
|
154 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
155 |
|
156 | exports.default = dev;
|
157 |
|
\ | No newline at end of file |