UNPKG

1.3 kBJavaScriptView Raw
1var Domo = require('ryuu-client-beta');
2var Login = require('../util/login');
3var design = require('../util/design');
4var log = require('../util/log');
5var evoke = require('../util/evoke');
6var inquirer = require('inquirer');
7var constants = require('../util/constants');
8
9module.exports = function(program) {
10 program
11 .command('undelete [id]')
12 .description('undelete a soft-deleted design')
13 .action(function(arg, options) {
14
15 var designId = design.getDesignId(arg, null, program.manifest);
16
17 inquirer.prompt([{
18 type: 'confirm',
19 message: 'Are you sure you want to undelete design with id: ' + designId + '?',
20 name: 'undelete',
21 default: true
22 }], handleUserResponse);
23
24 function handleUserResponse(answer) {
25 if (answer.undelete) {
26 var login = Login.getMostRecentLogin();
27 Login.verifyLogin(login);
28
29 var domo = new Domo(login.instance, login.refreshToken, constants.CLIENT_ID);
30
31 domo.unDeleteDesign(designId)
32 .tap(evoke(log.ok, 'Undeleted design ' + designId))
33 .catch(evoke(log.clientRequestFailed, 'Unable to undelete design ' + designId))
34 .finally(process.exit);
35 } else {
36 log.fail('Undelete command aborted');
37 }
38 }
39
40 });
41}