Skip to content

feat: add read-only configuration view for component sidebar#5246

Merged
forestileao merged 20 commits into
mainfrom
configuration-view-ux
Jun 10, 2026
Merged

feat: add read-only configuration view for component sidebar#5246
forestileao merged 20 commits into
mainfrom
configuration-view-ux

Conversation

@ropsii

@ropsii ropsii commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator

Replace the disabled-form overlay with a compact read-only layout, wire Edit mode entry from live view, preserve sidebar tab when switching nodes, and polish Docs tab and tab bar styling.

Replace the disabled-form overlay with a compact read-only layout, wire Edit mode entry from live view, preserve sidebar tab when switching nodes, and polish Docs tab and tab bar styling.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@superplanehq-integration

Copy link
Copy Markdown

👋 Commands for maintainers:

  • /sp start - Start an ephemeral machine (takes ~30s)
  • /sp stop - Stop a running machine (auto-executed on pr close)

@shiroyasha

shiroyasha commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator

I love that we are fixing this.

Comment thread web_src/src/ui/componentSidebar/SettingsTab.tsx
ropsii and others added 2 commits June 9, 2026 18:07
Restore mapper-driven component UI below ConfigurationView so webhook URLs, schedule info, and similar content remain visible in live/read-only sidebar mode.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Refactor display model builders and DocsTab sections to stay within complexity and max-params limits, and apply prettier formatting.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
ropsii and others added 3 commits June 9, 2026 19:02
Force Settings when opening the sidebar or selecting a node with a configuration warning in edit mode, preserve the active tab otherwise, and skip tab updates when re-clicking the same node.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Only show connected integration details when the node's saved integrationRef matches an installation; otherwise display not connected.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Build the read-only display model from the node's persisted integrationRef instead of edit-mode local state that auto-selects the first installation.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Comment thread web_src/src/ui/componentSidebar/SettingsTab.tsx
ropsii and others added 5 commits June 9, 2026 21:27
Do not mutate selectedIntegration while the sidebar is read-only, and still open Settings when re-clicking a node with a configuration warning in edit mode.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Format expression values before URL detection, expand object schema fields when values are missing, and show integration type alongside not-connected status.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Treat url field values as plain text when they fail URL validation, and guard link rendering so non-http(s) schemes are not clickable.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Return to the Latest tab when selecting a different node with the sidebar already open, unless edit mode or a configuration warning requires Settings.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 94f39e7. Configure here.

Comment thread web_src/src/ui/CanvasPage/index.tsx Outdated
ropsii and others added 3 commits June 9, 2026 22:39
Add display-layer tests so javascript: and other non-http(s) values never render as clickable anchors in the configuration view.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Keep the user's selected Settings or Docs tab when clicking another node
with the sidebar already open, instead of resetting to Runs.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
ropsii and others added 2 commits June 10, 2026 12:33
Use an explicit ready/error check with pending fallback instead of a
nested ternary when building read-only integration status rows.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@superplane-gh-integration-9000

Copy link
Copy Markdown

OSS Guard found dependency licenses that are not permitted for this project.

Project license (from repository): Apache-2.0

Permitted dependency licenses: MIT,Apache-2.0,BSD-2-Clause,BSD-3-Clause,ISC,0BSD,Unlicense,CC0-1.0,CC-BY-4.0,Zlib,MPL-2.0,OpenSSL,BlueOak-1.0.0

Reason: One or more dependencies use licenses that are not compatible with the project license.

osv-scanner report:

@csstools/color-helpers 5.1.0 (npm) - MIT-0
argparse 2.0.1 (npm) - Python-2.0
csv 3.3.5 (RubyGems) - Ruby, BSD-2-Clause
elkjs 0.10.0 (npm) - EPL-2.0
khroma 2.1.0 (npm) - UNKNOWN
posthog-js 1.368.2 (npm) - non-standard
stdlib 1.26.2 (Go) - UNKNOWN

Add approved exceptions in your repository's osv-scanner.toml.

Move node-click tab selection into helpers so handleNodeClick stays within
the repo-wide max-statements violation cap.

Signed-off-by: Petar Perovic <perovic.petar@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@superplane-gh-integration-9000

Copy link
Copy Markdown

OSS Guard found dependency licenses that are not permitted for this project.

Project license (from repository): Apache-2.0

Permitted dependency licenses: MIT,Apache-2.0,BSD-2-Clause,BSD-3-Clause,ISC,0BSD,Unlicense,CC0-1.0,CC-BY-4.0,Zlib,MPL-2.0,OpenSSL,BlueOak-1.0.0

Reason: One or more dependencies use licenses that are not compatible with the project license.

osv-scanner report:

@csstools/color-helpers 5.1.0 (npm) - MIT-0
argparse 2.0.1 (npm) - Python-2.0
csv 3.3.5 (RubyGems) - Ruby, BSD-2-Clause
elkjs 0.10.0 (npm) - EPL-2.0
khroma 2.1.0 (npm) - UNKNOWN
posthog-js 1.368.2 (npm) - non-standard
stdlib 1.26.2 (Go) - UNKNOWN

Add approved exceptions in your repository's osv-scanner.toml.

@forestileao

Copy link
Copy Markdown
Collaborator

👍

@forestileao forestileao merged commit 516cf3a into main Jun 10, 2026
7 of 8 checks passed
@forestileao forestileao deleted the configuration-view-ux branch June 10, 2026 13:16
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.

3 participants