* Add a new home feed-api wrapper and give a header indicating the fallback behavior
* Sneak in a quick fix: use the correct text color in the delete modal
* Use imported constant
* feat: suggested language
* fix: wording correction
* Factor out SuggestedLanguage into a separate component
* Tighten the language-suggestion confidence to avoid false positives
* Tweak the copy and UI
* Add function fallbacks for safari
---------
Co-authored-by: Mary <pineapplecreamcheese@skiff.com>
* add expo web browser + modal
* add in app browser option to settings
* don't show toggle on web
* Tweak browser-choice UIs
---------
Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* Move profile and preference polling to polls-on-foreground
* Refetch prefs on feeds screen refresh since polling no longer occurs
* Reduce notifications polling by 50% if there's already an unread
* Disable feed polling if we know we have content
* Disable the hard refresh after 1 hour in case it's the cause of the random feed refresh bug
* Fix types
* add expand replyTo text with animation
* add images, quote to replyTo
* support withmedia
* adjust layout
* add embed to all needed openComposer calls
* adjust gap
* organize imports
* Initial library setup
* Add docblocks
* Some cleanup
* New storybook
* Playing around
* Remove silly test, use for...in
* Memo
* Memo
* Add hooks example
* Tweak colors, bit of cleanup
* Improve macro handling
* Add some more examples
* Rename for better diff
* Cleanup
* Add nested context example
* Add todo
* Less break more perf
* Buttons, you get the idea
* Fix test
* Remove temp colors
* Add a few more common macros
* Docs
* Perf improvements
* Alf go brrrr
* Update breakpoint handling
* I think it'll work
* Better naming, better code
* Fix typo
* Some renaming
* More complete pass at Tailwind naming
* Build out storybook
* Playing around with curves
* Revert "Playing around with curves"
This reverts commit 6b0e0e5c9d.
* Smooth brain
* Remove outdated docs
* Some docs, fix line-height values, export tokens
* Don't use mask for android at all
* Handle reduced motion
* Add dark splash
* Add dark config
* Try more config
* Duplicate config
* Ensure splash config is applied
* Don't use mask for android at all
* Handle reduced motion
* Add dark splash
* Add dark config
* Fix android version code
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>