diff options
author | dan <dan.abramov@gmail.com> | 2024-10-24 20:41:50 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-10-24 20:41:50 +0100 |
commit | e8a53dcea84afc3b313037dbaf059c68121eb9ab (patch) | |
tree | 43593f5bb5ab852b6c61244167d5ead31c8ec125 /src/view/com/composer | |
parent | fa4cca11fedb78b31b7b606eafa74ebc17435f24 (diff) | |
download | voidsky-e8a53dcea84afc3b313037dbaf059c68121eb9ab.tar.zst |
Refactor post meta to return PostView (#5645)
Diffstat (limited to 'src/view/com/composer')
-rw-r--r-- | src/view/com/composer/Composer.tsx | 6 | ||||
-rw-r--r-- | src/view/com/composer/ComposerReplyTo.tsx | 24 |
2 files changed, 8 insertions, 22 deletions
diff --git a/src/view/com/composer/Composer.tsx b/src/view/com/composer/Composer.tsx index 126addd1c..88052addc 100644 --- a/src/view/com/composer/Composer.tsx +++ b/src/view/com/composer/Composer.tsx @@ -129,7 +129,6 @@ export const ComposePost = ({ replyTo, onPost, quote: initQuote, - quoteCount: initQuoteCount, mention: initMention, openEmojiPicker, text: initText, @@ -425,13 +424,13 @@ export const ComposePost = ({ emitPostCreated() } setLangPrefs.savePostLanguageToHistory() - if (initQuote && initQuoteCount !== undefined) { + if (initQuote) { // We want to wait for the quote count to update before we call `onPost`, which will refetch data whenAppViewReady(agent, initQuote.uri, res => { const thread = res.data.thread if ( AppBskyFeedDefs.isThreadViewPost(thread) && - thread.post.quoteCount !== initQuoteCount + thread.post.quoteCount !== initQuote.quoteCount ) { onPost?.(postUri) return true @@ -463,7 +462,6 @@ export const ComposePost = ({ onPost, quote, initQuote, - initQuoteCount, replyTo, richtext.text, setLangPrefs, diff --git a/src/view/com/composer/ComposerReplyTo.tsx b/src/view/com/composer/ComposerReplyTo.tsx index 7f4bb85f2..5bd5abbc8 100644 --- a/src/view/com/composer/ComposerReplyTo.tsx +++ b/src/view/com/composer/ComposerReplyTo.tsx @@ -13,7 +13,7 @@ import {useLingui} from '@lingui/react' import {sanitizeDisplayName} from '#/lib/strings/display-names' import {sanitizeHandle} from '#/lib/strings/handles' import {ComposerOptsPostRef} from '#/state/shell/composer' -import {QuoteEmbed} from '#/view/com/util/post-embeds/QuoteEmbed' +import {MaybeQuoteEmbed} from '#/view/com/util/post-embeds/QuoteEmbed' import {Text} from '#/view/com/util/text/Text' import {PreviewableUserAvatar} from '#/view/com/util/UserAvatar' import {atoms as a, useTheme} from '#/alf' @@ -33,33 +33,21 @@ export function ComposerReplyTo({replyTo}: {replyTo: ComposerOptsPostRef}) { }) }, []) - const quote = React.useMemo(() => { + const quoteEmbed = React.useMemo(() => { if ( AppBskyEmbedRecord.isView(embed) && AppBskyEmbedRecord.isViewRecord(embed.record) && AppBskyFeedPost.isRecord(embed.record.value) ) { - // Not going to include the images right now - return { - author: embed.record.author, - cid: embed.record.cid, - uri: embed.record.uri, - indexedAt: embed.record.indexedAt, - text: embed.record.value.text, - } + return embed } else if ( AppBskyEmbedRecordWithMedia.isView(embed) && AppBskyEmbedRecord.isViewRecord(embed.record.record) && AppBskyFeedPost.isRecord(embed.record.record.value) ) { - return { - author: embed.record.record.author, - cid: embed.record.record.cid, - uri: embed.record.record.uri, - indexedAt: embed.record.record.indexedAt, - text: embed.record.record.value.text, - } + return embed.record } + return null }, [embed]) const images = React.useMemo(() => { @@ -110,7 +98,7 @@ export function ComposerReplyTo({replyTo}: {replyTo: ComposerOptsPostRef}) { <ComposerReplyToImages images={images} showFull={showFull} /> )} </View> - {showFull && quote && <QuoteEmbed quote={quote} />} + {showFull && quoteEmbed && <MaybeQuoteEmbed embed={quoteEmbed} />} </View> </Pressable> ) |