Merge remote-tracking branch 'origin/main' into notification-follow-buttons

* origin/main:
  Fix video preview collapse (#10847)
  Put display name and handle on one line in invite dialog (#10824)
This commit is contained in:
Eric Bailey
2026-06-10 11:31:00 -05:00
2 changed files with 42 additions and 34 deletions
+1 -1
View File
@@ -154,7 +154,7 @@ export function ImageItem({
} }
return ( return (
<View style={[a.relative, a.aspect_square, {maxWidth}]}> <View style={[a.flex_grow, a.relative, a.aspect_square, {maxWidth}]}>
<Image <Image
key={thumbnail} key={thumbnail}
source={{uri: thumbnail}} source={{uri: thumbnail}}
+27 -19
View File
@@ -197,8 +197,7 @@ function GroupChatJoinDialogContent({code}: {code?: string}) {
return ( return (
<> <>
<ChainLinkBrokenIcon fill={t.palette.primary_500} size="3xl" /> <ChainLinkBrokenIcon fill={t.palette.primary_500} size="3xl" />
<Text <Text style={[a.text_center, a.text_lg, a.font_semi_bold]}>
style={[a.text_center, a.text_lg, a.font_semi_bold, t.atoms.text]}>
<Trans>This invite link is invalid</Trans> <Trans>This invite link is invalid</Trans>
</Text> </Text>
<Button <Button
@@ -278,7 +277,7 @@ function GroupChatJoinDialogContent({code}: {code?: string}) {
return ( return (
<> <>
<View style={[a.py_lg, a.align_center]}> <View style={[a.w_full, a.py_lg, a.align_center]}>
<AvatarBubbles <AvatarBubbles
profiles={[ profiles={[
joinLinkPreview.owner, joinLinkPreview.owner,
@@ -287,7 +286,7 @@ function GroupChatJoinDialogContent({code}: {code?: string}) {
self self
size={135} size={135}
/> />
<View style={[a.gap_sm, a.align_center, a.mt_lg]}> <View style={[a.w_full, a.gap_sm, a.align_center, a.mt_lg]}>
<View> <View>
<Text <Text
style={[ style={[
@@ -299,14 +298,12 @@ function GroupChatJoinDialogContent({code}: {code?: string}) {
]}> ]}>
<Trans>Group chat</Trans> <Trans>Group chat</Trans>
</Text> </Text>
<Text <Text style={[a.text_center, a.text_3xl, a.font_bold]}>
style={[a.text_center, a.text_3xl, a.font_bold, t.atoms.text]}>
{joinLinkPreview.name} {joinLinkPreview.name}
</Text> </Text>
</View> </View>
<View style={[a.flex_row, a.align_center]}> <View style={[a.flex_row, a.align_center]}>
<Text <Text style={[a.text_center, a.text_xs, a.leading_snug]}>
style={[a.text_center, a.text_xs, a.leading_snug, t.atoms.text]}>
<Trans comment="The number of active group chat members out of the total number allowed."> <Trans comment="The number of active group chat members out of the total number allowed.">
{joinLinkPreview.memberCount}/{joinLinkPreview.memberLimit}{' '} {joinLinkPreview.memberCount}/{joinLinkPreview.memberLimit}{' '}
members members
@@ -315,32 +312,40 @@ function GroupChatJoinDialogContent({code}: {code?: string}) {
<View style={[a.flex_row, a.ml_md]}> <View style={[a.flex_row, a.ml_md]}>
<PersonGroupIcon size="xs" style={[a.mr_xs, t.atoms.text]} /> <PersonGroupIcon size="xs" style={[a.mr_xs, t.atoms.text]} />
</View> </View>
<Text <Text style={[a.text_center, a.text_xs, a.leading_snug]}>
style={[a.text_center, a.text_xs, a.leading_snug, t.atoms.text]}>
{joinLinkPreview.joinRule === 'followedByOwner' {joinLinkPreview.joinRule === 'followedByOwner'
? l`Followers can join` ? l`Followers can join`
: l`Anyone can join`} : l`Anyone can join`}
</Text> </Text>
</View> </View>
<View>
<View <View
style={[a.flex_row, a.gap_xs, a.align_center, a.justify_center]}> style={[
a.px_2xl,
a.w_full,
a.flex_row,
a.gap_xs,
a.align_center,
a.justify_center,
]}>
<Text <Text
emoji emoji
style={[ style={[
a.mb_2xs, a.flex_shrink,
a.text_center, a.text_center,
a.text_sm, a.text_sm,
a.leading_snug, a.leading_snug,
a.font_semi_bold, a.font_semi_bold,
t.atoms.text, web({minWidth: 0}),
]}> ]}
numberOfLines={1}>
<Trans comment="The group chat creator, in the format 'By {displayName}'.">
By{' '} By{' '}
<InlineLinkText <InlineLinkText
label={`@${joinLinkPreview.owner.handle}`} label={`@${joinLinkPreview.owner.handle}`}
to={makeProfileLink(joinLinkPreview.owner)} to={makeProfileLink(joinLinkPreview.owner)}
style={[ style={[
a.mb_2xs, a.flex_shrink,
a.leading_snug,
a.text_sm, a.text_sm,
a.font_semi_bold, a.font_semi_bold,
t.atoms.text, t.atoms.text,
@@ -368,20 +373,23 @@ function GroupChatJoinDialogContent({code}: {code?: string}) {
), ),
)} )}
</InlineLinkText> </InlineLinkText>
</Trans>
</Text> </Text>
<ProfileBadges <ProfileBadges
profile={joinLinkPreview.owner} profile={joinLinkPreview.owner}
size="sm" size="sm"
style={{marginTop: -3}} style={{marginTop: -3}}
/> />
</View>
<Text <Text
style={[ style={[
a.flex_shrink,
a.text_center, a.text_center,
a.text_xs,
a.leading_snug, a.leading_snug,
a.text_sm,
t.atoms.text_contrast_high, t.atoms.text_contrast_high,
]}> web({minWidth: 0}),
]}
numberOfLines={1}>
{sanitizeHandle(joinLinkPreview.owner.handle, '@')} {sanitizeHandle(joinLinkPreview.owner.handle, '@')}
</Text> </Text>
</View> </View>