UNPKG

gov-gui

Version:

Gov UI Component Library Demo ready Build

47 lines (46 loc) 5.49 kB
// src/utils/a11y-config.ts export const a11yMap = { 'gov-accordion': { role: 'region', ariaRole: 'region', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'section' }, 'gov-alert': { role: 'alert', ariaRole: 'alert', ariaHidden: false, isKeyboardNavigable: false, requiresLabel: true, elementSelector: 'div' }, 'gov-avatar': { role: 'img', ariaRole: 'img', ariaHidden: false, isKeyboardNavigable: false, requiresLabel: true, elementSelector: 'img' }, 'gov-badge': { role: 'status', ariaRole: 'status', ariaHidden: false, isKeyboardNavigable: false, requiresLabel: false, elementSelector: 'span' }, 'gov-box': { ariaHidden: true }, 'gov-breadcrumb': { role: 'navigation', ariaRole: 'navigation', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: false, elementSelector: 'nav' }, 'gov-button': { role: 'button', ariaRole: 'button', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'button' }, 'gov-card': { role: 'group', ariaRole: 'group', ariaHidden: false, isKeyboardNavigable: false, requiresLabel: false, elementSelector: 'div' }, 'gov-calendar': { role: 'grid', ariaRole: 'grid', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'table' }, 'gov-chart': { role: 'img', ariaRole: 'img', ariaHidden: false, isKeyboardNavigable: false, requiresLabel: true, elementSelector: 'svg' }, 'gov-checkbox': { role: 'checkbox', ariaRole: 'checkbox', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'input[type="checkbox"]' }, 'gov-chips': { role: 'listbox', ariaRole: 'listbox', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'ul' }, 'gov-choice-chips': { role: 'radiogroup', ariaRole: 'radiogroup', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'div' }, 'gov-combo-box': { role: 'combobox', ariaRole: 'combobox', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'input' }, 'gov-container': { ariaHidden: true }, 'gov-date-time-picker': { role: 'group', ariaRole: 'group', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'div' }, 'gov-drop': { role: 'menu', ariaRole: 'menu', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'ul' }, 'gov-dropdown': { role: 'listbox', ariaRole: 'listbox', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'select' }, 'gov-form': { role: 'form', ariaRole: 'form', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'form' }, 'gov-icon': { role: 'img', ariaRole: 'img', ariaHidden: false, isKeyboardNavigable: false, requiresLabel: false, elementSelector: 'svg' }, 'gov-input': { role: 'textbox', ariaRole: 'textbox', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'input' }, 'gov-layout': { ariaHidden: true }, 'gov-list': { role: 'list', ariaRole: 'list', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'ul' }, 'gov-menubar': { role: 'menubar', ariaRole: 'menubar', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'nav' }, 'gov-modal': { role: 'dialog', ariaRole: 'dialog', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'div' }, 'gov-pagination': { role: 'navigation', ariaRole: 'navigation', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: false, elementSelector: 'nav' }, 'gov-popups': { role: 'dialog', ariaRole: 'dialog', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'div' }, 'gov-progress-bar': { role: 'progressbar', ariaRole: 'progressbar', ariaHidden: false, isKeyboardNavigable: false, requiresLabel: true, elementSelector: 'progress' }, 'gov-radiobutton': { role: 'radio', ariaRole: 'radio', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'input[type="radio"]' }, 'gov-row': { role: 'row', ariaRole: 'row', ariaHidden: false, isKeyboardNavigable: false, requiresLabel: false, elementSelector: 'div' }, 'gov-segmented-chips': { role: 'tablist', ariaRole: 'tablist', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'div' }, 'gov-sidebar': { role: 'complementary', ariaRole: 'complementary', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: false, elementSelector: 'aside' }, 'gov-slider': { role: 'slider', ariaRole: 'slider', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'input[type="range"]' }, 'gov-stepper': { role: 'list', ariaRole: 'list', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'ul' }, 'gov-switcher': { role: 'switch', ariaRole: 'switch', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'input[type="checkbox"]' }, 'gov-table': { role: 'table', ariaRole: 'table', ariaHidden: false, isKeyboardNavigable: true, requiresLabel: true, elementSelector: 'table' }, }; // export abstract class A11yComponent { // protected a11y: A11yConfig = {}; // protected setA11yConfig(tagName: string) { // this.a11y = a11yMap[tagName] || {}; // } // } //# sourceMappingURL=a11y-config.js.map