UNPKG

1.64 kBJavaScriptView Raw
1const e=require("bluebird"),i=require("../utils/input"),r=require("./../utils/credentials"),t=require("joi"),a=require("../utils/validation"),n=require("../utils/application"),o=require("./../utils/api"),l=require("./../utils/files"),s=require("lodash"),u=require("path"),c=require("fs"),d=require("./../utils/messagehandler").messagesHandler,h=require("./share");module.exports=function(){return e.coroutine(function*(){var a;try{if(!(a=yield r.checkCredentials()))return e.reject(d("UNAUTHORIZED"));var n=yield l.getIndex(),h=n.appId,y=yield i.getInput(d("COLLABORATE_PROMPT_MESSAGE"));const A={email:t.string().email().required()};var f={email:y};if(null===t.validate(f,A).error){if(!h)return void Console.info(d("COLLABORATE_INFO"));var q={body:{email:y},headers:{accesstoken:a},method:"PUT"};yield o.makeApiCall("/app/"+h.toString()+"/collaborate",q);if(n.audience?n.audience.push(y):n.audience=[y],n.audience=s.uniq(n.audience),Console.info(d("COLLABORATE_SUCCESS",{email:y})),yield l.createHistoryFile(),h){var g={body:{history:{operation:"Collaborated application",message:"With "+y,created_at:Date.now()}},headers:{accesstoken:a},method:"POST"};yield o.makeApiCall("/app/"+h.toString()+"/history",g)}else{var m={operation:"Collaborated application",message:"With "+y,created_at:Date.now()};c.appendFileSync(u.join(config.APP_DIR,".history.json"),"\n"+JSON.stringify(m),{},function(e){if(e)return console.error("error while saving in history file")}),p}return yield l.writeFile(u.join(config.APP_DIR,"index.json"),JSON.stringify(n,null,2)),!0}return e.reject(d("INVALID_EMAIL"))}catch(i){return e.reject(i)}})().catch(i=>e.reject(i))};
\No newline at end of file