eslint-plugin-unicorn
Version:
More than 300 powerful ESLint rules
24 lines (18 loc) • 635 B
JavaScript
import toEslintCreate, {markFunctionWrapped} from '../rule/to-eslint-create.js';
export function checkVueTemplate(unicornCreate, options) {
const {
visitScriptBlock = true,
} = options ?? {};
const create = toEslintCreate(unicornCreate);
return markFunctionWrapped(context => {
const listeners = create(context);
const {parserServices} = context.sourceCode;
// `vue-eslint-parser`
if (parserServices?.defineTemplateBodyVisitor) {
return visitScriptBlock
? parserServices.defineTemplateBodyVisitor(listeners, listeners)
: parserServices.defineTemplateBodyVisitor(listeners);
}
return listeners;
});
}