UNPKG

@alu0101265704/addlogging

Version:

[![npm version](https://badge.fury.io/js/%40alu0101265704%2Faddlogging.svg)](https://badge.fury.io/js/%40alu0101265704%2Faddlogging)

58 lines (49 loc) 1.9 kB
#!/usr/bin/env node const fs = require('fs'); const program = require('commander'); let escodegen = require('escodegen'); let esprima = require('espree'); const espree = require('espree/lib/espree'); let estraverse = require('estraverse'); const { parseOptions } = require('commander'); const { version, description } = require('../package.json'); const { addLogging } = require('../src'); program .version(version) .description(description) .option('-o, --output <output_file> ', 'output file of the program') .option('-p, --pattern <pattern_name> <output_file> <input_file>', 'function pattern name and output file of the program') .usage('add-logging [options]'); program.parse(process.argv); const options = program.opts(); let outputFilename = ''; if (program.args.length === 2) outputFilename = program.args.shift(); let inputFilename = program.args.shift(); try { if (inputFilename) { fs.readFile(inputFilename, 'utf8', (err, input) => { if (err) throw `Error reading '${inputFilename}':${err}`; const output = addLogging(input, options.pattern); if (options.output) { fs.writeFile(options.output, output, err => { if (err) throw `It is not possible to write to '${options.output}': ${err}`; console.log(`Output in file '${options.output}'`); }) } else if (options.pattern) { fs.writeFile(outputFilename, output, err => { if (err) throw `It is not possible to write to '${options.output}': ${err}`; console.log(`Output in file '${outputFilename}`); }) } else { program.help(); } }) } else { program.help(); } } catch (e) { console.log(`There where errors! ${e}`); }