diff --git a/CHANGELOG.md b/CHANGELOG.md index 9ba7d664..f9554b9b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -22,6 +22,7 @@ - Minor: Added support for BetterTTV Pro subscriber badges. (#6625) - Minor: Added `debug.traceback` for plugins. (#6652) - Minor: Added title and duration options for `/clip` command. (#6669) +- Minor: Added the ability to filter on messages by the author's external badges (example: `author.external_badges contains "chatterino:Top Donator"` or `author.external_badges contains "frankerfacez:bot"`). (#6709) - Minor: Added Markdown support to user notes. (#6490) - Minor: Moderators and VIPs in shared chats now show their channel badges. (#6653) - Bugfix: Moderation checks now include the lead moderator badge. (#6642) diff --git a/src/controllers/filters/lang/Filter.cpp b/src/controllers/filters/lang/Filter.cpp index 42de6fd1..e9aa4a0d 100644 --- a/src/controllers/filters/lang/Filter.cpp +++ b/src/controllers/filters/lang/Filter.cpp @@ -12,6 +12,7 @@ namespace chatterino::filters { const QMap MESSAGE_TYPING_CONTEXT{ {"author.badges", Type::StringList}, + {"author.external_badges", Type::StringList}, {"author.color", Type::Color}, {"author.name", Type::String}, {"author.user_id", Type::String}, @@ -49,16 +50,17 @@ ContextMap buildContextMap(const MessagePtr &m, chatterino::Channel *channel) { auto watchingChannel = getApp()->getTwitch()->getWatchingChannel().get(); - /* - * Looking to add a new identifier to filters? Here's what to do: - * 1. Update validIdentifiersMap in Tokenizer.cpp + /* + * Looking to add a new identifier to filters? Here's what to do: + * 1. Update VALID_IDENTIFIERS_MAP in Tokenizer.cpp * 2. Add the identifier to the list below - * 3. Add the type of the identifier to MESSAGE_TYPING_CONTEXT in Filter.hpp + * 3. Add the type of the identifier to MESSAGE_TYPING_CONTEXT at the top of this file * 4. Add the value for the identifier to the ContextMap returned by this function - * + * * List of identifiers: * * author.badges + * author.external_badges * author.color * author.name * author.user_id @@ -121,6 +123,7 @@ ContextMap buildContextMap(const MessagePtr &m, chatterino::Channel *channel) } ContextMap vars = { {"author.badges", std::move(badges)}, + {"author.external_badges", m->externalBadges}, {"author.color", m->usernameColor}, {"author.name", m->displayName}, {"author.user_id", m->userID}, diff --git a/src/controllers/filters/lang/Tokenizer.cpp b/src/controllers/filters/lang/Tokenizer.cpp index fa39cf22..366ea14e 100644 --- a/src/controllers/filters/lang/Tokenizer.cpp +++ b/src/controllers/filters/lang/Tokenizer.cpp @@ -18,6 +18,7 @@ namespace chatterino::filters { const QMap VALID_IDENTIFIERS_MAP{ {"author.badges", "author badges"}, + {"author.external_badges", "author external badges"}, {"author.color", "author color"}, {"author.name", "author name"}, {"author.user_id", "author user id"}, diff --git a/src/messages/Message.cpp b/src/messages/Message.cpp index 270ce1a0..c7ac9236 100644 --- a/src/messages/Message.cpp +++ b/src/messages/Message.cpp @@ -132,6 +132,8 @@ QJsonObject Message::toJson() const } msg["twitchBadgeInfos"_L1] = twitchBadgeInfos; + msg["externalBadges"_L1] = QJsonArray::fromStringList(this->externalBadges); + if (this->highlightColor) { msg["highlightColor"_L1] = this->highlightColor->name(QColor::HexArgb); diff --git a/src/messages/Message.hpp b/src/messages/Message.hpp index b98cbafa..36770cd0 100644 --- a/src/messages/Message.hpp +++ b/src/messages/Message.hpp @@ -61,6 +61,13 @@ struct Message { /// Map of extra data associated with each Twitch badge std::unordered_map twitchBadgeInfos; + /// List of external badges associated with this message + /// The badge should follow the following format: "provider:badgename". e.g.: + /// - betterttv:pro + /// - frankerfacez:mod + /// - 7tv:sub + QStringList externalBadges; + std::shared_ptr highlightColor; // Each reply holds a reference to the thread. When every reply is dropped, // the reply thread will be cleaned up by the TwitchChannel. diff --git a/src/messages/MessageBuilder.cpp b/src/messages/MessageBuilder.cpp index 115c2bf2..76c5830b 100644 --- a/src/messages/MessageBuilder.cpp +++ b/src/messages/MessageBuilder.cpp @@ -2472,6 +2472,9 @@ void MessageBuilder::appendChatterinoBadges(const QString &userID) { this->emplace(*badge, MessageElementFlag::BadgeChatterino); + + /// e.g. "chatterino:Chatterino Top donator" + this->message().externalBadges.emplace_back((*badge)->name.string); } } @@ -2482,6 +2485,9 @@ void MessageBuilder::appendFfzBadges(TwitchChannel *twitchChannel, { this->emplace( badge.emote, MessageElementFlag::BadgeFfz, badge.color); + + /// e.g. "frankerfacez:subwoofer" + this->message().externalBadges.emplace_back(badge.emote->name.string); } if (twitchChannel == nullptr) @@ -2493,6 +2499,9 @@ void MessageBuilder::appendFfzBadges(TwitchChannel *twitchChannel, { this->emplace( badge.emote, MessageElementFlag::BadgeFfz, badge.color); + + /// e.g. "frankerfacez:subwoofer" + this->message().externalBadges.emplace_back(badge.emote->name.string); } } @@ -2501,6 +2510,9 @@ void MessageBuilder::appendBttvBadges(const QString &userID) if (auto badge = getApp()->getBttvBadges()->getBadge({userID})) { this->emplace(*badge, MessageElementFlag::BadgeBttv); + + /// e.g. "betterttv:Pro Subscriber" + this->message().externalBadges.emplace_back((*badge)->name.string); } } @@ -2509,6 +2521,9 @@ void MessageBuilder::appendSeventvBadges(const QString &userID) if (auto badge = getApp()->getSeventvBadges()->getBadge({userID})) { this->emplace(*badge, MessageElementFlag::BadgeSevenTV); + + /// e.g. "7tv:NNYS 2024" + this->message().externalBadges.emplace_back((*badge)->name.string); } } diff --git a/src/providers/bttv/BttvBadges.cpp b/src/providers/bttv/BttvBadges.cpp index eec21ca1..0f608736 100644 --- a/src/providers/bttv/BttvBadges.cpp +++ b/src/providers/bttv/BttvBadges.cpp @@ -3,6 +3,8 @@ #include "messages/Emote.hpp" #include "messages/Image.hpp" +using namespace Qt::StringLiterals; + namespace chatterino { QString BttvBadges::idForBadge(const QJsonObject &badgeJson) const @@ -11,10 +13,10 @@ QString BttvBadges::idForBadge(const QJsonObject &badgeJson) const } EmotePtr BttvBadges::createBadge(const QString &id, - const QJsonObject & /* badgeJson */) const + const QJsonObject & /*badgeJson*/) const { auto emote = Emote{ - .name = EmoteName{}, + .name = EmoteName{u"betterttv:pro"_s}, .images = ImageSet(Image::fromUrl(Url{id}, 18.0 / 72.0)), .tooltip = Tooltip{"BTTV Pro"}, .homePage = Url{}, diff --git a/src/providers/chatterino/ChatterinoBadges.cpp b/src/providers/chatterino/ChatterinoBadges.cpp index 55fec5cd..45ef0074 100644 --- a/src/providers/chatterino/ChatterinoBadges.cpp +++ b/src/providers/chatterino/ChatterinoBadges.cpp @@ -48,8 +48,9 @@ void ChatterinoBadges::loadChatterinoBadges() // The sizes for the images are only an estimation, there might // be badges with different sizes. constexpr QSize baseSize(18, 18); + auto tooltip = jsonBadge.value("tooltip").toString(); auto emote = Emote{ - .name = EmoteName{}, + .name = EmoteName{u"chatterino:" % tooltip}, .images = ImageSet{ Image::fromUrl( @@ -62,7 +63,7 @@ void ChatterinoBadges::loadChatterinoBadges() Url{jsonBadge.value("image3").toString()}, 0.25, baseSize * 4), }, - .tooltip = Tooltip{jsonBadge.value("tooltip").toString()}, + .tooltip = Tooltip{tooltip}, .homePage = Url{}, }; diff --git a/src/providers/ffz/FfzBadges.cpp b/src/providers/ffz/FfzBadges.cpp index d82f18d7..22331cf8 100644 --- a/src/providers/ffz/FfzBadges.cpp +++ b/src/providers/ffz/FfzBadges.cpp @@ -66,7 +66,11 @@ void FfzBadges::load() jsonBadge["height"].toInt(18)); auto emote = Emote{ - .name = EmoteName{}, + .name = + EmoteName{ + u"frankerfacez:" % + jsonBadge.value("name").toString(), + }, .images = ImageSet{ Image::fromUrl( @@ -82,13 +86,11 @@ void FfzBadges::load() .homePage = Url{}, }; - Badge badge; - int badgeID = jsonBadge.value("id").toInt(); this->badges[badgeID] = Badge{ - std::make_shared(std::move(emote)), - QColor(jsonBadge.value("color").toString()), + .emote = std::make_shared(std::move(emote)), + .color = QColor(jsonBadge.value("color").toString()), }; // Find users with this badge diff --git a/src/providers/ffz/FfzBadges.hpp b/src/providers/ffz/FfzBadges.hpp index 4219cd03..1591a1a4 100644 --- a/src/providers/ffz/FfzBadges.hpp +++ b/src/providers/ffz/FfzBadges.hpp @@ -4,6 +4,7 @@ #include "util/ThreadGuard.hpp" #include +#include #include #include diff --git a/src/providers/seventv/SeventvBadges.cpp b/src/providers/seventv/SeventvBadges.cpp index 583316a0..75ed3d0b 100644 --- a/src/providers/seventv/SeventvBadges.cpp +++ b/src/providers/seventv/SeventvBadges.cpp @@ -1,7 +1,7 @@ #include "providers/seventv/SeventvBadges.hpp" #include "messages/Emote.hpp" -#include "messages/Image.hpp" +#include "messages/Image.hpp" // IWYU pragma: keep #include "providers/seventv/SeventvEmotes.hpp" namespace chatterino { @@ -15,7 +15,9 @@ EmotePtr SeventvBadges::createBadge(const QString &id, const QJsonObject &badgeJson) const { auto emote = Emote{ - .name = EmoteName{}, + // We utilize the "emote" "name" for filtering badges, and expect + // the format to be "7tv:badge name" (e.g. "7tv:NNYS 2024") + .name = EmoteName{u"7tv:" % badgeJson["name"].toString()}, .images = SeventvEmotes::createImageSet(badgeJson, true), .tooltip = Tooltip{badgeJson["tooltip"].toString()}, .homePage = Url{}, diff --git a/tests/snapshots/EventSub/automod-message-hold/automod-category.json b/tests/snapshots/EventSub/automod-message-hold/automod-category.json index 099acdf5..84cf86da 100644 --- a/tests/snapshots/EventSub/automod-message-hold/automod-category.json +++ b/tests/snapshots/EventSub/automod-message-hold/automod-category.json @@ -132,6 +132,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|AutoModOffendingMessageHeader|EventSub|ModerationAction", "frozen": true, "id": "automod_19d067ff-89b5-4790-a720-97599894eb6b", @@ -239,6 +241,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|AutoModOffendingMessage|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/automod-message-hold/blocked-term-enclosed.json b/tests/snapshots/EventSub/automod-message-hold/blocked-term-enclosed.json index 2f3ef5e0..b6199c2b 100644 --- a/tests/snapshots/EventSub/automod-message-hold/blocked-term-enclosed.json +++ b/tests/snapshots/EventSub/automod-message-hold/blocked-term-enclosed.json @@ -144,6 +144,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|AutoModOffendingMessageHeader|AutoModBlockedTerm|EventSub|ModerationAction", "frozen": true, "id": "automod_0cbb6e48-1606-46c6-b1ac-c97626e1c5cb", @@ -253,6 +255,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|AutoModOffendingMessage|AutoModBlockedTerm|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/automod-message-hold/blocked-term.json b/tests/snapshots/EventSub/automod-message-hold/blocked-term.json index 9d8626ff..2558d7b4 100644 --- a/tests/snapshots/EventSub/automod-message-hold/blocked-term.json +++ b/tests/snapshots/EventSub/automod-message-hold/blocked-term.json @@ -138,6 +138,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|AutoModOffendingMessageHeader|AutoModBlockedTerm|EventSub|ModerationAction", "frozen": true, "id": "automod_c0fac418-25a9-41b8-adf3-5bd637fca1e1", @@ -245,6 +247,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|AutoModOffendingMessage|AutoModBlockedTerm|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/automod-message-hold/blocked-terms-4.json b/tests/snapshots/EventSub/automod-message-hold/blocked-terms-4.json index c8648d09..d28951da 100644 --- a/tests/snapshots/EventSub/automod-message-hold/blocked-terms-4.json +++ b/tests/snapshots/EventSub/automod-message-hold/blocked-terms-4.json @@ -190,6 +190,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|AutoModOffendingMessageHeader|AutoModBlockedTerm|EventSub|ModerationAction", "frozen": true, "id": "automod_45a63ca1-1b0c-46ef-9075-d112f9a9f376", @@ -303,6 +305,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|AutoModOffendingMessage|AutoModBlockedTerm|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/automod-message-hold/localized-name.json b/tests/snapshots/EventSub/automod-message-hold/localized-name.json index 329e847a..0715c386 100644 --- a/tests/snapshots/EventSub/automod-message-hold/localized-name.json +++ b/tests/snapshots/EventSub/automod-message-hold/localized-name.json @@ -132,6 +132,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|AutoModOffendingMessageHeader|EventSub|ModerationAction", "frozen": true, "id": "automod_19d067ff-89b5-4790-a720-97599894eb6b", @@ -239,6 +241,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|AutoModOffendingMessage|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/automod-message-update/approved.json b/tests/snapshots/EventSub/automod-message-update/approved.json index 8569ee18..3e6b2c76 100644 --- a/tests/snapshots/EventSub/automod-message-update/approved.json +++ b/tests/snapshots/EventSub/automod-message-update/approved.json @@ -172,6 +172,8 @@ ] } ], + "externalBadges": [ + ], "flags": "Disabled|PubSub|AutoMod|AutoModOffendingMessageHeader|EventSub|ModerationAction", "frozen": true, "id": "automod_19d067ff-89b5-4790-a720-97599894eb6b", @@ -279,6 +281,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|AutoModOffendingMessage|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/automod-message-update/denied.json b/tests/snapshots/EventSub/automod-message-update/denied.json index 22d37f5b..9c4f831d 100644 --- a/tests/snapshots/EventSub/automod-message-update/denied.json +++ b/tests/snapshots/EventSub/automod-message-update/denied.json @@ -172,6 +172,8 @@ ] } ], + "externalBadges": [ + ], "flags": "Disabled|PubSub|AutoMod|AutoModOffendingMessageHeader|EventSub|ModerationAction", "frozen": true, "id": "automod_19d067ff-89b5-4790-a720-97599894eb6b", @@ -279,6 +281,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|AutoModOffendingMessage|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/automod-message-update/expired.json b/tests/snapshots/EventSub/automod-message-update/expired.json index 8683164a..daa87903 100644 --- a/tests/snapshots/EventSub/automod-message-update/expired.json +++ b/tests/snapshots/EventSub/automod-message-update/expired.json @@ -172,6 +172,8 @@ ] } ], + "externalBadges": [ + ], "flags": "Disabled|PubSub|AutoMod|AutoModOffendingMessageHeader|EventSub|ModerationAction", "frozen": true, "id": "automod_19d067ff-89b5-4790-a720-97599894eb6b", @@ -279,6 +281,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|AutoModOffendingMessage|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-chat-user-message-hold/message-held.json b/tests/snapshots/EventSub/channel-chat-user-message-hold/message-held.json index 2de8662a..d04acce2 100644 --- a/tests/snapshots/EventSub/channel-chat-user-message-hold/message-held.json +++ b/tests/snapshots/EventSub/channel-chat-user-message-hold/message-held.json @@ -86,6 +86,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|EventSub", "frozen": true, "id": "automod_e39e3c58-3d25-49fd-8c94-e776ef57a7f8", diff --git a/tests/snapshots/EventSub/channel-chat-user-message-update/message-approved.json b/tests/snapshots/EventSub/channel-chat-user-message-update/message-approved.json index a8c3e42a..de73f331 100644 --- a/tests/snapshots/EventSub/channel-chat-user-message-update/message-approved.json +++ b/tests/snapshots/EventSub/channel-chat-user-message-update/message-approved.json @@ -79,6 +79,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|EventSub", "frozen": true, "id": "automod_5686ec52-e02c-4042-ac21-1dfd8cab0f9f", diff --git a/tests/snapshots/EventSub/channel-chat-user-message-update/message-denied.json b/tests/snapshots/EventSub/channel-chat-user-message-update/message-denied.json index 806e6941..db21ae9f 100644 --- a/tests/snapshots/EventSub/channel-chat-user-message-update/message-denied.json +++ b/tests/snapshots/EventSub/channel-chat-user-message-update/message-denied.json @@ -85,6 +85,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|AutoMod|EventSub", "frozen": true, "id": "automod_fc90dc3b-0634-41c3-8365-f40719f076ab", diff --git a/tests/snapshots/EventSub/channel-moderate/add-blocked-term-three.json b/tests/snapshots/EventSub/channel-moderate/add-blocked-term-three.json index 755bf681..54b94e30 100644 --- a/tests/snapshots/EventSub/channel-moderate/add-blocked-term-three.json +++ b/tests/snapshots/EventSub/channel-moderate/add-blocked-term-three.json @@ -188,6 +188,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/add-blocked-term.json b/tests/snapshots/EventSub/channel-moderate/add-blocked-term.json index 9f24257e..84a66adc 100644 --- a/tests/snapshots/EventSub/channel-moderate/add-blocked-term.json +++ b/tests/snapshots/EventSub/channel-moderate/add-blocked-term.json @@ -198,6 +198,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/add-permitted-term-two.json b/tests/snapshots/EventSub/channel-moderate/add-permitted-term-two.json index 3b0253d3..216c4715 100644 --- a/tests/snapshots/EventSub/channel-moderate/add-permitted-term-two.json +++ b/tests/snapshots/EventSub/channel-moderate/add-permitted-term-two.json @@ -186,6 +186,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/add-permitted-term.json b/tests/snapshots/EventSub/channel-moderate/add-permitted-term.json index 4154f545..dac859e3 100644 --- a/tests/snapshots/EventSub/channel-moderate/add-permitted-term.json +++ b/tests/snapshots/EventSub/channel-moderate/add-permitted-term.json @@ -198,6 +198,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/ban-reason.json b/tests/snapshots/EventSub/channel-moderate/ban-reason.json index a23ab756..1a741928 100644 --- a/tests/snapshots/EventSub/channel-moderate/ban-reason.json +++ b/tests/snapshots/EventSub/channel-moderate/ban-reason.json @@ -153,6 +153,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/ban-stacking-reason.json b/tests/snapshots/EventSub/channel-moderate/ban-stacking-reason.json index 3145fdf9..8fd8c4a2 100644 --- a/tests/snapshots/EventSub/channel-moderate/ban-stacking-reason.json +++ b/tests/snapshots/EventSub/channel-moderate/ban-stacking-reason.json @@ -216,6 +216,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|EventSub|ModerationAction", "frozen": true, "id": "", @@ -347,6 +349,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/ban-stacking.json b/tests/snapshots/EventSub/channel-moderate/ban-stacking.json index f6b669b4..ec8adc89 100644 --- a/tests/snapshots/EventSub/channel-moderate/ban-stacking.json +++ b/tests/snapshots/EventSub/channel-moderate/ban-stacking.json @@ -214,6 +214,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|EventSub|ModerationAction", "frozen": true, "id": "", @@ -329,6 +331,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/ban.json b/tests/snapshots/EventSub/channel-moderate/ban.json index e940324e..e2fd83b4 100644 --- a/tests/snapshots/EventSub/channel-moderate/ban.json +++ b/tests/snapshots/EventSub/channel-moderate/ban.json @@ -137,6 +137,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/clear.json b/tests/snapshots/EventSub/channel-moderate/clear.json index 3ccd8950..7fd88475 100644 --- a/tests/snapshots/EventSub/channel-moderate/clear.json +++ b/tests/snapshots/EventSub/channel-moderate/clear.json @@ -101,6 +101,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|PubSub|ClearChat|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/delete-long.json b/tests/snapshots/EventSub/channel-moderate/delete-long.json index 54bfbf40..e0c35831 100644 --- a/tests/snapshots/EventSub/channel-moderate/delete-long.json +++ b/tests/snapshots/EventSub/channel-moderate/delete-long.json @@ -155,6 +155,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/delete.json b/tests/snapshots/EventSub/channel-moderate/delete.json index f2cf3f4e..0cc7f4bb 100644 --- a/tests/snapshots/EventSub/channel-moderate/delete.json +++ b/tests/snapshots/EventSub/channel-moderate/delete.json @@ -155,6 +155,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/emoteonly-off.json b/tests/snapshots/EventSub/channel-moderate/emoteonly-off.json index aeaa4230..1f315a12 100644 --- a/tests/snapshots/EventSub/channel-moderate/emoteonly-off.json +++ b/tests/snapshots/EventSub/channel-moderate/emoteonly-off.json @@ -144,6 +144,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/emoteonly.json b/tests/snapshots/EventSub/channel-moderate/emoteonly.json index 894f9404..766ad8fd 100644 --- a/tests/snapshots/EventSub/channel-moderate/emoteonly.json +++ b/tests/snapshots/EventSub/channel-moderate/emoteonly.json @@ -144,6 +144,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/followers-0s.json b/tests/snapshots/EventSub/channel-moderate/followers-0s.json index 9cf0f223..23cc4f09 100644 --- a/tests/snapshots/EventSub/channel-moderate/followers-0s.json +++ b/tests/snapshots/EventSub/channel-moderate/followers-0s.json @@ -146,6 +146,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/followers-off.json b/tests/snapshots/EventSub/channel-moderate/followers-off.json index fbda6ef5..d8e358fc 100644 --- a/tests/snapshots/EventSub/channel-moderate/followers-off.json +++ b/tests/snapshots/EventSub/channel-moderate/followers-off.json @@ -144,6 +144,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/followers.json b/tests/snapshots/EventSub/channel-moderate/followers.json index 048770ae..9f3b9118 100644 --- a/tests/snapshots/EventSub/channel-moderate/followers.json +++ b/tests/snapshots/EventSub/channel-moderate/followers.json @@ -162,6 +162,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/mod.json b/tests/snapshots/EventSub/channel-moderate/mod.json index 591ff383..f1489e40 100644 --- a/tests/snapshots/EventSub/channel-moderate/mod.json +++ b/tests/snapshots/EventSub/channel-moderate/mod.json @@ -136,6 +136,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/raid.json b/tests/snapshots/EventSub/channel-moderate/raid.json index fe3b6064..7271a86a 100644 --- a/tests/snapshots/EventSub/channel-moderate/raid.json +++ b/tests/snapshots/EventSub/channel-moderate/raid.json @@ -140,6 +140,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/remove-blocked-term-four.json b/tests/snapshots/EventSub/channel-moderate/remove-blocked-term-four.json index eac48ba6..b78a7395 100644 --- a/tests/snapshots/EventSub/channel-moderate/remove-blocked-term-four.json +++ b/tests/snapshots/EventSub/channel-moderate/remove-blocked-term-four.json @@ -190,6 +190,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/remove-blocked-term.json b/tests/snapshots/EventSub/channel-moderate/remove-blocked-term.json index 9dad6ad9..005481c4 100644 --- a/tests/snapshots/EventSub/channel-moderate/remove-blocked-term.json +++ b/tests/snapshots/EventSub/channel-moderate/remove-blocked-term.json @@ -198,6 +198,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/remove-permitted-term-from-automod.json b/tests/snapshots/EventSub/channel-moderate/remove-permitted-term-from-automod.json index 155c1e3b..2b599da6 100644 --- a/tests/snapshots/EventSub/channel-moderate/remove-permitted-term-from-automod.json +++ b/tests/snapshots/EventSub/channel-moderate/remove-permitted-term-from-automod.json @@ -198,6 +198,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/remove-permitted-term.json b/tests/snapshots/EventSub/channel-moderate/remove-permitted-term.json index f4480d7e..abd3049d 100644 --- a/tests/snapshots/EventSub/channel-moderate/remove-permitted-term.json +++ b/tests/snapshots/EventSub/channel-moderate/remove-permitted-term.json @@ -198,6 +198,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/shared-ban-reason.json b/tests/snapshots/EventSub/channel-moderate/shared-ban-reason.json index b8d83f9d..81d86ea4 100644 --- a/tests/snapshots/EventSub/channel-moderate/shared-ban-reason.json +++ b/tests/snapshots/EventSub/channel-moderate/shared-ban-reason.json @@ -187,6 +187,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|SharedMessage|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/shared-ban-stacking-diff-sources.json b/tests/snapshots/EventSub/channel-moderate/shared-ban-stacking-diff-sources.json index 1ebcb85b..d25bfdef 100644 --- a/tests/snapshots/EventSub/channel-moderate/shared-ban-stacking-diff-sources.json +++ b/tests/snapshots/EventSub/channel-moderate/shared-ban-stacking-diff-sources.json @@ -244,6 +244,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|SharedMessage|EventSub|ModerationAction", "frozen": true, "id": "", @@ -392,6 +394,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|SharedMessage|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/shared-ban-stacking.json b/tests/snapshots/EventSub/channel-moderate/shared-ban-stacking.json index 2ea33b41..b226a3d1 100644 --- a/tests/snapshots/EventSub/channel-moderate/shared-ban-stacking.json +++ b/tests/snapshots/EventSub/channel-moderate/shared-ban-stacking.json @@ -244,6 +244,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|SharedMessage|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/shared-ban.json b/tests/snapshots/EventSub/channel-moderate/shared-ban.json index 46f3c8d2..672286d3 100644 --- a/tests/snapshots/EventSub/channel-moderate/shared-ban.json +++ b/tests/snapshots/EventSub/channel-moderate/shared-ban.json @@ -170,6 +170,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|SharedMessage|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/shared-delete-long.json b/tests/snapshots/EventSub/channel-moderate/shared-delete-long.json index 43d61c8c..1917602d 100644 --- a/tests/snapshots/EventSub/channel-moderate/shared-delete-long.json +++ b/tests/snapshots/EventSub/channel-moderate/shared-delete-long.json @@ -188,6 +188,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/shared-delete.json b/tests/snapshots/EventSub/channel-moderate/shared-delete.json index 0242a289..a6f007f8 100644 --- a/tests/snapshots/EventSub/channel-moderate/shared-delete.json +++ b/tests/snapshots/EventSub/channel-moderate/shared-delete.json @@ -188,6 +188,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/shared-timeout-stacking-diff-sources.json b/tests/snapshots/EventSub/channel-moderate/shared-timeout-stacking-diff-sources.json index d4f6dd2b..7a62bb52 100644 --- a/tests/snapshots/EventSub/channel-moderate/shared-timeout-stacking-diff-sources.json +++ b/tests/snapshots/EventSub/channel-moderate/shared-timeout-stacking-diff-sources.json @@ -290,6 +290,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|SharedMessage|EventSub|ModerationAction", "frozen": true, "id": "", @@ -430,6 +432,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|EventSub|ModerationAction", "frozen": true, "id": "", @@ -600,6 +604,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|SharedMessage|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/shared-timeout-stacking-diff-sources2.json b/tests/snapshots/EventSub/channel-moderate/shared-timeout-stacking-diff-sources2.json index be6cb729..5f4ed630 100644 --- a/tests/snapshots/EventSub/channel-moderate/shared-timeout-stacking-diff-sources2.json +++ b/tests/snapshots/EventSub/channel-moderate/shared-timeout-stacking-diff-sources2.json @@ -250,6 +250,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|SharedMessage|EventSub|ModerationAction", "frozen": true, "id": "", @@ -420,6 +422,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|SharedMessage|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/shared-timeout-stacking.json b/tests/snapshots/EventSub/channel-moderate/shared-timeout-stacking.json index 156f304c..7a708a8d 100644 --- a/tests/snapshots/EventSub/channel-moderate/shared-timeout-stacking.json +++ b/tests/snapshots/EventSub/channel-moderate/shared-timeout-stacking.json @@ -250,6 +250,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|SharedMessage|EventSub|ModerationAction", "frozen": true, "id": "", @@ -390,6 +392,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/shared-timeout.json b/tests/snapshots/EventSub/channel-moderate/shared-timeout.json index 01804b3a..e226f7a2 100644 --- a/tests/snapshots/EventSub/channel-moderate/shared-timeout.json +++ b/tests/snapshots/EventSub/channel-moderate/shared-timeout.json @@ -194,6 +194,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|SharedMessage|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/shared-unban.json b/tests/snapshots/EventSub/channel-moderate/shared-unban.json index c437a7c2..bba5f8c6 100644 --- a/tests/snapshots/EventSub/channel-moderate/shared-unban.json +++ b/tests/snapshots/EventSub/channel-moderate/shared-unban.json @@ -169,6 +169,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Untimeout|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/shared-untimeout.json b/tests/snapshots/EventSub/channel-moderate/shared-untimeout.json index a06abaea..0a69ae56 100644 --- a/tests/snapshots/EventSub/channel-moderate/shared-untimeout.json +++ b/tests/snapshots/EventSub/channel-moderate/shared-untimeout.json @@ -169,6 +169,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Untimeout|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/slow-off.json b/tests/snapshots/EventSub/channel-moderate/slow-off.json index 8c92890f..9147f2da 100644 --- a/tests/snapshots/EventSub/channel-moderate/slow-off.json +++ b/tests/snapshots/EventSub/channel-moderate/slow-off.json @@ -144,6 +144,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/slow.json b/tests/snapshots/EventSub/channel-moderate/slow.json index 9d2b2a58..badd39ca 100644 --- a/tests/snapshots/EventSub/channel-moderate/slow.json +++ b/tests/snapshots/EventSub/channel-moderate/slow.json @@ -162,6 +162,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/subscribers-off.json b/tests/snapshots/EventSub/channel-moderate/subscribers-off.json index e7f97c4e..fc8dd035 100644 --- a/tests/snapshots/EventSub/channel-moderate/subscribers-off.json +++ b/tests/snapshots/EventSub/channel-moderate/subscribers-off.json @@ -144,6 +144,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/subscribers.json b/tests/snapshots/EventSub/channel-moderate/subscribers.json index 76786910..56dd6b0b 100644 --- a/tests/snapshots/EventSub/channel-moderate/subscribers.json +++ b/tests/snapshots/EventSub/channel-moderate/subscribers.json @@ -144,6 +144,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/timeout-stacking-reason.json b/tests/snapshots/EventSub/channel-moderate/timeout-stacking-reason.json index 067eee0b..ab6c7f57 100644 --- a/tests/snapshots/EventSub/channel-moderate/timeout-stacking-reason.json +++ b/tests/snapshots/EventSub/channel-moderate/timeout-stacking-reason.json @@ -220,6 +220,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|EventSub|ModerationAction", "frozen": true, "id": "", @@ -375,6 +377,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/timeout-stacking.json b/tests/snapshots/EventSub/channel-moderate/timeout-stacking.json index 6fde7fb4..6fd52b22 100644 --- a/tests/snapshots/EventSub/channel-moderate/timeout-stacking.json +++ b/tests/snapshots/EventSub/channel-moderate/timeout-stacking.json @@ -219,6 +219,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|EventSub|ModerationAction", "frozen": true, "id": "", @@ -359,6 +361,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/timeout.json b/tests/snapshots/EventSub/channel-moderate/timeout.json index 16505a8c..e22d5e86 100644 --- a/tests/snapshots/EventSub/channel-moderate/timeout.json +++ b/tests/snapshots/EventSub/channel-moderate/timeout.json @@ -179,6 +179,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|PubSub|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/unban-request-approve-message.json b/tests/snapshots/EventSub/channel-moderate/unban-request-approve-message.json index fb3f9ba8..dcf1f4d2 100644 --- a/tests/snapshots/EventSub/channel-moderate/unban-request-approve-message.json +++ b/tests/snapshots/EventSub/channel-moderate/unban-request-approve-message.json @@ -146,6 +146,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/unban-request-approve.json b/tests/snapshots/EventSub/channel-moderate/unban-request-approve.json index c5c81521..48f16c1e 100644 --- a/tests/snapshots/EventSub/channel-moderate/unban-request-approve.json +++ b/tests/snapshots/EventSub/channel-moderate/unban-request-approve.json @@ -142,6 +142,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/unban-request-deny-message.json b/tests/snapshots/EventSub/channel-moderate/unban-request-deny-message.json index fbcad807..eab562a1 100644 --- a/tests/snapshots/EventSub/channel-moderate/unban-request-deny-message.json +++ b/tests/snapshots/EventSub/channel-moderate/unban-request-deny-message.json @@ -147,6 +147,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/unban-request-deny.json b/tests/snapshots/EventSub/channel-moderate/unban-request-deny.json index e66d63f3..30fcf50a 100644 --- a/tests/snapshots/EventSub/channel-moderate/unban-request-deny.json +++ b/tests/snapshots/EventSub/channel-moderate/unban-request-deny.json @@ -142,6 +142,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/unban.json b/tests/snapshots/EventSub/channel-moderate/unban.json index 0d7cbfb3..e906dce7 100644 --- a/tests/snapshots/EventSub/channel-moderate/unban.json +++ b/tests/snapshots/EventSub/channel-moderate/unban.json @@ -136,6 +136,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Untimeout|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/uniquechat-off.json b/tests/snapshots/EventSub/channel-moderate/uniquechat-off.json index c06763ce..fb7a0a7b 100644 --- a/tests/snapshots/EventSub/channel-moderate/uniquechat-off.json +++ b/tests/snapshots/EventSub/channel-moderate/uniquechat-off.json @@ -144,6 +144,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/uniquechat.json b/tests/snapshots/EventSub/channel-moderate/uniquechat.json index 5e91ea2c..904b06c9 100644 --- a/tests/snapshots/EventSub/channel-moderate/uniquechat.json +++ b/tests/snapshots/EventSub/channel-moderate/uniquechat.json @@ -144,6 +144,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/unmod.json b/tests/snapshots/EventSub/channel-moderate/unmod.json index f28ce4c2..afd92fc8 100644 --- a/tests/snapshots/EventSub/channel-moderate/unmod.json +++ b/tests/snapshots/EventSub/channel-moderate/unmod.json @@ -136,6 +136,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/unraid.json b/tests/snapshots/EventSub/channel-moderate/unraid.json index 9acbcc2a..dada8859 100644 --- a/tests/snapshots/EventSub/channel-moderate/unraid.json +++ b/tests/snapshots/EventSub/channel-moderate/unraid.json @@ -139,6 +139,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/untimeout.json b/tests/snapshots/EventSub/channel-moderate/untimeout.json index 80952c3f..0fb1c9bb 100644 --- a/tests/snapshots/EventSub/channel-moderate/untimeout.json +++ b/tests/snapshots/EventSub/channel-moderate/untimeout.json @@ -136,6 +136,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Untimeout|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/warn-shared.json b/tests/snapshots/EventSub/channel-moderate/warn-shared.json index cbd13c3d..30b857ad 100644 --- a/tests/snapshots/EventSub/channel-moderate/warn-shared.json +++ b/tests/snapshots/EventSub/channel-moderate/warn-shared.json @@ -155,6 +155,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-moderate/warn.json b/tests/snapshots/EventSub/channel-moderate/warn.json index 6fab3574..40129587 100644 --- a/tests/snapshots/EventSub/channel-moderate/warn.json +++ b/tests/snapshots/EventSub/channel-moderate/warn.json @@ -155,6 +155,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-suspicious-user-message/restricted-bad-type.json b/tests/snapshots/EventSub/channel-suspicious-user-message/restricted-bad-type.json index 2c27401d..9108df9e 100644 --- a/tests/snapshots/EventSub/channel-suspicious-user-message/restricted-bad-type.json +++ b/tests/snapshots/EventSub/channel-suspicious-user-message/restricted-bad-type.json @@ -81,6 +81,8 @@ ] } ], + "externalBadges": [ + ], "flags": "LowTrustUsers|RestrictedMessage|EventSub", "frozen": true, "id": "", @@ -188,6 +190,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|LowTrustUsers|RestrictedMessage|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-suspicious-user-message/restricted-ban-evader.json b/tests/snapshots/EventSub/channel-suspicious-user-message/restricted-ban-evader.json index 6ee881b6..04afa763 100644 --- a/tests/snapshots/EventSub/channel-suspicious-user-message/restricted-ban-evader.json +++ b/tests/snapshots/EventSub/channel-suspicious-user-message/restricted-ban-evader.json @@ -86,6 +86,8 @@ ] } ], + "externalBadges": [ + ], "flags": "LowTrustUsers|RestrictedMessage|EventSub", "frozen": true, "id": "", @@ -193,6 +195,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|LowTrustUsers|RestrictedMessage|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-suspicious-user-message/restricted-emote.json b/tests/snapshots/EventSub/channel-suspicious-user-message/restricted-emote.json index fcea50e5..95a817cf 100644 --- a/tests/snapshots/EventSub/channel-suspicious-user-message/restricted-emote.json +++ b/tests/snapshots/EventSub/channel-suspicious-user-message/restricted-emote.json @@ -84,6 +84,8 @@ ] } ], + "externalBadges": [ + ], "flags": "LowTrustUsers|RestrictedMessage|EventSub", "frozen": true, "id": "", @@ -191,6 +193,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|LowTrustUsers|RestrictedMessage|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-suspicious-user-message/restricted.json b/tests/snapshots/EventSub/channel-suspicious-user-message/restricted.json index 30caaf9f..b1510897 100644 --- a/tests/snapshots/EventSub/channel-suspicious-user-message/restricted.json +++ b/tests/snapshots/EventSub/channel-suspicious-user-message/restricted.json @@ -81,6 +81,8 @@ ] } ], + "externalBadges": [ + ], "flags": "LowTrustUsers|RestrictedMessage|EventSub", "frozen": true, "id": "", @@ -188,6 +190,8 @@ ] } ], + "externalBadges": [ + ], "flags": "PubSub|LowTrustUsers|RestrictedMessage|EventSub", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-suspicious-user-update/monitored.json b/tests/snapshots/EventSub/channel-suspicious-user-update/monitored.json index f5d4d8f1..3d3139b9 100644 --- a/tests/snapshots/EventSub/channel-suspicious-user-update/monitored.json +++ b/tests/snapshots/EventSub/channel-suspicious-user-update/monitored.json @@ -115,6 +115,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-suspicious-user-update/no-treatment.json b/tests/snapshots/EventSub/channel-suspicious-user-update/no-treatment.json index 6904640a..6f15bf53 100644 --- a/tests/snapshots/EventSub/channel-suspicious-user-update/no-treatment.json +++ b/tests/snapshots/EventSub/channel-suspicious-user-update/no-treatment.json @@ -115,6 +115,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/EventSub/channel-suspicious-user-update/restricted.json b/tests/snapshots/EventSub/channel-suspicious-user-update/restricted.json index 90febc7d..3d6465ac 100644 --- a/tests/snapshots/EventSub/channel-suspicious-user-update/restricted.json +++ b/tests/snapshots/EventSub/channel-suspicious-user-update/restricted.json @@ -115,6 +115,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|EventSub|ModerationAction", "frozen": true, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/action.json b/tests/snapshots/IrcMessageHandler/action.json index 28a96360..9834187a 100644 --- a/tests/snapshots/IrcMessageHandler/action.json +++ b/tests/snapshots/IrcMessageHandler/action.json @@ -154,6 +154,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|Action", "frozen": false, "id": "90ef1e46-8baa-4bf2-9c54-272f39d6fa11", diff --git a/tests/snapshots/IrcMessageHandler/all-usernames.json b/tests/snapshots/IrcMessageHandler/all-usernames.json index 93d0e60f..0492dc8c 100644 --- a/tests/snapshots/IrcMessageHandler/all-usernames.json +++ b/tests/snapshots/IrcMessageHandler/all-usernames.json @@ -274,6 +274,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "438b85cc-fa67-4c03-bc38-c4ec2527822c", diff --git a/tests/snapshots/IrcMessageHandler/announcement.json b/tests/snapshots/IrcMessageHandler/announcement.json index 74fa8d90..d6c76ac4 100644 --- a/tests/snapshots/IrcMessageHandler/announcement.json +++ b/tests/snapshots/IrcMessageHandler/announcement.json @@ -130,6 +130,8 @@ ] } ], + "externalBadges": [ + ], "flags": "Highlighted|Collapsed|Subscription", "frozen": false, "highlightColor": "#64c466ff", @@ -199,6 +201,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/bad-emotes.json b/tests/snapshots/IrcMessageHandler/bad-emotes.json index 5e2e9c76..adb67d13 100644 --- a/tests/snapshots/IrcMessageHandler/bad-emotes.json +++ b/tests/snapshots/IrcMessageHandler/bad-emotes.json @@ -125,6 +125,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "7be87072-bf24-4fa3-b3df-0ea6fa5f1474", diff --git a/tests/snapshots/IrcMessageHandler/bad-emotes2.json b/tests/snapshots/IrcMessageHandler/bad-emotes2.json index cfc109f3..b0d4b1d2 100644 --- a/tests/snapshots/IrcMessageHandler/bad-emotes2.json +++ b/tests/snapshots/IrcMessageHandler/bad-emotes2.json @@ -125,6 +125,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "7be87072-bf24-4fa3-b3df-0ea6fa5f1474", diff --git a/tests/snapshots/IrcMessageHandler/bad-emotes3.json b/tests/snapshots/IrcMessageHandler/bad-emotes3.json index 4f226e31..4fb8583c 100644 --- a/tests/snapshots/IrcMessageHandler/bad-emotes3.json +++ b/tests/snapshots/IrcMessageHandler/bad-emotes3.json @@ -103,6 +103,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/bad-emotes4.json b/tests/snapshots/IrcMessageHandler/bad-emotes4.json index 8fc100fa..70ec2a49 100644 --- a/tests/snapshots/IrcMessageHandler/bad-emotes4.json +++ b/tests/snapshots/IrcMessageHandler/bad-emotes4.json @@ -103,6 +103,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/badges-invalid.json b/tests/snapshots/IrcMessageHandler/badges-invalid.json index b51fe261..b6790869 100644 --- a/tests/snapshots/IrcMessageHandler/badges-invalid.json +++ b/tests/snapshots/IrcMessageHandler/badges-invalid.json @@ -63,7 +63,7 @@ "images": { "1x": "https://chatterino.com/Chatterino.png" }, - "name": "", + "name": "chatterino:Chatterino", "tooltip": "Chatterino badge" }, "flags": "BadgeChatterino", @@ -81,7 +81,7 @@ "images": { "1x": "https://chatterino.com/FFZ1.png" }, - "name": "", + "name": "frankerfacez:FFZ1", "tooltip": "FFZ1 badge" }, "flags": "BadgeFfz", @@ -99,7 +99,7 @@ "images": { "1x": "https://chatterino.com/FFZ2.png" }, - "name": "", + "name": "frankerfacez:FFZ2", "tooltip": "FFZ2 badge" }, "flags": "BadgeFfz", @@ -117,7 +117,7 @@ "images": { "1x": "https://chatterino.com/FFZ2.png" }, - "name": "", + "name": "frankerfacez:FFZ2", "tooltip": "FFZ2 badge" }, "flags": "BadgeFfz", @@ -135,7 +135,7 @@ "images": { "1x": "https://chatterino.com/FFZ2.png" }, - "name": "", + "name": "frankerfacez:FFZ2", "tooltip": "FFZ2 badge" }, "flags": "BadgeFfz", @@ -147,13 +147,31 @@ "trailingSpace": true, "type": "FfzBadgeElement" }, + { + "emote": { + "id": "https://chatterino.com/betterttv/test.png", + "images": { + "1x": "https://chatterino.com/betterttv/test.png" + }, + "name": "betterttv:pro", + "tooltip": "BTTV Pro" + }, + "flags": "BadgeBttv", + "link": { + "type": "None", + "value": "" + }, + "tooltip": "BTTV Pro", + "trailingSpace": true, + "type": "BadgeElement" + }, { "emote": { "id": "1", "images": { "1x": "https://chatterino.com/7tv//1x" }, - "name": "", + "name": "7tv:7TV badge name", "tooltip": "7TV badge" }, "flags": "BadgeSevenTV", @@ -209,6 +227,15 @@ "url": "" } ], + "externalBadges": [ + "chatterino:Chatterino", + "frankerfacez:FFZ1", + "frankerfacez:FFZ2", + "frankerfacez:FFZ2", + "frankerfacez:FFZ2", + "betterttv:pro", + "7tv:7TV badge name" + ], "flags": "Collapsed", "frozen": false, "id": "546c42a6-21d0-4f3d-a6a0-c77f78d7b131", diff --git a/tests/snapshots/IrcMessageHandler/badges.json b/tests/snapshots/IrcMessageHandler/badges.json index 5bdc9760..aa892256 100644 --- a/tests/snapshots/IrcMessageHandler/badges.json +++ b/tests/snapshots/IrcMessageHandler/badges.json @@ -63,7 +63,7 @@ "images": { "1x": "https://chatterino.com/Chatterino.png" }, - "name": "", + "name": "chatterino:Chatterino", "tooltip": "Chatterino badge" }, "flags": "BadgeChatterino", @@ -81,7 +81,7 @@ "images": { "1x": "https://chatterino.com/FFZ1.png" }, - "name": "", + "name": "frankerfacez:FFZ1", "tooltip": "FFZ1 badge" }, "flags": "BadgeFfz", @@ -99,7 +99,7 @@ "images": { "1x": "https://chatterino.com/FFZ2.png" }, - "name": "", + "name": "frankerfacez:FFZ2", "tooltip": "FFZ2 badge" }, "flags": "BadgeFfz", @@ -117,7 +117,7 @@ "images": { "1x": "https://chatterino.com/FFZ2.png" }, - "name": "", + "name": "frankerfacez:FFZ2", "tooltip": "FFZ2 badge" }, "flags": "BadgeFfz", @@ -135,7 +135,7 @@ "images": { "1x": "https://chatterino.com/FFZ2.png" }, - "name": "", + "name": "frankerfacez:FFZ2", "tooltip": "FFZ2 badge" }, "flags": "BadgeFfz", @@ -147,13 +147,31 @@ "trailingSpace": true, "type": "FfzBadgeElement" }, + { + "emote": { + "id": "https://chatterino.com/betterttv/test.png", + "images": { + "1x": "https://chatterino.com/betterttv/test.png" + }, + "name": "betterttv:pro", + "tooltip": "BTTV Pro" + }, + "flags": "BadgeBttv", + "link": { + "type": "None", + "value": "" + }, + "tooltip": "BTTV Pro", + "trailingSpace": true, + "type": "BadgeElement" + }, { "emote": { "id": "1", "images": { "1x": "https://chatterino.com/7tv//1x" }, - "name": "", + "name": "7tv:7TV badge name", "tooltip": "7TV badge" }, "flags": "BadgeSevenTV", @@ -209,6 +227,15 @@ "url": "" } ], + "externalBadges": [ + "chatterino:Chatterino", + "frankerfacez:FFZ1", + "frankerfacez:FFZ2", + "frankerfacez:FFZ2", + "frankerfacez:FFZ2", + "betterttv:pro", + "7tv:7TV badge name" + ], "flags": "Collapsed", "frozen": false, "id": "546c42a6-21d0-4f3d-a6a0-c77f78d7b131", diff --git a/tests/snapshots/IrcMessageHandler/bitsbadge.json b/tests/snapshots/IrcMessageHandler/bitsbadge.json index 200235bb..b54a4237 100644 --- a/tests/snapshots/IrcMessageHandler/bitsbadge.json +++ b/tests/snapshots/IrcMessageHandler/bitsbadge.json @@ -73,6 +73,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/cheer1.json b/tests/snapshots/IrcMessageHandler/cheer1.json index f35262c7..a90693e7 100644 --- a/tests/snapshots/IrcMessageHandler/cheer1.json +++ b/tests/snapshots/IrcMessageHandler/cheer1.json @@ -403,6 +403,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|CheerMessage", "frozen": false, "id": "fd6c5507-3a4e-4d24-8f6e-fadf07f520d3", diff --git a/tests/snapshots/IrcMessageHandler/cheer2.json b/tests/snapshots/IrcMessageHandler/cheer2.json index 7fd46fed..2353a84f 100644 --- a/tests/snapshots/IrcMessageHandler/cheer2.json +++ b/tests/snapshots/IrcMessageHandler/cheer2.json @@ -177,6 +177,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|CheerMessage", "frozen": false, "id": "fd6c5507-3a4e-4d24-8f6e-fadf07f520d3", diff --git a/tests/snapshots/IrcMessageHandler/cheer3.json b/tests/snapshots/IrcMessageHandler/cheer3.json index 07cdee11..5aec05d3 100644 --- a/tests/snapshots/IrcMessageHandler/cheer3.json +++ b/tests/snapshots/IrcMessageHandler/cheer3.json @@ -160,6 +160,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|CheerMessage", "frozen": false, "id": "fd6c5507-3a4e-4d24-8f6e-fadf07f520d3", diff --git a/tests/snapshots/IrcMessageHandler/cheer4.json b/tests/snapshots/IrcMessageHandler/cheer4.json index ef3baad2..a63d0152 100644 --- a/tests/snapshots/IrcMessageHandler/cheer4.json +++ b/tests/snapshots/IrcMessageHandler/cheer4.json @@ -122,6 +122,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|CheerMessage", "frozen": false, "id": "60d8835b-23fa-418c-96ca-5874e5d5e8ba", diff --git a/tests/snapshots/IrcMessageHandler/clearchat-stack-always.json b/tests/snapshots/IrcMessageHandler/clearchat-stack-always.json index 9f85af8d..da229447 100644 --- a/tests/snapshots/IrcMessageHandler/clearchat-stack-always.json +++ b/tests/snapshots/IrcMessageHandler/clearchat-stack-always.json @@ -57,6 +57,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|ClearChat|ModerationAction", "frozen": false, "id": "", @@ -222,6 +224,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "b4f3ac1d-6335-4567-bb8d-e76dfd83f7e3", diff --git a/tests/snapshots/IrcMessageHandler/clearchat-stack-never.json b/tests/snapshots/IrcMessageHandler/clearchat-stack-never.json index 795e0874..de24328a 100644 --- a/tests/snapshots/IrcMessageHandler/clearchat-stack-never.json +++ b/tests/snapshots/IrcMessageHandler/clearchat-stack-never.json @@ -55,6 +55,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|ClearChat|ModerationAction", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/clearchat-stack-no-user.json b/tests/snapshots/IrcMessageHandler/clearchat-stack-no-user.json index 84420840..898e7c48 100644 --- a/tests/snapshots/IrcMessageHandler/clearchat-stack-no-user.json +++ b/tests/snapshots/IrcMessageHandler/clearchat-stack-no-user.json @@ -57,6 +57,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|ClearChat|ModerationAction", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/clearchat.json b/tests/snapshots/IrcMessageHandler/clearchat.json index faecba5e..b5a349de 100644 --- a/tests/snapshots/IrcMessageHandler/clearchat.json +++ b/tests/snapshots/IrcMessageHandler/clearchat.json @@ -55,6 +55,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|ClearChat|ModerationAction", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/clearmsg-non-truncated.json b/tests/snapshots/IrcMessageHandler/clearmsg-non-truncated.json index 98a01e50..8cdb25cf 100644 --- a/tests/snapshots/IrcMessageHandler/clearmsg-non-truncated.json +++ b/tests/snapshots/IrcMessageHandler/clearmsg-non-truncated.json @@ -97,6 +97,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|ModerationAction", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/clearmsg-truncated.json b/tests/snapshots/IrcMessageHandler/clearmsg-truncated.json index 14aac258..2edc742d 100644 --- a/tests/snapshots/IrcMessageHandler/clearmsg-truncated.json +++ b/tests/snapshots/IrcMessageHandler/clearmsg-truncated.json @@ -106,6 +106,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|ModerationAction", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/custom-mod.json b/tests/snapshots/IrcMessageHandler/custom-mod.json index a82d0577..ef616db7 100644 --- a/tests/snapshots/IrcMessageHandler/custom-mod.json +++ b/tests/snapshots/IrcMessageHandler/custom-mod.json @@ -109,6 +109,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "97c28382-e8d2-45a0-bb5d-2305fc4ef139", diff --git a/tests/snapshots/IrcMessageHandler/custom-vip.json b/tests/snapshots/IrcMessageHandler/custom-vip.json index 3e39612b..0c0615ff 100644 --- a/tests/snapshots/IrcMessageHandler/custom-vip.json +++ b/tests/snapshots/IrcMessageHandler/custom-vip.json @@ -119,6 +119,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "97bb0dfb-a35f-446d-8634-7522d8ef73ed", diff --git a/tests/snapshots/IrcMessageHandler/emote-emoji.json b/tests/snapshots/IrcMessageHandler/emote-emoji.json index 1847b497..63b6fc2f 100644 --- a/tests/snapshots/IrcMessageHandler/emote-emoji.json +++ b/tests/snapshots/IrcMessageHandler/emote-emoji.json @@ -190,6 +190,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "44f85d39-b5fb-475d-8555-f4244f2f7e82", diff --git a/tests/snapshots/IrcMessageHandler/emote.json b/tests/snapshots/IrcMessageHandler/emote.json index b434caca..fe03794b 100644 --- a/tests/snapshots/IrcMessageHandler/emote.json +++ b/tests/snapshots/IrcMessageHandler/emote.json @@ -125,6 +125,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "9b1c3cb9-7817-47ea-add1-f9d4a9b4f846", diff --git a/tests/snapshots/IrcMessageHandler/emoteonly-on.json b/tests/snapshots/IrcMessageHandler/emoteonly-on.json index f89bc842..9497d202 100644 --- a/tests/snapshots/IrcMessageHandler/emoteonly-on.json +++ b/tests/snapshots/IrcMessageHandler/emoteonly-on.json @@ -55,6 +55,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/emotes.json b/tests/snapshots/IrcMessageHandler/emotes.json index a158a36b..4bd59e44 100644 --- a/tests/snapshots/IrcMessageHandler/emotes.json +++ b/tests/snapshots/IrcMessageHandler/emotes.json @@ -163,6 +163,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "7be87072-bf24-4fa3-b3df-0ea6fa5f1474", diff --git a/tests/snapshots/IrcMessageHandler/emotes2.json b/tests/snapshots/IrcMessageHandler/emotes2.json index eae299b3..aaa33eae 100644 --- a/tests/snapshots/IrcMessageHandler/emotes2.json +++ b/tests/snapshots/IrcMessageHandler/emotes2.json @@ -330,6 +330,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "23c8b81c-7c73-44e4-84f1-7d37e99714e4", diff --git a/tests/snapshots/IrcMessageHandler/emotes3.json b/tests/snapshots/IrcMessageHandler/emotes3.json index 1e094067..340b576d 100644 --- a/tests/snapshots/IrcMessageHandler/emotes3.json +++ b/tests/snapshots/IrcMessageHandler/emotes3.json @@ -190,6 +190,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "aea562cc-1adf-47de-b656-0aaa245f1030", diff --git a/tests/snapshots/IrcMessageHandler/emotes4.json b/tests/snapshots/IrcMessageHandler/emotes4.json index 81a7e2f6..3ce214e0 100644 --- a/tests/snapshots/IrcMessageHandler/emotes4.json +++ b/tests/snapshots/IrcMessageHandler/emotes4.json @@ -122,6 +122,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/emotes5.json b/tests/snapshots/IrcMessageHandler/emotes5.json index 3bf09fc3..e41a53a8 100644 --- a/tests/snapshots/IrcMessageHandler/emotes5.json +++ b/tests/snapshots/IrcMessageHandler/emotes5.json @@ -122,6 +122,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/first-msg.json b/tests/snapshots/IrcMessageHandler/first-msg.json index 41e3cadd..1c64c832 100644 --- a/tests/snapshots/IrcMessageHandler/first-msg.json +++ b/tests/snapshots/IrcMessageHandler/first-msg.json @@ -125,6 +125,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|FirstMessage", "frozen": false, "id": "9c2dd916-5a6d-4c1f-9fe7-a081b62a9c6b", diff --git a/tests/snapshots/IrcMessageHandler/highlight1.json b/tests/snapshots/IrcMessageHandler/highlight1.json index 1184f2bc..5d90d4d9 100644 --- a/tests/snapshots/IrcMessageHandler/highlight1.json +++ b/tests/snapshots/IrcMessageHandler/highlight1.json @@ -102,6 +102,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "1bf2d49a-8b88-4116-81dd-5098f11726eb", diff --git a/tests/snapshots/IrcMessageHandler/highlight2.json b/tests/snapshots/IrcMessageHandler/highlight2.json index ee8a4791..ae5fed65 100644 --- a/tests/snapshots/IrcMessageHandler/highlight2.json +++ b/tests/snapshots/IrcMessageHandler/highlight2.json @@ -104,6 +104,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Highlighted|Collapsed|ShowInMentions", "frozen": false, "highlightColor": "#7f7f3f49", diff --git a/tests/snapshots/IrcMessageHandler/highlight3.json b/tests/snapshots/IrcMessageHandler/highlight3.json index 5f5f0cec..e38d0768 100644 --- a/tests/snapshots/IrcMessageHandler/highlight3.json +++ b/tests/snapshots/IrcMessageHandler/highlight3.json @@ -103,6 +103,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Highlighted|Collapsed", "frozen": false, "highlightColor": "#48ae812f", diff --git a/tests/snapshots/IrcMessageHandler/hype-chat-invalid.json b/tests/snapshots/IrcMessageHandler/hype-chat-invalid.json index 66839c6d..90a4bd13 100644 --- a/tests/snapshots/IrcMessageHandler/hype-chat-invalid.json +++ b/tests/snapshots/IrcMessageHandler/hype-chat-invalid.json @@ -141,6 +141,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|ElevatedMessage", "frozen": false, "id": "8779a9e5-cf1b-47b3-b9fe-67a5b1b605f6", diff --git a/tests/snapshots/IrcMessageHandler/hype-chat0.json b/tests/snapshots/IrcMessageHandler/hype-chat0.json index 443213df..520cb420 100644 --- a/tests/snapshots/IrcMessageHandler/hype-chat0.json +++ b/tests/snapshots/IrcMessageHandler/hype-chat0.json @@ -141,6 +141,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|ElevatedMessage", "frozen": false, "id": "8779a9e5-cf1b-47b3-b9fe-67a5b1b605f6", @@ -210,6 +212,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|ElevatedMessage", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/hype-chat1.json b/tests/snapshots/IrcMessageHandler/hype-chat1.json index 2e9c16d0..4d6fc295 100644 --- a/tests/snapshots/IrcMessageHandler/hype-chat1.json +++ b/tests/snapshots/IrcMessageHandler/hype-chat1.json @@ -148,6 +148,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|ElevatedMessage", "frozen": false, "id": "e6681ba0-cdc6-4482-93a3-515b74361e8b", @@ -222,6 +224,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|ElevatedMessage", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/hype-chat2.json b/tests/snapshots/IrcMessageHandler/hype-chat2.json index a548d7b0..2712f0b6 100644 --- a/tests/snapshots/IrcMessageHandler/hype-chat2.json +++ b/tests/snapshots/IrcMessageHandler/hype-chat2.json @@ -147,6 +147,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|ElevatedMessage", "frozen": false, "id": "39a80a3d-c16e-420f-9bbb-faba4976a3bb", @@ -220,6 +222,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|ElevatedMessage", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/ignore-block1.json b/tests/snapshots/IrcMessageHandler/ignore-block1.json index a23c57ec..442f774f 100644 --- a/tests/snapshots/IrcMessageHandler/ignore-block1.json +++ b/tests/snapshots/IrcMessageHandler/ignore-block1.json @@ -102,6 +102,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "c34a372b-d59e-4a36-9ad8-d964098526e4", diff --git a/tests/snapshots/IrcMessageHandler/ignore-infinite.json b/tests/snapshots/IrcMessageHandler/ignore-infinite.json index bebb35c0..0d5005a9 100644 --- a/tests/snapshots/IrcMessageHandler/ignore-infinite.json +++ b/tests/snapshots/IrcMessageHandler/ignore-infinite.json @@ -108,6 +108,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "08e1573a-c09a-4052-8cf6-dd9fc5edf35b", diff --git a/tests/snapshots/IrcMessageHandler/ignore-replace.json b/tests/snapshots/IrcMessageHandler/ignore-replace.json index 88e97c43..72b8844e 100644 --- a/tests/snapshots/IrcMessageHandler/ignore-replace.json +++ b/tests/snapshots/IrcMessageHandler/ignore-replace.json @@ -250,6 +250,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "2199102c-31ae-49b1-9d2c-a33bb3a02021", diff --git a/tests/snapshots/IrcMessageHandler/justinfan.json b/tests/snapshots/IrcMessageHandler/justinfan.json index 89667c77..496e120d 100644 --- a/tests/snapshots/IrcMessageHandler/justinfan.json +++ b/tests/snapshots/IrcMessageHandler/justinfan.json @@ -102,6 +102,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "e5a690e7-74c8-41cb-977f-55b903f6be23", diff --git a/tests/snapshots/IrcMessageHandler/links.json b/tests/snapshots/IrcMessageHandler/links.json index bf7364ac..74808123 100644 --- a/tests/snapshots/IrcMessageHandler/links.json +++ b/tests/snapshots/IrcMessageHandler/links.json @@ -219,6 +219,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "84b6f44a-c8eb-4abe-8a78-cf736642f695", diff --git a/tests/snapshots/IrcMessageHandler/mentions.json b/tests/snapshots/IrcMessageHandler/mentions.json index 0b400102..815b50e4 100644 --- a/tests/snapshots/IrcMessageHandler/mentions.json +++ b/tests/snapshots/IrcMessageHandler/mentions.json @@ -153,6 +153,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "49f33e31-101f-4b03-bfc4-4b8252d0c09c", diff --git a/tests/snapshots/IrcMessageHandler/mod.json b/tests/snapshots/IrcMessageHandler/mod.json index 24ac1f41..a0ae1a1b 100644 --- a/tests/snapshots/IrcMessageHandler/mod.json +++ b/tests/snapshots/IrcMessageHandler/mod.json @@ -164,6 +164,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "97c28382-e8d2-45a0-bb5d-2305fc4ef139", diff --git a/tests/snapshots/IrcMessageHandler/nickname.json b/tests/snapshots/IrcMessageHandler/nickname.json index b79b7689..638bbc1a 100644 --- a/tests/snapshots/IrcMessageHandler/nickname.json +++ b/tests/snapshots/IrcMessageHandler/nickname.json @@ -102,6 +102,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "a964d705-0b72-4867-aab7-bc9a14945742", diff --git a/tests/snapshots/IrcMessageHandler/no-nick.json b/tests/snapshots/IrcMessageHandler/no-nick.json index 9de4d344..451e2da7 100644 --- a/tests/snapshots/IrcMessageHandler/no-nick.json +++ b/tests/snapshots/IrcMessageHandler/no-nick.json @@ -102,6 +102,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "1bf2d49a-8b88-4116-81dd-5098f11726eb", diff --git a/tests/snapshots/IrcMessageHandler/no-tags.json b/tests/snapshots/IrcMessageHandler/no-tags.json index aeea1ba5..4e3192e2 100644 --- a/tests/snapshots/IrcMessageHandler/no-tags.json +++ b/tests/snapshots/IrcMessageHandler/no-tags.json @@ -106,6 +106,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/raid.json b/tests/snapshots/IrcMessageHandler/raid.json index 9c9afb05..9a86cfaf 100644 --- a/tests/snapshots/IrcMessageHandler/raid.json +++ b/tests/snapshots/IrcMessageHandler/raid.json @@ -85,6 +85,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/redeemed-highlight.json b/tests/snapshots/IrcMessageHandler/redeemed-highlight.json index 86de770c..4d610090 100644 --- a/tests/snapshots/IrcMessageHandler/redeemed-highlight.json +++ b/tests/snapshots/IrcMessageHandler/redeemed-highlight.json @@ -140,6 +140,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|RedeemedHighlight", "frozen": false, "id": "c5a927a2-1f68-41f7-9137-809a37e58e61", diff --git a/tests/snapshots/IrcMessageHandler/reply-action.json b/tests/snapshots/IrcMessageHandler/reply-action.json index b2e66be2..9d0f84f5 100644 --- a/tests/snapshots/IrcMessageHandler/reply-action.json +++ b/tests/snapshots/IrcMessageHandler/reply-action.json @@ -158,6 +158,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|ReplyMessage", "frozen": false, "id": "9d74021f-375a-44f1-80e4-0dd58e64396a", diff --git a/tests/snapshots/IrcMessageHandler/reply-block.json b/tests/snapshots/IrcMessageHandler/reply-block.json index c19da6d3..908254ad 100644 --- a/tests/snapshots/IrcMessageHandler/reply-block.json +++ b/tests/snapshots/IrcMessageHandler/reply-block.json @@ -158,6 +158,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "289ffa22-d29a-4300-88be-1734b0a33b2a", diff --git a/tests/snapshots/IrcMessageHandler/reply-blocked-user.json b/tests/snapshots/IrcMessageHandler/reply-blocked-user.json index e663406c..c741a90b 100644 --- a/tests/snapshots/IrcMessageHandler/reply-blocked-user.json +++ b/tests/snapshots/IrcMessageHandler/reply-blocked-user.json @@ -162,6 +162,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "e5b84adf-b62d-47ff-8534-2cc57e24a5fb", diff --git a/tests/snapshots/IrcMessageHandler/reply-child.json b/tests/snapshots/IrcMessageHandler/reply-child.json index 31d1c1de..ecc8375e 100644 --- a/tests/snapshots/IrcMessageHandler/reply-child.json +++ b/tests/snapshots/IrcMessageHandler/reply-child.json @@ -158,6 +158,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|ReplyMessage", "frozen": false, "id": "997cb8fa-4d24-411b-a5cd-433e515a5b72", diff --git a/tests/snapshots/IrcMessageHandler/reply-ignore.json b/tests/snapshots/IrcMessageHandler/reply-ignore.json index 735205ee..809ebcca 100644 --- a/tests/snapshots/IrcMessageHandler/reply-ignore.json +++ b/tests/snapshots/IrcMessageHandler/reply-ignore.json @@ -158,6 +158,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|ReplyMessage", "frozen": false, "id": "89c8f200-ae37-4279-909d-5ff4f9ed10a0", diff --git a/tests/snapshots/IrcMessageHandler/reply-no-prev.json b/tests/snapshots/IrcMessageHandler/reply-no-prev.json index dcdb40a3..6ec0ee92 100644 --- a/tests/snapshots/IrcMessageHandler/reply-no-prev.json +++ b/tests/snapshots/IrcMessageHandler/reply-no-prev.json @@ -158,6 +158,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "474f19ab-a1b0-410a-877a-5b0e2ae8be6d", diff --git a/tests/snapshots/IrcMessageHandler/reply-root.json b/tests/snapshots/IrcMessageHandler/reply-root.json index e6250a26..57061f1f 100644 --- a/tests/snapshots/IrcMessageHandler/reply-root.json +++ b/tests/snapshots/IrcMessageHandler/reply-root.json @@ -158,6 +158,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|ReplyMessage", "frozen": false, "id": "f0b45994-3e92-4c37-a35f-062072163d9d", diff --git a/tests/snapshots/IrcMessageHandler/reply-single.json b/tests/snapshots/IrcMessageHandler/reply-single.json index 974094bd..d551c583 100644 --- a/tests/snapshots/IrcMessageHandler/reply-single.json +++ b/tests/snapshots/IrcMessageHandler/reply-single.json @@ -232,6 +232,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|ReplyMessage", "frozen": false, "id": "5e5f526a-5d60-4d81-800b-3b81b8a34c2c", diff --git a/tests/snapshots/IrcMessageHandler/reward-bits.json b/tests/snapshots/IrcMessageHandler/reward-bits.json index 01bc7be5..49387611 100644 --- a/tests/snapshots/IrcMessageHandler/reward-bits.json +++ b/tests/snapshots/IrcMessageHandler/reward-bits.json @@ -236,6 +236,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|RedeemedChannelPointReward", "frozen": false, "id": "87af876f-5591-4a63-924f-46f465ecd3c4", diff --git a/tests/snapshots/IrcMessageHandler/reward-empty.json b/tests/snapshots/IrcMessageHandler/reward-empty.json index 20506a13..2d539565 100644 --- a/tests/snapshots/IrcMessageHandler/reward-empty.json +++ b/tests/snapshots/IrcMessageHandler/reward-empty.json @@ -200,6 +200,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|RedeemedChannelPointReward", "frozen": false, "id": "2932e250-1f49-4587-8783-7a13d9f99f6b", diff --git a/tests/snapshots/IrcMessageHandler/reward-known.json b/tests/snapshots/IrcMessageHandler/reward-known.json index 9902aa13..0cf117d8 100644 --- a/tests/snapshots/IrcMessageHandler/reward-known.json +++ b/tests/snapshots/IrcMessageHandler/reward-known.json @@ -197,6 +197,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|RedeemedChannelPointReward", "frozen": false, "id": "87af876f-5591-4a63-924f-46f465ecd3c4", diff --git a/tests/snapshots/IrcMessageHandler/reward-unknown.json b/tests/snapshots/IrcMessageHandler/reward-unknown.json index 93b66cb8..cce4c02c 100644 --- a/tests/snapshots/IrcMessageHandler/reward-unknown.json +++ b/tests/snapshots/IrcMessageHandler/reward-unknown.json @@ -103,6 +103,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|RedeemedChannelPointReward", "frozen": false, "id": "4d409401-f692-4dd1-9295-f21350f86860", diff --git a/tests/snapshots/IrcMessageHandler/rm-deleted.json b/tests/snapshots/IrcMessageHandler/rm-deleted.json index 481bf7d6..0b140b35 100644 --- a/tests/snapshots/IrcMessageHandler/rm-deleted.json +++ b/tests/snapshots/IrcMessageHandler/rm-deleted.json @@ -179,6 +179,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Disabled|Collapsed", "frozen": false, "id": "3dc39240-0798-4103-8c3c-51e1a9a567a3", diff --git a/tests/snapshots/IrcMessageHandler/shared-chat-announcement.json b/tests/snapshots/IrcMessageHandler/shared-chat-announcement.json index dc24cea3..41b51efd 100644 --- a/tests/snapshots/IrcMessageHandler/shared-chat-announcement.json +++ b/tests/snapshots/IrcMessageHandler/shared-chat-announcement.json @@ -186,6 +186,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|Subscription|SharedMessage", "frozen": false, "highlightColor": "#64c466ff", @@ -253,6 +255,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription|SharedMessage", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/shared-chat-emotes.json b/tests/snapshots/IrcMessageHandler/shared-chat-emotes.json index d06d2f6f..0ee845a7 100644 --- a/tests/snapshots/IrcMessageHandler/shared-chat-emotes.json +++ b/tests/snapshots/IrcMessageHandler/shared-chat-emotes.json @@ -287,6 +287,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "DoNotTriggerNotification|Collapsed|SharedMessage", "frozen": false, "id": "5b6f9721-80fd-4036-951e-1ced9c591b32", diff --git a/tests/snapshots/IrcMessageHandler/shared-chat-known.json b/tests/snapshots/IrcMessageHandler/shared-chat-known.json index 1e37b551..101d9761 100644 --- a/tests/snapshots/IrcMessageHandler/shared-chat-known.json +++ b/tests/snapshots/IrcMessageHandler/shared-chat-known.json @@ -180,6 +180,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "DoNotTriggerNotification|Collapsed|SharedMessage", "frozen": false, "id": "19ee1663-c14d-41cd-a4a2-30a4bb609c5a", diff --git a/tests/snapshots/IrcMessageHandler/shared-chat-moderator-both-channels.json b/tests/snapshots/IrcMessageHandler/shared-chat-moderator-both-channels.json index 0212d046..5557c91d 100644 --- a/tests/snapshots/IrcMessageHandler/shared-chat-moderator-both-channels.json +++ b/tests/snapshots/IrcMessageHandler/shared-chat-moderator-both-channels.json @@ -159,6 +159,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|SharedMessage", "frozen": false, "id": "3e0750f7-541e-4f7c-8fec-4f943bfd84a3", diff --git a/tests/snapshots/IrcMessageHandler/shared-chat-moderator-external-channel.json b/tests/snapshots/IrcMessageHandler/shared-chat-moderator-external-channel.json index a1395e28..2dcd45b4 100644 --- a/tests/snapshots/IrcMessageHandler/shared-chat-moderator-external-channel.json +++ b/tests/snapshots/IrcMessageHandler/shared-chat-moderator-external-channel.json @@ -167,6 +167,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|SharedMessage", "frozen": false, "id": "3e0750f7-541e-4f7c-8fec-4f943bfd84a3", diff --git a/tests/snapshots/IrcMessageHandler/shared-chat-same-channel.json b/tests/snapshots/IrcMessageHandler/shared-chat-same-channel.json index d8febfa2..5c85e98d 100644 --- a/tests/snapshots/IrcMessageHandler/shared-chat-same-channel.json +++ b/tests/snapshots/IrcMessageHandler/shared-chat-same-channel.json @@ -141,6 +141,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "19ee1663-c14d-41cd-a4a2-30a4bb609c5a", diff --git a/tests/snapshots/IrcMessageHandler/shared-chat-unknown.json b/tests/snapshots/IrcMessageHandler/shared-chat-unknown.json index 0310ad8a..58c1a32d 100644 --- a/tests/snapshots/IrcMessageHandler/shared-chat-unknown.json +++ b/tests/snapshots/IrcMessageHandler/shared-chat-unknown.json @@ -180,6 +180,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|SharedMessage", "frozen": false, "id": "19ee1663-c14d-41cd-a4a2-30a4bb609c5a", diff --git a/tests/snapshots/IrcMessageHandler/shared-chat-vip-both-channels.json b/tests/snapshots/IrcMessageHandler/shared-chat-vip-both-channels.json index 6ef0de53..e89428bc 100644 --- a/tests/snapshots/IrcMessageHandler/shared-chat-vip-both-channels.json +++ b/tests/snapshots/IrcMessageHandler/shared-chat-vip-both-channels.json @@ -170,6 +170,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|SharedMessage", "frozen": false, "id": "3e0750f7-541e-4f7c-8fec-4f943bfd84a3", diff --git a/tests/snapshots/IrcMessageHandler/shared-chat-vip-external-channel.json b/tests/snapshots/IrcMessageHandler/shared-chat-vip-external-channel.json index 95ab57ec..e31b00fb 100644 --- a/tests/snapshots/IrcMessageHandler/shared-chat-vip-external-channel.json +++ b/tests/snapshots/IrcMessageHandler/shared-chat-vip-external-channel.json @@ -168,6 +168,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|SharedMessage", "frozen": false, "id": "3e0750f7-541e-4f7c-8fec-4f943bfd84a3", diff --git a/tests/snapshots/IrcMessageHandler/simple.json b/tests/snapshots/IrcMessageHandler/simple.json index 577f043b..2c845042 100644 --- a/tests/snapshots/IrcMessageHandler/simple.json +++ b/tests/snapshots/IrcMessageHandler/simple.json @@ -125,6 +125,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "9c2dd916-5a6d-4c1f-9fe7-a081b62a9c6b", diff --git a/tests/snapshots/IrcMessageHandler/sub-first-gift.json b/tests/snapshots/IrcMessageHandler/sub-first-gift.json index 038f1481..18ab5322 100644 --- a/tests/snapshots/IrcMessageHandler/sub-first-gift.json +++ b/tests/snapshots/IrcMessageHandler/sub-first-gift.json @@ -114,6 +114,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/sub-first-time.json b/tests/snapshots/IrcMessageHandler/sub-first-time.json index 582c8811..b38c93e9 100644 --- a/tests/snapshots/IrcMessageHandler/sub-first-time.json +++ b/tests/snapshots/IrcMessageHandler/sub-first-time.json @@ -71,6 +71,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/sub-gift-02.json b/tests/snapshots/IrcMessageHandler/sub-gift-02.json index 8e095f21..27e103e4 100644 --- a/tests/snapshots/IrcMessageHandler/sub-gift-02.json +++ b/tests/snapshots/IrcMessageHandler/sub-gift-02.json @@ -105,6 +105,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/sub-gift.json b/tests/snapshots/IrcMessageHandler/sub-gift.json index ee60cc2d..0ce72d4a 100644 --- a/tests/snapshots/IrcMessageHandler/sub-gift.json +++ b/tests/snapshots/IrcMessageHandler/sub-gift.json @@ -105,6 +105,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/sub-message-user-color-override.json b/tests/snapshots/IrcMessageHandler/sub-message-user-color-override.json index 6676cdca..f7ee51a8 100644 --- a/tests/snapshots/IrcMessageHandler/sub-message-user-color-override.json +++ b/tests/snapshots/IrcMessageHandler/sub-message-user-color-override.json @@ -165,6 +165,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|Subscription", "frozen": false, "highlightColor": "#64c466ff", @@ -255,6 +257,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/sub-message.json b/tests/snapshots/IrcMessageHandler/sub-message.json index b2f765ed..93e412e1 100644 --- a/tests/snapshots/IrcMessageHandler/sub-message.json +++ b/tests/snapshots/IrcMessageHandler/sub-message.json @@ -165,6 +165,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed|Subscription", "frozen": false, "highlightColor": "#64c466ff", @@ -255,6 +257,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/sub-multi-month-anon-gift.json b/tests/snapshots/IrcMessageHandler/sub-multi-month-anon-gift.json index a0b98125..54330e09 100644 --- a/tests/snapshots/IrcMessageHandler/sub-multi-month-anon-gift.json +++ b/tests/snapshots/IrcMessageHandler/sub-multi-month-anon-gift.json @@ -93,6 +93,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/sub-multi-month-gift-count.json b/tests/snapshots/IrcMessageHandler/sub-multi-month-gift-count.json index 728e918b..24206fec 100644 --- a/tests/snapshots/IrcMessageHandler/sub-multi-month-gift-count.json +++ b/tests/snapshots/IrcMessageHandler/sub-multi-month-gift-count.json @@ -115,6 +115,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/sub-multi-month-gift.json b/tests/snapshots/IrcMessageHandler/sub-multi-month-gift.json index 38061803..489bd632 100644 --- a/tests/snapshots/IrcMessageHandler/sub-multi-month-gift.json +++ b/tests/snapshots/IrcMessageHandler/sub-multi-month-gift.json @@ -108,6 +108,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/sub-multi-month-resub.json b/tests/snapshots/IrcMessageHandler/sub-multi-month-resub.json index ae6aea82..7662d7a5 100644 --- a/tests/snapshots/IrcMessageHandler/sub-multi-month-resub.json +++ b/tests/snapshots/IrcMessageHandler/sub-multi-month-resub.json @@ -81,6 +81,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/sub-multi-month.json b/tests/snapshots/IrcMessageHandler/sub-multi-month.json index 470e2244..0ece2f6b 100644 --- a/tests/snapshots/IrcMessageHandler/sub-multi-month.json +++ b/tests/snapshots/IrcMessageHandler/sub-multi-month.json @@ -75,6 +75,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/sub-no-message.json b/tests/snapshots/IrcMessageHandler/sub-no-message.json index abdc978b..c68b7987 100644 --- a/tests/snapshots/IrcMessageHandler/sub-no-message.json +++ b/tests/snapshots/IrcMessageHandler/sub-no-message.json @@ -112,6 +112,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|DoNotTriggerNotification|Subscription", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/timeout-stack-always.json b/tests/snapshots/IrcMessageHandler/timeout-stack-always.json index d90505d8..df358f9a 100644 --- a/tests/snapshots/IrcMessageHandler/timeout-stack-always.json +++ b/tests/snapshots/IrcMessageHandler/timeout-stack-always.json @@ -71,6 +71,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|DoNotTriggerNotification|ModerationAction", "frozen": false, "id": "", @@ -188,6 +190,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "aa1baade-c9c7-4932-b518-07c6b0226914", diff --git a/tests/snapshots/IrcMessageHandler/timeout-stack-never.json b/tests/snapshots/IrcMessageHandler/timeout-stack-never.json index 3c9fa0e9..ae9d09ba 100644 --- a/tests/snapshots/IrcMessageHandler/timeout-stack-never.json +++ b/tests/snapshots/IrcMessageHandler/timeout-stack-never.json @@ -71,6 +71,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|DoNotTriggerNotification|ModerationAction", "frozen": false, "id": "", @@ -188,6 +190,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "aa1baade-c9c7-4932-b518-07c6b0226914", diff --git a/tests/snapshots/IrcMessageHandler/timeout-stack-no-user.json b/tests/snapshots/IrcMessageHandler/timeout-stack-no-user.json index cca90e73..37d161c9 100644 --- a/tests/snapshots/IrcMessageHandler/timeout-stack-no-user.json +++ b/tests/snapshots/IrcMessageHandler/timeout-stack-no-user.json @@ -69,6 +69,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|DoNotTriggerNotification|ModerationAction", "frozen": false, "id": "", @@ -186,6 +188,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "aa1baade-c9c7-4932-b518-07c6b0226914", @@ -272,6 +276,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|DoNotTriggerNotification|ModerationAction", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/timeout.json b/tests/snapshots/IrcMessageHandler/timeout.json index 9c6d12de..49ca59b1 100644 --- a/tests/snapshots/IrcMessageHandler/timeout.json +++ b/tests/snapshots/IrcMessageHandler/timeout.json @@ -69,6 +69,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Timeout|DoNotTriggerNotification|ModerationAction", "frozen": false, "id": "", diff --git a/tests/snapshots/IrcMessageHandler/username-localized.json b/tests/snapshots/IrcMessageHandler/username-localized.json index 7adac0de..e7f167f8 100644 --- a/tests/snapshots/IrcMessageHandler/username-localized.json +++ b/tests/snapshots/IrcMessageHandler/username-localized.json @@ -92,6 +92,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "3ad26770-7299-4261-ab9b-24f410944517", diff --git a/tests/snapshots/IrcMessageHandler/username-localized2.json b/tests/snapshots/IrcMessageHandler/username-localized2.json index 7569b1dc..5835d9e2 100644 --- a/tests/snapshots/IrcMessageHandler/username-localized2.json +++ b/tests/snapshots/IrcMessageHandler/username-localized2.json @@ -92,6 +92,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "3ad26770-7299-4261-ab9b-24f410944517", diff --git a/tests/snapshots/IrcMessageHandler/username.json b/tests/snapshots/IrcMessageHandler/username.json index ca1bdd5e..61adde52 100644 --- a/tests/snapshots/IrcMessageHandler/username.json +++ b/tests/snapshots/IrcMessageHandler/username.json @@ -92,6 +92,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "3ad26770-7299-4261-ab9b-24f410944517", diff --git a/tests/snapshots/IrcMessageHandler/vip.json b/tests/snapshots/IrcMessageHandler/vip.json index b89bd1d6..5ec6bcd5 100644 --- a/tests/snapshots/IrcMessageHandler/vip.json +++ b/tests/snapshots/IrcMessageHandler/vip.json @@ -122,6 +122,8 @@ "url": "" } ], + "externalBadges": [ + ], "flags": "Collapsed", "frozen": false, "id": "97bb0dfb-a35f-446d-8634-7522d8ef73ed", diff --git a/tests/snapshots/PluginMessageCtor/empty.json b/tests/snapshots/PluginMessageCtor/empty.json index a4f3a051..8c21f313 100644 --- a/tests/snapshots/PluginMessageCtor/empty.json +++ b/tests/snapshots/PluginMessageCtor/empty.json @@ -6,6 +6,8 @@ "displayName": "", "elements": [ ], + "externalBadges": [ + ], "flags": "", "frozen": false, "id": "", diff --git a/tests/snapshots/PluginMessageCtor/linebreak-element.json b/tests/snapshots/PluginMessageCtor/linebreak-element.json index 8ee99b4a..c0ef6078 100644 --- a/tests/snapshots/PluginMessageCtor/linebreak-element.json +++ b/tests/snapshots/PluginMessageCtor/linebreak-element.json @@ -53,6 +53,8 @@ "type": "LinebreakElement" } ], + "externalBadges": [ + ], "flags": "", "frozen": false, "id": "", diff --git a/tests/snapshots/PluginMessageCtor/mention-element.json b/tests/snapshots/PluginMessageCtor/mention-element.json index 1aa3477e..cbee64cd 100644 --- a/tests/snapshots/PluginMessageCtor/mention-element.json +++ b/tests/snapshots/PluginMessageCtor/mention-element.json @@ -85,6 +85,8 @@ ] } ], + "externalBadges": [ + ], "flags": "", "frozen": false, "id": "", diff --git a/tests/snapshots/PluginMessageCtor/properties.json b/tests/snapshots/PluginMessageCtor/properties.json index 98a57b2b..3ed8a3e5 100644 --- a/tests/snapshots/PluginMessageCtor/properties.json +++ b/tests/snapshots/PluginMessageCtor/properties.json @@ -45,6 +45,8 @@ ] } ], + "externalBadges": [ + ], "flags": "System|Disabled", "frozen": false, "highlightColor": "#12345678", diff --git a/tests/snapshots/PluginMessageCtor/reply-curve-element.json b/tests/snapshots/PluginMessageCtor/reply-curve-element.json index 2935035e..61795c6d 100644 --- a/tests/snapshots/PluginMessageCtor/reply-curve-element.json +++ b/tests/snapshots/PluginMessageCtor/reply-curve-element.json @@ -53,6 +53,8 @@ "type": "ReplyCurveElement" } ], + "externalBadges": [ + ], "flags": "", "frozen": false, "id": "", diff --git a/tests/snapshots/PluginMessageCtor/single-line-text-element.json b/tests/snapshots/PluginMessageCtor/single-line-text-element.json index 505ffef2..b627be03 100644 --- a/tests/snapshots/PluginMessageCtor/single-line-text-element.json +++ b/tests/snapshots/PluginMessageCtor/single-line-text-element.json @@ -170,6 +170,8 @@ ] } ], + "externalBadges": [ + ], "flags": "", "frozen": false, "id": "", diff --git a/tests/snapshots/PluginMessageCtor/text-element.json b/tests/snapshots/PluginMessageCtor/text-element.json index 6d629117..31948e2e 100644 --- a/tests/snapshots/PluginMessageCtor/text-element.json +++ b/tests/snapshots/PluginMessageCtor/text-element.json @@ -170,6 +170,8 @@ ] } ], + "externalBadges": [ + ], "flags": "", "frozen": false, "id": "", diff --git a/tests/snapshots/PluginMessageCtor/timestamp-element.json b/tests/snapshots/PluginMessageCtor/timestamp-element.json index 34595fc9..a9414af0 100644 --- a/tests/snapshots/PluginMessageCtor/timestamp-element.json +++ b/tests/snapshots/PluginMessageCtor/timestamp-element.json @@ -121,6 +121,8 @@ "type": "TimestampElement" } ], + "externalBadges": [ + ], "flags": "", "frozen": false, "id": "", diff --git a/tests/snapshots/PluginMessageCtor/twitch-moderation.json b/tests/snapshots/PluginMessageCtor/twitch-moderation.json index 24ed89f8..92a9413a 100644 --- a/tests/snapshots/PluginMessageCtor/twitch-moderation.json +++ b/tests/snapshots/PluginMessageCtor/twitch-moderation.json @@ -53,6 +53,8 @@ "type": "TwitchModerationElement" } ], + "externalBadges": [ + ], "flags": "", "frozen": false, "id": "", diff --git a/tests/src/Filters.cpp b/tests/src/Filters.cpp index 4627dd5f..6a4a7907 100644 --- a/tests/src/Filters.cpp +++ b/tests/src/Filters.cpp @@ -211,7 +211,9 @@ TEST(Filters, Evaluation) {"author.subbed", QVariant(false)}, {"message.content", QVariant("hey there :) 2038-01-19 123 456")}, {"channel.name", QVariant("forsen")}, - {"author.badges", QVariant(QStringList({"moderator", "staff"}))}}; + {"author.badges", QVariant(QStringList({"moderator", "staff"}))}, + {"author.external_badges", QStringList{"frankerfacez:bot"}}, + }; // clang-format off std::vector tests @@ -252,6 +254,7 @@ TEST(Filters, Evaluation) {R".(!author.subbed).", QVariant(true)}, {R".(author.color == "#ff0000").", QVariant(true)}, {R".(channel.name == "forsen" && author.badges contains "moderator").", QVariant(true)}, + {R".(author.external_badges contains "frankerfacez:bot").", QVariant(true)}, {R".(message.content match {r"(\d\d\d\d)\-(\d\d)\-(\d\d)", 3}).", QVariant("19")}, {R".(message.content match r"HEY THERE").", QVariant(false)}, {R".(message.content match ri"HEY THERE").", QVariant(true)}, diff --git a/tests/src/IrcMessageHandler.cpp b/tests/src/IrcMessageHandler.cpp index 802c55c3..09bfe0c5 100644 --- a/tests/src/IrcMessageHandler.cpp +++ b/tests/src/IrcMessageHandler.cpp @@ -478,12 +478,11 @@ public: ->twitch.getCurrent() ->blockUserLocally(u"12345"_s, u"blocked"_s); - auto makeBadge = [](QStringView platform) { + auto makeBadge = [](QStringView platform, QStringView name) { return std::make_shared(Emote{ - .name = {}, - .images = {Url{u"https://chatterino.com/" % platform % - u".png"}}, - .tooltip = {platform % u" badge"}, + .name = {platform.toString().toLower() % ':' % name}, + .images = {Url{u"https://chatterino.com/" % name % u".png"}}, + .tooltip = {name % u" badge"}, .homePage = {}, .zeroWidth = false, .id = {}, @@ -494,17 +493,21 @@ public: // Chatterino this->mockApplication->chatterinoBadges.setBadge( - {u"123456"_s}, makeBadge(u"Chatterino")); + {u"123456"_s}, makeBadge(u"chatterino", u"Chatterino")); - // FFZ + // FrankerFaceZ this->mockApplication->ffzBadges.registerBadge( - 1, {.emote = makeBadge(u"FFZ1"), .color = {9, 10, 11, 12}}); + 1, {.emote = makeBadge(u"frankerfacez", u"FFZ1"), + .color = {9, 10, 11, 12}}); this->mockApplication->ffzBadges.registerBadge( - 2, {.emote = makeBadge(u"FFZ2"), .color = {13, 14, 15, 16}}); + 2, {.emote = makeBadge(u"frankerfacez", u"FFZ2"), + .color = {13, 14, 15, 16}}); this->mockApplication->ffzBadges.registerBadge( - 3, {.emote = makeBadge(u"FFZ2"), .color = {17, 18, 19, 20}}); + 3, {.emote = makeBadge(u"frankerfacez", u"FFZ2"), + .color = {17, 18, 19, 20}}); this->mockApplication->ffzBadges.registerBadge( - 4, {.emote = makeBadge(u"FFZ2"), .color = {21, 22, 23, 24}}); + 4, {.emote = makeBadge(u"frankerfacez", u"FFZ2"), + .color = {21, 22, 23, 24}}); this->mockApplication->getFfzBadges()->assignBadgeToUser({u"123456"_s}, 1); this->mockApplication->getFfzBadges()->assignBadgeToUser({u"123456"_s}, @@ -513,6 +516,7 @@ public: // 7TV this->mockApplication->getSeventvBadges()->registerBadge({ {u"id"_s, u"1"_s}, + {u"name"_s, u"7TV badge name"_s}, {u"tooltip"_s, u"7TV badge"_s}, { u"host"_s, @@ -532,6 +536,14 @@ public: this->mockApplication->getSeventvBadges()->assignBadgeToUser( u"1"_s, {u"123456"_s}); + // BetterTTV + this->mockApplication->getBttvBadges()->registerBadge({ + {u"startedAt"_s, u"2017-01-11T09:54:10.000Z"_s}, + {u"url"_s, u"https://chatterino.com/betterttv/test.png"_s}, + }); + this->mockApplication->getBttvBadges()->assignBadgeToUser( + u"https://chatterino.com/betterttv/test.png"_s, {u"123456"_s}); + // Twitch this->mockApplication->getTwitchBadges()->loadLocalBadges();