diff options
author | Samuel Newman <mozzius@protonmail.com> | 2024-08-21 21:26:25 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-21 15:26:25 -0500 |
commit | 56ab5e177fa2b24d0e5d9d969aa37532b96128da (patch) | |
tree | 2fa3db0ef9e46474aac00d5a593c5e5d592da9e3 /src/view/com/post-thread/PostThreadItem.tsx | |
parent | ddb0b80017c2b5bc158b8ff9da222abd5a8bf025 (diff) | |
download | voidsky-56ab5e177fa2b24d0e5d9d969aa37532b96128da.tar.zst |
Show quote posts (#4865)
* show quote posts * fix filter * fix keyExtractor * move likedby and repostedby to new file structure * use modern list component * remove relative imports * update quotes count after quoting * call `onPost` after updating quote count * Revert "update quotes count after quoting" This reverts commit 1f1887730a210c57c1e5a0eb0f47c42c42cf1b4b. * implement * update like count in quotes list * only add `onPostReply` where needed * Filter quotes with detached embeds * Bump SDK * Don't show error for no results --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com> Co-authored-by: Hailey <me@haileyok.com> Co-authored-by: Eric Bailey <git@esb.lol>
Diffstat (limited to 'src/view/com/post-thread/PostThreadItem.tsx')
-rw-r--r-- | src/view/com/post-thread/PostThreadItem.tsx | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/src/view/com/post-thread/PostThreadItem.tsx b/src/view/com/post-thread/PostThreadItem.tsx index 0ff360143..26a5f2f03 100644 --- a/src/view/com/post-thread/PostThreadItem.tsx +++ b/src/view/com/post-thread/PostThreadItem.tsx @@ -199,6 +199,11 @@ let PostThreadItemLoaded = ({ return makeProfileLink(post.author, 'post', urip.rkey, 'reposted-by') }, [post.uri, post.author]) const repostsTitle = _(msg`Reposts of this post`) + const quotesHref = React.useMemo(() => { + const urip = new AtUri(post.uri) + return makeProfileLink(post.author, 'post', urip.rkey, 'quotes') + }, [post.uri, post.author]) + const quotesTitle = _(msg`Quotes of this post`) const translatorUrl = getTranslatorLink( record?.text || '', @@ -343,7 +348,9 @@ let PostThreadItemLoaded = ({ translatorUrl={translatorUrl} needsTranslation={needsTranslation} /> - {post.repostCount !== 0 || post.likeCount !== 0 ? ( + {post.repostCount !== 0 || + post.likeCount !== 0 || + post.quoteCount !== 0 ? ( // Show this section unless we're *sure* it has no engagement. <View style={[styles.expandedInfo, pal.border]}> {post.repostCount != null && post.repostCount !== 0 ? ( @@ -382,6 +389,26 @@ let PostThreadItemLoaded = ({ </Text> </Link> ) : null} + {post.quoteCount != null && post.quoteCount !== 0 ? ( + <Link + style={styles.expandedInfoItem} + href={quotesHref} + title={quotesTitle}> + <Text + testID="quoteCount-expanded" + type="lg" + style={pal.textLight}> + <Text type="xl-bold" style={pal.text}> + {formatCount(post.quoteCount)} + </Text>{' '} + <Plural + value={post.quoteCount} + one="quote" + other="quotes" + /> + </Text> + </Link> + ) : null} </View> ) : null} <View style={[s.pl10, s.pr10]}> @@ -391,6 +418,7 @@ let PostThreadItemLoaded = ({ record={record} richText={richText} onPressReply={onPressReply} + onPostReply={onPostReply} logContext="PostThreadItem" /> </View> |