diff --git a/src/modules/utility.js b/src/modules/utility.js index 845184d..703e407 100644 --- a/src/modules/utility.js +++ b/src/modules/utility.js @@ -192,30 +192,77 @@ const APPLICATION_TYPES = [ // https://discord-userdoccers.vercel.app/resources/guild#guild-features const GUILD_FEATURES = { - ACTIVITIES_ALPHA: {icon: "\u{1f680}"}, - ACTIVITIES_EMPLOYEE: {icon: "\u{1f680}"}, - ACTIVITIES_INTERNAL_DEV: {icon: "\u{1f680}"}, + ACTIVITIES_ALPHA: {icon: "\u{1f680}", name: "Activities (Alpha)"}, + ACTIVITIES_EMPLOYEE: {icon: "\u{1f680}", name: "Activities (Staff)"}, + ACTIVITIES_INTERNAL_DEV: { + icon: "\u{1f680}", + name: "Activities (Internal Dev)", + }, ANIMATED_BANNER: {icon: "\u{1f39e}"}, ANIMATED_ICON: {icon: "\u{1f39e}"}, - APPLICATION_COMMAND_PERMISSIONS_V2: {icon: "\u2699\ufe0f"}, - AUTO_MODERATION: {icon: "\u{1f6e1}"}, - AUTOMOD_TRIGGER_KEYWORD_FILTER: {icon: "\u{1f6e1}"}, - AUTOMOD_TRIGGER_ML_SPAM_FILTER: {icon: "\u{1f6e1}"}, - AUTOMOD_TRIGGER_SPAM_LINK_FILTER: {icon: "\u{1f6e1}"}, - AUTOMOD_TRIGGER_USER_PROFILE: {icon: "\u{1faaa}"}, + APPLICATION_COMMAND_PERMISSIONS_V2: {icon: "\u2699\ufe0f", deprecated: true}, + AUTO_MODERATION: {icon: "\u{1f6e1}", name: "AutoMod"}, + AUTOMOD_TRIGGER_KEYWORD_FILTER: { + icon: "\u{1f6e1}", + name: "AutoMod: Keywords", + deprecated: true, + }, + AUTOMOD_TRIGGER_ML_SPAM_FILTER: { + icon: "\u{1f6e1}", + name: "AutoMod: Spam", + deprecated: true, + }, + AUTOMOD_TRIGGER_SPAM_LINK_FILTER: { + icon: "\u{1f6e1}", + name: "AutoMod: Spam Links", + deprecated: true, + }, + AUTOMOD_TRIGGER_USER_PROFILE: { + icon: "\u{1faaa}", + name: "AutoMod: User Profiles", + }, BANNER: {icon: "\u{1f5bc}"}, BFG: {icon: "\u{1f388}", name: "BFG"}, - BOOSTING_TIERS_EXPERIMENT_MEDIUM_GUILD: {icon: "\u{1f48e}"}, - BOOSTING_TIERS_EXPERIMENT_SMALL_GUILD: {icon: "\u{1f48e}"}, + BOOSTING_TIERS_EXPERIMENT_MEDIUM_GUILD: { + icon: "\u{1f48e}", + name: "Boosting: Medium Guild", + deprecated: true, + }, + BOOSTING_TIERS_EXPERIMENT_SMALL_GUILD: { + icon: "\u{1f48e}", + name: "Boosting: Small Guild", + deprecated: true, + }, BOT_DEVELOPER_EARLY_ACCESS: {icon: "\u{1f9ea}"}, BURST_REACTIONS: {icon: "\u2728", name: "Super Reactions"}, - CHANNEL_BANNER: {icon: "\u{1f5bc}"}, - CHANNEL_ICON_EMOJIS_GENERATED: {icon: "\u{1f603}"}, + CHANNEL_BANNER: {icon: "\u{1f5bc}", deprecated: true}, + CHANNEL_ICON_EMOJIS_GENERATED: { + icon: "\u{1f603}", + name: "Channel Icon Emojis", + }, CHANNEL_HIGHLIGHTS: {icon: "\u{1f5c3}"}, CHANNEL_HIGHLIGHTS_DISABLED: {icon: "\u{1f6ab}"}, - CLYDE_DISABLED: {icon: "\u{1f6ab}"}, - CLYDE_ENABLED: {icon: "\u{1f916}"}, - CLYDE_EXPERIMENT_ENABLED: {icon: "\u{1f9ea}"}, + CLAN: {icon: "\u2694\ufe0f"}, + CLAN_DISCOVERY_DISABLED: {icon: "\u2694\ufe0f"}, + CLAN_PILOT_GENSHIN: { + icon: "\u2694\ufe0f", + name: "Clan Pilot: Genshin Impact", + }, + CLAN_PILOT_VALORANT: { + icon: "\u2694\ufe0f", + name: "Clan Pilot: Valorant", + }, + CLAN_PREPILOT_GENSHIN: { + icon: "\u2694\ufe0f", + name: "Clan Pre-Pilot: Genshin Impact", + }, + CLAN_PREPILOT_VALORANT: { + icon: "\u2694\ufe0f", + name: "Clan Pre-Pilot: Valorant", + }, + CLYDE_DISABLED: {icon: "\u{1f6ab}", deprecated: true}, + CLYDE_ENABLED: {icon: "\u{1f916}", deprecated: true}, + CLYDE_EXPERIMENT_ENABLED: {icon: "\u{1f9ea}", deprecated: true}, COMMERCE: {icon: "\u{1f6cd}"}, COMMUNITY: {icon: "\u{1f3d8}"}, COMMUNITY_CANARY: {icon: "\u{1f9ea}"}, @@ -223,38 +270,98 @@ const GUILD_FEATURES = { COMMUNITY_EXP_LARGE_UNGATED: {icon: "\u{1f3d8}"}, COMMUNITY_EXP_MEDIUM: {icon: "\u{1f3d8}"}, CREATOR_ACCEPTED_NEW_TERMS: {icon: "\u2611\ufe0f"}, - CREATOR_MONETIZABLE: {icon: "\u{1f4b0}"}, - CREATOR_MONETIZABLE_DISABLED: {icon: "\u{1f6ab}"}, - CREATOR_MONETIZABLE_PENDING_NEW_OWNER_ONBOARDING: {icon: "\u{1f4b1}"}, - CREATOR_MONETIZABLE_PROVISIONAL: {icon: "\u{1f4b0}"}, - CREATOR_MONETIZABLE_RESTRICTED: {icon: "\u26d4"}, - CREATOR_MONETIZABLE_WHITEGLOVE: {icon: "\u{1f9ea}"}, - CREATOR_MONETIZATION_APPLICATION_ALLOWLIST: {icon: "\u{1f4dc}"}, + CREATOR_MONETIZABLE: {icon: "\u{1f4b0}", name: "Monetization"}, + CREATOR_MONETIZABLE_DISABLED: { + icon: "\u{1f6ab}", + name: "Monetization Disabled", + }, + CREATOR_MONETIZABLE_PENDING_NEW_OWNER_ONBOARDING: { + icon: "\u{1f4b1}", + name: "Monetization: Pending Onboarding", + }, + CREATOR_MONETIZABLE_PROVISIONAL: { + icon: "\u{1f4b0}", + name: "Monetization (Provisional)", + }, + CREATOR_MONETIZABLE_RESTRICTED: { + icon: "\u26d4", + name: "Monetization Restricted", + }, + CREATOR_MONETIZABLE_WHITEGLOVE: { + icon: "\u{1f9ea}", + name: "Monetization White Glove", + }, + CREATOR_MONETIZATION_APPLICATION_ALLOWLIST: { + icon: "\u{1f4dc}", + name: "Monetization Allow List", + }, CREATOR_STORE_PAGE: {icon: "\u{1f6d2}"}, DEVELOPER_SUPPORT_SERVER: {icon: "\u2754"}, DISCOVERABLE: {icon: "\u{1f9ed}"}, DISCOVERABLE_DISABLED: {icon: "\u{1f6ab}"}, ENABLED_DISCOVERABLE_BEFORE: {icon: "\u{1f9ed}"}, EXPOSED_TO_ACTIVITIES_WTP_EXPERIMENT: {icon: "\u{1f9ea}"}, - EXPOSED_TO_BOOSTING_TIERS_EXPERIMENT: {icon: "\u{1f9ea}"}, - FEATURABLE: {icon: "\u{1f9ed}"}, - FORCE_RELAY: {icon: "\u{1f4fb}"}, + EXPOSED_TO_BOOSTING_TIERS_EXPERIMENT: { + icon: "\u{1f9ea}", + name: "Boosting: Tiers Experiment", + deprecated: true, + }, + FEATURABLE: {icon: "\u{1f9ed}", deprecated: true}, + FORCE_RELAY: {icon: "\u{1f4fb}", deprecated: true}, + GENSHIN_L30: {icon: "\u{1f3ae}", name: "Clans: Genshin Impact L30"}, GUESTS_ENABLED: {icon: "\u{1f465}"}, - GUILD_AUTOMOD_DEFAULT_LIST: {icon: "\u{1f6e1}"}, - GUILD_COMMUNICATION_DISABLED_GUILDS: {icon: "\u{1f6d1}"}, - GUILD_HOME_DEPRECATION_OVERRIDE: {icon: "\u{1f3da}"}, - GUILD_HOME_OVERRIDE: {icon: "\u{1f3e0}"}, - GUILD_HOME_TEST: {icon: "\u{1f9ea}"}, + GUILD_AUTOMOD_DEFAULT_LIST: {icon: "\u{1f6e1}", deprecated: true}, + GUILD_COMMUNICATION_DISABLED_GUILDS: { + icon: "\u{1f6d1}", + name: "Member Timeouts", + deprecated: true, + }, + GUILD_HOME_DEPRECATION_OVERRIDE: { + icon: "\u{1f3da}", + name: "Home Tab Deprecation Notice Hidden", + }, + GUILD_HOME_OVERRIDE: {icon: "\u{1f3e0}", name: "Home Tab (Override)"}, + GUILD_HOME_TEST: {icon: "\u{1f9ea}", name: "Home Tab (Testing)"}, GUILD_MEMBER_VERIFICATION_EXPERIMENT: {icon: "\u{1f9ea}"}, - GUILD_ONBOARDING: {icon: "\u{1f5f3}"}, - GUILD_ONBOARDING_ADMIN_ONLY: {icon: "\u{1f5f3}"}, - GUILD_ONBOARDING_EVER_ENABLED: {icon: "\u{1f5f3}"}, - GUILD_ONBOARDING_HAS_PROMPTS: {icon: "\u{1f5f3}"}, + GUILD_ONBOARDING: {icon: "\u{1f5f3}", name: "Onboarding"}, + GUILD_ONBOARDING_ADMIN_ONLY: { + icon: "\u{1f5f3}", + name: "Onboarding: Admin Only", + deprecated: true, + }, + GUILD_ONBOARDING_EVER_ENABLED: { + icon: "\u{1f5f3}", + name: "Onboarding: Ever Enabled", + }, + GUILD_ONBOARDING_HAS_PROMPTS: { + icon: "\u{1f5f3}", + name: "Onboarding: Has Prompts", + }, GUILD_PRODUCTS: {icon: "\u{1f6cd}"}, - GUILD_ROLE_SUBSCRIPTIONS: {icon: "\u{1f4b3}"}, - GUILD_ROLE_SUBSCRIPTION_PURCHASE_FEEDBACK_LOOP: {icon: "\u{1f4b3}"}, - GUILD_ROLE_SUBSCRIPTION_TIER_TEMPLATE: {icon: "\u{1f4b3}"}, - GUILD_ROLE_SUBSCRIPTION_TRIALS: {icon: "\u{1f4b3}"}, + GUILD_PRODUCTS_ALLOW_ARCHIVED_FILE: { + icon: "\u{1f5dc}", + name: "Products: Allow Archives", + }, + GUILD_ROLE_SUBSCRIPTIONS: { + icon: "\u{1f4b3}", + name: "Role Subscriptions", + deprecated: true, + }, + GUILD_ROLE_SUBSCRIPTION_PURCHASE_FEEDBACK_LOOP: { + icon: "\u{1f4b3}", + name: "Role Subscriptions: Purchase Feedback Loop", + deprecated: true, + }, + GUILD_ROLE_SUBSCRIPTION_TIER_TEMPLATE: { + icon: "\u{1f4b3}", + name: "Role Subscriptions: Tier Template", + deprecated: true, + }, + GUILD_ROLE_SUBSCRIPTION_TRIALS: { + icon: "\u{1f4b3}", + name: "Role Subscriptions: Trials", + deprecated: true, + }, GUILD_SERVER_GUIDE: {icon: "\u{1f9ae}"}, GUILD_WEB_PAGE_VANITY_URL: {icon: "\u{1f4c4}"}, HAD_EARLY_ACTIVITIES_ACCESS: {icon: "\u{1f680}"}, @@ -266,63 +373,86 @@ const GUILD_FEATURES = { INVITE_SPLASH: {icon: "\u{1f5bc}"}, INVITES_DISABLED: {icon: "\u26d4"}, LINKED_TO_HUB: {icon: "\u{1f3eb}"}, - LURKABLE: {icon: "\u{1f441}"}, - MARKETPLACES_CONNECTION_ROLES: {icon: "\u{1f517}"}, - MEDIA_CHANNEL_ALPHA: {icon: "\u{1f5bc}"}, - MEMBER_LIST_DISABLED: {icon: "\u{1f6ab}"}, - MEMBER_PROFILES: {icon: "\u{1faaa}"}, + LURKABLE: {icon: "\u{1f441}", deprecated: true}, + MARKETPLACES_CONNECTION_ROLES: {icon: "\u{1f517}", deprecated: true}, + MEDIA_CHANNEL_ALPHA: {icon: "\u{1f5bc}", deprecated: true}, + MEMBER_LIST_DISABLED: {icon: "\u{1f6ab}", deprecated: true}, + MEMBER_PROFILES: {icon: "\u{1faaa}", deprecated: true}, MEMBER_SAFETY_PAGE_ROLLOUT: {icon: "\u{1f6e1}"}, MEMBER_VERIFICATION_GATE_ENABLED: {icon: "\u{1f6e1}"}, MEMBER_VERIFICATION_MANUAL_APPROVAL: {icon: "\u2705"}, - MOBILE_WEB_ROLE_SUBSCRIPTION_PURCHASE_PAGE: {icon: "\u{1f4b3}"}, - MONETIZATION_ENABLED: {icon: "\u{1f4b0}"}, + MOBILE_WEB_ROLE_SUBSCRIPTION_PURCHASE_PAGE: { + icon: "\u{1f4b3}", + deprecated: true, + }, + MONETIZATION_ENABLED: {icon: "\u{1f4b0}", deprecated: true}, MORE_EMOJI: {icon: "\u{1f603}"}, MORE_STICKERS: {icon: "\u{1f5bc}"}, NEWS: {icon: "\u{1f4f0}"}, - NEW_THREAD_PERMISSIONS: {icon: "\u{1f9f5}"}, + NEW_THREAD_PERMISSIONS: {icon: "\u{1f9f5}", deprecated: true}, NON_COMMUNITY_RAID_ALERTS: {icon: "\u{1f6a8}"}, PARTNERED: {icon: "\u267e\ufe0f"}, PREMIUM_TIER_3_OVERRIDE: {icon: "\u{1f48e}"}, PREVIEW_ENABLED: {icon: "\u{1f441}"}, - PRIVATE_THREADS: {icon: "\u{1f9f5}"}, + PRIVATE_THREADS: {icon: "\u{1f9f5}", deprecated: true}, PRODUCTS_AVAILABLE_FOR_PURCHASE: {icon: "\u{1f6cd}"}, - PUBLIC: {icon: "\u{1f9ed}"}, - PUBLIC_DISABLED: {icon: "\u{1f6ab}"}, + PUBLIC: {icon: "\u{1f9ed}", deprecated: true}, + PUBLIC_DISABLED: {icon: "\u{1f6ab}", deprecated: true}, RAID_ALERTS_DISABLED: {icon: "\u{1f6ab}"}, - RAID_ALERTS_ENABLED: {icon: "\u{1f6a8}"}, + RAID_ALERTS_ENABLED: {icon: "\u{1f6a8}", deprecated: true}, RELAY_ENABLED: {icon: "\u{1f4fb}"}, - RESTRICT_SPAM_RISK_GUILDS: {icon: "\u{1f6d1}"}, + RESTRICT_SPAM_RISK_GUILDS: {icon: "\u{1f6d1}", deprecated: true}, ROLE_ICONS: {icon: "\u{1f3f7}"}, ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE: {icon: "\u{1f4b3}"}, ROLE_SUBSCRIPTIONS_ENABLED: {icon: "\u{1f4b3}"}, - ROLE_SUBSCRIPTIONS_ENABLED_FOR_PURCHASE: {icon: "\u{1f4b3}"}, - SEVEN_DAY_THREAD_ARCHIVE: {icon: "\u{1f9f5}"}, + ROLE_SUBSCRIPTIONS_ENABLED_FOR_PURCHASE: { + icon: "\u{1f4b3}", + deprecated: true, + }, + SEVEN_DAY_THREAD_ARCHIVE: {icon: "\u{1f9f5}", deprecated: true}, SHARD: {icon: "\u{1f4a0}"}, SHARED_CANVAS_FRIENDS_AND_FAMILY_TEST: {icon: "\u{1f58c}"}, SOUNDBOARD: {icon: "\u{1f50a}"}, - SUMMARIES_ENABLED: {icon: "\u{1f4da}"}, + SUMMARIES_ENABLED: {icon: "\u{1f4da}", deprecated: true}, SUMMARIES_ENABLED_GA: { icon: "\u{1f4da}", - name: "Summaries Enabled (General Access)", + name: "Summaries (General Access)", }, SUMMARIES_DISABLED_BY_USER: {icon: "\u26d4"}, SUMMARIES_ENABLED_BY_USER: {icon: "\u{1f4da}"}, SUMMARIES_LONG_LOOKBACK: {icon: "\u{1f5c2}"}, STAFF_LEVEL_COLLABORATOR_REQUIRED: {icon: "\u{1f6e0}"}, STAFF_LEVEL_RESTRICTED_COLLABORATOR_REQUIRED: {icon: "\u{1f6e0}"}, - TEXT_IN_STAGE_ENABLED: {icon: "\u{1f5e8}"}, - TEXT_IN_VOICE_ENABLED: {icon: "\u{1f5e8}"}, - THREADS_ENABLED_TESTING: {icon: "\u{1f9f5}"}, - THREADS_ENABLED: {icon: "\u{1f9f5}"}, + TEXT_IN_STAGE_ENABLED: {icon: "\u{1f5e8}", deprecated: true}, + TEXT_IN_VOICE_ENABLED: {icon: "\u{1f5e8}", deprecated: true}, + THREADS_ENABLED: {icon: "\u{1f9f5}", deprecated: true}, + THREADS_ENABLED_TESTING: { + icon: "\u{1f9f5}", + name: "Thread Enabled (Testing)", + deprecated: true, + }, THREAD_DEFAULT_AUTO_ARCHIVE_DURATION: {icon: "\u{1f9f5}"}, - THREADS_ONLY_CHANNEL: {icon: "\u{1f5e8}", name: "Forum Channels"}, - THREE_DAY_THREAD_ARCHIVE: {icon: "\u{1f9f5}"}, - TICKETED_EVENTS_ENABLED: {icon: "\u{1f39f}"}, - TICKETING_ENABLED: {icon: "\u{1f39f}"}, + THREADS_ONLY_CHANNEL: { + icon: "\u{1f5e8}", + name: "Forum Channels", + deprecated: true, + }, + THREE_DAY_THREAD_ARCHIVE: {icon: "\u{1f9f5}", deprecated: true}, + TICKETED_EVENTS_ENABLED: { + icon: "\u{1f39f}", + name: "Scheduled Events", + deprecated: true, + }, + TICKETING_ENABLED: { + icon: "\u{1f39f}", + name: "Scheduled Events", + deprecated: true, + }, + VALORANT_L30: {icon: "\u{1f3ae}", name: "Clans: Valorant L30"}, VANITY_URL: {icon: "\u{1f517}"}, VERIFIED: {icon: "\u2b50"}, VIP_REGIONS: {icon: "\u{1f399}"}, - VOICE_CHANNEL_EFFECTS: {icon: "\u2728"}, + VOICE_CHANNEL_EFFECTS: {icon: "\u2728", deprecated: true}, VOICE_IN_THREADS: {icon: "\u{1f399}"}, WELCOME_SCREEN_ENABLED: {icon: "\u{1f44b}"}, }; @@ -841,13 +971,15 @@ lookupinvite.callback = async function (msg, line) { const features = invite.guild.features.sort().map( (feature) => - (GUILD_FEATURES[feature]?.icon ?? "\u2753") + - " " + - (GUILD_FEATURES[feature]?.name ?? + `${GUILD_FEATURES[feature]?.icon ?? "\u2753"} ${ + GUILD_FEATURES[feature]?.deprecated ? "~~" : "" + }${ + GUILD_FEATURES[feature]?.name ?? feature .split("_") .map((x) => x[0] + x.substring(1).toLowerCase()) - .join(" ")) + .join(" ") + }${GUILD_FEATURES[feature]?.deprecated ? "~~" : ""}` ); if (invite.type == 0) { @@ -2288,13 +2420,15 @@ guildinfo.callback = async function (msg, line) { const features = guild.features.sort().map( (feature) => - (GUILD_FEATURES[feature]?.icon ?? "\u2753") + - " " + - (GUILD_FEATURES[feature]?.name ?? + `${GUILD_FEATURES[feature]?.icon ?? "\u2753"} ${ + GUILD_FEATURES[feature]?.deprecated ? "~~" : "" + }${ + GUILD_FEATURES[feature]?.name ?? feature .split("_") .map((x) => x[0] + x.substring(1).toLowerCase()) - .join(" ")) + .join(" ") + }${GUILD_FEATURES[feature]?.deprecated ? "~~" : ""}` ); embed.fields.push({ @@ -2418,13 +2552,15 @@ guildinfo.callback = async function (msg, line) { const features = guild.features.sort().map( (feature) => - (GUILD_FEATURES[feature]?.icon ?? "\u2753") + - " " + - (GUILD_FEATURES[feature]?.name ?? + `${GUILD_FEATURES[feature]?.icon ?? "\u2753"} ${ + GUILD_FEATURES[feature]?.deprecated ? "~~" : "" + }${ + GUILD_FEATURES[feature]?.name ?? feature .split("_") .map((x) => x[0] + x.substring(1).toLowerCase()) - .join(" ")) + .join(" ") + }${GUILD_FEATURES[feature]?.deprecated ? "~~" : ""}` ); embed.fields.push({ @@ -2545,13 +2681,15 @@ guildinfo.callback = async function (msg, line) { if (invite?.guild?.features) { const features = invite.guild.features.sort().map( (feature) => - (GUILD_FEATURES[feature]?.icon ?? "\u2753") + - " " + - (GUILD_FEATURES[feature]?.name ?? + `${GUILD_FEATURES[feature]?.icon ?? "\u2753"} ${ + GUILD_FEATURES[feature]?.deprecated ? "~~" : "" + }${ + GUILD_FEATURES[feature]?.name ?? feature .split("_") .map((x) => x[0] + x.substring(1).toLowerCase()) - .join(" ")) + .join(" ") + }${GUILD_FEATURES[feature]?.deprecated ? "~~" : ""}` ); embed.fields.push({ @@ -2643,13 +2781,15 @@ guildinfo.callback = async function (msg, line) { const features = invite.guild.features.sort().map( (feature) => - (GUILD_FEATURES[feature]?.icon ?? "\u2753") + - " " + - (GUILD_FEATURES[feature]?.name ?? + `${GUILD_FEATURES[feature]?.icon ?? "\u2753"} ${ + GUILD_FEATURES[feature]?.deprecated ? "~~" : "" + }${ + GUILD_FEATURES[feature]?.name ?? feature .split("_") .map((x) => x[0] + x.substring(1).toLowerCase()) - .join(" ")) + .join(" ") + }${GUILD_FEATURES[feature]?.deprecated ? "~~" : ""}` ); embed.fields.push({