JezK
Edit File: info.js.map
{"version":3,"file":"info.js","names":["semver","require","clean","object","Array","isArray","result","forEach","item","push","key","startsWith","setFlags","commander","description","hasWrapper","args","run","config","reporter","flags","length","error","lang","packageName","shift","readRootManifest","name","packageInput","NpmRegistry","escapeName","parsePackageName","version","registries","npm","request","unfiltered","versions","Object","keys","sort","compareLoose","latest","assign","fieldPath","fields","split","readme","reduce","prev","cur","inspect"],"sourceRoot":"../../../src","sources":["cli/commands/info.js"],"sourcesContent":["/* @flow */\n\nimport type {Reporter} from '../../reporters/index.js';\nimport type Config from '../../config.js';\nimport NpmRegistry from '../../registries/npm-registry.js';\nimport parsePackageName from '../../util/parse-package-name.js';\nconst semver = require('semver');\n\nfunction clean(object: any): any {\n if (Array.isArray(object)) {\n const result = [];\n object.forEach(item => {\n item = clean(item);\n if (item) {\n result.push(item);\n }\n });\n return result;\n } else if (typeof object === 'object') {\n const result = {};\n for (const key in object) {\n if (key.startsWith('_')) {\n continue;\n }\n\n const item = clean(object[key]);\n if (item) {\n result[key] = item;\n }\n }\n return result;\n } else if (object) {\n return object;\n } else {\n return null;\n }\n}\n\nexport function setFlags(commander: Object) {\n commander.description('Shows information about a package.');\n}\n\nexport function hasWrapper(commander: Object, args: Array<string>): boolean {\n return true;\n}\n\nexport async function run(config: Config, reporter: Reporter, commander: Object, flags: Object, args: Array<string>): Promise<void> {\n if (args.length > 2) {\n reporter.error(reporter.lang('tooManyArguments', 2));\n return;\n }\n\n let packageName = args.shift() || '.';\n\n // Handle the case when we are referencing a local package.\n if (packageName === '.') {\n packageName = (await config.readRootManifest()).name;\n }\n\n const packageInput = NpmRegistry.escapeName(packageName);\n const {name, version} = parsePackageName(packageInput);\n\n let result;\n try {\n result = await config.registries.npm.request(name, {unfiltered: true});\n } catch (e) {\n reporter.error(reporter.lang('infoFail'));\n return;\n }\n if (!result) {\n reporter.error(reporter.lang('infoFail'));\n return;\n }\n\n result = clean(result);\n\n const versions = result.versions;\n // $FlowFixMe\n result.versions = Object.keys(versions).sort(semver.compareLoose);\n result.version = version || result['dist-tags'].latest;\n result = Object.assign(result, versions[result.version]);\n\n const fieldPath = args.shift();\n const fields = fieldPath ? fieldPath.split('.') : [];\n\n // Readmes can be long so exclude them unless explicitly asked for.\n if (fields[0] !== 'readme') {\n delete result.readme;\n }\n\n result = fields.reduce((prev, cur) => prev && prev[cur], result);\n reporter.inspect(result);\n}\n"],"mappings":"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"}