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

1274 commits

Author SHA1 Message Date
Dan Salvato
a3dcbd62bc Fix required key in Vue component iteration 2024-02-16 14:33:54 -07:00
Dan Salvato
9b4a0da10b Cleanup toggle switch component 2024-02-16 14:33:54 -07:00
Dan Salvato
560dc349a6 Update toggle switch CSS 2024-02-16 14:33:54 -07:00
Dan Salvato
caa44cbbc3 Replace "simple view" checkbox with persistent sidebar toggle switch 2024-02-16 14:33:54 -07:00
Dan Salvato
ce851ab2ad Finish organizing "Hide Features" menu in simple view 2024-02-16 14:33:54 -07:00
Dan Salvato
b5777f5a87 Add safeguards to manual simple view sorting 2024-02-16 14:33:54 -07:00
Dan Salvato
ead46d78fb Add unique paths and sorting to simple view settings 2024-02-16 14:33:54 -07:00
Dan Salvato
7e384b56b8 Remove non-essential control center titlebar buttons in simple view 2024-02-16 14:33:54 -07:00
Dan Salvato
5bcd946c70 Replace simple view settings filters with building tree based on view 2024-02-16 14:33:54 -07:00
Dan Salvato
0997af44c3 Add simple_path field to reorganize settings in simple view 2024-02-16 14:33:54 -07:00
Dan Salvato
ee853c160c Don't show profile select drop-down when simple view is enabled 2024-02-16 14:33:54 -07:00
Dan Salvato
5a97b291b0 Never mark any settings as unseen when simple view is active 2024-02-16 14:33:54 -07:00
Dan Salvato
72ed43639d Don't show or use settings search when simple view is enabled 2024-02-16 14:33:54 -07:00
Dan Salvato
012327ca37 Force all add-on settings to display in simple view 2024-02-16 14:33:54 -07:00
Dan Salvato
584e4905f1 Show all Home UI categories in simple view 2024-02-16 14:33:54 -07:00
Dan Salvato
603aec04d6 Add simple flag to all settings designated for simple view 2024-02-16 14:33:54 -07:00
Dan Salvato
f4febe6ee0 Separate simple view logic from filter logic 2024-02-16 14:33:54 -07:00
Dan Salvato
8d2e58500d Add "simple view" context, setting, and Vue component filters 2024-02-16 14:33:54 -07:00
Dan Salvato
3ca8f2f6f3 Add optional simple field to SettingUi_Basic 2024-02-16 14:33:54 -07: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
SirStendec
de09ec502d 4.62.0
* Added: New settings for hiding content from the directory based on tag, content flag, or title.
* Fixed: Certain page elements not being hidden correctly.
2023-12-14 18:33:08 -05:00
Mike
40865adba7
Merge pull request #1430 from FrankerFaceZ/types
The Grand TypeScript Update
2023-12-14 17:53:19 -05:00
SirStendec
18491b0873 4.61.0
* Changed: Replace the old Twitter widget on the FFZ Control Center's Home page with a custom Bluesky widget.
* Fixed: Settings profile rules for the current channel and current category not functioning correctly.

* Developer Changed: We TypeScript (a work-in-progress conversion)
* Developer Fixed: The GraphQL inspector not properly displaying data.
2023-12-14 17:52:35 -05:00
SirStendec
31e7ce4ac5 * Convert AddonManager to TypeScript.
* Convert PubSub (not PubSubClient) to TypeScript.
* Convert StagingSelector to TypeScript.
* Make sure to add ExperimentManager's events to the global interface.
2023-11-16 22:36:10 -05:00
SirStendec
6c6d4ceb98 Finish the initial conversion of the settings module to TypeScript. 2023-11-16 21:39:08 -05:00
SirStendec
136a2491c8 More type progress. 2023-11-16 18:41:50 -05:00
SirStendec
fed7d3e103 Merge branch 'master' into types 2023-11-14 13:41:22 -05:00
SirStendec
14bc111ec0 4.60.1
* Fixed: The Delete Message action not working correctly for users within a specific Twitch experiment.
2023-11-14 13:33:29 -05:00
SirStendec
9de3b92019 Bit more work. 2023-11-14 12:51:30 -05:00
SirStendec
b9d23accf0 Initial commit for converting FrankerFaceZ to TypeScript. 2023-11-13 20:47:45 -05:00
SirStendec
ba72969c51 4.60.0
* Added: When searching in the FFZ Control Center, you can now use the tag `@modified` to filter by settings that have been changed in the current profile.
* Added: Add-ons now have Changelog buttons that navigate to a changelog showing only entries for that add-on.
* Changed: The Changelog pages now has nicer formatting for each commit, including add-on icons and clickable links to add-on sub-pages when viewing the Add-on Changelog.
* API Added: To prevent FrankerFaceZ from loading into a page, include `disable_frankerfacez` in the URL query parameters.
* Experiment Changed: Fix incorrect roll-out percentage for API-Based Link Lookups. This should be fully enabled.
* Experiment Changed: Lower the percentage of users in the MQTT-Based PubSub experiment.
2023-11-06 20:47:19 -05:00
SirStendec
5046088bf7 4.59.1
* Fixed: Remove debug logging.
* Experiment Changed: Tweak the MQTT pub/sub client to handle subscription failures better.
2023-11-05 19:48:38 -05:00
SirStendec
a7e131070e 4.59.0
* Fixed: Appearance of the page when viewing a Watch Party.
* Fixed: During the initial load, some CSS blocks could be incorrectly injected into the page due to a race condition.
* Fixed: The sample embed in Chat > Appearance >> Rich Content not appearing correctly.
* API Added: New event class `FFZWaitableEvent`, a subclass of `FFZEvent` providing a framework for asynchronous event handlers.
* API Added: `site.channel:update-bar` event, fired whenever the channel info bar is updated.
* API Fixed: `chat.removeTokenizer()`, `chat.removeLinkProvider()`, and `chat.removeRichProvider()` failing to fully remove their respective items.
* API Removed: The `emitAsync` method has been removed from modules. Nothing was using it, and it was problematic due to the concurrent access protection on events. Instead, `FFZWaitableEvent` should be used if asynchronous waiting is necessary.
2023-11-05 14:49:39 -05:00
SirStendec
675512e811 4.58.0
* Fixed: When unloading an emote set, also unload its CSS block.
* API Added: `badges.removeBadge()` method for removing a badge from the system.
* API Added: `chat.iterateUsers()` method to iterate all User instances.
* API Added: `getUser().removeAllBadges()` method to remove all badges from a provider.
* API Added: `getRoom().iterateUsers()` method to iterate all User instances on a Room instance.
* API Added: `tooltips.define()` method to add a tool-tip handler to the system.
* API Changed: All core modules now use the add-on proxies to track which add-ons are responsible for injecting content, and to make it easier to unload (and reload) add-ons.
* API Changed: Many core module methods now display warning messages in the console when used improperly. For now, this mainly checks that IDs are correct, but there may be more warnings in the future.
* API Fixed: Calling `resolve()` will now properly use add-on proxies.
* Experiment Changed: Improved handling for server disconnects with the MQTT experiment, as well as handling for topic mapping changes.
2023-11-04 19:06:06 -04:00
SirStendec
c4da7fa9d9 4.57.4
* Fixed: Stupid typo making badge tool-tips not work correctly in some cases.
2023-11-03 16:21:52 -04:00
SirStendec
a5e5082d63 4.57.3
* Changed: Make the badge visibility settings page a bit nicer.
* Changed: Display add-on's maintainers field in the add-ons list.
* API Fixed: When iterating chat messages, include tokenized messages that have not been pushed out of the buffer yet.
2023-11-03 16:04:35 -04:00
SirStendec
71f347ab70 4.57.2
* API Added: Certain methods will now log warnings when in developer mode if being called incorrectly. For example, if an add-on registers new badge data without including its add-on ID as the data source. Expect these to be expanded over time.
* API Added: Add-on modules and sub-modules will all have an `addon_id` property containing their source add-on's ID, as well as an `addon_root` property with a reference to the add-on's root module.
* API Changed: The `ffz_user_class` property of chat messages should now be a `Set`, if it is defined.
* API Changed: Add-on module proxies are now cached.
2023-11-03 14:40:58 -04:00
SirStendec
04969cc57e 4.57.1
* Fixed: Certain player features breaking for Firefox users after the most recent update.
2023-11-02 23:57:56 -04:00
SirStendec
21ae0059a5 4.57.0
* Added: The FFZ Subwoofer badge now displays a user's number of subscribed months in its tool-tip.
* Added: Setting to set the default sorting mode of the directory. (Have you tried the Deck add-on?)
* Fixed: The location of certain player action buttons was incorrect after Twitch made changes to the player.
* Changed: Badges added by add-on are now grouped by add-on in badge visibility settings. This allows users to disable all badges from a given add-on at once, and is just generally nicer to look at.
* API Added: `iterateMessages()` method on the `chat` module as an easy way to iterate over all live chat messages, in case existing messages need to be modified without the overhead of tokenization.
* API Added: Badges can now be stacked together for visibility purposes, similar to Twitch's native badge versions, by setting a `base_id` on each badge.
* API Added: Badges can now display dynamic data on their tool-tip by using a `tooltipExtra` method. This was used to display Subwoofer subscription lengths.
* API Added: New setting UI type `setting-text` that can be used to insert arbitrary markdown into settings pages.
* API Changed: The `ffz_user_class` special property on messages can be an array instead of a string.
* API Fixed: Add-on proxy modules are now correctly used for an add-on's sub-modules.
2023-11-02 21:39:52 -04:00