-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
[Dashboard] Transfer state when drilldown is opened in a new tab #124770
[Dashboard] Transfer state when drilldown is opened in a new tab #124770
Conversation
9f8bc2b
to
3d2f192
Compare
3d2f192
to
550ce12
Compare
…lldown_2022-02-04
…er/kibana into fix_new_tab_drilldown_2022-02-04
💚 Build SucceededMetrics [docs]Module Count
Public APIs missing comments
Page load bundle
Unknown metric groupsAPI count
References to deprecated APIs
Unreferenced deprecated APIs
History
To update your PR or re-run it, just comment with: cc @Heenawter |
💔 All backports failed
How to fixRe-run the backport manually:
Questions ?Please refer to the Backport tool documentation |
Friendly reminder: Looks like this PR hasn’t been backported yet. |
…stic#124770) * Translate dashboard state to URL conditionally * Add functional tests * Fix typo in functional test descriptions * Remove deprecated references * Rename useUrl to be more specific (cherry picked from commit 17a997c) # Conflicts: # src/plugins/dashboard/public/index.ts
…stic#124770) * Translate dashboard state to URL conditionally * Add functional tests * Fix typo in functional test descriptions * Remove deprecated references * Rename useUrl to be more specific (cherry picked from commit 17a997c) # Conflicts: # src/plugins/dashboard/public/index.ts
#124770) (#125740) * [Dashboard] Transfer state when drilldown is opened in a new tab (#124770) * Translate dashboard state to URL conditionally * Add functional tests * Fix typo in functional test descriptions * Remove deprecated references * Rename useUrl to be more specific (cherry picked from commit 17a997c) # Conflicts: # src/plugins/dashboard/public/index.ts * Fix lint
Hi. |
Hi @reuvenik! We aren't planning on releasing any more patches for 7.16. Additionally, this fix was only backported as far as 8.0. |
7.17 is must as per your official documentation. |
💚 All backports created successfully
Note: Successful backport PRs will be merged automatically after passing CI. Questions ?Please refer to the Backport tool documentation |
…stic#124770) * Translate dashboard state to URL conditionally * Add functional tests * Fix typo in functional test descriptions * Remove deprecated references * Rename useUrl to be more specific (cherry picked from commit 17a997c) # Conflicts: # src/plugins/dashboard/public/index.ts
@reuvenik This has now been backported to 7.17 - hopefully that helps :) |
Very helpful. |
…ab (elastic#124770) (elastic#138278) * [Dashboard] Transfer state when drilldown is opened in a new tab (elastic#124770) * Translate dashboard state to URL conditionally * Add functional tests * Fix typo in functional test descriptions * Remove deprecated references * Rename useUrl to be more specific (cherry picked from commit 17a997c) # Conflicts: # src/plugins/dashboard/public/index.ts * Fix conflicts Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Closes #122942
Summary
The current way of following through with a dashboard-to-dashboard drilldown is to exclusively use the Dashboard router - however, since this relies on in-memory storage, this fails when the user opens the drilldown in a new tab. To get around this, we have gone back to using URL state transfer only when the drilldown is opened in a new tab (i.e. when the
getHref
action is called; theonClick
action remains unchanged) - this allows state to be fully transferred even when the session storage and/or in-memory storage is lost.Video of Fix
2022-02-07_Dash2Dash-Drilldown-New-Tab.mp4
How I Tested
I tested multiple configurations of source/destination dashboards to ensure that all elements of state where transferred:
✅ Destination has no filters
✅ Destination has unique local filter
✅ Destination has no filters
✅ Destination has unique local filter
✅ Destination shares local filter with source
✅ Destination has no filters
✅ Destination has unique local filter
✅ Destination has no filters
✅ Destination has unique local filter
✅ Destination shares local filter with source
Note, however, that there is a bug where the
unsaved changes
badge won't go away for dashboard to dashboard drilldowns (fixed in #124278 which is currently not merged) - so, with all of the above tests, this bug was still present; I was simply verifying that the state was transferred as expected.Checklist