-
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
[Reporting] Add link to Kibana app from Reporting management UI + Design update #111412
[Reporting] Add link to Kibana app from Reporting management UI + Design update #111412
Conversation
…called "getReport" and leave "get" as is
…andled by health indicator
- make test more specific and remove snapshot - added use of isMounted() to not run set state when component is not mounted
…-link-to-kibana-app * 'master' of github.com:elastic/kibana: (61 commits) [Logs UI] Fix alert previews for thresholds of `0` (elastic#111150) [Archive Migration][Partial] discover apps-discover (elastic#110437) [APM] Set start date of APM ML job to -4 weeks (elastic#111375) [ML] APM Latency Correlations: Code consolidation. (elastic#110790) [Discover] Fix indices permission for multiline test (elastic#111284) [Detection Rules] Add 7.15 rules (elastic#111464) [Security Solution][Endpoint][Host Isolation] Hide isolate host option in alert details rather than disabling (elastic#111064) React version of angular license view (elastic#111317) [APM] Fix link in readme (elastic#111362) [Security Solution] add agent field to generator (elastic#111428) [Dashboard] Retain Tags on Quicksave (elastic#111015) Reorder App Search ingestion methods (elastic#111361) Port performance docs to new docs system. (elastic#111063) [Security Solution][RAC] Fixes updatedAt loading bug (elastic#111010) [sample data] update web log geo.src field to match country code of geo.coordinates (elastic#110885) [Security solution] [Endpoint] Fix bad artifact migration (elastic#111294) Fix copy typo. (elastic#111203) [build] Remove empty optimize directory (elastic#111393) [Maps] fix term join not updating when editing right field (elastic#111030) [Fleet] Set default settings in component template instead of the index template (elastic#111197) ... # Conflicts: # x-pack/plugins/reporting/public/management/__snapshots__/report_listing.test.tsx.snap # x-pack/plugins/reporting/public/management/report_listing.test.tsx
@tsullivan I think I've addressed your feedback, would you mind taking another look? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
@elasticmachine merge upstream |
@elasticmachine merge upstream |
💚 Build Succeeded
Metrics [docs]Module Count
Public APIs missing comments
Async chunks
Page load bundle
History
To update your PR or re-run it, just comment with: |
…ign update (elastic#111412) * moved components to nested components dir * added health status indicator * download button -> download link * updated poblic Job API, remove some of the "rendering" behaviour * restructure list table contents and clean up use of i18n * set table column widths * slight update to table column widths * actually use action width 🤦 * added view in app link component and included space id in public side Job * server side changes so that we can get the job payload containing the locator * initial round of public-side changes to make the link to Kibana app work * added tooltip to view action * remove unused import and do not show chrome * removed use of fp-ts * added type column and updated mobile look * remove unused imports * take a different approach to job query factory -> added new function called "getReport" and leave "get" as is * update i18n * code simplifications, also ensure that "PROCESSING" status is being handled by health indicator * do not hide chrome * refactor jest test: - make test more specific and remove snapshot - added use of isMounted() to not run set state when component is not mounted * surface deprecation warning in a special way * updated one functional test * updated other functional test * Several updates to bring table more in line with design * Removed "created by" column * Added app icons instead of names * Added content type indication (PDF, CSV or PNG) * Updated the "info" button to have no colors * Updated the status to have a timestamp and show "yellow" if we detect any issues and guide users to view the report info. * a lot of changes to bring this more in line with defazio designs * fix lint * -wip- [skip-ci] * some very basic house keeping [skip-ci] * get to a point where the linking behaviour is working as expected * further house-keeping, remove unecessary components * clean up imports * move hasIssues check into status indicator * refactored report status indicator * hide open kibana app button when not available * remove unused import * fix jest tests * created a new redirect plugin to avoid page flicker * remove unused report info button * removed unused translations * fix jest tests after changing the redirect app path * added reportingRedirect to applicationUsageSchema * added column width for type * update test for extracting first row title * update functional test snapshot * updated plugins schema * removed the interstitial page so that we do not conflict with future work planned for the share service * remove unused i18n * small, but center-ish type icons * elastic@ email address * add i18n, update import with forward slash and added missing ":" to TODO * move non-type export to own import line and "type" to only-type imports * remove unecessary export * refactor payload endpoint to locatorParams endpoint and document query function * finish refactoring client side to work with new locatorParams endpoint * remove unused import * use info endpoint because it contains payload! * added functional test to ensure that we can navigate back to report * added jest test for checking that link navigated to is spaces aware * fix type issue and remove unused import Co-authored-by: Kibana Machine <[email protected]>
…ign update (#111412) (#118524) * moved components to nested components dir * added health status indicator * download button -> download link * updated poblic Job API, remove some of the "rendering" behaviour * restructure list table contents and clean up use of i18n * set table column widths * slight update to table column widths * actually use action width 🤦 * added view in app link component and included space id in public side Job * server side changes so that we can get the job payload containing the locator * initial round of public-side changes to make the link to Kibana app work * added tooltip to view action * remove unused import and do not show chrome * removed use of fp-ts * added type column and updated mobile look * remove unused imports * take a different approach to job query factory -> added new function called "getReport" and leave "get" as is * update i18n * code simplifications, also ensure that "PROCESSING" status is being handled by health indicator * do not hide chrome * refactor jest test: - make test more specific and remove snapshot - added use of isMounted() to not run set state when component is not mounted * surface deprecation warning in a special way * updated one functional test * updated other functional test * Several updates to bring table more in line with design * Removed "created by" column * Added app icons instead of names * Added content type indication (PDF, CSV or PNG) * Updated the "info" button to have no colors * Updated the status to have a timestamp and show "yellow" if we detect any issues and guide users to view the report info. * a lot of changes to bring this more in line with defazio designs * fix lint * -wip- [skip-ci] * some very basic house keeping [skip-ci] * get to a point where the linking behaviour is working as expected * further house-keeping, remove unecessary components * clean up imports * move hasIssues check into status indicator * refactored report status indicator * hide open kibana app button when not available * remove unused import * fix jest tests * created a new redirect plugin to avoid page flicker * remove unused report info button * removed unused translations * fix jest tests after changing the redirect app path * added reportingRedirect to applicationUsageSchema * added column width for type * update test for extracting first row title * update functional test snapshot * updated plugins schema * removed the interstitial page so that we do not conflict with future work planned for the share service * remove unused i18n * small, but center-ish type icons * elastic@ email address * add i18n, update import with forward slash and added missing ":" to TODO * move non-type export to own import line and "type" to only-type imports * remove unecessary export * refactor payload endpoint to locatorParams endpoint and document query function * finish refactoring client side to work with new locatorParams endpoint * remove unused import * use info endpoint because it contains payload! * added functional test to ensure that we can navigate back to report * added jest test for checking that link navigated to is spaces aware * fix type issue and remove unused import Co-authored-by: Kibana Machine <[email protected]> Co-authored-by: Kibana Machine <[email protected]>
…ign update (elastic#111412) * moved components to nested components dir * added health status indicator * download button -> download link * updated poblic Job API, remove some of the "rendering" behaviour * restructure list table contents and clean up use of i18n * set table column widths * slight update to table column widths * actually use action width 🤦 * added view in app link component and included space id in public side Job * server side changes so that we can get the job payload containing the locator * initial round of public-side changes to make the link to Kibana app work * added tooltip to view action * remove unused import and do not show chrome * removed use of fp-ts * added type column and updated mobile look * remove unused imports * take a different approach to job query factory -> added new function called "getReport" and leave "get" as is * update i18n * code simplifications, also ensure that "PROCESSING" status is being handled by health indicator * do not hide chrome * refactor jest test: - make test more specific and remove snapshot - added use of isMounted() to not run set state when component is not mounted * surface deprecation warning in a special way * updated one functional test * updated other functional test * Several updates to bring table more in line with design * Removed "created by" column * Added app icons instead of names * Added content type indication (PDF, CSV or PNG) * Updated the "info" button to have no colors * Updated the status to have a timestamp and show "yellow" if we detect any issues and guide users to view the report info. * a lot of changes to bring this more in line with defazio designs * fix lint * -wip- [skip-ci] * some very basic house keeping [skip-ci] * get to a point where the linking behaviour is working as expected * further house-keeping, remove unecessary components * clean up imports * move hasIssues check into status indicator * refactored report status indicator * hide open kibana app button when not available * remove unused import * fix jest tests * created a new redirect plugin to avoid page flicker * remove unused report info button * removed unused translations * fix jest tests after changing the redirect app path * added reportingRedirect to applicationUsageSchema * added column width for type * update test for extracting first row title * update functional test snapshot * updated plugins schema * removed the interstitial page so that we do not conflict with future work planned for the share service * remove unused i18n * small, but center-ish type icons * elastic@ email address * add i18n, update import with forward slash and added missing ":" to TODO * move non-type export to own import line and "type" to only-type imports * remove unecessary export * refactor payload endpoint to locatorParams endpoint and document query function * finish refactoring client side to work with new locatorParams endpoint * remove unused import * use info endpoint because it contains payload! * added functional test to ensure that we can navigate back to report * added jest test for checking that link navigated to is spaces aware * fix type issue and remove unused import Co-authored-by: Kibana Machine <[email protected]>
…ign update (elastic#111412) * moved components to nested components dir * added health status indicator * download button -> download link * updated poblic Job API, remove some of the "rendering" behaviour * restructure list table contents and clean up use of i18n * set table column widths * slight update to table column widths * actually use action width 🤦 * added view in app link component and included space id in public side Job * server side changes so that we can get the job payload containing the locator * initial round of public-side changes to make the link to Kibana app work * added tooltip to view action * remove unused import and do not show chrome * removed use of fp-ts * added type column and updated mobile look * remove unused imports * take a different approach to job query factory -> added new function called "getReport" and leave "get" as is * update i18n * code simplifications, also ensure that "PROCESSING" status is being handled by health indicator * do not hide chrome * refactor jest test: - make test more specific and remove snapshot - added use of isMounted() to not run set state when component is not mounted * surface deprecation warning in a special way * updated one functional test * updated other functional test * Several updates to bring table more in line with design * Removed "created by" column * Added app icons instead of names * Added content type indication (PDF, CSV or PNG) * Updated the "info" button to have no colors * Updated the status to have a timestamp and show "yellow" if we detect any issues and guide users to view the report info. * a lot of changes to bring this more in line with defazio designs * fix lint * -wip- [skip-ci] * some very basic house keeping [skip-ci] * get to a point where the linking behaviour is working as expected * further house-keeping, remove unecessary components * clean up imports * move hasIssues check into status indicator * refactored report status indicator * hide open kibana app button when not available * remove unused import * fix jest tests * created a new redirect plugin to avoid page flicker * remove unused report info button * removed unused translations * fix jest tests after changing the redirect app path * added reportingRedirect to applicationUsageSchema * added column width for type * update test for extracting first row title * update functional test snapshot * updated plugins schema * removed the interstitial page so that we do not conflict with future work planned for the share service * remove unused i18n * small, but center-ish type icons * elastic@ email address * add i18n, update import with forward slash and added missing ":" to TODO * move non-type export to own import line and "type" to only-type imports * remove unecessary export * refactor payload endpoint to locatorParams endpoint and document query function * finish refactoring client side to work with new locatorParams endpoint * remove unused import * use info endpoint because it contains payload! * added functional test to ensure that we can navigate back to report * added jest test for checking that link navigated to is spaces aware * fix type issue and remove unused import Co-authored-by: Kibana Machine <[email protected]>
…ign update (#111412) * moved components to nested components dir * added health status indicator * download button -> download link * updated poblic Job API, remove some of the "rendering" behaviour * restructure list table contents and clean up use of i18n * set table column widths * slight update to table column widths * actually use action width 🤦 * added view in app link component and included space id in public side Job * server side changes so that we can get the job payload containing the locator * initial round of public-side changes to make the link to Kibana app work * added tooltip to view action * remove unused import and do not show chrome * removed use of fp-ts * added type column and updated mobile look * remove unused imports * take a different approach to job query factory -> added new function called "getReport" and leave "get" as is * update i18n * code simplifications, also ensure that "PROCESSING" status is being handled by health indicator * do not hide chrome * refactor jest test: - make test more specific and remove snapshot - added use of isMounted() to not run set state when component is not mounted * surface deprecation warning in a special way * updated one functional test * updated other functional test * Several updates to bring table more in line with design * Removed "created by" column * Added app icons instead of names * Added content type indication (PDF, CSV or PNG) * Updated the "info" button to have no colors * Updated the status to have a timestamp and show "yellow" if we detect any issues and guide users to view the report info. * a lot of changes to bring this more in line with defazio designs * fix lint * -wip- [skip-ci] * some very basic house keeping [skip-ci] * get to a point where the linking behaviour is working as expected * further house-keeping, remove unecessary components * clean up imports * move hasIssues check into status indicator * refactored report status indicator * hide open kibana app button when not available * remove unused import * fix jest tests * created a new redirect plugin to avoid page flicker * remove unused report info button * removed unused translations * fix jest tests after changing the redirect app path * added reportingRedirect to applicationUsageSchema * added column width for type * update test for extracting first row title * update functional test snapshot * updated plugins schema * removed the interstitial page so that we do not conflict with future work planned for the share service * remove unused i18n * small, but center-ish type icons * elastic@ email address * add i18n, update import with forward slash and added missing ":" to TODO * move non-type export to own import line and "type" to only-type imports * remove unecessary export * refactor payload endpoint to locatorParams endpoint and document query function * finish refactoring client side to work with new locatorParams endpoint * remove unused import * use info endpoint because it contains payload! * added functional test to ensure that we can navigate back to report * added jest test for checking that link navigated to is spaces aware * fix type issue and remove unused import Co-authored-by: Kibana Machine <[email protected]>
…ign update (elastic#111412) * moved components to nested components dir * added health status indicator * download button -> download link * updated poblic Job API, remove some of the "rendering" behaviour * restructure list table contents and clean up use of i18n * set table column widths * slight update to table column widths * actually use action width 🤦 * added view in app link component and included space id in public side Job * server side changes so that we can get the job payload containing the locator * initial round of public-side changes to make the link to Kibana app work * added tooltip to view action * remove unused import and do not show chrome * removed use of fp-ts * added type column and updated mobile look * remove unused imports * take a different approach to job query factory -> added new function called "getReport" and leave "get" as is * update i18n * code simplifications, also ensure that "PROCESSING" status is being handled by health indicator * do not hide chrome * refactor jest test: - make test more specific and remove snapshot - added use of isMounted() to not run set state when component is not mounted * surface deprecation warning in a special way * updated one functional test * updated other functional test * Several updates to bring table more in line with design * Removed "created by" column * Added app icons instead of names * Added content type indication (PDF, CSV or PNG) * Updated the "info" button to have no colors * Updated the status to have a timestamp and show "yellow" if we detect any issues and guide users to view the report info. * a lot of changes to bring this more in line with defazio designs * fix lint * -wip- [skip-ci] * some very basic house keeping [skip-ci] * get to a point where the linking behaviour is working as expected * further house-keeping, remove unecessary components * clean up imports * move hasIssues check into status indicator * refactored report status indicator * hide open kibana app button when not available * remove unused import * fix jest tests * created a new redirect plugin to avoid page flicker * remove unused report info button * removed unused translations * fix jest tests after changing the redirect app path * added reportingRedirect to applicationUsageSchema * added column width for type * update test for extracting first row title * update functional test snapshot * updated plugins schema * removed the interstitial page so that we do not conflict with future work planned for the share service * remove unused i18n * small, but center-ish type icons * elastic@ email address * add i18n, update import with forward slash and added missing ":" to TODO * move non-type export to own import line and "type" to only-type imports * remove unecessary export * refactor payload endpoint to locatorParams endpoint and document query function * finish refactoring client side to work with new locatorParams endpoint * remove unused import * use info endpoint because it contains payload! * added functional test to ensure that we can navigate back to report * added jest test for checking that link navigated to is spaces aware * fix type issue and remove unused import Co-authored-by: Kibana Machine <[email protected]>
Summary
Close #108498
Close #39620
This PR enhances the reporting management UI with the ability to link to different places in Kibana based on where a report was requested from. This will enable users to "debug" the places in Kibana that reporting will navigate to in their own browser since we no longer report the full URL in the server logs. Additionally, this grants the ability to view reporting as "snapshots" of different parts of Kibana UI. Users can navigate back to those states, update them and request a new report after they have navigated away from the UI.
How to test
Additional changes
intl
and rather use@kbn/i18n
on various componentscomponents
folder to give a better indication of hierarchy of componentsBoom
(related [Reporting]: Clean up remaining use ofBoom
#105740)Screenshots
Before/current for reference
New table
Mobile-friendly view
Interstitial redirect page for reporting (now that users will possibly see it)
If an error occurs while navigating
Release note
We updated the reporting management UI to place emphasis on report status and downloads. We also added a new capability to the report management UI: navigating back to the place a report was generated with the full state of the application at the time the report was requested. This is similar to the behaviour in the "Saved Objects" management UI.
Checklist
Future work
It would be really nice to refactor the test file
x-pack/plugins/reporting/public/management/report_listing.test.tsx
since it has grown a bit large and a lot of the logic is setup of test data and the test harness.