* Set `ft-refresh-widget` to z-index of 3
It should be still high enough to be above watch progress, but below the search bar
* Remove `topNav` box-shadow which was previously hidden by z-index
* Implement first draft of last subscription refresh timestamp
* Update styling to be a top bar
* Update styling to be banner-compatible, & increase banner X button size on mobile
* Update subscription refresh timestamp to be relative
* Implement refresh timestamps for Shorts, Live, and Community tabs
* Extract refresh widget to its own component
* Add Trending and Popular refresh widgets with timestamps
* Fix justifying when no timestamp exists
* Move timestamps to utils store
* Remove unneeded ref classes and currentLocale computed property
* Add page-specific titles for each feed type
* Implement showing least recent cache date per profile
* Update styling property placement & match top nav box shadow on ft-refresh-widget
* Implement showing timestamp for profile only if all channel subscriptions can be found in cache
* Disable refresh button instead of removing it or the widget from the DOM
* Increase top banner's top margin
* Update channel caching calls to provide timestamps
* Modify updateCacheByChannel functions to have default timestamp of new Date()
* Fix 30-day month relative date calculation scenarios through new optional parameter
* Rectify Case 3 (see https://github.com/FreeTubeApp/FreeTube/pull/3668)
* Add back missing line in Popular.js
* Add back @double-great/stylelint-a11y Stylelint plugin
Notably, we choose to not use the 'a11y/no-outline-none' rule. The reason for this being that our focus ring suffices for almost every use case (https://www.w3.org/WAI/WCAG22/Understanding/focus-appearance-minimum), and using the same hover and focus styling can be considered bad design in many cases. YT goes the direction of foregoing the focus ring for many of its components and choosing a barely darker color than its :hover for :focus styling, which is controversial. Accessibility-wise, at the very least, using the same hover and focus styling can be confusing, especially for sighted users who use keyboard navigation.
* Add back stylelint-config-sass-guidelines
* Add back stylelint-config-standard
* Satisfy media-prefers-reduced-motion a11y rule
This is not recognized as a fix by the rule due to its limited detection logic, so this rule is not being imported directly.
* Remove duplicate code
* Implement linting fixes
* Implement _ft-list-item.scss linting fixes excluding no-descending-specificity
Properly implementing the no-descending-specificity rule in this file seems to utterly destroy the styling. This would be its own entire initiative to unravel.
* Restart from scratch modifications of _ft-list-item.scss
* Resolve styling discrepancies introduced with ft-list-channel and ft-tooltip
* Implement playlist sorting
* Hide sort menu for remote playlists
* Remove 'Custom (descending)' sort order
I don't see the need for this particular sort order.
* Adjust sort order & align dropdown with 'More Options' button
* Make 'Latest added first' default option instead of custom
* Remove unlikely-to-be-implemented 'Date published' sorting options
Context from absidue: 'I don't think we should even attempt to support it, due to all of the situations where it wouldn't be possible.'
* Update to use sortOrder as main variable throughout
* Hide sort menu for playlists of length <2
* * Update most paginated places to auto load next page (except comments)
* * Make comment section auto load next pages too
* $ Use new component to dedup auto load code
* * Implement auto load next page for single playlist page
* * Remove comment auto load setting
* * Update tooltip text
* Enable playlist video search mode by default; add Ctrl+F binding
* Fix subject-verb agreement on two search labels
* Remove playlist video search bar when only one video is in the playlist
* Add check for search video mode allowed that is requisite for keybinding
* Remove unnecessary 'async function' in mounted
* Fix styling issue