Project

General

Profile

Actions

Feature #21225

closed

Split project view into separate tabs for each data and workflows

Added by Peter Amstutz 8 months ago. Updated about 1 month ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
Workbench2
Story points:
-


Subtasks 2 (0 open2 closed)

Task #21238: Review 21225-project-panel-tabsResolvedPeter Amstutz06/10/2024Actions
Task #21397: Review 21225-project-panel-tabsResolvedLisa Knox06/11/2024Actions

Related issues

Related to Arvados - Idea #20981: Visual design for projects, search, and workflow pickingResolvedPeter Amstutz10/25/2023Actions
Related to Arvados Epics - Idea #16943: WB2 Descriptions, project & collection operationsIn Progress10/01/202206/30/2024Actions
Related to Arvados - Feature #21623: Display filters active on a data table as chips on the column headerNewActions
Actions #1

Updated by Peter Amstutz 8 months ago

  • Status changed from New to In Progress
Actions #2

Updated by Peter Amstutz 8 months ago

  • Description updated (diff)
Actions #3

Updated by Peter Amstutz 8 months ago

  • Status changed from In Progress to New
Actions #4

Updated by Peter Amstutz 8 months ago

  • Assigned To set to Stephen Smith
Actions #5

Updated by Peter Amstutz 7 months ago

Couple of implementation notes for this:

  • Let's use MPVContainer/MPVPanelContent for the data tables
  • Can we add a mode to the MPVContainer to make it behave like a tab control, so that clicking on one of the navigation buttons shows that panel and hides all the others? I think this would allow us to play with tabbed vs multi-panel behavior without having to rewrite everything.
Actions #6

Updated by Stephen Smith 7 months ago

  • Status changed from New to In Progress
Actions #7

Updated by Peter Amstutz 7 months ago

  • Target version changed from Development 2024-01-03 sprint to Development 2024-01-17 sprint
Actions #8

Updated by Peter Amstutz 6 months ago

  • Related to Idea #20981: Visual design for projects, search, and workflow picking added
Actions #9

Updated by Peter Amstutz 6 months ago

  • Target version changed from Development 2024-01-17 sprint to Development 2024-01-31 sprint
Actions #10

Updated by Peter Amstutz 6 months ago

  • Related to Idea #16943: WB2 Descriptions, project & collection operations added
Actions #11

Updated by Peter Amstutz 6 months ago

  • Target version changed from Development 2024-01-31 sprint to Development 2024-02-14 sprint
Actions #12

Updated by Peter Amstutz 5 months ago

  • Target version changed from Development 2024-02-14 sprint to Development 2024-02-28 sprint
Actions #13

Updated by Peter Amstutz 5 months ago

From user feedback:

Step 1 is to add a "All" tab that has the existing combined view with minimal changes.

Step 2 Remove Data collections and Subprojects as distinct tabs.

Step 3 make the "Workflow runs" tab use "Process list" control on the project page (the base control used for all processes, subprocesses, etc. It should include the progress bar.)

We might end up with the tabs called "Data" and "Workflows"

I will check with the users to see how they feel about this change of separating out "Data" and "Workflows"

Actions #14

Updated by Peter Amstutz 5 months ago

  • Subject changed from Split project view into separate tabs for each data type (workflow runs, workflow definitions, collections, subprojects) to Split project view into separate tabs for each data and workflows
Actions #15

Updated by Peter Amstutz 5 months ago

I'm going to make a new wireframe and share it to see how they feel about it.

The idea is to split out workflow runs and retain the the combined view for everything else -- that should be less disruptive.

Actions #16

Updated by Peter Amstutz 5 months ago

  • Target version changed from Development 2024-02-28 sprint to Development 2024-03-13 sprint
Actions #17

Updated by Peter Amstutz 4 months ago

  • Target version changed from Development 2024-03-13 sprint to Development 2024-03-27 sprint
Actions #18

Updated by Peter Amstutz 4 months ago

  • Target version changed from Development 2024-03-27 sprint to Development 2024-04-10 sprint
Actions #19

Updated by Peter Amstutz 4 months ago

  • Related to Feature #21623: Display filters active on a data table as chips on the column header added
Actions #20

Updated by Peter Amstutz 4 months ago

Moved into a separate ticket (#21623): displaying filters active on a table as chips on the header

Actions #21

Updated by Peter Amstutz 4 months ago

From discussion: limit this to a "Data" tab (which is everything except container_requests) and a "Workflows" tab (which is container requests)

Actions #22

Updated by Peter Amstutz 3 months ago

  • Target version changed from Development 2024-04-10 sprint to Development 2024-04-24 sprint
Actions #23

Updated by Peter Amstutz 3 months ago

  • Target version changed from Development 2024-04-24 sprint to Development 2024-05-08 sprint
Actions #24

Updated by Peter Amstutz 2 months ago

  • Target version changed from Development 2024-05-08 sprint to Development 2024-05-22 sprint
Actions #25

Updated by Peter Amstutz 2 months ago

  • Target version changed from Development 2024-05-22 sprint to Development 2024-06-05 sprint
Actions #26

Updated by Peter Amstutz about 2 months ago

  • Target version changed from Development 2024-06-05 sprint to Development 2024-06-19 sprint
Actions #27

Updated by Stephen Smith about 1 month ago

Changes at arvados|e7dfc4d7e4d90dded7e0c6d1bd656c382b4d764d branch 21225-project-panel-tabs
Tests developer-run-tests-services-workbench2: #903

  • All agreed upon points are implemented / addressed.
    • Added mutually exclusive tabs mode to MPV view
    • Moved project panel middleware code into project panel data
    • Added workflow runs tab
      • Remove process runs from data tab & filter options
      • Rename main/sub processes to Workflow Run / Step
    • Removed process-related columns from data tab
    • Added support for projects to process progress bar and add to run tab
    • Added support for multi select bar to operate in single select mode in runs tab
      • I noticed that the Multi Select bar was forced to always be in multi select mode (even when single item selected) whenever the toolbar isn't in the title bar (whenever there is a panel title or progress bar)
      • This "always multi select" mode is relied on in several places to keep the toolbar empty of options when a single item is selected (eg. due to there being no multi-select options for a specific resource type such as users on the users panel, and forcing multi select mode prevents the single select options - which don't work for that resource type - from showing resulting in an always empty toolbar).
      • Instead of overhauling that logic I opted to preserve the existing behavior and change the runs tab multi select toolbar to operate in normal single or multi select mode by adding forceMultiSelectMode to any consumer with a title/progress bar and already relied on operating in only multi select mode
      • I also noticed a bug with the All Processes panel where deselecting an item doesn't remove the multi select toolbar's selection, opened #21883
    • Updated wait-on dependency for security - it only seems to be used in the run-integration tests and the latest version seems to support all the cli args we use
  • Anything not implemented (discovered or discussed during work) has a follow-up story.
  • Code is tested and passing, both automated and manual, what manual testing was done is described
    • Updated tests to use tabs
  • Documentation has been updated.
    • n/a
  • Behaves appropriately at the intended scale (describe intended scale).
    • no change in scale
  • Considered backwards and forwards compatibility issues between client and server.
    • n/a
  • Follows our coding standards and GUI style guidelines.
    • done
Actions #28

Updated by Peter Amstutz about 1 month ago

As discussed, playing around with this in the browser looks good, so let's just get Lisa's feedback on the code.

Actions #29

Updated by Lisa Knox about 1 month ago

  • I know I wasn't meant to review the aesthetics, but I see a lot of vertical whitespace and I think adding something like
    borderBottom: `1px solid ${theme.palette.grey[300]}`,
    to the 'tabs' css class would help a lot, just a suggestion.
  • I was curious what forceMultiselectMode was for, and I think it has something to do with the lack of multiselect filtering in place for "Workflow run" or "Workflow step" resources, am I right? If so, I wonder if forcing multiselect mode is a better approach, what do you think?

Otherwise, it all LGTM

Actions #30

Updated by Stephen Smith about 1 month ago

Changes atcommit:arvados|4d3bc1e278189f3939146a7e988b1fb488d060b7 21225-project-panel-tabs

  • Added, I like that it helps distinguish the non-selected tab from the content.
  • The forceMultiSelectMode is actually the existing isSubPanel parameter, I renamed it because I wanted the parameter to reflect the effect that it actually has, and since I needed to turn it off on the runs tab where it would normally be forced on due to the progress bar/title making it a "subpanel" like how it is in the subprocess panel. As it was, any time a title/progress bar is present, it would use the second multi select toolbar which was hardcoded to isSubPanel=true which forces the selection to be empty until multiple items are selected, which isn't what we want since the runs tab should behave similarly to the all processes tab. I hope that make sense.
Actions #31

Updated by Lisa Knox about 1 month ago

That makes sense, thank you. Everything LGTM!

Actions #32

Updated by Stephen Smith about 1 month ago

  • Status changed from In Progress to Resolved
Actions

Also available in: Atom PDF