UNPKG

sass-lint

Version:

Sass linter. Compatible but different from scss-lint

35 lines (30 loc) 854 B
'use strict'; var helpers = require('../helpers'); module.exports = { 'name': 'extends-before-mixins', 'defaults': {}, 'detect': function (ast, parser) { var result = []; ast.traverseByType('block', function (block) { var lastMixin = null; block.traverse(function (item, j) { if (item.type === 'extend') { if (j > lastMixin && lastMixin !== null) { result = helpers.addUnique(result, { 'ruleId': parser.rule.name, 'line': item.start.line, 'column': item.start.column, 'message': 'Extends should come before mixins', 'severity': parser.severity }); } } if (item.type === 'include') { lastMixin = j; } }); lastMixin = null; }); return result; } };