diff options
author | Ryan Dahl <ry@tinyclouds.org> | 2011-11-21 09:48:45 -0800 |
---|---|---|
committer | Ryan Dahl <ry@tinyclouds.org> | 2011-11-21 10:50:52 -0800 |
commit | b488be127a8cf1e59eb257db3f8eaf6efdb0f275 (patch) | |
tree | 83436f4f84b9651ea66c3a0d304050252916c149 /deps/npm/lib/star.js | |
parent | 05de01d707cd9a80f34da23445f507f5f2e2c277 (diff) | |
download | android-node-v8-b488be127a8cf1e59eb257db3f8eaf6efdb0f275.tar.gz android-node-v8-b488be127a8cf1e59eb257db3f8eaf6efdb0f275.tar.bz2 android-node-v8-b488be127a8cf1e59eb257db3f8eaf6efdb0f275.zip |
Include NPM, update .pkg to install it.
.msi update coming soon.
Diffstat (limited to 'deps/npm/lib/star.js')
-rw-r--r-- | deps/npm/lib/star.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/deps/npm/lib/star.js b/deps/npm/lib/star.js new file mode 100644 index 0000000000..d84fa02ed4 --- /dev/null +++ b/deps/npm/lib/star.js @@ -0,0 +1,34 @@ + +module.exports = star + +var npm = require("./npm.js") + , registry = require("./utils/npm-registry-client/index.js") + , log = require("./utils/log.js") + , asyncMap = require("slide").asyncMap + , output = require("./utils/output.js") + +star.usage = "npm star <package> [pkg, pkg, ...]\n" + + "npm unstar <package> [pkg, pkg, ...]" + +star.completion = function (opts, cb) { + registry.get("/-/short", null, 60000, function (er, list) { + return cb(null, list || []) + }) +} + +function star (args, cb) { + if (!args.length) return cb(star.usage) + var s = npm.config.get("unicode") ? "\u2605 " : "(*)" + , u = npm.config.get("unicode") ? "\u2606 " : "( )" + , using = !(npm.command.match(/^un/)) + if (!using) s = u + asyncMap(args, function (pkg, cb) { + registry.star(pkg, using, function (er, data, raw, req) { + if (!er) { + output.write(s + " "+pkg, npm.config.get("outfd")) + log.verbose(data, "back from star/unstar") + } + cb(er, data, raw, req) + }) + }, cb) +} |