mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-04 01:40:08 +00:00
Revert "feat(handlers): add Membership Screening" (#490)
* Revert "feat(handlers): add Membership Screening (#449)"
This reverts commit 6599636dbc.
* Remove type definitions
This commit is contained in:
@@ -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<typeof createMembershipObj>;
|
||||
|
||||
/** 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;
|
||||
}
|
||||
|
||||
@@ -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";
|
||||
|
||||
@@ -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`,
|
||||
|
||||
Reference in New Issue
Block a user