UNPKG

@iceworks/doctor

Version:

Analyse and running codemods over react/rax projects, troubleshooting and automatically fixing errors

40 lines (39 loc) 1.34 kB
"use strict"; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; Object.defineProperty(exports, "__esModule", { value: true }); var escomplex = require("typhonjs-escomplex"); var Scorer_1 = require("../../Scorer"); var SUPPORT_FILE_REG = /(\.js|\.jsx|\.ts|\.tsx|\.vue)$/; // https://www.npmjs.com/package/typhonjs-escomplex function getMaintainabilityReports(files) { var reports = []; files.forEach(function (file) { if (!SUPPORT_FILE_REG.test(file.path)) return; try { reports.push(__assign(__assign({}, escomplex.analyzeModule(file.source, { commonjs: true, logicalor: true, newmi: true, })), { filePath: file.path })); } catch (e) { // ignore } }); return { score: new Scorer_1.default().getAverage(reports.map(function (item) { return item.maintainability; })), reports: reports, }; } exports.default = getMaintainabilityReports;