oceanic.js 0.0.7 → 0.0.11-dev.40bf3a4
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/.github/workflows/build.yml +12 -0
- package/.github/workflows/dev-publish.yml +32 -0
- package/.github/workflows/lint.yml +13 -0
- package/.npm-deprecaterc.json +9 -0
- package/README.md +1 -1
- package/build.js +6 -0
- package/dist/lib/Client.d.ts +7 -4
- package/dist/lib/Client.js +45 -25
- package/dist/lib/Constants.d.ts +5 -2
- package/dist/lib/Constants.js +4 -1
- package/dist/lib/gateway/Shard.d.ts +4 -10
- package/dist/lib/gateway/Shard.js +402 -332
- package/dist/lib/gateway/ShardManager.d.ts +1 -4
- package/dist/lib/gateway/ShardManager.js +41 -38
- package/dist/lib/index.d.ts +1 -0
- package/dist/lib/index.js +5 -3
- package/dist/lib/rest/Bucket.d.ts +1 -1
- package/dist/lib/rest/Bucket.js +9 -8
- package/dist/lib/rest/DiscordHTTPError.d.ts +1 -1
- package/dist/lib/rest/DiscordHTTPError.js +4 -6
- package/dist/lib/rest/DiscordRESTError.d.ts +1 -1
- package/dist/lib/rest/DiscordRESTError.js +8 -10
- package/dist/lib/rest/RESTManager.d.ts +1 -2
- package/dist/lib/rest/RESTManager.js +16 -18
- package/dist/lib/rest/RequestHandler.d.ts +1 -1
- package/dist/lib/rest/RequestHandler.js +18 -20
- package/dist/lib/rest/SequentialBucket.d.ts +1 -1
- package/dist/lib/rest/SequentialBucket.js +9 -8
- package/dist/lib/routes/ApplicationCommands.d.ts +4 -2
- package/dist/lib/routes/ApplicationCommands.js +37 -34
- package/dist/lib/routes/Channels.d.ts +7 -4
- package/dist/lib/routes/Channels.js +83 -77
- package/dist/lib/routes/Guilds.d.ts +4 -2
- package/dist/lib/routes/Guilds.js +137 -134
- package/dist/lib/routes/Interactions.d.ts +4 -2
- package/dist/lib/routes/Interactions.js +19 -18
- package/dist/lib/routes/OAuth.d.ts +4 -2
- package/dist/lib/routes/OAuth.js +24 -21
- package/dist/lib/routes/Users.d.ts +4 -2
- package/dist/lib/routes/Users.js +14 -11
- package/dist/lib/routes/Webhooks.d.ts +4 -2
- package/dist/lib/routes/Webhooks.js +38 -35
- package/dist/lib/structures/AnnouncementChannel.d.ts +6 -2
- package/dist/lib/structures/AnnouncementChannel.js +9 -3
- package/dist/lib/structures/AnnouncementThreadChannel.js +2 -2
- package/dist/lib/structures/Application.js +15 -5
- package/dist/lib/structures/ApplicationCommand.js +8 -8
- package/dist/lib/structures/AutoModerationRule.d.ts +4 -3
- package/dist/lib/structures/AutoModerationRule.js +29 -11
- package/dist/lib/structures/AutocompleteInteraction.d.ts +0 -5
- package/dist/lib/structures/AutocompleteInteraction.js +6 -16
- package/dist/lib/structures/Base.d.ts +1 -1
- package/dist/lib/structures/Base.js +3 -3
- package/dist/lib/structures/CategoryChannel.d.ts +7 -0
- package/dist/lib/structures/CategoryChannel.js +44 -6
- package/dist/lib/structures/Channel.js +4 -2
- package/dist/lib/structures/ClientApplication.js +18 -17
- package/dist/lib/structures/CommandInteraction.js +25 -25
- package/dist/lib/structures/ComponentInteraction.js +18 -18
- package/dist/lib/structures/ExtendedUser.js +4 -2
- package/dist/lib/structures/ForumChannel.d.ts +86 -0
- package/dist/lib/structures/ForumChannel.js +194 -0
- package/dist/lib/structures/GroupChannel.d.ts +1 -1
- package/dist/lib/structures/GroupChannel.js +29 -23
- package/dist/lib/structures/Guild.d.ts +3 -2
- package/dist/lib/structures/Guild.js +131 -82
- package/dist/lib/structures/GuildChannel.d.ts +3 -2
- package/dist/lib/structures/GuildChannel.js +9 -5
- package/dist/lib/structures/GuildPreview.js +12 -2
- package/dist/lib/structures/GuildScheduledEvent.d.ts +2 -2
- package/dist/lib/structures/GuildScheduledEvent.js +18 -8
- package/dist/lib/structures/GuildTemplate.d.ts +4 -3
- package/dist/lib/structures/GuildTemplate.js +22 -10
- package/dist/lib/structures/Integration.d.ts +5 -5
- package/dist/lib/structures/Integration.js +12 -3
- package/dist/lib/structures/Interaction.d.ts +2 -1
- package/dist/lib/structures/Interaction.js +4 -4
- package/dist/lib/structures/Invite.d.ts +1 -1
- package/dist/lib/structures/Invite.js +11 -11
- package/dist/lib/structures/Member.d.ts +1 -1
- package/dist/lib/structures/Member.js +28 -16
- package/dist/lib/structures/Message.d.ts +6 -6
- package/dist/lib/structures/Message.js +43 -29
- package/dist/lib/structures/ModalSubmitInteraction.js +17 -17
- package/dist/lib/structures/PartialApplication.js +5 -2
- package/dist/lib/structures/PingInteraction.js +2 -2
- package/dist/lib/structures/PrivateChannel.js +15 -15
- package/dist/lib/structures/PrivateThreadChannel.js +2 -2
- package/dist/lib/structures/PublicThreadChannel.js +2 -2
- package/dist/lib/structures/Role.js +13 -4
- package/dist/lib/structures/StageChannel.js +11 -7
- package/dist/lib/structures/StageInstance.js +6 -3
- package/dist/lib/structures/Team.js +6 -3
- package/dist/lib/structures/TextChannel.d.ts +6 -1
- package/dist/lib/structures/TextChannel.js +9 -3
- package/dist/lib/structures/TextableChannel.d.ts +1 -3
- package/dist/lib/structures/TextableChannel.js +33 -32
- package/dist/lib/structures/ThreadChannel.d.ts +6 -0
- package/dist/lib/structures/ThreadChannel.js +49 -26
- package/dist/lib/structures/User.js +8 -4
- package/dist/lib/structures/VoiceChannel.js +32 -24
- package/dist/lib/structures/VoiceState.d.ts +7 -3
- package/dist/lib/structures/VoiceState.js +24 -11
- package/dist/lib/structures/Webhook.js +17 -18
- package/dist/lib/types/channels.d.ts +151 -53
- package/dist/lib/types/client.d.ts +25 -3
- package/dist/lib/types/guilds.d.ts +15 -5
- package/dist/lib/types/interactions.d.ts +27 -3
- package/dist/lib/types/json.d.ts +26 -9
- package/dist/lib/util/Collection.d.ts +3 -3
- package/dist/lib/util/Collection.js +18 -10
- package/dist/lib/util/InteractionOptionsWrapper.d.ts +2 -1
- package/dist/lib/util/InteractionOptionsWrapper.js +15 -9
- package/dist/lib/util/Properties.d.ts +1 -1
- package/dist/lib/util/Properties.js +5 -5
- package/dist/lib/util/Routes.d.ts +1 -1
- package/dist/lib/util/Util.d.ts +5 -2
- package/dist/lib/util/Util.js +126 -8
- package/dist/lib/voice/VoiceConnectionManager.d.ts +1 -1
- package/dist/lib/voice/VoiceConnectionManager.js +3 -7
- package/dist/package.json +15 -15
- package/esm.mjs +5 -3
- package/package.json +15 -15
- package/dist/lib/routes/BaseRoute.d.ts +0 -6
- package/dist/lib/routes/BaseRoute.js +0 -16
- package/dist/lib/util/Debug.d.ts +0 -1
- package/dist/lib/util/Debug.js +0 -13
- package/favicon.ico +0 -0
- package/typedoc.json +0 -26
|
@@ -3,10 +3,7 @@ import type Client from "../Client";
|
|
|
3
3
|
import type { GatewayOptions, ShardManagerInstanceOptions } from "../types/gateway";
|
|
4
4
|
import { Collection } from "@augu/collections";
|
|
5
5
|
export default class ShardManager extends Collection<number, Shard> {
|
|
6
|
-
private
|
|
7
|
-
private _client;
|
|
8
|
-
private _connectQueue;
|
|
9
|
-
private _connectTimeout;
|
|
6
|
+
#private;
|
|
10
7
|
options: ShardManagerInstanceOptions;
|
|
11
8
|
constructor(client: Client, options?: GatewayOptions);
|
|
12
9
|
private _ready;
|
|
@@ -4,22 +4,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const Shard_1 = __importDefault(require("./Shard"));
|
|
7
|
-
const Properties_1 = __importDefault(require("../util/Properties"));
|
|
8
7
|
const Constants_1 = require("../Constants");
|
|
9
8
|
const collections_1 = require("@augu/collections");
|
|
10
9
|
class ShardManager extends collections_1.Collection {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
10
|
+
#buckets;
|
|
11
|
+
#client;
|
|
12
|
+
#connectQueue;
|
|
13
|
+
#connectTimeout;
|
|
15
14
|
options;
|
|
16
15
|
constructor(client, options = {}) {
|
|
17
16
|
super();
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
.looseDefine("_connectTimeout", null, true);
|
|
17
|
+
this.#buckets = {};
|
|
18
|
+
this.#client = client;
|
|
19
|
+
this.#connectQueue = [];
|
|
20
|
+
this.#connectTimeout = null;
|
|
23
21
|
this.options = {
|
|
24
22
|
autoReconnect: options.autoReconnect ?? true,
|
|
25
23
|
compress: options.compress ?? false,
|
|
@@ -60,8 +58,13 @@ class ShardManager extends collections_1.Collection {
|
|
|
60
58
|
bitmask |= intent;
|
|
61
59
|
else if (Constants_1.Intents[intent])
|
|
62
60
|
bitmask |= Constants_1.Intents[intent];
|
|
63
|
-
else
|
|
64
|
-
|
|
61
|
+
else {
|
|
62
|
+
if (intent === "ALL") {
|
|
63
|
+
bitmask = Constants_1.AllIntents;
|
|
64
|
+
break;
|
|
65
|
+
}
|
|
66
|
+
this.#client.emit("warn", `Unknown intent: ${intent}`);
|
|
67
|
+
}
|
|
65
68
|
}
|
|
66
69
|
this.options.intents = bitmask;
|
|
67
70
|
}
|
|
@@ -74,78 +77,78 @@ class ShardManager extends collections_1.Collection {
|
|
|
74
77
|
}
|
|
75
78
|
_ready(id) {
|
|
76
79
|
const rateLimitKey = (id % this.options.concurrency) || 0;
|
|
77
|
-
this
|
|
80
|
+
this.#buckets[rateLimitKey] = Date.now();
|
|
78
81
|
this.tryConnect();
|
|
79
82
|
}
|
|
80
83
|
connect(shard) {
|
|
81
|
-
this.
|
|
84
|
+
this.#connectQueue.push(shard);
|
|
82
85
|
this.tryConnect();
|
|
83
86
|
}
|
|
84
87
|
spawn(id) {
|
|
85
88
|
let shard = this.get(id);
|
|
86
89
|
if (!shard) {
|
|
87
|
-
shard = new Shard_1.default(id, this
|
|
90
|
+
shard = new Shard_1.default(id, this.#client);
|
|
88
91
|
this.set(id, shard);
|
|
89
92
|
shard
|
|
90
93
|
.on("ready", () => {
|
|
91
|
-
this.
|
|
92
|
-
if (this.
|
|
94
|
+
this.#client.emit("shardReady", id);
|
|
95
|
+
if (this.#client.ready)
|
|
93
96
|
return;
|
|
94
97
|
for (const other of this.values()) {
|
|
95
98
|
if (!other.ready)
|
|
96
99
|
return;
|
|
97
100
|
}
|
|
98
|
-
this.
|
|
99
|
-
this.
|
|
100
|
-
this.
|
|
101
|
+
this.#client.ready = true;
|
|
102
|
+
this.#client.startTime = Date.now();
|
|
103
|
+
this.#client.emit("ready");
|
|
101
104
|
})
|
|
102
105
|
.on("resume", () => {
|
|
103
|
-
this.
|
|
104
|
-
if (this.
|
|
106
|
+
this.#client.emit("shardResume", id);
|
|
107
|
+
if (this.#client.ready)
|
|
105
108
|
return;
|
|
106
109
|
for (const other of this.values()) {
|
|
107
110
|
if (!other.ready)
|
|
108
111
|
return;
|
|
109
112
|
}
|
|
110
|
-
this.
|
|
111
|
-
this.
|
|
112
|
-
this.
|
|
113
|
+
this.#client.ready = true;
|
|
114
|
+
this.#client.startTime = Date.now();
|
|
115
|
+
this.#client.emit("ready");
|
|
113
116
|
})
|
|
114
117
|
.on("disconnect", (error) => {
|
|
115
|
-
this.
|
|
118
|
+
this.#client.emit("shardDisconnect", error, id);
|
|
116
119
|
for (const other of this.values()) {
|
|
117
120
|
if (other.ready)
|
|
118
121
|
return;
|
|
119
122
|
}
|
|
120
|
-
this.
|
|
121
|
-
this.
|
|
122
|
-
this.
|
|
123
|
+
this.#client.ready = false;
|
|
124
|
+
this.#client.startTime = 0;
|
|
125
|
+
this.#client.emit("disconnect");
|
|
123
126
|
});
|
|
124
127
|
}
|
|
125
128
|
if (shard.status === "disconnected")
|
|
126
129
|
return this.connect(shard);
|
|
127
130
|
}
|
|
128
131
|
tryConnect() {
|
|
129
|
-
if (this.
|
|
132
|
+
if (this.#connectQueue.length === 0)
|
|
130
133
|
return;
|
|
131
|
-
for (const shard of this
|
|
134
|
+
for (const shard of this.#connectQueue) {
|
|
132
135
|
const rateLimitKey = (shard.id % this.options.concurrency) || 0;
|
|
133
|
-
const lastConnect = this
|
|
136
|
+
const lastConnect = this.#buckets[rateLimitKey] || 0;
|
|
134
137
|
if (!shard.sessionID && Date.now() - lastConnect < 5000)
|
|
135
138
|
continue;
|
|
136
139
|
if (this.some(s => s.connecting && ((s.id % this.options.concurrency) || 0) === rateLimitKey))
|
|
137
140
|
continue;
|
|
138
141
|
shard.connect();
|
|
139
|
-
this
|
|
140
|
-
this.
|
|
142
|
+
this.#buckets[rateLimitKey] = Date.now();
|
|
143
|
+
this.#connectQueue.splice(this.#connectQueue.findIndex(s => s.id === shard.id), 1);
|
|
141
144
|
}
|
|
142
|
-
if (!this
|
|
143
|
-
this
|
|
144
|
-
this
|
|
145
|
+
if (!this.#connectTimeout && this.#connectQueue.length > 0) {
|
|
146
|
+
this.#connectTimeout = setTimeout(() => {
|
|
147
|
+
this.#connectTimeout = null;
|
|
145
148
|
this.tryConnect();
|
|
146
149
|
}, 500);
|
|
147
150
|
}
|
|
148
151
|
}
|
|
149
152
|
}
|
|
150
153
|
exports.default = ShardManager;
|
|
151
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
154
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2hhcmRNYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL2dhdGV3YXkvU2hhcmRNYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsb0RBQTRCO0FBRTVCLDRDQUE0RTtBQUU1RSxtREFBK0M7QUFFL0MsTUFBcUIsWUFBYSxTQUFRLHdCQUF5QjtJQUMvRCxRQUFRLENBQTBCO0lBQ2xDLE9BQU8sQ0FBVTtJQUNqQixhQUFhLENBQWdCO0lBQzdCLGVBQWUsQ0FBeUI7SUFDeEMsT0FBTyxDQUE4QjtJQUNyQyxZQUFZLE1BQWMsRUFBRSxVQUEwQixFQUFFO1FBQ3BELEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7UUFDNUIsSUFBSSxDQUFDLE9BQU8sR0FBRztZQUNYLGFBQWEsRUFBUyxPQUFPLENBQUMsYUFBYSxJQUFJLElBQUk7WUFDbkQsUUFBUSxFQUFjLE9BQU8sQ0FBQyxRQUFRLElBQUksS0FBSztZQUMvQyxvQkFBb0IsRUFBRTtnQkFDbEIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxPQUFPLElBQUksU0FBUztnQkFDM0QsTUFBTSxFQUFHLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxNQUFNLElBQUksU0FBUztnQkFDMUQsRUFBRSxFQUFPLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLElBQUksT0FBTyxDQUFDLFFBQVE7YUFDaEU7WUFDRCxXQUFXLEVBQVcsT0FBTyxDQUFDLFdBQVcsS0FBSyxNQUFNLElBQUksT0FBTyxDQUFDLFdBQVcsSUFBSSxPQUFPLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENB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
|
package/dist/lib/index.d.ts
CHANGED
|
@@ -23,6 +23,7 @@ export { default as ComponentInteraction } from "./structures/ComponentInteracti
|
|
|
23
23
|
export { default as DiscordHTTPError } from "./rest/DiscordHTTPError";
|
|
24
24
|
export { default as DiscordRESTError } from "./rest/DiscordRESTError";
|
|
25
25
|
export { default as ExtendedUser } from "./structures/ExtendedUser";
|
|
26
|
+
export { default as ForumChannel } from "./structures/ForumChannel";
|
|
26
27
|
export { default as GatewayError } from "./gateway/GatewayError";
|
|
27
28
|
export { default as GroupChannel } from "./structures/GroupChannel";
|
|
28
29
|
export { default as Guild } from "./structures/Guild";
|
package/dist/lib/index.js
CHANGED
|
@@ -29,8 +29,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
29
29
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
30
30
|
};
|
|
31
31
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
|
-
exports.
|
|
33
|
-
exports.Webhook = exports.VoiceState = exports.VoiceChannel = exports.Util = exports.User = exports.UnavailableGuild = exports.TypedEmitter = exports.ThreadChannel = exports.TextChannel = exports.TextableChannel = exports.Team = exports.StageInstance = void 0;
|
|
32
|
+
exports.ShardManager = exports.Shard = exports.SequentialBucket = exports.Routes = exports.Role = exports.RESTManager = exports.PublicThreadChannel = exports.PrivateThreadChannel = exports.PrivateChannel = exports.PingInteraction = exports.PermissionOverwrite = exports.Permission = exports.PartialApplication = exports.ModalSubmitInteraction = exports.Message = exports.Member = exports.Invite = exports.InteractionOptionsWrapper = exports.Integration = exports.GuildTemplate = exports.GuildScheduledEvent = exports.GuildPreview = exports.GuildChannel = exports.Guild = exports.GroupChannel = exports.GatewayError = exports.ForumChannel = exports.ExtendedUser = exports.DiscordRESTError = exports.DiscordHTTPError = exports.ComponentInteraction = exports.Collection = exports.TypedCollection = exports.CommandInteraction = exports.Constants = exports.ClientApplication = exports.Client = exports.CategoryChannel = exports.Bucket = exports.Base = exports.AutoModerationRule = exports.AutocompleteInteraction = exports.AuditLogEntry = exports.Attachment = exports.ApplicationCommand = exports.Application = exports.AnnouncementThreadChannel = exports.AnnouncementChannel = exports.Interaction = exports.Channel = void 0;
|
|
33
|
+
exports.Webhook = exports.VoiceState = exports.VoiceChannel = exports.Util = exports.User = exports.UnavailableGuild = exports.TypedEmitter = exports.ThreadChannel = exports.TextChannel = exports.TextableChannel = exports.Team = exports.StageInstance = exports.StageChannel = void 0;
|
|
34
34
|
// Channel and Interaction MUST be at the top due to circular imports
|
|
35
35
|
var Channel_1 = require("./structures/Channel");
|
|
36
36
|
Object.defineProperty(exports, "Channel", { enumerable: true, get: function () { return __importDefault(Channel_1).default; } });
|
|
@@ -78,6 +78,8 @@ var DiscordRESTError_1 = require("./rest/DiscordRESTError");
|
|
|
78
78
|
Object.defineProperty(exports, "DiscordRESTError", { enumerable: true, get: function () { return __importDefault(DiscordRESTError_1).default; } });
|
|
79
79
|
var ExtendedUser_1 = require("./structures/ExtendedUser");
|
|
80
80
|
Object.defineProperty(exports, "ExtendedUser", { enumerable: true, get: function () { return __importDefault(ExtendedUser_1).default; } });
|
|
81
|
+
var ForumChannel_1 = require("./structures/ForumChannel");
|
|
82
|
+
Object.defineProperty(exports, "ForumChannel", { enumerable: true, get: function () { return __importDefault(ForumChannel_1).default; } });
|
|
81
83
|
var GatewayError_1 = require("./gateway/GatewayError");
|
|
82
84
|
Object.defineProperty(exports, "GatewayError", { enumerable: true, get: function () { return __importDefault(GatewayError_1).default; } });
|
|
83
85
|
var GroupChannel_1 = require("./structures/GroupChannel");
|
|
@@ -155,4 +157,4 @@ var VoiceState_1 = require("./structures/VoiceState");
|
|
|
155
157
|
Object.defineProperty(exports, "VoiceState", { enumerable: true, get: function () { return __importDefault(VoiceState_1).default; } });
|
|
156
158
|
var Webhook_1 = require("./structures/Webhook");
|
|
157
159
|
Object.defineProperty(exports, "Webhook", { enumerable: true, get: function () { return __importDefault(Webhook_1).default; } });
|
|
158
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
160
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsZ0RBQThCO0FBQzlCLHFFQUFxRTtBQUNyRSxnREFBMEQ7QUFBakQsbUhBQUEsT0FBTyxPQUFXO0FBQzNCLHdEQUFrRTtBQUF6RCwySEFBQSxPQUFPLE9BQWU7QUFDL0Isd0VBQWtGO0FBQXpFLDJJQUFBLE9BQU8sT0FBdUI7QUFDdkMsb0ZBQThGO0FBQXJGLHVKQUFBLE9BQU8sT0FBNkI7QUFDN0Msd0RBQWtFO0FBQXpELDJIQUFBLE9BQU8sT0FBZTtBQUMvQixzRUFBZ0Y7QUFBdkUseUlBQUEsT0FBTyxPQUFzQjtBQUN0QyxzREFBZ0U7QUFBdkQseUhBQUEsT0FBTyxPQUFjO0FBQzlCLDREQUFzRTtBQUE3RCwrSEFBQSxPQUFPLE9BQWlCO0FBQ2pDLGdGQUEwRjtBQUFqRixtSkFBQSxPQUFPLE9BQTJCO0FBQzNDLHNFQUFnRjtBQUF2RSx5SUFBQSxPQUFPLE9BQXNCO0FBQ3RDLDBDQUFvRDtBQUEzQyw2R0FBQSxPQUFPLE9BQVE7QUFDeEIsd0NBQWtEO0FBQXpDLGlIQUFBLE9BQU8sT0FBVTtBQUMxQixnRUFBMEU7QUFBakUsbUlBQUEsT0FBTyxPQUFtQjtBQUNuQyxtQ0FBNkM7QUFBcEMsaUhBQUEsT0FBTyxPQUFVO0FBQzFCLG9FQUE4RTtBQUFyRSx1SUFBQSxPQUFPLE9BQXFCO0FBQ3JDLDhDQUE0QjtBQUM1Qix5REFBeUM7QUFDekMsc0VBQWdGO0FBQXZFLHlJQUFBLE9BQU8sT0FBc0I7QUFDdEMsZ0RBQStEO0FBQXRELDhIQUFBLE9BQU8sT0FBbUI7QUFDbkMsaURBQStDO0FBQXRDLHlHQUFBLFVBQVUsT0FBQTtBQUNuQiwwRUFBb0Y7QUFBM0UsNklBQUEsT0FBTyxPQUF3QjtBQUN4Qyw0REFBc0U7QUFBN0QscUlBQUEsT0FBTyxPQUFvQjtBQUNwQyw0REFBc0U7QUFBN0QscUlBQUEsT0FBTyxPQUFvQjtBQUNwQywwREFBb0U7QUFBM0QsNkhBQUEsT0FBTyxPQUFnQjtBQUNoQywwREFBb0U7QUFBM0QsNkhBQUEsT0FBTyxPQUFnQjtBQUNoQyx1REFBaUU7QUFBeEQsNkhBQUEsT0FBTyxPQUFnQjtBQUNoQywwREFBb0U7QUFBM0QsNkhBQUEsT0FBTyxPQUFnQjtBQUNoQyw0Q0FBc0Q7QUFBN0MsK0dBQUEsT0FBTyxPQUFTO0FBQ3pCLDBEQUFvRTtBQUEzRCw2SEFBQSxPQUFPLE9BQWdCO0FBQ2hDLDBEQUFvRTtBQUEzRCw2SEFBQSxPQUFPLE9BQWdCO0FBQ2hDLHdFQUFrRjtBQUF6RSwySUFBQSxPQUFPLE9BQXVCO0FBQ3ZDLDREQUFzRTtBQUE3RCwrSEFBQSxPQUFPLE9BQWlCO0FBQ2pDLHdEQUFrRTtBQUF6RCwySEFBQSxPQUFPLE9BQWU7QUFDL0IsOEVBQXdGO0FBQS9FLHVKQUFBLE9BQU8sT0FBNkI7QUFDN0MsOENBQXdEO0FBQS9DLGlIQUFBLE9BQU8sT0FBVTtBQUMxQiw4Q0FBd0Q7QUFBL0MsaUhBQUEsT0FBTyxPQUFVO0FBQzFCLGdEQUEwRDtBQUFqRCxtSEFBQSxPQUFPLE9BQVc7QUFDM0IsOEVBQXdGO0FBQS9FLGlKQUFBLE9BQU8sT0FBMEI7QUFDMUMsc0VBQWdGO0FBQXZFLHlJQUFBLE9BQU8sT0FBc0I7QUFDdEMsc0RBQWdFO0FBQXZELHlIQUFBLE9BQU8sT0FBYztBQUM5Qix3RUFBa0Y7QUFBekUsMklBQUEsT0FBTyxPQUF1QjtBQUN2QyxnRUFBMEU7QUFBakUsbUlBQUEsT0FBTyxPQUFtQjtBQUNuQyw4REFBd0U7QUFBL0QsaUlBQUEsT0FBTyxPQUFrQjtBQUNsQywwRUFBb0Y7QUFBM0UsNklBQUEsT0FBTyxPQUF3QjtBQUN4Qyx3RUFBa0Y7QUFBekUsMklBQUEsT0FBTyxPQUF1QjtBQUN2QyxrREFBNEQ7QUFBbkQsMkhBQUEsT0FBTyxPQUFlO0FBQy9CLDBDQUFvRDtBQUEzQyw2R0FBQSxPQUFPLE9BQVE7QUFDeEIsd0RBQXdDO0FBQ3hDLDREQUFzRTtBQUE3RCxxSUFBQSxPQUFPLE9BQW9CO0FBQ3BDLHlDQUFtRDtBQUExQywrR0FBQSxPQUFPLE9BQVM7QUFDekIsdURBQWlFO0FBQXhELDZIQUFBLE9BQU8sT0FBZ0I7QUFDaEMsMERBQW9FO0FBQTNELDZIQUFBLE9BQU8sT0FBZ0I7QUFDaEMsNERBQXNFO0FBQTdELCtIQUFBLE9BQU8sT0FBaUI7QUFDakMsMENBQW9EO0FBQTNDLDZHQUFBLE9BQU8sT0FBUTtBQUN4QixnRUFBMEU7QUFBakUsbUlBQUEsT0FBTyxPQUFtQjtBQUNuQyx3REFBa0U7QUFBekQsMkhBQUEsT0FBTyxPQUFlO0FBQy9CLDREQUFzRTtBQUE3RCwrSEFBQSxPQUFPLE9BQWlCO0FBQ2pDLG9EQUE4RDtBQUFyRCw2SEFBQSxPQUFPLE9BQWdCO0FBQ2hDLGtFQUE0RTtBQUFuRSxxSUFBQSxPQUFPLE9BQW9CO0FBQ3BDLDBDQUFvRDtBQUEzQyw2R0FBQSxPQUFPLE9BQVE7QUFDeEIsb0NBQThDO0FBQXJDLDZHQUFBLE9BQU8sT0FBUTtBQUN4QiwwREFBb0U7QUFBM0QsNkhBQUEsT0FBTyxPQUFnQjtBQUNoQyxzREFBZ0U7QUFBdkQseUhBQUEsT0FBTyxPQUFjO0FBQzlCLGdEQUEwRDtBQUFqRCxtSEFBQSxPQUFPLE9BQVcifQ==
|
package/dist/lib/rest/Bucket.js
CHANGED
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
/** A bucket. */
|
|
8
8
|
class Bucket {
|
|
9
|
-
_queue = [];
|
|
10
9
|
interval;
|
|
11
10
|
lastReset;
|
|
12
11
|
lastSend;
|
|
13
12
|
latencyRef;
|
|
13
|
+
#queue = [];
|
|
14
14
|
reservedTokens;
|
|
15
15
|
timeout;
|
|
16
16
|
tokenLimit;
|
|
@@ -21,9 +21,10 @@ class Bucket {
|
|
|
21
21
|
this.latencyRef = options?.latencyRef || { latency: 0 };
|
|
22
22
|
this.lastReset = this.tokens = this.lastSend = 0;
|
|
23
23
|
this.reservedTokens = options?.reservedTokens || 0;
|
|
24
|
+
this.timeout = null;
|
|
24
25
|
}
|
|
25
26
|
check() {
|
|
26
|
-
if (this.timeout || this.
|
|
27
|
+
if (this.timeout || this.#queue.length === 0)
|
|
27
28
|
return;
|
|
28
29
|
if (this.lastReset + this.interval + this.tokenLimit * this.latencyRef.latency < Date.now()) {
|
|
29
30
|
this.lastReset = Date.now();
|
|
@@ -32,11 +33,11 @@ class Bucket {
|
|
|
32
33
|
let val;
|
|
33
34
|
let tokensAvailable = this.tokens < this.tokenLimit;
|
|
34
35
|
let unreservedTokensAvailable = this.tokens < (this.tokenLimit - this.reservedTokens);
|
|
35
|
-
while (this.
|
|
36
|
+
while (this.#queue.length > 0 && (unreservedTokensAvailable || (tokensAvailable && this.#queue[0].priority))) {
|
|
36
37
|
this.tokens++;
|
|
37
38
|
tokensAvailable = this.tokens < this.tokenLimit;
|
|
38
39
|
unreservedTokensAvailable = this.tokens < (this.tokenLimit - this.reservedTokens);
|
|
39
|
-
const item = this.
|
|
40
|
+
const item = this.#queue.shift();
|
|
40
41
|
val = this.latencyRef.latency - Date.now() + this.lastSend;
|
|
41
42
|
if (this.latencyRef.latency === 0 || val <= 0) {
|
|
42
43
|
item.func();
|
|
@@ -49,7 +50,7 @@ class Bucket {
|
|
|
49
50
|
this.lastSend = Date.now() + val;
|
|
50
51
|
}
|
|
51
52
|
}
|
|
52
|
-
if (this.
|
|
53
|
+
if (this.#queue.length > 0 && !this.timeout) {
|
|
53
54
|
this.timeout = setTimeout(() => {
|
|
54
55
|
this.timeout = null;
|
|
55
56
|
this.check();
|
|
@@ -63,11 +64,11 @@ class Bucket {
|
|
|
63
64
|
*/
|
|
64
65
|
queue(func, priority = false) {
|
|
65
66
|
if (priority)
|
|
66
|
-
this.
|
|
67
|
+
this.#queue.unshift({ func, priority });
|
|
67
68
|
else
|
|
68
|
-
this.
|
|
69
|
+
this.#queue.push({ func, priority });
|
|
69
70
|
this.check();
|
|
70
71
|
}
|
|
71
72
|
}
|
|
72
73
|
exports.default = Bucket;
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQnVja2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3Jlc3QvQnVja2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7O0dBR0c7O0FBRUgsZ0JBQWdCO0FBQ2hCLE1BQXFCLE1BQU07SUFDdkIsUUFBUSxDQUFTO0lBQ2pCLFNBQVMsQ0FBUztJQUNsQixRQUFRLENBQVM7SUFDakIsVUFBVSxDQUF1QjtJQUNqQyxNQUFNLEdBQStDLEVBQUUsQ0FBQztJQUN4RCxjQUFjLENBQVM7SUFDdkIsT0FBTyxDQUF3QjtJQUMvQixVQUFVLENBQVM7SUFDbkIsTUFBTSxDQUFTO0lBQ2YsWUFBWSxVQUFrQixFQUFFLFFBQWdCLEVBQUUsT0FBeUU7UUFDdkgsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDekIsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLEVBQUUsVUFBVSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQ3hELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sRUFBRSxjQUFjLElBQUksQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3hCLENBQUM7SUFFTyxLQUFLO1FBQ1QsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUM7WUFBRSxPQUFPO1FBQ3JELElBQUksSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3pGLElBQUks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
|
|
@@ -6,7 +6,7 @@ export default class DiscordHTTPError extends Error {
|
|
|
6
6
|
name: string;
|
|
7
7
|
resBody: Record<string, unknown> | null;
|
|
8
8
|
response: Response;
|
|
9
|
-
constructor(res: Response, resBody: unknown | null, method:
|
|
9
|
+
constructor(res: Response, resBody: unknown | null, method: RESTMethod, stack?: string);
|
|
10
10
|
static flattenErrors(errors: Record<string, unknown>, keyPrefix?: string): string[];
|
|
11
11
|
get headers(): import("undici").Headers;
|
|
12
12
|
get path(): string;
|
|
@@ -7,11 +7,9 @@ class DiscordHTTPError extends Error {
|
|
|
7
7
|
response;
|
|
8
8
|
constructor(res, resBody, method, stack) {
|
|
9
9
|
super();
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
method: { value: method, enumerable: false }
|
|
14
|
-
});
|
|
10
|
+
this.method = method;
|
|
11
|
+
this.response = res;
|
|
12
|
+
this.resBody = resBody;
|
|
15
13
|
let message = `${res.status} ${res.statusText} on ${this.method} ${this.path}`;
|
|
16
14
|
const errors = DiscordHTTPError.flattenErrors(resBody);
|
|
17
15
|
if (errors.length > 0)
|
|
@@ -50,4 +48,4 @@ class DiscordHTTPError extends Error {
|
|
|
50
48
|
}
|
|
51
49
|
}
|
|
52
50
|
exports.default = DiscordHTTPError;
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlzY29yZEhUVFBFcnJvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9yZXN0L0Rpc2NvcmRIVFRQRXJyb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFJQSxNQUFxQixnQkFBaUIsU0FBUSxLQUFLO0lBQy9DLE1BQU0sQ0FBYTtJQUNuQixJQUFJLEdBQUcsa0JBQWtCLENBQUM7SUFDMUIsT0FBTyxDQUFpQztJQUN4QyxRQUFRLENBQVc7SUFDbkIsWUFBWSxHQUFhLEVBQUUsT0FBdUIsRUFBRSxNQUFrQixFQUFFLEtBQWM7UUFDbEYsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQXNDLENBQUM7UUFFdEQsSUFBSSxPQUFPLEdBQUcsR0FBRyxHQUFHLENBQUMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxVQUFVLE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDL0UsTUFBTSxNQUFNLEdBQUcsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLE9BQWtDLENBQUMsQ0FBQztRQUNsRixJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQztZQUFFLE9BQU8sSUFBSSxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUMvRCxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUU7WUFDbkMsVUFBVSxFQUFFLEtBQUs7WUFDakIsS0FBSyxFQUFPLE9BQU87U0FDdEIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxLQUFLO1lBQUUsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksR0FBRyxLQUFLLENBQUM7O1lBQ2xFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsTUFBTSxDQUFDLGFBQWEsQ0FBQyxNQUErQixFQUFFLFNBQVMsR0FBRyxFQUFFO1FBQ2hFLElBQUksUUFBUSxHQUFrQixFQUFFLENBQUM7UUFDakMsS0FBSyxNQUFNLFNBQVMsSUFBSSxNQUFNLEVBQUU7WUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLFNBQVMsS0FBSyxTQUFTLElBQUksU0FBUyxLQUFLLE1BQU07Z0JBQUUsU0FBUztZQUNuRyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUFFLFFBQVEsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFFLE1BQU0sQ0FBQyxTQUFTLENBQW1CLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsU0FBUyxHQUFHLFNBQVMsRUFBRSxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUNoSztRQUNELE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFJLE9BQU8sS0FBSyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUMvQyxJQUFJLElBQUksS0FBSyxPQUFPLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUMxRCxJQUFJLE1BQU0sS0FBSyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUM3QyxJQUFJLFVBQVUsS0FBSyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUVyRCxNQUFNO1FBQ0YsT0FBTztZQUNILE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztZQUNyQixNQUFNLEVBQUcsSUFBSSxDQUFDLE1BQU07WUFDcEIsSUFBSSxFQUFLLElBQUksQ0FBQyxJQUFJO1lBQ2xCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztZQUNyQixLQUFLLEVBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxFQUFFO1NBQzVCLENBQUM7SUFDTixDQUFDO0NBQ0o7QUE3Q0QsbUNBNkNDIn0=
|
|
@@ -7,7 +7,7 @@ export default class DiscordRESTError extends Error {
|
|
|
7
7
|
name: string;
|
|
8
8
|
resBody: Record<string, unknown> | null;
|
|
9
9
|
response: Response;
|
|
10
|
-
constructor(res: Response, resBody: Record<string, unknown>, method:
|
|
10
|
+
constructor(res: Response, resBody: Record<string, unknown>, method: RESTMethod, stack?: string);
|
|
11
11
|
static flattenErrors(errors: Record<string, unknown>, keyPrefix?: string): string[];
|
|
12
12
|
get headers(): import("undici").Headers;
|
|
13
13
|
get path(): string;
|
|
@@ -8,26 +8,24 @@ class DiscordRESTError extends Error {
|
|
|
8
8
|
response;
|
|
9
9
|
constructor(res, resBody, method, stack) {
|
|
10
10
|
super();
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
code: { value: Number(resBody.code), enumerable: true }
|
|
16
|
-
});
|
|
11
|
+
this.code = Number(resBody.code);
|
|
12
|
+
this.method = method;
|
|
13
|
+
this.response = res;
|
|
14
|
+
this.resBody = resBody;
|
|
17
15
|
let message = "message" in resBody ? `${resBody.message} on ${this.method} ${this.path}` : `Unknown Error on ${this.method} ${this.path}`;
|
|
18
16
|
if ("errors" in resBody)
|
|
19
|
-
message += `\n
|
|
17
|
+
message += `\n ${DiscordRESTError.flattenErrors(resBody.errors).join("\n ")}`;
|
|
20
18
|
else {
|
|
21
19
|
const errors = DiscordRESTError.flattenErrors(resBody);
|
|
22
20
|
if (errors.length > 0)
|
|
23
|
-
message += `\n
|
|
21
|
+
message += `\n ${errors.join("\n ")}`;
|
|
24
22
|
}
|
|
25
23
|
Object.defineProperty(this, "message", {
|
|
26
24
|
enumerable: false,
|
|
27
25
|
value: message
|
|
28
26
|
});
|
|
29
27
|
if (stack)
|
|
30
|
-
this.stack = this.name
|
|
28
|
+
this.stack = `${this.name}: ${this.message}\n${stack}`;
|
|
31
29
|
else
|
|
32
30
|
Error.captureStackTrace(this, DiscordRESTError);
|
|
33
31
|
}
|
|
@@ -60,4 +58,4 @@ class DiscordRESTError extends Error {
|
|
|
60
58
|
}
|
|
61
59
|
}
|
|
62
60
|
exports.default = DiscordRESTError;
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlzY29yZFJFU1RFcnJvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9yZXN0L0Rpc2NvcmRSRVNURXJyb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFJQSxNQUFxQixnQkFBaUIsU0FBUSxLQUFLO0lBQy9DLElBQUksQ0FBUztJQUNiLE1BQU0sQ0FBYTtJQUNuQixJQUFJLEdBQUcsa0JBQWtCLENBQUM7SUFDMUIsT0FBTyxDQUFpQztJQUN4QyxRQUFRLENBQVc7SUFDbkIsWUFBWSxHQUFhLEVBQUUsT0FBZ0MsRUFBRSxNQUFrQixFQUFFLEtBQWM7UUFDM0YsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUM7UUFDcEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFzQyxDQUFDO1FBRXRELElBQUksT0FBTyxHQUFHLFNBQVMsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUksT0FBK0IsQ0FBQyxPQUFPLE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNuSyxJQUFJLFFBQVEsSUFBSSxPQUFPO1lBQUUsT0FBTyxJQUFJLE1BQU0sZ0JBQWdCLENBQUMsYUFBYSxDQUFFLE9BQStDLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7YUFDM0k7WUFDRCxNQUFNLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDdkQsSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUM7Z0JBQUUsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1NBQ2hFO1FBQ0QsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFO1lBQ25DLFVBQVUsRUFBRSxLQUFLO1lBQ2pCLEtBQUssRUFBTyxPQUFPO1NBQ3RCLENBQUMsQ0FBQztRQUNILElBQUksS0FBSztZQUFFLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxPQUFPLEtBQUssS0FBSyxFQUFFLENBQUM7O1lBQzdELEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsTUFBTSxDQUFDLGFBQWEsQ0FBQyxNQUErQixFQUFFLFNBQVMsR0FBRyxFQUFFO1FBQ2hFLElBQUksUUFBUSxHQUFrQixFQUFFLENBQUM7UUFDakMsS0FBSyxNQUFNLFNBQVMsSUFBSSxNQUFNLEVBQUU7WUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLFNBQVMsS0FBSyxTQUFTLElBQUksU0FBUyxLQUFLLE1BQU07Z0JBQUUsU0FBUztZQUNuRyxJQUFJLFNBQVMsSUFBSyxNQUFNLENBQUMsU0FBUyxDQUFZO2dCQUFFLFFBQVEsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFFLE1BQU0sQ0FBQyxTQUFTLENBQStDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQXlCLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxTQUFTLEdBQUcsU0FBUyxFQUFFLEtBQUssR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztpQkFDcE8sSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFBRSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBRSxNQUFNLENBQUMsU0FBUyxDQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLFNBQVMsR0FBRyxTQUFTLEVBQUUsS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7aUJBQzdKLElBQUksT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssUUFBUTtnQkFBRSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBNEIsRUFBRSxHQUFHLFNBQVMsR0FBRyxTQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDekw7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBSSxPQUFPLEtBQUssT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDL0MsSUFBSSxJQUFJLEtBQUssT0FBTyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDMUQsSUFBSSxNQUFNLEtBQUssT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDN0MsSUFBSSxVQUFVLEtBQUssT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFFckQsTUFBTTtRQUNGLE9BQU87WUFDSCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsTUFBTSxFQUFHLElBQUksQ0FBQyxNQUFNO1lBQ3BCLElBQUksRUFBSyxJQUFJLENBQUMsSUFBSTtZQUNsQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsS0FBSyxFQUFJLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRTtTQUM1QixDQUFDO0lBQ04sQ0FBQztDQUNKO0FBcERELG1DQW9EQyJ9
|
|
@@ -10,8 +10,7 @@ import ApplicationCommands from "../routes/ApplicationCommands";
|
|
|
10
10
|
import Interactions from "../routes/Interactions";
|
|
11
11
|
import type { GetBotGatewayResponse, GetGatewayResponse } from "../types/gateway";
|
|
12
12
|
export default class RESTManager {
|
|
13
|
-
private
|
|
14
|
-
private _handler;
|
|
13
|
+
#private;
|
|
15
14
|
applicationCommands: ApplicationCommands;
|
|
16
15
|
channels: Channels;
|
|
17
16
|
guilds: Guilds;
|
|
@@ -30,39 +30,37 @@ const RequestHandler_1 = __importDefault(require("./RequestHandler"));
|
|
|
30
30
|
const Channels_1 = __importDefault(require("../routes/Channels"));
|
|
31
31
|
const Guilds_1 = __importDefault(require("../routes/Guilds"));
|
|
32
32
|
const Users_1 = __importDefault(require("../routes/Users"));
|
|
33
|
-
const Properties_1 = __importDefault(require("../util/Properties"));
|
|
34
33
|
const OAuth_1 = __importDefault(require("../routes/OAuth"));
|
|
35
34
|
const Webhooks_1 = __importDefault(require("../routes/Webhooks"));
|
|
36
35
|
const ApplicationCommands_1 = __importDefault(require("../routes/ApplicationCommands"));
|
|
37
36
|
const Interactions_1 = __importDefault(require("../routes/Interactions"));
|
|
38
37
|
const Routes = __importStar(require("../util/Routes"));
|
|
39
38
|
class RESTManager {
|
|
40
|
-
_client;
|
|
41
|
-
_handler;
|
|
42
39
|
applicationCommands;
|
|
43
40
|
channels;
|
|
41
|
+
#client;
|
|
44
42
|
guilds;
|
|
43
|
+
#handler;
|
|
45
44
|
interactions;
|
|
46
45
|
oauth;
|
|
47
46
|
users;
|
|
48
47
|
webhooks;
|
|
49
48
|
constructor(client, options) {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
.define("webhooks", new Webhooks_1.default(this));
|
|
49
|
+
this.applicationCommands = new ApplicationCommands_1.default(this);
|
|
50
|
+
this.channels = new Channels_1.default(this);
|
|
51
|
+
this.#client = client;
|
|
52
|
+
this.guilds = new Guilds_1.default(this);
|
|
53
|
+
this.#handler = new RequestHandler_1.default(this, options);
|
|
54
|
+
this.interactions = new Interactions_1.default(this);
|
|
55
|
+
this.oauth = new OAuth_1.default(this);
|
|
56
|
+
this.users = new Users_1.default(this);
|
|
57
|
+
this.webhooks = new Webhooks_1.default(this);
|
|
60
58
|
}
|
|
61
|
-
get client() { return this
|
|
62
|
-
get options() { return this.
|
|
59
|
+
get client() { return this.#client; }
|
|
60
|
+
get options() { return this.#handler.options; }
|
|
63
61
|
/** Alias for {@link rest/RequestHandler~RequestHandler#authRequest | RequestHandler#authRequest} */
|
|
64
62
|
async authRequest(options) {
|
|
65
|
-
return this.
|
|
63
|
+
return this.#handler.authRequest(options);
|
|
66
64
|
}
|
|
67
65
|
/**
|
|
68
66
|
* Get the gateway information related to your bot client.
|
|
@@ -94,8 +92,8 @@ class RESTManager {
|
|
|
94
92
|
}
|
|
95
93
|
/** Alias for {@link rest/RequestHandler~RequestHandler#request | RequestHandler#request} */
|
|
96
94
|
async request(options) {
|
|
97
|
-
return this.
|
|
95
|
+
return this.#handler.request(options);
|
|
98
96
|
}
|
|
99
97
|
}
|
|
100
98
|
exports.default = RESTManager;
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUkVTVE1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvcmVzdC9SRVNUTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0VBQThDO0FBRTlDLGtFQUEwQztBQUMxQyw4REFBc0M7QUFDdEMsNERBQW9DO0FBQ3BDLDREQUFvQztBQUNwQyxrRUFBMEM7QUFHMUMsd0ZBQWdFO0FBQ2hFLDBFQUFrRDtBQUNsRCx1REFBeUM7QUFHekMsTUFBcUIsV0FBVztJQUM1QixtQkFBbUIsQ0FBc0I7SUFDekMsUUFBUSxDQUFXO0lBQ25CLE9BQU8sQ0FBUztJQUNoQixNQUFNLENBQVM7SUFDZixRQUFRLENBQWlCO0lBQ3pCLFlBQVksQ0FBZTtJQUMzQixLQUFLLENBQVE7SUFDYixLQUFLLENBQVE7SUFDYixRQUFRLENBQVc7SUFDbkIsWUFBWSxNQUFjLEVBQUUsT0FBcUI7UUFDN0MsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksNkJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLGtCQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDdEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGdCQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLHdCQUFjLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxzQkFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxlQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLGVBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksa0JBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBSSxNQUFNLEtBQUssT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNyQyxJQUFJLE9BQU8sS0FBSyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUUvQyxvR0FBb0c7SUFDcEcsS0FBSyxDQUFDLFdBQVcsQ0FBYyxPQUFxQztRQUNoRSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFJLE9BQU8sQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUEyQjtZQUM5QyxNQUFNLEVBQUUsS0FBSztZQUNiLElBQUksRUFBSSxNQUFNLENBQUMsV0FBVztTQUM3QixDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNiLEdBQUcsRUFBZ0IsSUFBSSxDQUFDLEdBQUc7WUFDM0IsY0FBYyxFQUFLLElBQUksQ0FBQyxlQUFlO1lBQ3ZDLE1BQU0sRUFBYSxJQUFJLENBQUMsTUFBTTtZQUM5QixpQkFBaUIsRUFBRTtnQkFDZixLQUFLLEVBQVcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUs7Z0JBQzlDLFNBQVMsRUFBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUztnQkFDbEQsVUFBVSxFQUFNLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXO2dCQUNwRCxjQUFjLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGVBQWU7YUFDM0Q7U0FDSixDQUEwQixDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxPQUFPLENBQXFCO1lBQ3BDLE1BQU0sRUFBRSxLQUFLO1lBQ2IsSUFBSSxFQUFJLE1BQU0sQ0FBQyxPQUFPO1NBQ3pCLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCw0RkFBNEY7SUFDNUYsS0FBSyxDQUFDLE9BQU8sQ0FBYyxPQUF1QjtRQUM5QyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFJLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLENBQUM7Q0FDSjtBQWhFRCw4QkFnRUMifQ==
|
|
@@ -8,7 +8,7 @@ import type { RESTOptions } from "../types/client";
|
|
|
8
8
|
*/
|
|
9
9
|
/** The primary means of communicating with Discord via rest. */
|
|
10
10
|
export default class RequestHandler {
|
|
11
|
-
private
|
|
11
|
+
#private;
|
|
12
12
|
globalBlock: boolean;
|
|
13
13
|
latencyRef: LatencyRef;
|
|
14
14
|
options: RequestHandlerInstanceOptions;
|