Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Workflow Editor Activity Bar #18729

Draft
wants to merge 121 commits into
base: dev
Choose a base branch
from

Conversation

ElectronicBlueberry
Copy link
Member

@ElectronicBlueberry ElectronicBlueberry commented Aug 22, 2024

This PR brings the activity bar to the workflow editor, providing various workflow-related activities and tools. Key changes and features include:

  • Support for undo/redo stack UI.
  • Add workflows activity item to explore in detail and select workflows to add/copy steps from.
  • Redesign expandable tool attributes panel
  • More logic and UI improvements
Screenshot 2024-11-15 at 20 59 33
Screen.Recording.2024-11-15.at.19.35.34-2.mov

Chnages

  • changes (undo redo stack ui)
  • workflows (to insert like tools)

Ideas for additional activities, but unsure about:

  • workflow specific utility tools
  • workflow attributes
    this would free up the right panel to serve a single purpose
  • step list
  • subworkflows (in this workflow)
  • invocations of this workflow
  • run with simplified run form
  • edit report

How to test the changes?

(Select all options that apply)

  • I've included appropriate automated tests.
  • This is a refactoring of components with existing test coverage.
  • Instructions for manual testing are as follows:
    1. Open the worklfow editore and play around

License

  • I agree to license these and all my past contributions to the core galaxy codebase under the MIT license.

@ahmedhamidawan
Copy link
Member

This might tie in nicely with the ideas in #18166?

@bgruening
Copy link
Member

The first round of feedback:

  • separate "inputs" from tools, inputs are imho equivalent to "Upload"
  • An easy way to exit is missing imho, "save and exit" instead of "save" might be an option, especially since we now have the "changes" option
  • if there are no "workflows" then a hint should be shown like "Here are all workflows listed that you can include as sub-workflows"
  • Q: is it useful to list the self-workflow? Is that even possible to include them in a workflow? Recursion?
  • Should Ctrl+S save the workflow?
  • if you click on tools, the focus should be on the search-box

Thanks @ElectronicBlueberry!

@bgruening
Copy link
Member

Thanks a lot, Laila. Here is a small review from Wolfgang and me from the Biohackathon:

  • If I click tools, my cursor should be in the search field
  • If I click on " Input dataset: Missing a label and annotation " in the best-practise panel, its not clear which node is selected and I should probably see the left-side panel?
  • if I save the "changes" disappear, this makes somehow sense, but its a bit confusing as the "changes" panel is then empty. Should we indicate the "versions" also in the changes panel?
    • if we move the version into the "changes" panel we could rename "Attributes" to Description?
  • I'm not convinced "auto-layout", "upgrade" and "download" deserves its own panel item
    • separate them with another horizontal bar?
    • should auto-layout be part of the "annotation toolbar"
    1. make sure the left panel is not shown, 2) move some boxes, 3) click the arrows (upper, left corner) to revert changes -> the left panel will open, which I think is wrong
  • should "Inputs" in the tool panel be its own activity bar item?
  • Best Practices Review is not scrollable
  • The Run option should be moved to just above Save&Exit
  • Downloads triggers a "leave page" warning - but we do not leave the page
  • we propose: tools, workflows on top, a horizontal bar and then the rest of the items which are more "metadata inspection items"
  • auto-layout can not be undone

@dannon dannon added this to the 24.2 milestone Nov 12, 2024
@dannon dannon marked this pull request as ready for review November 12, 2024 15:58
@itisAliRH itisAliRH self-requested a review November 13, 2024 14:48
@ahmedhamidawan
Copy link
Member

These are wonderful changes @ElectronicBlueberry !!

One minuscule thing I've noticed is this:
As soon as you click Create a new workflow, and you land on a fresh editor, if you click Run, this happens:

Screen.Recording.2024-11-13.at.3.45.34.PM.mov

An empty workflow is created, which i think it shouldn't since the button should maybe be disabled?

Copy link
Contributor

@davelopez davelopez left a comment

Choose a reason for hiding this comment

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

I have played around with this and I love it!

Amazing work!

The tests would require some massaging to make them happy though... 😅

client/src/components/Workflow/List/useWorkflowActions.ts Outdated Show resolved Hide resolved
@itisAliRH
Copy link
Member

The workflow bookmarking is broken and you can not unbookmark a workflow. So the API seems to be working fine but the client side is broken and needs to be fixed. I put the PR into a draft and working on it.

@itisAliRH itisAliRH marked this pull request as draft November 15, 2024 13:40
@itisAliRH itisAliRH force-pushed the workflow-editor-activity-bar branch 2 times, most recently from dce254d to 85074ce Compare November 15, 2024 14:18
@itisAliRH itisAliRH marked this pull request as ready for review November 15, 2024 18:08
Copy link
Member

@itisAliRH itisAliRH left a comment

Choose a reason for hiding this comment

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

@ElectronicBlueberry Great work, Laila!

I’ve played and reviewed it and have addressed some issues and also made some improvements.

Thank you so much!

@itisAliRH
Copy link
Member

This changes also fixes errors like below in the activity bar:
Screenshot 2024-11-15 at 21 11 48

@itisAliRH itisAliRH marked this pull request as draft November 18, 2024 12:35
itisAliRH and others added 29 commits November 22, 2024 17:24
Removes redundant prefix from activity item IDs for consistency
Changes notification item ID to 'notifications' for clarity
Adds an ID attribute to the toolbox panel.
Updates the tool opening logic in the workflow editor to open the toolbox panel using the activity bar before selecting tool
Introduces an ID for the auto-layout button in the toolbar component.
Updates navigation configuration and Selenium tests to use the new button ID for auto-layout functionality.
…MarkdownEditor

Introduces hidePanel prop to conditionally hide the side panel in ActivityBar.
Integrates MarkdownToolBox into MarkdownEditor temporary to have MarkdownToolBox in the page editor too.
Renames WorkflowAttributes.test.js to WorkflowAttributes.test.ts
Replaces createLocalVue with getLocalVue and adds Pinia setup
Mocks userTagsStore methods and updates test assertions
Updates imports to use TypeScript-compatible paths and extensions
Adjusts mock configuration and type assertions for TypeScript
Renames toolbox panel selector for consistency
Adds new selector for workflow editor tools activity
Modifies logic to handle toolbox panel visibility and search functionality
Includes a new selector for the 'Save As' option in the navigation configuration.
Updates the Selenium test to handle the 'Save As' option visibility and interaction.

Improves user experience by ensuring the 'Save As' option is accessible and testable.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/UI-UX highlight Included in user-facing release notes at the top
Projects
None yet
Development

Successfully merging this pull request may close these issues.

move workflow editor actions out of the toolform
8 participants