* Added: Option to set a default custom color for highlighted messages, overriding the default red color.
* Added: Recent Messages for Chat Input. Press up and down to recall previously sent messages.
* Added: Option to prioritize favorited emotes and emoji in tab-completion.
* Fixed: Extensions not being hidden correctly.
* Fixed: Change tab-completion sorting to act more similarly to vanilla Twitch.
* Fixed: Color inputs in settings updating too frequently, causing performance issues.
* Fixed: Chat-related code breaking on popped out viewer cards and spamming the automated error reporting service with errors.
* Update to version 4 of webpack.
* For that matter, update *every dependency* to the latest available version.
* Remove the babel build target for Edge, as it doesn't seem to be necessary with webpack 4 and tenser.
* Add support for optional chaining and nullish coalescing via Babel transformations.
* Update the clips domain version to work better. Or at all, really.
* Remove unused code from i18n.
* Remove the last `<style>` from vue component files. They don't work that way now anyways.
* Fix a bug in Raven's report handler.
* Fix a bug with the menu button in browsers that don't understand `:scope` within `querySelector()`.
* Added: Setting to hide the "LIVE" indicator on live channel pages.
* Added: Setting to invert portrait mode, placing chat at the top rather than the bottom.
* API Added: New icons to the default icon set: `user`, `clip`, `sort-down`, `sort-up`, `sort-alt-up`, `sort-alt-down`, and `language`.
* API Added: All Vue components now have access to a `getReactURL(route, ...)` method for building URLs.
* API Fixed: `<react-link />` will not attempt a React navigation if given a non-relative link.
* API Fixed: Issue with `getTagImmediate` throwing an exception when not given a callback function.
* Added: Setting to hide the "Not Live" bar beneath videos and clips that appears when the channel is currently live.
* Fixed: Handling of `https://www.twitch.tv/<channel>/clip/<slug>` urls for rich chat embeds and rich link tool-tips.
* Fixed: Lower the priority of custom highlight terms so they will not break links.
* Fixed: Holding multiple modifier keys to display in-line chat actions.
* Fixed: Clean up out-dated avatar display setting for the directory.
* API Added: Allow add-ons to access the Popper JS library via `FrankerFaceZ.utilities.popper`.
* API Added: `<icon-picker />` Vue component for selecting an icon.
* API Added: `<react-link />` Vue component for creating links that cause the React app to navigate without a page load.
* API Added: `<t-list />` Vue component for translating text including Vue elements.
* API Added: `maybeLoad(icon)` function for font awesome to only load the font if the icon is from font awesome.
* API Added: `generateUUID()` function to `FrankerFaceZ.utilities.object`
* API Added: The `vue-observe-visibility` module is now loaded with Vue and made available in all Vue contexts.
* Add setting to hide live notification when watching a clip / video
* Also move Event, Rerun and Squad Streaming Bar settings from the Player to the Channel section
* Fixed: Update Switchboard to allow FFZ to load normally on Twitch's latest update, which updated their version of React Router.
* Fixed: Apply the setting to hide Recommended Channels from the sidebar to Popular Channels as well.
* Added: Setting to remove rounding applied to avatars.
* Fixed: New settings not being marked as seen when you see them.
* Fixed: Position of the FFZ Control Center icon in the navigation bar.
* Fixed: Position of the Whisper button when in theater mode with a custom Chat Width.
* Fixed: Hiding Recommended Channels from the Following Directory.
* Fixed: Rendering of badges in slot zero.
* Fixed: Thumbnails in rich embeds in chat not displaying correctly.
* Fixed: Chat disappearing with tall, thin windows despite Portrait Mode being enabled.
* Added: Data Management > Backup and Restore
* Added: Option to expand merged mass sub gift messages by default.
* Added: Option to hide the Discover link in the top navigation bar.
* Changed: Use icons for navigation of the emote menu. Fix padding as well.
* Fixed: Player problems on Squad Streams pages.
* Fixed: Option to hide Live indicators on channels in the directory.
* Changed: By default, open a Twitch subscription page rather than TwitchEmotes when Shift-Clicking a subscriber emote.
* Changed: Add a link information provider for Pretzel Rocks.
* Fixed: Display better information for links to Twitch channels and to Twitch pages without video content.
* Fixed: Hide Rerun Bar setting incorrectly hiding video information on other channel pages.
* Fixed: Emote Menu icon not appearing correctly when the option to replace it with the FFZ logo is enabled.
* Fixed: Hide Event Bar and Hide Rerun Bar settings for the player.
* Fixed: GiftZ event emote note working correctly.
* Fixed: Unimplemented action `Gift Subscription` appearing in the available actions in the In-Line Actions editor.
* Fixed: Take a few more variables into account when sizing the player for Portrait Mode.
* Changed: Fade in the Host button, not responding to user interaction while it's fading to give users a chance to react to the UI change.
* Added: Portrait Mode Threshold setting for customizing at precisely which point Portrait Mode kicks in.
* Fixed: Do not automatically hide chat because of a narrow window when Portrait Mode is enabled.
* Added: Portrait Mode! Put chat beneath the player when your window is taller than it is wide to make the best use of space for both the player and chat.
* Fixed: Better route matching for when we're actually on the new channel page.
* Fixed: Unable to effectively collapse chat with a custom width on the new layout.
* Added: Separate setting for hiding the Get Bits button in the site header without hiding the bits UI in chat.
* Added: Setting to hide avatars in the side navigation bar.
* Fixed: Do not inject FFZ into the Extension Testing Rig.
* Add extensible actions system.
* Add extensive UI for configuring the actions system.
* Add setting to disable channel hosting.
* Fix the stupid Rooms thing popping up every time you open a channel.
* Fix how we grab chat types from React.
* Refactor how we handle incoming chat messages.
* Add a hook for outgoing chat messages.
* Fix emoji appearing squished with baseline emote alignment.
* Display arrows on balloons.
* Fix an issue generating emoji URLs.
* Do not use the default values for settings with merge strategies if profiles have those settings, just empty.
* Display a message in the chat settings menu if we tried opening FFZ's settings and failed.
* Wait a bit for webpack's loader if it's not immediately there for some reason.
* Probably other stuff.
* Not mod cards. Yet.
* Directory Support
- Channel avatar next to / on-top the stream card
- Stream uptime on stream card
- Host grouping with a nice UI
- Ability to block / hide games and / or their thumbnails
Missing / Not working as of right now:
- Channel avatar / uptime not showing in Game or Community directories
Fix not being able to open host menu on the stream name
Fix chat lines where you've been mentioned.
"Following" button is now hoverable
Not configurable though.
Merge remote-tracking branch 'upstream/master'
Fix for Apollo's InlineFragments
Basic game directory index support
(Outsource timeToString to some utility class!!!)
Empty merge
Fix Github's "You're behind the master branch!" annoyance
More work on Directory stuff
Community pages are now supported
Several other small things
* Proper router usage
* Several fixes
Also removing `package-lock.json` because for whatever reason that was in?
* Early return if the container or card are null