From 5d71cb5a1cdfc5c7fb994f6fcc94ca76c5357e0d Mon Sep 17 00:00:00 2001 From: Tricked <72335827+SkyBlockDev@users.noreply.github.com> Date: Mon, 20 Dec 2021 19:19:36 +0100 Subject: [PATCH 1/4] fix(rest): improve errors --- src/rest/runMethod.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/rest/runMethod.ts b/src/rest/runMethod.ts index c589fe203..33883f4a1 100644 --- a/src/rest/runMethod.ts +++ b/src/rest/runMethod.ts @@ -44,8 +44,8 @@ export async function runMethod( { url, method, - reject: (error) => { - console.error(error); + reject: (error: unknown) => { + errorStack.message = (error as Error)?.message; reject(errorStack); }, respond: (data: { status: number; body?: string }) => From cc95342b6d0809d073c335a1e8c9697573c47526 Mon Sep 17 00:00:00 2001 From: lts20050703 <87189679+lts20050703@users.noreply.github.com> Date: Thu, 23 Dec 2021 13:52:54 +0700 Subject: [PATCH 2/4] #1862 Fix member transformer, interface Fix member transformer in src/transformers/message.ts Fix message interface in src/types/messages/message.ts Export * from stickers. --- src/transformers/message.ts | 4 ++-- src/types/messages/message.ts | 8 ++++---- src/types/messages/mod.ts | 2 -- src/types/mod.ts | 1 + src/types/stickers/mod.ts | 5 +++++ 5 files changed, 12 insertions(+), 8 deletions(-) create mode 100644 src/types/stickers/mod.ts diff --git a/src/transformers/message.ts b/src/transformers/message.ts index 3b22d8b9d..b15d19e48 100644 --- a/src/transformers/message.ts +++ b/src/transformers/message.ts @@ -3,7 +3,7 @@ import { Message } from "../types/messages/message.ts"; import { CHANNEL_MENTION_REGEX } from "../util/constants.ts"; import { SnakeCasedPropertiesDeep } from "../types/util.ts"; import { DiscordenoAttachment } from "./attachment.ts"; -import { MessageStickerFormatTypes } from "../types/messages/messageStickerFormatTypes.ts"; +import { StickerFormatTypes } from "../types/stickers/stickerFormatTypes.ts"; import { DiscordenoMember, DiscordenoUser } from "./member.ts"; import { DiscordenoEmbed } from "./embed.ts"; import { MessageTypes } from "../types/messages/messageTypes.ts"; @@ -147,7 +147,7 @@ export interface DiscordenoMessage { /** Name of the sticker */ name: string; /** Type of sticker format */ - formatType: MessageStickerFormatTypes; + formatType: StickerFormatTypes; }[]; /** diff --git a/src/types/messages/message.ts b/src/types/messages/message.ts index 64cca34b3..062cba4d4 100644 --- a/src/types/messages/message.ts +++ b/src/types/messages/message.ts @@ -10,10 +10,10 @@ import { Attachment } from "./attachment.ts"; import { MessageComponents } from "./components/messageComponents.ts"; import { MessageActivity } from "./messageActivity.ts"; import { MessageReference } from "./messageReference.ts"; -import { MessageSticker } from "./messageSticker.ts"; +import { Sticker } from "../stickers/sticker.ts"; import { MessageTypes } from "./messageTypes.ts"; import { Reaction } from "./reaction.ts"; -import { MessageStickerItem } from "./messageStickerItem.ts"; +import { StickerItem } from "../stickers/stickerItem.ts"; /** https://discord.com/developers/docs/resources/channel#message-object */ export interface Message { @@ -83,7 +83,7 @@ export interface Message { * The stickers sent with the message (bots currently can only receive messages with stickers, not send) * @deprecated */ - stickers?: MessageSticker[]; + stickers?: Sticker[]; /** * The message associated with the `message_reference` * Note: This field is only returned for messages with a `type` of `19` (REPLY). If the message is a reply but the `referenced_message` field is not present, the backend did not attempt to fetch the message that was being replied to, so its state is unknown. If the field exists but is null, the referenced message was deleted. @@ -96,5 +96,5 @@ export interface Message { /** The components related to this message */ components?: MessageComponents; /** Sent if the message contains stickers */ - stickerItems?: MessageStickerItem[]; + stickerItems?: StickerItem[]; } diff --git a/src/types/messages/mod.ts b/src/types/messages/mod.ts index 95ddefce8..bc80999cb 100644 --- a/src/types/messages/mod.ts +++ b/src/types/messages/mod.ts @@ -25,7 +25,5 @@ export * from "./messageReactionRemove.ts"; export * from "./messageReactionRemoveAll.ts"; export * from "./messageReactionRemoveEmoji.ts"; export * from "./messageReference.ts"; -export * from "./messageSticker.ts"; -export * from "./messageStickerFormatTypes.ts"; export * from "./messageTypes.ts"; export * from "./reaction.ts"; diff --git a/src/types/mod.ts b/src/types/mod.ts index ee2a1ae4f..11afa302f 100644 --- a/src/types/mod.ts +++ b/src/types/mod.ts @@ -17,6 +17,7 @@ export * from "./messages/mod.ts"; export * from "./misc/mod.ts"; export * from "./oauth2/mod.ts"; export * from "./permissions/mod.ts"; +export * from "./stickers/mod.ts"; export * from "./teams/mod.ts"; export * from "./templates/mod.ts"; export * from "./users/mod.ts"; diff --git a/src/types/stickers/mod.ts b/src/types/stickers/mod.ts new file mode 100644 index 000000000..fd4e8cbba --- /dev/null +++ b/src/types/stickers/mod.ts @@ -0,0 +1,5 @@ +export * from "./sticker.ts"; +export * from "./stickerFormatTypes.ts"; +export * from "./stickerItem.ts"; +export * from "./stickerPack.ts"; +export * from "./stickerTypes.ts"; From 71d2b468f52f18b85905aa40aa96324a98547087 Mon Sep 17 00:00:00 2001 From: lts20050703 <87189679+lts20050703@users.noreply.github.com> Date: Thu, 23 Dec 2021 17:44:58 +0700 Subject: [PATCH 3/4] #1848 Document audit logs for scheduled events #1848 Document audit logs for scheduled events add reason to CreateScheduledEvent and EditScheduledEvent interfaces add reason.options.reason to bot.rest.runMethod's body parameter in createSheduledEvent and editSheduledEvent functions --- src/helpers/guilds/scheduledEvents/createScheduledEvent.ts | 1 + src/helpers/guilds/scheduledEvents/editScheduledEvent.ts | 1 + src/types/guilds/scheduledEvents.ts | 2 ++ 3 files changed, 4 insertions(+) diff --git a/src/helpers/guilds/scheduledEvents/createScheduledEvent.ts b/src/helpers/guilds/scheduledEvents/createScheduledEvent.ts index c37a6f715..098bb2b68 100644 --- a/src/helpers/guilds/scheduledEvents/createScheduledEvent.ts +++ b/src/helpers/guilds/scheduledEvents/createScheduledEvent.ts @@ -39,6 +39,7 @@ export async function createScheduledEvent(bot: Bot, guildId: bigint, options: C scheduled_end_time: options.scheduledEndTime ? new Date(options.scheduledEndTime).toISOString() : undefined, privacy_level: options.privacyLevel || ScheduledEventPrivacyLevel.GuildOnly, entity_type: options.entityType, + reason: options.reason, } ); diff --git a/src/helpers/guilds/scheduledEvents/editScheduledEvent.ts b/src/helpers/guilds/scheduledEvents/editScheduledEvent.ts index fcf60210b..9d66fb9fc 100644 --- a/src/helpers/guilds/scheduledEvents/editScheduledEvent.ts +++ b/src/helpers/guilds/scheduledEvents/editScheduledEvent.ts @@ -32,6 +32,7 @@ export async function editScheduledEvent( privacy_level: options.privacyLevel, entity_type: options.entityType, status: options.status, + reason: options.reason, } ); diff --git a/src/types/guilds/scheduledEvents.ts b/src/types/guilds/scheduledEvents.ts index 0364a6c49..872daf98f 100644 --- a/src/types/guilds/scheduledEvents.ts +++ b/src/types/guilds/scheduledEvents.ts @@ -93,6 +93,7 @@ export interface CreateScheduledEvent { privacyLevel?: ScheduledEventPrivacyLevel; /** the type of hosting entity associated with a scheduled event */ entityType: ScheduledEventEntityType; + reason?: string; } export interface EditScheduledEvent { @@ -114,6 +115,7 @@ export interface EditScheduledEvent { entityType: ScheduledEventEntityType; /** the status of the scheduled event */ status: ScheduledEventStatus; + reason?: string; } export interface GetScheduledEvents { From 81c261d6d88397382d87cd9ae1af7b1d23b00abd Mon Sep 17 00:00:00 2001 From: lts20050703 <87189679+lts20050703@users.noreply.github.com> Date: Thu, 23 Dec 2021 18:00:05 +0700 Subject: [PATCH 4/4] Fix forgot to update transformer --- src/helpers/members/editMember.ts | 1 + src/transformers/member.ts | 3 +++ 2 files changed, 4 insertions(+) diff --git a/src/helpers/members/editMember.ts b/src/helpers/members/editMember.ts index 721bc1a4d..0e8402136 100644 --- a/src/helpers/members/editMember.ts +++ b/src/helpers/members/editMember.ts @@ -14,6 +14,7 @@ export async function editMember(bot: Bot, guildId: bigint, memberId: bigint, op mute: options.mute, deaf: options.deaf, channel_id: options.channelId, + communication_disabled_until: options.communicationDisabledUntil, } ); diff --git a/src/transformers/member.ts b/src/transformers/member.ts index 852b63e2b..b2a2ebcf9 100644 --- a/src/transformers/member.ts +++ b/src/transformers/member.ts @@ -58,6 +58,7 @@ export function transformMember( cachedAt: Date.now(), avatar: payload.avatar ? bot.utils.iconHashToBigInt(payload.avatar) : undefined, permissions: payload.permissions ? bot.transformers.snowflake(payload.permissions) : undefined, + communicationDisabledUntil: payload.communication_disabled_until, }; } @@ -86,4 +87,6 @@ export interface DiscordenoMember { avatar?: bigint; /** The permissions this member has in the guild. Only present on interaction events. */ permissions?: bigint; + /** when the user's timeout will expire and the user will be able to communicate in the guild again (up to 28 days in the future), set to null to remove timeout. Requires the `MODERATE_MEMBERS` permission */ + communicationDisabledUntil?: number; }