@e-mc/module 0.12.0 → 0.12.2
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/README.md +7 -8
- package/index.js +4 -12
- package/package.json +3 -3
- package/lib-v4.js +0 -158
package/README.md
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
## Interface
|
|
11
11
|
|
|
12
|
-
* [View Source](https://www.unpkg.com/@e-mc/types@0.12.
|
|
12
|
+
* [View Source](https://www.unpkg.com/@e-mc/types@0.12.2/lib/index.d.ts)
|
|
13
13
|
|
|
14
14
|
```typescript
|
|
15
15
|
import type { LogStatus } from "./squared";
|
|
@@ -173,7 +173,6 @@ interface ModuleConstructor {
|
|
|
173
173
|
readonly LOG_FORMAT: LoggerFormatSettings<LoggerFormat<number>>;
|
|
174
174
|
readonly STATUS_TYPE: STATUS_TYPE;
|
|
175
175
|
readonly PLATFORM_WIN32: boolean;
|
|
176
|
-
readonly REQUIRE_ESM: boolean;
|
|
177
176
|
readonly MAX_TIMEOUT: number;
|
|
178
177
|
readonly TEMP_DIR: string;
|
|
179
178
|
constructorOf(value: unknown, moduleName?: string): value is ModuleConstructor;
|
|
@@ -233,7 +232,7 @@ interface ModuleConstructor {
|
|
|
233
232
|
checkSemVer(name: string | [string, string], min: number | string, max?: number | string): boolean;
|
|
234
233
|
checkSemVer(name: string | [string, string], min: number | string, max: number | string, options?: Omit<CheckSemVerOptions, "min" | "max" | "equals">): boolean;
|
|
235
234
|
/** @deprecated @e-mc/types */
|
|
236
|
-
sanitizeCmd(value: string): string;
|
|
235
|
+
sanitizeCmd(value: string, ...args: unknown[]): string;
|
|
237
236
|
/** @deprecated @e-mc/types */
|
|
238
237
|
sanitizeArgs(value: string, doubleQuote?: boolean): string;
|
|
239
238
|
/** @deprecated @e-mc/types */
|
|
@@ -415,11 +414,11 @@ interface LoggerModule {
|
|
|
415
414
|
|
|
416
415
|
## References
|
|
417
416
|
|
|
418
|
-
- https://www.unpkg.com/@e-mc/types@0.12.
|
|
419
|
-
- https://www.unpkg.com/@e-mc/types@0.12.
|
|
420
|
-
- https://www.unpkg.com/@e-mc/types@0.12.
|
|
421
|
-
- https://www.unpkg.com/@e-mc/types@0.12.
|
|
422
|
-
- https://www.unpkg.com/@e-mc/types@0.12.
|
|
417
|
+
- https://www.unpkg.com/@e-mc/types@0.12.2/lib/core.d.ts
|
|
418
|
+
- https://www.unpkg.com/@e-mc/types@0.12.2/lib/logger.d.ts
|
|
419
|
+
- https://www.unpkg.com/@e-mc/types@0.12.2/lib/module.d.ts
|
|
420
|
+
- https://www.unpkg.com/@e-mc/types@0.12.2/lib/node.d.ts
|
|
421
|
+
- https://www.unpkg.com/@e-mc/types@0.12.2/lib/settings.d.ts
|
|
423
422
|
|
|
424
423
|
* https://www.npmjs.com/package/@types/node
|
|
425
424
|
|
package/index.js
CHANGED
|
@@ -136,8 +136,6 @@ const MEMORY_CACHE_DISK = {
|
|
|
136
136
|
exclude: null
|
|
137
137
|
};
|
|
138
138
|
const PROCESS_CIPHER = {};
|
|
139
|
-
const SUPPORTED_CANPARSE = (0, types_1.supported)(19, 9) || (0, types_1.supported)(18, 17, true);
|
|
140
|
-
const SUPPORTED_ESM = (0, types_1.supported)(22, 12) || (0, types_1.supported)(20, 19, true);
|
|
141
139
|
const REGEXP_TORRENT = /^(?:magnet:\?xt=|(?:https?|s?ftp):\/\/[^/][^\n]*?\.(?:torrent|metalink|meta4)(?:\?[^\n]*)?$)/i;
|
|
142
140
|
const REGEXP_PROTOCOL = /^([a-z][a-z\d+-.]*):\/\/[^@:[\]\\^<>|\s]/i;
|
|
143
141
|
const REGEXP_ANSIESCAPE = /[\u001B\u009B]/;
|
|
@@ -149,7 +147,7 @@ let LOG_MIN_WIDTH = 0;
|
|
|
149
147
|
let TEMP_DIR = (0, types_1.getTempDir)();
|
|
150
148
|
let PNPM_VER;
|
|
151
149
|
let YARN_VER;
|
|
152
|
-
let FILETYPE_ESM =
|
|
150
|
+
let FILETYPE_ESM = null;
|
|
153
151
|
function parseYaml(pathname) {
|
|
154
152
|
return yaml.load(fs.readFileSync(pathname, 'utf8'));
|
|
155
153
|
}
|
|
@@ -870,7 +868,7 @@ class Module extends EventEmitter {
|
|
|
870
868
|
static LOG_STYLE_NOTICE = Object.freeze({ titleBgColor: 'bgGrey', titleColor: 'white' });
|
|
871
869
|
static LOG_STYLE_REVERSE = Object.freeze({ titleBgColor: 'bgWhite', titleColor: 'black', messageBgColor: 'bgGrey' });
|
|
872
870
|
static get VERSION() {
|
|
873
|
-
return "0.12.
|
|
871
|
+
return "0.12.2";
|
|
874
872
|
}
|
|
875
873
|
static get LOG_TYPE() {
|
|
876
874
|
return types_1.LOG_TYPE;
|
|
@@ -878,9 +876,6 @@ class Module extends EventEmitter {
|
|
|
878
876
|
static get STATUS_TYPE() {
|
|
879
877
|
return types_1.STATUS_TYPE;
|
|
880
878
|
}
|
|
881
|
-
static get REQUIRE_ESM() {
|
|
882
|
-
return SUPPORTED_ESM;
|
|
883
|
-
}
|
|
884
879
|
static get PLATFORM_WIN32() {
|
|
885
880
|
return PLATFORM_WIN32;
|
|
886
881
|
}
|
|
@@ -1475,9 +1470,6 @@ class Module extends EventEmitter {
|
|
|
1475
1470
|
return filename || '';
|
|
1476
1471
|
}
|
|
1477
1472
|
static isURL(value, ...exclude) {
|
|
1478
|
-
if (exclude.length === 0 && SUPPORTED_CANPARSE) {
|
|
1479
|
-
return URL.canParse(value);
|
|
1480
|
-
}
|
|
1481
1473
|
const match = REGEXP_PROTOCOL.exec(value);
|
|
1482
1474
|
return !!match && !exclude.includes(match[1].toLowerCase());
|
|
1483
1475
|
}
|
|
@@ -2248,8 +2240,8 @@ class Module extends EventEmitter {
|
|
|
2248
2240
|
}
|
|
2249
2241
|
return true;
|
|
2250
2242
|
}
|
|
2251
|
-
static sanitizeCmd(value) {
|
|
2252
|
-
return (0, types_1.sanitizeCmd)(value);
|
|
2243
|
+
static sanitizeCmd(value, ...args) {
|
|
2244
|
+
return (0, types_1.sanitizeCmd)(value, ...args);
|
|
2253
2245
|
}
|
|
2254
2246
|
static sanitizeArgs(values, doubleQuote) {
|
|
2255
2247
|
return (0, types_1.sanitizeArgs)(values, doubleQuote);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@e-mc/module",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.2",
|
|
4
4
|
"description": "Module base class for E-mc.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
"license": "BSD-3-Clause",
|
|
21
21
|
"homepage": "https://github.com/anpham6/e-mc#readme",
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@e-mc/types": "0.12.
|
|
23
|
+
"@e-mc/types": "0.12.2",
|
|
24
24
|
"chalk": "4.1.2",
|
|
25
|
-
"file-type": "^
|
|
25
|
+
"file-type": "^18.7.0",
|
|
26
26
|
"js-yaml": "^4.1.0",
|
|
27
27
|
"mime-types": "^2.1.35",
|
|
28
28
|
"picomatch": "^4.0.2"
|
package/lib-v4.js
DELETED
|
@@ -1,158 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
exports.validateUUID = exports.renameExt = exports.isString = exports.isPlainObject = exports.isObject = exports.formatSize = exports.escapePattern = exports.toTimeMs = exports.coerceObject = exports.cloneObject = exports.asFunction = void 0;
|
|
3
|
-
exports.hasSize = hasSize;
|
|
4
|
-
exports.getSize = getSize;
|
|
5
|
-
exports.hasSameStat = hasSameStat;
|
|
6
|
-
exports.byteLength = byteLength;
|
|
7
|
-
exports.cleanupStream = cleanupStream;
|
|
8
|
-
exports.generateUUID = generateUUID;
|
|
9
|
-
exports.existsSafe = existsSafe;
|
|
10
|
-
exports.isFileHTTP = isFileHTTP;
|
|
11
|
-
exports.isFileUNC = isFileUNC;
|
|
12
|
-
exports.isPathUNC = isPathUNC;
|
|
13
|
-
exports.readFileSafe = readFileSafe;
|
|
14
|
-
exports.getFunctions = getFunctions;
|
|
15
|
-
exports.allSettled = allSettled;
|
|
16
|
-
const path = require("path");
|
|
17
|
-
const fs = require("fs");
|
|
18
|
-
const types_1 = require("@e-mc/types");
|
|
19
|
-
Object.defineProperty(exports, "asFunction", { enumerable: true, get: function () { return types_1.asFunction; } });
|
|
20
|
-
Object.defineProperty(exports, "cloneObject", { enumerable: true, get: function () { return types_1.cloneObject; } });
|
|
21
|
-
Object.defineProperty(exports, "coerceObject", { enumerable: true, get: function () { return types_1.coerceObject; } });
|
|
22
|
-
Object.defineProperty(exports, "toTimeMs", { enumerable: true, get: function () { return types_1.convertTime; } });
|
|
23
|
-
Object.defineProperty(exports, "escapePattern", { enumerable: true, get: function () { return types_1.escapePattern; } });
|
|
24
|
-
Object.defineProperty(exports, "formatSize", { enumerable: true, get: function () { return types_1.formatSize; } });
|
|
25
|
-
Object.defineProperty(exports, "isObject", { enumerable: true, get: function () { return types_1.isObject; } });
|
|
26
|
-
Object.defineProperty(exports, "isPlainObject", { enumerable: true, get: function () { return types_1.isPlainObject; } });
|
|
27
|
-
Object.defineProperty(exports, "isString", { enumerable: true, get: function () { return types_1.isString; } });
|
|
28
|
-
Object.defineProperty(exports, "renameExt", { enumerable: true, get: function () { return types_1.renameExt; } });
|
|
29
|
-
Object.defineProperty(exports, "validateUUID", { enumerable: true, get: function () { return types_1.validateUUID; } });
|
|
30
|
-
const index_1 = require("@e-mc/module");
|
|
31
|
-
function hasSize(value, keepEmpty) {
|
|
32
|
-
try {
|
|
33
|
-
const statSrc = fs.statSync(value);
|
|
34
|
-
if (statSrc.size > 0) {
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
|
-
if (!keepEmpty) {
|
|
38
|
-
fs.unlinkSync(value);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
catch {
|
|
42
|
-
}
|
|
43
|
-
return false;
|
|
44
|
-
}
|
|
45
|
-
function getSize(value, diskUsed) {
|
|
46
|
-
try {
|
|
47
|
-
return fs[diskUsed ? 'lstatSync' : 'statSync'](value).size;
|
|
48
|
-
}
|
|
49
|
-
catch {
|
|
50
|
-
return 0;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
function hasSameStat(src, dest, keepEmpty) {
|
|
54
|
-
try {
|
|
55
|
-
if (fs.existsSync(dest)) {
|
|
56
|
-
const { size, mtimeMs } = fs.statSync(src);
|
|
57
|
-
if (size > 0) {
|
|
58
|
-
const statDest = fs.statSync(dest);
|
|
59
|
-
return size === statDest.size && mtimeMs === statDest.mtimeMs;
|
|
60
|
-
}
|
|
61
|
-
if (!keepEmpty) {
|
|
62
|
-
fs.unlinkSync(src);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
catch {
|
|
67
|
-
}
|
|
68
|
-
return false;
|
|
69
|
-
}
|
|
70
|
-
function byteLength(value, encoding) {
|
|
71
|
-
return typeof value === 'string' && (path.isAbsolute(value) || index_1.isPath(value)) ? getSize(value) : Buffer.byteLength(value, encoding && (0, types_1.getEncoding)(encoding));
|
|
72
|
-
}
|
|
73
|
-
function cleanupStream(stream, uri) {
|
|
74
|
-
stream.removeAllListeners();
|
|
75
|
-
stream.destroy();
|
|
76
|
-
try {
|
|
77
|
-
if (uri && fs.existsSync(uri)) {
|
|
78
|
-
fs.unlinkSync(uri);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
catch (err) {
|
|
82
|
-
if (!index_1.isErrorCode(err, 'ENOENT')) {
|
|
83
|
-
index_1.writeFail(["Unable to delete file", path.basename(uri)], err, 32);
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
function generateUUID(format, dictionary) {
|
|
88
|
-
return format ? (0, types_1.randomString)(format, dictionary) : (0, types_1.generateUUID)();
|
|
89
|
-
}
|
|
90
|
-
function existsSafe(value, isFile) {
|
|
91
|
-
return index_1.isPath(value, isFile);
|
|
92
|
-
}
|
|
93
|
-
function isFileHTTP(value) {
|
|
94
|
-
return index_1.isFile(value, 'http/s');
|
|
95
|
-
}
|
|
96
|
-
function isFileUNC(value) {
|
|
97
|
-
return index_1.isFile(value, 'unc');
|
|
98
|
-
}
|
|
99
|
-
function isPathUNC(value) {
|
|
100
|
-
return index_1.isPath(value, 'unc');
|
|
101
|
-
}
|
|
102
|
-
async function readFileSafe(value, encoding, cache) {
|
|
103
|
-
return encoding === 'buffer' ? index_1.readBuffer(value, cache) : index_1.readText(value, encoding, cache);
|
|
104
|
-
}
|
|
105
|
-
function getFunctions(values, absolute, sync = true, outFailed) {
|
|
106
|
-
let options, context;
|
|
107
|
-
if ((0, types_1.isObject)(absolute)) {
|
|
108
|
-
options = absolute;
|
|
109
|
-
({ context, outFailed } = absolute);
|
|
110
|
-
if (options.external === undefined) {
|
|
111
|
-
options.external = true;
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
else {
|
|
115
|
-
options = { external: true, absolute, sync };
|
|
116
|
-
}
|
|
117
|
-
const result = [];
|
|
118
|
-
for (const value of values) {
|
|
119
|
-
let method = null;
|
|
120
|
-
if (typeof value === 'string') {
|
|
121
|
-
method = index_1.parseFunction(value, options);
|
|
122
|
-
}
|
|
123
|
-
else if (typeof value === 'function') {
|
|
124
|
-
method = value;
|
|
125
|
-
if (context !== undefined) {
|
|
126
|
-
method.bind(context);
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
if (method) {
|
|
130
|
-
result.push(method);
|
|
131
|
-
}
|
|
132
|
-
else if (outFailed) {
|
|
133
|
-
outFailed.push(index_1.asString(value) || "Unknown");
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
return result;
|
|
137
|
-
}
|
|
138
|
-
async function allSettled(tasks, rejected, options) {
|
|
139
|
-
if (rejected) {
|
|
140
|
-
return Promise.allSettled(tasks).then(result => {
|
|
141
|
-
const items = [];
|
|
142
|
-
for (const item of result) {
|
|
143
|
-
if (item.status === 'fulfilled') {
|
|
144
|
-
items.push(item);
|
|
145
|
-
}
|
|
146
|
-
else if (item.reason) {
|
|
147
|
-
index_1.writeFail(rejected, item.reason, options);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
return items;
|
|
151
|
-
})
|
|
152
|
-
.catch((err) => {
|
|
153
|
-
index_1.writeFail(rejected, err, options);
|
|
154
|
-
return [];
|
|
155
|
-
});
|
|
156
|
-
}
|
|
157
|
-
return Promise.allSettled(tasks);
|
|
158
|
-
}
|