From fbc71ef6b668c4b1e2b065d9b65541d9303db0a0 Mon Sep 17 00:00:00 2001 From: Ben <88249114+BenjammingKirby@users.noreply.github.com> Date: Sat, 12 Feb 2022 02:21:28 -0700 Subject: [PATCH] feat(scheduledevents): add image option (#7436) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Jiralite <33201955+Jiralite@users.noreply.github.com> Co-authored-by: Antonio Román --- .../discord.js/src/managers/GuildScheduledEventManager.js | 7 +++++++ packages/discord.js/typings/index.d.ts | 1 + 2 files changed, 8 insertions(+) diff --git a/packages/discord.js/src/managers/GuildScheduledEventManager.js b/packages/discord.js/src/managers/GuildScheduledEventManager.js index dd04f259c..3acdfc8eb 100644 --- a/packages/discord.js/src/managers/GuildScheduledEventManager.js +++ b/packages/discord.js/src/managers/GuildScheduledEventManager.js @@ -5,6 +5,7 @@ const { GuildScheduledEventEntityType, Routes } = require('discord-api-types/v9' const CachedManager = require('./CachedManager'); const { TypeError, Error } = require('../errors'); const { GuildScheduledEvent } = require('../structures/GuildScheduledEvent'); +const DataResolver = require('../util/DataResolver'); /** * Manages API methods for GuildScheduledEvents and stores their cache. @@ -50,6 +51,7 @@ class GuildScheduledEventManager extends CachedManager { * @property {GuildScheduledEventEntityMetadataOptions} [entityMetadata] The entity metadata of the * guild scheduled event * This is required if `entityType` is {@link GuildScheduledEventEntityType.External} + * @property {?(BufferResolvable|Base64Resolvable)} [image] The cover image of the guild scheduled event * @property {string} [reason] The reason for creating the guild scheduled event */ @@ -77,6 +79,7 @@ class GuildScheduledEventManager extends CachedManager { scheduledEndTime, entityMetadata, reason, + image, } = options; let entity_metadata, channel_id; @@ -99,6 +102,7 @@ class GuildScheduledEventManager extends CachedManager { description, entity_type: entityType, entity_metadata, + image: image && (await DataResolver.resolveImage(image)), }, reason, }); @@ -171,6 +175,7 @@ class GuildScheduledEventManager extends CachedManager { * guild scheduled event * This can be modified only if `entityType` of the `GuildScheduledEvent` to be edited is * {@link GuildScheduledEventEntityType.External} + * @property {?(BufferResolvable|Base64Resolvable)} [image] The cover image of the guild scheduled event * @property {string} [reason] The reason for editing the guild scheduled event */ @@ -196,6 +201,7 @@ class GuildScheduledEventManager extends CachedManager { scheduledEndTime, entityMetadata, reason, + image, } = options; let entity_metadata; @@ -215,6 +221,7 @@ class GuildScheduledEventManager extends CachedManager { description, entity_type: entityType, status, + image: image && (await DataResolver.resolveImage(image)), entity_metadata, }, reason, diff --git a/packages/discord.js/typings/index.d.ts b/packages/discord.js/typings/index.d.ts index 507e21113..c90d27429 100644 --- a/packages/discord.js/typings/index.d.ts +++ b/packages/discord.js/typings/index.d.ts @@ -4338,6 +4338,7 @@ export interface GuildScheduledEventCreateOptions { description?: string; channel?: GuildVoiceChannelResolvable; entityMetadata?: GuildScheduledEventEntityMetadataOptions; + image?: BufferResolvable | Base64Resolvable | null; reason?: string; }