Repository navigation
docs(examples): use the ChannelHeader Title slot in the Channel details recipe - #3373
Conversation
β¦ls recipe The recipe's header was rebuilt from the SDK's parts only to make the title a button. ChannelHeader now takes a Title component, so the recipe replaces just the title and keeps the SDK's subtitle, typing indicator, avatar and navigation buttons.
|
No actionable comments were generated in the recent review.
|
| Layer / File(s) | Summary |
|---|---|
Delegate header rendering examples/cookbook/src/recipes/panels/channel-details/ChannelHeaderWithDetails.tsx |
The recipe passes a custom title button to ChannelHeader. The button has an accessible label, reflects the panelβs open state, and toggles the panel. ChannelHeader replaces the recipeβs hand-built header elements. |
Estimated code review effort: 2 (Simple) | ~10 minutes
Change: Other
Possibly related PRs
- GetStream/stream-chat-react#3367: Adds the
ChannelHeadertitle prop and its title-props type, which this change uses. - GetStream/stream-chat-react#3342: Changes the default
ChannelHeaderSubtitletyping behavior, which the recipe now uses throughChannelHeader.
Merge Risk: 
Minimal Β· up to ffff8
-
The recipeβs title and details interaction remain aligned with the SDK header, with no identified issue blocking merge.
Pre-merge checks: 
5
-
Full details: Description check
-
Explanation
The description includes all required sections. It explains the goal, implementation, and UI behavior, and it documents the validation performed. The UI Changes section states that no screenshots are needed because the UI is unchanged.
Full details: Docstring Coverage
-
Explanation
No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 0 functions across 1 files.
-
Finishing Touches
-
Generate docstrings
-
- Commit to this branch
- Create a new PR
Generate unit tests (beta)
-
- Commit to this branch
- Create a new PR
-
- Autofix Β· Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
|
Size Change: -1.3 kB (-0.14%) Total Size: 904 kB π¦ View Changed
βΉοΈ View Unchanged
|
Codecov Reportβ
All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #3373 +/- ##
=======================================
Coverage 88.82% 88.82%
=======================================
Files 563 563
Lines 17159 17159
Branches 5255 5255
=======================================
Hits 15241 15241
Misses 1918 1918 β View full report in Codecov by Harness. π New features to boost your workflow:
|
|
π This PR is included in version 15.0.0-rc.4 π The release is available on: Your semantic-release bot π¦π |
|
π This PR is included in version 15.0.0 π The release is available on: Your semantic-release bot π¦π |
Ticket: https://linear.app/stream/issue/REACT-1442
π― Goal
Use the new
ChannelHeaderTitleslot (#3367) in the UI Cookbook's Channel details recipe, so the recipe matches its docs page.π Implementation details
The recipe rebuilt the whole channel header from the SDK's parts, only to make the channel's title a button that opens the details panel. It now passes that button as
Title:TitleThatOpensDetailsrenders the button, with the same aria-label,aria-expandedand classes as before.ChannelHeaderWithDetailsis<ChannelHeader Title={TitleThatOpensDetails} />, so the SDK draws the subtitle, the typing indicator, the avatar and the navigation buttons.The CSS is unchanged. The file matches the code sample on the docs page (GetStream/getstream.io#889).
π¨ UI Changes
None: the header looks and behaves as before. Checked in the cookbook at 1280Γ720; clicking the title opens and closes Channel details.
Summary by CodeRabbit