diff --git a/src/api/handlers/guild.ts b/src/api/handlers/guild.ts index a5f3fbf90..0d5829073 100644 --- a/src/api/handlers/guild.ts +++ b/src/api/handlers/guild.ts @@ -27,8 +27,6 @@ import { ImageSize, Intents, MemberCreatePayload, - MembershipScreeningFieldTypes, - MembershipScreeningPayload, Overwrite, PositionSwap, PruneOptions, @@ -1085,69 +1083,3 @@ export async function editGuildTemplate( return structures.createTemplate(template); } - -function createMembershipObj( - { form_fields: formFields, ...props }: MembershipScreeningPayload, -) { - return { - ...props, - formFields: formFields.map(({ field_type, ...rest }) => ({ - ...rest, - fieldType: field_type, - })), - }; -} - -export type MembershipScreening = ReturnType; - -/** Get the membership screening form of a guild. */ -export async function getGuildMembershipScreeningForm(guildID: string) { - const membershipScreeningPayload = await RequestManager.get( - endpoints.GUILD_MEMBER_VERIFICATION(guildID), - ) as MembershipScreeningPayload; - - return createMembershipObj(membershipScreeningPayload); -} - -/** Edit the guild's Membership Screening form. Requires the `MANAGE_GUILD` permission. */ -export async function editGuildMembershipScreeningForm( - guildID: string, - options?: EditGuildMembershipScreeningForm, -) { - const membershipScreeningFormPayload = await RequestManager.patch( - endpoints.GUILD_MEMBER_VERIFICATION(guildID), - { - ...options, - form_fields: JSON.stringify( - options?.formFields?.map(({ fieldType, ...props }) => ({ - ...props, - field_type: fieldType, - })), - ), - }, - ) as MembershipScreeningPayload; - - return createMembershipObj( - membershipScreeningFormPayload, - ); -} - -export interface EditGuildMembershipScreeningForm { - /** whether Membership Screening is enabled */ - enabled?: boolean; - /** array of field objects */ - formFields?: MembershipScreeningField[]; - /** the steps in the screening form */ - description?: string; -} - -export interface MembershipScreeningField { - /** the type of field */ - fieldType: MembershipScreeningFieldTypes; - /** the title of the field */ - label: string; - /** the list of rules */ - values?: string[]; - /** whether the user has to fill out this field */ - required: boolean; -} diff --git a/src/types/guild.ts b/src/types/guild.ts index ae6181ced..15deb3035 100644 --- a/src/types/guild.ts +++ b/src/types/guild.ts @@ -174,11 +174,7 @@ export type GuildFeatures = | "DISCOVERABLE" | "FEATURABLE" | "ANIMATED_ICON" - | "BANNER" - /** guild has enabled Membership Screening */ - | "MEMBER_VERIFICATION_GATE_ENABLED" - /** guild can be previewed before joining via Membership Screening or the directory */ - | "PREVIEW_ENABLED"; + | "BANNER"; export interface VoiceRegion { /** unique ID for the region */ @@ -686,27 +682,3 @@ export interface EditGuildTemplate { /** description for the template (0-120 characters) */ description?: string | null; } - -export interface MembershipScreeningPayload { - /** when the fields were last updated */ - version: string; - /** the steps in the screening form */ - "form_fields": MembershipScreeningFieldPayload[]; - /** the server description shown in the screening form */ - description: string | null; -} - -export interface MembershipScreeningFieldPayload { - /** the type of field */ - "field_type": MembershipScreeningFieldTypes; - /** the title of the field */ - label: string; - /** the list of rules */ - values?: string[]; - /** whether the user has to fill out this field */ - required: boolean; -} - -export type MembershipScreeningFieldTypes = - /** Server Rules */ - "TERMS"; diff --git a/src/util/constants.ts b/src/util/constants.ts index c48fc2e03..afad4433c 100644 --- a/src/util/constants.ts +++ b/src/util/constants.ts @@ -116,8 +116,6 @@ export const endpoints = { `${baseEndpoints.BASE_URL}/guilds/templates/${code}`, GUILD_TEMPLATES: (guildID: string) => `${GUILDS_BASE(guildID)}/templates`, GUILD_PREVIEW: (guildID: string) => `${GUILDS_BASE(guildID)}/preview`, - GUILD_MEMBER_VERIFICATION: (guildID: string) => - `${GUILDS_BASE(guildID)}/member-verification`, // Voice VOICE_REGIONS: `${baseEndpoints.BASE_URL}/voice/regions`,