]> gerrit.simantics Code Review - simantics/district.git/blob - org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/lib/team.js
Adding integrated tile server
[simantics/district.git] / org.simantics.maps.server / node / node-v4.8.0-win-x64 / node_modules / npm / lib / team.js
1 var mapToRegistry = require('./utils/map-to-registry.js')
2 var npm = require('./npm')
3
4 module.exports = team
5
6 team.subcommands = ['create', 'destroy', 'add', 'rm', 'ls', 'edit']
7
8 team.usage =
9   'npm team create <scope:team>\n' +
10   'npm team destroy <scope:team>\n' +
11   'npm team add <scope:team> <user>\n' +
12   'npm team rm <scope:team> <user>\n' +
13   'npm team ls <scope>|<scope:team>\n' +
14   'npm team edit <scope:team>'
15
16 team.completion = function (opts, cb) {
17   var argv = opts.conf.argv.remain
18   if (argv.length === 2) {
19     return cb(null, team.subcommands)
20   }
21   switch (argv[2]) {
22     case 'ls':
23     case 'create':
24     case 'destroy':
25     case 'add':
26     case 'rm':
27     case 'edit':
28       return cb(null, [])
29     default:
30       return cb(new Error(argv[2] + ' not recognized'))
31   }
32 }
33
34 function team (args, cb) {
35   // Entities are in the format <scope>:<team>
36   var cmd = args.shift()
37   var entity = (args.shift() || '').split(':')
38   return mapToRegistry('/', npm.config, function (err, uri, auth) {
39     if (err) { return cb(err) }
40     try {
41       return npm.registry.team(cmd, uri, {
42         auth: auth,
43         scope: entity[0],
44         team: entity[1],
45         user: args.shift()
46       }, function (err, data) {
47         !err && data && console.log(JSON.stringify(data, undefined, 2))
48         cb(err, data)
49       })
50     } catch (e) {
51       cb(e.message + '\n\nUsage:\n' + team.usage)
52     }
53   })
54 }