@discordeno/rest 19.0.0-next.1bbee2f → 19.0.0-next.1c8442e
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/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -2
- package/dist/index.js.map +1 -0
- package/dist/invalidBucket.d.ts +6 -7
- package/dist/invalidBucket.d.ts.map +1 -1
- package/dist/invalidBucket.js +82 -2
- package/dist/invalidBucket.js.map +1 -0
- package/dist/manager.d.ts +10 -3572
- package/dist/manager.d.ts.map +1 -1
- package/dist/manager.js +1139 -2
- package/dist/manager.js.map +1 -0
- package/dist/queue.d.ts +7 -1
- package/dist/queue.d.ts.map +1 -1
- package/dist/queue.js +153 -2
- package/dist/queue.js.map +1 -0
- package/dist/routes.d.ts +3 -0
- package/dist/routes.d.ts.map +1 -0
- package/dist/routes.js +487 -0
- package/dist/routes.js.map +1 -0
- package/dist/types.d.ts +2482 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/typings/routes.d.ts +236 -0
- package/dist/typings/routes.d.ts.map +1 -0
- package/dist/typings/routes.js +3 -0
- package/dist/typings/routes.js.map +1 -0
- package/package.json +15 -15
package/dist/routes.js
ADDED
|
@@ -0,0 +1,487 @@
|
|
|
1
|
+
import { isGetMessagesAfter, isGetMessagesAround, isGetMessagesBefore, isGetMessagesLimit } from '@discordeno/utils';
|
|
2
|
+
export function createRoutes() {
|
|
3
|
+
return {
|
|
4
|
+
webhooks: {
|
|
5
|
+
id: (webhookId)=>{
|
|
6
|
+
return `/webhooks/${webhookId}`;
|
|
7
|
+
},
|
|
8
|
+
message: (webhookId, token, messageId, options)=>{
|
|
9
|
+
let url = `/webhooks/${webhookId}/${token}/messages/${messageId}?`;
|
|
10
|
+
if (options) {
|
|
11
|
+
if (options.threadId) url += `thread_id=${options.threadId}`;
|
|
12
|
+
}
|
|
13
|
+
return url;
|
|
14
|
+
},
|
|
15
|
+
original: (webhookId, token, options)=>{
|
|
16
|
+
let url = `/webhooks/${webhookId}/${token}/messages/@original?`;
|
|
17
|
+
if (options) {
|
|
18
|
+
if (options.threadId) url += `thread_id=${options.threadId}`;
|
|
19
|
+
}
|
|
20
|
+
return url;
|
|
21
|
+
},
|
|
22
|
+
webhook: (webhookId, token, options)=>{
|
|
23
|
+
let url = `/webhooks/${webhookId}/${token}?`;
|
|
24
|
+
if (options) {
|
|
25
|
+
if (options?.wait !== undefined) url += `wait=${options.wait.toString()}`;
|
|
26
|
+
if (options.threadId) url += `thread_id=${options.threadId}`;
|
|
27
|
+
}
|
|
28
|
+
return url;
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
// Channel Endpoints
|
|
32
|
+
channels: {
|
|
33
|
+
bulk: (channelId)=>{
|
|
34
|
+
return `/channels/${channelId}/messages/bulk-delete`;
|
|
35
|
+
},
|
|
36
|
+
dm: ()=>{
|
|
37
|
+
return '/users/@me/channels';
|
|
38
|
+
},
|
|
39
|
+
pin: (channelId, messageId)=>{
|
|
40
|
+
return `/channels/${channelId}/pins/${messageId}`;
|
|
41
|
+
},
|
|
42
|
+
pins: (channelId)=>{
|
|
43
|
+
return `/channels/${channelId}/pins`;
|
|
44
|
+
},
|
|
45
|
+
reactions: {
|
|
46
|
+
bot: (channelId, messageId, emoji)=>{
|
|
47
|
+
return `/channels/${channelId}/messages/${messageId}/reactions/${encodeURIComponent(emoji)}/@me`;
|
|
48
|
+
},
|
|
49
|
+
user: (channelId, messageId, emoji, userId)=>{
|
|
50
|
+
return `/channels/${channelId}/messages/${messageId}/reactions/${encodeURIComponent(emoji)}/${userId}`;
|
|
51
|
+
},
|
|
52
|
+
all: (channelId, messageId)=>{
|
|
53
|
+
return `/channels/${channelId}/messages/${messageId}/reactions`;
|
|
54
|
+
},
|
|
55
|
+
emoji: (channelId, messageId, emoji, options)=>{
|
|
56
|
+
let url = `/channels/${channelId}/messages/${messageId}/reactions/${encodeURIComponent(emoji)}?`;
|
|
57
|
+
if (options) {
|
|
58
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
59
|
+
if (options.after) url += `after=${options.after}`;
|
|
60
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
61
|
+
if (options.limit) url += `&limit=${options.limit}`;
|
|
62
|
+
}
|
|
63
|
+
return url;
|
|
64
|
+
},
|
|
65
|
+
message: (channelId, messageId, emoji, options)=>{
|
|
66
|
+
let url = `/channels/${channelId}/messages/${messageId}/reactions/${encodeURIComponent(emoji)}?`;
|
|
67
|
+
if (options) {
|
|
68
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
69
|
+
if (options.after) url += `after=${options.after}`;
|
|
70
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
71
|
+
if (options.limit) url += `&limit=${options.limit}`;
|
|
72
|
+
}
|
|
73
|
+
return url;
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
webhooks: (channelId)=>{
|
|
77
|
+
return `/channels/${channelId}/webhooks`;
|
|
78
|
+
},
|
|
79
|
+
channel: (channelId)=>{
|
|
80
|
+
return `/channels/${channelId}`;
|
|
81
|
+
},
|
|
82
|
+
follow: (channelId)=>{
|
|
83
|
+
return `/channels/${channelId}/followers`;
|
|
84
|
+
},
|
|
85
|
+
forum: (channelId)=>{
|
|
86
|
+
return `/channels/${channelId}/threads?has_message=true`;
|
|
87
|
+
},
|
|
88
|
+
invites: (channelId)=>{
|
|
89
|
+
return `/channels/${channelId}/invites`;
|
|
90
|
+
},
|
|
91
|
+
message: (channelId, messageId)=>{
|
|
92
|
+
return `/channels/${channelId}/messages/${messageId}`;
|
|
93
|
+
},
|
|
94
|
+
messages: (channelId, options)=>{
|
|
95
|
+
let url = `/channels/${channelId}/messages?`;
|
|
96
|
+
if (options) {
|
|
97
|
+
if (isGetMessagesAfter(options) && options.after) {
|
|
98
|
+
url += `after=${options.after}`;
|
|
99
|
+
}
|
|
100
|
+
if (isGetMessagesBefore(options) && options.before) {
|
|
101
|
+
url += `&before=${options.before}`;
|
|
102
|
+
}
|
|
103
|
+
if (isGetMessagesAround(options) && options.around) {
|
|
104
|
+
url += `&around=${options.around}`;
|
|
105
|
+
}
|
|
106
|
+
if (isGetMessagesLimit(options) && options.limit) {
|
|
107
|
+
url += `&limit=${options.limit}`;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
return url;
|
|
111
|
+
},
|
|
112
|
+
overwrite: (channelId, overwriteId)=>{
|
|
113
|
+
return `/channels/${channelId}/permissions/${overwriteId}`;
|
|
114
|
+
},
|
|
115
|
+
crosspost: (channelId, messageId)=>{
|
|
116
|
+
return `/channels/${channelId}/messages/${messageId}/crosspost`;
|
|
117
|
+
},
|
|
118
|
+
stages: ()=>{
|
|
119
|
+
return '/stage-instances';
|
|
120
|
+
},
|
|
121
|
+
stage: (channelId)=>{
|
|
122
|
+
return `/stage-instances/${channelId}`;
|
|
123
|
+
},
|
|
124
|
+
// Thread Endpoints
|
|
125
|
+
threads: {
|
|
126
|
+
message: (channelId, messageId)=>{
|
|
127
|
+
return `/channels/${channelId}/messages/${messageId}/threads`;
|
|
128
|
+
},
|
|
129
|
+
all: (channelId)=>{
|
|
130
|
+
return `/channels/${channelId}/threads`;
|
|
131
|
+
},
|
|
132
|
+
active: (guildId)=>{
|
|
133
|
+
return `/guilds/${guildId}/threads/active`;
|
|
134
|
+
},
|
|
135
|
+
members: (channelId)=>{
|
|
136
|
+
return `/channels/${channelId}/thread-members`;
|
|
137
|
+
},
|
|
138
|
+
me: (channelId)=>{
|
|
139
|
+
return `/channels/${channelId}/thread-members/@me`;
|
|
140
|
+
},
|
|
141
|
+
user: (channelId, userId)=>{
|
|
142
|
+
return `/channels/${channelId}/thread-members/${userId}`;
|
|
143
|
+
},
|
|
144
|
+
archived: (channelId)=>{
|
|
145
|
+
return `/channels/${channelId}/threads/archived`;
|
|
146
|
+
},
|
|
147
|
+
public: (channelId, options)=>{
|
|
148
|
+
let url = `/channels/${channelId}/threads/archived/public?`;
|
|
149
|
+
if (options) {
|
|
150
|
+
if (options.before) {
|
|
151
|
+
url += `before=${new Date(options.before).toISOString()}`;
|
|
152
|
+
}
|
|
153
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
154
|
+
if (options.limit) url += `&limit=${options.limit}`;
|
|
155
|
+
}
|
|
156
|
+
return url;
|
|
157
|
+
},
|
|
158
|
+
private: (channelId, options)=>{
|
|
159
|
+
let url = `/channels/${channelId}/threads/archived/private?`;
|
|
160
|
+
if (options) {
|
|
161
|
+
if (options.before) {
|
|
162
|
+
url += `before=${new Date(options.before).toISOString()}`;
|
|
163
|
+
}
|
|
164
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
165
|
+
if (options.limit) url += `&limit=${options.limit}`;
|
|
166
|
+
}
|
|
167
|
+
return url;
|
|
168
|
+
},
|
|
169
|
+
joined: (channelId, options)=>{
|
|
170
|
+
let url = `/channels/${channelId}/users/@me/threads/archived/private?`;
|
|
171
|
+
if (options) {
|
|
172
|
+
if (options.before) {
|
|
173
|
+
url += `before=${new Date(options.before).toISOString()}`;
|
|
174
|
+
}
|
|
175
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
176
|
+
if (options.limit) url += `&limit=${options.limit}`;
|
|
177
|
+
}
|
|
178
|
+
return url;
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
typing: (channelId)=>{
|
|
182
|
+
return `/channels/${channelId}/typing`;
|
|
183
|
+
}
|
|
184
|
+
},
|
|
185
|
+
// Guild Endpoints
|
|
186
|
+
guilds: {
|
|
187
|
+
all: ()=>{
|
|
188
|
+
return '/guilds';
|
|
189
|
+
},
|
|
190
|
+
auditlogs: (guildId, options)=>{
|
|
191
|
+
let url = `/guilds/${guildId}/audit-logs?`;
|
|
192
|
+
if (options) {
|
|
193
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
194
|
+
if (options.actionType) url += `action_type=${options.actionType}`;
|
|
195
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
196
|
+
if (options.before) url += `&before=${options.before}`;
|
|
197
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
198
|
+
if (options.after) url += `&after=${options.after}`;
|
|
199
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
200
|
+
if (options.limit) url += `&limit=${options.limit}`;
|
|
201
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
202
|
+
if (options.userId) url += `&user_id=${options.userId}`;
|
|
203
|
+
}
|
|
204
|
+
return url;
|
|
205
|
+
},
|
|
206
|
+
automod: {
|
|
207
|
+
rule: (guildId, ruleId)=>{
|
|
208
|
+
return `/guilds/${guildId}/auto-moderation/rules/${ruleId}`;
|
|
209
|
+
},
|
|
210
|
+
rules: (guildId)=>{
|
|
211
|
+
return `/guilds/${guildId}/auto-moderation/rules`;
|
|
212
|
+
}
|
|
213
|
+
},
|
|
214
|
+
channels: (guildId)=>{
|
|
215
|
+
return `/guilds/${guildId}/channels`;
|
|
216
|
+
},
|
|
217
|
+
emoji: (guildId, emojiId)=>{
|
|
218
|
+
return `/guilds/${guildId}/emojis/${emojiId}`;
|
|
219
|
+
},
|
|
220
|
+
emojis: (guildId)=>{
|
|
221
|
+
return `/guilds/${guildId}/emojis`;
|
|
222
|
+
},
|
|
223
|
+
events: {
|
|
224
|
+
events: (guildId, withUserCount)=>{
|
|
225
|
+
let url = `/guilds/${guildId}/scheduled-events?`;
|
|
226
|
+
if (withUserCount !== undefined) {
|
|
227
|
+
url += `with_user_count=${withUserCount.toString()}`;
|
|
228
|
+
}
|
|
229
|
+
return url;
|
|
230
|
+
},
|
|
231
|
+
event: (guildId, eventId, withUserCount)=>{
|
|
232
|
+
let url = `/guilds/${guildId}/scheduled-events/${eventId}`;
|
|
233
|
+
if (withUserCount !== undefined) {
|
|
234
|
+
url += `with_user_count=${withUserCount.toString()}`;
|
|
235
|
+
}
|
|
236
|
+
return url;
|
|
237
|
+
},
|
|
238
|
+
users: (guildId, eventId, options)=>{
|
|
239
|
+
let url = `/guilds/${guildId}/scheduled-events/${eventId}/users?`;
|
|
240
|
+
if (options) {
|
|
241
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
242
|
+
if (options.limit !== undefined) url += `limit=${options.limit}`;
|
|
243
|
+
if (options.withMember !== undefined) {
|
|
244
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
245
|
+
url += `&with_member=${options.withMember.toString()}`;
|
|
246
|
+
}
|
|
247
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
248
|
+
if (options.after !== undefined) url += `&after=${options.after}`;
|
|
249
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
250
|
+
if (options.before !== undefined) url += `&before=${options.before}`;
|
|
251
|
+
}
|
|
252
|
+
return url;
|
|
253
|
+
}
|
|
254
|
+
},
|
|
255
|
+
guild (guildId, withCounts) {
|
|
256
|
+
let url = `/guilds/${guildId}?`;
|
|
257
|
+
if (withCounts !== undefined) {
|
|
258
|
+
url += `with_counts=${withCounts.toString()}`;
|
|
259
|
+
}
|
|
260
|
+
return url;
|
|
261
|
+
},
|
|
262
|
+
integration (guildId, integrationId) {
|
|
263
|
+
return `/guilds/${guildId}/integrations/${integrationId}`;
|
|
264
|
+
},
|
|
265
|
+
integrations: (guildId)=>{
|
|
266
|
+
return `/guilds/${guildId}/integrations?include_applications=true`;
|
|
267
|
+
},
|
|
268
|
+
invite (inviteCode, options) {
|
|
269
|
+
let url = `/invites/${inviteCode}?`;
|
|
270
|
+
if (options) {
|
|
271
|
+
if (options.withCounts !== undefined) {
|
|
272
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
273
|
+
url += `with_counts=${options.withCounts.toString()}`;
|
|
274
|
+
}
|
|
275
|
+
if (options.withExpiration !== undefined) {
|
|
276
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
277
|
+
url += `&with_expiration=${options.withExpiration.toString()}`;
|
|
278
|
+
}
|
|
279
|
+
if (options.scheduledEventId) {
|
|
280
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
281
|
+
url += `&guild_scheduled_event_id=${options.scheduledEventId}`;
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
return url;
|
|
285
|
+
},
|
|
286
|
+
invites: (guildId)=>{
|
|
287
|
+
return `/guilds/${guildId}/invites`;
|
|
288
|
+
},
|
|
289
|
+
leave: (guildId)=>{
|
|
290
|
+
return `/users/@me/guilds/${guildId}`;
|
|
291
|
+
},
|
|
292
|
+
members: {
|
|
293
|
+
ban: (guildId, userId)=>{
|
|
294
|
+
return `/guilds/${guildId}/bans/${userId}`;
|
|
295
|
+
},
|
|
296
|
+
bans: (guildId, options)=>{
|
|
297
|
+
let url = `/guilds/${guildId}/bans?`;
|
|
298
|
+
if (options) {
|
|
299
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
300
|
+
if (options.limit) url += `limit=${options.limit}`;
|
|
301
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
302
|
+
if (options.after) url += `&after=${options.after}`;
|
|
303
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
304
|
+
if (options.before) url += `&before=${options.before}`;
|
|
305
|
+
}
|
|
306
|
+
return url;
|
|
307
|
+
},
|
|
308
|
+
bot: (guildId)=>{
|
|
309
|
+
return `/guilds/${guildId}/members/@me`;
|
|
310
|
+
},
|
|
311
|
+
member: (guildId, userId)=>{
|
|
312
|
+
return `/guilds/${guildId}/members/${userId}`;
|
|
313
|
+
},
|
|
314
|
+
members: (guildId, options)=>{
|
|
315
|
+
let url = `/guilds/${guildId}/members?`;
|
|
316
|
+
if (options !== undefined) {
|
|
317
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
318
|
+
if (options.limit) url += `limit=${options.limit}`;
|
|
319
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
320
|
+
if (options.after) url += `&after=${options.after}`;
|
|
321
|
+
}
|
|
322
|
+
return url;
|
|
323
|
+
},
|
|
324
|
+
search: (guildId, query, options)=>{
|
|
325
|
+
let url = `/guilds/${guildId}/members/search?query=${encodeURIComponent(query)}`;
|
|
326
|
+
if (options) {
|
|
327
|
+
if (options.limit !== undefined) url += `&limit=${options.limit}`;
|
|
328
|
+
}
|
|
329
|
+
return url;
|
|
330
|
+
},
|
|
331
|
+
prune: (guildId, options)=>{
|
|
332
|
+
let url = `/guilds/${guildId}/prune?`;
|
|
333
|
+
if (options) {
|
|
334
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
335
|
+
if (options.days) url += `days=${options.days}`;
|
|
336
|
+
if (Array.isArray(options.includeRoles)) {
|
|
337
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
338
|
+
url += `&include_roles=${options.includeRoles.join(',')}`;
|
|
339
|
+
} else if (options.includeRoles) {
|
|
340
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
341
|
+
url += `&include_roles=${options.includeRoles}`;
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
return url;
|
|
345
|
+
}
|
|
346
|
+
},
|
|
347
|
+
mfa: (guildId)=>`/guilds/${guildId}/mfa`,
|
|
348
|
+
preview: (guildId)=>{
|
|
349
|
+
return `/guilds/${guildId}/preview`;
|
|
350
|
+
},
|
|
351
|
+
prune: (guildId, options)=>{
|
|
352
|
+
let url = `/guilds/${guildId}/prune?`;
|
|
353
|
+
if (options) {
|
|
354
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
355
|
+
if (options.days) url += `days=${options.days}`;
|
|
356
|
+
if (Array.isArray(options.includeRoles)) {
|
|
357
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
358
|
+
url += `&include_roles=${options.includeRoles.join(',')}`;
|
|
359
|
+
} else if (options.includeRoles) {
|
|
360
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
361
|
+
url += `&include_roles=${options.includeRoles}`;
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
return url;
|
|
365
|
+
},
|
|
366
|
+
roles: {
|
|
367
|
+
one: (guildId, roleId)=>{
|
|
368
|
+
return `/guilds/${guildId}/roles/${roleId}`;
|
|
369
|
+
},
|
|
370
|
+
all: (guildId)=>{
|
|
371
|
+
return `/guilds/${guildId}/roles`;
|
|
372
|
+
},
|
|
373
|
+
member: (guildId, memberId, roleId)=>{
|
|
374
|
+
return `/guilds/${guildId}/members/${memberId}/roles/${roleId}`;
|
|
375
|
+
}
|
|
376
|
+
},
|
|
377
|
+
stickers: (guildId)=>{
|
|
378
|
+
return `/guilds/${guildId}/stickers`;
|
|
379
|
+
},
|
|
380
|
+
sticker: (guildId, stickerId)=>{
|
|
381
|
+
return `/guilds/${guildId}/stickers/${stickerId}`;
|
|
382
|
+
},
|
|
383
|
+
voice: (guildId, userId)=>{
|
|
384
|
+
return `/guilds/${guildId}/voice-states/${userId ?? '@me'}`;
|
|
385
|
+
},
|
|
386
|
+
templates: {
|
|
387
|
+
code: (code)=>{
|
|
388
|
+
return `/guilds/templates/${code}`;
|
|
389
|
+
},
|
|
390
|
+
guild: (guildId, code)=>{
|
|
391
|
+
return `/guilds/${guildId}/templates/${code}`;
|
|
392
|
+
},
|
|
393
|
+
all: (guildId)=>{
|
|
394
|
+
return `/guilds/${guildId}/templates`;
|
|
395
|
+
}
|
|
396
|
+
},
|
|
397
|
+
vanity: (guildId)=>{
|
|
398
|
+
return `/guilds/${guildId}/vanity-url`;
|
|
399
|
+
},
|
|
400
|
+
regions: (guildId)=>{
|
|
401
|
+
return `/guilds/${guildId}/regions`;
|
|
402
|
+
},
|
|
403
|
+
webhooks: (guildId)=>{
|
|
404
|
+
return `/guilds/${guildId}/webhooks`;
|
|
405
|
+
},
|
|
406
|
+
welcome: (guildId)=>{
|
|
407
|
+
return `/guilds/${guildId}/welcome-screen`;
|
|
408
|
+
},
|
|
409
|
+
widget: (guildId)=>{
|
|
410
|
+
return `/guilds/${guildId}/widget`;
|
|
411
|
+
},
|
|
412
|
+
widgetJson: (guildId)=>{
|
|
413
|
+
return `/guilds/${guildId}/widget.json`;
|
|
414
|
+
}
|
|
415
|
+
},
|
|
416
|
+
sticker: (stickerId)=>{
|
|
417
|
+
return `/stickers/${stickerId}`;
|
|
418
|
+
},
|
|
419
|
+
regions: ()=>{
|
|
420
|
+
return '/voice/regions';
|
|
421
|
+
},
|
|
422
|
+
// Interaction Endpoints
|
|
423
|
+
interactions: {
|
|
424
|
+
commands: {
|
|
425
|
+
// Application Endpoints
|
|
426
|
+
commands: (applicationId)=>{
|
|
427
|
+
return `/applications/${applicationId}/commands`;
|
|
428
|
+
},
|
|
429
|
+
guilds: {
|
|
430
|
+
all (applicationId, guildId) {
|
|
431
|
+
return `/applications/${applicationId}/guilds/${guildId}/commands`;
|
|
432
|
+
},
|
|
433
|
+
one (applicationId, guildId, commandId, withLocalizations) {
|
|
434
|
+
let url = `/applications/${applicationId}/guilds/${guildId}/commands/${commandId}?`;
|
|
435
|
+
if (withLocalizations !== undefined) {
|
|
436
|
+
url += `with_localizations=${withLocalizations.toString()}`;
|
|
437
|
+
}
|
|
438
|
+
return url;
|
|
439
|
+
}
|
|
440
|
+
},
|
|
441
|
+
permissions: (applicationId, guildId)=>{
|
|
442
|
+
return `/applications/${applicationId}/guilds/${guildId}/commands/permissions`;
|
|
443
|
+
},
|
|
444
|
+
permission: (applicationId, guildId, commandId)=>{
|
|
445
|
+
return `/applications/${applicationId}/guilds/${guildId}/commands/${commandId}/permissions`;
|
|
446
|
+
},
|
|
447
|
+
command: (applicationId, commandId, withLocalizations)=>{
|
|
448
|
+
let url = `/applications/${applicationId}/commands/${commandId}?`;
|
|
449
|
+
if (withLocalizations !== undefined) {
|
|
450
|
+
url += `withLocalizations=${withLocalizations.toString()}`;
|
|
451
|
+
}
|
|
452
|
+
return url;
|
|
453
|
+
}
|
|
454
|
+
},
|
|
455
|
+
responses: {
|
|
456
|
+
// Interaction Endpoints
|
|
457
|
+
callback: (interactionId, token)=>{
|
|
458
|
+
return `/interactions/${interactionId}/${token}/callback`;
|
|
459
|
+
},
|
|
460
|
+
original: (interactionId, token)=>{
|
|
461
|
+
return `/webhooks/${interactionId}/${token}/messages/@original`;
|
|
462
|
+
},
|
|
463
|
+
message: (applicationId, token, messageId)=>{
|
|
464
|
+
return `/webhooks/${applicationId}/${token}/messages/${messageId}`;
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
},
|
|
468
|
+
// User endpoints
|
|
469
|
+
user (userId) {
|
|
470
|
+
return `/users/${userId}`;
|
|
471
|
+
},
|
|
472
|
+
userBot () {
|
|
473
|
+
return '/users/@me';
|
|
474
|
+
},
|
|
475
|
+
oauth2Application () {
|
|
476
|
+
return '/oauth2/applications/@me';
|
|
477
|
+
},
|
|
478
|
+
gatewayBot () {
|
|
479
|
+
return '/gateway/bot';
|
|
480
|
+
},
|
|
481
|
+
nitroStickerPacks () {
|
|
482
|
+
return '/sticker-packs';
|
|
483
|
+
}
|
|
484
|
+
};
|
|
485
|
+
}
|
|
486
|
+
|
|
487
|
+
//# sourceMappingURL=routes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/routes.ts"],"sourcesContent":["import type { GetMessagesOptions, GetScheduledEventUsers } from '@discordeno/types'\nimport { isGetMessagesAfter, isGetMessagesAround, isGetMessagesBefore, isGetMessagesLimit } from '@discordeno/utils'\nimport type { RestRoutes } from './typings/routes.js'\n\nexport function createRoutes(): RestRoutes {\n return {\n webhooks: {\n id: (webhookId) => {\n return `/webhooks/${webhookId}`\n },\n message: (webhookId, token, messageId, options) => {\n let url = `/webhooks/${webhookId}/${token}/messages/${messageId}?`\n\n if (options) {\n if (options.threadId) url += `thread_id=${options.threadId}`\n }\n\n return url\n },\n original: (webhookId, token, options) => {\n let url = `/webhooks/${webhookId}/${token}/messages/@original?`\n\n if (options) {\n if (options.threadId) url += `thread_id=${options.threadId}`\n }\n\n return url\n },\n webhook: (webhookId, token, options) => {\n let url = `/webhooks/${webhookId}/${token}?`\n\n if (options) {\n if (options?.wait !== undefined) url += `wait=${options.wait.toString()}`\n if (options.threadId) url += `thread_id=${options.threadId}`\n }\n\n return url\n },\n },\n\n // Channel Endpoints\n channels: {\n bulk: (channelId) => {\n return `/channels/${channelId}/messages/bulk-delete`\n },\n dm: () => {\n return '/users/@me/channels'\n },\n pin: (channelId, messageId) => {\n return `/channels/${channelId}/pins/${messageId}`\n },\n pins: (channelId) => {\n return `/channels/${channelId}/pins`\n },\n reactions: {\n bot: (channelId, messageId, emoji) => {\n return `/channels/${channelId}/messages/${messageId}/reactions/${encodeURIComponent(emoji)}/@me`\n },\n user: (channelId, messageId, emoji, userId) => {\n return `/channels/${channelId}/messages/${messageId}/reactions/${encodeURIComponent(emoji)}/${userId}`\n },\n all: (channelId, messageId) => {\n return `/channels/${channelId}/messages/${messageId}/reactions`\n },\n emoji: (channelId, messageId, emoji, options) => {\n let url = `/channels/${channelId}/messages/${messageId}/reactions/${encodeURIComponent(emoji)}?`\n\n if (options) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.after) url += `after=${options.after}`\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.limit) url += `&limit=${options.limit}`\n }\n\n return url\n },\n message: (channelId, messageId, emoji, options) => {\n let url = `/channels/${channelId}/messages/${messageId}/reactions/${encodeURIComponent(emoji)}?`\n\n if (options) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.after) url += `after=${options.after}`\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.limit) url += `&limit=${options.limit}`\n }\n\n return url\n },\n },\n webhooks: (channelId) => {\n return `/channels/${channelId}/webhooks`\n },\n\n channel: (channelId) => {\n return `/channels/${channelId}`\n },\n\n follow: (channelId) => {\n return `/channels/${channelId}/followers`\n },\n\n forum: (channelId) => {\n return `/channels/${channelId}/threads?has_message=true`\n },\n\n invites: (channelId) => {\n return `/channels/${channelId}/invites`\n },\n\n message: (channelId, messageId) => {\n return `/channels/${channelId}/messages/${messageId}`\n },\n\n messages: (channelId, options?: GetMessagesOptions) => {\n let url = `/channels/${channelId}/messages?`\n\n if (options) {\n if (isGetMessagesAfter(options) && options.after) {\n url += `after=${options.after}`\n }\n if (isGetMessagesBefore(options) && options.before) {\n url += `&before=${options.before}`\n }\n if (isGetMessagesAround(options) && options.around) {\n url += `&around=${options.around}`\n }\n if (isGetMessagesLimit(options) && options.limit) {\n url += `&limit=${options.limit}`\n }\n }\n\n return url\n },\n\n overwrite: (channelId, overwriteId) => {\n return `/channels/${channelId}/permissions/${overwriteId}`\n },\n\n crosspost: (channelId, messageId) => {\n return `/channels/${channelId}/messages/${messageId}/crosspost`\n },\n\n stages: () => {\n return '/stage-instances'\n },\n\n stage: (channelId) => {\n return `/stage-instances/${channelId}`\n },\n\n // Thread Endpoints\n threads: {\n message: (channelId, messageId) => {\n return `/channels/${channelId}/messages/${messageId}/threads`\n },\n all: (channelId) => {\n return `/channels/${channelId}/threads`\n },\n active: (guildId) => {\n return `/guilds/${guildId}/threads/active`\n },\n members: (channelId) => {\n return `/channels/${channelId}/thread-members`\n },\n me: (channelId) => {\n return `/channels/${channelId}/thread-members/@me`\n },\n user: (channelId, userId) => {\n return `/channels/${channelId}/thread-members/${userId}`\n },\n archived: (channelId) => {\n return `/channels/${channelId}/threads/archived`\n },\n public: (channelId, options) => {\n let url = `/channels/${channelId}/threads/archived/public?`\n\n if (options) {\n if (options.before) {\n url += `before=${new Date(options.before).toISOString()}`\n }\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.limit) url += `&limit=${options.limit}`\n }\n\n return url\n },\n private: (channelId, options) => {\n let url = `/channels/${channelId}/threads/archived/private?`\n\n if (options) {\n if (options.before) {\n url += `before=${new Date(options.before).toISOString()}`\n }\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.limit) url += `&limit=${options.limit}`\n }\n\n return url\n },\n joined: (channelId, options) => {\n let url = `/channels/${channelId}/users/@me/threads/archived/private?`\n\n if (options) {\n if (options.before) {\n url += `before=${new Date(options.before).toISOString()}`\n }\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.limit) url += `&limit=${options.limit}`\n }\n\n return url\n },\n },\n\n typing: (channelId) => {\n return `/channels/${channelId}/typing`\n },\n },\n\n // Guild Endpoints\n guilds: {\n all: () => {\n return '/guilds'\n },\n auditlogs: (guildId, options) => {\n let url = `/guilds/${guildId}/audit-logs?`\n\n if (options) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.actionType) url += `action_type=${options.actionType}`\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.before) url += `&before=${options.before}`\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.after) url += `&after=${options.after}`\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.limit) url += `&limit=${options.limit}`\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.userId) url += `&user_id=${options.userId}`\n }\n\n return url\n },\n automod: {\n rule: (guildId, ruleId) => {\n return `/guilds/${guildId}/auto-moderation/rules/${ruleId}`\n },\n rules: (guildId) => {\n return `/guilds/${guildId}/auto-moderation/rules`\n },\n },\n channels: (guildId) => {\n return `/guilds/${guildId}/channels`\n },\n emoji: (guildId, emojiId) => {\n return `/guilds/${guildId}/emojis/${emojiId}`\n },\n emojis: (guildId) => {\n return `/guilds/${guildId}/emojis`\n },\n events: {\n events: (guildId, withUserCount?: boolean) => {\n let url = `/guilds/${guildId}/scheduled-events?`\n\n if (withUserCount !== undefined) {\n url += `with_user_count=${withUserCount.toString()}`\n }\n return url\n },\n event: (guildId, eventId, withUserCount?: boolean) => {\n let url = `/guilds/${guildId}/scheduled-events/${eventId}`\n\n if (withUserCount !== undefined) {\n url += `with_user_count=${withUserCount.toString()}`\n }\n\n return url\n },\n users: (guildId, eventId, options?: GetScheduledEventUsers) => {\n let url = `/guilds/${guildId}/scheduled-events/${eventId}/users?`\n\n if (options) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.limit !== undefined) url += `limit=${options.limit}`\n if (options.withMember !== undefined) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n url += `&with_member=${options.withMember.toString()}`\n }\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.after !== undefined) url += `&after=${options.after}`\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.before !== undefined) url += `&before=${options.before}`\n }\n\n return url\n },\n },\n guild(guildId, withCounts) {\n let url = `/guilds/${guildId}?`\n\n if (withCounts !== undefined) {\n url += `with_counts=${withCounts.toString()}`\n }\n\n return url\n },\n integration(guildId, integrationId) {\n return `/guilds/${guildId}/integrations/${integrationId}`\n },\n integrations: (guildId) => {\n return `/guilds/${guildId}/integrations?include_applications=true`\n },\n invite(inviteCode, options) {\n let url = `/invites/${inviteCode}?`\n\n if (options) {\n if (options.withCounts !== undefined) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n url += `with_counts=${options.withCounts.toString()}`\n }\n if (options.withExpiration !== undefined) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n url += `&with_expiration=${options.withExpiration.toString()}`\n }\n if (options.scheduledEventId) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n url += `&guild_scheduled_event_id=${options.scheduledEventId}`\n }\n }\n\n return url\n },\n invites: (guildId) => {\n return `/guilds/${guildId}/invites`\n },\n leave: (guildId) => {\n return `/users/@me/guilds/${guildId}`\n },\n members: {\n ban: (guildId, userId) => {\n return `/guilds/${guildId}/bans/${userId}`\n },\n bans: (guildId, options) => {\n let url = `/guilds/${guildId}/bans?`\n\n if (options) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.limit) url += `limit=${options.limit}`\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.after) url += `&after=${options.after}`\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.before) url += `&before=${options.before}`\n }\n\n return url\n },\n bot: (guildId) => {\n return `/guilds/${guildId}/members/@me`\n },\n member: (guildId, userId) => {\n return `/guilds/${guildId}/members/${userId}`\n },\n members: (guildId, options) => {\n let url = `/guilds/${guildId}/members?`\n\n if (options !== undefined) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.limit) url += `limit=${options.limit}`\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.after) url += `&after=${options.after}`\n }\n\n return url\n },\n search: (guildId, query, options) => {\n let url = `/guilds/${guildId}/members/search?query=${encodeURIComponent(query)}`\n\n if (options) {\n if (options.limit !== undefined) url += `&limit=${options.limit}`\n }\n\n return url\n },\n prune: (guildId, options) => {\n let url = `/guilds/${guildId}/prune?`\n\n if (options) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.days) url += `days=${options.days}`\n if (Array.isArray(options.includeRoles)) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n url += `&include_roles=${options.includeRoles.join(',')}`\n } else if (options.includeRoles) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n url += `&include_roles=${options.includeRoles}`\n }\n }\n\n return url\n },\n },\n mfa: (guildId) => `/guilds/${guildId}/mfa`,\n preview: (guildId) => {\n return `/guilds/${guildId}/preview`\n },\n prune: (guildId, options) => {\n let url = `/guilds/${guildId}/prune?`\n\n if (options) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n if (options.days) url += `days=${options.days}`\n if (Array.isArray(options.includeRoles)) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n url += `&include_roles=${options.includeRoles.join(',')}`\n } else if (options.includeRoles) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n url += `&include_roles=${options.includeRoles}`\n }\n }\n\n return url\n },\n roles: {\n one: (guildId, roleId) => {\n return `/guilds/${guildId}/roles/${roleId}`\n },\n all: (guildId) => {\n return `/guilds/${guildId}/roles`\n },\n member: (guildId, memberId, roleId) => {\n return `/guilds/${guildId}/members/${memberId}/roles/${roleId}`\n },\n },\n stickers: (guildId) => {\n return `/guilds/${guildId}/stickers`\n },\n sticker: (guildId, stickerId) => {\n return `/guilds/${guildId}/stickers/${stickerId}`\n },\n voice: (guildId, userId) => {\n return `/guilds/${guildId}/voice-states/${userId ?? '@me'}`\n },\n templates: {\n code: (code) => {\n return `/guilds/templates/${code}`\n },\n guild: (guildId, code) => {\n return `/guilds/${guildId}/templates/${code}`\n },\n all: (guildId) => {\n return `/guilds/${guildId}/templates`\n },\n },\n vanity: (guildId) => {\n return `/guilds/${guildId}/vanity-url`\n },\n regions: (guildId) => {\n return `/guilds/${guildId}/regions`\n },\n webhooks: (guildId) => {\n return `/guilds/${guildId}/webhooks`\n },\n welcome: (guildId) => {\n return `/guilds/${guildId}/welcome-screen`\n },\n widget: (guildId) => {\n return `/guilds/${guildId}/widget`\n },\n widgetJson: (guildId) => {\n return `/guilds/${guildId}/widget.json`\n },\n },\n\n sticker: (stickerId) => {\n return `/stickers/${stickerId}`\n },\n\n regions: () => {\n return '/voice/regions'\n },\n\n // Interaction Endpoints\n interactions: {\n commands: {\n // Application Endpoints\n commands: (applicationId) => {\n return `/applications/${applicationId}/commands`\n },\n\n guilds: {\n all(applicationId, guildId) {\n return `/applications/${applicationId}/guilds/${guildId}/commands`\n },\n\n one(applicationId, guildId, commandId, withLocalizations) {\n let url = `/applications/${applicationId}/guilds/${guildId}/commands/${commandId}?`\n\n if (withLocalizations !== undefined) {\n url += `with_localizations=${withLocalizations.toString()}`\n }\n\n return url\n },\n },\n permissions: (applicationId, guildId) => {\n return `/applications/${applicationId}/guilds/${guildId}/commands/permissions`\n },\n permission: (applicationId, guildId, commandId) => {\n return `/applications/${applicationId}/guilds/${guildId}/commands/${commandId}/permissions`\n },\n command: (applicationId, commandId, withLocalizations) => {\n let url = `/applications/${applicationId}/commands/${commandId}?`\n\n if (withLocalizations !== undefined) {\n url += `withLocalizations=${withLocalizations.toString()}`\n }\n\n return url\n },\n },\n\n responses: {\n // Interaction Endpoints\n callback: (interactionId, token) => {\n return `/interactions/${interactionId}/${token}/callback`\n },\n original: (interactionId, token) => {\n return `/webhooks/${interactionId}/${token}/messages/@original`\n },\n message: (applicationId, token, messageId) => {\n return `/webhooks/${applicationId}/${token}/messages/${messageId}`\n },\n },\n },\n\n // User endpoints\n user(userId) {\n return `/users/${userId}`\n },\n\n userBot() {\n return '/users/@me'\n },\n\n oauth2Application() {\n return '/oauth2/applications/@me'\n },\n\n gatewayBot() {\n return '/gateway/bot'\n },\n\n nitroStickerPacks() {\n return '/sticker-packs'\n },\n }\n}\n"],"names":["isGetMessagesAfter","isGetMessagesAround","isGetMessagesBefore","isGetMessagesLimit","createRoutes","webhooks","id","webhookId","message","token","messageId","options","url","threadId","original","webhook","wait","undefined","toString","channels","bulk","channelId","dm","pin","pins","reactions","bot","emoji","encodeURIComponent","user","userId","all","after","limit","channel","follow","forum","invites","messages","before","around","overwrite","overwriteId","crosspost","stages","stage","threads","active","guildId","members","me","archived","public","Date","toISOString","private","joined","typing","guilds","auditlogs","actionType","automod","rule","ruleId","rules","emojiId","emojis","events","withUserCount","event","eventId","users","withMember","guild","withCounts","integration","integrationId","integrations","invite","inviteCode","withExpiration","scheduledEventId","leave","ban","bans","member","search","query","prune","days","Array","isArray","includeRoles","join","mfa","preview","roles","one","roleId","memberId","stickers","sticker","stickerId","voice","templates","code","vanity","regions","welcome","widget","widgetJson","interactions","commands","applicationId","commandId","withLocalizations","permissions","permission","command","responses","callback","interactionId","userBot","oauth2Application","gatewayBot","nitroStickerPacks"],"mappings":"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"}
|