-
Notifications
You must be signed in to change notification settings - Fork 8.2k
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
[Meta] [Panel Toolbar] Shared UI for adding content #85666
Comments
Pinging @elastic/kibana-presentation (Team:Presentation) |
I'm wondering if we should include the top menu in these designs - or if this would be an appropriate place to discuss plans for the dashboard top nav. I am of the opinion that the controls If that were the case, I imagine the top nav could look something like this: Notice the shortcut save button so that saving a dashboard doesn't always have to go through the save modal. This also provides more alignment with the editors like maps, visualize, and lens, which all have this functionality. |
Great catch @ThomThomson , that was a missed item on my part. I agree those should be removed from the top nav. In a separate discussion, Alona noted that we could keep it, for now, but with the full set of proposed changes in view - it makes sense to no longer do so. |
Chatting further, we may want to change the order of Phases 2 & 3 - opting to flesh out the Dashboard toolbar (add the 'All editors' button; switch to Lens as default; fix up the flyout/add ML to main toolbar) and then coming back to Canvas. This would allow us to keep momentum for the TTV project and buy us more time to address the outstanding work to support more embeddable types in Canvas (e.g. handling the complexities of filters, etc.). cc:/ @cqliu1 |
Related to #84561
As part of the Time to Visualize (TTV) project, the panel toolbar enables Dashboard users to create and add content in a variety of ways. This meta issue outlines and tracks the proposed evolution of this feature for Dashboard and other implementations (e.g. Canvas).
The goal is to provide a shared, universal UI for managing content - whether that be creating new content in editing apps, adding existing content from the library, working with future embeddables, or adding content that is native to the host application.
Future state
The proposed design has several notable characteristics:
*As determined by the host application (e.g. Dashboard or Canvas)
Note regarding 3.: Editor applications would 'register' their availability to the global toolbar where each host application determines whether to ultimately display/provide this option, thus the importance for a scalable design.
💻 Figma mockups
https://www.figma.com/proto/YA02RZlZQ6IQWlyzyiFzZx/Dashboard-Canvas?node-id=1771%3A2316&viewport=1761%2C1316%2C0.25&scaling=min-zoom
Following are the proposed phases for the toolbar including guidelines for future editors to plug into the feature.
Phased approach
Phase 1 - TTV: V1 Toolbar for Dashboard
Initially, the toolbar provides:
EuiButton
default)Phase 2 - Canvas alignment
Similar to Dashboard, Canvas workpads can display embeddable content from other sources. This phase focuses on gaining initial menu/UX alignment between Dashboard and Canvas.
TopNavMenu
component to push (most of) the existing menu into the header (Options, Share, Edit)Phase 3 - Lens as default; Scalable for all embeddables
Provide a scalable design for current and future editors.
Dashboard
Update: Dashboard currently provides direct links to Text and Controls via the existing modal experience, so we could add those two and keep the current UX
Canvas
Since Canvas already has native elements, they could be converted at this stage. We would need to get creative with the sheer number of element types which are currently grouped in the 'Add element' menu.
Set Lens as the primary CTA, by default.
Add an 'All editors' button that opens a context menu (similar to the Canvas 'Add element' UI) which replaces the current viz modal.
Fix the flyout; remove the 'Create new' button
The button opens a context menu/popover with two items: Visualizations and Machine Learning<-- we may have to do this temporarily, but it might be worth skipping this iteration and working toward a better solution (see below)Phase 4 - Add Native controls for Dashboard
Presuming Dashboard native controls come later, in phases, they 'come online' as they are built.
FAQs
What does it look like for a 'host' app to use this shared toolbar component?
Add the shared component to your application and pass the following items:
How do you plug your 'editor' app into the shared toolbar component?
The text was updated successfully, but these errors were encountered: