Caleydo / ordino

Target discovery platform for exploring rankings of genes, disease models, and other entities. @JKU-ICG @datavisyn
http://caleydo.org/
Mozilla Public License 2.0
11 stars 2 forks source link

Workbench Transition #409

Closed dvzacharycutler closed 2 years ago

dvzacharycutler commented 2 years ago

Very big PR containing the workbench transition changes we mentioned. There is still work to do on the transition, but as of this PR we do not lose any functionality compared to the current version, so probably past time to start opening PRs.

Closes https://github.com/datavisyn/reprovisyn/issues/433, https://github.com/datavisyn/reprovisyn/issues/431, https://github.com/datavisyn/reprovisyn/issues/436

Also relies on https://github.com/datavisyn/reprovisyn/pull/467 to work as expected.

Developer Checklist (Definition of Done)

Summary of changes

Quite a few changes here

https://user-images.githubusercontent.com/87644761/177564176-a5eff59c-2f44-4508-97de-99eeddc47448.mp4

https://user-images.githubusercontent.com/87644761/177564823-7068c873-5425-4fe5-b652-6bcc1a84fbbf.mp4

https://user-images.githubusercontent.com/87644761/177566172-b653c95c-d6d6-41fe-811e-43591c38edd1.mp4

https://user-images.githubusercontent.com/87644761/177567979-1a6698d2-09c8-42c5-b2a8-0f3243e72b68.mp4

Screenshots

dvzacharycutler commented 2 years ago

Holger and I had a discussion about the open questions. For now, the first question (add views chevron) we will leave out and try out other ways to make the view chooser more obvious in a future PR. And the colored indicator will also be a part of a future PR. otherwise, I addressed all of the issues brought up by holger.

dvzacharycutler commented 2 years ago

Also: Any Tests / Documentation?

Good question, the tests that would ideally come with this at the moment is storybook examples for the new components that are being created with this PR. But setting up storybook within Ordino is a bit harder than anticipated, so although I made storybook files for the new components (WorkbenchUtilsSidebar.stories.tsx, for example), they error when running storybook. I believe Holger is taking a look at how to fix it.

thinkh commented 2 years ago

Chevron tool tip

image

image

Wrong behavior with multiple workbenches

Steps to reproduce

  1. Open workbench (e.g., Drugs)
  2. Select drugs
  3. Open Cell Line workbench
  4. Select cell lines
  5. Open Gene workbench

Observed behavior

Switching the workbenches back and forth shows the chevron of first workbench (i.e., Drugs), even though the focus and context workbench is the same at the end and it should not be visible.

ordino-wrong-workbench-chevron.webm

Expected behavior

dvzacharycutler commented 2 years ago

The text in the login screen is currently broken due to a nowrap style.

Fixed.

I suggest to use the workbench color as active color in the sidebar.

Done, changed the colors in the checkbox as well.

Also fixed the problems mentioned in the most recent comment by holger, except for the last one. We discussed, and ill make some design changes of shrinking the non-immediate chevrons down to be very small and have no text, but in the next PR.

thinkh commented 2 years ago

@dvzacharycutler Thanks for your last iteration. It looks good very good!

I fixed the Storybook SCSS issue. It requires the export in tdp_core with PR https://github.com/datavisyn/tdp_core/pull/753. The Storybook server does start now and you can open the Storybook UI in the browser. However, the story/stories that are already available do not compile due to some React Redux error.

image

could not find react-redux context value; please ensure the component is wrapped in a <Provider>
Error: could not find react-redux context value; please ensure the component is wrapped in a <Provider>
    at useReduxContext (http://localhost:6006/vendors~main.iframe.bundle.js:214802:11)
    at useSelector (http://localhost:6006/vendors~main.iframe.bundle.js:214951:28)
    at WorkbenchUtilsSidebar (http://localhost:6006/main.iframe.bundle.js:38662:101)
    at renderWithHooks (http://localhost:6006/vendors~main.iframe.bundle.js:199851:18)
    at mountIndeterminateComponent (http://localhost:6006/vendors~main.iframe.bundle.js:202530:13)
    at beginWork (http://localhost:6006/vendors~main.iframe.bundle.js:203644:16)
    at HTMLUnknownElement.callCallback (http://localhost:6006/vendors~main.iframe.bundle.js:185236:14)
    at Object.invokeGuardedCallbackDev (http://localhost:6006/vendors~main.iframe.bundle.js:185285:16)
    at invokeGuardedCallback (http://localhost:6006/vendors~main.iframe.bundle.js:185340:31)
    at beginWork$1 (http://localhost:6006/vendors~main.iframe.bundle.js:208251:7)

Can you have a look, if this is easily fixable? Otherwise, I'd suggest to take a closer look as part of a separate issue, as this might trigger refactorings of our components.

Further resources