about summary refs log tree commit diff
path: root/src/lib/hooks
Commit message (Collapse)AuthorAgeFilesLines
* Logger improvements (#7729)Eric Bailey2025-02-281-14/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove enablement * Refactor context and filtering * Fix imports, simplify transports config * Migrate usages of debug context * Re-org, add colors and grouping to console logging * Remove temp default context * Remove manual prefix * Move colorizing out of console transport body * Reduce reuse * Pass through context * Ensure bitdrift is enabled in dev * Enable Sentry on web only * Clean up types * Docs * Format * Update tests * Clean up tests * No positional args * Revert Sentry changes * Clean up context, use it, pass metadata through to Bitdrift * Fix up debugging * Clean up metadata before passing to Bitdrift * Correct transports * Reserve context prop on metadata and include in transports * Update tests
* tweak link handling (#7857)Hailey2025-02-271-1/+6
|
* Add plural formatting for months in narrow form (#7744)surfdude292025-02-241-1/+1
|
* [APP-1049] show label expiration in frontend (#7738)Eric Bailey2025-02-181-7/+20
| | | | | | | | | | | | | * Add support for label exp to LabelsOnMeDialog * Add exp to PostAlerts, align with LabelsOnMe UI * Bump weight * Improve translations * Expiry should round up * Add a little visual alignment hack
* Remove the environment indirections (#7089)dan2024-12-131-3/+1
| | | | | * Use raw underlying globals for environment * Set dev EXPO_PUBLIC_ENV by exclusion
* [Notifications] Add a Mentions tab (#7044)dan2024-12-121-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* 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-031-0/+10
| | | | | * Add link-click metrics * Fix conditional
* 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>
* Add useHandleRef as a lighter alternative for useAnimatedRef (#6500)dan2024-11-181-0/+39
|
* Use compiler-safe Reanimated get/set APIs (#6391)dan2024-11-171-9/+11
| | | | | | | | | | | | | | | | | | | | | * 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
* Email verification tweaks (date) (#6416)Hailey2024-11-161-2/+3
|
* Tweak email verification dialog (#6397)Hailey2024-11-151-2/+14
|
* Add email verification prompts throughout the app (#6174)Hailey2024-11-121-0/+19
|
* [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
* Sort imports (#6009)dan2024-10-2919-30/+37
| | | | | * Mark import sort/order/style rules as error * npm run lint -- --fix
* Present in-app browser as sheet (#5718)Samuel Newman2024-10-111-0/+54
| | | | | | | * use page sheet presentation * move to its own file rather than sitting in prefs * whoops, missed one
* Move intent handler to a child of `InnerApp` (#5695)Hailey2024-10-111-1/+10
|
* Move Dialogs to Radix (#5648)Samuel Newman2024-10-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Use Redix FocusTrap (#5638) * Use Redix FocusTrap * force resolutions on radix libs * add focus guards * use @radix-ui/dismissable-layer for escape handling * fix banner menu keypress by using `Pressable` * add menu in dialog example to storybook --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com> * use DismissableLayer/FocusScope for composer * fix storybook dialog * thread Portal through Prompt and avatar/banner * fix dialog style regression * remove tamagui --------- Co-authored-by: Eric Bailey <git@esb.lol>
* [Video] Add dimension info to share intent (#5639)Hailey2024-10-071-1/+2
|
* Remove Segment (#5518)Hailey2024-09-272-17/+12
|
* [Share Extension] Move away from deprecated API, implement JS side of things ↵Hailey2024-09-261-6/+18
| | | | (#5509)
* Milly tweaks (#5365)Eric Bailey2024-09-161-4/+0
| | | | Co-authored-by: Hailey <me@haileyok.com>
* WIPEric Bailey2024-09-111-1/+5
|
* Add intent for verifying email (#5120)Hailey2024-09-071-2/+32
|
* [Video] Add disable autoplay for native, more tweaking (#5178)Hailey2024-09-061-12/+15
|
* Localize dates, counts (#5027)Eric Bailey2024-08-292-75/+278
| | | | | | | | | | | | | | | | | | | | | | | * refactor: consistent localized formatting * refactor: localized date time * refactor: localize relative time with strings * chore: fix typo from copy-paste * Clean up useTimeAgo * Remove old ago * Const * Reuse * Prettier --------- Co-authored-by: Mary <git@mary.my.id>
* Force at least one item to always be initially rendered (#5029)Hailey2024-08-291-1/+6
|
* Profile screen performance tweak - Adjust initial num to render based on ↵Hailey2024-08-291-7/+15
| | | | header height (#5005)
* Fix fixed footer experiment (#4969)dan2024-08-221-27/+18
| | | | | | | | | | | | | | | | | * Split minimal shell mode into headerMode and footerMode For now, we'll always write them in sync. When we read them, we'll use headerMode as source of truth. This will let us keep footerMode independent in a future commit. * Remove fixed_bottom_bar special cases during calculation This isn't the right time to determine special behavior. Instead we'll adjust footerMode itself conditionally on the gate. * Copy-paste setMode into MainScrollProvider This lets us fork the implementation later just for this case. * Gate footer adjustment in MainScrollProvider This is the final piece. Normal calls to setMode() keep setting both header and footer, but MainScrollProvider adjusts the footer conditionally.
* Add `list hidden` screen (#4958)Hailey2024-08-201-0/+23
| | | | | Co-authored-by: Hailey <me@haileyok.com> Co-authored-by: Eric Bailey <git@esb.lol>
* [Experiment] Always show bottom bar (#4946)dan2024-08-161-0/+18
|
* useDedupe callback (#4855)GSMT2024-07-301-2/+2
|
* Make all referrer info sync (#4782)Hailey2024-07-121-9/+8
|
* referrers for all platforms (#4514)Hailey2024-07-111-1/+14
|
* Video compression in composer (#4638)Samuel Newman2024-07-052-0/+37
| | | | | Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com> Co-authored-by: Hailey <me@haileyok.com>
* use granular permission of for media perm request (#4609)Hailey2024-06-241-1/+3
|
* Starter Packs (#4332)Hailey2024-06-212-0/+16
| | | | | | | Co-authored-by: Dan Abramov <dan.abramov@gmail.com> Co-authored-by: Paul Frazee <pfrazee@gmail.com> Co-authored-by: Eric Bailey <git@esb.lol> Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* Force callers of `getTimeAgo` to pass in the value for "now" (#4560)Eric Bailey2024-06-181-13/+4
| | | | | | | * Remove icky hook for now * Force callers of getTimeAgo to pass in the 'now' value * Update usage in Newskie dialog
* Add `useGetTimeAgo` and utils (#4556)Eric Bailey2024-06-182-0/+197
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* Move feeds screen into common navigator, handle usages (#4365)Eric Bailey2024-06-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* Fix (#4430): Use separate hooks for shell mode animated styles (#4451)Francesco Lodovici2024-06-101-14/+27
| | | | | | | | | * Fix (#4430): Use separate hooks for shell mode animated styles * Consolidate in one file --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Bump more Expo libs (#4251)dan2024-05-291-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Bump more Expo libs * Use legacy camera API * fix `expo-notifications` patch * bump `menu` * change patch name * patch reanimated * Revert "patch reanimated" This reverts commit dad822d8ea04c71a609784114d60f2e67b78290b. * Use nightly reanimated * Revert "Use nightly reanimated" This reverts commit 6687c7182883feb889cbf2c67dd14890e06bc501. * Revert "Revert "patch reanimated"" This reverts commit c30abd6732f559ca04dc59698411e1058800d63e. --------- Co-authored-by: Hailey <me@haileyok.com>
* Upgrade to Expo 51 and React Native 0.74 (#3980)Hailey2024-05-291-56/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * upgrade packages * remove `expo-image-picker` patch * remove old expo-updates patch * rename rn patch * downgrade crop picker * bump `ExpoGifView` `SDWebImage` version * apply config changes * update build docs for apple silicon * update build docs for apple silicon * update expo-updates patch * add back patch readme * bump `expo-dev-client` * bump `babel-preset` * update `babel.config.js` * update `react-native-paste-input` patch * remove old ota updates hook * update types * update types * downgrade pager-view * update animated ref type * fix web-only type * update `react-native-bottom-sheet` `BottomSheetTextInput` * add `expo-application` to jest mocks * remove reanimated patch * update notifications patch * update reanimated path * fix import * update yarn.lock * use `ItemT` instead of `any` * expo bump * Revert logic change, fix types * Fix JSON file --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* [🐴] update convo list from message bus (#4189)Samuel Newman2024-05-241-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | * update convo list from message bus * don't increase unread count if you're the sender * add refetch interval back * Fix deleted message state copy * only enable if `hasSession` * Fix logged out handling * increase refetch interval to 60s * request 10s interval when message screen active * use useAppState hook for convo resume/background * Combine forces * fix useFocusEffect logic --------- Co-authored-by: Eric Bailey <git@esb.lol>
* [🐴] Reset screen when pressing a DM notification while already in the ↵Hailey2024-05-181-4/+26
| | | | | | | conversation screen (#4091) * add a small comment * reset if current screen
* Disable badge incrementing for DMs (#4088)Hailey2024-05-171-9/+6
| | | | | | | | | | | * disable badge increments for dms * revert decrementing in js for dms * reset badge on read notifications * remove some other code * prevent duplicate notification events