UNPKG

cognitive-complexity-ts

Version:

This program analyses TypeScript and JavaScript code according to the [Cognitive Complexity metric](https://www.sonarsource.com/docs/CognitiveComplexity.pdf).

36 lines 1.43 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const minimist_1 = __importDefault(require("minimist")); const open_1 = __importDefault(require("open")); const util_1 = require("./util/util"); const output_1 = require("./cognitive-complexity/output"); const ui_server_1 = require("./ui-server/ui-server"); main(); async function main() { const args = minimist_1.default(process.argv.slice(2)); if (args["h"] || args["help"]) { printHelp(); return; } const givenPort = parseInt(args["port"]); const port = util_1.nonNaN(givenPort, 5678); const url = `http://localhost:${port}`; const inputFiles = args["_"]; const combinedOutputsJson = await generateComplexityJson(inputFiles); const server = ui_server_1.createUiServer(combinedOutputsJson); server.listen(port, () => { console.log(`Server started at ${url}`); open_1.default(url); }); } async function generateComplexityJson(inputFiles) { const combinedOutputs = await util_1.keysToAsyncValues(inputFiles, file => output_1.getFileOrFolderOutput(file)); return JSON.stringify(combinedOutputs); } function printHelp() { console.log("Arguments: [-h | --help] [--port <NUMBER>] [FILE]..."); } //# sourceMappingURL=ui.js.map