improved guild feature handling

This commit is contained in:
derpystuff 2022-07-09 00:00:01 +02:00
parent 19cab912df
commit b297bd9f0e
4 changed files with 273 additions and 90 deletions

View file

@ -75,58 +75,239 @@ module.exports.ICONS = Object.freeze({
"link": "<:ico_link:994364481792647229>"
})
const GUILD_FEATURE_ICONS = Object.freeze({
ACTIVITY: "<:activity:995078510492266606>",
AUDIO: "<:audio:995073876381945986>",
ANIMATED: "<:animated:995034549895569519> ",
IMAGE: "<:image:995034797112041563>",
DIRECTORY: "<:directory:995069080467939329>",
EMOJI: "<:emoji:995036031923539979>",
EDUCATION: "<:education:995069345577312266>",
BOOST: "<:boost:995068901794783234>",
STAFF: "<:staff:995068645430534174>",
HOME: "<:home:995068501192622150>",
MOD: "<:mod:995068318161575957>",
ROLE_SUBSCRIPTIONS: "<:rolesubs:995071222071181444>",
STAR: "<:star:995071826373910568>",
STICKER: "<:sticker:995072116405842040>",
ROLE_ICONS: "<:roleicons:995072431695863819>",
VERIFIED: "<:verified:995073342350577674>",
PARTNER: "<:partner:995073343554338867>",
WALLET: "<:wallet:995075115681329213>",
TAG: "<:tag:995075110660751370>",
TICKET: "<:ticket:995075114372694016>",
THREAD: "<:thread:995075113030529065>",
PRIVATE_THREAD: "<:privatethread:995075107712143410>",
CLOCK: "<:clock:995075106328035519>",
EYE: "<:eye:995076484555345920>",
EYE_HIDDEN: "<:eyehidden:995076486832857219>",
GLOBE: "<:globe:995076489542377623>",
MEGAPHONE: "<:mega:995076487789154396>",
DISCOVERY: "<:discovery:995077771619471480>",
DISCOVERY_DISABLED: "<:discoveryoff:995077769836888116>",
DISCOVERY_ENABLED: "<:discoveryon:995077768029155480>",
WAVE: "<:wave:995079620468670554>",
PROFILE: "<:profile:995080477734088855>",
MESSAGE: "<:message:995080756021952594>",
BOT_DEVELOPER: "<:botdev:995081351457935391>",
PEOPLE_RED: "<:peoplered:995081367098499103>"
})
module.exports.GUILD_FEATURES = Object.freeze({
"MEMBER_VERIFICATION_GATE_ENABLED": "<:MEMBERSHIP_GATING:816573784819630100> Membership Screening Enabled",
"INVITE_SPLASH": "<:BOOST_IMAGE:816574652780249108> Invite Splash Background",
"BANNER": "<:BOOST_IMAGE:816574652780249108> Guild Banner",
"ANIMATED_ICON": "<:BOOST_GIF:816575965559914516> Animated Server Icon",
"VANITY_URL": "<:BOOST_STAR:816575966498258974> Vanity Url",
"MEMBER_LIST_DISABLED": "<:MEMBERLISTDISABLED:816582167287169094> Member List Disabled",
"PARTNERED": "<:PARTNERED:816581753472155648> Partnered Server",
"VERIFIED": "<:VERIFIED:816581753358909440> Verified Server",
"PREVIEW_ENABLED": "<:PREVIEW_ENABLED:819472065986953266> Preview Enabled",
"RELAY_ENABLED": "<:PEOPLE:816579869168893962> Relay Enabled",
"WELCOME_SCREEN_ENABLED": "<:WELCOME:816581124125097994> Welcome Screen",
"FORCE_RELAY": "<:PEOPLE:816579869168893962> Forced Relay Enabled",
"DISCOVERABLE_DISABLED": "<:PUBLIC_DISABLED:839197973958623272> Discovery Disabled",
"ENABLED_DISCOVERABLE_BEFORE": "<:DISCOVERY:816577881647087617> Old Discovery Enabled",
"DISCOVERABLE": "<:DISCOVERY:816577881647087617> Discovery Enabled",
"COMMUNITY": "<:COMMUNITY:816577159924678676> Community Server",
"COMMERCE": "<:COMMERCE:816577415227899914> Store Channels",
"NEWS": "<:NEWS:816583763731152896> Announcement Channels",
"VIP_REGIONS": "<:BOOST_VOICE:816575966452252723> 384kbps Bitrate",
"MORE_EMOJI": "<:BOOST_EMOJI:816575966666948619> More Emoji Slots",
"FEATURABLE": "<:DISCOVERY:816577881647087617> Available on Featured Discovery",
"MORE_STICKERS": "<:MORE_STICKERS:878297552863260742> More Sticker Slots",
"MONETIZATION_ENABLED": "<:MONETIZATION_ENABLED:850454393386958928> Server Monetization Enabled",
"TICKETED_EVENTS_ENABLED": "<:TICKETED_STAGES_ENABLED:850454393530875944> Ticketed Stages Enabled",
"SEVEN_DAY_THREAD_ARCHIVE": "<:THREAD_ARCHIVING:878297227729174568> 7 Day Thread Archiving",
"THREE_DAY_THREAD_ARCHIVE": "<:THREAD_ARCHIVING:878297227729174568> 3 Day Thread Archiving",
"PRIVATE_THREADS": "<:PRIVATE_THREADS:878297227729174569> Private Threads",
"THREADS_ENABLED_TESTING": "<:thread:994365140617154692> Threads Testing Enabled",
"THREADS_ENABLED": "<:thread:994365140617154692> Threads Enabled",
"NEW_THREAD_PERMISSIONS": "<:thread:994365140617154692> New Thread Permissions Enabled",
"ROLE_ICONS": "<:ROLE_ICONS:878297142022795275> Role Icons",
"ROLE_SUBSCRIPTIONS_ENABLED": "<:ROLE_SUBSCRIPTIONS_ENABLED:888440487101485116> Role Subscriptions Enabled",
"ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE": "<:ROLE_SUBSCRIPTIONS_ENABLED:888440487101485116> Role Subscriptions Available for Purchase",
"PREMIUM_TIER_3_OVERRIDE": "<:lc_boosting:699936318398136341> Forced Boosting Level 3",
"TEXT_IN_VOICE_ENABLED": "<:TEXT_IN_VOICE_ENABLED:903643253033803796> Voice Channel Text Chat Enabled",
"MEMBER_PROFILES": "<:MEMBER_PROFILES:903643209517907988> Member Profiles",
"ANIMATED_BANNER": "<:BOOST_GIF:816575965559914516> Animated Banner",
"INTERNAL_EMPLOYEE_ONLY": "<:badge_staff:903276633161609246> Internal Employee Server",
"CHANNEL_BANNER": "<:BOOST_IMAGE:816574652780249108> Channel Banners",
"HUB": "<:HUB:915365729447063632> School Hub",
"HAS_DIRECTORY_ENTRY": "<:DIRECTORY:915365390836695040> Linked to School Hub",
"EXPOSED_TO_ACTIVITIES_WTP_EXPERIMENT": "<:ACTIVITY_FEATURE:937826423337529354> Exposed to Activities WTP Experiment",
"EXPOSED_TO_BOOSTING_TIERS_EXPERIMENT": "<:lc_boosting:699936318398136341> Exposed to Activities Boosting Tier Experiment",
"HAD_EARLY_ACTIVITIES_ACCESS": "<:ACTIVITY_FEATURE:937826423337529354> Had Activities Early Access",
"THREAD_DEFAULT_AUTO_ARCHIVE_DURATION": "<:TEXT_IN_VOICE_ENABLED:903643253033803796> Thread Default Auto Archive Duration",
"AUTO_MODERATION": "<:lc_icon_mod:704269746312446013> Auto Moderation",
"CREATOR_MONETIZABLE": "<:MONETIZATION_ENABLED:850454393386958928> Creator Monetizable",
"CREATOR_MONETIZABLE_DISABLED": "<:MONETIZATION_ENABLED:850454393386958928> Creator Monetizable Disabled",
"BOOSTING_TIERS_EXPERIMENT_SMALL_GUILD": "<:lc_boosting:699936318398136341> Boosting Tiers Experiment Small Guild",
"BOOSTING_TIERS_EXPERIMENT_MEDIUM_GUILD": "<:lc_boosting:699936318398136341> Boosting Tiers Experiment Medium Guild",
"BOT_DEVELOPER_EARLY_ACCESS": "<:i:903276631173509130> Forum Channels Early Access"
"ANIMATED_BANNER": {
"icon": GUILD_FEATURE_ICONS.ANIMATED
},
"ANIMATED_ICON": {
"icon": GUILD_FEATURE_ICONS.ANIMATED
},
"AUTO_MODERATION": {
"icon": GUILD_FEATURE_ICONS.MOD
},
"BANNER": {
"icon": GUILD_FEATURE_ICONS.IMAGE,
"name": "Server Banner"
},
"BOOSTING_TIERS_EXPERIMENT_MEDIUM_GUILD": {
"icon": GUILD_FEATURE_ICONS.BOOST
},
"BOOSTING_TIERS_EXPERIMENT_SMALL_GUILD": {
"icon": GUILD_FEATURE_ICONS.BOOST
},
"BOT_DEVELOPER_EARLY_ACCESS": {
"icon": GUILD_FEATURE_ICONS.BOT_DEVELOPER,
"name": "Bot Developer Testing"
},
"CHANNEL_BANNER": {
"icon": GUILD_FEATURE_ICONS.IMAGE,
"name": "Channel Banners"
},
"COMMERCE": {
"icon": GUILD_FEATURE_ICONS.TAG,
"name": "Store Channels"
},
"COMMUNITY": {
"icon": GUILD_FEATURE_ICONS.GLOBE
},
"CREATOR_MONETIZABLE": {
"icon": GUILD_FEATURE_ICONS.WALLET
},
"CREATOR_MONETIZABLE_DISABLED": {
"icon": GUILD_FEATURE_ICONS.WALLET
},
"DISCOVERABLE": {
"icon": GUILD_FEATURE_ICONS.DISCOVERY_ENABLED,
"name": "Discovery"
},
"DISCOVERABLE_DISABLED": {
"icon": GUILD_FEATURE_ICONS.DISCOVERY_DISABLED,
"name": "Discovery Disabled"
},
"ENABLED_DISCOVERABLE_BEFORE": {
"icon": GUILD_FEATURE_ICONS.DISCOVERY,
"name": "Has been in Discovery"
},
"EXPOSED_TO_ACTIVITIES_WTP_EXPERIMENT": {
"icon": GUILD_FEATURE_ICONS.ACTIVITY
},
"EXPOSED_TO_BOOSTING_TIERS_EXPERIMENT": {
"icon": GUILD_FEATURE_ICONS.BOOST
},
"FEATURABLE": {
"icon": GUILD_FEATURE_ICONS.STAR
},
"FORCE_RELAY": {
"icon": "🏃💨",
"name": "Relay Force Enabled"
},
"GUILD_HOME_TEST": {
"icon": GUILD_FEATURE_ICONS.HOME
},
"HAD_EARLY_ACTIVITIES_ACCESS": {
"icon": GUILD_FEATURE_ICONS.ACTIVITY
},
"HAS_DIRECTORY_ENTRY": {
"icon": GUILD_FEATURE_ICONS.DIRECTORY
},
"HUB": {
"icon": GUILD_FEATURE_ICONS.EDUCATION,
"name": "School Hub"
},
"INTERNAL_EMPLOYEE_ONLY": {
"icon": GUILD_FEATURE_ICONS.STAFF,
"name": "Internal Employee Server"
},
"INVITE_SPLASH": {
"icon": GUILD_FEATURE_ICONS.IMAGE
},
"LINKED_TO_HUB": {
"icon": GUILD_FEATURE_ICONS.DIRECTORY
},
"MEMBER_PROFILES": {
"icon": GUILD_FEATURE_ICONS.PROFILE
},
"MEMBER_VERIFICATION_GATE_ENABLED": {
"icon": GUILD_FEATURE_ICONS.WAVE,
"name": "Membership Screening"
},
"MONETIZATION_ENABLED": {
"icon": GUILD_FEATURE_ICONS.WALLET
},
"MORE_EMOJI": {
"icon": GUILD_FEATURE_ICONS.EMOJI
},
"MORE_STICKERS": {
"icon": GUILD_FEATURE_ICONS.STICKER
},
"NEWS": {
"icon": GUILD_FEATURE_ICONS.MEGAPHONE,
"name": "Announcement Channels"
},
"NEW_THREAD_PERMISSIONS": {
"icon": GUILD_FEATURE_ICONS.THREAD
},
"PARTNERED": {
"icon": GUILD_FEATURE_ICONS.PARTNER
},
"PREMIUM_TIER_3_OVERRIDE": {
"icon": GUILD_FEATURE_ICONS.STAFF
},
"PREVIEW_ENABLED": {
"icon": GUILD_FEATURE_ICONS.EYE
},
"PRIVATE_THREADS": {
"icon": GUILD_FEATURE_ICONS.PRIVATE_THREAD
},
"RELAY_ENABLED": {
"icon": "🏃"
},
"ROLE_ICONS": {
"icon": GUILD_FEATURE_ICONS.ROLE_ICONS
},
"ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE": {
"icon": GUILD_FEATURE_ICONS.ROLE_SUBSCRIPTIONS
},
"ROLE_SUBSCRIPTIONS_ENABLED": {
"icon": GUILD_FEATURE_ICONS.ROLE_SUBSCRIPTIONS,
"name": "Role Subscriptions"
},
"SEVEN_DAY_THREAD_ARCHIVE": {
"icon": GUILD_FEATURE_ICONS.CLOCK,
"name": "7 Day Thread Archiving"
},
"TEXT_IN_VOICE_ENABLED": {
"icon": GUILD_FEATURE_ICONS.MESSAGE,
"name": "Text in Voice"
},
"THREADS_ENABLED": {
"icon": GUILD_FEATURE_ICONS.THREAD
},
"THREADS_ENABLED_TESTING": {
"icon": GUILD_FEATURE_ICONS.THREAD,
"name": "Thread Testing Enabled"
},
"THREAD_DEFAULT_AUTO_ARCHIVE_DURATION": {
"icon": GUILD_FEATURE_ICONS.CLOCK
},
"THREE_DAY_THREAD_ARCHIVE": {
"icon": GUILD_FEATURE_ICONS.CLOCK,
"name": "3 Day Thread Archiving"
},
"TICKETED_EVENTS_ENABLED": {
"icon": GUILD_FEATURE_ICONS.TICKET
},
"VANITY_URL": {
"icon": GUILD_FEATURE_ICONS.STAR,
"name": "Vanity URL"
},
"VERIFIED": {
"icon": GUILD_FEATURE_ICONS.VERIFIED
},
"VIP_REGIONS": {
"icon": GUILD_FEATURE_ICONS.AUDIO,
"name": "VIP Regions"
},
"WELCOME_SCREEN_ENABLED": {
"icon": GUILD_FEATURE_ICONS.WAVE
},
"LURKABLE": {
"icon": GUILD_FEATURE_ICONS.EYE,
"name": "Lurking Enabled"
},
"MEMBER_LIST_DISABLED": {
"icon": GUILD_FEATURE_ICONS.PEOPLE_RED
},
"PUBLIC_DISABLED": {
"icon": GUILD_FEATURE_ICONS.GLOBE
},
"PUBLIC": {
"icon": GUILD_FEATURE_ICONS.GLOBE
},
"ROLE_SUBSCRIPTIONS_ENABLED_FOR_PURCHASE": {
"icon": GUILD_FEATURE_ICONS.ROLE_SUBSCRIPTIONS
},
"TICKETING_ENABLED": {
"icon": GUILD_FEATURE_ICONS.TICKET
}
})
module.exports.TIKTOK_VOICES = [