UNPKG

npm

Version:

a package manager for JavaScript

23 lines (21 loc) 621 B
'use strict' var npa = require('npm-package-arg') const isRegistry = require('../utils/is-registry.js') module.exports = function (name, sw, where) { try { if (sw.version && sw.integrity) { return npa.resolve(name, sw.version, where) } else if (sw.from) { const spec = npa(sw.from, where) if (isRegistry(spec) && sw.version) { return npa.resolve(name, sw.version, where) } else if (!sw.resolved) { return spec } } if (sw.resolved) { return npa.resolve(name, sw.resolved, where) } } catch (_) { } return npa.resolve(name, sw.version, where) }