vortez 5.0.0-dev.18 → 5.0.0-dev.19
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/.gitignore +9 -4
- package/README.md +681 -176
- package/build/Vortez.d.ts +1 -0
- package/build/Vortez.js +1 -0
- package/build/Vortez.js.map +1 -1
- package/build/server/Response.d.ts +1 -1
- package/build/server/Response.js +1 -1
- package/build/server/Response.js.map +1 -1
- package/build/server/Server.d.ts +4 -4
- package/build/server/Server.js +5 -5
- package/build/server/Server.js.map +1 -1
- package/build/server/ServerDebug.d.ts +10 -1
- package/build/server/ServerDebug.js +85 -17
- package/build/server/ServerDebug.js.map +1 -1
- package/build/server/config/Config.d.ts +274 -47
- package/build/server/config/Config.js +68 -47
- package/build/server/config/Config.js.map +1 -1
- package/build/server/config/{ConfigLoader.d.ts → Loader.d.ts} +4 -5
- package/build/server/config/{ConfigLoader.js → Loader.js} +7 -10
- package/build/server/config/Loader.js.map +1 -0
- package/build/server/router/Router.d.ts +87 -30
- package/build/server/router/Router.js +110 -48
- package/build/server/router/Router.js.map +1 -1
- package/build/server/router/algorithm/Algorithm.d.ts +39 -0
- package/build/server/router/algorithm/Algorithm.js +20 -0
- package/build/server/router/algorithm/Algorithm.js.map +1 -0
- package/build/server/router/algorithm/FIFO.d.ts +15 -0
- package/build/server/router/algorithm/FIFO.js +24 -0
- package/build/server/router/algorithm/FIFO.js.map +1 -0
- package/build/server/router/algorithm/Tree.d.ts +38 -0
- package/build/server/router/algorithm/Tree.js +126 -0
- package/build/server/router/algorithm/Tree.js.map +1 -0
- package/build/server/router/middleware/WsMiddleware.js +1 -1
- package/build/server/router/middleware/WsMiddleware.js.map +1 -1
- package/build/utilities/Flatten.d.ts +56 -0
- package/build/utilities/Flatten.js +59 -0
- package/build/utilities/Flatten.js.map +1 -0
- package/build/utilities/Utilities.d.ts +7 -58
- package/build/utilities/Utilities.js +8 -33
- package/build/utilities/Utilities.js.map +1 -1
- package/build/utilities/schema/Introspection.d.ts +24 -0
- package/build/utilities/schema/Introspection.js +87 -0
- package/build/utilities/schema/Introspection.js.map +1 -0
- package/build/utilities/schema/JSONSchema.d.ts +68 -0
- package/build/utilities/schema/JSONSchema.js +13 -0
- package/build/utilities/schema/JSONSchema.js.map +1 -0
- package/build/utilities/schema/Schema.d.ts +253 -0
- package/build/utilities/schema/Schema.js +241 -0
- package/build/utilities/schema/Schema.js.map +1 -0
- package/build/utilities/schema/SchemaError.d.ts +10 -0
- package/build/utilities/schema/SchemaError.js +13 -0
- package/build/utilities/schema/SchemaError.js.map +1 -0
- package/build/utilities/schema/Validator.d.ts +94 -0
- package/build/utilities/schema/Validator.js +246 -0
- package/build/utilities/schema/Validator.js.map +1 -0
- package/package.json +1 -1
- package/tests/config/config.js +233 -0
- package/tests/router.js +596 -0
- package/tests/schema/schema.js +368 -0
- package/tests/test.env +0 -0
- package/tests/test.js +3 -3
- package/build/server/config/ConfigLoader.js.map +0 -1
- package/build/server/config/ConfigValidator.d.ts +0 -71
- package/build/server/config/ConfigValidator.js +0 -131
- package/build/server/config/ConfigValidator.js.map +0 -1
- package/examples/in-docs.js +0 -96
package/build/Vortez.d.ts
CHANGED
|
@@ -10,4 +10,5 @@ export { Utilities } from "./utilities/Utilities.js";
|
|
|
10
10
|
export * as Beta from "./beta/Beta.js";
|
|
11
11
|
export { ServerError } from "./server/ServerError.js";
|
|
12
12
|
export { Router } from "./server/router/Router.js";
|
|
13
|
+
export { Config } from "./server/config/Config.js";
|
|
13
14
|
export { Server as default, Server as Vortez } from "./server/Server.js";
|
package/build/Vortez.js
CHANGED
|
@@ -10,5 +10,6 @@ export { Utilities } from "./utilities/Utilities.js";
|
|
|
10
10
|
export * as Beta from "./beta/Beta.js";
|
|
11
11
|
export { ServerError } from "./server/ServerError.js";
|
|
12
12
|
export { Router } from "./server/router/Router.js";
|
|
13
|
+
export { Config } from "./server/config/Config.js";
|
|
13
14
|
export { Server as default, Server as Vortez } from "./server/Server.js";
|
|
14
15
|
//# sourceMappingURL=Vortez.js.map
|
package/build/Vortez.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Vortez.js","sourceRoot":"","sources":["../src/Vortez.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"Vortez.js","sourceRoot":"","sources":["../src/Vortez.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -21,7 +21,7 @@ export declare class Response {
|
|
|
21
21
|
* @param httpResponse - The response to be sent by the server.
|
|
22
22
|
* @param templates - The list of server response templates.
|
|
23
23
|
*/
|
|
24
|
-
constructor(request: Request, httpResponse: HTTP.ServerResponse, templates
|
|
24
|
+
constructor(request: Request, httpResponse: HTTP.ServerResponse, templates: Config['data']['templates']);
|
|
25
25
|
/** Checks if the response has been sent. */
|
|
26
26
|
get isSended(): boolean;
|
|
27
27
|
/**
|
package/build/server/Response.js
CHANGED
|
@@ -23,7 +23,7 @@ export class Response {
|
|
|
23
23
|
* @param httpResponse - The response to be sent by the server.
|
|
24
24
|
* @param templates - The list of server response templates.
|
|
25
25
|
*/
|
|
26
|
-
constructor(request, httpResponse, templates
|
|
26
|
+
constructor(request, httpResponse, templates) {
|
|
27
27
|
this.request = request;
|
|
28
28
|
this.templates = templates;
|
|
29
29
|
this.httpResponse = httpResponse;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Response.js","sourceRoot":"","sources":["../../src/server/Response.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAClD,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAGtC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;AAElD,MAAM,OAAO,QAAQ;IACpB,mDAAmD;IAC5C,OAAO,CAAU;IACxB,sDAAsD;IAC9C,SAAS,
|
|
1
|
+
{"version":3,"file":"Response.js","sourceRoot":"","sources":["../../src/server/Response.ts"],"names":[],"mappings":"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"}
|
package/build/server/Server.d.ts
CHANGED
|
@@ -36,7 +36,7 @@ export declare class Server {
|
|
|
36
36
|
* @param host - The host the server will bind to.
|
|
37
37
|
* @param sslOptions - The SSL configuration.
|
|
38
38
|
*/
|
|
39
|
-
constructor(
|
|
39
|
+
constructor(config?: Server.Config | Server.Config.toProcess);
|
|
40
40
|
/**
|
|
41
41
|
* Starts the server.
|
|
42
42
|
*/
|
|
@@ -76,7 +76,7 @@ export declare class Server {
|
|
|
76
76
|
* @param name - The name of the template.
|
|
77
77
|
* @param path - The path to the `.vhtml` template file.
|
|
78
78
|
*/
|
|
79
|
-
setTemplate(name: keyof Server.Config
|
|
79
|
+
setTemplate(name: keyof Server.Config['data']['templates'], path: string): Server;
|
|
80
80
|
/**
|
|
81
81
|
* Loads the SSL key and certificate and returns their content as strings.
|
|
82
82
|
* @param pathCert Path to the SSL certificate.
|
|
@@ -101,8 +101,8 @@ export declare namespace Server {
|
|
|
101
101
|
key: Buffer | string;
|
|
102
102
|
}
|
|
103
103
|
type SSLOptions = {
|
|
104
|
-
|
|
105
|
-
|
|
104
|
+
cert: string;
|
|
105
|
+
key: string;
|
|
106
106
|
port?: number;
|
|
107
107
|
};
|
|
108
108
|
type Protocol = 'HTTP' | 'HTTPS' | 'HTTP/S';
|
package/build/server/Server.js
CHANGED
|
@@ -41,8 +41,8 @@ export class Server {
|
|
|
41
41
|
* @param host - The host the server will bind to.
|
|
42
42
|
* @param sslOptions - The SSL configuration.
|
|
43
43
|
*/
|
|
44
|
-
constructor(
|
|
45
|
-
this.config =
|
|
44
|
+
constructor(config = {}) {
|
|
45
|
+
this.config = config instanceof Server.Config ? config : new Server.Config(config);
|
|
46
46
|
this.router = new Server.Router(this.config);
|
|
47
47
|
this.HttpServer = null;
|
|
48
48
|
this.HttpsServer = null;
|
|
@@ -54,7 +54,7 @@ export class Server {
|
|
|
54
54
|
* Starts the server.
|
|
55
55
|
*/
|
|
56
56
|
async start() {
|
|
57
|
-
const { port, host, ssl: sslOptions } = this.config;
|
|
57
|
+
const { port, host, ssl: sslOptions } = this.config.data;
|
|
58
58
|
this.protocol = sslOptions ? 'HTTP/S' : 'HTTP';
|
|
59
59
|
logger.info('&C(255,180,220)╭─────────────────────────────────────────────');
|
|
60
60
|
logger.info('&C(255,180,220)│ &C1Vortez by NetFeez');
|
|
@@ -160,7 +160,7 @@ export class Server {
|
|
|
160
160
|
*/
|
|
161
161
|
async initHTTPS(host, sslOptions) {
|
|
162
162
|
const port = sslOptions.port ?? 443;
|
|
163
|
-
const cert = await Server.loadCertificates(sslOptions.
|
|
163
|
+
const cert = await Server.loadCertificates(sslOptions.cert, sslOptions.key);
|
|
164
164
|
const https = HTTPS.createServer(cert);
|
|
165
165
|
https.on('request', this.router.requestManager.bind(this.router));
|
|
166
166
|
https.on('upgrade', this.router.upgradeManager.bind(this.router));
|
|
@@ -172,7 +172,7 @@ export class Server {
|
|
|
172
172
|
* @param path - The path to the `.vhtml` template file.
|
|
173
173
|
*/
|
|
174
174
|
setTemplate(name, path) {
|
|
175
|
-
this.config.templates[name] = path;
|
|
175
|
+
this.config.data.templates[name] = path;
|
|
176
176
|
return this;
|
|
177
177
|
}
|
|
178
178
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Server.js","sourceRoot":"","sources":["../../src/server/Server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAClD,OAAO,cAAc,MAAM,oBAAoB,CAAC;AAChD,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAC5C,OAAO,OAAO,MAAM,oBAAoB,CAAC;AACzC,OAAO,QAAQ,MAAM,cAAc,CAAC;AACpC,OAAO,SAAS,MAAM,eAAe,CAAC;AACtC,OAAO,QAAQ,MAAM,cAAc,CAAC;AACpC,OAAO,OAAO,MAAM,aAAa,CAAC;AAClC,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,OAAO,MAAM,oBAAoB,CAAC;AACzC,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,SAAS,IAAI,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,MAAM,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;AAE5C,MAAM,OAAO,MAAM;IACV,QAAQ,CAAyB;IACjC,UAAU,CAAqB;IAC/B,WAAW,CAAqB;IACjC,MAAM,CAAgB;IACtB,MAAM,CAAgB;IACtB,MAAM,CAAuB;IACpC;;;;;OAKG;IACH,YAAmB,
|
|
1
|
+
{"version":3,"file":"Server.js","sourceRoot":"","sources":["../../src/server/Server.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,8 +10,17 @@ export declare class ServerDebug extends DebugUI {
|
|
|
10
10
|
constructor(server: Server);
|
|
11
11
|
/** Prints the server rules to the console. */
|
|
12
12
|
showRules(): void;
|
|
13
|
+
private printTreeRules;
|
|
14
|
+
private addRuleToTree;
|
|
15
|
+
private printTreeNode;
|
|
16
|
+
private formatSegmentLabel;
|
|
13
17
|
/** Prints the server configuration to the console. */
|
|
14
18
|
showConfig(): void;
|
|
15
19
|
}
|
|
16
|
-
export declare namespace ServerDebug {
|
|
20
|
+
export declare namespace ServerDebug {
|
|
21
|
+
interface RouteTreeNode {
|
|
22
|
+
children: Map<string, RouteTreeNode>;
|
|
23
|
+
rules: string[];
|
|
24
|
+
}
|
|
25
|
+
}
|
|
17
26
|
export default ServerDebug;
|
|
@@ -23,6 +23,13 @@ export class ServerDebug extends DebugUI {
|
|
|
23
23
|
this.out.info('&C(255,180,220)╭─────────────────────────────────────────────');
|
|
24
24
|
this.out.info('&C(255,180,220)│ &C2 Rules added to server router');
|
|
25
25
|
this.out.info('&C(255,180,220)├─────────────────────────────────────────────');
|
|
26
|
+
const algorithm = this.server.config.get('routing.algorithm') ?? 'FIFO';
|
|
27
|
+
this.out.info(`&C(255,180,220)│ &C3 algorithm: &C6${algorithm}`);
|
|
28
|
+
if (algorithm === 'Tree') {
|
|
29
|
+
this.printTreeRules();
|
|
30
|
+
this.out.info('&C(255,180,220)╰─────────────────────────────────────────────');
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
26
33
|
for (const rule of this.server.router.httpRules) {
|
|
27
34
|
this.out.info(`&C(255,180,220)│ &C3 http rule: &C2${rule.method.padStart(5, ' ')} &R-> &C6${rule.urlRule}`);
|
|
28
35
|
}
|
|
@@ -31,35 +38,96 @@ export class ServerDebug extends DebugUI {
|
|
|
31
38
|
}
|
|
32
39
|
this.out.info('&C(255,180,220)╰─────────────────────────────────────────────');
|
|
33
40
|
}
|
|
41
|
+
printTreeRules() {
|
|
42
|
+
const root = { children: new Map(), rules: [] };
|
|
43
|
+
for (const rule of this.server.router.httpRules) {
|
|
44
|
+
this.addRuleToTree(root, rule.urlRule, `http ${rule.method}`);
|
|
45
|
+
}
|
|
46
|
+
for (const rule of this.server.router.wsRules) {
|
|
47
|
+
this.addRuleToTree(root, rule.urlRule, 'ws');
|
|
48
|
+
}
|
|
49
|
+
this.out.info('&C(255,180,220)│ &C3 tree nodes:');
|
|
50
|
+
const topEntries = [...root.children.entries()].sort(([a], [b]) => a.localeCompare(b));
|
|
51
|
+
if (!topEntries.length) {
|
|
52
|
+
this.out.info('&C(255,180,220)│ (empty)');
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
for (let index = 0; index < topEntries.length; index++) {
|
|
56
|
+
const [label, node] = topEntries[index];
|
|
57
|
+
const isLast = index === topEntries.length - 1;
|
|
58
|
+
this.printTreeNode(label, node, '', isLast);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
addRuleToTree(root, urlRule, ruleLabel) {
|
|
62
|
+
const segments = urlRule.split('/').filter(Boolean);
|
|
63
|
+
let current = root;
|
|
64
|
+
for (const segment of segments) {
|
|
65
|
+
const label = this.formatSegmentLabel(segment);
|
|
66
|
+
const next = current.children.get(label) ?? { children: new Map(), rules: [] };
|
|
67
|
+
current.children.set(label, next);
|
|
68
|
+
current = next;
|
|
69
|
+
}
|
|
70
|
+
current.rules.push(ruleLabel);
|
|
71
|
+
}
|
|
72
|
+
printTreeNode(label, node, prefix, isLast) {
|
|
73
|
+
const branch = isLast ? '└─ ' : '├─ ';
|
|
74
|
+
this.out.info(`&C(255,180,220)│ ${prefix}${branch}&C6${label}`);
|
|
75
|
+
const nextPrefix = `${prefix}${isLast ? ' ' : '│ '}`;
|
|
76
|
+
const rules = [...node.rules].sort();
|
|
77
|
+
const children = [...node.children.entries()].sort(([a], [b]) => a.localeCompare(b));
|
|
78
|
+
const total = rules.length + children.length;
|
|
79
|
+
let index = 0;
|
|
80
|
+
for (const rule of rules) {
|
|
81
|
+
index++;
|
|
82
|
+
const leafBranch = index === total ? '└─ ' : '├─ ';
|
|
83
|
+
this.out.info(`&C(255,180,220)│ ${nextPrefix}${leafBranch}&C2${rule}`);
|
|
84
|
+
}
|
|
85
|
+
for (const [childLabel, childNode] of children) {
|
|
86
|
+
index++;
|
|
87
|
+
this.printTreeNode(childLabel, childNode, nextPrefix, index === total);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
formatSegmentLabel(segment) {
|
|
91
|
+
if (segment === '*')
|
|
92
|
+
return '*';
|
|
93
|
+
if (segment.startsWith('$?'))
|
|
94
|
+
return `param?(${segment.slice(2)})`;
|
|
95
|
+
if (segment.startsWith('$'))
|
|
96
|
+
return `param(${segment.slice(1)})`;
|
|
97
|
+
return segment;
|
|
98
|
+
}
|
|
34
99
|
/** Prints the server configuration to the console. */
|
|
35
100
|
showConfig() {
|
|
36
101
|
const { config } = this.server;
|
|
37
102
|
this.out.info('&C(255,180,220)╭─────────────────────────────────────────────');
|
|
38
103
|
this.out.info('&C(255,180,220)│ &C2 Server Configuration');
|
|
39
104
|
this.out.info('&C(255,180,220)├─────────────────────────────────────────────');
|
|
40
|
-
this.out.info(`&C(255,180,220)│ &C3Port: &C6${config.port}`);
|
|
41
|
-
this.out.info(`&C(255,180,220)│ &C3Host: &C6${config.host}`);
|
|
42
|
-
|
|
105
|
+
this.out.info(`&C(255,180,220)│ &C3Port: &C6${config.get('port')}`);
|
|
106
|
+
this.out.info(`&C(255,180,220)│ &C3Host: &C6${config.get('host')}`);
|
|
107
|
+
this.out.info(`&C(255,180,220)│ &C3Host: &C6${config.get('host')}`);
|
|
108
|
+
this.out.info(`&C(255,180,220)│ &C3routing options`);
|
|
109
|
+
this.out.info(`&C(255,180,220)│ - &C3algorithm: &C6${config.get('routing.algorithm')}`);
|
|
110
|
+
if (config.data.ssl) {
|
|
43
111
|
this.out.info(`&C(255,180,220)│ &C3ssl options`);
|
|
44
|
-
this.out.info(`&C(255,180,220)│ - &C3enabled: &C6${config.ssl.port ?? 443}`);
|
|
45
|
-
this.out.info(`&C(255,180,220)│ - &C3cert: &C6${config.ssl.
|
|
46
|
-
this.out.info(`&C(255,180,220)│ - &C3key: &C6${config.ssl.
|
|
112
|
+
this.out.info(`&C(255,180,220)│ - &C3enabled: &C6${config.get('ssl.port') ?? 443}`);
|
|
113
|
+
this.out.info(`&C(255,180,220)│ - &C3cert: &C6${config.get('ssl.cert')}`);
|
|
114
|
+
this.out.info(`&C(255,180,220)│ - &C3key: &C6${config.get('ssl.key')}`);
|
|
47
115
|
}
|
|
48
116
|
this.out.info(`&C(255,180,220)│ &C3server templates`);
|
|
49
|
-
for (const name in config.templates) {
|
|
50
|
-
const path = config.templates[name];
|
|
117
|
+
for (const name in config.data.templates) {
|
|
118
|
+
const path = config.data.templates[name] ?? 'undefined';
|
|
51
119
|
this.out.info(`&C(255,180,220)│ - &C3${name}: &C6${path}`);
|
|
52
120
|
}
|
|
53
121
|
this.out.info(`&C(255,180,220)│ &C3Debug options`);
|
|
54
|
-
this.out.info(`&C(255,180,220)│ - &C3 showAll: &C6${config.showAll}`);
|
|
55
|
-
this.out.info(`&C(255,180,220)│ - &C3 show server logs: &C6${config.logger.server.show}`);
|
|
56
|
-
this.out.info(`&C(255,180,220)│ - &C3 save server logs: &C6${config.logger.server.save}`);
|
|
57
|
-
this.out.info(`&C(255,180,220)│ - &C3 show requests logs: &C6${config.logger.request.show}`);
|
|
58
|
-
this.out.info(`&C(255,180,220)│ - &C3 save requests logs: &C6${config.logger.request.save}`);
|
|
59
|
-
this.out.info(`&C(255,180,220)│ - &C3 show responses logs: &C6${config.logger.response.show}`);
|
|
60
|
-
this.out.info(`&C(255,180,220)│ - &C3 save responses logs: &C6${config.logger.response.save}`);
|
|
61
|
-
this.out.info(`&C(255,180,220)│ - &C3 show websockets logs: &C6${config.logger.
|
|
62
|
-
this.out.info(`&C(255,180,220)│ - &C3 save websockets logs: &C6${config.logger.
|
|
122
|
+
this.out.info(`&C(255,180,220)│ - &C3 showAll: &C6${config.get('logger.showAll')}`);
|
|
123
|
+
this.out.info(`&C(255,180,220)│ - &C3 show server logs: &C6${config.get('logger.server.show')}`);
|
|
124
|
+
this.out.info(`&C(255,180,220)│ - &C3 save server logs: &C6${config.get('logger.server.save')}`);
|
|
125
|
+
this.out.info(`&C(255,180,220)│ - &C3 show requests logs: &C6${config.get('logger.request.show')}`);
|
|
126
|
+
this.out.info(`&C(255,180,220)│ - &C3 save requests logs: &C6${config.get('logger.request.save')}`);
|
|
127
|
+
this.out.info(`&C(255,180,220)│ - &C3 show responses logs: &C6${config.get('logger.response.show')}`);
|
|
128
|
+
this.out.info(`&C(255,180,220)│ - &C3 save responses logs: &C6${config.get('logger.response.save')}`);
|
|
129
|
+
this.out.info(`&C(255,180,220)│ - &C3 show websockets logs: &C6${config.get('logger.websocket.show')}`);
|
|
130
|
+
this.out.info(`&C(255,180,220)│ - &C3 save websockets logs: &C6${config.get('logger.websocket.save')}`);
|
|
63
131
|
this.out.info('&C(255,180,220)╰─────────────────────────────────────────────');
|
|
64
132
|
}
|
|
65
133
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerDebug.js","sourceRoot":"","sources":["../../src/server/ServerDebug.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ServerDebug.js","sourceRoot":"","sources":["../../src/server/ServerDebug.ts"],"names":[],"mappings":"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"}
|