@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.
Files changed (206) hide show
  1. package/README.md +0 -1
  2. package/dist/cjs/index.cjs +21 -33
  3. package/dist/cjs/index.cjs.map +1 -1
  4. package/dist/cjs/index.d.cts +318 -212
  5. package/dist/cjs/lib/structures/Augmentations.d.cjs +1 -1
  6. package/dist/cjs/lib/structures/Augmentations.d.cjs.map +1 -1
  7. package/dist/cjs/lib/structures/Middleware.cjs +2 -2
  8. package/dist/cjs/lib/structures/Middleware.cjs.map +1 -1
  9. package/dist/cjs/lib/structures/MiddlewareStore.cjs +4 -4
  10. package/dist/cjs/lib/structures/MiddlewareStore.cjs.map +1 -1
  11. package/dist/cjs/lib/structures/Route.cjs +18 -40
  12. package/dist/cjs/lib/structures/Route.cjs.map +1 -1
  13. package/dist/cjs/lib/structures/RouteLoaderStrategy.cjs +20 -0
  14. package/dist/cjs/lib/structures/RouteLoaderStrategy.cjs.map +1 -0
  15. package/dist/cjs/lib/structures/RouteStore.cjs +6 -44
  16. package/dist/cjs/lib/structures/RouteStore.cjs.map +1 -1
  17. package/dist/cjs/lib/structures/api/ApiRequest.cjs +155 -5
  18. package/dist/cjs/lib/structures/api/ApiRequest.cjs.map +1 -1
  19. package/dist/cjs/lib/structures/api/ApiResponse.cjs +12 -7
  20. package/dist/cjs/lib/structures/api/ApiResponse.cjs.map +1 -1
  21. package/dist/cjs/lib/structures/api/CookieStore.cjs +4 -4
  22. package/dist/cjs/lib/structures/api/CookieStore.cjs.map +1 -1
  23. package/dist/cjs/lib/structures/http/Auth.cjs +2 -2
  24. package/dist/cjs/lib/structures/http/Auth.cjs.map +1 -1
  25. package/dist/cjs/lib/structures/http/HttpCodes.cjs +1 -1
  26. package/dist/cjs/lib/structures/http/HttpCodes.cjs.map +1 -1
  27. package/dist/cjs/lib/structures/http/HttpMethods.cjs +39 -7
  28. package/dist/cjs/lib/structures/http/HttpMethods.cjs.map +1 -1
  29. package/dist/cjs/lib/structures/http/Server.cjs +17 -23
  30. package/dist/cjs/lib/structures/http/Server.cjs.map +1 -1
  31. package/dist/cjs/lib/structures/router/RouterBranch.cjs +184 -0
  32. package/dist/cjs/lib/structures/router/RouterBranch.cjs.map +1 -0
  33. package/dist/cjs/lib/structures/router/RouterNode.cjs +67 -0
  34. package/dist/cjs/lib/structures/router/RouterNode.cjs.map +1 -0
  35. package/dist/cjs/lib/structures/router/RouterRoot.cjs +81 -0
  36. package/dist/cjs/lib/structures/router/RouterRoot.cjs.map +1 -0
  37. package/dist/cjs/lib/utils/MimeType.cjs +4 -0
  38. package/dist/cjs/lib/utils/MimeType.cjs.map +1 -0
  39. package/dist/cjs/lib/utils/_body/RequestHeadersProxy.cjs +100 -0
  40. package/dist/cjs/lib/utils/_body/RequestHeadersProxy.cjs.map +1 -0
  41. package/dist/cjs/lib/utils/_body/RequestProxy.cjs +123 -0
  42. package/dist/cjs/lib/utils/_body/RequestProxy.cjs.map +1 -0
  43. package/dist/cjs/lib/utils/_body/RequestURLProxy.cjs +179 -0
  44. package/dist/cjs/lib/utils/_body/RequestURLProxy.cjs.map +1 -0
  45. package/dist/cjs/lib/utils/constants.cjs +8 -0
  46. package/dist/cjs/lib/utils/constants.cjs.map +1 -0
  47. package/dist/cjs/listeners/PluginRouteError.cjs +3 -3
  48. package/dist/cjs/listeners/PluginRouteError.cjs.map +1 -1
  49. package/dist/cjs/listeners/PluginServerMiddlewareError.cjs +3 -3
  50. package/dist/cjs/listeners/PluginServerMiddlewareError.cjs.map +1 -1
  51. package/dist/cjs/listeners/PluginServerMiddlewareSuccess.cjs +5 -5
  52. package/dist/cjs/listeners/PluginServerMiddlewareSuccess.cjs.map +1 -1
  53. package/dist/cjs/listeners/PluginServerRequest.cjs +42 -8
  54. package/dist/cjs/listeners/PluginServerRequest.cjs.map +1 -1
  55. package/dist/cjs/listeners/{PluginServerMatch.cjs → PluginServerRouterBranchMethodNotAllowed.cjs} +5 -10
  56. package/dist/cjs/listeners/PluginServerRouterBranchMethodNotAllowed.cjs.map +1 -0
  57. package/dist/cjs/listeners/{PluginServerNoMatch.cjs → PluginServerRouterBranchNotFound.cjs} +3 -3
  58. package/dist/cjs/listeners/PluginServerRouterBranchNotFound.cjs.map +1 -0
  59. package/dist/cjs/listeners/PluginServerRouterFound.cjs +22 -0
  60. package/dist/cjs/listeners/PluginServerRouterFound.cjs.map +1 -0
  61. package/dist/cjs/listeners/_load.cjs +7 -5
  62. package/dist/cjs/listeners/_load.cjs.map +1 -1
  63. package/dist/cjs/middlewares/_load.cjs +1 -1
  64. package/dist/cjs/middlewares/_load.cjs.map +1 -1
  65. package/dist/cjs/middlewares/auth.cjs +2 -2
  66. package/dist/cjs/middlewares/auth.cjs.map +1 -1
  67. package/dist/cjs/middlewares/body.cjs +4 -19
  68. package/dist/cjs/middlewares/body.cjs.map +1 -1
  69. package/dist/cjs/middlewares/cookies.cjs +1 -1
  70. package/dist/cjs/middlewares/cookies.cjs.map +1 -1
  71. package/dist/cjs/middlewares/headers.cjs +19 -9
  72. package/dist/cjs/middlewares/headers.cjs.map +1 -1
  73. package/dist/cjs/register.cjs +3 -4
  74. package/dist/cjs/register.cjs.map +1 -1
  75. package/dist/cjs/register.d.cts +0 -1
  76. package/dist/cjs/routes/_load.cjs +5 -5
  77. package/dist/cjs/routes/_load.cjs.map +1 -1
  78. package/dist/cjs/routes/oauth/{callback.cjs → callback.post.cjs} +6 -7
  79. package/dist/cjs/routes/oauth/callback.post.cjs.map +1 -0
  80. package/dist/cjs/routes/oauth/{logout.cjs → logout.post.cjs} +6 -8
  81. package/dist/cjs/routes/oauth/logout.post.cjs.map +1 -0
  82. package/dist/esm/{chunk-JTFKMR4I.mjs → chunk-S573YWRP.mjs} +4 -3
  83. package/dist/esm/chunk-S573YWRP.mjs.map +1 -0
  84. package/dist/esm/index.d.mts +318 -212
  85. package/dist/esm/index.mjs +6 -8
  86. package/dist/esm/index.mjs.map +1 -1
  87. package/dist/esm/lib/structures/Augmentations.d.mjs +1 -1
  88. package/dist/esm/lib/structures/Augmentations.d.mjs.map +1 -1
  89. package/dist/esm/lib/structures/Middleware.mjs +2 -2
  90. package/dist/esm/lib/structures/Middleware.mjs.map +1 -1
  91. package/dist/esm/lib/structures/MiddlewareStore.mjs +4 -4
  92. package/dist/esm/lib/structures/MiddlewareStore.mjs.map +1 -1
  93. package/dist/esm/lib/structures/Route.mjs +19 -41
  94. package/dist/esm/lib/structures/Route.mjs.map +1 -1
  95. package/dist/esm/lib/structures/RouteLoaderStrategy.mjs +17 -0
  96. package/dist/esm/lib/structures/RouteLoaderStrategy.mjs.map +1 -0
  97. package/dist/esm/lib/structures/RouteStore.mjs +6 -44
  98. package/dist/esm/lib/structures/RouteStore.mjs.map +1 -1
  99. package/dist/esm/lib/structures/api/ApiRequest.mjs +149 -6
  100. package/dist/esm/lib/structures/api/ApiRequest.mjs.map +1 -1
  101. package/dist/esm/lib/structures/api/ApiResponse.mjs +12 -7
  102. package/dist/esm/lib/structures/api/ApiResponse.mjs.map +1 -1
  103. package/dist/esm/lib/structures/api/CookieStore.mjs +5 -5
  104. package/dist/esm/lib/structures/api/CookieStore.mjs.map +1 -1
  105. package/dist/esm/lib/structures/http/Auth.mjs +2 -2
  106. package/dist/esm/lib/structures/http/Auth.mjs.map +1 -1
  107. package/dist/esm/lib/structures/http/HttpCodes.mjs +2 -2
  108. package/dist/esm/lib/structures/http/HttpCodes.mjs.map +1 -1
  109. package/dist/esm/lib/structures/http/HttpMethods.mjs +41 -6
  110. package/dist/esm/lib/structures/http/HttpMethods.mjs.map +1 -1
  111. package/dist/esm/lib/structures/http/Server.mjs +18 -24
  112. package/dist/esm/lib/structures/http/Server.mjs.map +1 -1
  113. package/dist/esm/lib/structures/router/RouterBranch.mjs +179 -0
  114. package/dist/esm/lib/structures/router/RouterBranch.mjs.map +1 -0
  115. package/dist/esm/lib/structures/router/RouterNode.mjs +56 -0
  116. package/dist/esm/lib/structures/router/RouterNode.mjs.map +1 -0
  117. package/dist/esm/lib/structures/router/RouterRoot.mjs +78 -0
  118. package/dist/esm/lib/structures/router/RouterRoot.mjs.map +1 -0
  119. package/dist/esm/lib/utils/MimeType.mjs +3 -0
  120. package/dist/esm/lib/utils/MimeType.mjs.map +1 -0
  121. package/dist/esm/lib/utils/_body/RequestHeadersProxy.mjs +95 -0
  122. package/dist/esm/lib/utils/_body/RequestHeadersProxy.mjs.map +1 -0
  123. package/dist/esm/lib/utils/_body/RequestProxy.mjs +111 -0
  124. package/dist/esm/lib/utils/_body/RequestProxy.mjs.map +1 -0
  125. package/dist/esm/lib/utils/_body/RequestURLProxy.mjs +167 -0
  126. package/dist/esm/lib/utils/_body/RequestURLProxy.mjs.map +1 -0
  127. package/dist/esm/lib/utils/constants.mjs +8 -0
  128. package/dist/esm/lib/utils/constants.mjs.map +1 -0
  129. package/dist/esm/listeners/PluginRouteError.mjs +5 -5
  130. package/dist/esm/listeners/PluginRouteError.mjs.map +1 -1
  131. package/dist/esm/listeners/PluginServerMiddlewareError.mjs +5 -5
  132. package/dist/esm/listeners/PluginServerMiddlewareError.mjs.map +1 -1
  133. package/dist/esm/listeners/PluginServerMiddlewareSuccess.mjs +7 -7
  134. package/dist/esm/listeners/PluginServerMiddlewareSuccess.mjs.map +1 -1
  135. package/dist/esm/listeners/PluginServerRequest.mjs +38 -10
  136. package/dist/esm/listeners/PluginServerRequest.mjs.map +1 -1
  137. package/dist/esm/listeners/PluginServerRouterBranchMethodNotAllowed.mjs +18 -0
  138. package/dist/esm/listeners/PluginServerRouterBranchMethodNotAllowed.mjs.map +1 -0
  139. package/dist/esm/listeners/{PluginServerNoMatch.mjs → PluginServerRouterBranchNotFound.mjs} +5 -5
  140. package/dist/esm/listeners/PluginServerRouterBranchNotFound.mjs.map +1 -0
  141. package/dist/esm/listeners/PluginServerRouterFound.mjs +19 -0
  142. package/dist/esm/listeners/PluginServerRouterFound.mjs.map +1 -0
  143. package/dist/esm/listeners/_load.mjs +14 -12
  144. package/dist/esm/listeners/_load.mjs.map +1 -1
  145. package/dist/esm/middlewares/_load.mjs +2 -2
  146. package/dist/esm/middlewares/_load.mjs.map +1 -1
  147. package/dist/esm/middlewares/auth.mjs +2 -2
  148. package/dist/esm/middlewares/auth.mjs.map +1 -1
  149. package/dist/esm/middlewares/body.mjs +5 -18
  150. package/dist/esm/middlewares/body.mjs.map +1 -1
  151. package/dist/esm/middlewares/cookies.mjs +2 -2
  152. package/dist/esm/middlewares/cookies.mjs.map +1 -1
  153. package/dist/esm/middlewares/headers.mjs +20 -10
  154. package/dist/esm/middlewares/headers.mjs.map +1 -1
  155. package/dist/esm/register.d.mts +0 -1
  156. package/dist/esm/register.mjs +4 -5
  157. package/dist/esm/register.mjs.map +1 -1
  158. package/dist/esm/routes/_load.mjs +4 -4
  159. package/dist/esm/routes/_load.mjs.map +1 -1
  160. package/dist/esm/routes/oauth/{callback.mjs → callback.post.mjs} +6 -7
  161. package/dist/esm/routes/oauth/callback.post.mjs.map +1 -0
  162. package/dist/esm/routes/oauth/{logout.mjs → logout.post.mjs} +6 -8
  163. package/dist/esm/routes/oauth/logout.post.mjs.map +1 -0
  164. package/package.json +11 -8
  165. package/dist/cjs/lib/structures/MediaParser.cjs +0 -79
  166. package/dist/cjs/lib/structures/MediaParser.cjs.map +0 -1
  167. package/dist/cjs/lib/structures/MediaParserStore.cjs +0 -27
  168. package/dist/cjs/lib/structures/MediaParserStore.cjs.map +0 -1
  169. package/dist/cjs/lib/utils/MimeTypes.cjs +0 -26
  170. package/dist/cjs/lib/utils/MimeTypes.cjs.map +0 -1
  171. package/dist/cjs/lib/utils/RouteData.cjs +0 -62
  172. package/dist/cjs/lib/utils/RouteData.cjs.map +0 -1
  173. package/dist/cjs/listeners/PluginServerMatch.cjs.map +0 -1
  174. package/dist/cjs/listeners/PluginServerNoMatch.cjs.map +0 -1
  175. package/dist/cjs/mediaParsers/_load.cjs +0 -20
  176. package/dist/cjs/mediaParsers/_load.cjs.map +0 -1
  177. package/dist/cjs/mediaParsers/applicationFormUrlEncoded.cjs +0 -23
  178. package/dist/cjs/mediaParsers/applicationFormUrlEncoded.cjs.map +0 -1
  179. package/dist/cjs/mediaParsers/applicationJson.cjs +0 -22
  180. package/dist/cjs/mediaParsers/applicationJson.cjs.map +0 -1
  181. package/dist/cjs/mediaParsers/textPlain.cjs +0 -22
  182. package/dist/cjs/mediaParsers/textPlain.cjs.map +0 -1
  183. package/dist/cjs/routes/oauth/callback.cjs.map +0 -1
  184. package/dist/cjs/routes/oauth/logout.cjs.map +0 -1
  185. package/dist/esm/chunk-JTFKMR4I.mjs.map +0 -1
  186. package/dist/esm/lib/structures/MediaParser.mjs +0 -76
  187. package/dist/esm/lib/structures/MediaParser.mjs.map +0 -1
  188. package/dist/esm/lib/structures/MediaParserStore.mjs +0 -24
  189. package/dist/esm/lib/structures/MediaParserStore.mjs.map +0 -1
  190. package/dist/esm/lib/utils/MimeTypes.mjs +0 -26
  191. package/dist/esm/lib/utils/MimeTypes.mjs.map +0 -1
  192. package/dist/esm/lib/utils/RouteData.mjs +0 -56
  193. package/dist/esm/lib/utils/RouteData.mjs.map +0 -1
  194. package/dist/esm/listeners/PluginServerMatch.mjs +0 -23
  195. package/dist/esm/listeners/PluginServerMatch.mjs.map +0 -1
  196. package/dist/esm/listeners/PluginServerNoMatch.mjs.map +0 -1
  197. package/dist/esm/mediaParsers/_load.mjs +0 -17
  198. package/dist/esm/mediaParsers/_load.mjs.map +0 -1
  199. package/dist/esm/mediaParsers/applicationFormUrlEncoded.mjs +0 -20
  200. package/dist/esm/mediaParsers/applicationFormUrlEncoded.mjs.map +0 -1
  201. package/dist/esm/mediaParsers/applicationJson.mjs +0 -19
  202. package/dist/esm/mediaParsers/applicationJson.mjs.map +0 -1
  203. package/dist/esm/mediaParsers/textPlain.mjs +0 -19
  204. package/dist/esm/mediaParsers/textPlain.mjs.map +0 -1
  205. package/dist/esm/routes/oauth/callback.mjs.map +0 -1
  206. 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,8 @@
1
+ 'use strict';
2
+
3
+ // src/lib/utils/constants.ts
4
+ var NodeUtilInspectSymbol = Symbol.for("nodejs.util.inspect.custom");
5
+
6
+ exports.NodeUtilInspectSymbol = NodeUtilInspectSymbol;
7
+ //# sourceMappingURL=constants.cjs.map
8
+ //# sourceMappingURL=constants.cjs.map
@@ -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.ServerEvents.RouteError });
11
+ super(context, { emitter: "server", event: Server_cjs.ServerEvent.RouteError });
12
12
  }
13
- run(error, { response }) {
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=out.js.map
22
+ //# sourceMappingURL=PluginRouteError.cjs.map
23
23
  //# sourceMappingURL=PluginRouteError.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/listeners/PluginRouteError.ts"],"names":[],"mappings":";;;;AAAA,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAC1B,SAAS,oBAAiD;AAEnD,IAAM,kBAAN,MAAM,wBAAuB,SAAS;AAAA,EACrC,YAAY,SAAiC;AACnD,UAAM,SAAS,EAAE,SAAS,UAAU,OAAO,aAAa,WAAW,CAAC;AAAA,EACrE;AAAA,EAEgB,IAAI,OAAc,EAAE,SAAS,GAA2B;AAEvE,SAAK,UAAU,OAAO,MAAM,KAAK;AAGjC,QAAI,CAAC,SAAS,cAAe,UAAS,OAAO,UAAU,mBAAmB,EAAE,KAAK,EAAE,OAAO,MAAM,WAAW,MAAM,CAAC;AAAA,EACnH;AACD;AAZ6C;AAAtC,IAAM,iBAAN","sourcesContent":["import { Listener } from '@sapphire/framework';\nimport { HttpCodes } from '../lib/structures/http/HttpCodes';\nimport { ServerEvents, type MiddlewareErrorContext } from '../lib/structures/http/Server';\n\nexport class PluginListener extends Listener {\n\tpublic constructor(context: Listener.LoaderContext) {\n\t\tsuper(context, { emitter: 'server', event: ServerEvents.RouteError });\n\t}\n\n\tpublic override run(error: Error, { response }: MiddlewareErrorContext) {\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"]}
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.ServerEvents.MiddlewareError });
11
+ super(context, { emitter: "server", event: Server_cjs.ServerEvent.MiddlewareError });
12
12
  }
13
- run(error, { response }) {
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=out.js.map
22
+ //# sourceMappingURL=PluginServerMiddlewareError.cjs.map
23
23
  //# sourceMappingURL=PluginServerMiddlewareError.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/listeners/PluginServerMiddlewareError.ts"],"names":[],"mappings":";;;;AAAA,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAC1B,SAAS,oBAAiD;AAEnD,IAAM,kBAAN,MAAM,wBAAuB,SAAS;AAAA,EACrC,YAAY,SAAiC;AACnD,UAAM,SAAS,EAAE,SAAS,UAAU,OAAO,aAAa,gBAAgB,CAAC;AAAA,EAC1E;AAAA,EAEgB,IAAI,OAAc,EAAE,SAAS,GAA2B;AAEvE,SAAK,UAAU,OAAO,MAAM,KAAK;AAGjC,QAAI,CAAC,SAAS,cAAe,UAAS,OAAO,UAAU,mBAAmB,EAAE,KAAK,EAAE,OAAO,MAAM,WAAW,MAAM,CAAC;AAAA,EACnH;AACD;AAZ6C;AAAtC,IAAM,iBAAN","sourcesContent":["import { Listener } from '@sapphire/framework';\nimport { HttpCodes } from '../lib/structures/http/HttpCodes';\nimport { ServerEvents, type MiddlewareErrorContext } from '../lib/structures/http/Server';\n\nexport class PluginListener extends Listener {\n\tpublic constructor(context: Listener.LoaderContext) {\n\t\tsuper(context, { emitter: 'server', event: ServerEvents.MiddlewareError });\n\t}\n\n\tpublic override run(error: Error, { response }: MiddlewareErrorContext) {\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"]}
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.ServerEvents.MiddlewareSuccess });
10
+ super(context, { emitter: "server", event: Server_cjs.ServerEvent.MiddlewareSuccess });
11
11
  }
12
- async run(request, response, match) {
12
+ async run(request, response) {
13
13
  try {
14
- await match.cb(request, response);
14
+ await request.route.run(request, response);
15
15
  } catch (error) {
16
- this.container.server.emit(Server_cjs.ServerEvents.RouteError, error, { request, response, match });
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=out.js.map
24
+ //# sourceMappingURL=PluginServerMiddlewareSuccess.cjs.map
25
25
  //# sourceMappingURL=PluginServerMiddlewareSuccess.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/listeners/PluginServerMiddlewareSuccess.ts"],"names":[],"mappings":";;;;AAAA,SAAS,gBAAgB;AAIzB,SAAS,oBAAoB;AAEtB,IAAM,kBAAN,MAAM,wBAAuB,SAAS;AAAA,EACrC,YAAY,SAAiC;AACnD,UAAM,SAAS,EAAE,SAAS,UAAU,OAAO,aAAa,kBAAkB,CAAC;AAAA,EAC5E;AAAA,EAEA,MAAsB,IAAI,SAAqB,UAAuB,OAAmB;AACxF,QAAI;AACH,YAAM,MAAM,GAAG,SAAS,QAAQ;AAAA,IACjC,SAAS,OAAO;AACf,WAAK,UAAU,OAAO,KAAK,aAAa,YAAY,OAAO,EAAE,SAAS,UAAU,MAAM,CAAC;AAAA,IACxF;AAAA,EACD;AACD;AAZ6C;AAAtC,IAAM,iBAAN","sourcesContent":["import { Listener } from '@sapphire/framework';\nimport type { RouteMatch } from '../lib/structures/RouteStore';\nimport type { ApiRequest } from '../lib/structures/api/ApiRequest';\nimport type { ApiResponse } from '../lib/structures/api/ApiResponse';\nimport { ServerEvents } from '../lib/structures/http/Server';\n\nexport class PluginListener extends Listener {\n\tpublic constructor(context: Listener.LoaderContext) {\n\t\tsuper(context, { emitter: 'server', event: ServerEvents.MiddlewareSuccess });\n\t}\n\n\tpublic override async run(request: ApiRequest, response: ApiResponse, match: RouteMatch) {\n\t\ttry {\n\t\t\tawait match.cb(request, response);\n\t\t} catch (error) {\n\t\t\tthis.container.server.emit(ServerEvents.RouteError, error, { request, response, match });\n\t\t}\n\t}\n}\n"]}
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.ServerEvents.Request });
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 match = this.container.server.routes.match(request);
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, match?.route ?? null);
33
+ await this.container.server.middlewares.run(request, response);
16
34
  } catch (error) {
17
- this.container.server.emit(Server_cjs.ServerEvents.MiddlewareError, error, { request, response, match });
35
+ this.container.server.emit(Server_cjs.ServerEvent.MiddlewareError, error, request, response);
18
36
  return;
19
37
  }
20
- if (match === null) {
21
- this.container.server.emit(Server_cjs.ServerEvents.NoMatch, request, response);
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.ServerEvents.Match, request, response, match);
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=out.js.map
65
+ //# sourceMappingURL=PluginServerRequest.cjs.map
32
66
  //# sourceMappingURL=PluginServerRequest.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/listeners/PluginServerRequest.ts"],"names":[],"mappings":";;;;AAAA,SAAS,gBAAgB;AAGzB,SAAS,oBAAoB;AAEtB,IAAM,kBAAN,MAAM,wBAAuB,SAAS;AAAA,EACrC,YAAY,SAAiC;AACnD,UAAM,SAAS,EAAE,SAAS,UAAU,OAAO,aAAa,QAAQ,CAAC;AAAA,EAClE;AAAA,EAEA,MAAsB,IAAI,SAAqB,UAAuB;AACrE,UAAM,QAAQ,KAAK,UAAU,OAAO,OAAO,MAAM,OAAO;AAExD,QAAI;AAEH,YAAM,KAAK,UAAU,OAAO,YAAY,IAAI,SAAS,UAAU,OAAO,SAAS,IAAI;AAAA,IACpF,SAAS,OAAO;AACf,WAAK,UAAU,OAAO,KAAK,aAAa,iBAAiB,OAAO,EAAE,SAAS,UAAU,MAAM,CAAC;AAG5F;AAAA,IACD;AAEA,QAAI,UAAU,MAAM;AACnB,WAAK,UAAU,OAAO,KAAK,aAAa,SAAS,SAAS,QAAQ;AAAA,IACnE,OAAO;AACN,WAAK,UAAU,OAAO,KAAK,aAAa,OAAO,SAAS,UAAU,KAAK;AAAA,IACxE;AAAA,EACD;AACD;AAxB6C;AAAtC,IAAM,iBAAN","sourcesContent":["import { Listener } from '@sapphire/framework';\nimport type { ApiRequest } from '../lib/structures/api/ApiRequest';\nimport type { ApiResponse } from '../lib/structures/api/ApiResponse';\nimport { ServerEvents } from '../lib/structures/http/Server';\n\nexport class PluginListener extends Listener {\n\tpublic constructor(context: Listener.LoaderContext) {\n\t\tsuper(context, { emitter: 'server', event: ServerEvents.Request });\n\t}\n\n\tpublic override async run(request: ApiRequest, response: ApiResponse) {\n\t\tconst match = this.container.server.routes.match(request);\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, match?.route ?? null);\n\t\t} catch (error) {\n\t\t\tthis.container.server.emit(ServerEvents.MiddlewareError, error, { request, response, match });\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 (match === null) {\n\t\t\tthis.container.server.emit(ServerEvents.NoMatch, request, response);\n\t\t} else {\n\t\t\tthis.container.server.emit(ServerEvents.Match, request, response, match);\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"sources":["../../../src/listeners/PluginServerRequest.ts"],"names":["Listener","ServerEvent","RouterRoot"],"mappings":"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","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"]}
@@ -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.ServerEvents.Match });
10
+ super(context, { emitter: "server", event: Server_cjs.ServerEvent.RouterBranchMethodNotAllowed });
11
11
  }
12
- run(request, response, match) {
13
- this.container.server.emit(
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=out.js.map
26
- //# sourceMappingURL=PluginServerMatch.cjs.map
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.ServerEvents.NoMatch });
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=out.js.map
21
- //# sourceMappingURL=PluginServerNoMatch.cjs.map
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=out.js.map
27
+ //# sourceMappingURL=_load.cjs.map
26
28
  //# sourceMappingURL=_load.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/listeners/_load.ts"],"names":[],"mappings":";;;;AAAA,SAAS,iBAAiB;AAC1B,SAAS,kBAAkB,wBAAwB;AACnD,SAAS,kBAAkB,yBAAyB;AACpD,SAAS,kBAAkB,mCAAmC;AAC9D,SAAS,kBAAkB,qCAAqC;AAChE,SAAS,kBAAkB,2BAA2B;AACtD,SAAS,kBAAkB,2BAA2B;AAE/C,SAAS,gBAAgB;AAC/B,QAAM,QAAQ;AACd,OAAK,UAAU,OAAO,UAAU,EAAE,MAAM,oBAAoB,OAAO,kBAAkB,MAAM,CAAC;AAC5F,OAAK,UAAU,OAAO,UAAU,EAAE,MAAM,qBAAqB,OAAO,mBAAmB,MAAM,CAAC;AAC9F,OAAK,UAAU,OAAO,UAAU,EAAE,MAAM,+BAA+B,OAAO,6BAA6B,MAAM,CAAC;AAClH,OAAK,UAAU,OAAO,UAAU,EAAE,MAAM,iCAAiC,OAAO,+BAA+B,MAAM,CAAC;AACtH,OAAK,UAAU,OAAO,UAAU,EAAE,MAAM,uBAAuB,OAAO,qBAAqB,MAAM,CAAC;AAClG,OAAK,UAAU,OAAO,UAAU,EAAE,MAAM,uBAAuB,OAAO,qBAAqB,MAAM,CAAC;AACnG;AARgB","sourcesContent":["import { container } from '@sapphire/pieces';\nimport { PluginListener as PluginRouteError } from './PluginRouteError';\nimport { PluginListener as PluginServerMatch } from './PluginServerMatch';\nimport { PluginListener as PluginServerMiddlewareError } from './PluginServerMiddlewareError';\nimport { PluginListener as PluginServerMiddlewareSuccess } from './PluginServerMiddlewareSuccess';\nimport { PluginListener as PluginServerNoMatch } from './PluginServerNoMatch';\nimport { PluginListener as PluginServerRequest } from './PluginServerRequest';\n\nexport function loadListeners() {\n\tconst store = 'listeners' as const;\n\tvoid container.stores.loadPiece({ name: 'PluginRouteError', piece: PluginRouteError, store });\n\tvoid container.stores.loadPiece({ name: 'PluginServerMatch', piece: PluginServerMatch, 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: 'PluginServerNoMatch', piece: PluginServerNoMatch, store });\n\tvoid container.stores.loadPiece({ name: 'PluginServerRequest', piece: PluginServerRequest, store });\n}\n"]}
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"]}
@@ -18,5 +18,5 @@ function loadMiddlewares() {
18
18
  __name(loadMiddlewares, "loadMiddlewares");
19
19
 
20
20
  exports.loadMiddlewares = loadMiddlewares;
21
- //# sourceMappingURL=out.js.map
21
+ //# sourceMappingURL=_load.cjs.map
22
22
  //# sourceMappingURL=_load.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/middlewares/_load.ts"],"names":[],"mappings":";;;;AAAA,SAAS,iBAAiB;AAC1B,SAAS,oBAAoB,kBAAkB;AAC/C,SAAS,oBAAoB,kBAAkB;AAC/C,SAAS,oBAAoB,qBAAqB;AAClD,SAAS,oBAAoB,qBAAqB;AAE3C,SAAS,kBAAkB;AACjC,QAAM,QAAQ;AACd,OAAK,UAAU,OAAO,UAAU,EAAE,MAAM,QAAQ,OAAO,YAAY,MAAM,CAAC;AAC1E,OAAK,UAAU,OAAO,UAAU,EAAE,MAAM,QAAQ,OAAO,YAAY,MAAM,CAAC;AAC1E,OAAK,UAAU,OAAO,UAAU,EAAE,MAAM,WAAW,OAAO,eAAe,MAAM,CAAC;AAChF,OAAK,UAAU,OAAO,UAAU,EAAE,MAAM,WAAW,OAAO,eAAe,MAAM,CAAC;AACjF;AANgB","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' as const;\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"]}
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, typeof key !== "symbol" ? key + "" : key, value);
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=out.js.map
31
+ //# sourceMappingURL=auth.cjs.map
32
32
  //# sourceMappingURL=auth.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/middlewares/auth.ts"],"names":[],"mappings":";;;;;;AAEA,SAAS,kBAAkB;AAEpB,IAAM,oBAAN,MAAM,0BAAyB,WAAW;AAAA,EAGzC,YAAY,SAAmC;AACrD,UAAM,SAAS,EAAE,UAAU,GAAG,CAAC;AAHhC,wBAAiB;AAKhB,UAAM,EAAE,OAAO,IAAI,KAAK;AACxB,SAAK,aAAa,OAAO,MAAM,UAAU;AACzC,SAAK,UAAU,OAAO,SAAS;AAAA,EAChC;AAAA,EAEgB,IAAI,SAAqB,UAAuB;AAE/D,UAAM,gBAAgB,SAAS,QAAQ,IAAI,KAAK,UAAU;AAC1D,QAAI,CAAC,eAAe;AACnB,cAAQ,OAAO;AACf;AAAA,IACD;AAGA,YAAQ,OAAO,KAAK,UAAU,OAAO,KAAM,QAAQ,aAAa;AAChE,QAAI,QAAQ,SAAS,KAAM,UAAS,QAAQ,OAAO,KAAK,UAAU;AAAA,EACnE;AACD;AAvBiD;AAA1C,IAAM,mBAAN","sourcesContent":["import type { ApiRequest } from '../lib/structures/api/ApiRequest';\nimport type { ApiResponse } from '../lib/structures/api/ApiResponse';\nimport { 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: ApiRequest, response: ApiResponse) {\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"]}
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"]}