Files
pnpm/lib/save.js
2016-02-10 20:58:27 +01:00

16 lines
660 B
JavaScript

var writeFile = require('mz/fs').writeFile
var requireJson = require('./fs/require_json')
var sortedObject = require('sorted-object')
module.exports = function save (pkg, installedPackages, saveType, useExactVersion) {
var packageJson = requireJson(pkg.path)
packageJson[saveType] = packageJson[saveType] || {}
installedPackages.forEach(function (dependency) {
var semverCharacter = useExactVersion ? '' : '^'
packageJson[saveType][dependency.spec.name] = semverCharacter + dependency.version
})
packageJson[saveType] = sortedObject(packageJson[saveType])
return writeFile(pkg.path, JSON.stringify(packageJson, null, 2) + '\n', 'utf8')
}