UNPKG

845 BJavaScriptView Raw
1const { readFileSync } = require('fs');
2const clean = require('./clean');
3const build = require('./build');
4const plugins = require('./plugins');
5const babelOptions = require('./babel-options');
6
7const cwd = process.cwd();
8const 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
16if (pobrc.plugins) {
17 pobrc.plugins.forEach(pluginName => plugins.register(require(`../plugins/${pluginName}`)));
18}
19
20if (pobrc.babelPlugins) {
21 babelOptions.plugins = pobrc.babelPlugins;
22}
23
24exports.clean = clean;
25exports.watch = (envs, options) => build(pobrc, cwd, envs, true, options);
26exports.build = (envs, options) => build(pobrc, cwd, envs, false, options);
27
28exports.registerPlugin = plugin => plugins.register(plugin);