@eggjs/core 6.4.1 → 6.6.0-beta.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 +23 -27
- package/dist/base_context_class.d.ts +21 -0
- package/dist/base_context_class.js +40 -0
- package/dist/egg.d.ts +248 -0
- package/dist/egg.js +358 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.js +12 -0
- package/dist/lifecycle.d.ts +84 -0
- package/dist/lifecycle.js +280 -0
- package/dist/loader/context_loader.d.ts +39 -0
- package/dist/loader/context_loader.js +79 -0
- package/dist/loader/egg_loader.d.ts +374 -0
- package/dist/loader/egg_loader.js +1184 -0
- package/dist/loader/file_loader.d.ts +105 -0
- package/dist/loader/file_loader.js +198 -0
- package/dist/singleton.d.ts +33 -0
- package/dist/singleton.js +107 -0
- package/{src/types.ts → dist/types.d.ts} +7 -7
- package/dist/utils/index.d.ts +19 -0
- package/dist/utils/index.js +103 -0
- package/dist/utils/sequencify.d.ts +16 -0
- package/dist/utils/sequencify.js +46 -0
- package/dist/utils/timing.d.ts +24 -0
- package/dist/utils/timing.js +85 -0
- package/package.json +35 -63
- package/dist/commonjs/base_context_class.d.ts +0 -16
- package/dist/commonjs/base_context_class.js +0 -41
- package/dist/commonjs/egg.d.ts +0 -247
- package/dist/commonjs/egg.js +0 -401
- package/dist/commonjs/index.d.ts +0 -12
- package/dist/commonjs/index.js +0 -32
- package/dist/commonjs/lifecycle.d.ts +0 -78
- package/dist/commonjs/lifecycle.js +0 -312
- package/dist/commonjs/loader/context_loader.d.ts +0 -35
- package/dist/commonjs/loader/context_loader.js +0 -110
- package/dist/commonjs/loader/egg_loader.d.ts +0 -369
- package/dist/commonjs/loader/egg_loader.js +0 -1543
- package/dist/commonjs/loader/file_loader.d.ts +0 -100
- package/dist/commonjs/loader/file_loader.js +0 -262
- package/dist/commonjs/package.json +0 -3
- package/dist/commonjs/singleton.d.ts +0 -29
- package/dist/commonjs/singleton.js +0 -125
- package/dist/commonjs/types.d.ts +0 -53
- package/dist/commonjs/types.js +0 -3
- package/dist/commonjs/utils/index.d.ts +0 -17
- package/dist/commonjs/utils/index.js +0 -117
- package/dist/commonjs/utils/sequencify.d.ts +0 -13
- package/dist/commonjs/utils/sequencify.js +0 -59
- package/dist/commonjs/utils/timing.d.ts +0 -21
- package/dist/commonjs/utils/timing.js +0 -100
- package/dist/esm/base_context_class.d.ts +0 -16
- package/dist/esm/base_context_class.js +0 -37
- package/dist/esm/egg.d.ts +0 -247
- package/dist/esm/egg.js +0 -388
- package/dist/esm/index.d.ts +0 -12
- package/dist/esm/index.js +0 -12
- package/dist/esm/lifecycle.d.ts +0 -78
- package/dist/esm/lifecycle.js +0 -305
- package/dist/esm/loader/context_loader.d.ts +0 -35
- package/dist/esm/loader/context_loader.js +0 -102
- package/dist/esm/loader/egg_loader.d.ts +0 -369
- package/dist/esm/loader/egg_loader.js +0 -1536
- package/dist/esm/loader/file_loader.d.ts +0 -100
- package/dist/esm/loader/file_loader.js +0 -255
- package/dist/esm/package.json +0 -3
- package/dist/esm/singleton.d.ts +0 -29
- package/dist/esm/singleton.js +0 -118
- package/dist/esm/types.d.ts +0 -53
- package/dist/esm/types.js +0 -2
- package/dist/esm/utils/index.d.ts +0 -17
- package/dist/esm/utils/index.js +0 -112
- package/dist/esm/utils/sequencify.d.ts +0 -13
- package/dist/esm/utils/sequencify.js +0 -56
- package/dist/esm/utils/timing.d.ts +0 -21
- package/dist/esm/utils/timing.js +0 -93
- package/dist/package.json +0 -4
- package/src/base_context_class.ts +0 -39
- package/src/egg.ts +0 -517
- package/src/index.ts +0 -14
- package/src/lifecycle.ts +0 -399
- package/src/loader/context_loader.ts +0 -121
- package/src/loader/egg_loader.ts +0 -1722
- package/src/loader/file_loader.ts +0 -308
- package/src/singleton.ts +0 -149
- package/src/utils/index.ts +0 -125
- package/src/utils/sequencify.ts +0 -70
- package/src/utils/timing.ts +0 -114
package/dist/esm/utils/index.js
DELETED
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import { debuglog } from 'node:util';
|
|
2
|
-
import path from 'node:path';
|
|
3
|
-
import fs from 'node:fs';
|
|
4
|
-
import { stat } from 'node:fs/promises';
|
|
5
|
-
import BuiltinModule from 'node:module';
|
|
6
|
-
import { importResolve, importModule } from '@eggjs/utils';
|
|
7
|
-
const debug = debuglog('@eggjs/core/utils');
|
|
8
|
-
// Guard against poorly mocked module constructors.
|
|
9
|
-
const Module = typeof module !== 'undefined' && module.constructor.length > 1
|
|
10
|
-
? module.constructor
|
|
11
|
-
/* istanbul ignore next */
|
|
12
|
-
: BuiltinModule;
|
|
13
|
-
const extensions = Module._extensions;
|
|
14
|
-
const extensionNames = Object.keys(extensions).concat(['.cjs', '.mjs']);
|
|
15
|
-
debug('Module extensions: %j', extensionNames);
|
|
16
|
-
function getCalleeFromStack(withLine, stackIndex) {
|
|
17
|
-
stackIndex = stackIndex === undefined ? 2 : stackIndex;
|
|
18
|
-
const limit = Error.stackTraceLimit;
|
|
19
|
-
const prep = Error.prepareStackTrace;
|
|
20
|
-
Error.prepareStackTrace = prepareObjectStackTrace;
|
|
21
|
-
Error.stackTraceLimit = 5;
|
|
22
|
-
// capture the stack
|
|
23
|
-
const obj = {};
|
|
24
|
-
Error.captureStackTrace(obj);
|
|
25
|
-
let callSite = obj.stack[stackIndex];
|
|
26
|
-
let fileName = '';
|
|
27
|
-
if (callSite) {
|
|
28
|
-
// egg-mock will create a proxy
|
|
29
|
-
// https://github.com/eggjs/egg-mock/blob/master/lib/app.js#L174
|
|
30
|
-
fileName = callSite.getFileName();
|
|
31
|
-
/* istanbul ignore if */
|
|
32
|
-
if (fileName && fileName.endsWith('egg-mock/lib/app.js')) {
|
|
33
|
-
// TODO: add test
|
|
34
|
-
callSite = obj.stack[stackIndex + 1];
|
|
35
|
-
fileName = callSite.getFileName();
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
Error.prepareStackTrace = prep;
|
|
39
|
-
Error.stackTraceLimit = limit;
|
|
40
|
-
if (!callSite || !fileName)
|
|
41
|
-
return '<anonymous>';
|
|
42
|
-
if (!withLine)
|
|
43
|
-
return fileName;
|
|
44
|
-
return `${fileName}:${callSite.getLineNumber()}:${callSite.getColumnNumber()}`;
|
|
45
|
-
}
|
|
46
|
-
export default {
|
|
47
|
-
deprecated(message) {
|
|
48
|
-
if (debug.enabled) {
|
|
49
|
-
console.trace('[@eggjs/core/deprecated] %s', message);
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
console.log('[@eggjs/core/deprecated] %s', message);
|
|
53
|
-
console.log('[@eggjs/core/deprecated] set NODE_DEBUG=@eggjs/core/utils can show call stack');
|
|
54
|
-
}
|
|
55
|
-
},
|
|
56
|
-
extensions,
|
|
57
|
-
extensionNames,
|
|
58
|
-
async existsPath(filepath) {
|
|
59
|
-
try {
|
|
60
|
-
await stat(filepath);
|
|
61
|
-
return true;
|
|
62
|
-
}
|
|
63
|
-
catch {
|
|
64
|
-
return false;
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
async loadFile(filepath) {
|
|
68
|
-
try {
|
|
69
|
-
// if not js module, just return content buffer
|
|
70
|
-
const extname = path.extname(filepath);
|
|
71
|
-
if (extname && !extensionNames.includes(extname) && extname !== '.ts') {
|
|
72
|
-
return fs.readFileSync(filepath);
|
|
73
|
-
}
|
|
74
|
-
const obj = await importModule(filepath, { importDefaultOnly: true });
|
|
75
|
-
return obj;
|
|
76
|
-
}
|
|
77
|
-
catch (e) {
|
|
78
|
-
if (!e.message && typeof e !== 'string') {
|
|
79
|
-
// ts error: test/fixtures/apps/app-ts/app/extend/context.ts(5,17): error TS2339: Property 'url' does not exist on type 'Context'
|
|
80
|
-
console.trace(e);
|
|
81
|
-
throw e;
|
|
82
|
-
}
|
|
83
|
-
const err = new Error(`[@eggjs/core] load file: ${filepath}, error: ${e.message}`);
|
|
84
|
-
err.cause = e;
|
|
85
|
-
debug('[loadFile] handle %s error: %s', filepath, e);
|
|
86
|
-
throw err;
|
|
87
|
-
}
|
|
88
|
-
},
|
|
89
|
-
resolvePath(filepath, options) {
|
|
90
|
-
return importResolve(filepath, options);
|
|
91
|
-
},
|
|
92
|
-
methods: ['head', 'options', 'get', 'put', 'patch', 'post', 'delete'],
|
|
93
|
-
async callFn(fn, args, ctx) {
|
|
94
|
-
args = args || [];
|
|
95
|
-
if (typeof fn !== 'function')
|
|
96
|
-
return;
|
|
97
|
-
return ctx ? fn.call(ctx, ...args) : fn(...args);
|
|
98
|
-
},
|
|
99
|
-
getCalleeFromStack,
|
|
100
|
-
getResolvedFilename(filepath, baseDir) {
|
|
101
|
-
const reg = /[/\\]/g;
|
|
102
|
-
return filepath.replace(baseDir + path.sep, '').replace(reg, '/');
|
|
103
|
-
},
|
|
104
|
-
};
|
|
105
|
-
/**
|
|
106
|
-
* Capture call site stack from v8.
|
|
107
|
-
* https://github.com/v8/v8/wiki/Stack-Trace-API
|
|
108
|
-
*/
|
|
109
|
-
function prepareObjectStackTrace(_obj, stack) {
|
|
110
|
-
return stack;
|
|
111
|
-
}
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLElBQUksTUFBTSxXQUFXLENBQUM7QUFDN0IsT0FBTyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3pCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4QyxPQUFPLGFBQWEsTUFBTSxhQUFhLENBQUM7QUFDeEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFM0QsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLG1CQUFtQixDQUFDLENBQUM7QUFJNUMsbURBQW1EO0FBQ25ELE1BQU0sTUFBTSxHQUFHLE9BQU8sTUFBTSxLQUFLLFdBQVcsSUFBSSxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDO0lBQzNFLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVztJQUNwQiwwQkFBMEI7SUFDMUIsQ0FBQyxDQUFDLGFBQWEsQ0FBQztBQUVsQixNQUFNLFVBQVUsR0FBSSxNQUFjLENBQUMsV0FBVyxDQUFDO0FBQy9DLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBRSxDQUFDLENBQUM7QUFDMUUsS0FBSyxDQUFDLHVCQUF1QixFQUFFLGNBQWMsQ0FBQyxDQUFDO0FBRS9DLFNBQVMsa0JBQWtCLENBQUMsUUFBa0IsRUFBRSxVQUFtQjtJQUNqRSxVQUFVLEdBQUcsVUFBVSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7SUFDdkQsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLGVBQWUsQ0FBQztJQUNwQyxN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
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export interface SequencifyResult {
|
|
2
|
-
sequence: string[];
|
|
3
|
-
requires: Record<string, true>;
|
|
4
|
-
}
|
|
5
|
-
export interface SequencifyTask {
|
|
6
|
-
dependencies: string[];
|
|
7
|
-
optionalDependencies: string[];
|
|
8
|
-
}
|
|
9
|
-
export default function sequencify(tasks: Record<string, SequencifyTask>, names: string[]): {
|
|
10
|
-
sequence: string[];
|
|
11
|
-
missingTasks: string[];
|
|
12
|
-
recursiveDependencies: string[];
|
|
13
|
-
};
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { debuglog } from 'node:util';
|
|
2
|
-
const debug = debuglog('@eggjs/core/utils/sequencify');
|
|
3
|
-
function sequence(tasks, names, result, missing, recursive, nest, optional, parent) {
|
|
4
|
-
names.forEach(function (name) {
|
|
5
|
-
if (result.requires[name])
|
|
6
|
-
return;
|
|
7
|
-
const node = tasks[name];
|
|
8
|
-
if (!node) {
|
|
9
|
-
if (optional === true)
|
|
10
|
-
return;
|
|
11
|
-
missing.push(name);
|
|
12
|
-
}
|
|
13
|
-
else if (nest.includes(name)) {
|
|
14
|
-
nest.push(name);
|
|
15
|
-
recursive.push(...nest.slice(0));
|
|
16
|
-
nest.pop();
|
|
17
|
-
}
|
|
18
|
-
else if (node.dependencies.length || node.optionalDependencies.length) {
|
|
19
|
-
nest.push(name);
|
|
20
|
-
if (node.dependencies.length) {
|
|
21
|
-
sequence(tasks, node.dependencies, result, missing, recursive, nest, optional, name);
|
|
22
|
-
}
|
|
23
|
-
if (node.optionalDependencies.length) {
|
|
24
|
-
sequence(tasks, node.optionalDependencies, result, missing, recursive, nest, true, name);
|
|
25
|
-
}
|
|
26
|
-
nest.pop();
|
|
27
|
-
}
|
|
28
|
-
if (!optional) {
|
|
29
|
-
result.requires[name] = true;
|
|
30
|
-
debug('task: %s is enabled by %s', name, parent);
|
|
31
|
-
}
|
|
32
|
-
if (!result.sequence.includes(name)) {
|
|
33
|
-
result.sequence.push(name);
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
// tasks: object with keys as task names
|
|
38
|
-
// names: array of task names
|
|
39
|
-
export default function sequencify(tasks, names) {
|
|
40
|
-
const result = {
|
|
41
|
-
sequence: [],
|
|
42
|
-
requires: {},
|
|
43
|
-
}; // the final sequence
|
|
44
|
-
const missing = []; // missing tasks
|
|
45
|
-
const recursive = []; // recursive task dependencies
|
|
46
|
-
sequence(tasks, names, result, missing, recursive, [], false, 'app');
|
|
47
|
-
if (missing.length || recursive.length) {
|
|
48
|
-
result.sequence = []; // results are incomplete at best, completely wrong at worst, remove them to avoid confusion
|
|
49
|
-
}
|
|
50
|
-
return {
|
|
51
|
-
sequence: result.sequence.filter(item => result.requires[item]),
|
|
52
|
-
missingTasks: missing,
|
|
53
|
-
recursiveDependencies: recursive,
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VxdWVuY2lmeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9zZXF1ZW5jaWZ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFckMsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLDhCQUE4QixDQUFDLENBQUM7QUFZdkQsU0FBUyxRQUFRLENBQUMsS0FBcUMsRUFBRSxLQUFlLEVBQUUsTUFBd0IsRUFDaEcsT0FBaUIsRUFBRSxTQUFtQixFQUN0QyxJQUFjLEVBQUUsUUFBaUIsRUFBRSxNQUFjO0lBQ2pELEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBUyxJQUFJO1FBQ3pCLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFBRSxPQUFPO1FBRWxDLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDVixJQUFJLFFBQVEsS0FBSyxJQUFJO2dCQUFFLE9BQU87WUFDOUIsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNyQixDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoQixTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNiLENBQUM7YUFBTSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN4RSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hCLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDN0IsUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDdkYsQ0FBQztZQUNELElBQUksSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNyQyxRQUFRLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzNGLENBQUM7WUFDRCxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDYixDQUFDO1FBQ0QsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2QsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDN0IsS0FBSyxDQUFDLDJCQUEyQixFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNuRCxDQUFDO1FBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDcEMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELHdDQUF3QztBQUN4Qyw2QkFBNkI7QUFDN0IsTUFBTSxDQUFDLE9BQU8sVUFBVSxVQUFVLENBQUMsS0FBcUMsRUFBRSxLQUFlO0lBQ3ZGLE1BQU0sTUFBTSxHQUFxQjtRQUMvQixRQUFRLEVBQUUsRUFBRTtRQUNaLFFBQVEsRUFBRSxFQUFFO0tBQ2IsQ0FBQyxDQUFDLHFCQUFxQjtJQUN4QixNQUFNLE9BQU8sR0FBYSxFQUFFLENBQUMsQ0FBQyxnQkFBZ0I7SUFDOUMsTUFBTSxTQUFTLEdBQWEsRUFBRSxDQUFDLENBQUMsOEJBQThCO0lBRTlELFFBQVEsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFckUsSUFBSSxPQUFPLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN2QyxNQUFNLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQyxDQUFDLDRGQUE0RjtJQUNwSCxDQUFDO0lBRUQsT0FBTztRQUNMLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0QsWUFBWSxFQUFFLE9BQU87UUFDckIscUJBQXFCLEVBQUUsU0FBUztLQUNqQyxDQUFDO0FBQ0osQ0FBQyJ9
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
export interface TimingItem {
|
|
2
|
-
name: string;
|
|
3
|
-
start: number;
|
|
4
|
-
end?: number;
|
|
5
|
-
duration?: number;
|
|
6
|
-
pid: number;
|
|
7
|
-
index: number;
|
|
8
|
-
}
|
|
9
|
-
export declare class Timing {
|
|
10
|
-
#private;
|
|
11
|
-
constructor();
|
|
12
|
-
init(): void;
|
|
13
|
-
start(name?: string, start?: number): TimingItem | undefined;
|
|
14
|
-
end(name?: string): TimingItem | undefined;
|
|
15
|
-
enable(): void;
|
|
16
|
-
disable(): void;
|
|
17
|
-
clear(): void;
|
|
18
|
-
toJSON(): TimingItem[];
|
|
19
|
-
itemToString(timelineEnd: number, item: TimingItem, times: number): string;
|
|
20
|
-
toString(prefix?: string, width?: number): string;
|
|
21
|
-
}
|
package/dist/esm/utils/timing.js
DELETED
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { EOL } from 'node:os';
|
|
2
|
-
import { debuglog } from 'node:util';
|
|
3
|
-
import assert from 'node:assert';
|
|
4
|
-
const debug = debuglog('@eggjs/core/utils/timing');
|
|
5
|
-
export class Timing {
|
|
6
|
-
#enable;
|
|
7
|
-
#startTime;
|
|
8
|
-
#map;
|
|
9
|
-
#list;
|
|
10
|
-
constructor() {
|
|
11
|
-
this.#enable = true;
|
|
12
|
-
this.#startTime = null;
|
|
13
|
-
this.#map = new Map();
|
|
14
|
-
this.#list = [];
|
|
15
|
-
this.init();
|
|
16
|
-
}
|
|
17
|
-
init() {
|
|
18
|
-
// process start time
|
|
19
|
-
this.start('Process Start', Date.now() - Math.floor(process.uptime() * 1000));
|
|
20
|
-
this.end('Process Start');
|
|
21
|
-
if ('scriptStartTime' in process && typeof process.scriptStartTime === 'number') {
|
|
22
|
-
// js script start execute time
|
|
23
|
-
this.start('Script Start', process.scriptStartTime);
|
|
24
|
-
this.end('Script Start');
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
start(name, start) {
|
|
28
|
-
if (!name || !this.#enable)
|
|
29
|
-
return;
|
|
30
|
-
if (this.#map.has(name)) {
|
|
31
|
-
this.end(name);
|
|
32
|
-
}
|
|
33
|
-
start = start || Date.now();
|
|
34
|
-
if (this.#startTime === null) {
|
|
35
|
-
this.#startTime = start;
|
|
36
|
-
}
|
|
37
|
-
const item = {
|
|
38
|
-
name,
|
|
39
|
-
start,
|
|
40
|
-
pid: process.pid,
|
|
41
|
-
index: this.#list.length,
|
|
42
|
-
};
|
|
43
|
-
this.#map.set(name, item);
|
|
44
|
-
this.#list.push(item);
|
|
45
|
-
debug('start %j', item);
|
|
46
|
-
return item;
|
|
47
|
-
}
|
|
48
|
-
end(name) {
|
|
49
|
-
if (!name || !this.#enable)
|
|
50
|
-
return;
|
|
51
|
-
assert(this.#map.has(name), `should run timing.start('${name}') first`);
|
|
52
|
-
const item = this.#map.get(name);
|
|
53
|
-
item.end = Date.now();
|
|
54
|
-
item.duration = item.end - item.start;
|
|
55
|
-
debug('end %j', item);
|
|
56
|
-
return item;
|
|
57
|
-
}
|
|
58
|
-
enable() {
|
|
59
|
-
this.#enable = true;
|
|
60
|
-
}
|
|
61
|
-
disable() {
|
|
62
|
-
this.#enable = false;
|
|
63
|
-
}
|
|
64
|
-
clear() {
|
|
65
|
-
this.#map.clear();
|
|
66
|
-
this.#list = [];
|
|
67
|
-
}
|
|
68
|
-
toJSON() {
|
|
69
|
-
return this.#list;
|
|
70
|
-
}
|
|
71
|
-
itemToString(timelineEnd, item, times) {
|
|
72
|
-
const isEnd = typeof item.duration === 'number';
|
|
73
|
-
const duration = isEnd ? item.duration : timelineEnd - item.start;
|
|
74
|
-
const offset = item.start - this.#startTime;
|
|
75
|
-
const status = `${duration}ms${isEnd ? '' : ' NOT_END'}`;
|
|
76
|
-
const timespan = Math.floor(Number((offset * times).toFixed(6)));
|
|
77
|
-
let timeline = Math.floor(Number((duration * times).toFixed(6)));
|
|
78
|
-
timeline = timeline > 0 ? timeline : 1; // make sure there is at least one unit
|
|
79
|
-
const message = `#${item.index} ${item.name}`;
|
|
80
|
-
return ' '.repeat(timespan) + '▇'.repeat(timeline) + ` [${status}] - ${message}`;
|
|
81
|
-
}
|
|
82
|
-
toString(prefix = 'egg start timeline:', width = 50) {
|
|
83
|
-
const timelineEnd = Date.now();
|
|
84
|
-
const timelineDuration = timelineEnd - this.#startTime;
|
|
85
|
-
let times = 1;
|
|
86
|
-
if (timelineDuration > width) {
|
|
87
|
-
times = width / timelineDuration;
|
|
88
|
-
}
|
|
89
|
-
// follow https://github.com/node-modules/time-profile/blob/master/lib/profiler.js#L88
|
|
90
|
-
return prefix + EOL + this.#list.map(item => this.itemToString(timelineEnd, item, times)).join(EOL);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL3RpbWluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQzlCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxNQUFNLE1BQU0sYUFBYSxDQUFDO0FBRWpDLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0FBV25ELE1BQU0sT0FBTyxNQUFNO0lBQ2pCLE9BQU8sQ0FBVTtJQUNqQixVQUFVLENBQWdCO0lBQzFCLElBQUksQ0FBMEI7SUFDOUIsS0FBSyxDQUFlO0lBQ3BCO1FBQ0UsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFJO1FBQ0YscUJBQXFCO1FBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzlFLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7UUFFMUIsSUFBSSxpQkFBaUIsSUFBSSxPQUFPLElBQUksT0FBTyxPQUFPLENBQUMsZUFBZSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ2hGLCtCQUErQjtZQUMvQixJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7WUFD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
|
package/dist/package.json
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import type { EggCore, Context } from './egg.js';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* BaseContextClass is a base class that can be extended,
|
|
5
|
-
* it's instantiated in context level,
|
|
6
|
-
* {@link Helper}, {@link Service} is extending it.
|
|
7
|
-
*/
|
|
8
|
-
export class BaseContextClass {
|
|
9
|
-
ctx: Context;
|
|
10
|
-
app: EggCore;
|
|
11
|
-
config: Record<string, any>;
|
|
12
|
-
service: BaseContextClass;
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* @since 1.0.0
|
|
16
|
-
*/
|
|
17
|
-
constructor(ctx: Context) {
|
|
18
|
-
/**
|
|
19
|
-
* @member {Context} BaseContextClass#ctx
|
|
20
|
-
* @since 1.0.0
|
|
21
|
-
*/
|
|
22
|
-
this.ctx = ctx;
|
|
23
|
-
/**
|
|
24
|
-
* @member {Application} BaseContextClass#app
|
|
25
|
-
* @since 1.0.0
|
|
26
|
-
*/
|
|
27
|
-
this.app = ctx.app;
|
|
28
|
-
/**
|
|
29
|
-
* @member {Config} BaseContextClass#config
|
|
30
|
-
* @since 1.0.0
|
|
31
|
-
*/
|
|
32
|
-
this.config = ctx.app.config;
|
|
33
|
-
/**
|
|
34
|
-
* @member {Service} BaseContextClass#service
|
|
35
|
-
* @since 1.0.0
|
|
36
|
-
*/
|
|
37
|
-
this.service = ctx.service;
|
|
38
|
-
}
|
|
39
|
-
}
|