fcdns 0.3.3 → 0.3.6
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/lib/cli.js +6 -4
- package/lib/cli.js.map +1 -1
- package/lib/server.js +17 -34
- package/lib/server.js.map +1 -1
- package/package.json +19 -18
- package/CHANGELOG.md +0 -83
- package/lib/logger.js +0 -68
- package/lib/logger.js.map +0 -1
- package/lib/utils/countup.js +0 -9
- package/lib/utils/countup.js.map +0 -1
- package/lib/utils/get-elapsed.js +0 -9
- package/lib/utils/get-elapsed.js.map +0 -1
- package/lib/utils/get-timestamp.js +0 -8
- package/lib/utils/get-timestamp.js.map +0 -1
- package/lib/utils/level-to-string.js +0 -16
- package/lib/utils/level-to-string.js.map +0 -1
package/lib/cli.js
CHANGED
|
@@ -8,9 +8,8 @@ const ip_whitelist_1 = require("./ip-whitelist");
|
|
|
8
8
|
const hostname_whitelist_1 = require("./hostname-whitelist");
|
|
9
9
|
const tester_1 = require("./tester");
|
|
10
10
|
const create_dns_resolver_1 = require("./utils/create-dns-resolver");
|
|
11
|
-
const parse_log_level_1 = require("./utils/parse-log-level");
|
|
12
11
|
const errors_1 = require("@blackglory/errors");
|
|
13
|
-
const
|
|
12
|
+
const extra_logger_1 = require("extra-logger");
|
|
14
13
|
const parse_server_info_1 = require("./utils/parse-server-info");
|
|
15
14
|
commander_1.program
|
|
16
15
|
.name(require('../package.json').name)
|
|
@@ -45,7 +44,10 @@ commander_1.program
|
|
|
45
44
|
cacheFilename: options.routeCacheFilename,
|
|
46
45
|
looseMode: options.looseMode
|
|
47
46
|
});
|
|
48
|
-
const logger =
|
|
47
|
+
const logger = new extra_logger_1.Logger({
|
|
48
|
+
level: options.logLevel,
|
|
49
|
+
transport: new extra_logger_1.TerminalTransport({})
|
|
50
|
+
});
|
|
49
51
|
const untrustedServer = (0, parse_server_info_1.parseServerInfo)(options.untrustedServer);
|
|
50
52
|
const trustedServer = (0, parse_server_info_1.parseServerInfo)(options.trustedServer);
|
|
51
53
|
(0, server_1.startServer)({
|
|
@@ -70,7 +72,7 @@ function getOptions() {
|
|
|
70
72
|
const testCacheFilename = opts.testCache;
|
|
71
73
|
(0, errors_1.assert)(/^\d+$/.test(opts.testTimeout), 'The parameter test timeout must be integer');
|
|
72
74
|
const testTimeout = Number.parseInt(opts.testTimeout, 10);
|
|
73
|
-
const logLevel = (0,
|
|
75
|
+
const logLevel = (0, extra_logger_1.stringToLevel)(opts.log, 3);
|
|
74
76
|
const looseMode = opts.looseMode;
|
|
75
77
|
return {
|
|
76
78
|
testServer,
|
package/lib/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;AACA,yCAAmC;AACnC,qCAAsC;AACtC,qCAAiC;AACjC,iDAA4C;AAC5C,6DAAwD;AACxD,qCAAiC;AACjC,oEAA8D;AAC9D
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/lib/server.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -26,59 +30,32 @@ exports.startServer = void 0;
|
|
|
26
30
|
const router_1 = require("./router");
|
|
27
31
|
const dns = __importStar(require("native-node-dns"));
|
|
28
32
|
const extra_promise_1 = require("extra-promise");
|
|
29
|
-
const get_elapsed_1 = require("./utils/get-elapsed");
|
|
30
|
-
const get_timestamp_1 = require("./utils/get-timestamp");
|
|
31
|
-
const countup_1 = require("./utils/countup");
|
|
32
33
|
const resource_record_type_1 = require("./resource-record-type");
|
|
33
34
|
const return_style_1 = require("return-style");
|
|
34
35
|
const ms_1 = __importDefault(require("ms"));
|
|
36
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
35
37
|
function startServer({ logger, port, router, trustedServer, untrustedServer }) {
|
|
36
38
|
const server = dns.createServer();
|
|
37
39
|
server.on('error', console.error);
|
|
38
40
|
server.on('socketError', console.error);
|
|
39
41
|
server.on('request', async (req, res) => {
|
|
40
42
|
const answers = await (0, extra_promise_1.map)(req.question, async (question) => {
|
|
41
|
-
const
|
|
42
|
-
const startTime = (0, get_timestamp_1.getTimestamp)();
|
|
43
|
+
const startTime = Date.now();
|
|
43
44
|
var [err, target] = await (0, return_style_1.getErrorResultAsync)(() => router.getTarget(question.name));
|
|
44
45
|
if (err) {
|
|
45
|
-
logger.error({
|
|
46
|
-
hostname: question.name,
|
|
47
|
-
id,
|
|
48
|
-
reason: `${err}`,
|
|
49
|
-
timestamp: (0, get_timestamp_1.getTimestamp)(),
|
|
50
|
-
elapsed: (0, get_elapsed_1.getElapsed)(startTime)
|
|
51
|
-
});
|
|
46
|
+
logger.error(`${formatHostname(question.name)} ${err}`, getElapsed(startTime));
|
|
52
47
|
return [];
|
|
53
48
|
}
|
|
54
|
-
logger.debug({
|
|
55
|
-
hostname: question.name,
|
|
56
|
-
id,
|
|
57
|
-
message: router_1.Target[target],
|
|
58
|
-
timestamp: (0, get_timestamp_1.getTimestamp)(),
|
|
59
|
-
elapsed: (0, get_elapsed_1.getElapsed)(startTime)
|
|
60
|
-
});
|
|
49
|
+
logger.debug(`${formatHostname(question.name)} ${router_1.Target[target]}`, getElapsed(startTime));
|
|
61
50
|
const server = target === router_1.Target.Trusted
|
|
62
51
|
? trustedServer
|
|
63
52
|
: untrustedServer;
|
|
64
53
|
var [err, answers] = await (0, return_style_1.getErrorResultAsync)(() => resolve(server, question));
|
|
65
54
|
if (err) {
|
|
66
|
-
logger.error({
|
|
67
|
-
hostname: question.name,
|
|
68
|
-
id,
|
|
69
|
-
reason: `${err}`,
|
|
70
|
-
timestamp: (0, get_timestamp_1.getTimestamp)(),
|
|
71
|
-
elapsed: (0, get_elapsed_1.getElapsed)(startTime)
|
|
72
|
-
});
|
|
55
|
+
logger.error(`${formatHostname(question.name)} ${err}`, getElapsed(startTime));
|
|
73
56
|
return [];
|
|
74
57
|
}
|
|
75
|
-
logger.info({
|
|
76
|
-
hostname: question.name,
|
|
77
|
-
id,
|
|
78
|
-
message: resource_record_type_1.ResourceRecordType[question.type],
|
|
79
|
-
timestamp: (0, get_timestamp_1.getTimestamp)(),
|
|
80
|
-
elapsed: (0, get_elapsed_1.getElapsed)(startTime)
|
|
81
|
-
});
|
|
58
|
+
logger.info(`${formatHostname(question.name)} ${resource_record_type_1.ResourceRecordType[question.type]}`, getElapsed(startTime));
|
|
82
59
|
return answers;
|
|
83
60
|
});
|
|
84
61
|
answers
|
|
@@ -114,4 +91,10 @@ function resolve(server, question) {
|
|
|
114
91
|
request.send();
|
|
115
92
|
});
|
|
116
93
|
}
|
|
94
|
+
function formatHostname(hostname) {
|
|
95
|
+
return chalk_1.default.cyan(hostname);
|
|
96
|
+
}
|
|
97
|
+
function getElapsed(startTime) {
|
|
98
|
+
return Date.now() - startTime;
|
|
99
|
+
}
|
|
117
100
|
//# sourceMappingURL=server.js.map
|
package/lib/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fcdns",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.6",
|
|
4
4
|
"description": "DNS relay server with fact-checking.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"dns"
|
|
@@ -25,44 +25,45 @@
|
|
|
25
25
|
},
|
|
26
26
|
"husky": {
|
|
27
27
|
"hooks": {
|
|
28
|
-
"pre-commit": "run-s lint build",
|
|
28
|
+
"pre-commit": "run-s lint build test",
|
|
29
29
|
"commit-msg": "commitlint --env HUSKY_GIT_PARAMS"
|
|
30
30
|
}
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
|
-
"@commitlint/cli": "^16.
|
|
34
|
-
"@commitlint/config-conventional": "^16.
|
|
33
|
+
"@commitlint/cli": "^16.2.1",
|
|
34
|
+
"@commitlint/config-conventional": "^16.2.1",
|
|
35
|
+
"@types/jest": "^27.4.1",
|
|
35
36
|
"@types/ms": "^0.7.31",
|
|
36
37
|
"@types/node": "14",
|
|
37
38
|
"@types/ping": "^0.4.1",
|
|
38
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
|
39
|
-
"@typescript-eslint/parser": "^5.
|
|
40
|
-
"eslint": "^8.
|
|
39
|
+
"@typescript-eslint/eslint-plugin": "^5.13.0",
|
|
40
|
+
"@typescript-eslint/parser": "^5.13.0",
|
|
41
|
+
"eslint": "^8.10.0",
|
|
41
42
|
"husky": "4",
|
|
43
|
+
"internet-number": "^3.0.1",
|
|
44
|
+
"jest": "^27.5.1",
|
|
42
45
|
"npm-run-all": "^4.1.5",
|
|
43
46
|
"rimraf": "^3.0.2",
|
|
44
47
|
"standard-version": "^9.3.2",
|
|
48
|
+
"ts-jest": "^27.1.3",
|
|
45
49
|
"tsconfig-paths": "^3.12.0",
|
|
46
50
|
"tscpaths": "^0.0.9",
|
|
47
|
-
"typescript": "^4.
|
|
51
|
+
"typescript": "^4.6.2"
|
|
48
52
|
},
|
|
49
53
|
"dependencies": {
|
|
50
|
-
"@blackglory/errors": "^
|
|
54
|
+
"@blackglory/errors": "^2.2.0",
|
|
51
55
|
"@blackglory/go": "^0.1.1",
|
|
52
|
-
"@blackglory/types": "^0.6.
|
|
56
|
+
"@blackglory/types": "^0.6.5",
|
|
53
57
|
"address-range": "^0.2.9",
|
|
54
58
|
"chalk": "^4.1.2",
|
|
55
|
-
"commander": "^
|
|
59
|
+
"commander": "^9.0.0",
|
|
56
60
|
"extra-filesystem": "^0.4.1",
|
|
57
|
-
"extra-logger": "^0.
|
|
58
|
-
"extra-promise": "^0.21.
|
|
59
|
-
"iterable-operator": "^0.14.
|
|
61
|
+
"extra-logger": "^0.6.4",
|
|
62
|
+
"extra-promise": "^0.21.2",
|
|
63
|
+
"iterable-operator": "^0.14.5",
|
|
60
64
|
"ms": "^2.1.3",
|
|
61
65
|
"native-node-dns": "^0.7.6",
|
|
62
66
|
"ping": "^0.4.1",
|
|
63
|
-
"return-style": "^0.12.
|
|
64
|
-
},
|
|
65
|
-
"optionalDependencies": {
|
|
66
|
-
"internet-number": "^3.0.1"
|
|
67
|
+
"return-style": "^0.12.6"
|
|
67
68
|
}
|
|
68
69
|
}
|
package/CHANGELOG.md
DELETED
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
|
-
|
|
5
|
-
### [0.3.3](https://github.com/BlackGlory/fcdns/compare/v0.3.2...v0.3.3) (2022-01-02)
|
|
6
|
-
|
|
7
|
-
### [0.3.2](https://github.com/BlackGlory/fcdns/compare/v0.3.1...v0.3.2) (2021-12-21)
|
|
8
|
-
|
|
9
|
-
### [0.3.1](https://github.com/BlackGlory/fcdns/compare/v0.3.0...v0.3.1) (2021-12-17)
|
|
10
|
-
|
|
11
|
-
## [0.3.0](https://github.com/BlackGlory/fcdns/compare/v0.2.7...v0.3.0) (2021-12-17)
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
### ⚠ BREAKING CHANGES
|
|
15
|
-
|
|
16
|
-
* - The minimum version is Node.js v16
|
|
17
|
-
|
|
18
|
-
* upgrade dependencies ([c9072dc](https://github.com/BlackGlory/fcdns/commit/c9072dc80e8f6867aca7f0a9d05abec154195f21))
|
|
19
|
-
|
|
20
|
-
### [0.2.7](https://github.com/BlackGlory/fcdns/compare/v0.2.6...v0.2.7) (2021-12-12)
|
|
21
|
-
|
|
22
|
-
### [0.2.6](https://github.com/BlackGlory/fcdns/compare/v0.2.5...v0.2.6) (2021-10-17)
|
|
23
|
-
|
|
24
|
-
### [0.2.5](https://github.com/BlackGlory/fcdns/compare/v0.2.4...v0.2.5) (2021-10-14)
|
|
25
|
-
|
|
26
|
-
### [0.2.4](https://github.com/BlackGlory/fcdns/compare/v0.2.3...v0.2.4) (2021-10-06)
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
### Features
|
|
30
|
-
|
|
31
|
-
* add loose mode ([561f7f9](https://github.com/BlackGlory/fcdns/commit/561f7f9181a5bd76e5093ed5e7fc65daadd4702d))
|
|
32
|
-
|
|
33
|
-
### [0.2.3](https://github.com/BlackGlory/fcdns/compare/v0.2.2...v0.2.3) (2021-09-18)
|
|
34
|
-
|
|
35
|
-
### [0.2.2](https://github.com/BlackGlory/fcdns/compare/v0.2.1...v0.2.2) (2021-07-12)
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
### Bug Fixes
|
|
39
|
-
|
|
40
|
-
* isHostnamePattern ([eee8e03](https://github.com/BlackGlory/fcdns/commit/eee8e03703e4cac962db6b2d05965f877051c30b))
|
|
41
|
-
|
|
42
|
-
### [0.2.1](https://github.com/BlackGlory/fcdns/compare/v0.2.0...v0.2.1) (2021-07-09)
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
### Features
|
|
46
|
-
|
|
47
|
-
* improve hostname pattern ([f86b9a6](https://github.com/BlackGlory/fcdns/commit/f86b9a64c92160dc5995fa1dc77e0a1f2c1daa3d))
|
|
48
|
-
|
|
49
|
-
## [0.2.0](https://github.com/BlackGlory/fcdns/compare/v0.1.6...v0.2.0) (2021-07-09)
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
### ⚠ BREAKING CHANGES
|
|
53
|
-
|
|
54
|
-
* rename whitelist.txt to ip-whitelist.txt
|
|
55
|
-
|
|
56
|
-
### Features
|
|
57
|
-
|
|
58
|
-
* add hostname whitelist ([f96d2f3](https://github.com/BlackGlory/fcdns/commit/f96d2f38daf1506e168d7e380b09edad87165d06))
|
|
59
|
-
* support to parse ip addresses in whitelist ([10024db](https://github.com/BlackGlory/fcdns/commit/10024db45acb5201f67ecc64a7e2cf54ade396b4))
|
|
60
|
-
|
|
61
|
-
### [0.1.6](https://github.com/BlackGlory/fcdns/compare/v0.1.5...v0.1.6) (2021-05-17)
|
|
62
|
-
|
|
63
|
-
### [0.1.5](https://github.com/BlackGlory/fcdns/compare/v0.1.4...v0.1.5) (2021-05-14)
|
|
64
|
-
|
|
65
|
-
### [0.1.4](https://github.com/BlackGlory/fcdns/compare/v0.1.3...v0.1.4) (2021-05-08)
|
|
66
|
-
|
|
67
|
-
### [0.1.3](https://github.com/BlackGlory/fcdns/compare/v0.1.2...v0.1.3) (2021-05-08)
|
|
68
|
-
|
|
69
|
-
### [0.1.2](https://github.com/BlackGlory/fcdns/compare/v0.1.1...v0.1.2) (2021-04-22)
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
### Bug Fixes
|
|
73
|
-
|
|
74
|
-
* handle uncaught errors ([a324ed8](https://github.com/BlackGlory/fcdns/commit/a324ed8241feb1aab029b5bd23d3f792bce42c58))
|
|
75
|
-
|
|
76
|
-
### [0.1.1](https://github.com/BlackGlory/fcdns/compare/v0.1.0...v0.1.1) (2021-04-14)
|
|
77
|
-
|
|
78
|
-
## 0.1.0 (2021-04-12)
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
### Features
|
|
82
|
-
|
|
83
|
-
* init ([5185bb9](https://github.com/BlackGlory/fcdns/commit/5185bb9103536124b15192b340bd0a91d1eb49af))
|
package/lib/logger.js
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.createCustomLogger = void 0;
|
|
7
|
-
const extra_logger_1 = require("extra-logger");
|
|
8
|
-
const level_to_string_1 = require("./utils/level-to-string");
|
|
9
|
-
const types_1 = require("@blackglory/types");
|
|
10
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
11
|
-
function createCustomLogger(level) {
|
|
12
|
-
return (0, extra_logger_1.createLogger)(level, {
|
|
13
|
-
[1]: printMessage(1, console.log),
|
|
14
|
-
[2]: printMessage(2, console.log),
|
|
15
|
-
[3]: printMessage(3, console.info),
|
|
16
|
-
[4]: printMessage(4, console.warn),
|
|
17
|
-
[5]: printError(5, console.error),
|
|
18
|
-
[6]: printError(6, console.error)
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
exports.createCustomLogger = createCustomLogger;
|
|
22
|
-
function printMessage(level, log) {
|
|
23
|
-
return ({ id, timestamp, hostname, elapsed, message }) => {
|
|
24
|
-
const pre = createPrefix({ level, id, timestamp, hostname });
|
|
25
|
-
const post = (0, types_1.isntUndefined)(elapsed) ? createPostfix({ elapsed }) : null;
|
|
26
|
-
let result = `${pre} ${message}`;
|
|
27
|
-
if (post) {
|
|
28
|
-
result += ' ' + post;
|
|
29
|
-
}
|
|
30
|
-
log(result);
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
function printError(level, log) {
|
|
34
|
-
return ({ id, timestamp, hostname, elapsed, reason }) => {
|
|
35
|
-
const pre = createPrefix({ level, id, timestamp, hostname });
|
|
36
|
-
const post = (0, types_1.isntUndefined)(elapsed) ? createPostfix({ elapsed }) : null;
|
|
37
|
-
let result = `${pre} ${reason}`;
|
|
38
|
-
if (post) {
|
|
39
|
-
result += ' ' + post;
|
|
40
|
-
}
|
|
41
|
-
log(result);
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
function createPrefix({ level, timestamp, id, hostname }) {
|
|
45
|
-
return `[${(0, level_to_string_1.levelToString)(level).toUpperCase()}]`
|
|
46
|
-
+ `[${formatDate(timestamp)}]`
|
|
47
|
-
+ ` #${id}`
|
|
48
|
-
+ ` ${formatHostname(hostname)}`;
|
|
49
|
-
}
|
|
50
|
-
function createPostfix({ elapsed }) {
|
|
51
|
-
return formatElapsedTime(elapsed);
|
|
52
|
-
}
|
|
53
|
-
function formatDate(timestamp) {
|
|
54
|
-
return new Date(timestamp).toLocaleString();
|
|
55
|
-
}
|
|
56
|
-
function formatHostname(hostname) {
|
|
57
|
-
return chalk_1.default.cyan(hostname);
|
|
58
|
-
}
|
|
59
|
-
function formatElapsedTime(elapsed) {
|
|
60
|
-
if (elapsed <= 100) {
|
|
61
|
-
return chalk_1.default.green `${elapsed}ms`;
|
|
62
|
-
}
|
|
63
|
-
if (elapsed <= 300) {
|
|
64
|
-
return chalk_1.default.yellow `${elapsed}ms`;
|
|
65
|
-
}
|
|
66
|
-
return chalk_1.default.red `${elapsed}ms`;
|
|
67
|
-
}
|
|
68
|
-
//# sourceMappingURL=logger.js.map
|
package/lib/logger.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"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"}
|
package/lib/utils/countup.js
DELETED
package/lib/utils/countup.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"countup.js","sourceRoot":"","sources":["../../src/utils/countup.ts"],"names":[],"mappings":";;;AAAA,IAAI,KAAK,GAAG,CAAC,CAAA;AAEb,SAAgB,OAAO;IACrB,OAAO,EAAE,KAAK,CAAA;AAChB,CAAC;AAFD,0BAEC"}
|
package/lib/utils/get-elapsed.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getElapsed = void 0;
|
|
4
|
-
const get_timestamp_1 = require("./get-timestamp");
|
|
5
|
-
function getElapsed(startTime) {
|
|
6
|
-
return (0, get_timestamp_1.getTimestamp)() - startTime;
|
|
7
|
-
}
|
|
8
|
-
exports.getElapsed = getElapsed;
|
|
9
|
-
//# sourceMappingURL=get-elapsed.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-elapsed.js","sourceRoot":"","sources":["../../src/utils/get-elapsed.ts"],"names":[],"mappings":";;;AAAA,wDAAmD;AAEnD,SAAgB,UAAU,CAAC,SAAiB;IAC1C,OAAO,IAAA,4BAAY,GAAE,GAAG,SAAS,CAAA;AACnC,CAAC;AAFD,gCAEC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-timestamp.js","sourceRoot":"","sources":["../../src/utils/get-timestamp.ts"],"names":[],"mappings":";;;AAAA,SAAgB,YAAY;IAC1B,OAAO,IAAI,CAAC,GAAG,EAAE,CAAA;AACnB,CAAC;AAFD,oCAEC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.levelToString = void 0;
|
|
4
|
-
function levelToString(level) {
|
|
5
|
-
switch (level) {
|
|
6
|
-
case 3: return 'Info';
|
|
7
|
-
case 2: return 'Debug';
|
|
8
|
-
case 4: return 'Warn';
|
|
9
|
-
case 1: return 'Trace';
|
|
10
|
-
case 5: return 'Error';
|
|
11
|
-
case 6: return 'Fatal';
|
|
12
|
-
default: return 'None';
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
exports.levelToString = levelToString;
|
|
16
|
-
//# sourceMappingURL=level-to-string.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"level-to-string.js","sourceRoot":"","sources":["../../src/utils/level-to-string.ts"],"names":[],"mappings":";;;AAEA,SAAgB,aAAa,CAAC,KAAY;IACxC,QAAQ,KAAK,EAAE;QACb,MAAe,CAAC,CAAC,OAAO,MAAM,CAAA;QAC9B,MAAgB,CAAC,CAAC,OAAO,OAAO,CAAA;QAChC,MAAe,CAAC,CAAC,OAAO,MAAM,CAAA;QAC9B,MAAgB,CAAC,CAAC,OAAO,OAAO,CAAA;QAChC,MAAgB,CAAC,CAAC,OAAO,OAAO,CAAA;QAChC,MAAgB,CAAC,CAAC,OAAO,OAAO,CAAA;QAChC,OAAO,CAAC,CAAC,OAAO,MAAM,CAAA;KACvB;AACH,CAAC;AAVD,sCAUC"}
|