about summary refs log tree commit diff
path: root/src/components
Commit message (Collapse)AuthorAgeFilesLines
* [🐴] Disable hover card when blocked or blocking (#4041)Hailey2024-05-162-1/+6
|
* [🐴] Tweak list on mobile web (#3958)Hailey2024-05-152-2/+1
| | | | | | | | | | | | | * mobile web tweaks chat screen * revert a change * remove unnecessary prop * Spacing tweaks --------- Co-authored-by: Eric Bailey <git@esb.lol>
* [🐴] Better retry styling (#4032)Eric Bailey2024-05-152-51/+93
| | | | | | | | | | | | | * 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
* [🐴] Show if user can be messaged in new chat search (#4021)Samuel Newman2024-05-154-8/+52
| | | | | | | | | | | | | * 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>
* Make more localizable (#3962)Minseo Lee2024-05-141-4/+4
| | | | | | | | | | | | | | | | | * 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.
* [🐴] Block states, read only (#4022)Eric Bailey2024-05-141-11/+83
| | | | | | | | | | | * 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)
* [🐴] Settings screen (#3830)Samuel Newman2024-05-141-0/+76
| | | | | | | | | * create settings screen + api * update api package * use putrecord API with validate false * create new RadioGroup component
* [🐴] Make status checks easier, fix load state (#4010)Eric Bailey2024-05-141-5/+2
| | | | | | | | | * Make status checks easier, fix load state * Make naming more clear * Split up types for easier re-use * Replace hacky usage
* [🐴] Chat muted state (#3988)Samuel Newman2024-05-141-0/+8
| | | | | * separate out chatlistitem and add muted icon * move bell icon to the right of the timeelapsed
* [🐴] Swap in new package, update usages (#3992)Eric Bailey2024-05-146-12/+8
| | | | | | | * Swap in new package, update usages * Remove uneccessary patch * Override type in safe place
* Fix overflowing text on web and iOS in `PostMeta` (#3982)Hailey2024-05-131-5/+5
| | | | | | | | | | | | | | | | | * `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
* Show "label has been placed..." even for self-labels (#3874)Hailey2024-05-112-38/+62
| | | | | | | | | | | | | | | | | | | * 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>
* [Reduced Onboarding] Add profile step (#3933)Eric Bailey2024-05-111-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* Movable following feed (#3593)Eric Bailey2024-05-114-7/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* [🐴] Report message dialog (#3941)Samuel Newman2024-05-105-15/+295
| | | | | | | | | | | | | | | * message report dialog * report chat prompt * typo * 100% height sheet on android * messages-specific report options * restore unwanted sexual content * chat -> conversation
* remove 12hr time (#3954)Samuel Newman2024-05-101-2/+0
|
* bump max width of message (#3955)Hailey2024-05-102-2/+2
|
* [🐴] Mutate data instead of invalidating queries when muting or unmuting ↵Hailey2024-05-101-24/+19
| | | | | | | | | | | | | | | | | | | | | (#3946) * mutate for mutes * mutate data for mutes * add initial data, `useConvoQuery` in `ConvoMenu` * `useInitialData` * don't use `identifier` for notifications, use `dates` instead * better implementation * simplify * simplify * fix types
* [🐴] Change up icons (#3938)Eric Bailey2024-05-1010-0/+78
| | | | | | | | | | | | | * Swap for chat icon * Replace icons in left nav * Replace icons in bottom bars * Ditch feeds, drop size * Fine tune * Swap bell icon, improve alignment and size
* [🐴] Rich text in messages (#3926)Samuel Newman2024-05-092-17/+33
| | | | | | | | | | | | | | | | | * add facets to message * richtext messages * undo richtexttag changes * whoops, don't redetect facets * dont set color directly * shorten links and filter invalid facets * fix link shortening * pass in underline style
* [🐴] Add hover context menu for convo list on web (#3923)Hailey2024-05-093-33/+30
| | | | | | | | | | | | | | | | | | | | | * remove some unnecessary props * add hover trigger on web for convo list * lint * use `UserAvatar` to not affect accessibility * remove extra wrapper * add `label` * always show on mobile * adjust size of dots * make the message trigger dots the same size * ❓
* [🐴] Adjust press and hold delay on messages (#3918)Hailey2024-05-081-5/+7
| | | | | * adjust press and hold delay on messages * adjust hit slop
* [🐴] Mark as read in convo menu (#3913)Samuel Newman2024-05-082-0/+27
| | | | | | | * add mark as read option * optimistic update + link up menu * rm messageid
* [🐴] Reorg convo files (#3909)Eric Bailey2024-05-071-6/+6
| | | | | * Remove unused prop * Reorganize
* Remove unnecessary Trans tags (#3888)Minseo Lee2024-05-071-7/+5
|
* Improve localization marks (#3285)Minseo Lee2024-05-063-17/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Update Lightbox.tsx * Change strings for easier localization * Update DeleteAccount.tsx * Update LabelsOnMeDialog.tsx * Update FeedCard.tsx * Update index.tsx * Update LabelsOnMeDialog.tsx * Update index.tsx * Update FeedCard.tsx * Update SelfLabel.tsx * Update Hashtag.tsx * Update index.tsx * Update Hashtag.tsx * Update ChangeHandle.tsx * Update index.web.tsx * Update index.web.tsx * Update index.tsx * Remove unnecessary `<Trans>` tags * Update Drawer.tsx
* Implement FeedFeedback API (#3498)Paul Frazee2024-05-071-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Implement onViewableItemsChanged on List.web.tsx * Introduce onItemSeen to List API * Add FeedFeedback tracker * Add clickthrough interaction tracking * Add engagement interaction tracking * Reduce duplicate sends, introduce a flushAndReset to be triggered on refreshes, and modify the api design a bit * Wire up SDK types and feedContext * Avoid needless function allocations * Fix schema usage * Add show more / show less buttons * Fix minor rendering issue on mobile menu * Wire up sendInteractions() * Fix logic error * Fix: it's item not uri * Update 'seen' to mean 3 seconds on-screen with some significant portion visible * Fix non-reactive debounce * Move methods out * Use a WeakSet for deduping * Reset timeout * 3 -> 2 seconds * Oopsie * Throttle instead * Fix divider * Remove explicit flush calls * Rm unused --------- Co-authored-by: dan <dan.abramov@gmail.com>
* Replace pluralize by plural by @tkusano (#3882)Paul Frazee2024-05-063-15/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Replace pluralize with plural or Plural * Replace all pluralize (defined by src/lib/strings/helpers.ts) with plural or Plural (defined by @lingui/macro) to make some UI elements translatable. * Delete pluralize() and related test. * Import @formatjs polyfill libraries for plural on ios and android - ios and andorid: import `@formtjs/intl-locale` and `@formatjs/intl-pluralrules` to polyfill `Intl.Locale` and `Intl.PluralRules` which are used in `plural()` and '<Plural />'. - update `plural` use in notification messages for better translation. * Rewrite to pass lint * Add Catalan plural polyfill * more replacement * import zh plural data for zh-CN * Refactor feed header components (#2964) * Move home-related files to view/com/home * Add HomeHeader in front of FeedTabBar * Move isDekstop check outside FeedsTabBar * Remove PWI logic from tabbar * Separate platform-specific layout from shared logic * Rename Home Feed Prefs to Following Feed Prefs (#2965) * use `useOpenLink` hook for links in ALF (#2975) * use `useOpenLink` hook for links in ALF * web only for `outline` * increase timeout to 15s (#2958) * Normalize relative day (#2874) * fix: normalize relative date * chore: add comments * refactor: skip flooring normalized diff * refactor: let -> const * fix: get own copy of date to prevent mutating * refactor: rounding does the same trick * Add handle validation to create account UI (#2959) * show uiState errors in the box as well simplify copy update ui for only letters and numbers add ui validation to handle selection * simplify names * Fix accidental text-node render --------- Co-authored-by: Paul Frazee <pfrazee@gmail.com> * Make dim theme dim (#2966) * Make dim color scheme dim * Tweaks * Overall tweaks * We have to go darker * Tweak saturation of blues in dim * Increase contrast on dark-dark mode * adjust dim --------- Co-authored-by: Eric Bailey <git@esb.lol> Co-authored-by: Paul Frazee <pfrazee@gmail.com> Co-authored-by: Hailey <me@haileyok.com> * Fix dim mode unread notif color * use `showControls` to show/hide live text icon on ios (#2982) * Update .po files * fix reversed icons in validator 🤦 (#2991) * Adjust `windowSize` on `PostThread` `FlatList` (#2989) * adjust window size, cells batching period * rm batching period change * Pluralize 'follow(s)' * Include a space between the msgid count and "follower(s)/following(s)" so the translator can adjust the translated count line to fit within the Drawer. * pluralie '# following' * Fix & Update * Rewrite to use Plural * rmeove unused import * When commiting changes, disable 'simple-import-sort' plugin in .eslintrc.js to sync with bluesky-social:main * Revert simple-import-sort/imports related changes * Move ProfileHoverCard web to plural util * Followings -> following * Add plural following to hovercard * Followings -> Following --------- Co-authored-by: Takayuki KUSANO <kusano@tkusano.jp> Co-authored-by: Takayuki KUSANO <65759+tkusano@users.noreply.github.com> Co-authored-by: dan <dan.abramov@gmail.com> Co-authored-by: Hailey <me@haileyok.com> Co-authored-by: Mary <148872143+mary-ext@users.noreply.github.com> Co-authored-by: Eric Bailey <git@esb.lol>
* make gif alt text prompt selectable (#3879)Samuel Newman2024-05-061-1/+5
|
* Alt text for gifs (#3876)Samuel Newman2024-05-062-3/+5
| | | | | | | | | | | | | | | | | | | | | * add alt text dialog * multiline alt text input * add pressable alt text badge * rename `ALT: ` to `Alt text: ` to avoid including old bad ones * reuse alt text reminder * reuse alt text reminder in gallery * add alt text reminder in the dialog itself * autofocus text input * reorder components to fix tab order * fix close btn position
* [Clipclops] Delete message in dialog (#3849)Hailey2024-05-051-3/+24
| | | | | | | | | | | | | * delete and copy * add retry dialog if message send fails * add layout animation * fix `nextMessage` being incorrect --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* [🐴] Improve message pressing (#3864)Samuel Newman2024-05-051-1/+2
| | | | | | | | | | | * allow tapping message when keyboard open * dismiss keyboard on open msg menu * show message info on press * Revert "show message info on press" This reverts commit 61d039a7024c27583aed7d1e9f1ff5b919dc7d30.
* [🐴] Dismiss keyboard before opening convo menu (#3862)Samuel Newman2024-05-051-1/+6
| | | | | * Dismiss keyboard before opening convo menu * call `props.onPress()` instead
* Assorted clipclop fixes (#3853)Samuel Newman2024-05-043-19/+62
| | | | | | | | | | | | | | | * empty state for new chat dialog * use terniary * dark mode pending state * copy message text option * fix service url input (scrollview ftw) * whoops, fix equality * slightly reduce horizontal message padding
* Clipclop tweaks (#3851)Hailey2024-05-031-0/+5
| | | | | | | * scroll on input resize * add back the padding 🙊 * fix timestamps
* [Clipclops] Refactor message list (#3832)Hailey2024-05-031-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | * rework the list for accessibility * Reverse reverse * progress * good to start testing * memo `MessageItem` * small hack * use our custom `List` impl * use `ScrollProvider` for `onScroll` event * remove use of `runOnJS` * actually, let's keep it * add some comments --------- Co-authored-by: Eric Bailey <git@esb.lol>
* [Clipclops] Pending message style with layout animation (#3844)Samuel Newman2024-05-031-6/+16
| | | | | | | * decrease group gap to 3 mins * pending style with layout animation * make pending state lighter
* add focus refresh + polling (#3846)Samuel Newman2024-05-031-0/+17
|
* [Clipclops] Header tweaks (#3839)Samuel Newman2024-05-031-0/+2
| | | | | * wrap text * add dividers to convo menu
* update date logic to account for timezones (#3840)Samuel Newman2024-05-031-4/+12
|
* Improve account switcher pending state (#3827)dan2024-05-022-8/+11
| | | | | | | | | * Protect against races * Reduce UI jank when switching accounts * Add pending state to selected account * Disable presses while pending
* [Clipclops] Message actions for native and web (#3807)Hailey2024-05-024-0/+433
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * haptic on long press * add animation to press and hold * eslint disable for now * adjust styles * dont trigger if animation is cancelled * organize * add a delete menu * reset scale automatically * message actions dialog cleanup center the trigger handle focus/unfocus better make triggers accessible weg dropdown menu add a wep specific wrapper decrease press delay add report button improve shrink logic use `self_end` instead of `margin: auto` rm extra `?` move `MessageItem` to `components` add delete button * rm some padding * update after merge * fix merge * web only types * fix crash * add an explanation * fix web types --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* rename "MessagesList" to "Messages" (#3826)Samuel Newman2024-05-021-1/+1
|
* [Session] Extract selectAccount out (#3812)dan2024-05-022-2/+5
|
* [Clipclops] Clop menu, leave clop, mute/unmute clop (#3804)Samuel Newman2024-05-024-12/+196
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * convo menu * memoize convomenu * add convoId to useChat + memoize value * leave convo * Create mute-conversation.ts * add mutes, remove changes to useChat and use chat.convo instead * add todo comments * leave convo confirm prompt * remove dependency on useChat and pass in props instead * show menu on long press * optimistic update * optimistic update leave + add error capture * don't `popToTop` when unnecessary --------- Co-authored-by: Hailey <me@haileyok.com>
* [Clipclops] Replace 🐴 with real icon (#3802)Samuel Newman2024-05-013-2/+11
| | | | | * replace 🐴 with paper plane icon * replace envelope with plus
* add header to empty chat list view (#3791)Samuel Newman2024-05-011-1/+1
|
* [Clipclops] 2 Clipped 2 Clopped (#3796)Eric Bailey2024-05-011-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add new pkg * copy queries over to new file * useConvoQuery * useListConvos * Use useListConvos * extract useConvoQuery * useGetConvoForMembers * Delete unused * exract useListConvos * Replace imports * Messages/List/index.tsx * extract getconvoformembers * MessageItem * delete chatLog and rename query.ts * Update import * Clipclop service (#3794) * Add Chat service * Better handle deletions * Rollback unneeded changes * Better insertion order * Use clipclops * don't show FAB if error * clean up imports * Update Convo service * Remove temp files --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* Memoize context value (#3786)dan2024-05-011-3/+10
|
* Performance improvements: structural sharing & moderation opts context (#3785)Paul Frazee2024-04-302-2/+2
| | | | | | | | | | | | | * Fix: correctly apply structural sharing to preferences object * Move moderation opts into a context * Fix import * Remove log * Pass userdid directly * Pass moderationPrefs directly