JezK
Edit File: cache.js.map
{"version":3,"file":"cache.js","names":["invariant","require","path","micromatch","hasWrapper","flags","args","getCachedPackagesDirs","config","currentPath","results","fs","lstat","stat","isDirectory","readdir","folders","folder","packageParentPath","join","candidates","length","candidate","candidatePath","charAt","subCandidates","subCandidate","subCandidatePath","push","_getMetadataWithPath","getMetadataFn","paths","Promise","all","map","then","r","_path","error","undefined","getCachedPackages","cacheFolder","readPackageMetadata","bind","packages","filter","p","list","reporter","commander","filterOut","registry","manifest","remote","pattern","contains","name","forReport","version","resolved","body","table","clean","activity","shouldDelete","indexOf","packagesToDelete","relativePath","relative","unlink","resolve","dirname","end","success","lang","_cacheRootFolder","mkdirp","buildSubCommands","ls","warn","dir","log","force","run","_setFlags","setFlags","examples","description","option"],"sourceRoot":"../../../src","sources":["cli/commands/cache.js"],"sourcesContent":["/* @flow */\n\nimport type {Reporter} from '../../reporters/index.js';\nimport type Config from '../../config.js';\nimport buildSubCommands from './_build-sub-commands.js';\nimport * as fs from '../../util/fs.js';\n\nconst invariant = require('invariant');\nconst path = require('path');\nconst micromatch = require('micromatch');\n\nexport function hasWrapper(flags: Object, args: Array<string>): boolean {\n return args[0] !== 'dir';\n}\n\nexport async function getCachedPackagesDirs(config: Config, currentPath: string): Object {\n const results = [];\n const stat = await fs.lstat(currentPath);\n\n if (!stat.isDirectory()) {\n return results;\n }\n\n const folders = await fs.readdir(currentPath);\n for (const folder of folders) {\n if (folder[0] === '.') {\n continue;\n }\n const packageParentPath = path.join(currentPath, folder, 'node_modules');\n\n const candidates = await fs.readdir(packageParentPath);\n invariant(\n candidates.length === 1,\n `There should only be one folder in a package cache (got ${candidates.join(',')} in ${packageParentPath})`,\n );\n\n for (const candidate of candidates) {\n const candidatePath = path.join(packageParentPath, candidate);\n if (candidate.charAt(0) === '@') {\n const subCandidates = await fs.readdir(candidatePath);\n invariant(\n subCandidates.length === 1,\n `There should only be one folder in a package cache (got ${subCandidates.join(',')} in ${candidatePath})`,\n );\n\n for (const subCandidate of subCandidates) {\n const subCandidatePath = path.join(candidatePath, subCandidate);\n results.push(subCandidatePath);\n }\n } else {\n results.push(candidatePath);\n }\n }\n }\n\n return results;\n}\n\nfunction _getMetadataWithPath(getMetadataFn: Function, paths: Array<String>): Promise<Array<Object>> {\n return Promise.all(\n paths.map(path =>\n getMetadataFn(path)\n .then(r => {\n r._path = path;\n return r;\n })\n .catch(error => undefined),\n ),\n );\n}\n\nasync function getCachedPackages(config): Object {\n const paths = await getCachedPackagesDirs(config, config.cacheFolder);\n return _getMetadataWithPath(config.readPackageMetadata.bind(config), paths).then(packages =>\n packages.filter(p => !!p),\n );\n}\n\nasync function list(config: Config, reporter: Reporter, commander: Object, flags: Object, args: Array<string>): Promise<void> {\n const filterOut = ({registry, package: manifest, remote} = {}) => {\n if (flags.pattern && !micromatch.contains(manifest.name, flags.pattern)) {\n return false;\n }\n return true;\n };\n\n const forReport = ({registry, package: manifest, remote} = {}) => [\n manifest.name,\n manifest.version,\n registry,\n (remote && remote.resolved) || '',\n ];\n\n const packages = await getCachedPackages(config);\n const body = packages.filter(filterOut).map(forReport);\n reporter.table(['Name', 'Version', 'Registry', 'Resolved'], body);\n}\n\nasync function clean(config: Config, reporter: Reporter, commander: Object, flags: Object, args: Array<string>): Promise<void> {\n if (config.cacheFolder) {\n const activity = reporter.activity();\n\n if (args.length > 0) {\n // Clear named packages from cache\n const packages = await getCachedPackages(config);\n const shouldDelete = ({registry, package: manifest, remote} = {}) => args.indexOf(manifest.name) !== -1;\n const packagesToDelete = packages.filter(shouldDelete);\n\n for (const manifest of packagesToDelete) {\n let relativePath = path.relative(config.cacheFolder, manifest._path);\n while (relativePath && relativePath !== '.') {\n await fs.unlink(path.resolve(config.cacheFolder, relativePath));\n relativePath = path.dirname(relativePath);\n }\n }\n\n activity.end();\n reporter.success(reporter.lang('clearedPackageFromCache', args[0]));\n } else {\n // Clear all cache\n await fs.unlink(config._cacheRootFolder);\n await fs.mkdirp(config.cacheFolder);\n activity.end();\n reporter.success(reporter.lang('clearedCache'));\n }\n }\n}\n\nconst {run, setFlags: _setFlags, examples} = buildSubCommands('cache', {\n async ls(config: Config, reporter: Reporter, commander: Object, flags: Object, args: Array<string>): Promise<void> {\n reporter.warn(`\\`yarn cache ls\\` is deprecated. Please use \\`yarn cache list\\`.`);\n await list(config, reporter, commander, flags, args);\n },\n list,\n clean,\n dir(config: Config, reporter: Reporter) {\n reporter.log(config.cacheFolder, {force: true});\n },\n});\n\nexport {run, examples};\n\nexport function setFlags(commander: Object) {\n _setFlags(commander);\n commander.description('Yarn cache list will print out every cached package.');\n commander.option('--pattern [pattern]', 'filter cached packages by pattern');\n}\n"],"mappings":"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"}