* Update the ProfilePreview to use a swipe-up to navigate
* Use the profile cache to optimize load performance
* Hack to align the header in the profile preview against the screen view
* Fix profiles cache logic to ensure cache is used
* Fix dark mode on profile preview
* add comments to step 1-3
* add onboarding screen
* add analytics for onboarding tracking
* fix useEffect
* change text
* change icon size
* put onboarding into bottom sheet modal instead of react navigation
* wip
* Simplify the type validation
* Fix: only trigger onboarding modal when account creation succeeds
* Add the 'session-ready' event which fires when the new session is stable
* Use the 'session-ready' event to trigger the onboarding modal
* update copy
* update copy
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* Update Navigation.tsx
Missing If statement within the Deep Linking function that broke the ability to change state to hometab
* Updated the function correctly, I missed a bracket
* format
* add pre-existing home state when unspecified path
* Remove unnecessary log
---------
Co-authored-by: Gai <68623807+that-gai-gai@users.noreply.github.com>
Co-authored-by: that-gai-gai <kgai@protonmail.com>
For any `Screen` that shows on desktop, `title` is "(1) ... - Bluesky"
where "(1)" is the unread notification count.
The titles are unlocalized and the string "Bluesky" is hardcoded,
following the pattern of the rest of the app.
Display names and post content are loaded into the title as effects.
Tested:
* all screens
* screen changes / component mounts/unmounts
* long posts with links and images
* display name set/unset
* spamming myself with notifications, clearing notifications
* /profile/did:... links
* lint (only my changed files), jest, e2e.
New utilities: `useUnreadCountLabel`, `bskyTitle`,
`combinedDisplayName`, `useSetTitle`.
resolves: #626#599
* Add lists and profilelist screens
* Implement lists screen and lists-list in profiles
* Add empty states to the lists screen
* Switch (mostly) from blocklists to mutelists
* Rework: create a new moderation screen and move everything related under it
* Fix moderation screen on desktop web
* Tune the empty state code
* Change content moderation modal to content filtering
* Add CreateMuteList modal
* Implement mutelist creation
* Add lists listings
* Add the ability to create new mutelists
* Add 'add to list' tool
* Satisfy the hashtag hyphen haters
* Add update/delete/subscribe/unsubscribe to lists
* Show which list caused a mute
* Add list un/subscribe
* Add the mute override when viewing a profile's posts
* Update to latest backend
* Add simulation tests and tune some behaviors
* Fix lint
* Bump deps
* Fix list refresh after creation
* Mute list subscriptions -> Mute lists
* added ios scheme and intentFilters for deep linking
* added intentFilters for android deep linking
* add .env files to .gitignore
* add autoVerify for android deep links
* setup sentry
* add sentry to transformIgnorePatterns to fix jest issues
* update README with sourcemap instructions
* only enable integrations on native
* fix sentry web
* remove testing code
* fix sentry authToken
* Switch over to paul's auth tokens temporarily (lol)
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* Quick fix to prompt
* Add blocked accounts screen
* Add blocking tools to profile
* Blur avis/banners of blocked users
* Factor blocking state into moderation dsl
* Filter post slices from the feed if any are hidden
* Handle various block UIs
* Filter in the client on blockedBy
* Implement block list
* Fix some copy
* Bump deps
* Fix lint
* Switch android to use slide left/right animations on navigation
* Bump the repost icon down by a pixel
* Tune theme colors for contrast and darker bg on darkmode
* Move back handler to a point in the init flow that leads to more consistent capture of events
* Fix image share flow on android
* Fix lint
* Add todo about sharing not available
* Drop the android slide animation because it's too slow
* Fix 'flashes of white' in dark mode android
* create and delete app passwords
* add randomly generated name
* Tweak copy and layout of app passwords
* Improve app passwords on desktop web
* Rearrange settings
* Change app-passwords route and add to backend
* Fix link
* Fix some more desktop web
* Remove log
---------
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>
* 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
* 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