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

#9683: add Details Panel for MS dashboard #9689

Merged
merged 9 commits into from
Nov 21, 2023

Conversation

mahmoudadel54
Copy link
Contributor

@mahmoudadel54 mahmoudadel54 commented Nov 10, 2023

Description

It is a new feature added to MS for dashboard. I added Details panel widget to dashboard.

  • It reflects on Resource grids, dashboard views [View, Edit modes].
  • The tool have the same options (eg. show as modal, show at startup etc.)
  • The tool is defined in the same way of the corresponding one for maps.
  • Edit the layout to put add widget & show/hide connection buttons to the sidebar menu

Please check if the PR fulfills these requirements

What kind of change does this PR introduce? (check one with "x", remove the others)

  • Bugfix
  • Feature
  • Code style update (formatting, local variables)
  • Refactoring (no functional changes, no api changes)
  • Build related changes
  • CI related changes
  • Other... Please describe:

Issue

#9683

What is the current behavior?
#9683

What is the new behavior?
Details panel widget is added for dashboard. User can add/edit dashboard details and set some details for the dashboard and set some options like opening this details on startup, show details on modal/right panel via resource grids and from dashboard view page in view/edit modes.

Breaking change

Does this PR introduce a breaking change? (check one with "x", remove the other)

  • Yes, and I documented them in migration notes
  • No

-  The tool have the same options (eg. show as modal, show at startup etc.)
- The tool is defined in the same way of the corresponding one for maps.
- Edit the layout to put add widget & show/hide connection buttons to the sidebar menu
@mahmoudadel54 mahmoudadel54 added this to the 2024.01.00 milestone Nov 10, 2023
@mahmoudadel54 mahmoudadel54 requested a review from MV88 November 10, 2023 13:43
@mahmoudadel54 mahmoudadel54 self-assigned this Nov 10, 2023
Copy link
Contributor

@MV88 MV88 left a comment

Choose a reason for hiding this comment

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

  • there is clearly something wrong here when you create a new dashboard

image

while it works fine when you load a dashboard
image

  • the style of plus button should be blank bg (similar to others) from the start and maybe should be the second one, after login and when pressed it should become like it is now. because primary background means something active

  • also we should make become a only open button or become unclickable (disabled but visible)

  • i cannot drag and drop or resize widgets on the right if I load this dashboard: http://localhost:8081/?debug=true#/dashboard/21694
    image
    it works until a certain point notice the cursor, maybe that is the space of details panel which covers click on the area
    image
    anyway here the placeable area (red background area) looks properly calculated
    image

web/client/actions/__tests__/details-test.js Show resolved Hide resolved
web/client/components/layout/BorderLayout.jsx Outdated Show resolved Hide resolved
web/client/components/details/DetailsPanel.jsx Outdated Show resolved Hide resolved
web/client/components/misc/panels/DockPanel.jsx Outdated Show resolved Hide resolved
web/client/themes/default/less/panels.less Outdated Show resolved Hide resolved
web/client/plugins/SidebarMenu.jsx Outdated Show resolved Hide resolved
web/client/plugins/SidebarMenu.jsx Outdated Show resolved Hide resolved
web/client/epics/tutorial.js Outdated Show resolved Hide resolved
web/client/plugins/DashboardEditor.jsx Show resolved Hide resolved
web/client/plugins/Details.jsx Outdated Show resolved Hide resolved
@tdipisa tdipisa linked an issue Nov 14, 2023 that may be closed by this pull request
3 tasks
* description:
- remove all dashboard selectors and pieces of code in generic components like sidebar plugin component that relevant to dashboard.
- add missing test for detailsLoaded action
- create new selectors, details uri selector and details settings se;ector that are used in many places in code
- move AddWidgetDashboard, MapConnedctionDashboard plugins to direct plugins folder
- Put global spinner in details plugin and remove it from sidebar plugin
-  edit in handleSave enhancer file to make update attributes of details just implemented for Map and Dashboard
- Add custom style in details.less as the lib of react-dock doesn't allow to override left css property
- remove unused added style from panels.less
@mahmoudadel54 mahmoudadel54 requested a review from MV88 November 15, 2023 14:17
Copy link
Contributor

@MV88 MV88 left a comment

Choose a reason for hiding this comment

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

looks better i have only noticed a few minor things:

  • the language selector goes behind body panel, but with a z-index it gets fixed, please test
    image
  • the Save button has no tooltip
  • loading property is no longer needed in the DashboardEditor plugin

web/client/components/layout/BorderLayout.jsx Outdated Show resolved Hide resolved
@mahmoudadel54
Copy link
Contributor Author

mahmoudadel54 commented Nov 20, 2023

looks better i have only noticed a few minor things:

  • the language selector goes behind body panel, but with a z-index it gets fixed, please test
    image
  • the Save button has no tooltip
  • loading property is no longer needed in the DashboardEditor plugin

For z-index point, I see that z-index of #mapstore-sidebar-menu-container = 1030
I have tried to put a z-index to #mapstore-navbar-container with 1031 and it works well so I can specify this style in dashblaod.less to be just for dashboard page only instead of generalize it.
https://github.com/geosolutions-it/MapStore2/blob/1e51fd9fa86b6aca7cbb88bcb143cd7bed6d6677/web/client/themes/default/less/dashboard.less#L29C1-L33C1

What do you think ? @MV88

Description:
- Reolve unused loading property from DashoardEditor file
- Add tooltip for save dashboard
- Remove custom style in BorderLayout and leave it with generic style
@MV88
Copy link
Contributor

MV88 commented Nov 20, 2023

#mapstore-navbar-container

hi if the fix you found is increasing #mapstore-navbar-container z-index i would not put it inside dashboard.less. but instead in navbar.less and also maybe you can remove the z-index definition of that inside dashboard.less

Description:
- edit navbar.less files to fix going language selector behind body panel
- remove unused z-index in dashboard.less
@mahmoudadel54 mahmoudadel54 requested a review from MV88 November 20, 2023 10:58
@MV88 MV88 merged commit d40233d into geosolutions-it:master Nov 21, 2023
4 checks passed
@MV88
Copy link
Contributor

MV88 commented Nov 21, 2023

@ElenaGallo please test in DEV

@ElenaGallo
Copy link
Contributor

@mahmoudadel54 @tdipisa There are no Export, Import and Delete buttons in the new sidebar.

QA
qa

DEV
dev

@MV88 MV88 added the BackportNeeded Commits provided for an issue need to be backported to the milestone's stable branch label Nov 24, 2023
@MV88
Copy link
Contributor

MV88 commented Nov 24, 2023

this has to be backported in c040-2023.02.xx

MV88 added a commit to MV88/MapStore2 that referenced this pull request Nov 24, 2023
…s-it#9689)

* geosolutions-it#9683: add Details Panel for MS dashboard
-  The tool have the same options (eg. show as modal, show at startup etc.)
- The tool is defined in the same way of the corresponding one for maps.
- Edit the layout to put add widget & show/hide connection buttons to the sidebar menu

* geosolutions-it#9683: resolve the FE test

Update DashboardEditor.jsx

* geosolutions-it#9683: resolve review comments
* description:
- remove all dashboard selectors and pieces of code in generic components like sidebar plugin component that relevant to dashboard.
- add missing test for detailsLoaded action
- create new selectors, details uri selector and details settings se;ector that are used in many places in code
- move AddWidgetDashboard, MapConnedctionDashboard plugins to direct plugins folder
- Put global spinner in details plugin and remove it from sidebar plugin
-  edit in handleSave enhancer file to make update attributes of details just implemented for Map and Dashboard
- Add custom style in details.less as the lib of react-dock doesn't allow to override left css property
- remove unused added style from panels.less

* geosolutions-it#9683: remove unused comments in dashboard-test file

* geosolutions-it#9683: edit in details epics and selectors to fix FE test

* geosolutions-it#9683: Resolve review comments
Description:
- Reolve unused loading property from DashoardEditor file
- Add tooltip for save dashboard
- Remove custom style in BorderLayout and leave it with generic style

* geosolutions-it#9683: resolve review comments
Description:
- edit navbar.less files to fix going language selector behind body panel
- remove unused z-index in dashboard.less
# Conflicts:
#	web/client/epics/__tests__/config-test.js
#	web/client/epics/config.js
@mahmoudadel54
Copy link
Contributor Author

this has to be backported in c040-2023.02.xx

Backport is done --- > #9750

tdipisa pushed a commit that referenced this pull request Nov 27, 2023
* Fix #9624 Point cloud shading options (#9666)

* Fix #9666 Include pointCloudShading option to saved layer config (#9670)

* #9606 Error with circle annotations + radius selection (#9607) (#9727)

Co-authored-by: Diego Vargas <[email protected]>

* Fix #9295 added better handling of format in csw service (#9712) (#9732)

* #9702: Fix - Background selector in contexts won't retain thumbnail in view mode (#9720) (#9744)

* #9567: handle functionality of zoom to record in table widgets (#9608)

* #9567: handle functionality of zoom to record in table widgets

* Fix: Correct failing test cases for zoom records issue in table widgets (#9567)
This commit addresses the failing test cases related to the issue of zoom records in table widgets.
* #9567: implement the new approach in zoom to records in table widgets + writing unit tests
* #9567: handle adding flag into config file to show/hide zoom icon for tblWidget
* #9567: reset flag enableZoomInTblWidget to be true for dashboard and map viewer
* #9567: resolve comments' review:
- put flag of zoomInTblWidget as a default prop
- add translations
- edit zoomToExtent enhancer to use internal zoom
- remove selector "getFlagOfShowingTblWidgetZoom " and use plugin prop instead

* #9683: add Details Panel for MS dashboard (#9689)

* #9683: add Details Panel for MS dashboard
-  The tool have the same options (eg. show as modal, show at startup etc.)
- The tool is defined in the same way of the corresponding one for maps.
- Edit the layout to put add widget & show/hide connection buttons to the sidebar menu

* #9683: resolve the FE test

Update DashboardEditor.jsx

* #9683: resolve review comments
* description:
- remove all dashboard selectors and pieces of code in generic components like sidebar plugin component that relevant to dashboard.
- add missing test for detailsLoaded action
- create new selectors, details uri selector and details settings se;ector that are used in many places in code
- move AddWidgetDashboard, MapConnedctionDashboard plugins to direct plugins folder
- Put global spinner in details plugin and remove it from sidebar plugin
-  edit in handleSave enhancer file to make update attributes of details just implemented for Map and Dashboard
- Add custom style in details.less as the lib of react-dock doesn't allow to override left css property
- remove unused added style from panels.less

* #9683: remove unused comments in dashboard-test file

* #9683: edit in details epics and selectors to fix FE test

* #9683: Resolve review comments
Description:
- Reolve unused loading property from DashoardEditor file
- Add tooltip for save dashboard
- Remove custom style in BorderLayout and leave it with generic style

* #9683: resolve review comments
Description:
- edit navbar.less files to fix going language selector behind body panel
- remove unused z-index in dashboard.less
# Conflicts:
#	web/client/epics/__tests__/config-test.js
#	web/client/epics/config.js

* #9683: resolve test comment (#9730)

- Adding export, import, delete dashboard
- Reorder shown plugins in sidebar for dashboard

* #9683: add Details Panel for MS dashboard [Editing the detail panel tooltip and title]  (#9740)

* #9683: resolve test comment
Description:
- edit the detail panel tooltip and shown title and make it generic one
- Add translations for the new tooltip

* Update web/client/translations/data.it-IT.json

---------

Co-authored-by: Matteo V <[email protected]>

* #9728 fix misalignement issue (#9731) (#9742)

* Fix #9729 fixed formats in catalog used in dashboard (#9733) (#9747)

---------

Co-authored-by: stefano bovio <[email protected]>
Co-authored-by: Diego Vargas <[email protected]>
Co-authored-by: Suren <[email protected]>
Co-authored-by: mahmoud adel <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BackportNeeded Commits provided for an issue need to be backported to the milestone's stable branch C040-COMUNE_GE-2023-CUSTOM-SUPPORT New Feature used for new functionalities
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Details panel for MS dashboards
3 participants