oceanic.js 1.0.0-dev.a82e67e → 1.0.0-dev.aecf856
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/dist/lib/Client.js +10 -10
- package/dist/lib/Constants.d.ts +2 -2
- package/dist/lib/Constants.js +4 -4
- package/dist/lib/gateway/Shard.js +251 -410
- package/dist/lib/gateway/ShardManager.js +3 -3
- package/dist/lib/rest/Bucket.js +2 -2
- package/dist/lib/rest/DiscordHTTPError.js +1 -1
- package/dist/lib/rest/DiscordRESTError.js +1 -1
- package/dist/lib/rest/RequestHandler.js +8 -8
- package/dist/lib/rest/SequentialBucket.js +1 -1
- package/dist/lib/routes/Channels.d.ts +2 -2
- package/dist/lib/routes/Channels.js +1 -1
- package/dist/lib/routes/Guilds.d.ts +2 -2
- package/dist/lib/routes/Guilds.js +5 -4
- package/dist/lib/routes/Interactions.d.ts +7 -6
- package/dist/lib/routes/Interactions.js +1 -1
- package/dist/lib/routes/OAuth.js +3 -3
- package/dist/lib/routes/Webhooks.d.ts +7 -6
- package/dist/lib/routes/Webhooks.js +1 -1
- package/dist/lib/structures/AnnouncementChannel.d.ts +1 -1
- package/dist/lib/structures/Application.d.ts +5 -3
- package/dist/lib/structures/Application.js +14 -6
- package/dist/lib/structures/ApplicationCommand.d.ts +5 -4
- package/dist/lib/structures/ApplicationCommand.js +15 -12
- package/dist/lib/structures/AuditLogEntry.d.ts +1 -1
- package/dist/lib/structures/AuditLogEntry.js +2 -2
- package/dist/lib/structures/AutoModerationRule.d.ts +5 -4
- package/dist/lib/structures/AutoModerationRule.js +15 -7
- package/dist/lib/structures/AutocompleteInteraction.d.ts +18 -15
- package/dist/lib/structures/AutocompleteInteraction.js +28 -19
- package/dist/lib/structures/CategoryChannel.d.ts +1 -1
- package/dist/lib/structures/CategoryChannel.js +8 -5
- package/dist/lib/structures/CommandInteraction.d.ts +22 -19
- package/dist/lib/structures/CommandInteraction.js +39 -29
- package/dist/lib/structures/ComponentInteraction.d.ts +23 -20
- package/dist/lib/structures/ComponentInteraction.js +35 -26
- package/dist/lib/structures/ForumChannel.d.ts +5 -3
- package/dist/lib/structures/ForumChannel.js +13 -7
- package/dist/lib/structures/GroupChannel.d.ts +9 -6
- package/dist/lib/structures/GroupChannel.js +17 -11
- package/dist/lib/structures/Guild.d.ts +21 -10
- package/dist/lib/structures/Guild.js +62 -37
- package/dist/lib/structures/GuildChannel.d.ts +4 -3
- package/dist/lib/structures/GuildChannel.js +17 -9
- package/dist/lib/structures/GuildPreview.js +2 -2
- package/dist/lib/structures/GuildScheduledEvent.d.ts +6 -3
- package/dist/lib/structures/GuildScheduledEvent.js +20 -9
- package/dist/lib/structures/GuildTemplate.d.ts +3 -2
- package/dist/lib/structures/GuildTemplate.js +19 -6
- package/dist/lib/structures/Integration.js +2 -3
- package/dist/lib/structures/Interaction.d.ts +4 -3
- package/dist/lib/structures/Interaction.js +7 -4
- package/dist/lib/structures/Invite.d.ts +8 -4
- package/dist/lib/structures/Invite.js +18 -7
- package/dist/lib/structures/Member.d.ts +3 -2
- package/dist/lib/structures/Member.js +18 -18
- package/dist/lib/structures/Message.d.ts +21 -12
- package/dist/lib/structures/Message.js +64 -47
- package/dist/lib/structures/ModalSubmitInteraction.d.ts +22 -19
- package/dist/lib/structures/ModalSubmitInteraction.js +34 -25
- package/dist/lib/structures/Permission.d.ts +1 -1
- package/dist/lib/structures/Permission.js +6 -6
- package/dist/lib/structures/PrivateChannel.d.ts +4 -3
- package/dist/lib/structures/PrivateChannel.js +8 -5
- package/dist/lib/structures/Role.d.ts +3 -2
- package/dist/lib/structures/Role.js +16 -8
- package/dist/lib/structures/StageChannel.d.ts +2 -2
- package/dist/lib/structures/StageChannel.js +8 -5
- package/dist/lib/structures/StageInstance.d.ts +8 -5
- package/dist/lib/structures/StageInstance.js +23 -9
- package/dist/lib/structures/Team.d.ts +1 -1
- package/dist/lib/structures/Team.js +3 -4
- package/dist/lib/structures/TextableChannel.d.ts +8 -7
- package/dist/lib/structures/TextableChannel.js +15 -9
- package/dist/lib/structures/ThreadChannel.d.ts +10 -7
- package/dist/lib/structures/ThreadChannel.js +23 -12
- package/dist/lib/structures/VoiceChannel.d.ts +4 -3
- package/dist/lib/structures/VoiceChannel.js +7 -4
- package/dist/lib/structures/VoiceState.d.ts +5 -3
- package/dist/lib/structures/VoiceState.js +13 -13
- package/dist/lib/structures/Webhook.d.ts +5 -4
- package/dist/lib/structures/Webhook.js +18 -15
- package/dist/lib/types/application-commands.d.ts +3 -2
- package/dist/lib/types/channels.d.ts +1 -1
- package/dist/lib/types/client.d.ts +1 -1
- package/dist/lib/types/events.d.ts +24 -24
- package/dist/lib/types/gateway.d.ts +2 -2
- package/dist/lib/types/guilds.d.ts +3 -0
- package/dist/lib/types/json.d.ts +46 -46
- package/dist/lib/types/scheduled-events.d.ts +2 -2
- package/dist/lib/util/InteractionOptionsWrapper.js +1 -1
- package/dist/lib/util/Routes.js +1 -1
- package/dist/lib/util/TypedCollection.js +4 -4
- package/dist/lib/util/Util.d.ts +1 -1
- package/dist/lib/util/Util.js +12 -2
- package/dist/package.json +1 -1
- package/package.json +1 -1
|
@@ -5,28 +5,27 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const Interaction_1 = __importDefault(require("./Interaction"));
|
|
7
7
|
const Message_1 = __importDefault(require("./Message"));
|
|
8
|
-
const Guild_1 = __importDefault(require("./Guild"));
|
|
9
|
-
const Member_1 = __importDefault(require("./Member"));
|
|
10
8
|
const Permission_1 = __importDefault(require("./Permission"));
|
|
11
9
|
const Constants_1 = require("../Constants");
|
|
12
10
|
class ComponentInteraction extends Interaction_1.default {
|
|
13
|
-
|
|
11
|
+
_guild;
|
|
12
|
+
/** The permissions the bot has in the channel this interaction was sent from, if this interaction is sent from a guild. */
|
|
14
13
|
appPermissions;
|
|
15
|
-
/** The channel this interaction was sent from.
|
|
14
|
+
/** The channel this interaction was sent from. */
|
|
16
15
|
channel;
|
|
16
|
+
/** The ID of the channel this interaction was sent from. */
|
|
17
|
+
channelID;
|
|
17
18
|
/** The data associated with the interaction. */
|
|
18
19
|
data;
|
|
19
|
-
/** The guild this interaction was sent from, if applicable. */
|
|
20
|
-
guild;
|
|
21
20
|
/** The id of the guild this interaction was sent from, if applicable. */
|
|
22
21
|
guildID;
|
|
23
22
|
/** The preferred [locale](https://discord.com/developers/docs/reference#locales) of the guild this interaction was sent from, if applicable. */
|
|
24
23
|
guildLocale;
|
|
25
24
|
/** The [locale](https://discord.com/developers/docs/reference#locales) of the invoking user. */
|
|
26
25
|
locale;
|
|
27
|
-
/** The member associated with the invoking user. */
|
|
26
|
+
/** The member associated with the invoking user, if this interaction is sent from a guild. */
|
|
28
27
|
member;
|
|
29
|
-
/** The permissions of the member associated with the invoking user */
|
|
28
|
+
/** The permissions of the member associated with the invoking user, if this interaction is sent from a guild. */
|
|
30
29
|
memberPermissions;
|
|
31
30
|
/** The message the interaction is from. */
|
|
32
31
|
message;
|
|
@@ -34,16 +33,17 @@ class ComponentInteraction extends Interaction_1.default {
|
|
|
34
33
|
user;
|
|
35
34
|
constructor(data, client) {
|
|
36
35
|
super(data, client);
|
|
37
|
-
this.appPermissions =
|
|
38
|
-
this.channel = client.getChannel(data.channel_id)
|
|
39
|
-
this.
|
|
40
|
-
this.
|
|
36
|
+
this.appPermissions = (data.app_permissions === undefined ? undefined : new Permission_1.default(data.app_permissions));
|
|
37
|
+
this.channel = client.getChannel(data.channel_id);
|
|
38
|
+
this.channelID = data.channel_id;
|
|
39
|
+
this._guild = (data.guild_id === undefined ? null : client.guilds.get(data.guild_id));
|
|
40
|
+
this.guildID = (data.guild_id ?? null);
|
|
41
41
|
this.guildLocale = data.guild_locale;
|
|
42
42
|
this.locale = data.locale;
|
|
43
|
-
this.member = data.member
|
|
44
|
-
this.memberPermissions = data.member ? new Permission_1.default(data.member.permissions) : undefined;
|
|
45
|
-
this.message = "messages" in this.channel ? this.channel.messages.update(data.message) : new Message_1.default(data.message, client);
|
|
46
|
-
this.user = client.users.update((data.user
|
|
43
|
+
this.member = (data.member !== undefined ? this.client.util.updateMember(data.guild_id, data.member.user.id, data.member) : undefined);
|
|
44
|
+
this.memberPermissions = (data.member !== undefined ? new Permission_1.default(data.member.permissions) : undefined);
|
|
45
|
+
this.message = this.channel && "messages" in this.channel ? this.channel.messages.update(data.message) : new Message_1.default(data.message, client);
|
|
46
|
+
this.user = client.users.update((data.user ?? data.member.user));
|
|
47
47
|
switch (data.data.component_type) {
|
|
48
48
|
case Constants_1.ComponentTypes.BUTTON: {
|
|
49
49
|
this.data = {
|
|
@@ -61,12 +61,21 @@ class ComponentInteraction extends Interaction_1.default {
|
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
|
+
/** The guild this interaction was sent from, if applicable. This will throw an error if the guild is not cached. */
|
|
65
|
+
get guild() {
|
|
66
|
+
if (this._guild === undefined) {
|
|
67
|
+
throw new Error(`${this.constructor.name}#guild is not present without having the GUILDS intent or fetching the guild.`);
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
return this._guild;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
64
73
|
/**
|
|
65
74
|
* Create a followup message.
|
|
66
75
|
* @param options The options for creating the followup message.
|
|
67
76
|
*/
|
|
68
77
|
async createFollowup(options) {
|
|
69
|
-
return this.client.rest.interactions.createFollowupMessage(this.
|
|
78
|
+
return this.client.rest.interactions.createFollowupMessage(this.applicationID, this.token, options);
|
|
70
79
|
}
|
|
71
80
|
/**
|
|
72
81
|
* Create a message through this interaction. This is an initial response, and more than one initial response cannot be used. Use `createFollowup`.
|
|
@@ -117,13 +126,13 @@ class ComponentInteraction extends Interaction_1.default {
|
|
|
117
126
|
* @param messageID The ID of the message.
|
|
118
127
|
*/
|
|
119
128
|
async deleteFollowup(messageID) {
|
|
120
|
-
return this.client.rest.interactions.deleteFollowupMessage(this.
|
|
129
|
+
return this.client.rest.interactions.deleteFollowupMessage(this.applicationID, this.token, messageID);
|
|
121
130
|
}
|
|
122
131
|
/**
|
|
123
132
|
* Delete the original interaction response. Does not work with ephemeral messages.
|
|
124
133
|
*/
|
|
125
134
|
async deleteOriginal() {
|
|
126
|
-
return this.client.rest.interactions.deleteOriginalMessage(this.
|
|
135
|
+
return this.client.rest.interactions.deleteOriginalMessage(this.applicationID, this.token);
|
|
127
136
|
}
|
|
128
137
|
/**
|
|
129
138
|
* Edit a followup message.
|
|
@@ -131,14 +140,14 @@ class ComponentInteraction extends Interaction_1.default {
|
|
|
131
140
|
* @param options The options for editing the followup message.
|
|
132
141
|
*/
|
|
133
142
|
async editFollowup(messageID, options) {
|
|
134
|
-
return this.client.rest.interactions.editFollowupMessage(this.
|
|
143
|
+
return this.client.rest.interactions.editFollowupMessage(this.applicationID, this.token, messageID, options);
|
|
135
144
|
}
|
|
136
145
|
/**
|
|
137
146
|
* Edit the original interaction response.
|
|
138
147
|
* @param options The options for editing the original message.
|
|
139
148
|
*/
|
|
140
149
|
async editOriginal(options) {
|
|
141
|
-
return this.client.rest.interactions.editOriginalMessage(this.
|
|
150
|
+
return this.client.rest.interactions.editOriginalMessage(this.applicationID, this.token, options);
|
|
142
151
|
}
|
|
143
152
|
/**
|
|
144
153
|
* Edit the message this interaction is from. If this interaction has already been acknowledged, use `createFollowup`.
|
|
@@ -156,21 +165,21 @@ class ComponentInteraction extends Interaction_1.default {
|
|
|
156
165
|
* @param messageID The ID of the message.
|
|
157
166
|
*/
|
|
158
167
|
async getFollowup(messageID) {
|
|
159
|
-
return this.client.rest.interactions.getFollowupMessage(this.
|
|
168
|
+
return this.client.rest.interactions.getFollowupMessage(this.applicationID, this.token, messageID);
|
|
160
169
|
}
|
|
161
170
|
/**
|
|
162
171
|
* Get the original interaction response.
|
|
163
172
|
*/
|
|
164
173
|
async getOriginal() {
|
|
165
|
-
return this.client.rest.interactions.getOriginalMessage(this.
|
|
174
|
+
return this.client.rest.interactions.getOriginalMessage(this.applicationID, this.token);
|
|
166
175
|
}
|
|
167
176
|
toJSON() {
|
|
168
177
|
return {
|
|
169
178
|
...super.toJSON(),
|
|
170
179
|
appPermissions: this.appPermissions?.toJSON(),
|
|
171
|
-
|
|
180
|
+
channelID: this.channelID,
|
|
172
181
|
data: this.data,
|
|
173
|
-
|
|
182
|
+
guildID: this.guildID ?? undefined,
|
|
174
183
|
guildLocale: this.guildLocale,
|
|
175
184
|
locale: this.locale,
|
|
176
185
|
member: this.member?.toJSON(),
|
|
@@ -180,4 +189,4 @@ class ComponentInteraction extends Interaction_1.default {
|
|
|
180
189
|
}
|
|
181
190
|
}
|
|
182
191
|
exports.default = ComponentInteraction;
|
|
183
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
192
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tcG9uZW50SW50ZXJhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvc3RydWN0dXJlcy9Db21wb25lbnRJbnRlcmFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdFQUF3QztBQUN4Qyx3REFBZ0M7QUFJaEMsOERBQXNDO0FBVXRDLDRDQUF3RTtBQUt4RSxNQUFxQixvQkFBc0YsU0FBUSxxQkFBVztJQUNsSCxNQUFNLENBQXdEO0lBQ3RFLDJIQUEySDtJQUMzSCxjQUFjLENBQXNFO0lBQ3BGLGtEQUFrRDtJQUNsRCxPQUFPLENBQTJDO0lBQ2xELDREQUE0RDtJQUM1RCxTQUFTLENBQVM7SUFDbEIsZ0RBQWdEO0lBQ2hELElBQUksQ0FBb0Y7SUFDeEYseUVBQXlFO0lBQ3pFLE9BQU8sQ0FBeUQ7SUFDaEUsZ0pBQWdKO0lBQ2hKLFdBQVcsQ0FBOEQ7SUFDekUsZ0dBQWdHO0lBQ2hHLE1BQU0sQ0FBUztJQUNmLDhGQUE4RjtJQUM5RixNQUFNLENBQThEO0lBQ3BFLGlIQUFpSDtJQUNqSCxpQkFBaUIsQ0FBc0U7SUFDdkYsMkNBQTJDO0lBQzNDLE9BQU8sQ0FBYTtJQUVwQiw4Q0FBOEM7SUFDOUMsSUFBSSxDQUFPO0lBQ1gsWUFBWSxJQUFvQyxFQUFFLE1BQWM7UUFDNUQsS0FBSyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNwQixJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxvQkFBVSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBd0UsQ0FBQztRQUNyTCxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQWlCLElBQUksQ0FBQyxVQUFXLENBQTZDLENBQUM7UUFDL0csSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQXlELENBQUM7UUFDOUksSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUEyRCxDQUFDO1FBQ2pHLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQTJFLENBQUM7UUFDcEcsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTyxDQUFDO1FBQzNCLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFTLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFnRSxDQUFDO1FBQ3ZNLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLG9CQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUF3RSxDQUFDO1FBQ2xMLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxVQUFVLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxpQkFBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFlLENBQUM7UUFDdkssSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU8sQ0FBQyxJQUFJLENBQUUsQ0FBQyxDQUFDO1FBRW5FLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDOUIsS0FBSywwQkFBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4QixJQUFJLENBQUMsSUFBSSxHQUFHO29CQUNSLGFBQWEsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWM7b0JBQ3ZDLFFBQVEsRUFBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVM7aUJBQ3JDLENBQUM7Z0JBQ0YsTUFBTTthQUNUO1lBRUQsS0FBSywwQkFBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUM3QixJQUFJLENBQUMsSUFBSSxHQUFHO29CQUNSLGFBQWEsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWM7b0JBQ3ZDLFFBQVEsRUFBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVM7b0JBQ2xDLE1BQU0sRUFBUyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU87aUJBQ25DLENBQUM7YUFDTDtTQUNKO0lBQ0wsQ0FBQztJQUVELG9IQUFvSDtJQUNwSCxJQUFJLEtBQUs7UUFDTCxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFO1lBQzNCLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksK0VBQStFLENBQUMsQ0FBQztTQUM1SDthQUFNO1lBQ0gsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO1NBQ3RCO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxjQUFjLENBQUMsT0FBMkI7UUFDNUMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMscUJBQXFCLENBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzNHLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsYUFBYSxDQUFDLE9BQTJCO1FBQzNDLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQixNQUFNLElBQUksS0FBSyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7U0FDL0U7UUFDRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUN6QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsb0NBQXdCLENBQUMsMkJBQTJCLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDdkssQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBa0I7UUFDaEMsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ25CLE1BQU0sSUFBSSxLQUFLLENBQUMsMERBQTBELENBQUMsQ0FBQztTQUMvRTtRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxvQ0FBd0IsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDakosQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBYztRQUN0QixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDbkIsTUFBTSxJQUFJLEtBQUssQ0FBQywwREFBMEQsQ0FBQyxDQUFDO1NBQy9FO1FBQ0QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDekIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLG9DQUF3QixDQUFDLG9DQUFvQyxFQUFFLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNsTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUFjO1FBQzVCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQixNQUFNLElBQUksS0FBSyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7U0FDL0U7UUFDRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUN6QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsb0NBQXdCLENBQUMsc0JBQXNCLEVBQUUsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3BLLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsY0FBYyxDQUFDLFNBQWlCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztJQUMxRyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvRixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxZQUFZLENBQUMsU0FBaUIsRUFBRSxPQUEyQjtRQUM3RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxtQkFBbUIsQ0FBSSxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3BILENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQTJCO1FBQzFDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixDQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6RyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUEyQjtRQUN4QyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDbkIsTUFBTSxJQUFJLEtBQUssQ0FBQywwREFBMEQsQ0FBQyxDQUFDO1NBQy9FO1FBQ0QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDekIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLG9DQUF3QixDQUFDLGNBQWMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUMxSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFpQjtRQUMvQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsQ0FBSSxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDMUcsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsQ0FBSSxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvRixDQUFDO0lBRVEsTUFBTTtRQUNYLE9BQU87WUFDSCxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDakIsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsTUFBTSxFQUFFO1lBQzdDLFNBQVMsRUFBTyxJQUFJLENBQUMsU0FBUztZQUM5QixJQUFJLEVBQVksSUFBSSxDQUFDLElBQUk7WUFDekIsT0FBTyxFQUFTLElBQUksQ0FBQyxPQUFPLElBQUksU0FBUztZQUN6QyxXQUFXLEVBQUssSUFBSSxDQUFDLFdBQVc7WUFDaEMsTUFBTSxFQUFVLElBQUksQ0FBQyxNQUFNO1lBQzNCLE1BQU0sRUFBVSxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRTtZQUNyQyxJQUFJLEVBQVksSUFBSSxDQUFDLElBQUk7WUFDekIsSUFBSSxFQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1NBQ3JDLENBQUM7SUFDTixDQUFDO0NBQ0o7QUFwTUQsdUNBb01DIn0=
|
|
@@ -6,7 +6,7 @@ import type Member from "./Member";
|
|
|
6
6
|
import Permission from "./Permission";
|
|
7
7
|
import type CategoryChannel from "./CategoryChannel";
|
|
8
8
|
import type Client from "../Client";
|
|
9
|
-
import type { ArchivedThreads, CreateInviteOptions, EditForumChannelOptions, EditPermissionOptions, ForumEmoji, ForumTag, GetArchivedThreadsOptions, JSONForumChannel, RawForumChannel, RawOverwrite, RawPublicThreadChannel, StartThreadInForumOptions
|
|
9
|
+
import type { ArchivedThreads, CreateInviteOptions, EditForumChannelOptions, EditPermissionOptions, ForumEmoji, ForumTag, GetArchivedThreadsOptions, JSONForumChannel, RawForumChannel, RawOverwrite, RawPublicThreadChannel, StartThreadInForumOptions } from "../types";
|
|
10
10
|
import TypedCollection from "../util/TypedCollection";
|
|
11
11
|
import type { ChannelTypes, ThreadAutoArchiveDuration } from "../Constants";
|
|
12
12
|
/** Represents a forum channel. Documentation for these is currently scarce, so they may not work entirely correctly. */
|
|
@@ -22,10 +22,12 @@ export default class ForumChannel extends GuildChannel {
|
|
|
22
22
|
/** The flags for this channel, see {@link Constants.ChannelFlags}. */
|
|
23
23
|
flags: number;
|
|
24
24
|
/** The most recently created thread. */
|
|
25
|
-
lastThread
|
|
25
|
+
lastThread?: PublicThreadChannel | null;
|
|
26
|
+
/** The ID of most recently created thread. */
|
|
27
|
+
lastThreadID: string | null;
|
|
26
28
|
/** If this channel is age gated. */
|
|
27
29
|
nsfw: boolean;
|
|
28
|
-
parent
|
|
30
|
+
parent?: CategoryChannel | null;
|
|
29
31
|
parentID: string;
|
|
30
32
|
/** The permission overwrites of this channel. */
|
|
31
33
|
permissionOverwrites: TypedCollection<string, RawOverwrite, PermissionOverwrite>;
|
|
@@ -23,6 +23,8 @@ class ForumChannel extends GuildChannel_1.default {
|
|
|
23
23
|
flags;
|
|
24
24
|
/** The most recently created thread. */
|
|
25
25
|
lastThread;
|
|
26
|
+
/** The ID of most recently created thread. */
|
|
27
|
+
lastThreadID;
|
|
26
28
|
/** If this channel is age gated. */
|
|
27
29
|
nsfw;
|
|
28
30
|
/** The permission overwrites of this channel. */
|
|
@@ -44,7 +46,7 @@ class ForumChannel extends GuildChannel_1.default {
|
|
|
44
46
|
this.defaultReactionEmoji = null;
|
|
45
47
|
this.defaultThreadRateLimitPerUser = data.default_thread_rate_limit_per_user;
|
|
46
48
|
this.flags = data.flags;
|
|
47
|
-
this.
|
|
49
|
+
this.lastThreadID = data.last_message_id;
|
|
48
50
|
this.nsfw = data.nsfw;
|
|
49
51
|
this.permissionOverwrites = new TypedCollection_1.default(PermissionOverwrite_1.default, client);
|
|
50
52
|
this.position = data.position;
|
|
@@ -77,7 +79,8 @@ class ForumChannel extends GuildChannel_1.default {
|
|
|
77
79
|
this.flags = data.flags;
|
|
78
80
|
}
|
|
79
81
|
if (data.last_message_id !== undefined) {
|
|
80
|
-
this.lastThread =
|
|
82
|
+
this.lastThread = data.last_message_id === null ? null : this.threads.get(data.last_message_id);
|
|
83
|
+
this.lastThreadID = data.last_message_id;
|
|
81
84
|
}
|
|
82
85
|
if (data.nsfw !== undefined) {
|
|
83
86
|
this.nsfw = data.nsfw;
|
|
@@ -153,13 +156,16 @@ class ForumChannel extends GuildChannel_1.default {
|
|
|
153
156
|
* @param member The member to get the permissions of.
|
|
154
157
|
*/
|
|
155
158
|
permissionsOf(member) {
|
|
159
|
+
if (!this["_guild"]) {
|
|
160
|
+
throw new Error(`Cannot use ${this.constructor.name}#permissionsOf without having the GUILDS intent or fetching the guild.`);
|
|
161
|
+
}
|
|
156
162
|
if (typeof member === "string") {
|
|
157
|
-
member = this.
|
|
163
|
+
member = this["_guild"].members.get(member);
|
|
158
164
|
}
|
|
159
165
|
if (!member) {
|
|
160
|
-
throw new Error(
|
|
166
|
+
throw new Error(`Cannot use ${this.constructor.name}#permissionsOf with an ID without having the member cached.`);
|
|
161
167
|
}
|
|
162
|
-
let permission = this.
|
|
168
|
+
let permission = this["_guild"].permissionsOf(member).allow;
|
|
163
169
|
if (permission & Constants_1.Permissions.ADMINISTRATOR) {
|
|
164
170
|
return new Permission_1.default(Constants_1.AllPermissions);
|
|
165
171
|
}
|
|
@@ -197,7 +203,7 @@ class ForumChannel extends GuildChannel_1.default {
|
|
|
197
203
|
defaultReactionEmoji: this.defaultReactionEmoji,
|
|
198
204
|
defaultThreadRateLimitPerUser: this.defaultThreadRateLimitPerUser,
|
|
199
205
|
flags: this.flags,
|
|
200
|
-
|
|
206
|
+
lastThreadID: this.lastThreadID,
|
|
201
207
|
permissionOverwrites: this.permissionOverwrites.map(overwrite => overwrite.toJSON()),
|
|
202
208
|
position: this.position,
|
|
203
209
|
rateLimitPerUser: this.rateLimitPerUser,
|
|
@@ -208,4 +214,4 @@ class ForumChannel extends GuildChannel_1.default {
|
|
|
208
214
|
}
|
|
209
215
|
}
|
|
210
216
|
exports.default = ForumChannel;
|
|
211
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
217
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRm9ydW1DaGFubmVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3N0cnVjdHVyZXMvRm9ydW1DaGFubmVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQTBDO0FBQzFDLGdGQUF3RDtBQUN4RCxnRkFBd0Q7QUFHeEQsOERBQXNDO0FBaUJ0Qyw4RUFBc0Q7QUFFdEQsNENBQTJEO0FBRTNELHdIQUF3SDtBQUN4SCxNQUFxQixZQUFhLFNBQVEsc0JBQVk7SUFDbEQsbUNBQW1DO0lBQ25DLGFBQWEsQ0FBa0I7SUFDL0IscURBQXFEO0lBQ3JELDBCQUEwQixDQUE0QjtJQUN0RCw4Q0FBOEM7SUFDOUMsb0JBQW9CLENBQW9CO0lBQ3hDLHdGQUF3RjtJQUN4Riw2QkFBNkIsQ0FBUztJQUN0QyxzRUFBc0U7SUFDdEUsS0FBSyxDQUFTO0lBQ2Qsd0NBQXdDO0lBQ3hDLFVBQVUsQ0FBOEI7SUFDeEMsOENBQThDO0lBQzlDLFlBQVksQ0FBZ0I7SUFDNUIsb0NBQW9DO0lBQ3BDLElBQUksQ0FBVTtJQUdkLGlEQUFpRDtJQUNqRCxvQkFBb0IsQ0FBNkQ7SUFDakYsbURBQW1EO0lBQ25ELFFBQVEsQ0FBUztJQUNqQixxRUFBcUU7SUFDckUsZ0JBQWdCLENBQVM7SUFDekIsNkJBQTZCO0lBQzdCLFFBQVEsQ0FBUztJQUNqQixtQ0FBbUM7SUFDbkMsT0FBTyxDQUF1RTtJQUM5RSw4Q0FBOEM7SUFDOUMsS0FBSyxDQUFnQjtJQUVyQixZQUFZLElBQXFCLEVBQUUsTUFBYztRQUM3QyxLQUFLLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQywwQkFBMEIsR0FBRyxJQUFJLENBQUMsNkJBQTZCLENBQUM7UUFDckUsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQztRQUNqQyxJQUFJLENBQUMsNkJBQTZCLEdBQUcsSUFB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
|
|
@@ -8,16 +8,19 @@ import type Client from "../Client";
|
|
|
8
8
|
import type { AddGroupRecipientOptions, CreateInviteOptions, CreateMessageOptions, EditGroupDMOptions, EditMessageOptions, GetChannelMessagesOptions, GetReactionsOptions, InviteChannel, InviteInfoTypes, RawGroupChannel, RawMessage } from "../types/channels";
|
|
9
9
|
import type { RawUser } from "../types/users";
|
|
10
10
|
import TypedCollection from "../util/TypedCollection";
|
|
11
|
-
import type { Uncached } from "../types/shared";
|
|
12
11
|
import type { JSONGroupChannel } from "../types/json";
|
|
13
12
|
/** Represents a group direct message. */
|
|
14
13
|
export default class GroupChannel extends Channel {
|
|
15
|
-
/** The application that made this group channel.
|
|
16
|
-
application
|
|
14
|
+
/** The application that made this group channel. */
|
|
15
|
+
application?: ClientApplication;
|
|
16
|
+
/** The ID of the application that made this group channel. */
|
|
17
|
+
applicationID: string;
|
|
17
18
|
/** The icon hash of this group, if any. */
|
|
18
19
|
icon: string | null;
|
|
19
|
-
/** The last message sent in this channel. This
|
|
20
|
-
lastMessage
|
|
20
|
+
/** The last message sent in this channel. This will only be present if a message has been sent within the current session. */
|
|
21
|
+
lastMessage?: Message | null;
|
|
22
|
+
/** The ID of last message sent in this channel. */
|
|
23
|
+
lastMessageID: string | null;
|
|
21
24
|
/** If this group channel is managed by an application. */
|
|
22
25
|
managed: boolean;
|
|
23
26
|
/** The cached messages in this channel. */
|
|
@@ -27,7 +30,7 @@ export default class GroupChannel extends Channel {
|
|
|
27
30
|
/** The nicknames used when creating this group channel. */
|
|
28
31
|
nicks: Array<Record<"id" | "nick", string>>;
|
|
29
32
|
/** The owner of this group channel. */
|
|
30
|
-
owner
|
|
33
|
+
owner?: User;
|
|
31
34
|
/** The ID of the owner of this group channel. */
|
|
32
35
|
ownerID: string;
|
|
33
36
|
/** The other recipients in this group channel. */
|
|
@@ -33,12 +33,16 @@ const Routes = __importStar(require("../util/Routes"));
|
|
|
33
33
|
const TypedCollection_1 = __importDefault(require("../util/TypedCollection"));
|
|
34
34
|
/** Represents a group direct message. */
|
|
35
35
|
class GroupChannel extends Channel_1.default {
|
|
36
|
-
/** The application that made this group channel.
|
|
36
|
+
/** The application that made this group channel. */
|
|
37
37
|
application;
|
|
38
|
+
/** The ID of the application that made this group channel. */
|
|
39
|
+
applicationID;
|
|
38
40
|
/** The icon hash of this group, if any. */
|
|
39
41
|
icon;
|
|
40
|
-
/** The last message sent in this channel. This
|
|
42
|
+
/** The last message sent in this channel. This will only be present if a message has been sent within the current session. */
|
|
41
43
|
lastMessage;
|
|
44
|
+
/** The ID of last message sent in this channel. */
|
|
45
|
+
lastMessageID;
|
|
42
46
|
/** If this group channel is managed by an application. */
|
|
43
47
|
managed;
|
|
44
48
|
/** The cached messages in this channel. */
|
|
@@ -55,9 +59,9 @@ class GroupChannel extends Channel_1.default {
|
|
|
55
59
|
recipients;
|
|
56
60
|
constructor(data, client) {
|
|
57
61
|
super(data, client);
|
|
58
|
-
this.
|
|
62
|
+
this.applicationID = data.application_id;
|
|
59
63
|
this.icon = null;
|
|
60
|
-
this.
|
|
64
|
+
this.lastMessageID = data.last_message_id;
|
|
61
65
|
this.managed = false;
|
|
62
66
|
this.messages = new TypedCollection_1.default(Message_1.default, client, client.options.collectionLimits.messages);
|
|
63
67
|
this.name = data.name;
|
|
@@ -71,13 +75,15 @@ class GroupChannel extends Channel_1.default {
|
|
|
71
75
|
update(data) {
|
|
72
76
|
super.update(data);
|
|
73
77
|
if (data.application_id !== undefined) {
|
|
74
|
-
this.application = this.client.application
|
|
78
|
+
this.application = this.client.application.id === data.application_id ? this.client.application : undefined;
|
|
79
|
+
this.applicationID = data.application_id;
|
|
75
80
|
}
|
|
76
81
|
if (data.icon !== undefined) {
|
|
77
82
|
this.icon = data.icon;
|
|
78
83
|
}
|
|
79
84
|
if (data.last_message_id !== undefined) {
|
|
80
|
-
this.lastMessage = data.last_message_id === null ? null : this.messages.get(data.last_message_id)
|
|
85
|
+
this.lastMessage = data.last_message_id === null ? null : this.messages.get(data.last_message_id);
|
|
86
|
+
this.lastMessageID = data.last_message_id;
|
|
81
87
|
}
|
|
82
88
|
if (data.managed !== undefined) {
|
|
83
89
|
this.managed = data.managed;
|
|
@@ -89,8 +95,8 @@ class GroupChannel extends Channel_1.default {
|
|
|
89
95
|
this.nicks = data.nicks;
|
|
90
96
|
}
|
|
91
97
|
if (data.owner_id !== undefined) {
|
|
92
|
-
this.ownerID = data.owner_id;
|
|
93
98
|
this.owner = this.client.users.get(data.owner_id);
|
|
99
|
+
this.ownerID = data.owner_id;
|
|
94
100
|
}
|
|
95
101
|
if (data.type !== undefined) {
|
|
96
102
|
this.type = data.type;
|
|
@@ -203,7 +209,7 @@ class GroupChannel extends Channel_1.default {
|
|
|
203
209
|
* @param size The dimensions of the image.
|
|
204
210
|
*/
|
|
205
211
|
iconURL(format, size) {
|
|
206
|
-
return this.icon === null ? null : this.client.util.formatImage(Routes.APPLICATION_ICON(this.
|
|
212
|
+
return this.icon === null ? null : this.client.util.formatImage(Routes.APPLICATION_ICON(this.applicationID, this.icon), format, size);
|
|
207
213
|
}
|
|
208
214
|
/**
|
|
209
215
|
* Pin a message in this channel.
|
|
@@ -229,12 +235,12 @@ class GroupChannel extends Channel_1.default {
|
|
|
229
235
|
toJSON() {
|
|
230
236
|
return {
|
|
231
237
|
...super.toJSON(),
|
|
232
|
-
|
|
238
|
+
applicationID: this.applicationID,
|
|
233
239
|
icon: this.icon,
|
|
234
240
|
managed: this.managed,
|
|
235
241
|
name: this.name,
|
|
236
242
|
nicks: this.nicks,
|
|
237
|
-
|
|
243
|
+
ownerID: this.ownerID,
|
|
238
244
|
recipients: this.recipients.map(user => user.toJSON()),
|
|
239
245
|
type: this.type
|
|
240
246
|
};
|
|
@@ -249,4 +255,4 @@ class GroupChannel extends Channel_1.default {
|
|
|
249
255
|
}
|
|
250
256
|
}
|
|
251
257
|
exports.default = GroupChannel;
|
|
252
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
258
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JvdXBDaGFubmVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3N0cnVjdHVyZXMvR3JvdXBDaGFubmVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx3REFBZ0M7QUFDaEMsa0RBQTBCO0FBQzFCLHdEQUFnQztBQUtoQyx1REFBeUM7QUFlekMsOEVBQXNEO0FBR3RELHlDQUF5QztBQUN6QyxNQUFxQixZQUFhLFNBQVEsaUJBQU87SUFDN0Msb0RBQW9EO0lBQ3BELFdBQVcsQ0FBcUI7SUFDaEMsOERBQThEO0lBQzlELGFBQWEsQ0FBUztJQUN0QiwyQ0FBMkM7SUFDM0MsSUFBSSxDQUFnQjtJQUNwQiw4SEFBOEg7SUFDOUgsV0FBVyxDQUFrQjtJQUM3QixtREFBbUQ7SUFDbkQsYUFBYSxDQUFnQjtJQUM3QiwwREFBMEQ7SUFDMUQsT0FBTyxDQUFVO0lBQ2pCLDJDQUEyQztJQUMzQyxRQUFRLENBQStDO0lBQ3ZELHNDQUFzQztJQUN0QyxJQUFJLENBQWdCO0lBQ3BCLDJEQUEyRDtJQUMzRCxLQUFLLENBQXVDO0lBQzVDLHVDQUF1QztJQUN2QyxLQUFLLENBQVE7SUFDYixpREFBaUQ7SUFDakQsT0FBTyxDQUFTO0lBQ2hCLGtEQUFrRDtJQUNsRCxVQUFVLENBQXlDO0lBRW5ELFlBQVksSUFBcUIsRUFBRSxNQUFjO1FBQzdDLEtBQUssQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDcEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztRQUMxQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUkseUJBQWUsQ0FBQyxpQkFBTyxF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
|
|
@@ -25,7 +25,6 @@ import type { CreateScheduledEventOptions, EditScheduledEventOptions, GetSchedul
|
|
|
25
25
|
import type { CreateAutoModerationRuleOptions, EditAutoModerationRuleOptions, RawAutoModerationRule } from "../types/auto-moderation";
|
|
26
26
|
import type { AuditLog, GetAuditLogOptions } from "../types/audit-log";
|
|
27
27
|
import type { CreateTemplateOptions, EditGuildTemplateOptions } from "../types/guild-template";
|
|
28
|
-
import type { Uncached } from "../types/shared";
|
|
29
28
|
import type { RawVoiceState, VoiceRegion } from "../types/voice";
|
|
30
29
|
import type { RawStageInstance } from "../types/stage-instances";
|
|
31
30
|
import type { JSONGuild } from "../types/json";
|
|
@@ -34,12 +33,16 @@ import Shard from "../gateway/Shard";
|
|
|
34
33
|
/** Represents a Discord server. */
|
|
35
34
|
export default class Guild extends Base {
|
|
36
35
|
private _clientMember?;
|
|
37
|
-
/** This guild's afk voice channel.
|
|
38
|
-
afkChannel
|
|
36
|
+
/** This guild's afk voice channel. */
|
|
37
|
+
afkChannel?: VoiceChannel | null;
|
|
38
|
+
/** The ID of this guild's afk voice channel. */
|
|
39
|
+
afkChannelID: string | null;
|
|
39
40
|
/** The seconds after which voice users will be moved to the afk channel. */
|
|
40
41
|
afkTimeout: number;
|
|
41
|
-
/** The application that created this guild, if applicable.
|
|
42
|
-
application
|
|
42
|
+
/** The application that created this guild, if applicable. */
|
|
43
|
+
application?: ClientApplication | null;
|
|
44
|
+
/** The ID of the application that created this guild, if applicable. */
|
|
45
|
+
applicationID: string | null;
|
|
43
46
|
/** The approximate number of members in this guild (if retreived with counts). */
|
|
44
47
|
approximateMemberCount?: number;
|
|
45
48
|
/** The approximate number of non-offline members in this guild (if retreived with counts). */
|
|
@@ -102,14 +105,18 @@ export default class Guild extends Base {
|
|
|
102
105
|
premiumSubscriptionCount?: number;
|
|
103
106
|
/** The [boost level](https://discord.com/developers/docs/resources/guild#guild-object-premium-tier) of this guild. */
|
|
104
107
|
premiumTier: PremiumTiers;
|
|
108
|
+
/** The channel where notices from Discord are received. Only present in guilds with the `COMMUNITY` feature. */
|
|
109
|
+
publicUpdatesChannel?: AnyGuildTextChannel | null;
|
|
105
110
|
/** The id of the channel where notices from Discord are received. Only present in guilds with the `COMMUNITY` feature. */
|
|
106
|
-
|
|
111
|
+
publicUpdatesChannelID: string | null;
|
|
107
112
|
/** @deprecated The region of this guild.*/
|
|
108
113
|
region?: string | null;
|
|
109
114
|
/** The roles in this guild. */
|
|
110
115
|
roles: TypedCollection<string, RawRole, Role, [guildID: string]>;
|
|
116
|
+
/** The channel where rules/guidelines are displayed. Only present in guilds with the `COMMUNITY` feature. */
|
|
117
|
+
rulesChannel?: TextChannel | null;
|
|
111
118
|
/** The id of the channel where rules/guidelines are displayed. Only present in guilds with the `COMMUNITY` feature. */
|
|
112
|
-
|
|
119
|
+
rulesChannelID: string | null;
|
|
113
120
|
/** The scheduled events in this guild. */
|
|
114
121
|
scheduledEvents: TypedCollection<string, RawScheduledEvent, GuildScheduledEvent>;
|
|
115
122
|
/** The invite splash hash of this guild. */
|
|
@@ -118,10 +125,12 @@ export default class Guild extends Base {
|
|
|
118
125
|
stageInstances: TypedCollection<string, RawStageInstance, StageInstance>;
|
|
119
126
|
/** The custom stickers of this guild. */
|
|
120
127
|
stickers: Array<Sticker>;
|
|
121
|
-
/** The
|
|
122
|
-
systemChannel
|
|
128
|
+
/** The channel where welcome messages and boosts notices are posted. */
|
|
129
|
+
systemChannel?: TextChannel | null;
|
|
123
130
|
/** The [flags](https://discord.com/developers/docs/resources/guild#guild-object-system-channel-flags) for the system channel. */
|
|
124
131
|
systemChannelFlags: number;
|
|
132
|
+
/** The id of the channel where welcome messages and boosts notices are posted. */
|
|
133
|
+
systemChannelID: string | null;
|
|
125
134
|
/** The threads in this guild. */
|
|
126
135
|
threads: TypedCollection<string, RawThreadChannel, AnyThreadChannel>;
|
|
127
136
|
/** If this guild is unavailable. */
|
|
@@ -134,8 +143,10 @@ export default class Guild extends Base {
|
|
|
134
143
|
voiceStates: TypedCollection<string, RawVoiceState, VoiceState>;
|
|
135
144
|
/** The welcome screen configuration. Only present in guilds with the `WELCOME_SCREEN_ENABLED` feature. */
|
|
136
145
|
welcomeScreen?: WelcomeScreen;
|
|
146
|
+
/** The the channel the widget will generate an invite to, or `null` if set to no invite. */
|
|
147
|
+
widgetChannel?: Exclude<AnyGuildChannel, CategoryChannel> | null;
|
|
137
148
|
/** The id of the channel the widget will generate an invite to, or `null` if set to no invite. */
|
|
138
|
-
|
|
149
|
+
widgetChannelID: string | null;
|
|
139
150
|
/** If the widget is enabled. */
|
|
140
151
|
widgetEnabled?: boolean;
|
|
141
152
|
constructor(data: RawGuild, client: Client);
|