feat: add event layer tooltips, labels, and org unit boundary checks#3710
Open
BRaimbault wants to merge 13 commits into
Open
feat: add event layer tooltips, labels, and org unit boundary checks#3710BRaimbault wants to merge 13 commits into
BRaimbault wants to merge 13 commits into
Conversation
…oltips-and-labels # Conflicts: # i18n/en.pot
Contributor
|
🚀 Deployed on https://pr-3710.maps.netlify.dhis2.org |
edoardo
reviewed
Jul 7, 2026
| cy.intercept( | ||
| 'GET', | ||
| '**/me?fields=id%2Cusername%2CdisplayName~rename(name)%2Cauthorities%2Csettings%5BkeyAnalysisDisplayProperty%2CkeyUiLocale%5D', | ||
| '**/me?fields=id%2Cusername%2CdisplayName~rename(name)%2Cauthorities%2CorganisationUnits%5Bid%2Cchildren%5Bid%2Cchildren%5Bid%5D%5D%5D%2Csettings%5BkeyAnalysisDisplayProperty%2CkeyUiLocale%5D', |
Member
There was a problem hiding this comment.
Much more readable when using encodeURIComponent like it's done in cypress/integration/usersettings.cy.js below.
edoardo
reviewed
Jul 7, 2026
| @@ -313,16 +333,20 @@ const styleByOptionSet = async (config, engine) => { | |||
| // For easier and faster lookup below | |||
| // TODO: There might be options with duplicate name, so code/id would be safer | |||
Member
There was a problem hiding this comment.
Now that Map is used there should be no duplicates.
If there is a duplicated option the name of the last iterated one ends in the Map.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Description
Adds two event-layer features:
USER_ORGUNIT/_CHILDREN/_GRANDCHILDRENkeyword selections via the current user's own org-unit tree (fetched once and cached). A new "Data quality" legend section reports boundary coverage (how many selected org units lack boundary data) alongside the existing missing-coordinates count. A boundary-fetch failure degrades gracefully (keeps events, shows a warning) instead of failing the whole layer.Quality checklist
Add N/A to items that are not applicable.
Known issues
eventLoader.js)fetchInBatches(orgUnitLoader.js,thematicLoader.js,eventLoader.js) instead of silently dropping the failed ids — deferred since one caller (orgUnitLoader.js) has no existing test coverageLEVEL-x/OU_GROUP-xorg-unit selectors aren't resolved for boundary-coverage counting (currently unreachable — those pickers are hidden for event layers today, but this would need addressing if that changes)createEventFeaturespass — can be slow for very large event layersScreenshots and tests
Instance: https://dev.im.dhis2.org/maps-app-42-3
Hover tooltips and persistent labels:
Filter and count events outside org unit boundaries
Configuration and data table:

Boundary check: 0/1 OU boundaries missing [OUs selection: Bo]: https://pr-3710.maps.netlify.dhis2.org/#/dnZNcEapXla

Boundary check: 1/2 OU boundaries missing [OUs selection: Sierra Leone + Bo]: https://pr-3710.maps.netlify.dhis2.org/#/KrmH5Rgqa9h

Boundary check: 1/1 OU boundaries missing [OUs selection: Sierra Leone]: https://pr-3710.maps.netlify.dhis2.org/#/Xasj1FEZjCT

Boundary check: all events outside: https://pr-3710.maps.netlify.dhis2.org/#/gZ6QQHZC7Pf