#include "providers/twitch/TwitchBadge.hpp" #include namespace chatterino { // set of badge IDs that should be given specific flags. // vanity flag is left out on purpose as it is our default flag const QSet globalAuthority{"staff", "admin", "global_mod"}; const QSet channelAuthority{"moderator", "vip", "broadcaster"}; const QSet subBadges{"subscriber", "founder"}; Badge::Badge(QString key, QString value) : key_(std::move(key)) , value_(std::move(value)) { if (globalAuthority.contains(this->key_)) { this->flag_ = MessageElementFlag::BadgeGlobalAuthority; } else if (channelAuthority.contains(this->key_)) { this->flag_ = MessageElementFlag::BadgeChannelAuthority; } else if (subBadges.contains(this->key_)) { this->flag_ = MessageElementFlag::BadgeSubscription; } } } // namespace chatterino