snowtransfer 0.3.6 → 0.4.2
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/Constants.d.ts +1 -1
- package/dist/Constants.js +1 -1
- package/dist/Endpoints.d.ts +93 -90
- package/dist/Endpoints.js +71 -73
- package/dist/Ratelimiter.js +4 -8
- package/dist/RequestHandler.d.ts +2 -2
- package/dist/RequestHandler.js +16 -26
- package/dist/SnowTransfer.d.ts +2 -2
- package/dist/SnowTransfer.js +3 -8
- package/dist/methods/AuditLog.d.ts +4 -19
- package/dist/methods/Bots.d.ts +14 -12
- package/dist/methods/Bots.js +6 -6
- package/dist/methods/Channels.d.ts +69 -84
- package/dist/methods/Channels.js +49 -60
- package/dist/methods/GuildAssets.d.ts +17 -17
- package/dist/methods/GuildAssets.js +8 -8
- package/dist/methods/GuildScheduledEvent.d.ts +93 -41
- package/dist/methods/GuildScheduledEvent.js +85 -9
- package/dist/methods/GuildTemplate.d.ts +43 -7
- package/dist/methods/GuildTemplate.js +36 -0
- package/dist/methods/Guilds.d.ts +67 -52
- package/dist/methods/Guilds.js +45 -32
- package/dist/methods/Interactions.d.ts +18 -32
- package/dist/methods/Interactions.js +8 -10
- package/dist/methods/Invites.d.ts +3 -3
- package/dist/methods/Invites.js +1 -1
- package/dist/methods/StageInstance.d.ts +4 -4
- package/dist/methods/Users.d.ts +12 -12
- package/dist/methods/Users.js +6 -6
- package/dist/methods/Voices.d.ts +1 -1
- package/dist/methods/Webhooks.d.ts +28 -28
- package/dist/methods/Webhooks.js +30 -32
- package/dist/ratelimitBuckets/LocalBucket.js +4 -8
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +12 -8
package/dist/Constants.d.ts
CHANGED
package/dist/Constants.js
CHANGED
package/dist/Endpoints.d.ts
CHANGED
|
@@ -1,92 +1,95 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Mostly taken from https://github.com/abalabahaha/eris/blob/master/lib/rest/Endpoints.js
|
|
3
|
+
*
|
|
4
|
+
* Removed User-only endpoints
|
|
5
|
+
*/
|
|
6
|
+
declare const Endpoints: {
|
|
7
|
+
BASE_URL: "/api/v10";
|
|
8
|
+
BASE_HOST: "https://discord.com";
|
|
9
|
+
CDN_URL: "https://cdn.discordapp.com";
|
|
10
|
+
APPLICATION_COMMAND: (appID: string, cmdID: string) => "/applications/:app_id/commands/:cmd_id";
|
|
11
|
+
APPLICATION_COMMANDS: (appID: string) => "/applications/:app_id/commands";
|
|
12
|
+
APPLICATION_GUILD_COMMANDS_PERMISSIONS: (appID: string, guildID: string) => "/applications/:app_id/guilds/:guild_id/commands/permissions";
|
|
13
|
+
APPLICATION_GUILD_COMMAND_PERMISSIONS: (appID: string, guildID: string, cmdID: string) => "/applications/:app_id/guilds/:guild_id/commands/permissions";
|
|
14
|
+
APPLICATION_GUILD_COMMAND: (appID: string, guildID: string, cmdID: string) => "/applications/:app_id/guilds/:guild_id/commands/:cmd_id";
|
|
15
|
+
APPLICATION_GUILD_COMMANDS: (appID: string, guildID: string) => "/applications/:app_id/guilds/:guild_id/commands";
|
|
16
|
+
CHANNEL: (chanID: string) => "/channels/:channel_id";
|
|
17
|
+
CHANNEL_BULK_DELETE: (chanID: string) => "/channels/:channel_id/messages/bulk-delete";
|
|
18
|
+
CHANNEL_INVITES: (chanID: string) => "/channels/:channel_id/invites";
|
|
19
|
+
CHANNEL_MESSAGE: (chanID: string, msgID: string) => "/channels/:channel_id/messages/:message_id";
|
|
20
|
+
CHANNEL_MESSAGE_CROSSPOST: (chanID: string, msgID: string) => "/channels/:channel_id/messages/:message_id/crosspost";
|
|
21
|
+
CHANNEL_MESSAGE_REACTION: (chanID: string, msgID: string, reaction: string) => "/channels/:channel_id/messages/:message_id/reactions/:reaction";
|
|
22
|
+
CHANNEL_MESSAGE_REACTION_USER: (chanID: string, msgID: string, reaction: string, userID: string) => "/channels/:channel_id/messages/:message_id/reactions/:reaction/:user_id";
|
|
23
|
+
CHANNEL_MESSAGE_REACTIONS: (chanID: string, msgID: string) => "/channels/:channel_id/messages/:message_id/reactions";
|
|
24
|
+
CHANNEL_MESSAGE_THREADS: (chanID: string, msgID: string) => "/channels/:channel_id/messages/:message_id/threads";
|
|
25
|
+
CHANNEL_MESSAGES: (chanID: string) => "/channels/:channel_id/messages";
|
|
26
|
+
CHANNEL_PERMISSION: (chanID: string, permID: string) => "/channels/:channel_id/permissions/:perm_id";
|
|
27
|
+
CHANNEL_PERMISSIONS: (chanID: string) => "/channels/:channel_id/permissions";
|
|
28
|
+
CHANNEL_PIN: (chanID: string, msgID: string) => "/channels/:channel_id/pins/:message_id";
|
|
29
|
+
CHANNEL_PINS: (chanID: string) => "/channels/:channel_id/pins";
|
|
30
|
+
CHANNEL_RECIPIENT: (chanID: string, userID: string) => "/channels/:channel_id/recipients/:user_id";
|
|
31
|
+
CHANNEL_THREADS: (chanID: string) => "/channels/:channel_id/threads";
|
|
32
|
+
CHANNEL_THREAD_MEMBER: (chanID: string, memberID: string) => "/channels/:channel_id/thread-members/:member_id";
|
|
33
|
+
CHANNEL_THREAD_MEMBERS: (chanID: string) => "/channels/:channel_id/thread-members";
|
|
34
|
+
CHANNEL_THREADS_ARCHIVED_PRIVATE: (chanID: string) => "/channels/:channel_id/threads/archived/private";
|
|
35
|
+
CHANNEL_THREADS_ARCHIVED_PRIVATE_USER: (chanID: string) => "/channels/:channel_id/users/@me/threads/archived/private";
|
|
36
|
+
CHANNEL_THREADS_ARCHIVED_PUBLIC: (chanID: string) => "/channels/:channel_id/threads/archived/public";
|
|
37
|
+
CHANNEL_TYPING: (chanID: string) => "/channels/:channel_id/typing";
|
|
38
|
+
CHANNEL_WEBHOOKS: (chanID: string) => "/channels/:channel_id/webhooks";
|
|
39
|
+
CHANNELS: "/channels";
|
|
40
|
+
GATEWAY: "/gateway";
|
|
41
|
+
GATEWAY_BOT: "/gateway/bot";
|
|
42
|
+
GUILD: (guildID: string) => "/guilds/:guild_id";
|
|
43
|
+
GUILD_AUDIT_LOGS: (guildID: string) => "/guilds/:guild_id/audit-logs";
|
|
44
|
+
GUILD_BAN: (guildID: string, memberID: string) => "/guilds/:guild_id/bans/:member_id";
|
|
45
|
+
GUILD_BANS: (guildID: string) => "/guilds/:guild_id/bans";
|
|
46
|
+
GUILD_CHANNELS: (guildID: string) => "/guilds/:guild_id/channels";
|
|
47
|
+
GUILD_EMOJI: (guildID: string, emojiID: string) => "/guilds/:guild_id/emojis/:emoji_id";
|
|
48
|
+
GUILD_EMOJIS: (guildID: string) => "/guilds/:guild_id/emojis";
|
|
49
|
+
GUILD_INVITES: (guildID: string) => "/guilds/:guild_id/invites";
|
|
50
|
+
GUILD_INTEGRATION: (guildID: string, integrationID: string) => "/guilds/:guild_id/integrations/:integration_id";
|
|
51
|
+
GUILD_INTEGRATIONS: (guildID: string) => "/guilds/:guild_id/integrations";
|
|
52
|
+
GUILD_MEMBER: (guildID: string, memberID: string) => "/guilds/:guild_id/members/:member_id";
|
|
53
|
+
GUILD_MEMBER_ROLE: (guildID: string, memberID: string, roleID: string) => "/guilds/:guild_id/members/:member_id/roles/:role_id";
|
|
54
|
+
GUILD_MEMBERS: (guildID: string) => "/guilds/:guild_id/members";
|
|
55
|
+
GUILD_MEMBERS_SEARCH: (guildID: string) => "/guilds/:guild_id/members/search";
|
|
56
|
+
GUILD_PREVIEW: (guildID: string) => "/guilds/:guild_id/preview";
|
|
57
|
+
GUILD_PRUNE: (guildID: string) => "/guilds/:guild_id/prune";
|
|
58
|
+
GUILD_ROLE: (guildID: string, roleID: string) => "/guilds/:guild_id/roles/:role_id";
|
|
59
|
+
GUILD_ROLES: (guildID: string) => "/guilds/:guild_id/roles";
|
|
60
|
+
GUILD_SCHEDULED_EVENTS: (guildID: string) => "/guilds/:guild_id/scheduled-events";
|
|
61
|
+
GUILD_SCHEDULED_EVENT: (guildID: string, eventId: string) => "/guilds/:guild_id/scheduled-events/:event_id";
|
|
62
|
+
GUILD_SCHEDULED_EVENT_USERS: (guildID: string, eventId: string) => "/guilds/:guild_id/scheduled-events/:event_id/users";
|
|
63
|
+
GUILD_STICKER: (guildID: string, stickerID: string) => "/guilds/:guild_id/stickers/:sticker_id";
|
|
64
|
+
GUILD_STICKERS: (guildID: string) => "/guilds/:guild_id/stickers";
|
|
65
|
+
GUILD_TEMPLATE: (guildID: string, code: string) => "/guilds/:guild_id/templates/:code";
|
|
66
|
+
GUILD_THREADS_ACTIVE: (guildID: string) => "/guilds/:guild_id/threads/active";
|
|
67
|
+
GUILD_TEMPLATES: (guildID: string) => "/guilds/:guild_id/templates";
|
|
68
|
+
GUILD_VANITY: (guildID: string) => "/guilds/:guild_id/vanity-url";
|
|
69
|
+
GUILD_VOICE_REGIONS: (guildID: string) => "/guilds/:guild_id/regions";
|
|
70
|
+
GUILD_VOICE_STATE_USER: (guildID: string, memberID: string) => "/guilds/:guild_id/voice-states/:member-id";
|
|
71
|
+
GUILD_WEBHOOKS: (guildID: string) => "/guilds/:guild_id/webhooks";
|
|
72
|
+
GUILD_WELCOME_SCREEN: (guildID: string) => "/guilds/:guild_id/welcome-screen";
|
|
73
|
+
GUILD_WIDGET: (guildID: string) => "/guilds/:guild_id/widget.json";
|
|
74
|
+
GUILD_WIDGET_SETTINGS: (guildID: string) => "/guilds/:guild_id/widget";
|
|
75
|
+
GUILDS: "/guilds";
|
|
76
|
+
INTERACTION_CALLBACK: (interactionID: string, token: string) => "/interactions/:interaction_id/:token/callback";
|
|
77
|
+
INVITE: (inviteID: string) => "/invite/:invite_id";
|
|
78
|
+
OAUTH2_APPLICATION: (appID: string) => "/oauth2/applications/:app_id";
|
|
79
|
+
STAGE_INSTANCE_CHANNEL: (chanID: string) => "/stage-instances/:channel_id";
|
|
80
|
+
STAGE_INSTANCES: "/stage-instances";
|
|
81
|
+
STICKER: (stickerID: string) => "/stickers/:sticker_id";
|
|
82
|
+
TEMPLATE: (code: string) => "/guilds/templates/:code";
|
|
83
|
+
USER: (userID: string) => "/users/:user_id";
|
|
84
|
+
USER_CHANNELS: (userID: string) => "/users/:user_id/channels";
|
|
85
|
+
USER_GUILD: (userID: string, guildID: string) => any;
|
|
86
|
+
USER_GUILDS: (userID: string) => "/users/:user_id/guilds";
|
|
87
|
+
USERS: "/users";
|
|
88
|
+
VOICE_REGIONS: "/voice/regions";
|
|
89
|
+
WEBHOOK: (hookID: string) => "/webhooks/:hook_id";
|
|
90
|
+
WEBHOOK_TOKEN: (hookID: string, token: string) => "/webhooks/:hook_id/:token";
|
|
91
|
+
WEBHOOK_TOKEN_GITHUB: (hookID: string, token: string) => "/webhooks/:hook_id/:token/github";
|
|
89
92
|
WEBHOOK_TOKEN_MESSAGE: (hookID: string, token: string, msgID: string) => string;
|
|
90
|
-
WEBHOOK_TOKEN_SLACK: (hookID: string, token: string) =>
|
|
93
|
+
WEBHOOK_TOKEN_SLACK: (hookID: string, token: string) => "/webhooks/:hook_id/:token/slack";
|
|
91
94
|
};
|
|
92
|
-
export =
|
|
95
|
+
export = Endpoints;
|
package/dist/Endpoints.js
CHANGED
|
@@ -2,101 +2,99 @@
|
|
|
2
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
|
+
const Constants_1 = __importDefault(require("./Constants"));
|
|
5
6
|
/**
|
|
6
7
|
* Mostly taken from https://github.com/abalabahaha/eris/blob/master/lib/rest/Endpoints.js
|
|
7
8
|
*
|
|
8
9
|
* Removed User-only endpoints
|
|
9
|
-
* @private
|
|
10
10
|
*/
|
|
11
|
-
const
|
|
12
|
-
module.exports = {
|
|
11
|
+
const Endpoints = {
|
|
13
12
|
BASE_URL: "/api/v" + Constants_1.default.REST_API_VERSION,
|
|
14
13
|
BASE_HOST: "https://discord.com",
|
|
15
14
|
CDN_URL: "https://cdn.discordapp.com",
|
|
16
|
-
APPLICATION_COMMAND: (appID, cmdID) =>
|
|
17
|
-
APPLICATION_COMMAND_PERMISSIONS: (appID, guildID, cmdID) => `/applications/${appID}/guilds/${guildID}/commands/${cmdID}/permissions`,
|
|
15
|
+
APPLICATION_COMMAND: (appID, cmdID) => `${Endpoints.APPLICATION_COMMANDS(appID)}/${cmdID}`,
|
|
18
16
|
APPLICATION_COMMANDS: (appID) => `/applications/${appID}/commands`,
|
|
19
|
-
|
|
17
|
+
APPLICATION_GUILD_COMMANDS_PERMISSIONS: (appID, guildID) => `${Endpoints.APPLICATION_GUILD_COMMANDS(appID, guildID)}/permissions`,
|
|
18
|
+
APPLICATION_GUILD_COMMAND_PERMISSIONS: (appID, guildID, cmdID) => `${Endpoints.APPLICATION_GUILD_COMMAND(appID, guildID, cmdID)}/permissions`,
|
|
19
|
+
APPLICATION_GUILD_COMMAND: (appID, guildID, cmdID) => `${Endpoints.APPLICATION_GUILD_COMMANDS(appID, guildID)}/${cmdID}`,
|
|
20
20
|
APPLICATION_GUILD_COMMANDS: (appID, guildID) => `/applications/${appID}/guilds/${guildID}/commands`,
|
|
21
|
-
CHANNEL: (chanID) =>
|
|
22
|
-
CHANNEL_BULK_DELETE: (chanID) =>
|
|
23
|
-
CHANNEL_INVITES: (chanID) =>
|
|
24
|
-
CHANNEL_MESSAGE: (chanID, msgID) =>
|
|
25
|
-
CHANNEL_MESSAGE_CROSSPOST: (chanID, msgID) =>
|
|
26
|
-
CHANNEL_MESSAGE_REACTION: (chanID, msgID, reaction) =>
|
|
27
|
-
CHANNEL_MESSAGE_REACTION_USER: (chanID, msgID, reaction, userID) =>
|
|
28
|
-
CHANNEL_MESSAGE_REACTIONS: (chanID, msgID) =>
|
|
29
|
-
CHANNEL_MESSAGE_THREADS: (chanID, msgID) =>
|
|
30
|
-
CHANNEL_MESSAGES: (chanID) =>
|
|
31
|
-
CHANNEL_PERMISSION: (chanID,
|
|
32
|
-
CHANNEL_PERMISSIONS: (chanID) =>
|
|
33
|
-
CHANNEL_PIN: (chanID, msgID) =>
|
|
34
|
-
CHANNEL_PINS: (chanID) =>
|
|
35
|
-
CHANNEL_RECIPIENT: (
|
|
36
|
-
CHANNEL_THREADS: (chanID) =>
|
|
37
|
-
CHANNEL_THREAD_MEMBER: (chanID, memberID) =>
|
|
38
|
-
CHANNEL_THREAD_MEMBERS: (chanID) =>
|
|
39
|
-
CHANNEL_THREADS_ARCHIVED_PRIVATE: (chanID) =>
|
|
40
|
-
CHANNEL_THREADS_ARCHIVED_PRIVATE_USER: (chanID) =>
|
|
41
|
-
CHANNEL_THREADS_ARCHIVED_PUBLIC: (chanID) =>
|
|
42
|
-
CHANNEL_TYPING: (chanID) =>
|
|
43
|
-
CHANNEL_WEBHOOKS: (chanID) =>
|
|
21
|
+
CHANNEL: (chanID) => `${Endpoints.CHANNELS}/${chanID}`,
|
|
22
|
+
CHANNEL_BULK_DELETE: (chanID) => `${Endpoints.CHANNEL_MESSAGES(chanID)}/bulk-delete`,
|
|
23
|
+
CHANNEL_INVITES: (chanID) => `${Endpoints.CHANNEL(chanID)}/invites`,
|
|
24
|
+
CHANNEL_MESSAGE: (chanID, msgID) => `${Endpoints.CHANNEL_MESSAGES(chanID)}/${msgID}`,
|
|
25
|
+
CHANNEL_MESSAGE_CROSSPOST: (chanID, msgID) => `${Endpoints.CHANNEL_MESSAGE(chanID, msgID)}/crosspost`,
|
|
26
|
+
CHANNEL_MESSAGE_REACTION: (chanID, msgID, reaction) => `${Endpoints.CHANNEL_MESSAGE_REACTIONS(chanID, msgID)}/${reaction}`,
|
|
27
|
+
CHANNEL_MESSAGE_REACTION_USER: (chanID, msgID, reaction, userID) => `${Endpoints.CHANNEL_MESSAGE_REACTION(chanID, msgID, reaction)}/${userID}`,
|
|
28
|
+
CHANNEL_MESSAGE_REACTIONS: (chanID, msgID) => `${Endpoints.CHANNEL_MESSAGE(chanID, msgID)}/reactions`,
|
|
29
|
+
CHANNEL_MESSAGE_THREADS: (chanID, msgID) => `${Endpoints.CHANNEL_MESSAGE(chanID, msgID)}/threads`,
|
|
30
|
+
CHANNEL_MESSAGES: (chanID) => `${Endpoints.CHANNEL(chanID)}/messages`,
|
|
31
|
+
CHANNEL_PERMISSION: (chanID, permID) => `${Endpoints.CHANNEL_PERMISSIONS(chanID)}/${permID}`,
|
|
32
|
+
CHANNEL_PERMISSIONS: (chanID) => `${Endpoints.CHANNEL(chanID)}/permissions`,
|
|
33
|
+
CHANNEL_PIN: (chanID, msgID) => `${Endpoints.CHANNEL_PINS(chanID)}/${msgID}`,
|
|
34
|
+
CHANNEL_PINS: (chanID) => `${Endpoints.CHANNEL(chanID)}/pins`,
|
|
35
|
+
CHANNEL_RECIPIENT: (chanID, userID) => `${Endpoints.CHANNEL(chanID)}/recipients/${userID}`,
|
|
36
|
+
CHANNEL_THREADS: (chanID) => `${Endpoints.CHANNEL(chanID)}/threads`,
|
|
37
|
+
CHANNEL_THREAD_MEMBER: (chanID, memberID) => `${Endpoints.CHANNEL_THREAD_MEMBERS(chanID)}/${memberID}`,
|
|
38
|
+
CHANNEL_THREAD_MEMBERS: (chanID) => `${Endpoints.CHANNEL(chanID)}/thread-members`,
|
|
39
|
+
CHANNEL_THREADS_ARCHIVED_PRIVATE: (chanID) => `${Endpoints.CHANNEL_THREADS(chanID)}/archived/private`,
|
|
40
|
+
CHANNEL_THREADS_ARCHIVED_PRIVATE_USER: (chanID) => `${Endpoints.CHANNEL(chanID)}/users/@me/threads/archived/private`,
|
|
41
|
+
CHANNEL_THREADS_ARCHIVED_PUBLIC: (chanID) => `${Endpoints.CHANNEL_THREADS(chanID)}/archived/public`,
|
|
42
|
+
CHANNEL_TYPING: (chanID) => `${Endpoints.CHANNEL(chanID)}/typing`,
|
|
43
|
+
CHANNEL_WEBHOOKS: (chanID) => `${Endpoints.CHANNEL(chanID)}/webhooks`,
|
|
44
44
|
CHANNELS: "/channels",
|
|
45
45
|
GATEWAY: "/gateway",
|
|
46
46
|
GATEWAY_BOT: "/gateway/bot",
|
|
47
|
-
GUILD: (guildID) =>
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
GUILD_WIDGET: (guildID) => `/guilds/${guildID}/widget.json`,
|
|
81
|
-
GUILD_WIDGET_IMAGE: (guildID) => `/guilds/${guildID}/widget.png`,
|
|
82
|
-
GUILD_WIDGET_SETTINGS: (guildID) => `/guilds/${guildID}/widget`,
|
|
47
|
+
GUILD: (guildID) => `${Endpoints.GUILDS}/${guildID}`,
|
|
48
|
+
GUILD_AUDIT_LOGS: (guildID) => `${Endpoints.GUILD(guildID)}/audit-logs`,
|
|
49
|
+
GUILD_BAN: (guildID, memberID) => `${Endpoints.GUILD_BANS(guildID)}/${memberID}`,
|
|
50
|
+
GUILD_BANS: (guildID) => `${Endpoints.GUILD(guildID)}/bans`,
|
|
51
|
+
GUILD_CHANNELS: (guildID) => `${Endpoints.GUILD(guildID)}/channels`,
|
|
52
|
+
GUILD_EMOJI: (guildID, emojiID) => `${Endpoints.GUILD_EMOJIS(guildID)}/${emojiID}`,
|
|
53
|
+
GUILD_EMOJIS: (guildID) => `${Endpoints.GUILD(guildID)}/emojis`,
|
|
54
|
+
GUILD_INVITES: (guildID) => `${Endpoints.GUILD(guildID)}/invites`,
|
|
55
|
+
GUILD_INTEGRATION: (guildID, integrationID) => `${Endpoints.GUILD_INTEGRATIONS(guildID)}/${integrationID}`,
|
|
56
|
+
GUILD_INTEGRATIONS: (guildID) => `${Endpoints.GUILD(guildID)}/integrations`,
|
|
57
|
+
GUILD_MEMBER: (guildID, memberID) => `${Endpoints.GUILD_MEMBERS(guildID)}/${memberID}`,
|
|
58
|
+
GUILD_MEMBER_ROLE: (guildID, memberID, roleID) => `${Endpoints.GUILD_MEMBER(guildID, memberID)}/roles/${roleID}`,
|
|
59
|
+
GUILD_MEMBERS: (guildID) => `${Endpoints.GUILD(guildID)}/members`,
|
|
60
|
+
GUILD_MEMBERS_SEARCH: (guildID) => `${Endpoints.GUILD_MEMBERS(guildID)}/search`,
|
|
61
|
+
GUILD_PREVIEW: (guildID) => `${Endpoints.GUILD(guildID)}/preview`,
|
|
62
|
+
GUILD_PRUNE: (guildID) => `${Endpoints.GUILD(guildID)}/prune`,
|
|
63
|
+
GUILD_ROLE: (guildID, roleID) => `${Endpoints.GUILD_ROLES(guildID)}/${roleID}`,
|
|
64
|
+
GUILD_ROLES: (guildID) => `${Endpoints.GUILD(guildID)}/roles`,
|
|
65
|
+
GUILD_SCHEDULED_EVENTS: (guildID) => `${Endpoints.GUILD(guildID)}/scheduled-events`,
|
|
66
|
+
GUILD_SCHEDULED_EVENT: (guildID, eventId) => `${Endpoints.GUILD_SCHEDULED_EVENTS(guildID)}/${eventId}`,
|
|
67
|
+
GUILD_SCHEDULED_EVENT_USERS: (guildID, eventId) => `${Endpoints.GUILD_SCHEDULED_EVENT(guildID, eventId)}/users`,
|
|
68
|
+
GUILD_STICKER: (guildID, stickerID) => `${Endpoints.GUILD_STICKERS(guildID)}/${stickerID}`,
|
|
69
|
+
GUILD_STICKERS: (guildID) => `${Endpoints.GUILD(guildID)}/stickers`,
|
|
70
|
+
GUILD_TEMPLATE: (guildID, code) => `${Endpoints.GUILD_TEMPLATES(guildID)}/${code}`,
|
|
71
|
+
GUILD_THREADS_ACTIVE: (guildID) => `${Endpoints.GUILD(guildID)}/threads/active`,
|
|
72
|
+
GUILD_TEMPLATES: (guildID) => `${Endpoints.GUILD(guildID)}/templates`,
|
|
73
|
+
GUILD_VANITY: (guildID) => `${Endpoints.GUILD(guildID)}/vanity-url`,
|
|
74
|
+
GUILD_VOICE_REGIONS: (guildID) => `${Endpoints.GUILD(guildID)}/regions`,
|
|
75
|
+
GUILD_VOICE_STATE_USER: (guildID, memberID) => `${Endpoints.GUILD(guildID)}/voice-states/${memberID}`,
|
|
76
|
+
GUILD_WEBHOOKS: (guildID) => `${Endpoints.GUILD(guildID)}/webhooks`,
|
|
77
|
+
GUILD_WELCOME_SCREEN: (guildID) => `${Endpoints.GUILD(guildID)}/welcome-screen`,
|
|
78
|
+
GUILD_WIDGET: (guildID) => `${Endpoints.GUILD(guildID)}/widget.json`,
|
|
79
|
+
GUILD_WIDGET_SETTINGS: (guildID) => `${Endpoints.GUILD(guildID)}/widget`,
|
|
83
80
|
GUILDS: "/guilds",
|
|
84
81
|
INTERACTION_CALLBACK: (interactionID, token) => `/interactions/${interactionID}/${token}/callback`,
|
|
85
82
|
INVITE: (inviteID) => `/invite/${inviteID}`,
|
|
86
83
|
OAUTH2_APPLICATION: (appID) => `/oauth2/applications/${appID}`,
|
|
87
|
-
STAGE_INSTANCE_CHANNEL: (chanID) =>
|
|
84
|
+
STAGE_INSTANCE_CHANNEL: (chanID) => `${Endpoints.STAGE_INSTANCES}/${chanID}`,
|
|
88
85
|
STAGE_INSTANCES: "/stage-instances",
|
|
89
86
|
STICKER: (stickerID) => `/stickers/${stickerID}`,
|
|
90
87
|
TEMPLATE: (code) => `/guilds/templates/${code}`,
|
|
91
|
-
USER: (userID) =>
|
|
92
|
-
USER_CHANNELS: (userID) =>
|
|
93
|
-
USER_GUILD: (userID, guildID) =>
|
|
94
|
-
USER_GUILDS: (userID) =>
|
|
88
|
+
USER: (userID) => `${Endpoints.USERS}/${userID}`,
|
|
89
|
+
USER_CHANNELS: (userID) => `${Endpoints.USER(userID)}/channels`,
|
|
90
|
+
USER_GUILD: (userID, guildID) => `${Endpoints.USER_GUILDS(userID)}/${guildID}`,
|
|
91
|
+
USER_GUILDS: (userID) => `${Endpoints.USER(userID)}/guilds`,
|
|
95
92
|
USERS: "/users",
|
|
96
93
|
VOICE_REGIONS: "/voice/regions",
|
|
97
94
|
WEBHOOK: (hookID) => `/webhooks/${hookID}`,
|
|
98
|
-
WEBHOOK_TOKEN: (hookID, token) =>
|
|
99
|
-
WEBHOOK_TOKEN_GITHUB: (hookID, token) =>
|
|
95
|
+
WEBHOOK_TOKEN: (hookID, token) => `${Endpoints.WEBHOOK(hookID)}/${token}`,
|
|
96
|
+
WEBHOOK_TOKEN_GITHUB: (hookID, token) => `${Endpoints.WEBHOOK_TOKEN(hookID, token)}/github`,
|
|
100
97
|
WEBHOOK_TOKEN_MESSAGE: (hookID, token, msgID) => `/webhooks/${hookID}/${token}/messages/${msgID}`,
|
|
101
|
-
WEBHOOK_TOKEN_SLACK: (hookID, token) =>
|
|
98
|
+
WEBHOOK_TOKEN_SLACK: (hookID, token) => `${Endpoints.WEBHOOK_TOKEN(hookID, token)}/slack`,
|
|
102
99
|
};
|
|
100
|
+
module.exports = Endpoints;
|
package/dist/Ratelimiter.js
CHANGED
|
@@ -32,9 +32,7 @@ class Ratelimiter {
|
|
|
32
32
|
}
|
|
33
33
|
};
|
|
34
34
|
this._timeoutDuration = 1000;
|
|
35
|
-
this._timeout = setInterval(() => {
|
|
36
|
-
limiter._timeoutFN();
|
|
37
|
-
}, limiter._timeoutDuration);
|
|
35
|
+
this._timeout = setInterval(() => { limiter._timeoutFN(); }, limiter._timeoutDuration);
|
|
38
36
|
}
|
|
39
37
|
/**
|
|
40
38
|
* Returns a key for saving ratelimits for routes
|
|
@@ -47,9 +45,8 @@ class Ratelimiter {
|
|
|
47
45
|
let route = url.replace(/\/([a-z-]+)\/(?:\d+)/g, function (match, p) {
|
|
48
46
|
return p === "channels" || p === "guilds" || p === "webhooks" ? match : `/${p}/:id`;
|
|
49
47
|
}).replace(/\/reactions\/[^/]+/g, "/reactions/:id").replace(/^\/webhooks\/(\d+)\/[A-Za-z0-9-_]{64,}/, "/webhooks/$1/:token");
|
|
50
|
-
if (method.toUpperCase() === "DELETE" && route.endsWith("/messages/:id"))
|
|
51
|
-
route = method + route;
|
|
52
|
-
}
|
|
48
|
+
if (method.toUpperCase() === "DELETE" && route.endsWith("/messages/:id"))
|
|
49
|
+
route = method + route; // Delete Messsage endpoint has its own ratelimit
|
|
53
50
|
return route;
|
|
54
51
|
}
|
|
55
52
|
/**
|
|
@@ -60,9 +57,8 @@ class Ratelimiter {
|
|
|
60
57
|
*/
|
|
61
58
|
queue(fn, url, method) {
|
|
62
59
|
const routeKey = this.routify(url, method);
|
|
63
|
-
if (!this.buckets[routeKey])
|
|
60
|
+
if (!this.buckets[routeKey])
|
|
64
61
|
this.buckets[routeKey] = new LocalBucket_1.default(this);
|
|
65
|
-
}
|
|
66
62
|
this.buckets[routeKey].queue(fn);
|
|
67
63
|
}
|
|
68
64
|
}
|
package/dist/RequestHandler.d.ts
CHANGED
|
@@ -51,7 +51,7 @@ declare class RequestHandler extends EventEmitter {
|
|
|
51
51
|
baseHost: string;
|
|
52
52
|
baseURL: string;
|
|
53
53
|
headers: {
|
|
54
|
-
Authorization
|
|
54
|
+
Authorization?: string;
|
|
55
55
|
"User-Agent": string;
|
|
56
56
|
};
|
|
57
57
|
};
|
|
@@ -64,7 +64,7 @@ declare class RequestHandler extends EventEmitter {
|
|
|
64
64
|
* @param options options
|
|
65
65
|
*/
|
|
66
66
|
constructor(ratelimiter: import("./Ratelimiter"), options: {
|
|
67
|
-
token
|
|
67
|
+
token?: string;
|
|
68
68
|
baseHost: string;
|
|
69
69
|
});
|
|
70
70
|
/**
|
package/dist/RequestHandler.js
CHANGED
|
@@ -28,18 +28,14 @@ class DiscordAPIError extends Error {
|
|
|
28
28
|
if (k === "message")
|
|
29
29
|
continue;
|
|
30
30
|
const newKey = key ? (isNaN(Number(k)) ? `${key}.${k}` : `${key}[${k}]`) : k;
|
|
31
|
-
if (v._errors)
|
|
31
|
+
if (v._errors)
|
|
32
32
|
messages.push(`${newKey}: ${v._errors.map(e => e.message).join(" ")}`);
|
|
33
|
-
|
|
34
|
-
else if (v.code || v.message) {
|
|
33
|
+
else if (v.code || v.message)
|
|
35
34
|
messages.push(`${v.code ? `${v.code}: ` : ""}${v.message}`.trim());
|
|
36
|
-
|
|
37
|
-
else if (typeof v === "string") {
|
|
35
|
+
else if (typeof v === "string")
|
|
38
36
|
messages.push(v);
|
|
39
|
-
|
|
40
|
-
else {
|
|
37
|
+
else
|
|
41
38
|
messages = messages.concat(this.flattenErrors(v, newKey));
|
|
42
|
-
}
|
|
43
39
|
}
|
|
44
40
|
return messages;
|
|
45
41
|
}
|
|
@@ -60,11 +56,12 @@ class RequestHandler extends events_1.EventEmitter {
|
|
|
60
56
|
baseHost: Endpoints_1.default.BASE_HOST,
|
|
61
57
|
baseURL: Endpoints_1.default.BASE_URL,
|
|
62
58
|
headers: {
|
|
63
|
-
|
|
64
|
-
"User-Agent": `DiscordBot (https://github.com/DasWolke/SnowTransfer, ${version})`
|
|
59
|
+
"User-Agent": `Discordbot (https://github.com/DasWolke/SnowTransfer, ${version}) Node.js/${process.version}`
|
|
65
60
|
}
|
|
66
61
|
};
|
|
67
|
-
|
|
62
|
+
if (options.token)
|
|
63
|
+
this.options.headers.Authorization = options.token;
|
|
64
|
+
this.options.baseHost = options.baseHost;
|
|
68
65
|
this.apiURL = this.options.baseHost + Endpoints_1.default.BASE_URL;
|
|
69
66
|
this.latency = 500;
|
|
70
67
|
}
|
|
@@ -88,12 +85,10 @@ class RequestHandler extends events_1.EventEmitter {
|
|
|
88
85
|
try {
|
|
89
86
|
this.emit("request", reqID, { endpoint, method, dataType, data });
|
|
90
87
|
let request;
|
|
91
|
-
if (dataType == "json")
|
|
88
|
+
if (dataType == "json")
|
|
92
89
|
request = await this._request(endpoint, method, data, (method === "get" || endpoint.includes("/bans") || endpoint.includes("/prune")), amount);
|
|
93
|
-
|
|
94
|
-
else if (dataType == "multipart") {
|
|
90
|
+
else if (dataType == "multipart")
|
|
95
91
|
request = await this._multiPartRequest(endpoint, method, data, amount);
|
|
96
|
-
}
|
|
97
92
|
else {
|
|
98
93
|
const e = new Error("Forbidden dataType. Use json or multipart");
|
|
99
94
|
e.stack = stack;
|
|
@@ -123,9 +118,8 @@ class RequestHandler extends events_1.EventEmitter {
|
|
|
123
118
|
}
|
|
124
119
|
return res(b);
|
|
125
120
|
}
|
|
126
|
-
else
|
|
121
|
+
else
|
|
127
122
|
return res(undefined);
|
|
128
|
-
}
|
|
129
123
|
}
|
|
130
124
|
catch (error) {
|
|
131
125
|
if (error && error.stack)
|
|
@@ -151,15 +145,12 @@ class RequestHandler extends events_1.EventEmitter {
|
|
|
151
145
|
if (bkt.remaining === 0)
|
|
152
146
|
bkt.resetAt = Date.now() + bkt.reset;
|
|
153
147
|
}
|
|
154
|
-
else
|
|
148
|
+
else
|
|
155
149
|
bkt.remaining = 1;
|
|
156
|
-
|
|
157
|
-
if (headers["x-ratelimit-limit"]) {
|
|
150
|
+
if (headers["x-ratelimit-limit"])
|
|
158
151
|
bkt.limit = parseInt(headers["x-ratelimit-limit"]);
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
bkt.resetAt = Date.now() + (parseInt(headers["retry-after"]) * 1000); // retry-after is in seconds.
|
|
162
|
-
}
|
|
152
|
+
if (headers["retry-after"] && !headers["x-ratelimit-global"])
|
|
153
|
+
bkt.resetAt = Date.now() + (parseInt(headers["retry-after"]) * 1000); // The ms precision is not strictly necessary. It always rounds up, which is safe.
|
|
163
154
|
}
|
|
164
155
|
/**
|
|
165
156
|
* Execute a normal json request
|
|
@@ -178,9 +169,8 @@ class RequestHandler extends events_1.EventEmitter {
|
|
|
178
169
|
delete data.reason;
|
|
179
170
|
}
|
|
180
171
|
const req = (0, centra_1.default)(this.apiURL, method).path(endpoint).header({ ...this.options.headers, ...headers });
|
|
181
|
-
if (useParams)
|
|
172
|
+
if (useParams)
|
|
182
173
|
return req.query(data).send();
|
|
183
|
-
}
|
|
184
174
|
else {
|
|
185
175
|
if (data && typeof data === "object")
|
|
186
176
|
req.body(data, "json");
|
package/dist/SnowTransfer.d.ts
CHANGED
|
@@ -24,7 +24,7 @@ declare class SnowTransfer {
|
|
|
24
24
|
};
|
|
25
25
|
useRedis: boolean;
|
|
26
26
|
};
|
|
27
|
-
token: string;
|
|
27
|
+
token: string | undefined;
|
|
28
28
|
channel: ChannelMethods;
|
|
29
29
|
requestHandler: RequestHandler;
|
|
30
30
|
user: UserMethods;
|
|
@@ -45,7 +45,7 @@ declare class SnowTransfer {
|
|
|
45
45
|
* @param token Discord Bot token to use
|
|
46
46
|
* @param options options
|
|
47
47
|
*/
|
|
48
|
-
constructor(token
|
|
48
|
+
constructor(token?: string, options?: {
|
|
49
49
|
baseHost?: string;
|
|
50
50
|
disableEveryone?: boolean;
|
|
51
51
|
});
|
package/dist/SnowTransfer.js
CHANGED
|
@@ -26,20 +26,15 @@ class SnowTransfer {
|
|
|
26
26
|
* @param options options
|
|
27
27
|
*/
|
|
28
28
|
constructor(token, options) {
|
|
29
|
-
if (
|
|
29
|
+
if (typeof token === "string" && token === "")
|
|
30
30
|
throw new Error("Missing token");
|
|
31
|
-
|
|
32
|
-
if (!token.startsWith("Bot")) {
|
|
31
|
+
if (token && !token.startsWith("Bot"))
|
|
33
32
|
token = `Bot ${token}`;
|
|
34
|
-
}
|
|
35
33
|
this.options = { baseHost: Endpoints_1.default.BASE_HOST, disableEveryone: false, sentryOptions: { extra: { snowtransferVersion: version } }, useRedis: false };
|
|
36
34
|
this.token = token;
|
|
37
35
|
Object.assign(this.options, options);
|
|
38
36
|
this.ratelimiter = new Ratelimiter_1.default();
|
|
39
|
-
this.requestHandler = new RequestHandler_1.default(this.ratelimiter, {
|
|
40
|
-
token: this.token,
|
|
41
|
-
baseHost: this.options.baseHost || Endpoints_1.default.BASE_HOST
|
|
42
|
-
});
|
|
37
|
+
this.requestHandler = new RequestHandler_1.default(this.ratelimiter, { token: this.token, baseHost: this.options.baseHost || Endpoints_1.default.BASE_HOST });
|
|
43
38
|
this.channel = new Channels_1.default(this.requestHandler, this.options.disableEveryone);
|
|
44
39
|
this.user = new Users_1.default(this.requestHandler);
|
|
45
40
|
this.guildAssets = new GuildAssets_1.default(this.requestHandler);
|
|
@@ -22,24 +22,9 @@ declare class AuditLogMethods {
|
|
|
22
22
|
* |--------------------|-----------|
|
|
23
23
|
* | VIEW_AUDIT_LOG | always |
|
|
24
24
|
*/
|
|
25
|
-
getAuditLog(guildId: string, data?:
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
* Filter the audit log with the id of a user
|
|
30
|
-
*/
|
|
31
|
-
user_id?: string;
|
|
32
|
-
/**
|
|
33
|
-
* [Type](https://discord.com/developers/docs/resources/audit-log#audit-log-entry-object-audit-log-events) of the audit log event
|
|
34
|
-
*/
|
|
35
|
-
action_type?: import("discord-typings").AuditLogEventType;
|
|
36
|
-
/**
|
|
37
|
-
* Filter the audit log before a certain entry id
|
|
38
|
-
*/
|
|
39
|
-
before?: string;
|
|
40
|
-
/**
|
|
41
|
-
* How many entries are returned (min 1, max 100)
|
|
42
|
-
*/
|
|
43
|
-
limit: number;
|
|
25
|
+
getAuditLog(guildId: string, data?: Partial<Pick<import("discord-typings").AuditLogEntry, "user_id" | "action_type"> & {
|
|
26
|
+
before: import("discord-typings").Snowflake;
|
|
27
|
+
limit: number;
|
|
28
|
+
}>): Promise<import("discord-typings").AuditLog>;
|
|
44
29
|
}
|
|
45
30
|
export = AuditLogMethods;
|