blinksocks/build/index.js
2017-08-08 15:17:52 +08:00

1 line
1.1 KiB
JavaScript
Executable File

'use strict';var _fs=require('fs');var _fs2=_interopRequireDefault(_fs);var _path=require('path');var _path2=_interopRequireDefault(_path);var _core=require('./core');var __modules__=_interopRequireWildcard(_core);function _interopRequireWildcard(obj){if(obj&&obj.__esModule){return obj}else{var newObj={};if(obj!=null){for(var key in obj){if(Object.prototype.hasOwnProperty.call(obj,key))newObj[key]=obj[key]}}newObj.default=obj;return newObj}}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}if(global.__WEBPACK__){const argv=process.argv;const usage='Usage: node blinksocks.js -c/--config <json_file>';const conditions=[argv.length!==4,argv[2]!=='-c'&&argv[2]!=='--config',!argv[3].endsWith('.json')];if(conditions.some(c=>c)){console.log(usage);process.exit(0)}const file=_path2.default.resolve(process.cwd(),argv[3]);let json=null;try{const jsonFile=_fs2.default.readFileSync(file);json=JSON.parse(jsonFile)}catch(err){throw Error(`fail to parse your '${file}': ${err.message}`)}const app=new __modules__.Hub(json);app.on('close',()=>process.exit(0));app.run();process.on('SIGINT',()=>app.terminate())}module.exports=__modules__;