UNPKG

arkit

Version:

Visualises JavaScript, TypeScript and Flow codebases as meaningful and committable architecture diagrams

50 lines (49 loc) 1.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const yargs = require("yargs"); const parseDirectory = (directory) => { if (directory instanceof Array) directory = directory[0]; return directory || "."; }; const splitByComma = (value = "") => { return value.split(","); }; exports.cli = yargs .usage("$0 [directory]") .option("directory", { description: "Working directory", default: ".", coerce: parseDirectory }) .option("first", { description: "File patterns to be first in the graph", string: true }) .option("exclude", { description: "File patterns to exclude from the graph", default: "test,tests,dist,coverage,**/*.test.*,**/*.spec.*,**/*.min.*" }) .option("output", { description: "Output path or type (svg, png or puml)", default: "arkit.svg" }) .option("config", { description: "Config file path (json or js)", default: "arkit.json" }) .alias({ d: "directory", c: "config", o: "output", f: "first", e: "exclude", h: "help", v: "version", _: "directory" }) .coerce({ exclude: splitByComma, first: splitByComma, output: splitByComma });