about summary refs log tree commit diff
path: root/src/view/shell
Commit message (Collapse)AuthorAgeFilesLines
* `@atproto/api@next` integration (#7344)Eric Bailey2025-02-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Bump SDK * Use consistent type in profile query * Omit from constraint for profile shadow * Replace isRecord with isValidRecord in QuoteEmbed * Omit type from constraint for old ProfileCard * Omit type from constraint in profile queries where appropriate * Use correct type for update profile mutation * Conslidate and fix check for isValidRecord in Post.tsx * Replace isRecord with isValidRecord in PostThreadItem * Remove redundant cast in PostThreadFollowBtn * Ignore errors in DebugMod screen * Use matching type in ProfileFollows screen * Use matching type in ProfileFollowers screen * Migrate to isValidRecord in PostFeedItem * Use matching type if PostRepostedBy * Omit type from constraint in avatar props * Use matching types in NotificationFeedItem * Todo * Use isValidRecord in NotfyFeedItem * Improve MediaPreview types * Migrate another isValidRecord in NotificationFeedItem * Migrate to isValidView in queries/util * Migrate to isValidRecord in threadgate/util * Fix types in threadgates * Fix up types in starter-packs queries * Todo * Specify exact types in search-posts * Use internal type util to align types * Ditto last * Migrate postgate/index * Specify exact types in post-thread * Use correct type in post-quotes * FIX potential bug in post-thread * Use correct type in post-feed * Add correct type guards to notifications/feed * Migrate a guard in notifications/util * Migrate guard in Wizard/State * [@next] Profile handling, migrate `ProfileCard` (#7347) * Introduce new utils for profiles, migrate old ProfileCard * Rename, reorg * Add parseEmbed utils * Expand AnyProfileView to include chat profile view, update post shadow to reflect this * Cast for perf reasons * Tighten up types now that we have AnyProfileView * Add fastIsType util * Use `assertDid` Co-authored-by: Matthieu Sieben <matthieusieben@users.noreply.github.com> * Use util types * Comment * Use fastIsType where no validation was happening before * suggestions (#7382) * suggestions * Revert unneeded changes --------- Co-authored-by: Eric Bailey <git@esb.lol> * Use new util * Rename to dangerousIsType * Convert object shape * Use dangerous util * Use dangerous util * Use dangerous util, we can trust post records * Use dangerous util * Use AnyProfileVIew * Convert object shape * Clean up handling * Patch moderateProfile to accept known profile views, to discuss * Add AnyStarterPackView and related, implement in first usage * Remove validation, fix type, fix ref * Migrate over list-conversations * Clarify intent behind precacheProfile and its unstable query cache * Clean up unstable profile cache * Fix types during label creation in PwiOptOut (#7346) * Tighten types in queries/list * Chat: use correct profile views * Chat: fix log type check * Chat: construct lexically correct shape, even though it's only internal usage * Chat: use correct profile types * Chat: fix type check in logs * Starter: use correct profile types * Starter: use correct profile types * Starter: tighten types to match lex * Any profile type will work in blocked-and-muted * Use dangerous util * Use dangerousIsType * Update new ProfileCard to use AnyProfileView * Use dangerousIsType * Remove outdated todo * Use correct profile type * Use correct profile types * Tighten up types * Use dangerousIsType * Chat: more type fixes * Remove unused file * Add a few utils * Remove unused file * Ignore feedPost.__source * Clean up types, leave validation in critical path * Use dangerousIstype * Use ANyProfileView * Use isValidRecord * Use dangerousIsType * Fix types in ListCard * Fix FeedInterstitials types * Fix types in FeedCard * Fix types in dms ReportDialog * Fix types in SearchablePeopleList * Fix bad type in composer opts * Starter: ok these need to be loose too * Clarify docs Co-authored-by: Matthieu Sieben <matthieusieben@users.noreply.github.com> * Less code Co-authored-by: Matthieu Sieben <matthieusieben@users.noreply.github.com> * Use package exports Co-authored-by: Matthieu Sieben <matthieusieben@users.noreply.github.com> * Use package exports * Bump sdk, update $Typed imports * Format * Format * Fix weird TS error * Remove patch * Beter name * It's memo, can validate * Tighten up parseEmbed, dogfood * Bump sdk * Use asPredicate * Loosen types a bit * use asPredicate * Fix types * Use asPredicate * Use asPredicate * Use asPredicate * Clean up upsertProfile types * Use asPredicate * Use Un util * Fix types * Use new AnyProfileView * Use dangerousIsType * Use asPredicate * Use asPredicate * Add fallback content-type to pass typecheck * Clean up upsertProfile types * Align types * Use dangerousIsType * Use dangerousIsType * Use asPredicate * Align types * Convert findLast * Align types * Just ignore type errors and use findLast * Rename atproto -> bsky * Add validate util * Fix type error * Loosen types * Export post * rename atp bsky * Remove unused code * minor changes * Bump deps * Fix types * Tighten back up loose check * Tighten back up loose check * Fix small bug * Update comment * Revert change --------- Co-authored-by: Matthieu Sieben <matthieusieben@users.noreply.github.com> Co-authored-by: Matthieu Sieben <matthieu.sieben@gmail.com>
* Improved search language select (#7591)Samuel Newman2025-02-131-2/+5
| | | | | | | | | | | | | | | | | * replace with Menu * new icon for native * hackfix radix dropdown height * fix jsx * reduce language names with lots of variants to what firefox returns from Intl.DisplayNames * more language label simplifications * add collision padding * adjust spacing around and left align title
* Animate drawer menu on mobile web (#7711)Samuel Newman2025-02-121-12/+33
| | | | | | | * slide in/out drawer * increase width slightly * exponential easing function
* Better animations for dialogs, animate web composer (#7703)Samuel Newman2025-02-121-14/+19
| | | | | | | | | * animation atoms, use for modals * respect reduced motion * simplify animtions * fix atoms
* Takendown state + in-app takedown appeals (#7566)Samuel Newman2025-01-231-0/+4
| | | | | | | | | | | | | | | | | * takendown screen * add form, move button inline * expect type error * display error * disable submit if too long * move around all the ctas * typos, rm layoutanimation, fix link * use REASONAPPEAL
* Prevent Drawer gesture conflicting with Suggestions scroll (#7468)dan2025-01-171-0/+9
| | | | | * Extract BlockDrawerGeesture * Block drawer when scrolling interstitials
* Account quick switch on web (#7190)Samuel Newman2025-01-141-39/+224
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * account quick switch on web * dont show line if one account * switch account label text * add chevron hover state * swagged up hover state * add icons * tune scale anim and respect prefers-reduced-motion * fix reduced motion * fix placeholder position * move menu components out to separate component * Pipe through outer handlers to Button * Abstract lag in control.isOpen state * add profile info into empty space * fix tablet * Alternative * Revert "Alternative" This reverts commit 050ab9595ef3bbc32529ad6588e4690d37539fbe. * maybe fix flicker issue * just do 50ms when not active * delay other animations --------- Co-authored-by: Eric Bailey <git@esb.lol>
* A simpler fix for trending swipe issue (#7424)dan2025-01-102-11/+1
|
* Fix trending swipe gesture (#7417)dan2025-01-102-2/+18
|
* Fix Android composer padding: Director's Cut (#7412)Samuel Newman2025-01-092-15/+6
| | | | | | | * fix android 15 composer padding * while I'm here, alf some bits and pieces * add comments
* fix padding on android 15 (#7411)Samuel Newman2025-01-091-2/+7
|
* [ELI5] change sign in to create account (#6931)Samuel Newman2025-01-083-31/+33
| | | | | | | * change sign in to create account * alf buttons on native bottom bar * manually edit .po file
* Some metrics (#7294)Eric Bailey2024-12-271-1/+6
| | | | | | | * Add trending metrics * Progress guide events * Fix naming, improve existing events
* Fix Emoji picker focus (#7217)Eric Bailey2024-12-201-8/+12
| | | | | | | | | | | | | | | | | | | * Only portal the emoji picker where needed * Add optional portal prop to emoji picker * Use FocusScope to our advantage * Pare back, add guards, fix focus trap * Don't return focus to emoji button * Set DM input position on emoji insert * Let the caller determine next focus node --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Bump clamp max value (#7198)dan2024-12-191-1/+1
|
* Trending tracking (#7161)Eric Bailey2024-12-181-1/+8
| | | | | | | * Add hide to Explore * Event for show * Add hide events to each location
* Layout tweaks (#7150)Paul Frazee2024-12-171-1/+1
| | | | | | | | | * Reduce weight of right sidebar active feed * ProfileFeedHeader tweaks --------- Co-authored-by: Eric Bailey <git@esb.lol>
* Trending (Beta) (#7144)Eric Bailey2024-12-173-13/+167
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add WIP UIs for trending topics and suggested starterpacks * Disable SPs for now * Improve explore treatment a bit, add some polish to cards * Add tiny option in RightNav * Add persisted option to hide trending from sidebar * Add to settings, abstract state, not updating in tab * Fix up hide/show toggle state, WITH broadcast hacK * Clean up persisted code, add new setting * Add new interstitial to Discover * Exploration * First hack at mute words * Wire up interstitial and Explore page * Align components * Some skeleton UI * Handle service config, enablement, load states, update lex contract * Centralize mute word handling * Stale time to 30m * Cache enabled value for reloads, use real data for service config * Remove broadcast hack * Remove titleChild * Gate settings too * Update package, rm langs * Add feature gate * Only english during beta period * Hook up real data * Tweak config * Straight passthrough links * Hook up prod agent * Fix no-show logic * Up config query to 5 min * Remove old file * Remove comment * Remove stray flex_1 * Make trending setting global * Quick placeholder state * Limit # in sidebar, tweak spacing * Tweak gaps * Handle hide/show of sidebar * Simplify messages * Remove interstitial * Revert "Remove interstitial" This reverts commit 1358ad47fdf7e633749340c410933b508af46c10. * Only show interstitial on mobile * Fix gap * Add explore page recommendations * [topics] add topic screen (#7149) * add topic screen * decode * fix search query * decode * add server route * Fix potential bad destructure (undefined) --------- Co-authored-by: Paul Frazee <pfrazee@gmail.com> Co-authored-by: Dan Abramov <dan.abramov@gmail.com> Co-authored-by: Hailey <me@haileyok.com>
* [Experiment] Remove "Load Latest" button (#7120)dan2024-12-154-11/+65
| | | | | | | | | | | | | * Remove "show latest" behind the gate * Add HomeBadgeProvider * Update provider state from home feed tabs * Add Home badge to native * Add Home badge to mobile web * Add Home badge to desktop web
* [Layout] Bleed profile banner into safe area (#6967)Samuel Newman2024-12-121-1/+5
| | | | | | | | | | | | | | | | | | | | | | | * bleed profile banner into safe area (cherry picked from commit 50b3a4d0c6fd94b583ffe4efa65de35c81ae7f4e) * pointer events none when hidden (cherry picked from commit bae2c7b2dd6d7f858a98812196628308c0877755) * fix web (cherry picked from commit e3f9597170375f2903b6e567b963f008ec95aed1) * add status bar shadow * rm log * rm mini header * speed up animation * pass bool rather than int in light status bar
* fix: typo in filename list-converations (#7036)Renan Mav2024-12-103-3/+3
|
* Refactor sidebar (#6971)Eric Bailey2024-12-103-181/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Refactor RightNav (cherry picked from commit 96bb02acfd2d7452df18a0e7410e6a7169a583ed) * Better gutter handling * Clean up styles * Memoize breakpoints * Format * Comment * Loosen spacing, handle overflow, smaller text to match prod * Fix circular imports on native * Return 0 instead of undefined for easier calculations * Re-assign * Fix * Port over fix from subs/base * Space out right nav feeds, widen sidebar to match prod * Fix lost padding on home header * Fix perf by not actually linking to new URL * Remove underline on focus * Foramt --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Fix drawer swipe (#7007)dan2024-12-101-2/+26
| | | | | | | | | | | | | | | | | | | * Fix drawer swipe * Remove existing setDrawerSwipeDisabled management This is already pretty error-prone. And with tracking whether we're idle it's going to get more complicated. Let's pause and think. * Move setDrawerSwipeDisabled logic into Pager * Remove win/2 threshold It feels super arbitrary and breaks muscle memory. If the gesture is reliable, we shouldn't need it. * Maybe work around iOS freeze * Tweak gestures, add comments * Tune gestures
* [Layout] Base (#6907)Eric Bailey2024-12-054-111/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add common gutter styles as hook * Add computed scrollbar gutter CSS vars * Add new layout components * Replace layout components in settings screens * Remove old back button * Invert web border logic for easier migration * Clean up Slot API * Port over FF handling of scrollbar offset * Trade boilerplate for ease of use * Limit to one line * Allow two lines, fix wrapping * Fix alignment * sticky headers * set max with on header and center * [Layout] Notifications Header (#6910) * Replace notifications screen header * fix cropped indicator --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com> * Replace Hashtag header (#6928) * [Layout] ChatList header (#6929) * Replace ChatList header * update chat settings as well --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com> * Add web borders to Chat settings * Remove unused var * Move ChatList header outside center * Replace empty chat layout * fix breakpoints * [Layout] Scrollbar gutters (#6908) * Fix sidebar alignment * Make sure scrollbars don't hide * Gift left nav more space * Use stable one-edge, update logic in RightNav * Ope * Increase width * Reset * Add transform to sidebars * Remove bg in sidebars * Handle shifts in layout components * Replace scroll-removal handling * Make react-remove-scroll an explicit dep * Remove unused script * use correct scroll insets (#6950) * [Layout] Feeds headers (#6913) * Replace ViewHeader internals, duplicate old ViewHeader * Replace Feeds header * Replace SavedFeeds header * Visual alignment * Uglier but clear * Use old ViewHeader for SavedFeeds * use Layout.Center instead of Layout.Content * use left-aligned header for feed edit * delete unused old view header --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com> * [Layout] Every other screen (#6953) * attempt to fix double borders on every other screen * delete ListHeaderDesktop * delete `SimpleViewHeader` and fix screens (#6956) * Make Layout.Center not full height * Refactor List to use Layout.Center, remove built-in borders * Fix Home screen * Refactor PagerWithHeader to use Layout components * Replace components in ProfileFeed and ProfileList * Borders on Profile * Search screen replacements * use new header for profile subpage header (#6958) * Search AutocompleteResults * use new header for starter pack wizard (#6957) * Fix post thread * Enable borders by default * Moderation muted and blocked accounts * Fix scrollbar offset on Labeler * Remove ScrollView from Moderation * Remove ScrollView from Deactivated * Remove ScrollView from onboarding * Remove ScrollView from SignupQueued * Mark deprecations * fix lint * Fix double borders on profile load * Remove unneeded CenteredView from noty Feed * Remove double Center layout on Notifications screen * Remove double Center layout on ChatList screen * Handle scrollbar offset in chat * Use new atom for other scrollbar offsets * Remove borders from old views * Better doc * Remove temp migration prop * Fix new atom usage on native * Clean up Hashtag screen * Layout docs * Clarify usage in Pager * Handle nested offset contexts * Clean up Layout * fix feeds page * asymmetric header on native (#6969) * Reusable header const * Fix up home header * Add back button to convo * Add hitslop to header buttons * Comment * Better handling on native for new atom * Format * Fix nested flatlist on mod screens * Use react-remove-scroll-bar directly * Fix notification count overflow on web * Clarify doc --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* css color transitions on left nav (#6768)Samuel Newman2024-11-271-0/+1
|
* Lightbox status bar behaviour (#6637)Samuel Newman2024-11-261-32/+18
| | | | | | | * lightbox status bar * add hideTransitionAnimation="slide" * move navigation bar logic to util
* Fix leaking background (#6642)dan2024-11-221-1/+3
|
* Fix some overdraw (#6617)dan2024-11-211-6/+3
|
* Leverage jsx transform to remove unnecessary react imports and update eslint ↵Paul Coroneos2024-11-193-3/+1
| | | | | | | | | config (#6516) * update eslint config with jsx runtime * leverage jsx transform to remove unnecessary react imports and update eslint config * run yarn lint --fix to remove eslint disables related to react/prop-types that is now disabled
* Use compiler-safe Reanimated get/set APIs (#6391)dan2024-11-171-1/+1
| | | | | | | | | | | | | | | | | | | | | * Convert lightbox to get/set * Work around software-mansion/react-native-reanimated#6613 * Use get/set in more places * Port MainScrollProvider to get/set * Port more to get/set * Port composer to get/set * Remove unnecessary thread hops in composer * Port more things to get/set * Convert more to get/set, remove redundant runOnJS * Convert remaining cases to get/set
* manually implement drawertype logic (#6419)Samuel Newman2024-11-161-0/+1
|
* Slightly reduce rerenders in drawer (#6270)Samuel Newman2024-11-121-31/+38
| | | | | * slightly reduce renders in drawer * fix missing hook
* Increase bottom padding for mobile login/signup footer (#6254)Khuddite2024-11-121-1/+1
|
* Fix unscrollable body when returning to desktop mode from mobile mode with ↵JustSNguyen2024-11-111-2/+3
| | | | | | | | | | | navigation drawer open. (#6201) * fix: only lock body when drawer is opened and not in desktop mode * Reuse variable --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Fix non-home screen soft resetting when feed is selected from right nav (#6158)gpp-02024-11-081-1/+1
|
* Improve accessibility for navigation on web (#6120)Samuel Newman2024-11-054-69/+169
| | | | | | | | | * improve accessibility for bottom bar tabs * improve a11y for left nav * group main content into <main> * use flex_1 rather than absoluteFill
* Improve focus-visible outlines in navigation (#6061)Yaël Guilloux2024-11-011-1/+8
| | | | | | | | | | | * feat add focus_visible atom * feat use focus_visible atom in Button.tsx style * Tweak --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Sort imports (#6009)dan2024-10-291-3/+3
| | | | | * Mark import sort/order/style rules as error * npm run lint -- --fix
* Fix drawer icon alignment (#5991)Eric Bailey2024-10-281-0/+1
|
* drawer border (#5893)Samuel Newman2024-10-281-1/+3
|
* Refactor post meta to return PostView (#5645)dan2024-10-243-3/+0
|
* tweak hover state (#5892)Samuel Newman2024-10-211-109/+104
|
* Fix NavSignupCard on web (#5813)Eric Bailey2024-10-212-3/+3
|
* Logged out improvments (#5771)Samuel Newman2024-10-172-3/+6
| | | | | | | | | | | | | | | | | * fetch all accounts in one go * delete unused component * add safeareaview to logged out layout * add safe area insets to LoggedOut view * add safe area insets to the error boundary * sanitize displaynames/handles * use button for X * increase spacing
* Fix up drawer background (#5785)Eric Bailey2024-10-173-8/+27
|
* Unified 'Chats' in drawers into 'Chat' (#5790)Frudrax Cheng2024-10-171-2/+2
|
* Mark "Logo by ..." in RightNav translatable like it in Drawer (#5788)Takayuki KUSANO2024-10-171-14/+16
|
* Clean up drawer (#5761)Samuel Newman2024-10-163-346/+265
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * clean up drawer * add a lil bit of padding * Drawer nits (#5778) * Avi stuff * Rm SafeAreaView, not working on Android * Dividers and spacing * Fix count on android, ended up refactoring the whole MenuItem * Litttttle more space * Improve NavSignupCard * format nit --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com> --------- Co-authored-by: Eric Bailey <git@esb.lol>
* Remove top padding from shell, move down into individual screens (#5548)Samuel Newman2024-10-142-26/+17
|
* Move composer open shortcut to shell (#5723)Hailey2024-10-111-3/+7
| | | | | | | | | * move composer shortcut hook * put intent handler in same place * dont allow shortcuts if no session * revert change