AllenInstitute / biofile-finder

An open-use web application created for easy access, collaboration, and sharing of datasets through rich metadata search, filter, sort, and direct viewing in common industry applications or in our web-based 3D Volume Viewer.
https://biofile-finder.allencell.org/
BSD 3-Clause "New" or "Revised" License
3 stars 1 forks source link

Feature/warning info and error messaging #269

Closed aswallace closed 1 month ago

aswallace commented 1 month ago

Updates UX for the system status messages that are displayed to the user to match Lyndsay's Figma designs.

Also changes the messaging when a file cannot be reloaded -- moves the warning out of the data upload modal and into a status message to conform to other status messages. Previously, this warning persisted in the modal, even when the file had been re-uploaded. Now the status message goes away once the file is replaced.

Old styling examples

image Screenshot 2024-10-11 at 2 27 46 PM image

New styling examples

image

Comparison of data source reload errors: before & after

image image
aswallace commented 1 month ago

Are there any other alert or console.error or failure type things around we could switch to using this? If you could do a quick check to see just to make sure we are always presenting this awesome UI that would be great. If it ends up being a lot or tedious creating an issue in the backlog works too

I can definitely add the alerts to this one. For the other console errors etc I suspect there might be ones where I'd need some guidance about whether/what to show the user (w UX?) so I might make a separate ticket for that

aswallace commented 1 month ago

that the error message for local zarr paths or unsupported cloud paths on web is not on this format yet

This one is already fixed here; the throw automatically converts to a status message.

For the other one you linked (handleLocalZarrFile), the most consistent solution would be to also throw an error the way handleZarrFile does instead of its current return. I've been hesitant to add state calls in there since it seemed like we tend to avoid that in services, but I'm not sure if that's an actual standard or that we just haven't needed to do it yet. Edit: converted to error throw in b874414