* Animate the like button
* Respect reduced motion
* Move like count into animated component
* Animate text
* Fix layout on Android
* Animate text backwards too
* Fix bad copypasta
* Reflect nonlocal updates to animated values
* video settings modal in composer
* show done button on web
* rm download options
* fix logic for showing settings button
* add language picker (wip)
* subtitle list with language select
* send captions & alt text with video when posting
* style "ensure you have selected a language" text
* include aspect ratio with video
* filter out captions where the lang is not set
* rm log
* fix label and add hint
* minor scrubber fix
* Rename variable to disambiguate with parent scope
* More variables where they are used
* Inline variables
* Add suggestions in profile
* Gate it
* rm space
* Remove header suggestions under gate
* refactor: consistent localized formatting
* refactor: localized date time
* refactor: localize relative time with strings
* chore: fix typo from copy-paste
* Clean up useTimeAgo
* Remove old ago
* Const
* Reuse
* Prettier
---------
Co-authored-by: Mary <git@mary.my.id>
* implement AppBskyEmbedVideo lexicon in player
* add alt to native player
* add prerelease package
* update prerelease
* add video embed view manually from record
* fix type error on example video
* black bg + use aspect ratio on web
* add video to feeds
* fix video overflowing aspect ratio
* remove prerelease package
---------
Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* Updated translation
* Update translation
* Update translation
* Update translation
* Only show replies in Following if following all involved actors (#4869)
* Only show replies in Following for followed root and grandparent
* Remove now-unnecessary check
* Simplify condition
* Respect labels on feeds and lists (#4818)
* Prep
* Pass in optional moderation to FeedCard
* Compute moderation decision, filter contentList contexts, pass into card
* Let's go a different route
* Filter from within search queries
* Use same search query for starter packs
* Filter lists from profile tabs
* Cleanup
* Filter from profile feeds
* Moderate post embeds
* Memoize
* Use ScreenHider on lists
* Hide both list types
* Fix crash on iOS in screen hider, fix lineheight
* Memoize renderItem
* Reuse objects to prevent re-renders
* tweak list header (#4870)
Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* bskyweb: optional basic auth password middleware (#4759)
* Update translation
* Revert "Update translation"
This reverts commit 3a7b74f47b808f4fda482546f67ea90bfa073693.
* Revert "bskyweb: optional basic auth password middleware (#4759)"
This reverts commit bc3a27d40f068a7203aa55384300cbd26f8248cf.
* Revert "tweak list header (#4870)"
This reverts commit 34e7e5cba2cdbc8bddf062ed468ec10c68b0cdd8.
* Revert "Respect labels on feeds and lists (#4818)"
This reverts commit 9ec6fde2884ad7a32d032227518e89c5607b61a1.
* Revert "Only show replies in Following if following all involved actors (#4869)"
This reverts commit e2cc4bb4af092564aa93f41f5dadba2b65ae4250.
* Update translation
* Update translation
* Update translation
* Updated translation
* Update translation
* Update translation
* Unified existing translations of "hidden" and "community".
* Update translation
* Update translation
* Update translation
---------
Co-authored-by: dan <dan.abramov@gmail.com>
Co-authored-by: Eric Bailey <git@esb.lol>
Co-authored-by: Samuel Newman <mozzius@protonmail.com>
Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
Co-authored-by: bnewbold <bnewbold@robocracy.org>
* Split minimal shell mode into headerMode and footerMode
For now, we'll always write them in sync. When we read them, we'll use headerMode as source of truth. This will let us keep footerMode independent in a future commit.
* Remove fixed_bottom_bar special cases during calculation
This isn't the right time to determine special behavior. Instead we'll adjust footerMode itself conditionally on the gate.
* Copy-paste setMode into MainScrollProvider
This lets us fork the implementation later just for this case.
* Gate footer adjustment in MainScrollProvider
This is the final piece. Normal calls to setMode() keep setting both header and footer, but MainScrollProvider adjusts the footer conditionally.