Skip to content

fix: registrar revisit 'session expired' and accordion overflow clipping - #80

Merged
drtechie merged 2 commits into
angular-zard-migrationfrom
fix/registrar-revisit-and-accordion-overflow
Aug 3, 2026
Merged

fix: registrar revisit 'session expired' and accordion overflow clipping#80
drtechie merged 2 commits into
angular-zard-migrationfrom
fix/registrar-revisit-and-accordion-overflow

Conversation

@gkbishnoi07

Copy link
Copy Markdown

Summary

Two independent QA fixes surfaced while running the migrated MMU-UI nurse/doctor and
registrar flows against UAT. Kept as separate commits.

1. fix(registrar): seed revisit location without emitting the cascade

Symptom: opening a beneficiary for edit/revisit immediately failed with
"session expired" and never rendered the saved location.

Cause: in revisit mode the saved location was patched with emitEvent enabled, so
the onChangeLocation cascade fired before the state/district/block/village master
lists had loaded. It hit .find(undefined) and issued location calls with /undefined
IDs → 401 → "session expired".

Fix: patch the revisit data with { emitEvent: false } so it only seeds the form.
The real cascade is driven afterwards by loadLocationFromStorage()loadState
loadDistrict → … from locationPatchDetails, which run once the master lists exist.

2. fix(ui): reveal accordion overflow once open so nested overlays aren't clipped

Symptom: dropdowns / autocomplete suggestion lists opened inside an accordion
panel were cut off by the panel edge.

Cause: z-accordion-content was permanently overflow-hidden.

Fix: keep overflow-hidden while the panel expands/collapses (so the grid-rows
height animation reveals it cleanly), then switch to overflow-visible a beat (~220ms)
after it is fully open, and revert to hidden immediately on close. Uses an effect() on
the open signal with a timeout that's cleared on every state change.

Notes

In edit/revisit mode the saved location was patched with emitEvent enabled, so
the onChangeLocation cascade fired before the state/district/block/village master
lists were loaded. That threw on `.find(undefined)` and issued location calls with
`/undefined` IDs (401 -> "session expired"). Patch the revisit data with
{ emitEvent: false } to only seed the form; the real cascade is driven afterwards
by loadLocationFromStorage() -> loadState -> loadDistrict -> ... from
locationPatchDetails.
…t clipped

Accordion content stayed overflow-hidden, so dropdowns and autocomplete suggestion
lists opened inside a panel were clipped by the panel box. Keep overflow-hidden
while the panel expands/collapses (so the grid-rows height animation reveals it
cleanly), then switch to overflow-visible a beat after it is fully open, and revert
to hidden immediately on close.
@coderabbitai

coderabbitai Bot commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 31ae2445-70d6-4129-8c32-4e09f04ced67

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@sonarqubecloud

sonarqubecloud Bot commented Aug 1, 2026

Copy link
Copy Markdown

@drtechie
drtechie merged commit 209356c into angular-zard-migration Aug 3, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants