@mojojs/core 0.30.2 → 0.33.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/README.md +2 -2
- package/lib/body.d.ts +1 -0
- package/lib/cgi.d.ts +22 -0
- package/lib/cgi.js +78 -0
- package/lib/cgi.js.map +1 -0
- package/lib/cli/cgi.d.ts +10 -0
- package/lib/cli/cgi.js +16 -0
- package/lib/cli/cgi.js.map +1 -0
- package/lib/cli/server.js +1 -1
- package/lib/cli/server.js.map +1 -1
- package/lib/cli.d.ts +4 -0
- package/lib/cli.js +14 -1
- package/lib/cli.js.map +1 -1
- package/lib/headers.d.ts +4 -0
- package/lib/headers.js +15 -0
- package/lib/headers.js.map +1 -1
- package/lib/logger.d.ts +23 -1
- package/lib/logger.js +53 -10
- package/lib/logger.js.map +1 -1
- package/lib/server/response.d.ts +2 -0
- package/lib/server.d.ts +8 -5
- package/lib/server.js +13 -5
- package/lib/server.js.map +1 -1
- package/lib/types.d.ts +6 -0
- package/lib/user-agent/mock.d.ts +3 -1
- package/lib/user-agent/mock.js +2 -1
- package/lib/user-agent/mock.js.map +1 -1
- package/lib/user-agent/test.d.ts +2 -0
- package/lib/user-agent/transport/http.d.ts +1 -0
- package/lib/user-agent/transport/https.d.ts +2 -0
- package/lib/user-agent.d.ts +1 -0
- package/lib/util.d.ts +3 -0
- package/lib/util.js +70 -4
- package/lib/util.js.map +1 -1
- package/lib/websocket.d.ts +1 -0
- package/package.json +1 -1
- package/vendor/certs/development.crt +27 -0
- package/vendor/certs/development.key +52 -0
package/README.md
CHANGED
|
@@ -21,8 +21,8 @@ If you want to stay up to date on the latest developments join us on [Matrix](ht
|
|
|
21
21
|
* A real-time web framework, allowing you to easily grow single file prototypes into well-structured MVC web
|
|
22
22
|
applications.
|
|
23
23
|
* Powerful out of the box with RESTful routes, WebSockets, plugins, commands, logging, templates, content negotiation,
|
|
24
|
-
session management, form and JSON validation, testing framework, static file server, cluster mode,
|
|
25
|
-
Unicode support and much more for you to discover.
|
|
24
|
+
session management, form and JSON validation, testing framework, static file server, cluster mode, CGI detection,
|
|
25
|
+
first class Unicode support and much more for you to discover.
|
|
26
26
|
|
|
27
27
|
* A powerful web development toolkit, that you can use for all kinds of applications, independently of the web
|
|
28
28
|
framework.
|
package/lib/body.d.ts
CHANGED
package/lib/cgi.d.ts
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
import type { MojoApp, ServerResponseBody } from './types.js';
|
|
4
|
+
import type { Readable } from 'stream';
|
|
5
|
+
import { ServerRequest } from './server/request.js';
|
|
6
|
+
import { ServerResponse } from './server/response.js';
|
|
7
|
+
/**
|
|
8
|
+
* CGI class. Is this a joke? Yes. Could you use it in production anyway? Probably.
|
|
9
|
+
*/
|
|
10
|
+
export declare class CGI {
|
|
11
|
+
app: MojoApp;
|
|
12
|
+
constructor(app: MojoApp);
|
|
13
|
+
/**
|
|
14
|
+
* Create a request object for a CGI environment.
|
|
15
|
+
*/
|
|
16
|
+
static envToRequest(env: NodeJS.ProcessEnv, stdin: Readable): ServerRequest;
|
|
17
|
+
/**
|
|
18
|
+
* Process CGI request.
|
|
19
|
+
*/
|
|
20
|
+
process(): Promise<void>;
|
|
21
|
+
_sendResponse(res: ServerResponse, body: ServerResponseBody): void;
|
|
22
|
+
}
|
package/lib/cgi.js
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { Stream } from 'stream';
|
|
2
|
+
import { ServerRequest } from './server/request.js';
|
|
3
|
+
import { ServerResponse } from './server/response.js';
|
|
4
|
+
import { httpStatusMessages } from './util.js';
|
|
5
|
+
/**
|
|
6
|
+
* CGI class. Is this a joke? Yes. Could you use it in production anyway? Probably.
|
|
7
|
+
*/
|
|
8
|
+
export class CGI {
|
|
9
|
+
constructor(app) {
|
|
10
|
+
this.app = app;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Create a request object for a CGI environment.
|
|
14
|
+
*/
|
|
15
|
+
static envToRequest(env, stdin) {
|
|
16
|
+
// Method
|
|
17
|
+
const method = env.REQUEST_METHOD ?? 'GET';
|
|
18
|
+
// URL
|
|
19
|
+
let url = env.PATH_INFO ?? '/';
|
|
20
|
+
const name = env.SCRIPT_NAME;
|
|
21
|
+
if (name !== undefined && url.startsWith(name) === true)
|
|
22
|
+
url = url.replace(name, '');
|
|
23
|
+
const query = env.QUERY_STRING;
|
|
24
|
+
if (query !== undefined && query !== '')
|
|
25
|
+
url += `?${query}`;
|
|
26
|
+
// Headers
|
|
27
|
+
const headers = [];
|
|
28
|
+
for (const [name, value] of Object.entries(env)) {
|
|
29
|
+
const nameMatch = name.match(/^HTTP_(.+)$/);
|
|
30
|
+
if (nameMatch === null || value === undefined)
|
|
31
|
+
continue;
|
|
32
|
+
headers.push(nameMatch[1].replaceAll('_', '-'), value);
|
|
33
|
+
}
|
|
34
|
+
// Special headers
|
|
35
|
+
if (env.CONTENT_LENGTH !== undefined)
|
|
36
|
+
headers.push('Content-Length', env.CONTENT_LENGTH);
|
|
37
|
+
if (env.CONTENT_TYPE !== undefined)
|
|
38
|
+
headers.push('Content-Type', env.CONTENT_TYPE);
|
|
39
|
+
// HTTPS
|
|
40
|
+
const isSecure = (env.HTTPS ?? '').toUpperCase() === 'ON';
|
|
41
|
+
return new ServerRequest({
|
|
42
|
+
body: stdin,
|
|
43
|
+
headers: headers,
|
|
44
|
+
isSecure,
|
|
45
|
+
isWebSocket: false,
|
|
46
|
+
method,
|
|
47
|
+
reverseProxy: false,
|
|
48
|
+
url
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Process CGI request.
|
|
53
|
+
*/
|
|
54
|
+
async process() {
|
|
55
|
+
const app = this.app;
|
|
56
|
+
await app.hooks.runHook('server:start', app);
|
|
57
|
+
const ctx = app.newContext(CGI.envToRequest(process.env, process.stdin), new ServerResponse(async (res, body) => {
|
|
58
|
+
this._sendResponse(res, body);
|
|
59
|
+
}));
|
|
60
|
+
await app.handleRequest(ctx).catch(error => ctx.exception(error));
|
|
61
|
+
await app.hooks.runHook('server:stop', app);
|
|
62
|
+
}
|
|
63
|
+
_sendResponse(res, body) {
|
|
64
|
+
const code = res.statusCode;
|
|
65
|
+
res.headers.set('Status', `${code} ${httpStatusMessages[code]}`);
|
|
66
|
+
const stdout = process.stdout;
|
|
67
|
+
if (typeof body === 'string' || Buffer.isBuffer(body)) {
|
|
68
|
+
res.length(Buffer.byteLength(body));
|
|
69
|
+
stdout.write(res.headers.toString());
|
|
70
|
+
stdout.write(body);
|
|
71
|
+
}
|
|
72
|
+
else if (body instanceof Stream) {
|
|
73
|
+
stdout.write(res.headers.toString());
|
|
74
|
+
body.pipe(stdout);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=cgi.js.map
|
package/lib/cgi.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cgi.js","sourceRoot":"","sources":["../src/cgi.ts"],"names":[],"mappings":"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"}
|
package/lib/cli/cgi.d.ts
ADDED
package/lib/cli/cgi.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { CGI } from '../cgi.js';
|
|
2
|
+
/**
|
|
3
|
+
* CGI command.
|
|
4
|
+
*/
|
|
5
|
+
export default async function cgiCommand(app) {
|
|
6
|
+
await new CGI(app).process();
|
|
7
|
+
}
|
|
8
|
+
cgiCommand.description = 'Start application with CGI';
|
|
9
|
+
cgiCommand.usage = `Usage: APPLICATION cgi [OPTIONS]
|
|
10
|
+
|
|
11
|
+
node index.js cgi
|
|
12
|
+
|
|
13
|
+
Options:
|
|
14
|
+
-h, --help Show this summary of available options
|
|
15
|
+
`;
|
|
16
|
+
//# sourceMappingURL=cgi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cgi.js","sourceRoot":"","sources":["../../src/cli/cgi.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAC,MAAM,WAAW,CAAC;AAE9B;;GAEG;AACH,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,UAAU,CAAC,GAAY;IACnD,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AAC/B,CAAC;AAED,UAAU,CAAC,WAAW,GAAG,4BAA4B,CAAC;AACtD,UAAU,CAAC,KAAK,GAAG;;;;;;CAMlB,CAAC"}
|
package/lib/cli/server.js
CHANGED
|
@@ -35,7 +35,7 @@ export default async function serverCommand(app, args) {
|
|
|
35
35
|
EVENTS.forEach(signal => process.on(signal, listener));
|
|
36
36
|
await server.start();
|
|
37
37
|
}
|
|
38
|
-
serverCommand.description = 'Start application with HTTP server';
|
|
38
|
+
serverCommand.description = 'Start application with HTTP and WebSocket server';
|
|
39
39
|
serverCommand.usage = `Usage: APPLICATION server [OPTIONS]
|
|
40
40
|
|
|
41
41
|
node index.js server
|
package/lib/cli/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/cli/server.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,MAAM,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AAEhD;;GAEG;AACH,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,aAAa,CAAC,GAAY,EAAE,IAAc;IACtE,MAAM,MAAM,GAAG,IAAI,CACjB;QACE,OAAO,EAAE,OAAO;QAChB,iBAAiB,EAAE,MAAM;QACzB,oBAAoB,EAAE,MAAM;QAC5B,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;QACvB,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,MAAM;QAChB,iBAAiB,EAAE,MAAM;QACzB,OAAO,EAAE,MAAM;KAChB,EACD,EAAC,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,EAAC,EAC5F,IAAI,EACJ,CAAC,CACF,CAAC;IAEF,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;QAAE,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAE7D,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE;QAC7B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,cAAc,EAAE,MAAM,CAAC,iBAAiB,CAAC;QACzC,gBAAgB,EAAE,MAAM,CAAC,oBAAoB,CAAC;QAC9C,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,oBAAoB,EAAE,MAAM,CAAC,QAAQ;QACrC,cAAc,EAAE,MAAM,CAAC,iBAAiB,CAAC;QACzC,YAAY,EAAE,MAAM,CAAC,KAAK;QAC1B,OAAO,EAAE,MAAM,CAAC,OAAO;KACxB,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,GAAS,EAAE;QAC1B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACnE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC;IACF,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEvD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;AACvB,CAAC;AAED,aAAa,CAAC,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/cli/server.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,MAAM,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AAEhD;;GAEG;AACH,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,aAAa,CAAC,GAAY,EAAE,IAAc;IACtE,MAAM,MAAM,GAAG,IAAI,CACjB;QACE,OAAO,EAAE,OAAO;QAChB,iBAAiB,EAAE,MAAM;QACzB,oBAAoB,EAAE,MAAM;QAC5B,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;QACvB,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,MAAM;QAChB,iBAAiB,EAAE,MAAM;QACzB,OAAO,EAAE,MAAM;KAChB,EACD,EAAC,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,EAAC,EAC5F,IAAI,EACJ,CAAC,CACF,CAAC;IAEF,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;QAAE,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAE7D,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE;QAC7B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,cAAc,EAAE,MAAM,CAAC,iBAAiB,CAAC;QACzC,gBAAgB,EAAE,MAAM,CAAC,oBAAoB,CAAC;QAC9C,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,oBAAoB,EAAE,MAAM,CAAC,QAAQ;QACrC,cAAc,EAAE,MAAM,CAAC,iBAAiB,CAAC;QACzC,YAAY,EAAE,MAAM,CAAC,KAAK;QAC1B,OAAO,EAAE,MAAM,CAAC,OAAO;KACxB,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,GAAS,EAAE;QAC1B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACnE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC;IACF,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEvD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;AACvB,CAAC;AAED,aAAa,CAAC,WAAW,GAAG,kDAAkD,CAAC;AAC/E,aAAa,CAAC,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCrB,CAAC"}
|
package/lib/cli.d.ts
CHANGED
package/lib/cli.js
CHANGED
|
@@ -23,13 +23,26 @@ export class CLI {
|
|
|
23
23
|
addCommand(name, command) {
|
|
24
24
|
this.commands[name] = command;
|
|
25
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* Detect command from environment.
|
|
28
|
+
*/
|
|
29
|
+
detectCommand() {
|
|
30
|
+
const env = process.env;
|
|
31
|
+
if (env.MOJO_NO_DETECT === '1')
|
|
32
|
+
return null;
|
|
33
|
+
// CGI detection
|
|
34
|
+
if (env.PATH_INFO !== undefined || env.GATEWAY_INTERFACE !== undefined)
|
|
35
|
+
return 'cgi';
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
26
38
|
/**
|
|
27
39
|
* Start command line interface.
|
|
28
40
|
*/
|
|
29
41
|
async start(command, ...args) {
|
|
30
42
|
if (this._loaded === undefined)
|
|
31
43
|
await this._loadCommands();
|
|
32
|
-
const
|
|
44
|
+
const detected = this.detectCommand();
|
|
45
|
+
const commandArgs = detected !== null ? ['', '', detected] : command === undefined ? process.argv : ['', '', command, ...args];
|
|
33
46
|
const app = this._app.deref();
|
|
34
47
|
if (app === undefined)
|
|
35
48
|
return;
|
package/lib/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,IAAI,MAAM,cAAc,CAAC;AAChC,OAAO,IAAI,MAAM,MAAM,CAAC;AAQxB;;GAEG;AACH,MAAM,OAAO,GAAG;IAad,YAAY,GAAQ;QAZpB;;WAEG;QACH,iBAAY,GAAa,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxE;;WAEG;QACH,aAAQ,GAA4B,EAAE,CAAC;QAGvC,YAAO,GAAwB,SAAS,CAAC;QAGvC,IAAI,CAAC,IAAI,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,IAAY,EAAE,OAAgB;QACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,OAAgB,EAAE,GAAG,IAAc;QAC7C,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAE3D,MAAM,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/lib/headers.d.ts
CHANGED
package/lib/headers.js
CHANGED
|
@@ -73,6 +73,21 @@ export class Headers {
|
|
|
73
73
|
}
|
|
74
74
|
return object;
|
|
75
75
|
}
|
|
76
|
+
/**
|
|
77
|
+
* Convert headers to string.
|
|
78
|
+
*/
|
|
79
|
+
toString() {
|
|
80
|
+
const lines = [];
|
|
81
|
+
const headers = this._getHeaders();
|
|
82
|
+
const normalCase = this._normalCase;
|
|
83
|
+
for (const [name, values] of Object.entries(headers)) {
|
|
84
|
+
const normal = normalCase[name];
|
|
85
|
+
for (const value of values) {
|
|
86
|
+
lines.push(`${normal}: ${value}\r\n`);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return lines.join('') + '\r\n';
|
|
90
|
+
}
|
|
76
91
|
_getHeaders() {
|
|
77
92
|
if (this._headers === undefined) {
|
|
78
93
|
const headers = (this._headers = {});
|
package/lib/headers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headers.js","sourceRoot":"","sources":["../src/headers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,OAAO;IAKlB,YAAY,OAAiB,EAAE;QAF/B,gBAAW,GAA2B,EAAE,CAAC;QAGvC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,IAAY,EAAE,KAAa;QAChC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACnC,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAEnE,IAAI,SAAS,KAAK,YAAY,EAAE;YAC9B,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAChC;aAAM;YACL,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SAClE;IACH,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,IAAY;QACd,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QACtD,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACtC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,IAAY;QACjB,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAC5D,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,IAAY,EAAE,KAAa;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,SAAS;YAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;QAClF,IAAI,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,OAAO;QACL,MAAM,KAAK,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"headers.js","sourceRoot":"","sources":["../src/headers.ts"],"names":[],"mappings":"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"}
|
package/lib/logger.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
2
3
|
import type { JSONValue } from './types.js';
|
|
3
4
|
import type { WriteStream } from 'fs';
|
|
4
5
|
interface LogContext {
|
|
@@ -27,7 +28,8 @@ export declare class Logger {
|
|
|
27
28
|
* The last few logged messages.
|
|
28
29
|
*/
|
|
29
30
|
history: LogEvent[];
|
|
30
|
-
|
|
31
|
+
_capture: CapturedLogs | undefined;
|
|
32
|
+
_historySize: number | undefined;
|
|
31
33
|
_level: number;
|
|
32
34
|
constructor(options?: {
|
|
33
35
|
destination?: WriteStream;
|
|
@@ -35,6 +37,10 @@ export declare class Logger {
|
|
|
35
37
|
historySize?: number;
|
|
36
38
|
level?: string;
|
|
37
39
|
});
|
|
40
|
+
/**
|
|
41
|
+
* Capture log messages for as long as the returned object has not been stopped, useful for testing log messages.
|
|
42
|
+
*/
|
|
43
|
+
capture(level?: string): CapturedLogs;
|
|
38
44
|
/**
|
|
39
45
|
* Create a child logger that will include context information with every log message.
|
|
40
46
|
*/
|
|
@@ -86,6 +92,22 @@ export declare class Logger {
|
|
|
86
92
|
warn(msg: string, context?: LogContext): void;
|
|
87
93
|
_log(level: string, msg: string, context?: LogContext): void;
|
|
88
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* Captured log message class.
|
|
97
|
+
*/
|
|
98
|
+
declare class CapturedLogs extends Array<string> {
|
|
99
|
+
_cb: () => void;
|
|
100
|
+
_stopped: boolean;
|
|
101
|
+
constructor(cb: () => void);
|
|
102
|
+
/**
|
|
103
|
+
* Stop capturing log messages.
|
|
104
|
+
*/
|
|
105
|
+
stop(): void;
|
|
106
|
+
/**
|
|
107
|
+
* Turn log messages into a string.
|
|
108
|
+
*/
|
|
109
|
+
toString(): string;
|
|
110
|
+
}
|
|
89
111
|
/**
|
|
90
112
|
* Child logger class.
|
|
91
113
|
*/
|
package/lib/logger.js
CHANGED
|
@@ -17,11 +17,26 @@ export class Logger {
|
|
|
17
17
|
* The last few logged messages.
|
|
18
18
|
*/
|
|
19
19
|
this.history = [];
|
|
20
|
+
this._capture = undefined;
|
|
20
21
|
this._level = 7;
|
|
21
22
|
this.destination = options.destination ?? process.stderr;
|
|
22
23
|
this.formatter = options.formatter ?? Logger.colorFormatter;
|
|
23
24
|
this.level = process.env.MOJO_LOG_LEVEL ?? options.level ?? 'trace';
|
|
24
|
-
this._historySize = options.historySize
|
|
25
|
+
this._historySize = options.historySize;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Capture log messages for as long as the returned object has not been stopped, useful for testing log messages.
|
|
29
|
+
*/
|
|
30
|
+
capture(level = this.level) {
|
|
31
|
+
if (this._capture !== undefined)
|
|
32
|
+
throw new Error('Log messages are already being captured');
|
|
33
|
+
const original = this.level;
|
|
34
|
+
this.level = level;
|
|
35
|
+
this._capture = new CapturedLogs(() => {
|
|
36
|
+
this.level = original;
|
|
37
|
+
this._capture = undefined;
|
|
38
|
+
});
|
|
39
|
+
return this._capture;
|
|
25
40
|
}
|
|
26
41
|
/**
|
|
27
42
|
* Create a child logger that will include context information with every log message.
|
|
@@ -116,18 +131,46 @@ export class Logger {
|
|
|
116
131
|
}
|
|
117
132
|
_log(level, msg, context) {
|
|
118
133
|
const data = { ...context, time: new Date().toISOString(), msg, level };
|
|
119
|
-
if (this._historySize
|
|
120
|
-
this.destination.write(this.formatter(data));
|
|
121
|
-
}
|
|
122
|
-
else {
|
|
134
|
+
if (this._historySize !== undefined) {
|
|
123
135
|
const history = this.history;
|
|
124
|
-
const historySize = this._historySize;
|
|
125
136
|
history.push(data);
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
137
|
+
const maxHistorySize = this._historySize;
|
|
138
|
+
const historySize = history.length;
|
|
139
|
+
if (historySize > maxHistorySize)
|
|
140
|
+
history.splice(0, historySize - maxHistorySize);
|
|
130
141
|
}
|
|
142
|
+
const formatted = this.formatter(data);
|
|
143
|
+
if (this._capture === undefined) {
|
|
144
|
+
this.destination.write(formatted);
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
this._capture.push(formatted);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Captured log message class.
|
|
153
|
+
*/
|
|
154
|
+
class CapturedLogs extends Array {
|
|
155
|
+
constructor(cb) {
|
|
156
|
+
super();
|
|
157
|
+
this._stopped = false;
|
|
158
|
+
this._cb = cb;
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Stop capturing log messages.
|
|
162
|
+
*/
|
|
163
|
+
stop() {
|
|
164
|
+
if (this._stopped === true)
|
|
165
|
+
return;
|
|
166
|
+
this._cb();
|
|
167
|
+
this._stopped = true;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Turn log messages into a string.
|
|
171
|
+
*/
|
|
172
|
+
toString() {
|
|
173
|
+
return this.join('');
|
|
131
174
|
}
|
|
132
175
|
}
|
|
133
176
|
/**
|
package/lib/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAEA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,MAAM,KAAK,GAA2B;IACpC,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;CACT,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,MAAM;
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"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"}
|
package/lib/server/response.d.ts
CHANGED
package/lib/server.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
/// <reference types="node" />
|
|
4
|
+
/// <reference types="node" />
|
|
5
|
+
/// <reference types="node" />
|
|
6
|
+
import type { MojoApp, ServerOptions } from './types.js';
|
|
4
7
|
import type { Socket } from 'net';
|
|
5
8
|
import http from 'http';
|
|
6
9
|
import https from 'https';
|
|
@@ -9,13 +12,13 @@ import { ServerRequest } from './server/request.js';
|
|
|
9
12
|
import { WebSocketServer } from 'ws';
|
|
10
13
|
declare type ListenArgs = any[];
|
|
11
14
|
/**
|
|
12
|
-
*
|
|
15
|
+
* HTTP and WebSocket server class.
|
|
13
16
|
*/
|
|
14
17
|
export declare class Server {
|
|
15
18
|
/**
|
|
16
19
|
* Application this server handles.
|
|
17
20
|
*/
|
|
18
|
-
app:
|
|
21
|
+
app: MojoApp;
|
|
19
22
|
/**
|
|
20
23
|
* Limit the amount of time the parser will wait to receive the complete HTTP headers, defaults to `60000`
|
|
21
24
|
* (60 seconds).
|
|
@@ -47,7 +50,7 @@ export declare class Server {
|
|
|
47
50
|
_servers: Array<http.Server | https.Server>;
|
|
48
51
|
_quiet: boolean;
|
|
49
52
|
_workers: number;
|
|
50
|
-
constructor(app:
|
|
53
|
+
constructor(app: MojoApp, options?: ServerOptions);
|
|
51
54
|
/**
|
|
52
55
|
* Turn URL into listen arguments.
|
|
53
56
|
*/
|
package/lib/server.js
CHANGED
|
@@ -10,8 +10,16 @@ import { termEscape } from './util.js';
|
|
|
10
10
|
import { WebSocket } from './websocket.js';
|
|
11
11
|
import Path from '@mojojs/path';
|
|
12
12
|
import { WebSocketServer } from 'ws';
|
|
13
|
+
/*
|
|
14
|
+
To regenerate the certificate run this command:
|
|
15
|
+
openssl req -x509 -newkey rsa:4096 -nodes -sha256 -out development.crt -keyout development.key -days 7300
|
|
16
|
+
-subj '/CN=localhost'
|
|
17
|
+
*/
|
|
18
|
+
const certs = Path.currentFile().dirname().sibling('vendor', 'certs');
|
|
19
|
+
const devCert = certs.child('development.crt').toString();
|
|
20
|
+
const devKey = certs.child('development.key').toString();
|
|
13
21
|
/**
|
|
14
|
-
*
|
|
22
|
+
* HTTP and WebSocket server class.
|
|
15
23
|
*/
|
|
16
24
|
export class Server {
|
|
17
25
|
constructor(app, options = {}) {
|
|
@@ -81,8 +89,8 @@ export class Server {
|
|
|
81
89
|
const options = {};
|
|
82
90
|
if (url.protocol === 'https:') {
|
|
83
91
|
const params = url.searchParams;
|
|
84
|
-
options.cert = await new Path(params.get('cert') ??
|
|
85
|
-
options.key = await new Path(params.get('key') ??
|
|
92
|
+
options.cert = await new Path(params.get('cert') ?? devCert).readFile();
|
|
93
|
+
options.key = await new Path(params.get('key') ?? devKey).readFile();
|
|
86
94
|
isHttps = true;
|
|
87
95
|
}
|
|
88
96
|
await this.app.warmup();
|
|
@@ -132,7 +140,7 @@ export class Server {
|
|
|
132
140
|
_handleRequest(req, raw) {
|
|
133
141
|
const app = this.app;
|
|
134
142
|
const socket = req.socket;
|
|
135
|
-
const ctx = app.newContext(this._prepareRequest(req, socket, false), new ServerResponse(
|
|
143
|
+
const ctx = app.newContext(this._prepareRequest(req, socket, false), new ServerResponse((res, body) => {
|
|
136
144
|
_sendResponse(res, body, raw);
|
|
137
145
|
}));
|
|
138
146
|
raw.on('finish', () => ctx.emit('finish'));
|
|
@@ -140,7 +148,7 @@ export class Server {
|
|
|
140
148
|
}
|
|
141
149
|
_handleUpgrade(wss, req, socket, head) {
|
|
142
150
|
const app = this.app;
|
|
143
|
-
const ctx = app.newContext(this._prepareRequest(req, socket, true), new ServerResponse(
|
|
151
|
+
const ctx = app.newContext(this._prepareRequest(req, socket, true), new ServerResponse((res, body) => {
|
|
144
152
|
_sendResponse(res, body, new http.ServerResponse(req));
|
|
145
153
|
}));
|
|
146
154
|
app
|
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/lib/types.d.ts
CHANGED
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
/// <reference types="node" />
|
|
4
|
+
/// <reference types="node" />
|
|
5
|
+
/// <reference types="node" />
|
|
2
6
|
/// <reference types="tap" />
|
|
3
7
|
import type { App } from './app.js';
|
|
4
8
|
import type { Context } from './context.js';
|
|
5
9
|
import type { ValidatorResult } from './validator/result.js';
|
|
6
10
|
import type { Agent } from 'http';
|
|
7
11
|
import type { Readable } from 'stream';
|
|
12
|
+
import type { Stream } from 'stream';
|
|
8
13
|
import type { CookieJar } from 'tough-cookie';
|
|
9
14
|
import type { URL } from 'url';
|
|
10
15
|
export declare type Expand<T> = T extends infer O ? {
|
|
@@ -94,6 +99,7 @@ export interface ServerRequestOptions {
|
|
|
94
99
|
reverseProxy: boolean;
|
|
95
100
|
url?: string;
|
|
96
101
|
}
|
|
102
|
+
export declare type ServerResponseBody = string | Buffer | Stream | undefined;
|
|
97
103
|
export interface UserAgentOptions {
|
|
98
104
|
baseURL?: string | URL;
|
|
99
105
|
cookieJar?: CookieJar;
|
package/lib/user-agent/mock.d.ts
CHANGED
|
@@ -18,7 +18,9 @@ export declare class MockUserAgent extends UserAgent {
|
|
|
18
18
|
/**
|
|
19
19
|
* Start mock server.
|
|
20
20
|
*/
|
|
21
|
-
start(app: App, options?: ServerOptions
|
|
21
|
+
start(app: App, options?: ServerOptions & {
|
|
22
|
+
https?: boolean;
|
|
23
|
+
}): Promise<this>;
|
|
22
24
|
/**
|
|
23
25
|
* Stop mock server.
|
|
24
26
|
*/
|
package/lib/user-agent/mock.js
CHANGED
|
@@ -22,7 +22,8 @@ export class MockUserAgent extends UserAgent {
|
|
|
22
22
|
* Start mock server.
|
|
23
23
|
*/
|
|
24
24
|
async start(app, options = {}) {
|
|
25
|
-
const
|
|
25
|
+
const listen = [options.https === true ? 'https://*' : 'http://*'];
|
|
26
|
+
const server = (this.server = new Server(app, { ...options, listen, quiet: true }));
|
|
26
27
|
await server.start();
|
|
27
28
|
if (this.baseURL === undefined)
|
|
28
29
|
this.baseURL = server.urls[0];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock.js","sourceRoot":"","sources":["../../src/user-agent/mock.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAE3C;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,SAAS;IAM1C,YAAY,OAA0B;QACpC,KAAK,CAAC,OAAO,CAAC,CAAC;QANjB;;WAEG;QACH,WAAM,GAAuB,SAAS,CAAC;QAKrC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAC3B,GAAQ,EACR,OAA0B,EAC1B,aAA6B;QAE7B,OAAO,MAAM,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,GAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"mock.js","sourceRoot":"","sources":["../../src/user-agent/mock.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAE3C;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,SAAS;IAM1C,YAAY,OAA0B;QACpC,KAAK,CAAC,OAAO,CAAC,CAAC;QANjB;;WAEG;QACH,WAAM,GAAuB,SAAS,CAAC;QAKrC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAC3B,GAAQ,EACR,OAA0B,EAC1B,aAA6B;QAE7B,OAAO,MAAM,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,GAAQ,EAAE,UAA6C,EAAE;QACnE,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE,EAAC,GAAG,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;QAClF,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO;QACtC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;CACF"}
|
package/lib/user-agent/test.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
2
3
|
/// <reference types="tap" />
|
|
4
|
+
/// <reference types="node" />
|
|
3
5
|
import type { App } from '../app.js';
|
|
4
6
|
import type { JSONValue, ServerOptions, TestUserAgentOptions, UserAgentRequestOptions, UserAgentWebSocketOptions } from '../types.js';
|
|
5
7
|
import type { WebSocket } from '../websocket.js';
|
package/lib/user-agent.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
2
3
|
import type { UserAgentOptions, UserAgentRequestOptions, UserAgentWebSocketOptions } from './types.js';
|
|
3
4
|
import type { UserAgentResponse } from './user-agent/response.js';
|
|
4
5
|
import type { WebSocket } from './websocket.js';
|
package/lib/util.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
/// <reference types="node" />
|
|
2
4
|
import type { JSONValue } from './types.js';
|
|
3
5
|
import type { Mode } from 'fs';
|
|
4
6
|
import { setTimeout } from 'timers/promises';
|
|
@@ -15,6 +17,7 @@ declare type FixOptions = {
|
|
|
15
17
|
scripts?: Record<string, string>;
|
|
16
18
|
version?: string;
|
|
17
19
|
};
|
|
20
|
+
export declare const httpStatusMessages: Record<number, string>;
|
|
18
21
|
/**
|
|
19
22
|
* Capture STDOUT/STDERR output.
|
|
20
23
|
*/
|
package/lib/util.js
CHANGED
|
@@ -3,6 +3,72 @@ import Path from '@mojojs/path';
|
|
|
3
3
|
import Template from '@mojojs/template';
|
|
4
4
|
import chalk from 'chalk';
|
|
5
5
|
export { SafeString } from '@mojojs/template';
|
|
6
|
+
// Unmarked codes are from RFC 7231
|
|
7
|
+
export const httpStatusMessages = {
|
|
8
|
+
100: 'Continue',
|
|
9
|
+
101: 'Switching Protocols',
|
|
10
|
+
102: 'Processing',
|
|
11
|
+
103: 'Early Hints',
|
|
12
|
+
200: 'OK',
|
|
13
|
+
201: 'Created',
|
|
14
|
+
202: 'Accepted',
|
|
15
|
+
203: 'Non-Authoritative Information',
|
|
16
|
+
204: 'No Content',
|
|
17
|
+
205: 'Reset Content',
|
|
18
|
+
206: 'Partial Content',
|
|
19
|
+
207: 'Multi-Status',
|
|
20
|
+
208: 'Already Reported',
|
|
21
|
+
226: 'IM Used',
|
|
22
|
+
300: 'Multiple Choices',
|
|
23
|
+
301: 'Moved Permanently',
|
|
24
|
+
302: 'Found',
|
|
25
|
+
303: 'See Other',
|
|
26
|
+
304: 'Not Modified',
|
|
27
|
+
305: 'Use Proxy',
|
|
28
|
+
307: 'Temporary Redirect',
|
|
29
|
+
308: 'Permanent Redirect',
|
|
30
|
+
400: 'Bad Request',
|
|
31
|
+
401: 'Unauthorized',
|
|
32
|
+
402: 'Payment Required',
|
|
33
|
+
403: 'Forbidden',
|
|
34
|
+
404: 'Not Found',
|
|
35
|
+
405: 'Method Not Allowed',
|
|
36
|
+
406: 'Not Acceptable',
|
|
37
|
+
407: 'Proxy Authentication Required',
|
|
38
|
+
408: 'Request Timeout',
|
|
39
|
+
409: 'Conflict',
|
|
40
|
+
410: 'Gone',
|
|
41
|
+
411: 'Length Required',
|
|
42
|
+
412: 'Precondition Failed',
|
|
43
|
+
413: 'Request Entity Too Large',
|
|
44
|
+
414: 'Request-URI Too Long',
|
|
45
|
+
415: 'Unsupported Media Type',
|
|
46
|
+
416: 'Request Range Not Satisfiable',
|
|
47
|
+
417: 'Expectation Failed',
|
|
48
|
+
418: "I'm a teapot",
|
|
49
|
+
421: 'Misdirected Request',
|
|
50
|
+
422: 'Unprocessable Entity',
|
|
51
|
+
423: 'Locked',
|
|
52
|
+
424: 'Failed Dependency',
|
|
53
|
+
425: 'Too Early',
|
|
54
|
+
426: 'Upgrade Required',
|
|
55
|
+
428: 'Precondition Required',
|
|
56
|
+
429: 'Too Many Requests',
|
|
57
|
+
431: 'Request Header Fields Too Large',
|
|
58
|
+
451: 'Unavailable For Legal Reasons',
|
|
59
|
+
500: 'Internal Server Error',
|
|
60
|
+
501: 'Not Implemented',
|
|
61
|
+
502: 'Bad Gateway',
|
|
62
|
+
503: 'Service Unavailable',
|
|
63
|
+
504: 'Gateway Timeout',
|
|
64
|
+
505: 'HTTP Version Not Supported',
|
|
65
|
+
506: 'Variant Also Negotiates',
|
|
66
|
+
507: 'Insufficient Storage',
|
|
67
|
+
508: 'Loop Detected',
|
|
68
|
+
509: 'Bandwidth Limit Exceeded',
|
|
69
|
+
510: 'Not Extended',
|
|
70
|
+
511: 'Network Authentication Required' // RFC 6585
|
|
71
|
+
};
|
|
6
72
|
/**
|
|
7
73
|
* Capture STDOUT/STDERR output.
|
|
8
74
|
*/
|
|
@@ -15,14 +81,14 @@ export async function captureOutput(fn, options = {}) {
|
|
|
15
81
|
const stdoutWrite = stdout.write;
|
|
16
82
|
const stderrWrite = stderr.write;
|
|
17
83
|
if (options.stdout === true) {
|
|
18
|
-
stdout.write = (
|
|
19
|
-
output.push(
|
|
84
|
+
stdout.write = (buffer) => {
|
|
85
|
+
output.push(buffer);
|
|
20
86
|
return true;
|
|
21
87
|
};
|
|
22
88
|
}
|
|
23
89
|
if (options.stderr === true) {
|
|
24
|
-
stderr.write = (
|
|
25
|
-
output.push(
|
|
90
|
+
stderr.write = (buffer) => {
|
|
91
|
+
output.push(buffer);
|
|
26
92
|
return true;
|
|
27
93
|
};
|
|
28
94
|
}
|
package/lib/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAC3C,OAAO,IAAI,MAAM,cAAc,CAAC;AAChC,OAAO,QAAQ,MAAM,kBAAkB,CAAC;AACxC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAe5C;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,EAA8B,EAC9B,UAAgD,EAAE;IAElD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAExD,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;IACjC,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;IAEjC,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,EAAE;QAC3B,MAAM,CAAC,KAAK,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
|
package/lib/websocket.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
-----BEGIN CERTIFICATE-----
|
|
2
|
+
MIIEpDCCAowCCQDeF+AckZXPpzANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDDAls
|
|
3
|
+
b2NhbGhvc3QwHhcNMjIwNTI1MTg0MzU0WhcNNDIwNTIwMTg0MzU0WjAUMRIwEAYD
|
|
4
|
+
VQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCl
|
|
5
|
+
fLiPEGhT/StHvJkX2RAHIacb2x4KpRpYoUGTDoyaS7oR1QM1iy1plEu6dGCnNa1O
|
|
6
|
+
QEDQ769O6f3h+IKrd36kCSDKJpfVYG58HHS3ZHVDvr46PihAq1b6s5u7bWSusuCn
|
|
7
|
+
DxEkTq09mT7flYB3r1v2R8MBdvuc4mi9VLpJXrvEUnOM3YWfBPfcatIVQMBOGHjJ
|
|
8
|
+
9Xe33xFQ07csaRGi8gQ3nynJ1ANbpNoY0uaoAmnoM5se3k1mKw4gahY1q54sAa+S
|
|
9
|
+
4Woi5g+Emzwh3vbH+33s7Vgec+gClm7nkE0i40FOtk0lqz6Qr3gvSyCHrpr+31xI
|
|
10
|
+
Uba+pOCpb77Mms/dr/ZA10Q3nLwE8Bq7A+K1s/i8+DykL3rKlCNLFPwtJYOAqnj+
|
|
11
|
+
qpPD6LXrZcZBGkBpthrn5ksHw2B96V7aO9G+TWfLVP+fJGwC719U/jzGScxn3fTx
|
|
12
|
+
099kCXwC9rEoY/duN+pRfdYlRJUs2pvIXKK3seRrOVdgHsvE3k++TpFZ9mcdZhvO
|
|
13
|
+
JoQSyGRcFaBerp4x9p5aHzqXJ2GGHdBkqHsN+0cRcuWXp2NNFH8cyp0EBpgKwQh3
|
|
14
|
+
JoF6mAprtyDaZSYaHMmQhncIDILfynvuj92fuYs/icU0PhAT8YNJgxKgUQ/qVdXN
|
|
15
|
+
MR1mDIzNZfyZmTArLZhBEvg1WvqA+W1diOaS2nPhIQIDAQABMA0GCSqGSIb3DQEB
|
|
16
|
+
CwUAA4ICAQABbiGBg4KyJafGxHDJKotZ9GgecqJOPUE76dseXWOVEqB+3JFuG2AR
|
|
17
|
+
Y4PfP175VuwpNwHBuMwm84Pg0F05RcRowC74/eKcWBPdQCSmsTI7e3oD7Gl/ZCqr
|
|
18
|
+
67IFQSIJeoQVhPFucQEbLqr+yGMDoR2htGZkFsTd+NQlpXn0j/KFE3bV5tJE8cxP
|
|
19
|
+
098Exdrww4xcJRrBPdlSRK/EGCXb2WH4n4pu3qiLOCZXO+n21S6CFGTZZEPLuQS0
|
|
20
|
+
8zANEdajDNBM802I6OG3dIoZzk81oSxf9rO4dFZiyj/sag+vkSNyo/CKDO2BYaj6
|
|
21
|
+
6j2LTJX0mOeRRjJvQPTc9Hn2WHL3shMoFCX+ebYEoXEHzrktXAvSRGlFkquK/vtG
|
|
22
|
+
iCC0skOihKXVjM4nPtvoDYWPpY357Urc5169B28ImC2wWynUevwrRR4DXiL6AIXV
|
|
23
|
+
nwI9S4u52uo7J5fDic9ZCZu11TJqK7ronZHULWmFDStL397BEJkSZI+7YFklmBz3
|
|
24
|
+
TJAapw1Z2OPUlNjAeINgAAG0PUxySRucIJ73Rm4mStkKrOzru5cgonq7xJYp3NzE
|
|
25
|
+
X5yCeJFdYBZrlHT1A19pJhdkMe4emTBQK6RYsLQCgiuWMMQih/3Uolpyf2IPaSR8
|
|
26
|
+
iu1VpciipBhDgbBmJ0ufZlBHamFmZdv7UXEAp7xubZ+7a1zhsYS/UA==
|
|
27
|
+
-----END CERTIFICATE-----
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
-----BEGIN PRIVATE KEY-----
|
|
2
|
+
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
|
|
51
|
+
8NMC/h4np5hOmslud/7X5EXe+ZSVJUU=
|
|
52
|
+
-----END PRIVATE KEY-----
|