Commit Graph

701 Commits

Author SHA1 Message Date
Eric Bailey d7ea522301 Dropdown menu improvements 2024-08-07 11:45:54 -05:00
Eric Bailey 9f04504e11 Update viewRemoved embed view 2024-08-07 11:03:27 -05:00
Eric Bailey f576db3023 Clean up embed replacement 2024-08-07 10:55:10 -05:00
Eric Bailey a61bef8716 Clean up dropdown logic 2024-08-07 10:40:16 -05:00
Eric Bailey 12a0164464 Few fixes 2024-08-06 18:59:26 -05:00
Eric Bailey 413e87f4c5 Use post shadow to swap detached quotes 2024-08-06 18:27:34 -05:00
Eric Bailey 15862a6f7f Add postgate queries, begin integration 2024-08-05 17:04:02 -05:00
Eric Bailey 926595493d Enable un-hiding of replies 2024-08-05 15:30:42 -05:00
Eric Bailey 19c600843d Start to break apart queries for better composition 2024-08-05 12:38:30 -05:00
Eric Bailey 50b8e6c63c Replace createThreadgate handling 2024-08-05 10:52:45 -05:00
Eric Bailey 571d00cf41 Thread through threadgate record, validate approach 2024-08-05 09:55:59 -05:00
Eric Bailey c3d8beee6d Respect labels on feeds and lists (#4818)
* Prep

* Pass in optional moderation to FeedCard

* Compute moderation decision, filter contentList contexts, pass into card

* Let's go a different route

* Filter from within search queries

* Use same search query for starter packs

* Filter lists from profile tabs

* Cleanup

* Filter from profile feeds

* Moderate post embeds

* Memoize

* Use ScreenHider on lists

* Hide both list types

* Fix crash on iOS in screen hider, fix lineheight

* Memoize renderItem

* Reuse objects to prevent re-renders
2024-08-02 13:05:33 -05:00
dan 576cef88b5 [Web] Retrigger onEndReached if needed when content height changes (#4859)
* Extract EdgeVisibility

* Key Visibility by container height instead of item count
2024-07-31 19:10:24 +01:00
Eric Bailey 043e5cea64 Improve a11y on noty feed (#4842) 2024-07-25 18:11:16 -05:00
Samuel Newman 401e92ed42 Replace import hairlineWidth = with const (#4831)
* replace import with const

* just use `StyleSheet.hairlineWidth`

---------

Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
2024-07-25 20:45:15 +01:00
Samuel Newman 00240b95b9 [Videos] Video player - PR #1 - basic player (#4731)
* add ffmpeg-kit-react-native

* get select video button + compression working

* up res to 1080p

* add progress component

* move logic out of compressVideo

* (WIP) add lonestar compression

* rework web compression a bit

* mess around with adding a thumbnail

* 3mbps

* replace

* use 3mbps

* add expo-video

* remove unnecessary try/catch

* rm ToastAndroid

* fix web

* wrap lazy component in suspense

* gate video select button

* rm web compression

* flip sign

* remove expo-video from web

* review nits

* add video picker permissions + rm temp buttons

* add ffmpeg-kit-react-native

* replace

* hls-capable player

* start trying to hoist up video player instance

* hoist video player and move things around

* always show native controls

* fix controls on expo video android

* gate temp video player in feed

* rm IS_DEV, doesn't do what I thought it did

* use __DEV__ instead

---------

Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
Co-authored-by: Hailey <me@haileyok.com>
2024-07-25 20:41:50 +01:00
Hailey bfb7f6efef make toast shorter (#4821) 2024-07-24 14:23:37 -07:00
Paul Frazee 4af6bcb11a Hack-modify avi path to use smaller thumbs behind gate (#4816)
* Hack-modify avi path to use smaller thumbs behind gate

* Only use small thumbs on smaller rendering
2024-07-23 16:57:51 -07:00
Samuel Newman abb709d209 Native toast rework (#4808)
* rework toast to use reanimated

* fix animation on iOS

---------

Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
2024-07-23 19:50:47 +01:00
Samuel Newman 27d712290a Use appropriate icons for toasts (#4803)
* use appropriate icons for toasts

* use info for session expiry

* tweak size

* message -> safeMessage

---------

Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
2024-07-23 15:01:04 +01:00
Hailey 65b5d31b58 Fix alt text for GIFs (#4766)
* fix alt text dialog for gifs

* only apply to native
2024-07-10 20:25:44 +01:00
Hailey ca0a327052 tweak top padding external (#4755) 2024-07-09 02:16:34 +01:00
Hailey a3c43a7471 change contentVisibility to contain (#4752) 2024-07-08 15:16:43 -07:00
Hailey f8a59e10dd Fix RTL text rendering for display names (#4747)
* header display name rtl support

* highlighted post rtl

* move `NON_BREAKING_SPACE` to an external constant

* rtl support in search dropdown

* profile card rtl

* old profile card rtl

* hover card

* wizard list card

* new chat

* account card

* chat header

* clean up notifications

* just force LTR on meta display name
2024-07-08 18:06:00 +01:00
Joel ea7afecf28 Fix misplaced '@' in RTL post meta. (#4531)
Co-authored-by: Joel <joel.garplind+github@gmail.com>
Co-authored-by: Hailey <me@haileyok.com>
2024-07-07 15:27:30 -07:00
Hailey a6b3c97df0 Ensure /start navigates to /starter-pack when clicking a link internally (#4745)
* remove temporary metadata removal

* ensure proper navigation
2024-07-07 13:07:28 +01:00
Samuel Newman 8f06ba70bb Video compression in composer (#4638)
Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
Co-authored-by: Hailey <me@haileyok.com>
2024-07-05 17:50:03 -07:00
Hailey ca7386967a Fix onEndReached not firing sometimes on web (#4728)
* handle off screen visibility observer.

* Revert "handle off screen visibility observer."

This reverts commit e499ea0ed6.

* key ftw

* Remove special case

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-07-04 20:12:15 +01:00
Paul Frazee 0ed99b840d New user progress guides (#4716)
* Add the animated checkmark svg

* Add progress guide list and task components

* Add ProgressGuide Toast component

* Implement progress-guide controller

* Add 7 follows to the progress guide

* Wire up action captures

* Wire up progress-guide persistence

* Trigger progress guide on account creation

* Clear the progress guide from storage on complete

* Add progress guide interstitial, put behind gate

* Fix: read progress guide state from prefs

* Some defensive type checks

* Create separate toast for completion

* List tweaks

* Only show on Discover

* Spacing and progress tweaks

* Completely hide when complete

* Capture the progress guide in local state, and only render toasts while guide is active

* Fix: ensure persisted hydrates into local state

* Gate

---------

Co-authored-by: Eric Bailey <git@esb.lol>
Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-07-04 03:05:19 +01:00
Hailey aa7117edb6 Add starter pack embeds to posts (#4699)
* starter pack embeds

* revert test code

* Types

* add `BaseLink`

* precache on click

* rm log

* add a comment

* loading state

* top margin

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-07-04 02:15:08 +01:00
Samuel Newman dc3c81c4e2 change maxWidth -> width to fix GIFs in DMs (#4717)
Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
2024-07-03 03:48:55 +01:00
dan a9fe87b842 Add dismiss backdrop to native dropdowns (#4711) 2024-07-01 18:45:15 +01:00
Hailey 878b0476dd Better starterpack embed (#4659) 2024-06-26 17:24:33 -07:00
dan 7db8dd8980 Add debug feedContext label (#4598) 2024-06-22 02:11:39 +03:00
Paul Frazee 80197556f1 Rework "Who can reply" to blend more nicely into the UI (#4578)
* Rework WhoCanReply controls in threads to blend more nicely

* Fix layout

* Fix post control hitslops

* Move dialog content to separate component

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-06-19 18:39:45 -07:00
Hailey 89d99a8701 use 1000x1000 for image height in avatar cropper (#4453) 2024-06-20 02:20:43 +03:00
Samuel Newman 0f931933a7 Option for large alt badges (#4571)
* add pref for large alt badge

* add to settings

* do the large badge bit

* Tweak wording

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-06-20 00:32:44 +03:00
Samuel Newman 22c5aa4da4 Truncate post metrics and fix truncation on native (#4575)
* truncate post counts

* add numberformat polyfill

* Fix perf

* Simplify type shenanigans

* Bump versions to remove dupes

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-06-20 00:21:02 +03:00
Hailey 8788708bd2 add support for ListEmptyComponent, allow undefined data (#4403)
* add support for `ListEmptyComponent`, allow `undefined` data

* change `header` and `footer` to be in line with `emptyComponent`

* don't render `onEndReached` or `onStartReached` `Visibility` if empty
2024-06-19 03:33:43 +03:00
Samuel Newman 3dc34be929 GIF previews in notifications (#4447)
* gifs in notifications

* remove try/catch

* Limit try/catch scope

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-06-19 03:09:06 +03:00
Paul Frazee 07c2be255f Collection of moderation fixes (#4566)
* Fix: dont blur parents in threads that embed blocks

* After tapping 'Show hidden replies', show the individual hider cards

* Add shape override to UserAvatar and fix the fallback avi for labelers

* Fix precedence

* Detect shape for DefaultAvatar

---------

Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
2024-06-19 02:36:46 +03:00
Eric Bailey 983d85384b Force callers of getTimeAgo to pass in the value for "now" (#4560)
* Remove icky hook for now

* Force callers of getTimeAgo to pass in the 'now' value

* Update usage in Newskie dialog
2024-06-18 21:50:07 +03:00
Samuel Newman 5f5d845053 Server-side thread mutes (#4518)
* update atproto/api

* move thread mutes to server side

* rm log

* move muted threads provider to inside did key

* use map instead of object
2024-06-18 21:48:34 +03:00
Hailey 73c9de3ce2 fix keyboard overlaying onboarding inputs (#4558) 2024-06-18 10:57:08 -07:00
Eric Bailey 443beda741 Add useGetTimeAgo and utils (#4556)
* Create a testable version of ago() and re-enable the disabled test (#4364)

* Enable the test of ago()

* Use test cases

This puts the input and the expected values next to each other.

* Create dateDiff function

This is a copy of ago(), but with the ability to specify the second date instead of using Date.now().

* Let ago() use dateDiff()

* Move constants close to usage

* Test dateDiff instead of ago

This makes it possible to test the dates without being forced to rely on what the current date is.

The commented out tests do not yet pass. This is fixed in later commits.

* Update dateDiff and enable the remaining tests

* Split up tests, use date-fns as helpers

* Remove old test

* Add long format

* Add hook

* Migrate to hooks

* Delete old code

* Or equal to

* Update comment

---------

Co-authored-by: Jan Aagaard <jan@aagaard.net>
2024-06-18 10:55:02 -05:00
Hailey d0bb97e8a9 fix native post meta (#4530) 2024-06-16 12:23:48 +03:00
Eric Bailey 5751014117 Feed source card (#4512)
* Pass event through click handlers

* Add FeedCard, use in Feeds screen

* Tweak space

* Don't contrain rt height

* Tweak space

* Fix type errors, don't pass event to fns that don't expect it

* Show unresolved RT prior to facet resolution
2024-06-14 14:24:04 -05:00
Eric Bailey d989128e5b Set profile hover prefetch stale time to 30s (#4417)
* Set prefetch stale time to 30s

* Run prefetch on mouseOver

* Only prefetch once on mousemove
2024-06-13 04:44:06 +02:00
Hailey 99078bbff2 Don't show warning when sharing your own post in PWI opt-out mode (#4495) 2024-06-12 08:51:08 -07:00
Eric Bailey 4b6609d48b Move feeds screen into common navigator, handle usages (#4365)
* Move feeds screen into common navigator, handle usages

* Add link to Feeds from home screen (#4366)

* Add link to feeds to home screen header

* Center logo

* Replace icons

* Tweak spacing

* Tweak spacing

* Swap icon, sizing

* Buttonize, size

* Make menu same alignment on all screens

* Remove FeedsTab support, enable drawer swipe on MessagesTab

* Add note

* Vertically align header

* Swap in Pin

* Use hashtag icon

* Remove png

* Fix reference

* Ensure alignment with home and other screens
2024-06-11 11:08:06 -07:00