* Refresh or sync notifications when the tab is navigated to
* Fix to bad textnode render
* Speed up initial session load
* Fix lint
* Restore updateSessionState() on session resumption
* Reduce frequency of the notifications sync
* Reduce frequency of home feed polling
* Ensure loading spinner is visible in notifications
* Render notifications loading spinner in the flatlist
* Fixes and performance improvements to notifications
* Render 30+ on notifications if at max
* Fix issue with repeating posts in home feed
* Dont check for unread notifs if we're already at max
* Add cursor to clickable elements
* Add cursor to clickable elements
* Update per comments
* Fix word wrap in notifications
* Center the web login-load screen
* Add hover states on web
* Fix lint
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* add prebuild command to package.json
* add ProfileTab navigator and screen
* add prop to remove back button from profile
* fix MyProfileTabNavigatorParams type
* fix dep array for rendering ProfileHeader
* just added ts-ignore
* enable opening drawer in profile tab
* clean up useNavigationTabState
* clean up code
* fix hideBackButton code flow
* add ThemeProvider to App.web.tsx
* make FlatNavigator use themed color
* fix extra padding on top in web
* add observer to App.web.tsx to make it react to theme changes
* fix TS for useColorSchemeStyle
* add dark mode toggle button to web LeftNav
* fix index.web.tsx border colors for web
* Move the darkmode desktop web toggle to the right nav column
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* WIP
* WIP
* Fix header offset on web
* Remove debug
* Fix web mobile feed and FAB layout
* Fix modals on mobile web
* Remove dead code
* Remove ios config that shouldnt be committed now
* Move bottom bar into its own folder
* Fix web drawer navigation and state behaviors
* Remove dark mode toggle from web drawer for now
* Fix search on mobile web
* Fix the logged out splash screen on mobile web
* Fixes to detox simulator
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* Rework notifications to sync locally in full and give users better control
* Fix positioning of load more btn on web
* Improve behavior of load more notifications btn
* Fix to post rendering
* Fix notification fetch abort condition
* Add start of post-hiding by labels
* Create a standard postcontainer and improve show/hide UI on posts
* Add content hiding to expanded post form
* Improve label rendering to give more context to users when appropriate
* Fix rendering bug
* Add user/profile labeling
* Implement content filtering preferences
* Filter notifications by content prefs
* Update test-pds config
* Bump deps
* add android & ios folders to .gitignore
* delete android and ios dirs
* fix android build errors
* fix status bar color
* fix top cutoff on composer in android
* fix weird whitespace issue in post
* fix greyed out header android
* fix main feed getting cut off android
* fix swiping on main feed
* fix profile tabs switching on android
* A few app.json config items for iOS
* Update app.json for bgfetch
* make swiping work on android
* make splash screen cover
* add eas.json
* fix image container on android
* fix android status bar color
* use expo-splash-screen instead of react-native-splash-screen
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* Add mobile UIs for invite codes
* Update invite code UIs for web
* Finish implementing invite code behaviors (including notifications of invited users)
* Bump deps
* Update web right nav to use real data; also fix lint
* Remove the hackcheck for upgrades
* Rename the PostEmbeds folder to match the codebase style
* Updates to latest lex refactor
* Update to use new bsky agent
* Update to use api package's richtext library
* Switch to upsertProfile
* Add TextEncoder/TextDecoder polyfill
* Add Intl.Segmenter polyfill
* Update composer to calculate lengths by grapheme
* Fix detox
* Fix login in e2e
* Create account e2e passing
* Implement an e2e mocking framework
* Don't use private methods on mobx models as mobx can't track them
* Add tooling for e2e-specific builds and add e2e media-picker mock
* Add some tests and fix some bugs around profile editing
* Add shell tests
* Add home screen tests
* Add thread screen tests
* Add tests for other user profile screens
* Add search screen tests
* Implement profile imagery change tools and tests
* Update to new embed behaviors
* Add post tests
* Fix to profile-screen test
* Fix session resumption
* Update web composer to new api
* 1.11.0
* Fix pagination cursor parameters
* Add quote posts to notifications
* Fix embed layouts
* Remove youtube inline player and improve tap handling on link cards
* Reset minimal shell mode on all screen loads and feed swipes (close#299)
* Update podfile.lock
* Improve post notfound UI (close#366)
* Bump atproto packages
* Refactor mobile search screen
* Remove 'staleness' fetch trigger on search
* Implement a temporary fulltext search solution
* Add missing key from profile search result
* A few UI & UX improvements to the search suggestions
* Update web search suggestions
* Implement search in web build
* Get home screen's swipable pager working with the drawer
* Add tab bar to pager
* Implement popular & following views on home screen
* Visual tune-up
* Move the feed selector to the footer
* Fix to 'new posts' poll
* Add the view header as a feed item
* Use the native driver on the tabbar indicator to improve perf
* Reduce home polling to the currently active page; also reuse some code
* Add soft reset on tap selected in tab bar
* Remove explicit 'onboarding' flow
* Choose good stuff based on service
* Add foaf-based follow discovery
* Fall back to who to follow
* Fix backgrounds
* Switch to the off-spec goodstuff route
* 1.8
* Fix for dev & staging
* Swap the tab bar items and rename suggested to what's hot
* Go to whats-hot by default if you have no follows
* Implement pager and tabbar for desktop web
* Pin deps to make expo happy
* Add language filtering to goodstuff
* WIP - adding expo
* WIP - adding expo 2
* Fix tsc
* Finish adding expo
* Disable the 'require cycle' warning
* Tweak plist
* Modify some dependency versions to make expo happy
* Fix icon fill
* Get Web compiling for expo
* 1.7
* Switch to react-navigation in expo2 (#287)
* WIP Switch to react-navigation
* WIP Switch to react-navigation 2
* WIP Switch to react-navigation 3
* Convert all screens to react navigation
* Update BottomBar for react navigation
* Update mobile menu to be react-native drawer
* Fixes to drawer and bottombar
* Factor out some helpers
* Replace the navigation model with react-navigation
* Restructure the shell folder and fix the header positioning
* Restore the error boundary
* Fix tsc
* Implement not-found page
* Remove react-native-gesture-handler (no longer used)
* Handle notifee card presses
* Handle all navigations from the state layer
* Fix drawer behaviors
* Fix two linking issues
* Switch to our react-native-progress fork to fix an svg rendering issue
* Get Web working with react-navigation
* Refactor routes and navigation for a bit more clarity
* Remove dead code
* Rework Web shell to left/right nav to make this easier
* Fix ViewHeader for desktop web
* Hide profileheader back btn on desktop web
* Move the compose button to the left nav
* Implement reply prompt in threads for desktop web
* Composer refactors
* Factor out all platform-specific text input behaviors from the composer
* Small fix
* Update the web build to use tiptap for the composer
* Tune up the mention autocomplete dropdown
* Simplify the default avatar and banner
* Fixes to link cards in web composer
* Fix dropdowns on web
* Tweak load latest on desktop
* Add web beta message and feedback link
* Fix up links in desktop web
* Bring back the FAB and move compose out of the footer
* Increase the touch target sizes of the header back btns (close#279)
* Trigger 'load more' sooner (close#280)
* Replace react-native-root-toast with a custom toast that fits the visual style
* Tune dark mode colors
* Tune colors a bit more
* Move the reply prompt to a fixed position in the footer
* Fully hide muted posts but give a control to show anyway (close#270)
* Improve thread rendering (better clarity on reply lines)
* Add follower/following counts to side menu
* Fix issues with display name overflows
* Small fix to side menu rendering
* Change onboarding to use an explicit 'is onboarding' mode to more clearly control the flow
* Add a progress bar to the welcome banner
* Dont show the 'unfollow button' on posts in weird times (close#271)
* Improve the empty state of the feed
* Only suggest recent posts
* Remove old tab controls from the mobile shell
* Add 'compose' and 'profile' to the footer; remove the FAB
* Fix lint
* Tune the footer icons
* Tune the 'current' state of footer icons
* Add 2xl text styles
* Tune the footer icons a bit more
* Fix lint
* More footer tuning
* update api to 0.1.3
* add repost modal with reposting functionality
* add quote post UI
* allow creation and view of quote posts
* Validate the post record before rendering a quote post
* Use createdAt in quote posts for now
* add web modal support
* Tune the quote post rendering
* Make did and declarationCid optional in postmeta
* Make did and declarationCid optional in postmeta
* dont allow image or link preview if quote post
* Handle no-text quote posts
* Tune the repost modal
* Tweak composer post text
* Fix lint
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* delete old onboarding files and code
* add custom FollowButton component to Post, FeedItem, & ProfileCard
* move building suggested feed into helper lib
* show suggested posts/feed if follower list is empty
* Update tsconfig.json
* add pagination to getting new onboarding
* remove unnecessary console log
* fix naming, add better null check for combinedCursor
* In locally-combined feeds, correctly produce an undefined cursor when out of data
* Minor refactors of the suggested posts lib functions
* Show 'follow button' style of post meta in certain conditions only
* Only show follow btn in posts on the main feed and the discovery feed
* Add a welcome notice to the home feed
* Tune the timing of when the welcome banner shows or hides
* Make the follow button an observer (closes#244)
* Update postmeta to keep the follow btn after press until next render
* A couple of fixes that ensure consistent welcome screen
* Fix lint
* Rework the welcome banner
* Fix cache invalidation of follows model on user switch
* Show welcome banner while loading
* Update the home onboarding feed to get top posts from hardcode recommends
* Drop unused helper function
* Update happy path tests
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>