JezK
Edit File: owner.js.map
{"version":3,"file":"owner.js","names":["mutate","args","config","reporter","buildMessages","mutator","length","username","shift","getName","name","isValidPackageName","MessageError","lang","msgs","step","getToken","revoke","info","registries","npm","request","user","error","NpmRegistry","escapeName","pkg","maintainers","email","_rev","method","body","_id","res","success","Error","list","flags","unfiltered","owners","warn","owner","remove","found","filter","o","match","buildSubCommands","add","commander","push","rm","ls","run","_setFlags","setFlags","hasWrapper","examples","description"],"sourceRoot":"../../../src","sources":["cli/commands/owner.js"],"sourcesContent":["/* @flow */\n\nimport type {Reporter} from '../../reporters/index.js';\nimport type Config from '../../config.js';\nimport {MessageError} from '../../errors.js';\nimport buildSubCommands from './_build-sub-commands.js';\nimport {isValidPackageName} from '../../util/normalize-manifest/validate.js';\nimport {getName} from './tag.js';\nimport {getToken} from './login.js';\nimport NpmRegistry from '../../registries/npm-registry.js';\n\ntype Messages = {\n info: string,\n success: string,\n error: string,\n};\n\nexport async function mutate(\n args: Array<string>,\n config: Config,\n reporter: Reporter,\n buildMessages: (username: string, packageName: string) => Messages,\n mutator: (user: Object, pkg: Object) => boolean,\n): Promise<boolean> {\n if (args.length !== 2 && args.length !== 1) {\n return false;\n }\n\n const username = args.shift();\n const name = await getName(args, config);\n if (!isValidPackageName(name)) {\n throw new MessageError(reporter.lang('invalidPackageName'));\n }\n\n const msgs = buildMessages(username, name);\n reporter.step(1, 3, reporter.lang('loggingIn'));\n const revoke = await getToken(config, reporter, name);\n\n reporter.step(2, 3, msgs.info);\n const user = await config.registries.npm.request(`-/user/org.couchdb.user:${username}`);\n let error = false;\n if (user) {\n // get package\n const pkg = await config.registries.npm.request(NpmRegistry.escapeName(name));\n if (pkg) {\n pkg.maintainers = pkg.maintainers || [];\n error = mutator({name: user.name, email: user.email}, pkg);\n } else {\n error = true;\n reporter.error(reporter.lang('unknownPackage', name));\n }\n\n // update package\n if (pkg && !error) {\n const res = await config.registries.npm.request(`${NpmRegistry.escapeName(name)}/-rev/${pkg._rev}`, {\n method: 'PUT',\n body: {\n _id: pkg._id,\n _rev: pkg._rev,\n maintainers: pkg.maintainers,\n },\n });\n\n if (res != null && res.success) {\n reporter.success(msgs.success);\n } else {\n error = true;\n reporter.error(msgs.error);\n }\n }\n } else {\n error = true;\n reporter.error(reporter.lang('unknownUser', username));\n }\n\n reporter.step(3, 3, reporter.lang('revokingToken'));\n await revoke();\n\n if (error) {\n throw new Error();\n } else {\n return true;\n }\n}\n\nasync function list(config: Config, reporter: Reporter, flags: Object, args: Array<string>): Promise<boolean> {\n if (args.length > 1) {\n return false;\n }\n const name = await getName(args, config);\n reporter.step(1, 1, reporter.lang('ownerGetting', name));\n const pkg = await config.registries.npm.request(name, {unfiltered: true});\n if (pkg) {\n const owners = pkg.maintainers;\n if (!owners || !owners.length) {\n reporter.warn(reporter.lang('ownerNone'));\n } else {\n for (const owner of owners) {\n reporter.info(`${owner.name} <${owner.email}>`);\n }\n }\n } else {\n reporter.error(reporter.lang('ownerGettingFailed'));\n }\n\n if (pkg) {\n return true;\n } else {\n throw new Error();\n }\n}\n\nfunction remove(config: Config, reporter: Reporter, flags: Object, args: Array<string>): Promise<boolean> {\n return mutate(\n args,\n config,\n reporter,\n (username: string, name: string): Messages => ({\n info: reporter.lang('ownerRemoving', username, name),\n success: reporter.lang('ownerRemoved'),\n error: reporter.lang('ownerRemoveError'),\n }),\n (user: Object, pkg: Object): boolean => {\n let found = false;\n\n pkg.maintainers = pkg.maintainers.filter((o): boolean => {\n const match = o.name === user.name;\n found = found || match;\n return !match;\n });\n\n if (!found) {\n reporter.error(reporter.lang('userNotAnOwner', user.name));\n }\n\n return found;\n },\n );\n}\n\nconst {run, setFlags: _setFlags, hasWrapper, examples} = buildSubCommands(\n 'owner',\n {\n add(config: Config, reporter: Reporter, commander: Object, flags: Object, args: Array<string>): Promise<boolean> {\n return mutate(\n args,\n config,\n reporter,\n (username: string, name: string): Messages => ({\n info: reporter.lang('ownerAdding', username, name),\n success: reporter.lang('ownerAdded'),\n error: reporter.lang('ownerAddingFailed'),\n }),\n (user: Object, pkg: Object): boolean => {\n for (const owner of pkg.maintainers) {\n if (owner.name === user) {\n reporter.error(reporter.lang('ownerAlready'));\n return true;\n }\n }\n\n pkg.maintainers.push(user);\n\n return false;\n },\n );\n },\n\n rm(config: Config, reporter: Reporter, commander: Object, flags: Object, args: Array<string>): Promise<boolean> {\n reporter.warn(`\\`yarn owner rm\\` is deprecated. Please use \\`yarn owner remove\\`.`);\n return remove(config, reporter, flags, args);\n },\n\n remove(config: Config, reporter: Reporter, commander: Object, flags: Object, args: Array<string>): Promise<boolean> {\n return remove(config, reporter, flags, args);\n },\n\n ls(config: Config, reporter: Reporter, commander: Object, flags: Object, args: Array<string>): Promise<boolean> {\n reporter.warn(`\\`yarn owner ls\\` is deprecated. Please use \\`yarn owner list\\`.`);\n return list(config, reporter, flags, args);\n },\n\n list(config: Config, reporter: Reporter, commander: Object, flags: Object, args: Array<string>): Promise<boolean> {\n return list(config, reporter, flags, args);\n },\n },\n ['add <user> [[<@scope>/]<pkg>]', 'remove <user> [[<@scope>/]<pkg>]', 'list [<@scope>/]<pkg>'],\n);\n\nexport {run, hasWrapper, examples};\n\nexport function setFlags(commander: Object) {\n _setFlags(commander);\n commander.description('Manages package owners.');\n}\n"],"mappings":"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"}