Aman-Mittal opened a new issue, #497:
URL: https://github.com/apache/fineract-backoffice-ui/issues/497

   Three unrelated, self-contained defects found during a live testing pass 
against `main`. Grouped into one issue because each is a few lines; happy to 
split if that is preferred.
   
   ## 1. The Guide button's accessible name does not match its visible label
   
   `src/app/layout/header.component.ts` sets `[attr.aria-label]="'Help Tour'"` 
on a button whose visible text reads **Guide**:
   
   ```
   button "Help Tour"     ← accessibility tree
   Guide                  ← what is on screen
   ```
   
   Lighthouse flags this as `label-content-name-mismatch`. It matters for two 
groups: someone using speech control cannot activate the control by the name 
they can see, and someone told "click Guide" by a sighted colleague finds no 
such control announced. The accessible name should contain the visible label.
   
   Note the visible text is a hardcoded string rather than a translation key — 
a separate, larger gap that is not worth widening this fix to cover.
   
   ## 2. `index.html` has no meta description
   
   `src/index.html` declares `<title>` and viewport but no `<meta 
name="description">`, so the page offers nothing to a link preview, a crawler, 
or a browser's own history/suggestion surface. Lighthouse SEO scores it 0.
   
   Static and deployment-agnostic text is fine here: the branding overlay 
documented in `DOCS/CUSTOMIZATION.md` covers `appName`, logo and tokens **at 
runtime**, not static `<head>` content, so a sensible default does not conflict 
with anything a deployer can already override.
   
   ## 3. Notifications renders an empty `<tbody>` rather than an empty state
   
   `/notifications` with no notifications renders the column headers (Message, 
Read, Date) and a **completely empty** table body — confirmed via 
`document.querySelector('table tbody').innerHTML`, which returns only Angular 
comment placeholders.
   
   Every other list screen shows explicit empty-state copy, because they use 
the shared `app-data-table`, which already handles this via `*cdkNoDataRow`. 
`notifications-list.component.ts` builds its own bespoke `cdk-table` and so 
never inherited it. The result is that the one screen a user is most likely to 
visit expecting nothing looks broken rather than intentionally empty — 
indistinguishable from a failed load.
   
   Reusing the existing `COMMON.NO_DATA` key and the `.no-data-row td` styling 
convention keeps it consistent with the rest of the app.
   
   ## Environment
   
   All three reproduced against a clean checkout of `main` (`a24a06ba`) served 
with `ng serve`, backend `sandbox.mifos.community`, Chrome.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to