From 7eb1444f2c82cd25a77445b82178b7299e8452c7 Mon Sep 17 00:00:00 2001 From: Hailey Date: Fri, 26 Apr 2024 22:31:07 -0700 Subject: remove precacheThreadPostProfiles (#3729) * remove `precacheThreadPostProfiles` * add `displayName` to `PreviewableUserAvatar` * memo * use `precacheProfile` * pass `profile` directly to `PreviewableUserAvatar` * update the `UserAvatar`'s props * remove feed cache * one more spot * rm unused queryClient * Don't call fn unnecessarily * Preload for display name too * try notification item * add to feeditem * and finally, precache for post threads * timestamp * Fix * onBeforePress --------- Co-authored-by: Dan Abramov --- src/components/moderation/PostHider.tsx | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) (limited to 'src/components/moderation/PostHider.tsx') diff --git a/src/components/moderation/PostHider.tsx b/src/components/moderation/PostHider.tsx index 464ee2077..05cb8464e 100644 --- a/src/components/moderation/PostHider.tsx +++ b/src/components/moderation/PostHider.tsx @@ -1,25 +1,27 @@ import React, {ComponentProps} from 'react' -import {StyleSheet, Pressable, View, ViewStyle, StyleProp} from 'react-native' -import {ModerationUI} from '@atproto/api' +import {Pressable, StyleProp, StyleSheet, View, ViewStyle} from 'react-native' +import {AppBskyActorDefs, ModerationUI} from '@atproto/api' +import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {Trans, msg} from '@lingui/macro' +import {useQueryClient} from '@tanstack/react-query' import {useModerationCauseDescription} from '#/lib/moderation/useModerationCauseDescription' import {addStyle} from 'lib/styles' - -import {useTheme, atoms as a} from '#/alf' +import {precacheProfile} from 'state/queries/profile' +// import {Link} from '#/components/Link' TODO this imposes some styles that screw things up +import {Link} from '#/view/com/util/Link' +import {atoms as a, useTheme} from '#/alf' import { ModerationDetailsDialog, useModerationDetailsDialogControl, } from '#/components/moderation/ModerationDetailsDialog' import {Text} from '#/components/Typography' -// import {Link} from '#/components/Link' TODO this imposes some styles that screw things up -import {Link} from '#/view/com/util/Link' interface Props extends ComponentProps { iconSize: number iconStyles: StyleProp modui: ModerationUI + profile: AppBskyActorDefs.ProfileViewBasic } export function PostHider({ @@ -30,8 +32,10 @@ export function PostHider({ children, iconSize, iconStyles, + profile, ...props }: Props) { + const queryClient = useQueryClient() const t = useTheme() const {_} = useLingui() const [override, setOverride] = React.useState(false) @@ -39,6 +43,10 @@ export function PostHider({ const blur = modui.blurs[0] const desc = useModerationCauseDescription(blur) + const onBeforePress = React.useCallback(() => { + precacheProfile(queryClient, profile) + }, [queryClient, profile]) + if (!blur) { return ( {children} -- cgit 1.4.1