1
0
Fork 0
mirror of https://github.com/FrankerFaceZ/FrankerFaceZ.git synced 2025-06-27 21:05:53 +00:00
Commit graph

390 commits

Author SHA1 Message Date
SirStendec
f9fb9c6fb5 4.77.6
* Added: Setting to hide gift subscription buttons on channel pages.
* Maintenance: Update dependencies, node, and package manager versions.
2025-06-17 16:13:18 -04:00
SirStendec
1db9e0242f Add libxmljs2 to the list of dependencies allowed to run build scripts, explicitly deny the other dependencies. 2025-06-17 14:40:54 -04:00
lemonslut
5637764fdc
bump sass-loader to 16.0.5 to resolve legacy-js-api deprecations 2025-06-07 15:29:36 -06:00
lemonslut
c9a8e15bd8
bump deps
* bump @cyclonedx/webpack-plugin to 5.0.1
  * only breaking change was dropping support for old node
* bump webpack-dev-server to 5.2.2
  * misc config changes; followed [migration
    guide](https://github.com/webpack/webpack-dev-server/blob/master/migration-v5.md)
  * also configured `performance: { hints: false }` to get rid of
    warning about asset/entrypoint sizes
* bump webpack-cli to 6.0.1
  * breaking changes were meh https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md#600-2024-12-19
* general `pnpm up`
2025-06-07 15:29:36 -06:00
SirStendec
8ff9b9650a 4.77.5
* 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.
2025-06-07 13:40:10 -04:00
SirStendec
b250075813 4.77.4
* 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.
2025-05-21 13:02:09 -04:00
SirStendec
872b0ff731 * Maintenance: package wasn't saved, apparently, after incrementing the version. 2025-03-29 20:04:51 -04:00
SirStendec
ddfcf9e17c 4.77.2
* 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.
2025-03-29 16:06:33 -04:00
SirStendec
43c80713e9 4.77.1
* Fixed: Add support for a new React router Twitch is testing in an A/B experiment.
2025-03-12 13:34:39 -04:00
SirStendec
850c4d53fd 4.77.0
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.
2025-03-04 17:35:08 -05:00
SirStendec
1169d8fe64 4.76.5
* 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.
2025-02-14 13:49:56 -05:00
SirStendec
15c33281ad 4.76.4
* 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.
2024-12-30 13:57:51 -05:00
SirStendec
93181dc8e8 4.76.3
* 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.
2024-12-06 14:43:26 -05:00
SirStendec
18bff3371d 4.76.2
* Fixed: Directory items not being hidden correctly.
2024-12-04 00:39:40 -05:00
SirStendec
f2e7694b3b 4.76.1
* 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.
2024-12-03 21:09:28 -05:00
SirStendec
1d046fca2b 4.76.0
* 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.
2024-12-03 16:15:11 -05:00
SirStendec
6f8c20640f 4.75.7
* Changed: Added a Hype Train icon to the icon font.
* Changed: The exact loaded version of every add-on is now tracked and logged.
2024-11-07 15:00:13 -05:00
SirStendec
a5ba29a153 4.75.6
* 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.
2024-10-31 14:19:36 -04:00
SirStendec
ef7e91f82b 4.75.5
* 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.
2024-10-24 14:37:17 -04:00
SirStendec
1cacacaecb 4.75.4
* 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.
2024-10-22 17:19:03 -04:00
SirStendec
efd6d2fa42 4.75.3
* 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%.
2024-10-19 13:13:01 -04:00
SirStendec
3538ef86ad 4.75.2
* Changed: Back to work on experimental PubSub things, with a different server strategy this time.
2024-10-19 01:35:47 -04:00
SirStendec
5c06461a0e 4.75.1
* 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.
2024-10-11 17:12:54 -04:00
SirStendec
9e509fe581 * Maintenance: Add SBOM generation to the webpack configuration. 2024-10-11 15:25:39 -04:00
SirStendec
1ee737f2ca 4.75.0
* 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.
2024-10-09 17:11:05 -04:00
SirStendec
f8fcdef363 4.74.1
* Fixed: The FFZ Control Center button appearing multiple times on the Creator Dashboard.
* Fixed: Native global chat badges not appearing correctly.
2024-09-27 18:50:52 -04:00
SirStendec
0ffc041c0c 4.74.0
* 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.
2024-09-20 13:30:11 -04:00
SirStendec
a3c2b31ede 4.73.1
* Fixed: The `Report Emote` action not appearing on emote cards for Twitch emotes.
* Fixed: A discontinued experiment erroneously being left enabled.
2024-08-12 12:51:29 -04:00
SirStendec
2d420a17ac 4.73.0
* Added: Setting to hide a certain promotion that keeps reappearing, even when you use the "Don't show again" option.
2024-08-02 17:47:41 -04:00
SirStendec
12aa0f2221 4.72.4
* 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.
2024-07-30 16:57:44 -04:00
SirStendec
e2e315d702 4.72.3
* 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.
2024-06-17 14:09:46 -04:00
SirStendec
f79f1ba21d 4.72.2
**Note**: This update does not add proper support for the 'Message Effects' power-up. I still need to investigate how to best implement that, since Twitch's implementation uses a canvas and custom rendering logic.

* Added: Support for the "Gigantify an Emote" power-up.
* Added: Support for "Gigantifing" an emote using a community points reward. Just set up a custom reward that lets a user enter a message, and have the exact string `FFZ:GE` somewhere in the reward's title or description. Only appears as giant for users with FrankerFaceZ. This was added because the native power-up does not support emotes from add-ons.
* Added: Option to disable "Gigantifying" emotes.
* Fixed: Use the correct currency when displaying a community redemption that cost bits rather than points.
* Fixed: The emote menu not appearing correctly when choosing an emote for the "Gigantify an Emote" and "On-Screen Celebration" power-ups.
2024-06-14 14:27:26 -04:00
SirStendec
340551dc83 4.72.1
* Fixed: Catch the error when we are unable to obtain a video ID for the current broadcast, and show a proper error message instead of what we're doing now. The feature is still not working due to Twitch server issues. (Closes #1505)
* Fixed: The appearance of checkboxes and text boxes in the FFZ Control Center was incorrect due to Twitch CSS changes.
* Fixed: Update the URL for collections for profile rules.
2024-06-13 14:51:42 -04:00
SirStendec
38e557e809 4.72.0
* Fixed: The button to expand chat not appearing when using theater mode along with Swap Sidebars.
* Fixed: Emote / link cards not appearing correctly when using moderator view.

* API Added: `searchParentNode(input: InputNode, criteria: (node: ReactNode) => boolean)` method to `site.fine` for finding React internal nodes, useful for locating stateless components for extracting props.
* API Added: `getRenderers()`, `getActions()` methods for `chat.actions` to get bulk data.
* API Added: `getBadge(id: string | number)` method for `chat.badges` to get a badge.
* API Added: `getUser(...).getBadges()` method for `chat` to get a user's badges.
* API Added: The `action-editor` component for `chat.actions` has an additional `extra_appearance_editor` field for adding additional inputs.
* API Changed: The `removeAction(...keys: string[])` and `removeRenderer(...keys: string[])` methods for `chat.actions` now support multiple keys to allow for more efficient removal.
2024-03-29 13:33:14 -04:00
SirStendec
a02c14d84c 4.71.0
* Added: Chat action to toggle a settings profile, for convenience.
* Fixed: Missing message data in rich notices causing messages to not appear correctly when certain add-ons were enabled. Closes #1475
* API Changed: SettingsProfiles now have UUIDs that are stable and not reused, allowing things like chat actions to uniquely identify profiles.
2024-03-21 15:44:11 -04:00
SirStendec
10d35468a9 4.70.0
* Added: Option to prevent Pinned Messages from being displayed. Closes #1470
* Removed: Setting to allow the Golden Kappa Train to appear. This wasn't working correctly, so nothing of value has been lost.
* Fixed: Blocking chat users by username worked inconsistently.
* Fixed: Hiding channels in the directory by title worked inconsistently. Closes #1473
* API Changed: The `chat:get-tab-commands` event now has a `channel` object with the ID and login of the current channel, as well as a reference to the relevant input component.
* API Added: The `chat` module now has `addTabCommandPrefix(prefix: string | string[])` and `removeTabCommandPrefix(prefix: string | string[])` methods. By default, tab-completion for chat commands only triggers with the `/` and `!` prefix for performance reasons. This can be used to add additional prefix characters.
2024-03-19 16:36:44 -04:00
SirStendec
8807e09ea3 4.69.0
* API Added: When adding a command to tab-completion with the `chat:get-tab-commands` event, you can now specify a `prefix` for your command. Valid options: `!` and `/`. Defaults to `/` if not specified.
* API Added: New `chat:update-line` event. Signature: `(messageId: string, clearTokens: boolean = true, clearBadges?: boolean)`. To re-render a chatline without re-tokenizing it, pass `false` as the second argument.
* API Changed: Whisper / video chat messages now have their message IDs correctly added to their standardized message objects.
2024-03-16 20:34:27 -04:00
SirStendec
3aeb70f0fb 4.68.2
* Fixed: The icon not being hidden when hiding the native Twitch viewer count on channel pages.
* Fixed: Certain Twitch native code modules failing to load in the new React 18 build, causing issues with minor features failing to work.
* Fixed: The React button overlapping when using the setting to hide the unfollow button.
* Changed: Disable word wrapping within names when displaying a condensed list of users for a mass subscription.
* Experiments Changed: Added another experiment on how to host PubSub things.
2024-03-01 01:48:50 -05:00
SirStendec
909fdc25f2 4.68.1
* Fixed: Add support for React 18.
2024-02-16 13:19:36 -05:00
SirStendec
659ce1c430 4.68.0
* API Added: New interface for filtering emotes, allowing add-ons to, for example, remove any emotes with names that are common words. This filtering completely removes all traces of an emote, leaving normal words behind in chat.
2024-01-24 14:59:30 -05:00
SirStendec
f89938ba5a 4.67.2
* Fixed: FFZ not correctly loading on dashboard pages.
2024-01-24 12:12:08 -05:00
SirStendec
e8bb25f982 4.67.1
* API Fixed: The new changes to `addNotice()` were not correctly displaying add-on emotes from the current channel.
2024-01-17 14:46:48 -05:00
SirStendec
8688d1a41b 4.67.0
* Fixed: Bug displaying rich content errors when no data is returned from the link information service.
* API Changed: The `site.chat.addNotice()` method now supports rich content and localization.
2024-01-17 14:28:21 -05:00
SirStendec
44e30e985d 4.66.0
* Added: Option to hide emote tool-tips from the FFZ Emote Menu, which can improve performance.
* Changed: Re-add support for older browsers that do not support `crypto.randomUUID()`. I do not consider this a bug, since users should realistically not be on browsers that old for their own safety, but it is a small enough change that I'll allow it.
* Fixed: The option to report emotes not appearing on emote cards for Twitch emotes. (Closes #1450)
* Fixed: Make rich embeds in Chat on Videos slightly narrower so they don't get cut off.
* API Added: Chat message objects now have `ffz_first_msg` and `ffz_returning` flags for use by add-ons.
* API Fixed: Cut down on unnecessary warning logging from `createElement`
2024-01-16 13:59:39 -05:00
SirStendec
786275e7d7 4.65.1
* Fixed: Issue with the IndexedDB storage provider sometimes failing to save values for Chromium users, notably when restoring a backup. This is due to a browser bug, where Chromium would fail to properly handle multiple simultaneous read/write transactions to an IndexedDB database. To prevent issues going forward, we now use a ticket lock to prevent more than one concurrent write transaction. TL;DR: You can restore your backups properly again.
* Changed: Add Bluesky's new brand icon for use displaying embedded Bluesky content.
2023-12-30 14:36:59 -05:00
SirStendec
5bafc824b1 4.65.0
* Added: Two settings to improve the FFZ experience for users using their operating system's High Contrast mode. One setting allows you to opt Twitch out of high contrast mode, and the other (which is selectively enabled by default) loads a few more styles to make page elements appear more correctly.
* Added: When using link cards to view a link to a Twitch clip, allow the clip to be played with an embedded player.
* Changed: When displaying a tool-tip for a link, use the link's accent color along the side of the tool-tip for slightly more branding.
* Changed: Make the prompt to accept the YouTube Terms of Service more subtle, and add an option to decline to the settings so it'll stop showing the link to settings altogether.
* Changed: Update the icon for Discord in the icon font, and add an icon for TikTok.
2023-12-21 17:28:39 -05:00
SirStendec
6e78fd7cab 4.64.0
This update adds a check that forces users to agree to YouTube's Terms of Service before they are able to view rich embeds for YouTube links. I personally do not agree with this, but we were required to implement this in order to maintain access to YouTube's API. Actually, they said "API Clients must state in their own terms of use that, by using those API Clients, users are agreeing to be bound by the YouTube Terms of Service." but that's obviously ridiculous for this use case. This is my compromise. Sorry for the inconvenience, everyone. This also comes with aesthetic tweaks to make YouTube's compliance team happy. Woo...

* Added: Setting to display labels on highlighted chat messages giving the reason why the message was highlighted.
* Added: System to force users to agree to a service's Terms of Service before displaying rich content from specific providers. So far this is only used by YouTube.
* Changed: Made the background of highlighted words in chat messages slightly smaller.
* Fixed: A few page elements in mod view not being themed correctly.
* Fixed: Timestamps displaying with an hour when they obviously do not need to.
* API Added: `main_menu:open` event for a general way to open the main menu.
* API Added: Settings UI elements using components using the `provider-mixin` can now override the provider key they use by setting an `override_setting` value on their definition.
* API Changed: The `chat.addHighlightReason(key, data, label)` method now takes an optional `label` parameter to set the text that appears on chat messages when the setting to display labels is enabled.
2023-12-19 16:24:33 -05:00
SirStendec
80931479c1 4.63.0
* Added: Setting to display Content Flags on directory pages.
* Fixed: The setting to make the player larger on `clips.twitch.tv` pages incorrectly defaulting to true. Closes #1440.
* Fixed: Exception thrown when pressing Escape in chat with a tray open.
* Fixed: Chat not correctly displaying messages until the mouse is moved when using an option to pause chat using mouse movement.
* Fixed: Misspelled entry in the Content Flags list.
* Fixed: Some directory cards not being correctly detected by FFZ.
* Fixed: Color processing throwing an exception if the input value is empty.
* Fixed: Some page elements failing to appear correctly, instead showing an error. Notably this affects the PrattleNot add-on as well as some emote tool-tips. Closes https://github.com/FrankerFaceZ/Add-Ons/issues/193
* Changed: Add a note to the setting to hide extensions that recommends CommanderRoot's Disable Twitch Extensions browser extension.
* Changed: Log a warning when users use external scripts to mess with experiments.
* API Changed: `deep_copy` now correctly handles RegExp, Date, Set, and Map objects.
2023-12-18 17:11:44 -05:00
SirStendec
429553f5d4 4.62.2
* Fixed: Issue with colors not being calculated correctly when colors are being processed. Hopefully this is the last bug in the colors rewrite.
* Fixed: Incorrect PubSub event handling causing some events, notably point redemptions, to not appear correctly. Closes #1438.
* Fixed: Issue where certain pop-up elements would not close correctly when clicking outside them.
2023-12-14 21:17:14 -05:00
SirStendec
d503243be1 4.62.1
* Fixed: Incorrect handling of colors with alpha transparency when processing colors.
2023-12-14 18:53:05 -05:00