From f00a65ced00e33afe2248daca6240ec2a57afa70 Mon Sep 17 00:00:00 2001 From: jaeone94 <89377375+jaeone94@users.noreply.github.com> Date: Thu, 5 Mar 2026 14:41:15 +0900 Subject: [PATCH] feat: add collapse/expand all toggle to right panel tabs (#9333) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Summary Adds a collapse/expand all toggle button to all parameter and error tabs in the right side panel, letting users quickly collapse or expand all accordion sections at once. ## Changes - **New component**: `CollapseToggleButton.vue` — a reusable icon button (list-collapse / list-tree icon) with tooltip, bound via `v-model` - **Error tab**: Toggle collapses/expands all error groups; per-group state is now managed through `isSectionCollapsed` / `setSectionCollapsed` helpers - **Nodes tab** (`TabNodes.vue`): Per-node `collapseMap`; toggle overrides per-section state; defaults to collapsed (nodes tab default was already collapsed) - **Normal inputs tab** (`TabNormalInputs.vue`): Per-node `collapseMap` + `advancedCollapsed`; toggle covers both normal and advanced sections; defaults to collapsed when multiple nodes selected - **Subgraph inputs tab** (`TabSubgraphInputs.vue`): Toggle covers both main and advanced inputs sections - **Global parameters tab** (`TabGlobalParameters.vue`): Toggle bound to single `SectionWidgets` - **i18n**: Added `g.collapseAll` and `g.expandAll` keys ## Review Focus - `isAllCollapsed` getter in each tab: reads from the same per-section state so the toggle accurately reflects current state rather than being independently tracked - `TabNormalInputs`: multi-node selection default collapse behaviour is preserved through `isSectionCollapsed` fallback logic ## Screenshots image ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-9333-feat-add-collapse-expand-all-toggle-to-right-panel-tabs-3176d73d36508123ba22d6e81983bb1b) by [Unito](https://www.unito.io) --- .../rightSidePanel/errors/TabErrors.vue | 64 +++++++++++++------ .../layout/CollapseToggleButton.vue | 52 +++++++++++++++ .../parameters/TabGlobalParameters.vue | 12 +++- .../rightSidePanel/parameters/TabNodes.vue | 50 ++++++++++++++- .../parameters/TabNormalInputs.vue | 63 ++++++++++++++++-- .../parameters/TabSubgraphInputs.vue | 31 ++++++++- src/locales/en/main.json | 4 +- .../components/form/FormSearchInput.vue | 2 +- 8 files changed, 247 insertions(+), 31 deletions(-) create mode 100644 src/components/rightSidePanel/layout/CollapseToggleButton.vue diff --git a/src/components/rightSidePanel/errors/TabErrors.vue b/src/components/rightSidePanel/errors/TabErrors.vue index 5043efe04d..cfe1df4611 100644 --- a/src/components/rightSidePanel/errors/TabErrors.vue +++ b/src/components/rightSidePanel/errors/TabErrors.vue @@ -1,38 +1,43 @@