Fixed a11y violations and typos in translations for messages in the dialog message for disabling clients. (#26395)

* fixed critical violations

Signed-off-by: Agnieszka Gancarczyk <agancarc@redhat.com>

* fixed more a11y violations

Signed-off-by: Agnieszka Gancarczyk <agancarc@redhat.com>

* renamed translation

Signed-off-by: Agnieszka Gancarczyk <agancarc@redhat.com>

* added area-label

Signed-off-by: Agnieszka Gancarczyk <agancarc@redhat.com>

* added area-label

Signed-off-by: Agnieszka Gancarczyk <agancarc@redhat.com>

* renamed spinners translation

Signed-off-by: Agnieszka Gancarczyk <agancarc@redhat.com>

---------

Signed-off-by: Agnieszka Gancarczyk <agancarc@redhat.com>
Co-authored-by: Agnieszka Gancarczyk <agancarc@redhat.com>
This commit is contained in:
agagancarczyk 2024-01-23 09:28:50 +00:00 committed by GitHub
parent d9f8a1bf4e
commit 73e5c8290f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 29 additions and 13 deletions

View file

@ -893,8 +893,8 @@ eventTypes.FEDERATED_IDENTITY_LINK_ERROR.name=Federated identity link error
eventTypes.EXECUTE_ACTIONS.name=Execute actions
encryptAssertions=Encrypt assertions
disableConfirmTitle=Disable realm?
disableConfirmTitleClient=Disable client?
dirableConfirmClient=Are you sure you want to disable this client?
disableConfirmTitleClientTitle=Disable client?
disableConfirmClient=Are you sure you want to disable this client?
custom=Custom Attribute...
keyTab=Key tab
addSamlProvider=Add SAML provider
@ -3044,3 +3044,7 @@ selectFlowType=Select flow type
selectClientAssertionSigningAlg=Select client assertion signing algorithm
resourceDetailsTypeHelp=The type of this resource. It can be used to group different resource instances with the same type.
searchForClientPolicy=Search for client policy
selectVendor=Select vendor
spinnerLoading=Loading
enableClientSignatureRequiredModal=Enable client signature required
selectBindType=Select bind type

View file

@ -67,7 +67,7 @@ export function DraggableTable<T>({
const draggedItemId = evt.currentTarget.id;
evt.currentTarget.classList.add(styles.modifiers.ghostRow);
evt.currentTarget.setAttribute("aria-pressed", "true");
evt.currentTarget.setAttribute("aria-grabbed", "true");
setState({ ...state, draggedItemId, dragging: true });
};
@ -101,7 +101,7 @@ export function DraggableTable<T>({
const onDragCancel = () => {
Array.from(bodyRef.current?.children || []).forEach((el) => {
el.classList.remove(styles.modifiers.ghostRow);
el.setAttribute("aria-pressed", "false");
el.setAttribute("aria-grabbed", "false");
});
setState({
...state,
@ -172,7 +172,7 @@ export function DraggableTable<T>({
const onDragEnd = (evt: ReactDragEvent) => {
const tr = evt.target as HTMLTableRowElement;
tr.classList.remove(styles.modifiers.ghostRow);
tr.setAttribute("aria-pressed", "false");
tr.setAttribute("aria-grabbed", "false");
setState({
...state,
draggedItemId: "",

View file

@ -114,7 +114,7 @@ export const SamlKeysDialog = ({
return (
<Modal
variant={ModalVariant.medium}
aria-labelledby={t("enableClientSignatureRequired")}
aria-label={t("enableClientSignatureRequiredModal")}
header={
<TextContent>
<Title headingLevel="h1">{t("enableClientSignatureRequired")}</Title>

View file

@ -33,7 +33,12 @@ export const GeneratedCodeTab = ({
</CodeBlockAction>
}
>
<KeycloakTextArea id={`text-area-${label}`} rows={20} value={text} />
<KeycloakTextArea
id={`text-area-${label}`}
rows={20}
value={text}
aria-label={label}
/>
</CodeBlock>
) : (
<EmptyState variant="large" id={label}>

View file

@ -1,7 +1,12 @@
import { Bullseye, Spinner } from "@patternfly/react-core";
import { useTranslation } from "react-i18next";
export const KeycloakSpinner = () => (
export const KeycloakSpinner = () => {
const { t } = useTranslation();
return (
<Bullseye>
<Spinner />
<Spinner aria-label={t("spinnerLoading")} />
</Bullseye>
);
);
};

View file

@ -282,6 +282,7 @@ export const LdapSettingsConnection = ({
selections={field.value}
variant={SelectVariant.single}
data-testid="ldap-bind-type"
aria-label={t("selectBindType")}
>
<SelectOption value="simple" />
<SelectOption value="none" />

View file

@ -179,6 +179,7 @@ export const LdapSettingsGeneral = ({
}}
selections={field.value}
variant={SelectVariant.single}
aria-label={t("selectVendor")}
>
<SelectOption key={0} value="ad" isPlaceholder>
Active Directory