Skip to content
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

[Backport 2.x] Dashboard De-Angularization #4542

Merged
merged 1 commit into from
Jul 11, 2023

Conversation

opensearch-trigger-bot[bot]
Copy link
Contributor

Backport 1d41cfe from #4502.

Removes Angular from the `plugins/dashboard` utilizing React.

This includes refactoring to address changes in state management but will require fast follow to
address none blocking issues raised which can be found here:
#3365

Partially Resolves:
#3365

---
* Replace angular modules with react components
  * Use React to start up the dashboard app, and use react routing to configure basic
    routing for dashboard plugin.
* [Dashboard De-Angular] Render dashboard listing page (#4015)
  * #4000
  * Render the dashboard listing component with basic functionalities:
    * When there is no dashboard, render the empty dashboard page
    * When there are dashboards, show the dashboard listing table
    * When click on the dashboard, show the editor page
    * Delete the dashboards when selected
    * Can use search bar to filter dashboard
* Basic top nav bar for dashboard (#4108)
  * Basic top nav bar for dashboard
  *  This PR will add basic structure to render top nav bar, including a basic implementation for dashboard app state.
* Render editor page with basic nav actions (#4213)
  * Added dashboard embeddable container to render the dashboard editor page.
* Add visualization (#4257)
  * Add and save visualization to dashboard
* Render empty screen (#4346)
  * Render empty screen with correct edit and view view when creating a new dashboard.
* Fix routing (#4357)
  * Fix the edit action routing on the dashboard listing page; also fix routing when the route has no match. Add '_g' param to the URL on both dashboard listing page and dashboard editor page.
* [Dashboard De-Angular] Enable time filter functionalities  (#4364)
  * Fix time filter on dashboard
  * Save dashboard with time restore
  * Dashboard be able to save query and app filter
  * Enable functional test for dashboard
  * Fix comments and add ui bootstrap back
* No index pattern routing (#4401)
  * Should redirect to stack management page if there is no index pattern detected.
* Add embed mode and other URL param options (#4407)
  * UI should render based on URL param options
* [Dashboard De-Angular] Add dashboard class for discard flow (#3563)
  * Add Dashboard class for state managing
  * isDirty working for cancel flow
* [Dashboard De-Angular] Add breadcrumb with view/edit mode and unsaved flow (#4479)
  * set isDirty back to false when saving successfully
* Breadcrumb working
* change to dashboards in breadcrumb
* [Dashboard De-Angular] Enable URL title param for initial filter on dashboard listing (#4480)
  * Fix dashboard listing functional test
  * Can filter dashboards using URL title param
  * Fix the functional tests
* [Dashboard De-Angular] Fix dashboard save and back button functional test (#4491)
  * fix copy on save and functional test 5
* Fix back button navigation
  * Fix version migration for panels
  * Fix conversions between saved panel and container panel type
  * Fix redundant browser update by re-structure app state and global state sync logic in order for back button to work, also fix the corresponding functional test
* migration version
* Add initialization dirty flag and fix full mode filter bar
* [Dashboard De-Angular] Fix filter and query related functional tests in functional test group 3 (#4495)
  * fix index pattern window
* Fix time filter and query related functional test in group 3
* [Dashboard De-Angular] Fix remaining functional tests (#4496)
  * fix dashboard state function test in group 4
* fix expanding panel
* fix dashboard listing delete (#4508)
* [Dashboard De-Angular] Initial clean up and linter fix (#4511)
  * Clean up linter issues
* Add changelog and other fixes
* [Dashboard De-Angular] Cypress fix (#4521)
  * fix cypress
* refactor scss files
* delete old unit test for state management
* Refactor app state and cleanup unused imports (#4504)
  * Clean up app state for Dashboards plugin.
  * Removes the dashboard container hook in place of a single dashboard app state container
  * Still recovers some follow-ups and clean up
  * Skips test for rendering of a legacy test.
* Set dashboard container functions and fix license headers (#4540)
  * Set dashboard container after defining functions
    * renderEmpty was not being set prior to the current container was being dispatched.
  * fix up license headers for new files
  * add TODOs from PR

Signed-off-by: abbyhu2000 <[email protected]>
Signed-off-by: Kawika Avilla <[email protected]>
Co-authored-by: Qingyang(Abby) Hu <[email protected]>
Co-authored-by: Kawika Avilla <[email protected]>
Co-authored-by: Miki <[email protected]>
(cherry picked from commit 1d41cfe)
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Copy link
Member

@kavilla kavilla left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

failing bwc test seems to be the flaky one

@codecov
Copy link

codecov bot commented Jul 11, 2023

Codecov Report

Merging #4542 (c10b070) into 2.x (898410d) will decrease coverage by 0.44%.
The diff coverage is 22.73%.

@@            Coverage Diff             @@
##              2.x    #4542      +/-   ##
==========================================
- Coverage   66.44%   66.01%   -0.44%     
==========================================
  Files        3288     3313      +25     
  Lines       63288    63850     +562     
  Branches     9846     9963     +117     
==========================================
+ Hits        42051    42149      +98     
- Misses      18857    19314     +457     
- Partials     2380     2387       +7     
Flag Coverage Δ
Linux 65.95% <22.73%> (-0.44%) ⬇️
Windows 65.95% <22.73%> (-0.44%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
...oard/public/application/dashboard_empty_screen.tsx 94.44% <ø> (ø)
...lic/application/embeddable/dashboard_container.tsx 69.56% <ø> (ø)
...lic/application/embeddable/grid/dashboard_grid.tsx 72.72% <ø> (ø)
...lication/lib/embeddable_saved_object_converters.ts 62.50% <0.00%> (ø)
...dashboard/public/application/lib/save_dashboard.ts 0.00% <0.00%> (ø)
...d/public/application/lib/update_saved_dashboard.ts 0.00% <0.00%> (ø)
...board/public/application/listing/create_button.tsx 91.66% <ø> (ø)
...d/public/application/top_nav/get_top_nav_config.ts 0.00% <ø> (ø)
src/plugins/dashboard/public/plugin.tsx 0.00% <0.00%> (ø)
...board/public/application/utils/get_nav_actions.tsx 0.95% <0.95%> (ø)
... and 22 more

... and 11 files with indirect coverage changes

@kavilla kavilla merged commit 6e3db6c into 2.x Jul 11, 2023
@github-actions github-actions bot deleted the backport/backport-4502-to-2.x branch July 11, 2023 20:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autocut Skip the changelog verification check on backports dashboards de-angular de-angularize work distinguished-contributor v2.9.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants