Update checked-in dependencies
This commit is contained in:
parent
3e913ef09d
commit
9660df3fcc
990 changed files with 74805 additions and 60149 deletions
11
node_modules/eslint-plugin-jsx-a11y/lib/configs/flat-config-base.js
generated
vendored
Normal file
11
node_modules/eslint-plugin-jsx-a11y/lib/configs/flat-config-base.js
generated
vendored
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
"use strict";
|
||||
|
||||
module.exports = {
|
||||
languageOptions: {
|
||||
parserOptions: {
|
||||
ecmaFeatures: {
|
||||
jsx: true
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
9
node_modules/eslint-plugin-jsx-a11y/lib/configs/legacy-config-base.js
generated
vendored
Normal file
9
node_modules/eslint-plugin-jsx-a11y/lib/configs/legacy-config-base.js
generated
vendored
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
"use strict";
|
||||
|
||||
module.exports = {
|
||||
parserOptions: {
|
||||
ecmaFeatures: {
|
||||
jsx: true
|
||||
}
|
||||
}
|
||||
};
|
||||
373
node_modules/eslint-plugin-jsx-a11y/lib/index.js
generated
vendored
373
node_modules/eslint-plugin-jsx-a11y/lib/index.js
generated
vendored
|
|
@ -1,177 +1,208 @@
|
|||
"use strict";
|
||||
|
||||
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
||||
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
||||
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
||||
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
||||
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
||||
/* eslint-disable global-require */
|
||||
var flatConfigBase = require('./configs/flat-config-base');
|
||||
var legacyConfigBase = require('./configs/legacy-config-base');
|
||||
var _require = require('../package.json'),
|
||||
name = _require.name,
|
||||
version = _require.version;
|
||||
var allRules = {
|
||||
'accessible-emoji': require('./rules/accessible-emoji'),
|
||||
'alt-text': require('./rules/alt-text'),
|
||||
'anchor-ambiguous-text': require('./rules/anchor-ambiguous-text'),
|
||||
'anchor-has-content': require('./rules/anchor-has-content'),
|
||||
'anchor-is-valid': require('./rules/anchor-is-valid'),
|
||||
'aria-activedescendant-has-tabindex': require('./rules/aria-activedescendant-has-tabindex'),
|
||||
'aria-props': require('./rules/aria-props'),
|
||||
'aria-proptypes': require('./rules/aria-proptypes'),
|
||||
'aria-role': require('./rules/aria-role'),
|
||||
'aria-unsupported-elements': require('./rules/aria-unsupported-elements'),
|
||||
'autocomplete-valid': require('./rules/autocomplete-valid'),
|
||||
'click-events-have-key-events': require('./rules/click-events-have-key-events'),
|
||||
'control-has-associated-label': require('./rules/control-has-associated-label'),
|
||||
'heading-has-content': require('./rules/heading-has-content'),
|
||||
'html-has-lang': require('./rules/html-has-lang'),
|
||||
'iframe-has-title': require('./rules/iframe-has-title'),
|
||||
'img-redundant-alt': require('./rules/img-redundant-alt'),
|
||||
'interactive-supports-focus': require('./rules/interactive-supports-focus'),
|
||||
'label-has-associated-control': require('./rules/label-has-associated-control'),
|
||||
'label-has-for': require('./rules/label-has-for'),
|
||||
lang: require('./rules/lang'),
|
||||
'media-has-caption': require('./rules/media-has-caption'),
|
||||
'mouse-events-have-key-events': require('./rules/mouse-events-have-key-events'),
|
||||
'no-access-key': require('./rules/no-access-key'),
|
||||
'no-aria-hidden-on-focusable': require('./rules/no-aria-hidden-on-focusable'),
|
||||
'no-autofocus': require('./rules/no-autofocus'),
|
||||
'no-distracting-elements': require('./rules/no-distracting-elements'),
|
||||
'no-interactive-element-to-noninteractive-role': require('./rules/no-interactive-element-to-noninteractive-role'),
|
||||
'no-noninteractive-element-interactions': require('./rules/no-noninteractive-element-interactions'),
|
||||
'no-noninteractive-element-to-interactive-role': require('./rules/no-noninteractive-element-to-interactive-role'),
|
||||
'no-noninteractive-tabindex': require('./rules/no-noninteractive-tabindex'),
|
||||
'no-onchange': require('./rules/no-onchange'),
|
||||
'no-redundant-roles': require('./rules/no-redundant-roles'),
|
||||
'no-static-element-interactions': require('./rules/no-static-element-interactions'),
|
||||
'prefer-tag-over-role': require('./rules/prefer-tag-over-role'),
|
||||
'role-has-required-aria-props': require('./rules/role-has-required-aria-props'),
|
||||
'role-supports-aria-props': require('./rules/role-supports-aria-props'),
|
||||
scope: require('./rules/scope'),
|
||||
'tabindex-no-positive': require('./rules/tabindex-no-positive')
|
||||
};
|
||||
var recommendedRules = {
|
||||
'jsx-a11y/alt-text': 'error',
|
||||
'jsx-a11y/anchor-ambiguous-text': 'off',
|
||||
// TODO: error
|
||||
'jsx-a11y/anchor-has-content': 'error',
|
||||
'jsx-a11y/anchor-is-valid': 'error',
|
||||
'jsx-a11y/aria-activedescendant-has-tabindex': 'error',
|
||||
'jsx-a11y/aria-props': 'error',
|
||||
'jsx-a11y/aria-proptypes': 'error',
|
||||
'jsx-a11y/aria-role': 'error',
|
||||
'jsx-a11y/aria-unsupported-elements': 'error',
|
||||
'jsx-a11y/autocomplete-valid': 'error',
|
||||
'jsx-a11y/click-events-have-key-events': 'error',
|
||||
'jsx-a11y/control-has-associated-label': ['off', {
|
||||
ignoreElements: ['audio', 'canvas', 'embed', 'input', 'textarea', 'tr', 'video'],
|
||||
ignoreRoles: ['grid', 'listbox', 'menu', 'menubar', 'radiogroup', 'row', 'tablist', 'toolbar', 'tree', 'treegrid'],
|
||||
includeRoles: ['alert', 'dialog']
|
||||
}],
|
||||
'jsx-a11y/heading-has-content': 'error',
|
||||
'jsx-a11y/html-has-lang': 'error',
|
||||
'jsx-a11y/iframe-has-title': 'error',
|
||||
'jsx-a11y/img-redundant-alt': 'error',
|
||||
'jsx-a11y/interactive-supports-focus': ['error', {
|
||||
tabbable: ['button', 'checkbox', 'link', 'searchbox', 'spinbutton', 'switch', 'textbox']
|
||||
}],
|
||||
'jsx-a11y/label-has-associated-control': 'error',
|
||||
'jsx-a11y/label-has-for': 'off',
|
||||
'jsx-a11y/media-has-caption': 'error',
|
||||
'jsx-a11y/mouse-events-have-key-events': 'error',
|
||||
'jsx-a11y/no-access-key': 'error',
|
||||
'jsx-a11y/no-autofocus': 'error',
|
||||
'jsx-a11y/no-distracting-elements': 'error',
|
||||
'jsx-a11y/no-interactive-element-to-noninteractive-role': ['error', {
|
||||
tr: ['none', 'presentation'],
|
||||
canvas: ['img']
|
||||
}],
|
||||
'jsx-a11y/no-noninteractive-element-interactions': ['error', {
|
||||
handlers: ['onClick', 'onError', 'onLoad', 'onMouseDown', 'onMouseUp', 'onKeyPress', 'onKeyDown', 'onKeyUp'],
|
||||
alert: ['onKeyUp', 'onKeyDown', 'onKeyPress'],
|
||||
body: ['onError', 'onLoad'],
|
||||
dialog: ['onKeyUp', 'onKeyDown', 'onKeyPress'],
|
||||
iframe: ['onError', 'onLoad'],
|
||||
img: ['onError', 'onLoad']
|
||||
}],
|
||||
'jsx-a11y/no-noninteractive-element-to-interactive-role': ['error', {
|
||||
ul: ['listbox', 'menu', 'menubar', 'radiogroup', 'tablist', 'tree', 'treegrid'],
|
||||
ol: ['listbox', 'menu', 'menubar', 'radiogroup', 'tablist', 'tree', 'treegrid'],
|
||||
li: ['menuitem', 'menuitemradio', 'menuitemcheckbox', 'option', 'row', 'tab', 'treeitem'],
|
||||
table: ['grid'],
|
||||
td: ['gridcell'],
|
||||
fieldset: ['radiogroup', 'presentation']
|
||||
}],
|
||||
'jsx-a11y/no-noninteractive-tabindex': ['error', {
|
||||
tags: [],
|
||||
roles: ['tabpanel'],
|
||||
allowExpressionValues: true
|
||||
}],
|
||||
'jsx-a11y/no-redundant-roles': 'error',
|
||||
'jsx-a11y/no-static-element-interactions': ['error', {
|
||||
allowExpressionValues: true,
|
||||
handlers: ['onClick', 'onMouseDown', 'onMouseUp', 'onKeyPress', 'onKeyDown', 'onKeyUp']
|
||||
}],
|
||||
'jsx-a11y/role-has-required-aria-props': 'error',
|
||||
'jsx-a11y/role-supports-aria-props': 'error',
|
||||
'jsx-a11y/scope': 'error',
|
||||
'jsx-a11y/tabindex-no-positive': 'error'
|
||||
};
|
||||
var strictRules = {
|
||||
'jsx-a11y/alt-text': 'error',
|
||||
'jsx-a11y/anchor-has-content': 'error',
|
||||
'jsx-a11y/anchor-is-valid': 'error',
|
||||
'jsx-a11y/aria-activedescendant-has-tabindex': 'error',
|
||||
'jsx-a11y/aria-props': 'error',
|
||||
'jsx-a11y/aria-proptypes': 'error',
|
||||
'jsx-a11y/aria-role': 'error',
|
||||
'jsx-a11y/aria-unsupported-elements': 'error',
|
||||
'jsx-a11y/autocomplete-valid': 'error',
|
||||
'jsx-a11y/click-events-have-key-events': 'error',
|
||||
'jsx-a11y/control-has-associated-label': ['off', {
|
||||
ignoreElements: ['audio', 'canvas', 'embed', 'input', 'textarea', 'tr', 'video'],
|
||||
ignoreRoles: ['grid', 'listbox', 'menu', 'menubar', 'radiogroup', 'row', 'tablist', 'toolbar', 'tree', 'treegrid'],
|
||||
includeRoles: ['alert', 'dialog']
|
||||
}],
|
||||
'jsx-a11y/heading-has-content': 'error',
|
||||
'jsx-a11y/html-has-lang': 'error',
|
||||
'jsx-a11y/iframe-has-title': 'error',
|
||||
'jsx-a11y/img-redundant-alt': 'error',
|
||||
'jsx-a11y/interactive-supports-focus': ['error', {
|
||||
tabbable: ['button', 'checkbox', 'link', 'progressbar', 'searchbox', 'slider', 'spinbutton', 'switch', 'textbox']
|
||||
}],
|
||||
'jsx-a11y/label-has-for': 'off',
|
||||
'jsx-a11y/label-has-associated-control': 'error',
|
||||
'jsx-a11y/media-has-caption': 'error',
|
||||
'jsx-a11y/mouse-events-have-key-events': 'error',
|
||||
'jsx-a11y/no-access-key': 'error',
|
||||
'jsx-a11y/no-autofocus': 'error',
|
||||
'jsx-a11y/no-distracting-elements': 'error',
|
||||
'jsx-a11y/no-interactive-element-to-noninteractive-role': 'error',
|
||||
'jsx-a11y/no-noninteractive-element-interactions': ['error', {
|
||||
body: ['onError', 'onLoad'],
|
||||
iframe: ['onError', 'onLoad'],
|
||||
img: ['onError', 'onLoad']
|
||||
}],
|
||||
'jsx-a11y/no-noninteractive-element-to-interactive-role': 'error',
|
||||
'jsx-a11y/no-noninteractive-tabindex': 'error',
|
||||
'jsx-a11y/no-redundant-roles': 'error',
|
||||
'jsx-a11y/no-static-element-interactions': 'error',
|
||||
'jsx-a11y/role-has-required-aria-props': 'error',
|
||||
'jsx-a11y/role-supports-aria-props': 'error',
|
||||
'jsx-a11y/scope': 'error',
|
||||
'jsx-a11y/tabindex-no-positive': 'error'
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
rules: {
|
||||
'accessible-emoji': require('./rules/accessible-emoji'),
|
||||
'alt-text': require('./rules/alt-text'),
|
||||
'anchor-ambiguous-text': require('./rules/anchor-ambiguous-text'),
|
||||
'anchor-has-content': require('./rules/anchor-has-content'),
|
||||
'anchor-is-valid': require('./rules/anchor-is-valid'),
|
||||
'aria-activedescendant-has-tabindex': require('./rules/aria-activedescendant-has-tabindex'),
|
||||
'aria-props': require('./rules/aria-props'),
|
||||
'aria-proptypes': require('./rules/aria-proptypes'),
|
||||
'aria-role': require('./rules/aria-role'),
|
||||
'aria-unsupported-elements': require('./rules/aria-unsupported-elements'),
|
||||
'autocomplete-valid': require('./rules/autocomplete-valid'),
|
||||
'click-events-have-key-events': require('./rules/click-events-have-key-events'),
|
||||
'control-has-associated-label': require('./rules/control-has-associated-label'),
|
||||
'heading-has-content': require('./rules/heading-has-content'),
|
||||
'html-has-lang': require('./rules/html-has-lang'),
|
||||
'iframe-has-title': require('./rules/iframe-has-title'),
|
||||
'img-redundant-alt': require('./rules/img-redundant-alt'),
|
||||
'interactive-supports-focus': require('./rules/interactive-supports-focus'),
|
||||
'label-has-associated-control': require('./rules/label-has-associated-control'),
|
||||
'label-has-for': require('./rules/label-has-for'),
|
||||
lang: require('./rules/lang'),
|
||||
'media-has-caption': require('./rules/media-has-caption'),
|
||||
'mouse-events-have-key-events': require('./rules/mouse-events-have-key-events'),
|
||||
'no-access-key': require('./rules/no-access-key'),
|
||||
'no-aria-hidden-on-focusable': require('./rules/no-aria-hidden-on-focusable'),
|
||||
'no-autofocus': require('./rules/no-autofocus'),
|
||||
'no-distracting-elements': require('./rules/no-distracting-elements'),
|
||||
'no-interactive-element-to-noninteractive-role': require('./rules/no-interactive-element-to-noninteractive-role'),
|
||||
'no-noninteractive-element-interactions': require('./rules/no-noninteractive-element-interactions'),
|
||||
'no-noninteractive-element-to-interactive-role': require('./rules/no-noninteractive-element-to-interactive-role'),
|
||||
'no-noninteractive-tabindex': require('./rules/no-noninteractive-tabindex'),
|
||||
'no-onchange': require('./rules/no-onchange'),
|
||||
'no-redundant-roles': require('./rules/no-redundant-roles'),
|
||||
'no-static-element-interactions': require('./rules/no-static-element-interactions'),
|
||||
'prefer-tag-over-role': require('./rules/prefer-tag-over-role'),
|
||||
'role-has-required-aria-props': require('./rules/role-has-required-aria-props'),
|
||||
'role-supports-aria-props': require('./rules/role-supports-aria-props'),
|
||||
scope: require('./rules/scope'),
|
||||
'tabindex-no-positive': require('./rules/tabindex-no-positive')
|
||||
/** Base plugin object */
|
||||
var jsxA11y = {
|
||||
meta: {
|
||||
name,
|
||||
version
|
||||
},
|
||||
configs: {
|
||||
recommended: {
|
||||
plugins: ['jsx-a11y'],
|
||||
parserOptions: {
|
||||
ecmaFeatures: {
|
||||
jsx: true
|
||||
}
|
||||
},
|
||||
rules: {
|
||||
'jsx-a11y/alt-text': 'error',
|
||||
'jsx-a11y/anchor-ambiguous-text': 'off',
|
||||
// TODO: error
|
||||
'jsx-a11y/anchor-has-content': 'error',
|
||||
'jsx-a11y/anchor-is-valid': 'error',
|
||||
'jsx-a11y/aria-activedescendant-has-tabindex': 'error',
|
||||
'jsx-a11y/aria-props': 'error',
|
||||
'jsx-a11y/aria-proptypes': 'error',
|
||||
'jsx-a11y/aria-role': 'error',
|
||||
'jsx-a11y/aria-unsupported-elements': 'error',
|
||||
'jsx-a11y/autocomplete-valid': 'error',
|
||||
'jsx-a11y/click-events-have-key-events': 'error',
|
||||
'jsx-a11y/control-has-associated-label': ['off', {
|
||||
ignoreElements: ['audio', 'canvas', 'embed', 'input', 'textarea', 'tr', 'video'],
|
||||
ignoreRoles: ['grid', 'listbox', 'menu', 'menubar', 'radiogroup', 'row', 'tablist', 'toolbar', 'tree', 'treegrid'],
|
||||
includeRoles: ['alert', 'dialog']
|
||||
}],
|
||||
'jsx-a11y/heading-has-content': 'error',
|
||||
'jsx-a11y/html-has-lang': 'error',
|
||||
'jsx-a11y/iframe-has-title': 'error',
|
||||
'jsx-a11y/img-redundant-alt': 'error',
|
||||
'jsx-a11y/interactive-supports-focus': ['error', {
|
||||
tabbable: ['button', 'checkbox', 'link', 'searchbox', 'spinbutton', 'switch', 'textbox']
|
||||
}],
|
||||
'jsx-a11y/label-has-associated-control': 'error',
|
||||
'jsx-a11y/label-has-for': 'off',
|
||||
'jsx-a11y/media-has-caption': 'error',
|
||||
'jsx-a11y/mouse-events-have-key-events': 'error',
|
||||
'jsx-a11y/no-access-key': 'error',
|
||||
'jsx-a11y/no-autofocus': 'error',
|
||||
'jsx-a11y/no-distracting-elements': 'error',
|
||||
'jsx-a11y/no-interactive-element-to-noninteractive-role': ['error', {
|
||||
tr: ['none', 'presentation'],
|
||||
canvas: ['img']
|
||||
}],
|
||||
'jsx-a11y/no-noninteractive-element-interactions': ['error', {
|
||||
handlers: ['onClick', 'onError', 'onLoad', 'onMouseDown', 'onMouseUp', 'onKeyPress', 'onKeyDown', 'onKeyUp'],
|
||||
alert: ['onKeyUp', 'onKeyDown', 'onKeyPress'],
|
||||
body: ['onError', 'onLoad'],
|
||||
dialog: ['onKeyUp', 'onKeyDown', 'onKeyPress'],
|
||||
iframe: ['onError', 'onLoad'],
|
||||
img: ['onError', 'onLoad']
|
||||
}],
|
||||
'jsx-a11y/no-noninteractive-element-to-interactive-role': ['error', {
|
||||
ul: ['listbox', 'menu', 'menubar', 'radiogroup', 'tablist', 'tree', 'treegrid'],
|
||||
ol: ['listbox', 'menu', 'menubar', 'radiogroup', 'tablist', 'tree', 'treegrid'],
|
||||
li: ['menuitem', 'option', 'row', 'tab', 'treeitem'],
|
||||
table: ['grid'],
|
||||
td: ['gridcell'],
|
||||
fieldset: ['radiogroup', 'presentation']
|
||||
}],
|
||||
'jsx-a11y/no-noninteractive-tabindex': ['error', {
|
||||
tags: [],
|
||||
roles: ['tabpanel'],
|
||||
allowExpressionValues: true
|
||||
}],
|
||||
'jsx-a11y/no-redundant-roles': 'error',
|
||||
'jsx-a11y/no-static-element-interactions': ['error', {
|
||||
allowExpressionValues: true,
|
||||
handlers: ['onClick', 'onMouseDown', 'onMouseUp', 'onKeyPress', 'onKeyDown', 'onKeyUp']
|
||||
}],
|
||||
'jsx-a11y/role-has-required-aria-props': 'error',
|
||||
'jsx-a11y/role-supports-aria-props': 'error',
|
||||
'jsx-a11y/scope': 'error',
|
||||
'jsx-a11y/tabindex-no-positive': 'error'
|
||||
}
|
||||
},
|
||||
strict: {
|
||||
plugins: ['jsx-a11y'],
|
||||
parserOptions: {
|
||||
ecmaFeatures: {
|
||||
jsx: true
|
||||
}
|
||||
},
|
||||
rules: {
|
||||
'jsx-a11y/alt-text': 'error',
|
||||
'jsx-a11y/anchor-has-content': 'error',
|
||||
'jsx-a11y/anchor-is-valid': 'error',
|
||||
'jsx-a11y/aria-activedescendant-has-tabindex': 'error',
|
||||
'jsx-a11y/aria-props': 'error',
|
||||
'jsx-a11y/aria-proptypes': 'error',
|
||||
'jsx-a11y/aria-role': 'error',
|
||||
'jsx-a11y/aria-unsupported-elements': 'error',
|
||||
'jsx-a11y/autocomplete-valid': 'error',
|
||||
'jsx-a11y/click-events-have-key-events': 'error',
|
||||
'jsx-a11y/control-has-associated-label': ['off', {
|
||||
ignoreElements: ['audio', 'canvas', 'embed', 'input', 'textarea', 'tr', 'video'],
|
||||
ignoreRoles: ['grid', 'listbox', 'menu', 'menubar', 'radiogroup', 'row', 'tablist', 'toolbar', 'tree', 'treegrid'],
|
||||
includeRoles: ['alert', 'dialog']
|
||||
}],
|
||||
'jsx-a11y/heading-has-content': 'error',
|
||||
'jsx-a11y/html-has-lang': 'error',
|
||||
'jsx-a11y/iframe-has-title': 'error',
|
||||
'jsx-a11y/img-redundant-alt': 'error',
|
||||
'jsx-a11y/interactive-supports-focus': ['error', {
|
||||
tabbable: ['button', 'checkbox', 'link', 'progressbar', 'searchbox', 'slider', 'spinbutton', 'switch', 'textbox']
|
||||
}],
|
||||
'jsx-a11y/label-has-for': 'off',
|
||||
'jsx-a11y/label-has-associated-control': 'error',
|
||||
'jsx-a11y/media-has-caption': 'error',
|
||||
'jsx-a11y/mouse-events-have-key-events': 'error',
|
||||
'jsx-a11y/no-access-key': 'error',
|
||||
'jsx-a11y/no-autofocus': 'error',
|
||||
'jsx-a11y/no-distracting-elements': 'error',
|
||||
'jsx-a11y/no-interactive-element-to-noninteractive-role': 'error',
|
||||
'jsx-a11y/no-noninteractive-element-interactions': ['error', {
|
||||
body: ['onError', 'onLoad'],
|
||||
iframe: ['onError', 'onLoad'],
|
||||
img: ['onError', 'onLoad']
|
||||
}],
|
||||
'jsx-a11y/no-noninteractive-element-to-interactive-role': 'error',
|
||||
'jsx-a11y/no-noninteractive-tabindex': 'error',
|
||||
'jsx-a11y/no-redundant-roles': 'error',
|
||||
'jsx-a11y/no-static-element-interactions': 'error',
|
||||
'jsx-a11y/role-has-required-aria-props': 'error',
|
||||
'jsx-a11y/role-supports-aria-props': 'error',
|
||||
'jsx-a11y/scope': 'error',
|
||||
'jsx-a11y/tabindex-no-positive': 'error'
|
||||
}
|
||||
rules: _objectSpread({}, allRules)
|
||||
};
|
||||
|
||||
/**
|
||||
* Given a ruleset and optionally a flat config name, generate a config.
|
||||
* @param {object} rules - ruleset for this config
|
||||
* @param {string} flatConfigName - name for the config if flat
|
||||
* @returns Config for this set of rules.
|
||||
*/
|
||||
var createConfig = function createConfig(rules, flatConfigName) {
|
||||
return _objectSpread(_objectSpread({}, flatConfigName ? _objectSpread(_objectSpread({}, flatConfigBase), {}, {
|
||||
name: "jsx-a11y/".concat(flatConfigName),
|
||||
plugins: {
|
||||
'jsx-a11y': jsxA11y
|
||||
}
|
||||
}
|
||||
};
|
||||
}) : _objectSpread(_objectSpread({}, legacyConfigBase), {}, {
|
||||
plugins: ['jsx-a11y']
|
||||
})), {}, {
|
||||
rules: _objectSpread({}, rules)
|
||||
});
|
||||
};
|
||||
|
||||
// Create configs for the plugin object
|
||||
var configs = {
|
||||
recommended: createConfig(recommendedRules),
|
||||
strict: createConfig(strictRules)
|
||||
};
|
||||
var flatConfigs = {
|
||||
recommended: createConfig(recommendedRules, 'recommended'),
|
||||
strict: createConfig(strictRules, 'strict')
|
||||
};
|
||||
module.exports = _objectSpread(_objectSpread({}, jsxA11y), {}, {
|
||||
configs,
|
||||
flatConfigs
|
||||
});
|
||||
14
node_modules/eslint-plugin-jsx-a11y/lib/rules/accessible-emoji.js
generated
vendored
14
node_modules/eslint-plugin-jsx-a11y/lib/rules/accessible-emoji.js
generated
vendored
|
|
@ -1,17 +1,18 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _emojiRegex = _interopRequireDefault(require("emoji-regex"));
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _safeRegexTest = _interopRequireDefault(require("safe-regex-test"));
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _isHiddenFromScreenReader = _interopRequireDefault(require("../util/isHiddenFromScreenReader"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce emojis are wrapped in <span> and provide screenreader access.
|
||||
* @fileoverview Enforce emojis are wrapped in <span> and provide screen reader access.
|
||||
* @author Ethan Cohen
|
||||
*/
|
||||
|
||||
|
|
@ -21,10 +22,10 @@ var _isHiddenFromScreenReader = _interopRequireDefault(require("../util/isHidden
|
|||
|
||||
var errorMessage = 'Emojis should be wrapped in <span>, have role="img", and have an accessible description with aria-label or aria-labelledby.';
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
description: 'Enforce emojis are wrapped in `<span>` and provide screenreader access.',
|
||||
description: 'Enforce emojis are wrapped in `<span>` and provide screen reader access.',
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/accessible-emoji.md'
|
||||
},
|
||||
deprecated: true,
|
||||
|
|
@ -32,17 +33,17 @@ var _default = {
|
|||
},
|
||||
create: function create(context) {
|
||||
var elementType = (0, _getElementType["default"])(context);
|
||||
var testEmoji = (0, _safeRegexTest["default"])((0, _emojiRegex["default"])());
|
||||
return {
|
||||
JSXOpeningElement: function JSXOpeningElement(node) {
|
||||
var literalChildValue = node.parent.children.find(function (child) {
|
||||
return child.type === 'Literal' || child.type === 'JSXText';
|
||||
});
|
||||
if (literalChildValue && (0, _emojiRegex["default"])().test(literalChildValue.value)) {
|
||||
if (literalChildValue && testEmoji(literalChildValue.value)) {
|
||||
var elementIsHidden = (0, _isHiddenFromScreenReader["default"])(elementType(node), node.attributes);
|
||||
if (elementIsHidden) {
|
||||
return; // emoji is decorative
|
||||
}
|
||||
|
||||
var rolePropValue = (0, _jsxAstUtils.getLiteralPropValue)((0, _jsxAstUtils.getProp)(node.attributes, 'role'));
|
||||
var ariaLabelProp = (0, _jsxAstUtils.getProp)(node.attributes, 'aria-label');
|
||||
var arialLabelledByProp = (0, _jsxAstUtils.getProp)(node.attributes, 'aria-labelledby');
|
||||
|
|
@ -59,5 +60,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/alt-text.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/alt-text.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -11,6 +10,7 @@ var _schemas = require("../util/schemas");
|
|||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _hasAccessibleChild = _interopRequireDefault(require("../util/hasAccessibleChild"));
|
||||
var _isPresentationRole = _interopRequireDefault(require("../util/isPresentationRole"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce all elements that require alternative text have it.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -172,7 +172,7 @@ var ruleByElement = {
|
|||
});
|
||||
}
|
||||
};
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/alt-text.md',
|
||||
|
|
@ -215,5 +215,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
7
node_modules/eslint-plugin-jsx-a11y/lib/rules/anchor-ambiguous-text.js
generated
vendored
7
node_modules/eslint-plugin-jsx-a11y/lib/rules/anchor-ambiguous-text.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -8,6 +7,7 @@ exports["default"] = void 0;
|
|||
var _schemas = require("../util/schemas");
|
||||
var _getAccessibleChildText = _interopRequireDefault(require("../util/getAccessibleChildText"));
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce anchor text to not exactly match 'click here', 'here', 'link', 'learn more', and user-specified words.
|
||||
* @author Matt Wang
|
||||
|
|
@ -22,7 +22,7 @@ var DEFAULT_AMBIGUOUS_WORDS = ['click here', 'here', 'link', 'a link', 'learn mo
|
|||
var schema = (0, _schemas.generateObjSchema)({
|
||||
words: _schemas.arraySchema
|
||||
});
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-ambiguous-text.md',
|
||||
|
|
@ -52,7 +52,7 @@ var _default = {
|
|||
}
|
||||
context.report({
|
||||
node,
|
||||
message: 'Ambiguous text within anchor. Screenreader users rely on link text for context; the words "{{wordsList}}" are ambiguous and do not provide enough context.',
|
||||
message: 'Ambiguous text within anchor. Screen reader users rely on link text for context; the words "{{wordsList}}" are ambiguous and do not provide enough context.',
|
||||
data: {
|
||||
wordsList: words.join('", "')
|
||||
}
|
||||
|
|
@ -61,5 +61,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
9
node_modules/eslint-plugin-jsx-a11y/lib/rules/anchor-has-content.js
generated
vendored
9
node_modules/eslint-plugin-jsx-a11y/lib/rules/anchor-has-content.js
generated
vendored
|
|
@ -1,13 +1,14 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _schemas = require("../util/schemas");
|
||||
var _hasAccessibleChild = _interopRequireDefault(require("../util/hasAccessibleChild"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce anchor elements to contain accessible content.
|
||||
* @author Lisa Ring & Niklas Holmberg
|
||||
|
|
@ -21,7 +22,7 @@ var errorMessage = 'Anchors must have content and the content must be accessible
|
|||
var schema = (0, _schemas.generateObjSchema)({
|
||||
components: _schemas.arraySchema
|
||||
});
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-has-content.md',
|
||||
|
|
@ -45,6 +46,9 @@ var _default = {
|
|||
if ((0, _hasAccessibleChild["default"])(node.parent, elementType)) {
|
||||
return;
|
||||
}
|
||||
if ((0, _jsxAstUtils.hasAnyProp)(node.attributes, ['title', 'aria-label'])) {
|
||||
return;
|
||||
}
|
||||
context.report({
|
||||
node,
|
||||
message: errorMessage
|
||||
|
|
@ -53,5 +57,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
9
node_modules/eslint-plugin-jsx-a11y/lib/rules/anchor-is-valid.js
generated
vendored
9
node_modules/eslint-plugin-jsx-a11y/lib/rules/anchor-is-valid.js
generated
vendored
|
|
@ -1,13 +1,14 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _safeRegexTest = _interopRequireDefault(require("safe-regex-test"));
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Performs validity check on anchor hrefs. Warns when anchors are used as buttons.
|
||||
* @author Almero Steyn
|
||||
|
|
@ -27,7 +28,7 @@ var schema = (0, _schemas.generateObjSchema)({
|
|||
specialLink: _schemas.arraySchema,
|
||||
aspects: (0, _schemas.enumArraySchema)(allAspects, 1)
|
||||
});
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-is-valid.md',
|
||||
|
|
@ -37,6 +38,7 @@ var _default = {
|
|||
},
|
||||
create: function create(context) {
|
||||
var elementType = (0, _getElementType["default"])(context);
|
||||
var testJShref = (0, _safeRegexTest["default"])(/^\W*?javascript:/);
|
||||
return {
|
||||
JSXOpeningElement: function JSXOpeningElement(node) {
|
||||
var attributes = node.attributes;
|
||||
|
|
@ -97,7 +99,7 @@ var _default = {
|
|||
|
||||
// Hrefs have been found, now check for validity.
|
||||
var invalidHrefValues = values.filter(function (value) {
|
||||
return value != null && typeof value === 'string' && (!value.length || value === '#' || /^\W*?javascript:/.test(value));
|
||||
return value != null && typeof value === 'string' && (!value.length || value === '#' || testJShref(value));
|
||||
});
|
||||
if (invalidHrefValues.length !== 0) {
|
||||
// If an onClick is found it should be a button, otherwise it is an invalid link.
|
||||
|
|
@ -117,5 +119,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
9
node_modules/eslint-plugin-jsx-a11y/lib/rules/aria-activedescendant-has-tabindex.js
generated
vendored
9
node_modules/eslint-plugin-jsx-a11y/lib/rules/aria-activedescendant-has-tabindex.js
generated
vendored
|
|
@ -1,17 +1,16 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _getTabIndex = _interopRequireDefault(require("../util/getTabIndex"));
|
||||
var _isInteractiveElement = _interopRequireDefault(require("../util/isInteractiveElement"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce elements with aria-activedescendant are tabbable.
|
||||
* @author Jesse Beach <@jessebeach>
|
||||
|
|
@ -23,8 +22,7 @@ var _isInteractiveElement = _interopRequireDefault(require("../util/isInteractiv
|
|||
|
||||
var errorMessage = 'An element that manages focus with `aria-activedescendant` must have a tabindex';
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var domElements = (0, _toConsumableArray2["default"])(_ariaQuery.dom.keys());
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-activedescendant-has-tabindex.md',
|
||||
|
|
@ -43,7 +41,7 @@ var _default = {
|
|||
var type = elementType(node);
|
||||
// Do not test higher level JSX components, as we do not know what
|
||||
// low-level DOM element this maps to.
|
||||
if (domElements.indexOf(type) === -1) {
|
||||
if (!_ariaQuery.dom.has(type)) {
|
||||
return;
|
||||
}
|
||||
var tabIndex = (0, _getTabIndex["default"])((0, _jsxAstUtils.getProp)(attributes, 'tabIndex'));
|
||||
|
|
@ -65,5 +63,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
10
node_modules/eslint-plugin-jsx-a11y/lib/rules/aria-props.js
generated
vendored
10
node_modules/eslint-plugin-jsx-a11y/lib/rules/aria-props.js
generated
vendored
|
|
@ -1,15 +1,14 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getSuggestion = _interopRequireDefault(require("../util/getSuggestion"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce all aria-* properties are valid.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -19,7 +18,7 @@ var _getSuggestion = _interopRequireDefault(require("../util/getSuggestion"));
|
|||
// Rule Definition
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
var ariaAttributes = (0, _toConsumableArray2["default"])(_ariaQuery.aria.keys());
|
||||
var ariaAttributes = _ariaQuery.aria.keys();
|
||||
var errorMessage = function errorMessage(name) {
|
||||
var suggestions = (0, _getSuggestion["default"])(name, ariaAttributes);
|
||||
var message = "".concat(name, ": This attribute is an invalid ARIA attribute.");
|
||||
|
|
@ -29,7 +28,7 @@ var errorMessage = function errorMessage(name) {
|
|||
return message;
|
||||
};
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-props.md',
|
||||
|
|
@ -46,7 +45,7 @@ var _default = {
|
|||
if (name.indexOf('aria-') !== 0) {
|
||||
return;
|
||||
}
|
||||
var isValid = ariaAttributes.indexOf(name) > -1;
|
||||
var isValid = _ariaQuery.aria.has(name);
|
||||
if (isValid === false) {
|
||||
context.report({
|
||||
node: attribute,
|
||||
|
|
@ -57,5 +56,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
11
node_modules/eslint-plugin-jsx-a11y/lib/rules/aria-proptypes.js
generated
vendored
11
node_modules/eslint-plugin-jsx-a11y/lib/rules/aria-proptypes.js
generated
vendored
|
|
@ -36,7 +36,7 @@ var errorMessage = function errorMessage(name, type, permittedValues) {
|
|||
return "The value for ".concat(name, " must be a ").concat(type, ".");
|
||||
}
|
||||
};
|
||||
var validityCheck = function validityCheck(value, expectedType, permittedValues) {
|
||||
var _validityCheck = function validityCheck(value, expectedType, permittedValues) {
|
||||
switch (expectedType) {
|
||||
case 'boolean':
|
||||
return typeof value === 'boolean';
|
||||
|
|
@ -54,7 +54,7 @@ var validityCheck = function validityCheck(value, expectedType, permittedValues)
|
|||
return permittedValues.indexOf(typeof value === 'string' ? value.toLowerCase() : value) > -1;
|
||||
case 'idlist':
|
||||
return typeof value === 'string' && value.split(' ').every(function (token) {
|
||||
return validityCheck(token, 'id', []);
|
||||
return _validityCheck(token, 'id', []);
|
||||
});
|
||||
case 'tokenlist':
|
||||
return typeof value === 'string' && value.split(' ').every(function (token) {
|
||||
|
|
@ -65,8 +65,8 @@ var validityCheck = function validityCheck(value, expectedType, permittedValues)
|
|||
}
|
||||
};
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
validityCheck,
|
||||
var _default = exports["default"] = {
|
||||
validityCheck: _validityCheck,
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-proptypes.md',
|
||||
|
|
@ -99,7 +99,7 @@ var _default = {
|
|||
var permittedType = attributes.type;
|
||||
var allowUndefined = attributes.allowUndefined || false;
|
||||
var permittedValues = attributes.values || [];
|
||||
var isValid = validityCheck(value, permittedType, permittedValues) || allowUndefined && value === undefined;
|
||||
var isValid = _validityCheck(value, permittedType, permittedValues) || allowUndefined && value === undefined;
|
||||
if (isValid) {
|
||||
return;
|
||||
}
|
||||
|
|
@ -111,5 +111,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
8
node_modules/eslint-plugin-jsx-a11y/lib/rules/aria-role.js
generated
vendored
8
node_modules/eslint-plugin-jsx-a11y/lib/rules/aria-role.js
generated
vendored
|
|
@ -1,15 +1,14 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _schemas = require("../util/schemas");
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce aria role attribute is valid.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -33,10 +32,10 @@ var schema = (0, _schemas.generateObjSchema)({
|
|||
"default": false
|
||||
}
|
||||
});
|
||||
var validRoles = new Set((0, _toConsumableArray2["default"])(_ariaQuery.roles.keys()).filter(function (role) {
|
||||
var validRoles = new Set(_ariaQuery.roles.keys().filter(function (role) {
|
||||
return _ariaQuery.roles.get(role)["abstract"] === false;
|
||||
}));
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-role.md',
|
||||
|
|
@ -87,5 +86,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
10
node_modules/eslint-plugin-jsx-a11y/lib/rules/aria-unsupported-elements.js
generated
vendored
10
node_modules/eslint-plugin-jsx-a11y/lib/rules/aria-unsupported-elements.js
generated
vendored
|
|
@ -1,15 +1,14 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce that elements that do not support ARIA roles,
|
||||
* states and properties do not have those attributes.
|
||||
|
|
@ -23,8 +22,9 @@ var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
|||
var errorMessage = function errorMessage(invalidProp) {
|
||||
return "This element does not support ARIA roles, states and properties. Try removing the prop '".concat(invalidProp, "'.");
|
||||
};
|
||||
var invalidAttributes = new Set(_ariaQuery.aria.keys().concat('role'));
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-unsupported-elements.md',
|
||||
|
|
@ -45,13 +45,12 @@ var _default = {
|
|||
if (isReservedNodeType === false) {
|
||||
return;
|
||||
}
|
||||
var invalidAttributes = [].concat((0, _toConsumableArray2["default"])(_ariaQuery.aria.keys()), ['role']);
|
||||
node.attributes.forEach(function (prop) {
|
||||
if (prop.type === 'JSXSpreadAttribute') {
|
||||
return;
|
||||
}
|
||||
var name = (0, _jsxAstUtils.propName)(prop).toLowerCase();
|
||||
if (invalidAttributes.indexOf(name) > -1) {
|
||||
if (invalidAttributes.has(name)) {
|
||||
context.report({
|
||||
node,
|
||||
message: errorMessage(name)
|
||||
|
|
@ -62,5 +61,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/autocomplete-valid.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/autocomplete-valid.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -9,6 +8,7 @@ var _axeCore = require("axe-core");
|
|||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Ensure autocomplete attribute is correct.
|
||||
* @author Wilco Fiers
|
||||
|
|
@ -21,7 +21,7 @@ var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
|||
var schema = (0, _schemas.generateObjSchema)({
|
||||
inputComponents: _schemas.arraySchema
|
||||
});
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/autocomplete-valid.md',
|
||||
|
|
@ -64,5 +64,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
10
node_modules/eslint-plugin-jsx-a11y/lib/rules/click-events-have-key-events.js
generated
vendored
10
node_modules/eslint-plugin-jsx-a11y/lib/rules/click-events-have-key-events.js
generated
vendored
|
|
@ -1,19 +1,17 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _isHiddenFromScreenReader = _interopRequireDefault(require("../util/isHiddenFromScreenReader"));
|
||||
var _isInteractiveElement = _interopRequireDefault(require("../util/isInteractiveElement"));
|
||||
var _isPresentationRole = _interopRequireDefault(require("../util/isPresentationRole"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce a clickable non-interactive element has at least 1 keyboard event listener.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -25,8 +23,7 @@ var _isPresentationRole = _interopRequireDefault(require("../util/isPresentation
|
|||
|
||||
var errorMessage = 'Visible, non-interactive elements with click handlers must have at least one keyboard listener.';
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var domElements = (0, _toConsumableArray2["default"])(_ariaQuery.dom.keys());
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/click-events-have-key-events.md',
|
||||
|
|
@ -44,7 +41,7 @@ var _default = {
|
|||
}
|
||||
var type = elementType(node);
|
||||
var requiredProps = ['onkeydown', 'onkeyup', 'onkeypress'];
|
||||
if (!(0, _arrayIncludes["default"])(domElements, type)) {
|
||||
if (!_ariaQuery.dom.has(type)) {
|
||||
// Do not test higher level JSX components, as we do not know what
|
||||
// low-level DOM element this maps to.
|
||||
return;
|
||||
|
|
@ -68,5 +65,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
7
node_modules/eslint-plugin-jsx-a11y/lib/rules/control-has-associated-label.js
generated
vendored
7
node_modules/eslint-plugin-jsx-a11y/lib/rules/control-has-associated-label.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -14,6 +13,7 @@ var _isHiddenFromScreenReader = _interopRequireDefault(require("../util/isHidden
|
|||
var _isInteractiveElement = _interopRequireDefault(require("../util/isInteractiveElement"));
|
||||
var _isInteractiveRole = _interopRequireDefault(require("../util/isInteractiveRole"));
|
||||
var _mayHaveAccessibleLabel = _interopRequireDefault(require("../util/mayHaveAccessibleLabel"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce controls are associated with a text label.
|
||||
* @author Jesse Beach
|
||||
|
|
@ -38,7 +38,7 @@ var schema = (0, _schemas.generateObjSchema)({
|
|||
minimum: 0
|
||||
}
|
||||
});
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
description: 'Enforce that a control (an interactive element) has a text label.',
|
||||
|
|
@ -84,7 +84,7 @@ var _default = {
|
|||
if (nodeIsInteractiveElement || nodeIsDOMElement && nodeIsInteractiveRole || nodeIsControlComponent) {
|
||||
// Prevent crazy recursion.
|
||||
var recursionDepth = Math.min(options.depth === undefined ? 2 : options.depth, 25);
|
||||
hasAccessibleLabel = (0, _mayHaveAccessibleLabel["default"])(node, recursionDepth, labelAttributes);
|
||||
hasAccessibleLabel = (0, _mayHaveAccessibleLabel["default"])(node, recursionDepth, labelAttributes, elementType, controlComponents);
|
||||
}
|
||||
if (!hasAccessibleLabel) {
|
||||
context.report({
|
||||
|
|
@ -100,5 +100,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/heading-has-content.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/heading-has-content.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -9,6 +8,7 @@ var _schemas = require("../util/schemas");
|
|||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _hasAccessibleChild = _interopRequireDefault(require("../util/hasAccessibleChild"));
|
||||
var _isHiddenFromScreenReader = _interopRequireDefault(require("../util/isHiddenFromScreenReader"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce heading (h1, h2, etc) elements contain accessible content.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -23,7 +23,7 @@ var headings = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
|
|||
var schema = (0, _schemas.generateObjSchema)({
|
||||
components: _schemas.arraySchema
|
||||
});
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/heading-has-content.md',
|
||||
|
|
@ -58,5 +58,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/html-has-lang.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/html-has-lang.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -8,6 +7,7 @@ exports["default"] = void 0;
|
|||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce html element has lang prop.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -19,7 +19,7 @@ var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
|||
|
||||
var errorMessage = '<html> elements must have the lang prop.';
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/html-has-lang.md',
|
||||
|
|
@ -47,5 +47,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/iframe-has-title.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/iframe-has-title.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -8,6 +7,7 @@ exports["default"] = void 0;
|
|||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _schemas = require("../util/schemas");
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce iframe elements have a title attribute.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -19,7 +19,7 @@ var _schemas = require("../util/schemas");
|
|||
|
||||
var errorMessage = '<iframe> elements must have a unique title property.';
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/iframe-has-title.md',
|
||||
|
|
@ -47,5 +47,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
24
node_modules/eslint-plugin-jsx-a11y/lib/rules/img-redundant-alt.js
generated
vendored
24
node_modules/eslint-plugin-jsx-a11y/lib/rules/img-redundant-alt.js
generated
vendored
|
|
@ -1,14 +1,17 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var _stringPrototype = _interopRequireDefault(require("string.prototype.includes"));
|
||||
var _safeRegexTest = _interopRequireDefault(require("safe-regex-test"));
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _isHiddenFromScreenReader = _interopRequireDefault(require("../util/isHiddenFromScreenReader"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce img alt attribute does not have the word image, picture, or photo.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -24,7 +27,21 @@ var schema = (0, _schemas.generateObjSchema)({
|
|||
components: _schemas.arraySchema,
|
||||
words: _schemas.arraySchema
|
||||
});
|
||||
var _default = {
|
||||
var isASCII = (0, _safeRegexTest["default"])(/[\x20-\x7F]+/);
|
||||
function containsRedundantWord(value, redundantWords) {
|
||||
var lowercaseRedundantWords = redundantWords.map(function (redundantWord) {
|
||||
return redundantWord.toLowerCase();
|
||||
});
|
||||
if (isASCII(value)) {
|
||||
return value.split(/\s+/).some(function (valueWord) {
|
||||
return (0, _arrayIncludes["default"])(lowercaseRedundantWords, valueWord.toLowerCase());
|
||||
});
|
||||
}
|
||||
return lowercaseRedundantWords.some(function (redundantWord) {
|
||||
return (0, _stringPrototype["default"])(value.toLowerCase(), redundantWord);
|
||||
});
|
||||
}
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/img-redundant-alt.md',
|
||||
|
|
@ -56,7 +73,7 @@ var _default = {
|
|||
words = _options$words === void 0 ? [] : _options$words;
|
||||
var redundantWords = REDUNDANT_WORDS.concat(words);
|
||||
if (typeof value === 'string' && isVisible) {
|
||||
var hasRedundancy = new RegExp("(?!{)\\b(".concat(redundantWords.join('|'), ")\\b(?!})"), 'i').test(value);
|
||||
var hasRedundancy = containsRedundantWord(value, redundantWords);
|
||||
if (hasRedundancy === true) {
|
||||
context.report({
|
||||
node,
|
||||
|
|
@ -68,5 +85,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
11
node_modules/eslint-plugin-jsx-a11y/lib/rules/interactive-supports-focus.js
generated
vendored
11
node_modules/eslint-plugin-jsx-a11y/lib/rules/interactive-supports-focus.js
generated
vendored
|
|
@ -1,11 +1,9 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
|
|
@ -19,6 +17,7 @@ var _isNonInteractiveElement = _interopRequireDefault(require("../util/isNonInte
|
|||
var _isNonInteractiveRole = _interopRequireDefault(require("../util/isNonInteractiveRole"));
|
||||
var _isPresentationRole = _interopRequireDefault(require("../util/isPresentationRole"));
|
||||
var _getTabIndex = _interopRequireDefault(require("../util/getTabIndex"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce that elements with onClick handlers must be tabbable.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -30,15 +29,14 @@ var _getTabIndex = _interopRequireDefault(require("../util/getTabIndex"));
|
|||
// ----------------------------------------------------------------------------
|
||||
|
||||
var schema = (0, _schemas.generateObjSchema)({
|
||||
tabbable: (0, _schemas.enumArraySchema)((0, _toConsumableArray2["default"])(_ariaQuery.roles.keys()).filter(function (name) {
|
||||
tabbable: (0, _schemas.enumArraySchema)(_ariaQuery.roles.keys().filter(function (name) {
|
||||
return !_ariaQuery.roles.get(name)["abstract"] && _ariaQuery.roles.get(name).superClass.some(function (klasses) {
|
||||
return (0, _arrayIncludes["default"])(klasses, 'widget');
|
||||
});
|
||||
}))
|
||||
});
|
||||
var domElements = (0, _toConsumableArray2["default"])(_ariaQuery.dom.keys());
|
||||
var interactiveProps = [].concat(_jsxAstUtils.eventHandlersByType.mouse, _jsxAstUtils.eventHandlersByType.keyboard);
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/interactive-supports-focus.md',
|
||||
|
|
@ -55,7 +53,7 @@ var _default = {
|
|||
var type = elementType(node);
|
||||
var hasInteractiveProps = (0, _jsxAstUtils.hasAnyProp)(attributes, interactiveProps);
|
||||
var hasTabindex = (0, _getTabIndex["default"])((0, _jsxAstUtils.getProp)(attributes, 'tabIndex')) !== undefined;
|
||||
if (!(0, _arrayIncludes["default"])(domElements, type)) {
|
||||
if (!_ariaQuery.dom.has(type)) {
|
||||
// Do not test higher level JSX components, as we do not know what
|
||||
// low-level DOM element this maps to.
|
||||
return;
|
||||
|
|
@ -86,5 +84,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
84
node_modules/eslint-plugin-jsx-a11y/lib/rules/label-has-associated-control.js
generated
vendored
84
node_modules/eslint-plugin-jsx-a11y/lib/rules/label-has-associated-control.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -10,6 +9,7 @@ var _schemas = require("../util/schemas");
|
|||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _mayContainChildComponent = _interopRequireDefault(require("../util/mayContainChildComponent"));
|
||||
var _mayHaveAccessibleLabel = _interopRequireDefault(require("../util/mayHaveAccessibleLabel"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce label tags have an associated control.
|
||||
* @author Jesse Beach
|
||||
|
|
@ -22,6 +22,7 @@ var _mayHaveAccessibleLabel = _interopRequireDefault(require("../util/mayHaveAcc
|
|||
// ----------------------------------------------------------------------------
|
||||
|
||||
var errorMessage = 'A form label must be associated with a control.';
|
||||
var errorMessageNoLabel = 'A form label must have accessible text.';
|
||||
var schema = (0, _schemas.generateObjSchema)({
|
||||
labelComponents: _schemas.arraySchema,
|
||||
labelAttributes: _schemas.arraySchema,
|
||||
|
|
@ -37,12 +38,21 @@ var schema = (0, _schemas.generateObjSchema)({
|
|||
minimum: 0
|
||||
}
|
||||
});
|
||||
var validateId = function validateId(node) {
|
||||
var htmlForAttr = (0, _jsxAstUtils.getProp)(node.attributes, 'htmlFor');
|
||||
var htmlForValue = (0, _jsxAstUtils.getPropValue)(htmlForAttr);
|
||||
return htmlForAttr !== false && !!htmlForValue;
|
||||
};
|
||||
var _default = {
|
||||
function validateID(node, context) {
|
||||
var _settings$jsxA11y$at, _settings$jsxA11y, _settings$jsxA11y$att;
|
||||
var settings = context.settings;
|
||||
var htmlForAttributes = (_settings$jsxA11y$at = (_settings$jsxA11y = settings['jsx-a11y']) === null || _settings$jsxA11y === void 0 ? void 0 : (_settings$jsxA11y$att = _settings$jsxA11y.attributes) === null || _settings$jsxA11y$att === void 0 ? void 0 : _settings$jsxA11y$att["for"]) !== null && _settings$jsxA11y$at !== void 0 ? _settings$jsxA11y$at : ['htmlFor'];
|
||||
for (var i = 0; i < htmlForAttributes.length; i += 1) {
|
||||
var attribute = htmlForAttributes[i];
|
||||
if ((0, _jsxAstUtils.hasProp)(node.attributes, attribute)) {
|
||||
var htmlForAttr = (0, _jsxAstUtils.getProp)(node.attributes, attribute);
|
||||
var htmlForValue = (0, _jsxAstUtils.getPropValue)(htmlForAttr);
|
||||
return htmlForAttr !== false && !!htmlForValue;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
description: 'Enforce that a `label` tag has a text label and an associated control.',
|
||||
|
|
@ -63,37 +73,42 @@ var _default = {
|
|||
var controlComponents = ['input', 'meter', 'output', 'progress', 'select', 'textarea'].concat(options.controlComponents || []);
|
||||
// Prevent crazy recursion.
|
||||
var recursionDepth = Math.min(options.depth === undefined ? 2 : options.depth, 25);
|
||||
var hasLabelId = validateId(node.openingElement);
|
||||
var hasLabelId = validateID(node.openingElement, context);
|
||||
// Check for multiple control components.
|
||||
var hasNestedControl = controlComponents.some(function (name) {
|
||||
return (0, _mayContainChildComponent["default"])(node, name, recursionDepth, elementType);
|
||||
});
|
||||
var hasAccessibleLabel = (0, _mayHaveAccessibleLabel["default"])(node, recursionDepth, options.labelAttributes);
|
||||
if (hasAccessibleLabel) {
|
||||
switch (assertType) {
|
||||
case 'htmlFor':
|
||||
if (hasLabelId) {
|
||||
return;
|
||||
}
|
||||
break;
|
||||
case 'nesting':
|
||||
if (hasNestedControl) {
|
||||
return;
|
||||
}
|
||||
break;
|
||||
case 'both':
|
||||
if (hasLabelId && hasNestedControl) {
|
||||
return;
|
||||
}
|
||||
break;
|
||||
case 'either':
|
||||
if (hasLabelId || hasNestedControl) {
|
||||
return;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
var hasAccessibleLabel = (0, _mayHaveAccessibleLabel["default"])(node, recursionDepth, options.labelAttributes, elementType, controlComponents);
|
||||
if (!hasAccessibleLabel) {
|
||||
context.report({
|
||||
node: node.openingElement,
|
||||
message: errorMessageNoLabel
|
||||
});
|
||||
return;
|
||||
}
|
||||
switch (assertType) {
|
||||
case 'htmlFor':
|
||||
if (hasLabelId) {
|
||||
return;
|
||||
}
|
||||
break;
|
||||
case 'nesting':
|
||||
if (hasNestedControl) {
|
||||
return;
|
||||
}
|
||||
break;
|
||||
case 'both':
|
||||
if (hasLabelId && hasNestedControl) {
|
||||
return;
|
||||
}
|
||||
break;
|
||||
case 'either':
|
||||
if (hasLabelId || hasNestedControl) {
|
||||
return;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
// htmlFor case
|
||||
|
|
@ -109,5 +124,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
45
node_modules/eslint-plugin-jsx-a11y/lib/rules/label-has-for.js
generated
vendored
45
node_modules/eslint-plugin-jsx-a11y/lib/rules/label-has-for.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -9,6 +8,7 @@ var _jsxAstUtils = require("jsx-ast-utils");
|
|||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _hasAccessibleChild = _interopRequireDefault(require("../util/hasAccessibleChild"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce label tags have htmlFor attribute.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -55,24 +55,34 @@ function validateNesting(node) {
|
|||
}
|
||||
return false;
|
||||
}
|
||||
var validateId = function validateId(node) {
|
||||
var htmlForAttr = (0, _jsxAstUtils.getProp)(node.attributes, 'htmlFor');
|
||||
var htmlForValue = (0, _jsxAstUtils.getPropValue)(htmlForAttr);
|
||||
return htmlForAttr !== false && !!htmlForValue;
|
||||
};
|
||||
var validate = function validate(node, required, allowChildren, elementType) {
|
||||
function validateID(_ref, context) {
|
||||
var _settings$jsxA11y$at, _settings$jsxA11y, _settings$jsxA11y$att;
|
||||
var attributes = _ref.attributes;
|
||||
var settings = context.settings;
|
||||
var htmlForAttributes = (_settings$jsxA11y$at = (_settings$jsxA11y = settings['jsx-a11y']) === null || _settings$jsxA11y === void 0 ? void 0 : (_settings$jsxA11y$att = _settings$jsxA11y.attributes) === null || _settings$jsxA11y$att === void 0 ? void 0 : _settings$jsxA11y$att["for"]) !== null && _settings$jsxA11y$at !== void 0 ? _settings$jsxA11y$at : ['htmlFor'];
|
||||
for (var i = 0; i < htmlForAttributes.length; i += 1) {
|
||||
var attribute = htmlForAttributes[i];
|
||||
if ((0, _jsxAstUtils.hasProp)(attributes, attribute)) {
|
||||
var htmlForAttr = (0, _jsxAstUtils.getProp)(attributes, attribute);
|
||||
var htmlForValue = (0, _jsxAstUtils.getPropValue)(htmlForAttr);
|
||||
return htmlForAttr !== false && !!htmlForValue;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
function validate(node, required, allowChildren, elementType, context) {
|
||||
if (allowChildren === true) {
|
||||
return (0, _hasAccessibleChild["default"])(node.parent, elementType);
|
||||
}
|
||||
if (required === 'nesting') {
|
||||
return validateNesting(node);
|
||||
}
|
||||
return validateId(node);
|
||||
};
|
||||
var getValidityStatus = function getValidityStatus(node, required, allowChildren, elementType) {
|
||||
return validateID(node, context);
|
||||
}
|
||||
function getValidityStatus(node, required, allowChildren, elementType, context) {
|
||||
if (Array.isArray(required.some)) {
|
||||
var _isValid = required.some.some(function (rule) {
|
||||
return validate(node, rule, allowChildren, elementType);
|
||||
return validate(node, rule, allowChildren, elementType, context);
|
||||
});
|
||||
var _message = !_isValid ? "Form label must have ANY of the following types of associated control: ".concat(required.some.join(', ')) : null;
|
||||
return {
|
||||
|
|
@ -82,7 +92,7 @@ var getValidityStatus = function getValidityStatus(node, required, allowChildren
|
|||
}
|
||||
if (Array.isArray(required.every)) {
|
||||
var _isValid2 = required.every.every(function (rule) {
|
||||
return validate(node, rule, allowChildren, elementType);
|
||||
return validate(node, rule, allowChildren, elementType, context);
|
||||
});
|
||||
var _message2 = !_isValid2 ? "Form label must have ALL of the following types of associated control: ".concat(required.every.join(', ')) : null;
|
||||
return {
|
||||
|
|
@ -90,14 +100,14 @@ var getValidityStatus = function getValidityStatus(node, required, allowChildren
|
|||
message: _message2
|
||||
};
|
||||
}
|
||||
var isValid = validate(node, required, allowChildren, elementType);
|
||||
var isValid = validate(node, required, allowChildren, elementType, context);
|
||||
var message = !isValid ? "Form label must have the following type of associated control: ".concat(required) : null;
|
||||
return {
|
||||
isValid,
|
||||
message
|
||||
};
|
||||
};
|
||||
var _default = {
|
||||
}
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: ['label-has-associated-control'],
|
||||
|
|
@ -110,7 +120,7 @@ var _default = {
|
|||
create: function create(context) {
|
||||
var elementType = (0, _getElementType["default"])(context);
|
||||
return {
|
||||
JSXOpeningElement: function JSXOpeningElement(node) {
|
||||
JSXOpeningElement(node) {
|
||||
var options = context.options[0] || {};
|
||||
var componentOptions = options.components || [];
|
||||
var typesToValidate = ['label'].concat(componentOptions);
|
||||
|
|
@ -124,7 +134,7 @@ var _default = {
|
|||
every: ['nesting', 'id']
|
||||
};
|
||||
var allowChildren = options.allowChildren || false;
|
||||
var _getValidityStatus = getValidityStatus(node, required, allowChildren, elementType),
|
||||
var _getValidityStatus = getValidityStatus(node, required, allowChildren, elementType, context),
|
||||
isValid = _getValidityStatus.isValid,
|
||||
message = _getValidityStatus.message;
|
||||
if (!isValid) {
|
||||
|
|
@ -137,5 +147,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/lang.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/lang.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -9,6 +8,7 @@ var _jsxAstUtils = require("jsx-ast-utils");
|
|||
var _languageTags = _interopRequireDefault(require("language-tags"));
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce lang attribute has a valid value.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -20,7 +20,7 @@ var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
|||
|
||||
var errorMessage = 'lang attribute must have a valid value.';
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/lang.md',
|
||||
|
|
@ -65,5 +65,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/media-has-caption.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/media-has-caption.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -9,6 +8,7 @@ var _jsxAstUtils = require("jsx-ast-utils");
|
|||
var _arrayPrototype = _interopRequireDefault(require("array.prototype.flatmap"));
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview <audio> and <video> elements must have a <track> for captions.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -40,7 +40,7 @@ var isTrackType = function isTrackType(context, type) {
|
|||
return typeToCheck === type;
|
||||
});
|
||||
};
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/media-has-caption.md',
|
||||
|
|
@ -93,5 +93,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
63
node_modules/eslint-plugin-jsx-a11y/lib/rules/mouse-events-have-key-events.js
generated
vendored
63
node_modules/eslint-plugin-jsx-a11y/lib/rules/mouse-events-have-key-events.js
generated
vendored
|
|
@ -7,20 +7,32 @@ exports["default"] = void 0;
|
|||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _schemas = require("../util/schemas");
|
||||
/**
|
||||
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
||||
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
||||
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
||||
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
||||
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /**
|
||||
* @fileoverview Enforce onmouseover/onmouseout are
|
||||
* accompanied by onfocus/onblur.
|
||||
* @author Ethan Cohen
|
||||
*/
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
*
|
||||
*/ // ----------------------------------------------------------------------------
|
||||
// Rule Definition
|
||||
// ----------------------------------------------------------------------------
|
||||
var schema = (0, _schemas.generateObjSchema)({
|
||||
hoverInHandlers: _objectSpread(_objectSpread({}, _schemas.arraySchema), {}, {
|
||||
description: 'An array of events that need to be accompanied by `onFocus`'
|
||||
}),
|
||||
hoverOutHandlers: _objectSpread(_objectSpread({}, _schemas.arraySchema), {}, {
|
||||
description: 'An array of events that need to be accompanied by `onBlur`'
|
||||
})
|
||||
});
|
||||
|
||||
var mouseOverErrorMessage = 'onMouseOver must be accompanied by onFocus for accessibility.';
|
||||
var mouseOutErrorMessage = 'onMouseOut must be accompanied by onBlur for accessibility.';
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
// Use `onMouseOver` and `onMouseOut` by default if no config is
|
||||
// passed in for backwards compatibility
|
||||
var DEFAULT_HOVER_IN_HANDLERS = ['onMouseOver'];
|
||||
var DEFAULT_HOVER_OUT_HANDLERS = ['onMouseOut'];
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/mouse-events-have-key-events.md',
|
||||
|
|
@ -31,36 +43,46 @@ var _default = {
|
|||
create: function create(context) {
|
||||
return {
|
||||
JSXOpeningElement: function JSXOpeningElement(node) {
|
||||
var _options$0$hoverInHan, _options$, _options$0$hoverOutHa, _options$2;
|
||||
var name = node.name.name;
|
||||
if (!_ariaQuery.dom.get(name)) {
|
||||
return;
|
||||
}
|
||||
var options = context.options;
|
||||
var hoverInHandlers = (_options$0$hoverInHan = (_options$ = options[0]) === null || _options$ === void 0 ? void 0 : _options$.hoverInHandlers) !== null && _options$0$hoverInHan !== void 0 ? _options$0$hoverInHan : DEFAULT_HOVER_IN_HANDLERS;
|
||||
var hoverOutHandlers = (_options$0$hoverOutHa = (_options$2 = options[0]) === null || _options$2 === void 0 ? void 0 : _options$2.hoverOutHandlers) !== null && _options$0$hoverOutHa !== void 0 ? _options$0$hoverOutHa : DEFAULT_HOVER_OUT_HANDLERS;
|
||||
var attributes = node.attributes;
|
||||
|
||||
// Check onmouseover / onfocus pairing.
|
||||
var onMouseOver = (0, _jsxAstUtils.getProp)(attributes, 'onMouseOver');
|
||||
var onMouseOverValue = (0, _jsxAstUtils.getPropValue)(onMouseOver);
|
||||
if (onMouseOver && onMouseOverValue != null) {
|
||||
// Check hover in / onfocus pairing
|
||||
var firstHoverInHandlerWithValue = hoverInHandlers.find(function (handler) {
|
||||
var prop = (0, _jsxAstUtils.getProp)(attributes, handler);
|
||||
var propValue = (0, _jsxAstUtils.getPropValue)(prop);
|
||||
return propValue != null;
|
||||
});
|
||||
if (firstHoverInHandlerWithValue != null) {
|
||||
var hasOnFocus = (0, _jsxAstUtils.getProp)(attributes, 'onFocus');
|
||||
var onFocusValue = (0, _jsxAstUtils.getPropValue)(hasOnFocus);
|
||||
if (hasOnFocus === false || onFocusValue === null || onFocusValue === undefined) {
|
||||
context.report({
|
||||
node,
|
||||
message: mouseOverErrorMessage
|
||||
node: (0, _jsxAstUtils.getProp)(attributes, firstHoverInHandlerWithValue),
|
||||
message: "".concat(firstHoverInHandlerWithValue, " must be accompanied by onFocus for accessibility.")
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// Checkout onmouseout / onblur pairing
|
||||
var onMouseOut = (0, _jsxAstUtils.getProp)(attributes, 'onMouseOut');
|
||||
var onMouseOutValue = (0, _jsxAstUtils.getPropValue)(onMouseOut);
|
||||
if (onMouseOut && onMouseOutValue != null) {
|
||||
// Check hover out / onblur pairing
|
||||
var firstHoverOutHandlerWithValue = hoverOutHandlers.find(function (handler) {
|
||||
var prop = (0, _jsxAstUtils.getProp)(attributes, handler);
|
||||
var propValue = (0, _jsxAstUtils.getPropValue)(prop);
|
||||
return propValue != null;
|
||||
});
|
||||
if (firstHoverOutHandlerWithValue != null) {
|
||||
var hasOnBlur = (0, _jsxAstUtils.getProp)(attributes, 'onBlur');
|
||||
var onBlurValue = (0, _jsxAstUtils.getPropValue)(hasOnBlur);
|
||||
if (hasOnBlur === false || onBlurValue === null || onBlurValue === undefined) {
|
||||
context.report({
|
||||
node,
|
||||
message: mouseOutErrorMessage
|
||||
node: (0, _jsxAstUtils.getProp)(attributes, firstHoverOutHandlerWithValue),
|
||||
message: "".concat(firstHoverOutHandlerWithValue, " must be accompanied by onBlur for accessibility.")
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
@ -68,5 +90,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
7
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-access-key.js
generated
vendored
7
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-access-key.js
generated
vendored
|
|
@ -15,13 +15,13 @@ var _schemas = require("../util/schemas");
|
|||
// Rule Definition
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
var errorMessage = 'No access key attribute allowed. Inconsistencies between keyboard shortcuts and keyboard commands used by screenreaders and keyboard-only users create a11y complications.';
|
||||
var errorMessage = 'No access key attribute allowed. Inconsistencies between keyboard shortcuts and keyboard commands used by screen readers and keyboard-only users create a11y complications.';
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-access-key.md',
|
||||
description: 'Enforce that the `accessKey` prop is not used on any element to avoid complications with keyboard commands used by a screenreader.'
|
||||
description: 'Enforce that the `accessKey` prop is not used on any element to avoid complications with keyboard commands used by a screen reader.'
|
||||
},
|
||||
schema: [schema]
|
||||
},
|
||||
|
|
@ -40,5 +40,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-aria-hidden-on-focusable.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-aria-hidden-on-focusable.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -9,6 +8,7 @@ var _jsxAstUtils = require("jsx-ast-utils");
|
|||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _isFocusable = _interopRequireDefault(require("../util/isFocusable"));
|
||||
var _schemas = require("../util/schemas");
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce aria-hidden is not used on interactive elements or contain interactive elements.
|
||||
* @author Kate Higa
|
||||
|
|
@ -19,7 +19,7 @@ var _schemas = require("../util/schemas");
|
|||
// ----------------------------------------------------------------------------
|
||||
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-aria-hidden-on-focusable.md',
|
||||
|
|
@ -44,5 +44,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-autofocus.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-autofocus.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -9,6 +8,7 @@ var _jsxAstUtils = require("jsx-ast-utils");
|
|||
var _ariaQuery = require("aria-query");
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce autoFocus prop is not used.
|
||||
* @author Ethan Cohen <@evcohen>
|
||||
|
|
@ -25,7 +25,7 @@ var schema = (0, _schemas.generateObjSchema)({
|
|||
"default": false
|
||||
}
|
||||
});
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-autofocus.md',
|
||||
|
|
@ -59,5 +59,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-distracting-elements.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-distracting-elements.js
generated
vendored
|
|
@ -1,12 +1,12 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce distracting elements are not used.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -23,7 +23,7 @@ var DEFAULT_ELEMENTS = ['marquee', 'blink'];
|
|||
var schema = (0, _schemas.generateObjSchema)({
|
||||
elements: (0, _schemas.enumArraySchema)(DEFAULT_ELEMENTS)
|
||||
});
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-distracting-elements.md',
|
||||
|
|
@ -51,5 +51,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
|
|
@ -1,19 +1,18 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var _has = _interopRequireDefault(require("has"));
|
||||
var _hasown = _interopRequireDefault(require("hasown"));
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _isInteractiveElement = _interopRequireDefault(require("../util/isInteractiveElement"));
|
||||
var _isNonInteractiveRole = _interopRequireDefault(require("../util/isNonInteractiveRole"));
|
||||
var _isPresentationRole = _interopRequireDefault(require("../util/isPresentationRole"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Disallow inherently interactive elements to be assigned
|
||||
* non-interactive roles.
|
||||
|
|
@ -26,8 +25,7 @@ var _isPresentationRole = _interopRequireDefault(require("../util/isPresentation
|
|||
// ----------------------------------------------------------------------------
|
||||
|
||||
var errorMessage = 'Interactive elements should not be assigned non-interactive roles.';
|
||||
var domElements = (0, _toConsumableArray2["default"])(_ariaQuery.dom.keys());
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-interactive-element-to-noninteractive-role.md',
|
||||
|
|
@ -58,7 +56,7 @@ var _default = {
|
|||
var attributes = node.attributes;
|
||||
var type = elementType(node);
|
||||
var role = (0, _jsxAstUtils.getLiteralPropValue)((0, _jsxAstUtils.getProp)(node.attributes, 'role'));
|
||||
if (!(0, _arrayIncludes["default"])(domElements, type)) {
|
||||
if (!_ariaQuery.dom.has(type)) {
|
||||
// Do not test higher level JSX components, as we do not know what
|
||||
// low-level DOM element this maps to.
|
||||
return;
|
||||
|
|
@ -66,7 +64,7 @@ var _default = {
|
|||
// Allow overrides from rule configuration for specific elements and
|
||||
// roles.
|
||||
var allowedRoles = options[0] || {};
|
||||
if ((0, _has["default"])(allowedRoles, type) && (0, _arrayIncludes["default"])(allowedRoles[type], role)) {
|
||||
if ((0, _hasown["default"])(allowedRoles, type) && (0, _arrayIncludes["default"])(allowedRoles[type], role)) {
|
||||
return;
|
||||
}
|
||||
if ((0, _isInteractiveElement["default"])(type, attributes) && ((0, _isNonInteractiveRole["default"])(type, attributes) || (0, _isPresentationRole["default"])(type, attributes))) {
|
||||
|
|
@ -80,5 +78,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
25
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-noninteractive-element-interactions.js
generated
vendored
25
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-noninteractive-element-interactions.js
generated
vendored
|
|
@ -1,15 +1,13 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var _has = _interopRequireDefault(require("has"));
|
||||
var _hasown = _interopRequireDefault(require("hasown"));
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _isAbstractRole = _interopRequireDefault(require("../util/isAbstractRole"));
|
||||
|
|
@ -20,6 +18,7 @@ var _isInteractiveRole = _interopRequireDefault(require("../util/isInteractiveRo
|
|||
var _isNonInteractiveElement = _interopRequireDefault(require("../util/isNonInteractiveElement"));
|
||||
var _isNonInteractiveRole = _interopRequireDefault(require("../util/isNonInteractiveRole"));
|
||||
var _isPresentationRole = _interopRequireDefault(require("../util/isPresentationRole"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce non-interactive elements have no interactive handlers.
|
||||
* @author Jese Beach
|
||||
|
|
@ -30,12 +29,11 @@ var _isPresentationRole = _interopRequireDefault(require("../util/isPresentation
|
|||
// ----------------------------------------------------------------------------
|
||||
|
||||
var errorMessage = 'Non-interactive elements should not be assigned mouse or keyboard event listeners.';
|
||||
var domElements = (0, _toConsumableArray2["default"])(_ariaQuery.dom.keys());
|
||||
var defaultInteractiveProps = [].concat(_jsxAstUtils.eventHandlersByType.focus, _jsxAstUtils.eventHandlersByType.image, _jsxAstUtils.eventHandlersByType.keyboard, _jsxAstUtils.eventHandlersByType.mouse);
|
||||
var schema = (0, _schemas.generateObjSchema)({
|
||||
handlers: _schemas.arraySchema
|
||||
});
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-interactions.md',
|
||||
|
|
@ -47,13 +45,21 @@ var _default = {
|
|||
var options = context.options;
|
||||
var elementType = (0, _getElementType["default"])(context);
|
||||
return {
|
||||
JSXOpeningElement: function JSXOpeningElement(node) {
|
||||
JSXOpeningElement: function (_JSXOpeningElement) {
|
||||
function JSXOpeningElement(_x) {
|
||||
return _JSXOpeningElement.apply(this, arguments);
|
||||
}
|
||||
JSXOpeningElement.toString = function () {
|
||||
return _JSXOpeningElement.toString();
|
||||
};
|
||||
return JSXOpeningElement;
|
||||
}(function (node) {
|
||||
var attributes = node.attributes;
|
||||
var type = elementType(node);
|
||||
var config = options[0] || {};
|
||||
var interactiveProps = config.handlers || defaultInteractiveProps;
|
||||
// Allow overrides from rule configuration for specific elements and roles.
|
||||
if ((0, _has["default"])(config, type)) {
|
||||
if ((0, _hasown["default"])(config, type)) {
|
||||
attributes = attributes.filter(function (attr) {
|
||||
return attr.type !== 'JSXSpreadAttribute' && !(0, _arrayIncludes["default"])(config[type], (0, _jsxAstUtils.propName)(attr));
|
||||
});
|
||||
|
|
@ -61,7 +67,7 @@ var _default = {
|
|||
var hasInteractiveProps = interactiveProps.some(function (prop) {
|
||||
return (0, _jsxAstUtils.hasProp)(attributes, prop) && (0, _jsxAstUtils.getPropValue)((0, _jsxAstUtils.getProp)(attributes, prop)) != null;
|
||||
});
|
||||
if (!(0, _arrayIncludes["default"])(domElements, type)) {
|
||||
if (!_ariaQuery.dom.has(type)) {
|
||||
// Do not test higher level JSX components, as we do not know what
|
||||
// low-level DOM element this maps to.
|
||||
return;
|
||||
|
|
@ -82,9 +88,8 @@ var _default = {
|
|||
node,
|
||||
message: errorMessage
|
||||
});
|
||||
}
|
||||
})
|
||||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
|
|
@ -1,19 +1,18 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var _has = _interopRequireDefault(require("has"));
|
||||
var _hasown = _interopRequireDefault(require("hasown"));
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _getExplicitRole = _interopRequireDefault(require("../util/getExplicitRole"));
|
||||
var _isNonInteractiveElement = _interopRequireDefault(require("../util/isNonInteractiveElement"));
|
||||
var _isInteractiveRole = _interopRequireDefault(require("../util/isInteractiveRole"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Disallow inherently non-interactive elements to be assigned
|
||||
* interactive roles.
|
||||
|
|
@ -26,8 +25,7 @@ var _isInteractiveRole = _interopRequireDefault(require("../util/isInteractiveRo
|
|||
// ----------------------------------------------------------------------------
|
||||
|
||||
var errorMessage = 'Non-interactive elements should not be assigned interactive roles.';
|
||||
var domElements = (0, _toConsumableArray2["default"])(_ariaQuery.dom.keys());
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-to-interactive-role.md',
|
||||
|
|
@ -58,7 +56,7 @@ var _default = {
|
|||
var attributes = node.attributes;
|
||||
var type = elementType(node);
|
||||
var role = (0, _getExplicitRole["default"])(type, node.attributes);
|
||||
if (!(0, _arrayIncludes["default"])(domElements, type)) {
|
||||
if (!_ariaQuery.dom.has(type)) {
|
||||
// Do not test higher level JSX components, as we do not know what
|
||||
// low-level DOM element this maps to.
|
||||
return;
|
||||
|
|
@ -66,7 +64,7 @@ var _default = {
|
|||
// Allow overrides from rule configuration for specific elements and
|
||||
// roles.
|
||||
var allowedRoles = options[0] || {};
|
||||
if ((0, _has["default"])(allowedRoles, type) && (0, _arrayIncludes["default"])(allowedRoles[type], role)) {
|
||||
if ((0, _hasown["default"])(allowedRoles, type) && (0, _arrayIncludes["default"])(allowedRoles[type], role)) {
|
||||
return;
|
||||
}
|
||||
if ((0, _isNonInteractiveElement["default"])(type, attributes) && (0, _isInteractiveRole["default"])(type, attributes)) {
|
||||
|
|
@ -79,5 +77,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
31
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-noninteractive-tabindex.js
generated
vendored
31
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-noninteractive-tabindex.js
generated
vendored
|
|
@ -1,11 +1,9 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
|
|
@ -15,8 +13,18 @@ var _isInteractiveRole = _interopRequireDefault(require("../util/isInteractiveRo
|
|||
var _isNonLiteralProperty = _interopRequireDefault(require("../util/isNonLiteralProperty"));
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getTabIndex = _interopRequireDefault(require("../util/getTabIndex"));
|
||||
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
||||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
||||
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
||||
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
||||
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
||||
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /**
|
||||
* @fileoverview Disallow tabindex on static and noninteractive elements
|
||||
* @author jessebeach
|
||||
*
|
||||
*/ // ----------------------------------------------------------------------------
|
||||
// Rule Definition
|
||||
// ----------------------------------------------------------------------------
|
||||
var errorMessage = '`tabIndex` should only be declared on interactive elements.';
|
||||
var schema = (0, _schemas.generateObjSchema)({
|
||||
roles: _objectSpread(_objectSpread({}, _schemas.arraySchema), {}, {
|
||||
|
|
@ -26,7 +34,7 @@ var schema = (0, _schemas.generateObjSchema)({
|
|||
description: 'An array of HTML tag names'
|
||||
})
|
||||
});
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-tabindex.md',
|
||||
|
|
@ -38,7 +46,15 @@ var _default = {
|
|||
var options = context.options;
|
||||
var elementType = (0, _getElementType["default"])(context);
|
||||
return {
|
||||
JSXOpeningElement: function JSXOpeningElement(node) {
|
||||
JSXOpeningElement: function (_JSXOpeningElement) {
|
||||
function JSXOpeningElement(_x) {
|
||||
return _JSXOpeningElement.apply(this, arguments);
|
||||
}
|
||||
JSXOpeningElement.toString = function () {
|
||||
return _JSXOpeningElement.toString();
|
||||
};
|
||||
return JSXOpeningElement;
|
||||
}(function (node) {
|
||||
var type = elementType(node);
|
||||
var attributes = node.attributes;
|
||||
var tabIndexProp = (0, _jsxAstUtils.getProp)(attributes, 'tabIndex');
|
||||
|
|
@ -85,9 +101,8 @@ var _default = {
|
|||
message: errorMessage
|
||||
});
|
||||
}
|
||||
}
|
||||
})
|
||||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-onchange.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-onchange.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -8,6 +7,7 @@ exports["default"] = void 0;
|
|||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce usage of onBlur over onChange for accessibility.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -20,7 +20,7 @@ var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
|||
var errorMessage = 'onBlur must be used instead of onchange, unless absolutely necessary and it causes no negative consequences for keyboard only or screen reader users.';
|
||||
var applicableTypes = ['select', 'option'];
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-onchange.md',
|
||||
|
|
@ -49,5 +49,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
21
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-redundant-roles.js
generated
vendored
21
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-redundant-roles.js
generated
vendored
|
|
@ -1,15 +1,15 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var _has = _interopRequireDefault(require("has"));
|
||||
var _hasown = _interopRequireDefault(require("hasown"));
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _getExplicitRole = _interopRequireDefault(require("../util/getExplicitRole"));
|
||||
var _getImplicitRole = _interopRequireDefault(require("../util/getImplicitRole"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce explicit role property is not the
|
||||
* same as implicit/default role property on element.
|
||||
|
|
@ -27,7 +27,7 @@ var errorMessage = function errorMessage(element, implicitRole) {
|
|||
var DEFAULT_ROLE_EXCEPTIONS = {
|
||||
nav: ['navigation']
|
||||
};
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-redundant-roles.md',
|
||||
|
|
@ -48,7 +48,15 @@ var _default = {
|
|||
var options = context.options;
|
||||
var elementType = (0, _getElementType["default"])(context);
|
||||
return {
|
||||
JSXOpeningElement: function JSXOpeningElement(node) {
|
||||
JSXOpeningElement: function (_JSXOpeningElement) {
|
||||
function JSXOpeningElement(_x) {
|
||||
return _JSXOpeningElement.apply(this, arguments);
|
||||
}
|
||||
JSXOpeningElement.toString = function () {
|
||||
return _JSXOpeningElement.toString();
|
||||
};
|
||||
return JSXOpeningElement;
|
||||
}(function (node) {
|
||||
var type = elementType(node);
|
||||
var implicitRole = (0, _getImplicitRole["default"])(type, node.attributes);
|
||||
var explicitRole = (0, _getExplicitRole["default"])(type, node.attributes);
|
||||
|
|
@ -58,7 +66,7 @@ var _default = {
|
|||
if (implicitRole === explicitRole) {
|
||||
var allowedRedundantRoles = options[0] || {};
|
||||
var redundantRolesForElement;
|
||||
if ((0, _has["default"])(allowedRedundantRoles, type)) {
|
||||
if ((0, _hasown["default"])(allowedRedundantRoles, type)) {
|
||||
redundantRolesForElement = allowedRedundantRoles[type];
|
||||
} else {
|
||||
redundantRolesForElement = DEFAULT_ROLE_EXCEPTIONS[type] || [];
|
||||
|
|
@ -71,9 +79,8 @@ var _default = {
|
|||
message: errorMessage(type, implicitRole.toLowerCase())
|
||||
});
|
||||
}
|
||||
}
|
||||
})
|
||||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
22
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-static-element-interactions.js
generated
vendored
22
node_modules/eslint-plugin-jsx-a11y/lib/rules/no-static-element-interactions.js
generated
vendored
|
|
@ -1,14 +1,11 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _isAbstractRole = _interopRequireDefault(require("../util/isAbstractRole"));
|
||||
|
|
@ -19,6 +16,7 @@ var _isNonInteractiveElement = _interopRequireDefault(require("../util/isNonInte
|
|||
var _isNonInteractiveRole = _interopRequireDefault(require("../util/isNonInteractiveRole"));
|
||||
var _isNonLiteralProperty = _interopRequireDefault(require("../util/isNonLiteralProperty"));
|
||||
var _isPresentationRole = _interopRequireDefault(require("../util/isPresentationRole"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce static elements have no interactive handlers.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -30,12 +28,11 @@ var _isPresentationRole = _interopRequireDefault(require("../util/isPresentation
|
|||
// ----------------------------------------------------------------------------
|
||||
|
||||
var errorMessage = 'Avoid non-native interactive elements. If using native HTML is not possible, add an appropriate role and support for tabbing, mouse, keyboard, and touch inputs to an interactive content element.';
|
||||
var domElements = (0, _toConsumableArray2["default"])(_ariaQuery.dom.keys());
|
||||
var defaultInteractiveProps = [].concat(_jsxAstUtils.eventHandlersByType.focus, _jsxAstUtils.eventHandlersByType.keyboard, _jsxAstUtils.eventHandlersByType.mouse);
|
||||
var schema = (0, _schemas.generateObjSchema)({
|
||||
handlers: _schemas.arraySchema
|
||||
});
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-static-element-interactions.md',
|
||||
|
|
@ -47,7 +44,15 @@ var _default = {
|
|||
var options = context.options;
|
||||
var elementType = (0, _getElementType["default"])(context);
|
||||
return {
|
||||
JSXOpeningElement: function JSXOpeningElement(node) {
|
||||
JSXOpeningElement: function (_JSXOpeningElement) {
|
||||
function JSXOpeningElement(_x) {
|
||||
return _JSXOpeningElement.apply(this, arguments);
|
||||
}
|
||||
JSXOpeningElement.toString = function () {
|
||||
return _JSXOpeningElement.toString();
|
||||
};
|
||||
return JSXOpeningElement;
|
||||
}(function (node) {
|
||||
var attributes = node.attributes;
|
||||
var type = elementType(node);
|
||||
var _ref = options[0] || {},
|
||||
|
|
@ -57,7 +62,7 @@ var _default = {
|
|||
var hasInteractiveProps = handlers.some(function (prop) {
|
||||
return (0, _jsxAstUtils.hasProp)(attributes, prop) && (0, _jsxAstUtils.getPropValue)((0, _jsxAstUtils.getProp)(attributes, prop)) != null;
|
||||
});
|
||||
if (!(0, _arrayIncludes["default"])(domElements, type)) {
|
||||
if (!_ariaQuery.dom.has(type)) {
|
||||
// Do not test higher level JSX components, as we do not know what
|
||||
// low-level DOM element this maps to.
|
||||
return;
|
||||
|
|
@ -90,9 +95,8 @@ var _default = {
|
|||
node,
|
||||
message: errorMessage
|
||||
});
|
||||
}
|
||||
})
|
||||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
14
node_modules/eslint-plugin-jsx-a11y/lib/rules/prefer-tag-over-role.js
generated
vendored
14
node_modules/eslint-plugin-jsx-a11y/lib/rules/prefer-tag-over-role.js
generated
vendored
|
|
@ -1,22 +1,27 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _schemas = require("../util/schemas");
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
||||
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
||||
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
||||
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
||||
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
||||
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
||||
var errorMessage = 'Use {{tag}} instead of the "{{role}}" role to ensure accessibility across all devices.';
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var formatTag = function formatTag(tag) {
|
||||
if (!tag.attributes) {
|
||||
return "<".concat(tag.name, ">");
|
||||
}
|
||||
var _tag$attributes = (0, _slicedToArray2["default"])(tag.attributes, 1),
|
||||
var _tag$attributes = _slicedToArray(tag.attributes, 1),
|
||||
attribute = _tag$attributes[0];
|
||||
var value = attribute.value ? "\"".concat(attribute.value, "\"") : '...';
|
||||
return "<".concat(tag.name, " ").concat(attribute.name, "=").concat(value, ">");
|
||||
|
|
@ -29,7 +34,7 @@ var getLastPropValue = function getLastPropValue(rawProp) {
|
|||
var lastSpaceIndex = propValue.lastIndexOf(' ');
|
||||
return lastSpaceIndex === -1 ? propValue : propValue.substring(lastSpaceIndex + 1);
|
||||
};
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
description: 'Enforces using semantic DOM elements over the ARIA `role` property.',
|
||||
|
|
@ -67,5 +72,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
9
node_modules/eslint-plugin-jsx-a11y/lib/rules/role-has-required-aria-props.js
generated
vendored
9
node_modules/eslint-plugin-jsx-a11y/lib/rules/role-has-required-aria-props.js
generated
vendored
|
|
@ -1,16 +1,15 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _isSemanticRoleElement = _interopRequireDefault(require("../util/isSemanticRoleElement"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce that elements with ARIA roles must
|
||||
* have all required attributes for that role.
|
||||
|
|
@ -25,7 +24,8 @@ var errorMessage = function errorMessage(role, requiredProps) {
|
|||
return "Elements with the ARIA role \"".concat(role, "\" must have the following attributes defined: ").concat(String(requiredProps).toLowerCase());
|
||||
};
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
var roleKeys = _ariaQuery.roles.keys();
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-has-required-aria-props.md',
|
||||
|
|
@ -56,7 +56,7 @@ var _default = {
|
|||
}
|
||||
var normalizedValues = String(roleAttrValue).toLowerCase().split(' ');
|
||||
var validRoles = normalizedValues.filter(function (val) {
|
||||
return (0, _toConsumableArray2["default"])(_ariaQuery.roles.keys()).indexOf(val) > -1;
|
||||
return roleKeys.indexOf(val) > -1;
|
||||
});
|
||||
|
||||
// Check semantic DOM elements
|
||||
|
|
@ -85,5 +85,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
14
node_modules/eslint-plugin-jsx-a11y/lib/rules/role-supports-aria-props.js
generated
vendored
14
node_modules/eslint-plugin-jsx-a11y/lib/rules/role-supports-aria-props.js
generated
vendored
|
|
@ -1,16 +1,15 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
var _getImplicitRole = _interopRequireDefault(require("../util/getImplicitRole"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce that elements with explicit or implicit roles defined contain only
|
||||
* `aria-*` properties supported by that `role`.
|
||||
|
|
@ -28,7 +27,7 @@ var errorMessage = function errorMessage(attr, role, tag, isImplicit) {
|
|||
return "The attribute ".concat(attr, " is not supported by the role ").concat(role, ".");
|
||||
};
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-supports-aria-props.md',
|
||||
|
|
@ -53,19 +52,19 @@ var _default = {
|
|||
return;
|
||||
}
|
||||
|
||||
// Make sure it has no aria-* properties defined outside of its property set.
|
||||
// Make sure it has no aria-* properties defined outside its property set.
|
||||
var _roles$get = _ariaQuery.roles.get(roleValue),
|
||||
propKeyValues = _roles$get.props;
|
||||
var invalidAriaPropsForRole = (0, _toConsumableArray2["default"])(_ariaQuery.aria.keys()).filter(function (attribute) {
|
||||
var invalidAriaPropsForRole = new Set(_ariaQuery.aria.keys().filter(function (attribute) {
|
||||
return !(attribute in propKeyValues);
|
||||
});
|
||||
}));
|
||||
node.attributes.filter(function (prop) {
|
||||
return (0, _jsxAstUtils.getPropValue)(prop) != null // Ignore the attribute if its value is null or undefined.
|
||||
&& prop.type !== 'JSXSpreadAttribute' // Ignore the attribute if it's a spread.
|
||||
;
|
||||
}).forEach(function (prop) {
|
||||
var name = (0, _jsxAstUtils.propName)(prop);
|
||||
if (invalidAriaPropsForRole.indexOf(name) > -1) {
|
||||
if (invalidAriaPropsForRole.has(name)) {
|
||||
context.report({
|
||||
node,
|
||||
message: errorMessage(name, roleValue, type, isImplicit)
|
||||
|
|
@ -76,5 +75,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/scope.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/rules/scope.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -9,6 +8,7 @@ var _ariaQuery = require("aria-query");
|
|||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _schemas = require("../util/schemas");
|
||||
var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* @fileoverview Enforce scope prop is only used on <th> elements.
|
||||
* @author Ethan Cohen
|
||||
|
|
@ -20,7 +20,7 @@ var _getElementType = _interopRequireDefault(require("../util/getElementType"));
|
|||
|
||||
var errorMessage = 'The scope prop can only be used on <th> elements.';
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/scope.md',
|
||||
|
|
@ -55,5 +55,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
3
node_modules/eslint-plugin-jsx-a11y/lib/rules/tabindex-no-positive.js
generated
vendored
3
node_modules/eslint-plugin-jsx-a11y/lib/rules/tabindex-no-positive.js
generated
vendored
|
|
@ -17,7 +17,7 @@ var _schemas = require("../util/schemas");
|
|||
|
||||
var errorMessage = 'Avoid positive integer values for tabIndex.';
|
||||
var schema = (0, _schemas.generateObjSchema)();
|
||||
var _default = {
|
||||
var _default = exports["default"] = {
|
||||
meta: {
|
||||
docs: {
|
||||
url: 'https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/tabindex-no-positive.md',
|
||||
|
|
@ -50,5 +50,4 @@ var _default = {
|
|||
};
|
||||
}
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
3
node_modules/eslint-plugin-jsx-a11y/lib/util/attributesComparator.js
generated
vendored
3
node_modules/eslint-plugin-jsx-a11y/lib/util/attributesComparator.js
generated
vendored
|
|
@ -30,6 +30,5 @@ function attributesComparator() {
|
|||
});
|
||||
});
|
||||
}
|
||||
var _default = attributesComparator;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = attributesComparator;
|
||||
module.exports = exports.default;
|
||||
2
node_modules/eslint-plugin-jsx-a11y/lib/util/getAccessibleChildText.js
generated
vendored
2
node_modules/eslint-plugin-jsx-a11y/lib/util/getAccessibleChildText.js
generated
vendored
|
|
@ -1,12 +1,12 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = getAccessibleChildText;
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _isHiddenFromScreenReader = _interopRequireDefault(require("./isHiddenFromScreenReader"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* Returns a new "standardized" string: all whitespace is collapsed to one space,
|
||||
* and the string is lowercase
|
||||
|
|
|
|||
2
node_modules/eslint-plugin-jsx-a11y/lib/util/getComputedRole.js
generated
vendored
2
node_modules/eslint-plugin-jsx-a11y/lib/util/getComputedRole.js
generated
vendored
|
|
@ -1,12 +1,12 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = getComputedRole;
|
||||
var _getExplicitRole = _interopRequireDefault(require("./getExplicitRole"));
|
||||
var _getImplicitRole = _interopRequireDefault(require("./getImplicitRole"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* Returns an element's computed role, which is
|
||||
*
|
||||
|
|
|
|||
26
node_modules/eslint-plugin-jsx-a11y/lib/util/getElementType.js
generated
vendored
26
node_modules/eslint-plugin-jsx-a11y/lib/util/getElementType.js
generated
vendored
|
|
@ -1,24 +1,30 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _has = _interopRequireDefault(require("has"));
|
||||
var _hasown = _interopRequireDefault(require("hasown"));
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
var getElementType = function getElementType(context) {
|
||||
var _settings$jsxA11y;
|
||||
var _settings$jsxA11y, _settings$jsxA11y2, _settings$jsxA11y3;
|
||||
var settings = context.settings;
|
||||
var componentMap = (_settings$jsxA11y = settings['jsx-a11y']) === null || _settings$jsxA11y === void 0 ? void 0 : _settings$jsxA11y.components;
|
||||
if (!componentMap) {
|
||||
return _jsxAstUtils.elementType;
|
||||
}
|
||||
var polymorphicPropName = (_settings$jsxA11y = settings['jsx-a11y']) === null || _settings$jsxA11y === void 0 ? void 0 : _settings$jsxA11y.polymorphicPropName;
|
||||
var polymorphicAllowList = (_settings$jsxA11y2 = settings['jsx-a11y']) === null || _settings$jsxA11y2 === void 0 ? void 0 : _settings$jsxA11y2.polymorphicAllowList;
|
||||
var componentMap = (_settings$jsxA11y3 = settings['jsx-a11y']) === null || _settings$jsxA11y3 === void 0 ? void 0 : _settings$jsxA11y3.components;
|
||||
return function (node) {
|
||||
var polymorphicProp = polymorphicPropName ? (0, _jsxAstUtils.getLiteralPropValue)((0, _jsxAstUtils.getProp)(node.attributes, polymorphicPropName)) : undefined;
|
||||
var rawType = (0, _jsxAstUtils.elementType)(node);
|
||||
return (0, _has["default"])(componentMap, rawType) ? componentMap[rawType] : rawType;
|
||||
if (polymorphicProp && (!polymorphicAllowList || (0, _arrayIncludes["default"])(polymorphicAllowList, rawType))) {
|
||||
rawType = polymorphicProp;
|
||||
}
|
||||
if (!componentMap) {
|
||||
return rawType;
|
||||
}
|
||||
return (0, _hasown["default"])(componentMap, rawType) ? componentMap[rawType] : rawType;
|
||||
};
|
||||
};
|
||||
var _default = getElementType;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = getElementType;
|
||||
module.exports = exports.default;
|
||||
2
node_modules/eslint-plugin-jsx-a11y/lib/util/getImplicitRole.js
generated
vendored
2
node_modules/eslint-plugin-jsx-a11y/lib/util/getImplicitRole.js
generated
vendored
|
|
@ -1,12 +1,12 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = getImplicitRole;
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _implicitRoles = _interopRequireDefault(require("./implicitRoles"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* Returns an element's implicit role given its attributes and type.
|
||||
* Some elements only have an implicit role when certain props are defined.
|
||||
|
|
|
|||
2
node_modules/eslint-plugin-jsx-a11y/lib/util/getSuggestion.js
generated
vendored
2
node_modules/eslint-plugin-jsx-a11y/lib/util/getSuggestion.js
generated
vendored
|
|
@ -1,12 +1,12 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = getSuggestion;
|
||||
var _damerauLevenshtein = _interopRequireDefault(require("damerau-levenshtein"));
|
||||
var _object = _interopRequireDefault(require("object.fromentries"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
// Minimum edit distance to be considered a good suggestion.
|
||||
var THRESHOLD = 2;
|
||||
|
||||
|
|
|
|||
2
node_modules/eslint-plugin-jsx-a11y/lib/util/hasAccessibleChild.js
generated
vendored
2
node_modules/eslint-plugin-jsx-a11y/lib/util/hasAccessibleChild.js
generated
vendored
|
|
@ -1,12 +1,12 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = hasAccessibleChild;
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _isHiddenFromScreenReader = _interopRequireDefault(require("./isHiddenFromScreenReader"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
function hasAccessibleChild(node, elementType) {
|
||||
return node.children.some(function (child) {
|
||||
switch (child.type) {
|
||||
|
|
|
|||
13
node_modules/eslint-plugin-jsx-a11y/lib/util/implicitRoles/img.js
generated
vendored
13
node_modules/eslint-plugin-jsx-a11y/lib/util/implicitRoles/img.js
generated
vendored
|
|
@ -9,10 +9,23 @@ var _jsxAstUtils = require("jsx-ast-utils");
|
|||
* Returns the implicit role for an img tag.
|
||||
*/
|
||||
function getImplicitRoleForImg(attributes) {
|
||||
var _getLiteralPropValue;
|
||||
var alt = (0, _jsxAstUtils.getProp)(attributes, 'alt');
|
||||
if (alt && (0, _jsxAstUtils.getLiteralPropValue)(alt) === '') {
|
||||
return '';
|
||||
}
|
||||
|
||||
/**
|
||||
* If the src attribute can be determined to be an svg, allow the role to be set to 'img'
|
||||
* so that VoiceOver on Safari can be better supported.
|
||||
*
|
||||
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img#identifying_svg_as_an_image
|
||||
* @see https://bugs.webkit.org/show_bug.cgi?id=216364
|
||||
*/
|
||||
var src = (0, _jsxAstUtils.getProp)(attributes, 'src');
|
||||
if (src && (_getLiteralPropValue = (0, _jsxAstUtils.getLiteralPropValue)(src)) !== null && _getLiteralPropValue !== void 0 && _getLiteralPropValue.includes('.svg')) {
|
||||
return '';
|
||||
}
|
||||
return 'img';
|
||||
}
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/util/implicitRoles/index.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/util/implicitRoles/index.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -41,7 +40,8 @@ var _textarea = _interopRequireDefault(require("./textarea"));
|
|||
var _tfoot = _interopRequireDefault(require("./tfoot"));
|
||||
var _thead = _interopRequireDefault(require("./thead"));
|
||||
var _ul = _interopRequireDefault(require("./ul"));
|
||||
var _default = {
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
var _default = exports["default"] = {
|
||||
a: _a["default"],
|
||||
area: _area["default"],
|
||||
article: _article["default"],
|
||||
|
|
@ -79,5 +79,4 @@ var _default = {
|
|||
thead: _thead["default"],
|
||||
ul: _ul["default"]
|
||||
};
|
||||
exports["default"] = _default;
|
||||
module.exports = exports.default;
|
||||
11
node_modules/eslint-plugin-jsx-a11y/lib/util/isAbstractRole.js
generated
vendored
11
node_modules/eslint-plugin-jsx-a11y/lib/util/isAbstractRole.js
generated
vendored
|
|
@ -1,26 +1,23 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var abstractRoles = new Set((0, _toConsumableArray2["default"])(_ariaQuery.roles.keys()).filter(function (role) {
|
||||
var abstractRoles = new Set(_ariaQuery.roles.keys().filter(function (role) {
|
||||
return _ariaQuery.roles.get(role)["abstract"];
|
||||
}));
|
||||
var DOMElements = (0, _toConsumableArray2["default"])(_ariaQuery.dom.keys());
|
||||
var DOMElements = new Set(_ariaQuery.dom.keys());
|
||||
var isAbstractRole = function isAbstractRole(tagName, attributes) {
|
||||
// Do not test higher level JSX components, as we do not know what
|
||||
// low-level DOM element this maps to.
|
||||
if (DOMElements.indexOf(tagName) === -1) {
|
||||
if (!DOMElements.has(tagName)) {
|
||||
return false;
|
||||
}
|
||||
var role = (0, _jsxAstUtils.getLiteralPropValue)((0, _jsxAstUtils.getProp)(attributes, 'role'));
|
||||
return abstractRoles.has(role);
|
||||
};
|
||||
var _default = isAbstractRole;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = isAbstractRole;
|
||||
module.exports = exports.default;
|
||||
10
node_modules/eslint-plugin-jsx-a11y/lib/util/isDOMElement.js
generated
vendored
10
node_modules/eslint-plugin-jsx-a11y/lib/util/isDOMElement.js
generated
vendored
|
|
@ -1,21 +1,15 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var domElements = (0, _toConsumableArray2["default"])(_ariaQuery.dom.keys());
|
||||
|
||||
/**
|
||||
* Returns boolean indicating whether the given element is a DOM element.
|
||||
*/
|
||||
var isDOMElement = function isDOMElement(tagName) {
|
||||
return (0, _arrayIncludes["default"])(domElements, tagName);
|
||||
return _ariaQuery.dom.has(tagName);
|
||||
};
|
||||
var _default = isDOMElement;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = isDOMElement;
|
||||
module.exports = exports.default;
|
||||
3
node_modules/eslint-plugin-jsx-a11y/lib/util/isDisabledElement.js
generated
vendored
3
node_modules/eslint-plugin-jsx-a11y/lib/util/isDisabledElement.js
generated
vendored
|
|
@ -19,6 +19,5 @@ var isDisabledElement = function isDisabledElement(attributes) {
|
|||
}
|
||||
return false;
|
||||
};
|
||||
var _default = isDisabledElement;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = isDisabledElement;
|
||||
module.exports = exports.default;
|
||||
5
node_modules/eslint-plugin-jsx-a11y/lib/util/isFocusable.js
generated
vendored
5
node_modules/eslint-plugin-jsx-a11y/lib/util/isFocusable.js
generated
vendored
|
|
@ -1,6 +1,5 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
|
@ -8,6 +7,7 @@ exports["default"] = void 0;
|
|||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _getTabIndex = _interopRequireDefault(require("./getTabIndex"));
|
||||
var _isInteractiveElement = _interopRequireDefault(require("./isInteractiveElement"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* Returns boolean indicating whether an element appears in tab focus.
|
||||
* Identifies an element as focusable if it is an interactive element, or an element with a tabIndex greater than or equal to 0.
|
||||
|
|
@ -19,6 +19,5 @@ function isFocusable(type, attributes) {
|
|||
}
|
||||
return tabIndex >= 0;
|
||||
}
|
||||
var _default = isFocusable;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = isFocusable;
|
||||
module.exports = exports.default;
|
||||
3
node_modules/eslint-plugin-jsx-a11y/lib/util/isHiddenFromScreenReader.js
generated
vendored
3
node_modules/eslint-plugin-jsx-a11y/lib/util/isHiddenFromScreenReader.js
generated
vendored
|
|
@ -22,6 +22,5 @@ var isHiddenFromScreenReader = function isHiddenFromScreenReader(type, attribute
|
|||
var ariaHidden = (0, _jsxAstUtils.getPropValue)((0, _jsxAstUtils.getProp)(attributes, 'aria-hidden'));
|
||||
return ariaHidden === true;
|
||||
};
|
||||
var _default = isHiddenFromScreenReader;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = isHiddenFromScreenReader;
|
||||
module.exports = exports.default;
|
||||
59
node_modules/eslint-plugin-jsx-a11y/lib/util/isInteractiveElement.js
generated
vendored
59
node_modules/eslint-plugin-jsx-a11y/lib/util/isInteractiveElement.js
generated
vendored
|
|
@ -1,20 +1,27 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _axobjectQuery = require("axobject-query");
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var _arrayPrototype = _interopRequireDefault(require("array.prototype.flatmap"));
|
||||
var _attributesComparator = _interopRequireDefault(require("./attributesComparator"));
|
||||
var domKeys = (0, _toConsumableArray2["default"])(_ariaQuery.dom.keys());
|
||||
var roleKeys = (0, _toConsumableArray2["default"])(_ariaQuery.roles.keys());
|
||||
var elementRoleEntries = (0, _toConsumableArray2["default"])(_ariaQuery.elementRoles);
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
||||
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
||||
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
||||
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
||||
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
|
||||
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
||||
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
||||
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
|
||||
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
|
||||
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
||||
var roleKeys = _ariaQuery.roles.keys();
|
||||
var elementRoleEntries = _toConsumableArray(_ariaQuery.elementRoles);
|
||||
var nonInteractiveRoles = new Set(roleKeys.filter(function (name) {
|
||||
var role = _ariaQuery.roles.get(name);
|
||||
return !role["abstract"]
|
||||
|
|
@ -39,30 +46,30 @@ var interactiveRoles = new Set(roleKeys.filter(function (name) {
|
|||
// 'toolbar' does not descend from widget, but it does support
|
||||
// aria-activedescendant, thus in practice we treat it as a widget.
|
||||
'toolbar'));
|
||||
var nonInteractiveElementRoleSchemas = (0, _arrayPrototype["default"])(elementRoleEntries, function (_ref) {
|
||||
var _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
|
||||
var interactiveElementRoleSchemas = (0, _arrayPrototype["default"])(elementRoleEntries, function (_ref) {
|
||||
var _ref2 = _slicedToArray(_ref, 2),
|
||||
elementSchema = _ref2[0],
|
||||
roleSet = _ref2[1];
|
||||
return (0, _toConsumableArray2["default"])(roleSet).every(function (role) {
|
||||
return nonInteractiveRoles.has(role);
|
||||
}) ? [elementSchema] : [];
|
||||
});
|
||||
var interactiveElementRoleSchemas = (0, _arrayPrototype["default"])(elementRoleEntries, function (_ref3) {
|
||||
var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2),
|
||||
elementSchema = _ref4[0],
|
||||
roleSet = _ref4[1];
|
||||
return (0, _toConsumableArray2["default"])(roleSet).some(function (role) {
|
||||
rolesArr = _ref2[1];
|
||||
return rolesArr.some(function (role) {
|
||||
return interactiveRoles.has(role);
|
||||
}) ? [elementSchema] : [];
|
||||
});
|
||||
var interactiveAXObjects = new Set((0, _toConsumableArray2["default"])(_axobjectQuery.AXObjects.keys()).filter(function (name) {
|
||||
var nonInteractiveElementRoleSchemas = (0, _arrayPrototype["default"])(elementRoleEntries, function (_ref3) {
|
||||
var _ref4 = _slicedToArray(_ref3, 2),
|
||||
elementSchema = _ref4[0],
|
||||
rolesArr = _ref4[1];
|
||||
return rolesArr.every(function (role) {
|
||||
return nonInteractiveRoles.has(role);
|
||||
}) ? [elementSchema] : [];
|
||||
});
|
||||
var interactiveAXObjects = new Set(_axobjectQuery.AXObjects.keys().filter(function (name) {
|
||||
return _axobjectQuery.AXObjects.get(name).type === 'widget';
|
||||
}));
|
||||
var interactiveElementAXObjectSchemas = (0, _arrayPrototype["default"])((0, _toConsumableArray2["default"])(_axobjectQuery.elementAXObjects), function (_ref5) {
|
||||
var _ref6 = (0, _slicedToArray2["default"])(_ref5, 2),
|
||||
var interactiveElementAXObjectSchemas = (0, _arrayPrototype["default"])(_toConsumableArray(_axobjectQuery.elementAXObjects), function (_ref5) {
|
||||
var _ref6 = _slicedToArray(_ref5, 2),
|
||||
elementSchema = _ref6[0],
|
||||
AXObjectSet = _ref6[1];
|
||||
return (0, _toConsumableArray2["default"])(AXObjectSet).every(function (role) {
|
||||
AXObjectsArr = _ref6[1];
|
||||
return AXObjectsArr.every(function (role) {
|
||||
return interactiveAXObjects.has(role);
|
||||
}) ? [elementSchema] : [];
|
||||
});
|
||||
|
|
@ -70,6 +77,7 @@ function checkIsInteractiveElement(tagName, attributes) {
|
|||
function elementSchemaMatcher(elementSchema) {
|
||||
return tagName === elementSchema.name && (0, _attributesComparator["default"])(elementSchema.attributes, attributes);
|
||||
}
|
||||
|
||||
// Check in elementRoles for inherent interactive role associations for
|
||||
// this element.
|
||||
var isInherentInteractiveElement = interactiveElementRoleSchemas.some(elementSchemaMatcher);
|
||||
|
|
@ -99,11 +107,10 @@ function checkIsInteractiveElement(tagName, attributes) {
|
|||
var isInteractiveElement = function isInteractiveElement(tagName, attributes) {
|
||||
// Do not test higher level JSX components, as we do not know what
|
||||
// low-level DOM element this maps to.
|
||||
if (!(0, _arrayIncludes["default"])(domKeys, tagName)) {
|
||||
if (!_ariaQuery.dom.has(tagName)) {
|
||||
return false;
|
||||
}
|
||||
return checkIsInteractiveElement(tagName, attributes);
|
||||
};
|
||||
var _default = isInteractiveElement;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = isInteractiveElement;
|
||||
module.exports = exports.default;
|
||||
8
node_modules/eslint-plugin-jsx-a11y/lib/util/isInteractiveRole.js
generated
vendored
8
node_modules/eslint-plugin-jsx-a11y/lib/util/isInteractiveRole.js
generated
vendored
|
|
@ -1,16 +1,15 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var _arrayPrototype = _interopRequireDefault(require("array.prototype.flatmap"));
|
||||
var roles = (0, _toConsumableArray2["default"])(_ariaQuery.roles.keys());
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
var roles = _ariaQuery.roles.keys();
|
||||
var interactiveRoles = roles.filter(function (name) {
|
||||
return !_ariaQuery.roles.get(name)["abstract"] && _ariaQuery.roles.get(name).superClass.some(function (klasses) {
|
||||
return (0, _arrayIncludes["default"])(klasses, 'widget');
|
||||
|
|
@ -51,6 +50,5 @@ var isInteractiveRole = function isInteractiveRole(tagName, attributes) {
|
|||
}
|
||||
return isInteractive;
|
||||
};
|
||||
var _default = isInteractiveRole;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = isInteractiveRole;
|
||||
module.exports = exports.default;
|
||||
58
node_modules/eslint-plugin-jsx-a11y/lib/util/isNonInteractiveElement.js
generated
vendored
58
node_modules/eslint-plugin-jsx-a11y/lib/util/isNonInteractiveElement.js
generated
vendored
|
|
@ -1,19 +1,27 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _axobjectQuery = require("axobject-query");
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var _arrayPrototype = _interopRequireDefault(require("array.prototype.flatmap"));
|
||||
var _attributesComparator = _interopRequireDefault(require("./attributesComparator"));
|
||||
var roleKeys = (0, _toConsumableArray2["default"])(_ariaQuery.roles.keys());
|
||||
var elementRoleEntries = (0, _toConsumableArray2["default"])(_ariaQuery.elementRoles);
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
||||
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
||||
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
||||
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
||||
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
|
||||
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
||||
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
||||
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
|
||||
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
|
||||
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
||||
var roleKeys = _ariaQuery.roles.keys();
|
||||
var elementRoleEntries = _toConsumableArray(_ariaQuery.elementRoles);
|
||||
var nonInteractiveRoles = new Set(roleKeys.filter(function (name) {
|
||||
var role = _ariaQuery.roles.get(name);
|
||||
return !role["abstract"]
|
||||
|
|
@ -44,36 +52,37 @@ var interactiveRoles = new Set(roleKeys.filter(function (name) {
|
|||
// 'toolbar' does not descend from widget, but it does support
|
||||
// aria-activedescendant, thus in practice we treat it as a widget.
|
||||
'toolbar'));
|
||||
var nonInteractiveElementRoleSchemas = (0, _arrayPrototype["default"])(elementRoleEntries, function (_ref) {
|
||||
var _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
|
||||
var interactiveElementRoleSchemas = (0, _arrayPrototype["default"])(elementRoleEntries, function (_ref) {
|
||||
var _ref2 = _slicedToArray(_ref, 2),
|
||||
elementSchema = _ref2[0],
|
||||
roleSet = _ref2[1];
|
||||
return (0, _toConsumableArray2["default"])(roleSet).every(function (role) {
|
||||
return nonInteractiveRoles.has(role);
|
||||
}) ? [elementSchema] : [];
|
||||
});
|
||||
var interactiveElementRoleSchemas = (0, _arrayPrototype["default"])(elementRoleEntries, function (_ref3) {
|
||||
var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2),
|
||||
elementSchema = _ref4[0],
|
||||
roleSet = _ref4[1];
|
||||
return (0, _toConsumableArray2["default"])(roleSet).some(function (role) {
|
||||
rolesArr = _ref2[1];
|
||||
return rolesArr.some(function (role) {
|
||||
return interactiveRoles.has(role);
|
||||
}) ? [elementSchema] : [];
|
||||
});
|
||||
var nonInteractiveAXObjects = new Set((0, _toConsumableArray2["default"])(_axobjectQuery.AXObjects.keys()).filter(function (name) {
|
||||
var nonInteractiveElementRoleSchemas = (0, _arrayPrototype["default"])(elementRoleEntries, function (_ref3) {
|
||||
var _ref4 = _slicedToArray(_ref3, 2),
|
||||
elementSchema = _ref4[0],
|
||||
rolesArr = _ref4[1];
|
||||
return rolesArr.every(function (role) {
|
||||
return nonInteractiveRoles.has(role);
|
||||
}) ? [elementSchema] : [];
|
||||
});
|
||||
var nonInteractiveAXObjects = new Set(_axobjectQuery.AXObjects.keys().filter(function (name) {
|
||||
return (0, _arrayIncludes["default"])(['window', 'structure'], _axobjectQuery.AXObjects.get(name).type);
|
||||
}));
|
||||
var nonInteractiveElementAXObjectSchemas = (0, _arrayPrototype["default"])((0, _toConsumableArray2["default"])(_axobjectQuery.elementAXObjects), function (_ref5) {
|
||||
var _ref6 = (0, _slicedToArray2["default"])(_ref5, 2),
|
||||
var nonInteractiveElementAXObjectSchemas = (0, _arrayPrototype["default"])(_toConsumableArray(_axobjectQuery.elementAXObjects), function (_ref5) {
|
||||
var _ref6 = _slicedToArray(_ref5, 2),
|
||||
elementSchema = _ref6[0],
|
||||
AXObjectSet = _ref6[1];
|
||||
return (0, _toConsumableArray2["default"])(AXObjectSet).every(function (role) {
|
||||
AXObjectsArr = _ref6[1];
|
||||
return AXObjectsArr.every(function (role) {
|
||||
return nonInteractiveAXObjects.has(role);
|
||||
}) ? [elementSchema] : [];
|
||||
});
|
||||
function checkIsNonInteractiveElement(tagName, attributes) {
|
||||
function elementSchemaMatcher(elementSchema) {
|
||||
return tagName === elementSchema.name && (0, _attributesComparator["default"])(elementSchema.attributes, attributes);
|
||||
return tagName === elementSchema.name && tagName !== 'td' // TODO: investigate why this is needed
|
||||
&& (0, _attributesComparator["default"])(elementSchema.attributes, attributes);
|
||||
}
|
||||
// Check in elementRoles for inherent non-interactive role associations for
|
||||
// this element.
|
||||
|
|
@ -118,6 +127,5 @@ var isNonInteractiveElement = function isNonInteractiveElement(tagName, attribut
|
|||
}
|
||||
return checkIsNonInteractiveElement(tagName, attributes);
|
||||
};
|
||||
var _default = isNonInteractiveElement;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = isNonInteractiveElement;
|
||||
module.exports = exports.default;
|
||||
11
node_modules/eslint-plugin-jsx-a11y/lib/util/isNonInteractiveRole.js
generated
vendored
11
node_modules/eslint-plugin-jsx-a11y/lib/util/isNonInteractiveRole.js
generated
vendored
|
|
@ -1,17 +1,15 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = void 0;
|
||||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
||||
var _ariaQuery = require("aria-query");
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var _arrayPrototype = _interopRequireDefault(require("array.prototype.flatmap"));
|
||||
var roles = (0, _toConsumableArray2["default"])(_ariaQuery.roles.keys());
|
||||
var nonInteractiveRoles = roles.filter(function (name) {
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
var nonInteractiveRoles = _ariaQuery.roles.keys().filter(function (name) {
|
||||
return !_ariaQuery.roles.get(name)["abstract"] && !_ariaQuery.roles.get(name).superClass.some(function (klasses) {
|
||||
return (0, _arrayIncludes["default"])(klasses, 'widget');
|
||||
});
|
||||
|
|
@ -45,7 +43,7 @@ var isNonInteractiveRole = function isNonInteractiveRole(tagName, attributes) {
|
|||
var isNonInteractive = false;
|
||||
var normalizedValues = String(role).toLowerCase().split(' ');
|
||||
var validRoles = (0, _arrayPrototype["default"])(normalizedValues, function (name) {
|
||||
return (0, _arrayIncludes["default"])(roles, name) ? [name] : [];
|
||||
return _ariaQuery.roles.has(name) ? [name] : [];
|
||||
});
|
||||
if (validRoles.length > 0) {
|
||||
// The first role value is a series takes precedence.
|
||||
|
|
@ -53,6 +51,5 @@ var isNonInteractiveRole = function isNonInteractiveRole(tagName, attributes) {
|
|||
}
|
||||
return isNonInteractive;
|
||||
};
|
||||
var _default = isNonInteractiveRole;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = isNonInteractiveRole;
|
||||
module.exports = exports.default;
|
||||
3
node_modules/eslint-plugin-jsx-a11y/lib/util/isNonLiteralProperty.js
generated
vendored
3
node_modules/eslint-plugin-jsx-a11y/lib/util/isNonLiteralProperty.js
generated
vendored
|
|
@ -25,6 +25,5 @@ var isNonLiteralProperty = function isNonLiteralProperty(attributes, propName) {
|
|||
}
|
||||
return true;
|
||||
};
|
||||
var _default = isNonLiteralProperty;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = isNonLiteralProperty;
|
||||
module.exports = exports.default;
|
||||
3
node_modules/eslint-plugin-jsx-a11y/lib/util/isPresentationRole.js
generated
vendored
3
node_modules/eslint-plugin-jsx-a11y/lib/util/isPresentationRole.js
generated
vendored
|
|
@ -9,6 +9,5 @@ var presentationRoles = new Set(['presentation', 'none']);
|
|||
var isPresentationRole = function isPresentationRole(tagName, attributes) {
|
||||
return presentationRoles.has((0, _jsxAstUtils.getLiteralPropValue)((0, _jsxAstUtils.getProp)(attributes, 'role')));
|
||||
};
|
||||
var _default = isPresentationRole;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = isPresentationRole;
|
||||
module.exports = exports.default;
|
||||
3
node_modules/eslint-plugin-jsx-a11y/lib/util/isSemanticRoleElement.js
generated
vendored
3
node_modules/eslint-plugin-jsx-a11y/lib/util/isSemanticRoleElement.js
generated
vendored
|
|
@ -50,6 +50,5 @@ var isSemanticRoleElement = function isSemanticRoleElement(elementType, attribut
|
|||
});
|
||||
return res;
|
||||
};
|
||||
var _default = isSemanticRoleElement;
|
||||
exports["default"] = _default;
|
||||
var _default = exports["default"] = isSemanticRoleElement;
|
||||
module.exports = exports.default;
|
||||
4
node_modules/eslint-plugin-jsx-a11y/lib/util/mayContainChildComponent.js
generated
vendored
4
node_modules/eslint-plugin-jsx-a11y/lib/util/mayContainChildComponent.js
generated
vendored
|
|
@ -1,12 +1,12 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = mayContainChildComponent;
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _minimatch = _interopRequireDefault(require("minimatch"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* Returns true if it can positively determine that the element lacks an
|
||||
* accessible label. If no determination is possible, it returns false. Treat
|
||||
|
|
@ -34,7 +34,7 @@ function mayContainChildComponent(root, componentName) {
|
|||
if (childNode.type === 'JSXExpressionContainer') {
|
||||
return true;
|
||||
}
|
||||
// Check for comonents with the provided name.
|
||||
// Check for components with the provided name.
|
||||
if (childNode.type === 'JSXElement' && childNode.openingElement && (0, _minimatch["default"])(elementType(childNode.openingElement), componentName)) {
|
||||
return true;
|
||||
}
|
||||
|
|
|
|||
25
node_modules/eslint-plugin-jsx-a11y/lib/util/mayHaveAccessibleLabel.js
generated
vendored
25
node_modules/eslint-plugin-jsx-a11y/lib/util/mayHaveAccessibleLabel.js
generated
vendored
|
|
@ -1,12 +1,13 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = mayHaveAccessibleLabel;
|
||||
var _arrayIncludes = _interopRequireDefault(require("array-includes"));
|
||||
var _jsxAstUtils = require("jsx-ast-utils");
|
||||
var _minimatch = _interopRequireDefault(require("minimatch"));
|
||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
||||
/**
|
||||
* Returns true if a labelling element is found or if it cannot determine if
|
||||
* a label is present because of expression containers or spread attributes.
|
||||
|
|
@ -17,6 +18,9 @@ var _jsxAstUtils = require("jsx-ast-utils");
|
|||
*
|
||||
*/
|
||||
|
||||
function tryTrim(value) {
|
||||
return typeof value === 'string' ? value.trim() : value;
|
||||
}
|
||||
function hasLabellingProp(openingElement) {
|
||||
var additionalLabellingProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
||||
var labellingProps = [].concat('alt',
|
||||
|
|
@ -28,7 +32,7 @@ function hasLabellingProp(openingElement) {
|
|||
return true;
|
||||
}
|
||||
// Attribute matches.
|
||||
if ((0, _arrayIncludes["default"])(labellingProps, (0, _jsxAstUtils.propName)(attribute)) && !!(0, _jsxAstUtils.getPropValue)(attribute)) {
|
||||
if ((0, _arrayIncludes["default"])(labellingProps, (0, _jsxAstUtils.propName)(attribute)) && !!tryTrim((0, _jsxAstUtils.getPropValue)(attribute))) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
|
@ -37,13 +41,15 @@ function hasLabellingProp(openingElement) {
|
|||
function mayHaveAccessibleLabel(root) {
|
||||
var maxDepth = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
||||
var additionalLabellingProps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
||||
var getElementType = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : _jsxAstUtils.elementType;
|
||||
var controlComponents = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : [];
|
||||
function checkElement(node, depth) {
|
||||
// Bail when maxDepth is exceeded.
|
||||
if (depth > maxDepth) {
|
||||
return false;
|
||||
}
|
||||
// Check for literal text.
|
||||
if (node.type === 'Literal' && !!node.value) {
|
||||
if (node.type === 'Literal' && !!tryTrim(node.value)) {
|
||||
return true;
|
||||
}
|
||||
// Assume an expression container renders a label. It is the best we can
|
||||
|
|
@ -53,7 +59,7 @@ function mayHaveAccessibleLabel(root) {
|
|||
}
|
||||
// Check for JSXText.
|
||||
// $FlowFixMe Remove after updating ast-types-flow
|
||||
if (node.type === 'JSXText' && !!node.value) {
|
||||
if (node.type === 'JSXText' && !!tryTrim(node.value)) {
|
||||
return true;
|
||||
}
|
||||
// Check for labelling props.
|
||||
|
|
@ -61,6 +67,17 @@ function mayHaveAccessibleLabel(root) {
|
|||
/* $FlowFixMe */ && hasLabellingProp(node.openingElement, additionalLabellingProps)) {
|
||||
return true;
|
||||
}
|
||||
if (node.type === 'JSXElement' && node.children.length === 0 && node.openingElement) {
|
||||
// $FlowFixMe `node.openingElement` has `unknown` type
|
||||
var name = getElementType(node.openingElement);
|
||||
var isReactComponent = name.length > 0 && name[0] === name[0].toUpperCase();
|
||||
if (isReactComponent && !controlComponents.some(function (control) {
|
||||
return (0, _minimatch["default"])(name, control);
|
||||
})) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// Recurse into the child element nodes.
|
||||
if (node.children) {
|
||||
/* $FlowFixMe */
|
||||
|
|
|
|||
20
node_modules/eslint-plugin-jsx-a11y/lib/util/schemas.js
generated
vendored
20
node_modules/eslint-plugin-jsx-a11y/lib/util/schemas.js
generated
vendored
|
|
@ -1,17 +1,18 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.generateObjSchema = exports.enumArraySchema = exports.arraySchema = void 0;
|
||||
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
||||
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
||||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
||||
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
||||
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
||||
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
||||
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
||||
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
||||
/**
|
||||
* JSON schema to accept an array of unique strings
|
||||
*/
|
||||
var arraySchema = {
|
||||
var arraySchema = exports.arraySchema = {
|
||||
type: 'array',
|
||||
items: {
|
||||
type: 'string'
|
||||
|
|
@ -23,8 +24,7 @@ var arraySchema = {
|
|||
/**
|
||||
* JSON schema to accept an array of unique strings from an enumerated list.
|
||||
*/
|
||||
exports.arraySchema = arraySchema;
|
||||
var enumArraySchema = function enumArraySchema() {
|
||||
var enumArraySchema = exports.enumArraySchema = function enumArraySchema() {
|
||||
var enumeratedList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
||||
var minItems = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
||||
return _objectSpread(_objectSpread({}, arraySchema), {}, {
|
||||
|
|
@ -40,8 +40,7 @@ var enumArraySchema = function enumArraySchema() {
|
|||
* Factory function to generate an object schema
|
||||
* with specified properties object
|
||||
*/
|
||||
exports.enumArraySchema = enumArraySchema;
|
||||
var generateObjSchema = function generateObjSchema() {
|
||||
var generateObjSchema = exports.generateObjSchema = function generateObjSchema() {
|
||||
var properties = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||
var required = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;
|
||||
return {
|
||||
|
|
@ -49,5 +48,4 @@ var generateObjSchema = function generateObjSchema() {
|
|||
properties,
|
||||
required
|
||||
};
|
||||
};
|
||||
exports.generateObjSchema = generateObjSchema;
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue