Commit d313317
committed
chore(release): 14.0.0-beta.6 [skip ci]
## [14.0.0-beta.6](v14.0.0-beta.5...v14.0.0-beta.6) (2026-04-03)
### ⚠ BREAKING CHANGES
* for existing code but changes the accepted values.
### `getGroupChannelDisplayInfo` return value changed
The utility function `getGroupChannelDisplayInfo` (from
`src/components/ChannelListItem/utils.tsx`) no longer returns
`overflowCount` in its result object.
### `AvatarProps.size` type widened to accept arbitrary strings
The `size` prop on `AvatarProps` changed from the union `'2xl' | 'xl' |
'lg' | 'md' | 'sm' | 'xs' | null` to `'2xl' | 'xl' | 'lg' | 'md' | 'sm'
| 'xs' | (string & {}) | null`. This allows passing custom size strings
while preserving autocomplete for the known values.
### `GroupAvatarProps.size` type widened to accept arbitrary strings
The `size` prop on `GroupAvatarProps` changed from `'2xl' | 'xl' | 'lg'
| null` to `'2xl' | 'xl' | 'lg' | (string & {}) | null`. This allows
passing custom size strings while preserving autocomplete for the known
values.
### New `capLimit` prop on `AvatarStack`
A new optional `capLimit` prop (type `number`, default `3`) controls the
maximum number of avatars rendered before overflow. When `displayInfo`
has more entries than `capLimit`, only the first `capLimit` items are
shown and a "+N" badge displays the remainder.
### `GroupAvatarMember` type gains optional `id` field
The `GroupAvatarMember` type now includes an optional `id?: string`
field. When present, it is used as the React `key` for rendered avatars
instead of the fallback `${userName}-${imageUrl}-${index}` pattern.
## Behavioral Changes
### `ChannelAvatar` always renders via `GroupAvatar` internally
Previously, `ChannelAvatar` conditionally chose between `<Avatar>` (for
0–1 members) and `<GroupAvatar>` (for 2+ members). It now always
delegates to `<GroupAvatar>`, which itself renders a single `<Avatar>`
when fewer than 2 members are present. The visual output is unchanged,
but the component tree structure differs.
### `GroupAvatar` auto-caps displayed members at 4 (or 2 with overflow)
Previously, callers controlled how many members to display and the
overflow count. Now `GroupAvatar` internally slices `displayMembers`:
- **4 or fewer members:** all are rendered, no badge.
- **More than 4 members:** only the first 2 are rendered, with a "+N"
badge showing the count of remaining members.
### `AvatarStack` auto-caps displayed items (default: 3, configurable
via `capLimit`)
Previously, callers controlled how many items to display and the
overflow count. Now `AvatarStack` internally slices `displayInfo` based
on the `capLimit` prop (default `3`):
- **`capLimit` or fewer items:** all are rendered, no badge.
- **More than `capLimit` items:** only the first `capLimit` are
rendered, with a "+N" badge showing the count of remaining items.
### `TypingIndicator` no longer manually slices typing users
The `TypingIndicator` component previously sliced the list of typing
users to a maximum of 3 before passing to `AvatarStack`. It now passes
all typing users, relying on `AvatarStack`'s internal capping (also at
3). The net visual result is unchanged.
### chore
* adjustmens to Avatar, GroupAvatar and ChannelAvatar ([#3087](#3087)) ([49d576e](49d576e))
### Bug Fixes
* **examples:** clean up tutorial examples for v14 ([#3089](#3089)) ([6239895](6239895))
* **examples:** enable async voice recording preview in thread composer ([#3092](#3092)) ([6c7cd42](6c7cd42))
* **examples:** fix resize handle alignment and thread border gap in RTL ([#3091](#3091)) ([2f060ae](2f060ae))
* **Icons, RTL:** update icon catalog, RTL layout fixes, dark mode & thread voice recording ([#3090](#3090)) ([a4b1c26](a4b1c26)), closes [#3080](#3080)1 parent 6c7cd42 commit d313317
1 file changed
+85
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
1 | 86 | | |
2 | 87 | | |
3 | 88 | | |
| |||
0 commit comments