surfdude29
2798e98c9c
Add context for translators and tweak strings ( #10280 )
2026-04-20 07:06:18 -07:00
Samuel Newman
bc3672ceeb
[Chat] Remove convoState dependency from header ( #10293 )
2026-04-18 12:58:16 -07:00
DS Boyce
935347c73d
Use convo view instead of convo state for driving the UI ( #10290 )
2026-04-17 15:23:44 -07:00
Eric Bailey
587dc8dfe8
Squash carousel in chat messages, fix rounding ( #10286 )
2026-04-17 14:24:42 -05:00
Samuel Newman
43108533eb
[Chat] Fix embed offset ( #10285 )
2026-04-17 11:44:48 -07:00
Samuel Newman
591504307d
[Chat] Minor bugfixes ( #10284 )
2026-04-17 10:50:52 -07:00
DS Boyce
9e9ff70682
Enable access for group clip clops with no messages ( #10276 )
2026-04-17 10:40:37 -07:00
Samuel Newman
a97b15b204
✨ EmojiPicker component ( #10249 )
2026-04-17 02:42:10 -07:00
DS Boyce
524cbc514d
Don't toggle the date divider when tapping a reaction ( #10274 )
2026-04-16 13:06:09 -07:00
DS Boyce
6e3c9c3a9f
Add flow for adding people to a group clip clop ( #10255 )
2026-04-16 11:55:19 -07:00
DS Boyce
ac68cfe98c
Remove own reaction from reactions dialog on tap ( #10231 )
...
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
2026-04-16 11:16:43 -07:00
DS Boyce
e10c05d735
Reveal chat timestamp on tap ( #10262 )
2026-04-16 10:17:01 -07:00
Samuel Newman
f51602b3fe
Support group chats across other surfaces ( #10266 )
2026-04-16 09:55:30 -07:00
Samuel Newman
d3f5093817
Groupchats feature branch ( #10181 )
...
Co-authored-by: DS Boyce <260543580+ds-boyce@users.noreply.github.com >
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 12:15:45 -07:00
Samuel Newman
888eca73b3
Refactor chat list implementation ( #10059 )
2026-04-10 09:58:16 -07:00
DS Boyce
f4e14626aa
Add button for creating a new group clip clop ( #10066 )
...
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
2026-03-26 10:23:49 -07:00
Eric Bailey
45df50ec19
Rename translation properties for clarity ( #10061 )
2026-03-17 13:59:28 -05:00
DS Boyce
1386a559b7
Log languages a post is tagged with after translating ( #10014 )
...
Co-authored-by: Eric Bailey <git@esb.lol >
2026-03-17 12:31:23 -05:00
DS Boyce
35cb2bcf94
Create codemod for updating Toast calls to v2 ( #10045 )
2026-03-12 11:35:58 -07:00
DS Boyce
1db01a09a8
Create codemod for addressing ESLint warnings ( #10032 )
2026-03-11 15:51:31 -07:00
Spence Pope
2bd9811652
[APP-1928] add bot/automated account badge and self-labeling settings ( #10008 )
...
Co-authored-by: Eric Bailey <git@esb.lol >
2026-03-10 13:28:49 -05:00
Samuel Newman
aa897f55a0
The Great Unjanking of the Sheets ( #9973 )
2026-03-09 22:53:32 +02:00
DS Boyce
afbade6f6f
Refine UX for on-device translation for posts ( #9987 )
...
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
Co-authored-by: Eric Bailey <git@esb.lol >
2026-03-04 20:37:44 -06:00
Samuel Newman
37a82761f5
Cache profile view before opening AfterReportDialog ( #9962 )
2026-03-03 13:50:22 -06:00
Alex Benzer
00816b70dc
[APP-1859] pinned feed drag n drop ( #9893 )
...
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
Co-authored-by: vineyardbovines <spencerfpope@gmail.com >
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-25 11:52:10 -08:00
Samuel Newman
9ec06971af
Upgrade Lingui to v5 ( #9905 )
2026-02-23 20:28:03 +00:00
Samuel Newman
2cee96da8e
Add ESLint rule to enforce Lingui msg usage ( #9789 )
...
* Add ESLint rule to enforce Lingui msg usage
Adds a custom ESLint rule 'lingui-msg-rule' that ensures the Lingui _()
function is called with msg`` template literals or plural/select macros,
preventing accidental misuse like _('string') which bypasses i18n.
https://claude.ai/code/session_01JMXXPUgAHiSBGmfGwUojKy
* Support msg({...}) descriptor form and add auto-fix
- Allow msg() function call form: _(msg({message: 'Hello'}))
- Add auto-fix for string literals: _('Bad') -> _(msg`Bad`)
- Add auto-fix for untagged templates: _(`Bad`) -> _(msg`Bad`)
- No auto-fix for variables/function calls (not safely fixable)
https://claude.ai/code/session_01JMXXPUgAHiSBGmfGwUojKy
* fix complex cases
* run autofix HELL YEAH
---------
Co-authored-by: Claude <noreply@anthropic.com >
2026-01-29 11:05:49 -08:00
Eric Bailey
25a1ed1209
[APP-1782] Analytics migration ( #9734 )
...
* WIP
* Clean up growthbook code, integrate into init and sessions
* Move everything out of React
* Add metrics client
* Move to separate file
* Shared metadata cache
* Ensure we update metadata when session ID changes
* Ensure userMetadata is cleared when logging out
* WIP revamp
* Integrate feature gates into analytics context
* Clean up old code
* Fix useMeta util
* Some comments and cleanup
* Add logger to base analytics context
* Refactor current route handling
* Rip out LogEvent from navigation
* Update tracking endpoint
* Migrate toClout
* Clear out statsig client
* Add todo, reset logger readme
* Ope fix statsig noop
* Refactor logging in feed-feedback, add debug logging to metrics client
* Remove LogEvents alias for Metrics
* Prefer root package export
* Remove Metrics alias from logger
* [APP-1782] Migrate to new analytics APIs (#9735 )
* Migrate logEvent to useAnalytics
* Migrate logger.metric to useAnalytics
* Migrate tricky spot, fix types
* Migrate remaining tricky spot
* Missed one
* Remove metric() from logger
* Migrate useGate to useAnalytics
* Remove all other StatSig mentions
* Update event payload
* Update logger tests
* Mock expo method
* Fix session ID bug
* Add session ID test
* Add test for metrics client
* Clarify intent
* Clean up core analytics file
* Clean up the call once utils
* Fix TODO
* Fix TODO
* Fix TODO
* Fix TODO
* Fix TODO
* Remove debug code
* Fix navigation context
* OK nav context is not working, todo
* Checkpoint: works but feels hacky
* Fix navigation context issue
* Improve feature API
* Improve metric logging
* Update logger tests
2026-01-22 15:33:45 -06:00
Eric Bailey
0589bd7d9e
Move /platform/detection vars into /env ( #9707 )
...
* Add platform vars to env
* Replace /platform/detection with /env
2026-01-16 16:28:17 -06:00
Samuel Newman
a275e8999e
restore flatten in emoji reaction picker ( #9375 )
2025-11-11 03:18:24 -08:00
surfdude29
1cdb105af5
tweak accessibility labels ( #9347 )
2025-11-10 16:31:08 -06:00
hailey
d6ca9e6b41
[Reporting] Add new reporting categories and reasons ( #9079 )
...
* start adding new report reasons
* cleanup
* use updated types
* cleanup open/closed logic
* other fix
* state fix
* rename type
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/index.tsx
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/moderation/ReportDialog/utils/useReportOptions.ts
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* add mapping
* Replace consts and maps using exported values
* Map to deprecated reason if necessary, send some reports only to Bluesky
* Use only new report reason types
* Cleanup
* Bump package, integrate new reasons
* Adjust sorting, return type, integrate feedback
* Just remove sort
* Finish 'other' handling
* Update descriptions
* Just invert filter logic, no functional change but feels more correct
* Clarify handling
* fix deep imports
* fix type error
* [Reporting] Integrate new `ReportDialog` into DMs (#9213 )
* Update types, fork copy for convo vs message
* Integrate in remaining spots
* Replace DoneStep with separate dialog that opens after reporting
* Handle profile error state by just showing a success message
* Delete old dms ReportDialog
* Chats only go to bsky
* Only open block or delete dialog if submitted successfully
* make close button always large
* prevent expansion of blockordelete dialog
* Delete old report dialog (#9214 )e
* Skip labeler selection for Bluesky-only cases
* Rename AfterReportDialog
---------
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
---------
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
Co-authored-by: Eric Bailey <git@esb.lol >
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
2025-11-06 15:40:13 -06:00
Samuel Newman
1b0fbd503e
Remove use of flatten where possible ( #9325 )
...
* remove use of flatten where possible
* restore flatten where it says it's needed
* missing utils alpha
2025-11-04 05:43:08 -08:00
Eric Bailey
bd17f04810
Migrate to @bsky.app/alf package ( #9030 )
...
* Add storybook shortcut in dev
* Migrate to alg pkg
* Migrate font_bold to new font_semi_bold
* Migrate font_heavy to font_bold
* Fix old theme refs
* Remove leading util
* Bump
* Revert "Add storybook shortcut in dev"
This reverts commit 7a86195c77fb5d449c7782e64ebabb6addfab919.
* Remove alf script
* Adjust font scale
* Bump
* Bump pkg
* Migrate values from conflicts
* Create default themes outside react
* Use built-in alf utils
* Migrate old font styles
* Remove unused tokens
* Move theme creation to more appropriate file
* Update button colors
* Adjust TextField colors, line heights
2025-09-24 11:47:08 -05:00
Samuel Newman
5211b26903
Expo 54 ( #8931 )
...
* update deps
* update patches
* fix new arch optout
* build from source, disable new arch
* update to preview.14
* upgrade off of preview to release
* fix lockfile lint
* update patches
* add back expo-location
* downgrade reanimated
* downgrade pagerview
* use expo-file-system/legacy
* try and upgrade types/react-dom
* fix type of uint8array
* rm @types/react resolution from bad rebase
* more type errors
* fix mock
* bump rn-compressor
* add patch of https://github.com/bluesky-social/react-native-paste-input/pull/5
* delete NativeDropdown & remove Zeego
* `import React` in expo modules
* bump cocoapods
* rm unused picker lib
* add speculative react-native-mmkv patch
* revert patch, add temp debug info to error
* bring back speculative patch, patch built JS code instead of source
* revert patch, just do debugging part
* dep update
* update resolutions, dynamic-app-icon
* bump node version in eas.json
* update build instructions
* rm atob from docs
* Delete react-native-mmkv+2.12.2.patch
* bump expo which might include fix
* update expo patch version
* bump expo patch version
* wrong version oops
* update expo to latest
* update react-native-compressor, rm patch
2025-09-22 08:52:07 -07:00
Samuel Newman
53e43a957c
run yarn lint --fix ( #9013 )
2025-09-09 08:38:21 -07:00
Samuel Newman
3e2c181c40
Upgrade @types/react to 19 and run codemod (attempt 2) ( #8918 )
...
* update dependencies
* rm `import type React from 'react'`
* run codemods
* patch discord types
* update types/react-dom
* Update yarn.lock
2025-09-09 08:09:10 -07:00
Samuel Newman
ac0c4ef2d9
ensure headers are set when chat reporting ( #8985 )
2025-09-05 09:33:27 -05:00
hailey
bec0329774
enable link redirection in message ( #8961 )
2025-09-02 16:31:37 -07:00
Samuel Newman
54f7af12ca
Update DM header to match new Layout style ( #8846 )
2025-08-25 19:23:08 +03:00
Samuel Newman
b2c56cbd6d
Add displayName to contexts ( #8814 )
2025-08-14 01:12:31 +03:00
Samuel Newman
edd205483d
Fix chat button placeholder size on profile ( #8827 )
2025-08-13 17:20:23 +03:00
Samuel Newman
bb949e4f44
Fix translations on Android using PROCESS_TEXT intent ( #8486 )
...
* use intents to translate text on android
* clean up config plugins
* restore day night plugin
just to be safe
* leave a comment for why we can't open translate directly
* add todo
* fix lockfile lint
2025-08-11 08:37:39 -07:00
Samuel Newman
760b184d28
fix emoji popup scroll ( #8636 )
2025-07-21 09:22:35 -05:00
Samuel Newman
c634cd9071
Upgrade prettier to 3.6 ( #8558 )
...
* upgrade prettier
* run prettier
* more files
2025-06-23 07:44:40 -07:00
Eric Bailey
45f0f7eefe
Port post embeds to new arch ( #7408 )
...
* Direct port of embeds to new arch
(cherry picked from commit cc3fa1f6cea396dd9222486c633a508bfee1ecd6)
* Re-org
* Split out ListEmbed and FeedEmbed
* Split out ImageEmbed
* DRY up a bit
* Port over ExternalLinkEmbed
* Port over Player and Gif embeds
* Migrate ComposerReplyTo
* Replace other usages of old post-embeds
* Migrate view contexts
* Copy pasta VideoEmbed
* Copy pasta GifEmbed
* Swap in new file location
* Clean up
* Fix up native
* Add back in correct moderation on List and Feed embeds
* Format
* Prettier
* delete old video utils
* move bandwidth-estimate.ts
* Remove log
* Add LazyQuoteEmbed for composer use
* Clean up unused things
* Remove remaining items
* Prettier
* Fix imports
* Handle nested quotes same as prod
* Add back silenced error handling
* Fix lint
---------
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
2025-06-13 12:05:41 -05:00
hailey
2a453cd9ca
invert flag for sending to statsig ( #8431 )
2025-05-30 12:13:44 -07:00
Samuel Newman
29de23bbae
Fix emoji reaction expanded picker on web getting squished ( #8245 )
...
* ensure expanded emoji picker doesn't get squished
* reset expanded state on close
2025-05-19 10:03:01 -07:00
Eric Bailey
0f96669f8c
[APP-1158] Refactor email-related dialogs ( #8296 )
...
* WIP
* Update email
* Fire off confirmation email after change
* Verify step, integrate stateful control
* Remove tentative EnterCode step
* Handle token step
* Handle instructions and integrate into 2FA setting
* Fix load state when reusing same email
* Add new state
* Add 2FA screens
* Clean up state in Update step
* Clean up verify state, handle normal callback
* Normalize convetions
* Add verification reminder screen
* Improve session refresh
* Handle verification requirements for composer and convo
* Fix lint
* Do better
* Couple missing translations
* Format
* Use listeners for easier to grok logic
* Clean errors
* Move to global context
* [APP-1158] Gate features by email verification state (#8305 )
* Use new hook in all locations
* Format
* Seems to work, not great duplication
* Wrap all open composer calls
* Remove unneeded spans
* Missed one
* Fix handler on Conversation
* Gate new chat in header
* Add comment
* Remove whoopsie
* Format
* add hackfix for dialog not showing
* add prompt to accept chat btn
* navigation not necessary
* send back one screen, rather than home
* Update comment
---------
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
* Clear dialog state
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
* Update icon
* Check color
* Add 2FA warning
* Update instructions
* Fix X button
* Use an effect silly goose
* Update copy
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update copy
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update copy
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update copy
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update src/components/dialaUpdate copyogs/EmailDialog/screens/Update.tsx
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update copy
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update copy
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update copy
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update copy
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update copy
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update copy
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update copy
* Update copy
* Update copy
* Update copy
* Update copy
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* Update copy
* Add link back to update email from verify email dialog
* Handle token field validation
---------
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
2025-05-07 10:23:33 -05:00
hailey
544f7befe0
bump it bop it upgrade it (rn 79/expo 53) ( #8281 )
...
* basic bumps
* more tweaking
* fix rn patch
* fix crop picker patch
* fix media library patch
* rm unnecessary patch
* fix notifications patch
* update bottomsheet
* Update withAppDelegateReferrer.js
* Delete withNoBundleCompression.js
* rm withNoBundleCompression plugin
* rm findLast shim
* metro package exports is enabled by default
* update react/react-dom/react-compiler
* fix reanimated issue
* vendor expo-ized emoji popup
* fix types
* hackfix view full thread
* Update EmojiPickerModule.podspec
* more upgrades
* fix multiformats package version
* add baseurl
* bump mmkv
* bumps
* update react-keyed-flatten-children
* bump locale packages
* fix emoji picker dark mode
* rn upgrades
* Revert "bump locale packages"
This reverts commit fc82f0f173 .
* upgrade testing-library
* rm test renderer
* update patch name minors
* rm findNodeHandle from tabbar
* only do scrollview tag thing on ios
* disable package exports
* update expo notifications handler
* memoize emoji picker styles
* fix tests, mock multiformats
* bump some dev deps with RC versions
* completely rearchitect toasts
* rm logs
* layout animation config for composer footer
* disable autolinking for patched libs
* undo lingui changes
* version bump from release candidate to 0.1
* update atproto deps
* rm @did-plc/server
* fix key issue (maybe)
* move URL polyfill to the polyfill file
* fix yarn lock
* upgrade to 53.0.3
* reanimated layout anim bug patch
* workletize a function that wasn't getting autoworkletized anymore (#8309 )
* bump to expo 53.0.4
* bump RN to 0.79.2
* fix yarn lock ci
* Revert "completely rearchitect toasts"
This reverts commit 2e2fcaeeed .
* final upgrades
* chore: cleanup yarn lock
* prettier
---------
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
2025-05-02 13:23:39 -07:00