Commit Graph

3726 Commits (5ceb440d4e46a69747316836626a6abcf7246ca1)

Author SHA1 Message Date
Eric Bailey 04aea93192
[🐴] Better retry styling (#4032)
* Pass whole object to MessageItem for clarity

* Add retry to pending-message

* Style send failure, retry

* Group pending messages

* Remove todos

* Fix types with fake message
2024-05-15 11:45:18 -05:00
Samuel Newman ed8922281a
[🐴] Show if user can be messaged in new chat search (#4021)
* show if user can be messaged

* allow 2 lines in handle field due to new text

* cannot -> can't

* rework canBeMessaged logic and move to new file

---------

Co-authored-by: Eric Bailey <git@esb.lol>
2024-05-15 16:05:17 +01:00
Minseo Lee 2121b5f86f
Make more localizable (#3962)
* Update ProfileList.tsx

* Update NoFollowingFeed.tsx

* Update LabelsOnMeDialog.tsx

* Update LabelsOnMeDialog.tsx

* Update NoFollowingFeed.tsx

* Update SavedFeeds.tsx

* Revert "Update SavedFeeds.tsx"

This reverts commit db128eb27d76d27dffa87e0e70e34f603da75778.
2024-05-14 22:44:59 -07:00
Hailey a90cc1c030
[🐴] change `Follows Only` to `People I Follow` (#4028) 2024-05-14 19:58:56 -07:00
Eric Bailey 6382fec732
Reset after 5 min (#4026) 2024-05-14 21:21:09 -05:00
Eric Bailey 6efe90a5f5
[🐴] Block states, read only (#4022)
* Refactor ChatListItem for mod state

* Refactor Conversation Header for mod state

* Invalidate query for list when blocking/unblocking

* Remove unused prop, restore border

* Add mutations, hook up profile shadow to list query, use shadow-aware query for convo (#4024)
2024-05-14 20:07:53 -05:00
Hailey d390db0fa2
[🐴]Add DM push notification sound (#4000)
* add wav

* add sound to config
2024-05-14 18:02:57 -07:00
Samuel Newman 0e04b19627
remove serviceurl gate (#4019) 2024-05-14 21:19:22 +01:00
Samuel Newman ebc7571368
reword subtitle (#4017) 2024-05-14 21:18:54 +01:00
Hailey e1ed4a4429
[🐴] show deleted account for `missing.invalid` (#4014)
* show deleted account for `missing.invalid`

* sigh
2024-05-14 11:42:54 -07:00
Samuel Newman 08836ecbec
[🐴] use "Chats" instead of "Messages" (#4013)
* use "Chats" instead of "Messages"

* chats to chat

* use messages in the header
2024-05-14 19:18:08 +01:00
Samuel Newman 6b2635c870
100vh settings screen (#4015) 2024-05-14 19:17:53 +01:00
Paul Frazee 03da056513
Run intl extract (#4016) 2024-05-14 11:15:27 -07:00
Samuel Newman 5af61ca4e4
[🐴] Settings screen (#3830)
* create settings screen + api

* update api package

* use putrecord API with validate false

* create new RadioGroup component
2024-05-14 18:57:16 +01:00
Samuel Newman 9861494e34
[🐴] Message drafts (#3993)
* drafts

* don't throw if no convo ID

* Remove labs package

---------

Co-authored-by: Eric Bailey <git@esb.lol>
2024-05-14 18:55:43 +01:00
Minseo Lee f147256fdc
Update Korean localization (#3887)
* Update messages.po

* Update messages.po

* Update messages.po

* Update messages.po

* Update messages.po

* Update messages.po

* Update messages.po

* Update messages.po

* Update messages.po

* Update messages.po

* Update messages.po

* Update messages.po

* Update messages.po

* Update src/locale/locales/ko/messages.po

Co-authored-by: Frudrax Cheng <i@cynosura.one>

* Update src/locale/locales/ko/messages.po

Co-authored-by: Frudrax Cheng <i@cynosura.one>

* Update src/locale/locales/ko/messages.po

Co-authored-by: Frudrax Cheng <i@cynosura.one>

* Update src/locale/locales/ko/messages.po

Co-authored-by: Frudrax Cheng <i@cynosura.one>

* Update messages.po

* Update src/locale/locales/ko/messages.po

Co-authored-by: Frudrax Cheng <i@cynosura.one>

* Update messages.po

* Update messages.po

---------

Co-authored-by: Frudrax Cheng <i@cynosura.one>
2024-05-14 10:51:13 -07:00
Ivan Beà d515985fdd
Update catalan messages.po (#3984)
* Update catalan messages.po

New lines update
You can check it @jordimas @darccio @ferranrego @MiquelAdell @johnnydement @surfdude29

* Update messages.po

apply @surfdude29 corrections
2024-05-14 10:48:47 -07:00
Eric Bailey d7f1b2a5df
Fix dep (#4011) 2024-05-14 12:20:12 -05:00
Eric Bailey 1c51a48764
[🐴] Make status checks easier, fix load state (#4010)
* Make status checks easier, fix load state

* Make naming more clear

* Split up types for easier re-use

* Replace hacky usage
2024-05-14 11:59:53 -05:00
Samuel Newman bffb9b5906
[🐴] Chat muted state (#3988)
* separate out chatlistitem and add muted icon

* move bell icon to the right of the timeelapsed
2024-05-14 17:41:20 +01:00
Eric Bailey 9173be686c
[🐴] Swap in new package, update usages (#3992)
* Swap in new package, update usages

* Remove uneccessary patch

* Override type in safe place
2024-05-14 09:22:09 -05:00
Paul Frazee 107760d551
Add better onboard testing (#4007) 2024-05-13 20:23:31 -07:00
Hailey fd704bfd44
add a `Login` notifications request (#4006) 2024-05-13 19:51:12 -07:00
Hailey fce65b74ff
align the trash icon in the center in feed edit list (#4004)
* align the trash icon in the center

* align_center instead of align_start
2024-05-13 18:26:58 -07:00
Paul Frazee 0776cd99e5
Make feeds easier to reorder (#3998)
* Make feeds easier to reorder

* Add reorder e2e test

* Tweak feed card to only allow one line (#4002)

---------

Co-authored-by: Eric Bailey <git@esb.lol>
2024-05-13 15:56:48 -07:00
Eric Bailey 95514e3af7
[Reduced Onboarding] Fix forward/backward nav with profile step (#3997)
* WIP

* Fix forward-backward to profile step

* [Reduced Onboarding] Add avatar metric (#3999)

* Add prop to finished event

* Fix type

* Use separate event
2024-05-13 16:54:12 -05:00
Eric Bailey 9980012021
Gate base following feed usage (#3994) 2024-05-13 16:54:03 -05:00
Samuel Newman 5d92ac2ce3
dont send message if >1000 graphemes (#3995) 2024-05-13 22:36:56 +01:00
Paul Frazee 27bb73c701
New onboarding tests (#3996)
* Add onboarding test

* Add onboarding avatar-creator test

* Update profile screen edit test
2024-05-13 14:20:27 -07:00
Eric Bailey f0cd8ab6f4
Swap in base following (#3991) 2024-05-13 12:44:21 -07:00
Eric Bailey 10919319bf
Remove profile step from old onboarding (#3989) 2024-05-13 13:15:38 -05:00
Hailey 8e1541e0a5
actually register token on permissions change (#3990)
* actually register token on permissions change

* actually register token on permissions change

* get updated permissions every time

* remove all usages of `usePermissions`

* skip perms check on granted result from request
2024-05-13 11:11:35 -07:00
Hailey d3406c89cf
Move request for notifications permissions to `HomeReadyScreen` (#3977)
* cleanup the current logic

* add statsig logs

* implement requests for permissions where needed

* oops

* let `addPushTokenListener` handle the token registration

* place new log event type with the other `notifications` type

* place registration next to handler

* more organization

* only call `gate()` if permission is not yet granted

* be more specific to prevent gate pollution

* nit

* make `token` non-optional in `registerToken`

* remove `prevDid`, move `registerPushToken` into `useEffect`

* keep it outside actually

* nit
2024-05-13 09:19:35 -07:00
Matthieu Sieben 63b38b413d
fix wording in french onboarding (#3987) 2024-05-13 09:19:21 -07:00
Hailey e02cae2acd
Fix overflowing text on web and iOS in `PostMeta` (#3982)
* `flexShrink` on iOS and web

`flexShrink` on iOS and web

`flexShrink` on iOS and web

actually, `flexShrink`

use `flex`

* adjust web

* `expect-error` `onMouseUp`

* ignore ref type check
2024-05-13 08:49:54 -07:00
Paul Frazee d49b93dc7e
Replace e2e tests with Maestro (#3983)
* Setup maestro tests and convert some initial tests

* Remove detox

* Replace all tests with maestro
2024-05-13 08:43:13 -07:00
Hailey 5cd4ac3a34
get a little more accurate with month length (#3981)
* get a little more accurate with month length

* create some wiggle room, create some specific tests

* update more tests
2024-05-13 08:39:34 -07:00
Hailey 73d094c67e
Delete the entire temporary directory instead of just the temp file, also use `cacheDirectory` over `documentDirectory` (#3985)
* lint

* remove extra arg
2024-05-13 02:10:29 -07:00
Matthieu Sieben 00a57df5b1
Fix "Download CAR file" on mobile (#3816)
* download CAR file using AtpAgent instead of building URL

* add loader icon on download car button

* actually save to disk on android

* style nits

* bottom margin nit

* localize toast

* remove fallback so back button works correctly

* keep throwing an error if mime type isn't used

* be more explicit with toasts

* send errors to sentry when encountered

---------

Co-authored-by: Hailey <me@haileyok.com>
2024-05-12 14:18:42 -07:00
dan 4458b03173
FeedFeedback fixes (#3968)
* Lower seen threshold to 1.5s

* Send feedContext for replies

* Use a simpler and more reliable feedContext fallback

---------

Co-authored-by: Paul Frazee <pfrazee@gmail.com>
2024-05-12 10:30:00 -07:00
Hailey 97750c4aab
Show "label has been placed..." even for self-labels (#3874)
* show labels placed on your content even if it's a self-label

even friendlier wording

friendlier wording

remove unnecessary `export`

temp revert reordering

show labels placed on your content even if it's a self-label

* Bump api 0.12.9

---------

Co-authored-by: Paul Frazee <pfrazee@gmail.com>
2024-05-11 15:07:50 -07:00
dan 08462375ca
Fix flashes when replacing For You (#3967)
* Fix flashes when replacing For You

* Switch to Discover if pinned after removing
2024-05-11 20:35:08 +01:00
dan 51b4b22dec
Onboarding fixes (#3966)
* Ensure prefs are up-to-date before leaving onboarding

* Parallelize upsertProfile call

* Don't upsertProfile if no image

* Don't waterfall blob upload

* Fix useProfileUpdateMutation to parallelize uploads

* Invalidate user profile before leaving onboarding

* Ungate setting the pic
2024-05-11 19:54:58 +01:00
Paul Frazee 6f5b551bda
Add shutdown message to for you feed (#3776) 2024-05-11 05:57:21 +01:00
Hailey d0440d087e
bump (#3961) 2024-05-11 05:44:17 +01:00
Eric Bailey 4e37e2f59b
[Reduced Onboarding] Add profile step (#3933)
* Onboarding avatar creator or upload (#2860)

* add screen to onboarding flow

* update base

* add icon

* fix icon

* fix after merge

* create flatlist

* add emoji list

* add state context, pressables

* select/update

* add camera icon

* add photo selection button

* image selection

* cleanup

* add most needed icons

* fix icon naming

* add icons

* export path strings for emoji

* canvas drawing for web

* types

* move breakpoints to individual steps

* create canvas

* canvas working 🎉

* update state

* it works!

* working on both platforms

* remove comments

* remove log

* remove unused web canvas

* animate picture selection/removal

* compress images on web correctly

* add times icon

* scrollable horizontal flatlist on web

* prefetch

* adjustments

* add more assets

* remove unused smiles

* add all the icons

* adjust color options

* animate grow/shrink selections

* change layout on tablet/desktop

* better web layout

* fix path

* adjust web layout

* organize

* organize imports and cleanup styles

* make generated images smaller

* implement design changes

use row for buttons on web

use RNGH FlatList

random color at start

improve logic

update dialog for web

update dialog style on mobile

some more progress

create dialog

simplify context

start implementing design

* rm change

* cleanup imports

* trigger a pr label

* Formatting

---------

Co-authored-by: Eric Bailey <git@esb.lol>
(cherry picked from commit 087186e3867b0eefb11a056b0b644f5585fa16bd)

* UI tweaks

* Revert layout change

* Gate avi upload

* Support returning to profile step

* Add Statsig

---------

Co-authored-by: Hailey <me@haileyok.com>
Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-05-11 05:37:23 +01:00
Eric Bailey 80ce6f980e
[Reduced Onboarding] Add new step, new state to reducer (#3931)
* Add new step, new state to reducer

* Don't set default feeds
2024-05-11 05:19:16 +01:00
Eric Bailey 08979f37e7
Movable following feed (#3593)
* Handle home algo with backwards compat

* Remove todo, fix pwi view

* Simplify filter logic

* Handle edge case

* Handle home algo in FeedSourceCard

* Fix handling of pinned feed if home algo is disabled

* Handle home algo on ProfileFeed screen

* Rename

* Fix pinned feeds key

* Improve perf of pinned feeds with primary algo

* Update statsig API

* Revert unneeded changes

* Support following feed as well

* Better formatting

* Clarify primary algo usage

* Better comment

* Handle saved feed screen edge case

* Restore Feeds sparkle, fix line height

* Move gate call down

* Filter out primary algo from feeds page

* Filter dupe from Feeds screen

* Simplify logic

* Missing following handling

* Hide primary feed setting outside exp

* Revert testing change

* Migrate usePinnedFeedInfos

* Migrate FeedSourceCard

* Migrate Feeds screen

* Migrate SavedFeeds screen

* Handle timeline in feed infos

* Finish migrating ProfileFeed, FeedSourceCard

* Migrate ProfileList

* Finalize mutation hooks

* Allow unsaving lists

* Handle following feed on Feeds screen

* Handle following on SavedFeeds

* Get rid of deprecated interface usages

* Handle no pinned feeds

* Handle no feeds on Feeds screen

* Reuse component on SavedFeeds screen

* Handle no following feed

* Remove primary algo references

* Migrate to new plural APIs

* Remove unused event

* Prevent duplicate keys

* Make handling much more clear

* Dedupe useHeaderOffset

* Filter unknown feed types at source

* Use just following

* Immprove key handling

* Resume from last tab

* Bump sdk

* Revert Gemfile

* Additional protection in FeedSourceCard

* Fix ProfileList save/unsave handling

* Translate

* Translate

* Match existing handling post-signup

* Ensure onboarding results in correct selected feeds

* Some testing tweaks on create/onboarding

* Revert primary algo consderations

* Remove comment

* Handle default feed setting

* Rm unnecessary type cast

* Remove premature gate check

* Remove nullable check in onPageSelecting, assume the pager checks bounds

* Use null for default selected feed

* Rm unrelated change

* Remove the concept of __key__

I don't think this concept is consistent.

It's introduced on FeedSourceInfo which is used both by pinned feeds and by useFeedSourceInfoQuery. Pinned feeds use the pinning ID there. But there is no pinning ID for useFeedSourceInfoQuery. So this means this field is sometimes one thing and sometimes some other thing. That is a decent sign that it shouldn't be on that type at all.

It's not used anywhere except the desktop feed enumeration. It seems reasonable to assume there that we wouldn't want to show the same feed URL twice. (And if it does occur in the array twice, IMO we should solve that at the API level and dedupe it on read or next write.) So I think we should just use the URL in that place. (I used the descriptor, which is equivalent.)

* Dedupe pinned feeds by URL on read

* Filter timeline out of mergefeed sources

* Put FeedDescriptor into FeedSourceInfo

* Group saved info with feed for pins

This removes a loop within a loop within a loop.

* Fix Feeds link on native

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-05-11 04:39:21 +01:00
Eric Bailey 2974ce1b20
Gate chat icon in bottom bars (#3959) 2024-05-10 18:02:33 -05:00
Eric Bailey f84a2def29
[🐴] Simplify message passing, cleanup (#3952)
* Simplify message passing

* Setup/teardown events
2024-05-10 12:44:55 -05:00