declapract
Version:
A tool to declaratively define best practices, maintainable evolve them, and scalably enforce them.
28 lines • 1.37 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.FilePracticeEvaluation = exports.isFixablePractice = void 0;
const domain_objects_1 = require("domain-objects");
const joi_1 = __importDefault(require("joi"));
const _1 = require("./");
const PracticeDeclaration_1 = require("./PracticeDeclaration");
/**
* a practice is fixable if any check that failed is fixable (since there could be one fix to fix them all)
*/
const isFixablePractice = (evaluation) => evaluation.checks.filter(_1.hasFailed).some(_1.isFixableCheck); // if every check that failed is fixable, then fixable
exports.isFixablePractice = isFixablePractice;
const schema = joi_1.default.object().keys({
path: joi_1.default.string().required(),
result: joi_1.default.string()
.valid(...Object.values(_1.FileEvaluationResult))
.required(),
checks: joi_1.default.array().items(_1.FileCheckEvaluation.schema),
practice: PracticeDeclaration_1.PracticeDeclaration.schema.required(),
});
class FilePracticeEvaluation extends domain_objects_1.DomainObject {
}
exports.FilePracticeEvaluation = FilePracticeEvaluation;
FilePracticeEvaluation.schema = schema;
//# sourceMappingURL=FilePracticeEvaluation.js.map