2020-10-22 03:36:31 +00:00
|
|
|
//Written by Choi Donghan, Catry
|
2020-10-21 16:30:42 +00:00
|
|
|
|
|
|
|
import {
|
|
|
|
DISCORD_API_URL,
|
|
|
|
DISCORD_API_VERSION,
|
2020-10-22 06:48:43 +00:00
|
|
|
DISCORD_CDN_URL
|
|
|
|
} from "../consts/urlsAndVersions"
|
2020-10-21 16:30:42 +00:00
|
|
|
|
|
|
|
//Guild Endpoints
|
2020-10-22 06:48:43 +00:00
|
|
|
const GUILDS = `${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds`
|
2020-10-21 16:30:42 +00:00
|
|
|
const GUILD = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}`
|
2020-10-21 16:30:42 +00:00
|
|
|
const GUILD_AUDIT_LOGS = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/audit-logs`
|
2020-10-21 16:30:42 +00:00
|
|
|
const GUILD_WIDGET = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/widget`
|
2020-10-21 16:30:42 +00:00
|
|
|
const GUILD_EMOJI = (guildID: string, emoji_id: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/emojis/${emoji_id}`
|
2020-10-21 16:30:42 +00:00
|
|
|
const GUILD_ROLE = (guildID: string, roleID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/roles/${roleID}`
|
2020-10-21 16:30:42 +00:00
|
|
|
const GUILD_ROLES = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/roles`
|
2020-10-21 16:30:42 +00:00
|
|
|
const GUILD_INTEGRATION = (guildID: string, integrationID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/integrations/${integrationID}`
|
2020-10-21 16:30:42 +00:00
|
|
|
const GUILD_INTEGRATIONS = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/integrations`
|
2020-10-21 16:30:42 +00:00
|
|
|
const GUILD_INTEGARTION_SYNC = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/integrations?include_appilications=true`
|
2020-10-22 03:11:50 +00:00
|
|
|
const GUILD_BAN = (guildID: string, userID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/bans/${userID}`
|
2020-10-22 03:11:50 +00:00
|
|
|
const GUILD_BANS = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/bans`
|
2020-10-22 03:11:50 +00:00
|
|
|
const GUILD_CHANNEL = (channelID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}`
|
2020-10-22 03:11:50 +00:00
|
|
|
const GUILD_CHANNELS = (guildID: string, channelID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/channels`
|
2020-10-22 03:11:50 +00:00
|
|
|
const GUILD_MEMBER = (guildID: string, memberID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/members/${memberID}`
|
2020-10-22 06:10:51 +00:00
|
|
|
const GUILD_MEMBERS = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/members`
|
2020-10-22 03:11:50 +00:00
|
|
|
const GUILD_MEMBER_ROLE = (guildID: string, memberID: string, roleID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/members/${memberID}/roles/${roleID}`
|
2020-10-22 06:10:51 +00:00
|
|
|
const GUILD_INVITES = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/invites`
|
2020-10-22 03:11:50 +00:00
|
|
|
const GUILD_LEAVE = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/users/@me/guilds/${guildID}`
|
2020-10-22 03:11:50 +00:00
|
|
|
const GUILD_PRUNE = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/prune`
|
2020-10-22 06:10:51 +00:00
|
|
|
const GUILD_VANITY_URL = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/vanity-url`
|
2020-10-22 06:10:51 +00:00
|
|
|
const GUILD_NICK = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/members/@me/nick`
|
2020-10-22 06:10:51 +00:00
|
|
|
const GUILD_WIDGET_IMAGE = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/widget.png`
|
2020-10-22 06:10:51 +00:00
|
|
|
const GUILD_PREVIEW = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/preview`
|
2020-10-21 16:30:42 +00:00
|
|
|
|
|
|
|
//Channel Endpoints
|
|
|
|
const CHANNEL = (channelID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}`
|
2020-10-21 16:30:42 +00:00
|
|
|
const CHANNELS = (channelID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${channelID}/channels`
|
2020-10-21 16:30:42 +00:00
|
|
|
const CHANNEL_MESSAGES = (channelID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/messages`
|
2020-10-21 16:30:42 +00:00
|
|
|
const CHANNEL_MESSAGE = (channelID: string, messageID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/messages/${messageID}`
|
2020-10-21 16:30:42 +00:00
|
|
|
const CHANNEL_CROSSPOST = (channelID: string, messageID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/messages/${messageID}/crosspost`
|
2020-10-22 00:17:29 +00:00
|
|
|
const MESSAGE_REACTIONS = (channelID: string, messageID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/messages/${messageID}/reactions`
|
2020-10-22 06:10:51 +00:00
|
|
|
const MESSAGE_REACTION = (
|
|
|
|
channelID: string,
|
|
|
|
messageID: string,
|
|
|
|
emoji: string,
|
|
|
|
) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/messages/${messageID}/reactions/${emoji}`
|
2020-10-22 06:10:51 +00:00
|
|
|
const MESSAGE_REACTION_ME = (
|
|
|
|
channelID: string,
|
|
|
|
messageID: string,
|
|
|
|
emojiID: string,
|
|
|
|
) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/messages/${messageID}/reactions/${emojiID}/@me`
|
2020-10-22 06:10:51 +00:00
|
|
|
const MESSAGE_REACTION_USER = (
|
|
|
|
channelID: string,
|
|
|
|
messageID: string,
|
|
|
|
emojiID: string,
|
|
|
|
userID: string,
|
|
|
|
) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/messages/${messageID}/reactions/${emojiID}/${userID}`
|
2020-10-22 00:27:57 +00:00
|
|
|
const CHANNEL_BULK_DELETE = (channelID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/messages/bulk-delete`
|
2020-10-22 00:27:57 +00:00
|
|
|
const CHANNEL_FOLLOW = (channelID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/followers`
|
2020-10-22 00:27:57 +00:00
|
|
|
const CHANNEL_INVITES = (channelID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/invites`
|
2020-10-22 06:10:51 +00:00
|
|
|
const CHANNEL_PIN = (channelID: string, messageID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/pins/${messageID}`
|
2020-10-22 06:10:51 +00:00
|
|
|
const CHANNEL_PINS = (channelID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/pins`
|
2020-10-22 06:10:51 +00:00
|
|
|
const CHANNEL_PERMISSION = (channelID: string, overrideID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/permissions/${overrideID}`
|
2020-10-22 06:10:51 +00:00
|
|
|
const CHANNEL_TYPING = (channelID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/typing`
|
2020-10-22 06:10:51 +00:00
|
|
|
const GROUP_RECIPIENT = (channelID: string, userID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/recipient/${userID}`
|
2020-10-21 16:30:42 +00:00
|
|
|
|
|
|
|
//User Endpoints
|
2020-10-22 06:48:43 +00:00
|
|
|
const CURRENT_USER = `${DISCORD_API_URL}/v${DISCORD_API_VERSION}/users/@me`
|
2020-10-22 06:10:51 +00:00
|
|
|
const CURRENT_USER_GUILDS =
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/users/@me/guilds`
|
|
|
|
const USER_DM = `${DISCORD_API_URL}/v${DISCORD_API_VERSION}/users/@me/channels`
|
2020-10-22 06:10:51 +00:00
|
|
|
const USER_CONNECTIONS =
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/users/@me/connections`
|
2020-10-22 03:36:31 +00:00
|
|
|
const LEAVE_GUILD = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/users/@me/guilds/${guildID}`
|
2020-10-21 16:30:42 +00:00
|
|
|
const USER = (userID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/users/${userID}`
|
2020-10-21 16:57:03 +00:00
|
|
|
|
2020-10-22 03:11:50 +00:00
|
|
|
//Webhook Endpoints
|
2020-10-22 03:36:31 +00:00
|
|
|
const CHANNEL_WEBHOOKS = (channelID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/channels/${channelID}/webhooks`
|
2020-10-22 03:36:31 +00:00
|
|
|
const GUILD_WEBHOOK = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/webhooks`
|
2020-10-22 03:36:31 +00:00
|
|
|
const WEBHOOK = (webhookID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/webhooks/${webhookID}`
|
2020-10-22 03:36:31 +00:00
|
|
|
const WEBHOOK_WITH_TOKEN = (webhookID: string, webhookTOKEN: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/webhooks/${webhookID}/${webhookTOKEN}`
|
2020-10-22 03:36:31 +00:00
|
|
|
const SLACK_WEBHOOK = (webhookID: string, webhookTOKEN: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/webhooks/${webhookID}/${webhookTOKEN}/slack`
|
2020-10-22 03:36:31 +00:00
|
|
|
const GITHUB_WEBHOOK = (webhookID: string, webhookTOKEN: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/webhooks/${webhookID}/${webhookTOKEN}/github`
|
2020-10-22 03:36:31 +00:00
|
|
|
|
|
|
|
//Gateway Endpoints
|
2020-10-22 06:48:43 +00:00
|
|
|
const GATEWAY = `${DISCORD_API_URL}/v${DISCORD_API_VERSION}/gateway`
|
|
|
|
const GATEWAY_BOT = `${DISCORD_API_URL}/v${DISCORD_API_VERSION}/gateway/bot`
|
2020-10-22 03:11:50 +00:00
|
|
|
|
2020-10-21 16:57:03 +00:00
|
|
|
//CDN Endpoints
|
2020-10-22 06:10:51 +00:00
|
|
|
const CUSTOM_EMOJI = (emojiID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_CDN_URL}/emojis/${emojiID}.png`
|
2020-10-21 16:57:03 +00:00
|
|
|
const GUILD_ICON = (guildID: string, iconID: number) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_CDN_URL}/icons/${guildID}/${iconID}.png`
|
2020-10-21 16:57:03 +00:00
|
|
|
const GUILD_SPLASH = (guildID: string, guildSPLASH: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_CDN_URL}/splashes/${guildID}/${guildSPLASH}.png`
|
2020-10-22 06:10:51 +00:00
|
|
|
const GUILD_DISCOVERY_SPLASH = (
|
|
|
|
guildID: string,
|
|
|
|
guildDiscoverySplash: string,
|
|
|
|
) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_CDN_URL}/discovery-splashes/${guildID}/${guildDiscoverySplash}.png `
|
2020-10-21 16:57:03 +00:00
|
|
|
const GUILD_BANNER = (guildID: string, guildBANNER: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_CDN_URL}/banners/${guildID}/${guildBANNER}.png`
|
2020-10-21 16:57:03 +00:00
|
|
|
const DEFAULT_USER_AVATAR = (iconID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_CDN_URL}/embed/avatars/${iconID}.png`
|
2020-10-21 16:57:03 +00:00
|
|
|
const USER_AVATAR = (userID: string, iconID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_CDN_URL}/avatars/${userID}/${iconID}.png`
|
2020-10-21 16:57:03 +00:00
|
|
|
const APPLICATION_ASSET = (applicationID: string, assetID: number) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_CDN_URL}/app-icons/${applicationID}/${assetID}.png`
|
2020-10-22 06:10:51 +00:00
|
|
|
const ACHIEVEMENT_ICON = (
|
|
|
|
applicationID: string,
|
|
|
|
achievementID: string,
|
|
|
|
iconHASH: string,
|
|
|
|
) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_CDN_URL}/app-assets/${applicationID}/achievements/${achievementID}/icons/${iconHASH}.png`
|
2020-10-21 16:57:03 +00:00
|
|
|
const TEAM_ICON = (teamID: string, iconID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_CDN_URL}/team-icons/${teamID}/${iconID}.png`
|
2020-10-22 00:05:23 +00:00
|
|
|
|
2020-10-22 00:11:46 +00:00
|
|
|
//Emoji Endpoints
|
|
|
|
const EMOJI = (guildID: string, emojiID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/emojis/${emojiID}`
|
2020-10-22 00:11:46 +00:00
|
|
|
const EMOJIS = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/emojis`
|
2020-10-22 00:11:46 +00:00
|
|
|
|
|
|
|
//Template Endpoint
|
|
|
|
const TEMPLATE = (templateCODE: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/templates/${templateCODE}`
|
2020-10-22 00:11:46 +00:00
|
|
|
|
|
|
|
//Invite Endpoint
|
|
|
|
const INVITE = (inviteCODE: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/invites/${inviteCODE}`
|
2020-10-22 00:11:46 +00:00
|
|
|
|
2020-10-22 00:05:23 +00:00
|
|
|
//Voice Endpoint
|
2020-10-22 06:10:51 +00:00
|
|
|
const VOICE_REGIONS = (guildID: string) =>
|
2020-10-22 06:48:43 +00:00
|
|
|
`${DISCORD_API_URL}/v${DISCORD_API_VERSION}/guilds/${guildID}/regions`
|