Commit Graph

743 Commits (3b4848ba59591b58a95c61af210697149a858f57)

Author SHA1 Message Date
Hailey 7eb1444f2c
remove precacheThreadPostProfiles (#3729)
* remove `precacheThreadPostProfiles`

* add `displayName` to `PreviewableUserAvatar`

* memo

* use `precacheProfile`

* pass `profile` directly to `PreviewableUserAvatar`

* update the `UserAvatar`'s props

* remove feed cache

* one more spot

* rm unused queryClient

* Don't call fn unnecessarily

* Preload for display name too

* try notification item

* add to feeditem

* and finally, precache for post threads

* timestamp

* Fix

* onBeforePress

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-04-27 06:31:07 +01:00
Hailey 5f9136479b
Improve usability of search on web (#3663)
* dont select the text on web

* TODO REVERT THESE CHANGES

* use `usethrottledvalue` for autocomplete

* use `isFetching` from query

* rm setTimeout

* getting there

* improve functionality of cancel button

* rm todo

* add comment back

* encode `searchText` rather than `queryTerm`

* use "back" on web in some cases

* don't flash results in autocomplete

* remove unnecesary usestate

* rename everything to `query` temporarily

* revert accidental lint

* rm todo

* rm comment

* use `useFocusEffect` to update the query term on back navigation

* `searchText` is always defined here

* Fix race

* remove back functionality

* use `keepPreviousData` for query

* rename `q` to `queryParam`

* remove hack

* remove `q=` on cancel

* blur on submit

* use `setParams` instead of `replace`

* use `replace` on web still

* clear the search input when we clear `q` on native

* onPress dismiss attempt

* Adjustments

* Fix search history

* Always hide autocomplete

* Clear right pane search on select

* `blur` on autosuggestion press

* Rename to reduce diff

* Fixes

* Unify codepaths

* Fixes

* precache the autosuggestion

* do the cache in the link card

* Revert "precache the autosuggestion"

This reverts commit 79c433e984621ba4231a2a4c4b3f4690b0516b4d.

* use `throttledValue` and `keepPreviousData` in sidebar search

* show spinner when fetching pt 1

* show spinner when fetching pt 2

* show spinner properly for autocomplete

* Fix extra border

* Position fixed

* TS

* Revert "TS"

This reverts commit df187ea2d7a96d0f1832bc2392215f4d969a87c9.

* Revert "Position fixed"

This reverts commit 9c721c952b0fa4e5e4a23de38cab916ab13397e6.

* Maybe fix iPad

* Revert "TODO REVERT THESE CHANGES"

This reverts commit 279f717f3091c9df8c73ba35f9a038e12f5a1122.

* Rename var

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-04-27 04:34:53 +01:00
Eric Bailey 45d354cd0c
[Session] Add `useAgent` hook and replace (#3706)
* Hook it up

* Memoize getAgent method

* Use one shared reference

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-04-25 22:29:05 +01:00
Eric Bailey 35005da59e
[Session] Drill `getAgent` into `notifications/utils` (#3703)
* Drill into notifications/util

(cherry picked from commit 84b535ed54f4fe93debcd198809bb184519c3507)

* Thread getAgent instead

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-04-25 21:48:01 +01:00
Eric Bailey a69e567991
[Session] Drill into `getAgent` into `whenAppViewReady` (#3702)
* Drill into whenAppViewReady

(cherry picked from commit e290e5be3df509bdd9d0e626a164996c9dee3636)

* Drill getAgent instead

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-04-25 21:39:28 +01:00
Eric Bailey ec37696034
[Session] Drill `getAgent` into feed APIs (#3701)
* Update to desired post-feed usage

* Drill agent into feed apis

* Thread getAgent instead

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-04-25 21:29:06 +01:00
Eric Bailey 6aded4f257
[Session] Base (#3541)
* Add readLastActiveAccount to use accounts[] as source of truth

* Add public service constant, use
2024-04-25 10:35:21 -05:00
Mary 15055cb8c4
Persist PDS URL for session resumption (#3620)
* fix: store PDS URL for session resumption

* fix: handle a few more cases

* fix: blocking resumption should also use pds url

* refactor: do it in the construct itself

* fix: revert ce96223
2024-04-24 21:57:16 +01:00
dan e2a59449df
Remove old Suggested Follows logic (#3689) 2024-04-24 17:45:11 +01:00
dan 24da3a8f4e
Disable autoplay by default if prefers-reduced-motion (#3671) 2024-04-23 17:07:18 -07:00
Paul Frazee 710e913024
Email auth factor (#3602)
* Add email 2fa toggle

* Add UI elements needed for 2fa codes in login

* Wire up to the server

* Give a better failure message for bad 2fa code

* Handle enter key in login form 2fa field

* Trim spaces

* Improve error message
2024-04-22 19:18:13 -07:00
Samuel Newman 49b5d420e6
rm country param (#3653) 2024-04-23 00:37:46 +01:00
Samuel Newman 76449fb6ef
[GIFs] Replace GIPHY with Tenor (#3651)
* replace GIPHY with Tenor

* remove "directly" wording

* replace GIPHY wording

* remove log
2024-04-22 23:39:32 +01:00
Samuel Newman 8b33ffdfb5
Add disable autoplay preference and group related settings into a dedicated page (#3626)
* add autoplay preference

* group accessibility settings into a dedicated page

* fix gray background on web

* Put a11y first

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-04-19 22:10:37 +01:00
dan 55aea348c2
[Statsig] Update experiments (#3617) 2024-04-19 15:23:47 +01:00
Samuel Newman ba1c4834ab
Add GIF select to composer (#3600)
* create dialog with flatlist in it

* use alf for composer photos/camera/gif buttons

* add gif icons

* focus textinput on gif dialog close

* add giphy API + gif grid

* web support

* add consent confirmation

* track gif select

* desktop web consent styles

* use InlineLinkText instead of Link

* add error/loading state

* hide sideborders on web

* disable composer buttons where necessary

* skip cardyb and set thumbnail directly

* switch legacy analytics to statsig

* remove autoplay prop

* disable photo/gif buttons if external media is present

* memoize listmaybeplaceholder

* fix pagination

* don't set `value` of TextInput, clear via ref

* remove console.log

* close modal if press escape

* pass alt text in the description

* Fix typo

* Rm dialog

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-04-19 03:42:26 +01:00
dan bef7d8a325
[Statsig] Slightly block the UI on gates (#3608) 2024-04-18 17:53:51 +01:00
dan 02becdf449
[Statsig] Make gate checks lazily (#3594) 2024-04-18 04:39:29 +01:00
Samuel Newman a2df81416b
delete useMyFollowsQuery (#3529) 2024-04-17 19:39:37 +01:00
Samuel Newman 2974b407be
add sort to searchPosts request (#3581) 2024-04-16 20:38:41 +01:00
Hailey 45e572b212
bump api, remove `as number` from types (#3580)
* bump api, remove `as number` from types

* bump dev env
2024-04-16 20:34:34 +01:00
Paul Frazee 0b43d728e4
Improve the language behaviors around the PWI (#3545)
* Handle leftnav overflow with longer languages' copy

* Update the language dropdown to set ALL language prefs

* Add hackfix to language cachebusting on PWI

* Reset feeds on language change
2024-04-13 19:49:52 -07:00
Nick Manos cb3f246822
Fix Android in-app browser closing when switching apps (#3546) 2024-04-13 17:02:44 -07:00
Hailey 93731e6d6b
cache fix for search post results (#3520) 2024-04-12 17:31:55 -07:00
Eric Bailey 1f61109cfa
Profile card hover preview (#3508)
* feat: initial user card hover

* feat: flesh it out some more

* fix: initialize middlewares once

* chore: remove floating-ui react-native

* chore: clean up

* Update moderation apis, fix lint

* Refactor profile hover card to alf

* Clean up

* Debounce, fix positioning when loading

* Fix going away

* Close on all link presses

* Tweak styles

* Disable on mobile web

* cleanup some of the changes pt. 1

* cleanup some of the changes pt. 2

* cleanup some of the changes pt. 3

* cleanup some of the changes pt. 4

* Re-revert files

* Fix handle presentation

* Don't follow yourself, silly

* Collapsed notifications group

* ProfileCard

* Tree view replies

* Suggested follows

* Fix hover-back-on-card edge case

* Moar

---------

Co-authored-by: Mary <git@mary.my.id>
Co-authored-by: Hailey <me@haileyok.com>
2024-04-12 17:01:32 -05:00
Paul Frazee ec5c4929c1
PWI improvements (#3489)
* Enable home and feeds on the PWI

* Add global SigninDialog to drive useRequireAuth()

* Tweak desktop styles

* Make the logo in leftnav PWI a clickable home link

* Add label

* Improve dialog on web

* Fix query key

* Go to home after signout from settings screen

* Filter out feeds from the discover listing for logged out users which are known to break without auth

* Update profile header follow/subscribe to give signin prompt

* Show profile feeds tabs on pwi

* Add language selector to account creation footer and pwi left nav desktop

---------

Co-authored-by: dan <dan.abramov@gmail.com>
2024-04-12 14:13:13 -07:00
dan 835f2e6548
Fix stale Notifications after push (#3507) 2024-04-12 11:33:34 -07:00
Hailey eb2fd53340
QT Jump Pt. 2 - Remove code duplication (#3506)
* remove code duplication

* now it's safe to remove shimmer
2024-04-12 18:00:44 +01:00
dan 7047755c50
Fix optimistic like/repost (#3503) 2024-04-12 16:39:59 +01:00
Hailey 24bd3d6986
add `likeCount` etal. to `embedViewRecordToPostView` (#3500)
* fix qt jumps

Revert "don't show loading placeholder if we don't need it"

This reverts commit 406f801f217b2733fdd82732c0af74186fc47464.

don't show loading placeholder if we don't need it

add `likeCount` etal. to `embedViewRecordToPostView`

* lint

* Revert the shimmer change

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-04-12 15:49:09 +01:00
Hailey 740cd029d7
Improve Android haptic, offer toggle for haptics in the app (#3482)
* improve android haptics, offer toggle for haptics

* update haptics.ts

* default to false

* simplify to `playHaptic`

* just leave them as `feedInfo`

* use a hook for `playHaptic`

* missed one of them
2024-04-11 15:20:26 -07:00
Samuel Newman 9007810cdb
Search - only enable queries once tab is active (#3471)
* only enable queries once tab is active

* remove hasBeenTrue hook

* make enabled optional
2024-04-10 23:32:31 +01:00
Samuel Newman 353a963920
Search - extra tabs (#3408)
* add extra tab to search and translate tab names

* add feature gate

* flatten pager children

* Revert "flatten pager children"

This reverts commit 0050d42558c2c9b7bc4f2ad2df4ae2908fa26f65.

* have pager children as array

* move gate to custom hook

* bundle titles and pages together

* remove comment

* Fix a crash

* Use Views as children

---------

Co-authored-by: dan <dan.abramov@gmail.com>
2024-04-10 16:02:13 +01:00
Samuel Newman a49a5a351d
Use ALF for the embed consent modal (#3336) 2024-04-09 00:58:18 +01:00
dan 6d3f9397f4
[Experiment] Ignore the persisted tab (#3442) 2024-04-08 18:39:32 +01:00
dan 887fedabea
[Statsig] Track like/follow metadata (#3435)
* Track becoming mutuals

* Track poster/liker status

* Track post and followee clout

* Track follower and liker clout

* Extract utility
2024-04-08 18:38:51 +01:00
Hailey c190fd58ec
replace deprecated `term` with `q` in search actor (#3405) 2024-04-04 11:13:11 -07:00
dan b783745b2e
Extract query key roots to constants (#3404)
* Extract query key roots to constants

* Dedupe labelers-detailed-info

* Align naming
2024-04-04 18:57:38 +01:00
Samuel Newman 9f657fbace
Open share sheet when long pressing link (#3317)
* uitextview use library w/ fixes

bump

bump

multiple uitextview fixes

* bump

* Open share sheet on link long press

* rm package manager field

* add link warning to longpress

---------

Co-authored-by: Hailey <me@haileyok.com>
2024-04-04 10:37:57 -07:00
dan 3e88fdfbc4
Don't mutate array (#3403) 2024-04-04 18:14:44 +01:00
dan 19b1721ef3
Fix profile follow from Likes (#3401) 2024-04-04 18:03:58 +01:00
Samuel Newman 712768dd8f
Use ALF for the account quick switch dialog (#3327)
* Use ALF for account quick switch

* clean up modal type

* add haptics to dialog opening

* move account list to it's own component and share

* make tick slightly darker
2024-04-03 19:18:14 -07:00
dan e51ccb46b8
Scope query client per DID (#3333)
* Move QueryProvider inside the key

* Pull useQueryClient-dependent code down in App.native

* Remove useQueryClient dependency from session provider

* Scope query client per DID
2024-04-04 02:51:10 +01:00
dan fc1e30afd6
Thread queryClient explicitly through (#3328)
* Pass queryClient explicitly to resetProfilePostsQueries

* Pass queryClient explicitly to updatePostShadow

* Pass queryClient explicitly to updateProfileShadow
2024-04-03 23:33:46 +01:00
Eric Bailey eb0ee6ae1c
Fix dialogs state references, fixes Android back button (#3314)
* Fix active/open dialogs state

* Improve close logic
2024-03-21 12:06:39 -05:00
dan 396d183dfc
[Statsig] Onboarding and routing events (#3302) 2024-03-21 11:04:02 +00:00
dan 3d8d1dd173
[Statsig] Track login/logout (#3286)
* [Statsig] Track login/logout

* Fix missing attribution
2024-03-19 20:24:05 -07:00
Eric Bailey dfe88e1656
Use consistent avatar shape/defaults for labelers (#3257)
* Add type: labeler to easy spots

* Search and ProfileCard

* Filter out of suggested follows

* ComposeReplyTo

* PReviewable avatar in posts

* Lists

* PostMeta

* Notifications

* Autocomplete

* Straggler

* Bump sdk
2024-03-19 12:18:57 -07:00
Eric Bailey 5b4b8e47d9
Use default label prefs for pwi (#3271) 2024-03-19 11:39:56 -07:00
Paul Frazee 1b10c7bc08
Use entryway for labeler getServices (#3256) 2024-03-18 14:58:02 -07:00