mirror of
https://github.com/bitwarden/browser
synced 2025-12-11 22:03:36 +00:00
[PS-1111] Added prefix "Vault:" for accessibility on vault selector items (#3188)
* PS-1111 Added prefix "Vault:" for accessibility to vault selector items * improved html readability * PS-1111 Added more screen reader accessibility data to the Vault selector on Desktop and Web clients * PS-1111 removed duplicated aria-label * PS-1111 Removed unnecessary aria-label attribute * PS-1111 Changed browser vault item accessibility title from span to button
This commit is contained in:
@@ -28,11 +28,17 @@
|
|||||||
appStopClick
|
appStopClick
|
||||||
(click)="selectAllVaults()"
|
(click)="selectAllVaults()"
|
||||||
[ngClass]="{ active: !myVaultOnly && !selectOrganizationId }"
|
[ngClass]="{ active: !myVaultOnly && !selectOrganizationId }"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ 'allVaults' | i18n }}"
|
||||||
>
|
>
|
||||||
<i class="bwi bwi-fw bwi-filter" aria-hidden="true"></i>
|
<i class="bwi bwi-fw bwi-filter" aria-hidden="true"></i>
|
||||||
{{ "allVaults" | i18n }}
|
{{ "allVaults" | i18n }}
|
||||||
</button>
|
</button>
|
||||||
<button *ngIf="!enforcePersonalOwnwership" appStopClick (click)="selectMyVault()">
|
<button
|
||||||
|
*ngIf="!enforcePersonalOwnwership"
|
||||||
|
appStopClick
|
||||||
|
(click)="selectMyVault()"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ 'myVault' | i18n }}"
|
||||||
|
>
|
||||||
<i class="bwi bwi-fw bwi-user" aria-hidden="true"></i>
|
<i class="bwi bwi-fw bwi-user" aria-hidden="true"></i>
|
||||||
{{ "myVault" | i18n }}
|
{{ "myVault" | i18n }}
|
||||||
</button>
|
</button>
|
||||||
@@ -40,6 +46,7 @@
|
|||||||
*ngFor="let organization of organizations"
|
*ngFor="let organization of organizations"
|
||||||
appStopClick
|
appStopClick
|
||||||
(click)="selectOrganization(organization)"
|
(click)="selectOrganization(organization)"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ organization.name }}"
|
||||||
>
|
>
|
||||||
<i
|
<i
|
||||||
*ngIf="organization.planProductType !== 1"
|
*ngIf="organization.planProductType !== 1"
|
||||||
|
|||||||
@@ -24,6 +24,7 @@
|
|||||||
class="filter-button"
|
class="filter-button"
|
||||||
(click)="clearFilter()"
|
(click)="clearFilter()"
|
||||||
[attr.aria-pressed]="!hasActiveFilter"
|
[attr.aria-pressed]="!hasActiveFilter"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ organizationGrouping.name }}"
|
||||||
>
|
>
|
||||||
{{ organizationGrouping.name | i18n }}
|
{{ organizationGrouping.name | i18n }}
|
||||||
</button>
|
</button>
|
||||||
@@ -40,6 +41,7 @@
|
|||||||
class="filter-button"
|
class="filter-button"
|
||||||
(click)="applyOrganizationFilter(organization)"
|
(click)="applyOrganizationFilter(organization)"
|
||||||
[attr.aria-pressed]="activeFilter.myVaultOnly"
|
[attr.aria-pressed]="activeFilter.myVaultOnly"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ organization.name }}"
|
||||||
>
|
>
|
||||||
<i class="bwi bwi-fw bwi-business" aria-hidden="true"></i>
|
<i class="bwi bwi-fw bwi-business" aria-hidden="true"></i>
|
||||||
{{ organization.name }}
|
{{ organization.name }}
|
||||||
@@ -71,6 +73,7 @@
|
|||||||
class="filter-button"
|
class="filter-button"
|
||||||
(click)="clearFilter()"
|
(click)="clearFilter()"
|
||||||
[attr.aria-pressed]="!hasActiveFilter"
|
[attr.aria-pressed]="!hasActiveFilter"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ organizationGrouping.name }}"
|
||||||
>
|
>
|
||||||
{{ organizationGrouping.name | i18n }}
|
{{ organizationGrouping.name | i18n }}
|
||||||
</button>
|
</button>
|
||||||
@@ -83,6 +86,7 @@
|
|||||||
class="filter-button"
|
class="filter-button"
|
||||||
(click)="applyMyVaultFilter()"
|
(click)="applyMyVaultFilter()"
|
||||||
[attr.aria-pressed]="activeFilter.myVaultOnly"
|
[attr.aria-pressed]="activeFilter.myVaultOnly"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ 'myVault' | i18n }}"
|
||||||
>
|
>
|
||||||
<i class="bwi bwi-fw bwi-user" aria-hidden="true"></i>
|
<i class="bwi bwi-fw bwi-user" aria-hidden="true"></i>
|
||||||
{{ "myVault" | i18n }}
|
{{ "myVault" | i18n }}
|
||||||
@@ -98,6 +102,7 @@
|
|||||||
<button
|
<button
|
||||||
class="filter-button"
|
class="filter-button"
|
||||||
(click)="applyOrganizationFilter(organization)"
|
(click)="applyOrganizationFilter(organization)"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ organization.name }}"
|
||||||
[attr.aria-pressed]="activeFilter.selectedOrganizationId === organization.id"
|
[attr.aria-pressed]="activeFilter.selectedOrganizationId === organization.id"
|
||||||
>
|
>
|
||||||
<i class="bwi bwi-fw bwi-business" aria-hidden="true"></i>
|
<i class="bwi bwi-fw bwi-business" aria-hidden="true"></i>
|
||||||
|
|||||||
@@ -1993,5 +1993,8 @@
|
|||||||
},
|
},
|
||||||
"cardBrandMir": {
|
"cardBrandMir": {
|
||||||
"message": "Mir"
|
"message": "Mir"
|
||||||
|
},
|
||||||
|
"vault": {
|
||||||
|
"message": "Vault"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,7 +4,11 @@
|
|||||||
<ul class="filter-options">
|
<ul class="filter-options">
|
||||||
<li class="filter-option active">
|
<li class="filter-option active">
|
||||||
<span class="filter-buttons">
|
<span class="filter-buttons">
|
||||||
<button class="filter-button">
|
<button
|
||||||
|
class="filter-button"
|
||||||
|
[attr.aria-pressed]="activeFilter.myVaultOnly"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ 'myVault' | i18n }}"
|
||||||
|
>
|
||||||
<i class="bwi bwi-fw bwi-user" aria-hidden="true"></i>
|
<i class="bwi bwi-fw bwi-user" aria-hidden="true"></i>
|
||||||
{{ "myVault" | i18n }}
|
{{ "myVault" | i18n }}
|
||||||
</button>
|
</button>
|
||||||
@@ -42,6 +46,7 @@
|
|||||||
class="filter-button"
|
class="filter-button"
|
||||||
(click)="clearFilter()"
|
(click)="clearFilter()"
|
||||||
[ngClass]="{ active: !hasActiveFilter }"
|
[ngClass]="{ active: !hasActiveFilter }"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ organizationGrouping.name | i18n }}"
|
||||||
>
|
>
|
||||||
{{ organizationGrouping.name | i18n }}
|
{{ organizationGrouping.name | i18n }}
|
||||||
</button>
|
</button>
|
||||||
@@ -53,7 +58,12 @@
|
|||||||
[ngClass]="{ active: organization.id === activeFilter.selectedOrganizationId }"
|
[ngClass]="{ active: organization.id === activeFilter.selectedOrganizationId }"
|
||||||
>
|
>
|
||||||
<span class="filter-buttons">
|
<span class="filter-buttons">
|
||||||
<button class="filter-button" (click)="applyOrganizationFilter(organization)">
|
<button
|
||||||
|
class="filter-button"
|
||||||
|
(click)="applyOrganizationFilter(organization)"
|
||||||
|
[attr.aria-pressed]="activeFilter.selectedOrganizationId === organization.id"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ organization.name }}"
|
||||||
|
>
|
||||||
<i class="bwi bwi-fw bwi-business" aria-hidden="true"></i>
|
<i class="bwi bwi-fw bwi-business" aria-hidden="true"></i>
|
||||||
{{ organization.name }}
|
{{ organization.name }}
|
||||||
</button>
|
</button>
|
||||||
@@ -79,7 +89,11 @@
|
|||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-container *ngSwitchCase="'singleOrganizationAndPersonalOwnershipPolicies'">
|
<ng-container *ngSwitchCase="'singleOrganizationAndPersonalOwnershipPolicies'">
|
||||||
<div class="filter-heading">
|
<div class="filter-heading">
|
||||||
<button class="filter-button active">
|
<button
|
||||||
|
class="filter-button active"
|
||||||
|
[attr.aria-pressed]="activeFilter.selectedOrganizationId === organizations[0].id"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ organizations[0].name }}"
|
||||||
|
>
|
||||||
<i class="bwi bwi-fw bwi-business" aria-hidden="true"></i>
|
<i class="bwi bwi-fw bwi-business" aria-hidden="true"></i>
|
||||||
{{ organizations[0].name }}
|
{{ organizations[0].name }}
|
||||||
</button>
|
</button>
|
||||||
@@ -107,6 +121,7 @@
|
|||||||
class="filter-button"
|
class="filter-button"
|
||||||
(click)="clearFilter()"
|
(click)="clearFilter()"
|
||||||
[ngClass]="{ active: !hasActiveFilter }"
|
[ngClass]="{ active: !hasActiveFilter }"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ organizationGrouping.name | i18n }}"
|
||||||
>
|
>
|
||||||
{{ organizationGrouping.name | i18n }}
|
{{ organizationGrouping.name | i18n }}
|
||||||
</button>
|
</button>
|
||||||
@@ -114,7 +129,12 @@
|
|||||||
<ul id="organization-filters" *ngIf="!isCollapsed" class="filter-options">
|
<ul id="organization-filters" *ngIf="!isCollapsed" class="filter-options">
|
||||||
<li class="filter-option" [ngClass]="{ active: activeFilter.myVaultOnly }">
|
<li class="filter-option" [ngClass]="{ active: activeFilter.myVaultOnly }">
|
||||||
<span class="filter-buttons">
|
<span class="filter-buttons">
|
||||||
<button class="filter-button" (click)="applyMyVaultFilter()">
|
<button
|
||||||
|
class="filter-button"
|
||||||
|
(click)="applyMyVaultFilter()"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ 'myVault' | i18n }}"
|
||||||
|
[attr.aria-pressed]="activeFilter.myVaultOnly"
|
||||||
|
>
|
||||||
<i class="bwi bwi-fw bwi-user" aria-hidden="true"></i>
|
<i class="bwi bwi-fw bwi-user" aria-hidden="true"></i>
|
||||||
{{ "myVault" | i18n }}
|
{{ "myVault" | i18n }}
|
||||||
</button>
|
</button>
|
||||||
@@ -130,6 +150,7 @@
|
|||||||
class="filter-button"
|
class="filter-button"
|
||||||
[ngClass]="{ 'disabled-organization': !organization.enabled }"
|
[ngClass]="{ 'disabled-organization': !organization.enabled }"
|
||||||
(click)="applyOrganizationFilter(organization)"
|
(click)="applyOrganizationFilter(organization)"
|
||||||
|
appA11yTitle="{{ 'vault' | i18n }}: {{ organization.name }}"
|
||||||
>
|
>
|
||||||
<i class="bwi bwi-fw bwi-business" aria-hidden="true"></i>
|
<i class="bwi bwi-fw bwi-business" aria-hidden="true"></i>
|
||||||
{{ organization.name }}
|
{{ organization.name }}
|
||||||
|
|||||||
Reference in New Issue
Block a user