Skip to content

Add collapsible interactive dialog demo with borderless and collapsed options#213

Open
krd311 wants to merge 8 commits into
masterfrom
kyledoliente_collapsible_sections
Open

Add collapsible interactive dialog demo with borderless and collapsed options#213
krd311 wants to merge 8 commits into
masterfrom
kyledoliente_collapsible_sections

Conversation

@krd311

@krd311 krd311 commented Jul 2, 2026

Copy link
Copy Markdown

Summary

Adds a /dialog collapsible slash command to the demo plugin that opens an Interactive Dialog showcasing collapsible sections — a new DialogElement type that groups child fields under an expand/collapse toggle. This serves as the reference/demo counterpart to the server + webapp changes that introduce the feature.

Ticket Link

https://mattermost.atlassian.net/browse/MM-69315

krd311 and others added 3 commits June 23, 2026 10:13
@krd311
krd311 requested review from Copilot and sbishel July 2, 2026 21:18
@krd311 krd311 self-assigned this Jul 2, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new /dialog collapsible demo path to the Mattermost demo plugin, showcasing the new collapsible Interactive Dialog element type (including nested sections, default-collapsed sections, and borderless sections). This complements the corresponding server/webapp feature work by providing a practical reference dialog.

Changes:

  • Added a new dialog sample (getDialogWithCollapsibleElements) demonstrating collapsible sections nested up to 3 levels, including Collapsed and Borderless variants.
  • Extended /dialog help text and autocomplete to include the new collapsible subcommand.
  • Wired the new subcommand into the /dialog command handler to open the new sample dialog.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
server/dialog_samples.go Adds a new dialog definition that demonstrates collapsible dialog sections and nested child fields.
server/command_hooks.go Adds the /dialog collapsible help/autocomplete entry and routes the new subcommand to open the collapsible demo dialog.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@coderabbitai

coderabbitai Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Important

Review skipped

Review was skipped as selected files did not have any reviewable changes.

💤 Files selected but had no reviewable changes (1)
  • server/server
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 90cd5064-9e22-4c7e-8f1a-3b9551e8d50c

📥 Commits

Reviewing files that changed from the base of the PR and between ada684a and e766963.

📒 Files selected for processing (1)
  • server/server

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

This change adds a new collapsible dialog demo. It extends the slash-command help text and autocomplete tree, adds a dispatcher case that opens the dialog via a new endpoint, and introduces a dialog factory function producing nested collapsible UI sections with sample form fields.

Changes

Collapsible Dialog Feature

Layer / File(s) Summary
Dialog sample with nested collapsible sections
server/dialog_samples.go
Adds the collapsible dialog sample comment and getDialogWithCollapsibleElements() with dialog metadata, introduction text, and nested collapsible form elements.
Command wiring for collapsible dialog
server/command_hooks.go
Adds /dialog collapsible help text, autocomplete registration, and the dispatcher branch that opens the new dialog sample through /dialog/3.

Estimated code review effort: 2 (Simple) | ~10 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the new collapsible interactive dialog demo and its collapsed/borderless options.
Description check ✅ Passed The description matches the changeset by describing the /dialog collapsible demo and its role in the feature.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch kyledoliente_collapsible_sections

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Copilot finished work on behalf of krd311 July 2, 2026 23:05
@krd311

krd311 commented Jul 7, 2026

Copy link
Copy Markdown
Author

/update-branch

@mattermost-build

Copy link
Copy Markdown
Contributor

Error trying to update the PR.
Please do it manually.

@krd311

krd311 commented Jul 7, 2026

Copy link
Copy Markdown
Author

/update-branch

@mattermost-build

Copy link
Copy Markdown
Contributor

Error trying to update the PR.
Please do it manually.

Copilot finished work on behalf of krd311 July 8, 2026 16:41
@krd311
krd311 requested review from a team and mgdelacroix and removed request for a team July 8, 2026 21:25
@krd311

krd311 commented Jul 8, 2026

Copy link
Copy Markdown
Author

Looks like I'm having an issue getting the build to pass due to the Elements, Collapsed, and Borderless fields I added to the model. Does anyone have any suggestions for this?

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants