@@ -4,13 +4,11 @@ const util = require('util');
44const prompt = require ( 'inquirer' ) . prompt ;
55const mkdirp = require ( 'mkdirp' ) ;
66const fsJson = require ( 'fs-json' ) ( ) ;
7- const octonode = require ( 'octonode' ) ;
8- const rp = require ( 'request-promise' ) ;
7+
98const exec = require ( 'child_process' ) . exec ;
109
1110const env = require ( './env' ) ;
1211const config = require ( '../config.json' ) ;
13- const janitor = require ( './janitor' ) ;
1412const {
1513 createGithubToken,
1614 deleteGithubToken,
@@ -95,6 +93,12 @@ function promptForUserInfo() {
9593
9694module . exports . promptForUserInfo = promptForUserInfo ;
9795
96+ /**
97+ *
98+ * @param {object } auth
99+ * @param {string } auth.token GitHub Personal Access Token
100+ * @returns {Promise<{token: string}> }
101+ */
98102function writeAuth ( auth ) {
99103 deleteAuth ( ) ;
100104 console . log ( clc . yellow ( 'Writing auth. . .' ) ) ;
@@ -137,8 +141,10 @@ function writeUser(auth) {
137141 const { id, message } = JSON . parse ( stdout ) ;
138142 if ( err ) {
139143 rej ( err ) ;
144+ return ;
140145 } else if ( message ) {
141146 rej ( message ) ;
147+ return ;
142148 }
143149 ensureApplicationDirectory ( ) ;
144150 fsJson . saveSync ( userFilePath , {
@@ -291,17 +297,14 @@ function grabLocalAuthToken() {
291297
292298module . exports . grabLocalAuthToken = grabLocalAuthToken ;
293299
294- function deauthorizeUser ( ) {
295- return new Promise ( function ( res , rej ) {
296- promptForUserInfo ( )
297- // .then(deleteAuth)
298- . then ( deleteUserInfo )
299- . then ( ( ) => {
300- console . log ( clc . blue ( 'Successfully logged out!' ) ) ;
301- res ( true ) ;
302- } )
303- . catch ( err => rej ( `${ err } ` . red ) ) ;
304- } ) ;
300+ async function deauthorizeUser ( ) {
301+ try {
302+ deleteUserInfo ( ) ;
303+ console . log ( clc . blue ( 'Successfully logged out!' ) ) ;
304+ return true ;
305+ } catch ( error ) {
306+ return Promise . reject ( clc . red ( `${ error } ` ) ) ;
307+ }
305308}
306309
307310module . exports . deauthorizeUser = deauthorizeUser ;
@@ -336,6 +339,10 @@ function deleteUser() {
336339
337340module . exports . deleteUser = deleteUser ;
338341
342+ // TODO: Should be async
343+ /**
344+ * Deletes the auth and user files.
345+ */
339346function deleteUserInfo ( ) {
340347 console . log ( clc . red ( 'Deleting files. . .' ) ) ;
341348 deleteAuth ( ) ;
0 commit comments