1 | var _time = require("dr-js/library/common/time");
|
2 | var _format = require("dr-js/library/common/format");
|
3 | const loadEnvKey = key => {
|
4 | try {
|
5 | return JSON.parse(process.env[key]);
|
6 | } catch (error) {
|
7 | return null;
|
8 | }
|
9 | };
|
10 | exports.loadEnvKey = loadEnvKey;
|
11 | const saveEnvKey = (key, value) => {
|
12 | try {
|
13 | process.env[key] = JSON.stringify(value);
|
14 | } catch (error) {}
|
15 | };
|
16 | exports.saveEnvKey = saveEnvKey;
|
17 | const syncEnvKey = (key, defaultValue) => {
|
18 | const value = loadEnvKey(key) || defaultValue;
|
19 | saveEnvKey(key, value);
|
20 | return value;
|
21 | };
|
22 | exports.syncEnvKey = syncEnvKey;
|
23 | const __VERBOSE__ = syncEnvKey("__DEV_VERBOSE__", process.argv.includes("verbose"));
|
24 | exports.__VERBOSE__ = __VERBOSE__;
|
25 | const checkFlag = (flagList, checkFlagList) => flagList.find(flag => checkFlagList.includes(flag));
|
26 | exports.checkFlag = checkFlag;
|
27 | exports.argvFlag = ((...checkFlagList) => checkFlag(process.argv, checkFlagList));
|
28 | exports.runMain = ((main, logger, ...args) => {
|
29 | const startTime = (0, _time.clock)();
|
30 | new Promise(resolve => resolve(main(logger, ...args))).then(() => {
|
31 | logger.padLog(`done in ${(0, _format.time)((0, _time.clock)() - startTime)}`);
|
32 | }, error => {
|
33 | console.warn(error);
|
34 | logger.padLog(`error after ${(0, _format.time)((0, _time.clock)() - startTime)}: ${error}`);
|
35 | process.exit(-1);
|
36 | });
|
37 | }); |
\ | No newline at end of file |