UNPKG

react-h2p-puppeteer

Version:

just the puppeteer package used in react-h2p

73 lines (60 loc) 2.43 kB
#!/usr/bin/env node 'use strict'; const program = require('commander'); const colors = require('colors'); const fs = require("fs"); const path = require("path"); const cmd = require('node-cmd'); var easyjson = require('easyjson'); let maker = () => { console.log("\n"+colors.yellow("--- preparing ---\n")); easyjson.path(path.resolve(__dirname, "..", "..", "package.json")) .add("dependencies[puppeteer]", "^1.7.0"); fs.readFile(path.resolve(__dirname, "..", "..", "package.json"), (err, data) => { if(err){ console.log(colors.red(err)+"\n"+"If you think this is a problem in react-h2p-puppeteer module, contact us:\nmailto:kay.alireza@gmail.com\n"); } let d = data.toString().split("\n"); let index_tochange = -1; d = d.filter((el, i)=>{ if(/^"react-h2p-puppeteer"/.test(el.trim())){ if((d[i+1]).toString().trim().replace("\s+", "")===("},") && i-1>=0 && !/"devDependencies\s*:\s*\{"/.test(d[i-1]) && !/"dependencies"\s*:\s*\{/.test(d[i-1]) ){ index_tochange = i-1; } return ""; } return el; }); if(index_tochange != -1){ d[index_tochange] = (d[index_tochange]).toString().replace(/(.*)\,$\s*/, "$1"); } d = d.join("\n"); if (fs.existsSync(path.resolve(__dirname, "..", "..", "package.json"))) { fs.writeFile("package.json", d); } console.log(colors.yellow("\n creating puppeteer module and deleting react-h2p-puppeteer\n")); cmd.get( 'cd '+path.resolve(__dirname)+' && cp -rf ./src/* ../ && cp -rf ./src/.bin ../ && cd .. && rm -rf ./react-h2p-puppeteer && rm -rf ./react-h2p-puppeteer-cli*', function(err, data, stderr){ if(err){ throw err; } else{ console.log(colors.green("process was successfully done\n\n")); } } ); }); } let make_red = (txt) => { return colors.red(txt); //display the help text in red on the console } program .version('1.0.0') .command('make') .description('make things ready to use puppeteer') .action(maker); if (!process.argv.slice(2).length) { program.outputHelp(make_red); } program.parse(process.argv); // end with parse to parse through the input