From 408165e96fdd08d56183cf3c5348ee08e8aec056 Mon Sep 17 00:00:00 2001 From: Jiralite <33201955+Jiralite@users.noreply.github.com> Date: Wed, 13 Nov 2024 15:09:19 +0000 Subject: [PATCH] feat(_interactions): Support partial guild objects (#1142) * feat: support partial guild objects * docs: use `@unstable` --- deno/payloads/v10/_interactions/base.ts | 8 ++++++-- deno/payloads/v10/guild.ts | 13 +++++++++++++ deno/payloads/v9/_interactions/base.ts | 8 ++++++-- deno/payloads/v9/guild.ts | 13 +++++++++++++ payloads/v10/_interactions/base.ts | 8 ++++++-- payloads/v10/guild.ts | 13 +++++++++++++ payloads/v9/_interactions/base.ts | 8 ++++++-- payloads/v9/guild.ts | 13 +++++++++++++ 8 files changed, 76 insertions(+), 8 deletions(-) diff --git a/deno/payloads/v10/_interactions/base.ts b/deno/payloads/v10/_interactions/base.ts index eabbcfe1..e99058ad 100644 --- a/deno/payloads/v10/_interactions/base.ts +++ b/deno/payloads/v10/_interactions/base.ts @@ -9,7 +9,7 @@ import type { ChannelType, ThreadChannelType, } from '../channel.ts'; -import type { APIGuildMember } from '../guild.ts'; +import type { APIGuildMember, APIPartialInteractionGuild } from '../guild.ts'; import type { APIEntitlement } from '../monetization.ts'; import type { APIUser } from '../user.ts'; import type { InteractionType } from './responses.ts'; @@ -118,7 +118,11 @@ export interface APIBaseInteraction { */ data?: Data; /** - * The guild it was sent from + * Guild that the interaction was sent from + */ + guild?: APIPartialInteractionGuild; + /** + * Guild that the interaction was sent from */ guild_id?: Snowflake; /** diff --git a/deno/payloads/v10/guild.ts b/deno/payloads/v10/guild.ts index 2b1831a2..aaf326f2 100644 --- a/deno/payloads/v10/guild.ts +++ b/deno/payloads/v10/guild.ts @@ -283,6 +283,19 @@ export interface APIGuild extends APIPartialGuild { safety_alerts_channel_id: Snowflake | null; } +/** + * https://discord.com/developers/docs/resources/guild#guild-object-guild-structure + */ +export interface APIPartialInteractionGuild extends Pick { + /** + * The preferred locale of a Community guild; used in guild discovery and notices from Discord; defaults to "en-US" + * + * @unstable https://github.com/discord/discord-api-docs/issues/6938 + * @default "en-US" + */ + locale: Locale; +} + /** * https://discord.com/developers/docs/resources/guild#guild-object-default-message-notification-level */ diff --git a/deno/payloads/v9/_interactions/base.ts b/deno/payloads/v9/_interactions/base.ts index 2a6778a9..5e4680cf 100644 --- a/deno/payloads/v9/_interactions/base.ts +++ b/deno/payloads/v9/_interactions/base.ts @@ -9,7 +9,7 @@ import type { ChannelType, ThreadChannelType, } from '../channel.ts'; -import type { APIGuildMember } from '../guild.ts'; +import type { APIGuildMember, APIPartialInteractionGuild } from '../guild.ts'; import type { APIEntitlement } from '../monetization.ts'; import type { APIUser } from '../user.ts'; import type { InteractionType } from './responses.ts'; @@ -118,7 +118,11 @@ export interface APIBaseInteraction { */ data?: Data; /** - * The guild it was sent from + * Guild that the interaction was sent from + */ + guild?: APIPartialInteractionGuild; + /** + * Guild that the interaction was sent from */ guild_id?: Snowflake; /** diff --git a/deno/payloads/v9/guild.ts b/deno/payloads/v9/guild.ts index 8d2e8e24..a3b10e2a 100644 --- a/deno/payloads/v9/guild.ts +++ b/deno/payloads/v9/guild.ts @@ -283,6 +283,19 @@ export interface APIGuild extends APIPartialGuild { safety_alerts_channel_id: Snowflake | null; } +/** + * https://discord.com/developers/docs/resources/guild#guild-object-guild-structure + */ +export interface APIPartialInteractionGuild extends Pick { + /** + * The preferred locale of a Community guild; used in guild discovery and notices from Discord; defaults to "en-US" + * + * @unstable https://github.com/discord/discord-api-docs/issues/6938 + * @default "en-US" + */ + locale: Locale; +} + /** * https://discord.com/developers/docs/resources/guild#guild-object-default-message-notification-level */ diff --git a/payloads/v10/_interactions/base.ts b/payloads/v10/_interactions/base.ts index 4015e070..4ba8b5c0 100644 --- a/payloads/v10/_interactions/base.ts +++ b/payloads/v10/_interactions/base.ts @@ -9,7 +9,7 @@ import type { ChannelType, ThreadChannelType, } from '../channel'; -import type { APIGuildMember } from '../guild'; +import type { APIGuildMember, APIPartialInteractionGuild } from '../guild'; import type { APIEntitlement } from '../monetization'; import type { APIUser } from '../user'; import type { InteractionType } from './responses'; @@ -118,7 +118,11 @@ export interface APIBaseInteraction { */ data?: Data; /** - * The guild it was sent from + * Guild that the interaction was sent from + */ + guild?: APIPartialInteractionGuild; + /** + * Guild that the interaction was sent from */ guild_id?: Snowflake; /** diff --git a/payloads/v10/guild.ts b/payloads/v10/guild.ts index 777bf505..834769f9 100644 --- a/payloads/v10/guild.ts +++ b/payloads/v10/guild.ts @@ -283,6 +283,19 @@ export interface APIGuild extends APIPartialGuild { safety_alerts_channel_id: Snowflake | null; } +/** + * https://discord.com/developers/docs/resources/guild#guild-object-guild-structure + */ +export interface APIPartialInteractionGuild extends Pick { + /** + * The preferred locale of a Community guild; used in guild discovery and notices from Discord; defaults to "en-US" + * + * @unstable https://github.com/discord/discord-api-docs/issues/6938 + * @default "en-US" + */ + locale: Locale; +} + /** * https://discord.com/developers/docs/resources/guild#guild-object-default-message-notification-level */ diff --git a/payloads/v9/_interactions/base.ts b/payloads/v9/_interactions/base.ts index 091a17fc..0689a627 100644 --- a/payloads/v9/_interactions/base.ts +++ b/payloads/v9/_interactions/base.ts @@ -9,7 +9,7 @@ import type { ChannelType, ThreadChannelType, } from '../channel'; -import type { APIGuildMember } from '../guild'; +import type { APIGuildMember, APIPartialInteractionGuild } from '../guild'; import type { APIEntitlement } from '../monetization'; import type { APIUser } from '../user'; import type { InteractionType } from './responses'; @@ -118,7 +118,11 @@ export interface APIBaseInteraction { */ data?: Data; /** - * The guild it was sent from + * Guild that the interaction was sent from + */ + guild?: APIPartialInteractionGuild; + /** + * Guild that the interaction was sent from */ guild_id?: Snowflake; /** diff --git a/payloads/v9/guild.ts b/payloads/v9/guild.ts index 404ddd6b..eaf02260 100644 --- a/payloads/v9/guild.ts +++ b/payloads/v9/guild.ts @@ -283,6 +283,19 @@ export interface APIGuild extends APIPartialGuild { safety_alerts_channel_id: Snowflake | null; } +/** + * https://discord.com/developers/docs/resources/guild#guild-object-guild-structure + */ +export interface APIPartialInteractionGuild extends Pick { + /** + * The preferred locale of a Community guild; used in guild discovery and notices from Discord; defaults to "en-US" + * + * @unstable https://github.com/discord/discord-api-docs/issues/6938 + * @default "en-US" + */ + locale: Locale; +} + /** * https://discord.com/developers/docs/resources/guild#guild-object-default-message-notification-level */