diff --git a/src/components/ShowMore.tsx b/src/components/ShowMore.tsx index b8bd0c5b27..bc903c5cc4 100644 --- a/src/components/ShowMore.tsx +++ b/src/components/ShowMore.tsx @@ -1,13 +1,18 @@ -import {useCallback} from 'react' -import {LayoutAnimation} from 'react-native' +import {useCallback, useMemo} from 'react' +import {LayoutAnimation, type TextStyle} from 'react-native' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' import {HITSLOP_10} from '#/lib/constants' -import {atoms as a} from '#/alf' -import {Button, ButtonText} from '#/components/Button' +import {atoms as a, flatten, type TextStyleProp,useTheme} from '#/alf' +import {Button} from '#/components/Button' +import {Text} from '#/components/Typography' -export function ShowMore({onPress: onPressProp}: {onPress: () => void}) { +export function ShowMore({ + onPress: onPressProp, + style, +}: TextStyleProp & {onPress: () => void}) { + const t = useTheme() const {_} = useLingui() const onPress = useCallback(() => { @@ -15,17 +20,36 @@ export function ShowMore({onPress: onPressProp}: {onPress: () => void}) { onPressProp() }, [onPressProp]) + const textStyle = useMemo(() => { + return flatten([a.leading_snug, a.text_sm, style]) as TextStyle & { + fontSize: number + lineHeight: number + } + }, [style]) + return ( ) } diff --git a/src/screens/PostThread/components/ThreadItemPost.tsx b/src/screens/PostThread/components/ThreadItemPost.tsx index 4dc31ce700..7ded08c30e 100644 --- a/src/screens/PostThread/components/ThreadItemPost.tsx +++ b/src/screens/PostThread/components/ThreadItemPost.tsx @@ -300,16 +300,20 @@ const ThreadItemPostInner = memo(function ThreadItemPostInner({ additionalCauses={additionalPostAlerts} /> {richText?.text ? ( - + <> + + {limitLines && ( + + )} + ) : undefined} - {limitLines && } {post.embed && ( {richText?.text ? ( - + <> - + {limitLines && ( + + )} + ) : undefined} - {limitLines && } {post.embed && ( + {limitLines && ( + + )} ) : undefined} - {limitLines && } {post.embed && ( {richText.text ? ( - + + {limitLines && ( + + )} ) : undefined} - {limitLines && } {post.embed ? ( {richText.text ? ( - + <> - + {limitLines && ( + + )} + ) : undefined} - {limitLines && } {postEmbed ? (