1
0
Fork 0
mirror of https://github.com/FrankerFaceZ/FrankerFaceZ.git synced 2025-09-16 01:56:55 +00:00
Nice.

* Changed: Warn users that they have `Show Mod Icons` disabled within [Chat > Actions](~chat.actions).
* Changed: Blocked Badges, Highlight Badges, and Blocked Types within [Chat > Filtering](~chat.filtering) no longer have a default item. This will hopefully minimize user confusion.
* Changed: Blocked Badges also has a new description telling users that it isn't for hiding badges, with a link to the correct place to change badge visibility.
* Changed: Remove the New Link Tokenization experiment, making it enabled for all users.
* Changed: When navigating within the FFZ Control Center in a pop-out window, update the URL so that it can be shared to link to a specific settings page.
* Changed: Disable the websocket connection for users in the API Links experiment to reduce load on the socket cluster.
* Fixed: Bug with the FFZ Control Center failing to load if experiments haven't been populated correctly.
* Fixed: Badge Visibility not being populated when opening the FFZ Control Center on a page without chat.
* API Added: `<markdown />` now supports a link syntax for navigating to a new section of the FFZ Control Center.
* API Fixed: Better tokenization for settings paths. Brackets can now be used safely in embedded JSON.
* API Fixed: `deep_equals` and `shallow_object_equals` returning false when objects were otherwise equal but had keys in a different order.
This commit is contained in:
SirStendec 2021-02-22 20:11:35 -05:00
parent f5135ad291
commit 77d6cf56d2
27 changed files with 365 additions and 96 deletions

View file

@ -242,7 +242,7 @@ export default class Badges extends Module {
path: 'Chat > Badges >> tabs ~> Visibility',
title: 'Visibility',
component: 'badge-visibility',
data: () => this.getSettingsBadges(true)
getBadges: cb => this.getSettingsBadges(true, cb)
}
});
@ -276,7 +276,7 @@ export default class Badges extends Module {
this.handleClick = this.handleClick.bind(this);
}
getSettingsBadges(include_addons) {
getSettingsBadges(include_addons, callback) {
const twitch = [],
owl = [],
tcon = [],
@ -284,6 +284,16 @@ export default class Badges extends Module {
ffz = [],
addon = [];
const twitch_keys = Object.keys(this.twitch_badges);
if ( ! twitch_keys.length && callback ) {
const td = this.resolve('site.twitch_data');
if ( td )
td.getBadges().then(data => {
this.updateTwitchBadges(data);
callback();
});
}
for(const key in this.twitch_badges)
if ( has(this.twitch_badges, key) ) {
const badge = this.twitch_badges[key],
@ -334,6 +344,9 @@ export default class Badges extends Module {
const badge = this.badges[key],
image = badge.urls ? (badge.urls[2] || badge.urls[1]) : badge.image;
if ( badge.no_visibility )
continue;
(badge.addon ? addon : ffz).push({
id: key,
provider: 'ffz',
@ -1070,6 +1083,9 @@ export function fixBadgeData(badge) {
return badge;
// Click Behavior
if ( ! badge.clickAction && badge.onClickAction )
badge.clickAction = badge.onClickAction;
if ( badge.clickAction === 'VISIT_URL' && badge.clickURL )
badge.click_url = badge.clickURL;