Updated the Survey.
This commit is contained in:
parent
f59686eae0
commit
6d3ba1a714
1203 changed files with 140782 additions and 5 deletions
56
node_modules/range-parser/HISTORY.md
generated
vendored
Normal file
56
node_modules/range-parser/HISTORY.md
generated
vendored
Normal file
|
@ -0,0 +1,56 @@
|
|||
1.2.1 / 2019-05-10
|
||||
==================
|
||||
|
||||
* Improve error when `str` is not a string
|
||||
|
||||
1.2.0 / 2016-06-01
|
||||
==================
|
||||
|
||||
* Add `combine` option to combine overlapping ranges
|
||||
|
||||
1.1.0 / 2016-05-13
|
||||
==================
|
||||
|
||||
* Fix incorrectly returning -1 when there is at least one valid range
|
||||
* perf: remove internal function
|
||||
|
||||
1.0.3 / 2015-10-29
|
||||
==================
|
||||
|
||||
* perf: enable strict mode
|
||||
|
||||
1.0.2 / 2014-09-08
|
||||
==================
|
||||
|
||||
* Support Node.js 0.6
|
||||
|
||||
1.0.1 / 2014-09-07
|
||||
==================
|
||||
|
||||
* Move repository to jshttp
|
||||
|
||||
1.0.0 / 2013-12-11
|
||||
==================
|
||||
|
||||
* Add repository to package.json
|
||||
* Add MIT license
|
||||
|
||||
0.0.4 / 2012-06-17
|
||||
==================
|
||||
|
||||
* Change ret -1 for unsatisfiable and -2 when invalid
|
||||
|
||||
0.0.3 / 2012-06-17
|
||||
==================
|
||||
|
||||
* Fix last-byte-pos default to len - 1
|
||||
|
||||
0.0.2 / 2012-06-14
|
||||
==================
|
||||
|
||||
* Add `.type`
|
||||
|
||||
0.0.1 / 2012-06-11
|
||||
==================
|
||||
|
||||
* Initial release
|
23
node_modules/range-parser/LICENSE
generated
vendored
Normal file
23
node_modules/range-parser/LICENSE
generated
vendored
Normal file
|
@ -0,0 +1,23 @@
|
|||
(The MIT License)
|
||||
|
||||
Copyright (c) 2012-2014 TJ Holowaychuk <tj@vision-media.ca>
|
||||
Copyright (c) 2015-2016 Douglas Christopher Wilson <doug@somethingdoug.com
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
'Software'), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
84
node_modules/range-parser/README.md
generated
vendored
Normal file
84
node_modules/range-parser/README.md
generated
vendored
Normal file
|
@ -0,0 +1,84 @@
|
|||
# range-parser
|
||||
|
||||
[![NPM Version][npm-version-image]][npm-url]
|
||||
[![NPM Downloads][npm-downloads-image]][npm-url]
|
||||
[![Node.js Version][node-image]][node-url]
|
||||
[![Build Status][travis-image]][travis-url]
|
||||
[![Test Coverage][coveralls-image]][coveralls-url]
|
||||
|
||||
Range header field parser.
|
||||
|
||||
## Installation
|
||||
|
||||
This is a [Node.js](https://nodejs.org/en/) module available through the
|
||||
[npm registry](https://www.npmjs.com/). Installation is done using the
|
||||
[`npm install` command](https://docs.npmjs.com/getting-started/installing-npm-packages-locally):
|
||||
|
||||
```sh
|
||||
$ npm install range-parser
|
||||
```
|
||||
|
||||
## API
|
||||
|
||||
<!-- eslint-disable no-unused-vars -->
|
||||
|
||||
```js
|
||||
var parseRange = require('range-parser')
|
||||
```
|
||||
|
||||
### parseRange(size, header, options)
|
||||
|
||||
Parse the given `header` string where `size` is the maximum size of the resource.
|
||||
An array of ranges will be returned or negative numbers indicating an error parsing.
|
||||
|
||||
* `-2` signals a malformed header string
|
||||
* `-1` signals an unsatisfiable range
|
||||
|
||||
<!-- eslint-disable no-undef -->
|
||||
|
||||
```js
|
||||
// parse header from request
|
||||
var range = parseRange(size, req.headers.range)
|
||||
|
||||
// the type of the range
|
||||
if (range.type === 'bytes') {
|
||||
// the ranges
|
||||
range.forEach(function (r) {
|
||||
// do something with r.start and r.end
|
||||
})
|
||||
}
|
||||
```
|
||||
|
||||
#### Options
|
||||
|
||||
These properties are accepted in the options object.
|
||||
|
||||
##### combine
|
||||
|
||||
Specifies if overlapping & adjacent ranges should be combined, defaults to `false`.
|
||||
When `true`, ranges will be combined and returned as if they were specified that
|
||||
way in the header.
|
||||
|
||||
<!-- eslint-disable no-undef -->
|
||||
|
||||
```js
|
||||
parseRange(100, 'bytes=50-55,0-10,5-10,56-60', { combine: true })
|
||||
// => [
|
||||
// { start: 0, end: 10 },
|
||||
// { start: 50, end: 60 }
|
||||
// ]
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
[MIT](LICENSE)
|
||||
|
||||
[coveralls-image]: https://badgen.net/coveralls/c/github/jshttp/range-parser/master
|
||||
[coveralls-url]: https://coveralls.io/r/jshttp/range-parser?branch=master
|
||||
[node-image]: https://badgen.net/npm/node/range-parser
|
||||
[node-url]: https://nodejs.org/en/download
|
||||
[npm-downloads-image]: https://badgen.net/npm/dm/range-parser
|
||||
[npm-url]: https://npmjs.org/package/range-parser
|
||||
[npm-version-image]: https://badgen.net/npm/v/range-parser
|
||||
[travis-image]: https://badgen.net/travis/jshttp/range-parser/master
|
||||
[travis-url]: https://travis-ci.org/jshttp/range-parser
|
162
node_modules/range-parser/index.js
generated
vendored
Normal file
162
node_modules/range-parser/index.js
generated
vendored
Normal file
|
@ -0,0 +1,162 @@
|
|||
/*!
|
||||
* range-parser
|
||||
* Copyright(c) 2012-2014 TJ Holowaychuk
|
||||
* Copyright(c) 2015-2016 Douglas Christopher Wilson
|
||||
* MIT Licensed
|
||||
*/
|
||||
|
||||
'use strict'
|
||||
|
||||
/**
|
||||
* Module exports.
|
||||
* @public
|
||||
*/
|
||||
|
||||
module.exports = rangeParser
|
||||
|
||||
/**
|
||||
* Parse "Range" header `str` relative to the given file `size`.
|
||||
*
|
||||
* @param {Number} size
|
||||
* @param {String} str
|
||||
* @param {Object} [options]
|
||||
* @return {Array}
|
||||
* @public
|
||||
*/
|
||||
|
||||
function rangeParser (size, str, options) {
|
||||
if (typeof str !== 'string') {
|
||||
throw new TypeError('argument str must be a string')
|
||||
}
|
||||
|
||||
var index = str.indexOf('=')
|
||||
|
||||
if (index === -1) {
|
||||
return -2
|
||||
}
|
||||
|
||||
// split the range string
|
||||
var arr = str.slice(index + 1).split(',')
|
||||
var ranges = []
|
||||
|
||||
// add ranges type
|
||||
ranges.type = str.slice(0, index)
|
||||
|
||||
// parse all ranges
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
var range = arr[i].split('-')
|
||||
var start = parseInt(range[0], 10)
|
||||
var end = parseInt(range[1], 10)
|
||||
|
||||
// -nnn
|
||||
if (isNaN(start)) {
|
||||
start = size - end
|
||||
end = size - 1
|
||||
// nnn-
|
||||
} else if (isNaN(end)) {
|
||||
end = size - 1
|
||||
}
|
||||
|
||||
// limit last-byte-pos to current length
|
||||
if (end > size - 1) {
|
||||
end = size - 1
|
||||
}
|
||||
|
||||
// invalid or unsatisifiable
|
||||
if (isNaN(start) || isNaN(end) || start > end || start < 0) {
|
||||
continue
|
||||
}
|
||||
|
||||
// add range
|
||||
ranges.push({
|
||||
start: start,
|
||||
end: end
|
||||
})
|
||||
}
|
||||
|
||||
if (ranges.length < 1) {
|
||||
// unsatisifiable
|
||||
return -1
|
||||
}
|
||||
|
||||
return options && options.combine
|
||||
? combineRanges(ranges)
|
||||
: ranges
|
||||
}
|
||||
|
||||
/**
|
||||
* Combine overlapping & adjacent ranges.
|
||||
* @private
|
||||
*/
|
||||
|
||||
function combineRanges (ranges) {
|
||||
var ordered = ranges.map(mapWithIndex).sort(sortByRangeStart)
|
||||
|
||||
for (var j = 0, i = 1; i < ordered.length; i++) {
|
||||
var range = ordered[i]
|
||||
var current = ordered[j]
|
||||
|
||||
if (range.start > current.end + 1) {
|
||||
// next range
|
||||
ordered[++j] = range
|
||||
} else if (range.end > current.end) {
|
||||
// extend range
|
||||
current.end = range.end
|
||||
current.index = Math.min(current.index, range.index)
|
||||
}
|
||||
}
|
||||
|
||||
// trim ordered array
|
||||
ordered.length = j + 1
|
||||
|
||||
// generate combined range
|
||||
var combined = ordered.sort(sortByRangeIndex).map(mapWithoutIndex)
|
||||
|
||||
// copy ranges type
|
||||
combined.type = ranges.type
|
||||
|
||||
return combined
|
||||
}
|
||||
|
||||
/**
|
||||
* Map function to add index value to ranges.
|
||||
* @private
|
||||
*/
|
||||
|
||||
function mapWithIndex (range, index) {
|
||||
return {
|
||||
start: range.start,
|
||||
end: range.end,
|
||||
index: index
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Map function to remove index value from ranges.
|
||||
* @private
|
||||
*/
|
||||
|
||||
function mapWithoutIndex (range) {
|
||||
return {
|
||||
start: range.start,
|
||||
end: range.end
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sort function to sort ranges by index.
|
||||
* @private
|
||||
*/
|
||||
|
||||
function sortByRangeIndex (a, b) {
|
||||
return a.index - b.index
|
||||
}
|
||||
|
||||
/**
|
||||
* Sort function to sort ranges by start position.
|
||||
* @private
|
||||
*/
|
||||
|
||||
function sortByRangeStart (a, b) {
|
||||
return a.start - b.start
|
||||
}
|
91
node_modules/range-parser/package.json
generated
vendored
Normal file
91
node_modules/range-parser/package.json
generated
vendored
Normal file
|
@ -0,0 +1,91 @@
|
|||
{
|
||||
"_from": "range-parser@~1.2.1",
|
||||
"_id": "range-parser@1.2.1",
|
||||
"_inBundle": false,
|
||||
"_integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
|
||||
"_location": "/range-parser",
|
||||
"_phantomChildren": {},
|
||||
"_requested": {
|
||||
"type": "range",
|
||||
"registry": true,
|
||||
"raw": "range-parser@~1.2.1",
|
||||
"name": "range-parser",
|
||||
"escapedName": "range-parser",
|
||||
"rawSpec": "~1.2.1",
|
||||
"saveSpec": null,
|
||||
"fetchSpec": "~1.2.1"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/express",
|
||||
"/send"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
|
||||
"_shasum": "3cf37023d199e1c24d1a55b84800c2f3e6468031",
|
||||
"_spec": "range-parser@~1.2.1",
|
||||
"_where": "D:\\Documents\\UniWork\\Year 4\\Semester 2\\SEG3125\\Labs\\Lab 6\\Survey_Analysis\\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"
|
||||
},
|
||||
"bundleDependencies": false,
|
||||
"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"
|
||||
}
|
||||
],
|
||||
"deprecated": false,
|
||||
"description": "Range header field string parser",
|
||||
"devDependencies": {
|
||||
"deep-equal": "1.0.1",
|
||||
"eslint": "5.16.0",
|
||||
"eslint-config-standard": "12.0.0",
|
||||
"eslint-plugin-import": "2.17.2",
|
||||
"eslint-plugin-markdown": "1.0.0",
|
||||
"eslint-plugin-node": "8.0.1",
|
||||
"eslint-plugin-promise": "4.1.1",
|
||||
"eslint-plugin-standard": "4.0.0",
|
||||
"mocha": "6.1.4",
|
||||
"nyc": "14.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.6"
|
||||
},
|
||||
"files": [
|
||||
"HISTORY.md",
|
||||
"LICENSE",
|
||||
"index.js"
|
||||
],
|
||||
"homepage": "https://github.com/jshttp/range-parser#readme",
|
||||
"keywords": [
|
||||
"range",
|
||||
"parser",
|
||||
"http"
|
||||
],
|
||||
"license": "MIT",
|
||||
"name": "range-parser",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/jshttp/range-parser.git"
|
||||
},
|
||||
"scripts": {
|
||||
"lint": "eslint --plugin markdown --ext js,md .",
|
||||
"test": "mocha --reporter spec",
|
||||
"test-cov": "nyc --reporter=html --reporter=text npm test",
|
||||
"test-travis": "nyc --reporter=text npm test"
|
||||
},
|
||||
"version": "1.2.1"
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue