Every toggle in this file carried aria-label="aria.toggleLegend" and no aria-expanded, so a screen-reader user was told the control is a toggle and never told whether the legend was open or closed. SemanticTreeLegend has had this right all along; this is the copy that drifted, and it drifted on whether the control is usable without sight rather than on how it looks. gospel found it while measuring four implementations of the same control. I verified it here before changing anything rather than taking the report: zero occurrences of aria-expanded against four toggle labels. One computed drives all four buttons, so they cannot disagree with each other about a state they all describe — which is the same failure, one level down, as four files disagreeing about the control. This is the accessibility half of the C11 collapse-caret promotion and does not wait for it: the promotion is a refactor, this is a defect. |
||
|---|---|---|
| .. | ||
| charts | ||
| dashboards | ||
| hints | ||
| legends | ||
| map-controls | ||
| poster | ||
| qa | ||
| regions | ||
| search | ||
| tables | ||
| BackToTopButton.vue | ||
| PeopleGroupDetail.vue | ||
| README.md | ||
| ResearchMapFilterPanel.vue | ||
| ResearchMapSideMenu.vue | ||
| SideMenuDrawer.vue | ||
| ViewSelect.vue | ||
| WARNING.md | ||
library/components/ — shared Vue components
The map UI, built from parameterized pieces every app-profile reuses. Fix one here and every map benefits — never edit a shared component to customize one map.
library/components/
┌───────────────────────────────────────────┐
│ legends/ map-controls/ poster/ │
│ charts/ tables/ │
│ PeopleGroupDetail.vue SideMenuDrawer.vue │
│ ResearchMapFilterPanel.vue …SideMenu.vue │
└───────────────────────────────────────────┘
reused by every app-profile via @map/components/…
legends/,map-controls/,poster/each have their own README.- Every component uses
<script setup>, callsuseShadowStyles(), and reaches stores viainject('mapStore' | 'uiStore' | 'dataStore')— never a direct store import.
Full catalog + conventions:
../../documentation/architecture/components.md ·
per-file roles: ../../documentation/reference.md.