You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cmda.apache.org by xi...@apache.org on 2015/10/17 01:11:43 UTC

[09/51] [partial] incubator-cmda git commit: Update ApacheCMDA_1.0

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/ls.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/ls.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/ls.js
new file mode 100644
index 0000000..194aae6
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/ls.js
@@ -0,0 +1,356 @@
+
+// show the installed versions of packages
+//
+// --parseable creates output like this:
+// <fu...@ver>:<realpath>:<flags>
+// Flags are a :-separated list of zero or more indicators
+
+module.exports = exports = ls
+
+var npm = require("./npm.js")
+  , readInstalled = require("read-installed")
+  , log = require("npmlog")
+  , path = require("path")
+  , archy = require("archy")
+  , semver = require("semver")
+  , url = require("url")
+  , isGitUrl = require("./utils/is-git-url.js")
+
+ls.usage = "npm ls"
+
+ls.completion = require("./utils/completion/installed-deep.js")
+
+function ls (args, silent, cb) {
+  if (typeof cb !== "function") cb = silent, silent = false
+
+  var dir = path.resolve(npm.dir, "..")
+
+  // npm ls 'foo@~1.3' bar 'baz@<2'
+  if (!args) args = []
+  else args = args.map(function (a) {
+    var nv = a.split("@")
+      , name = nv.shift()
+      , ver = semver.validRange(nv.join("@")) || ""
+
+    return [ name, ver ]
+  })
+
+  var depth = npm.config.get("depth")
+  readInstalled(dir, depth, log.warn, function (er, data) {
+    var bfs = bfsify(data, args)
+      , lite = getLite(bfs)
+
+    if (er || silent) return cb(er, data, lite)
+
+    var long = npm.config.get("long")
+      , json = npm.config.get("json")
+      , out
+    if (json) {
+      var seen = []
+      var d = long ? bfs : lite
+      // the raw data can be circular
+      out = JSON.stringify(d, function (k, o) {
+        if (typeof o === "object") {
+          if (-1 !== seen.indexOf(o)) return "[Circular]"
+          seen.push(o)
+        }
+        return o
+      }, 2)
+    } else if (npm.config.get("parseable")) {
+      out = makeParseable(bfs, long, dir)
+    } else if (data) {
+      out = makeArchy(bfs, long, dir)
+    }
+    console.log(out)
+
+    if (args.length && !data._found) process.exitCode = 1
+
+    // if any errors were found, then complain and exit status 1
+    if (lite.problems && lite.problems.length) {
+      er = lite.problems.join('\n')
+    }
+    cb(er, data, lite)
+  })
+}
+
+// only include
+function filter (data, args) {
+
+}
+
+function alphasort (a, b) {
+  a = a.toLowerCase()
+  b = b.toLowerCase()
+  return a > b ? 1
+       : a < b ? -1 : 0
+}
+
+function getLite (data, noname) {
+  var lite = {}
+    , maxDepth = npm.config.get("depth")
+
+  if (!noname && data.name) lite.name = data.name
+  if (data.version) lite.version = data.version
+  if (data.extraneous) {
+    lite.extraneous = true
+    lite.problems = lite.problems || []
+    lite.problems.push( "extraneous: "
+                      + data.name + "@" + data.version
+                      + " " + (data.path || "") )
+  }
+
+  if (data._from)
+    lite.from = data._from
+
+  if (data._resolved)
+    lite.resolved = data._resolved
+
+  if (data.invalid) {
+    lite.invalid = true
+    lite.problems = lite.problems || []
+    lite.problems.push( "invalid: "
+                      + data.name + "@" + data.version
+                      + " " + (data.path || "") )
+  }
+
+  if (data.peerInvalid) {
+    lite.peerInvalid = true
+    lite.problems = lite.problems || []
+    lite.problems.push( "peer invalid: "
+                      + data.name + "@" + data.version
+                      + " " + (data.path || "") )
+  }
+
+  if (data.dependencies) {
+    var deps = Object.keys(data.dependencies)
+    if (deps.length) lite.dependencies = deps.map(function (d) {
+      var dep = data.dependencies[d]
+      if (typeof dep === "string") {
+        lite.problems = lite.problems || []
+        var p
+        if (data.depth >= maxDepth) {
+          p = "max depth reached: "
+        } else {
+          p = "missing: "
+        }
+        p += d + "@" + dep
+          + ", required by "
+          + data.name + "@" + data.version
+        lite.problems.push(p)
+        return [d, { required: dep, missing: true }]
+      }
+      return [d, getLite(dep, true)]
+    }).reduce(function (deps, d) {
+      if (d[1].problems) {
+        lite.problems = lite.problems || []
+        lite.problems.push.apply(lite.problems, d[1].problems)
+      }
+      deps[d[0]] = d[1]
+      return deps
+    }, {})
+  }
+  return lite
+}
+
+function bfsify (root, args, current, queue, seen) {
+  // walk over the data, and turn it from this:
+  // +-- a
+  // |   `-- b
+  // |       `-- a (truncated)
+  // `--b (truncated)
+  // into this:
+  // +-- a
+  // `-- b
+  // which looks nicer
+  args = args || []
+  current = current || root
+  queue = queue || []
+  seen = seen || [root]
+  var deps = current.dependencies = current.dependencies || {}
+  Object.keys(deps).forEach(function (d) {
+    var dep = deps[d]
+    if (typeof dep !== "object") return
+    if (seen.indexOf(dep) !== -1) {
+      if (npm.config.get("parseable") || !npm.config.get("long")) {
+        delete deps[d]
+        return
+      } else {
+        dep = deps[d] = Object.create(dep)
+        dep.dependencies = {}
+      }
+    }
+    queue.push(dep)
+    seen.push(dep)
+  })
+
+  if (!queue.length) {
+    // if there were args, then only show the paths to found nodes.
+    return filterFound(root, args)
+  }
+  return bfsify(root, args, queue.shift(), queue, seen)
+}
+
+function filterFound (root, args) {
+  if (!args.length) return root
+  var deps = root.dependencies
+  if (deps) Object.keys(deps).forEach(function (d) {
+    var dep = filterFound(deps[d], args)
+
+    // see if this one itself matches
+    var found = false
+    for (var i = 0; !found && i < args.length; i ++) {
+      if (d === args[i][0]) {
+        found = semver.satisfies(dep.version, args[i][1], true)
+      }
+    }
+    // included explicitly
+    if (found) dep._found = true
+    // included because a child was included
+    if (dep._found && !root._found) root._found = 1
+    // not included
+    if (!dep._found) delete deps[d]
+  })
+  if (!root._found) root._found = false
+  return root
+}
+
+function makeArchy (data, long, dir) {
+  var out = makeArchy_(data, long, dir, 0)
+  return archy(out, "", { unicode: npm.config.get("unicode") })
+}
+
+function makeArchy_ (data, long, dir, depth, parent, d) {
+  var color = npm.color
+  if (typeof data === "string") {
+    if (depth < npm.config.get("depth")) {
+      // just missing
+      var p = parent.link || parent.path
+      var unmet = "UNMET DEPENDENCY"
+      if (color) {
+        unmet = "\033[31;40m" + unmet + "\033[0m"
+      }
+      data = unmet + " " + d + " " + data
+    } else {
+      data = d+"@"+ data
+    }
+    return data
+  }
+
+  var out = {}
+  // the top level is a bit special.
+  out.label = data._id || ""
+  if (data._found === true && data._id) {
+    var pre = color ? "\033[33;40m" : ""
+      , post = color ? "\033[m" : ""
+    out.label = pre + out.label.trim() + post + " "
+  }
+  if (data.link) out.label += " -> " + data.link
+
+  if (data.invalid) {
+    if (data.realName !== data.name) out.label += " ("+data.realName+")"
+    out.label += " " + (color ? "\033[31;40m" : "")
+              + "invalid"
+              + (color ? "\033[0m" : "")
+  }
+
+  if (data.peerInvalid) {
+    out.label += " " + (color ? "\033[31;40m" : "")
+              + "peer invalid"
+              + (color ? "\033[0m" : "")
+  }
+
+  if (data.extraneous && data.path !== dir) {
+    out.label += " " + (color ? "\033[32;40m" : "")
+              + "extraneous"
+              + (color ? "\033[0m" : "")
+  }
+
+  // add giturl to name@version
+  if (data._resolved) {
+    var p = url.parse(data._resolved)
+    if (isGitUrl(p))
+      out.label += " (" + data._resolved + ")"
+  }
+
+  if (long) {
+    if (dir === data.path) out.label += "\n" + dir
+    out.label += "\n" + getExtras(data, dir)
+  } else if (dir === data.path) {
+    if (out.label) out.label += " "
+    out.label += dir
+  }
+
+  // now all the children.
+  out.nodes = Object.keys(data.dependencies || {})
+    .sort(alphasort).map(function (d) {
+      return makeArchy_(data.dependencies[d], long, dir, depth + 1, data, d)
+    })
+
+  if (out.nodes.length === 0 && data.path === dir) {
+    out.nodes = ["(empty)"]
+  }
+
+  return out
+}
+
+function getExtras (data, dir) {
+  var extras = []
+
+  if (data.description) extras.push(data.description)
+  if (data.repository) extras.push(data.repository.url)
+  if (data.homepage) extras.push(data.homepage)
+  if (data._from) {
+    var from = data._from
+    if (from.indexOf(data.name + "@") === 0) {
+      from = from.substr(data.name.length + 1)
+    }
+    var u = url.parse(from)
+    if (u.protocol) extras.push(from)
+  }
+  return extras.join("\n")
+}
+
+
+function makeParseable (data, long, dir, depth, parent, d) {
+  depth = depth || 0
+
+  return [ makeParseable_(data, long, dir, depth, parent, d) ]
+  .concat(Object.keys(data.dependencies || {})
+    .sort(alphasort).map(function (d) {
+      return makeParseable(data.dependencies[d], long, dir, depth + 1, data, d)
+    }))
+  .filter(function (x) { return x })
+  .join("\n")
+}
+
+function makeParseable_ (data, long, dir, depth, parent, d) {
+  if (data.hasOwnProperty("_found") && data._found !== true) return ""
+
+  if (typeof data === "string") {
+    if (data.depth < npm.config.get("depth")) {
+      var p = parent.link || parent.path
+      data = npm.config.get("long")
+           ? path.resolve(parent.path, "node_modules", d)
+           + ":"+d+"@"+JSON.stringify(data)+":INVALID:MISSING"
+           : ""
+    } else {
+      data = path.resolve(data.path || "", "node_modules", d || "")
+           + (npm.config.get("long")
+             ? ":" + d + "@" + JSON.stringify(data)
+             + ":" // no realpath resolved
+             + ":MAXDEPTH"
+             : "")
+    }
+
+    return data
+  }
+
+  if (!npm.config.get("long")) return data.path
+
+  return data.path
+       + ":" + (data._id || "")
+       + ":" + (data.realPath !== data.path ? data.realPath : "")
+       + (data.extraneous ? ":EXTRANEOUS" : "")
+       + (data.invalid ? ":INVALID" : "")
+       + (data.peerInvalid ? ":PEERINVALID" : "")
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/npm.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/npm.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/npm.js
new file mode 100644
index 0000000..858a5e8
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/npm.js
@@ -0,0 +1,520 @@
+;(function(){
+// windows: running "npm blah" in this folder will invoke WSH, not node.
+if (typeof WScript !== "undefined") {
+  WScript.echo("npm does not work when run\n"
+              +"with the Windows Scripting Host\n\n"
+              +"'cd' to a different directory,\n"
+              +"or type 'npm.cmd <args>',\n"
+              +"or type 'node npm <args>'.")
+  WScript.quit(1)
+  return
+}
+
+
+// monkey-patch support for 0.6 child processes
+require('child-process-close')
+
+var EventEmitter = require("events").EventEmitter
+  , npm = module.exports = new EventEmitter
+  , config = require("./config.js")
+  , npmconf = require("npmconf")
+  , log = require("npmlog")
+  , fs = require("graceful-fs")
+  , path = require("path")
+  , abbrev = require("abbrev")
+  , which = require("which")
+  , semver = require("semver")
+  , findPrefix = require("./utils/find-prefix.js")
+  , getUid = require("uid-number")
+  , mkdirp = require("mkdirp")
+  , slide = require("slide")
+  , chain = slide.chain
+  , RegClient = require("npm-registry-client")
+
+npm.config = {loaded: false}
+
+// /usr/local is often a read-only fs, which is not
+// well handled by node or mkdirp.  Just double-check
+// in the case of errors when making the prefix dirs.
+function mkdir (p, cb) {
+  mkdirp(p, function (er, made) {
+    // it could be that we couldn't create it, because it
+    // already exists, and is on a read-only fs.
+    if (er) {
+      return fs.stat(p, function (er2, st) {
+        if (er2 || !st.isDirectory()) return cb(er)
+        return cb(null, made)
+      })
+    }
+    return cb(er, made)
+  })
+}
+
+npm.commands = {}
+
+try {
+  var pv = process.version.replace(/^v/, '')
+  // startup, ok to do this synchronously
+  var j = JSON.parse(fs.readFileSync(
+    path.join(__dirname, "../package.json"))+"")
+  npm.version = j.version
+  npm.nodeVersionRequired = j.engines.node
+  if (!semver.satisfies(pv, j.engines.node)) {
+    log.warn("unsupported version", [""
+            ,"npm requires node version: "+j.engines.node
+            ,"And you have: "+pv
+            ,"which is not satisfactory."
+            ,""
+            ,"Bad things will likely happen.  You have been warned."
+            ,""].join("\n"))
+  }
+} catch (ex) {
+  try {
+    log.info("error reading version", ex)
+  } catch (er) {}
+  npm.version = ex
+}
+
+var commandCache = {}
+  // short names for common things
+  , aliases = { "rm" : "uninstall"
+              , "r" : "uninstall"
+              , "un" : "uninstall"
+              , "unlink" : "uninstall"
+              , "remove" : "uninstall"
+              , "rb" : "rebuild"
+              , "list" : "ls"
+              , "la" : "ls"
+              , "ll" : "ls"
+              , "ln" : "link"
+              , "i" : "install"
+              , "isntall" : "install"
+              , "up" : "update"
+              , "c" : "config"
+              , "info" : "view"
+              , "show" : "view"
+              , "find" : "search"
+              , "s" : "search"
+              , "se" : "search"
+              , "author" : "owner"
+              , "home" : "docs"
+              , "issues": "bugs"
+              , "unstar": "star" // same function
+              , "apihelp" : "help"
+              , "login": "adduser"
+              , "add-user": "adduser"
+              , "tst": "test"
+              , "find-dupes": "dedupe"
+              , "ddp": "dedupe"
+              , "v": "view"
+              }
+
+  , aliasNames = Object.keys(aliases)
+  // these are filenames in .
+  , cmdList = [ "install"
+              , "uninstall"
+              , "cache"
+              , "config"
+              , "set"
+              , "get"
+              , "update"
+              , "outdated"
+              , "prune"
+              , "submodule"
+              , "pack"
+              , "dedupe"
+
+              , "rebuild"
+              , "link"
+
+              , "publish"
+              , "star"
+              , "stars"
+              , "tag"
+              , "adduser"
+              , "unpublish"
+              , "owner"
+              , "deprecate"
+              , "shrinkwrap"
+
+              , "help"
+              , "help-search"
+              , "ls"
+              , "search"
+              , "view"
+              , "init"
+              , "version"
+              , "edit"
+              , "explore"
+              , "docs"
+              , "repo"
+              , "bugs"
+              , "faq"
+              , "root"
+              , "prefix"
+              , "bin"
+              , "whoami"
+
+              , "test"
+              , "stop"
+              , "start"
+              , "restart"
+              , "run-script"
+              , "completion"
+              ]
+  , plumbing = [ "build"
+               , "unbuild"
+               , "xmas"
+               , "substack"
+               , "visnup"
+               ]
+  , fullList = npm.fullList = cmdList.concat(aliasNames).filter(function (c) {
+      return plumbing.indexOf(c) === -1
+    })
+  , abbrevs = abbrev(fullList)
+
+Object.keys(abbrevs).concat(plumbing).forEach(function addCommand (c) {
+  Object.defineProperty(npm.commands, c, { get : function () {
+    if (!loaded) throw new Error(
+      "Call npm.load(config, cb) before using this command.\n"+
+      "See the README.md or cli.js for example usage.")
+    var a = npm.deref(c)
+    if (c === "la" || c === "ll") {
+      npm.config.set("long", true)
+    }
+    npm.command = c
+    if (commandCache[a]) return commandCache[a]
+    var cmd = require(__dirname+"/"+a+".js")
+    commandCache[a] = function () {
+      var args = Array.prototype.slice.call(arguments, 0)
+      if (typeof args[args.length - 1] !== "function") {
+        args.push(defaultCb)
+      }
+      if (args.length === 1) args.unshift([])
+      cmd.apply(npm, args)
+    }
+    Object.keys(cmd).forEach(function (k) {
+      commandCache[a][k] = cmd[k]
+    })
+    return commandCache[a]
+  }, enumerable: fullList.indexOf(c) !== -1 })
+
+  // make css-case commands callable via camelCase as well
+  if (c.match(/\-([a-z])/)) {
+    addCommand(c.replace(/\-([a-z])/g, function (a, b) {
+      return b.toUpperCase()
+    }))
+  }
+})
+
+function defaultCb (er, data) {
+  if (er) console.error(er.stack || er.message)
+  else console.log(data)
+}
+
+npm.deref = function (c) {
+  if (!c) return ""
+  if (c.match(/[A-Z]/)) c = c.replace(/([A-Z])/g, function (m) {
+    return "-" + m.toLowerCase()
+  })
+  if (plumbing.indexOf(c) !== -1) return c
+  var a = abbrevs[c]
+  if (aliases[a]) a = aliases[a]
+  return a
+}
+
+var loaded = false
+  , loading = false
+  , loadErr = null
+  , loadListeners = []
+
+function loadCb (er) {
+  loadListeners.forEach(function (cb) {
+    process.nextTick(cb.bind(npm, er, npm))
+  })
+  loadListeners.length = 0
+}
+
+npm.load = function (cli, cb_) {
+  if (!cb_ && typeof cli === "function") cb_ = cli , cli = {}
+  if (!cb_) cb_ = function () {}
+  if (!cli) cli = {}
+  loadListeners.push(cb_)
+  if (loaded || loadErr) return cb(loadErr)
+  if (loading) return
+  loading = true
+  var onload = true
+
+  function cb (er) {
+    if (loadErr) return
+    if (npm.config.get("force")) {
+      log.warn("using --force", "I sure hope you know what you are doing.")
+    }
+    npm.config.loaded = true
+    loaded = true
+    loadCb(loadErr = er)
+    if (onload = onload && npm.config.get("onload-script")) {
+      require(onload)
+      onload = false
+    }
+  }
+
+  log.pause()
+
+  load(npm, cli, cb)
+}
+
+function load (npm, cli, cb) {
+  which(process.argv[0], function (er, node) {
+    if (!er && node.toUpperCase() !== process.execPath.toUpperCase()) {
+      log.verbose("node symlink", node)
+      process.execPath = node
+      process.installPrefix = path.resolve(node, "..", "..")
+    }
+
+    // look up configs
+    //console.error("about to look up configs")
+
+    var builtin = path.resolve(__dirname, "..", "npmrc")
+    npmconf.load(cli, builtin, function (er, config) {
+      if (er === config) er = null
+
+      npm.config = config
+
+      var color = config.get("color")
+
+      log.level = config.get("loglevel")
+      log.heading = config.get("heading") || "npm"
+      log.stream = config.get("logstream")
+      switch (color) {
+        case "always": log.enableColor(); break
+        case false: log.disableColor(); break
+      }
+      log.resume()
+
+      if (er) return cb(er)
+
+      // see if we need to color normal output
+      switch (color) {
+        case "always":
+          npm.color = true
+          break
+        case false:
+          npm.color = false
+          break
+        default:
+          var tty = require("tty")
+          if (process.stdout.isTTY) npm.color = true
+          else if (!tty.isatty) npm.color = true
+          else if (tty.isatty(1)) npm.color = true
+          else npm.color = false
+          break
+      }
+
+      // at this point the configs are all set.
+      // go ahead and spin up the registry client.
+      var token = config.get("_token")
+      if (typeof token === "string") {
+        try {
+          token = JSON.parse(token)
+          config.set("_token", token, "user")
+          config.save("user")
+        } catch (e) { token = null }
+      }
+
+      npm.registry = new RegClient(npm.config)
+
+      // save the token cookie in the config file
+      if (npm.registry.couchLogin) {
+        npm.registry.couchLogin.tokenSet = function (tok) {
+          npm.config.set("_token", tok, "user")
+          // ignore save error.  best effort.
+          npm.config.save("user")
+        }
+      }
+
+      var umask = npm.config.get("umask")
+      npm.modes = { exec: 0777 & (~umask)
+                  , file: 0666 & (~umask)
+                  , umask: umask }
+
+      chain([ [ loadPrefix, npm, cli ]
+            , [ setUser, config, config.root ]
+            , [ loadUid, npm ]
+            ], cb)
+    })
+  })
+}
+
+function loadPrefix (npm, config, cb) {
+  // try to guess at a good node_modules location.
+  var p
+    , gp
+  if (!Object.prototype.hasOwnProperty.call(config, "prefix")) {
+    p = process.cwd()
+  } else {
+    p = npm.config.get("prefix")
+  }
+  gp = npm.config.get("prefix")
+
+  findPrefix(p, function (er, p) {
+    Object.defineProperty(npm, "localPrefix",
+      { get : function () { return p }
+      , set : function (r) { return p = r }
+      , enumerable : true
+      })
+    // the prefix MUST exist, or else nothing works.
+    if (!npm.config.get("global")) {
+      mkdir(p, next)
+    } else {
+      next(er)
+    }
+  })
+
+  gp = path.resolve(gp)
+  Object.defineProperty(npm, "globalPrefix",
+    { get : function () { return gp }
+    , set : function (r) { return gp = r }
+    , enumerable : true
+    })
+  // the prefix MUST exist, or else nothing works.
+  mkdir(gp, next)
+
+
+  var i = 2
+    , errState = null
+  function next (er) {
+    if (errState) return
+    if (er) return cb(errState = er)
+    if (--i === 0) return cb()
+  }
+}
+
+
+function loadUid (npm, cb) {
+  // if we're not in unsafe-perm mode, then figure out who
+  // to run stuff as.  Do this first, to support `npm update npm -g`
+  if (!npm.config.get("unsafe-perm")) {
+    getUid(npm.config.get("user"), npm.config.get("group"), cb)
+  } else {
+    process.nextTick(cb)
+  }
+}
+
+function setUser (cl, dc, cb) {
+  // If global, leave it as-is.
+  // If not global, then set the user to the owner of the prefix folder.
+  // Just set the default, so it can be overridden.
+  if (cl.get("global")) return cb()
+  if (process.env.SUDO_UID) {
+    dc.user = +(process.env.SUDO_UID)
+    return cb()
+  }
+
+  var prefix = path.resolve(cl.get("prefix"))
+  mkdir(prefix, function (er) {
+    if (er) {
+      log.error("could not create prefix dir", prefix)
+      return cb(er)
+    }
+    fs.stat(prefix, function (er, st) {
+      dc.user = st && st.uid
+      return cb(er)
+    })
+  })
+}
+
+
+Object.defineProperty(npm, "prefix",
+  { get : function () {
+      return npm.config.get("global") ? npm.globalPrefix : npm.localPrefix
+    }
+  , set : function (r) {
+      var k = npm.config.get("global") ? "globalPrefix" : "localPrefix"
+      return npm[k] = r
+    }
+  , enumerable : true
+  })
+
+Object.defineProperty(npm, "bin",
+  { get : function () {
+      if (npm.config.get("global")) return npm.globalBin
+      return path.resolve(npm.root, ".bin")
+    }
+  , enumerable : true
+  })
+
+Object.defineProperty(npm, "globalBin",
+  { get : function () {
+      var b = npm.globalPrefix
+      if (process.platform !== "win32") b = path.resolve(b, "bin")
+      return b
+    }
+  })
+
+Object.defineProperty(npm, "dir",
+  { get : function () {
+      if (npm.config.get("global")) return npm.globalDir
+      return path.resolve(npm.prefix, "node_modules")
+    }
+  , enumerable : true
+  })
+
+Object.defineProperty(npm, "globalDir",
+  { get : function () {
+      return (process.platform !== "win32")
+           ? path.resolve(npm.globalPrefix, "lib", "node_modules")
+           : path.resolve(npm.globalPrefix, "node_modules")
+    }
+  , enumerable : true
+  })
+
+Object.defineProperty(npm, "root",
+  { get : function () { return npm.dir } })
+
+Object.defineProperty(npm, "cache",
+  { get : function () { return npm.config.get("cache") }
+  , set : function (r) { return npm.config.set("cache", r) }
+  , enumerable : true
+  })
+
+var tmpFolder
+var crypto = require("crypto")
+var rand = crypto.randomBytes(6)
+                 .toString("base64")
+                 .replace(/\//g, '_')
+                 .replace(/\+/, '-')
+Object.defineProperty(npm, "tmp",
+  { get : function () {
+      if (!tmpFolder) tmpFolder = "npm-" + process.pid + "-" + rand
+      return path.resolve(npm.config.get("tmp"), tmpFolder)
+    }
+  , enumerable : true
+  })
+
+// the better to repl you with
+Object.getOwnPropertyNames(npm.commands).forEach(function (n) {
+  if (npm.hasOwnProperty(n) || n === "config") return
+
+  Object.defineProperty(npm, n, { get: function () {
+    return function () {
+      var args = Array.prototype.slice.call(arguments, 0)
+        , cb = defaultCb
+
+      if (args.length === 1 && Array.isArray(args[0])) {
+        args = args[0]
+      }
+
+      if (typeof args[args.length - 1] === "function") {
+        cb = args.pop()
+      }
+
+      npm.commands[n](args, cb)
+    }
+  }, enumerable: false, configurable: true })
+})
+
+if (require.main === module) {
+  require("../bin/npm-cli.js")
+}
+})()

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/outdated.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/outdated.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/outdated.js
new file mode 100644
index 0000000..b94b0c6
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/outdated.js
@@ -0,0 +1,244 @@
+/*
+
+npm outdated [pkg]
+
+Does the following:
+
+1. check for a new version of pkg
+
+If no packages are specified, then run for all installed
+packages.
+
+*/
+
+module.exports = outdated
+
+outdated.usage = "npm outdated [<pkg> [<pkg> ...]]"
+
+outdated.completion = require("./utils/completion/installed-deep.js")
+
+
+var path = require("path")
+  , fs = require("graceful-fs")
+  , readJson = require("read-package-json")
+  , cache = require("./cache.js")
+  , asyncMap = require("slide").asyncMap
+  , npm = require("./npm.js")
+  , url = require("url")
+  , isGitUrl = require("./utils/is-git-url.js")
+  , color = require("ansicolors")
+  , styles = require("ansistyles")
+  , table = require("text-table")
+
+function outdated (args, silent, cb) {
+  if (typeof cb !== "function") cb = silent, silent = false
+  var dir = path.resolve(npm.dir, "..")
+  outdated_(args, dir, {}, 0, function (er, list) {
+    if (er || silent) return cb(er, list)
+    if (npm.config.get("json")) {
+      console.log(makeJSON(list))
+    } else {
+      var outList = list.map(makePretty)
+      var outTable = [[ styles.underline("Package")
+                      , styles.underline("Current")
+                      , styles.underline("Wanted")
+                      , styles.underline("Latest")
+                      , styles.underline("Location")
+                     ]].concat(outList)
+      var tableOpts = { align: ["l", "r", "r", "r", "l"]
+                      , stringLength: function(s) { return ansiTrim(s).length }
+                      }
+      console.log(table(outTable, tableOpts))
+    }
+    cb(null, list)
+  })
+}
+
+// [[ dir, dep, has, want ]]
+function makePretty (p) {
+  var parseable = npm.config.get("parseable")
+    , long = npm.config.get("long")
+    , dep = p[1]
+    , dir = path.resolve(p[0], "node_modules", dep)
+    , has = p[2]
+    , want = p[3]
+    , latest = p[4]
+
+  // XXX add --json support
+  // Should match (more or less) the output of ls --json
+
+  if (parseable) {
+    var str = dir
+    if (npm.config.get("long")) {
+      str += ":" + dep + "@" + want
+           + ":" + (has ? (dep + "@" + has) : "MISSING")
+    }
+    return str
+  }
+
+  if (!npm.config.get("global")) {
+    dir = path.relative(process.cwd(), dir)
+  }
+  return [ has === want ? color.yellow(dep) : color.red(dep)
+         , (has || "MISSING")
+         , color.green(want)
+         , color.magenta(latest)
+         , color.brightBlack(dirToPrettyLocation(dir))
+         ]
+}
+
+function ansiTrim (str) {
+  var r = new RegExp("\x1b(?:\\[(?:\\d+[ABCDEFGJKSTm]|\\d+;\\d+[Hfm]|" +
+        "\\d+;\\d+;\\d+m|6n|s|u|\\?25[lh])|\\w)", "g");
+  return str.replace(r, "")
+}
+
+function dirToPrettyLocation (dir) {
+  return dir.replace(/^node_modules[/\\]/, "")
+            .replace(/[[/\\]node_modules[/\\]/g, " > ")
+}
+
+function makeJSON (list) {
+  var out = {}
+  list.forEach(function (p) {
+    var dir = path.resolve(p[0], "node_modules", p[1])
+    if (!npm.config.get("global")) {
+      dir = path.relative(process.cwd(), dir)
+    }
+    out[p[1]] = { current: p[2]
+                , wanted: p[3]
+                , latest: p[4]
+                , location: dir
+                }
+  })
+  return JSON.stringify(out, null, 2)
+}
+
+function outdated_ (args, dir, parentHas, depth, cb) {
+  // get the deps from package.json, or {<dir/node_modules/*>:"*"}
+  // asyncMap over deps:
+  //   shouldHave = cache.add(dep, req).version
+  //   if has === shouldHave then
+  //     return outdated(args, dir/node_modules/dep, parentHas + has)
+  //   else if dep in args or args is empty
+  //     return [dir, dep, has, shouldHave]
+
+  if (depth > npm.config.get("depth")) {
+    return cb(null, [])
+  }
+  var deps = null
+  readJson(path.resolve(dir, "package.json"), function (er, d) {
+    if (er && er.code !== "ENOENT" && er.code !== "ENOTDIR") return cb(er)
+    deps = (er) ? true : (d.dependencies || {})
+    var doUpdate = npm.config.get("dev") ||
+                    (!npm.config.get("production") &&
+                    !Object.keys(parentHas).length &&
+                    !npm.config.get("global"))
+    if (!er && d && doUpdate) {
+      Object.keys(d.devDependencies || {}).forEach(function (k) {
+        if (!(k in parentHas)) {
+          deps[k] = d.devDependencies[k]
+        }
+      })
+    }
+    return next()
+  })
+
+  var has = null
+  fs.readdir(path.resolve(dir, "node_modules"), function (er, pkgs) {
+    if (er) {
+      has = Object.create(parentHas)
+      return next()
+    }
+    pkgs = pkgs.filter(function (p) {
+      return !p.match(/^[\._-]/)
+    })
+    asyncMap(pkgs, function (pkg, cb) {
+      var jsonFile = path.resolve(dir, "node_modules", pkg, "package.json")
+      readJson(jsonFile, function (er, d) {
+        if (er && er.code !== "ENOENT" && er.code !== "ENOTDIR") return cb(er)
+        cb(null, er ? [] : [[d.name, d.version, d._from]])
+      })
+    }, function (er, pvs) {
+      if (er) return cb(er)
+      has = Object.create(parentHas)
+      pvs.forEach(function (pv) {
+        has[pv[0]] = {
+          version: pv[1],
+          from: pv[2]
+        }
+      })
+
+      next()
+    })
+  })
+
+  function next () {
+    if (!has || !deps) return
+    if (deps === true) {
+      deps = Object.keys(has).reduce(function (l, r) {
+        l[r] = "*"
+        return l
+      }, {})
+    }
+
+    // now get what we should have, based on the dep.
+    // if has[dep] !== shouldHave[dep], then cb with the data
+    // otherwise dive into the folder
+    asyncMap(Object.keys(deps), function (dep, cb) {
+      shouldUpdate(args, dir, dep, has, deps[dep], depth, cb)
+    }, cb)
+  }
+}
+
+function shouldUpdate (args, dir, dep, has, req, depth, cb) {
+  // look up the most recent version.
+  // if that's what we already have, or if it's not on the args list,
+  // then dive into it.  Otherwise, cb() with the data.
+
+  // { version: , from: }
+  var curr = has[dep]
+
+  function skip () {
+    outdated_( args
+             , path.resolve(dir, "node_modules", dep)
+             , has
+             , depth + 1
+             , cb )
+  }
+
+  function doIt (wanted, latest) {
+    cb(null, [[ dir, dep, curr && curr.version, wanted, latest, req ]])
+  }
+
+  if (args.length && args.indexOf(dep) === -1) {
+    return skip()
+  }
+
+  if (isGitUrl(url.parse(req)))
+    return doIt("git", "git")
+
+  var registry = npm.registry
+  // search for the latest package
+  registry.get(dep + "/latest", function (er, l) {
+    if (er) return cb()
+    // so, we can conceivably update this.  find out if we need to.
+    cache.add(dep, req, function (er, d) {
+      // if this fails, then it means we can't update this thing.
+      // it's probably a thing that isn't published.
+      if (er) return skip()
+
+      // check that the url origin hasn't changed (#1727) and that
+      // there is no newer version available
+      var dFromUrl = d._from && url.parse(d._from).protocol
+      var cFromUrl = curr && curr.from && url.parse(curr.from).protocol
+
+      if (!curr || dFromUrl && cFromUrl && d._from !== curr.from
+          || d.version !== curr.version
+          || d.version !== l.version)
+        doIt(d.version, l.version)
+      else
+        skip()
+    })
+  })
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/owner.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/owner.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/owner.js
new file mode 100644
index 0000000..fdf4559
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/owner.js
@@ -0,0 +1,205 @@
+
+module.exports = owner
+
+owner.usage = "npm owner add <username> <pkg>"
+            + "\nnpm owner rm <username> <pkg>"
+            + "\nnpm owner ls <pkg>"
+
+owner.completion = function (opts, cb) {
+  var argv = opts.conf.argv.remain
+  if (argv.length > 4) return cb()
+  if (argv.length <= 2) {
+    var subs = ["add", "rm"]
+    if (opts.partialWord === "l") subs.push("ls")
+    else subs.push("ls", "list")
+    return cb(null, subs)
+  }
+  var un = encodeURIComponent(npm.config.get("username"))
+  switch (argv[2]) {
+    case "ls":
+      if (argv.length > 3) return cb()
+      else return registry.get("/-/short", cb)
+
+    case "rm":
+      if (argv.length > 3) {
+        var theUser = encodeURIComponent(argv[3])
+          , uri = "/-/by-user/"+theUser+"|"+un
+        console.error(uri)
+        return registry.get(uri, function (er, d) {
+          if (er) return cb(er)
+          // return the intersection
+          return cb(null, d[theUser].filter(function (p) {
+            // kludge for server adminery.
+            return un === "isaacs" || d[un].indexOf(p) === -1
+          }))
+        })
+      }
+      // else fallthrough
+    case "add":
+      if (argv.length > 3) {
+        var theUser = encodeURIComponent(argv[3])
+          , uri = "/-/by-user/"+theUser+"|"+un
+        console.error(uri)
+        return registry.get(uri, function (er, d) {
+          console.error(uri, er || d)
+          // return mine that they're not already on.
+          if (er) return cb(er)
+          var mine = d[un] || []
+            , theirs = d[theUser] || []
+          return cb(null, mine.filter(function (p) {
+            return theirs.indexOf(p) === -1
+          }))
+        })
+      }
+      // just list all users who aren't me.
+      return registry.get("/-/users", function (er, list) {
+        if (er) return cb()
+        return cb(null, Object.keys(list).filter(function (n) {
+          return n !== un
+        }))
+      })
+
+    default:
+      return cb()
+  }
+}
+
+var npm = require("./npm.js")
+  , registry = npm.registry
+  , log = require("npmlog")
+  , readJson = require("read-package-json")
+
+function owner (args, cb) {
+  var action = args.shift()
+  switch (action) {
+    case "ls": case "list": return ls(args[0], cb)
+    case "add": return add(args[0], args[1], cb)
+    case "rm": case "remove": return rm(args[0], args[1], cb)
+    default: return unknown(action, cb)
+  }
+}
+
+function ls (pkg, cb) {
+  if (!pkg) return readLocalPkg(function (er, pkg) {
+    if (er) return cb(er)
+    if (!pkg) return cb(owner.usage)
+    ls(pkg, cb)
+  })
+
+  registry.get(pkg, function (er, data) {
+    var msg = ""
+    if (er) {
+      log.error("owner ls", "Couldn't get owner data", pkg)
+      return cb(er)
+    }
+    var owners = data.maintainers
+    if (!owners || !owners.length) msg = "admin party!"
+    else msg = owners.map(function (o) { return o.name +" <"+o.email+">" }).join("\n")
+    console.log(msg)
+    cb(er, owners)
+  })
+}
+
+function add (user, pkg, cb) {
+  if (!user) return cb(owner.usage)
+  if (!pkg) return readLocalPkg(function (er, pkg) {
+    if (er) return cb(er)
+    if (!pkg) return cb(new Error(owner.usage))
+    add(user, pkg, cb)
+  })
+
+  log.verbose("owner add", "%s to %s", user, pkg)
+  mutate(pkg, user, function (u, owners) {
+    if (!owners) owners = []
+    for (var i = 0, l = owners.length; i < l; i ++) {
+      var o = owners[i]
+      if (o.name === u.name) {
+        log.info( "owner add"
+                , "Already a package owner: "+o.name+" <"+o.email+">")
+        return false
+      }
+    }
+    owners.push(u)
+    return owners
+  }, cb)
+}
+
+function rm (user, pkg, cb) {
+  if (!pkg) return readLocalPkg(function (er, pkg) {
+    if (er) return cb(er)
+    if (!pkg) return cb(new Error(owner.usage))
+    rm(user, pkg, cb)
+  })
+
+  log.verbose("owner rm", "%s from %s", user, pkg)
+  mutate(pkg, null, function (u, owners) {
+    var found = false
+      , m = owners.filter(function (o) {
+          var match = (o.name === user)
+          found = found || match
+          return !match
+        })
+    if (!found) {
+      log.info("owner rm", "Not a package owner: "+user)
+      return false
+    }
+    if (!m.length) return new Error(
+      "Cannot remove all owners of a package.  Add someone else first.")
+    return m
+  }, cb)
+}
+
+function mutate (pkg, user, mutation, cb) {
+  if (user) {
+    registry.get("/-/user/org.couchdb.user:"+user, mutate_)
+  } else {
+    mutate_(null, null)
+  }
+
+  function mutate_ (er, u) {
+    if (!er && user && (!u || u.error)) er = new Error(
+      "Couldn't get user data for "+user+": "+JSON.stringify(u))
+
+    if (er) {
+      log.error("owner mutate", "Error getting user data for %s", user)
+      return cb(er)
+    }
+
+    if (u) u = { "name" : u.name, "email" : u.email }
+    registry.get(pkg, function (er, data) {
+      if (er) {
+        log.error("owner mutate", "Error getting package data for %s", pkg)
+        return cb(er)
+      }
+      var m = mutation(u, data.maintainers)
+      if (!m) return cb() // handled
+      if (m instanceof Error) return cb(m) // error
+      data = { _id : data._id
+             , _rev : data._rev
+             , maintainers : m
+             }
+      registry.request("PUT"
+          , pkg+"/-rev/"+data._rev, data
+          , function (er, data) {
+        if (!er && data.error) er = new Error(
+          "Failed to update package metadata: "+JSON.stringify(data))
+        if (er) {
+          log.error("owner mutate", "Failed to update package metadata")
+        }
+        cb(er, data)
+      })
+    })
+  }
+}
+
+function readLocalPkg (cb) {
+  if (npm.config.get("global")) return cb()
+  var path = require("path")
+  readJson(path.resolve(npm.prefix, "package.json"), function (er, d) {
+    return cb(er, d && d.name)
+  })
+}
+
+function unknown (action, cb) {
+  cb("Usage: \n"+owner.usage)
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/pack.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/pack.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/pack.js
new file mode 100644
index 0000000..302aa81
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/pack.js
@@ -0,0 +1,65 @@
+// npm pack <pkg>
+// Packs the specified package into a .tgz file, which can then
+// be installed.
+
+module.exports = pack
+
+var npm = require("./npm.js")
+  , install = require("./install.js")
+  , cache = require("./cache.js")
+  , fs = require("graceful-fs")
+  , chain = require("slide").chain
+  , path = require("path")
+  , cwd = process.cwd()
+
+pack.usage = "npm pack <pkg>"
+
+// if it can be installed, it can be packed.
+pack.completion = install.completion
+
+function pack (args, silent, cb) {
+  if (typeof cb !== "function") cb = silent, silent = false
+
+  if (args.length === 0) args = ["."]
+
+  chain(args.map(function (arg) { return function (cb) {
+    pack_(arg, cb)
+  }}), function (er, files) {
+    if (er || silent) return cb(er, files)
+    printFiles(files, cb)
+  })
+}
+
+function printFiles (files, cb) {
+  files = files.map(function (file) {
+    return path.relative(cwd, file)
+  })
+  console.log(files.join("\n"))
+  cb()
+}
+
+// add to cache, then cp to the cwd
+function pack_ (pkg, cb) {
+  cache.add(pkg, function (er, data) {
+    if (er) return cb(er)
+    var fname = path.resolve(data._id.replace(/@/g, "-") + ".tgz")
+      , cached = path.resolve( npm.cache
+                             , data.name
+                             , data.version
+                             , "package.tgz" )
+      , from = fs.createReadStream(cached)
+      , to = fs.createWriteStream(fname)
+      , errState = null
+
+    from.on("error", cb_)
+    to.on("error", cb_)
+    to.on("close", cb_)
+    from.pipe(to)
+
+    function cb_ (er) {
+      if (errState) return
+      if (er) return cb(errState = er)
+      cb(null, fname)
+    }
+  })
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/prefix.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/prefix.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/prefix.js
new file mode 100644
index 0000000..e002ede
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/prefix.js
@@ -0,0 +1,11 @@
+module.exports = prefix
+
+var npm = require("./npm.js")
+
+prefix.usage = "npm prefix\nnpm prefix -g\n(just prints the prefix folder)"
+
+function prefix (args, silent, cb) {
+  if (typeof cb !== "function") cb = silent, silent = false
+  if (!silent) console.log(npm.prefix)
+  process.nextTick(cb.bind(this, null, npm.prefix))
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/prune.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/prune.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/prune.js
new file mode 100644
index 0000000..0e13da1
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/prune.js
@@ -0,0 +1,52 @@
+// prune extraneous packages.
+
+module.exports = prune
+
+prune.usage = "npm prune"
+
+var readInstalled = require("read-installed")
+  , npm = require("./npm.js")
+  , path = require("path")
+  , readJson = require("read-package-json")
+  , log = require("npmlog")
+
+prune.completion = require("./utils/completion/installed-deep.js")
+
+function prune (args, cb) {
+  //check if is a valid package.json file
+  var jsonFile = path.resolve(npm.dir, "..", "package.json" )
+  readJson(jsonFile, log.warn, function (er, data) {
+    if (er) return cb(er)
+    next()
+  })
+
+  function next() {
+    readInstalled(npm.prefix, npm.config.get("depth"), function (er, data) {
+      if (er) return cb(er)
+      prune_(args, data, cb)
+    })
+  }
+}
+
+function prune_ (args, data, cb) {
+  npm.commands.unbuild(prunables(args, data, []), cb)
+}
+
+function prunables (args, data, seen) {
+  var deps = data.dependencies || {}
+  return Object.keys(deps).map(function (d) {
+    if (typeof deps[d] !== "object"
+        || seen.indexOf(deps[d]) !== -1) return null
+    seen.push(deps[d])
+    if (deps[d].extraneous
+        && (args.length === 0 || args.indexOf(d) !== -1)) {
+      var extra = deps[d]
+      delete deps[d]
+      return extra.path
+    }
+    return prunables(args, deps[d], seen)
+  }).filter(function (d) { return d !== null })
+  .reduce(function FLAT (l, r) {
+    return l.concat(Array.isArray(r) ? r.reduce(FLAT,[]) : r)
+  }, [])
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/publish.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/publish.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/publish.js
new file mode 100644
index 0000000..cede9ff
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/publish.js
@@ -0,0 +1,118 @@
+
+module.exports = publish
+
+var npm = require("./npm.js")
+  , log = require("npmlog")
+  , tar = require("./utils/tar.js")
+  , path = require("path")
+  , readJson = require("read-package-json")
+  , fs = require("graceful-fs")
+  , lifecycle = require("./utils/lifecycle.js")
+  , chain = require("slide").chain
+  , Conf = require("npmconf").Conf
+  , RegClient = require("npm-registry-client")
+
+publish.usage = "npm publish <tarball>"
+              + "\nnpm publish <folder>"
+              + "\n\nPublishes '.' if no argument supplied"
+
+publish.completion = function (opts, cb) {
+  // publish can complete to a folder with a package.json
+  // or a tarball, or a tarball url.
+  // for now, not yet implemented.
+  return cb()
+}
+
+function publish (args, isRetry, cb) {
+  if (typeof cb !== "function") cb = isRetry, isRetry = false
+  if (args.length === 0) args = ["."]
+  if (args.length !== 1) return cb(publish.usage)
+
+  log.verbose("publish", args)
+  var arg = args[0]
+  // if it's a local folder, then run the prepublish there, first.
+  readJson(path.resolve(arg, "package.json"), function (er, data) {
+    er = needVersion(er, data)
+    if (er && er.code !== "ENOENT" && er.code !== "ENOTDIR") return cb(er)
+    // error is ok.  could be publishing a url or tarball
+    // however, that means that we will not have automatically run
+    // the prepublish script, since that gets run when adding a folder
+    // to the cache.
+    if (er) return cacheAddPublish(arg, false, isRetry, cb)
+    cacheAddPublish(arg, true, isRetry, cb)
+  })
+}
+
+// didPre in this case means that we already ran the prepublish script,
+// and that the "dir" is an actual directory, and not something silly
+// like a tarball or name@version thing.
+// That means that we can run publish/postpublish in the dir, rather than
+// in the cache dir.
+function cacheAddPublish (dir, didPre, isRetry, cb) {
+  npm.commands.cache.add(dir, function (er, data) {
+    if (er) return cb(er)
+    log.silly("publish", data)
+    var cachedir = path.resolve( npm.cache
+                               , data.name
+                               , data.version
+                               , "package" )
+    chain
+      ( [ !didPre && [lifecycle, data, "prepublish", cachedir]
+        , [publish_, dir, data, isRetry, cachedir]
+        , [lifecycle, data, "publish", didPre ? dir : cachedir]
+        , [lifecycle, data, "postpublish", didPre ? dir : cachedir] ]
+      , cb )
+  })
+}
+
+function publish_ (arg, data, isRetry, cachedir, cb) {
+  if (!data) return cb(new Error("no package.json file found"))
+
+  // check for publishConfig hash
+  var registry = npm.registry
+  if (data.publishConfig) {
+    var pubConf = new Conf(npm.config)
+    pubConf.save = npm.config.save.bind(npm.config)
+
+    // don't modify the actual publishConfig object, in case we have
+    // to set a login token or some other data.
+    pubConf.unshift(Object.keys(data.publishConfig).reduce(function (s, k) {
+      s[k] = data.publishConfig[k]
+      return s
+    }, {}))
+    registry = new RegClient(pubConf)
+  }
+
+  data._npmVersion = npm.version
+  data._npmUser = { name: npm.config.get("username")
+                  , email: npm.config.get("email") }
+
+  delete data.modules
+  if (data.private) return cb(new Error
+    ("This package has been marked as private\n"
+    +"Remove the 'private' field from the package.json to publish it."))
+
+  var tarball = cachedir + ".tgz"
+  registry.publish(data, tarball, function (er) {
+    if (er && er.code === "EPUBLISHCONFLICT"
+        && npm.config.get("force") && !isRetry) {
+      log.warn("publish", "Forced publish over "+data._id)
+      return npm.commands.unpublish([data._id], function (er) {
+        // ignore errors.  Use the force.  Reach out with your feelings.
+        // but if it fails again, then report the first error.
+        publish([arg], er || true, cb)
+      })
+    }
+    // report the unpublish error if this was a retry and unpublish failed
+    if (er && isRetry && isRetry !== true) return cb(isRetry)
+    if (er) return cb(er)
+    console.log("+ " + data._id)
+    cb()
+  })
+}
+
+function needVersion(er, data) {
+  return er ? er
+       : (data && !data.version) ? new Error("No version provided")
+       : null
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/rebuild.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/rebuild.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/rebuild.js
new file mode 100644
index 0000000..7cea3ef
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/rebuild.js
@@ -0,0 +1,74 @@
+
+module.exports = rebuild
+
+var readInstalled = require("read-installed")
+  , semver = require("semver")
+  , log = require("npmlog")
+  , path = require("path")
+  , npm = require("./npm.js")
+  , asyncMap = require("slide").asyncMap
+  , fs = require("graceful-fs")
+
+rebuild.usage = "npm rebuild [<name>[@<version>] [name[@<version>] ...]]"
+
+rebuild.completion = require("./utils/completion/installed-deep.js")
+
+function rebuild (args, cb) {
+  readInstalled(npm.prefix, npm.config.get("depth"), function (er, data) {
+    log.info("readInstalled", typeof data)
+    if (er) return cb(er)
+    var set = filter(data, args)
+      , folders = Object.keys(set).filter(function (f) {
+          return f !== npm.prefix
+        })
+    if (!folders.length) return cb()
+    log.silly("rebuild set", folders)
+    cleanBuild(folders, set, cb)
+  })
+}
+
+function cleanBuild (folders, set, cb) {
+  npm.commands.build(folders, function (er) {
+    if (er) return cb(er)
+    console.log(folders.map(function (f) {
+      return set[f] + " " + f
+    }).join("\n"))
+    cb()
+  })
+}
+
+function filter (data, args, set, seen) {
+  if (!set) set = {}
+  if (!seen) seen = {}
+  if (set.hasOwnProperty(data.path)) return set
+  if (seen.hasOwnProperty(data.path)) return set
+  seen[data.path] = true
+  var pass
+  if (!args.length) pass = true // rebuild everything
+  else if (data.name && data._id) {
+    for (var i = 0, l = args.length; i < l; i ++) {
+      var arg = args[i]
+        , nv = arg.split("@")
+        , n = nv.shift()
+        , v = nv.join("@")
+      if (n !== data.name) continue
+      if (!semver.satisfies(data.version, v, true)) continue
+      pass = true
+      break
+    }
+  }
+  if (pass && data._id) {
+    log.verbose("rebuild", "path, id", [data.path, data._id])
+    set[data.path] = data._id
+  }
+  // need to also dive through kids, always.
+  // since this isn't an install these won't get auto-built unless
+  // they're not dependencies.
+  Object.keys(data.dependencies || {}).forEach(function (d) {
+    // return
+    var dep = data.dependencies[d]
+    if (typeof dep === "string") return
+    filter(dep, args, set, seen)
+  })
+  return set
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/repo.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/repo.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/repo.js
new file mode 100644
index 0000000..ed1f7e1
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/repo.js
@@ -0,0 +1,54 @@
+
+module.exports = repo
+
+repo.usage = "npm repo <pkgname>"
+
+repo.completion = function (opts, cb) {
+  if (opts.conf.argv.remain.length > 2) return cb()
+  registry.get("/-/short", 60000, function (er, list) {
+    return cb(null, list || [])
+  })
+}
+
+var npm = require("./npm.js")
+  , registry = npm.registry
+  , log = require("npmlog")
+  , opener = require("opener")
+  , github = require('github-url-from-git')
+  , githubUserRepo = require("github-url-from-username-repo")
+  , path = require("path")
+  , readJson = require("read-package-json")
+  , fs = require("fs")
+
+function repo (args, cb) {
+  var n = args.length && args[0].split("@").shift() || '.'
+  fs.stat(n, function (er, s) {
+    if (er && er.code === "ENOENT") return callRegistry(n, cb)
+    else if (er) return cb(er)
+    if (!s.isDirectory()) return callRegistry(n, cb)
+    readJson(path.resolve(n, "package.json"), function (er, d) {
+      if (er) return cb(er)
+      getUrlAndOpen(d, cb)
+    })
+  })
+}
+
+function getUrlAndOpen (d, cb) {
+  var r = d.repository;
+  if (!r) return cb(new Error('no repository'));
+  // XXX remove this when npm@v1.3.10 from node 0.10 is deprecated
+  // from https://github.com/isaacs/npm-www/issues/418
+  if (githubUserRepo(r.url))
+    r.url = githubUserRepo(r.url)
+  var url = github(r.url)
+  if (!url)
+    return cb(new Error('no repository: could not get url'))
+  opener(url, { command: npm.config.get("browser") }, cb)
+}
+
+function callRegistry (n, cb) {
+  registry.get(n + "/latest", 3600, function (er, d) {
+    if (er) return cb(er)
+    getUrlAndOpen(d, cb)
+  })
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/restart.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/restart.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/restart.js
new file mode 100644
index 0000000..69c4b91
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/restart.js
@@ -0,0 +1 @@
+module.exports = require("./utils/lifecycle.js").cmd("restart")

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/root.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/root.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/root.js
new file mode 100644
index 0000000..b2f731e
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/root.js
@@ -0,0 +1,11 @@
+module.exports = root
+
+var npm = require("./npm.js")
+
+root.usage = "npm root\nnpm root -g\n(just prints the root folder)"
+
+function root (args, silent, cb) {
+  if (typeof cb !== "function") cb = silent, silent = false
+  if (!silent) console.log(npm.dir)
+  process.nextTick(cb.bind(this, null, npm.dir))
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/run-script.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/run-script.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/run-script.js
new file mode 100644
index 0000000..0808f2e
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/run-script.js
@@ -0,0 +1,102 @@
+
+module.exports = runScript
+
+var lifecycle = require("./utils/lifecycle.js")
+  , npm = require("./npm.js")
+  , path = require("path")
+  , readJson = require("read-package-json")
+  , log = require("npmlog")
+  , chain = require("slide").chain
+  , fs = require("graceful-fs")
+  , asyncMap = require("slide").asyncMap
+
+runScript.usage = "npm run-script [<pkg>] <command>"
+
+runScript.completion = function (opts, cb) {
+
+  // see if there's already a package specified.
+  var argv = opts.conf.argv.remain
+    , installedShallow = require("./utils/completion/installed-shallow.js")
+
+  if (argv.length >= 4) return cb()
+
+  if (argv.length === 3) {
+    // either specified a script locally, in which case, done,
+    // or a package, in which case, complete against its scripts
+    var json = path.join(npm.prefix, "package.json")
+    return readJson(json, function (er, d) {
+      if (er && er.code !== "ENOENT" && er.code !== "ENOTDIR") return cb(er)
+      if (er) d = {}
+      var scripts = Object.keys(d.scripts || {})
+      console.error("local scripts", scripts)
+      if (scripts.indexOf(argv[2]) !== -1) return cb()
+      // ok, try to find out which package it was, then
+      var pref = npm.config.get("global") ? npm.config.get("prefix")
+               : npm.prefix
+      var pkgDir = path.resolve( pref, "node_modules"
+                               , argv[2], "package.json" )
+      readJson(pkgDir, function (er, d) {
+        if (er && er.code !== "ENOENT" && er.code !== "ENOTDIR") return cb(er)
+        if (er) d = {}
+        var scripts = Object.keys(d.scripts || {})
+        return cb(null, scripts)
+      })
+    })
+  }
+
+  // complete against the installed-shallow, and the pwd's scripts.
+  // but only packages that have scripts
+  var installed
+    , scripts
+  installedShallow(opts, function (d) {
+    return d.scripts
+  }, function (er, inst) {
+    installed = inst
+    next()
+  })
+
+  if (npm.config.get("global")) scripts = [], next()
+  else readJson(path.join(npm.prefix, "package.json"), function (er, d) {
+    if (er && er.code !== "ENOENT" && er.code !== "ENOTDIR") return cb(er)
+    d = d || {}
+    scripts = Object.keys(d.scripts || {})
+    next()
+  })
+
+  function next () {
+    if (!installed || !scripts) return
+    return cb(null, scripts.concat(installed))
+  }
+}
+
+function runScript (args, cb) {
+  if (!args.length) return cb(runScript.usage)
+  var pkgdir = args.length === 1 ? process.cwd()
+             : path.resolve(npm.dir, args[0])
+    , cmd = args.pop()
+
+  readJson(path.resolve(pkgdir, "package.json"), function (er, d) {
+    if (er) return cb(er)
+    run(d, pkgdir, cmd, cb)
+  })
+}
+
+function run (pkg, wd, cmd, cb) {
+  var cmds = []
+  if (!pkg.scripts) pkg.scripts = {}
+  if (cmd === "restart") {
+    cmds = ["prestop","stop","poststop"
+           ,"restart"
+           ,"prestart","start","poststart"]
+  } else {
+    cmds = [cmd]
+  }
+  if (!cmd.match(/^(pre|post)/)) {
+    cmds = ["pre"+cmd].concat(cmds).concat("post"+cmd)
+  }
+  log.verbose("run-script", cmds)
+  chain(cmds.map(function (c) {
+    // when running scripts explicitly, assume that they're trusted.
+    return [lifecycle, pkg, c, wd, true]
+  }), cb)
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/search.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/search.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/search.js
new file mode 100644
index 0000000..21b6ab2
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/search.js
@@ -0,0 +1,265 @@
+
+module.exports = exports = search
+
+var npm = require("./npm.js")
+  , registry = npm.registry
+  , columnify = require('columnify')
+
+search.usage = "npm search [some search terms ...]"
+
+search.completion = function (opts, cb) {
+  var compl = {}
+    , partial = opts.partialWord
+    , ipartial = partial.toLowerCase()
+    , plen = partial.length
+
+  // get the batch of data that matches so far.
+  // this is an example of using npm.commands.search programmatically
+  // to fetch data that has been filtered by a set of arguments.
+  search(opts.conf.argv.remain.slice(2), true, function (er, data) {
+    if (er) return cb(er)
+    Object.keys(data).forEach(function (name) {
+      data[name].words.split(" ").forEach(function (w) {
+        if (w.toLowerCase().indexOf(ipartial) === 0) {
+          compl[partial + w.substr(plen)] = true
+        }
+      })
+    })
+    cb(null, Object.keys(compl))
+  })
+}
+
+function search (args, silent, staleness, cb) {
+  if (typeof cb !== "function") cb = staleness, staleness = 600
+  if (typeof cb !== "function") cb = silent, silent = false
+
+  var searchopts = npm.config.get("searchopts")
+    , searchexclude = npm.config.get("searchexclude")
+  if (typeof searchopts !== "string") searchopts = ""
+  searchopts = searchopts.split(/\s+/)
+  if (typeof searchexclude === "string") {
+    searchexclude = searchexclude.split(/\s+/)
+  } else searchexclude = []
+  var opts = searchopts.concat(args).map(function (s) {
+    return s.toLowerCase()
+  }).filter(function (s) { return s })
+  searchexclude = searchexclude.map(function (s) {
+    return s.toLowerCase()
+  })
+  getFilteredData( staleness, opts, searchexclude, function (er, data) {
+    // now data is the list of data that we want to show.
+    // prettify and print it, and then provide the raw
+    // data to the cb.
+    if (er || silent) return cb(er, data)
+    console.log(prettify(data, args))
+    cb(null, data)
+  })
+}
+
+function getFilteredData (staleness, args, notArgs, cb) {
+  registry.get( "/-/all", staleness, false
+              , true, function (er, data) {
+    if (er) return cb(er)
+    return cb(null, filter(data, args, notArgs))
+  })
+}
+
+function filter (data, args, notArgs) {
+  // data={<name>:{package data}}
+  return Object.keys(data).map(function (d) {
+    return data[d]
+  }).filter(function (d) {
+    return typeof d === "object"
+  }).map(stripData).map(getWords).filter(function (data) {
+    return filterWords(data, args, notArgs)
+  }).reduce(function (l, r) {
+    l[r.name] = r
+    return l
+  }, {})
+}
+
+function stripData (data) {
+  return { name: data.name
+         , description: npm.config.get("description") ? data.description : ""
+         , maintainers: (data.maintainers || []).map(function (m) {
+             return "=" + m.name
+           })
+         , url: !Object.keys(data.versions || {}).length ? data.url : null
+         , keywords: data.keywords || []
+         , version: Object.keys(data.versions || {})[0] || []
+         , time: data.time
+                 && data.time.modified
+                 && (new Date(data.time.modified).toISOString()
+                     .split("T").join(" ")
+                     .replace(/:[0-9]{2}\.[0-9]{3}Z$/, ""))
+                     .slice(0, -5) // remove time
+                 || "prehistoric"
+         }
+}
+
+function getWords (data) {
+  data.words = [ data.name ]
+               .concat(data.description)
+               .concat(data.maintainers)
+               .concat(data.url && ("<" + data.url + ">"))
+               .concat(data.keywords)
+               .map(function (f) { return f && f.trim && f.trim() })
+               .filter(function (f) { return f })
+               .join(" ")
+               .toLowerCase()
+  return data
+}
+
+function filterWords (data, args, notArgs) {
+  var words = data.words
+  for (var i = 0, l = args.length; i < l; i ++) {
+    if (!match(words, args[i])) return false
+  }
+  for (var i = 0, l = notArgs.length; i < l; i ++) {
+    if (match(words, notArgs[i])) return false
+  }
+  return true
+}
+
+function match (words, arg) {
+  if (arg.charAt(0) === "/") {
+    arg = arg.replace(/\/$/, "")
+    arg = new RegExp(arg.substr(1, arg.length - 1))
+    return words.match(arg)
+  }
+  return words.indexOf(arg) !== -1
+}
+
+function prettify (data, args) {
+  var searchsort = (npm.config.get("searchsort") || "NAME").toLowerCase()
+    , sortField = searchsort.replace(/^\-+/, "")
+    , searchRev = searchsort.charAt(0) === "-"
+    , truncate = !npm.config.get("long")
+
+  if (Object.keys(data).length === 0) {
+    return "No match found for "+(args.map(JSON.stringify).join(" "))
+  }
+
+  var lines = Object.keys(data).map(function (d) {
+    // strip keyname
+    return data[d]
+  }).map(function(dat) {
+    dat.author = dat.maintainers
+    delete dat.maintainers
+    dat.date = dat.time
+    delete dat.time
+    return dat
+  }).map(function(dat) {
+    // split keywords on whitespace or ,
+    if (typeof dat.keywords === "string") {
+      dat.keywords = dat.keywords.split(/[,\s]+/)
+    }
+    if (Array.isArray(dat.keywords)) {
+      dat.keywords = dat.keywords.join(' ')
+    }
+
+    // split author on whitespace or ,
+    if (typeof dat.author === "string") {
+      dat.author = dat.author.split(/[,\s]+/)
+    }
+    if (Array.isArray(dat.author)) {
+      dat.author = dat.author.join(' ')
+    }
+    return dat
+  })
+
+  lines.sort(function(a, b) {
+    var aa = a[sortField].toLowerCase()
+      , bb = b[sortField].toLowerCase()
+    return aa === bb ? 0
+         : aa < bb ? -1 : 1
+  })
+
+  if (searchRev) lines.reverse()
+
+  var columns = npm.config.get("description")
+               ? ["name", "description", "author", "date", "version", "keywords"]
+               : ["name", "author", "date", "version", "keywords"]
+
+  var output = columnify(lines, {
+        include: columns
+      , truncate: truncate
+      , config: {
+          name: { maxWidth: 40, truncate: false, truncateMarker: '' }
+        , description: { maxWidth: 60 }
+        , author: { maxWidth: 20 }
+        , date: { maxWidth: 11 }
+        , version: { maxWidth: 11 }
+        , keywords: { maxWidth: Infinity }
+      }
+  })
+  output = trimToMaxWidth(output)
+  output = highlightSearchTerms(output, args)
+
+  return output
+}
+
+var colors = [31, 33, 32, 36, 34, 35 ]
+  , cl = colors.length
+
+function addColorMarker (str, arg, i) {
+  var m = i % cl + 1
+    , markStart = String.fromCharCode(m)
+    , markEnd = String.fromCharCode(0)
+
+  if (arg.charAt(0) === "/") {
+    //arg = arg.replace(/\/$/, "")
+    return str.replace( new RegExp(arg.substr(1, arg.length - 1), "gi")
+                      , function (bit) { return markStart + bit + markEnd } )
+
+  }
+
+  // just a normal string, do the split/map thing
+  var pieces = str.toLowerCase().split(arg.toLowerCase())
+    , p = 0
+
+  return pieces.map(function (piece, i) {
+    piece = str.substr(p, piece.length)
+    var mark = markStart
+             + str.substr(p+piece.length, arg.length)
+             + markEnd
+    p += piece.length + arg.length
+    return piece + mark
+  }).join("")
+}
+
+function colorize (line) {
+  for (var i = 0; i < cl; i ++) {
+    var m = i + 1
+    var color = npm.color ? "\033["+colors[i]+"m" : ""
+    line = line.split(String.fromCharCode(m)).join(color)
+  }
+  var uncolor = npm.color ? "\033[0m" : ""
+  return line.split("\u0000").join(uncolor)
+}
+
+function getMaxWidth() {
+  try {
+    var tty = require("tty")
+      , stdout = process.stdout
+      , cols = !tty.isatty(stdout.fd) ? Infinity
+             : process.stdout.getWindowSize()[0]
+      cols = (cols == 0) ? Infinity : cols
+  } catch (ex) { cols = Infinity }
+  return cols
+}
+
+function trimToMaxWidth(str) {
+  var maxWidth = getMaxWidth()
+  return str.split('\n').map(function(line) {
+    return line.slice(0, maxWidth)
+  }).join('\n')
+}
+
+function highlightSearchTerms(str, terms) {
+  terms.forEach(function (arg, i) {
+    str = addColorMarker(str, arg, i)
+  })
+
+  return colorize(str).trim()
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/set.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/set.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/set.js
new file mode 100644
index 0000000..c83602e
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/set.js
@@ -0,0 +1,13 @@
+
+module.exports = set
+
+set.usage = "npm set <key> <value> (See `npm config`)"
+
+var npm = require("./npm.js")
+
+set.completion = npm.commands.config.completion
+
+function set (args, cb) {
+  if (!args.length) return cb(set.usage)
+  npm.commands.config(["set"].concat(args), cb)
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/shrinkwrap.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/shrinkwrap.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/shrinkwrap.js
new file mode 100644
index 0000000..14711df
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/shrinkwrap.js
@@ -0,0 +1,69 @@
+// emit JSON describing versions of all packages currently installed (for later
+// use with shrinkwrap install)
+
+module.exports = exports = shrinkwrap
+
+var npm = require("./npm.js")
+  , log = require("npmlog")
+  , fs = require("fs")
+  , path = require("path")
+  , readJson = require("read-package-json")
+
+shrinkwrap.usage = "npm shrinkwrap"
+
+function shrinkwrap (args, silent, cb) {
+  if (typeof cb !== "function") cb = silent, silent = false
+
+  if (args.length) {
+    log.warn("shrinkwrap", "doesn't take positional args")
+  }
+
+  npm.commands.ls([], true, function (er, _, pkginfo) {
+    if (er) return cb(er)
+    shrinkwrap_(pkginfo, silent, npm.config.get("dev"), cb)
+  })
+}
+
+function shrinkwrap_ (pkginfo, silent, dev, cb) {
+  if (pkginfo.problems) {
+    return cb(new Error("Problems were encountered\n"
+                       +"Please correct and try again.\n"
+                       +pkginfo.problems.join("\n")))
+  }
+
+  if (!dev) {
+    // remove dev deps unless the user does --dev
+    readJson(path.resolve(npm.prefix, "package.json"), function (er, data) {
+      if (er)
+        return cb(er)
+      if (data.devDependencies) {
+        Object.keys(data.devDependencies).forEach(function (dep) {
+          log.warn("shrinkwrap", "Excluding devDependency: %s", dep)
+          delete pkginfo.dependencies[dep]
+        })
+      }
+      save(pkginfo, silent, cb)
+    })
+  } else {
+    save(pkginfo, silent, cb)
+  }
+}
+
+
+function save (pkginfo, silent, cb) {
+  try {
+    var swdata = JSON.stringify(pkginfo, null, 2) + "\n"
+  } catch (er) {
+    log.error("shrinkwrap", "Error converting package info to json")
+    return cb(er)
+  }
+
+  var file = path.resolve(npm.prefix, "npm-shrinkwrap.json")
+
+  fs.writeFile(file, swdata, function (er) {
+    if (er) return cb(er)
+    if (silent) return cb(null, pkginfo)
+    console.log("wrote npm-shrinkwrap.json")
+    cb(null, pkginfo)
+  })
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/star.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/star.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/star.js
new file mode 100644
index 0000000..33b1247
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/star.js
@@ -0,0 +1,33 @@
+
+module.exports = star
+
+var npm = require("./npm.js")
+  , registry = npm.registry
+  , log = require("npmlog")
+  , asyncMap = require("slide").asyncMap
+
+star.usage = "npm star <package> [pkg, pkg, ...]\n"
+           + "npm unstar <package> [pkg, pkg, ...]"
+
+star.completion = function (opts, cb) {
+  registry.get("/-/short", 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) {
+        console.log(s + " "+pkg)
+        log.verbose("star", data)
+      }
+      cb(er, data, raw, req)
+    })
+  }, cb)
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/stars.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/stars.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/stars.js
new file mode 100644
index 0000000..74841f2
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/stars.js
@@ -0,0 +1,27 @@
+module.exports = stars
+
+stars.usage = "npm stars [username]"
+
+var npm = require("./npm.js")
+  , registry = npm.registry
+  , log = require("npmlog")
+
+function stars (args, cb) {
+  var name = args.length === 1 ? args[0] : npm.config.get("username")
+  registry.stars(name, showstars)
+
+  function showstars (er, data) {
+    if (er) {
+      return cb(er)
+    }
+
+    if (data.rows.length === 0) {
+      log.warn('stars', 'user has not starred any packages.')
+    } else {
+      data.rows.forEach(function(a) {
+        console.log(a.value)
+      })
+    }
+    cb()
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/start.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/start.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/start.js
new file mode 100644
index 0000000..9882382
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/start.js
@@ -0,0 +1 @@
+module.exports = require("./utils/lifecycle.js").cmd("start")

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/stop.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/stop.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/stop.js
new file mode 100644
index 0000000..8ea5ba6
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/stop.js
@@ -0,0 +1 @@
+module.exports = require("./utils/lifecycle.js").cmd("stop")

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/submodule.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/submodule.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/submodule.js
new file mode 100644
index 0000000..72a2248
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/submodule.js
@@ -0,0 +1,119 @@
+// npm submodule <pkg>
+// Check the package contents for a git repository url.
+// If there is one, then create a git submodule in the node_modules folder.
+
+module.exports = submodule
+
+var npm = require("./npm.js")
+  , exec = require("child_process").execFile
+  , cache = require("./cache.js")
+  , asyncMap = require("slide").asyncMap
+  , chain = require("slide").chain
+  , which = require("which")
+
+submodule.usage = "npm submodule <pkg>"
+
+submodule.completion = require("./docs.js").completion
+
+function submodule (args, cb) {
+  if (npm.config.get("global")) {
+    return cb(new Error("Cannot use submodule command in global mode."))
+  }
+
+  if (args.length === 0) return cb(submodule.usage)
+
+  asyncMap(args, function (arg, cb) {
+    cache.add(arg, cb)
+  }, function (er, pkgs) {
+    if (er) return cb(er)
+    chain(pkgs.map(function (pkg) { return function (cb) {
+      submodule_(pkg, cb)
+    }}), cb)
+  })
+
+}
+
+function submodule_ (pkg, cb) {
+  if (!pkg.repository
+      || pkg.repository.type !== "git"
+      || !pkg.repository.url) {
+    return cb(new Error(pkg._id + ": No git repository listed"))
+  }
+
+  // prefer https:// github urls
+  pkg.repository.url = pkg.repository.url
+    .replace(/^(git:\/\/)?(git@)?github.com[:\/]/, "https://github.com/")
+
+  // first get the list of submodules, and update if it's already there.
+  getSubmodules(function (er, modules) {
+    if (er) return cb(er)
+    // if there's already a submodule, then just update it.
+    if (modules.indexOf(pkg.name) !== -1) {
+      return updateSubmodule(pkg.name, cb)
+    }
+    addSubmodule(pkg.name, pkg.repository.url, cb)
+  })
+}
+
+function updateSubmodule (name, cb) {
+  var git = npm.config.get("git")
+  var args = [ "submodule", "update", "--init", "node_modules/", name ]
+
+  // check for git
+  which(git, function (err) {
+    if (err) {
+      err.code = "ENOGIT"
+      return cb(err)
+    }
+
+    exec(git, args, cb)
+  })
+}
+
+function addSubmodule (name, url, cb) {
+  var git = npm.config.get("git")
+  var args = [ "submodule", "add", url, "node_modules/", name ]
+
+  // check for git
+  which(git, function (err) {
+    if (err) {
+      err.code = "ENOGIT"
+      return cb(err)
+    }
+
+    exec(git, args, function (er) {
+      if (er) return cb(er)
+      updateSubmodule(name, cb)
+    })
+  })
+}
+
+
+var getSubmodules = function getSubmodules (cb) {
+  var git = npm.config.get("git")
+  var args = [ "submodule", "status" ]
+
+  // check for git
+  which(git, function (err) {
+    if (err) {
+      err.code = "ENOGIT"
+      return cb(err)
+    }
+    exec(git, args, function (er, stdout, stderr) {
+      if (er) return cb(er)
+      res = stdout.trim().split(/\n/).map(function (line) {
+        return line.trim().split(/\s+/)[1]
+      }).filter(function (line) {
+        // only care about submodules in the node_modules folder.
+        return line && line.match(/^node_modules\//)
+      }).map(function (line) {
+        return line.replace(/^node_modules\//g, "")
+      })
+
+      // memoize.
+      getSubmodules = function (cb) { return cb(null, res) }
+
+      cb(null, res)
+    })
+  })
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/substack.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/substack.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/substack.js
new file mode 100644
index 0000000..1929f18
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/substack.js
@@ -0,0 +1,20 @@
+module.exports = substack
+var npm = require("./npm.js")
+
+var isms =
+  [ "\033[32mbeep \033[35mboop\033[m"
+  , "Replace your configs with services"
+  , "SEPARATE ALL THE CONCERNS!"
+  , "MODULE ALL THE THINGS!"
+  , "\\o/"
+  , "but first, burritos"
+  , "full time mad scientist here"
+  , "c/,,\\" ]
+
+function substack (args, cb) {
+  var i = Math.floor(Math.random() * isms.length)
+  console.log(isms[i])
+  var c = args.shift()
+  if (c) npm.commands[c](args, cb)
+  else cb()
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/tag.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/tag.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/tag.js
new file mode 100644
index 0000000..8a7c51c
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/tag.js
@@ -0,0 +1,18 @@
+// turns out tagging isn't very complicated
+// all the smarts are in the couch.
+module.exports = tag
+tag.usage = "npm tag <project>@<version> [<tag>]"
+
+tag.completion = require("./unpublish.js").completion
+
+var npm = require("./npm.js")
+  , registry = npm.registry
+
+function tag (args, cb) {
+  var thing = (args.shift() || "").split("@")
+    , project = thing.shift()
+    , version = thing.join("@")
+    , t = args.shift() || npm.config.get("tag")
+  if (!project || !version || !t) return cb("Usage:\n"+tag.usage)
+  registry.tag(project, version, t, cb)
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/test.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/test.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/test.js
new file mode 100644
index 0000000..d741807
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/test.js
@@ -0,0 +1,14 @@
+module.exports = test
+
+var testCmd = require("./utils/lifecycle.js").cmd("test")
+  , log = require("npmlog")
+
+function test (args, cb) {
+  testCmd(args, function (er) {
+    if (!er) return cb()
+    if (er.code === "ELIFECYCLE") {
+      return cb("Test failed.  See above for more details.")
+    }
+    return cb(er)
+  })
+}

http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/a9a83675/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/unbuild.js
----------------------------------------------------------------------
diff --git a/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/unbuild.js b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/unbuild.js
new file mode 100644
index 0000000..57688f0
--- /dev/null
+++ b/ApacheCMDA_Backend_1.0/project/target/node-modules/webjars/npm/lib/unbuild.js
@@ -0,0 +1,112 @@
+module.exports = unbuild
+unbuild.usage = "npm unbuild <folder>\n(this is plumbing)"
+
+var readJson = require("read-package-json")
+  , rm = require("rimraf")
+  , gentlyRm = require("./utils/gently-rm.js")
+  , npm = require("./npm.js")
+  , path = require("path")
+  , fs = require("graceful-fs")
+  , lifecycle = require("./utils/lifecycle.js")
+  , asyncMap = require("slide").asyncMap
+  , chain = require("slide").chain
+  , log = require("npmlog")
+  , build = require("./build.js")
+
+// args is a list of folders.
+// remove any bins/etc, and then delete the folder.
+function unbuild (args, silent, cb) {
+  if (typeof silent === 'function') cb = silent, silent = false
+  asyncMap(args, unbuild_(silent), cb)
+}
+
+function unbuild_ (silent) { return function (folder, cb_) {
+  function cb (er) {
+    cb_(er, path.relative(npm.root, folder))
+  }
+  folder = path.resolve(folder)
+  delete build._didBuild[folder]
+  log.info(folder, "unbuild")
+  readJson(path.resolve(folder, "package.json"), function (er, pkg) {
+    // if no json, then just trash it, but no scripts or whatever.
+    if (er) return rm(folder, cb)
+    readJson.cache.del(folder)
+    chain
+      ( [ [lifecycle, pkg, "preuninstall", folder, false, true]
+        , [lifecycle, pkg, "uninstall", folder, false, true]
+        , !silent && function(cb) {
+            console.log("unbuild " + pkg._id)
+            cb()
+          }
+        , [rmStuff, pkg, folder]
+        , [lifecycle, pkg, "postuninstall", folder, false, true]
+        , [rm, folder] ]
+      , cb )
+  })
+}}
+
+function rmStuff (pkg, folder, cb) {
+  // if it's global, and folder is in {prefix}/node_modules,
+  // then bins are in {prefix}/bin
+  // otherwise, then bins are in folder/../.bin
+  var parent = path.dirname(folder)
+    , gnm = npm.dir
+    , top = gnm === parent
+
+  readJson.cache.del(path.resolve(folder, "package.json"))
+
+  log.verbose([top, gnm, parent], "unbuild " + pkg._id)
+  asyncMap([rmBins, rmMans], function (fn, cb) {
+    fn(pkg, folder, parent, top, cb)
+  }, cb)
+}
+
+function rmBins (pkg, folder, parent, top, cb) {
+  if (!pkg.bin) return cb()
+  var binRoot = top ? npm.bin : path.resolve(parent, ".bin")
+  log.verbose([binRoot, pkg.bin], "binRoot")
+  asyncMap(Object.keys(pkg.bin), function (b, cb) {
+    if (process.platform === "win32") {
+      chain([ [rm, path.resolve(binRoot, b) + ".cmd"]
+            , [rm, path.resolve(binRoot, b) ] ], cb)
+    } else {
+      gentlyRm( path.resolve(binRoot, b)
+              , !npm.config.get("force") && folder
+              , cb )
+    }
+  }, cb)
+}
+
+function rmMans (pkg, folder, parent, top, cb) {
+  if (!pkg.man
+      || !top
+      || process.platform === "win32"
+      || !npm.config.get("global")) {
+    return cb()
+  }
+  var manRoot = path.resolve(npm.config.get("prefix"), "share", "man")
+  asyncMap(pkg.man, function (man, cb) {
+    if (Array.isArray(man)) {
+      man.forEach(rm)
+    } else {
+      rm(man)
+    }
+
+    function rm(man) {
+      var parseMan = man.match(/(.*)\.([0-9]+)(\.gz)?$/)
+        , stem = parseMan[1]
+        , sxn = parseMan[2]
+        , gz = parseMan[3] || ""
+        , bn = path.basename(stem)
+        , manDest = path.join( manRoot
+                            , "man"+sxn
+                            , (bn.indexOf(pkg.name) === 0 ? bn
+                              : pkg.name + "-" + bn)
+                              + "." + sxn + gz
+                            )
+      gentlyRm( manDest
+              , !npm.config.get("force") && folder
+              , cb )
+    }
+  }, cb)
+}