diff --git a/package.json b/package.json index 62dabfd3..8625289d 100755 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "frankerfacez", "author": "Dan Salvato LLC", - "version": "4.57.2", + "version": "4.57.3", "description": "FrankerFaceZ is a Twitch enhancement suite.", "private": true, "license": "Apache-2.0", diff --git a/src/modules/chat/badges.jsx b/src/modules/chat/badges.jsx index dc9ce951..9502dbcb 100644 --- a/src/modules/chat/badges.jsx +++ b/src/modules/chat/badges.jsx @@ -411,7 +411,7 @@ export default class Badges extends Module { if ( ! existing.versions ) existing.versions = [{ version: existing.key, - name: existing.name, + name: existing.tipname, color: existing.color, image: existing.image1x, styleImage: `url("${existing.image1x}")` @@ -426,7 +426,8 @@ export default class Badges extends Module { }); if ( is_this ) { - existing.name = name; + existing.name = badge.title; + existing.tipname = name; existing.color = color; existing.image = image; existing.styleImage = `url("${image}")`; @@ -437,13 +438,25 @@ export default class Badges extends Module { id, key, provider: 'ffz', - name, + name: badge.title, + tipname: name, color, image, image1x, styleImage: `url("${image}")` }; + if ( badge.base_id ) { + existing.always_versions = true; + existing.versions = [{ + version: existing.key, + name: existing.tipname, + color: existing.color, + image: existing.image1x, + styleImage: `url("${existing.image1x}")` + }]; + } + addon_badges_by_id[id] = existing; store.push(existing); } @@ -1197,6 +1210,8 @@ export default class Badges extends Module { data.click_url = 'https://www.frankerfacez.com/subscribe'; if ( ! data.addon && (data.name === 'subwoofer') ) + data.base_id = data.id; + data.tooltipExtra = data => { if ( ! data?.user_id ) return null; diff --git a/src/modules/chat/index.js b/src/modules/chat/index.js index 1734b2ec..dc5f3b3c 100644 --- a/src/modules/chat/index.js +++ b/src/modules/chat/index.js @@ -1524,6 +1524,7 @@ export default class Chat extends Module { iterateMessages(include_chat = true, include_whisper = true, include_video = true) { const messages = []; this.emit('chat:get-messages', include_chat, include_whisper, include_video, messages); + this.emit('chat:get-messages-late', include_chat, include_whisper, include_video, messages); return messages; } @@ -1729,6 +1730,8 @@ export default class Chat extends Module { if ( ! msg ) return msg; + msg.ffz_standardized = true; + // Standardize User if ( msg.sender && ! msg.user ) msg.user = msg.sender; diff --git a/src/modules/chat/tokenizers.jsx b/src/modules/chat/tokenizers.jsx index 8c75c85a..85c1b1ff 100644 --- a/src/modules/chat/tokenizers.jsx +++ b/src/modules/chat/tokenizers.jsx @@ -143,7 +143,7 @@ export const Links = { url_table.push( {this.i18n.formatNumber(i + 1)}. {url.url} - {url.flags ? url.flags.map(flag => {flag.toLowerCase()}) : null} + {url.flags ? url.flags.map(flag => {flag.toLowerCase()}) : null} ); } diff --git a/src/modules/main_menu/components/addon.vue b/src/modules/main_menu/components/addon.vue index e34a1876..33b3d531 100644 --- a/src/modules/main_menu/components/addon.vue +++ b/src/modules/main_menu/components/addon.vue @@ -42,6 +42,11 @@ author: addon.author_i18n ? t(addon.author_i18n, addon.author) : addon.author }) }} + + {{ t('addon.maintainer', 'Maintainer: {maintainer}', { + maintainer + }) }} + {{ t('addon.version', 'Version {version}', {version}) }} @@ -189,6 +194,13 @@ export default { return this.addon.description; }, + maintainer() { + if ( this.addon.maintainer_i18n ) + return this.t(this.addon.maintainer_i18n, this.addon.maintainer); + + return this.addon.maintainer; + }, + lines() { return this.description.split(/\n/); }, diff --git a/src/modules/main_menu/components/badge-visibility.vue b/src/modules/main_menu/components/badge-visibility.vue index 49b53203..d1274361 100644 --- a/src/modules/main_menu/components/badge-visibility.vue +++ b/src/modules/main_menu/components/badge-visibility.vue @@ -66,12 +66,12 @@
{{ sec.title }}
-