Cleanup
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
import {memo,useCallback, useMemo} from 'react'
|
import {memo, useCallback, useMemo} from 'react'
|
||||||
import {type GestureResponderEvent, Text as RNText, View} from 'react-native'
|
import {type GestureResponderEvent, Text as RNText, View} from 'react-native'
|
||||||
import {
|
import {
|
||||||
type AppBskyFeedDefs,
|
type AppBskyFeedDefs,
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import React, {memo, useMemo} from 'react'
|
import {memo, type ReactNode, useCallback, useMemo, useState} from 'react'
|
||||||
import {View} from 'react-native'
|
import {View} from 'react-native'
|
||||||
import {
|
import {
|
||||||
type AppBskyFeedDefs,
|
type AppBskyFeedDefs,
|
||||||
@@ -123,7 +123,7 @@ const ThreadItemPostOuterWrapper = memo(function ThreadItemPostOuterWrapper({
|
|||||||
overrides,
|
overrides,
|
||||||
children,
|
children,
|
||||||
}: Pick<ThreadItemPostProps, 'item' | 'overrides'> & {
|
}: Pick<ThreadItemPostProps, 'item' | 'overrides'> & {
|
||||||
children: React.ReactNode
|
children: ReactNode
|
||||||
}) {
|
}) {
|
||||||
const t = useTheme()
|
const t = useTheme()
|
||||||
const showTopBorder =
|
const showTopBorder =
|
||||||
@@ -185,7 +185,7 @@ const ThreadItemPostInner = memo(function ThreadItemPostInner({
|
|||||||
threadgateRecord,
|
threadgateRecord,
|
||||||
}: ThreadItemPostProps & {
|
}: ThreadItemPostProps & {
|
||||||
postShadow: Shadow<AppBskyFeedDefs.PostView>
|
postShadow: Shadow<AppBskyFeedDefs.PostView>
|
||||||
}): React.ReactNode {
|
}) {
|
||||||
const t = useTheme()
|
const t = useTheme()
|
||||||
const pal = usePalette('default')
|
const pal = usePalette('default')
|
||||||
const {_} = useLingui()
|
const {_} = useLingui()
|
||||||
@@ -203,18 +203,18 @@ const ThreadItemPostInner = memo(function ThreadItemPostInner({
|
|||||||
}),
|
}),
|
||||||
[record],
|
[record],
|
||||||
)
|
)
|
||||||
const [limitLines, setLimitLines] = React.useState(
|
const [limitLines, setLimitLines] = useState(
|
||||||
() => countLines(richText?.text) >= MAX_POST_LINES,
|
() => countLines(richText?.text) >= MAX_POST_LINES,
|
||||||
)
|
)
|
||||||
const threadRootUri = record.reply?.root?.uri || post.uri
|
const threadRootUri = record.reply?.root?.uri || post.uri
|
||||||
const postHref = React.useMemo(() => {
|
const postHref = useMemo(() => {
|
||||||
const urip = new AtUri(post.uri)
|
const urip = new AtUri(post.uri)
|
||||||
return makeProfileLink(post.author, 'post', urip.rkey)
|
return makeProfileLink(post.author, 'post', urip.rkey)
|
||||||
}, [post.uri, post.author])
|
}, [post.uri, post.author])
|
||||||
const threadgateHiddenReplies = useMergedThreadgateHiddenReplies({
|
const threadgateHiddenReplies = useMergedThreadgateHiddenReplies({
|
||||||
threadgateRecord,
|
threadgateRecord,
|
||||||
})
|
})
|
||||||
const additionalPostAlerts: AppModerationCause[] = React.useMemo(() => {
|
const additionalPostAlerts: AppModerationCause[] = useMemo(() => {
|
||||||
const isPostHiddenByThreadgate = threadgateHiddenReplies.has(post.uri)
|
const isPostHiddenByThreadgate = threadgateHiddenReplies.has(post.uri)
|
||||||
const isControlledByViewer =
|
const isControlledByViewer =
|
||||||
new AtUri(threadRootUri).host === currentAccount?.did
|
new AtUri(threadRootUri).host === currentAccount?.did
|
||||||
@@ -229,7 +229,7 @@ const ThreadItemPostInner = memo(function ThreadItemPostInner({
|
|||||||
: []
|
: []
|
||||||
}, [post, currentAccount?.did, threadgateHiddenReplies, threadRootUri])
|
}, [post, currentAccount?.did, threadgateHiddenReplies, threadRootUri])
|
||||||
|
|
||||||
const onPressReply = React.useCallback(() => {
|
const onPressReply = useCallback(() => {
|
||||||
openComposer({
|
openComposer({
|
||||||
replyTo: {
|
replyTo: {
|
||||||
uri: post.uri,
|
uri: post.uri,
|
||||||
@@ -243,7 +243,7 @@ const ThreadItemPostInner = memo(function ThreadItemPostInner({
|
|||||||
})
|
})
|
||||||
}, [openComposer, post, record, onPostSuccess, moderation])
|
}, [openComposer, post, record, onPostSuccess, moderation])
|
||||||
|
|
||||||
const onPressShowMore = React.useCallback(() => {
|
const onPressShowMore = useCallback(() => {
|
||||||
setLimitLines(false)
|
setLimitLines(false)
|
||||||
}, [setLimitLines])
|
}, [setLimitLines])
|
||||||
|
|
||||||
@@ -346,7 +346,7 @@ const ThreadItemPostInner = memo(function ThreadItemPostInner({
|
|||||||
)
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
function SubtleHover({children}: {children: React.ReactNode}) {
|
function SubtleHover({children}: {children: ReactNode}) {
|
||||||
const {
|
const {
|
||||||
state: hover,
|
state: hover,
|
||||||
onIn: onHoverIn,
|
onIn: onHoverIn,
|
||||||
|
|||||||
Reference in New Issue
Block a user