used `sass-migrator` and some manual intervention to migrate all of the
`@import`s to `@use` statements.
1. needed to prefix all of the `styles/main.scss` imports to use a
relative path (i.e. `../../../../styles/main.scss`
2. needed to add a `@use "container"` to `styles/tab-container` so it
could resolve its `@extend`s
- not sure if this was just an ordering issue or what, but it works
* Fixed: Various player-related features not working correctly after Twitch's Friday update. Closes#1685
* Fixed: The current category not being detected correctly when viewing a channel.
* Fixed: The setting to hide bits not hiding the get bits button from the top navigation bar.
currently, the Get Bits button is still shown when unchecking 'Display
Bits' under Chat > Bits and Cheering >> Appearance. it looks like aria
attributes changed & it no longer has `data-test-selector`. updated to
use `data-a-target="top-nav-get-bits-button"`
note: i couldn't get the 'Show the Get Bits button.' option under
Apperance > Layout >> Top Navigation to work independently of the option
under Chat > Bits and Cheering. not sure what's up with that.
adds a toggle under `Channel > Appearance >> General` to hide the "gift
a sub" buttons from the channel header (right under the player) and from
the channel goals.
because i have poor impulse control sometimes
<3 tyvm; i love the extension
* Fixed: The video player appearing as the incorrect size when a custom chat width is set, portrait mode is enabled, or swap sidebars is enabled.
* Fixed: Channel page tweaks being removed when Twitch refreshes the channel page for whatever reason they're doing that.
* API Fixed: Elemental not correctly detecting new elements in some situations.
* Fixed: Channel points reward messages not appearing in chat correctly for some users. (Closes#1650)
* Fixed: Clicking on a stream's up-time not being able to find the ID of the current broadcast.
* Maintenance: Update the `twitch_data` module to have better typing and better use of promises.
* API: Change the `createElement` method to create SVG elements with the proper namespace.
This is a very significant rewrite of a fragile system as a result of changes to Twitch's webpack settings, so there may be bugs or performance regressions. Thank you for your patience while we solve these issues.
* Fixed: Bug where the viewer count would sometimes be read incorrectly when more than 1,000.
* Fixed: Bug where some parts of the Twitch website would fail to load when FFZ is already loaded.
* Fixed: The channel carousel on Twitch's home page not being recolored correctly by themes.
* Fixed: Current Channel profile rules not working correctly in mod view.
* Fixed: The viewer count being detected incorrectly for users in some locales.
* Changed: Add settings search support for several settings, such as blockable chat callout types.
* Fixed: Emoji appearing very large in some situations.
* Fixed: Callouts not being removed correctly.
* Fixed: Periodically detect and remove orphan chat message nodes.
* Fixed: Bug rendering re-sub messages in some situations where a message wasn't already tokenized.
* Added: Setting to block call-outs based on type. This should stay up to date automatically whenever Twitch adds new call-out types.
* Added: Setting to specifically block clip suggestion call-outs. Twitch has reversed the roll-out for now but I suspect they'll be back.
* Fixed: Bug related to badges and emote sets not being tracked correctly in some situations.
* Fixed: Bug where the new replacement Clip button not functioning correctly after the player state changes.
* Added: Setting to hide the Cast button on the player.
* Changed: Add support for a directory experiment.
* Fixed: Improve the reliability of channel page tweaks in certain situations, such as co-streaming.
* Fixed: The new feature to hide the native Clip button not working due to a version control mistake.
* Added: Setting to control the priority of third-party emote providers. This lets you, as an example, prioritize emotes from 7TV over BetterTTV. Note that these priorities are still secondary to emote source priorities (personal emotes > channel emotes > global emotes). (Closes#1587)
* Added: Setting to replace the native player 'Clip' button with a custom button that better fits the style of the other buttons. (Closes#1580)
* Fixed: Highlighting messages from users with open viewer cards not working correctly with alternating background colors enabled. (Closes#1581)
* Fixed: Various directory features not working correctly. (Closes#1588)
* Fixed: Emotes unlocked with channel points appearing on FFZ emote cards with the source 'CHANNEL_POINTS'.
* Fixed: The Experiments UI failing to load correctly if an experiment has no name.
* Experiments: Preparing for a new PubSub experiment.
* API Added: `emotes.setProvider(provider: string, data: {name: string, icon: string, description: string})` for registering an emote provider. This is used by the new setting to let users customize emote provider priorities.
* API Added: All modules now have a `addon_manifest` property which will contain the add-on's manifest if the module belongs to an add-on.
* Fixed: Certain chat features not working correctly during a Shared Chat session. (Closes#1574)
* Fixed: The Add-Ons menu not displaying a loaded add-on if it has incomplete data.
* Fixed: Chat not appearing correctly when using the Separator appearance options.
* API Added: Channel-specific emote sets can set a `title_is_channel` flag to have the FFZ emote menu automatically rename the emote set to show the source channel's name when using Shared Chat.
* Added: Setting to hide the border around streams in the directory that have guest stars.
* Fixed: Issue with chat alternating backgrounds not appearing correctly after a Twitch update. Some settings may still not be working (notably: separators)
* Fixed: Issue where FFZ could be injected into a page twice, breaking basically everything.
* Experiments: Disable the EMQX experiment. It's not working out.
* Changed: Use `cdn2` for loading the script, rather than `cdn` to put the script files on a separate domain from other content.
* Fixed: Bug with the audio compressor that would cause it to enter a broken state for users (mostly on Firefox).
* Experiments: Set the EMQX PubSub experiment to 50%.
* Fixed: Bug in the sidebar processing code that may log errors when combined with other add-ons.
* API Changed: Improve messaging for manifest v3 extension mode.
* Added: Setting to use native styling for subscription notices in chat. (Closes#1551)
* Added: Setting to hide the stories UI in the side navigation. (Closes#1531)
* Added: Setting to hide specific users from the directory and sidebar.
* Changed: Hide the top navigation's search field when using minimal navigation for a cleaner look. (Closes#1556)
* Changed: More internal changes for the support to Manifest v3.
* Fixed: Uploading logs from the FFZ Control Center not working.
* API Changed: Removed support for `no_sanitize` from `setChildren`. I don't think anything was currently using this, but going forward it is unsupported. We want to avoid using `innerHTML` as much as possible to simplify the approval process.
* Added: Support for Twitch's new Shared Chat feature. When a Shared Chat is set up, FrankerFaceZ will let you use emotes from any of the channels in the Shared Chat. Additionally, there are minor changes to how chat lines are rendered in line with the native Twitch experience to display which channel a given message originated in.
* Fixed: Issue where FrankerFaceZ was not correctly locating some Twitch web app internals.
* Fixed: Issue where your bits balance would display on the Power-ups and Rewards button despite having the option to hide the bits UI enabled. (Closes#1543)
* Fixed: Avatars still having some rounding when using the setting to disable rounding. (Closes#1540)
* Fixed: Issue where `site.chat`:`addNotice()` could throw an error if calling it before we have extracted the current chat types from the Twitch web app.
* Fixed: The community stack component changing internally, needing us to add a new rule to locate it. The community stack integration handles hiding things like hype trains, pinned messages, etc. at the top of chat.
* Added: Setting to enable or disable message effects. When disabled, they appear as a standard redemption with a notice of how many bits were spent redeeming them.
* Fixed: The setting to only animate emotes on hover not working for "Gigantified" emotes.
* Fixed: Add-on emotes not appearing with animations using the FFZ:GE "Gifantified" points reward.
* Fixed: Message Effects not rendering correctly.
* Fixed: "Gigantified" emotes appearing the incorrect size when using both the Larger Emotes option and the Limit Native Emote Size option.