@conarti/eslint-plugin-feature-sliced
Version:
Feature-sliced design methodology plugin
25 lines (24 loc) • 1.07 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.validateAndReport = void 0;
const feature_sliced_1 = require("../../../lib/feature-sliced");
const rule_1 = require("../../../lib/rule");
const errors_1 = require("./errors");
const should_be_absolute_1 = require("./should-be-absolute");
const should_be_relative_1 = require("./should-be-relative");
function validateAndReport(node, context, optionsWithDefault, options = { needCheckForAbsolute: true }) {
if (!(0, rule_1.hasPath)(node)) {
return;
}
if ((0, rule_1.isIgnoredCurrentFile)(context, optionsWithDefault)) {
return;
}
const pathsInfo = (0, feature_sliced_1.extractPathsInfo)(node, context);
if ((0, should_be_relative_1.shouldBeRelative)(pathsInfo)) {
(0, errors_1.reportShouldBeRelative)(node, context);
}
if (options.needCheckForAbsolute && (0, should_be_absolute_1.shouldBeAbsolute)(pathsInfo)) {
(0, errors_1.reportShouldBeAbsolute)(node, context);
}
}
exports.validateAndReport = validateAndReport;