node/deps/npm/lib/init.js
Forrest L Norvell e79ccee168 npm: upgrade to v2.1.18
PR-URL: https://github.com/iojs/io.js/pull/266
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2015-01-08 23:49:03 +01:00

42 lines
1.1 KiB
JavaScript

// initialize a package.json file
module.exports = init
var log = require("npmlog")
, npm = require("./npm.js")
, initJson = require("init-package-json")
init.usage = "npm init [--force/-f]"
function init (args, cb) {
var dir = process.cwd()
log.pause()
npm.spinner.stop()
var initFile = npm.config.get("init-module")
if (!initJson.yes(npm.config)) {
console.log(
["This utility will walk you through creating a package.json file."
,"It only covers the most common items, and tries to guess sane defaults."
,""
,"See `npm help json` for definitive documentation on these fields"
,"and exactly what they do."
,""
,"Use `npm install <pkg> --save` afterwards to install a package and"
,"save it as a dependency in the package.json file."
,""
,"Press ^C at any time to quit."
].join("\n"))
}
initJson(dir, initFile, npm.config, function (er, data) {
log.resume()
log.silly("package data", data)
if (er && er.message === "canceled") {
log.warn("init", "canceled")
return cb(null, data)
}
log.info("init", "written successfully")
cb(er, data)
})
}