* Don't insert a newline on cmd+entrl (close#1173)
* Don't linkify selected text on url-paste (close#1149)
* Disable the adult content controls if there is no media on the post (close#1169)
* ✨ Repupose report post modal and re-use for list reporting
* ✨ Allow reporting a feed generator
* ✨♻️ Refactor report modal into one shared component for reporting different collections
* ✅ Adjust report option selector in tests
* ✅ Add test for list reporting
* ♻️✨ Refactor reason options and add options for list and feedgen
* 🧹 Cleanup remaining todo
* Fix to mutelist react keys
* Fix regression from rebase
* Improve customfeed mobile header
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* Add self-label modal
* Use the shield-exclamation icon consistently on post moderation
* Wire up self-labeling
* Bump @atproto/api@0.6.0
* Bump @atproto/dev-env@^0.2.3
* Add e2e test for self-labeling
* Fix types
* First pass moving to the new labeling sdk (it compiles)
* Correct behaviors around interpreting label moderation
* Improve moderation state rendering
* Improve hiders and alerts
* Improve handling of mutes
* Improve profile warnings
* Add profile blurring to profile header
* Add blocks to test cases
* Render labels on profile cards, do not filter
* Filter profiles from suggestions using moderation
* Apply profile blurring to ProfileCard
* Handle blocked and deleted quote posts
* Temporarily translate content filtering settings to new labels
* Fix types
* Tune ContentHider & PostHider click targets
* Put a warning on profilecard label pills
* Fix screenhider learnmore link on mobile
* Enforce no-override on user avatar
* Dont enumerate profile blur-media labels in alerts
* Fixes to muted posts (esp quotes of muted users)
* Fixes to account/profile warnings
* Bump @atproto/api@0.5.0
* Bump @atproto/api@0.5.1
* Fix tests
* 1.43
* Remove log
* Bump @atproto/api@0.5.2
* Update profile link construction to support handle.invalid
* Update list links to support using handles
* Use did for isMe check to ensure invalid handles dont distort the check
* Shift the red (error) colors away from the pink spectrum
* Add ThemedText helper component
* Add sanitizedHandle() helper to render invalid handles well
* Fix regression: only show avatar in PostMeta when needed
* Restore the color of likes
* Remove users with invalid handles from default autosuggests
* 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>
* add TimeElapsed util component, integrate into PostThreadItem
* integrate into posts
* use consistent naming
* use mobx and single interval for TimeElapsed
* Fix: use more reliable navigation method
* Fix: show lightbox over the active modal
* Fix: close the profile preview on navigation
* Factor out UserPreviewLink and add preview behavior to notifications
* Fix postmeta overflow on web
* Fix lint
* 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
* add SelectLangBtn
* memoized objects that are created to reduce re-creation on re-render
* add langs when uploading post
* only send the top 3 languages otherwise backend will throw error
* mv ContentLanguagesSettings to folder
* add post languages settings modal and state
* fix typos
* modify feed manip to also check langs label on post
* Fix tests
* Remove log
* Update feed-manip.ts
* Fix syntax errors
* UI tuneups
* Show the currently selected languages in the composer
* fix linting
* Use a bcp-47 matching function
* Fix a duplicate language issue
* Fix web
* Dont include lang in prompt
* Make select language btn an observer
* Keep device languages on top of language selection UIs
* Fix android build settings
* Enforce a max of 3 languages in posts
* Fix tests
* Fix types
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* 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
* Replace the long press on the lightbox with footer controls
* Remove long-press from images in the feed
* Tune the lightbox footer control ui
* Replace the AltImageRead modal with the ability to view all alt text in the lightbox footer
* Tune lightbox footer for iOS
* Add alt text to the web lightbox
* Fix lint
* a11y slight changes
---------
Co-authored-by: renahlee <renahlee@outlook.com>
* Add a content-language preference control
* Update whats hot to only show the selected languages and to refresh on lang pref changes
* Fix lint
* Fix tests
* Add missing accessibility role
* Add keyboard shortcuts: new, escape, and hard break
* Add preferences modal
* Remove code accidentally re-added due to rebase
* Fix incorrect copy and lint
* Put stuff back so diffs are clearer
* Re-add invite codes to settings
* Address comments
* Tune the copy
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* 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 alt text support and rework image layout
* Add additional BottomSheet implementation to account for nested Composer modal
* Use mobile gallery layout on mobile web
* Missing key
* Fix lint
* Move altimage modal into the standard modal system
* Fix overflow wrapping of images
* Fixes to the alt-image modal
* Remove unnecessary switch
* Restore old imagelayoutgrid code
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* Split image cropping into secondary step
* Use ImageModel and GalleryModel
* Add fix for pasting image URLs
* Move models to state folder
* Fix things that broke after rebase
* Latest -- has image display bug
* Remove contentFit
* Fix iOS display in gallery
* Tuneup the api signatures and implement compress/resize on web
* Fix await
* Lint fix and remove unused function
* Fix android image pathing
* Fix external embed x button on android
* Remove min-height from composer (no longer useful and was mispositioning the composer on android)
* Fix e2e picker
---------
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 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
* 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