From 5aaa7773de5975d7464c65aabc3740cf177ae558 Mon Sep 17 00:00:00 2001 From: Lordmau5 Date: Mon, 24 Sep 2018 18:49:03 +0200 Subject: [PATCH] Add `no_invert` support for custom badges (#522) --- src/modules/chat/badges.jsx | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/modules/chat/badges.jsx b/src/modules/chat/badges.jsx index d0e81610..5b4a96ca 100644 --- a/src/modules/chat/badges.jsx +++ b/src/modules/chat/badges.jsx @@ -393,6 +393,7 @@ export default class Badges extends Module { old_badge = slotted[slot], urls = badge.urls || (badge.image ? {1: badge.image} : null), color = badge.color || full_badge.color || 'transparent', + no_invert = badge.no_invert, masked = color !== 'transparent' && is_mask, bu = (urls || full_badge.urls || {1: full_badge.image}), @@ -433,19 +434,25 @@ export default class Badges extends Module { slotted[slot] = {id: badge.id, props, badges: [bd]} } + if (no_invert) { + style.background = 'unset'; + style.backgroundSize = 'unset'; + style[CSS_MASK_IMAGE] = 'unset'; + } + if ( has_image && urls ) { const image = `url("${urls[1]}")`; let image_set; if ( urls[2] || urls[4] ) image_set = `${WEBKIT}image-set(${image} 1x${urls[2] ? `, url("${urls[2]}") 2x` : ''}${urls[4] ? `, url("${urls[4]}") 4x` : ''})`; - style[masked ? CSS_MASK_IMAGE : 'backgroundImage'] = image; + style[masked && !no_invert ? CSS_MASK_IMAGE : 'backgroundImage'] = image; if ( image_set ) - style[masked ? CSS_MASK_IMAGE : 'backgroundImage'] = image_set; + style[masked && !no_invert ? CSS_MASK_IMAGE : 'backgroundImage'] = image_set; } if ( is_colored && badge.color ) { - if ( masked ) + if ( masked && !no_invert ) style.backgroundImage = `linear-gradient(${badge.color},${badge.color})`; else style.backgroundColor = badge.color;