oceanic.js 0.0.12-dev.bcdbabd → 1.0.0-dev.0696fba

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/CONTRIBUTING.md +1 -1
  2. package/README.md +4 -4
  3. package/dist/lib/Client.js +10 -10
  4. package/dist/lib/Constants.d.ts +2 -2
  5. package/dist/lib/Constants.js +4 -4
  6. package/dist/lib/gateway/Shard.js +280 -266
  7. package/dist/lib/gateway/ShardManager.js +3 -3
  8. package/dist/lib/rest/Bucket.js +2 -2
  9. package/dist/lib/rest/DiscordHTTPError.js +1 -1
  10. package/dist/lib/rest/DiscordRESTError.js +1 -1
  11. package/dist/lib/rest/RequestHandler.js +8 -8
  12. package/dist/lib/rest/SequentialBucket.js +1 -1
  13. package/dist/lib/routes/Channels.d.ts +2 -2
  14. package/dist/lib/routes/Channels.js +1 -1
  15. package/dist/lib/routes/Guilds.d.ts +2 -2
  16. package/dist/lib/routes/Guilds.js +4 -3
  17. package/dist/lib/routes/OAuth.js +3 -3
  18. package/dist/lib/structures/AnnouncementChannel.d.ts +1 -1
  19. package/dist/lib/structures/Application.d.ts +5 -3
  20. package/dist/lib/structures/Application.js +14 -6
  21. package/dist/lib/structures/ApplicationCommand.d.ts +5 -4
  22. package/dist/lib/structures/ApplicationCommand.js +15 -12
  23. package/dist/lib/structures/AuditLogEntry.d.ts +3 -0
  24. package/dist/lib/structures/AuditLogEntry.js +4 -1
  25. package/dist/lib/structures/AutoModerationRule.d.ts +5 -4
  26. package/dist/lib/structures/AutoModerationRule.js +15 -7
  27. package/dist/lib/structures/AutocompleteInteraction.d.ts +5 -3
  28. package/dist/lib/structures/AutocompleteInteraction.js +11 -10
  29. package/dist/lib/structures/CategoryChannel.d.ts +1 -1
  30. package/dist/lib/structures/CategoryChannel.js +8 -5
  31. package/dist/lib/structures/CommandInteraction.d.ts +5 -3
  32. package/dist/lib/structures/CommandInteraction.js +19 -17
  33. package/dist/lib/structures/ComponentInteraction.d.ts +5 -3
  34. package/dist/lib/structures/ComponentInteraction.js +18 -17
  35. package/dist/lib/structures/ForumChannel.d.ts +6 -3
  36. package/dist/lib/structures/ForumChannel.js +13 -7
  37. package/dist/lib/structures/GroupChannel.d.ts +12 -7
  38. package/dist/lib/structures/GroupChannel.js +23 -13
  39. package/dist/lib/structures/Guild.d.ts +26 -13
  40. package/dist/lib/structures/Guild.js +70 -40
  41. package/dist/lib/structures/GuildChannel.d.ts +4 -3
  42. package/dist/lib/structures/GuildChannel.js +16 -9
  43. package/dist/lib/structures/GuildPreview.js +2 -2
  44. package/dist/lib/structures/GuildScheduledEvent.d.ts +6 -3
  45. package/dist/lib/structures/GuildScheduledEvent.js +20 -9
  46. package/dist/lib/structures/GuildTemplate.d.ts +3 -2
  47. package/dist/lib/structures/GuildTemplate.js +19 -6
  48. package/dist/lib/structures/Integration.js +2 -3
  49. package/dist/lib/structures/Interaction.d.ts +4 -3
  50. package/dist/lib/structures/Interaction.js +7 -4
  51. package/dist/lib/structures/Invite.d.ts +8 -4
  52. package/dist/lib/structures/Invite.js +18 -7
  53. package/dist/lib/structures/Member.d.ts +3 -2
  54. package/dist/lib/structures/Member.js +18 -18
  55. package/dist/lib/structures/Message.d.ts +21 -8
  56. package/dist/lib/structures/Message.js +64 -41
  57. package/dist/lib/structures/ModalSubmitInteraction.d.ts +5 -3
  58. package/dist/lib/structures/ModalSubmitInteraction.js +18 -17
  59. package/dist/lib/structures/Permission.d.ts +1 -1
  60. package/dist/lib/structures/Permission.js +6 -6
  61. package/dist/lib/structures/PrivateChannel.d.ts +4 -3
  62. package/dist/lib/structures/PrivateChannel.js +8 -5
  63. package/dist/lib/structures/Role.d.ts +3 -2
  64. package/dist/lib/structures/Role.js +16 -8
  65. package/dist/lib/structures/StageChannel.d.ts +2 -2
  66. package/dist/lib/structures/StageChannel.js +8 -5
  67. package/dist/lib/structures/StageInstance.d.ts +8 -5
  68. package/dist/lib/structures/StageInstance.js +23 -9
  69. package/dist/lib/structures/Team.d.ts +4 -3
  70. package/dist/lib/structures/Team.js +9 -6
  71. package/dist/lib/structures/TextableChannel.d.ts +8 -7
  72. package/dist/lib/structures/TextableChannel.js +15 -9
  73. package/dist/lib/structures/ThreadChannel.d.ts +10 -7
  74. package/dist/lib/structures/ThreadChannel.js +23 -12
  75. package/dist/lib/structures/VoiceChannel.d.ts +4 -3
  76. package/dist/lib/structures/VoiceChannel.js +7 -4
  77. package/dist/lib/structures/VoiceState.d.ts +5 -3
  78. package/dist/lib/structures/VoiceState.js +13 -13
  79. package/dist/lib/structures/Webhook.d.ts +7 -4
  80. package/dist/lib/structures/Webhook.js +22 -16
  81. package/dist/lib/types/application-commands.d.ts +3 -2
  82. package/dist/lib/types/channels.d.ts +1 -1
  83. package/dist/lib/types/client.d.ts +1 -1
  84. package/dist/lib/types/events.d.ts +22 -22
  85. package/dist/lib/types/gateway.d.ts +2 -2
  86. package/dist/lib/types/json.d.ts +46 -46
  87. package/dist/lib/types/scheduled-events.d.ts +2 -2
  88. package/dist/lib/util/InteractionOptionsWrapper.js +1 -1
  89. package/dist/lib/util/Routes.js +1 -1
  90. package/dist/lib/util/TypedCollection.js +3 -3
  91. package/dist/lib/util/Util.d.ts +1 -1
  92. package/dist/lib/util/Util.js +12 -2
  93. package/dist/package.json +1 -1
  94. package/package.json +1 -1
@@ -7,6 +7,7 @@ const Base_1 = __importDefault(require("./Base"));
7
7
  const Guild_1 = __importDefault(require("./Guild"));
8
8
  /** Represents a member of a guild. */
9
9
  class Member extends Base_1.default {
10
+ _guild;
10
11
  /** The member's avatar hash, if they have set a guild avatar. */
11
12
  avatar;
12
13
  /** When the member's [timeout](https://support.discord.com/hc/en-us/articles/4413305239191-Time-Out-FAQ) will expire, if active. */
@@ -15,8 +16,6 @@ class Member extends Base_1.default {
15
16
  deaf;
16
17
  /** Undocumented. */
17
18
  flags;
18
- /** The guild this member is for. */
19
- guild;
20
19
  /** The id of the guild this member is for. */
21
20
  guildID;
22
21
  /** Undocumented. */
@@ -46,13 +45,13 @@ class Member extends Base_1.default {
46
45
  id = (user = client.users.update(data.user)).id;
47
46
  }
48
47
  if (!user) {
49
- throw new Error(`Member received without a user${!id ? "or id." : `: ${id}`}`);
48
+ throw new Error(`Member received without a user${id === undefined ? " or id." : `: ${id}`}`);
50
49
  }
51
50
  super(user.id, client);
52
51
  this.avatar = null;
53
52
  this.communicationDisabledUntil = null;
54
53
  this.deaf = !!data.deaf;
55
- this.guild = client.guilds.get(guildID);
54
+ this._guild = client.guilds.get(guildID);
56
55
  this.guildID = guildID;
57
56
  this.joinedAt = null;
58
57
  this.mute = !!data.mute;
@@ -100,14 +99,6 @@ class Member extends Base_1.default {
100
99
  if (data.user !== undefined) {
101
100
  this.user = this.client.users.update(data.user);
102
101
  }
103
- if (this.guild && this.id === this.client.user.id) {
104
- if (this.guild["_clientMember"]) {
105
- this.guild["_clientMember"].update(data);
106
- }
107
- else {
108
- this.guild["_clientMember"] = this;
109
- }
110
- }
111
102
  }
112
103
  /** If the member associated with the user is a bot. */
113
104
  get bot() {
@@ -117,6 +108,15 @@ class Member extends Base_1.default {
117
108
  get discriminator() {
118
109
  return this.user.discriminator;
119
110
  }
111
+ /** The guild this member is for. This will throw an error if the guild is not cached. */
112
+ get guild() {
113
+ if (!this._guild) {
114
+ throw new Error(`${this.constructor.name}#guild is not present without having the GUILDS intent or fetching the guild.`);
115
+ }
116
+ else {
117
+ return this._guild;
118
+ }
119
+ }
120
120
  /** A string that will mention this member. */
121
121
  get mention() {
122
122
  return this.user.mention;
@@ -143,7 +143,7 @@ class Member extends Base_1.default {
143
143
  }
144
144
  /** The voice state of this member. */
145
145
  get voiceState() {
146
- return this.guild instanceof Guild_1.default ? this.guild.voiceStates.get(this.id) || null : null;
146
+ return this.guild instanceof Guild_1.default ? this.guild.voiceStates.get(this.id) ?? null : null;
147
147
  }
148
148
  /**
149
149
  * Add a role to this member.
@@ -200,16 +200,16 @@ class Member extends Base_1.default {
200
200
  return {
201
201
  ...super.toJSON(),
202
202
  avatar: this.avatar,
203
- communicationDisabledUntil: this.communicationDisabledUntil?.getTime() || null,
203
+ communicationDisabledUntil: this.communicationDisabledUntil?.getTime() ?? null,
204
204
  deaf: this.deaf,
205
205
  flags: this.flags,
206
- guild: this.guildID,
206
+ guildID: this.guildID,
207
207
  isPending: this.isPending,
208
- joinedAt: this.joinedAt?.getTime() || null,
208
+ joinedAt: this.joinedAt?.getTime() ?? null,
209
209
  mute: this.mute,
210
210
  nick: this.nick,
211
211
  pending: this.pending,
212
- premiumSince: this.premiumSince?.getTime() || null,
212
+ premiumSince: this.premiumSince?.getTime() ?? null,
213
213
  presence: this.presence,
214
214
  roles: this.roles,
215
215
  user: this.user.toJSON()
@@ -224,4 +224,4 @@ class Member extends Base_1.default {
224
224
  }
225
225
  }
226
226
  exports.default = Member;
227
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3N0cnVjdHVyZXMvTWVtYmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0RBQTBCO0FBRTFCLG9EQUE0QjtBQVM1QixzQ0FBc0M7QUFDdEMsTUFBcUIsTUFBTyxTQUFRLGNBQUk7SUFDcEMsaUVBQWlFO0lBQ2pFLE1BQU0sQ0FBZ0I7SUFDdEIsb0lBQW9JO0lBQ3BJLDBCQUEwQixDQUFjO0lBQ3hDLHlDQUF5QztJQUN6QyxJQUFJLENBQVU7SUFDZCxvQkFBb0I7SUFDcEIsS0FBSyxDQUFVO0lBQ2Ysb0NBQW9DO0lBQ3BDLEtBQUssQ0FBUTtJQUNiLDhDQUE4QztJQUM5QyxPQUFPLENBQVM7SUFDaEIsb0JBQW9CO0lBQ3BCLFNBQVMsQ0FBVztJQUNwQixzREFBc0Q7SUFDdEQsUUFBUSxDQUFjO0lBQ3RCLHNDQUFzQztJQUN0QyxJQUFJLENBQVU7SUFDZCxzQ0FBc0M7SUFDdEMsSUFBSSxDQUFnQjtJQUNwQixzS0FBc0s7SUFDdEssT0FBTyxDQUFVO0lBQ2pCLCtFQUErRTtJQUMvRSxZQUFZLENBQWM7SUFDMUIsbUNBQW1DO0lBQ25DLFFBQVEsQ0FBWTtJQUNwQixpQ0FBaUM7SUFDakMsS0FBSyxDQUFnQjtJQUNyQiw0Q0FBNEM7SUFDNUMsSUFBSSxDQUFPO0lBQ1gsWUFBWSxJQUFlLEVBQUUsTUFBYyxFQUFFLE9BQWU7UUFDeEQsSUFBSSxJQUFzQixFQUFFLEVBQXNCLENBQUM7UUFDbkQsSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUM1QixJQUFJLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFJLElBQW1DLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDekU7YUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDbEIsRUFBRSxHQUFHLENBQUMsSUFBSSxHQUFHLE1B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
227
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3N0cnVjdHVyZXMvTWVtYmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0RBQTBCO0FBRTFCLG9EQUE0QjtBQVM1QixzQ0FBc0M7QUFDdEMsTUFBcUIsTUFBTyxTQUFRLGNBQUk7SUFDNUIsTUFBTSxDQUFTO0lBQ3ZCLGlFQUFpRTtJQUNqRSxNQUFNLENBQWdCO0lBQ3RCLG9JQUFvSTtJQUNwSSwwQkFBMEIsQ0FBYztJQUN4Qyx5Q0FBeUM7SUFDekMsSUFBSSxDQUFVO0lBQ2Qsb0JBQW9CO0lBQ3BCLEtBQUssQ0FBVTtJQUNmLDhDQUE4QztJQUM5QyxPQUFPLENBQVM7SUFDaEIsb0JBQW9CO0lBQ3BCLFNBQVMsQ0FBVztJQUNwQixzREFBc0Q7SUFDdEQsUUFBUSxDQUFjO0lBQ3RCLHNDQUFzQztJQUN0QyxJQUFJLENBQVU7SUFDZCxzQ0FBc0M7SUFDdEMsSUFBSSxDQUFnQjtJQUNwQixzS0FBc0s7SUFDdEssT0FBTyxDQUFVO0lBQ2pCLCtFQUErRTtJQUMvRSxZQUFZLENBQWM7SUFDMUIsbUNBQW1DO0lBQ25DLFFBQVEsQ0FBWTtJQUNwQixpQ0FBaUM7SUFDakMsS0FBSyxDQUFnQjtJQUNyQiw0Q0FBNEM7SUFDNUMsSUFBSSxDQUFPO0lBQ1gsWUFBWSxJQUFlLEVBQUUsTUFBYyxFQUFFLE9BQWU7UUFDeEQsSUFBSSxJQUFzQixFQUFFLEVBQXNCLENBQUM7UUFDbkQsSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUM1QixJQUFJLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFJLElBQW9DLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDMUU7YUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDbEIsRUFBRSxHQUFHLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxLQUFL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
@@ -1,6 +1,7 @@
1
1
  import Base from "./Base";
2
2
  import Attachment from "./Attachment";
3
3
  import User from "./User";
4
+ import Guild from "./Guild";
4
5
  import type Member from "./Member";
5
6
  import PartialApplication from "./PartialApplication";
6
7
  import type ClientApplication from "./ClientApplication";
@@ -12,24 +13,33 @@ import type Client from "../Client";
12
13
  import TypedCollection from "../util/TypedCollection";
13
14
  import { MessageTypes } from "../Constants";
14
15
  import type { Uncached } from "../types/shared";
15
- import type { AnyTextChannel, ChannelMention, EditMessageOptions, Embed, GetReactionsOptions, MessageActivity, MessageInteraction, MessageReference, RawAttachment, RawMessage, StartThreadFromMessageOptions, StickerItem, MessageReaction, MessageActionRow, AnyThreadChannel } from "../types/channels";
16
+ import type { AnyGuildTextChannel, AnyTextChannel, ChannelMention, EditMessageOptions, Embed, GetReactionsOptions, MessageActivity, MessageInteraction, MessageReference, RawAttachment, RawMessage, StartThreadFromMessageOptions, StickerItem, MessageReaction, MessageActionRow, AnyThreadChannel } from "../types/channels";
16
17
  import type { DeleteWebhookMessageOptions, EditWebhookMessageOptions } from "../types/webhooks";
17
18
  import type { JSONMessage } from "../types/json";
18
19
  export default class Message<T extends AnyTextChannel | Uncached = AnyTextChannel | Uncached> extends Base {
20
+ private _guild?;
19
21
  /** The [activity](https://discord.com/developers/docs/resources/channel#message-object-message-activity-structure) associated with this message. */
20
22
  activity?: MessageActivity;
21
23
  /**
22
- * This can be present in two scenarios:
23
- * * If the message was from an interaction or application owned webhook (`ClientApplication` if client, only `id` otherwise).
24
+ * The application associated with this message. This can be present in two scenarios:
25
+ * * If the message was from an interaction or application owned webhook (`ClientApplication`).
24
26
  * * If the message has a rich presence embed (`PartialApplication`)
25
27
  */
26
- application?: PartialApplication | ClientApplication | Uncached;
28
+ application?: PartialApplication | ClientApplication | null;
29
+ /**
30
+ * The ID of the application associated with this message. This can be present in two scenarios:
31
+ * * If the message was from an interaction or application owned webhook (`ClientApplication`).
32
+ * * If the message has a rich presence embed (`PartialApplication`)
33
+ */
34
+ applicationID: string | null;
27
35
  /** The attachments on this message. */
28
36
  attachments: TypedCollection<string, RawAttachment, Attachment>;
29
37
  /** The author of this message. */
30
38
  author: User;
31
- /** The channel this message was created in. This can be a partial object with only an `id` property. */
32
- channel: T;
39
+ /** The channel this message was created in.*/
40
+ channel: T extends AnyTextChannel ? T : undefined;
41
+ /** The ID of the channel this message was created in.*/
42
+ channelID: string;
33
43
  /** The components on this message. */
34
44
  components: Array<MessageActionRow>;
35
45
  /** The content of this message. */
@@ -41,9 +51,10 @@ export default class Message<T extends AnyTextChannel | Uncached = AnyTextChanne
41
51
  /** The [flags](https://discord.com/developers/docs/resources/channel#message-object-message-flags) on this message. */
42
52
  flags: number;
43
53
  /** The ID of the guild this message is in. */
44
- guildID?: string;
54
+ guildID: T extends AnyGuildTextChannel ? string : string | null;
45
55
  /** The interaction info, if this message was the result of an interaction. */
46
56
  interaction?: MessageInteraction;
57
+ /** The member that created this message, if in a */
47
58
  member?: Member;
48
59
  /** Channels mentioned in a `CROSSPOSTED` channel follower message. See [Discord's docs](https://discord.com/developers/docs/resources/channel#channel-mention-object) for more information. */
49
60
  mentionChannels?: Array<ChannelMention>;
@@ -83,9 +94,11 @@ export default class Message<T extends AnyTextChannel | Uncached = AnyTextChanne
83
94
  /** The [type](https://discord.com/developers/docs/resources/channel#message-object-message-types) of this message. */
84
95
  type: MessageTypes;
85
96
  /** The webhook associated with this message, if sent via a webhook. This only has an `id` property. */
86
- webhook?: Uncached;
97
+ webhookID?: string;
87
98
  constructor(data: RawMessage, client: Client);
88
99
  protected update(data: Partial<RawMessage>): void;
100
+ /** The guild this message is in. This will throw an error if the guild is not cached. */
101
+ get guild(): T extends AnyGuildTextChannel ? Guild : Guild | null;
89
102
  /** A link to this message. */
90
103
  get jumpLink(): string;
91
104
  /**
@@ -29,28 +29,35 @@ Object.defineProperty(exports, "__esModule", { value: true });
29
29
  const Base_1 = __importDefault(require("./Base"));
30
30
  const Attachment_1 = __importDefault(require("./Attachment"));
31
31
  const User_1 = __importDefault(require("./User"));
32
- const GuildChannel_1 = __importDefault(require("./GuildChannel"));
33
- const Guild_1 = __importDefault(require("./Guild"));
34
32
  const PartialApplication_1 = __importDefault(require("./PartialApplication"));
35
33
  const Channel_1 = __importDefault(require("./Channel"));
36
34
  const TypedCollection_1 = __importDefault(require("../util/TypedCollection"));
37
35
  const Constants_1 = require("../Constants");
38
36
  const Routes = __importStar(require("../util/Routes"));
39
37
  class Message extends Base_1.default {
38
+ _guild;
40
39
  /** The [activity](https://discord.com/developers/docs/resources/channel#message-object-message-activity-structure) associated with this message. */
41
40
  activity;
42
41
  /**
43
- * This can be present in two scenarios:
44
- * * If the message was from an interaction or application owned webhook (`ClientApplication` if client, only `id` otherwise).
42
+ * The application associated with this message. This can be present in two scenarios:
43
+ * * If the message was from an interaction or application owned webhook (`ClientApplication`).
45
44
  * * If the message has a rich presence embed (`PartialApplication`)
46
45
  */
47
46
  application;
47
+ /**
48
+ * The ID of the application associated with this message. This can be present in two scenarios:
49
+ * * If the message was from an interaction or application owned webhook (`ClientApplication`).
50
+ * * If the message has a rich presence embed (`PartialApplication`)
51
+ */
52
+ applicationID;
48
53
  /** The attachments on this message. */
49
54
  attachments;
50
55
  /** The author of this message. */
51
56
  author;
52
- /** The channel this message was created in. This can be a partial object with only an `id` property. */
57
+ /** The channel this message was created in.*/
53
58
  channel;
59
+ /** The ID of the channel this message was created in.*/
60
+ channelID;
54
61
  /** The components on this message. */
55
62
  components;
56
63
  /** The content of this message. */
@@ -65,6 +72,7 @@ class Message extends Base_1.default {
65
72
  guildID;
66
73
  /** The interaction info, if this message was the result of an interaction. */
67
74
  interaction;
75
+ /** The member that created this message, if in a */
68
76
  member;
69
77
  /** Channels mentioned in a `CROSSPOSTED` channel follower message. See [Discord's docs](https://discord.com/developers/docs/resources/channel#channel-mention-object) for more information. */
70
78
  mentionChannels;
@@ -94,17 +102,19 @@ class Message extends Base_1.default {
94
102
  /** The [type](https://discord.com/developers/docs/resources/channel#message-object-message-types) of this message. */
95
103
  type;
96
104
  /** The webhook associated with this message, if sent via a webhook. This only has an `id` property. */
97
- webhook;
105
+ webhookID;
98
106
  constructor(data, client) {
99
107
  super(data.id, client);
100
108
  this.attachments = new TypedCollection_1.default(Attachment_1.default, client);
101
- this.channel = (client.getChannel(data.channel_id) || { id: data.channel_id });
109
+ this.channel = client.getChannel(data.channel_id);
110
+ this.channelID = data.channel_id;
102
111
  this.components = [];
103
112
  this.content = data.content;
104
113
  this.editedTimestamp = null;
105
114
  this.embeds = [];
106
115
  this.flags = 0;
107
- this.guildID = data.guild_id;
116
+ this._guild = (data.guild_id === undefined ? null : client.guilds.get(data.guild_id));
117
+ this.guildID = (data.guild_id === undefined ? null : data.guild_id);
108
118
  this.mentions = {
109
119
  channels: [],
110
120
  everyone: false,
@@ -117,7 +127,7 @@ class Message extends Base_1.default {
117
127
  this.timestamp = new Date(data.timestamp);
118
128
  this.tts = data.tts;
119
129
  this.type = data.type;
120
- this.webhook = data.webhook_id === undefined ? undefined : { id: data.webhook_id };
130
+ this.webhookID = data.webhook_id;
121
131
  this.update(data);
122
132
  if (data.author.discriminator !== "0000") {
123
133
  this.author = client.users.update(data.author);
@@ -127,9 +137,14 @@ class Message extends Base_1.default {
127
137
  }
128
138
  if (data.application !== undefined) {
129
139
  this.application = new PartialApplication_1.default(data.application, client);
140
+ this.applicationID = data.application.id;
130
141
  }
131
142
  else if (data.application_id !== undefined) {
132
- this.application = { id: data.application_id };
143
+ this.application = client.application.id === data.application_id ? client.application : undefined;
144
+ this.applicationID = data.application_id;
145
+ }
146
+ else {
147
+ this.applicationID = null;
133
148
  }
134
149
  if (data.attachments) {
135
150
  for (const attachment of data.attachments) {
@@ -137,7 +152,7 @@ class Message extends Base_1.default {
137
152
  }
138
153
  }
139
154
  if (data.member) {
140
- this.member = "guild" in this.channel && this.channel.guild instanceof Guild_1.default ? this.channel.guild.members.update({ ...data.member, user: data.author, id: data.author.id }, this.channel.guildID) : undefined;
155
+ this.member = this.client.util.updateMember(data.guild_id, data.author.id, { ...data.member, user: data.author });
141
156
  }
142
157
  }
143
158
  update(data) {
@@ -150,8 +165,8 @@ class Message extends Base_1.default {
150
165
  if (data.mentions !== undefined) {
151
166
  const members = [];
152
167
  this.mentions.users = data.mentions.map(user => {
153
- if (user.member && "guild" in this.channel && this.channel.guild instanceof Guild_1.default) {
154
- members.push(this.channel.guild.members.update({ ...user.member, user, id: user.id }, this.channel.guildID));
168
+ if (this.channel && "guildID" in this.channel && user.member) {
169
+ members.push(this.client.util.updateMember(this.channel.guildID, user.id, { ...user.member, user }));
155
170
  }
156
171
  return this.client.users.update(user);
157
172
  });
@@ -175,7 +190,7 @@ class Message extends Base_1.default {
175
190
  }
176
191
  if (data.content !== undefined) {
177
192
  this.content = data.content;
178
- this.mentions.channels = (data.content.match(/<#[\d]{17,21}>/g) || []).map(mention => mention.slice(2, -1));
193
+ this.mentions.channels = (data.content.match(/<#[\d]{17,21}>/g) ?? []).map(mention => mention.slice(2, -1));
179
194
  }
180
195
  if (data.edited_timestamp !== undefined) {
181
196
  this.editedTimestamp = data.edited_timestamp ? new Date(data.edited_timestamp) : null;
@@ -191,12 +206,12 @@ class Message extends Base_1.default {
191
206
  if (data.interaction.member) {
192
207
  member = {
193
208
  ...data.interaction.member,
194
- id: data.interaction.user.id
209
+ user: data.interaction.user
195
210
  };
196
211
  }
197
212
  this.interaction = {
198
213
  id: data.interaction.id,
199
- member: this.channel instanceof GuildChannel_1.default && this.channel.guild instanceof Guild_1.default && member ? this.channel.guild.members.update({ ...member, user: data.interaction.user, id: data.interaction.user.id }, this.channel.guildID) : undefined,
214
+ member: member ? this.client.util.updateMember(data.guild_id, member.user.id, member) : undefined,
200
215
  name: data.interaction.name,
201
216
  type: data.interaction.type,
202
217
  user: this.client.users.update(data.interaction.user)
@@ -233,7 +248,7 @@ class Message extends Base_1.default {
233
248
  this.referencedMessage = null;
234
249
  }
235
250
  else {
236
- if ("messages" in this.channel) {
251
+ if (this.channel && "messages" in this.channel) {
237
252
  this.referencedMessage = this.channel.messages.update(data.referenced_message);
238
253
  }
239
254
  else {
@@ -245,9 +260,8 @@ class Message extends Base_1.default {
245
260
  this.stickerItems = data.sticker_items;
246
261
  }
247
262
  if (data.thread !== undefined) {
248
- const guild = this.client.guilds.get(this.guildID);
249
- if (guild) {
250
- this.thread = guild.threads.update(data.thread);
263
+ if (this._guild) {
264
+ this.thread = this._guild.threads.update(data.thread);
251
265
  if (this.channel && "threads" in this.channel && !this.channel.threads.has(this.thread.id)) {
252
266
  this.channel.threads.add(this.thread);
253
267
  }
@@ -262,29 +276,38 @@ class Message extends Base_1.default {
262
276
  }
263
277
  }
264
278
  }
279
+ /** The guild this message is in. This will throw an error if the guild is not cached. */
280
+ get guild() {
281
+ if (this._guild === undefined) {
282
+ throw new Error(`${this.constructor.name}#guild is not present without having the GUILDS intent or fetching the guild.`);
283
+ }
284
+ else {
285
+ return this._guild;
286
+ }
287
+ }
265
288
  /** A link to this message. */
266
289
  get jumpLink() {
267
- return `${Constants_1.BASE_URL}${Routes.MESSAGE_LINK(this.guildID || "@me", this.channel.id, this.id)}`;
290
+ return `${Constants_1.BASE_URL}${Routes.MESSAGE_LINK(this.guildID ?? "@me", this.channelID, this.id)}`;
268
291
  }
269
292
  /**
270
293
  * Add a reaction to this message.
271
294
  * @param emoji The reaction to add to the message. `name:id` for custom emojis, and the unicode codepoint for default emojis.
272
295
  */
273
296
  async createReaction(emoji) {
274
- return this.client.rest.channels.createReaction(this.channel.id, this.id, emoji);
297
+ return this.client.rest.channels.createReaction(this.channelID, this.id, emoji);
275
298
  }
276
299
  /**
277
300
  * Crosspost this message in a announcement channel.
278
301
  */
279
302
  async crosspost() {
280
- return this.client.rest.channels.crosspostMessage(this.channel.id, this.id);
303
+ return this.client.rest.channels.crosspostMessage(this.channelID, this.id);
281
304
  }
282
305
  /**
283
306
  * Delete this message.
284
307
  * @param reason The reason for deleting the message.
285
308
  */
286
309
  async delete(reason) {
287
- return this.client.rest.channels.deleteMessage(this.channel.id, this.id, reason);
310
+ return this.client.rest.channels.deleteMessage(this.channelID, this.id, reason);
288
311
  }
289
312
  /**
290
313
  * Remove a reaction from this message.
@@ -292,14 +315,14 @@ class Message extends Base_1.default {
292
315
  * @param user The user to remove the reaction from, `@me` for the current user (default).
293
316
  */
294
317
  async deleteReaction(emoji, user = "@me") {
295
- return this.client.rest.channels.deleteReaction(this.channel.id, this.id, emoji, user);
318
+ return this.client.rest.channels.deleteReaction(this.channelID, this.id, emoji, user);
296
319
  }
297
320
  /**
298
321
  * Remove all, or a specific emoji's reactions from this message.
299
322
  * @param emoji The reaction to remove from the message. `name:id` for custom emojis, and the unicode codepoint for default emojis. Omit to remove all reactions.
300
323
  */
301
324
  async deleteReactions(emoji) {
302
- return this.client.rest.channels.deleteReactions(this.channel.id, this.id, emoji);
325
+ return this.client.rest.channels.deleteReactions(this.channelID, this.id, emoji);
303
326
  }
304
327
  /**
305
328
  * Delete this message as a webhook.
@@ -307,17 +330,17 @@ class Message extends Base_1.default {
307
330
  * @param options Options for deleting the message.
308
331
  */
309
332
  async deleteWebhook(token, options) {
310
- if (!this.webhook?.id) {
333
+ if (!this.webhookID) {
311
334
  throw new Error("This message is not a webhook message.");
312
335
  }
313
- return this.client.rest.webhooks.deleteMessage(this.webhook.id, token, this.id, options);
336
+ return this.client.rest.webhooks.deleteMessage(this.webhookID, token, this.id, options);
314
337
  }
315
338
  /**
316
339
  * Edit this message.
317
340
  * @param options The options for editing the message.
318
341
  */
319
342
  async edit(options) {
320
- return this.client.rest.channels.editMessage(this.channel.id, this.id, options);
343
+ return this.client.rest.channels.editMessage(this.channelID, this.id, options);
321
344
  }
322
345
  /**
323
346
  * Edit this message as a webhook.
@@ -325,10 +348,10 @@ class Message extends Base_1.default {
325
348
  * @param options The options for editing the message.
326
349
  */
327
350
  async editWebhook(token, options) {
328
- if (!this.webhook?.id) {
351
+ if (!this.webhookID) {
329
352
  throw new Error("This message is not a webhook message.");
330
353
  }
331
- return this.client.rest.webhooks.editMessage(this.webhook.id, token, this.id, options);
354
+ return this.client.rest.webhooks.editMessage(this.webhookID, token, this.id, options);
332
355
  }
333
356
  /**
334
357
  * Get the users who reacted with a specific emoji on this message.
@@ -336,36 +359,36 @@ class Message extends Base_1.default {
336
359
  * @param options The options for getting the reactions.
337
360
  */
338
361
  async getReactions(emoji, options) {
339
- return this.client.rest.channels.getReactions(this.channel.id, this.id, emoji, options);
362
+ return this.client.rest.channels.getReactions(this.channelID, this.id, emoji, options);
340
363
  }
341
364
  /**
342
365
  * Pin this message.
343
366
  * @param reason The reason for pinning the message.
344
367
  */
345
368
  async pin(reason) {
346
- return this.client.rest.channels.pinMessage(this.channel.id, this.id, reason);
369
+ return this.client.rest.channels.pinMessage(this.channelID, this.id, reason);
347
370
  }
348
371
  /**
349
372
  * Create a thread from this message.
350
373
  * @param options The options for creating the thread.
351
374
  */
352
375
  async startThread(options) {
353
- return this.client.rest.channels.startThreadFromMessage(this.channel.id, this.id, options);
376
+ return this.client.rest.channels.startThreadFromMessage(this.channelID, this.id, options);
354
377
  }
355
378
  toJSON() {
356
379
  return {
357
380
  ...super.toJSON(),
358
381
  activity: this.activity,
359
- application: this.application instanceof PartialApplication_1.default ? this.application.toJSON() : this.application?.id,
382
+ applicationID: this.applicationID ?? undefined,
360
383
  attachments: this.attachments.map(attachment => attachment.toJSON()),
361
384
  author: this.author.toJSON(),
362
- channel: this.channel.id,
385
+ channelID: this.channelID,
363
386
  components: this.components,
364
387
  content: this.content,
365
- editedTimestamp: this.editedTimestamp?.getTime() || null,
388
+ editedTimestamp: this.editedTimestamp?.getTime() ?? null,
366
389
  embeds: this.embeds,
367
390
  flags: this.flags,
368
- guild: this.guildID,
391
+ guildID: this.guildID ?? undefined,
369
392
  interaction: !this.interaction ? undefined : {
370
393
  id: this.interaction.id,
371
394
  member: this.interaction.member?.toJSON(),
@@ -392,7 +415,7 @@ class Message extends Base_1.default {
392
415
  timestamp: this.timestamp.getTime(),
393
416
  tts: this.tts,
394
417
  type: this.type,
395
- webhook: this.webhook?.id
418
+ webhook: this.webhookID
396
419
  };
397
420
  }
398
421
  /**
@@ -400,8 +423,8 @@ class Message extends Base_1.default {
400
423
  * @param reason The reason for unpinning the message.
401
424
  */
402
425
  async unpin(reason) {
403
- return this.client.rest.channels.unpinMessage(this.channel.id, this.id, reason);
426
+ return this.client.rest.channels.unpinMessage(this.channelID, this.id, reason);
404
427
  }
405
428
  }
406
429
  exports.default = Message;
407
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9zdHJ1Y3R1cmVzL01lc3NhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGtEQUEwQjtBQUMxQiw4REFBc0M7QUFDdEMsa0RBQTBCO0FBQzFCLGtFQUEwQztBQUMxQyxvREFBNEI7QUFFNUIsOEVBQXNEO0FBT3RELHdEQUFnQztBQUVoQyw4RUFBc0Q7QUFDdEQsNENBQXNEO0FBd0J0RCx1REFBeUM7QUFFekMsTUFBcUIsT0FBeUUsU0FBUSxjQUFJO0lBQ3RHLG9KQUFvSjtJQUNwSixRQUFRLENBQW1CO0lBQzNCOzs7O09BSUc7SUFDSCxXQUFXLENBQXFEO0lBQ2hFLHVDQUF1QztJQUN2QyxXQUFXLENBQXFEO0lBQ2hFLGtDQUFrQztJQUNsQyxNQUFNLENBQU87SUFDYix3R0FBd0c7SUFDeEcsT0FBTyxDQUFJO0lBQ1gsc0NBQXNDO0lBQ3RDLFVBQVUsQ0FBMEI7SUFDcEMsbUNBQW1DO0lBQ25DLE9BQU8sQ0FBUztJQUNoQiwyREFBMkQ7SUFDM0QsZUFBZSxDQUFjO0lBQzdCLGtDQUFrQztJQUNsQyxNQUFNLENBQWU7SUFDckIsdUhBQXVIO0lBQ3ZILEtBQUssQ0FBUztJQUNkLDhDQUE4QztJQUM5QyxPQUFPLENBQVU7SUFDakIsOEVBQThFO0lBQzlFLFdBQVcsQ0FBc0I7SUFDakMsTUFBTSxDQUFVO0lBQ2hCLCtMQUErTDtJQUMvTCxlQUFlLENBQXlCO0lBQ3hDLG9DQUFvQztJQUNwQyxRQUFRLENBV047SUFDRix3R0FBd0c7SUFDeEcsZ0JBQWdCLENBQW9CO0lBQ3BDLCtDQUErQztJQUMvQyxLQUFLLENBQW1CO0lBQ3hCLGlDQUFpQztJQUNqQyxNQUFNLENBQVU7SUFDaEIsd0RBQXdEO0lBQ3hELFFBQVEsQ0FBVTtJQUNsQixxQ0FBcUM7SUFDckMsU0FBUyxDQUFrQztJQUMzQyw0R0FBNEc7SUFDNUcs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
430
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9zdHJ1Y3R1cmVzL01lc3NhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGtEQUEwQjtBQUMxQiw4REFBc0M7QUFDdEMsa0RBQTBCO0FBRzFCLDhFQUFzRDtBQU90RCx3REFBZ0M7QUFFaEMsOEVBQXNEO0FBQ3RELDRDQUFzRDtBQXdCdEQsdURBQXlDO0FBRXpDLE1BQXFCLE9BQXlFLFNBQVEsY0FBSTtJQUM5RixNQUFNLENBQXdEO0lBQ3RFLG9KQUFvSjtJQUNwSixRQUFRLENBQW1CO0lBQzNCOzs7O09BSUc7SUFDSCxXQUFXLENBQWlEO0lBQzVEOzs7O09BSUc7SUFDSCxhQUFhLENBQWdCO0lBQzdCLHVDQUF1QztJQUN2QyxXQUFXLENBQXFEO0lBQ2hFLGtDQUFrQztJQUNsQyxNQUFNLENBQU87SUFDYiw4Q0FBOEM7SUFDOUMsT0FBTyxDQUEyQztJQUNsRCx3REFBd0Q7SUFDeEQsU0FBUyxDQUFTO0lBQ2xCLHNDQUFzQztJQUN0QyxVQUFVLENBQTBCO0lBQ3BDLG1DQUFtQztJQUNuQyxPQUFPLENBQVM7SUFDaEIsMkRBQTJEO0lBQzNELGVBQWUsQ0FBYztJQUM3QixrQ0FBa0M7SUFDbEMsTUFBTSxDQUFlO0lBQ3JCLHVIQUF1SDtJQUN2SCxLQUFLLENBQVM7SUFDZCw4Q0FBOEM7SUFDOUMsT0FBTyxDQUF5RDtJQUNoRSw4RUFBOEU7SUFDOUUsV0FBVyxDQUFzQjtJQUNqQyxvREFBb0Q7SUFDcEQsTUFBTSxDQUFVO0lBQ2hCLCtMQUErTDtJQUMvTCxlQUFlLENBQXlCO0lBQ3hDLG9DQUFvQztJQUNwQyxRQUFRLENBV047SUFDRix3R0FBd0c7SUFDeEcsZ0JBQWdCLENBQW9CO0lBQ3BDLCtDQUErQztJQUMvQyxLQUFLLENBQW1CO0lBQ3hCLGlDQUFpQztJQUNqQyxNQUFNLENBQVU7SUFDaEIsd0RBQXdE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
@@ -13,13 +13,15 @@ export default class ModalSubmitInteraction extends Interaction {
13
13
  /** The permissions the bot has in the channel this interaction was sent from. */
14
14
  appPermissions?: Permission;
15
15
  /** The channel this interaction was sent from. */
16
- channel: AnyTextChannel;
16
+ channel?: AnyTextChannel;
17
+ /** The ID of the channel this interaction was sent from. */
18
+ channelID: string;
17
19
  /** The data associated with the interaction. */
18
20
  data: ModalSubmitInteractionData;
19
21
  /** The guild this interaction was sent from, if applicable. */
20
- guild?: Guild;
22
+ guild?: Guild | null;
21
23
  /** The id of the guild this interaction was sent from, if applicable. */
22
- guildID?: string;
24
+ guildID: string | null;
23
25
  /** The preferred [locale](https://discord.com/developers/docs/reference#locales) of the guild this interaction was sent from, if applicable. */
24
26
  guildLocale?: string;
25
27
  /** The [locale](https://discord.com/developers/docs/reference#locales) of the invoking user. */