Skip to content

feat: Multiselection Context Panel#1888

Merged
camielvs merged 1 commit intomasterfrom
03-03-feat_multiselection_context_panel
Mar 5, 2026
Merged

feat: Multiselection Context Panel#1888
camielvs merged 1 commit intomasterfrom
03-03-feat_multiselection_context_panel

Conversation

@camielvs
Copy link
Collaborator

@camielvs camielvs commented Mar 4, 2026

Description

Adds a specific context panel view for when multiple nodes are selected.

The new view shows a list of selected nodes followed by the standard array of multi-select toolbar actions. The nodes in the list can be selected to open their specific context panels, with a "back" button to go back to the multiselection panel.

Related Issue and Pull requests

Closes https://github.com/Shopify/oasis-frontend/issues/497

Type of Change

  • Improvement

Checklist

  • I have tested this does not break current pipelines / runs functionality
  • I have tested the changes on staging

Screenshots (if applicable)

image.png

image.png

Test Instructions

  • Confirm you can select multiple nodes and view the panel on both Edit and Run pages
  • Confirm you can select an individual node with the group via the context panel to view its specific details, and can then go back
  • Confirm that updating a task, input, output, flex node from within the multiselect flow does not break the flow

Additional Comments

This PR also refines the naming process for Sticky Notes.

There is a multiselect check added inside each of task, io and flex nodes to avoid a race condition on displaying content in the context panel.

I absolutely loathe the process for adding a new callback to a task and the extremely loose typing associated with tasks. I would love to address this as done in #928 though I also understand it may be addressed as part of the Object-Model work.

Deleting a node from with the multiselect interface and then undoing via ctrl+z will not restore the node to the select because the selection is managed by reactflow whilst undo/redo is via the component spec.

Copy link
Collaborator Author

camielvs commented Mar 4, 2026

This stack of pull requests is managed by Graphite. Learn more about stacking.

@github-actions
Copy link

github-actions bot commented Mar 4, 2026

🎩 To tophat this PR:

You can add the following URL parameter to your browser to tophat this PR:

`?tophat_location=03-03-feat_multiselection_context_panel/af35fa4`

@camielvs camielvs force-pushed the 03-03-feat_multiselection_context_panel branch 2 times, most recently from a401705 to 581055e Compare March 4, 2026 18:04
@camielvs camielvs force-pushed the 03-03-feat_multiselection_context_panel branch 2 times, most recently from 11b7fbf to f3e1189 Compare March 4, 2026 18:44
@camielvs camielvs marked this pull request as ready for review March 4, 2026 18:53
@camielvs camielvs requested a review from a team as a code owner March 4, 2026 18:53
Copy link
Collaborator

Screen Recording 2026-03-04 at 8.34.05 PM.mov (uploaded via Graphite)

^ BUG: when go to I/O nodes there is a lot of extra space on top

Copy link
Collaborator

We need to add "Multiselect" folder to "react-compiler" config.

@maxy-shpfy maxy-shpfy requested a review from Mbeaulne March 5, 2026 04:51
Copy link
Collaborator

Mbeaulne commented Mar 5, 2026

image.png

There is some awkward UI on the run with multi select

Copy link
Collaborator

Mbeaulne commented Mar 5, 2026

Copy link
Collaborator

Mbeaulne commented Mar 5, 2026

NIT: I don't know if its this PR or something that exists but auto layout then copy node breaks a bit.

@camielvs camielvs force-pushed the 03-03-feat_multiselection_context_panel branch 2 times, most recently from 99e0a0f to 9687d96 Compare March 5, 2026 20:42
Copy link
Collaborator Author

camielvs commented Mar 5, 2026

BUG: when go to I/O nodes there is a lot of extra space on top

Fixed

We need to add "Multiselect" folder to "react-compiler" config.

Done

There is some awkward UI on the run with multi select

Looks like an issue with long titles. Fixed.

I don't know if its this PR or something that exists but auto layout then copy node breaks a bit.

It is this PR. Specifically the button in the context panel. When clicked it uses a stale version of the spec. I had an initial look but might not be an easy fix (adding the callbacks to the useEffect dependency array causes infinite loops)

@camielvs camielvs force-pushed the 03-03-feat_multiselection_context_panel branch from 9687d96 to 84a1401 Compare March 5, 2026 21:11
@camielvs camielvs requested review from Mbeaulne and maxy-shpfy March 5, 2026 21:11
Copy link
Collaborator Author

camielvs commented Mar 5, 2026

auto layout then copy node breaks a bit.

Should now be fixed!

Copy link
Collaborator Author

camielvs commented Mar 5, 2026

Merge activity

  • Mar 5, 10:04 PM UTC: A user started a stack merge that includes this pull request via Graphite.
  • Mar 5, 10:05 PM UTC: Graphite rebased this pull request as part of a merge.
  • Mar 5, 10:06 PM UTC: @camielvs merged this pull request with Graphite.

@camielvs camielvs force-pushed the 03-03-feat_multiselection_context_panel branch from 84a1401 to af35fa4 Compare March 5, 2026 22:04
@camielvs camielvs merged commit d446550 into master Mar 5, 2026
17 checks passed
@camielvs camielvs deleted the 03-03-feat_multiselection_context_panel branch March 5, 2026 22:06
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