source: frontend/node_modules/eslint-plugin-jsx-a11y/lib/util/hasAccessibleChild.js

Last change on this file was 9af201e, checked in by MBK <marija.karapandzova@…>, 2 weeks ago

Fix frontend appearance

  • Property mode set to 100644
File size: 1.1 KB
Line 
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports["default"] = hasAccessibleChild;
7var _jsxAstUtils = require("jsx-ast-utils");
8var _isHiddenFromScreenReader = _interopRequireDefault(require("./isHiddenFromScreenReader"));
9function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
10function hasAccessibleChild(node, elementType) {
11 return node.children.some(function (child) {
12 switch (child.type) {
13 case 'Literal':
14 return !!child.value;
15 // $FlowFixMe JSXText is missing in ast-types-flow
16 case 'JSXText':
17 return !!child.value;
18 case 'JSXElement':
19 return !(0, _isHiddenFromScreenReader["default"])(elementType(child.openingElement), child.openingElement.attributes);
20 case 'JSXExpressionContainer':
21 if (child.expression.type === 'Identifier') {
22 return child.expression.name !== 'undefined';
23 }
24 return true;
25 default:
26 return false;
27 }
28 }) || (0, _jsxAstUtils.hasAnyProp)(node.openingElement.attributes, ['dangerouslySetInnerHTML', 'children']);
29}
30module.exports = exports.default;
Note: See TracBrowser for help on using the repository browser.