X7ROOT File Manager
Current Path:
/opt/alt/alt-nodejs24/root/usr/lib/node_modules/npm/lib/commands
opt
/
alt
/
alt-nodejs24
/
root
/
usr
/
lib
/
node_modules
/
npm
/
lib
/
commands
/
??
..
??
access.js
(6.17 KB)
??
adduser.js
(1.29 KB)
??
audit.js
(3.17 KB)
??
bugs.js
(847 B)
??
cache.js
(11.48 KB)
??
ci.js
(4.24 KB)
??
completion.js
(10.83 KB)
??
config.js
(11.48 KB)
??
dedupe.js
(1.42 KB)
??
deprecate.js
(2.43 KB)
??
diff.js
(7.92 KB)
??
dist-tag.js
(5.5 KB)
??
docs.js
(449 B)
??
doctor.js
(9.99 KB)
??
edit.js
(1.72 KB)
??
exec.js
(3.39 KB)
??
explain.js
(3.55 KB)
??
explore.js
(2.11 KB)
??
find-dupes.js
(578 B)
??
fund.js
(6.38 KB)
??
get.js
(538 B)
??
help-search.js
(5.53 KB)
??
help.js
(3.64 KB)
??
init.js
(7.02 KB)
??
install-ci-test.js
(308 B)
??
install-test.js
(303 B)
??
install.js
(5.1 KB)
??
link.js
(5.24 KB)
??
ll.js
(234 B)
??
login.js
(1.29 KB)
??
logout.js
(1.42 KB)
??
ls.js
(18.03 KB)
??
org.js
(3.96 KB)
??
outdated.js
(7.92 KB)
??
owner.js
(5.95 KB)
??
pack.js
(2.77 KB)
??
ping.js
(873 B)
??
pkg.js
(3.58 KB)
??
prefix.js
(309 B)
??
profile.js
(10.3 KB)
??
prune.js
(770 B)
??
publish.js
(9.47 KB)
??
query.js
(3.75 KB)
??
rebuild.js
(2.15 KB)
??
repo.js
(1.24 KB)
??
restart.js
(303 B)
??
root.js
(295 B)
??
run.js
(6.27 KB)
??
sbom.js
(4.47 KB)
??
search.js
(1.83 KB)
??
set.js
(632 B)
??
shrinkwrap.js
(2.63 KB)
??
star.js
(1.88 KB)
??
stars.js
(1.03 KB)
??
start.js
(293 B)
??
stop.js
(288 B)
??
team.js
(4.33 KB)
??
test.js
(288 B)
??
token.js
(7.96 KB)
??
trust
??
undeprecate.js
(302 B)
??
uninstall.js
(1.49 KB)
??
unpublish.js
(5.24 KB)
??
unstar.js
(183 B)
??
update.js
(1.69 KB)
??
version.js
(3.54 KB)
??
view.js
(13.48 KB)
??
whoami.js
(527 B)
Editing: team.js
const libteam = require('libnpmteam') const { output } = require('proc-log') const { otplease } = require('../utils/auth.js') const BaseCommand = require('../base-cmd.js') class Team extends BaseCommand { static description = 'Manage organization teams and team memberships' static name = 'team' static usage = [ 'create <scope:team> [--otp <otpcode>]', 'destroy <scope:team> [--otp <otpcode>]', 'add <scope:team> <user> [--otp <otpcode>]', 'rm <scope:team> <user> [--otp <otpcode>]', 'ls <scope>|<scope:team>', ] static params = [ 'registry', 'otp', 'parseable', 'json', ] static ignoreImplicitWorkspace = false static async completion (opts) { const { conf: { argv: { remain: argv } } } = opts const subcommands = ['create', 'destroy', 'add', 'rm', 'ls'] if (argv.length === 2) { return subcommands } if (subcommands.includes(argv[2])) { return [] } throw new Error(argv[2] + ' not recognized') } async exec ([cmd, entity = '', user = '']) { // Entities are in the format <scope>:<team> // XXX: "description" option to libnpmteam is used as a description of the team, but in npm's options // this is a boolean meaning "show the description in npm search output". // Hence its being set to null here. await otplease(this.npm, { ...this.npm.flatOptions }, opts => { entity = entity.replace(/^@/, '') switch (cmd) { case 'create': return this.create(entity, opts) case 'destroy': return this.destroy(entity, opts) case 'add': return this.add(entity, user, opts) case 'rm': return this.rm(entity, user, opts) case 'ls': { const match = entity.match(/[^:]+:.+/) if (match) { return this.listUsers(entity, opts) } else { return this.listTeams(entity, opts) } } default: throw this.usageError() } }) } async create (entity, opts) { await libteam.create(entity, opts) if (opts.json) { output.buffer({ created: true, team: entity, }) } else if (opts.parseable) { output.standard(`${entity}\tcreated`) } else if (!this.npm.silent) { output.standard(`+@${entity}`) } } async destroy (entity, opts) { await libteam.destroy(entity, opts) if (opts.json) { output.buffer({ deleted: true, team: entity, }) } else if (opts.parseable) { output.standard(`${entity}\tdeleted`) } else if (!this.npm.silent) { output.standard(`-@${entity}`) } } async add (entity, user, opts) { await libteam.add(user, entity, opts) if (opts.json) { output.buffer({ added: true, team: entity, user, }) } else if (opts.parseable) { output.standard(`${user}\t${entity}\tadded`) } else if (!this.npm.silent) { output.standard(`${user} added to @${entity}`) } } async rm (entity, user, opts) { await libteam.rm(user, entity, opts) if (opts.json) { output.buffer({ removed: true, team: entity, user, }) } else if (opts.parseable) { output.standard(`${user}\t${entity}\tremoved`) } else if (!this.npm.silent) { output.standard(`${user} removed from @${entity}`) } } async listUsers (entity, opts) { const users = (await libteam.lsUsers(entity, opts)).sort() if (opts.json) { output.buffer(users) } else if (opts.parseable) { output.standard(users.join('\n')) } else if (!this.npm.silent) { const plural = users.length === 1 ? '' : 's' const more = users.length === 0 ? '' : ':' output.standard(`@${entity} has ${users.length} user${plural}${more}`) for (const user of users) { output.standard(user) } } } async listTeams (entity, opts) { const teams = (await libteam.lsTeams(entity, opts)).sort() if (opts.json) { output.buffer(teams) } else if (opts.parseable) { output.standard(teams.join('\n')) } else if (!this.npm.silent) { const plural = teams.length === 1 ? '' : 's' const more = teams.length === 0 ? '' : ':' output.standard(`@${entity} has ${teams.length} team${plural}${more}`) for (const team of teams) { output.standard(`@${team}`) } } } } module.exports = Team
Upload File
Create Folder