Skip to content

Commit 1db83ba

Browse files
Fix collection mapper accessibility issues
- Added missing aria-labels to input checkboxes - Fixed multiple tab related accessibility issues
1 parent 5b21d14 commit 1db83ba

4 files changed

Lines changed: 12 additions & 6 deletions

File tree

src/app/item-page/edit-item-page/edit-item-page.component.html

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,13 @@
44
<h2 class="border-bottom">{{'item.edit.head' | translate}}</h2>
55
<div class="pt-2">
66
<ul class="nav nav-tabs justify-content-start" role="tablist">
7-
<li *ngFor="let page of pages" class="nav-item" [attr.aria-selected]="page.page === currentPage" role="tab">
7+
<li *ngFor="let page of pages" class="nav-item" role="presentation">
88
<a *ngIf="(page.enabled | async)"
9+
[attr.aria-selected]="page.page === currentPage"
910
class="nav-link"
1011
[ngClass]="{'active' : page.page === currentPage}"
11-
[routerLink]="['./' + page.page]">
12+
[routerLink]="['./' + page.page]"
13+
role="tab">
1214
{{'item.edit.tabs.' + page.page + '.head' | translate}}
1315
</a>
1416
<span [ngbTooltip]="'item.edit.tabs.disabled.tooltip' | translate">

src/app/item-page/edit-item-page/item-collection-mapper/item-collection-mapper.component.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ <h2>{{'item.edit.item-mapper.head' | translate}}</h2>
66
<p>{{'item.edit.item-mapper.description' | translate}}</p>
77

88
<ul ngbNav (navChange)="tabChange($event)" [destroyOnHide]="true" #tabs="ngbNav" class="nav-tabs">
9-
<li [ngbNavItem]="'browseTab'">
9+
<li [ngbNavItem]="'browseTab'" role="presentation">
1010
<a ngbNavLink>{{'item.edit.item-mapper.tabs.browse' | translate}}</a>
1111
<ng-template ngbNavContent>
1212
<div class="mt-2">
@@ -22,7 +22,7 @@ <h2>{{'item.edit.item-mapper.head' | translate}}</h2>
2222
</div>
2323
</ng-template>
2424
</li>
25-
<li [ngbNavItem]="'mapTab'">
25+
<li [ngbNavItem]="'mapTab'" role="presentation">
2626
<a ngbNavLink>{{'item.edit.item-mapper.tabs.map' | translate}}</a>
2727
<ng-template ngbNavContent>
2828
<div class="row mt-2">

src/app/shared/object-select/collection-select/collection-select.component.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@
1111
<table id="collection-select" class="table table-striped table-hover">
1212
<thead>
1313
<tr>
14-
<th></th>
14+
<th aria-hidden="true"></th>
1515
<th scope="col">{{'collection.select.table.title' | translate}}</th>
1616
</tr>
1717
</thead>
1818
<tbody>
1919
<tr *ngFor="let collection of collectionsRD?.payload?.page">
20-
<td><input class="collection-checkbox" [ngModel]="getSelected(collection.id) | async" (change)="switch(collection.id)" type="checkbox" name="{{collection.id}}"></td>
20+
<td><input #selectCollectionBtn [attr.aria-label]="(selectCollectionBtn.checked ? 'collection.select.table.deselect' : 'collection.select.table.select') | translate" class="collection-checkbox" [ngModel]="getSelected(collection.id) | async" (change)="switch(collection.id)" type="checkbox" name="{{collection.id}}"></td>
2121
<td><a [routerLink]="['/collections', collection.id]">{{ dsoNameService.getName(collection) }}</a></td>
2222
</tr>
2323
</tbody>

src/assets/i18n/en.json5

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1092,6 +1092,10 @@
10921092

10931093
"collection.select.empty": "No collections to show",
10941094

1095+
"collection.select.table.select": "Select collection",
1096+
1097+
"collection.select.table.deselect": "Deselect collection",
1098+
10951099
"collection.select.table.title": "Title",
10961100

10971101
"collection.source.controls.head": "Harvest Controls",

0 commit comments

Comments
 (0)