egg 4.1.0-beta.3 → 4.1.0-beta.31
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/dist/agent.d.ts +3 -7
- package/dist/agent.js +6 -10
- package/dist/ajv.d.ts +1 -0
- package/dist/ajv.js +2 -0
- package/dist/aop.d.ts +1 -0
- package/dist/aop.js +2 -0
- package/dist/app/extend/context.d.ts +166 -193
- package/dist/app/extend/context.js +259 -244
- package/dist/app/extend/helper.d.ts +31 -36
- package/dist/app/extend/helper.js +41 -45
- package/dist/app/extend/request.d.ts +127 -140
- package/dist/app/extend/request.js +258 -219
- package/dist/app/extend/response.d.ts +22 -32
- package/dist/app/extend/response.js +34 -36
- package/dist/app/middleware/body_parser.d.ts +2 -2
- package/dist/app/middleware/body_parser.js +3 -7
- package/dist/app/middleware/meta.d.ts +9 -10
- package/dist/app/middleware/meta.js +19 -13
- package/dist/app/middleware/notfound.d.ts +6 -10
- package/dist/app/middleware/notfound.js +28 -25
- package/dist/app/middleware/override_method.d.ts +2 -2
- package/dist/app/middleware/override_method.js +3 -7
- package/dist/app/middleware/site_file.d.ts +8 -12
- package/dist/app/middleware/site_file.js +52 -37
- package/dist/config/config.default.d.ts +3 -8
- package/dist/config/config.default.js +377 -256
- package/dist/config/config.local.d.ts +3 -10
- package/dist/config/config.local.js +9 -7
- package/dist/config/config.unittest.d.ts +3 -9
- package/dist/config/config.unittest.js +9 -10
- package/dist/config/favicon.png +0 -0
- package/dist/config/plugin.d.ts +3 -124
- package/dist/config/plugin.js +154 -53
- package/dist/dal.d.ts +1 -0
- package/dist/dal.js +2 -0
- package/dist/helper.d.ts +1 -0
- package/dist/helper.js +2 -0
- package/dist/index.d.ts +106 -19
- package/dist/index.js +89 -19
- package/dist/lib/agent.d.ts +12 -17
- package/dist/lib/agent.js +45 -54
- package/dist/lib/application.d.ts +47 -62
- package/dist/lib/application.js +249 -197
- package/dist/lib/core/base_context_class.d.ts +13 -17
- package/dist/lib/core/base_context_class.js +15 -17
- package/dist/lib/core/base_context_logger.d.ts +35 -39
- package/dist/lib/core/base_context_logger.js +60 -58
- package/dist/lib/core/base_hook_class.d.ts +11 -17
- package/dist/lib/core/base_hook_class.js +22 -26
- package/dist/lib/core/context_httpclient.d.ts +16 -20
- package/dist/lib/core/context_httpclient.js +26 -29
- package/dist/lib/core/httpclient.d.ts +12 -15
- package/dist/lib/core/httpclient.js +37 -34
- package/dist/lib/core/logger.d.ts +3 -7
- package/dist/lib/core/logger.js +36 -30
- package/dist/lib/core/messenger/IMessenger.d.ts +49 -53
- package/dist/lib/core/messenger/IMessenger.js +2 -1
- package/dist/lib/core/messenger/base.d.ts +7 -11
- package/dist/lib/core/messenger/base.js +29 -29
- package/dist/lib/core/messenger/index.d.ts +4 -8
- package/dist/lib/core/messenger/index.js +8 -11
- package/dist/lib/core/messenger/ipc.d.ts +55 -59
- package/dist/lib/core/messenger/ipc.js +138 -120
- package/dist/lib/core/messenger/local.d.ts +56 -61
- package/dist/lib/core/messenger/local.js +131 -124
- package/dist/lib/core/utils.d.ts +2 -5
- package/dist/lib/core/utils.js +66 -44
- package/dist/lib/define.d.ts +76 -0
- package/dist/lib/define.js +59 -0
- package/dist/lib/egg.d.ts +272 -294
- package/dist/lib/egg.js +574 -507
- package/dist/lib/error/CookieLimitExceedError.d.ts +4 -7
- package/dist/lib/error/CookieLimitExceedError.js +12 -15
- package/dist/lib/error/MessageUnhandledRejectionError.d.ts +4 -7
- package/dist/lib/error/MessageUnhandledRejectionError.js +12 -15
- package/dist/lib/error/index.d.ts +2 -3
- package/dist/lib/error/index.js +3 -4
- package/dist/lib/loader/AgentWorkerLoader.d.ts +7 -12
- package/dist/lib/loader/AgentWorkerLoader.js +18 -22
- package/dist/lib/loader/AppWorkerLoader.d.ts +12 -17
- package/dist/lib/loader/AppWorkerLoader.js +37 -35
- package/dist/lib/loader/EggApplicationLoader.d.ts +3 -7
- package/dist/lib/loader/EggApplicationLoader.js +4 -7
- package/dist/lib/loader/index.d.ts +3 -4
- package/dist/lib/loader/index.js +4 -5
- package/dist/lib/start.d.ts +18 -22
- package/dist/lib/start.js +42 -32
- package/dist/lib/types.d.ts +277 -230
- package/dist/lib/types.js +3 -14
- package/dist/lib/types.plugin.d.ts +20 -0
- package/dist/lib/types.plugin.js +24 -0
- package/dist/orm.d.ts +1 -0
- package/dist/orm.js +2 -0
- package/dist/schedule.d.ts +2 -0
- package/dist/schedule.js +5 -0
- package/dist/transaction.d.ts +1 -0
- package/dist/transaction.js +2 -0
- package/dist/urllib.d.ts +1 -1
- package/dist/urllib.js +2 -3
- package/package.json +49 -32
- package/dist/lib/utils.d.ts +0 -5
- package/dist/lib/utils.js +0 -14
package/dist/lib/application.js
CHANGED
|
@@ -1,19 +1,17 @@
|
|
|
1
|
-
import
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import fs from 'node:fs';
|
|
3
|
+
import http from 'node:http';
|
|
4
|
+
import { Socket } from 'node:net';
|
|
5
|
+
import { graceful } from 'graceful';
|
|
6
|
+
import { assign } from 'utility';
|
|
7
|
+
import { utils as eggUtils } from '@eggjs/core';
|
|
8
|
+
import { isGeneratorFunction } from 'is-type-of';
|
|
2
9
|
import { EggApplicationCore } from "./egg.js";
|
|
3
|
-
import { AppWorkerLoader } from "./loader/
|
|
4
|
-
import "./loader/index.js";
|
|
10
|
+
import { AppWorkerLoader } from "./loader/index.js";
|
|
5
11
|
import Helper from "../app/extend/helper.js";
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
import fs from "node:fs";
|
|
10
|
-
import http from "node:http";
|
|
11
|
-
import { isGeneratorFunction } from "is-type-of";
|
|
12
|
-
import { Socket } from "node:net";
|
|
13
|
-
import { graceful } from "graceful";
|
|
14
|
-
|
|
15
|
-
//#region src/lib/application.ts
|
|
16
|
-
const EGG_LOADER = Symbol.for("egg#loader");
|
|
12
|
+
import { CookieLimitExceedError } from "./error/index.js";
|
|
13
|
+
// client error => 400 Bad Request
|
|
14
|
+
// Refs: https://nodejs.org/dist/latest-v8.x/docs/api/http.html#http_event_clienterror
|
|
17
15
|
const DEFAULT_BAD_REQUEST_HTML = `<html>
|
|
18
16
|
<head><title>400 Bad Request</title></head>
|
|
19
17
|
<body bgcolor="white">
|
|
@@ -21,189 +19,243 @@ const DEFAULT_BAD_REQUEST_HTML = `<html>
|
|
|
21
19
|
<hr><center>❤</center>
|
|
22
20
|
</body>
|
|
23
21
|
</html>`;
|
|
24
|
-
const
|
|
22
|
+
const DEFAULT_BAD_REQUEST_HTML_LENGTH = Buffer.byteLength(DEFAULT_BAD_REQUEST_HTML);
|
|
23
|
+
const DEFAULT_BAD_REQUEST_RESPONSE = `HTTP/1.1 400 Bad Request\r\nContent-Length: ${DEFAULT_BAD_REQUEST_HTML_LENGTH}` +
|
|
24
|
+
`\r\n\r\n${DEFAULT_BAD_REQUEST_HTML}`;
|
|
25
|
+
// Refs: https://github.com/nodejs/node/blob/b38c81/lib/_http_outgoing.js#L706-L710
|
|
25
26
|
function escapeHeaderValue(value) {
|
|
26
|
-
|
|
27
|
+
// Protect against response splitting. The regex test is there to
|
|
28
|
+
// minimize the performance impact in the common case.
|
|
29
|
+
return /[\r\n]/.test(value) ? value.replace(/[\r\n]+[ \t]*/g, '') : value;
|
|
27
30
|
}
|
|
28
31
|
/**
|
|
29
|
-
* Singleton instance in App Worker, extend {@link EggApplicationCore}
|
|
30
|
-
* @augments EggApplicationCore
|
|
31
|
-
*/
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
32
|
+
* Singleton instance in App Worker, extend {@link EggApplicationCore}
|
|
33
|
+
* @augments EggApplicationCore
|
|
34
|
+
*/
|
|
35
|
+
export class Application extends EggApplicationCore {
|
|
36
|
+
// will auto set after 'server' event emit
|
|
37
|
+
server;
|
|
38
|
+
#locals = {};
|
|
39
|
+
/**
|
|
40
|
+
* reference to {@link Helper}
|
|
41
|
+
* @member {Helper} Application#Helper
|
|
42
|
+
*/
|
|
43
|
+
Helper = Helper;
|
|
44
|
+
/**
|
|
45
|
+
* @class
|
|
46
|
+
* @param {Object} options - see {@link EggApplicationCore}
|
|
47
|
+
*/
|
|
48
|
+
constructor(options) {
|
|
49
|
+
super({
|
|
50
|
+
...options,
|
|
51
|
+
type: 'application',
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
customEggLoader() {
|
|
55
|
+
return AppWorkerLoader;
|
|
56
|
+
}
|
|
57
|
+
async load() {
|
|
58
|
+
await super.load();
|
|
59
|
+
this.#warnConfusedConfig();
|
|
60
|
+
this.#bindEvents();
|
|
61
|
+
}
|
|
62
|
+
#responseRaw(socket, raw) {
|
|
63
|
+
if (!socket?.writable)
|
|
64
|
+
return;
|
|
65
|
+
if (!raw) {
|
|
66
|
+
socket.end(DEFAULT_BAD_REQUEST_RESPONSE);
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
const body = raw.body == null ? DEFAULT_BAD_REQUEST_HTML : raw.body;
|
|
70
|
+
const headers = raw.headers || {};
|
|
71
|
+
const status = raw.status || 400;
|
|
72
|
+
let responseHeaderLines = '';
|
|
73
|
+
const firstLine = `HTTP/1.1 ${status} ${http.STATUS_CODES[status] || 'Unknown'}`;
|
|
74
|
+
// Not that safe because no validation for header keys.
|
|
75
|
+
// Refs: https://github.com/nodejs/node/blob/b38c81/lib/_http_outgoing.js#L451
|
|
76
|
+
for (const key of Object.keys(headers)) {
|
|
77
|
+
if (key.toLowerCase() === 'content-length') {
|
|
78
|
+
delete headers[key];
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
responseHeaderLines += `${key}: ${escapeHeaderValue(headers[key])}\r\n`;
|
|
82
|
+
}
|
|
83
|
+
responseHeaderLines += `Content-Length: ${Buffer.byteLength(body)}\r\n`;
|
|
84
|
+
socket.end(`${firstLine}\r\n${responseHeaderLines}\r\n${body.toString()}`);
|
|
85
|
+
}
|
|
86
|
+
onClientError(err, socket) {
|
|
87
|
+
// ignore when there is no http body, it almost like an ECONNRESET
|
|
88
|
+
if (err.rawPacket) {
|
|
89
|
+
this.logger.warn('[egg:application] A client (%s:%d) error [%s] occurred: %s', socket.remoteAddress, socket.remotePort, err.code, err.message);
|
|
90
|
+
}
|
|
91
|
+
if (typeof this.config.onClientError === 'function') {
|
|
92
|
+
// @ts-ignore onClientError is not typed
|
|
93
|
+
const p = eggUtils.callFn(this.config.onClientError, [err, socket, this]);
|
|
94
|
+
// the returned object should be something like:
|
|
95
|
+
//
|
|
96
|
+
// {
|
|
97
|
+
// body: '...',
|
|
98
|
+
// headers: {
|
|
99
|
+
// ...
|
|
100
|
+
// },
|
|
101
|
+
// status: 400
|
|
102
|
+
// }
|
|
103
|
+
//
|
|
104
|
+
// default values:
|
|
105
|
+
//
|
|
106
|
+
// + body: ''
|
|
107
|
+
// + headers: {}
|
|
108
|
+
// + status: 400
|
|
109
|
+
p.then((ret) => {
|
|
110
|
+
this.#responseRaw(socket, ret || {});
|
|
111
|
+
}).catch((err) => {
|
|
112
|
+
this.logger.error(err);
|
|
113
|
+
this.#responseRaw(socket);
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
// because it's a raw socket object, we should return the raw HTTP response
|
|
118
|
+
// packet.
|
|
119
|
+
this.#responseRaw(socket);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
onServer(server) {
|
|
123
|
+
// expose app.server
|
|
124
|
+
this.server = server;
|
|
125
|
+
// set ignore code
|
|
126
|
+
const serverGracefulIgnoreCode = this.config.serverGracefulIgnoreCode || [];
|
|
127
|
+
graceful({
|
|
128
|
+
server: [server],
|
|
129
|
+
error: (err, throwErrorCount) => {
|
|
130
|
+
const originMessage = err.message;
|
|
131
|
+
if (originMessage) {
|
|
132
|
+
// shouldjs will override error property but only getter
|
|
133
|
+
// https://github.com/shouldjs/should.js/blob/889e22ebf19a06bc2747d24cf34b25cc00b37464/lib/assertion-error.js#L26
|
|
134
|
+
Object.defineProperty(err, 'message', {
|
|
135
|
+
get() {
|
|
136
|
+
return `${originMessage} (uncaughtException throw ${throwErrorCount} times on pid: ${process.pid})`;
|
|
137
|
+
},
|
|
138
|
+
configurable: true,
|
|
139
|
+
enumerable: false,
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
this.coreLogger.error(err);
|
|
143
|
+
},
|
|
144
|
+
ignoreCode: serverGracefulIgnoreCode,
|
|
145
|
+
});
|
|
146
|
+
server.on('clientError', (err, socket) => this.onClientError(err, socket));
|
|
147
|
+
// server timeout
|
|
148
|
+
if (typeof this.config.serverTimeout === 'number') {
|
|
149
|
+
server.setTimeout(this.config.serverTimeout);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* global locals for view
|
|
154
|
+
* @member {Object} Application#locals
|
|
155
|
+
* @see Context#locals
|
|
156
|
+
*/
|
|
157
|
+
get locals() {
|
|
158
|
+
return this.#locals;
|
|
159
|
+
}
|
|
160
|
+
set locals(val) {
|
|
161
|
+
assign(this.#locals, val);
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* save routers to `run/router.json`
|
|
165
|
+
* @private
|
|
166
|
+
*/
|
|
167
|
+
dumpConfig() {
|
|
168
|
+
super.dumpConfig();
|
|
169
|
+
// dump routers to router.json
|
|
170
|
+
const rundir = this.config.rundir;
|
|
171
|
+
const FULLPATH = this.loader.FileLoader.FULLPATH;
|
|
172
|
+
try {
|
|
173
|
+
const dumpRouterFile = path.join(rundir, 'router.json');
|
|
174
|
+
const routers = [];
|
|
175
|
+
for (const layer of this.router.stack) {
|
|
176
|
+
routers.push({
|
|
177
|
+
name: layer.name,
|
|
178
|
+
methods: layer.methods,
|
|
179
|
+
paramNames: layer.paramNames,
|
|
180
|
+
path: layer.path,
|
|
181
|
+
regexp: layer.regexp.toString(),
|
|
182
|
+
stack: layer.stack.map((stack) => stack[FULLPATH] || stack._name || stack.name || 'anonymous'),
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
fs.writeFileSync(dumpRouterFile, JSON.stringify(routers, null, 2));
|
|
186
|
+
}
|
|
187
|
+
catch (err) {
|
|
188
|
+
this.coreLogger.warn(`dumpConfig router.json error: ${err.message}`);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Run async function in the background
|
|
193
|
+
* @see Context#runInBackground
|
|
194
|
+
* @param {Function} scope - the first args is an anonymous ctx
|
|
195
|
+
*/
|
|
196
|
+
runInBackground(scope, req) {
|
|
197
|
+
const ctx = this.createAnonymousContext(req);
|
|
198
|
+
if (!scope.name) {
|
|
199
|
+
Reflect.set(scope, '_name', eggUtils.getCalleeFromStack(true));
|
|
200
|
+
}
|
|
201
|
+
this.ctxStorage.run(ctx, () => {
|
|
202
|
+
return ctx.runInBackground(scope);
|
|
203
|
+
});
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* secret key for Application
|
|
207
|
+
* @member {String} Application#keys
|
|
208
|
+
*/
|
|
209
|
+
get keys() {
|
|
210
|
+
if (!this._keys) {
|
|
211
|
+
if (!this.config.keys) {
|
|
212
|
+
if (this.config.env === 'local' || this.config.env === 'unittest') {
|
|
213
|
+
const configPath = path.join(this.config.baseDir, 'config/config.default.js');
|
|
214
|
+
console.error('Cookie need secret key to sign and encrypt.');
|
|
215
|
+
console.error('Please add `config.keys` in %s', configPath);
|
|
216
|
+
}
|
|
217
|
+
throw new Error('Please set config.keys first');
|
|
218
|
+
}
|
|
219
|
+
this._keys = this.config.keys.split(',').map((s) => s.trim());
|
|
220
|
+
}
|
|
221
|
+
return this._keys;
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* @deprecated keep compatible with egg 3.x
|
|
225
|
+
*/
|
|
226
|
+
toAsyncFunction(fn) {
|
|
227
|
+
if (isGeneratorFunction(fn)) {
|
|
228
|
+
throw new Error('Generator function is not supported');
|
|
229
|
+
}
|
|
230
|
+
return fn;
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* bind app's events
|
|
234
|
+
*
|
|
235
|
+
* @private
|
|
236
|
+
*/
|
|
237
|
+
#bindEvents() {
|
|
238
|
+
// Browser Cookie Limits: http://browsercookielimits.iain.guru/
|
|
239
|
+
// https://github.com/eggjs/egg-cookies/blob/58ef4ea497a0eb4dd711d7e9751e56bc5fcee004/src/cookies.ts#L145
|
|
240
|
+
this.on('cookieLimitExceed', ({ name, value, ctx }) => {
|
|
241
|
+
const err = new CookieLimitExceedError(name, value);
|
|
242
|
+
ctx.coreLogger.error(err);
|
|
243
|
+
});
|
|
244
|
+
// expose server to support websocket
|
|
245
|
+
this.once('server', (server) => this.onServer(server));
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* warn when confused configurations are present
|
|
249
|
+
*
|
|
250
|
+
* @private
|
|
251
|
+
*/
|
|
252
|
+
#warnConfusedConfig() {
|
|
253
|
+
const confusedConfigurations = this.config.confusedConfigurations;
|
|
254
|
+
Object.keys(confusedConfigurations).forEach((key) => {
|
|
255
|
+
if (this.config[key] !== undefined) {
|
|
256
|
+
this.logger.warn('[egg:application] Unexpected config key `%o` exists, Please use `%o` instead.', key, confusedConfigurations[key]);
|
|
257
|
+
}
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2FwcGxpY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sSUFBSSxNQUFNLFdBQVcsQ0FBQztBQUM3QixPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDekIsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBQzdCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNwQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxLQUFLLElBQUksUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUVqRCxPQUFPLEVBQUUsa0JBQWtCLEVBQWdELE1BQU0sVUFBVSxDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLE1BQU0sTUFBTSx5QkFBeUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUcxRCxrQ0FBa0M7QUFDbEMsc0ZBQXNGO0FBQ3RGLE1BQU0sd0JBQXdCLEdBQUc7Ozs7OztVQU12QixDQUFDO0FBQ1gsTUFBTSwrQkFBK0IsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLHdCQUF3QixDQUFDLENBQUM7QUFDcEYsTUFBTSw0QkFBNEIsR0FDaEMsK0NBQStDLCtCQUErQixFQUFFO0lBQ2hGLFdBQVcsd0JBQXdCLEVBQUUsQ0FBQztBQUV4QyxtRkFBbUY7QUFDbkYsU0FBUyxpQkFBaUIsQ0FBQyxLQUFhO0lBQ3RDLGlFQUFpRTtJQUNqRSxzREFBc0Q7SUFDdEQsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFD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
|
|
@@ -1,23 +1,19 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
//#region src/lib/core/base_context_class.d.ts
|
|
7
|
-
|
|
1
|
+
import { BaseContextClass as EggCoreBaseContextClass } from '@eggjs/core';
|
|
2
|
+
import type { Context } from '../egg.ts';
|
|
3
|
+
import type { Application } from '../application.ts';
|
|
4
|
+
import { BaseContextLogger } from './base_context_logger.ts';
|
|
5
|
+
import type { IService } from '../types.ts';
|
|
8
6
|
/**
|
|
9
7
|
* BaseContextClass is a base class that can be extended,
|
|
10
8
|
* it's instantiated in context level,
|
|
11
9
|
* {@link Helper}, {@link Service} is extending it.
|
|
12
10
|
*/
|
|
13
|
-
declare class BaseContextClass extends
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
11
|
+
export declare class BaseContextClass extends EggCoreBaseContextClass {
|
|
12
|
+
#private;
|
|
13
|
+
[key: string | symbol]: any;
|
|
14
|
+
ctx: Context;
|
|
15
|
+
pathName?: string;
|
|
16
|
+
app: Application;
|
|
17
|
+
service: IService;
|
|
18
|
+
get logger(): BaseContextLogger;
|
|
21
19
|
}
|
|
22
|
-
//#endregion
|
|
23
|
-
export { BaseContextClass };
|
|
@@ -1,19 +1,17 @@
|
|
|
1
|
+
import { BaseContextClass as EggCoreBaseContextClass } from '@eggjs/core';
|
|
1
2
|
import { BaseContextLogger } from "./base_context_logger.js";
|
|
2
|
-
import { BaseContextClass as BaseContextClass$1 } from "@eggjs/core";
|
|
3
|
-
|
|
4
|
-
//#region src/lib/core/base_context_class.ts
|
|
5
3
|
/**
|
|
6
|
-
* BaseContextClass is a base class that can be extended,
|
|
7
|
-
* it's instantiated in context level,
|
|
8
|
-
* {@link Helper}, {@link Service} is extending it.
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
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 extends EggCoreBaseContextClass {
|
|
9
|
+
#logger;
|
|
10
|
+
get logger() {
|
|
11
|
+
if (!this.#logger) {
|
|
12
|
+
this.#logger = new BaseContextLogger(this.ctx, this.pathName);
|
|
13
|
+
}
|
|
14
|
+
return this.#logger;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZV9jb250ZXh0X2NsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb3JlL2Jhc2VfY29udGV4dF9jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLElBQUksdUJBQXVCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFJMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHN0Q7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxnQkFBaUIsU0FBUSx1QkFBdUI7SUFNM0QsT0FBTyxDQUFxQjtJQUU1QixJQUFJLE1BQU07UUFDUixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoRSxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7Q0FDRiJ9
|
|
@@ -1,40 +1,36 @@
|
|
|
1
|
-
import { EggContext } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
*/
|
|
37
|
-
error(...args: any[]): void;
|
|
1
|
+
import type { EggContext } from '../egg.ts';
|
|
2
|
+
export declare class BaseContextLogger {
|
|
3
|
+
#private;
|
|
4
|
+
/**
|
|
5
|
+
* @class
|
|
6
|
+
* @param {Context} ctx - context instance
|
|
7
|
+
* @param {String} pathName - class path name
|
|
8
|
+
* @since 1.0.0
|
|
9
|
+
*/
|
|
10
|
+
constructor(ctx: EggContext, pathName?: string);
|
|
11
|
+
protected _log(method: 'info' | 'warn' | 'error' | 'debug', args: any[]): void;
|
|
12
|
+
/**
|
|
13
|
+
* @member {Function} BaseContextLogger#debug
|
|
14
|
+
* @param {...any} args - log msg
|
|
15
|
+
* @since 1.2.0
|
|
16
|
+
*/
|
|
17
|
+
debug(...args: any[]): void;
|
|
18
|
+
/**
|
|
19
|
+
* @member {Function} BaseContextLogger#info
|
|
20
|
+
* @param {...any} args - log msg
|
|
21
|
+
* @since 1.2.0
|
|
22
|
+
*/
|
|
23
|
+
info(...args: any[]): void;
|
|
24
|
+
/**
|
|
25
|
+
* @member {Function} BaseContextLogger#warn
|
|
26
|
+
* @param {...any} args - log msg
|
|
27
|
+
* @since 1.2.0
|
|
28
|
+
*/
|
|
29
|
+
warn(...args: any[]): void;
|
|
30
|
+
/**
|
|
31
|
+
* @member {Function} BaseContextLogger#error
|
|
32
|
+
* @param {...any} args - log msg
|
|
33
|
+
* @since 1.2.0
|
|
34
|
+
*/
|
|
35
|
+
error(...args: any[]): void;
|
|
38
36
|
}
|
|
39
|
-
//#endregion
|
|
40
|
-
export { BaseContextLogger };
|