UNPKG

eslint-plugin-vuejs-accessibility

Version:
34 lines (33 loc) 1.16 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const utils_1 = require("../utils"); const hasFocusableElement_1 = __importDefault(require("../utils/hasFocusableElement")); const rule = { meta: { type: "problem", docs: { url: (0, utils_1.makeDocsURL)("no-aria-hidden-on-focusable") }, messages: { default: "Focusable/Interactive elements must not have an aria-hidden attribute." }, schema: [] }, create(context) { return (0, utils_1.defineTemplateBodyVisitor)(context, { VElement(node) { const hasAriaHidden = (0, utils_1.getElementAttributeValue)(node, "aria-hidden"); if (hasAriaHidden && (0, hasFocusableElement_1.default)(node)) { context.report({ node: node, messageId: "default" }); } } }); } }; exports.default = rule;