@x-9lab/xlab 1.6.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/@types/cluster.d.ts +15 -3
- package/@types/components/common/index.d.ts +1 -2
- package/@types/components/cron/index.d.ts +4 -4
- package/@types/components/log/index.d.ts +37 -2
- package/@types/config/index.d.ts +9 -5
- package/@types/custom.d.ts +25 -3
- package/@types/dot-file.d.ts +6 -0
- package/@types/global.d.ts +44 -54
- package/@types/index.d.ts +18 -0
- package/@types/init-env.d.ts +3 -1
- package/@types/middleware/handle-pre-dir.d.ts +1 -5
- package/@types/middleware/request-filter.d.ts +0 -1
- package/@types/middleware/service-mark.d.ts +1 -6
- package/@types/router.d.ts +25 -0
- package/@types/server.d.ts +28 -6
- package/MIGRATION.md +170 -0
- package/README.md +37 -17
- package/dist/@config/config.dev.js +7 -3
- package/dist/@config/config.js +7 -3
- package/dist/@config/config.sand.js +7 -3
- package/dist/bin/watch.js +13 -9
- package/dist/cluster.js +121 -44
- package/dist/components/assets/index.js +9 -5
- package/dist/components/cluster/index.js +17 -4
- package/dist/components/common/index.js +65 -45
- package/dist/components/cron/index.js +50 -27
- package/dist/components/header/index.js +32 -17
- package/dist/components/header/time.js +6 -2
- package/dist/components/index.js +1 -1
- package/dist/components/log/index.js +91 -87
- package/dist/components/mime/index.js +6 -2
- package/dist/components/return-code/index.js +33 -18
- package/dist/components/uuid/index.js +22 -13
- package/dist/config/getEnv.js +9 -5
- package/dist/config/index.js +98 -66
- package/dist/config/process-custom-config-files.js +26 -22
- package/dist/config/process-def-config-file.js +15 -11
- package/dist/custom.js +77 -28
- package/dist/default-x-config.js +9 -5
- package/dist/dot-file.js +42 -17
- package/dist/global.js +37 -31
- package/dist/index.js +100 -0
- package/dist/init-env.js +17 -9
- package/dist/middleware/@bin/html-filter.js +19 -7
- package/dist/middleware/bad-request.js +12 -8
- package/dist/middleware/compress.js +11 -7
- package/dist/middleware/cors.js +20 -7
- package/dist/middleware/fresh-filter.js +13 -7
- package/dist/middleware/handle-pre-dir.js +22 -17
- package/dist/middleware/request-filter.js +39 -25
- package/dist/middleware/service-mark.js +22 -25
- package/dist/middlewares.js +22 -19
- package/dist/router.js +174 -141
- package/dist/server.js +195 -93
- package/package.json +25 -29
- package/@types/business/utils/cookie/1.1.0/clean/index.d.ts +0 -3
- package/@types/business/utils/cookie/1.1.0/clean/js/index.d.ts +0 -2
- package/@types/components/cache/index.d.ts +0 -2
- package/@types/components/cache/lru.d.ts +0 -21
- package/@types/components/html-processor/index.d.ts +0 -9
- package/@types/components/injection/index.d.ts +0 -25
- package/@types/components/js-processor/index.d.ts +0 -5
- package/@types/components/md5/index.d.ts +0 -2
- package/@types/components/platform/index.d.ts +0 -21
- package/@types/components/proxy/index.d.ts +0 -26
- package/@types/components/querystring/index.d.ts +0 -25
- package/@types/components/redirect/index.d.ts +0 -11
- package/@types/components/request/helper.d.ts +0 -3
- package/@types/components/request/index.d.ts +0 -51
- package/@types/components/request/resolve-uri.d.ts +0 -6
- package/@types/components/version/index.d.ts +0 -26
- package/@types/env.d.ts +0 -1
|
@@ -2,27 +2,58 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
var
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
get kill () {
|
|
13
|
+
return kill;
|
|
14
|
+
},
|
|
15
|
+
get on () {
|
|
16
|
+
return on;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _utils = require("@x-drive/utils");
|
|
20
|
+
const _log = require("../log");
|
|
21
|
+
const _config = require("../../config");
|
|
22
|
+
const _util = require("util");
|
|
23
|
+
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
24
|
+
const _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
|
|
25
|
+
function _interop_require_default(obj) {
|
|
11
26
|
return obj && obj.__esModule ? obj : {
|
|
12
27
|
default: obj
|
|
13
28
|
};
|
|
14
29
|
}
|
|
15
|
-
const logger =
|
|
16
|
-
const config = getSysConfig("cron") || {
|
|
17
|
-
"def": 60
|
|
18
|
-
};
|
|
19
|
-
/**
|
|
20
|
-
* 默认间隔时间
|
|
21
|
-
*/ const DEF_TIME = config.def * 1000;
|
|
30
|
+
const logger = _log.globalLog.getLogger("cron");
|
|
22
31
|
/**
|
|
23
32
|
* 计时器对象
|
|
24
33
|
*/ var CRON_TIMERS = {};
|
|
25
34
|
/**任务执行状态, 确保同时只会有一个定时任务在执行 */ const JOB_STATUS = {};
|
|
35
|
+
/**获取任务间隔时间(毫秒): 系统配置 crons[name].delay(秒) > 模块 getDelay()(毫秒) > cron.def(秒) */ function getJobDelay(mod, name) {
|
|
36
|
+
const sysConf = (0, _config.get)();
|
|
37
|
+
const jobConf = (sysConf.crons || {})[name] || {};
|
|
38
|
+
const defTime = (sysConf.cron && sysConf.cron.def || 60) * 1000;
|
|
39
|
+
if ((0, _utils.isNumber)(jobConf.delay) && jobConf.delay > 0) {
|
|
40
|
+
return jobConf.delay * 1000;
|
|
41
|
+
}
|
|
42
|
+
var time = (0, _utils.isExecutable)(mod.getDelay) ? mod.getDelay() : defTime;
|
|
43
|
+
// 非法或非正数的间隔一律回退默认值, 防止 0 间隔空转
|
|
44
|
+
if (isNaN(time) || time <= 0) {
|
|
45
|
+
logger.warn("[ %s ] Time Invalid.", name);
|
|
46
|
+
time = defTime;
|
|
47
|
+
}
|
|
48
|
+
return time;
|
|
49
|
+
}
|
|
50
|
+
/**获取任务启用状态: 系统配置 crons[name].enable > 模块 enable() */ function isJobEnabled(mod, name) {
|
|
51
|
+
const jobConf = ((0, _config.get)().crons || {})[name] || {};
|
|
52
|
+
if ((0, _utils.isBoolean)(jobConf.enable)) {
|
|
53
|
+
return jobConf.enable;
|
|
54
|
+
}
|
|
55
|
+
return (0, _utils.isExecutable)(mod.enable) ? mod.enable() === true : true;
|
|
56
|
+
}
|
|
26
57
|
/**
|
|
27
58
|
* 定时刷新函数
|
|
28
59
|
* @param mod 模块对象
|
|
@@ -33,25 +64,20 @@ const config = getSysConfig("cron") || {
|
|
|
33
64
|
if (JOB_STATUS[name] === true) {
|
|
34
65
|
return;
|
|
35
66
|
}
|
|
36
|
-
|
|
37
|
-
if (
|
|
38
|
-
logger.warn("[ %s ] Time Invalid.", name);
|
|
39
|
-
time = DEF_TIME;
|
|
40
|
-
}
|
|
41
|
-
const enable = (0, _utils).isExecutable(mod.enable) ? mod.enable() === true : true;
|
|
42
|
-
if (!enable) {
|
|
67
|
+
const time = getJobDelay(mod, name);
|
|
68
|
+
if (!isJobEnabled(mod, name)) {
|
|
43
69
|
return null;
|
|
44
70
|
}
|
|
45
71
|
if (!dont) {
|
|
46
72
|
JOB_STATUS[name] = true;
|
|
47
73
|
try {
|
|
48
|
-
if ((0, _utils
|
|
74
|
+
if ((0, _utils.isExecutable)(mod)) {
|
|
49
75
|
mod();
|
|
50
|
-
} else if (
|
|
76
|
+
} else if ((0, _utils.isExecutable)(mod.default)) {
|
|
51
77
|
mod.default();
|
|
52
78
|
}
|
|
53
79
|
} catch (e) {
|
|
54
|
-
logger.error((0, _util
|
|
80
|
+
logger.error((0, _util.inspect)(e));
|
|
55
81
|
}
|
|
56
82
|
JOB_STATUS[name] = false;
|
|
57
83
|
}
|
|
@@ -81,7 +107,6 @@ const config = getSysConfig("cron") || {
|
|
|
81
107
|
dirStat = _fs.default.accessSync(cronPath, _fs.default.constants.F_OK);
|
|
82
108
|
} catch (e) {
|
|
83
109
|
dirStat = true;
|
|
84
|
-
logger.warn((0, _util).inspect(e));
|
|
85
110
|
}
|
|
86
111
|
// accessSync 在文件不存在的时候才会返回内容
|
|
87
112
|
if (dirStat) {
|
|
@@ -103,7 +128,7 @@ const config = getSysConfig("cron") || {
|
|
|
103
128
|
}
|
|
104
129
|
}
|
|
105
130
|
} catch (err) {
|
|
106
|
-
logger.error((0, _util
|
|
131
|
+
logger.error((0, _util.inspect)(err));
|
|
107
132
|
}
|
|
108
133
|
console.log("");
|
|
109
134
|
}
|
|
@@ -121,5 +146,3 @@ const config = getSysConfig("cron") || {
|
|
|
121
146
|
});
|
|
122
147
|
}
|
|
123
148
|
}
|
|
124
|
-
exports.on = on;
|
|
125
|
-
exports.kill = kill;
|
|
@@ -2,23 +2,42 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
var
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
get cacheControl () {
|
|
13
|
+
return cacheControl;
|
|
14
|
+
},
|
|
15
|
+
get contentType () {
|
|
16
|
+
return contentType;
|
|
17
|
+
},
|
|
18
|
+
get expire () {
|
|
19
|
+
return expire;
|
|
20
|
+
},
|
|
21
|
+
get lastModified () {
|
|
22
|
+
return lastModified;
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
const _utils = require("@x-drive/utils");
|
|
26
|
+
const _time = require("./time");
|
|
27
|
+
const _mime = require("../mime");
|
|
9
28
|
/**
|
|
10
29
|
* 设置 Cache-Control
|
|
11
30
|
* @param options max-age 缓存时间
|
|
12
31
|
* @param res 请求上下文
|
|
13
32
|
*/ function cacheControl(options, res) {
|
|
14
33
|
var age;
|
|
15
|
-
if ((0, _utils
|
|
34
|
+
if ((0, _utils.isString)(options)) {
|
|
16
35
|
if (options.indexOf("max-age") === -1) {
|
|
17
36
|
age = options;
|
|
18
37
|
} else {
|
|
19
|
-
age = "max-age=" + (0, _time
|
|
38
|
+
age = "max-age=" + (0, _time.string2seconds)(options);
|
|
20
39
|
}
|
|
21
|
-
} else if ((0, _utils
|
|
40
|
+
} else if ((0, _utils.isNumber)(options)) {
|
|
22
41
|
age = "max-age=" + options;
|
|
23
42
|
}
|
|
24
43
|
if (age) {
|
|
@@ -31,9 +50,9 @@ var _mime = require("../mime");
|
|
|
31
50
|
* @param res 请求上下文
|
|
32
51
|
*/ function expire(options, res) {
|
|
33
52
|
var exp;
|
|
34
|
-
if ((0, _utils
|
|
35
|
-
exp = new Date(Date.now() + (0, _time
|
|
36
|
-
} else if ((0, _utils
|
|
53
|
+
if ((0, _utils.isString)(options)) {
|
|
54
|
+
exp = new Date(Date.now() + (0, _time.string2seconds)(options) * 1000);
|
|
55
|
+
} else if ((0, _utils.isNumber)(options)) {
|
|
37
56
|
exp = new Date(Date.now() + options * 1000);
|
|
38
57
|
}
|
|
39
58
|
if (exp) {
|
|
@@ -46,7 +65,7 @@ var _mime = require("../mime");
|
|
|
46
65
|
* @param res 请求上下文
|
|
47
66
|
*/ function contentType(options, res) {
|
|
48
67
|
var type;
|
|
49
|
-
if ((0, _utils
|
|
68
|
+
if ((0, _utils.isString)(options)) {
|
|
50
69
|
type = _mime.MIME[options];
|
|
51
70
|
}
|
|
52
71
|
if (type) {
|
|
@@ -58,10 +77,6 @@ var _mime = require("../mime");
|
|
|
58
77
|
* @param options 最后更新时间,传入非 String 类型时会使用当前时间
|
|
59
78
|
* @param res 请求上下文
|
|
60
79
|
*/ function lastModified(options, res) {
|
|
61
|
-
var time = (0, _utils
|
|
62
|
-
res.set(
|
|
80
|
+
var time = (0, _utils.isString)(options) ? options : new Date().toUTCString();
|
|
81
|
+
res.set('Last-Modified', time);
|
|
63
82
|
}
|
|
64
|
-
exports.cacheControl = cacheControl;
|
|
65
|
-
exports.expire = expire;
|
|
66
|
-
exports.contentType = contentType;
|
|
67
|
-
exports.lastModified = lastModified;
|
|
@@ -2,7 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
exports
|
|
5
|
+
Object.defineProperty(exports, "string2seconds", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return string2seconds;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
6
11
|
/**一年的秒数 */ const YEAR_SEC = 365 * 24 * 60 * 60;
|
|
7
12
|
/**一月的秒数 */ const MONTH_SEC = 30 * 24 * 60 * 60;
|
|
8
13
|
/**一天的秒数 */ const DAY_SEC = 24 * 60 * 60;
|
|
@@ -32,4 +37,3 @@ exports.string2seconds = void 0;
|
|
|
32
37
|
}
|
|
33
38
|
return sec;
|
|
34
39
|
}
|
|
35
|
-
exports.string2seconds = string2seconds;
|
package/dist/components/index.js
CHANGED
|
@@ -2,104 +2,108 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
var
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
get Log () {
|
|
13
|
+
return Log;
|
|
14
|
+
},
|
|
15
|
+
get getLogger () {
|
|
16
|
+
return getLogger;
|
|
17
|
+
},
|
|
18
|
+
get globalLog () {
|
|
19
|
+
return globalLog;
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
const _log4js = /*#__PURE__*/ _interop_require_default(require("log4js"));
|
|
23
|
+
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
24
|
+
const _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
|
|
25
|
+
function _interop_require_default(obj) {
|
|
10
26
|
return obj && obj.__esModule ? obj : {
|
|
11
27
|
default: obj
|
|
12
28
|
};
|
|
13
29
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
/**默认配置 */ const DEF_CONFIG = {
|
|
31
|
+
"name": "app",
|
|
32
|
+
"level": "warn",
|
|
33
|
+
"dir": _path.default.join("private", "log"),
|
|
34
|
+
"fileLog": false
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* v1 风格的时间戳格式
|
|
38
|
+
|
|
39
|
+
* log4js 6 默认 layout 的时间戳为 ISO 格式(日期与时间之间是 T),
|
|
40
|
+
* 显式指定 pattern 保持与 v1 一致的空格分隔, 避免影响日志采集
|
|
41
|
+
*/ const DATE_PATTERN = "yyyy-MM-dd hh:mm:ss.SSS";
|
|
42
|
+
/**终端输出默认 layout(按日志等级着色) */ const STDOUT_LAYOUT = {
|
|
43
|
+
"type": "pattern",
|
|
44
|
+
"pattern": `%[[%d{${DATE_PATTERN}}] [%p] %c -%] %m`
|
|
45
|
+
};
|
|
46
|
+
/**文件输出默认 layout */ const FILE_LAYOUT = {
|
|
47
|
+
"type": "pattern",
|
|
48
|
+
"pattern": `[%d{${DATE_PATTERN}}] [%p] %c - %m`
|
|
49
|
+
};
|
|
50
|
+
/**日志模块 */ let Log = class Log {
|
|
51
|
+
/**当前实例配置 */ config;
|
|
52
|
+
/**日志实例缓存 */ loggers = {};
|
|
53
|
+
constructor(config){
|
|
54
|
+
this.config = Object.assign({}, DEF_CONFIG, config);
|
|
55
|
+
const appenders = {
|
|
56
|
+
"stdout": {
|
|
57
|
+
"type": "stdout",
|
|
58
|
+
"layout": this.config.layout || STDOUT_LAYOUT
|
|
31
59
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
60
|
+
};
|
|
61
|
+
if (this.config.fileLog) {
|
|
62
|
+
_fs.default.mkdirSync(this.config.dir, {
|
|
63
|
+
"recursive": true
|
|
64
|
+
});
|
|
65
|
+
appenders.file = {
|
|
66
|
+
"type": "dateFile",
|
|
67
|
+
"filename": _path.default.join(this.config.dir, this.config.name),
|
|
68
|
+
"pattern": ".yyyyMMddhh.log",
|
|
69
|
+
"alwaysIncludePattern": true,
|
|
70
|
+
"layout": this.config.layout || FILE_LAYOUT
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
// log4js 的配置是进程级的,多次实例化以最后一次为准(与 v1 共享 appender 的行为一致)
|
|
74
|
+
_log4js.default.configure({
|
|
75
|
+
"appenders": appenders,
|
|
76
|
+
"categories": {
|
|
77
|
+
"default": {
|
|
78
|
+
"appenders": Object.keys(appenders),
|
|
79
|
+
"level": this.config.level
|
|
36
80
|
}
|
|
37
|
-
} else if (status === null) {
|
|
38
|
-
_fs.default.mkdirSync(dirPath);
|
|
39
81
|
}
|
|
40
|
-
}
|
|
41
|
-
level = null;
|
|
82
|
+
});
|
|
42
83
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
}
|
|
56
|
-
if (this.config.fileLog) {
|
|
57
|
-
let tmp = _path.default.join(this.config.dir);
|
|
58
|
-
mkdir(tmp);
|
|
59
|
-
tmp = null;
|
|
60
|
-
}
|
|
61
|
-
_log4Js.default.clearAppenders();
|
|
62
|
-
}
|
|
63
|
-
var LP = Log.prototype;
|
|
64
|
-
/**
|
|
65
|
-
* 获取统计实例
|
|
66
|
-
* @param {String} cat 实例分类名称
|
|
67
|
-
* @return {Object} 统计实例对象
|
|
68
|
-
*/ LP.getLogger = function(cat) {
|
|
69
|
-
var conf = this.config;
|
|
70
|
-
cat = "[" + cat + "]";
|
|
71
|
-
var logger = LOGERS[cat];
|
|
72
|
-
if (logger) {
|
|
73
|
-
return logger;
|
|
74
|
-
}
|
|
75
|
-
var dateFileConf = {
|
|
76
|
-
"filename": conf.name,
|
|
77
|
-
"pattern": ".yyyyMMddhh.log",
|
|
78
|
-
"alwaysIncludePattern": true
|
|
79
|
-
};
|
|
80
|
-
var stdoutConf = {};
|
|
81
|
-
if (conf.layout) {
|
|
82
|
-
dateFileConf.layout = conf.layout;
|
|
83
|
-
stdoutConf.layout = conf.layout;
|
|
84
|
-
}
|
|
85
|
-
if (this.config.fileLog) {
|
|
86
|
-
_log4Js.default.loadAppender("dateFile");
|
|
87
|
-
_log4Js.default.addAppender(_log4Js.default.appenderMakers.dateFile(dateFileConf, {
|
|
88
|
-
"cwd": conf.dir
|
|
89
|
-
}), cat);
|
|
84
|
+
/**
|
|
85
|
+
* 获取分类日志实例
|
|
86
|
+
* @param cat 实例分类名称
|
|
87
|
+
* @return 日志实例对象
|
|
88
|
+
*/ getLogger(cat) {
|
|
89
|
+
cat = `[${cat}]`;
|
|
90
|
+
if (!this.loggers[cat]) {
|
|
91
|
+
const logger = _log4js.default.getLogger(cat);
|
|
92
|
+
logger.level = this.config.level;
|
|
93
|
+
this.loggers[cat] = logger;
|
|
94
|
+
}
|
|
95
|
+
return this.loggers[cat];
|
|
90
96
|
}
|
|
91
|
-
_log4Js.default.addAppender(_log4Js.default.appenderMakers.stdout(stdoutConf), cat);
|
|
92
|
-
logger = _log4Js.default.getLogger(cat);
|
|
93
|
-
logger.setLevel(conf.level);
|
|
94
|
-
LOGERS[cat] = logger;
|
|
95
|
-
return logger;
|
|
96
97
|
};
|
|
97
98
|
var meta = require(_path.default.resolve(process.cwd(), "package.json"));
|
|
98
|
-
const globalLog = new Log({
|
|
99
|
+
/**框架全局日志实例 */ const globalLog = new Log({
|
|
99
100
|
"name": meta.name,
|
|
100
101
|
"level": "all"
|
|
101
102
|
});
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
103
|
+
/**
|
|
104
|
+
* 获取分类日志实例
|
|
105
|
+
* @param cat 实例分类名称
|
|
106
|
+
* @return 日志实例对象
|
|
107
|
+
*/ function getLogger(cat) {
|
|
108
|
+
return globalLog.getLogger(cat);
|
|
109
|
+
}
|
|
@@ -2,7 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
exports
|
|
5
|
+
Object.defineProperty(exports, "MIME", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return MIME;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
6
11
|
const MIME = {
|
|
7
12
|
"html": "text/html",
|
|
8
13
|
"css": "text/css",
|
|
@@ -13,4 +18,3 @@ const MIME = {
|
|
|
13
18
|
"xml": "application/xml",
|
|
14
19
|
"json": "application/json"
|
|
15
20
|
};
|
|
16
|
-
exports.MIME = MIME;
|
|
@@ -2,46 +2,65 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
var
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
get ErrorTypes () {
|
|
13
|
+
return ErrorTypes;
|
|
14
|
+
},
|
|
15
|
+
get getCodeDetail () {
|
|
16
|
+
return getCodeDetail;
|
|
17
|
+
},
|
|
18
|
+
get getReturnCode () {
|
|
19
|
+
return getReturnCode;
|
|
20
|
+
},
|
|
21
|
+
get set () {
|
|
22
|
+
return set;
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
const _utils = require("@x-drive/utils");
|
|
7
26
|
/**
|
|
8
27
|
* 状态详细信息
|
|
9
28
|
*/ const CODE_DETAIL = {
|
|
10
29
|
"FAIL": {
|
|
11
30
|
"errorcode": -1,
|
|
12
|
-
"msg": "
|
|
31
|
+
"msg": "系统繁忙,请稍候再试"
|
|
13
32
|
},
|
|
14
33
|
"SUCCESS": {
|
|
15
34
|
"errorcode": 0,
|
|
16
|
-
"msg": "
|
|
35
|
+
"msg": "请求成功"
|
|
17
36
|
},
|
|
18
37
|
"BUSY": {
|
|
19
38
|
"errorcode": 1001,
|
|
20
|
-
"msg": "
|
|
39
|
+
"msg": "系统繁忙,请稍候再试"
|
|
21
40
|
},
|
|
22
41
|
"WRONG_PARAMETER": {
|
|
23
42
|
"errorcode": 400,
|
|
24
|
-
"msg": "
|
|
43
|
+
"msg": "参数错误"
|
|
25
44
|
},
|
|
26
45
|
"NOT_FOUND": {
|
|
27
46
|
"errorcode": 404,
|
|
28
|
-
"msg": "
|
|
47
|
+
"msg": "数据不存在"
|
|
29
48
|
},
|
|
30
49
|
"PERMISSION_DENIED": {
|
|
31
50
|
"errorcode": 403,
|
|
32
|
-
"msg": "
|
|
51
|
+
"msg": "没有权限"
|
|
33
52
|
},
|
|
34
53
|
"SERVER_BUSY": {
|
|
35
54
|
"errorcode": 503,
|
|
36
|
-
"msg": "
|
|
55
|
+
"msg": "系统繁忙,请稍候再试"
|
|
37
56
|
},
|
|
38
57
|
"SERVER_TIMEOUT": {
|
|
39
58
|
"errorcode": 504,
|
|
40
|
-
"msg": "
|
|
59
|
+
"msg": "系统繁忙,请稍候再试"
|
|
41
60
|
},
|
|
42
61
|
"UNCHECK_ERROR": {
|
|
43
62
|
"errorcode": 9999999,
|
|
44
|
-
"msg": "
|
|
63
|
+
"msg": "系统进入了异次元..."
|
|
45
64
|
}
|
|
46
65
|
};
|
|
47
66
|
/**
|
|
@@ -59,15 +78,15 @@ buildCodeMap();
|
|
|
59
78
|
* @param msg 返回信息<可选>
|
|
60
79
|
* @return 状态对象
|
|
61
80
|
*/ function getReturnCode(code, msg) {
|
|
62
|
-
if ((0, _utils
|
|
81
|
+
if ((0, _utils.isBoolean)(code)) {
|
|
63
82
|
code = code ? 0 : -1;
|
|
64
83
|
}
|
|
65
84
|
var re;
|
|
66
85
|
switch(true){
|
|
67
|
-
case (0, _utils
|
|
86
|
+
case (0, _utils.isString)(code):
|
|
68
87
|
re = CODE_DETAIL[code];
|
|
69
88
|
break;
|
|
70
|
-
case (0, _utils
|
|
89
|
+
case (0, _utils.isNumber)(code):
|
|
71
90
|
re = CODE_DETAIL[CODE_MAP[code]] || CODE_DETAIL.UNCHECK_ERROR;
|
|
72
91
|
break;
|
|
73
92
|
default:
|
|
@@ -104,7 +123,3 @@ buildCodeMap();
|
|
|
104
123
|
return code;
|
|
105
124
|
}
|
|
106
125
|
});
|
|
107
|
-
exports.getReturnCode = getReturnCode;
|
|
108
|
-
exports.getCodeDetail = getCodeDetail;
|
|
109
|
-
exports.set = set;
|
|
110
|
-
exports.ErrorTypes = ErrorTypes;
|
|
@@ -2,27 +2,37 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
var
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
get X_MAC () {
|
|
13
|
+
return X_MAC;
|
|
14
|
+
},
|
|
15
|
+
get uuid () {
|
|
16
|
+
return uuid;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _utils = require("@x-drive/utils");
|
|
20
|
+
const _os = require("os");
|
|
21
|
+
const _common = require("../common");
|
|
22
|
+
var netInterfaces = (0, _os.networkInterfaces)();
|
|
23
|
+
const X_MAC = Object.keys(netInterfaces).sort().map((key)=>netInterfaces[key]).flat(1).find((en)=>{
|
|
13
24
|
return en && en.family && en.family.toLowerCase() === "ipv4" && en.mac !== "00:00:00:00:00:00" ? true : false;
|
|
14
|
-
})
|
|
15
|
-
exports.X_MAC = X_MAC;
|
|
25
|
+
})?.mac || null;
|
|
16
26
|
netInterfaces = null;
|
|
17
27
|
/**
|
|
18
28
|
* 生成一个 uuid
|
|
19
29
|
* @param one 第一节数据
|
|
20
30
|
* @param tow 第二节数据
|
|
21
31
|
*/ function uuid(one, tow) {
|
|
22
|
-
var r = (0, _utils
|
|
32
|
+
var r = (0, _utils.random)(2333333, 23333).toString(16);
|
|
23
33
|
r = r.length < 6 ? r += "0" : r;
|
|
24
34
|
return [
|
|
25
|
-
(0, _common
|
|
35
|
+
(0, _common.getMD5)([
|
|
26
36
|
one,
|
|
27
37
|
X_MAC,
|
|
28
38
|
tow
|
|
@@ -31,4 +41,3 @@ netInterfaces = null;
|
|
|
31
41
|
r
|
|
32
42
|
].join("-");
|
|
33
43
|
}
|
|
34
|
-
exports.uuid = uuid;
|
package/dist/config/getEnv.js
CHANGED
|
@@ -2,9 +2,14 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
exports
|
|
6
|
-
|
|
7
|
-
function
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
12
|
+
function _interop_require_default(obj) {
|
|
8
13
|
return obj && obj.__esModule ? obj : {
|
|
9
14
|
default: obj
|
|
10
15
|
};
|
|
@@ -15,7 +20,7 @@ function _interopRequireDefault(obj) {
|
|
|
15
20
|
function getEnv(argv) {
|
|
16
21
|
return argv.ENV !== undefined ? argv.ENV : process.env && process.env.NODE_ENV && process.env.NODE_ENV.toLowerCase() || "development";
|
|
17
22
|
}
|
|
18
|
-
|
|
23
|
+
const _default = (argv)=>{
|
|
19
24
|
switch(getEnv(argv)){
|
|
20
25
|
case "0":
|
|
21
26
|
env = "DEVELOPMENT";
|
|
@@ -56,4 +61,3 @@ var _default = (argv)=>{
|
|
|
56
61
|
envAddConfPath
|
|
57
62
|
};
|
|
58
63
|
};
|
|
59
|
-
exports.default = _default;
|