UNPKG

eslint-plugin-vuejs-accessibility

Version:
37 lines (36 loc) 1.59 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const path_1 = __importDefault(require("path")); // Taken directly from eslint-plugin-vue function defineTemplateBodyVisitor(context, templateVisitor, scriptVisitor) { const parserServices = getParserServices(context); if (!parserServices.defineTemplateBodyVisitor) { if (path_1.default.extname(getFilename(context)) === ".vue") { context.report({ loc: { line: 1, column: 0 }, message: "Use the latest vue-eslint-parser. See also https://eslint.vuejs.org/user-guide/#what-is-the-use-the-latest-vue-eslint-parser-error." }); } return {}; } return parserServices.defineTemplateBodyVisitor(templateVisitor, scriptVisitor); } /** * This function is API compatible with eslint v8.x and eslint v9 or later. * @see https://eslint.org/blog/2023/09/preparing-custom-rules-eslint-v9/#context-methods-becoming-properties */ function getFilename(context) { return context.filename || context.getFilename(); } /** * This function is API compatible with eslint v8.x and eslint v9 or later. * @see https://eslint.org/blog/2023/09/preparing-custom-rules-eslint-v9/#from-context-to-sourcecode */ function getParserServices(context) { const legacy = context.sourceCode; return legacy ? legacy.parserServices : context.parserServices; } exports.default = defineTemplateBodyVisitor;