Skip to content

[Chatbot] - Support collapsible/expandable section groups in ChatbotConversationHistoryNav #864

Description

@its-mitesh-kumar

Chatbot Component Area

Layout (Chat Drawer, Header, Persona)

Describe the feature

When using ChatbotConversationHistoryNav with conversations passed as an object ({ "Pinned chats": [...], "Chats": [...] }), each group is rendered internally as a MenuGroup with a static label heading. There is no way for consumers to make individual section groups collapsible/expandable.
The component owns the section rendering internally — consumers cannot add a toggle icon to section headers, collapse/expand individual groups, or control the expanded/collapsed state.
We considered using PatternFly's ExpandableSection component, but since ChatbotConversationHistoryNav renders MenuGroup internally, there is no way to inject it without overriding.
As conversation history grows (e.g., adding a "Saved prompts" section alongside "Pinned chats" and "Chats"), collapsible groups become important for managing sidebar space.

Expected Data Structure

No response

Conversational Flow

  • Each section group header would have a chevron toggle icon

  • Clicking the header or chevron collapses/expands the group's conversation list

  • Collapsed state hides the MenuList children; the group label remains visible

  • Applies to all groups (pinned, unpinned, and any future groups like "Saved prompts")

Visuals & Mockups

S_.2026-07-05.at.12.51.13.PM.mov

Conversational Accessibility

  • The section header toggle should be keyboard accessible (focusable, activated with Enter/Space)

  • aria-expanded should reflect the current state of each group

  • Screen reader should announce the expanded/collapsed state change

  • Collapsed groups should hide content from both visual and assistive technology users

Validation

  • This request aligns with PatternFly AI/Chatbot design guidelines.

  • I have searched for existing chatbot-specific components.


Jira Issue: PF-4393

Activity

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

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions