neos-ui icon indicating copy to clipboard operation
neos-ui copied to clipboard

FEATURE: Display document status of other dimensions in dimension dropdown

Open pKallert opened this issue 1 year ago • 13 comments

Solves partially https://github.com/neos/neos-ui/issues/3413

What I did In the single-dimensions dropdown, the Languages with existing documents are now a linked and can be opened in a new tab. The dropdown now shows which dimensions the current already document exists in. "Not allowed" dimensions have a new styling

How I did it

For the dimensions menu there are two scenarios. This here describes the current implementation, but everything is still up for discussion

Single dimension "Shine through" for en_UK and en_US
Bildschirmfoto 2024-01-02 um 11 00 58 => English(US) and English(UK) can be opened in new tab

For "normal" languages: only one dimensions highlighted Bildschirmfoto 2024-01-02 um 11 01 54

Multiple dimensions (Currently) no shine through for dimensions. No linking of dimensions, this is what the apply button is for, I think? Disallowed dimensions are marked with strike-through (for now) Bildschirmfoto 2024-01-02 um 13 50 49

Available dimensions are shown top-down. For example, if in the first dropdown "Deutsch" is chosen as the language, in the second dropdown only the variants with language deutsch and country * will be chosen. Bildschirmfoto 2024-01-02 um 13 57 05

ToDos

  • full width of links in dropdown
  • write e2e tests

To be discussed

  • Do we even want the "available" Elements shown in multiple dimensions? Is it understandable?
  • Visualize "Shine through" of languages in dropdown menu?
  • Are shine-through dimensions counted as "available"?
  • Better display of "disallowed" vs "available"?

pKallert avatar Dec 28 '23 14:12 pKallert

This is a successor PR of https://github.com/neos/neos-ui/pull/3597

markusguenther avatar Dec 28 '23 14:12 markusguenther

Hello, and thanks to @pKallert for highlighting that fantastic feature. I've reviewed the code and experimented with it, and it functions as you outlined. However, I'm not particularly fond of the strikeout method for disallowed dimensions. With the introduction of the new grouping feature in UI version 8.4, I thought about utilizing groups for this purpose.

This approach could potentially enhance the user experience, as users would better comprehend the implications. We could incorporate a helpful text within the groups to explain the meaning of terms like "untranslated" or "disallowed." Additionally, it might be beneficial to consider hiding disallowed dimensions, as they occupy space without serving any practical purpose.

What do you and the others think about that? Maybe a help message would be a nice feature extension for the groups anyway.

Screenshot 2024-01-02 at 19 54 09

markusguenther avatar Jan 02 '24 19:01 markusguenther

Addendum: Linking to other dimensions in a new tab doesn't work for me in Firefox, Chrome and Safari

markusguenther avatar Jan 02 '24 19:01 markusguenther

I thought a little bit more about the styling of the elements and came up with a new solution:

Element does not exist in dimension: use grey background color Bildschirmfoto 2024-01-30 um 08 58 50

Element is disallowed: Text color is grey Bildschirmfoto 2024-01-30 um 15 00 40

Example: Bildschirmfoto 2024-01-30 um 15 09 15 Francais-> France exists, Francais-> Germany is not allowed, and does also not exist Francais-> US is allowed, but does not exist

This would also maintain the current logic where disallowed Elements are grey/have opacity.

pKallert avatar Jan 30 '24 14:01 pKallert

That's funny, I also had this topic yesterday on my desk to continue with that. I came to this idea.

  1. Colored Bars:
    • Using a small colored bar for each entry is a concise and visually efficient way to communicate the status of dimensions.
    • The traffic light metaphor (red, orange, etc.) is intuitive and widely understood, making it user-friendly.
  2. Not Permitted Dimensions:
    • Greyed-out entries with a red bar make it clear that these dimensions are not permitted. This combination of visual cues effectively signals to users that these dimensions are restricted.
  3. Not Translated Dimensions:
    • Introducing an orange bar and a zebra background for dimensions that are not translated adds a distinct visual element to highlight this state.
    • The use of a 45-degree angle for the zebra background creates a visually interesting effect and sets it apart from the regular and greyed-out dimensions.

I am also half the way of the implementation. What do you think about that?

markusguenther avatar Jan 30 '24 18:01 markusguenther

I tried it out locally and now have the following design: Not permitted: Bildschirmfoto 2024-03-15 um 08 19 37

Not translated: Bildschirmfoto 2024-03-15 um 08 20 33 Bildschirmfoto 2024-03-12 um 11 46 46 For not tranlated we could also not do the striped background:

Bildschirmfoto 2024-03-12 um 12 41 01

As a follow-up we could also visualize the shine-through with fallback dimensions.

pKallert avatar Mar 15 '24 07:03 pKallert

@pKallert nice visualization. As addition and because I'm not sure if I'm missing it: are we explaining the color codes to the user, e.g. via using the title attribute?

ahaeslich avatar Jun 05 '24 10:06 ahaeslich

And pipeline is complaining and needs to get fixed before merge!

dlubitz avatar Jun 05 '24 10:06 dlubitz

@pKallert nice visualization. As addition and because I'm not sure if I'm missing it: are we explaining the color codes to the user, e.g. via using the title attribute?

Not right now, but I will get on that :)

pKallert avatar Jun 05 '24 11:06 pKallert

The title says draft, but we are ready for review correct?

Sebobo avatar Jun 05 '24 12:06 Sebobo

Quick opinion poll:

Do you prefer with or without striped background to display that a document does not exist in this dimension?

313102123-64ce50f0-dad0-4be4-b970-35245acef569313102293-f78c2116-a8f4-4578-9540-933f2203c930

Striped background: 🚀 reaction No striped background: 👍 reaction

pKallert avatar Jun 06 '24 06:06 pKallert

The striped background is more different to the 'edited' marking we have on other places in the CMS. Therefore, it might highlight the difference a bit better.

ahaeslich avatar Jun 06 '24 06:06 ahaeslich

@ahaeslich is right here. You could think, that there are unpublished nodes in this dimension.

dlubitz avatar Jun 06 '24 06:06 dlubitz