Open bwaidelich opened 11 months ago
OUTDATED
Two really rough suggestions just to communicate the direction (I guess an indicator should rather be a small badge/icon instead of this huge buttons, but I didn't want to overstress my Photoshop skills):
I like the idea that we see directly the current selected workspace, but the top bar becomes really overloaded. So if we put more information at the top, we should prioritize the most important stuff.
The state and the workspace are important, and the dimension and the publishing as well. As we need bit more space, we can maybe move the user menu to the drawer menu footer. The user menu is more or less just for the logout and bet the user impersonation and user settings are really seldom in use. So you will have just one more click to open the side menu and be able to log out. What do you think? Alternately, we could always use the small screen view and don't render the first and last name.
But I am also not a designer ;)
the top bar becomes really overloaded
That's true. Maybe the indicator could just be a simple icon on the publish button with more details & options in the dropdown..
I created a rough first draft of the feature here: https://github.com/neos/neos-ui/pull/3665
To avoid confusion I would suggest only adding a small button if the workspace is outdated. If the personal workspace is up to date the button would not do anything anyways.
The Icons is something I made up on the fly, but if an actual person who can do icons wants to have a go, feel free 😄
Also, the whole padding/sizes and newlines styling stuff is not finished, this is something like a mockup.
Normal status, personal workspace is up to date
Personal workspace is outdated
Clicking on the button opens a popup:
Personal workspace is outdated and in error state
Clicking on the button opens a popup:
I created a rough first draft of the feature
@pKallert You're amazing, I like the approach! From those modals one option should be to go to the workspace module, but we can always add that later
Can this be considered closed as part of https://github.com/neos/neos-ui/issues/3742 ?
cc @grebaldi
TL;DR The Backend should provide an indicator of the current workspace state, especially when conflicts happened
A workspace in Neos 9.0 can have one of the following three states:
UP_TO_DATE
- This is the case if the contentStream of the base workspace IS EQUAL TO the sourceContentStream of this workspace's content stream, i.e. there no new events on the base workspace (By definition, a base workspace (like "live") is ALWAYS UP_TO_DATE)OUTDATED
- Can have two reasons: a) The base content stream has been rebased, b) The base content stream has new eventsOUTDATED_CONFLICT
- a special case of OUTDATED, but then an error happens during the rebasingSee WorkspaceStatus enum for more details.
The
OUTDATED
state means, that a rebase is required (Currently that is triggered by logging-out and -in again). In theOUTDATED_CONFLICT
the current workspace can't be published. So new changes will be lost.With 9.0 there won't be a (fully fledged) conflict resolution because that's very intricate, but we are considering ways to at least partially apply changes and/or be able to "stash" the pending changes so that they don't have to be discarded.
In any case, we should provide the user an early feedback of the workspace state, especially for the latter two cases.