mirror of
https://github.com/FrankerFaceZ/FrankerFaceZ.git
synced 2025-09-16 10:06:54 +00:00
4.11.0
* Added: Option to hide Community Gift Chest elements from chat. * Fixed: Users not seeing the reason they were timed out or banned from chat.
This commit is contained in:
parent
89d243a269
commit
ba1da9a774
3 changed files with 78 additions and 32 deletions
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "frankerfacez",
|
||||
"author": "Dan Salvato LLC",
|
||||
"version": "4.10.0",
|
||||
"version": "4.11.0",
|
||||
"description": "FrankerFaceZ is a Twitch enhancement suite.",
|
||||
"license": "Apache-2.0",
|
||||
"scripts": {
|
||||
|
|
|
@ -665,7 +665,7 @@ export default class Badges extends Module {
|
|||
b = {};
|
||||
for(const data of badges) {
|
||||
const sid = data.setID,
|
||||
bs = b[sid] = b[sid] || {__game: /_\d+$/.test(sid)};
|
||||
bs = b[sid] = b[sid] || {__game: /_\d+$/.test(sid) && ! sid.includes('overwatch') };
|
||||
|
||||
this.twitch_badge_count++;
|
||||
bs[data.version] = data;
|
||||
|
|
|
@ -229,8 +229,23 @@ export default class ChatHook extends Module {
|
|||
Twilight.CHAT_ROUTES
|
||||
);
|
||||
|
||||
this.CommunityChestBanner = this.fine.define(
|
||||
'community-chest-banner',
|
||||
n => n.getLastGifterText && n.getBannerText && has(n, 'finalCount'),
|
||||
Twilight.CHAT_ROUTES
|
||||
);
|
||||
|
||||
// Settings
|
||||
|
||||
this.settings.add('chat.community-chest.show', {
|
||||
default: true,
|
||||
ui: {
|
||||
path: 'Chat > Appearance >> Community Chest',
|
||||
title: 'Display the Community Gift Chest banner.',
|
||||
component: 'setting-check-box'
|
||||
}
|
||||
});
|
||||
|
||||
this.settings.add('chat.points.show-callouts', {
|
||||
default: true,
|
||||
ui: {
|
||||
|
@ -585,6 +600,12 @@ export default class ChatHook extends Module {
|
|||
}
|
||||
}, this);
|
||||
|
||||
this.chat.context.on('changed:chat.community-chest.show', () => {
|
||||
this.CommunityChestBanner.forceUpdate();
|
||||
this.CalloutSelector.forceUpdate();
|
||||
}, this);
|
||||
|
||||
|
||||
this.chat.context.on('changed:chat.lines.alternate', val => {
|
||||
this.css_tweaks.toggle('chat-rows', val);
|
||||
this.updateMentionCSS();
|
||||
|
@ -629,6 +650,23 @@ export default class ChatHook extends Module {
|
|||
|
||||
const t = this;
|
||||
|
||||
this.CommunityChestBanner.ready(cls => {
|
||||
const old_render = cls.prototype.render;
|
||||
cls.prototype.render = function() {
|
||||
try {
|
||||
if ( ! t.chat.context.get('chat.community-chest.show') )
|
||||
return null;
|
||||
} catch(err) {
|
||||
t.log.capture(err);
|
||||
t.log.error(err);
|
||||
}
|
||||
|
||||
return old_render.call(this);
|
||||
};
|
||||
|
||||
this.CommunityChestBanner.forceUpdate();
|
||||
});
|
||||
|
||||
this.InlineCallout.ready(cls => {
|
||||
const old_render = cls.prototype.render;
|
||||
cls.prototype.render = function() {
|
||||
|
@ -637,6 +675,9 @@ export default class ChatHook extends Module {
|
|||
if ( callout?.trackingType === 'community_points_reward' && ! t.chat.context.get('chat.points.show-callouts') )
|
||||
return null;
|
||||
|
||||
if ( callout?.trackingType === 'prime_gift_bomb' && ! t.chat.context.get('chat.community-chest.show') )
|
||||
return null;
|
||||
|
||||
} catch(err) {
|
||||
t.log.capture(err);
|
||||
t.log.error(err);
|
||||
|
@ -646,7 +687,7 @@ export default class ChatHook extends Module {
|
|||
}
|
||||
|
||||
this.InlineCallout.forceUpdate();
|
||||
})
|
||||
});
|
||||
|
||||
this.CalloutSelector.ready(cls => {
|
||||
const old_render = cls.prototype.render;
|
||||
|
@ -655,6 +696,9 @@ export default class ChatHook extends Module {
|
|||
const callout = this.props.callouts[0] || this.props.pinnedCallout,
|
||||
ctype = callout?.event?.type;
|
||||
|
||||
if ( ctype === 'prime-gift-bomb-gifter' && ! t.chat.context.get('chat.community-chest.show') )
|
||||
return null;
|
||||
|
||||
if ( ctype === 'community-points-rewards' && ! t.chat.context.get('chat.points.show-callouts') )
|
||||
return null;
|
||||
|
||||
|
@ -1016,6 +1060,7 @@ export default class ChatHook extends Module {
|
|||
return;
|
||||
|
||||
} else if ( msg.type === types.ModerationAction && inst.markUserEventDeleted && inst.unsetModeratedUser ) {
|
||||
if ( !((! msg.level || ! msg.level.length) && msg.targetUserLogin && msg.targetUserLogin === inst.props.currentUserLogin) ) {
|
||||
//t.log.info('Moderation Action', msg);
|
||||
if ( ! inst.props.isCurrentUserModerator )
|
||||
return;
|
||||
|
@ -1053,6 +1098,7 @@ export default class ChatHook extends Module {
|
|||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
} else if ( msg.type === types.Moderation && inst.markUserEventDeleted && inst.unsetModeratedUser ) {
|
||||
//t.log.info('Moderation', msg);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue