| { |
| "_args": [ |
| [ |
| { |
| "raw": "range-parser@~1.2.0", |
| "scope": null, |
| "escapedName": "range-parser", |
| "name": "range-parser", |
| "rawSpec": "~1.2.0", |
| "spec": ">=1.2.0 <1.3.0", |
| "type": "range" |
| }, |
| "/Users/steveng/repo/cordova/cordova-browser/node_modules/express" |
| ] |
| ], |
| "_from": "range-parser@>=1.2.0 <1.3.0", |
| "_id": "range-parser@1.2.0", |
| "_inCache": true, |
| "_location": "/range-parser", |
| "_npmOperationalInternal": { |
| "host": "packages-16-east.internal.npmjs.com", |
| "tmp": "tmp/range-parser-1.2.0.tgz_1464803293097_0.6830497414339334" |
| }, |
| "_npmUser": { |
| "name": "dougwilson", |
| "email": "doug@somethingdoug.com" |
| }, |
| "_npmVersion": "1.4.28", |
| "_phantomChildren": {}, |
| "_requested": { |
| "raw": "range-parser@~1.2.0", |
| "scope": null, |
| "escapedName": "range-parser", |
| "name": "range-parser", |
| "rawSpec": "~1.2.0", |
| "spec": ">=1.2.0 <1.3.0", |
| "type": "range" |
| }, |
| "_requiredBy": [ |
| "/express", |
| "/send" |
| ], |
| "_resolved": "http://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", |
| "_shasum": "f49be6b487894ddc40dcc94a322f611092e00d5e", |
| "_shrinkwrap": null, |
| "_spec": "range-parser@~1.2.0", |
| "_where": "/Users/steveng/repo/cordova/cordova-browser/node_modules/express", |
| "author": { |
| "name": "TJ Holowaychuk", |
| "email": "tj@vision-media.ca", |
| "url": "http://tjholowaychuk.com" |
| }, |
| "bugs": { |
| "url": "https://github.com/jshttp/range-parser/issues" |
| }, |
| "contributors": [ |
| { |
| "name": "Douglas Christopher Wilson", |
| "email": "doug@somethingdoug.com" |
| }, |
| { |
| "name": "James Wyatt Cready", |
| "email": "wyatt.cready@lanetix.com" |
| }, |
| { |
| "name": "Jonathan Ong", |
| "email": "me@jongleberry.com", |
| "url": "http://jongleberry.com" |
| } |
| ], |
| "dependencies": {}, |
| "description": "Range header field string parser", |
| "devDependencies": { |
| "eslint": "2.11.1", |
| "eslint-config-standard": "5.3.1", |
| "eslint-plugin-promise": "1.1.0", |
| "eslint-plugin-standard": "1.3.2", |
| "istanbul": "0.4.3", |
| "mocha": "1.21.5" |
| }, |
| "directories": {}, |
| "dist": { |
| "shasum": "f49be6b487894ddc40dcc94a322f611092e00d5e", |
| "tarball": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz" |
| }, |
| "engines": { |
| "node": ">= 0.6" |
| }, |
| "files": [ |
| "HISTORY.md", |
| "LICENSE", |
| "index.js" |
| ], |
| "gitHead": "0665aca31639d799dee1d35fb10970799559ec48", |
| "homepage": "https://github.com/jshttp/range-parser#readme", |
| "keywords": [ |
| "range", |
| "parser", |
| "http" |
| ], |
| "license": "MIT", |
| "maintainers": [ |
| { |
| "name": "dougwilson", |
| "email": "doug@somethingdoug.com" |
| }, |
| { |
| "name": "jonathanong", |
| "email": "jonathanrichardong@gmail.com" |
| }, |
| { |
| "name": "jongleberry", |
| "email": "jonathanrichardong@gmail.com" |
| }, |
| { |
| "name": "tjholowaychuk", |
| "email": "tj@vision-media.ca" |
| } |
| ], |
| "name": "range-parser", |
| "optionalDependencies": {}, |
| "readme": "# range-parser\n\n[![NPM Version][npm-image]][npm-url]\n[![NPM Downloads][downloads-image]][downloads-url]\n[![Node.js Version][node-version-image]][node-version-url]\n[![Build Status][travis-image]][travis-url]\n[![Test Coverage][coveralls-image]][coveralls-url]\n\nRange header field parser.\n\n## Installation\n\n```\n$ npm install range-parser\n```\n\n## API\n\n```js\nvar parseRange = require('range-parser')\n```\n\n### parseRange(size, header, options)\n\nParse the given `header` string where `size` is the maximum size of the resource.\nAn array of ranges will be returned or negative numbers indicating an error parsing.\n\n * `-2` signals a malformed header string\n * `-1` signals an unsatisfiable range\n\n```js\n// parse header from request\nvar range = parseRange(size, req.headers.range)\n\n// the type of the range\nif (range.type === 'bytes') {\n // the ranges\n range.forEach(function (r) {\n // do something with r.start and r.end\n })\n}\n```\n\n#### Options\n\nThese properties are accepted in the options object.\n\n##### combine\n\nSpecifies if overlapping & adjacent ranges should be combined, defaults to `false`.\nWhen `true`, ranges will be combined and returned as if they were specified that\nway in the header.\n\n```js\nparseRange(100, 'bytes=50-55,0-10,5-10,56-60', { combine: true })\n// => [\n// { start: 0, end: 10 },\n// { start: 50, end: 60 }\n// ]\n```\n\n## License\n\n[MIT](LICENSE)\n\n[npm-image]: https://img.shields.io/npm/v/range-parser.svg\n[npm-url]: https://npmjs.org/package/range-parser\n[node-version-image]: https://img.shields.io/node/v/range-parser.svg\n[node-version-url]: https://nodejs.org/endownload\n[travis-image]: https://img.shields.io/travis/jshttp/range-parser.svg\n[travis-url]: https://travis-ci.org/jshttp/range-parser\n[coveralls-image]: https://img.shields.io/coveralls/jshttp/range-parser.svg\n[coveralls-url]: https://coveralls.io/r/jshttp/range-parser\n[downloads-image]: https://img.shields.io/npm/dm/range-parser.svg\n[downloads-url]: https://npmjs.org/package/range-parser\n", |
| "readmeFilename": "README.md", |
| "repository": { |
| "type": "git", |
| "url": "git+https://github.com/jshttp/range-parser.git" |
| }, |
| "scripts": { |
| "lint": "eslint **/*.js", |
| "test": "mocha --reporter spec", |
| "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot", |
| "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter dot" |
| }, |
| "version": "1.2.0" |
| } |