Skip to content

Commit c7013e3

Browse files
committed
AccountDetails: Show status emoji, if set
1 parent 261341c commit c7013e3

File tree

1 file changed

+22
-3
lines changed

1 file changed

+22
-3
lines changed

src/account-info/AccountDetails.js

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ import React from 'react';
33
import type { Node } from 'react';
44
import { View } from 'react-native';
55

6+
import Emoji from '../emoji/Emoji';
7+
import { emojiTypeFromReactionType } from '../emoji/data';
68
import type { UserOrBot } from '../types';
79
import styles, { createStyleSheet } from '../styles';
810
import { useSelector } from '../react-redux';
@@ -21,6 +23,7 @@ const componentStyles = createStyleSheet({
2123
},
2224
statusWrapper: {
2325
justifyContent: 'center',
26+
alignItems: 'center',
2427
flexDirection: 'row',
2528
},
2629
presenceStatusIndicator: {
@@ -42,6 +45,9 @@ export default function AccountDetails(props: Props): Node {
4245

4346
const ownUser = useSelector(getOwnUser);
4447
const userStatusText = useSelector(state => getUserStatus(state, props.user.user_id).status_text);
48+
const userStatusEmoji = useSelector(
49+
state => getUserStatus(state, props.user.user_id).status_emoji,
50+
);
4551

4652
const isSelf = user.user_id === ownUser.user_id;
4753

@@ -70,9 +76,22 @@ export default function AccountDetails(props: Props): Node {
7076
/>
7177
<ZulipText style={[styles.largerText, styles.halfMarginRight]} text={user.full_name} />
7278
</View>
73-
{userStatusText !== null && (
74-
<ZulipText style={[styles.largerText, componentStyles.statusText]} text={userStatusText} />
75-
)}
79+
<View style={componentStyles.statusWrapper}>
80+
{userStatusEmoji && (
81+
<Emoji
82+
code={userStatusEmoji.emoji_code}
83+
type={emojiTypeFromReactionType(userStatusEmoji.reaction_type)}
84+
size={24}
85+
/>
86+
)}
87+
{userStatusEmoji && userStatusText !== null && <View style={{ width: 2 }} />}
88+
{userStatusText !== null && (
89+
<ZulipText
90+
style={[styles.largerText, componentStyles.statusText]}
91+
text={userStatusText}
92+
/>
93+
)}
94+
</View>
7695
{!isSelf && (
7796
<View>
7897
<ActivityText style={styles.largerText} user={user} />

0 commit comments

Comments
 (0)