import Fs = require("fs"); import Path = require("path"); import isURL = require('is-url'); import * as commandpost from "commandpost"; import generateLogo from './'; type RootCommandArgs = { path: string, dir: string } type RootCommandOtions = { color: string[], invert?: boolean } const root = commandpost .create("root ") .option('-c, --color ') .option('-i, --invert', 'Invert logo (default: false)', false) .action(async (opts, args) => { const path = isURL(args.path) ? args.path : Path.resolve(process.cwd(), args.path); const dir = Path.resolve(process.cwd(), args.dir); const logos = await generateLogo(path, opts.color.length == 0 ? null : opts.color[0], opts.invert); Fs.writeFileSync(Path.join(dir, 'colored.svg'), logos.coloredLogoSVG); Fs.writeFileSync(Path.join(dir, 'transparent.svg'), logos.transparentLogoSVG); }) commandpost .exec(root, process.argv) .catch(err => { if (err instanceof Error) { console.error(err.stack); } else { console.error(err); } process.exit(1); });