about summary refs log tree commit diff
path: root/src/lib
Commit message (Collapse)AuthorAgeFilesLines
* Add Emily to discover debug (#7101)dan2024-12-131-0/+1
|
* Remove the environment indirections (#7089)dan2024-12-134-16/+10
| | | | | * Use raw underlying globals for environment * Set dev EXPO_PUBLIC_ENV by exclusion
* Gate bitdrift integration (#7088)dan2024-12-132-6/+18
| | | | | | | | | * Move Statsig init call earlier * Gate Bitdrift init call * Remove IS_TEST env constant * Mock statsig
* [Notifications] Add a Mentions tab (#7044)dan2024-12-122-7/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Split out NotificationsTab * Remove unused route parameter * Refine the split between components * Hoist some logic out of NotificationFeed * Remove unused option * Add all|conversations to query, hardcode "all" * Add a Conversations tab * Rename to Mentions * Bump packages * Rename fields * Fix oopsie * Simplify header * Track active tab * Fix types * Separate logic for tabs * Better border for first unread * Highlight unread for all only * Fix spinner races * Fix fetchPage races * Fix bottom bar border being obscured by glimmer * Remember last tab within the session * One tab at a time * Fix TS * Handle all RQKEY usages * Nit
* configure the bitdrift Capture SDK (#6979)Snow Pettersen2024-12-121-0/+7
| | | | | | | | | | | | | | | * configure bitdrift Capture SDK * remove console log * use the new url * add patch to fix devtool interaction * update patches * fix patch * add BITDRIFT_API_KEY to .env.example
* Add useFormatCurrency hook (#6978)Eric Bailey2024-12-061-0/+302
|
* clean rn 0.76 upgrade (#6887)Hailey2024-12-062-3/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * package upgrades * upgrade system ui * update patches * rename patch * rm * use .set/.set * resolve yarnlock * fix accidentally removed package * fix use permissions hook * fix some type errors * type fixes * more tweaking * clean * Discard changes to src/screens/Onboarding/StepProfile/index.tsx * oops * fix splash * use ios/android in config * Fix tests * add back patch * add to rn patch * fullscreen? * Revert "add to rn patch" This reverts commit 4716d2c643a29fc77b871ca8555d8d78cb4ac427. * try this * test with revert * test * maybe this * fix config * Bump @react-native-picker/picker * Bump some packages * Rm unused * Update lockfile * Rename expo-notifications+0.29.8.patch.md to expo-notifications+0.29.10.patch.md * Update react-native+0.76.3.patch.md * Update react-native+0.76.3.patch.md * Inline splash configs Jumping around the file is annoying and makes it harder to understand how this is structured. * Start fixing Android splash * Downgrade compressor This version isn't building for me due to https://github.com/numandev1/react-native-compressor/issues/322. * Make Android splash empty for now * Work around a bug * Bump the compressor * Bump again * Include splash fixes * Try updating * No custom Android splash * Revert to using icons * welp * Fix sizes * Make sizing work * Bump size --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* [Layout] Base (#6907)Eric Bailey2024-12-051-31/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* Add link-click metrics (#6934)Paul Frazee2024-12-032-0/+14
| | | | | * Add link-click metrics * Fix conditional
* [Nicer Tabs] Fork TabBar, simplify Pager (#6762)dan2024-12-031-6/+0
| | | | | | | | | | | | | | | | | | | | | * Fork TabBar.web.tsx * Trim dead code from both forks * Remove onPageSelecting event It's difficult to tell what exactly it's supposed to represent, and in practice it's not really used aside from logging. Let's rip it out for now to keep other changes simpler. * Remove early onPageSelected call It was added to try to do some work eagerly when we're sure which way the scroll is snapping. This is not necessarily a good idea though. It schedules a potentially expensive re-render right during the deceleration animation, which is not great. Whatever we're optimizing there, we should optimize smarter (e.g. prewarm just the network call). The other thing it used to help with is triggering the pager header autoscroll earlier. But we're going to rewrite that part differently anyway so that's not relevant either. * Prune more dead code from the native version We'll have to revisit this when adding tablet support but for now I'd prefer to remove a codepath that is not being tested or ever run. * Use regular ScrollView on native The Draggable thing was needed for web-only behavior so we can drop it in the native fork.
* [Subs] Custom app icons (#6758)Samuel Newman2024-11-272-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * custom icons * rm default * clouds.jpg * use cross-platform fork * minor fixes for android * update dynamic icon lib * gate app icon settings behind discover debug dids * rename clouds * Bop it * Update default ios icon as well * Remove old icon * Update logo placement * update to latest expo-dynamic-app-icon * fix android icon sizes --------- Co-authored-by: Eric Bailey <git@esb.lol>
* Release 1.95 take2 (#6771)Paul Frazee2024-11-261-1/+1
| | | | | * Run intl extract * Update join count
* Revert "Pass referrer on native (with an opt out) (#6648)" (#6732)dan2024-11-251-23/+1
| | | This reverts commit ac5b2cf31f2bb45f1bf8a180705249d3cce8017d.
* Ensure react-native-keyboard-controller enabled state doesn't get ↵Samuel Newman2024-11-251-0/+110
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | overwritten (#6727) * revert to prev state instead of false * add dep array * use ref counting approach * patch keyboard controller to allow changing the enabled prop * remove state from patch * change patched prop name * remove Math.max check, log if < 0 * use noop provider * rm patch, use `useRef` * Style nits * Rm on web --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Pass referrer on native (with an opt out) (#6648)dan2024-11-221-1/+23
| | | | | | | | | | | | | | | | | * Pass referer on native * Add ChainLink3 * Add an opt out for sending utm * Remove noreferrer on links We do have <meta name="referrer" content="origin-when-cross-origin"> in HTML, should be sufficient. * Narrow down the condition slightly --------- Co-authored-by: Eric Bailey <git@esb.lol>
* Remove indirection, insert between slices (#6645)dan2024-11-221-1/+0
|
* Add gif support to web (#6433)Samuel Newman2024-11-222-0/+5
| | | | | | | | | | | | | * add gif support to web * rm set dimensions * rm effect from preview * rm log * rm use of {cause: error} * fix lint
* Leverage jsx transform to remove unnecessary react imports and update eslint ↵Paul Coroneos2024-11-193-3/+0
| | | | | | | | | 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
* Add useHandleRef as a lighter alternative for useAnimatedRef (#6500)dan2024-11-181-0/+39
|
* Use compiler-safe Reanimated get/set APIs (#6391)dan2024-11-173-58/+59
| | | | | | | | | | | | | | | | | | | | | * 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
* Release 1.94 (#6430)Paul Frazee2024-11-161-1/+1
| | | | | | | * Fix errors in hindi .po * Run intl extract * Update join count
* Email verification tweaks (date) (#6416)Hailey2024-11-161-2/+3
|
* Tweak email verification dialog (#6397)Hailey2024-11-151-2/+14
|
* Better error message (+ translations!) (#6349)Samuel Newman2024-11-151-4/+10
| | | | | * clean network errors for new common eerors * translate errors
* [Statsig] Remove client downsampling (#6153)Hailey2024-11-152-54/+18
|
* Add email verification prompts throughout the app (#6174)Hailey2024-11-121-0/+19
|
* [Lightbox] Always rely on Expo Image cache (#6189)dan2024-11-091-93/+0
| | | | | | | | | | | | | | | * Inline useImageAspectRatio * Switch AutoSizedImage to read dimensions from Expo Image cache * Include thumbnail dimensions in image data * Use dims from Expo Image cache in lightbox * Fix wiring so all thumbnails get dimensions * Fix type * Oops
* [Settings] Ungate, and remove old settings (#6144)Samuel Newman2024-11-081-14/+0
| | | | | | | | | | | | | | | | | | | * move export car dialog * move disableemail2fadialog * delete old settings screens * fix type error * Update Navigation.tsx * Delete AccountDropdownBtn.tsx * remove old change handle modal * delete add app paswords * forgot to actually delete the change handle modal
* fix prop names (#6130)Hailey2024-11-062-6/+6
|
* Fix thin red circle around Like button on iOS (#6123)khuddite2024-11-062-13/+9
| | | | | | | | | | | * remove animation UI from DOM tree when not animated * improve naming of vars * more var changes --------- Co-authored-by: Hailey <me@haileyok.com>
* use megabytes rather than mebibytes for video limit (#6117)Samuel Newman2024-11-051-1/+1
|
* Fix start value in youtube embed by removing "s" from url param (#6113)Lars Kappert2024-11-051-2/+5
|
* Unify dimensions cache between lightbox and feed (#6047)dan2024-11-041-21/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove useless memo * Use explicit values when useImageAspectRatio doesn't know It's not very good that you can't distingiush when we haven't loaded vs when we're certain. This shifts the burden of dealing with missing values to the caller. * Check cache early * Handle src change * Rewrite image-sizes.fetch to avoid mixing async styles * Make image-sizes LRU Code is copy paste from useImageDimensions.ts * Rm unused fields * Derive aspect on the fly * Factor useImageDimensions out of useImageAspectRatio * Move useImageDimensions into image-sizes * Make lightbox use the same cache * Wire up known dimensions to the lightbox * Handle division by zero in the hook * Use safe aspect for lightbox calculations
* Add dids for discover debug (#6063)Hailey2024-11-011-0/+8
| | | | | * add dids * keep is_internal
* Hook debugTopics to override X-Bsky-Topics (#6060)dan2024-11-011-1/+8
|
* [Statsig] Track threads (#6057)dan2024-11-011-0/+5
| | | | | * [Statsig] Send thread length * Split events
* Thread composer UI (#6050)dan2024-11-011-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Basic adding of posts * Switch active post on focus * Conditionally show plus button * Insert posts midthread * Track active/inactive post * Delete posts in a thread * Focus after deletion * Tweak empty post detection * Mix height for active only * Move toolbar with post on web * Fix footer positioning * Post All button * Fix reply to positioning * Improve memoization * Improve memoization for clearVideo * Remove unnecessary argument * Add some manual memoization to fix re-renders * Scroll to bottom on add new * Fix opacity on Android * Add backdrop * Fix videos * Check alt for video too * Clear pending publish on error * Fork alt message by type * Separate placeholder for next posts * Limit hitslop to avoid clashes
* Implement posting threads (#6049)dan2024-11-012-65/+166
| | | | | | | | | | | | | | | * Implement posting a thread Co-authored-by: Dan Abramov <dan.abramov@gmail.com> * Fix native build * Remove dependency on web crypto API * Fix unrelated TS error (wtf) --------- Co-authored-by: Mary <148872143+mary-ext@users.noreply.github.com>
* [Settings] Thread prefs revamp (#5772)Samuel Newman2024-10-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * thread preferences screen * minor tweaks * more spacing * replace gate with IS_INTERNAL * [Settings] Following feed prefs revamp (#5773) * gated new settings screen * Following feed prefs * Update src/screens/Settings/FollowingFeedPreferences.tsx Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * Update src/screens/Settings/FollowingFeedPreferences.tsx Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * replace pref following feed gate * Update src/screens/Settings/FollowingFeedPreferences.tsx Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * use "Experimental" as the header --------- Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * [Settings] External media prefs revamp (#5774) * gated new settings screen * external media prefs revamp * replace gate ext media embeds * Update src/screens/Settings/ExternalMediaPreferences.tsx Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * add imports for translation * alternate list style on native --------- Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * [Settings] Languages revamp (partial) (#5775) * language settings (lazy restyle) * replace gate * fix text determining flex space * [Settings] App passwords revamp (#5777) * rework app passwords screen * Apply surfdude's copy changes Thanks @surfdude29! Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * format * replace gate * use admonition for input error and animate --------- Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * [Settings] Change handle dialog (#5781) * new change handle dialog * animations native only * overflow hidden on togglebutton animation * add a low-contrast border * extract out copybutton * finish change handle dialog * invalidate query on success * web fixes * error message for rate limit exceeded * typo * em dash! Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * another em dash Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * set maxwidth of suffixtext * Copy tweak Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> --------- Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * [Settings] Notifs settings revamp (#5884) * rename, move, and restyle notif settings * bold "experimental:" --------- Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com>
* Sort imports (#6009)dan2024-10-2936-62/+71
| | | | | * Mark import sort/order/style rules as error * npm run lint -- --fix
* Settings revamp (#5745)Samuel Newman2024-10-292-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * start building storybook * add title * add some styles * try out new icons * more settings list component parts * make text do the spacing * clean up storybook * gated new settings screen * switch account * add current profile * use Layout.Screen * Layout.Header and Layout.Content * translate helpdesk text thanks @surfdude29! Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * add account settings * undo changes to export car dialog * privacy and security screen * Translate protect account stuff Thanks @surfdude29! Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * content and media settings * about settings * 2fa copy Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * a11y and appearance * use new components for appearance settings * redesign accessibility settings * Update ContentAndMediaSettings.tsx Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * add divider * remove a11y and appearance middleman screen * fix web settingslist styles * new SettingsList.Group component * explain how portal magic works * hide pwioptout in old location * Update Settings.tsx Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> * replace gate with `IS_INTERNAL` * add IS_INTERNAL to app-info.web * fix profile area growing * add close button to switch account --------- Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com>
* Refactor composer state for threads (#5945)dan2024-10-291-9/+14
| | | | | | | * Refactor composer state for threads * Remove unnecessary default case TS can see it's exhaustive.
* Release 1.93 (#5990)Paul Frazee2024-10-281-1/+1
| | | | | * Run intl:extract * Update joined_this_week
* Remove waterfalls from posting (#5931)dan2024-10-251-29/+36
| | | | | * Extract resolveRT, resolveReply * Parallelize waterfalls
* Make use of applyWrites when publishing posts (#5809)Mary2024-10-241-53/+66
| | | | | | | | | * make use of applywrites * Explicit $type --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Include hydrated responses for other records (#5646)dan2024-10-241-29/+29
| | | | | | | * Include hydrated responses for other records * Rename meta -> view This is actually all it is now.
* Refactor post meta to return PostView (#5645)dan2024-10-241-12/+3
|
* tweak downsample rate to 1% (#5836)Hailey2024-10-181-2/+2
| | | | Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com>
* Apply labelers and handle language for PWI home (#5816)Eric Bailey2024-10-171-4/+20
|
* Disable feed debug gate due to EME (#5815)Hailey2024-10-172-2/+3
|