You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Notes on using @axe-core/react tooling to meet WCAG level AA (mid range) compliance - alerts that still exist in the React app, and 18F Checklist for WCAG 2.0 AA compliance
Global Components
Tables
Most pages contain a table. These findings are common across all/most tables.
Heading level for user greeting #300 If logged in, the Hello, <user>! in the top App bar is being rendered as h6 level, despite having variant="subtitle1".
RJSF styling for 508 compliance #302 Its the labels for the rjsf form that have a divider bar under them - can't figure out how to apply a class name override the docs are not helpful
RJSF styling for 508 compliance #302 Remove message from parameter list is just a - icon with no aria-label, cannot easily modify as it is a rjsf form stub
Keyboard Navigation
Adjust tooltips for accessibility #355 Tooltips follow mouse too closely instead of anchoring to the text - when using keyboard navigation they all appear in the top left corner of the page
Keyboard navigation #357 Cannot navigate to remove items from a list ex echo_list_model list of strings
Request View page toggle #305 Toggle for Formatted - The alert is for the text, which passes. However the toggle icon itself currently does NOT pass color contrast requirements for either theme, very difficult to style this Switch component beyond the props provided by MUI which only give color options of success, info, error, primary etc which none are contrast enough to our chosen theme colors. Could override the actual color itself in the theme settings I believe, but would affect all of the UI not just the switch (which may be fine?)
Request view loading button #361 Loading button (inplace of Refresh) is difficult to read because of contrast but that may be ok
Notes:
Fix Request View's Remake Request button #306Remake Request button, dark mode - nearly impossible to see when disabled, color is just alpha over the background, could not quickly figure out how to adjust color
Dropzone modal bug #308 After making necessary header modifications, clicking Import modal reverts styling on main page. Seems like this is a bug in the material-ui-dropzone code. The repo seems abandoned. Try switching to a forked repo that is supposed to support MUI5 (which we use).
Table header buttons have inconsistent styling #303 The Cancel Scheduling button is now styled differently than the buttons on the main Jobs View page. In dark mode it is very difficult to see (despite contrast ratios being ok)
Table header buttons have inconsistent styling #303 The Cancel Scheduling and Back buttons are now styled differently than the buttons on the main Jobs View page. In dark mode it is very difficult to see (despite contrast ratios being ok)
RJSF styling for 508 compliance #302 Its the labels for the rjsf form that have a divider bar under them - can't figure out how to apply a class name override the docs are not helpful
RJSF styling for 508 compliance #302 Its the labels for the rjsf form that have a divider bar under them - can't figure out how to apply a class name override the docs are not helpful
Update Job form spacing #309 To match Create Job page, form inputs should be slightly inset and button group should align with input (cards spacing is ok)
Controlled input when creating garden #311 Setting host/port for first time throws A component is changing an uncontrolled input to be controlled DevTools error. This happens when a value tied to an input is initialized as undefined and then later defined when the user types in something. Code smell, should not impact functionality
System Admin card ellipsis #315 System card title when truncated, the ellipsis is the wrong color (can't even see it in light mode because it is black on dark blue)
Sync Users modal table #319 Table has an extra row - probably just needs disable filters flag (... turns out there is no flag to turn it off, it only turns off if Global filter is turned on)
Colors were manually checked using color contrast analyzer and verified to meet level AA contrast ratios, but the color choice does not meet level AAA small text contrast ratio (generally meets AAA large text ratio). The @axe/core-react alert is still going off for some reason despite axe docs saying AAA is disabled by default. Alert may also be due to opacity levels or for some other reason that requires manual checking (which is now done)
Tooltip reporting inconsistencies
The tooltip sometimes alerts, sometimes does not. Sometimes alert is for colors which do not meet any WCAG contrast ratios, but are not colors we have explicitly set for the tooltip so unsure where they come from. Maybe the reporter is catching transition in/out color?
Additionally, sometimes there is an alert for "All page content should be contained by landmarks" indicating that the tooltip is not inside a landmark. Unsure that this is fixable as the tool-tip rendering is handled by MUI.
The type display that is tiny font of int, string, etc needs to be a darker shade than it currently is presenting since it is so small. Even with changes on this branch, the font does not pass. This color is set as an offset from the theme color for the actual data value that we set and provided to RJV. The only way we could make this color pass is to darken the overall color - but then it darkens/dulls out the overall presentation as the color is linked to the larger text. Some alerts may be because it is indicating manual check required due to opacity set by RJV on elements
For some reason labels are flagged as wrong/missing. Adding aria-label or aria-labelledby adds "Elements must only use allowed ARIA attributes" flag but doesn't remove the "Form elements must have labels" flag. Can remove flags by adding label (and InputLabelProps={{shrink: true}} to make the label stay superscript-ed) but can't find a way to then hide the label and it is incompatible with existing ticket to remove extra space around the filter inputs to have the label showing. Adding InputLabelProps={{'aria-label': 'Start date'}} did not remove the flag either.
Notes on using
@axe-core/react
tooling to meet WCAG level AA (mid range) compliance - alerts that still exist in the React app, and 18F Checklist for WCAG 2.0 AA complianceGlobal Components
Tables
Most pages contain a table. These findings are common across all/most tables.
Snackbar Alerts
Inline Alerts
Specific Pages
Nav Drawer/App bar
(these "show up" on every page as the nav bar is always present, hidden/closed or not)
nav
landmark see 18F checklist for detailsHello, <user>!
in the top App bar is being rendered as h6 level, despite having variant="subtitle1".Systems Index
Command Index
Command View
-
icon with no aria-label, cannot easily modify as it is a rjsf form stubRequests Index
Notes:
Refresh
button is not styled to match the new Jobs table header buttonsRequest View
Formatted
- The alert is for the text, which passes. However the toggle icon itself currently does NOT pass color contrast requirements for either theme, very difficult to style thisSwitch
component beyond the props provided by MUI which only give color options ofsuccess
,info
,error
,primary
etc which none are contrast enough to our chosen theme colors. Could override the actual color itself in the theme settings I believe, but would affect all of the UI not just the switch (which may be fine?)Notes:
Remake Request
button, dark mode - nearly impossible to see when disabled, color is just alpha over the background, could not quickly figure out how to adjust colorParameters
orOutput
card, theRemake Request
button becomes disabled until refreshJobs Index (Scheduler)
Notes:
material-ui-dropzone
code. The repo seems abandoned. Try switching to a forked repo that is supposed to support MUI5 (which we use).Choose System (Create Job)
x
button in global filterNotes:
Cancel Scheduling
button is now styled differently than the buttons on the main Jobs View page. In dark mode it is very difficult to see (despite contrast ratios being ok)Choose Command (Create Job)
Notes:
Cancel Scheduling
andBack
buttons are now styled differently than the buttons on the main Jobs View page. In dark mode it is very difficult to see (despite contrast ratios being ok)Create Job form page
Trigger Type
Job View
Update Job
Trigger Type
Notes:
Admin Gardens
Notes:
Create Garden modal
Add Header
andCreate Garden
buttons.Notes:
A component is changing an uncontrolled input to be controlled
DevTools error. This happens when a value tied to an input is initialized asundefined
and then later defined when the user types in something. Code smell, should not impact functionalityAdd header
button difficult to see in dark modeGarden Info View
Notes:
Add header
button difficult to see in dark modeAdmin Systems
aria-label
to MenuItem or Alert did not resolve. See MUI docs, similar dilemma as widget check noteNotes:
Admin Blocklist
aria-label
to MenuItem did not resolve. See MUI docs, similar dilemma as widget check noteAdd command modal
Login
Notes:
Admin Users Index
Notes:
Sync Users Modal
Notes:
Add User Modal
User View
Notes
Manually checked color contrast
Colors were manually checked using color contrast analyzer and verified to meet level AA contrast ratios, but the color choice does not meet level AAA small text contrast ratio (generally meets AAA large text ratio). The
@axe/core-react
alert is still going off for some reason despite axe docs saying AAA is disabled by default. Alert may also be due to opacity levels or for some other reason that requires manual checking (which is now done)Tooltip reporting inconsistencies
The tooltip sometimes alerts, sometimes does not. Sometimes alert is for colors which do not meet any WCAG contrast ratios, but are not colors we have explicitly set for the tooltip so unsure where they come from. Maybe the reporter is catching transition in/out color?
Additionally, sometimes there is an alert for "All page content should be contained by landmarks" indicating that the tooltip is not inside a landmark. Unsure that this is fixable as the tool-tip rendering is handled by MUI.
JSON Cards
The
type
display that is tiny font ofint
,string
, etc needs to be a darker shade than it currently is presenting since it is so small. Even with changes on this branch, the font does not pass. This color is set as an offset from the theme color for the actual data value that we set and provided to RJV. The only way we could make this color pass is to darken the overall color - but then it darkens/dulls out the overall presentation as the color is linked to the larger text. Some alerts may be because it is indicating manual check required due to opacity set by RJV on elementsDate-time-picker widget
For some reason labels are flagged as wrong/missing. Adding
aria-label
oraria-labelledby
adds "Elements must only use allowed ARIA attributes" flag but doesn't remove the "Form elements must have labels" flag. Can remove flags by addinglabel
(andInputLabelProps={{shrink: true}}
to make the label stay superscript-ed) but can't find a way to then hide the label and it is incompatible with existing ticket to remove extra space around the filter inputs to have the label showing. AddingInputLabelProps={{'aria-label': 'Start date'}}
did not remove the flag either.Other
helperText
might not be correctly linked to the inputThe text was updated successfully, but these errors were encountered: