@sapphire/plugin-api 7.0.0-next.d27dc1c → 7.0.0-next.d2c9aaa
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 +0 -1
- package/dist/cjs/index.cjs +21 -33
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/index.d.cts +318 -212
- package/dist/cjs/lib/structures/Augmentations.d.cjs +1 -1
- package/dist/cjs/lib/structures/Augmentations.d.cjs.map +1 -1
- package/dist/cjs/lib/structures/Middleware.cjs +2 -2
- package/dist/cjs/lib/structures/Middleware.cjs.map +1 -1
- package/dist/cjs/lib/structures/MiddlewareStore.cjs +4 -4
- package/dist/cjs/lib/structures/MiddlewareStore.cjs.map +1 -1
- package/dist/cjs/lib/structures/Route.cjs +18 -40
- package/dist/cjs/lib/structures/Route.cjs.map +1 -1
- package/dist/cjs/lib/structures/RouteLoaderStrategy.cjs +20 -0
- package/dist/cjs/lib/structures/RouteLoaderStrategy.cjs.map +1 -0
- package/dist/cjs/lib/structures/RouteStore.cjs +6 -44
- package/dist/cjs/lib/structures/RouteStore.cjs.map +1 -1
- package/dist/cjs/lib/structures/api/ApiRequest.cjs +155 -5
- package/dist/cjs/lib/structures/api/ApiRequest.cjs.map +1 -1
- package/dist/cjs/lib/structures/api/ApiResponse.cjs +12 -7
- package/dist/cjs/lib/structures/api/ApiResponse.cjs.map +1 -1
- package/dist/cjs/lib/structures/api/CookieStore.cjs +4 -4
- package/dist/cjs/lib/structures/api/CookieStore.cjs.map +1 -1
- package/dist/cjs/lib/structures/http/Auth.cjs +2 -2
- package/dist/cjs/lib/structures/http/Auth.cjs.map +1 -1
- package/dist/cjs/lib/structures/http/HttpCodes.cjs +1 -1
- package/dist/cjs/lib/structures/http/HttpCodes.cjs.map +1 -1
- package/dist/cjs/lib/structures/http/HttpMethods.cjs +39 -7
- package/dist/cjs/lib/structures/http/HttpMethods.cjs.map +1 -1
- package/dist/cjs/lib/structures/http/Server.cjs +17 -23
- package/dist/cjs/lib/structures/http/Server.cjs.map +1 -1
- package/dist/cjs/lib/structures/router/RouterBranch.cjs +184 -0
- package/dist/cjs/lib/structures/router/RouterBranch.cjs.map +1 -0
- package/dist/cjs/lib/structures/router/RouterNode.cjs +67 -0
- package/dist/cjs/lib/structures/router/RouterNode.cjs.map +1 -0
- package/dist/cjs/lib/structures/router/RouterRoot.cjs +81 -0
- package/dist/cjs/lib/structures/router/RouterRoot.cjs.map +1 -0
- package/dist/cjs/lib/utils/MimeType.cjs +4 -0
- package/dist/cjs/lib/utils/MimeType.cjs.map +1 -0
- package/dist/cjs/lib/utils/_body/RequestHeadersProxy.cjs +100 -0
- package/dist/cjs/lib/utils/_body/RequestHeadersProxy.cjs.map +1 -0
- package/dist/cjs/lib/utils/_body/RequestProxy.cjs +123 -0
- package/dist/cjs/lib/utils/_body/RequestProxy.cjs.map +1 -0
- package/dist/cjs/lib/utils/_body/RequestURLProxy.cjs +179 -0
- package/dist/cjs/lib/utils/_body/RequestURLProxy.cjs.map +1 -0
- package/dist/cjs/lib/utils/constants.cjs +8 -0
- package/dist/cjs/lib/utils/constants.cjs.map +1 -0
- package/dist/cjs/listeners/PluginRouteError.cjs +3 -3
- package/dist/cjs/listeners/PluginRouteError.cjs.map +1 -1
- package/dist/cjs/listeners/PluginServerMiddlewareError.cjs +3 -3
- package/dist/cjs/listeners/PluginServerMiddlewareError.cjs.map +1 -1
- package/dist/cjs/listeners/PluginServerMiddlewareSuccess.cjs +5 -5
- package/dist/cjs/listeners/PluginServerMiddlewareSuccess.cjs.map +1 -1
- package/dist/cjs/listeners/PluginServerRequest.cjs +42 -8
- package/dist/cjs/listeners/PluginServerRequest.cjs.map +1 -1
- package/dist/cjs/listeners/{PluginServerMatch.cjs → PluginServerRouterBranchMethodNotAllowed.cjs} +5 -10
- package/dist/cjs/listeners/PluginServerRouterBranchMethodNotAllowed.cjs.map +1 -0
- package/dist/cjs/listeners/{PluginServerNoMatch.cjs → PluginServerRouterBranchNotFound.cjs} +3 -3
- package/dist/cjs/listeners/PluginServerRouterBranchNotFound.cjs.map +1 -0
- package/dist/cjs/listeners/PluginServerRouterFound.cjs +22 -0
- package/dist/cjs/listeners/PluginServerRouterFound.cjs.map +1 -0
- package/dist/cjs/listeners/_load.cjs +7 -5
- package/dist/cjs/listeners/_load.cjs.map +1 -1
- package/dist/cjs/middlewares/_load.cjs +1 -1
- package/dist/cjs/middlewares/_load.cjs.map +1 -1
- package/dist/cjs/middlewares/auth.cjs +2 -2
- package/dist/cjs/middlewares/auth.cjs.map +1 -1
- package/dist/cjs/middlewares/body.cjs +4 -19
- package/dist/cjs/middlewares/body.cjs.map +1 -1
- package/dist/cjs/middlewares/cookies.cjs +1 -1
- package/dist/cjs/middlewares/cookies.cjs.map +1 -1
- package/dist/cjs/middlewares/headers.cjs +19 -9
- package/dist/cjs/middlewares/headers.cjs.map +1 -1
- package/dist/cjs/register.cjs +3 -4
- package/dist/cjs/register.cjs.map +1 -1
- package/dist/cjs/register.d.cts +0 -1
- package/dist/cjs/routes/_load.cjs +5 -5
- package/dist/cjs/routes/_load.cjs.map +1 -1
- package/dist/cjs/routes/oauth/{callback.cjs → callback.post.cjs} +6 -7
- package/dist/cjs/routes/oauth/callback.post.cjs.map +1 -0
- package/dist/cjs/routes/oauth/{logout.cjs → logout.post.cjs} +6 -8
- package/dist/cjs/routes/oauth/logout.post.cjs.map +1 -0
- package/dist/esm/{chunk-JTFKMR4I.mjs → chunk-S573YWRP.mjs} +4 -3
- package/dist/esm/chunk-S573YWRP.mjs.map +1 -0
- package/dist/esm/index.d.mts +318 -212
- package/dist/esm/index.mjs +6 -8
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/lib/structures/Augmentations.d.mjs +1 -1
- package/dist/esm/lib/structures/Augmentations.d.mjs.map +1 -1
- package/dist/esm/lib/structures/Middleware.mjs +2 -2
- package/dist/esm/lib/structures/Middleware.mjs.map +1 -1
- package/dist/esm/lib/structures/MiddlewareStore.mjs +4 -4
- package/dist/esm/lib/structures/MiddlewareStore.mjs.map +1 -1
- package/dist/esm/lib/structures/Route.mjs +19 -41
- package/dist/esm/lib/structures/Route.mjs.map +1 -1
- package/dist/esm/lib/structures/RouteLoaderStrategy.mjs +17 -0
- package/dist/esm/lib/structures/RouteLoaderStrategy.mjs.map +1 -0
- package/dist/esm/lib/structures/RouteStore.mjs +6 -44
- package/dist/esm/lib/structures/RouteStore.mjs.map +1 -1
- package/dist/esm/lib/structures/api/ApiRequest.mjs +149 -6
- package/dist/esm/lib/structures/api/ApiRequest.mjs.map +1 -1
- package/dist/esm/lib/structures/api/ApiResponse.mjs +12 -7
- package/dist/esm/lib/structures/api/ApiResponse.mjs.map +1 -1
- package/dist/esm/lib/structures/api/CookieStore.mjs +5 -5
- package/dist/esm/lib/structures/api/CookieStore.mjs.map +1 -1
- package/dist/esm/lib/structures/http/Auth.mjs +2 -2
- package/dist/esm/lib/structures/http/Auth.mjs.map +1 -1
- package/dist/esm/lib/structures/http/HttpCodes.mjs +2 -2
- package/dist/esm/lib/structures/http/HttpCodes.mjs.map +1 -1
- package/dist/esm/lib/structures/http/HttpMethods.mjs +41 -6
- package/dist/esm/lib/structures/http/HttpMethods.mjs.map +1 -1
- package/dist/esm/lib/structures/http/Server.mjs +18 -24
- package/dist/esm/lib/structures/http/Server.mjs.map +1 -1
- package/dist/esm/lib/structures/router/RouterBranch.mjs +179 -0
- package/dist/esm/lib/structures/router/RouterBranch.mjs.map +1 -0
- package/dist/esm/lib/structures/router/RouterNode.mjs +56 -0
- package/dist/esm/lib/structures/router/RouterNode.mjs.map +1 -0
- package/dist/esm/lib/structures/router/RouterRoot.mjs +78 -0
- package/dist/esm/lib/structures/router/RouterRoot.mjs.map +1 -0
- package/dist/esm/lib/utils/MimeType.mjs +3 -0
- package/dist/esm/lib/utils/MimeType.mjs.map +1 -0
- package/dist/esm/lib/utils/_body/RequestHeadersProxy.mjs +95 -0
- package/dist/esm/lib/utils/_body/RequestHeadersProxy.mjs.map +1 -0
- package/dist/esm/lib/utils/_body/RequestProxy.mjs +111 -0
- package/dist/esm/lib/utils/_body/RequestProxy.mjs.map +1 -0
- package/dist/esm/lib/utils/_body/RequestURLProxy.mjs +167 -0
- package/dist/esm/lib/utils/_body/RequestURLProxy.mjs.map +1 -0
- package/dist/esm/lib/utils/constants.mjs +8 -0
- package/dist/esm/lib/utils/constants.mjs.map +1 -0
- package/dist/esm/listeners/PluginRouteError.mjs +5 -5
- package/dist/esm/listeners/PluginRouteError.mjs.map +1 -1
- package/dist/esm/listeners/PluginServerMiddlewareError.mjs +5 -5
- package/dist/esm/listeners/PluginServerMiddlewareError.mjs.map +1 -1
- package/dist/esm/listeners/PluginServerMiddlewareSuccess.mjs +7 -7
- package/dist/esm/listeners/PluginServerMiddlewareSuccess.mjs.map +1 -1
- package/dist/esm/listeners/PluginServerRequest.mjs +38 -10
- package/dist/esm/listeners/PluginServerRequest.mjs.map +1 -1
- package/dist/esm/listeners/PluginServerRouterBranchMethodNotAllowed.mjs +18 -0
- package/dist/esm/listeners/PluginServerRouterBranchMethodNotAllowed.mjs.map +1 -0
- package/dist/esm/listeners/{PluginServerNoMatch.mjs → PluginServerRouterBranchNotFound.mjs} +5 -5
- package/dist/esm/listeners/PluginServerRouterBranchNotFound.mjs.map +1 -0
- package/dist/esm/listeners/PluginServerRouterFound.mjs +19 -0
- package/dist/esm/listeners/PluginServerRouterFound.mjs.map +1 -0
- package/dist/esm/listeners/_load.mjs +14 -12
- package/dist/esm/listeners/_load.mjs.map +1 -1
- package/dist/esm/middlewares/_load.mjs +2 -2
- package/dist/esm/middlewares/_load.mjs.map +1 -1
- package/dist/esm/middlewares/auth.mjs +2 -2
- package/dist/esm/middlewares/auth.mjs.map +1 -1
- package/dist/esm/middlewares/body.mjs +5 -18
- package/dist/esm/middlewares/body.mjs.map +1 -1
- package/dist/esm/middlewares/cookies.mjs +2 -2
- package/dist/esm/middlewares/cookies.mjs.map +1 -1
- package/dist/esm/middlewares/headers.mjs +20 -10
- package/dist/esm/middlewares/headers.mjs.map +1 -1
- package/dist/esm/register.d.mts +0 -1
- package/dist/esm/register.mjs +4 -5
- package/dist/esm/register.mjs.map +1 -1
- package/dist/esm/routes/_load.mjs +4 -4
- package/dist/esm/routes/_load.mjs.map +1 -1
- package/dist/esm/routes/oauth/{callback.mjs → callback.post.mjs} +6 -7
- package/dist/esm/routes/oauth/callback.post.mjs.map +1 -0
- package/dist/esm/routes/oauth/{logout.mjs → logout.post.mjs} +6 -8
- package/dist/esm/routes/oauth/logout.post.mjs.map +1 -0
- package/package.json +11 -8
- package/dist/cjs/lib/structures/MediaParser.cjs +0 -79
- package/dist/cjs/lib/structures/MediaParser.cjs.map +0 -1
- package/dist/cjs/lib/structures/MediaParserStore.cjs +0 -27
- package/dist/cjs/lib/structures/MediaParserStore.cjs.map +0 -1
- package/dist/cjs/lib/utils/MimeTypes.cjs +0 -26
- package/dist/cjs/lib/utils/MimeTypes.cjs.map +0 -1
- package/dist/cjs/lib/utils/RouteData.cjs +0 -62
- package/dist/cjs/lib/utils/RouteData.cjs.map +0 -1
- package/dist/cjs/listeners/PluginServerMatch.cjs.map +0 -1
- package/dist/cjs/listeners/PluginServerNoMatch.cjs.map +0 -1
- package/dist/cjs/mediaParsers/_load.cjs +0 -20
- package/dist/cjs/mediaParsers/_load.cjs.map +0 -1
- package/dist/cjs/mediaParsers/applicationFormUrlEncoded.cjs +0 -23
- package/dist/cjs/mediaParsers/applicationFormUrlEncoded.cjs.map +0 -1
- package/dist/cjs/mediaParsers/applicationJson.cjs +0 -22
- package/dist/cjs/mediaParsers/applicationJson.cjs.map +0 -1
- package/dist/cjs/mediaParsers/textPlain.cjs +0 -22
- package/dist/cjs/mediaParsers/textPlain.cjs.map +0 -1
- package/dist/cjs/routes/oauth/callback.cjs.map +0 -1
- package/dist/cjs/routes/oauth/logout.cjs.map +0 -1
- package/dist/esm/chunk-JTFKMR4I.mjs.map +0 -1
- package/dist/esm/lib/structures/MediaParser.mjs +0 -76
- package/dist/esm/lib/structures/MediaParser.mjs.map +0 -1
- package/dist/esm/lib/structures/MediaParserStore.mjs +0 -24
- package/dist/esm/lib/structures/MediaParserStore.mjs.map +0 -1
- package/dist/esm/lib/utils/MimeTypes.mjs +0 -26
- package/dist/esm/lib/utils/MimeTypes.mjs.map +0 -1
- package/dist/esm/lib/utils/RouteData.mjs +0 -56
- package/dist/esm/lib/utils/RouteData.mjs.map +0 -1
- package/dist/esm/listeners/PluginServerMatch.mjs +0 -23
- package/dist/esm/listeners/PluginServerMatch.mjs.map +0 -1
- package/dist/esm/listeners/PluginServerNoMatch.mjs.map +0 -1
- package/dist/esm/mediaParsers/_load.mjs +0 -17
- package/dist/esm/mediaParsers/_load.mjs.map +0 -1
- package/dist/esm/mediaParsers/applicationFormUrlEncoded.mjs +0 -20
- package/dist/esm/mediaParsers/applicationFormUrlEncoded.mjs.map +0 -1
- package/dist/esm/mediaParsers/applicationJson.mjs +0 -19
- package/dist/esm/mediaParsers/applicationJson.mjs.map +0 -1
- package/dist/esm/mediaParsers/textPlain.mjs +0 -19
- package/dist/esm/mediaParsers/textPlain.mjs.map +0 -1
- package/dist/esm/routes/oauth/callback.mjs.map +0 -1
- package/dist/esm/routes/oauth/logout.mjs.map +0 -1
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var utilities = require('@sapphire/utilities');
|
|
4
|
+
var constants_cjs = require('../constants.cjs');
|
|
5
|
+
|
|
6
|
+
var __defProp = Object.defineProperty;
|
|
7
|
+
var __typeError = (msg) => {
|
|
8
|
+
throw TypeError(msg);
|
|
9
|
+
};
|
|
10
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
11
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
12
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
13
|
+
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
|
14
|
+
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
15
|
+
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
16
|
+
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), member.set(obj, value), value);
|
|
17
|
+
var _protocol, _hostname, _port, _pathname, _search, _searchParams, _request;
|
|
18
|
+
var _RequestURLProxy = class _RequestURLProxy {
|
|
19
|
+
constructor(request) {
|
|
20
|
+
__publicField(this, "hash", "");
|
|
21
|
+
__publicField(this, "password", "");
|
|
22
|
+
__publicField(this, "username", "");
|
|
23
|
+
__privateAdd(this, _protocol, null);
|
|
24
|
+
__privateAdd(this, _hostname, null);
|
|
25
|
+
__privateAdd(this, _port, null);
|
|
26
|
+
__privateAdd(this, _pathname, null);
|
|
27
|
+
__privateAdd(this, _search, null);
|
|
28
|
+
__privateAdd(this, _searchParams, null);
|
|
29
|
+
__privateAdd(this, _request);
|
|
30
|
+
__privateSet(this, _request, request);
|
|
31
|
+
}
|
|
32
|
+
get host() {
|
|
33
|
+
return __privateGet(this, _request).headers.host ?? "";
|
|
34
|
+
}
|
|
35
|
+
set host(value) {
|
|
36
|
+
__privateSet(this, _hostname, null);
|
|
37
|
+
__privateSet(this, _port, null);
|
|
38
|
+
__privateGet(this, _request).headers.host = value;
|
|
39
|
+
}
|
|
40
|
+
get hostname() {
|
|
41
|
+
if (__privateGet(this, _hostname) === null) {
|
|
42
|
+
const [hostname, port] = parseHost(__privateGet(this, _request).headers.host);
|
|
43
|
+
__privateSet(this, _hostname, hostname);
|
|
44
|
+
__privateSet(this, _port, port === -1 ? "" : String(port));
|
|
45
|
+
}
|
|
46
|
+
return __privateGet(this, _hostname);
|
|
47
|
+
}
|
|
48
|
+
set hostname(value) {
|
|
49
|
+
__privateSet(this, _hostname, value);
|
|
50
|
+
}
|
|
51
|
+
get port() {
|
|
52
|
+
if (__privateGet(this, _port) === null) {
|
|
53
|
+
const [hostname, port] = parseHost(__privateGet(this, _request).headers.host);
|
|
54
|
+
__privateSet(this, _hostname, hostname);
|
|
55
|
+
__privateSet(this, _port, port === -1 ? String(__privateGet(this, _request).socket.localPort ?? "") : String(port));
|
|
56
|
+
}
|
|
57
|
+
return __privateGet(this, _port);
|
|
58
|
+
}
|
|
59
|
+
set port(value) {
|
|
60
|
+
__privateSet(this, _port, String(Number(value || "")));
|
|
61
|
+
}
|
|
62
|
+
get pathname() {
|
|
63
|
+
if (__privateGet(this, _pathname) === null) {
|
|
64
|
+
const [pathname, search] = parsePath(__privateGet(this, _request).url);
|
|
65
|
+
__privateSet(this, _pathname, pathname);
|
|
66
|
+
__privateGet(this, _search) ?? __privateSet(this, _search, search);
|
|
67
|
+
}
|
|
68
|
+
return __privateGet(this, _pathname);
|
|
69
|
+
}
|
|
70
|
+
set pathname(value) {
|
|
71
|
+
const normalized = value.startsWith("/") ? value : `/${value}`;
|
|
72
|
+
if (normalized === __privateGet(this, _pathname)) return;
|
|
73
|
+
__privateSet(this, _pathname, normalized);
|
|
74
|
+
__privateGet(this, _request).url = normalized + this.search;
|
|
75
|
+
}
|
|
76
|
+
get search() {
|
|
77
|
+
if (__privateGet(this, _search) === null) {
|
|
78
|
+
const [pathname, search] = parsePath(__privateGet(this, _request).url);
|
|
79
|
+
__privateGet(this, _pathname) ?? __privateSet(this, _pathname, pathname);
|
|
80
|
+
__privateSet(this, _search, search);
|
|
81
|
+
}
|
|
82
|
+
return __privateGet(this, _search);
|
|
83
|
+
}
|
|
84
|
+
set search(value) {
|
|
85
|
+
let normalized;
|
|
86
|
+
if (value === "?") {
|
|
87
|
+
normalized = "";
|
|
88
|
+
} else if (value && !value.startsWith("?")) {
|
|
89
|
+
normalized = `?${value}`;
|
|
90
|
+
} else {
|
|
91
|
+
normalized = value;
|
|
92
|
+
}
|
|
93
|
+
if (normalized === __privateGet(this, _search)) return;
|
|
94
|
+
__privateSet(this, _search, normalized);
|
|
95
|
+
__privateSet(this, _searchParams, null);
|
|
96
|
+
__privateGet(this, _request).url = this.pathname + normalized;
|
|
97
|
+
}
|
|
98
|
+
get searchParams() {
|
|
99
|
+
__privateGet(this, _searchParams) ?? __privateSet(this, _searchParams, new URLSearchParams(this.search));
|
|
100
|
+
return __privateGet(this, _searchParams);
|
|
101
|
+
}
|
|
102
|
+
set searchParams(value) {
|
|
103
|
+
__privateSet(this, _searchParams, value);
|
|
104
|
+
this.search = value.toString();
|
|
105
|
+
}
|
|
106
|
+
get protocol() {
|
|
107
|
+
__privateGet(this, _protocol) ?? __privateSet(this, _protocol, __privateGet(this, _request).socket.encrypted || __privateGet(this, _request).headers["x-forwarded-proto"] === "https" ? "https:" : "http:");
|
|
108
|
+
return __privateGet(this, _protocol);
|
|
109
|
+
}
|
|
110
|
+
set protocol(value) {
|
|
111
|
+
__privateSet(this, _protocol, value);
|
|
112
|
+
}
|
|
113
|
+
get origin() {
|
|
114
|
+
return `${this.protocol}//${this.host}`;
|
|
115
|
+
}
|
|
116
|
+
set origin(_value) {
|
|
117
|
+
}
|
|
118
|
+
get href() {
|
|
119
|
+
return `${this.protocol}//${this.host}${this.pathname}${this.search}`;
|
|
120
|
+
}
|
|
121
|
+
set href(value) {
|
|
122
|
+
const url = new URL(value);
|
|
123
|
+
__privateSet(this, _protocol, url.protocol);
|
|
124
|
+
this.username = url.username;
|
|
125
|
+
this.password = url.password;
|
|
126
|
+
__privateSet(this, _hostname, url.hostname);
|
|
127
|
+
__privateSet(this, _port, url.port);
|
|
128
|
+
__privateSet(this, _pathname, url.pathname);
|
|
129
|
+
__privateSet(this, _search, url.search);
|
|
130
|
+
this.hash = url.hash;
|
|
131
|
+
}
|
|
132
|
+
toString() {
|
|
133
|
+
return this.href;
|
|
134
|
+
}
|
|
135
|
+
toJSON() {
|
|
136
|
+
return this.href;
|
|
137
|
+
}
|
|
138
|
+
// eslint-disable-next-line @typescript-eslint/class-literal-property-style
|
|
139
|
+
get [Symbol.toStringTag]() {
|
|
140
|
+
return "URL";
|
|
141
|
+
}
|
|
142
|
+
[constants_cjs.NodeUtilInspectSymbol]() {
|
|
143
|
+
return this.href;
|
|
144
|
+
}
|
|
145
|
+
};
|
|
146
|
+
_protocol = new WeakMap();
|
|
147
|
+
_hostname = new WeakMap();
|
|
148
|
+
_port = new WeakMap();
|
|
149
|
+
_pathname = new WeakMap();
|
|
150
|
+
_search = new WeakMap();
|
|
151
|
+
_searchParams = new WeakMap();
|
|
152
|
+
_request = new WeakMap();
|
|
153
|
+
__name(_RequestURLProxy, "RequestURLProxy");
|
|
154
|
+
var RequestURLProxy = _RequestURLProxy;
|
|
155
|
+
function parsePath(input) {
|
|
156
|
+
const url = (input ?? "/").replaceAll("\\", "/");
|
|
157
|
+
const index = url.indexOf("?");
|
|
158
|
+
if (index === -1) {
|
|
159
|
+
return [url, ""];
|
|
160
|
+
}
|
|
161
|
+
return [url.slice(0, index), url.slice(index)];
|
|
162
|
+
}
|
|
163
|
+
__name(parsePath, "parsePath");
|
|
164
|
+
function parseHost(host) {
|
|
165
|
+
if (utilities.isNullishOrEmpty(host)) {
|
|
166
|
+
return ["localhost", -1];
|
|
167
|
+
}
|
|
168
|
+
const index = host.indexOf(":");
|
|
169
|
+
if (index === -1) {
|
|
170
|
+
return [host, -1];
|
|
171
|
+
}
|
|
172
|
+
const port = Number(host.slice(index));
|
|
173
|
+
return [host.slice(0, index), Number.isSafeInteger(port) ? port : -1];
|
|
174
|
+
}
|
|
175
|
+
__name(parseHost, "parseHost");
|
|
176
|
+
|
|
177
|
+
exports.RequestURLProxy = RequestURLProxy;
|
|
178
|
+
//# sourceMappingURL=RequestURLProxy.cjs.map
|
|
179
|
+
//# sourceMappingURL=RequestURLProxy.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/lib/utils/_body/RequestURLProxy.ts"],"names":["NodeUtilInspectSymbol","isNullishOrEmpty"],"mappings":"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","file":"RequestURLProxy.cjs","sourcesContent":["import { isNullishOrEmpty } from '@sapphire/utilities';\nimport type { ApiRequest } from '../../structures/api/ApiRequest';\nimport { NodeUtilInspectSymbol } from '../constants';\n\nexport class RequestURLProxy implements URL {\n\tpublic hash: string = '';\n\tpublic password: string = '';\n\tpublic username: string = '';\n\n\t#protocol: URLProtocol | null = null;\n\t#hostname: string | null = null;\n\t#port: string | null = null;\n\n\t#pathname: string | null = null;\n\t#search: string | null = null;\n\t#searchParams: URLSearchParams | null = null;\n\n\treadonly #request: ApiRequest;\n\n\tpublic constructor(request: ApiRequest) {\n\t\tthis.#request = request;\n\t}\n\n\tpublic get host(): string {\n\t\treturn this.#request.headers.host ?? '';\n\t}\n\n\tpublic set host(value: string) {\n\t\tthis.#hostname = null;\n\t\tthis.#port = null;\n\t\tthis.#request.headers.host = value;\n\t}\n\n\tpublic get hostname(): string {\n\t\tif (this.#hostname === null) {\n\t\t\tconst [hostname, port] = parseHost(this.#request.headers.host);\n\t\t\tthis.#hostname = hostname;\n\t\t\tthis.#port = port === -1 ? '' : String(port);\n\t\t}\n\n\t\treturn this.#hostname;\n\t}\n\n\tpublic set hostname(value: string) {\n\t\tthis.#hostname = value;\n\t}\n\n\tpublic get port(): string {\n\t\tif (this.#port === null) {\n\t\t\tconst [hostname, port] = parseHost(this.#request.headers.host);\n\t\t\tthis.#hostname = hostname;\n\t\t\tthis.#port = port === -1 ? String(this.#request.socket.localPort ?? '') : String(port);\n\t\t}\n\n\t\treturn this.#port;\n\t}\n\n\tpublic set port(value: string) {\n\t\tthis.#port = String(Number(value || ''));\n\t}\n\n\tpublic get pathname(): string {\n\t\tif (this.#pathname === null) {\n\t\t\tconst [pathname, search] = parsePath(this.#request.url);\n\t\t\tthis.#pathname = pathname;\n\t\t\tthis.#search ??= search;\n\t\t}\n\n\t\treturn this.#pathname;\n\t}\n\n\tpublic set pathname(value: string) {\n\t\tconst normalized = value.startsWith('/') ? value : `/${value}`;\n\t\tif (normalized === this.#pathname) return;\n\n\t\tthis.#pathname = normalized;\n\t\tthis.#request.url = normalized + this.search;\n\t}\n\n\tpublic get search(): string {\n\t\tif (this.#search === null) {\n\t\t\tconst [pathname, search] = parsePath(this.#request.url);\n\t\t\tthis.#pathname ??= pathname;\n\t\t\tthis.#search = search;\n\t\t}\n\n\t\treturn this.#search;\n\t}\n\n\tpublic set search(value: string) {\n\t\tlet normalized: string;\n\t\tif (value === '?') {\n\t\t\tnormalized = '';\n\t\t} else if (value && !value.startsWith('?')) {\n\t\t\tnormalized = `?${value}`;\n\t\t} else {\n\t\t\tnormalized = value;\n\t\t}\n\n\t\tif (normalized === this.#search) return;\n\n\t\tthis.#search = normalized;\n\t\tthis.#searchParams = null;\n\t\tthis.#request.url = this.pathname + normalized;\n\t}\n\n\tpublic get searchParams(): URLSearchParams {\n\t\tthis.#searchParams ??= new URLSearchParams(this.search);\n\t\treturn this.#searchParams;\n\t}\n\n\tpublic set searchParams(value: URLSearchParams) {\n\t\tthis.#searchParams = value;\n\t\tthis.search = value.toString();\n\t}\n\n\tpublic get protocol(): URLProtocol {\n\t\tthis.#protocol ??= (this.#request.socket as any).encrypted || this.#request.headers['x-forwarded-proto'] === 'https' ? 'https:' : 'http:';\n\t\treturn this.#protocol;\n\t}\n\n\tpublic set protocol(value: URLProtocol) {\n\t\tthis.#protocol = value;\n\t}\n\n\tpublic get origin(): string {\n\t\treturn `${this.protocol}//${this.host}`;\n\t}\n\n\tpublic set origin(_value: string) {\n\t\t// No-op\n\t}\n\n\tpublic get href(): string {\n\t\treturn `${this.protocol}//${this.host}${this.pathname}${this.search}`;\n\t}\n\n\tpublic set href(value: string) {\n\t\tconst url = new URL(value);\n\t\tthis.#protocol = url.protocol as URLProtocol;\n\t\tthis.username = url.username;\n\t\tthis.password = url.password;\n\t\tthis.#hostname = url.hostname;\n\t\tthis.#port = url.port;\n\t\tthis.#pathname = url.pathname;\n\t\tthis.#search = url.search;\n\t\tthis.hash = url.hash;\n\t}\n\n\tpublic toString(): string {\n\t\treturn this.href;\n\t}\n\n\tpublic toJSON(): string {\n\t\treturn this.href;\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/class-literal-property-style\n\tpublic get [Symbol.toStringTag]() {\n\t\treturn 'URL';\n\t}\n\n\tpublic [NodeUtilInspectSymbol]() {\n\t\treturn this.href;\n\t}\n}\n\nexport type URLProtocol = 'https:' | 'http:';\n\nfunction parsePath(input: string | undefined): [pathname: string, search: string] {\n\tconst url = (input ?? '/').replaceAll('\\\\', '/');\n\tconst index = url.indexOf('?');\n\tif (index === -1) {\n\t\treturn [url, ''];\n\t}\n\n\treturn [url.slice(0, index), url.slice(index)];\n}\n\nfunction parseHost(host: string | undefined): [hostname: string, port: number] {\n\tif (isNullishOrEmpty(host)) {\n\t\treturn ['localhost', -1];\n\t}\n\n\tconst index = host.indexOf(':');\n\tif (index === -1) {\n\t\treturn [host, -1];\n\t}\n\n\tconst port = Number(host.slice(index));\n\treturn [host.slice(0, index), Number.isSafeInteger(port) ? port : -1];\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/utils/constants.ts"],"names":[],"mappings":";;;AAAa,IAAA,qBAAA,GAAwB,MAAO,CAAA,GAAA,CAAI,4BAA4B","file":"constants.cjs","sourcesContent":["export const NodeUtilInspectSymbol = Symbol.for('nodejs.util.inspect.custom');\n"]}
|
|
@@ -8,9 +8,9 @@ var __defProp = Object.defineProperty;
|
|
|
8
8
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
9
9
|
var _PluginListener = class _PluginListener extends framework.Listener {
|
|
10
10
|
constructor(context) {
|
|
11
|
-
super(context, { emitter: "server", event: Server_cjs.
|
|
11
|
+
super(context, { emitter: "server", event: Server_cjs.ServerEvent.RouteError });
|
|
12
12
|
}
|
|
13
|
-
run(error,
|
|
13
|
+
run(error, _request, response) {
|
|
14
14
|
this.container.logger.fatal(error);
|
|
15
15
|
if (!response.writableEnded) response.status(HttpCodes_cjs.HttpCodes.InternalServerError).json({ error: error.message ?? error });
|
|
16
16
|
}
|
|
@@ -19,5 +19,5 @@ __name(_PluginListener, "PluginListener");
|
|
|
19
19
|
var PluginListener = _PluginListener;
|
|
20
20
|
|
|
21
21
|
exports.PluginListener = PluginListener;
|
|
22
|
-
//# sourceMappingURL=
|
|
22
|
+
//# sourceMappingURL=PluginRouteError.cjs.map
|
|
23
23
|
//# sourceMappingURL=PluginRouteError.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/listeners/PluginRouteError.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/listeners/PluginRouteError.ts"],"names":["Listener","ServerEvent","HttpCodes"],"mappings":";;;;;;;;AAMO,IAAM,eAAA,GAAN,MAAM,eAAA,SAAuBA,kBAAS,CAAA;AAAA,EACrC,YAAY,OAAiC,EAAA;AACnD,IAAA,KAAA,CAAM,SAAS,EAAE,OAAA,EAAS,UAAU,KAAO,EAAAC,sBAAA,CAAY,YAAY,CAAA,CAAA;AAAA,GACpE;AAAA,EAEgB,GAAA,CAAI,KAAc,EAAA,QAAA,EAAsB,QAAuB,EAAA;AAE9E,IAAK,IAAA,CAAA,SAAA,CAAU,MAAO,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AAGjC,IAAA,IAAI,CAAC,QAAA,CAAS,aAAe,EAAA,QAAA,CAAS,OAAOC,uBAAU,CAAA,mBAAmB,CAAE,CAAA,IAAA,CAAK,EAAE,KAAA,EAAO,KAAM,CAAA,OAAA,IAAW,OAAO,CAAA,CAAA;AAAA,GACnH;AACD,CAAA,CAAA;AAZ6C,MAAA,CAAA,eAAA,EAAA,gBAAA,CAAA,CAAA;AAAtC,IAAM,cAAN,GAAA","file":"PluginRouteError.cjs","sourcesContent":["import { Listener } from '@sapphire/framework';\nimport type { ApiRequest } from '../lib/structures/api/ApiRequest';\nimport type { ApiResponse } from '../lib/structures/api/ApiResponse';\nimport { HttpCodes } from '../lib/structures/http/HttpCodes';\nimport { ServerEvent } from '../lib/structures/http/Server';\n\nexport class PluginListener extends Listener {\n\tpublic constructor(context: Listener.LoaderContext) {\n\t\tsuper(context, { emitter: 'server', event: ServerEvent.RouteError });\n\t}\n\n\tpublic override run(error: Error, _request: ApiRequest, response: ApiResponse) {\n\t\t// Log the error to console:\n\t\tthis.container.logger.fatal(error);\n\n\t\t// Send a response to the client if none was sent:\n\t\tif (!response.writableEnded) response.status(HttpCodes.InternalServerError).json({ error: error.message ?? error });\n\t}\n}\n"]}
|
|
@@ -8,9 +8,9 @@ var __defProp = Object.defineProperty;
|
|
|
8
8
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
9
9
|
var _PluginListener = class _PluginListener extends framework.Listener {
|
|
10
10
|
constructor(context) {
|
|
11
|
-
super(context, { emitter: "server", event: Server_cjs.
|
|
11
|
+
super(context, { emitter: "server", event: Server_cjs.ServerEvent.MiddlewareError });
|
|
12
12
|
}
|
|
13
|
-
run(error,
|
|
13
|
+
run(error, _request, response) {
|
|
14
14
|
this.container.logger.fatal(error);
|
|
15
15
|
if (!response.writableEnded) response.status(HttpCodes_cjs.HttpCodes.InternalServerError).json({ error: error.message ?? error });
|
|
16
16
|
}
|
|
@@ -19,5 +19,5 @@ __name(_PluginListener, "PluginListener");
|
|
|
19
19
|
var PluginListener = _PluginListener;
|
|
20
20
|
|
|
21
21
|
exports.PluginListener = PluginListener;
|
|
22
|
-
//# sourceMappingURL=
|
|
22
|
+
//# sourceMappingURL=PluginServerMiddlewareError.cjs.map
|
|
23
23
|
//# sourceMappingURL=PluginServerMiddlewareError.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/listeners/PluginServerMiddlewareError.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/listeners/PluginServerMiddlewareError.ts"],"names":["Listener","ServerEvent","HttpCodes"],"mappings":";;;;;;;;AAMO,IAAM,eAAA,GAAN,MAAM,eAAA,SAAuBA,kBAAS,CAAA;AAAA,EACrC,YAAY,OAAiC,EAAA;AACnD,IAAA,KAAA,CAAM,SAAS,EAAE,OAAA,EAAS,UAAU,KAAO,EAAAC,sBAAA,CAAY,iBAAiB,CAAA,CAAA;AAAA,GACzE;AAAA,EAEgB,GAAA,CAAI,KAAc,EAAA,QAAA,EAAsB,QAAuB,EAAA;AAE9E,IAAK,IAAA,CAAA,SAAA,CAAU,MAAO,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AAGjC,IAAA,IAAI,CAAC,QAAA,CAAS,aAAe,EAAA,QAAA,CAAS,OAAOC,uBAAU,CAAA,mBAAmB,CAAE,CAAA,IAAA,CAAK,EAAE,KAAA,EAAO,KAAM,CAAA,OAAA,IAAW,OAAO,CAAA,CAAA;AAAA,GACnH;AACD,CAAA,CAAA;AAZ6C,MAAA,CAAA,eAAA,EAAA,gBAAA,CAAA,CAAA;AAAtC,IAAM,cAAN,GAAA","file":"PluginServerMiddlewareError.cjs","sourcesContent":["import { Listener } from '@sapphire/framework';\nimport type { ApiRequest } from '../lib/structures/api/ApiRequest';\nimport type { ApiResponse } from '../lib/structures/api/ApiResponse';\nimport { HttpCodes } from '../lib/structures/http/HttpCodes';\nimport { ServerEvent } from '../lib/structures/http/Server';\n\nexport class PluginListener extends Listener {\n\tpublic constructor(context: Listener.LoaderContext) {\n\t\tsuper(context, { emitter: 'server', event: ServerEvent.MiddlewareError });\n\t}\n\n\tpublic override run(error: Error, _request: ApiRequest, response: ApiResponse) {\n\t\t// Log the error to console:\n\t\tthis.container.logger.fatal(error);\n\n\t\t// Send a response to the client if none was sent:\n\t\tif (!response.writableEnded) response.status(HttpCodes.InternalServerError).json({ error: error.message ?? error });\n\t}\n}\n"]}
|
|
@@ -7,13 +7,13 @@ var __defProp = Object.defineProperty;
|
|
|
7
7
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
8
8
|
var _PluginListener = class _PluginListener extends framework.Listener {
|
|
9
9
|
constructor(context) {
|
|
10
|
-
super(context, { emitter: "server", event: Server_cjs.
|
|
10
|
+
super(context, { emitter: "server", event: Server_cjs.ServerEvent.MiddlewareSuccess });
|
|
11
11
|
}
|
|
12
|
-
async run(request, response
|
|
12
|
+
async run(request, response) {
|
|
13
13
|
try {
|
|
14
|
-
await
|
|
14
|
+
await request.route.run(request, response);
|
|
15
15
|
} catch (error) {
|
|
16
|
-
this.container.server.emit(Server_cjs.
|
|
16
|
+
this.container.server.emit(Server_cjs.ServerEvent.RouteError, error, request, response);
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
};
|
|
@@ -21,5 +21,5 @@ __name(_PluginListener, "PluginListener");
|
|
|
21
21
|
var PluginListener = _PluginListener;
|
|
22
22
|
|
|
23
23
|
exports.PluginListener = PluginListener;
|
|
24
|
-
//# sourceMappingURL=
|
|
24
|
+
//# sourceMappingURL=PluginServerMiddlewareSuccess.cjs.map
|
|
25
25
|
//# sourceMappingURL=PluginServerMiddlewareSuccess.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/listeners/PluginServerMiddlewareSuccess.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/listeners/PluginServerMiddlewareSuccess.ts"],"names":["Listener","ServerEvent"],"mappings":";;;;;;;AAKO,IAAM,eAAA,GAAN,MAAM,eAAA,SAAuBA,kBAAS,CAAA;AAAA,EACrC,YAAY,OAAiC,EAAA;AACnD,IAAA,KAAA,CAAM,SAAS,EAAE,OAAA,EAAS,UAAU,KAAO,EAAAC,sBAAA,CAAY,mBAAmB,CAAA,CAAA;AAAA,GAC3E;AAAA,EAEA,MAAsB,GAAI,CAAA,OAAA,EAAqB,QAAuB,EAAA;AACrE,IAAI,IAAA;AACH,MAAA,MAAM,OAAQ,CAAA,KAAA,CAAO,GAAI,CAAA,OAAA,EAAS,QAAQ,CAAA,CAAA;AAAA,aAClC,KAAO,EAAA;AACf,MAAA,IAAA,CAAK,UAAU,MAAO,CAAA,IAAA,CAAKA,uBAAY,UAAY,EAAA,KAAA,EAAgB,SAAS,QAAQ,CAAA,CAAA;AAAA,KACrF;AAAA,GACD;AACD,CAAA,CAAA;AAZ6C,MAAA,CAAA,eAAA,EAAA,gBAAA,CAAA,CAAA;AAAtC,IAAM,cAAN,GAAA","file":"PluginServerMiddlewareSuccess.cjs","sourcesContent":["import { Listener } from '@sapphire/framework';\nimport type { ApiRequest } from '../lib/structures/api/ApiRequest';\nimport type { ApiResponse } from '../lib/structures/api/ApiResponse';\nimport { ServerEvent } from '../lib/structures/http/Server';\n\nexport class PluginListener extends Listener {\n\tpublic constructor(context: Listener.LoaderContext) {\n\t\tsuper(context, { emitter: 'server', event: ServerEvent.MiddlewareSuccess });\n\t}\n\n\tpublic override async run(request: ApiRequest, response: ApiResponse) {\n\t\ttry {\n\t\t\tawait request.route!.run(request, response);\n\t\t} catch (error) {\n\t\t\tthis.container.server.emit(ServerEvent.RouteError, error as Error, request, response);\n\t\t}\n\t}\n}\n"]}
|
|
@@ -2,31 +2,65 @@
|
|
|
2
2
|
|
|
3
3
|
var framework = require('@sapphire/framework');
|
|
4
4
|
var Server_cjs = require('../lib/structures/http/Server.cjs');
|
|
5
|
+
var RouterRoot_cjs = require('../lib/structures/router/RouterRoot.cjs');
|
|
5
6
|
|
|
6
7
|
var __defProp = Object.defineProperty;
|
|
8
|
+
var __typeError = (msg) => {
|
|
9
|
+
throw TypeError(msg);
|
|
10
|
+
};
|
|
7
11
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
12
|
+
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
|
13
|
+
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
14
|
+
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
15
|
+
var _PluginListener_instances, parseURL_fn;
|
|
8
16
|
var _PluginListener = class _PluginListener extends framework.Listener {
|
|
9
17
|
constructor(context) {
|
|
10
|
-
super(context, { emitter: "server", event: Server_cjs.
|
|
18
|
+
super(context, { emitter: "server", event: Server_cjs.ServerEvent.Request });
|
|
19
|
+
__privateAdd(this, _PluginListener_instances);
|
|
11
20
|
}
|
|
12
21
|
async run(request, response) {
|
|
13
|
-
const
|
|
22
|
+
const { parts, querystring } = __privateMethod(this, _PluginListener_instances, parseURL_fn).call(this, request.url);
|
|
23
|
+
request.query = Object.fromEntries(new URLSearchParams(querystring).entries());
|
|
24
|
+
const branch = this.container.server.routes.router.find(parts);
|
|
25
|
+
const node = branch ? branch.node : null;
|
|
26
|
+
const route = node ? node.get(request.method ?? "GET") : null;
|
|
27
|
+
if (node !== null) {
|
|
28
|
+
request.params = node.extractParameters(parts);
|
|
29
|
+
}
|
|
30
|
+
request.routerNode = node;
|
|
31
|
+
request.route = route;
|
|
14
32
|
try {
|
|
15
|
-
await this.container.server.middlewares.run(request, response
|
|
33
|
+
await this.container.server.middlewares.run(request, response);
|
|
16
34
|
} catch (error) {
|
|
17
|
-
this.container.server.emit(Server_cjs.
|
|
35
|
+
this.container.server.emit(Server_cjs.ServerEvent.MiddlewareError, error, request, response);
|
|
18
36
|
return;
|
|
19
37
|
}
|
|
20
|
-
if (
|
|
21
|
-
this.container.server.emit(Server_cjs.
|
|
38
|
+
if (branch === null) {
|
|
39
|
+
this.container.server.emit(Server_cjs.ServerEvent.RouterBranchNotFound, request, response);
|
|
40
|
+
} else if (route === null) {
|
|
41
|
+
this.container.server.emit(Server_cjs.ServerEvent.RouterBranchMethodNotAllowed, request, response, branch);
|
|
22
42
|
} else {
|
|
23
|
-
this.container.server.emit(Server_cjs.
|
|
43
|
+
this.container.server.emit(Server_cjs.ServerEvent.RouterFound, request, response);
|
|
24
44
|
}
|
|
25
45
|
}
|
|
26
46
|
};
|
|
47
|
+
_PluginListener_instances = new WeakSet();
|
|
48
|
+
parseURL_fn = /* @__PURE__ */ __name(function(url = "") {
|
|
49
|
+
const index = url.indexOf("?");
|
|
50
|
+
let pathname;
|
|
51
|
+
let querystring;
|
|
52
|
+
if (index === -1) {
|
|
53
|
+
pathname = url;
|
|
54
|
+
querystring = "";
|
|
55
|
+
} else {
|
|
56
|
+
pathname = url.substring(0, index);
|
|
57
|
+
querystring = url.substring(index + 1);
|
|
58
|
+
}
|
|
59
|
+
return { parts: RouterRoot_cjs.RouterRoot.normalize(pathname), querystring };
|
|
60
|
+
}, "#parseURL");
|
|
27
61
|
__name(_PluginListener, "PluginListener");
|
|
28
62
|
var PluginListener = _PluginListener;
|
|
29
63
|
|
|
30
64
|
exports.PluginListener = PluginListener;
|
|
31
|
-
//# sourceMappingURL=
|
|
65
|
+
//# sourceMappingURL=PluginServerRequest.cjs.map
|
|
32
66
|
//# sourceMappingURL=PluginServerRequest.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/listeners/PluginServerRequest.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/listeners/PluginServerRequest.ts"],"names":["Listener","ServerEvent","RouterRoot"],"mappings":";;;;;;;;;;;;;;AAAA,IAAA,yBAAA,EAAA,WAAA,CAAA;AAOO,IAAM,eAAA,GAAN,MAAM,eAAA,SAAuBA,kBAAS,CAAA;AAAA,EACrC,YAAY,OAAiC,EAAA;AACnD,IAAA,KAAA,CAAM,SAAS,EAAE,OAAA,EAAS,UAAU,KAAO,EAAAC,sBAAA,CAAY,SAAS,CAAA,CAAA;AAF3D,IAAA,YAAA,CAAA,IAAA,EAAA,yBAAA,CAAA,CAAA;AAAA,GAGN;AAAA,EAEA,MAAsB,GAAI,CAAA,OAAA,EAAqB,QAAuB,EAAA;AACrE,IAAA,MAAM,EAAE,KAAO,EAAA,WAAA,KAAgB,eAAK,CAAA,IAAA,EAAA,yBAAA,EAAA,WAAA,CAAA,CAAL,WAAe,OAAQ,CAAA,GAAA,CAAA,CAAA;AACtD,IAAQ,OAAA,CAAA,KAAA,GAAQ,OAAO,WAAY,CAAA,IAAI,gBAAgB,WAAW,CAAA,CAAE,SAAS,CAAA,CAAA;AAE7E,IAAA,MAAM,SAAS,IAAK,CAAA,SAAA,CAAU,OAAO,MAAO,CAAA,MAAA,CAAO,KAAK,KAAK,CAAA,CAAA;AAC7D,IAAM,MAAA,IAAA,GAAO,MAAS,GAAA,MAAA,CAAO,IAAO,GAAA,IAAA,CAAA;AACpC,IAAA,MAAM,QAAQ,IAAO,GAAA,IAAA,CAAK,IAAK,OAAQ,CAAA,MAAA,IAAU,KAAoB,CAAI,GAAA,IAAA,CAAA;AAEzE,IAAA,IAAI,SAAS,IAAM,EAAA;AAClB,MAAQ,OAAA,CAAA,MAAA,GAAS,IAAM,CAAA,iBAAA,CAAkB,KAAK,CAAA,CAAA;AAAA,KAC/C;AAEA,IAAA,OAAA,CAAQ,UAAa,GAAA,IAAA,CAAA;AACrB,IAAA,OAAA,CAAQ,KAAQ,GAAA,KAAA,CAAA;AAEhB,IAAI,IAAA;AAEH,MAAA,MAAM,KAAK,SAAU,CAAA,MAAA,CAAO,WAAY,CAAA,GAAA,CAAI,SAAS,QAAQ,CAAA,CAAA;AAAA,aACrD,KAAO,EAAA;AACf,MAAA,IAAA,CAAK,UAAU,MAAO,CAAA,IAAA,CAAKA,uBAAY,eAAiB,EAAA,KAAA,EAAgB,SAAS,QAAQ,CAAA,CAAA;AAGzF,MAAA,OAAA;AAAA,KACD;AAEA,IAAA,IAAI,WAAW,IAAM,EAAA;AACpB,MAAA,IAAA,CAAK,UAAU,MAAO,CAAA,IAAA,CAAKA,sBAAY,CAAA,oBAAA,EAAsB,SAAS,QAAQ,CAAA,CAAA;AAAA,KAC/E,MAAA,IAAW,UAAU,IAAM,EAAA;AAC1B,MAAA,IAAA,CAAK,UAAU,MAAO,CAAA,IAAA,CAAKA,uBAAY,4BAA8B,EAAA,OAAA,EAAS,UAAU,MAAM,CAAA,CAAA;AAAA,KACxF,MAAA;AACN,MAAA,IAAA,CAAK,UAAU,MAAO,CAAA,IAAA,CAAKA,sBAAY,CAAA,WAAA,EAAa,SAAS,QAAQ,CAAA,CAAA;AAAA,KACtE;AAAA,GACD;AAiBD,CAAA,CAAA;AAtDO,yBAAA,GAAA,IAAA,OAAA,EAAA,CAAA;AAuCN,WAAS,mBAAA,MAAA,CAAA,SAAC,MAAM,EAAI,EAAA;AACnB,EAAM,MAAA,KAAA,GAAQ,GAAI,CAAA,OAAA,CAAQ,GAAG,CAAA,CAAA;AAE7B,EAAI,IAAA,QAAA,CAAA;AACJ,EAAI,IAAA,WAAA,CAAA;AACJ,EAAA,IAAI,UAAU,CAAI,CAAA,EAAA;AACjB,IAAW,QAAA,GAAA,GAAA,CAAA;AACX,IAAc,WAAA,GAAA,EAAA,CAAA;AAAA,GACR,MAAA;AACN,IAAW,QAAA,GAAA,GAAA,CAAI,SAAU,CAAA,CAAA,EAAG,KAAK,CAAA,CAAA;AACjC,IAAc,WAAA,GAAA,GAAA,CAAI,SAAU,CAAA,KAAA,GAAQ,CAAC,CAAA,CAAA;AAAA,GACtC;AAEA,EAAA,OAAO,EAAE,KAAO,EAAAC,yBAAA,CAAW,SAAU,CAAA,QAAQ,GAAG,WAAY,EAAA,CAAA;AAC7D,CAdS,EAAA,WAAA,CAAA,CAAA;AAvCmC,MAAA,CAAA,eAAA,EAAA,gBAAA,CAAA,CAAA;AAAtC,IAAM,cAAN,GAAA","file":"PluginServerRequest.cjs","sourcesContent":["import { Listener } from '@sapphire/framework';\nimport type { ApiRequest } from '../lib/structures/api/ApiRequest';\nimport type { ApiResponse } from '../lib/structures/api/ApiResponse';\nimport type { MethodName } from '../lib/structures/http/HttpMethods';\nimport { ServerEvent } from '../lib/structures/http/Server';\nimport { RouterRoot } from '../lib/structures/router/RouterRoot';\n\nexport class PluginListener extends Listener {\n\tpublic constructor(context: Listener.LoaderContext) {\n\t\tsuper(context, { emitter: 'server', event: ServerEvent.Request });\n\t}\n\n\tpublic override async run(request: ApiRequest, response: ApiResponse) {\n\t\tconst { parts, querystring } = this.#parseURL(request.url);\n\t\trequest.query = Object.fromEntries(new URLSearchParams(querystring).entries());\n\n\t\tconst branch = this.container.server.routes.router.find(parts);\n\t\tconst node = branch ? branch.node : null;\n\t\tconst route = node ? node.get((request.method ?? 'GET') as MethodName) : null;\n\n\t\tif (node !== null) {\n\t\t\trequest.params = node!.extractParameters(parts);\n\t\t}\n\n\t\trequest.routerNode = node;\n\t\trequest.route = route;\n\n\t\ttry {\n\t\t\t// Middlewares need to be run regardless of the match, specially since browsers do an OPTIONS request first.\n\t\t\tawait this.container.server.middlewares.run(request, response);\n\t\t} catch (error) {\n\t\t\tthis.container.server.emit(ServerEvent.MiddlewareError, error as Error, request, response);\n\n\t\t\t// If a middleware errored, it might cause undefined behavior in the routes, so we will return early.\n\t\t\treturn;\n\t\t}\n\n\t\tif (branch === null) {\n\t\t\tthis.container.server.emit(ServerEvent.RouterBranchNotFound, request, response);\n\t\t} else if (route === null) {\n\t\t\tthis.container.server.emit(ServerEvent.RouterBranchMethodNotAllowed, request, response, branch);\n\t\t} else {\n\t\t\tthis.container.server.emit(ServerEvent.RouterFound, request, response);\n\t\t}\n\t}\n\n\t#parseURL(url = '') {\n\t\tconst index = url.indexOf('?');\n\n\t\tlet pathname: string;\n\t\tlet querystring: string;\n\t\tif (index === -1) {\n\t\t\tpathname = url;\n\t\t\tquerystring = '';\n\t\t} else {\n\t\t\tpathname = url.substring(0, index);\n\t\t\tquerystring = url.substring(index + 1);\n\t\t}\n\n\t\treturn { parts: RouterRoot.normalize(pathname), querystring };\n\t}\n}\n"]}
|
package/dist/cjs/listeners/{PluginServerMatch.cjs → PluginServerRouterBranchMethodNotAllowed.cjs}
RENAMED
|
@@ -7,20 +7,15 @@ var __defProp = Object.defineProperty;
|
|
|
7
7
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
8
8
|
var _PluginListener = class _PluginListener extends framework.Listener {
|
|
9
9
|
constructor(context) {
|
|
10
|
-
super(context, { emitter: "server", event: Server_cjs.
|
|
10
|
+
super(context, { emitter: "server", event: Server_cjs.ServerEvent.RouterBranchMethodNotAllowed });
|
|
11
11
|
}
|
|
12
|
-
run(
|
|
13
|
-
|
|
14
|
-
response.writableEnded ? Server_cjs.ServerEvents.MiddlewareFailure : Server_cjs.ServerEvents.MiddlewareSuccess,
|
|
15
|
-
request,
|
|
16
|
-
response,
|
|
17
|
-
match
|
|
18
|
-
);
|
|
12
|
+
run(_, response) {
|
|
13
|
+
if (!response.writableEnded) response.methodNotAllowed();
|
|
19
14
|
}
|
|
20
15
|
};
|
|
21
16
|
__name(_PluginListener, "PluginListener");
|
|
22
17
|
var PluginListener = _PluginListener;
|
|
23
18
|
|
|
24
19
|
exports.PluginListener = PluginListener;
|
|
25
|
-
//# sourceMappingURL=
|
|
26
|
-
//# sourceMappingURL=
|
|
20
|
+
//# sourceMappingURL=PluginServerRouterBranchMethodNotAllowed.cjs.map
|
|
21
|
+
//# sourceMappingURL=PluginServerRouterBranchMethodNotAllowed.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/listeners/PluginServerRouterBranchMethodNotAllowed.ts"],"names":["Listener","ServerEvent"],"mappings":";;;;;;;AAKO,IAAM,eAAA,GAAN,MAAM,eAAA,SAAuBA,kBAAS,CAAA;AAAA,EACrC,YAAY,OAAiC,EAAA;AACnD,IAAA,KAAA,CAAM,SAAS,EAAE,OAAA,EAAS,UAAU,KAAO,EAAAC,sBAAA,CAAY,8BAA8B,CAAA,CAAA;AAAA,GACtF;AAAA,EAEgB,GAAA,CAAI,GAAe,QAAuB,EAAA;AACzD,IAAA,IAAI,CAAC,QAAA,CAAS,aAAe,EAAA,QAAA,CAAS,gBAAiB,EAAA,CAAA;AAAA,GACxD;AACD,CAAA,CAAA;AAR6C,MAAA,CAAA,eAAA,EAAA,gBAAA,CAAA,CAAA;AAAtC,IAAM,cAAN,GAAA","file":"PluginServerRouterBranchMethodNotAllowed.cjs","sourcesContent":["import { Listener } from '@sapphire/framework';\nimport type { ApiRequest } from '../lib/structures/api/ApiRequest';\nimport type { ApiResponse } from '../lib/structures/api/ApiResponse';\nimport { ServerEvent } from '../lib/structures/http/Server';\n\nexport class PluginListener extends Listener {\n\tpublic constructor(context: Listener.LoaderContext) {\n\t\tsuper(context, { emitter: 'server', event: ServerEvent.RouterBranchMethodNotAllowed });\n\t}\n\n\tpublic override run(_: ApiRequest, response: ApiResponse) {\n\t\tif (!response.writableEnded) response.methodNotAllowed();\n\t}\n}\n"]}
|
|
@@ -7,7 +7,7 @@ var __defProp = Object.defineProperty;
|
|
|
7
7
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
8
8
|
var _PluginListener = class _PluginListener extends framework.Listener {
|
|
9
9
|
constructor(context) {
|
|
10
|
-
super(context, { emitter: "server", event: Server_cjs.
|
|
10
|
+
super(context, { emitter: "server", event: Server_cjs.ServerEvent.RouterBranchNotFound });
|
|
11
11
|
}
|
|
12
12
|
run(_, response) {
|
|
13
13
|
if (!response.writableEnded) response.notFound();
|
|
@@ -17,5 +17,5 @@ __name(_PluginListener, "PluginListener");
|
|
|
17
17
|
var PluginListener = _PluginListener;
|
|
18
18
|
|
|
19
19
|
exports.PluginListener = PluginListener;
|
|
20
|
-
//# sourceMappingURL=
|
|
21
|
-
//# sourceMappingURL=
|
|
20
|
+
//# sourceMappingURL=PluginServerRouterBranchNotFound.cjs.map
|
|
21
|
+
//# sourceMappingURL=PluginServerRouterBranchNotFound.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/listeners/PluginServerRouterBranchNotFound.ts"],"names":["Listener","ServerEvent"],"mappings":";;;;;;;AAKO,IAAM,eAAA,GAAN,MAAM,eAAA,SAAuBA,kBAAS,CAAA;AAAA,EACrC,YAAY,OAAiC,EAAA;AACnD,IAAA,KAAA,CAAM,SAAS,EAAE,OAAA,EAAS,UAAU,KAAO,EAAAC,sBAAA,CAAY,sBAAsB,CAAA,CAAA;AAAA,GAC9E;AAAA,EAEgB,GAAA,CAAI,GAAe,QAAuB,EAAA;AACzD,IAAA,IAAI,CAAC,QAAA,CAAS,aAAe,EAAA,QAAA,CAAS,QAAS,EAAA,CAAA;AAAA,GAChD;AACD,CAAA,CAAA;AAR6C,MAAA,CAAA,eAAA,EAAA,gBAAA,CAAA,CAAA;AAAtC,IAAM,cAAN,GAAA","file":"PluginServerRouterBranchNotFound.cjs","sourcesContent":["import { Listener } from '@sapphire/framework';\nimport type { ApiRequest } from '../lib/structures/api/ApiRequest';\nimport type { ApiResponse } from '../lib/structures/api/ApiResponse';\nimport { ServerEvent } from '../lib/structures/http/Server';\n\nexport class PluginListener extends Listener {\n\tpublic constructor(context: Listener.LoaderContext) {\n\t\tsuper(context, { emitter: 'server', event: ServerEvent.RouterBranchNotFound });\n\t}\n\n\tpublic override run(_: ApiRequest, response: ApiResponse) {\n\t\tif (!response.writableEnded) response.notFound();\n\t}\n}\n"]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var framework = require('@sapphire/framework');
|
|
4
|
+
var Server_cjs = require('../lib/structures/http/Server.cjs');
|
|
5
|
+
|
|
6
|
+
var __defProp = Object.defineProperty;
|
|
7
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
8
|
+
var _PluginListener = class _PluginListener extends framework.Listener {
|
|
9
|
+
constructor(context) {
|
|
10
|
+
super(context, { emitter: "server", event: Server_cjs.ServerEvent.RouterFound });
|
|
11
|
+
}
|
|
12
|
+
run(request, response) {
|
|
13
|
+
const event = response.writableEnded ? Server_cjs.ServerEvent.MiddlewareFailure : Server_cjs.ServerEvent.MiddlewareSuccess;
|
|
14
|
+
this.container.server.emit(event, request, response);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
__name(_PluginListener, "PluginListener");
|
|
18
|
+
var PluginListener = _PluginListener;
|
|
19
|
+
|
|
20
|
+
exports.PluginListener = PluginListener;
|
|
21
|
+
//# sourceMappingURL=PluginServerRouterFound.cjs.map
|
|
22
|
+
//# sourceMappingURL=PluginServerRouterFound.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/listeners/PluginServerRouterFound.ts"],"names":["Listener","ServerEvent"],"mappings":";;;;;;;AAKO,IAAM,eAAA,GAAN,MAAM,eAAA,SAAuBA,kBAAS,CAAA;AAAA,EACrC,YAAY,OAAiC,EAAA;AACnD,IAAA,KAAA,CAAM,SAAS,EAAE,OAAA,EAAS,UAAU,KAAO,EAAAC,sBAAA,CAAY,aAAa,CAAA,CAAA;AAAA,GACrE;AAAA,EAEgB,GAAA,CAAI,SAAqB,QAAuB,EAAA;AAC/D,IAAA,MAAM,KAAQ,GAAA,QAAA,CAAS,aAAgB,GAAAA,sBAAA,CAAY,oBAAoBA,sBAAY,CAAA,iBAAA,CAAA;AACnF,IAAA,IAAA,CAAK,SAAU,CAAA,MAAA,CAAO,IAAK,CAAA,KAAA,EAAO,SAAS,QAAQ,CAAA,CAAA;AAAA,GACpD;AACD,CAAA,CAAA;AAT6C,MAAA,CAAA,eAAA,EAAA,gBAAA,CAAA,CAAA;AAAtC,IAAM,cAAN,GAAA","file":"PluginServerRouterFound.cjs","sourcesContent":["import { Listener } from '@sapphire/framework';\nimport type { ApiRequest } from '../lib/structures/api/ApiRequest';\nimport type { ApiResponse } from '../lib/structures/api/ApiResponse';\nimport { ServerEvent } from '../lib/structures/http/Server';\n\nexport class PluginListener extends Listener {\n\tpublic constructor(context: Listener.LoaderContext) {\n\t\tsuper(context, { emitter: 'server', event: ServerEvent.RouterFound });\n\t}\n\n\tpublic override run(request: ApiRequest, response: ApiResponse) {\n\t\tconst event = response.writableEnded ? ServerEvent.MiddlewareFailure : ServerEvent.MiddlewareSuccess;\n\t\tthis.container.server.emit(event, request, response);\n\t}\n}\n"]}
|
|
@@ -2,25 +2,27 @@
|
|
|
2
2
|
|
|
3
3
|
var pieces = require('@sapphire/pieces');
|
|
4
4
|
var PluginRouteError_cjs = require('./PluginRouteError.cjs');
|
|
5
|
-
var PluginServerMatch_cjs = require('./PluginServerMatch.cjs');
|
|
6
5
|
var PluginServerMiddlewareError_cjs = require('./PluginServerMiddlewareError.cjs');
|
|
7
6
|
var PluginServerMiddlewareSuccess_cjs = require('./PluginServerMiddlewareSuccess.cjs');
|
|
8
|
-
var PluginServerNoMatch_cjs = require('./PluginServerNoMatch.cjs');
|
|
9
7
|
var PluginServerRequest_cjs = require('./PluginServerRequest.cjs');
|
|
8
|
+
var PluginServerRouterBranchMethodNotAllowed_cjs = require('./PluginServerRouterBranchMethodNotAllowed.cjs');
|
|
9
|
+
var PluginServerRouterBranchNotFound_cjs = require('./PluginServerRouterBranchNotFound.cjs');
|
|
10
|
+
var PluginServerRouterFound_cjs = require('./PluginServerRouterFound.cjs');
|
|
10
11
|
|
|
11
12
|
var __defProp = Object.defineProperty;
|
|
12
13
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
13
14
|
function loadListeners() {
|
|
14
15
|
const store = "listeners";
|
|
15
16
|
void pieces.container.stores.loadPiece({ name: "PluginRouteError", piece: PluginRouteError_cjs.PluginListener, store });
|
|
16
|
-
void pieces.container.stores.loadPiece({ name: "PluginServerMatch", piece: PluginServerMatch_cjs.PluginListener, store });
|
|
17
17
|
void pieces.container.stores.loadPiece({ name: "PluginServerMiddlewareError", piece: PluginServerMiddlewareError_cjs.PluginListener, store });
|
|
18
18
|
void pieces.container.stores.loadPiece({ name: "PluginServerMiddlewareSuccess", piece: PluginServerMiddlewareSuccess_cjs.PluginListener, store });
|
|
19
|
-
void pieces.container.stores.loadPiece({ name: "PluginServerNoMatch", piece: PluginServerNoMatch_cjs.PluginListener, store });
|
|
20
19
|
void pieces.container.stores.loadPiece({ name: "PluginServerRequest", piece: PluginServerRequest_cjs.PluginListener, store });
|
|
20
|
+
void pieces.container.stores.loadPiece({ name: "PluginServerRouterBranchMethodNotAllowed", piece: PluginServerRouterBranchMethodNotAllowed_cjs.PluginListener, store });
|
|
21
|
+
void pieces.container.stores.loadPiece({ name: "PluginServerRouterBranchNotFound", piece: PluginServerRouterBranchNotFound_cjs.PluginListener, store });
|
|
22
|
+
void pieces.container.stores.loadPiece({ name: "PluginServerRouterFound", piece: PluginServerRouterFound_cjs.PluginListener, store });
|
|
21
23
|
}
|
|
22
24
|
__name(loadListeners, "loadListeners");
|
|
23
25
|
|
|
24
26
|
exports.loadListeners = loadListeners;
|
|
25
|
-
//# sourceMappingURL=
|
|
27
|
+
//# sourceMappingURL=_load.cjs.map
|
|
26
28
|
//# sourceMappingURL=_load.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/listeners/_load.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/listeners/_load.ts"],"names":["container","PluginRouteError","PluginServerMiddlewareError","PluginServerMiddlewareSuccess","PluginServerRequest","PluginServerRouterBranchMethodNotAllowed","PluginServerRouterBranchNotFound","PluginServerRouterFound"],"mappings":";;;;;;;;;;;;;AASO,SAAS,aAAgB,GAAA;AAC/B,EAAA,MAAM,KAAQ,GAAA,WAAA,CAAA;AACd,EAAK,KAAAA,gBAAA,CAAU,OAAO,SAAU,CAAA,EAAE,MAAM,kBAAoB,EAAA,KAAA,EAAOC,mCAAkB,EAAA,KAAA,EAAO,CAAA,CAAA;AAC5F,EAAK,KAAAD,gBAAA,CAAU,OAAO,SAAU,CAAA,EAAE,MAAM,6BAA+B,EAAA,KAAA,EAAOE,8CAA6B,EAAA,KAAA,EAAO,CAAA,CAAA;AAClH,EAAK,KAAAF,gBAAA,CAAU,OAAO,SAAU,CAAA,EAAE,MAAM,+BAAiC,EAAA,KAAA,EAAOG,gDAA+B,EAAA,KAAA,EAAO,CAAA,CAAA;AACtH,EAAK,KAAAH,gBAAA,CAAU,OAAO,SAAU,CAAA,EAAE,MAAM,qBAAuB,EAAA,KAAA,EAAOI,sCAAqB,EAAA,KAAA,EAAO,CAAA,CAAA;AAClG,EAAK,KAAAJ,gBAAA,CAAU,OAAO,SAAU,CAAA,EAAE,MAAM,0CAA4C,EAAA,KAAA,EAAOK,2DAA0C,EAAA,KAAA,EAAO,CAAA,CAAA;AAC5I,EAAK,KAAAL,gBAAA,CAAU,OAAO,SAAU,CAAA,EAAE,MAAM,kCAAoC,EAAA,KAAA,EAAOM,mDAAkC,EAAA,KAAA,EAAO,CAAA,CAAA;AAC5H,EAAK,KAAAN,gBAAA,CAAU,OAAO,SAAU,CAAA,EAAE,MAAM,yBAA2B,EAAA,KAAA,EAAOO,0CAAyB,EAAA,KAAA,EAAO,CAAA,CAAA;AAC3G,CAAA;AATgB,MAAA,CAAA,aAAA,EAAA,eAAA,CAAA","file":"_load.cjs","sourcesContent":["import { container } from '@sapphire/pieces';\nimport { PluginListener as PluginRouteError } from './PluginRouteError';\nimport { PluginListener as PluginServerMiddlewareError } from './PluginServerMiddlewareError';\nimport { PluginListener as PluginServerMiddlewareSuccess } from './PluginServerMiddlewareSuccess';\nimport { PluginListener as PluginServerRequest } from './PluginServerRequest';\nimport { PluginListener as PluginServerRouterBranchMethodNotAllowed } from './PluginServerRouterBranchMethodNotAllowed';\nimport { PluginListener as PluginServerRouterBranchNotFound } from './PluginServerRouterBranchNotFound';\nimport { PluginListener as PluginServerRouterFound } from './PluginServerRouterFound';\n\nexport function loadListeners() {\n\tconst store = 'listeners';\n\tvoid container.stores.loadPiece({ name: 'PluginRouteError', piece: PluginRouteError, store });\n\tvoid container.stores.loadPiece({ name: 'PluginServerMiddlewareError', piece: PluginServerMiddlewareError, store });\n\tvoid container.stores.loadPiece({ name: 'PluginServerMiddlewareSuccess', piece: PluginServerMiddlewareSuccess, store });\n\tvoid container.stores.loadPiece({ name: 'PluginServerRequest', piece: PluginServerRequest, store });\n\tvoid container.stores.loadPiece({ name: 'PluginServerRouterBranchMethodNotAllowed', piece: PluginServerRouterBranchMethodNotAllowed, store });\n\tvoid container.stores.loadPiece({ name: 'PluginServerRouterBranchNotFound', piece: PluginServerRouterBranchNotFound, store });\n\tvoid container.stores.loadPiece({ name: 'PluginServerRouterFound', piece: PluginServerRouterFound, store });\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/middlewares/_load.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/middlewares/_load.ts"],"names":["container","PluginAuth","PluginBody","PluginCookies","PluginHeaders"],"mappings":";;;;;;;;;;AAMO,SAAS,eAAkB,GAAA;AACjC,EAAA,MAAM,KAAQ,GAAA,aAAA,CAAA;AACd,EAAK,KAAAA,gBAAA,CAAU,OAAO,SAAU,CAAA,EAAE,MAAM,MAAQ,EAAA,KAAA,EAAOC,yBAAY,EAAA,KAAA,EAAO,CAAA,CAAA;AAC1E,EAAK,KAAAD,gBAAA,CAAU,OAAO,SAAU,CAAA,EAAE,MAAM,MAAQ,EAAA,KAAA,EAAOE,yBAAY,EAAA,KAAA,EAAO,CAAA,CAAA;AAC1E,EAAK,KAAAF,gBAAA,CAAU,OAAO,SAAU,CAAA,EAAE,MAAM,SAAW,EAAA,KAAA,EAAOG,4BAAe,EAAA,KAAA,EAAO,CAAA,CAAA;AAChF,EAAK,KAAAH,gBAAA,CAAU,OAAO,SAAU,CAAA,EAAE,MAAM,SAAW,EAAA,KAAA,EAAOI,4BAAe,EAAA,KAAA,EAAO,CAAA,CAAA;AACjF,CAAA;AANgB,MAAA,CAAA,eAAA,EAAA,iBAAA,CAAA","file":"_load.cjs","sourcesContent":["import { container } from '@sapphire/pieces';\nimport { PluginMiddleware as PluginAuth } from './auth';\nimport { PluginMiddleware as PluginBody } from './body';\nimport { PluginMiddleware as PluginCookies } from './cookies';\nimport { PluginMiddleware as PluginHeaders } from './headers';\n\nexport function loadMiddlewares() {\n\tconst store = 'middlewares';\n\tvoid container.stores.loadPiece({ name: 'auth', piece: PluginAuth, store });\n\tvoid container.stores.loadPiece({ name: 'body', piece: PluginBody, store });\n\tvoid container.stores.loadPiece({ name: 'cookies', piece: PluginCookies, store });\n\tvoid container.stores.loadPiece({ name: 'headers', piece: PluginHeaders, store });\n}\n"]}
|
|
@@ -5,7 +5,7 @@ var Middleware_cjs = require('../lib/structures/Middleware.cjs');
|
|
|
5
5
|
var __defProp = Object.defineProperty;
|
|
6
6
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
7
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
8
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj,
|
|
8
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, key + "" , value);
|
|
9
9
|
var _PluginMiddleware = class _PluginMiddleware extends Middleware_cjs.Middleware {
|
|
10
10
|
constructor(context) {
|
|
11
11
|
super(context, { position: 40 });
|
|
@@ -28,5 +28,5 @@ __name(_PluginMiddleware, "PluginMiddleware");
|
|
|
28
28
|
var PluginMiddleware = _PluginMiddleware;
|
|
29
29
|
|
|
30
30
|
exports.PluginMiddleware = PluginMiddleware;
|
|
31
|
-
//# sourceMappingURL=
|
|
31
|
+
//# sourceMappingURL=auth.cjs.map
|
|
32
32
|
//# sourceMappingURL=auth.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/middlewares/auth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/middlewares/auth.ts"],"names":["Middleware"],"mappings":";;;;;;;;AAEO,IAAM,iBAAA,GAAN,MAAM,iBAAA,SAAyBA,yBAAW,CAAA;AAAA,EAGzC,YAAY,OAAmC,EAAA;AACrD,IAAA,KAAA,CAAM,OAAS,EAAA,EAAE,QAAU,EAAA,EAAA,EAAI,CAAA,CAAA;AAHhC,IAAiB,aAAA,CAAA,IAAA,EAAA,YAAA,CAAA,CAAA;AAKhB,IAAM,MAAA,EAAE,MAAO,EAAA,GAAI,IAAK,CAAA,SAAA,CAAA;AACxB,IAAK,IAAA,CAAA,UAAA,GAAa,MAAO,CAAA,IAAA,EAAM,MAAU,IAAA,eAAA,CAAA;AACzC,IAAK,IAAA,CAAA,OAAA,GAAU,OAAO,IAAS,KAAA,IAAA,CAAA;AAAA,GAChC;AAAA,EAEgB,GAAA,CAAI,SAA6B,QAA+B,EAAA;AAE/E,IAAA,MAAM,aAAgB,GAAA,QAAA,CAAS,OAAQ,CAAA,GAAA,CAAI,KAAK,UAAU,CAAA,CAAA;AAC1D,IAAA,IAAI,CAAC,aAAe,EAAA;AACnB,MAAA,OAAA,CAAQ,IAAO,GAAA,IAAA,CAAA;AACf,MAAA,OAAA;AAAA,KACD;AAGA,IAAA,OAAA,CAAQ,OAAO,IAAK,CAAA,SAAA,CAAU,MAAO,CAAA,IAAA,CAAM,QAAQ,aAAa,CAAA,CAAA;AAChE,IAAA,IAAI,QAAQ,IAAS,KAAA,IAAA,WAAe,OAAQ,CAAA,MAAA,CAAO,KAAK,UAAU,CAAA,CAAA;AAAA,GACnE;AACD,CAAA,CAAA;AAvBiD,MAAA,CAAA,iBAAA,EAAA,kBAAA,CAAA,CAAA;AAA1C,IAAM,gBAAN,GAAA","file":"auth.cjs","sourcesContent":["import { Middleware } from '../lib/structures/Middleware';\n\nexport class PluginMiddleware extends Middleware {\n\tprivate readonly cookieName: string;\n\n\tpublic constructor(context: Middleware.LoaderContext) {\n\t\tsuper(context, { position: 40 });\n\n\t\tconst { server } = this.container;\n\t\tthis.cookieName = server.auth?.cookie ?? 'SAPPHIRE_AUTH';\n\t\tthis.enabled = server.auth !== null;\n\t}\n\n\tpublic override run(request: Middleware.Request, response: Middleware.Response) {\n\t\t// If there are no cookies, set auth as null:\n\t\tconst authorization = response.cookies.get(this.cookieName);\n\t\tif (!authorization) {\n\t\t\trequest.auth = null;\n\t\t\treturn;\n\t\t}\n\n\t\t// Decrypt the cookie, and if the token is invalid, remove the cookie:\n\t\trequest.auth = this.container.server.auth!.decrypt(authorization);\n\t\tif (request.auth === null) response.cookies.remove(this.cookieName);\n\t}\n}\n"]}
|