release: v1.5.0#182
Merged
MiquelAdell merged 47 commits intomasterfrom Apr 24, 2026
Merged
Conversation
…with comments Add comment field to DataValueBase and extract it from the DHIS2 API response. CommentIcon now shows a green dot badge when the associated data value has a comment, threaded through DataElementItem. Enabled by default for all datasets with no configuration needed. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Extract hasComment() to domain utility in DataValue.ts (single source of truth, tested via production code not test-local copy) - Guard data value lookup behind !noComment to skip wasted work when comment icon is not rendered - Make hasComment a required boolean prop on CommentIcon - Remove unnecessary explicit comment: undefined from fixture Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove display:flex from CommentIcon wrapper that was inflating the icon size. Remove temporary console.log debug statements from the repository. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Make `comment` a required string (default "") on DataValueBase instead of optional, preventing missing-comment bugs in new code paths - Introduce DataValueLookup type for store get/getOrEmpty so callers don't need to pass comment for lookups - Use `dataValue.comment.length > 0` instead of `!!` in hasComment - Fix orgUnitId in DataElementItem to use dataElement.orgUnit fallback for subnational datasets - Wrap hasComment computation in React.useMemo - Update test fixtures and assertions to match new empty-string default Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…9bz8cup hide cells for not visible columns
Allow disabling automatic validation rule pop-ups on data value save while keeping validation rules available via the DHIS2 "Run validations" button. Configured per dataset in the DataStore with `disableAutoValidation: true`. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
feat: add disableAutoValidation option for datasets
[feature]: Give dataElement toggle conditions precedence over orgUnit in toggleMultiple
normalize category options
The previous sort logic ordered the table axes by the (translated) display label, with a hard-coded "unknown"/"other" pattern to push those to the end. That broke for non-English translations: in Spanish "desconocido" sorts before "resistente" / "susceptible" alphabetically and the unknown-pattern matcher does not catch it, so the column order changes per language. Sort instead by the canonical position of the category option in its parent DHIS2 Category. The d2-api schema does not expose a sortOrder field on CategoryOption, so derive it from the array index of the categoryOptions collection on the parent Category — DHIS2 returns this collection in its canonical sort order set in the maintenance app. The index is propagated through getCocOrdered and getVisibleCategoryOptionCombos via a per-data- element lookup map, and exposed on the CategoryOption domain entity as a new `sortOrder: number` field. The hard-coded unknown-pattern bucket and numeric-prefix parsing in sortItems are deleted; the function is now a one-line sortBy on the new field. This resolves the TODO at the top of sortItems about moving the patterns into datastore config — they are no longer needed.
…alization strings
…app compatibility
…y-metadata-sortorder fix: sort DisaggregatedCOCsGrid columns/rows by metadata order
The custom tab scroll arrow was rendered with opacity 0.5 when its direction was already exhausted (leftmost/rightmost). The arrow remained visible and absolutely positioned over the tablist, so on forms with few tabs that start at x=0 (e.g. EUR annual with 4 tabs at narrow widths) the disabled left arrow overlapped the first tab label. On forms with many tabs the issue went unnoticed because the first tab was scrolled off screen, leaving the arrow over the fade gradient. Set opacity to 0 and pointer-events to none when the direction is exhausted, so the arrow disappears entirely until there is something to scroll to — matching the natural expectation that a scroll affordance only appears when scrolling is possible.
fix(tabs): hide scroll arrow when at scroll boundary
- change version to D2 Autogen Forms version to avoid confussions
[feature]: Add form info to display form version
Addresses review feedback on #164: - DataValueLookup narrowed to orgUnitId/period/categoryOptionComboId — the lookup methods (get, getOrEmpty, getEmpty) do not need comment or isRequired. - MirrorDataElementItem annotates dataValueBase with DataValueLookup so TS catches stray properties; drops the unused isRequired passthrough.
feat(comments): visual indicator for data values with comments
…mbos Error with periods not restoring data
…ibility-fixes Feat/new data entry app compatibility fixes
…th-period-offset [fix]: Apply rules to sections with period offset
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
chore: update configurator app icon
Bump app version to 1.5.0 and align configurator to 1.5.0 for the release. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
BundleMonNo change in files bundle size Groups updated (1)
Final result: ❌ View report in BundleMon website ➡️ |
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.
Summary
Merge
developmentintomasterto cut release v1.5.0.Includes PRs merged since v1.4.0: #153, #164, #170, #171, #172, #174, #175, #176, #177, #178, #180, #181, plus the 1.5.0 version bump.
Test plan
v1.5.0on GitHub is published with the rebuilt assets (d2-autogen-forms.zip,d2-autogen-configurator.zip,custom-data-form.html).