Skip to content

fix: keep emoji intact in avatar initials - #3927

Merged
isekovanic merged 1 commit into
developfrom
fix/keep-emojis-intact-in-avatar-initials
Nov 4, 2026
Merged

isekovanic merged 1 commit into
developfrom
fix/keep-emojis-intact-in-avatar-initials

Conversation

@isekovanic

Copy link
Copy Markdown
Contributor

🎯 Goal

Closes #3922
Closes RN-507

Avatar initials took charAt(0) of each word, which splits emoji stored as surrogate pairs, so a name like 😀 Smiley rendered as �S.

🛠 Implementation details

Words that start with an emoji now keep the whole emoji, including skin tones, flags and ZWJ sequences (👍🏽, 🇺🇸, 👨‍👩‍👧). Hermes has no Intl.Segmenter, so we use explicit code point ranges and is capped at 32 code units.

🎨 UI Changes

Android
Before After

🧪 Testing

/

☑️ Checklist

  • I have signed the Stream CLA (required)
  • PR targets the develop branch
  • Documentation is updated
  • New code is tested in main example apps, including all possible scenarios
    • SampleApp iOS and Android
    • Expo iOS and Android

@Stream-SDK-Bot

Copy link
Copy Markdown
Contributor

SDK Size

title develop branch diff status
js_bundle_size 2037 KB 2038 KB +859 B 🟢
ai_components_size 163 KB 163 KB 0 B 🟢

@isekovanic isekovanic mentioned this pull request Nov 4, 2026
1 of 6 tasks
@isekovanic
isekovanic merged commit fbf71ae into develop Nov 4, 2026
13 checks passed
@isekovanic
isekovanic deleted the fix/keep-emojis-intact-in-avatar-initials branch November 4, 2026 08:41
isekovanic added a commit that referenced this pull request Nov 4, 2026
fix: keep emoji intact in avatar initials (#3927)
@stream-ci-bot

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 9.11.2 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Avatar initials show a broken character when a user name starts with an emoji

4 participants