...
Verbesserung der Barrierefreiheit
Zur Verbesserung der Barrierefreiheit wurden eindeutigere Bezeichnungen, Platzhalter und mehr Aria-Label hinzugefügt. Um diese Änderungen in bestehenden Projekten mit Überschreibung der Konfiguration zu übernehmen, müssen folgende Konfigurationen angepasst werden.
Auf der Ticketliste wird nun im Standard besser formuliert, nach welchen Kriterien gefiltert wird. Dafür wurde der
placeholder
der Felder “Bearbeitung von” und “Zugewiesene Gruppe" in derreporting.json
undsearchForm.json
geändert:Codeblock { "component": "AutocompleteField", "colProps": { "breakpoints": { "sm": 12, "md": 6, "lg": 3 } }, "props": { "id": "assignedUser", "labelText": "ticketList.labels.assignedUser", "doSubmitOnChange": true, "controllerPath": "users", "scope": "ticketListGroupFilter", "labelTemplate": "{firstname} {lastname} ({email})", "inputProps": { "placeholder": "ticketList.labels.assignedUserPlaceholder" } } }, { "component": "AutocompleteField", "colProps": { "breakpoints": { "sm": 12, "md": 6, "lg": 3 } }, "props": { "id": "assignedGroup", "labelText": "ticketList.labels.assignedGroup", "doSubmitOnChange": true, "controllerPath": "groups", "scope": "ticketListGroupFilter", "labelTemplate": "{name}", "inputProps": { "placeholder": "ticketList.labels.assignedGroupPlaceholder" } } },
Sind auf der auf Detailansicht eines Tickets im Abschnitt “Neue Nachricht verfassen” keine Textbausteine vorhanden, kann in
newMessageForm.json
unter dem key"noOptionsPlaceholder"
ein Platzhaltertext eingefügt werden:Codeblock { "component": "GridRow", "childrenConfig": [ { "component": "TextModule", "props": { "id": "textModule", "labelText": "ticketView.labels.textmodule", "noOptionsPlaceholder": "ticketView.labels.noTextmodule", "labelClass": "px-1", "seperateCols": true, "editorId": "messageToUser", "noErrorClassName":"mb-2" } } ] },
Im
searchForm.json
muss der KomponenteMultiSelectField
ein Label für den Lösch-Button übergeben werden:Codeblock { "component": "MultiSelectField", "props": { "breakpoints": { "sm": 12, "xl": 6 }, "id": "tag", "inputProps": { "btnLabel": "buttons.delete" }, "labelText": "ticketList.labels.tag", "helpText": "ticketList.helpTexts.tag", "custom": false, "options": "tags", "doSubmitOnChange": true } }
Komponenten, die kein sichtbares Label haben, bekommen für eine barrierefreie Bedienung ein Aria-Label. Dieses muss in
massoperationForm.json
undtextmoduleFilter.json
durch die AngabeariaLabelClassName": "sr-only"
gesetzt werden:massoperationForm.json:
Codeblock { "component": "TicketRowSelectField", "colProps": { "breakpoints": { "sm": 6, "md": 4, "lg": 2 } }, "props": { "id": "selection", "dataId": "selection", "dataItem": "oid", "controllerPath": "users", "ariaLabelClassName": "sr-only", "labelText": "ticketList.labels.selectEntrys", "doSubmitOnChange": true, "options": [ { "value": "all", "label": "ticketList.labels.all" }, { "value": "no", "label": "ticketList.labels.no" } ] } }, { "component": "SelectSearchField", "colProps": { "breakpoints": { "sm": 6, "md": 4, "lg": 2 } }, "props": { "id": "status_massop", "options": "UMATTR:sd_status", "className": "w-100", "labelText": "ticketList.labels.assignStatus", "ariaLabelClassName": "sr-only", "inputProps": { "placeholder": "ticketList.labels.assignStatus" } } }, { "component": "AutocompleteField", "colProps": { "breakpoints": { "sm": 6, "md": 4, "lg": 2 } }, "props": { "id": "user", "dataId": "assignedUser", "dataItem": "oid", "controllerPath": "users", "scope": "assignment", "labelText": "ticketAdd.labels.user", "ariaLabelClassName": "sr-only", "labelTemplate": "{firstname} {lastname} ({email})", "inputProps": { "placeholder": "ticketList.labels.assignUser" } } }, { "component": "AutocompleteField", "colProps": { "breakpoints": { "sm": 6, "md": 4, "lg": 2 } }, "props": { "id": "group", "dataId": "assignedGroup", "dataItem": "oid", "controllerPath": "groups", "scope": "assignment", "labelText": "ticketAdd.labels.group", "ariaLabelClassName": "sr-only", "labelTemplate": "{name}", "inputProps": { "placeholder": "ticketList.labels.assignGroup" } } }
...