1 | const { readFileSync } = require('fs');
|
2 | const clean = require('./clean');
|
3 | const build = require('./build');
|
4 | const plugins = require('./plugins');
|
5 | const babelOptions = require('./babel-options');
|
6 |
|
7 | const cwd = process.cwd();
|
8 | const pobrc = (() => {
|
9 | try {
|
10 | return JSON.parse(readFileSync(`${cwd}/.pobrc.json`));
|
11 | } catch (err) {
|
12 | return JSON.parse(readFileSync(`${cwd}/.pob.json`));
|
13 | }
|
14 | })();
|
15 |
|
16 | if (pobrc.plugins) {
|
17 | pobrc.plugins.forEach(pluginName => plugins.register(require(`../plugins/${pluginName}`)));
|
18 | }
|
19 |
|
20 | if (pobrc.babelPlugins) {
|
21 | babelOptions.plugins = pobrc.babelPlugins;
|
22 | }
|
23 |
|
24 | exports.clean = clean;
|
25 | exports.watch = (envs, options) => build(pobrc, cwd, envs, true, options);
|
26 | exports.build = (envs, options) => build(pobrc, cwd, envs, false, options);
|
27 |
|
28 | exports.registerPlugin = plugin => plugins.register(plugin);
|