vineyardbovines
5818219e08
Merge branch 'app-2066' into app-2067
...
# Conflicts:
# src/state/queries/klipy.ts
2026-04-14 15:03:11 -04:00
vineyardbovines
180d50cfb4
Merge branch 'main' into app-2066
2026-04-14 14:32:31 -04:00
vineyardbovines
ef3ad06487
wip
2026-04-14 08:21:41 -04:00
Samuel Newman
1f6d6d0545
Fix embed options border radius ( #10237 )
2026-04-13 09:42:05 -07:00
vineyardbovines
808ebd1379
migrate from tenor to klipy
2026-04-13 08:44:34 -04:00
vineyardbovines
2f08e54b3e
wip v2
2026-04-10 12:29:10 -04:00
vineyardbovines
2e54eff27d
v2
2026-04-10 11:37:32 -04:00
Samuel Newman
68a4d73d61
Add no-extraneous-dependencies and no-nodejs-modules eslint rules ( #10151 )
2026-04-02 08:34:12 -07:00
Eric Bailey
bfd2d20192
Add back starter packs button in ProfileMenu ( #10069 )
2026-03-18 18:29:22 -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
Samuel Newman
aa897f55a0
The Great Unjanking of the Sheets ( #9973 )
2026-03-09 22:53:32 +02:00
Eric Bailey
7fd218c97d
Update API package to fix stale session issues ( #9998 )
2026-03-04 18:27:12 -06:00
Samuel Newman
612a778361
Set mute word dialog text input return key type to "done" ( #9967 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2026-03-03 13:35:09 -06:00
Samuel Newman
f614bf650d
Translation followups ( #9980 )
2026-03-02 11:01:09 -08:00
Spence Pope
9c29b2867a
[APP-1882] fix email not updating in session state after email change ( #9953 )
2026-03-02 06:09:21 -08:00
DS Boyce
9bbcb472ef
Use on-device translation on mobile when available ( #9930 )
...
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
2026-02-27 16:59:19 -08:00
Samuel Newman
d4357b2cb8
Fix iOS sheet keyboard handling using native scrollview features ( #9959 )
2026-02-27 13:59:24 -08:00
Samuel Newman
73b096e443
iOS 26 ( #9047 )
...
Co-authored-by: Eric Bailey <git@esb.lol >
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 22:34:52 -08:00
Samuel Newman
9ec06971af
Upgrade Lingui to v5 ( #9905 )
2026-02-23 20:28:03 +00:00
surfdude29
02c2a9ea7c
Mark admonition text for translation in CreateListFromStarterPackDialog ( #9922 )
2026-02-21 16:53:44 +00:00
Eric Bailey
067c6dacc9
Update location copy ( #9918 )
2026-02-20 13:20:04 -06:00
Samuel Newman
8c4fc087f8
Add ability to convert starter pack to list ( #9675 )
...
Co-authored-by: Claude <noreply@anthropic.com >
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: Samuel Newman <mozzius@users.noreply.github.com >
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
2026-02-20 11:27:55 -06:00
Samuel Newman
512ce3d5d0
ALF content language dialog ( #9471 )
...
Co-authored-by: Eric Bailey <git@esb.lol >
2026-02-18 08:57:32 -08:00
DS Boyce
49253dbd88
Refactor delete account dialog using ALF ( #9863 )
2026-02-16 12:00:46 -08:00
Samuel Newman
4ebeb94b41
Add Renew menu for expired mute words ( #9883 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-16 05:30:07 -08:00
surfdude29
06fcea988e
'Log in' to 'Sign in' ( #9875 )
2026-02-15 19:02:01 +00:00
Samuel Newman
2e34f965fc
[Auth rework] Add a header to login flow ( #9368 )
2026-02-13 20:15:36 +00:00
Samuel Newman
c83dddce57
Bandcamp embed ( #9445 )
2026-02-13 13:30:10 +00:00
Samuel Newman
93d2f3a8db
Germ DM button ( #9848 )
...
* germ link (wip)
* add todos
* just yeet declaration for now
* ensure not proxied
* allow undo delete
* tweak styles
* ignore unknown values
* tweak styles
* fix boolean logic
* skip IAB
* fix mutationFn
* add link warning interstitial
* Logging and metrics
* Little more error handling
* Update copy
---------
Co-authored-by: Eric Bailey <git@esb.lol >
2026-02-11 17:51:19 -06:00
Samuel Newman
37e5a0f7a4
Clean up starter packs dialog styles + add optimistic updates ( #9469 )
2026-02-11 17:46:28 +00:00
surfdude29
3cbded0269
fix typos in drafts NUX alt text ( #9832 )
2026-02-10 10:41:47 +00:00
Samuel Newman
bb6ce83198
[Drafts] NUX ( #9825 )
...
* drafts NUX
* use "Drafts" string
* change button copy
2026-02-04 15:39:55 -06:00
Eric Bailey
df89b79c2a
[APP-1787] Some analytics cleanup ( #9736 )
...
* Clean up flags
* Move getMetadataForLogger
* Nail down attributers
* Polyfill features cache
2026-01-22 16:57:59 -06: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
bd9e8244f1
[APP-1783] Clean up some feature gates and logging ( #9729 )
...
* Remove gates we don't need
* Clean up some logging
* Keep disable gates around for now
* Add missing gate
* Revert file
* Revert package changes
2026-01-19 15:32:02 -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
acc26c965d
make live now gate fail-open ( #9714 )
2026-01-16 08:34:00 -08:00
Eric Bailey
2223babc2b
[APP-1759] Live Now Open Beta ( #9699 )
...
* Add report dialog to LiveStatus dialog
* Mr Worldwide™
* Bug fix bug fix
* Copy update
* Simplify parsing
* Bump api sdk
* update dev-env
* Update yarn.lock
* Bump api sdk
* Refactor useActorStatus, add disablement and appeal dialog
* Fix types
* Guard against chat profile views
* Go live (disabled)
* Fix types
* Update config and gates
* Add allowed services
* Merge conflicts
* Fix gradient handling for nudge
* Only show nudge on your own profile
* Fix live avi overflow breakage
* Add TODO
* Feedback
* Update nux image
---------
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
2026-01-14 16:57:21 -06:00
Eric Bailey
edb19dd6cf
[APP-1750] Add the ability to report livestreams ( #9654 )
...
* Add report dialog to LiveStatus dialog
* Mr Worldwide™
* Bug fix bug fix
* Copy update
* Simplify parsing
* Bump api sdk
* update dev-env
* Update yarn.lock
* Bump api sdk
* Refactor useActorStatus, add disablement and appeal dialog
* Fix types
* Guard against chat profile views
* Go live (disabled)
* Fix types
* Status reports should only go to bsky
* Ah yeah let's not override types
---------
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
2026-01-09 10:19:47 -06:00
Samuel Newman
9743149c26
Replace graphemer with unicode-segmenter ( #9526 )
...
* replace graphemer with unicode-segmenter
* use grapheme entrypoint
* force resolution of unicode-segmenter
2025-12-30 03:39:09 -08:00
Eric Bailey
a355eedf85
Improve instructions on NoAccessScreen and bday dialog ( #9571 )
2025-12-18 11:05:39 -06:00
Eric Bailey
da87515d0a
[APP-1684] Some contact import tweaks ( #9555 )
...
* Handle download link
* Improve NUX geo gating from #9549
* Fix alignment of phone code select
* Show full name
* Add gate to nux banner
* Add gate to settings screen
* Invert gate check in settings, whoops
2025-12-15 13:35:28 -06:00
Samuel Newman
df4e888347
disable nux in e2e ( #9551 )
2025-12-13 11:59:07 -08:00
Samuel Newman
c9ce214a66
Gate NUX by country allowlist ( #9549 )
...
* country gate nux
* whoops
2025-12-12 12:37:14 -08:00
Samuel Newman
ad7d49ef8f
[Contacts] Contacts matching flow ( #9486 )
...
* add expo-contacts
* add expo-sms
* update copy
* add basic settings screen
* state machine, flow screen
* phone input screen
* otp screen
* tweak spacing
* resend code logic
* add layoutanimationconfig
* check availablility in settings screen
* get contacts
* matches screen
* search, temp setup for matches UI
* add a bunch of number parsing logic with libphonenumber
* cast to looser type
* rename sync to find
FCF (Find Contacts Flow)
* update geolocation hook
* nicer design for settings screen
* add completed state
* up border contrast
* update expo deps
* add pending spinner
* add country whitelist
* add empty state screen
* drop add more functionality
* upload -> import
* fix typo
* fix permission string
* copy updates
* rm envelope icon
* update sms copy
* add inviteinfo component
* woke is back
* [Contacts] NUXes (#9515 )
* add a bunch of number parsing logic with libphonenumber
* add banner nux
* add announcement nux
* native only nux
* rm shitty animation
* move isNative check
* [Contacts] Onboarding step (#9489 )
* add a bunch of number parsing logic with libphonenumber
* restructure onboarding to better support dynamic screens
* integrate existing flow into onboarding
* add intro step
* lift state up to allow going back freely
* gate onboarding by geo if unsupported country
* add done button to standalone flow
* [Contacts] Add `contact-match` notification type to feed (#9519 )
* add a bunch of number parsing logic with libphonenumber
* add contact-joined notif type
* update string, api package
* Update NotificationFeedItem.tsx
* Update NotificationFeedItem.tsx
* Delete SyncContactsFlow.web.tsx
* fix follow back btn for this case
* [Contacts] API integration (#9487 )
* api integration for flow
* copy tweak
* tweaks after running it
* wire up status page
* rename toast
* use api lib
* rm temp code
* maybe fix otp error
* clear code on error/resend
* add 1s delay to verify success
* update package versions
* Delete SyncContactsFlow.web.tsx
* try and fix yarn.lock lint
* even woker
* fix uppercase friends
* surfdude feedback
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
* rm log
* allow resend on invalid code
* Update GetContacts.tsx
* overwrite country code if possible
* fix Apple's Best Feature
* devenv latest
* disable bounces
* interactive keyboard dismiss
* copy changes
* national format
* allow resending immediately
* move success state down a bit
* Update FindContactsSettings.tsx
* [Contacts] More onboarding changes (#9491 )
* integrate existing flow into onboarding
* refreshed onboarding styles, rm stepper
* center content on web
* Add back dismiss button for internal onboarding
* Import sort
---------
Co-authored-by: Eric Bailey <git@esb.lol >
* add matches query to shadow
* add clockwise arrow
* update status design, fix dismiss, fix queries
* add metrics
* add more comments
* Update metrics.ts
* refetch both queries on PTR
* fix shadow state in matches page
* reduce empty space at bottom
* show contact info on matches
* filter out contacts without numbers at an earlier stage
* Error handling ✨
* get notifs working
* filter out businesses
* rm log
* remove TODO from learn more links
* try and exclude from web bundle
---------
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com >
Co-authored-by: Eric Bailey <git@esb.lol >
2025-12-12 10:32:06 -08:00
Eric Bailey
a0c4a6b307
Add handling for birthdate prefs write failure ( #9508 )
2025-12-08 17:43:38 -06:00
Eric Bailey
c4aef9f668
Age Assurance V2 ( #9479 )
...
* Age Assurance V2
* Tighten up test
* Add todos for sdk migration
* Align RQ versions
* Use useEffect for side effect
* Improve effects, memoize
* Standarize on birthdate
* Copy feedback
* Copilot
* Add support link
* Reove double ..
* Cleanup
* Remove redirect dialog
* Cleanup todos, add comments
* Update splash in main template too
* Mock some stuff
* Exhaustive checks
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
* Exhaustive checks
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
* Small fix to bday handling
* Add comment
* onboarding style tweak
sneaking this in sorry!
* rm unreachable breaks
* Put useIntentHandler back on web
* Remove misleading success set
* Align on birthdate
---------
Co-authored-by: Samuel Newman <mozzius@protonmail.com >
2025-12-04 15:20:00 -06:00
Samuel Newman
f57268e9b8
Use useConfirmEmail hook in deep link verification flow ( #9413 )
...
* use useConfirmEmail hook in deep link verification flow
* more straightforward logic
2025-11-20 07:48:13 -08:00
Samuel Newman
bc62b3da76
Add metrics for composer threadgate ( #9401 )
...
* add metrics for composer threadgate
* add metrics to the in-thread version
* fix type error
2025-11-17 10:51:01 -08:00