* Vendor createNativeStackNavigator for further tweaks
* Completely disable withAuthRequired
* Render LoggedOut for protected routes
* Move web shell into the navigator
* Simplify the logic
* Add login modal
* Delete withAuthRequired
* Reset app state on session change
* Move TS suppression
* Base work for public view
* Make default moderation settings more restrictive
* Fix type
* Handle showing sign-in on authed actions
* Fix hoc logic
* Simplify prefs logic
* Remove duplicate method
* Add todo
* Clean up RepostButton.web
* Fix x button color
* Add todo
* Retain existing label prefs for now, use separate logged out settings
* Clean up useAuthedMethod, rename to useRequireAuth
* Add todos
* Move dismiss logic to withAuthRequired
* Ooops add web
* Block public view in prod
* Add todo
* Fix bad import
* Update login page to use service query
* Update modal to use session instead of store
* Move image sizes cache off store
* Update settings to no longer use store
* Update link-meta fetch to use agent instead of rootstore
* Remove deprecated resolveName()
* Delete deprecated link-metas cache
* Delete deprecated posts cache
* Delete all remaining mobx models, including the root store
* Strip out unused mobx observer wrappers
* Move tick-every-minute into a hook/context
* Move soft-reset event out of the shell model
* Update soft-reset listener on new search page
* Implement session-loaded and session-dropped events
* Update analytics and push-notifications to use new session system
* WIP
* Add shell state
* Integrate new shell state for drawer and minimal shell mode
* Replace isDrawerSwipeDisabled
* Split shell state into separate contexts to avoid needless re-renders
* Fix typo
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* Add lists screen
* Update Lists screen and List create/edit modal to support curate lists
* Rework the ProfileList screen and add curatelist support
* More ProfileList progress
* Update list modals
* Rename mutelists to modlists
* Layout updates/fixes
* More layout fixes
* Modal fixes
* List list screen updates
* Update feed page to give more info
* Layout fixes to ListAddUser modal
* Layout fixes to FlatList and Feed on desktop
* Layout fix to LoadLatestBtn on Web
* Handle did resolution before showing the ProfileList screen
* Rename the CustomFeed routes to ProfileFeed for consistency
* Fix layout issues with the pager and feeds
* Factor out some common code
* Fix UIs for mobile
* Fix user list rendering
* Fix: dont bubble custom feed errors in the merge feed
* Refactor feed models to reduce usage of the SavedFeeds model
* Replace CustomFeedModel with FeedSourceModel which abstracts feed-generators and lists
* Add the ability to pin lists
* Add pinned lists to mobile
* Remove dead code
* Rework the ProfileScreenHeader to create more real-estate for action buttons
* Improve layout behavior on web mobile breakpoints
* Refactor feed & list pages to use new Tabs layout component
* Refactor to ProfileSubpageHeader
* Implement modlist block and mute
* Switch to new api and just modify state on modlist actions
* Fix some UI overflows
* Fix: dont show edit buttons on lists you dont own
* Fix alignment issue on long titles
* Improve loading and error states for feeds & lists
* Update list dropdown icons for ios
* Fetch feed display names in the mergefeed
* Improve rendering off offline feeds in the feed-listing page
* Update Feeds listing UI to react to changes in saved/pinned state
* Refresh list and feed on posts tab press
* Fix pinned feed ordering UI
* Fixes to list pinning
* Remove view=simple qp
* Add list to feed tuners
* Render richtext
* Add list href
* Add 'view avatar'
* Remove unused import
* Fix missing import
* Correctly reflect block by list state
* Replace the <Tabs> component with the more effective <PagerWithHeader> component
* Improve the responsiveness of the PagerWithHeader
* Fix visual jank in the feed loading state
* Improve performance of the PagerWithHeader
* Fix a case that would cause the header to animate too aggressively
* Add the ability to scroll to top by tapping the selected tab
* Fix unit test runner
* Update modlists test
* Add curatelist tests
* Fix: remove link behavior in ListAddUser modal
* Fix some layout jank in the PagerWithHeader on iOS
* Simplify ListItems header rendering
* Wait for the appview to recognize the list before proceeding with list creation
* Fix glitch in the onPageSelecting index of the Pager
* Fix until()
* Copy fix
Co-authored-by: Eric Bailey <git@esb.lol>
---------
Co-authored-by: Eric Bailey <git@esb.lol>
* upgrade sentry to support profiling monitoring
* remove console logs in production builds
* feeds tab bar and bottom bar animation centralized
* refactor FeedPage out of Home
* add script to start in production mode
* move FAB inner to reanimated
* move FABInner back to `Animated` RN animation
* add perf commands
* add testing with Maestro and perf with Flashlight
* fix merge conflicts
* fix resourceClass name in eas.json
* fix onEndReachedThreshold in Feed
* memoize styles
* go back to old styling for LoadLatestBtn
* remove reanimated code from useMinimalShellMode
* move shell animations to hook/reanimated for perf
* fix empty state issue
* make shell animation feel smoother
* make shell animation more smooth
* run animation with autorun
* specify keys for tab bar properly
* remove comments
* remove already imported dep
* fix lint
* add testing instructions
* mock sentry-expo for jest
* fix jest mocks
* Fix the load-latest button on desktop and tablet
* Fix: don't move the FAB in tablet mode
* Fix type error
* Fix tabs bar positioning on tablet
* Fix types
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* Fix: improve the 'end of feed' detection condition
* Fix the feeds link on mobile in the empty state
* Align the following empty state better on web
* Dont autofocus the search input in the search tab
* Fix the error boundary render
* Add 'end of feed' CTA to following feed
* Reduce the default feeds to discover now that we have feed-selection during onboarding
* Fix case where loading spinner fails to stop rendering in bottom of feed
* Fix: dont show loading spinner at footer of feed when refreshing
* Fix: dont fire reminders during onboarding
* Optimize adding feeds and update to mirror the api behaviors more closely
* Use the lock in preferences to avoid clobbering in-flight updates
* Refresh the feed after onboarding to ensure content is visible
* Remove the now-incorrect comment
* Tune copy
* Feeds navigation on right side of desktop (#1403)
* Remove home feed header on desktop
* Add feeds to right sidebar
* Add simple non-moving header to desktop
* Improve loading state of custom feed header
* Remove log
Co-authored-by: Eric Bailey <git@esb.lol>
* Remove dead comment
---------
Co-authored-by: Eric Bailey <git@esb.lol>
* Redesign feeds tab (#1439)
* consolidate saved feeds and discover into one screen
* Add hoverStyle behavior to <Link>
* More UI work on SavedFeeds
* Replace satellite icon with a hashtag
* Tune My Feeds mobile ui
* Handle no results in my feeds
* Remove old DiscoverFeeds screen
* Remove multifeed
* Remove DiscoverFeeds from router
* Improve loading placeholders
* Small fixes
* Fix types
* Fix overflow issue on firefox
* Add icons prompting to open feeds
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* Merge feed prototype [WIP] (#1398)
* POC WIP for the mergefeed
* Add feed API wrapper and move mergefeed into it
* Show feed source in mergefeed
* Add lodash.random dep
* Improve mergefeed sampling and reliability
* Tune source ui element
* Improve mergefeed edge condition handling
* Remove in-place update of feeds for performance
* Fix link on native
* Fix bad ref
* Improve variety in mergefeed sampling
* Fix types
* Fix rebase error
* Add missing source field (got dropped in merge)
* Update find more link
* Simplify the right hand feeds nav
* Bring back load latest button on desktop & unify impl
* Add 'From' to source
* Add simple headers to desktop home & notifications
* Fix thread view jumping around horizontally
* Add unread indicators to desktop headers
* Add home feed preference for enabling the mergefeed
* Add a preference for showing replies among followed users only (#1448)
* Add a preference for showing replies among followed users only
* Simplify the reply filter UI
* Fix typo
* Simplified custom feed header
* Add soft reset to custom feed screen
* Drop all the in-post translate links except when expanded (#1455)
* Update mobile feed settings links to match desktop
* Fixes to feeds screen loading states
* Bolder active state of feeds tab on mobile web
* Fix dark mode issue
---------
Co-authored-by: Eric Bailey <git@esb.lol>
Co-authored-by: Ansh <anshnanda10@gmail.com>
* Move most responsive queries to the hook
* Fix invalid CSS value
* Fixes to tablet render of post thread
* Fix overflow issues on web
* Fix search header on tablet
* Fix QP margin in web composer
* Fix: only apply double gutter once to flatlist (close#1368)
* Fix styles on discover feeds header
* Fix double discover links in multifeed
* defer loading of feeds until visible
* Fix: use existing hasLoaded
* Fix: dont query for latest during initial load
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* Update postmeta to put the timestamp on the right side on mobile
* Drop the two-line PostMeta mode
* Add ProfilePreview modal
* Tune PostMeta to give the best behavior possible for a given platform
* Remove old showFollowBtn attributes
* Fix style issue
* Switch the follow button in the profile header to use the inverted color for consistency with the rest of the app
* Fix lint
* Fix darkmode
* Tune the profile preview footer
* Better analytics choice
* fix desktop window size
* fix desktop window size
* add listener for resize events
* fix when going from mobile to web
* only add eventListener for web
* Remove extraneous custom-feed health check
* Fixes to custom feed preference sync
* Fix lint
* Remove dead code (client-side suggested posts constructor)
* Enforce the feed-fetch limit in the client if the generator fails to observe the parameter
* Bump the number of items fetched in the multifeed per feed from 5 to 10
* Reset the currently active feed when the pinned feeds change
* Some fixes to icons
* Add a prompt to load latest to the multifeed
* Remove debug