feat(dashboard): add expand/collapse all groups button#6743
feat(dashboard): add expand/collapse all groups button#6743CommanderStorm merged 4 commits intolouislam:masterfrom
Conversation
There was a problem hiding this comment.
Pull request overview
This PR adds an expand/collapse all groups button to the monitor list filter bar, allowing users to quickly toggle the visibility of all monitor groups at once. The feature includes visual improvements to spacing and padding for a more consistent layout.
Changes:
- Added expand/collapse all groups button that appears only when there are at least 2 groups with children
- Improved vertical spacing consistency in the filter bar when buttons wrap
- Removed left padding from monitor list column for consistent spacing
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| src/pages/Dashboard.vue | Removed left padding from monitor list column |
| src/lang/en.json | Added translations for expand/collapse all groups labels |
| src/icon.js | Imported folder and folder-open icons for the new button |
| src/components/MonitorListFilter.vue | Added collapse all button with spacing adjustments |
| src/components/MonitorList.vue | Implemented collapse/expand all logic with localStorage persistence |
|
The filters being in two rows is a bug and should not be like this. |
Thanks for sharing, I can try to rework the filters, but what are the Select button and the Circle button with the 3 horizontal lines for? |
|
That is the old UI, ignore that part. For this change, I think we need to consolidate the filters a bit more. Likely pulling that fix once you have found it to a different PR makes sense. |
|
Okay, I'll try to think about it and do that in another PR when everything is ready :) |
de02ff2 to
f273f09
Compare
| <MonitorListFilter | ||
| :filterState="filterState" | ||
| :allCollapsed="allGroupsCollapsed" | ||
| :hasGroups="groupMonitors.length >= 2" |
There was a problem hiding this comment.
is this a typo?
| :hasGroups="groupMonitors.length >= 2" | |
| :hasGroups="groupMonitors.length >= 1" |
There was a problem hiding this comment.
Not really, I wondered: is having a button to open a SINGLE group actually useful? I thought we wanted this functionality to work from minimum two groups (that have children)? But maybe that's a bad idea
There was a problem hiding this comment.
fair, there is already a button for this then.
| <button | ||
| v-if="hasGroups" | ||
| type="button" | ||
| class="btn btn-outline-normal btn-collapse-all" | ||
| :title="allCollapsed ? $t('Expand All Groups') : $t('Collapse All Groups')" | ||
| @click="$emit('toggle-collapse-all')" | ||
| > | ||
| <font-awesome-icon :icon="allCollapsed ? 'folder' : 'folder-open'" fixed-width /> | ||
| </button> |
There was a problem hiding this comment.
🤔 do you think we should hide this button on mobile?
I am open to both options.
CommanderStorm
left a comment
There was a problem hiding this comment.
I have left two comments.
Once those are answered, we can merge 👍🏻
I don't 100% think this fits into the rest of the UI, but I don't know how to do it better.
LGTM

Summary
In this pull request, the following changes are made:
Please follow this checklist to avoid unnecessary back and forth (click to expand)
I understand that I am responsible for and able to explain every line of code I submit.
Screenshots for Visual Changes
Feature before:
Feature after:
Padding before:
(Red = difference)
Padding after:
UPDOWN