const rules = [
{
pattern: 'Can have an accessible name.',
comment: `Can be named by a label specified by aria-label prop or a value
(IDREF) set for the aria-labelledby prop that refers to an element.`,
status: 'DONE',
tests: 'DONE',
},
];
export const accordionItemRules = [
{
pattern:
'Should expend/collapse content by pressing Space/Enter and mouse click.',
comment: `Keyboard expansion can be disabled by setting disableKeyboardExpansion prop to true.
Mouse click interaction will always work regardless of this setting.`,
status: 'DONE',
tests: 'DONE',
},
{
pattern:
'Should have element with role button in header.',
status: 'DONE',
tests: 'DONE',
},
{
pattern:
'Should have element with role heading and aria-level in title.',
comment: `aria-level can be set by ariaHeadingLevel prop.
ariaHeadingLevel defaults to 2.`,
status: 'DONE',
tests: 'DONE',
},
{
pattern:
'Should have element with role region and and an accessible name.',
status: 'DONE',
tests: 'DONE',
},
{
pattern:
'Should have aria-expanded="true" set on button element when expanded.',
status: 'DONE',
tests: 'DONE',
},
{
pattern: 'Should have aria-controls set on button.',
status: 'DONE',
tests: 'DONE',
},
{
pattern:
'Should have hidden set on region element when collapsed.',
status: 'DONE',
tests: 'DONE',
},
{
pattern: 'Should respect prefers-reduced-motion.',
comment: 'prefers-reduced-motion system setting is respected.',
status: 'DONE',
tests: 'N/A',
},
{
pattern: `Should have aria-disabled set to
true on button element if collapsing the item is not permitted.`,
status: 'TO DO',
tests: 'TO DO',
},
{
pattern: `Should be tabable.`,
comment: `AccordionItem by AccordionItem
or, when it is expanded, element by element in the content.`,
status: 'DONE',
tests: 'N/A',
},
];
export default rules;