UNPKG

ember-template-lint

Version:
31 lines (27 loc) 808 B
'use strict'; const Rule = require('./base'); const componentTemplateRegex = new RegExp( 'templates/components|components/.*/template|ui/components|-components/' ); module.exports = class NoAttrsInComponents extends Rule { isComponentTemplate() { return componentTemplateRegex.test(this._filePath || this._moduleName); } visitor() { return { PathExpression(node) { if (!this.isComponentTemplate()) { return; } if (node.parts && node.parts[0] === 'attrs') { this.log({ message: 'Component templates should not contain `attrs`.', line: node.loc && node.loc.start.line, column: node.loc && node.loc.start.column, source: this.sourceForNode(node), }); } }, }; } };