{
  "_args": [
    [
      {
        "raw": "@zkochan/npm-package-arg@1.0.2",
        "scope": "@zkochan",
        "escapedName": "@zkochan%2fnpm-package-arg",
        "name": "@zkochan/npm-package-arg",
        "rawSpec": "1.0.2",
        "spec": "1.0.2",
        "type": "version"
      },
      "/home/zoltan/src/pnpm/pnpm/packages/pnpm/node_modules/@pnpm/list"
    ]
  ],
  "_from": "@zkochan/npm-package-arg@1.0.2",
  "_hasShrinkwrap": false,
  "_id": "@zkochan/npm-package-arg@1.0.2",
  "_location": "/@zkochan/npm-package-arg",
  "_nodeVersion": "10.12.0",
  "_npmOperationalInternal": {
    "host": "s3://npm-registry-packages",
    "tmp": "tmp/npm-package-arg_1.0.2_1554054250818_0.21119769479148442"
  },
  "_npmUser": {
    "name": "zkochan",
    "email": "z@kochan.io"
  },
  "_npmVersion": "6.9.0",
  "_phantomChildren": {},
  "_requested": {
    "raw": "@zkochan/npm-package-arg@1.0.2",
    "scope": "@zkochan",
    "escapedName": "@zkochan%2fnpm-package-arg",
    "name": "@zkochan/npm-package-arg",
    "rawSpec": "1.0.2",
    "spec": "1.0.2",
    "type": "version"
  },
  "_requiredBy": [
    "/@pnpm/list",
    "/@zkochan/libnpx",
    "/pkgs-graph",
    "/supi"
  ],
  "_resolved": "https://registry.npmjs.org/@zkochan/npm-package-arg/-/npm-package-arg-1.0.2.tgz",
  "_shasum": "9495fecbce46c31abe98bac8cb813b7b195b8045",
  "_shrinkwrap": null,
  "_spec": "@zkochan/npm-package-arg@1.0.2",
  "_where": "/home/zoltan/src/pnpm/pnpm/packages/pnpm/node_modules/@pnpm/list",
  "author": {
    "name": "Isaac Z. Schlueter",
    "email": "i@izs.me",
    "url": "http://blog.izs.me/"
  },
  "bugs": {
    "url": "https://github.com/zkochan/npm-package-arg/issues"
  },
  "dependencies": {
    "hosted-git-info": "^2.5.0",
    "semver": "^6.0.0",
    "validate-npm-package-name": "^3.0.0"
  },
  "description": "Parse the things that can be arguments to `npm install`",
  "devDependencies": {
    "standard": "9.0.2",
    "tap": "^10.3.0"
  },
  "directories": {
    "test": "test"
  },
  "dist": {
    "integrity": "sha512-9hHFHZTOexP/oge2GMQzPlhdi9IJ+Zgnobh7sNfSdIZepULMM/lNQE4hmkFDC2zk8+OBibtfHbUPulNZI18TQA==",
    "shasum": "9495fecbce46c31abe98bac8cb813b7b195b8045",
    "tarball": "https://registry.npmjs.org/@zkochan/npm-package-arg/-/npm-package-arg-1.0.2.tgz",
    "fileCount": 4,
    "unpackedSize": 13720,
    "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcoPxrCRA9TVsSAnZWagAAoZUP/iSOz2R5Wp1PyvtV3CZJ\nrZVgWgGPOk/Wd93kdIfVweKo4nXGu24uRWAJfPWA+N4CPS4fZJNfEYzurjrl\nXEZAL0aEYXAH6ztnX0uRgtHCo+tAazCdDQE3zhZK/y73BAbciu5zckr1MjjP\nPnsCrtTh6LN1QeTp2wA53HBHAXHSxygkQGh1xqCLr/B6xafv4lgGPyRPYi5G\nFzB9lgOsV0ndtk6STTuTXMypG+NmnNzMpGzj9O1MeRBuWZC6mve9TOFy6gqf\nS21TymdnDvHouQnC9ExFbTmhKJSnzYK2CxcMdsyX5O+eF3D1LJyQ19jqzo2J\naltKxu2qz4xxu+PHLVlo3GQhC8qI5cRNM1yDxd/oiq0KcYozSLkpiYPM3cdg\nSsXKb5vZMu5DBI+dGZO/QQyhmRFsWPKgu8E/49zNccj/KXnTL1pIwDfn2Vs5\ncbey1zbC1QiHOGJsep6i0W/z9IzgqOfcAHvnl5W1ViLHywSN3NWyeNov2pPy\nDLlGci6UzsFq6gdscr2z+KCjwyQY0XWl5xhK7i6U24xqito3nLmKjqtnWmzC\nKjyYRVeMjwH6SAF9KYKibR1Crj3hPk1PHjXvZzDDe8XPmCnK9Qf9yPbRMnYt\nB2GxggP+tKbKLak1140VuquQkhBqsfJVtr3MkNDO47E+CqhMMXdzTlQ42GNU\nvWPa\r\n=wH9U\r\n-----END PGP SIGNATURE-----\r\n"
  },
  "files": [
    "npa.js"
  ],
  "gitHead": "4be0b127a2f82bc23c64d912e75c685df5b5599d",
  "homepage": "https://github.com/zkochan/npm-package-arg",
  "license": "ISC",
  "main": "npa.js",
  "maintainers": [
    {
      "name": "zkochan",
      "email": "z@kochan.io"
    }
  ],
  "name": "@zkochan/npm-package-arg",
  "optionalDependencies": {},
  "readme": "# @zkochan/npm-package-arg\n\nParses package name and specifier passed to commands like `npm install` or\n`npm cache add`, or as found in `package.json` dependency sections.\n\n## EXAMPLES\n\n```javascript\nvar assert = require(\"assert\")\nvar npa = require(\"@zkochan/npm-package-arg\")\n\n// Pass in the descriptor, and it'll return an object\ntry {\n  var parsed = npa(\"@bar/foo@1.2\")\n} catch (ex) {\n  …\n}\n```\n\n## USING\n\n`var npa = require('@zkochan/npm-package-arg')`\n\n### var result = npa(*arg*[, *where*])\n\n* *arg* - a string that you might pass to `npm install`, like:\n`foo@1.2`, `@bar/foo@1.2`, `foo@user/foo`, `http://x.com/foo.tgz`,\n`git+https://github.com/user/foo`, `bitbucket:user/foo`, `foo.tar.gz`,\n`../foo/bar/` or `bar`.  If the *arg* you provide doesn't have a specifier\npart, eg `foo` then the specifier will default to `latest`.\n* *where* - Optionally the path to resolve file paths relative to. Defaults to `process.cwd()`\n\n**Throws** if the package name is invalid, a dist-tag is invalid or a URL's protocol is not supported.\n\n### var result = npa.resolve(*name*, *spec*[, *where*])\n\n* *name* - The name of the module you want to install. For example: `foo` or `@bar/foo`.\n* *spec* - The specifier indicating where and how you can get this module. Something like:\n`1.2`, `^1.7.17`, `http://x.com/foo.tgz`, `git+https://github.com/user/foo`,\n`bitbucket:user/foo`, `file:foo.tar.gz` or `file:../foo/bar/`.  If not\nincluded then the default is `latest`.\n* *where* - Optionally the path to resolve file paths relative to. Defaults to `process.cwd()`\n\n**Throws** if the package name is invalid, a dist-tag is invalid or a URL's protocol is not supported.\n\n## RESULT OBJECT\n\nThe objects that are returned by @zkochan/npm-package-arg contain the following\nkeys:\n\n* `type` - One of the following strings:\n  * `git` - A git repo\n  * `tag` - A tagged version, like `\"foo@latest\"`\n  * `version` - A specific version number, like `\"foo@1.2.3\"`\n  * `range` - A version range, like `\"foo@2.x\"`\n  * `file` - A local `.tar.gz`, `.tar` or `.tgz` file.\n  * `directory` - A local directory.\n  * `remote` - An http url (presumably to a tgz)\n* `registry` - If true this specifier refers to a resource hosted on a\n  registry.  This is true for `tag`, `version` and `range` types.\n* `name` - If known, the `name` field expected in the resulting pkg.\n* `scope` - If a name is something like `@org/module` then the `scope`\n  field will be set to `@org`.  If it doesn't have a scoped name, then\n  scope is `null`.\n* `escapedName` - A version of `name` escaped to match the npm scoped packages\n  specification. Mostly used when making requests against a registry. When\n  `name` is `null`, `escapedName` will also be `null`.\n* `rawSpec` - The specifier part that was parsed out in calls to `npa(arg)`,\n  or the value of `spec` in calls to `npa.resolve(name, spec).\n* `saveSpec` - The normalized specifier, for saving to package.json files.\n  `null` for registry dependencies.\n* `fetchSpec` - The version of the specifier to be used to fetch this\n  resource.  `null` for shortcuts to hosted git dependencies as there isn't\n  just one URL to try with them.\n* `gitRange` - If set, this is a semver specifier to match against git tags with\n* `gitCommittish` - If set, this is the specific committish to use with a git dependency.\n* `hosted` - If `from === 'hosted'` then this will be a `hosted-git-info`\n  object. This property is not included when serializing the object as\n  JSON.\n* `raw` - The original un-modified string that was provided.  If called as\n  `npa.resolve(name, spec)` then this will be `name + '@' + spec`.\n",
  "readmeFilename": "README.md",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/zkochan/npm-package-arg.git"
  },
  "scripts": {
    "test": "standard && tap -J --coverage test/*.js"
  },
  "version": "1.0.2"
}
