disgroove 2.2.6-dev.fd02f21 → 2.2.7-dev.045389f
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/Client.d.ts +14 -52
- package/dist/lib/Client.js +42 -59
- package/dist/lib/constants.d.ts +28 -22
- package/dist/lib/constants.js +29 -23
- package/dist/lib/gateway/Shard.js +14 -0
- package/dist/lib/rest/RequestManager.d.ts +1 -3
- package/dist/lib/transformers/Components.d.ts +13 -3
- package/dist/lib/transformers/Components.js +199 -126
- package/dist/lib/transformers/Interactions.js +32 -38
- package/dist/lib/transformers/Messages.d.ts +4 -3
- package/dist/lib/transformers/Messages.js +48 -34
- package/dist/lib/types/gateway-events.d.ts +20 -0
- package/dist/lib/types/interaction.d.ts +6 -12
- package/dist/lib/types/invite.d.ts +2 -2
- package/dist/lib/types/message-components.d.ts +219 -122
- package/dist/lib/types/message.d.ts +3 -5
- package/dist/package.json +6 -6
- package/package.json +6 -6
|
@@ -375,6 +375,17 @@ export interface RawMessagePollVoteRemoveFields {
|
|
|
375
375
|
guild_id?: snowflake;
|
|
376
376
|
answer_id: number;
|
|
377
377
|
}
|
|
378
|
+
/** https://discord.com/developers/docs/events/gateway-events#rate-limited-rate-limited-fields */
|
|
379
|
+
export interface RawRateLimitedFields {
|
|
380
|
+
opcode: GatewayOPCodes;
|
|
381
|
+
retry_after: number;
|
|
382
|
+
meta: RawRequestGuildMembersRateLimitMetadata;
|
|
383
|
+
}
|
|
384
|
+
/** https://discord.com/developers/docs/events/gateway-events#rate-limited-rate-limit-metadata-for-opcode-structure */
|
|
385
|
+
export interface RawRequestGuildMembersRateLimitMetadata {
|
|
386
|
+
guild_id: snowflake;
|
|
387
|
+
nonce?: string;
|
|
388
|
+
}
|
|
378
389
|
export interface Payload {
|
|
379
390
|
op: GatewayOPCodes;
|
|
380
391
|
d: any | null;
|
|
@@ -691,3 +702,12 @@ export interface MessagePollVoteRemoveFields {
|
|
|
691
702
|
guildID?: snowflake;
|
|
692
703
|
answerID: number;
|
|
693
704
|
}
|
|
705
|
+
export interface RateLimitedFields {
|
|
706
|
+
opcode: GatewayOPCodes;
|
|
707
|
+
retryAfter: number;
|
|
708
|
+
meta: RequestGuildMembersRateLimitMetadata;
|
|
709
|
+
}
|
|
710
|
+
export interface RequestGuildMembersRateLimitMetadata {
|
|
711
|
+
guildID: snowflake;
|
|
712
|
+
nonce?: string;
|
|
713
|
+
}
|
|
@@ -5,8 +5,8 @@ import type { RawChannel, Channel } from "./channel";
|
|
|
5
5
|
import type { snowflake } from "./common";
|
|
6
6
|
import type { RawEntitlement, Entitlement } from "./entitlements";
|
|
7
7
|
import type { RawGuildMember, GuildMember, Guild, RawGuild } from "./guild";
|
|
8
|
-
import type { RawMessage, RawAttachment, RawEmbed, RawAllowedMentions, Message, Attachment, Embed, AllowedMentions
|
|
9
|
-
import type { RawTextInput, TextInput } from "./message-components";
|
|
8
|
+
import type { RawMessage, RawAttachment, RawEmbed, RawAllowedMentions, Message, Attachment, Embed, AllowedMentions } from "./message";
|
|
9
|
+
import type { ActionRow, Button, ChannelSelect, Container, File, Label, MediaGallery, MentionableSelect, RawActionRow, RawButton, RawChannelSelect, RawContainer, RawFile, RawLabel, RawMediaGallery, RawMentionableSelect, RawRoleSelect, RawSection, RawSeparator, RawStringSelect, RawTextDisplay, RawTextInput, RawThumbnail, RawUserSelect, RoleSelect, Section, Separator, StringSelect, TextDisplay, TextInput, Thumbnail, UserSelect } from "./message-components";
|
|
10
10
|
import type { RawPollCreateParams, PollCreateParams } from "./poll";
|
|
11
11
|
import type { RawRole, Role } from "./role";
|
|
12
12
|
import type { RawUser, User } from "./user";
|
|
@@ -54,10 +54,7 @@ export interface RawMessageComponentData {
|
|
|
54
54
|
/** https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-modal-submit-data-structure */
|
|
55
55
|
export interface RawModalSubmitData {
|
|
56
56
|
custom_id: string;
|
|
57
|
-
components: Array<
|
|
58
|
-
type: ComponentTypes.ActionRow;
|
|
59
|
-
components: Array<RawTextInput>;
|
|
60
|
-
}>;
|
|
57
|
+
components: Array<RawStringSelect | RawTextInput | RawLabel>;
|
|
61
58
|
}
|
|
62
59
|
/** https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-resolved-data-structure */
|
|
63
60
|
export interface RawResolvedData {
|
|
@@ -96,7 +93,7 @@ export interface RawInteractionCallbackData {
|
|
|
96
93
|
embeds?: Array<RawEmbed>;
|
|
97
94
|
allowed_mentions?: RawAllowedMentions;
|
|
98
95
|
flags?: MessageFlags;
|
|
99
|
-
components?: Array<
|
|
96
|
+
components?: Array<RawActionRow | RawButton | RawStringSelect | RawTextInput | RawUserSelect | RawRoleSelect | RawMentionableSelect | RawChannelSelect | RawSection | RawTextDisplay | RawThumbnail | RawMediaGallery | RawFile | RawSeparator | RawContainer | RawLabel>;
|
|
100
97
|
attachments?: Array<Pick<RawAttachment, "filename" | "description">>;
|
|
101
98
|
poll?: RawPollCreateParams;
|
|
102
99
|
files?: Array<FileData>;
|
|
@@ -168,10 +165,7 @@ export interface MessageComponentData {
|
|
|
168
165
|
}
|
|
169
166
|
export interface ModalSubmitData {
|
|
170
167
|
customID: string;
|
|
171
|
-
components: Array<
|
|
172
|
-
type: ComponentTypes.ActionRow;
|
|
173
|
-
components: Array<TextInput>;
|
|
174
|
-
}>;
|
|
168
|
+
components: Array<StringSelect | TextInput | Label>;
|
|
175
169
|
}
|
|
176
170
|
export interface ResolvedData {
|
|
177
171
|
users?: Record<snowflake, User>;
|
|
@@ -205,7 +199,7 @@ export interface InteractionCallbackData {
|
|
|
205
199
|
embeds?: Array<Embed>;
|
|
206
200
|
allowedMentions?: AllowedMentions;
|
|
207
201
|
flags?: MessageFlags;
|
|
208
|
-
components?: Array<
|
|
202
|
+
components?: Array<ActionRow | Button | StringSelect | TextInput | UserSelect | RoleSelect | MentionableSelect | ChannelSelect | Section | TextDisplay | Thumbnail | MediaGallery | File | Separator | Container | Label>;
|
|
209
203
|
attachments?: Array<Pick<Attachment, "filename" | "description">>;
|
|
210
204
|
poll?: PollCreateParams;
|
|
211
205
|
files?: Array<FileData>;
|
|
@@ -17,7 +17,7 @@ export interface RawInvite {
|
|
|
17
17
|
target_application?: RawApplication;
|
|
18
18
|
approximate_presence_count?: number;
|
|
19
19
|
approximate_member_count?: number;
|
|
20
|
-
expires_at
|
|
20
|
+
expires_at: timestamp | null;
|
|
21
21
|
stage_instance?: RawInviteStageInstance;
|
|
22
22
|
guild_scheduled_event?: RawGuildScheduledEvent;
|
|
23
23
|
flags?: GuildInviteFlags;
|
|
@@ -48,7 +48,7 @@ export interface Invite {
|
|
|
48
48
|
targetApplication?: Application;
|
|
49
49
|
approximatePresenceCount?: number;
|
|
50
50
|
approximateMemberCount?: number;
|
|
51
|
-
expiresAt
|
|
51
|
+
expiresAt: timestamp | null;
|
|
52
52
|
stageInstance?: InviteStageInstance;
|
|
53
53
|
guildScheduledEvent?: GuildScheduledEvent;
|
|
54
54
|
flags?: GuildInviteFlags;
|
|
@@ -1,81 +1,112 @@
|
|
|
1
1
|
import type { ButtonStyles, ChannelTypes, ComponentTypes, SeparatorSpacing, TextInputStyles } from "../constants";
|
|
2
2
|
import type { snowflake } from "./common";
|
|
3
3
|
import type { RawEmoji, Emoji } from "./emoji";
|
|
4
|
+
/** https://discord.com/developers/docs/components/reference#action-row-action-row-structure */
|
|
5
|
+
export interface RawActionRow {
|
|
6
|
+
type: ComponentTypes.ActionRow;
|
|
7
|
+
components: Array<RawButton | RawStringSelect | RawUserSelect | RawRoleSelect | RawMentionableSelect | RawChannelSelect>;
|
|
8
|
+
id?: number;
|
|
9
|
+
}
|
|
4
10
|
/** https://discord.com/developers/docs/components/reference#button-button-structure */
|
|
5
11
|
export interface RawButton {
|
|
6
12
|
type: ComponentTypes.Button;
|
|
13
|
+
id?: number;
|
|
7
14
|
style: ButtonStyles;
|
|
8
15
|
label?: string;
|
|
9
16
|
emoji?: Pick<RawEmoji, "name" | "id" | "animated">;
|
|
10
|
-
custom_id
|
|
17
|
+
custom_id: string;
|
|
11
18
|
sku_id?: snowflake;
|
|
12
19
|
url?: string;
|
|
13
20
|
disabled?: boolean;
|
|
14
|
-
id?: number;
|
|
15
21
|
}
|
|
16
|
-
/** https://discord.com/developers/docs/components/reference#
|
|
17
|
-
export interface
|
|
18
|
-
type: ComponentTypes.
|
|
22
|
+
/** https://discord.com/developers/docs/components/reference#string-select-string-select-structure */
|
|
23
|
+
export interface RawStringSelect {
|
|
24
|
+
type: ComponentTypes.StringSelect;
|
|
19
25
|
id?: number;
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
26
|
+
custom_id: string;
|
|
27
|
+
options: Array<RawSelectOption>;
|
|
28
|
+
placeholder?: string;
|
|
29
|
+
min_values?: number;
|
|
30
|
+
max_values?: number;
|
|
31
|
+
required?: boolean;
|
|
32
|
+
disabled?: boolean;
|
|
23
33
|
}
|
|
24
|
-
/** https://discord.com/developers/docs/components/reference#
|
|
25
|
-
export interface
|
|
26
|
-
|
|
34
|
+
/** https://discord.com/developers/docs/components/reference#string-select-select-option-structure */
|
|
35
|
+
export interface RawSelectOption {
|
|
36
|
+
label: string;
|
|
37
|
+
value: string;
|
|
38
|
+
description?: string;
|
|
39
|
+
emoji?: Pick<RawEmoji, "name" | "id" | "animated">;
|
|
40
|
+
default?: boolean;
|
|
41
|
+
}
|
|
42
|
+
/** https://discord.com/developers/docs/components/reference#text-input-text-input-structure */
|
|
43
|
+
export interface RawTextInput {
|
|
44
|
+
type: ComponentTypes.TextInput;
|
|
27
45
|
id?: number;
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
46
|
+
custom_id: string;
|
|
47
|
+
style: TextInputStyles;
|
|
48
|
+
min_length?: number;
|
|
49
|
+
max_length?: number;
|
|
50
|
+
required?: boolean;
|
|
51
|
+
value?: string;
|
|
52
|
+
placeholder?: string;
|
|
32
53
|
}
|
|
33
|
-
/** https://discord.com/developers/docs/components/reference#
|
|
34
|
-
export interface
|
|
35
|
-
type: ComponentTypes.
|
|
54
|
+
/** https://discord.com/developers/docs/components/reference#user-select-user-select-structure */
|
|
55
|
+
export interface RawUserSelect {
|
|
56
|
+
type: ComponentTypes.UserSelect;
|
|
36
57
|
id?: number;
|
|
37
|
-
|
|
58
|
+
custom_id: string;
|
|
59
|
+
placeholder?: string;
|
|
60
|
+
default_values?: Array<RawDefaultValue>;
|
|
61
|
+
min_values?: number;
|
|
62
|
+
max_values?: number;
|
|
63
|
+
disabled?: boolean;
|
|
38
64
|
}
|
|
39
|
-
/** https://discord.com/developers/docs/components/reference#
|
|
40
|
-
export interface
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
spoiler?: boolean;
|
|
65
|
+
/** https://discord.com/developers/docs/components/reference#user-select-select-default-value-structure */
|
|
66
|
+
export interface RawDefaultValue {
|
|
67
|
+
id: snowflake;
|
|
68
|
+
type: "user" | "role" | "channel";
|
|
44
69
|
}
|
|
45
|
-
/** https://discord.com/developers/docs/components/reference#
|
|
46
|
-
export interface
|
|
47
|
-
type: ComponentTypes.
|
|
70
|
+
/** https://discord.com/developers/docs/components/reference#role-select-role-select-structure */
|
|
71
|
+
export interface RawRoleSelect {
|
|
72
|
+
type: ComponentTypes.RoleSelect;
|
|
48
73
|
id?: number;
|
|
49
|
-
components: Array<RawTextDisplay>;
|
|
50
|
-
accessory: RawThumbnail | RawButton;
|
|
51
|
-
}
|
|
52
|
-
/** https://discord.com/developers/docs/interactions/message-components#select-menu-object-select-menu-structure */
|
|
53
|
-
export interface RawSelectMenu {
|
|
54
|
-
type: ComponentTypes.ChannelSelect | ComponentTypes.MentionableSelect | ComponentTypes.RoleSelect | ComponentTypes.StringSelect | ComponentTypes.UserSelect;
|
|
55
74
|
custom_id: string;
|
|
56
|
-
options?: Array<RawSelectOption>;
|
|
57
|
-
channel_types?: Array<ChannelTypes>;
|
|
58
75
|
placeholder?: string;
|
|
59
76
|
default_values?: Array<RawDefaultValue>;
|
|
60
77
|
min_values?: number;
|
|
61
78
|
max_values?: number;
|
|
62
79
|
disabled?: boolean;
|
|
80
|
+
}
|
|
81
|
+
/** https://discord.com/developers/docs/components/reference#mentionable-select-mentionable-select-structure */
|
|
82
|
+
export interface RawMentionableSelect {
|
|
83
|
+
type: ComponentTypes.MentionableSelect;
|
|
63
84
|
id?: number;
|
|
85
|
+
custom_id: string;
|
|
86
|
+
placeholder?: string;
|
|
87
|
+
default_values?: Array<RawDefaultValue>;
|
|
88
|
+
min_values?: number;
|
|
89
|
+
max_values?: number;
|
|
90
|
+
disabled?: boolean;
|
|
64
91
|
}
|
|
65
|
-
/** https://discord.com/developers/docs/components/reference#
|
|
66
|
-
export interface
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
92
|
+
/** https://discord.com/developers/docs/components/reference#channel-select-channel-select-structure */
|
|
93
|
+
export interface RawChannelSelect {
|
|
94
|
+
type: ComponentTypes.ChannelSelect;
|
|
95
|
+
id?: number;
|
|
96
|
+
custom_id: string;
|
|
97
|
+
channel_types?: Array<ChannelTypes>;
|
|
98
|
+
placeholder?: string;
|
|
99
|
+
default_values?: Array<RawDefaultValue>;
|
|
100
|
+
min_values?: number;
|
|
101
|
+
max_values?: number;
|
|
102
|
+
disabled?: boolean;
|
|
72
103
|
}
|
|
73
|
-
/** https://discord.com/developers/docs/components/reference#
|
|
74
|
-
export interface
|
|
75
|
-
type: ComponentTypes.
|
|
104
|
+
/** https://discord.com/developers/docs/components/reference#section-section-structure */
|
|
105
|
+
export interface RawSection {
|
|
106
|
+
type: ComponentTypes.Section;
|
|
76
107
|
id?: number;
|
|
77
|
-
|
|
78
|
-
|
|
108
|
+
components: Array<RawTextDisplay>;
|
|
109
|
+
accessory: RawButton | RawThumbnail;
|
|
79
110
|
}
|
|
80
111
|
/** https://discord.com/developers/docs/components/reference#text-display-text-display-structure */
|
|
81
112
|
export interface RawTextDisplay {
|
|
@@ -91,31 +122,51 @@ export interface RawThumbnail {
|
|
|
91
122
|
description?: string;
|
|
92
123
|
spoiler?: boolean;
|
|
93
124
|
}
|
|
94
|
-
/** https://discord.com/developers/docs/components/reference#
|
|
95
|
-
export interface
|
|
96
|
-
|
|
97
|
-
|
|
125
|
+
/** https://discord.com/developers/docs/components/reference#media-gallery-media-gallery-structure */
|
|
126
|
+
export interface RawMediaGallery {
|
|
127
|
+
type: ComponentTypes.MediaGallery;
|
|
128
|
+
id?: number;
|
|
129
|
+
items: Array<RawMediaGalleryItem>;
|
|
98
130
|
}
|
|
99
|
-
/** https://discord.com/developers/docs/components/reference#
|
|
100
|
-
export interface
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
value?: string;
|
|
109
|
-
placeholder?: string;
|
|
131
|
+
/** https://discord.com/developers/docs/components/reference#media-gallery-media-gallery-item-structure */
|
|
132
|
+
export interface RawMediaGalleryItem {
|
|
133
|
+
media: RawUnfurledMediaItem;
|
|
134
|
+
description?: string;
|
|
135
|
+
spoiler?: boolean;
|
|
136
|
+
}
|
|
137
|
+
/** https://discord.com/developers/docs/components/reference#file-file-structure */
|
|
138
|
+
export interface RawFile {
|
|
139
|
+
type: ComponentTypes.File;
|
|
110
140
|
id?: number;
|
|
141
|
+
file: RawUnfurledMediaItem;
|
|
142
|
+
spoiler?: boolean;
|
|
143
|
+
name: string;
|
|
144
|
+
size: number;
|
|
111
145
|
}
|
|
112
|
-
/** https://discord.com/developers/docs/components/reference#
|
|
113
|
-
export interface
|
|
114
|
-
type: ComponentTypes.
|
|
115
|
-
|
|
146
|
+
/** https://discord.com/developers/docs/components/reference#separator-separator-structure */
|
|
147
|
+
export interface RawSeparator {
|
|
148
|
+
type: ComponentTypes.Separator;
|
|
149
|
+
id?: number;
|
|
150
|
+
divider?: boolean;
|
|
151
|
+
spacing?: SeparatorSpacing;
|
|
152
|
+
}
|
|
153
|
+
/** https://discord.com/developers/docs/components/reference#container-container-structure */
|
|
154
|
+
export interface RawContainer {
|
|
155
|
+
type: ComponentTypes.Container;
|
|
116
156
|
id?: number;
|
|
157
|
+
components: Array<RawActionRow | RawTextDisplay | RawSection | RawMediaGallery | RawSeparator | RawFile>;
|
|
158
|
+
accent_color?: number | null;
|
|
159
|
+
spoiler?: boolean;
|
|
160
|
+
}
|
|
161
|
+
/** https://discord.com/developers/docs/components/reference#label-label-structure */
|
|
162
|
+
export interface RawLabel {
|
|
163
|
+
type: ComponentTypes.Label;
|
|
164
|
+
id?: number;
|
|
165
|
+
label: string;
|
|
166
|
+
description?: string;
|
|
167
|
+
component: RawTextInput | RawStringSelect;
|
|
117
168
|
}
|
|
118
|
-
/** https://discord.com/developers/docs/components/reference#unfurled-media-item-structure */
|
|
169
|
+
/** https://discord.com/developers/docs/components/reference#unfurled-media-item-unfurled-media-item-structure */
|
|
119
170
|
export interface RawUnfurledMediaItem {
|
|
120
171
|
url: string;
|
|
121
172
|
proxy_url?: string;
|
|
@@ -124,72 +175,101 @@ export interface RawUnfurledMediaItem {
|
|
|
124
175
|
content_type?: string;
|
|
125
176
|
attachment_id?: snowflake;
|
|
126
177
|
}
|
|
178
|
+
export interface ActionRow {
|
|
179
|
+
type: ComponentTypes.ActionRow;
|
|
180
|
+
components: Array<Button | StringSelect | UserSelect | RoleSelect | MentionableSelect | ChannelSelect>;
|
|
181
|
+
id?: number;
|
|
182
|
+
}
|
|
127
183
|
export interface Button {
|
|
128
184
|
type: ComponentTypes.Button;
|
|
185
|
+
id?: number;
|
|
129
186
|
style: ButtonStyles;
|
|
130
187
|
label?: string;
|
|
131
188
|
emoji?: Pick<Emoji, "name" | "id" | "animated">;
|
|
132
|
-
customID
|
|
189
|
+
customID: string;
|
|
133
190
|
skuID?: snowflake;
|
|
134
191
|
url?: string;
|
|
135
192
|
disabled?: boolean;
|
|
136
|
-
id?: number;
|
|
137
193
|
}
|
|
138
|
-
export interface
|
|
139
|
-
type: ComponentTypes.
|
|
194
|
+
export interface StringSelect {
|
|
195
|
+
type: ComponentTypes.StringSelect;
|
|
140
196
|
id?: number;
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
197
|
+
customID: string;
|
|
198
|
+
options: Array<SelectOption>;
|
|
199
|
+
placeholder?: string;
|
|
200
|
+
minValues?: number;
|
|
201
|
+
maxValues?: number;
|
|
202
|
+
required?: boolean;
|
|
203
|
+
disabled?: boolean;
|
|
144
204
|
}
|
|
145
|
-
export interface
|
|
146
|
-
|
|
205
|
+
export interface SelectOption {
|
|
206
|
+
label: string;
|
|
207
|
+
value: string;
|
|
208
|
+
description?: string;
|
|
209
|
+
emoji?: Pick<Emoji, "name" | "id" | "animated">;
|
|
210
|
+
default?: boolean;
|
|
211
|
+
}
|
|
212
|
+
export interface TextInput {
|
|
213
|
+
type: ComponentTypes.TextInput;
|
|
147
214
|
id?: number;
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
215
|
+
customID: string;
|
|
216
|
+
style: TextInputStyles;
|
|
217
|
+
minLength?: number;
|
|
218
|
+
maxLength?: number;
|
|
219
|
+
required?: boolean;
|
|
220
|
+
value?: string;
|
|
221
|
+
placeholder?: string;
|
|
152
222
|
}
|
|
153
|
-
export interface
|
|
154
|
-
type: ComponentTypes.
|
|
223
|
+
export interface UserSelect {
|
|
224
|
+
type: ComponentTypes.UserSelect;
|
|
155
225
|
id?: number;
|
|
156
|
-
|
|
226
|
+
customID: string;
|
|
227
|
+
placeholder?: string;
|
|
228
|
+
defaultValues?: Array<DefaultValue>;
|
|
229
|
+
minValues?: number;
|
|
230
|
+
maxValues?: number;
|
|
231
|
+
disabled?: boolean;
|
|
157
232
|
}
|
|
158
|
-
export interface
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
spoiler?: boolean;
|
|
233
|
+
export interface DefaultValue {
|
|
234
|
+
id: snowflake;
|
|
235
|
+
type: "user" | "role" | "channel";
|
|
162
236
|
}
|
|
163
|
-
export interface
|
|
164
|
-
type: ComponentTypes.
|
|
237
|
+
export interface RoleSelect {
|
|
238
|
+
type: ComponentTypes.RoleSelect;
|
|
165
239
|
id?: number;
|
|
166
|
-
components: Array<TextDisplay>;
|
|
167
|
-
accessory: Thumbnail | Button;
|
|
168
|
-
}
|
|
169
|
-
export interface SelectMenu {
|
|
170
|
-
type: ComponentTypes.ChannelSelect | ComponentTypes.MentionableSelect | ComponentTypes.RoleSelect | ComponentTypes.StringSelect | ComponentTypes.UserSelect;
|
|
171
240
|
customID: string;
|
|
172
|
-
options?: Array<SelectOption>;
|
|
173
|
-
channelTypes?: Array<ChannelTypes>;
|
|
174
241
|
placeholder?: string;
|
|
175
242
|
defaultValues?: Array<DefaultValue>;
|
|
176
243
|
minValues?: number;
|
|
177
244
|
maxValues?: number;
|
|
178
245
|
disabled?: boolean;
|
|
246
|
+
}
|
|
247
|
+
export interface MentionableSelect {
|
|
248
|
+
type: ComponentTypes.MentionableSelect;
|
|
179
249
|
id?: number;
|
|
250
|
+
customID: string;
|
|
251
|
+
placeholder?: string;
|
|
252
|
+
defaultValues?: Array<DefaultValue>;
|
|
253
|
+
minValues?: number;
|
|
254
|
+
maxValues?: number;
|
|
255
|
+
disabled?: boolean;
|
|
180
256
|
}
|
|
181
|
-
export interface
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
257
|
+
export interface ChannelSelect {
|
|
258
|
+
type: ComponentTypes.ChannelSelect;
|
|
259
|
+
id?: number;
|
|
260
|
+
customID: string;
|
|
261
|
+
channelTypes?: Array<ChannelTypes>;
|
|
262
|
+
placeholder?: string;
|
|
263
|
+
defaultValues?: Array<DefaultValue>;
|
|
264
|
+
minValues?: number;
|
|
265
|
+
maxValues?: number;
|
|
266
|
+
disabled?: boolean;
|
|
187
267
|
}
|
|
188
|
-
export interface
|
|
189
|
-
type: ComponentTypes.
|
|
268
|
+
export interface Section {
|
|
269
|
+
type: ComponentTypes.Section;
|
|
190
270
|
id?: number;
|
|
191
|
-
|
|
192
|
-
|
|
271
|
+
components: Array<TextDisplay>;
|
|
272
|
+
accessory: Button | Thumbnail;
|
|
193
273
|
}
|
|
194
274
|
export interface TextDisplay {
|
|
195
275
|
type: ComponentTypes.TextDisplay;
|
|
@@ -203,26 +283,43 @@ export interface Thumbnail {
|
|
|
203
283
|
description?: string;
|
|
204
284
|
spoiler?: boolean;
|
|
205
285
|
}
|
|
206
|
-
export interface
|
|
207
|
-
|
|
208
|
-
|
|
286
|
+
export interface MediaGallery {
|
|
287
|
+
type: ComponentTypes.MediaGallery;
|
|
288
|
+
id?: number;
|
|
289
|
+
items: Array<MediaGalleryItem>;
|
|
209
290
|
}
|
|
210
|
-
export interface
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
required?: boolean;
|
|
218
|
-
value?: string;
|
|
219
|
-
placeholder?: string;
|
|
291
|
+
export interface MediaGalleryItem {
|
|
292
|
+
media: UnfurledMediaItem;
|
|
293
|
+
description?: string;
|
|
294
|
+
spoiler?: boolean;
|
|
295
|
+
}
|
|
296
|
+
export interface File {
|
|
297
|
+
type: ComponentTypes.File;
|
|
220
298
|
id?: number;
|
|
299
|
+
file: UnfurledMediaItem;
|
|
300
|
+
spoiler?: boolean;
|
|
301
|
+
name: string;
|
|
302
|
+
size: number;
|
|
221
303
|
}
|
|
222
|
-
export interface
|
|
223
|
-
type: ComponentTypes.
|
|
224
|
-
components: Array<Button | SelectMenu | TextInput>;
|
|
304
|
+
export interface Separator {
|
|
305
|
+
type: ComponentTypes.Separator;
|
|
225
306
|
id?: number;
|
|
307
|
+
divider?: boolean;
|
|
308
|
+
spacing?: SeparatorSpacing;
|
|
309
|
+
}
|
|
310
|
+
export interface Container {
|
|
311
|
+
type: ComponentTypes.Container;
|
|
312
|
+
id?: number;
|
|
313
|
+
components: Array<ActionRow | TextDisplay | Section | MediaGallery | Separator | File>;
|
|
314
|
+
accentColor?: number | null;
|
|
315
|
+
spoiler?: boolean;
|
|
316
|
+
}
|
|
317
|
+
export interface Label {
|
|
318
|
+
type: ComponentTypes.Label;
|
|
319
|
+
id?: number;
|
|
320
|
+
label: string;
|
|
321
|
+
description?: string;
|
|
322
|
+
component: TextInput | StringSelect;
|
|
226
323
|
}
|
|
227
324
|
export interface UnfurledMediaItem {
|
|
228
325
|
url: string;
|
|
@@ -4,7 +4,7 @@ import type { Channel, RawChannel, RawRoleSubscriptionData, RoleSubscriptionData
|
|
|
4
4
|
import type { snowflake, timestamp } from "./common";
|
|
5
5
|
import type { Emoji, RawEmoji } from "./emoji";
|
|
6
6
|
import type { MessageInteraction, RawMessageInteraction, RawResolvedData, ResolvedData } from "./interaction";
|
|
7
|
-
import type { ActionRow, Container, File, MediaGallery, RawActionRow, RawContainer, RawFile, RawMediaGallery, RawSection, RawSeparator, RawTextDisplay, Section, Separator, TextDisplay } from "./message-components";
|
|
7
|
+
import type { ActionRow, Button, ChannelSelect, Container, File, MediaGallery, MentionableSelect, RawActionRow, RawButton, RawChannelSelect, RawContainer, RawFile, RawMediaGallery, RawMentionableSelect, RawRoleSelect, RawSection, RawSeparator, RawStringSelect, RawTextDisplay, RawThumbnail, RawUserSelect, RoleSelect, Section, Separator, StringSelect, TextDisplay, Thumbnail, UserSelect } from "./message-components";
|
|
8
8
|
import type { Poll, RawPoll } from "./poll";
|
|
9
9
|
import type { RawStickerItem, RawSticker, Sticker, StickerItem } from "./sticker";
|
|
10
10
|
import type { RawUser, User } from "./user";
|
|
@@ -38,7 +38,7 @@ export interface RawMessage {
|
|
|
38
38
|
interaction_metadata?: RawMessageInteractionMetadata;
|
|
39
39
|
interaction?: RawMessageInteraction;
|
|
40
40
|
thread?: RawChannel;
|
|
41
|
-
components?: Array<
|
|
41
|
+
components?: Array<RawActionRow | RawButton | RawStringSelect | RawUserSelect | RawRoleSelect | RawMentionableSelect | RawChannelSelect | RawSection | RawTextDisplay | RawThumbnail | RawMediaGallery | RawFile | RawSeparator | RawContainer>;
|
|
42
42
|
sticker_items?: Array<RawStickerItem>;
|
|
43
43
|
stickers?: Array<RawSticker>;
|
|
44
44
|
position?: number;
|
|
@@ -47,7 +47,6 @@ export interface RawMessage {
|
|
|
47
47
|
poll?: RawPoll;
|
|
48
48
|
call?: RawMessageCall;
|
|
49
49
|
}
|
|
50
|
-
export type RawMessageTopLevelComponent = RawActionRow | RawTextDisplay | RawContainer | RawFile | RawSection | RawSeparator | RawMediaGallery;
|
|
51
50
|
/** https://discord.com/developers/docs/resources/message#message-object-message-activity-structure */
|
|
52
51
|
export interface RawMessageActivity {
|
|
53
52
|
type: MessageActivityTypes;
|
|
@@ -231,7 +230,7 @@ export interface Message {
|
|
|
231
230
|
interactionMetadata?: MessageInteractionMetadata;
|
|
232
231
|
interaction?: MessageInteraction;
|
|
233
232
|
thread?: Channel;
|
|
234
|
-
components?: Array<
|
|
233
|
+
components?: Array<ActionRow | Button | StringSelect | UserSelect | RoleSelect | MentionableSelect | ChannelSelect | Section | TextDisplay | Thumbnail | MediaGallery | File | Separator | Container>;
|
|
235
234
|
stickerItems?: Array<StickerItem>;
|
|
236
235
|
stickers?: Array<Sticker>;
|
|
237
236
|
position?: number;
|
|
@@ -240,7 +239,6 @@ export interface Message {
|
|
|
240
239
|
poll?: Poll;
|
|
241
240
|
call?: MessageCall;
|
|
242
241
|
}
|
|
243
|
-
export type MessageTopLevelComponent = ActionRow | TextDisplay | Container | File | Section | Separator | MediaGallery;
|
|
244
242
|
export interface MessageActivity {
|
|
245
243
|
type: MessageActivityTypes;
|
|
246
244
|
partyID?: string;
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "disgroove",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.7-dev.045389f",
|
|
4
4
|
"description": "A module to interface with Discord",
|
|
5
5
|
"main": "./dist/lib/index.js",
|
|
6
6
|
"types": "./dist/lib/index.d.ts",
|
|
@@ -25,12 +25,12 @@
|
|
|
25
25
|
},
|
|
26
26
|
"homepage": "https://github.com/sergiogotuzzo/disgroove#readme",
|
|
27
27
|
"devDependencies": {
|
|
28
|
-
"@types/node": "^22.
|
|
29
|
-
"@types/ws": "^8.18.
|
|
30
|
-
"typescript": "^5.8.
|
|
31
|
-
"undici-types": "^7.
|
|
28
|
+
"@types/node": "^22.16.3",
|
|
29
|
+
"@types/ws": "^8.18.1",
|
|
30
|
+
"typescript": "^5.8.3",
|
|
31
|
+
"undici-types": "^7.11.0"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"ws": "^8.18.
|
|
34
|
+
"ws": "^8.18.3"
|
|
35
35
|
}
|
|
36
36
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "disgroove",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.7-dev.045389f",
|
|
4
4
|
"description": "A module to interface with Discord",
|
|
5
5
|
"main": "./dist/lib/index.js",
|
|
6
6
|
"types": "./dist/lib/index.d.ts",
|
|
@@ -25,12 +25,12 @@
|
|
|
25
25
|
},
|
|
26
26
|
"homepage": "https://github.com/sergiogotuzzo/disgroove#readme",
|
|
27
27
|
"devDependencies": {
|
|
28
|
-
"@types/node": "^22.
|
|
29
|
-
"@types/ws": "^8.18.
|
|
30
|
-
"typescript": "^5.8.
|
|
31
|
-
"undici-types": "^7.
|
|
28
|
+
"@types/node": "^22.16.3",
|
|
29
|
+
"@types/ws": "^8.18.1",
|
|
30
|
+
"typescript": "^5.8.3",
|
|
31
|
+
"undici-types": "^7.11.0"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"ws": "^8.18.
|
|
34
|
+
"ws": "^8.18.3"
|
|
35
35
|
}
|
|
36
36
|
}
|