@sapphire/plugin-api 5.2.1-next.f01b974.0 → 6.0.0-next.dede596.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.cjs +134 -0
- package/dist/cjs/index.cjs.map +1 -0
- package/dist/cjs/index.d.ts +1134 -0
- package/dist/cjs/lib/structures/Augmentations.d.cjs +4 -0
- package/dist/cjs/lib/structures/Augmentations.d.cjs.map +1 -0
- package/dist/cjs/lib/structures/MediaParser.cjs +83 -0
- package/dist/cjs/lib/structures/MediaParser.cjs.map +1 -0
- package/dist/cjs/lib/structures/MediaParserStore.cjs +27 -0
- package/dist/cjs/lib/structures/MediaParserStore.cjs.map +1 -0
- package/dist/cjs/lib/structures/Middleware.cjs +34 -0
- package/dist/cjs/lib/structures/Middleware.cjs.map +1 -0
- package/dist/cjs/lib/structures/MiddlewareStore.cjs +53 -0
- package/dist/cjs/lib/structures/MiddlewareStore.cjs.map +1 -0
- package/dist/cjs/lib/structures/Route.cjs +72 -0
- package/dist/cjs/lib/structures/Route.cjs.map +1 -0
- package/dist/cjs/lib/structures/RouteStore.cjs +68 -0
- package/dist/cjs/lib/structures/RouteStore.cjs.map +1 -0
- package/dist/cjs/lib/structures/api/ApiRequest.cjs +42 -0
- package/dist/cjs/lib/structures/api/ApiRequest.cjs.map +1 -0
- package/dist/cjs/lib/structures/api/ApiResponse.cjs +126 -0
- package/dist/cjs/lib/structures/api/ApiResponse.cjs.map +1 -0
- package/dist/cjs/lib/structures/api/CookieStore.cjs +106 -0
- package/dist/cjs/lib/structures/api/CookieStore.cjs.map +1 -0
- package/dist/cjs/lib/structures/http/Auth.cjs +152 -0
- package/dist/cjs/lib/structures/http/Auth.cjs.map +1 -0
- package/dist/cjs/lib/structures/http/HttpCodes.cjs +70 -0
- package/dist/cjs/lib/structures/http/HttpCodes.cjs.map +1 -0
- package/dist/cjs/lib/structures/http/HttpMethods.cjs +12 -0
- package/dist/cjs/lib/structures/http/HttpMethods.cjs.map +1 -0
- package/dist/cjs/lib/structures/http/Server.cjs +127 -0
- package/dist/cjs/lib/structures/http/Server.cjs.map +1 -0
- package/dist/cjs/lib/utils/MimeTypes.cjs +26 -0
- package/dist/cjs/lib/utils/MimeTypes.cjs.map +1 -0
- package/dist/cjs/lib/utils/RouteData.cjs +73 -0
- package/dist/cjs/lib/utils/RouteData.cjs.map +1 -0
- package/dist/cjs/listeners/PluginRouteError.cjs +24 -0
- package/dist/cjs/listeners/PluginRouteError.cjs.map +1 -0
- package/dist/cjs/listeners/PluginServerMatch.cjs +26 -0
- package/dist/cjs/listeners/PluginServerMatch.cjs.map +1 -0
- package/dist/cjs/listeners/PluginServerMiddlewareError.cjs +24 -0
- package/dist/cjs/listeners/PluginServerMiddlewareError.cjs.map +1 -0
- package/dist/cjs/listeners/PluginServerMiddlewareSuccess.cjs +25 -0
- package/dist/cjs/listeners/PluginServerMiddlewareSuccess.cjs.map +1 -0
- package/dist/cjs/listeners/PluginServerNoMatch.cjs +22 -0
- package/dist/cjs/listeners/PluginServerNoMatch.cjs.map +1 -0
- package/dist/cjs/listeners/PluginServerRequest.cjs +32 -0
- package/dist/cjs/listeners/PluginServerRequest.cjs.map +1 -0
- package/dist/cjs/listeners/_load.cjs +26 -0
- package/dist/cjs/listeners/_load.cjs.map +1 -0
- package/dist/cjs/mediaParsers/_load.cjs +20 -0
- package/dist/cjs/mediaParsers/_load.cjs.map +1 -0
- package/dist/cjs/mediaParsers/applicationFormUrlEncoded.cjs +23 -0
- package/dist/cjs/mediaParsers/applicationFormUrlEncoded.cjs.map +1 -0
- package/dist/cjs/mediaParsers/applicationJson.cjs +22 -0
- package/dist/cjs/mediaParsers/applicationJson.cjs.map +1 -0
- package/dist/cjs/mediaParsers/textPlain.cjs +22 -0
- package/dist/cjs/mediaParsers/textPlain.cjs.map +1 -0
- package/dist/cjs/middlewares/_load.cjs +22 -0
- package/dist/cjs/middlewares/_load.cjs.map +1 -0
- package/dist/cjs/middlewares/auth.cjs +36 -0
- package/dist/cjs/middlewares/auth.cjs.map +1 -0
- package/dist/cjs/middlewares/body.cjs +50 -0
- package/dist/cjs/middlewares/body.cjs.map +1 -0
- package/dist/cjs/middlewares/cookies.cjs +30 -0
- package/dist/cjs/middlewares/cookies.cjs.map +1 -0
- package/dist/cjs/middlewares/headers.cjs +59 -0
- package/dist/cjs/middlewares/headers.cjs.map +1 -0
- package/dist/cjs/register.cjs +37 -0
- package/dist/cjs/register.cjs.map +1 -0
- package/dist/{register.d.ts → cjs/register.d.ts} +6 -5
- package/dist/cjs/routes/_load.cjs +18 -0
- package/dist/cjs/routes/_load.cjs.map +1 -0
- package/dist/cjs/routes/oauth/callback.cjs +79 -0
- package/dist/cjs/routes/oauth/callback.cjs.map +1 -0
- package/dist/cjs/routes/oauth/logout.cjs +66 -0
- package/dist/cjs/routes/oauth/logout.cjs.map +1 -0
- package/dist/esm/chunk-PYETHG4R.mjs +29 -0
- package/dist/esm/chunk-PYETHG4R.mjs.map +1 -0
- package/dist/esm/index.d.mts +1134 -0
- package/dist/esm/index.mjs +26 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/esm/lib/structures/Augmentations.d.mjs +3 -0
- package/dist/esm/lib/structures/Augmentations.d.mjs.map +1 -0
- package/dist/esm/lib/structures/MediaParser.mjs +80 -0
- package/dist/esm/lib/structures/MediaParser.mjs.map +1 -0
- package/dist/esm/lib/structures/MediaParserStore.mjs +24 -0
- package/dist/esm/lib/structures/MediaParserStore.mjs.map +1 -0
- package/dist/esm/lib/structures/Middleware.mjs +26 -0
- package/dist/esm/lib/structures/Middleware.mjs.map +1 -0
- package/dist/esm/lib/structures/MiddlewareStore.mjs +45 -0
- package/dist/esm/lib/structures/MiddlewareStore.mjs.map +1 -0
- package/dist/esm/lib/structures/Route.mjs +64 -0
- package/dist/esm/lib/structures/Route.mjs.map +1 -0
- package/dist/esm/lib/structures/RouteStore.mjs +60 -0
- package/dist/esm/lib/structures/RouteStore.mjs.map +1 -0
- package/dist/esm/lib/structures/api/ApiRequest.mjs +34 -0
- package/dist/esm/lib/structures/api/ApiRequest.mjs.map +1 -0
- package/dist/esm/lib/structures/api/ApiResponse.mjs +118 -0
- package/dist/esm/lib/structures/api/ApiResponse.mjs.map +1 -0
- package/dist/esm/lib/structures/api/CookieStore.mjs +98 -0
- package/dist/esm/lib/structures/api/CookieStore.mjs.map +1 -0
- package/dist/esm/lib/structures/http/Auth.mjs +126 -0
- package/dist/esm/lib/structures/http/Auth.mjs.map +1 -0
- package/dist/esm/lib/structures/http/HttpCodes.mjs +70 -0
- package/dist/esm/lib/structures/http/HttpCodes.mjs.map +1 -0
- package/dist/esm/lib/structures/http/HttpMethods.mjs +9 -0
- package/dist/esm/lib/structures/http/HttpMethods.mjs.map +1 -0
- package/dist/esm/lib/structures/http/Server.mjs +118 -0
- package/dist/esm/lib/structures/http/Server.mjs.map +1 -0
- package/dist/esm/lib/utils/MimeTypes.mjs +26 -0
- package/dist/esm/lib/utils/MimeTypes.mjs.map +1 -0
- package/dist/esm/lib/utils/RouteData.mjs +64 -0
- package/dist/esm/lib/utils/RouteData.mjs.map +1 -0
- package/dist/esm/listeners/PluginRouteError.mjs +21 -0
- package/dist/esm/listeners/PluginRouteError.mjs.map +1 -0
- package/dist/esm/listeners/PluginServerMatch.mjs +23 -0
- package/dist/esm/listeners/PluginServerMatch.mjs.map +1 -0
- package/dist/esm/listeners/PluginServerMiddlewareError.mjs +21 -0
- package/dist/esm/listeners/PluginServerMiddlewareError.mjs.map +1 -0
- package/dist/esm/listeners/PluginServerMiddlewareSuccess.mjs +22 -0
- package/dist/esm/listeners/PluginServerMiddlewareSuccess.mjs.map +1 -0
- package/dist/esm/listeners/PluginServerNoMatch.mjs +19 -0
- package/dist/esm/listeners/PluginServerNoMatch.mjs.map +1 -0
- package/dist/esm/listeners/PluginServerRequest.mjs +29 -0
- package/dist/esm/listeners/PluginServerRequest.mjs.map +1 -0
- package/dist/esm/listeners/_load.mjs +23 -0
- package/dist/esm/listeners/_load.mjs.map +1 -0
- package/dist/esm/mediaParsers/_load.mjs +17 -0
- package/dist/esm/mediaParsers/_load.mjs.map +1 -0
- package/dist/esm/mediaParsers/applicationFormUrlEncoded.mjs +20 -0
- package/dist/esm/mediaParsers/applicationFormUrlEncoded.mjs.map +1 -0
- package/dist/esm/mediaParsers/applicationJson.mjs +19 -0
- package/dist/esm/mediaParsers/applicationJson.mjs.map +1 -0
- package/dist/esm/mediaParsers/textPlain.mjs +19 -0
- package/dist/esm/mediaParsers/textPlain.mjs.map +1 -0
- package/dist/esm/middlewares/_load.mjs +19 -0
- package/dist/esm/middlewares/_load.mjs.map +1 -0
- package/dist/esm/middlewares/auth.mjs +28 -0
- package/dist/esm/middlewares/auth.mjs.map +1 -0
- package/dist/esm/middlewares/body.mjs +42 -0
- package/dist/esm/middlewares/body.mjs.map +1 -0
- package/dist/esm/middlewares/cookies.mjs +22 -0
- package/dist/esm/middlewares/cookies.mjs.map +1 -0
- package/dist/esm/middlewares/headers.mjs +51 -0
- package/dist/esm/middlewares/headers.mjs.map +1 -0
- package/dist/esm/register.d.mts +18 -0
- package/dist/esm/register.mjs +34 -0
- package/dist/esm/register.mjs.map +1 -0
- package/dist/esm/routes/_load.mjs +15 -0
- package/dist/esm/routes/_load.mjs.map +1 -0
- package/dist/esm/routes/oauth/callback.mjs +71 -0
- package/dist/esm/routes/oauth/callback.mjs.map +1 -0
- package/dist/esm/routes/oauth/logout.mjs +63 -0
- package/dist/esm/routes/oauth/logout.mjs.map +1 -0
- package/package.json +34 -19
- package/dist/index.d.ts +0 -38
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -32
- package/dist/index.js.map +0 -1
- package/dist/index.mjs +0 -21
- package/dist/lib/structures/MediaParser.d.ts +0 -51
- package/dist/lib/structures/MediaParser.d.ts.map +0 -1
- package/dist/lib/structures/MediaParser.js +0 -94
- package/dist/lib/structures/MediaParser.js.map +0 -1
- package/dist/lib/structures/MediaParserStore.d.ts +0 -15
- package/dist/lib/structures/MediaParserStore.d.ts.map +0 -1
- package/dist/lib/structures/MediaParserStore.js +0 -24
- package/dist/lib/structures/MediaParserStore.js.map +0 -1
- package/dist/lib/structures/Middleware.d.ts +0 -49
- package/dist/lib/structures/Middleware.d.ts.map +0 -1
- package/dist/lib/structures/Middleware.js +0 -31
- package/dist/lib/structures/Middleware.js.map +0 -1
- package/dist/lib/structures/MiddlewareStore.d.ts +0 -20
- package/dist/lib/structures/MiddlewareStore.d.ts.map +0 -1
- package/dist/lib/structures/MiddlewareStore.js +0 -52
- package/dist/lib/structures/MiddlewareStore.js.map +0 -1
- package/dist/lib/structures/Route.d.ts +0 -78
- package/dist/lib/structures/Route.d.ts.map +0 -1
- package/dist/lib/structures/Route.js +0 -84
- package/dist/lib/structures/Route.js.map +0 -1
- package/dist/lib/structures/RouteStore.d.ts +0 -23
- package/dist/lib/structures/RouteStore.d.ts.map +0 -1
- package/dist/lib/structures/RouteStore.js +0 -71
- package/dist/lib/structures/RouteStore.js.map +0 -1
- package/dist/lib/structures/api/ApiRequest.d.ts +0 -26
- package/dist/lib/structures/api/ApiRequest.d.ts.map +0 -1
- package/dist/lib/structures/api/ApiRequest.js +0 -51
- package/dist/lib/structures/api/ApiRequest.js.map +0 -1
- package/dist/lib/structures/api/ApiResponse.d.ts +0 -74
- package/dist/lib/structures/api/ApiResponse.d.ts.map +0 -1
- package/dist/lib/structures/api/ApiResponse.js +0 -123
- package/dist/lib/structures/api/ApiResponse.js.map +0 -1
- package/dist/lib/structures/api/CookieStore.d.ts +0 -30
- package/dist/lib/structures/api/CookieStore.d.ts.map +0 -1
- package/dist/lib/structures/api/CookieStore.js +0 -132
- package/dist/lib/structures/api/CookieStore.js.map +0 -1
- package/dist/lib/structures/http/Auth.d.ts +0 -164
- package/dist/lib/structures/http/Auth.d.ts.map +0 -1
- package/dist/lib/structures/http/Auth.js +0 -164
- package/dist/lib/structures/http/Auth.js.map +0 -1
- package/dist/lib/structures/http/HttpCodes.d.ts +0 -378
- package/dist/lib/structures/http/HttpCodes.d.ts.map +0 -1
- package/dist/lib/structures/http/HttpCodes.js +0 -382
- package/dist/lib/structures/http/HttpCodes.js.map +0 -1
- package/dist/lib/structures/http/HttpMethods.d.ts +0 -4
- package/dist/lib/structures/http/HttpMethods.d.ts.map +0 -1
- package/dist/lib/structures/http/HttpMethods.js +0 -7
- package/dist/lib/structures/http/HttpMethods.js.map +0 -1
- package/dist/lib/structures/http/Server.d.ts +0 -180
- package/dist/lib/structures/http/Server.d.ts.map +0 -1
- package/dist/lib/structures/http/Server.js +0 -144
- package/dist/lib/structures/http/Server.js.map +0 -1
- package/dist/lib/utils/MimeTypes.d.ts +0 -19
- package/dist/lib/utils/MimeTypes.d.ts.map +0 -1
- package/dist/lib/utils/MimeTypes.js +0 -23
- package/dist/lib/utils/MimeTypes.js.map +0 -1
- package/dist/lib/utils/RouteData.d.ts +0 -34
- package/dist/lib/utils/RouteData.d.ts.map +0 -1
- package/dist/lib/utils/RouteData.js +0 -84
- package/dist/lib/utils/RouteData.js.map +0 -1
- package/dist/listeners/PluginRouteError.d.ts +0 -7
- package/dist/listeners/PluginRouteError.d.ts.map +0 -1
- package/dist/listeners/PluginRouteError.js +0 -20
- package/dist/listeners/PluginRouteError.js.map +0 -1
- package/dist/listeners/PluginServerMatch.d.ts +0 -9
- package/dist/listeners/PluginServerMatch.d.ts.map +0 -1
- package/dist/listeners/PluginServerMatch.js +0 -15
- package/dist/listeners/PluginServerMatch.js.map +0 -1
- package/dist/listeners/PluginServerMiddlewareError.d.ts +0 -7
- package/dist/listeners/PluginServerMiddlewareError.d.ts.map +0 -1
- package/dist/listeners/PluginServerMiddlewareError.js +0 -20
- package/dist/listeners/PluginServerMiddlewareError.js.map +0 -1
- package/dist/listeners/PluginServerMiddlewareSuccess.d.ts +0 -9
- package/dist/listeners/PluginServerMiddlewareSuccess.d.ts.map +0 -1
- package/dist/listeners/PluginServerMiddlewareSuccess.js +0 -20
- package/dist/listeners/PluginServerMiddlewareSuccess.js.map +0 -1
- package/dist/listeners/PluginServerNoMatch.d.ts +0 -8
- package/dist/listeners/PluginServerNoMatch.d.ts.map +0 -1
- package/dist/listeners/PluginServerNoMatch.js +0 -16
- package/dist/listeners/PluginServerNoMatch.js.map +0 -1
- package/dist/listeners/PluginServerRequest.d.ts +0 -8
- package/dist/listeners/PluginServerRequest.d.ts.map +0 -1
- package/dist/listeners/PluginServerRequest.js +0 -30
- package/dist/listeners/PluginServerRequest.js.map +0 -1
- package/dist/listeners/_load.d.ts +0 -2
- package/dist/listeners/_load.d.ts.map +0 -1
- package/dist/listeners/_load.js +0 -21
- package/dist/listeners/_load.js.map +0 -1
- package/dist/mediaParsers/_load.d.ts +0 -2
- package/dist/mediaParsers/_load.d.ts.map +0 -1
- package/dist/mediaParsers/_load.js +0 -15
- package/dist/mediaParsers/_load.js.map +0 -1
- package/dist/mediaParsers/applicationFormUrlEncoded.d.ts +0 -7
- package/dist/mediaParsers/applicationFormUrlEncoded.d.ts.map +0 -1
- package/dist/mediaParsers/applicationFormUrlEncoded.js +0 -17
- package/dist/mediaParsers/applicationFormUrlEncoded.js.map +0 -1
- package/dist/mediaParsers/applicationJson.d.ts +0 -7
- package/dist/mediaParsers/applicationJson.d.ts.map +0 -1
- package/dist/mediaParsers/applicationJson.js +0 -16
- package/dist/mediaParsers/applicationJson.js.map +0 -1
- package/dist/mediaParsers/textPlain.d.ts +0 -7
- package/dist/mediaParsers/textPlain.d.ts.map +0 -1
- package/dist/mediaParsers/textPlain.js +0 -16
- package/dist/mediaParsers/textPlain.js.map +0 -1
- package/dist/middlewares/_load.d.ts +0 -2
- package/dist/middlewares/_load.d.ts.map +0 -1
- package/dist/middlewares/_load.js +0 -17
- package/dist/middlewares/_load.js.map +0 -1
- package/dist/middlewares/auth.d.ts +0 -9
- package/dist/middlewares/auth.d.ts.map +0 -1
- package/dist/middlewares/auth.js +0 -32
- package/dist/middlewares/auth.js.map +0 -1
- package/dist/middlewares/body.d.ts +0 -10
- package/dist/middlewares/body.d.ts.map +0 -1
- package/dist/middlewares/body.js +0 -50
- package/dist/middlewares/body.js.map +0 -1
- package/dist/middlewares/cookies.d.ts +0 -10
- package/dist/middlewares/cookies.d.ts.map +0 -1
- package/dist/middlewares/cookies.js +0 -29
- package/dist/middlewares/cookies.js.map +0 -1
- package/dist/middlewares/headers.d.ts +0 -27
- package/dist/middlewares/headers.d.ts.map +0 -1
- package/dist/middlewares/headers.js +0 -59
- package/dist/middlewares/headers.js.map +0 -1
- package/dist/register.d.ts.map +0 -1
- package/dist/register.js +0 -42
- package/dist/register.js.map +0 -1
- package/dist/register.mjs +0 -4
- package/dist/routes/_load.d.ts +0 -2
- package/dist/routes/_load.d.ts.map +0 -1
- package/dist/routes/_load.js +0 -13
- package/dist/routes/_load.js.map +0 -1
- package/dist/routes/oauth/callback.d.ts +0 -28
- package/dist/routes/oauth/callback.d.ts.map +0 -1
- package/dist/routes/oauth/callback.js +0 -73
- package/dist/routes/oauth/callback.js.map +0 -1
- package/dist/routes/oauth/logout.d.ts +0 -8
- package/dist/routes/oauth/logout.d.ts.map +0 -1
- package/dist/routes/oauth/logout.js +0 -94
- package/dist/routes/oauth/logout.js.map +0 -1
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ApiResponse = void 0;
|
|
4
|
-
const http_1 = require("http");
|
|
5
|
-
const MimeTypes_1 = require("../../utils/MimeTypes");
|
|
6
|
-
const HttpCodes_1 = require("../http/HttpCodes");
|
|
7
|
-
/**
|
|
8
|
-
* @since 1.0.0
|
|
9
|
-
*/
|
|
10
|
-
class ApiResponse extends http_1.ServerResponse {
|
|
11
|
-
constructor() {
|
|
12
|
-
super(...arguments);
|
|
13
|
-
/**
|
|
14
|
-
* @since 1.0.0
|
|
15
|
-
*/
|
|
16
|
-
Object.defineProperty(this, "cookies", {
|
|
17
|
-
enumerable: true,
|
|
18
|
-
configurable: true,
|
|
19
|
-
writable: true,
|
|
20
|
-
value: void 0
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* @since 1.0.0
|
|
25
|
-
*/
|
|
26
|
-
ok(data = http_1.STATUS_CODES[HttpCodes_1.HttpCodes.OK]) {
|
|
27
|
-
this.status(HttpCodes_1.HttpCodes.OK);
|
|
28
|
-
return this.respond(data);
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* @since 1.0.0
|
|
32
|
-
*/
|
|
33
|
-
created(data = http_1.STATUS_CODES[HttpCodes_1.HttpCodes.Created]) {
|
|
34
|
-
this.status(HttpCodes_1.HttpCodes.Created);
|
|
35
|
-
return this.respond(data);
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* @since 1.0.0
|
|
39
|
-
*/
|
|
40
|
-
noContent(data = http_1.STATUS_CODES[HttpCodes_1.HttpCodes.NoContent]) {
|
|
41
|
-
this.status(HttpCodes_1.HttpCodes.NoContent);
|
|
42
|
-
return this.respond(data);
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* @since 1.0.0
|
|
46
|
-
*/
|
|
47
|
-
badRequest(data) {
|
|
48
|
-
return this.error(HttpCodes_1.HttpCodes.BadRequest, data);
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* @since 1.0.0
|
|
52
|
-
*/
|
|
53
|
-
unauthorized(data) {
|
|
54
|
-
return this.error(HttpCodes_1.HttpCodes.Unauthorized, data);
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* @since 1.0.0
|
|
58
|
-
*/
|
|
59
|
-
forbidden(data) {
|
|
60
|
-
return this.error(HttpCodes_1.HttpCodes.Forbidden, data);
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* @since 1.0.0
|
|
64
|
-
*/
|
|
65
|
-
notFound(data) {
|
|
66
|
-
return this.error(HttpCodes_1.HttpCodes.NotFound, data);
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* @since 1.0.0
|
|
70
|
-
*/
|
|
71
|
-
conflict(data) {
|
|
72
|
-
return this.error(HttpCodes_1.HttpCodes.Conflict, data);
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* @since 1.0.0
|
|
76
|
-
*/
|
|
77
|
-
error(error, data) {
|
|
78
|
-
if (typeof error === 'string') {
|
|
79
|
-
return this.status(HttpCodes_1.HttpCodes.InternalServerError).json({ error });
|
|
80
|
-
}
|
|
81
|
-
return this.status(error).json({ error: data ?? http_1.STATUS_CODES[error] });
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* @since 1.0.0
|
|
85
|
-
*/
|
|
86
|
-
respond(data) {
|
|
87
|
-
return typeof data === 'string' ? this.text(data) : this.json(data);
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* @since 1.0.0
|
|
91
|
-
*/
|
|
92
|
-
status(code) {
|
|
93
|
-
this.statusCode = code;
|
|
94
|
-
return this;
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* @since 1.0.0
|
|
98
|
-
*/
|
|
99
|
-
json(data) {
|
|
100
|
-
this.setContentType(MimeTypes_1.MimeTypes.ApplicationJson).end(JSON.stringify(data));
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* @since 1.0.0
|
|
104
|
-
*/
|
|
105
|
-
text(data) {
|
|
106
|
-
this.setContentType(MimeTypes_1.MimeTypes.TextPlain).end(data);
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* @since 5.1.0
|
|
110
|
-
*/
|
|
111
|
-
html(code, data) {
|
|
112
|
-
this.setContentType(MimeTypes_1.MimeTypes.TextHtml).status(code).end(data);
|
|
113
|
-
}
|
|
114
|
-
/**
|
|
115
|
-
* @since 1.0.0
|
|
116
|
-
*/
|
|
117
|
-
setContentType(contentType) {
|
|
118
|
-
this.setHeader('Content-Type', contentType);
|
|
119
|
-
return this;
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
exports.ApiResponse = ApiResponse;
|
|
123
|
-
//# sourceMappingURL=ApiResponse.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ApiResponse.js","sourceRoot":"","sources":["../../../../src/lib/structures/api/ApiResponse.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import type { ApiRequest } from './ApiRequest';
|
|
2
|
-
import type { ApiResponse } from './ApiResponse';
|
|
3
|
-
export declare class CookieStore extends Map<string, string> {
|
|
4
|
-
protected request: ApiRequest;
|
|
5
|
-
protected response: ApiResponse;
|
|
6
|
-
private domain;
|
|
7
|
-
private secure;
|
|
8
|
-
constructor(request: ApiRequest, response: ApiResponse, secure: boolean, domainOverwrite?: string | null);
|
|
9
|
-
add(name: string, value: string, options?: SecureCookieStoreSetOptions): void;
|
|
10
|
-
remove(name: string): void;
|
|
11
|
-
protected insert(name: string, entry: string): void;
|
|
12
|
-
protected prepare(name: string, value: string, { expires, maxAge, domain, path, httpOnly }?: SecureCookieStoreSetOptions): string;
|
|
13
|
-
/**
|
|
14
|
-
* Parses a host using the {@linkplain https://github.com/remusao/tldts tldts} library to extract the domain.
|
|
15
|
-
* This is used for the domain of the cookie
|
|
16
|
-
* @param host The hot to parse
|
|
17
|
-
* @returns Either the host in all lower case or the parsed domain, ready for use on cookies
|
|
18
|
-
*/
|
|
19
|
-
private getHostDomain;
|
|
20
|
-
private static readonly octetRegExp;
|
|
21
|
-
private static encodeCookieOctet;
|
|
22
|
-
}
|
|
23
|
-
export interface SecureCookieStoreSetOptions {
|
|
24
|
-
expires?: Date;
|
|
25
|
-
maxAge?: number;
|
|
26
|
-
domain?: string;
|
|
27
|
-
path?: string;
|
|
28
|
-
httpOnly?: boolean;
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=CookieStore.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CookieStore.d.ts","sourceRoot":"","sources":["../../../../src/lib/structures/api/CookieStore.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,qBAAa,WAAY,SAAQ,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IACnD,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC;IAC9B,SAAS,CAAC,QAAQ,EAAE,WAAW,CAAC;IAChC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAU;gBAEL,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI;IA+BxG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,2BAA2B;IAItE,MAAM,CAAC,IAAI,EAAE,MAAM;IAI1B,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAe5C,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAE,2BAAgC;IAoC5H;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAerB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAkD;IAErF,OAAO,CAAC,MAAM,CAAC,iBAAiB;CAOhC;AAED,MAAM,WAAW,2BAA2B;IAC3C,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB"}
|
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// Copyright (c) 2018 Stanislav Woodger. All rights reserved. MIT license.
|
|
3
|
-
// Source: https://github.com/woodger/cookie-httponly
|
|
4
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.CookieStore = void 0;
|
|
6
|
-
const tldts_1 = require("tldts");
|
|
7
|
-
class CookieStore extends Map {
|
|
8
|
-
constructor(request, response, secure, domainOverwrite) {
|
|
9
|
-
super();
|
|
10
|
-
Object.defineProperty(this, "request", {
|
|
11
|
-
enumerable: true,
|
|
12
|
-
configurable: true,
|
|
13
|
-
writable: true,
|
|
14
|
-
value: void 0
|
|
15
|
-
});
|
|
16
|
-
Object.defineProperty(this, "response", {
|
|
17
|
-
enumerable: true,
|
|
18
|
-
configurable: true,
|
|
19
|
-
writable: true,
|
|
20
|
-
value: void 0
|
|
21
|
-
});
|
|
22
|
-
Object.defineProperty(this, "domain", {
|
|
23
|
-
enumerable: true,
|
|
24
|
-
configurable: true,
|
|
25
|
-
writable: true,
|
|
26
|
-
value: void 0
|
|
27
|
-
});
|
|
28
|
-
Object.defineProperty(this, "secure", {
|
|
29
|
-
enumerable: true,
|
|
30
|
-
configurable: true,
|
|
31
|
-
writable: true,
|
|
32
|
-
value: void 0
|
|
33
|
-
});
|
|
34
|
-
this.request = request;
|
|
35
|
-
this.response = response;
|
|
36
|
-
// Read cookies
|
|
37
|
-
const { cookie = '' } = request.headers;
|
|
38
|
-
const pairs = cookie.split(';');
|
|
39
|
-
for (const pair of pairs) {
|
|
40
|
-
const index = pair.indexOf('=');
|
|
41
|
-
if (index === -1)
|
|
42
|
-
continue;
|
|
43
|
-
const key = decodeURIComponent(pair.substr(0, index).trim());
|
|
44
|
-
const value = decodeURIComponent(pair.substr(index + 1).trim());
|
|
45
|
-
this.set(key, value);
|
|
46
|
-
}
|
|
47
|
-
const [splitHost] = this.request.headers.host?.split(':') ?? [''];
|
|
48
|
-
this.domain = domainOverwrite ?? this.getHostDomain(splitHost);
|
|
49
|
-
if (this.request.socket.remoteAddress === this.domain) {
|
|
50
|
-
throw new Error('The connection must be established from the domain name (i.e., not an IP address)');
|
|
51
|
-
}
|
|
52
|
-
// RFC 6265 4.1.2.5. The Secure Attribute
|
|
53
|
-
this.secure = secure;
|
|
54
|
-
}
|
|
55
|
-
add(name, value, options) {
|
|
56
|
-
this.insert(name, this.prepare(name, value, options));
|
|
57
|
-
}
|
|
58
|
-
remove(name) {
|
|
59
|
-
this.add(name, '', { expires: new Date(0) });
|
|
60
|
-
}
|
|
61
|
-
insert(name, entry) {
|
|
62
|
-
let set = this.response.getHeader('Set-Cookie');
|
|
63
|
-
if (set === undefined) {
|
|
64
|
-
set = [];
|
|
65
|
-
}
|
|
66
|
-
else if (!Array.isArray(set)) {
|
|
67
|
-
set = [set.toString()];
|
|
68
|
-
}
|
|
69
|
-
set = set.filter((i) => i.substr(0, i.indexOf('=')) !== name);
|
|
70
|
-
set.push(entry);
|
|
71
|
-
this.response.setHeader('Set-Cookie', set);
|
|
72
|
-
}
|
|
73
|
-
prepare(name, value, { expires, maxAge, domain, path, httpOnly } = {}) {
|
|
74
|
-
const now = new Date();
|
|
75
|
-
if (expires === undefined) {
|
|
76
|
-
expires = now;
|
|
77
|
-
}
|
|
78
|
-
// RFC 6265 4.1.1. Syntax
|
|
79
|
-
name = CookieStore.encodeCookieOctet(name);
|
|
80
|
-
value = CookieStore.encodeCookieOctet(value);
|
|
81
|
-
let entry = `${name}=${value}`;
|
|
82
|
-
if (expires !== now) {
|
|
83
|
-
entry += `; Expires=${expires.toUTCString()}`;
|
|
84
|
-
}
|
|
85
|
-
else if (maxAge) {
|
|
86
|
-
entry += `; Max-Age=${maxAge}`;
|
|
87
|
-
}
|
|
88
|
-
// RFC 6265 5.1.3 Domain Matching
|
|
89
|
-
domain = (domain ?? this.domain).toLowerCase();
|
|
90
|
-
entry += `; Domain=${domain}`;
|
|
91
|
-
entry += `; Path=${path ?? '/'}`;
|
|
92
|
-
if (this.secure) {
|
|
93
|
-
entry += `; Secure`;
|
|
94
|
-
}
|
|
95
|
-
if (httpOnly ?? true) {
|
|
96
|
-
entry += `; HttpOnly`;
|
|
97
|
-
}
|
|
98
|
-
return entry;
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Parses a host using the {@linkplain https://github.com/remusao/tldts tldts} library to extract the domain.
|
|
102
|
-
* This is used for the domain of the cookie
|
|
103
|
-
* @param host The hot to parse
|
|
104
|
-
* @returns Either the host in all lower case or the parsed domain, ready for use on cookies
|
|
105
|
-
*/
|
|
106
|
-
getHostDomain(host) {
|
|
107
|
-
// Transform the host to lower case
|
|
108
|
-
const lowercaseHost = host.toLowerCase();
|
|
109
|
-
// Try parsing the host with tldts
|
|
110
|
-
const tldParsedInfo = (0, tldts_1.getDomain)(lowercaseHost);
|
|
111
|
-
// If the domain is not defined then return the host in lowercase
|
|
112
|
-
if (!tldParsedInfo)
|
|
113
|
-
return lowercaseHost;
|
|
114
|
-
// If the domain was found from parsing then prefix it with a . for a cookie that works with subdomains and return it
|
|
115
|
-
return `.${tldParsedInfo}`;
|
|
116
|
-
}
|
|
117
|
-
static encodeCookieOctet(value) {
|
|
118
|
-
if (CookieStore.octetRegExp.test(value)) {
|
|
119
|
-
throw new Error(`Invalid character in value`);
|
|
120
|
-
}
|
|
121
|
-
return encodeURIComponent(value);
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
exports.CookieStore = CookieStore;
|
|
125
|
-
// RFC 6265 4.1.1. Syntax
|
|
126
|
-
Object.defineProperty(CookieStore, "octetRegExp", {
|
|
127
|
-
enumerable: true,
|
|
128
|
-
configurable: true,
|
|
129
|
-
writable: true,
|
|
130
|
-
value: /[^\x21\x23-\x2B\x2D-\x3A\x3C-\x5B\x5D-\x7E]/g
|
|
131
|
-
});
|
|
132
|
-
//# sourceMappingURL=CookieStore.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CookieStore.js","sourceRoot":"","sources":["../../../../src/lib/structures/api/CookieStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
import { type Awaitable } from '@sapphire/utilities';
|
|
2
|
-
import { OAuth2Scopes, type RESTGetAPICurrentUserConnectionsResult, type RESTGetAPICurrentUserGuildsResult, type RESTGetAPICurrentUserResult, type Snowflake } from 'discord.js';
|
|
3
|
-
export declare class Auth {
|
|
4
|
-
#private;
|
|
5
|
-
/**
|
|
6
|
-
* The client's application id, this can be retrieved in Discord Developer Portal at https://discord.com/developers/applications.
|
|
7
|
-
* @since 1.0.0
|
|
8
|
-
*/
|
|
9
|
-
id: Snowflake;
|
|
10
|
-
/**
|
|
11
|
-
* The name for the cookie, this will be used to identify a Secure HttpOnly cookie.
|
|
12
|
-
* @since 1.0.0
|
|
13
|
-
*/
|
|
14
|
-
cookie: string;
|
|
15
|
-
/**
|
|
16
|
-
* The scopes defined at https://discord.com/developers/docs/topics/oauth2#shared-resources-oauth2-scopes.
|
|
17
|
-
* @since 1.0.0
|
|
18
|
-
*/
|
|
19
|
-
scopes: readonly OAuth2Scopes[];
|
|
20
|
-
/**
|
|
21
|
-
* The redirect uri.
|
|
22
|
-
* @since 1.0.0
|
|
23
|
-
*/
|
|
24
|
-
redirect: string | undefined;
|
|
25
|
-
/**
|
|
26
|
-
* The transformers used for {@link Auth.fetchData}.
|
|
27
|
-
* @since 1.4.0
|
|
28
|
-
*/
|
|
29
|
-
transformers: LoginDataTransformer[];
|
|
30
|
-
domainOverwrite: string | null;
|
|
31
|
-
private constructor();
|
|
32
|
-
/**
|
|
33
|
-
* The client secret, this can be retrieved in Discord Developer Portal at https://discord.com/developers/applications.
|
|
34
|
-
* @since 1.0.0
|
|
35
|
-
*/
|
|
36
|
-
get secret(): string;
|
|
37
|
-
/**
|
|
38
|
-
* Encrypts an object with aes-256-cbc to use as a token.
|
|
39
|
-
* @since 1.0.0
|
|
40
|
-
* @param data An object to encrypt
|
|
41
|
-
* @param secret The secret to encrypt the data with
|
|
42
|
-
*/
|
|
43
|
-
encrypt(data: AuthData): string;
|
|
44
|
-
/**
|
|
45
|
-
* Decrypts an object with aes-256-cbc to use as a token.
|
|
46
|
-
* @since 1.0.0
|
|
47
|
-
* @param token An data to decrypt
|
|
48
|
-
* @param secret The secret to decrypt the data with
|
|
49
|
-
*/
|
|
50
|
-
decrypt(token: string): AuthData | null;
|
|
51
|
-
/**
|
|
52
|
-
* Retrieves the data for a specific user.
|
|
53
|
-
* @since 1.4.0
|
|
54
|
-
* @param token The access token from the user.
|
|
55
|
-
*/
|
|
56
|
-
fetchData(token: string): Promise<LoginData>;
|
|
57
|
-
private fetchInformation;
|
|
58
|
-
static create(options?: ServerOptionsAuth): Auth | null;
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Defines the authentication data, this is to be encrypted and decrypted by the server.
|
|
62
|
-
* @since 1.0.0
|
|
63
|
-
*/
|
|
64
|
-
export interface AuthData {
|
|
65
|
-
/**
|
|
66
|
-
* The user ID.
|
|
67
|
-
* @since 1.0.0
|
|
68
|
-
*/
|
|
69
|
-
id: string;
|
|
70
|
-
/**
|
|
71
|
-
* The timestamp at which the token expires.
|
|
72
|
-
* @since 1.0.0
|
|
73
|
-
*/
|
|
74
|
-
expires: number;
|
|
75
|
-
/**
|
|
76
|
-
* The refresh token.
|
|
77
|
-
* @since 1.0.0
|
|
78
|
-
*/
|
|
79
|
-
refresh: string;
|
|
80
|
-
/**
|
|
81
|
-
* The access token.
|
|
82
|
-
* @since 1.0.0
|
|
83
|
-
*/
|
|
84
|
-
token: string;
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Defines the authentication options.
|
|
88
|
-
* @since 1.0.0
|
|
89
|
-
*/
|
|
90
|
-
export interface ServerOptionsAuth {
|
|
91
|
-
/**
|
|
92
|
-
* The client's application id, this can be retrieved in Discord Developer Portal at https://discord.com/developers/applications.
|
|
93
|
-
* @since 1.0.0
|
|
94
|
-
*/
|
|
95
|
-
id: string;
|
|
96
|
-
/**
|
|
97
|
-
* The name for the cookie, this will be used to identify a Secure HttpOnly cookie.
|
|
98
|
-
* @since 1.0.0
|
|
99
|
-
* @default 'SAPPHIRE_AUTH'
|
|
100
|
-
*/
|
|
101
|
-
cookie?: string;
|
|
102
|
-
/**
|
|
103
|
-
* The client secret, this can be retrieved in Discord Developer Portal at https://discord.com/developers/applications.
|
|
104
|
-
* @since 1.0.0
|
|
105
|
-
*/
|
|
106
|
-
secret: string;
|
|
107
|
-
/**
|
|
108
|
-
* The scopes defined at https://discord.com/developers/docs/topics/oauth2#shared-resources-oauth2-scopes.
|
|
109
|
-
* @since 1.0.0
|
|
110
|
-
* @default [OAuth2Scopes.Identify]
|
|
111
|
-
*/
|
|
112
|
-
scopes?: OAuth2Scopes[];
|
|
113
|
-
/**
|
|
114
|
-
* The redirect uri. This will default to {@link OAuth2BodyData.redirectUri} if missing.
|
|
115
|
-
* @since 1.0.0
|
|
116
|
-
*/
|
|
117
|
-
redirect?: string;
|
|
118
|
-
/**
|
|
119
|
-
* The login data transformers used for {@link Auth.fetchData}.
|
|
120
|
-
* @since 1.4.0
|
|
121
|
-
* @default []
|
|
122
|
-
*/
|
|
123
|
-
transformers?: LoginDataTransformer[];
|
|
124
|
-
/**
|
|
125
|
-
* The domain that should be used for the cookie. This overwrites the automatic detection of the domain.
|
|
126
|
-
* @remark if you want to support subdomains (`one.example.two` and `two.example.com`) then you need to use prefix your domain with a `.`, for example `.example.com`
|
|
127
|
-
* @since 2.1.0
|
|
128
|
-
* @default undefined
|
|
129
|
-
*/
|
|
130
|
-
domainOverwrite?: string;
|
|
131
|
-
}
|
|
132
|
-
/**
|
|
133
|
-
* The login data sent when fetching data from a user.
|
|
134
|
-
* @since 1.4.0
|
|
135
|
-
*/
|
|
136
|
-
export interface LoginData {
|
|
137
|
-
/**
|
|
138
|
-
* The user data, defined when the `'identify'` scope is defined.
|
|
139
|
-
* @since 1.4.0
|
|
140
|
-
*/
|
|
141
|
-
user?: RESTGetAPICurrentUserResult | null;
|
|
142
|
-
/**
|
|
143
|
-
* The guilds data, defined when the `'guilds'` scope is defined.
|
|
144
|
-
* @since 1.4.0
|
|
145
|
-
*/
|
|
146
|
-
guilds?: RESTGetAPICurrentUserGuildsResult | null;
|
|
147
|
-
/**
|
|
148
|
-
* The connections data, defined when the `'connections'` scope is defined.
|
|
149
|
-
* @since 1.4.0
|
|
150
|
-
*/
|
|
151
|
-
connections?: RESTGetAPICurrentUserConnectionsResult | null;
|
|
152
|
-
}
|
|
153
|
-
/**
|
|
154
|
-
* A login data transformer.
|
|
155
|
-
* @since 1.4.0
|
|
156
|
-
*/
|
|
157
|
-
export interface LoginDataTransformer<T extends LoginData = LoginData> {
|
|
158
|
-
/**
|
|
159
|
-
* Transforms the object by mutating its properties or adding new ones.
|
|
160
|
-
* @since 1.4.0
|
|
161
|
-
*/
|
|
162
|
-
(data: LoginData): Awaitable<T>;
|
|
163
|
-
}
|
|
164
|
-
//# sourceMappingURL=Auth.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Auth.d.ts","sourceRoot":"","sources":["../../../../src/lib/structures/http/Auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEjE,OAAO,EACN,YAAY,EAGZ,KAAK,sCAAsC,EAC3C,KAAK,iCAAiC,EACtC,KAAK,2BAA2B,EAChC,KAAK,SAAS,EACd,MAAM,YAAY,CAAC;AAGpB,qBAAa,IAAI;;IAChB;;;OAGG;IACI,EAAE,EAAE,SAAS,CAAC;IAErB;;;OAGG;IACI,MAAM,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACI,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;IAEvC;;;OAGG;IACI,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAEpC;;;OAGG;IACI,YAAY,EAAE,oBAAoB,EAAE,CAAC;IAErC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IAI7C,OAAO;IAUP;;;OAGG;IACH,IAAW,MAAM,WAEhB;IAED;;;;;OAKG;IACI,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM;IAMtC;;;;;OAKG;IACI,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI;IAa9C;;;;OAIG;IACU,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;YAuB3C,gBAAgB;WAYhB,MAAM,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,IAAI,GAAG,IAAI;CAI9D;AAED;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACxB;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IACjC;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;IAExB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,YAAY,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACtC;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACzB;;;OAGG;IACH,IAAI,CAAC,EAAE,2BAA2B,GAAG,IAAI,CAAC;IAE1C;;;OAGG;IACH,MAAM,CAAC,EAAE,iCAAiC,GAAG,IAAI,CAAC;IAElD;;;OAGG;IACH,WAAW,CAAC,EAAE,sCAAsC,GAAG,IAAI,CAAC;CAC5D;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS;IACpE;;;OAGG;IACH,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;CAChC"}
|
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
3
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
4
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
5
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
6
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
7
|
-
};
|
|
8
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
9
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
10
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
|
-
};
|
|
13
|
-
var _Auth_secret;
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.Auth = void 0;
|
|
16
|
-
const utilities_1 = require("@sapphire/utilities");
|
|
17
|
-
const crypto_1 = require("crypto");
|
|
18
|
-
const discord_js_1 = require("discord.js");
|
|
19
|
-
const undici_1 = require("undici");
|
|
20
|
-
class Auth {
|
|
21
|
-
constructor(options) {
|
|
22
|
-
/**
|
|
23
|
-
* The client's application id, this can be retrieved in Discord Developer Portal at https://discord.com/developers/applications.
|
|
24
|
-
* @since 1.0.0
|
|
25
|
-
*/
|
|
26
|
-
Object.defineProperty(this, "id", {
|
|
27
|
-
enumerable: true,
|
|
28
|
-
configurable: true,
|
|
29
|
-
writable: true,
|
|
30
|
-
value: void 0
|
|
31
|
-
});
|
|
32
|
-
/**
|
|
33
|
-
* The name for the cookie, this will be used to identify a Secure HttpOnly cookie.
|
|
34
|
-
* @since 1.0.0
|
|
35
|
-
*/
|
|
36
|
-
Object.defineProperty(this, "cookie", {
|
|
37
|
-
enumerable: true,
|
|
38
|
-
configurable: true,
|
|
39
|
-
writable: true,
|
|
40
|
-
value: void 0
|
|
41
|
-
});
|
|
42
|
-
/**
|
|
43
|
-
* The scopes defined at https://discord.com/developers/docs/topics/oauth2#shared-resources-oauth2-scopes.
|
|
44
|
-
* @since 1.0.0
|
|
45
|
-
*/
|
|
46
|
-
Object.defineProperty(this, "scopes", {
|
|
47
|
-
enumerable: true,
|
|
48
|
-
configurable: true,
|
|
49
|
-
writable: true,
|
|
50
|
-
value: void 0
|
|
51
|
-
});
|
|
52
|
-
/**
|
|
53
|
-
* The redirect uri.
|
|
54
|
-
* @since 1.0.0
|
|
55
|
-
*/
|
|
56
|
-
Object.defineProperty(this, "redirect", {
|
|
57
|
-
enumerable: true,
|
|
58
|
-
configurable: true,
|
|
59
|
-
writable: true,
|
|
60
|
-
value: void 0
|
|
61
|
-
});
|
|
62
|
-
/**
|
|
63
|
-
* The transformers used for {@link Auth.fetchData}.
|
|
64
|
-
* @since 1.4.0
|
|
65
|
-
*/
|
|
66
|
-
Object.defineProperty(this, "transformers", {
|
|
67
|
-
enumerable: true,
|
|
68
|
-
configurable: true,
|
|
69
|
-
writable: true,
|
|
70
|
-
value: void 0
|
|
71
|
-
});
|
|
72
|
-
Object.defineProperty(this, "domainOverwrite", {
|
|
73
|
-
enumerable: true,
|
|
74
|
-
configurable: true,
|
|
75
|
-
writable: true,
|
|
76
|
-
value: null
|
|
77
|
-
});
|
|
78
|
-
_Auth_secret.set(this, void 0);
|
|
79
|
-
this.id = options.id;
|
|
80
|
-
this.cookie = options.cookie ?? 'SAPPHIRE_AUTH';
|
|
81
|
-
this.scopes = options.scopes ?? [discord_js_1.OAuth2Scopes.Identify];
|
|
82
|
-
this.redirect = options.redirect;
|
|
83
|
-
__classPrivateFieldSet(this, _Auth_secret, options.secret, "f");
|
|
84
|
-
this.transformers = options.transformers ?? [];
|
|
85
|
-
this.domainOverwrite = options.domainOverwrite ?? null;
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* The client secret, this can be retrieved in Discord Developer Portal at https://discord.com/developers/applications.
|
|
89
|
-
* @since 1.0.0
|
|
90
|
-
*/
|
|
91
|
-
get secret() {
|
|
92
|
-
return __classPrivateFieldGet(this, _Auth_secret, "f");
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* Encrypts an object with aes-256-cbc to use as a token.
|
|
96
|
-
* @since 1.0.0
|
|
97
|
-
* @param data An object to encrypt
|
|
98
|
-
* @param secret The secret to encrypt the data with
|
|
99
|
-
*/
|
|
100
|
-
encrypt(data) {
|
|
101
|
-
const iv = (0, crypto_1.randomBytes)(16);
|
|
102
|
-
const cipher = (0, crypto_1.createCipheriv)('aes-256-cbc', __classPrivateFieldGet(this, _Auth_secret, "f"), iv);
|
|
103
|
-
return `${cipher.update(JSON.stringify(data), 'utf8', 'base64') + cipher.final('base64')}.${iv.toString('base64')}`;
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Decrypts an object with aes-256-cbc to use as a token.
|
|
107
|
-
* @since 1.0.0
|
|
108
|
-
* @param token An data to decrypt
|
|
109
|
-
* @param secret The secret to decrypt the data with
|
|
110
|
-
*/
|
|
111
|
-
decrypt(token) {
|
|
112
|
-
const [data, iv] = token.split('.');
|
|
113
|
-
const decipher = (0, crypto_1.createDecipheriv)('aes-256-cbc', __classPrivateFieldGet(this, _Auth_secret, "f"), Buffer.from(iv, 'base64'));
|
|
114
|
-
try {
|
|
115
|
-
const parsed = JSON.parse(decipher.update(data, 'base64', 'utf8') + decipher.final('utf8'));
|
|
116
|
-
// If the token expired, return null:
|
|
117
|
-
return parsed.expires >= Date.now() ? parsed : null;
|
|
118
|
-
}
|
|
119
|
-
catch {
|
|
120
|
-
return null;
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
/**
|
|
124
|
-
* Retrieves the data for a specific user.
|
|
125
|
-
* @since 1.4.0
|
|
126
|
-
* @param token The access token from the user.
|
|
127
|
-
*/
|
|
128
|
-
async fetchData(token) {
|
|
129
|
-
// Fetch the information:
|
|
130
|
-
const [user, guilds, connections] = await Promise.all([
|
|
131
|
-
this.fetchInformation(discord_js_1.OAuth2Scopes.Identify, token, `${discord_js_1.RouteBases.api}${discord_js_1.Routes.user()}`),
|
|
132
|
-
this.fetchInformation(discord_js_1.OAuth2Scopes.Guilds, token, `${discord_js_1.RouteBases.api}${discord_js_1.Routes.userGuilds()}`),
|
|
133
|
-
this.fetchInformation(discord_js_1.OAuth2Scopes.Connections, token, `${discord_js_1.RouteBases.api}${discord_js_1.Routes.userConnections()}`)
|
|
134
|
-
]);
|
|
135
|
-
// Transform the information:
|
|
136
|
-
let data = { user, guilds, connections };
|
|
137
|
-
for (const transformer of this.transformers) {
|
|
138
|
-
const result = transformer(data);
|
|
139
|
-
if ((0, utilities_1.isThenable)(result))
|
|
140
|
-
data = await result;
|
|
141
|
-
else
|
|
142
|
-
data = result;
|
|
143
|
-
}
|
|
144
|
-
return data;
|
|
145
|
-
}
|
|
146
|
-
async fetchInformation(scope, token, url) {
|
|
147
|
-
if (!this.scopes.includes(scope))
|
|
148
|
-
return undefined;
|
|
149
|
-
const result = await (0, undici_1.fetch)(url, {
|
|
150
|
-
headers: {
|
|
151
|
-
authorization: `Bearer ${token}`
|
|
152
|
-
}
|
|
153
|
-
});
|
|
154
|
-
return result.ok ? (await result.json()) : null;
|
|
155
|
-
}
|
|
156
|
-
static create(options) {
|
|
157
|
-
if (!options?.secret || !options.id)
|
|
158
|
-
return null;
|
|
159
|
-
return new Auth(options);
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
exports.Auth = Auth;
|
|
163
|
-
_Auth_secret = new WeakMap();
|
|
164
|
-
//# sourceMappingURL=Auth.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Auth.js","sourceRoot":"","sources":["../../../../src/lib/structures/http/Auth.ts"],"names":[],"mappings":"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"}
|