├── LICENSE ├── README.md ├── ideas.md ├── node_modules ├── body-parser │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ ├── lib │ │ ├── read.js │ │ └── types │ │ │ ├── json.js │ │ │ ├── raw.js │ │ │ ├── text.js │ │ │ └── urlencoded.js │ ├── node_modules │ │ ├── bytes │ │ │ ├── History.md │ │ │ ├── Readme.md │ │ │ ├── index.js │ │ │ └── package.json │ │ ├── content-type │ │ │ ├── HISTORY.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── index.js │ │ │ └── package.json │ │ ├── debug │ │ │ ├── .jshintrc │ │ │ ├── .npmignore │ │ │ ├── History.md │ │ │ ├── Makefile │ │ │ ├── Readme.md │ │ │ ├── bower.json │ │ │ ├── browser.js │ │ │ ├── component.json │ │ │ ├── debug.js │ │ │ ├── node.js │ │ │ ├── node_modules │ │ │ │ └── ms │ │ │ │ │ ├── .npmignore │ │ │ │ │ ├── History.md │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── README.md │ │ │ │ │ ├── index.js │ │ │ │ │ └── package.json │ │ │ └── package.json │ │ ├── depd │ │ │ ├── History.md │ │ │ ├── LICENSE │ │ │ ├── Readme.md │ │ │ ├── index.js │ │ │ ├── lib │ │ │ │ └── compat │ │ │ │ │ ├── buffer-concat.js │ │ │ │ │ ├── callsite-tostring.js │ │ │ │ │ └── index.js │ │ │ └── package.json │ │ ├── http-errors │ │ │ ├── HISTORY.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── index.js │ │ │ ├── node_modules │ │ │ │ ├── inherits │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── README.md │ │ │ │ │ ├── inherits.js │ │ │ │ │ ├── inherits_browser.js │ │ │ │ │ ├── package.json │ │ │ │ │ └── test.js │ │ │ │ └── statuses │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── README.md │ │ │ │ │ ├── codes.json │ │ │ │ │ ├── index.js │ │ │ │ │ └── package.json │ │ │ └── package.json │ │ ├── iconv-lite │ │ │ ├── .npmignore │ │ │ ├── .travis.yml │ │ │ ├── Changelog.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── encodings │ │ │ │ ├── dbcs-codec.js │ │ │ │ ├── dbcs-data.js │ │ │ │ ├── index.js │ │ │ │ ├── internal.js │ │ │ │ ├── sbcs-codec.js │ │ │ │ ├── sbcs-data-generated.js │ │ │ │ ├── sbcs-data.js │ │ │ │ ├── tables │ │ │ │ │ ├── big5-added.json │ │ │ │ │ ├── cp936.json │ │ │ │ │ ├── cp949.json │ │ │ │ │ ├── cp950.json │ │ │ │ │ ├── eucjp.json │ │ │ │ │ ├── gb18030-ranges.json │ │ │ │ │ ├── gbk-added.json │ │ │ │ │ └── shiftjis.json │ │ │ │ ├── utf16.js │ │ │ │ └── utf7.js │ │ │ ├── lib │ │ │ │ ├── bom-handling.js │ │ │ │ ├── extend-node.js │ │ │ │ ├── index.js │ │ │ │ └── streams.js │ │ │ └── package.json │ │ ├── on-finished │ │ │ ├── HISTORY.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── index.js │ │ │ ├── node_modules │ │ │ │ └── ee-first │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── README.md │ │ │ │ │ ├── index.js │ │ │ │ │ └── package.json │ │ │ └── package.json │ │ ├── qs │ │ │ ├── .jshintignore │ │ │ ├── .jshintrc │ │ │ ├── .npmignore │ │ │ ├── .travis.yml │ │ │ ├── CHANGELOG.md │ │ │ ├── CONTRIBUTING.md │ │ │ ├── LICENSE │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── index.js │ │ │ ├── lib │ │ │ │ ├── index.js │ │ │ │ ├── parse.js │ │ │ │ ├── stringify.js │ │ │ │ └── utils.js │ │ │ ├── package.json │ │ │ └── test │ │ │ │ ├── parse.js │ │ │ │ └── stringify.js │ │ ├── raw-body │ │ │ ├── HISTORY.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── index.js │ │ │ ├── node_modules │ │ │ │ └── unpipe │ │ │ │ │ ├── HISTORY.md │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── README.md │ │ │ │ │ ├── index.js │ │ │ │ │ └── package.json │ │ │ └── package.json │ │ └── type-is │ │ │ ├── HISTORY.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── index.js │ │ │ ├── node_modules │ │ │ ├── media-typer │ │ │ │ ├── HISTORY.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ │ └── mime-types │ │ │ │ ├── HISTORY.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ ├── node_modules │ │ │ │ └── mime-db │ │ │ │ │ ├── HISTORY.md │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── README.md │ │ │ │ │ ├── db.json │ │ │ │ │ ├── index.js │ │ │ │ │ └── package.json │ │ │ │ └── package.json │ │ │ └── package.json │ └── package.json └── express │ ├── History.md │ ├── LICENSE │ ├── Readme.md │ ├── index.js │ ├── lib │ ├── application.js │ ├── express.js │ ├── middleware │ │ ├── init.js │ │ └── query.js │ ├── request.js │ ├── response.js │ ├── router │ │ ├── index.js │ │ ├── layer.js │ │ └── route.js │ ├── utils.js │ └── view.js │ ├── node_modules │ ├── accepts │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── node_modules │ │ │ ├── mime-types │ │ │ │ ├── HISTORY.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ ├── node_modules │ │ │ │ │ └── mime-db │ │ │ │ │ │ ├── HISTORY.md │ │ │ │ │ │ ├── LICENSE │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── db.json │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ └── package.json │ │ │ └── negotiator │ │ │ │ ├── HISTORY.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ ├── lib │ │ │ │ ├── charset.js │ │ │ │ ├── encoding.js │ │ │ │ ├── language.js │ │ │ │ └── mediaType.js │ │ │ │ └── package.json │ │ └── package.json │ ├── array-flatten │ │ ├── LICENSE │ │ ├── README.md │ │ ├── array-flatten.js │ │ └── package.json │ ├── content-disposition │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── content-type │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── cookie-signature │ │ ├── .npmignore │ │ ├── History.md │ │ ├── Readme.md │ │ ├── index.js │ │ └── package.json │ ├── cookie │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── debug │ │ ├── .jshintrc │ │ ├── .npmignore │ │ ├── History.md │ │ ├── Makefile │ │ ├── Readme.md │ │ ├── bower.json │ │ ├── browser.js │ │ ├── component.json │ │ ├── debug.js │ │ ├── node.js │ │ ├── node_modules │ │ │ └── ms │ │ │ │ ├── .npmignore │ │ │ │ ├── History.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ └── package.json │ ├── depd │ │ ├── History.md │ │ ├── LICENSE │ │ ├── Readme.md │ │ ├── index.js │ │ ├── lib │ │ │ └── compat │ │ │ │ ├── buffer-concat.js │ │ │ │ ├── callsite-tostring.js │ │ │ │ └── index.js │ │ └── package.json │ ├── escape-html │ │ ├── LICENSE │ │ ├── Readme.md │ │ ├── index.js │ │ └── package.json │ ├── etag │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── finalhandler │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── node_modules │ │ │ └── unpipe │ │ │ │ ├── HISTORY.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ └── package.json │ ├── fresh │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── merge-descriptors │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── methods │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── on-finished │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── node_modules │ │ │ └── ee-first │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ └── package.json │ ├── parseurl │ │ ├── .npmignore │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── path-to-regexp │ │ ├── History.md │ │ ├── LICENSE │ │ ├── Readme.md │ │ ├── index.js │ │ └── package.json │ ├── proxy-addr │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── node_modules │ │ │ ├── forwarded │ │ │ │ ├── HISTORY.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ │ └── ipaddr.js │ │ │ │ ├── .npmignore │ │ │ │ ├── Cakefile │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── ipaddr.min.js │ │ │ │ ├── lib │ │ │ │ └── ipaddr.js │ │ │ │ ├── package.json │ │ │ │ ├── src │ │ │ │ └── ipaddr.coffee │ │ │ │ └── test │ │ │ │ └── ipaddr.test.coffee │ │ └── package.json │ ├── qs │ │ ├── .jshintignore │ │ ├── .jshintrc │ │ ├── .npmignore │ │ ├── .travis.yml │ │ ├── CHANGELOG.md │ │ ├── CONTRIBUTING.md │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── README.md │ │ ├── index.js │ │ ├── lib │ │ │ ├── index.js │ │ │ ├── parse.js │ │ │ ├── stringify.js │ │ │ └── utils.js │ │ ├── package.json │ │ └── test │ │ │ ├── parse.js │ │ │ └── stringify.js │ ├── range-parser │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── send │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── node_modules │ │ │ ├── .bin │ │ │ │ └── mime │ │ │ ├── destroy │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ │ ├── http-errors │ │ │ │ ├── HISTORY.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ ├── node_modules │ │ │ │ │ └── inherits │ │ │ │ │ │ ├── LICENSE │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── inherits.js │ │ │ │ │ │ ├── inherits_browser.js │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ └── test.js │ │ │ │ └── package.json │ │ │ ├── mime │ │ │ │ ├── .npmignore │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── build │ │ │ │ │ ├── build.js │ │ │ │ │ └── test.js │ │ │ │ ├── cli.js │ │ │ │ ├── mime.js │ │ │ │ ├── package.json │ │ │ │ └── types.json │ │ │ ├── ms │ │ │ │ ├── .npmignore │ │ │ │ ├── History.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ │ └── statuses │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── codes.json │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ └── package.json │ ├── serve-static │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── type-is │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── node_modules │ │ │ ├── media-typer │ │ │ │ ├── HISTORY.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ │ └── mime-types │ │ │ │ ├── HISTORY.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ ├── node_modules │ │ │ │ └── mime-db │ │ │ │ │ ├── HISTORY.md │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── README.md │ │ │ │ │ ├── db.json │ │ │ │ │ ├── index.js │ │ │ │ │ └── package.json │ │ │ │ └── package.json │ │ └── package.json │ ├── utils-merge │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ └── vary │ │ ├── .npmignore │ │ ├── History.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ └── package.json ├── olap ├── a1.txt ├── a2.txt ├── a3.txt ├── a4.txt ├── a5.txt ├── a6.txt ├── a7.txt ├── a8.txt ├── a9.txt ├── discover.txt ├── olap.js ├── open.txt ├── q1.txt ├── q2.txt ├── q3.txt ├── q4.txt ├── q5.txt ├── q6.txt ├── q7.txt ├── q8.txt └── q9.txt ├── public ├── css │ ├── ajax-loader.gif │ ├── bgleft1.png │ ├── bgtop3.png │ ├── default.css │ ├── logo16x16.png │ ├── logo80x58.png │ └── pivot-table.css ├── defaultXmlaUrl.js ├── disc.html ├── index.html ├── index.mock.html ├── js │ ├── .jshintrc │ ├── Xmla.js │ ├── css │ │ ├── arrow-left-g.png │ │ ├── arrow-left.png │ │ ├── arrow-left32-g.png │ │ ├── arrow-left32.png │ │ ├── arrow-right-g.png │ │ ├── arrow-right.png │ │ ├── arrow-right32-g.png │ │ ├── arrow-right32.png │ │ ├── bin1.png │ │ ├── bin2.png │ │ ├── cube-g.png │ │ ├── cube.png │ │ ├── dimension-g.png │ │ ├── dimension-time-g.png │ │ ├── dimension-time.png │ │ ├── dimension.png │ │ ├── filter-g.png │ │ ├── filter.png │ │ ├── gcan.png │ │ ├── hierarchy-g.png │ │ ├── hierarchy.png │ │ ├── jqCube.css │ │ ├── level00-g.png │ │ ├── level00.png │ │ ├── level01-g.png │ │ ├── level01.png │ │ ├── level02-g.png │ │ ├── level02.png │ │ ├── level03-g.png │ │ ├── level03.png │ │ ├── level04-g.png │ │ ├── level04.png │ │ ├── level05-g.png │ │ ├── level05.png │ │ ├── level06-g.png │ │ ├── level06.png │ │ ├── level07-g.png │ │ ├── level07.png │ │ ├── level08-g.png │ │ ├── level08.png │ │ ├── level09-g.png │ │ ├── level09.png │ │ ├── level10-g.png │ │ ├── level10.png │ │ ├── level12-g.png │ │ ├── level12.png │ │ ├── level13-g.png │ │ ├── level13.png │ │ ├── level14-g.png │ │ ├── level14.png │ │ ├── level15-g.png │ │ ├── level15.png │ │ ├── level16-g.png │ │ ├── level16.png │ │ ├── measure-g.png │ │ ├── measure.png │ │ ├── measures-g.png │ │ ├── measures.png │ │ ├── no.png │ │ ├── save-g.png │ │ ├── save.png │ │ ├── save32-g.png │ │ ├── save32.png │ │ ├── snd-g.png │ │ ├── snd.png │ │ ├── snd32-g.png │ │ ├── snd32.png │ │ ├── sort1.png │ │ ├── sort2.png │ │ ├── sort3.png │ │ ├── sort32-g.png │ │ ├── sort32.png │ │ ├── sort4.png │ │ ├── spinner.gif │ │ ├── xls32.png │ │ ├── xlsx32-g.png │ │ ├── xlsx32.png │ │ └── yes.png │ ├── jqCube-1.0.0.js │ ├── jqCube-hr-HR.js │ ├── jquery-2.1.4.min.js │ ├── jquery-ui.css │ ├── jquery-ui.js │ ├── jquery.mockjax.js │ ├── jstree │ │ ├── jquery.jstree.js │ │ └── themes │ │ │ └── jqcube │ │ │ ├── d.gif │ │ │ ├── d.png │ │ │ ├── style.css │ │ │ └── throbber.gif │ └── mocks.js └── rows.html └── sample-server.js /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Andrey Gershun 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # OLAP.js 2 | 3 | JavaScript Online Analytical Processing server and library for browser and Node.js 4 | 5 | (c) 2015 Andrey Gershun (agershun@gmail.com) 6 | 7 | **Work in progress!** 8 | 9 | ## Express OLAP server 10 | 11 | ```js 12 | var olap = require('olap'); 13 | olap.xmla(); 14 | olap 15 | olap.execute(mdx); 16 | ``` 17 | 18 | ## XMLA Interface 19 | 20 | ```js 21 | var res = olap.xmla(xmla); 22 | ``` 23 | Here olap.js returns XML data with result. 24 | 25 | ## JSON Interface 26 | 27 | Discover cubes 28 | ```js 29 | var res = olap.cubes(); 30 | ``` 31 | 32 | Discover measures from the cube: 33 | ```js 34 | var res = olap.measures(cube); 35 | ``` 36 | 37 | Discover measure members: 38 | ```js 39 | var res = olap.levelmember(cube,measure); 40 | ``` 41 | 42 | Execute MDX query: 43 | ```js 44 | var res = olap.mdx(mdx); 45 | ``` 46 | 47 | ## Cube description 48 | 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /node_modules/body-parser/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Jonathan Ong 4 | Copyright (c) 2014-2015 Douglas Christopher Wilson 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining 7 | a copy of this software and associated documentation files (the 8 | 'Software'), to deal in the Software without restriction, including 9 | without limitation the rights to use, copy, modify, merge, publish, 10 | distribute, sublicense, and/or sell copies of the Software, and to 11 | permit persons to whom the Software is furnished to do so, subject to 12 | the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be 15 | included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 18 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 19 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 20 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 21 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 22 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 23 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/bytes/History.md: -------------------------------------------------------------------------------- 1 | 2.1.0 / 2015-05-21 2 | ================== 3 | 4 | * add `.format` export 5 | * add `.parse` export 6 | 7 | 2.0.2 / 2015-05-20 8 | ================== 9 | 10 | * remove map recreation 11 | * remove unnecessary object construction 12 | 13 | 2.0.1 / 2015-05-07 14 | ================== 15 | 16 | * fix browserify require 17 | * remove node.extend dependency 18 | 19 | 2.0.0 / 2015-04-12 20 | ================== 21 | 22 | * add option "case" 23 | * add option "thousandsSeparator" 24 | * return "null" on invalid parse input 25 | * support proper round-trip: bytes(bytes(num)) === num 26 | * units no longer case sensitive when parsing 27 | 28 | 1.0.0 / 2014-05-05 29 | ================== 30 | 31 | * add negative support. fixes #6 32 | 33 | 0.3.0 / 2014-03-19 34 | ================== 35 | 36 | * added terabyte support 37 | 38 | 0.2.1 / 2013-04-01 39 | ================== 40 | 41 | * add .component 42 | 43 | 0.2.0 / 2012-10-28 44 | ================== 45 | 46 | * bytes(200).should.eql('200b') 47 | 48 | 0.1.0 / 2012-07-04 49 | ================== 50 | 51 | * add bytes to string conversion [yields] 52 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/content-type/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.1 / 2015-02-13 2 | ================== 3 | 4 | * Improve missing `Content-Type` header error message 5 | 6 | 1.0.0 / 2015-02-01 7 | ================== 8 | 9 | * Initial implementation, derived from `media-typer@0.3.0` 10 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/content-type/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2015 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/debug/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "laxbreak": true 3 | } 4 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/debug/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | example 5 | *.sock 6 | dist 7 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/debug/Makefile: -------------------------------------------------------------------------------- 1 | 2 | # get Makefile directory name: http://stackoverflow.com/a/5982798/376773 3 | THIS_MAKEFILE_PATH:=$(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST)) 4 | THIS_DIR:=$(shell cd $(dir $(THIS_MAKEFILE_PATH));pwd) 5 | 6 | # BIN directory 7 | BIN := $(THIS_DIR)/node_modules/.bin 8 | 9 | # applications 10 | NODE ?= $(shell which node) 11 | NPM ?= $(NODE) $(shell which npm) 12 | BROWSERIFY ?= $(NODE) $(BIN)/browserify 13 | 14 | all: dist/debug.js 15 | 16 | install: node_modules 17 | 18 | clean: 19 | @rm -rf dist 20 | 21 | dist: 22 | @mkdir -p $@ 23 | 24 | dist/debug.js: node_modules browser.js debug.js dist 25 | @$(BROWSERIFY) \ 26 | --standalone debug \ 27 | . > $@ 28 | 29 | distclean: clean 30 | @rm -rf node_modules 31 | 32 | node_modules: package.json 33 | @NODE_ENV= $(NPM) install 34 | @touch node_modules 35 | 36 | .PHONY: all install clean distclean 37 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/debug/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "visionmedia-debug", 3 | "main": "dist/debug.js", 4 | "version": "2.2.0", 5 | "homepage": "https://github.com/visionmedia/debug", 6 | "authors": [ 7 | "TJ Holowaychuk " 8 | ], 9 | "description": "visionmedia-debug", 10 | "moduleType": [ 11 | "amd", 12 | "es6", 13 | "globals", 14 | "node" 15 | ], 16 | "keywords": [ 17 | "visionmedia", 18 | "debug" 19 | ], 20 | "license": "MIT", 21 | "ignore": [ 22 | "**/.*", 23 | "node_modules", 24 | "bower_components", 25 | "test", 26 | "tests" 27 | ] 28 | } 29 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/debug/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "debug", 3 | "repo": "visionmedia/debug", 4 | "description": "small debugging utility", 5 | "version": "2.2.0", 6 | "keywords": [ 7 | "debug", 8 | "log", 9 | "debugger" 10 | ], 11 | "main": "browser.js", 12 | "scripts": [ 13 | "browser.js", 14 | "debug.js" 15 | ], 16 | "dependencies": { 17 | "rauchg/ms.js": "0.7.1" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/debug/node_modules/ms/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | test 3 | History.md 4 | Makefile 5 | component.json 6 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/debug/node_modules/ms/History.md: -------------------------------------------------------------------------------- 1 | 2 | 0.7.1 / 2015-04-20 3 | ================== 4 | 5 | * prevent extraordinary long inputs (@evilpacket) 6 | * Fixed broken readme link 7 | 8 | 0.7.0 / 2014-11-24 9 | ================== 10 | 11 | * add time abbreviations, updated tests and readme for the new units 12 | * fix example in the readme. 13 | * add LICENSE file 14 | 15 | 0.6.2 / 2013-12-05 16 | ================== 17 | 18 | * Adding repository section to package.json to suppress warning from NPM. 19 | 20 | 0.6.1 / 2013-05-10 21 | ================== 22 | 23 | * fix singularization [visionmedia] 24 | 25 | 0.6.0 / 2013-03-15 26 | ================== 27 | 28 | * fix minutes 29 | 30 | 0.5.1 / 2013-02-24 31 | ================== 32 | 33 | * add component namespace 34 | 35 | 0.5.0 / 2012-11-09 36 | ================== 37 | 38 | * add short formatting as default and .long option 39 | * add .license property to component.json 40 | * add version to component.json 41 | 42 | 0.4.0 / 2012-10-22 43 | ================== 44 | 45 | * add rounding to fix crazy decimals 46 | 47 | 0.3.0 / 2012-09-07 48 | ================== 49 | 50 | * fix `ms()` [visionmedia] 51 | 52 | 0.2.0 / 2012-09-03 53 | ================== 54 | 55 | * add component.json [visionmedia] 56 | * add days support [visionmedia] 57 | * add hours support [visionmedia] 58 | * add minutes support [visionmedia] 59 | * add seconds support [visionmedia] 60 | * add ms string support [visionmedia] 61 | * refactor tests to facilitate ms(number) [visionmedia] 62 | 63 | 0.1.0 / 2012-03-07 64 | ================== 65 | 66 | * Initial release 67 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/debug/node_modules/ms/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Guillermo Rauch 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/debug/node_modules/ms/README.md: -------------------------------------------------------------------------------- 1 | # ms.js: miliseconds conversion utility 2 | 3 | ```js 4 | ms('2 days') // 172800000 5 | ms('1d') // 86400000 6 | ms('10h') // 36000000 7 | ms('2.5 hrs') // 9000000 8 | ms('2h') // 7200000 9 | ms('1m') // 60000 10 | ms('5s') // 5000 11 | ms('100') // 100 12 | ``` 13 | 14 | ```js 15 | ms(60000) // "1m" 16 | ms(2 * 60000) // "2m" 17 | ms(ms('10 hours')) // "10h" 18 | ``` 19 | 20 | ```js 21 | ms(60000, { long: true }) // "1 minute" 22 | ms(2 * 60000, { long: true }) // "2 minutes" 23 | ms(ms('10 hours'), { long: true }) // "10 hours" 24 | ``` 25 | 26 | - Node/Browser compatible. Published as [`ms`](https://www.npmjs.org/package/ms) in [NPM](http://nodejs.org/download). 27 | - If a number is supplied to `ms`, a string with a unit is returned. 28 | - If a string that contains the number is supplied, it returns it as 29 | a number (e.g: it returns `100` for `'100'`). 30 | - If you pass a string with a number and a valid unit, the number of 31 | equivalent ms is returned. 32 | 33 | ## License 34 | 35 | MIT 36 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/debug/node_modules/ms/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ms", 3 | "version": "0.7.1", 4 | "description": "Tiny ms conversion utility", 5 | "repository": { 6 | "type": "git", 7 | "url": "git://github.com/guille/ms.js.git" 8 | }, 9 | "main": "./index", 10 | "devDependencies": { 11 | "mocha": "*", 12 | "expect.js": "*", 13 | "serve": "*" 14 | }, 15 | "component": { 16 | "scripts": { 17 | "ms/index.js": "index.js" 18 | } 19 | }, 20 | "gitHead": "713dcf26d9e6fd9dbc95affe7eff9783b7f1b909", 21 | "bugs": { 22 | "url": "https://github.com/guille/ms.js/issues" 23 | }, 24 | "homepage": "https://github.com/guille/ms.js", 25 | "_id": "ms@0.7.1", 26 | "scripts": {}, 27 | "_shasum": "9cd13c03adbff25b65effde7ce864ee952017098", 28 | "_from": "ms@0.7.1", 29 | "_npmVersion": "2.7.5", 30 | "_nodeVersion": "0.12.2", 31 | "_npmUser": { 32 | "name": "rauchg", 33 | "email": "rauchg@gmail.com" 34 | }, 35 | "maintainers": [ 36 | { 37 | "name": "rauchg", 38 | "email": "rauchg@gmail.com" 39 | } 40 | ], 41 | "dist": { 42 | "shasum": "9cd13c03adbff25b65effde7ce864ee952017098", 43 | "tarball": "http://registry.npmjs.org/ms/-/ms-0.7.1.tgz" 44 | }, 45 | "directories": {}, 46 | "_resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", 47 | "readme": "ERROR: No README data found!" 48 | } 49 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/depd/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/depd/lib/compat/buffer-concat.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * depd 3 | * Copyright(c) 2014 Douglas Christopher Wilson 4 | * MIT Licensed 5 | */ 6 | 7 | /** 8 | * Module exports. 9 | */ 10 | 11 | module.exports = bufferConcat 12 | 13 | /** 14 | * Concatenate an array of Buffers. 15 | */ 16 | 17 | function bufferConcat(bufs) { 18 | var length = 0 19 | 20 | for (var i = 0, len = bufs.length; i < len; i++) { 21 | length += bufs[i].length 22 | } 23 | 24 | var buf = new Buffer(length) 25 | var pos = 0 26 | 27 | for (var i = 0, len = bufs.length; i < len; i++) { 28 | bufs[i].copy(buf, pos) 29 | pos += bufs[i].length 30 | } 31 | 32 | return buf 33 | } 34 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/depd/lib/compat/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * depd 3 | * Copyright(c) 2014 Douglas Christopher Wilson 4 | * MIT Licensed 5 | */ 6 | 7 | /** 8 | * Module exports. 9 | */ 10 | 11 | lazyProperty(module.exports, 'bufferConcat', function bufferConcat() { 12 | return Buffer.concat || require('./buffer-concat') 13 | }) 14 | 15 | lazyProperty(module.exports, 'callSiteToString', function callSiteToString() { 16 | var limit = Error.stackTraceLimit 17 | var obj = {} 18 | var prep = Error.prepareStackTrace 19 | 20 | function prepareObjectStackTrace(obj, stack) { 21 | return stack 22 | } 23 | 24 | Error.prepareStackTrace = prepareObjectStackTrace 25 | Error.stackTraceLimit = 2 26 | 27 | // capture the stack 28 | Error.captureStackTrace(obj) 29 | 30 | // slice the stack 31 | var stack = obj.stack.slice() 32 | 33 | Error.prepareStackTrace = prep 34 | Error.stackTraceLimit = limit 35 | 36 | return stack[0].toString ? toString : require('./callsite-tostring') 37 | }) 38 | 39 | /** 40 | * Define a lazy property. 41 | */ 42 | 43 | function lazyProperty(obj, prop, getter) { 44 | function get() { 45 | var val = getter() 46 | 47 | Object.defineProperty(obj, prop, { 48 | configurable: true, 49 | enumerable: true, 50 | value: val 51 | }) 52 | 53 | return val 54 | } 55 | 56 | Object.defineProperty(obj, prop, { 57 | configurable: true, 58 | enumerable: true, 59 | get: get 60 | }) 61 | } 62 | 63 | /** 64 | * Call toString() on the obj 65 | */ 66 | 67 | function toString(obj) { 68 | return obj.toString() 69 | } 70 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/http-errors/HISTORY.md: -------------------------------------------------------------------------------- 1 | 2015-02-02 / 1.3.1 2 | ================== 3 | 4 | * Fix regression where status can be overwritten in `createError` `props` 5 | 6 | 2015-02-01 / 1.3.0 7 | ================== 8 | 9 | * Construct errors using defined constructors from `createError` 10 | * Fix error names that are not identifiers 11 | - `createError["I'mateapot"]` is now `createError.ImATeapot` 12 | * Set a meaningful `name` property on constructed errors 13 | 14 | 2014-12-09 / 1.2.8 15 | ================== 16 | 17 | * Fix stack trace from exported function 18 | * Remove `arguments.callee` usage 19 | 20 | 2014-10-14 / 1.2.7 21 | ================== 22 | 23 | * Remove duplicate line 24 | 25 | 2014-10-02 / 1.2.6 26 | ================== 27 | 28 | * Fix `expose` to be `true` for `ClientError` constructor 29 | 30 | 2014-09-28 / 1.2.5 31 | ================== 32 | 33 | * deps: statuses@1 34 | 35 | 2014-09-21 / 1.2.4 36 | ================== 37 | 38 | * Fix dependency version to work with old `npm`s 39 | 40 | 2014-09-21 / 1.2.3 41 | ================== 42 | 43 | * deps: statuses@~1.1.0 44 | 45 | 2014-09-21 / 1.2.2 46 | ================== 47 | 48 | * Fix publish error 49 | 50 | 2014-09-21 / 1.2.1 51 | ================== 52 | 53 | * Support Node.js 0.6 54 | * Use `inherits` instead of `util` 55 | 56 | 2014-09-09 / 1.2.0 57 | ================== 58 | 59 | * Fix the way inheriting functions 60 | * Support `expose` being provided in properties argument 61 | 62 | 2014-09-08 / 1.1.0 63 | ================== 64 | 65 | * Default status to 500 66 | * Support provided `error` to extend 67 | 68 | 2014-09-08 / 1.0.1 69 | ================== 70 | 71 | * Fix accepting string message 72 | 73 | 2014-09-08 / 1.0.0 74 | ================== 75 | 76 | * Initial release 77 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/http-errors/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | The MIT License (MIT) 3 | 4 | Copyright (c) 2014 Jonathan Ong me@jongleberry.com 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/http-errors/node_modules/inherits/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH 10 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND 11 | FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, 12 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 13 | LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR 14 | OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 15 | PERFORMANCE OF THIS SOFTWARE. 16 | 17 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/http-errors/node_modules/inherits/inherits.js: -------------------------------------------------------------------------------- 1 | module.exports = require('util').inherits 2 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/http-errors/node_modules/inherits/inherits_browser.js: -------------------------------------------------------------------------------- 1 | if (typeof Object.create === 'function') { 2 | // implementation from standard node.js 'util' module 3 | module.exports = function inherits(ctor, superCtor) { 4 | ctor.super_ = superCtor 5 | ctor.prototype = Object.create(superCtor.prototype, { 6 | constructor: { 7 | value: ctor, 8 | enumerable: false, 9 | writable: true, 10 | configurable: true 11 | } 12 | }); 13 | }; 14 | } else { 15 | // old school shim for old browsers 16 | module.exports = function inherits(ctor, superCtor) { 17 | ctor.super_ = superCtor 18 | var TempCtor = function () {} 19 | TempCtor.prototype = superCtor.prototype 20 | ctor.prototype = new TempCtor() 21 | ctor.prototype.constructor = ctor 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/http-errors/node_modules/inherits/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "inherits", 3 | "description": "Browser-friendly inheritance fully compatible with standard node.js inherits()", 4 | "version": "2.0.1", 5 | "keywords": [ 6 | "inheritance", 7 | "class", 8 | "klass", 9 | "oop", 10 | "object-oriented", 11 | "inherits", 12 | "browser", 13 | "browserify" 14 | ], 15 | "main": "./inherits.js", 16 | "browser": "./inherits_browser.js", 17 | "repository": { 18 | "type": "git", 19 | "url": "git://github.com/isaacs/inherits.git" 20 | }, 21 | "license": "ISC", 22 | "scripts": { 23 | "test": "node test" 24 | }, 25 | "bugs": { 26 | "url": "https://github.com/isaacs/inherits/issues" 27 | }, 28 | "_id": "inherits@2.0.1", 29 | "dist": { 30 | "shasum": "b17d08d326b4423e568eff719f91b0b1cbdf69f1", 31 | "tarball": "http://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" 32 | }, 33 | "_from": "inherits@>=2.0.1 <2.1.0", 34 | "_npmVersion": "1.3.8", 35 | "_npmUser": { 36 | "name": "isaacs", 37 | "email": "i@izs.me" 38 | }, 39 | "maintainers": [ 40 | { 41 | "name": "isaacs", 42 | "email": "i@izs.me" 43 | } 44 | ], 45 | "directories": {}, 46 | "_shasum": "b17d08d326b4423e568eff719f91b0b1cbdf69f1", 47 | "_resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", 48 | "readme": "ERROR: No README data found!", 49 | "homepage": "https://github.com/isaacs/inherits#readme" 50 | } 51 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/http-errors/node_modules/inherits/test.js: -------------------------------------------------------------------------------- 1 | var inherits = require('./inherits.js') 2 | var assert = require('assert') 3 | 4 | function test(c) { 5 | assert(c.constructor === Child) 6 | assert(c.constructor.super_ === Parent) 7 | assert(Object.getPrototypeOf(c) === Child.prototype) 8 | assert(Object.getPrototypeOf(Object.getPrototypeOf(c)) === Parent.prototype) 9 | assert(c instanceof Child) 10 | assert(c instanceof Parent) 11 | } 12 | 13 | function Child() { 14 | Parent.call(this) 15 | test(this) 16 | } 17 | 18 | function Parent() {} 19 | 20 | inherits(Child, Parent) 21 | 22 | var c = new Child 23 | test(c) 24 | 25 | console.log('ok') 26 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/http-errors/node_modules/statuses/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | The MIT License (MIT) 3 | 4 | Copyright (c) 2014 Jonathan Ong me@jongleberry.com 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/http-errors/node_modules/statuses/index.js: -------------------------------------------------------------------------------- 1 | 2 | var codes = require('./codes.json'); 3 | 4 | module.exports = status; 5 | 6 | // [Integer...] 7 | status.codes = Object.keys(codes).map(function (code) { 8 | code = ~~code; 9 | var msg = codes[code]; 10 | status[code] = msg; 11 | status[msg] = status[msg.toLowerCase()] = code; 12 | return code; 13 | }); 14 | 15 | // status codes for redirects 16 | status.redirect = { 17 | 300: true, 18 | 301: true, 19 | 302: true, 20 | 303: true, 21 | 305: true, 22 | 307: true, 23 | 308: true, 24 | }; 25 | 26 | // status codes for empty bodies 27 | status.empty = { 28 | 204: true, 29 | 205: true, 30 | 304: true, 31 | }; 32 | 33 | // status codes for when you should retry the request 34 | status.retry = { 35 | 502: true, 36 | 503: true, 37 | 504: true, 38 | }; 39 | 40 | function status(code) { 41 | if (typeof code === 'number') { 42 | if (!status[code]) throw new Error('invalid status code: ' + code); 43 | return code; 44 | } 45 | 46 | if (typeof code !== 'string') { 47 | throw new TypeError('code must be a number or string'); 48 | } 49 | 50 | // '403' 51 | var n = parseInt(code, 10) 52 | if (!isNaN(n)) { 53 | if (!status[n]) throw new Error('invalid status code: ' + n); 54 | return n; 55 | } 56 | 57 | n = status[code.toLowerCase()]; 58 | if (!n) throw new Error('invalid status message: "' + code + '"'); 59 | return n; 60 | } 61 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/iconv-lite/.npmignore: -------------------------------------------------------------------------------- 1 | *~ 2 | *sublime-* 3 | generation 4 | test 5 | wiki 6 | coverage 7 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/iconv-lite/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "0.8" 4 | - "0.10" 5 | - "0.11" 6 | - "0.12" 7 | - "iojs" 8 | 9 | before_install: 10 | - "test $TRAVIS_NODE_VERSION != '0.8' || npm install -g npm@1.2.8000" 11 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/iconv-lite/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2011 Alexander Shtuchkin 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining 4 | a copy of this software and associated documentation files (the 5 | "Software"), to deal in the Software without restriction, including 6 | without limitation the rights to use, copy, modify, merge, publish, 7 | distribute, sublicense, and/or sell copies of the Software, and to 8 | permit persons to whom the Software is furnished to do so, subject to 9 | the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be 12 | included in all copies or substantial portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 15 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 16 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 17 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 18 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 19 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 20 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | 22 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/iconv-lite/encodings/index.js: -------------------------------------------------------------------------------- 1 | "use strict" 2 | 3 | // Update this array if you add/rename/remove files in this directory. 4 | // We support Browserify by skipping automatic module discovery and requiring modules directly. 5 | var modules = [ 6 | require("./internal"), 7 | require("./utf16"), 8 | require("./utf7"), 9 | require("./sbcs-codec"), 10 | require("./sbcs-data"), 11 | require("./sbcs-data-generated"), 12 | require("./dbcs-codec"), 13 | require("./dbcs-data"), 14 | ]; 15 | 16 | // Put all encoding/alias/codec definitions to single object and export it. 17 | for (var i = 0; i < modules.length; i++) { 18 | var module = modules[i]; 19 | for (var enc in module) 20 | if (Object.prototype.hasOwnProperty.call(module, enc)) 21 | exports[enc] = module[enc]; 22 | } 23 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/iconv-lite/encodings/tables/gbk-added.json: -------------------------------------------------------------------------------- 1 | [ 2 | ["a140","",62], 3 | ["a180","",32], 4 | ["a240","",62], 5 | ["a280","",32], 6 | ["a2ab","",5], 7 | ["a2e3","€"], 8 | ["a2ef",""], 9 | ["a2fd",""], 10 | ["a340","",62], 11 | ["a380","",31," "], 12 | ["a440","",62], 13 | ["a480","",32], 14 | ["a4f4","",10], 15 | ["a540","",62], 16 | ["a580","",32], 17 | ["a5f7","",7], 18 | ["a640","",62], 19 | ["a680","",32], 20 | ["a6b9","",7], 21 | ["a6d9","",6], 22 | ["a6ec",""], 23 | ["a6f3",""], 24 | ["a6f6","",8], 25 | ["a740","",62], 26 | ["a780","",32], 27 | ["a7c2","",14], 28 | ["a7f2","",12], 29 | ["a896","",10], 30 | ["a8bc",""], 31 | ["a8bf","ǹ"], 32 | ["a8c1",""], 33 | ["a8ea","",20], 34 | ["a958",""], 35 | ["a95b",""], 36 | ["a95d",""], 37 | ["a989","〾⿰",11], 38 | ["a997","",12], 39 | ["a9f0","",14], 40 | ["aaa1","",93], 41 | ["aba1","",93], 42 | ["aca1","",93], 43 | ["ada1","",93], 44 | ["aea1","",93], 45 | ["afa1","",93], 46 | ["d7fa","",4], 47 | ["f8a1","",93], 48 | ["f9a1","",93], 49 | ["faa1","",93], 50 | ["fba1","",93], 51 | ["fca1","",93], 52 | ["fda1","",93], 53 | ["fe50","⺁⺄㑳㑇⺈⺋㖞㘚㘎⺌⺗㥮㤘㧏㧟㩳㧐㭎㱮㳠⺧⺪䁖䅟⺮䌷⺳⺶⺷䎱䎬⺻䏝䓖䙡䙌"], 54 | ["fe80","䜣䜩䝼䞍⻊䥇䥺䥽䦂䦃䦅䦆䦟䦛䦷䦶䲣䲟䲠䲡䱷䲢䴓",6,"䶮",93] 55 | ] 56 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/iconv-lite/lib/bom-handling.js: -------------------------------------------------------------------------------- 1 | "use strict" 2 | 3 | var BOMChar = '\uFEFF'; 4 | 5 | exports.PrependBOM = PrependBOMWrapper 6 | function PrependBOMWrapper(encoder, options) { 7 | this.encoder = encoder; 8 | this.addBOM = true; 9 | } 10 | 11 | PrependBOMWrapper.prototype.write = function(str) { 12 | if (this.addBOM) { 13 | str = BOMChar + str; 14 | this.addBOM = false; 15 | } 16 | 17 | return this.encoder.write(str); 18 | } 19 | 20 | PrependBOMWrapper.prototype.end = function() { 21 | return this.encoder.end(); 22 | } 23 | 24 | 25 | //------------------------------------------------------------------------------ 26 | 27 | exports.StripBOM = StripBOMWrapper; 28 | function StripBOMWrapper(decoder, options) { 29 | this.decoder = decoder; 30 | this.pass = false; 31 | this.options = options || {}; 32 | } 33 | 34 | StripBOMWrapper.prototype.write = function(buf) { 35 | var res = this.decoder.write(buf); 36 | if (this.pass || !res) 37 | return res; 38 | 39 | if (res[0] === BOMChar) { 40 | res = res.slice(1); 41 | if (typeof this.options.stripBOM === 'function') 42 | this.options.stripBOM(); 43 | } 44 | 45 | this.pass = true; 46 | return res; 47 | } 48 | 49 | StripBOMWrapper.prototype.end = function() { 50 | return this.decoder.end(); 51 | } 52 | 53 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/on-finished/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2013 Jonathan Ong 4 | Copyright (c) 2014 Douglas Christopher Wilson 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining 7 | a copy of this software and associated documentation files (the 8 | 'Software'), to deal in the Software without restriction, including 9 | without limitation the rights to use, copy, modify, merge, publish, 10 | distribute, sublicense, and/or sell copies of the Software, and to 11 | permit persons to whom the Software is furnished to do so, subject to 12 | the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be 15 | included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 18 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 19 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 20 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 21 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 22 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 23 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/on-finished/node_modules/ee-first/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | The MIT License (MIT) 3 | 4 | Copyright (c) 2014 Jonathan Ong me@jongleberry.com 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/qs/.jshintignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/qs/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "node": true, 3 | 4 | "curly": true, 5 | "latedef": true, 6 | "quotmark": true, 7 | "undef": true, 8 | "unused": true, 9 | "trailing": true 10 | } 11 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/qs/.npmignore: -------------------------------------------------------------------------------- 1 | .idea 2 | *.iml 3 | npm-debug.log 4 | dump.rdb 5 | node_modules 6 | results.tap 7 | results.xml 8 | npm-shrinkwrap.json 9 | config.json 10 | .DS_Store 11 | */.DS_Store 12 | */*/.DS_Store 13 | ._* 14 | */._* 15 | */*/._* 16 | coverage.* 17 | lib-cov 18 | complexity.md 19 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/qs/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | 3 | node_js: 4 | - 0.10 5 | - 0.12 6 | - iojs 7 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/qs/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | Please view our [hapijs contributing guide](https://github.com/hapijs/hapi/blob/master/CONTRIBUTING.md). 2 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/qs/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014 Nathan LaFreniere and other contributors. 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are met: 6 | * Redistributions of source code must retain the above copyright 7 | notice, this list of conditions and the following disclaimer. 8 | * Redistributions in binary form must reproduce the above copyright 9 | notice, this list of conditions and the following disclaimer in the 10 | documentation and/or other materials provided with the distribution. 11 | * The names of any contributors may not be used to endorse or promote 12 | products derived from this software without specific prior written 13 | permission. 14 | 15 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 16 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 17 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 18 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY 19 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 20 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 21 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 22 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 24 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | 26 | * * * 27 | 28 | The complete list of contributors can be found at: https://github.com/hapijs/qs/graphs/contributors 29 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/qs/Makefile: -------------------------------------------------------------------------------- 1 | test: 2 | @node node_modules/lab/bin/lab -a code -L 3 | test-cov: 4 | @node node_modules/lab/bin/lab -a code -t 100 -L 5 | test-cov-html: 6 | @node node_modules/lab/bin/lab -a code -L -r html -o coverage.html 7 | 8 | .PHONY: test test-cov test-cov-html 9 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/qs/index.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/'); 2 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/qs/lib/index.js: -------------------------------------------------------------------------------- 1 | // Load modules 2 | 3 | var Stringify = require('./stringify'); 4 | var Parse = require('./parse'); 5 | 6 | 7 | // Declare internals 8 | 9 | var internals = {}; 10 | 11 | 12 | module.exports = { 13 | stringify: Stringify, 14 | parse: Parse 15 | }; 16 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/qs/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "qs", 3 | "version": "2.4.2", 4 | "description": "A querystring parser that supports nesting and arrays, with a depth limit", 5 | "homepage": "https://github.com/hapijs/qs", 6 | "main": "index.js", 7 | "dependencies": {}, 8 | "devDependencies": { 9 | "code": "1.x.x", 10 | "lab": "5.x.x" 11 | }, 12 | "scripts": { 13 | "test": "make test-cov" 14 | }, 15 | "repository": { 16 | "type": "git", 17 | "url": "git+https://github.com/hapijs/qs.git" 18 | }, 19 | "keywords": [ 20 | "querystring", 21 | "qs" 22 | ], 23 | "licenses": [ 24 | { 25 | "type": "BSD", 26 | "url": "http://github.com/hapijs/qs/raw/master/LICENSE" 27 | } 28 | ], 29 | "gitHead": "cdd64a9d1385dbc3dde48da6de98b5993f1607bd", 30 | "bugs": { 31 | "url": "https://github.com/hapijs/qs/issues" 32 | }, 33 | "_id": "qs@2.4.2", 34 | "_shasum": "f7ce788e5777df0b5010da7f7c4e73ba32470f5a", 35 | "_from": "qs@2.4.2", 36 | "_npmVersion": "2.9.0", 37 | "_nodeVersion": "0.10.38", 38 | "_npmUser": { 39 | "name": "nlf", 40 | "email": "quitlahok@gmail.com" 41 | }, 42 | "dist": { 43 | "shasum": "f7ce788e5777df0b5010da7f7c4e73ba32470f5a", 44 | "tarball": "http://registry.npmjs.org/qs/-/qs-2.4.2.tgz" 45 | }, 46 | "maintainers": [ 47 | { 48 | "name": "nlf", 49 | "email": "quitlahok@gmail.com" 50 | }, 51 | { 52 | "name": "hueniverse", 53 | "email": "eran@hueniverse.com" 54 | } 55 | ], 56 | "directories": {}, 57 | "_resolved": "https://registry.npmjs.org/qs/-/qs-2.4.2.tgz", 58 | "readme": "ERROR: No README data found!" 59 | } 60 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/raw-body/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2013-2014 Jonathan Ong 4 | Copyright (c) 2014-2015 Douglas Christopher Wilson 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/raw-body/node_modules/unpipe/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.0 / 2015-06-14 2 | ================== 3 | 4 | * Initial release 5 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/raw-body/node_modules/unpipe/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2015 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/raw-body/node_modules/unpipe/README.md: -------------------------------------------------------------------------------- 1 | # unpipe 2 | 3 | [![NPM Version][npm-image]][npm-url] 4 | [![NPM Downloads][downloads-image]][downloads-url] 5 | [![Node.js Version][node-image]][node-url] 6 | [![Build Status][travis-image]][travis-url] 7 | [![Test Coverage][coveralls-image]][coveralls-url] 8 | 9 | Unpipe a stream from all destinations. 10 | 11 | ## Installation 12 | 13 | ```sh 14 | $ npm install unpipe 15 | ``` 16 | 17 | ## API 18 | 19 | ```js 20 | var unpipe = require('unpipe') 21 | ``` 22 | 23 | ### unpipe(stream) 24 | 25 | Unpipes all destinations from a given stream. With stream 2+, this is 26 | equivalent to `stream.unpipe()`. When used with streams 1 style streams 27 | (typically Node.js 0.8 and below), this module attempts to undo the 28 | actions done in `stream.pipe(dest)`. 29 | 30 | ## License 31 | 32 | [MIT](LICENSE) 33 | 34 | [npm-image]: https://img.shields.io/npm/v/unpipe.svg 35 | [npm-url]: https://npmjs.org/package/unpipe 36 | [node-image]: https://img.shields.io/node/v/unpipe.svg 37 | [node-url]: http://nodejs.org/download/ 38 | [travis-image]: https://img.shields.io/travis/stream-utils/unpipe.svg 39 | [travis-url]: https://travis-ci.org/stream-utils/unpipe 40 | [coveralls-image]: https://img.shields.io/coveralls/stream-utils/unpipe.svg 41 | [coveralls-url]: https://coveralls.io/r/stream-utils/unpipe?branch=master 42 | [downloads-image]: https://img.shields.io/npm/dm/unpipe.svg 43 | [downloads-url]: https://npmjs.org/package/unpipe 44 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/raw-body/node_modules/unpipe/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * unpipe 3 | * Copyright(c) 2015 Douglas Christopher Wilson 4 | * MIT Licensed 5 | */ 6 | 7 | 'use strict' 8 | 9 | /** 10 | * Module exports. 11 | * @public 12 | */ 13 | 14 | module.exports = unpipe 15 | 16 | /** 17 | * Determine if there are Node.js pipe-like data listeners. 18 | * @private 19 | */ 20 | 21 | function hasPipeDataListeners(stream) { 22 | var listeners = stream.listeners('data') 23 | 24 | for (var i = 0; i < listeners.length; i++) { 25 | if (listeners[i].name === 'ondata') { 26 | return true 27 | } 28 | } 29 | 30 | return false 31 | } 32 | 33 | /** 34 | * Unpipe a stream from all destinations. 35 | * 36 | * @param {object} stream 37 | * @public 38 | */ 39 | 40 | function unpipe(stream) { 41 | if (!stream) { 42 | throw new TypeError('argument stream is required') 43 | } 44 | 45 | if (typeof stream.unpipe === 'function') { 46 | // new-style 47 | stream.unpipe() 48 | return 49 | } 50 | 51 | // Node.js 0.8 hack 52 | if (!hasPipeDataListeners(stream)) { 53 | return 54 | } 55 | 56 | var listener 57 | var listeners = stream.listeners('close') 58 | 59 | for (var i = 0; i < listeners.length; i++) { 60 | listener = listeners[i] 61 | 62 | if (listener.name !== 'cleanup' && listener.name !== 'onclose') { 63 | continue 64 | } 65 | 66 | // invoke the listener 67 | listener.call(stream) 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/type-is/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Jonathan Ong 4 | Copyright (c) 2014-2015 Douglas Christopher Wilson 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining 7 | a copy of this software and associated documentation files (the 8 | 'Software'), to deal in the Software without restriction, including 9 | without limitation the rights to use, copy, modify, merge, publish, 10 | distribute, sublicense, and/or sell copies of the Software, and to 11 | permit persons to whom the Software is furnished to do so, subject to 12 | the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be 15 | included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 18 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 19 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 20 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 21 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 22 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 23 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/type-is/node_modules/media-typer/HISTORY.md: -------------------------------------------------------------------------------- 1 | 0.3.0 / 2014-09-07 2 | ================== 3 | 4 | * Support Node.js 0.6 5 | * Throw error when parameter format invalid on parse 6 | 7 | 0.2.0 / 2014-06-18 8 | ================== 9 | 10 | * Add `typer.format()` to format media types 11 | 12 | 0.1.0 / 2014-06-17 13 | ================== 14 | 15 | * Accept `req` as argument to `parse` 16 | * Accept `res` as argument to `parse` 17 | * Parse media type with extra LWS between type and first parameter 18 | 19 | 0.0.0 / 2014-06-13 20 | ================== 21 | 22 | * Initial implementation 23 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/type-is/node_modules/media-typer/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/type-is/node_modules/mime-types/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Jonathan Ong 4 | Copyright (c) 2015 Douglas Christopher Wilson 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining 7 | a copy of this software and associated documentation files (the 8 | 'Software'), to deal in the Software without restriction, including 9 | without limitation the rights to use, copy, modify, merge, publish, 10 | distribute, sublicense, and/or sell copies of the Software, and to 11 | permit persons to whom the Software is furnished to do so, subject to 12 | the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be 15 | included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 18 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 19 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 20 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 21 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 22 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 23 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/type-is/node_modules/mime-types/node_modules/mime-db/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | The MIT License (MIT) 3 | 4 | Copyright (c) 2014 Jonathan Ong me@jongleberry.com 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/body-parser/node_modules/type-is/node_modules/mime-types/node_modules/mime-db/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * mime-db 3 | * Copyright(c) 2014 Jonathan Ong 4 | * MIT Licensed 5 | */ 6 | 7 | /** 8 | * Module exports. 9 | */ 10 | 11 | module.exports = require('./db.json') 12 | -------------------------------------------------------------------------------- /node_modules/express/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2009-2014 TJ Holowaychuk 4 | Copyright (c) 2013-2014 Roman Shtylman 5 | Copyright (c) 2014-2015 Douglas Christopher Wilson 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining 8 | a copy of this software and associated documentation files (the 9 | 'Software'), to deal in the Software without restriction, including 10 | without limitation the rights to use, copy, modify, merge, publish, 11 | distribute, sublicense, and/or sell copies of the Software, and to 12 | permit persons to whom the Software is furnished to do so, subject to 13 | the following conditions: 14 | 15 | The above copyright notice and this permission notice shall be 16 | included in all copies or substantial portions of the Software. 17 | 18 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 19 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 20 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 21 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 22 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 23 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 24 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 25 | -------------------------------------------------------------------------------- /node_modules/express/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * express 3 | * Copyright(c) 2009-2013 TJ Holowaychuk 4 | * Copyright(c) 2013 Roman Shtylman 5 | * Copyright(c) 2014-2015 Douglas Christopher Wilson 6 | * MIT Licensed 7 | */ 8 | 9 | 'use strict'; 10 | 11 | module.exports = require('./lib/express'); 12 | -------------------------------------------------------------------------------- /node_modules/express/lib/middleware/init.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * express 3 | * Copyright(c) 2009-2013 TJ Holowaychuk 4 | * Copyright(c) 2013 Roman Shtylman 5 | * Copyright(c) 2014-2015 Douglas Christopher Wilson 6 | * MIT Licensed 7 | */ 8 | 9 | 'use strict'; 10 | 11 | /** 12 | * Initialization middleware, exposing the 13 | * request and response to each other, as well 14 | * as defaulting the X-Powered-By header field. 15 | * 16 | * @param {Function} app 17 | * @return {Function} 18 | * @api private 19 | */ 20 | 21 | exports.init = function(app){ 22 | return function expressInit(req, res, next){ 23 | if (app.enabled('x-powered-by')) res.setHeader('X-Powered-By', 'Express'); 24 | req.res = res; 25 | res.req = req; 26 | req.next = next; 27 | 28 | req.__proto__ = app.request; 29 | res.__proto__ = app.response; 30 | 31 | res.locals = res.locals || Object.create(null); 32 | 33 | next(); 34 | }; 35 | }; 36 | 37 | -------------------------------------------------------------------------------- /node_modules/express/lib/middleware/query.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * express 3 | * Copyright(c) 2009-2013 TJ Holowaychuk 4 | * Copyright(c) 2013 Roman Shtylman 5 | * Copyright(c) 2014-2015 Douglas Christopher Wilson 6 | * MIT Licensed 7 | */ 8 | 9 | 'use strict'; 10 | 11 | /** 12 | * Module dependencies. 13 | */ 14 | 15 | var parseUrl = require('parseurl'); 16 | var qs = require('qs'); 17 | 18 | /** 19 | * @param {Object} options 20 | * @return {Function} 21 | * @api public 22 | */ 23 | 24 | module.exports = function query(options) { 25 | var queryparse = qs.parse; 26 | 27 | if (typeof options === 'function') { 28 | queryparse = options; 29 | options = undefined; 30 | } 31 | 32 | return function query(req, res, next){ 33 | if (!req.query) { 34 | var val = parseUrl(req).query; 35 | req.query = queryparse(val, options); 36 | } 37 | 38 | next(); 39 | }; 40 | }; 41 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/accepts/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Jonathan Ong 4 | Copyright (c) 2015 Douglas Christopher Wilson 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining 7 | a copy of this software and associated documentation files (the 8 | 'Software'), to deal in the Software without restriction, including 9 | without limitation the rights to use, copy, modify, merge, publish, 10 | distribute, sublicense, and/or sell copies of the Software, and to 11 | permit persons to whom the Software is furnished to do so, subject to 12 | the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be 15 | included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 18 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 19 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 20 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 21 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 22 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 23 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/accepts/node_modules/mime-types/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Jonathan Ong 4 | Copyright (c) 2015 Douglas Christopher Wilson 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining 7 | a copy of this software and associated documentation files (the 8 | 'Software'), to deal in the Software without restriction, including 9 | without limitation the rights to use, copy, modify, merge, publish, 10 | distribute, sublicense, and/or sell copies of the Software, and to 11 | permit persons to whom the Software is furnished to do so, subject to 12 | the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be 15 | included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 18 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 19 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 20 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 21 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 22 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 23 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/accepts/node_modules/mime-types/node_modules/mime-db/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | The MIT License (MIT) 3 | 4 | Copyright (c) 2014 Jonathan Ong me@jongleberry.com 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/accepts/node_modules/mime-types/node_modules/mime-db/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * mime-db 3 | * Copyright(c) 2014 Jonathan Ong 4 | * MIT Licensed 5 | */ 6 | 7 | /** 8 | * Module exports. 9 | */ 10 | 11 | module.exports = require('./db.json') 12 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/accepts/node_modules/negotiator/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2012-2014 Federico Romero 4 | Copyright (c) 2012-2014 Isaac Z. Schlueter 5 | Copyright (c) 2014-2015 Douglas Christopher Wilson 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining 8 | a copy of this software and associated documentation files (the 9 | 'Software'), to deal in the Software without restriction, including 10 | without limitation the rights to use, copy, modify, merge, publish, 11 | distribute, sublicense, and/or sell copies of the Software, and to 12 | permit persons to whom the Software is furnished to do so, subject to 13 | the following conditions: 14 | 15 | The above copyright notice and this permission notice shall be 16 | included in all copies or substantial portions of the Software. 17 | 18 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 19 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 20 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 21 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 22 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 23 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 24 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 25 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/array-flatten/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014 Blake Embrey (hello@blakeembrey.com) 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/array-flatten/README.md: -------------------------------------------------------------------------------- 1 | # Array Flatten 2 | 3 | [![NPM version][npm-image]][npm-url] 4 | [![NPM downloads][downloads-image]][downloads-url] 5 | [![Build status][travis-image]][travis-url] 6 | [![Test coverage][coveralls-image]][coveralls-url] 7 | 8 | > Flatten an array of nested arrays into a single flat array. Accepts an optional depth. 9 | 10 | ## Installation 11 | 12 | ``` 13 | npm install array-flatten --save 14 | ``` 15 | 16 | ## Usage 17 | 18 | ```javascript 19 | var flatten = require('array-flatten') 20 | 21 | flatten([1, [2, [3, [4, [5], 6], 7], 8], 9]) 22 | //=> [1, 2, 3, 4, 5, 6, 7, 8, 9] 23 | 24 | flatten([1, [2, [3, [4, [5], 6], 7], 8], 9], 2) 25 | //=> [1, 2, 3, [4, [5], 6], 7, 8, 9] 26 | 27 | (function () { 28 | flatten(arguments) //=> [1, 2, 3] 29 | })(1, [2, 3]) 30 | ``` 31 | 32 | ## License 33 | 34 | MIT 35 | 36 | [npm-image]: https://img.shields.io/npm/v/array-flatten.svg?style=flat 37 | [npm-url]: https://npmjs.org/package/array-flatten 38 | [downloads-image]: https://img.shields.io/npm/dm/array-flatten.svg?style=flat 39 | [downloads-url]: https://npmjs.org/package/array-flatten 40 | [travis-image]: https://img.shields.io/travis/blakeembrey/array-flatten.svg?style=flat 41 | [travis-url]: https://travis-ci.org/blakeembrey/array-flatten 42 | [coveralls-image]: https://img.shields.io/coveralls/blakeembrey/array-flatten.svg?style=flat 43 | [coveralls-url]: https://coveralls.io/r/blakeembrey/array-flatten?branch=master 44 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/array-flatten/array-flatten.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Recursive flatten function with depth. 3 | * 4 | * @param {Array} array 5 | * @param {Array} result 6 | * @param {Number} depth 7 | * @return {Array} 8 | */ 9 | function flattenDepth (array, result, depth) { 10 | for (var i = 0; i < array.length; i++) { 11 | var value = array[i] 12 | 13 | if (depth > 0 && Array.isArray(value)) { 14 | flattenDepth(value, result, depth - 1) 15 | } else { 16 | result.push(value) 17 | } 18 | } 19 | 20 | return result 21 | } 22 | 23 | /** 24 | * Recursive flatten function. Omitting depth is slightly faster. 25 | * 26 | * @param {Array} array 27 | * @param {Array} result 28 | * @return {Array} 29 | */ 30 | function flattenForever (array, result) { 31 | for (var i = 0; i < array.length; i++) { 32 | var value = array[i] 33 | 34 | if (Array.isArray(value)) { 35 | flattenForever(value, result) 36 | } else { 37 | result.push(value) 38 | } 39 | } 40 | 41 | return result 42 | } 43 | 44 | /** 45 | * Flatten an array, with the ability to define a depth. 46 | * 47 | * @param {Array} array 48 | * @param {Number} depth 49 | * @return {Array} 50 | */ 51 | module.exports = function (array, depth) { 52 | if (depth == null) { 53 | return flattenForever(array, []) 54 | } 55 | 56 | return flattenDepth(array, [], depth) 57 | } 58 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/content-disposition/HISTORY.md: -------------------------------------------------------------------------------- 1 | 0.5.0 / 2014-10-11 2 | ================== 3 | 4 | * Add `parse` function 5 | 6 | 0.4.0 / 2014-09-21 7 | ================== 8 | 9 | * Expand non-Unicode `filename` to the full ISO-8859-1 charset 10 | 11 | 0.3.0 / 2014-09-20 12 | ================== 13 | 14 | * Add `fallback` option 15 | * Add `type` option 16 | 17 | 0.2.0 / 2014-09-19 18 | ================== 19 | 20 | * Reduce ambiguity of file names with hex escape in buggy browsers 21 | 22 | 0.1.2 / 2014-09-19 23 | ================== 24 | 25 | * Fix periodic invalid Unicode filename header 26 | 27 | 0.1.1 / 2014-09-19 28 | ================== 29 | 30 | * Fix invalid characters appearing in `filename*` parameter 31 | 32 | 0.1.0 / 2014-09-18 33 | ================== 34 | 35 | * Make the `filename` argument optional 36 | 37 | 0.0.0 / 2014-09-18 38 | ================== 39 | 40 | * Initial release 41 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/content-disposition/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/content-type/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.1 / 2015-02-13 2 | ================== 3 | 4 | * Improve missing `Content-Type` header error message 5 | 6 | 1.0.0 / 2015-02-01 7 | ================== 8 | 9 | * Initial implementation, derived from `media-typer@0.3.0` 10 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/content-type/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2015 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/cookie-signature/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | *.sock 5 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/cookie-signature/History.md: -------------------------------------------------------------------------------- 1 | 1.0.6 / 2015-02-03 2 | ================== 3 | 4 | * use `npm test` instead of `make test` to run tests 5 | * clearer assertion messages when checking input 6 | 7 | 8 | 1.0.5 / 2014-09-05 9 | ================== 10 | 11 | * add license to package.json 12 | 13 | 1.0.4 / 2014-06-25 14 | ================== 15 | 16 | * corrected avoidance of timing attacks (thanks @tenbits!) 17 | 18 | 1.0.3 / 2014-01-28 19 | ================== 20 | 21 | * [incorrect] fix for timing attacks 22 | 23 | 1.0.2 / 2014-01-28 24 | ================== 25 | 26 | * fix missing repository warning 27 | * fix typo in test 28 | 29 | 1.0.1 / 2013-04-15 30 | ================== 31 | 32 | * Revert "Changed underlying HMAC algo. to sha512." 33 | * Revert "Fix for timing attacks on MAC verification." 34 | 35 | 0.0.1 / 2010-01-03 36 | ================== 37 | 38 | * Initial release 39 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/cookie-signature/Readme.md: -------------------------------------------------------------------------------- 1 | 2 | # cookie-signature 3 | 4 | Sign and unsign cookies. 5 | 6 | ## Example 7 | 8 | ```js 9 | var cookie = require('cookie-signature'); 10 | 11 | var val = cookie.sign('hello', 'tobiiscool'); 12 | val.should.equal('hello.DGDUkGlIkCzPz+C0B064FNgHdEjox7ch8tOBGslZ5QI'); 13 | 14 | var val = cookie.sign('hello', 'tobiiscool'); 15 | cookie.unsign(val, 'tobiiscool').should.equal('hello'); 16 | cookie.unsign(val, 'luna').should.be.false; 17 | ``` 18 | 19 | ## License 20 | 21 | (The MIT License) 22 | 23 | Copyright (c) 2012 LearnBoost <tj@learnboost.com> 24 | 25 | Permission is hereby granted, free of charge, to any person obtaining 26 | a copy of this software and associated documentation files (the 27 | 'Software'), to deal in the Software without restriction, including 28 | without limitation the rights to use, copy, modify, merge, publish, 29 | distribute, sublicense, and/or sell copies of the Software, and to 30 | permit persons to whom the Software is furnished to do so, subject to 31 | the following conditions: 32 | 33 | The above copyright notice and this permission notice shall be 34 | included in all copies or substantial portions of the Software. 35 | 36 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 37 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 38 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 39 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 40 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 41 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 42 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -------------------------------------------------------------------------------- /node_modules/express/node_modules/cookie-signature/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Module dependencies. 3 | */ 4 | 5 | var crypto = require('crypto'); 6 | 7 | /** 8 | * Sign the given `val` with `secret`. 9 | * 10 | * @param {String} val 11 | * @param {String} secret 12 | * @return {String} 13 | * @api private 14 | */ 15 | 16 | exports.sign = function(val, secret){ 17 | if ('string' != typeof val) throw new TypeError("Cookie value must be provided as a string."); 18 | if ('string' != typeof secret) throw new TypeError("Secret string must be provided."); 19 | return val + '.' + crypto 20 | .createHmac('sha256', secret) 21 | .update(val) 22 | .digest('base64') 23 | .replace(/\=+$/, ''); 24 | }; 25 | 26 | /** 27 | * Unsign and decode the given `val` with `secret`, 28 | * returning `false` if the signature is invalid. 29 | * 30 | * @param {String} val 31 | * @param {String} secret 32 | * @return {String|Boolean} 33 | * @api private 34 | */ 35 | 36 | exports.unsign = function(val, secret){ 37 | if ('string' != typeof val) throw new TypeError("Signed cookie string must be provided."); 38 | if ('string' != typeof secret) throw new TypeError("Secret string must be provided."); 39 | var str = val.slice(0, val.lastIndexOf('.')) 40 | , mac = exports.sign(str, secret); 41 | 42 | return sha1(mac) == sha1(val) ? str : false; 43 | }; 44 | 45 | /** 46 | * Private 47 | */ 48 | 49 | function sha1(str){ 50 | return crypto.createHash('sha1').update(str).digest('hex'); 51 | } 52 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/cookie-signature/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cookie-signature", 3 | "version": "1.0.6", 4 | "description": "Sign and unsign cookies", 5 | "keywords": [ 6 | "cookie", 7 | "sign", 8 | "unsign" 9 | ], 10 | "author": { 11 | "name": "TJ Holowaychuk", 12 | "email": "tj@learnboost.com" 13 | }, 14 | "license": "MIT", 15 | "repository": { 16 | "type": "git", 17 | "url": "git+https://github.com/visionmedia/node-cookie-signature.git" 18 | }, 19 | "dependencies": {}, 20 | "devDependencies": { 21 | "mocha": "*", 22 | "should": "*" 23 | }, 24 | "scripts": { 25 | "test": "mocha --require should --reporter spec" 26 | }, 27 | "main": "index", 28 | "gitHead": "391b56cf44d88c493491b7e3fc53208cfb976d2a", 29 | "bugs": { 30 | "url": "https://github.com/visionmedia/node-cookie-signature/issues" 31 | }, 32 | "homepage": "https://github.com/visionmedia/node-cookie-signature", 33 | "_id": "cookie-signature@1.0.6", 34 | "_shasum": "e303a882b342cc3ee8ca513a79999734dab3ae2c", 35 | "_from": "cookie-signature@1.0.6", 36 | "_npmVersion": "2.3.0", 37 | "_nodeVersion": "0.10.36", 38 | "_npmUser": { 39 | "name": "natevw", 40 | "email": "natevw@yahoo.com" 41 | }, 42 | "maintainers": [ 43 | { 44 | "name": "tjholowaychuk", 45 | "email": "tj@vision-media.ca" 46 | }, 47 | { 48 | "name": "natevw", 49 | "email": "natevw@yahoo.com" 50 | } 51 | ], 52 | "dist": { 53 | "shasum": "e303a882b342cc3ee8ca513a79999734dab3ae2c", 54 | "tarball": "http://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz" 55 | }, 56 | "directories": {}, 57 | "_resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", 58 | "readme": "ERROR: No README data found!" 59 | } 60 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/cookie/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2012-2014 Roman Shtylman 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | 24 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/debug/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "laxbreak": true 3 | } 4 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/debug/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | example 5 | *.sock 6 | dist 7 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/debug/Makefile: -------------------------------------------------------------------------------- 1 | 2 | # get Makefile directory name: http://stackoverflow.com/a/5982798/376773 3 | THIS_MAKEFILE_PATH:=$(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST)) 4 | THIS_DIR:=$(shell cd $(dir $(THIS_MAKEFILE_PATH));pwd) 5 | 6 | # BIN directory 7 | BIN := $(THIS_DIR)/node_modules/.bin 8 | 9 | # applications 10 | NODE ?= $(shell which node) 11 | NPM ?= $(NODE) $(shell which npm) 12 | BROWSERIFY ?= $(NODE) $(BIN)/browserify 13 | 14 | all: dist/debug.js 15 | 16 | install: node_modules 17 | 18 | clean: 19 | @rm -rf dist 20 | 21 | dist: 22 | @mkdir -p $@ 23 | 24 | dist/debug.js: node_modules browser.js debug.js dist 25 | @$(BROWSERIFY) \ 26 | --standalone debug \ 27 | . > $@ 28 | 29 | distclean: clean 30 | @rm -rf node_modules 31 | 32 | node_modules: package.json 33 | @NODE_ENV= $(NPM) install 34 | @touch node_modules 35 | 36 | .PHONY: all install clean distclean 37 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/debug/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "visionmedia-debug", 3 | "main": "dist/debug.js", 4 | "version": "2.2.0", 5 | "homepage": "https://github.com/visionmedia/debug", 6 | "authors": [ 7 | "TJ Holowaychuk " 8 | ], 9 | "description": "visionmedia-debug", 10 | "moduleType": [ 11 | "amd", 12 | "es6", 13 | "globals", 14 | "node" 15 | ], 16 | "keywords": [ 17 | "visionmedia", 18 | "debug" 19 | ], 20 | "license": "MIT", 21 | "ignore": [ 22 | "**/.*", 23 | "node_modules", 24 | "bower_components", 25 | "test", 26 | "tests" 27 | ] 28 | } 29 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/debug/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "debug", 3 | "repo": "visionmedia/debug", 4 | "description": "small debugging utility", 5 | "version": "2.2.0", 6 | "keywords": [ 7 | "debug", 8 | "log", 9 | "debugger" 10 | ], 11 | "main": "browser.js", 12 | "scripts": [ 13 | "browser.js", 14 | "debug.js" 15 | ], 16 | "dependencies": { 17 | "rauchg/ms.js": "0.7.1" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/debug/node_modules/ms/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | test 3 | History.md 4 | Makefile 5 | component.json 6 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/debug/node_modules/ms/History.md: -------------------------------------------------------------------------------- 1 | 2 | 0.7.1 / 2015-04-20 3 | ================== 4 | 5 | * prevent extraordinary long inputs (@evilpacket) 6 | * Fixed broken readme link 7 | 8 | 0.7.0 / 2014-11-24 9 | ================== 10 | 11 | * add time abbreviations, updated tests and readme for the new units 12 | * fix example in the readme. 13 | * add LICENSE file 14 | 15 | 0.6.2 / 2013-12-05 16 | ================== 17 | 18 | * Adding repository section to package.json to suppress warning from NPM. 19 | 20 | 0.6.1 / 2013-05-10 21 | ================== 22 | 23 | * fix singularization [visionmedia] 24 | 25 | 0.6.0 / 2013-03-15 26 | ================== 27 | 28 | * fix minutes 29 | 30 | 0.5.1 / 2013-02-24 31 | ================== 32 | 33 | * add component namespace 34 | 35 | 0.5.0 / 2012-11-09 36 | ================== 37 | 38 | * add short formatting as default and .long option 39 | * add .license property to component.json 40 | * add version to component.json 41 | 42 | 0.4.0 / 2012-10-22 43 | ================== 44 | 45 | * add rounding to fix crazy decimals 46 | 47 | 0.3.0 / 2012-09-07 48 | ================== 49 | 50 | * fix `ms()` [visionmedia] 51 | 52 | 0.2.0 / 2012-09-03 53 | ================== 54 | 55 | * add component.json [visionmedia] 56 | * add days support [visionmedia] 57 | * add hours support [visionmedia] 58 | * add minutes support [visionmedia] 59 | * add seconds support [visionmedia] 60 | * add ms string support [visionmedia] 61 | * refactor tests to facilitate ms(number) [visionmedia] 62 | 63 | 0.1.0 / 2012-03-07 64 | ================== 65 | 66 | * Initial release 67 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/debug/node_modules/ms/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Guillermo Rauch 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/debug/node_modules/ms/README.md: -------------------------------------------------------------------------------- 1 | # ms.js: miliseconds conversion utility 2 | 3 | ```js 4 | ms('2 days') // 172800000 5 | ms('1d') // 86400000 6 | ms('10h') // 36000000 7 | ms('2.5 hrs') // 9000000 8 | ms('2h') // 7200000 9 | ms('1m') // 60000 10 | ms('5s') // 5000 11 | ms('100') // 100 12 | ``` 13 | 14 | ```js 15 | ms(60000) // "1m" 16 | ms(2 * 60000) // "2m" 17 | ms(ms('10 hours')) // "10h" 18 | ``` 19 | 20 | ```js 21 | ms(60000, { long: true }) // "1 minute" 22 | ms(2 * 60000, { long: true }) // "2 minutes" 23 | ms(ms('10 hours'), { long: true }) // "10 hours" 24 | ``` 25 | 26 | - Node/Browser compatible. Published as [`ms`](https://www.npmjs.org/package/ms) in [NPM](http://nodejs.org/download). 27 | - If a number is supplied to `ms`, a string with a unit is returned. 28 | - If a string that contains the number is supplied, it returns it as 29 | a number (e.g: it returns `100` for `'100'`). 30 | - If you pass a string with a number and a valid unit, the number of 31 | equivalent ms is returned. 32 | 33 | ## License 34 | 35 | MIT 36 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/debug/node_modules/ms/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ms", 3 | "version": "0.7.1", 4 | "description": "Tiny ms conversion utility", 5 | "repository": { 6 | "type": "git", 7 | "url": "git://github.com/guille/ms.js.git" 8 | }, 9 | "main": "./index", 10 | "devDependencies": { 11 | "mocha": "*", 12 | "expect.js": "*", 13 | "serve": "*" 14 | }, 15 | "component": { 16 | "scripts": { 17 | "ms/index.js": "index.js" 18 | } 19 | }, 20 | "gitHead": "713dcf26d9e6fd9dbc95affe7eff9783b7f1b909", 21 | "bugs": { 22 | "url": "https://github.com/guille/ms.js/issues" 23 | }, 24 | "homepage": "https://github.com/guille/ms.js", 25 | "_id": "ms@0.7.1", 26 | "scripts": {}, 27 | "_shasum": "9cd13c03adbff25b65effde7ce864ee952017098", 28 | "_from": "ms@0.7.1", 29 | "_npmVersion": "2.7.5", 30 | "_nodeVersion": "0.12.2", 31 | "_npmUser": { 32 | "name": "rauchg", 33 | "email": "rauchg@gmail.com" 34 | }, 35 | "maintainers": [ 36 | { 37 | "name": "rauchg", 38 | "email": "rauchg@gmail.com" 39 | } 40 | ], 41 | "dist": { 42 | "shasum": "9cd13c03adbff25b65effde7ce864ee952017098", 43 | "tarball": "http://registry.npmjs.org/ms/-/ms-0.7.1.tgz" 44 | }, 45 | "directories": {}, 46 | "_resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz" 47 | } 48 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/depd/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/depd/lib/compat/buffer-concat.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * depd 3 | * Copyright(c) 2014 Douglas Christopher Wilson 4 | * MIT Licensed 5 | */ 6 | 7 | /** 8 | * Module exports. 9 | */ 10 | 11 | module.exports = bufferConcat 12 | 13 | /** 14 | * Concatenate an array of Buffers. 15 | */ 16 | 17 | function bufferConcat(bufs) { 18 | var length = 0 19 | 20 | for (var i = 0, len = bufs.length; i < len; i++) { 21 | length += bufs[i].length 22 | } 23 | 24 | var buf = new Buffer(length) 25 | var pos = 0 26 | 27 | for (var i = 0, len = bufs.length; i < len; i++) { 28 | bufs[i].copy(buf, pos) 29 | pos += bufs[i].length 30 | } 31 | 32 | return buf 33 | } 34 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/depd/lib/compat/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * depd 3 | * Copyright(c) 2014 Douglas Christopher Wilson 4 | * MIT Licensed 5 | */ 6 | 7 | /** 8 | * Module exports. 9 | */ 10 | 11 | lazyProperty(module.exports, 'bufferConcat', function bufferConcat() { 12 | return Buffer.concat || require('./buffer-concat') 13 | }) 14 | 15 | lazyProperty(module.exports, 'callSiteToString', function callSiteToString() { 16 | var limit = Error.stackTraceLimit 17 | var obj = {} 18 | var prep = Error.prepareStackTrace 19 | 20 | function prepareObjectStackTrace(obj, stack) { 21 | return stack 22 | } 23 | 24 | Error.prepareStackTrace = prepareObjectStackTrace 25 | Error.stackTraceLimit = 2 26 | 27 | // capture the stack 28 | Error.captureStackTrace(obj) 29 | 30 | // slice the stack 31 | var stack = obj.stack.slice() 32 | 33 | Error.prepareStackTrace = prep 34 | Error.stackTraceLimit = limit 35 | 36 | return stack[0].toString ? toString : require('./callsite-tostring') 37 | }) 38 | 39 | /** 40 | * Define a lazy property. 41 | */ 42 | 43 | function lazyProperty(obj, prop, getter) { 44 | function get() { 45 | var val = getter() 46 | 47 | Object.defineProperty(obj, prop, { 48 | configurable: true, 49 | enumerable: true, 50 | value: val 51 | }) 52 | 53 | return val 54 | } 55 | 56 | Object.defineProperty(obj, prop, { 57 | configurable: true, 58 | enumerable: true, 59 | get: get 60 | }) 61 | } 62 | 63 | /** 64 | * Call toString() on the obj 65 | */ 66 | 67 | function toString(obj) { 68 | return obj.toString() 69 | } 70 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/escape-html/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2012-2013 TJ Holowaychuk 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/escape-html/Readme.md: -------------------------------------------------------------------------------- 1 | 2 | # escape-html 3 | 4 | Escape HTML entities 5 | 6 | ## Example 7 | 8 | ```js 9 | var escape = require('escape-html'); 10 | escape(str); 11 | ``` 12 | 13 | ## License 14 | 15 | MIT -------------------------------------------------------------------------------- /node_modules/express/node_modules/escape-html/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * escape-html 3 | * Copyright(c) 2012-2013 TJ Holowaychuk 4 | * MIT Licensed 5 | */ 6 | 7 | /** 8 | * Module exports. 9 | * @public 10 | */ 11 | 12 | module.exports = escapeHtml; 13 | 14 | /** 15 | * Escape special characters in the given string of html. 16 | * 17 | * @param {string} str The string to escape for inserting into HTML 18 | * @return {string} 19 | * @public 20 | */ 21 | 22 | function escapeHtml(html) { 23 | return String(html) 24 | .replace(/&/g, '&') 25 | .replace(/"/g, '"') 26 | .replace(/'/g, ''') 27 | .replace(//g, '>'); 29 | } 30 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/escape-html/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "escape-html", 3 | "description": "Escape HTML entities", 4 | "version": "1.0.2", 5 | "license": "MIT", 6 | "keywords": [ 7 | "escape", 8 | "html", 9 | "utility" 10 | ], 11 | "repository": { 12 | "type": "git", 13 | "url": "https://github.com/component/escape-html" 14 | }, 15 | "files": [ 16 | "LICENSE", 17 | "Readme.md", 18 | "index.js" 19 | ], 20 | "gitHead": "2477a23ae56f75e0a5622a20b5b55da00de3a23b", 21 | "bugs": { 22 | "url": "https://github.com/component/escape-html/issues" 23 | }, 24 | "homepage": "https://github.com/component/escape-html", 25 | "_id": "escape-html@1.0.2", 26 | "scripts": {}, 27 | "_shasum": "d77d32fa98e38c2f41ae85e9278e0e0e6ba1022c", 28 | "_from": "escape-html@1.0.2", 29 | "_npmVersion": "1.4.28", 30 | "_npmUser": { 31 | "name": "dougwilson", 32 | "email": "doug@somethingdoug.com" 33 | }, 34 | "maintainers": [ 35 | { 36 | "name": "tjholowaychuk", 37 | "email": "tj@vision-media.ca" 38 | }, 39 | { 40 | "name": "dougwilson", 41 | "email": "doug@somethingdoug.com" 42 | } 43 | ], 44 | "dist": { 45 | "shasum": "d77d32fa98e38c2f41ae85e9278e0e0e6ba1022c", 46 | "tarball": "http://registry.npmjs.org/escape-html/-/escape-html-1.0.2.tgz" 47 | }, 48 | "directories": {}, 49 | "_resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.2.tgz" 50 | } 51 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/etag/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.7.0 / 2015-06-08 2 | ================== 3 | 4 | * Always include entity length in ETags for hash length extensions 5 | * Generate non-Stats ETags using MD5 only (no longer CRC32) 6 | * Improve stat performance by removing hashing 7 | * Remove base64 padding in ETags to shorten 8 | * Use MD5 instead of MD4 in weak ETags over 1KB 9 | 10 | 1.6.0 / 2015-05-10 11 | ================== 12 | 13 | * Improve support for JXcore 14 | * Remove requirement of `atime` in the stats object 15 | * Support "fake" stats objects in environments without `fs` 16 | 17 | 1.5.1 / 2014-11-19 18 | ================== 19 | 20 | * deps: crc@3.2.1 21 | - Minor fixes 22 | 23 | 1.5.0 / 2014-10-14 24 | ================== 25 | 26 | * Improve string performance 27 | * Slightly improve speed for weak ETags over 1KB 28 | 29 | 1.4.0 / 2014-09-21 30 | ================== 31 | 32 | * Support "fake" stats objects 33 | * Support Node.js 0.6 34 | 35 | 1.3.1 / 2014-09-14 36 | ================== 37 | 38 | * Use the (new and improved) `crc` for crc32 39 | 40 | 1.3.0 / 2014-08-29 41 | ================== 42 | 43 | * Default strings to strong ETags 44 | * Improve speed for weak ETags over 1KB 45 | 46 | 1.2.1 / 2014-08-29 47 | ================== 48 | 49 | * Use the (much faster) `buffer-crc32` for crc32 50 | 51 | 1.2.0 / 2014-08-24 52 | ================== 53 | 54 | * Add support for file stat objects 55 | 56 | 1.1.0 / 2014-08-24 57 | ================== 58 | 59 | * Add fast-path for empty entity 60 | * Add weak ETag generation 61 | * Shrink size of generated ETags 62 | 63 | 1.0.1 / 2014-08-24 64 | ================== 65 | 66 | * Fix behavior of string containing Unicode 67 | 68 | 1.0.0 / 2014-05-18 69 | ================== 70 | 71 | * Initial release 72 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/etag/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014-2015 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/finalhandler/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014-2015 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/finalhandler/node_modules/unpipe/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.0 / 2015-06-14 2 | ================== 3 | 4 | * Initial release 5 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/finalhandler/node_modules/unpipe/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2015 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/finalhandler/node_modules/unpipe/README.md: -------------------------------------------------------------------------------- 1 | # unpipe 2 | 3 | [![NPM Version][npm-image]][npm-url] 4 | [![NPM Downloads][downloads-image]][downloads-url] 5 | [![Node.js Version][node-image]][node-url] 6 | [![Build Status][travis-image]][travis-url] 7 | [![Test Coverage][coveralls-image]][coveralls-url] 8 | 9 | Unpipe a stream from all destinations. 10 | 11 | ## Installation 12 | 13 | ```sh 14 | $ npm install unpipe 15 | ``` 16 | 17 | ## API 18 | 19 | ```js 20 | var unpipe = require('unpipe') 21 | ``` 22 | 23 | ### unpipe(stream) 24 | 25 | Unpipes all destinations from a given stream. With stream 2+, this is 26 | equivalent to `stream.unpipe()`. When used with streams 1 style streams 27 | (typically Node.js 0.8 and below), this module attempts to undo the 28 | actions done in `stream.pipe(dest)`. 29 | 30 | ## License 31 | 32 | [MIT](LICENSE) 33 | 34 | [npm-image]: https://img.shields.io/npm/v/unpipe.svg 35 | [npm-url]: https://npmjs.org/package/unpipe 36 | [node-image]: https://img.shields.io/node/v/unpipe.svg 37 | [node-url]: http://nodejs.org/download/ 38 | [travis-image]: https://img.shields.io/travis/stream-utils/unpipe.svg 39 | [travis-url]: https://travis-ci.org/stream-utils/unpipe 40 | [coveralls-image]: https://img.shields.io/coveralls/stream-utils/unpipe.svg 41 | [coveralls-url]: https://coveralls.io/r/stream-utils/unpipe?branch=master 42 | [downloads-image]: https://img.shields.io/npm/dm/unpipe.svg 43 | [downloads-url]: https://npmjs.org/package/unpipe 44 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/finalhandler/node_modules/unpipe/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * unpipe 3 | * Copyright(c) 2015 Douglas Christopher Wilson 4 | * MIT Licensed 5 | */ 6 | 7 | 'use strict' 8 | 9 | /** 10 | * Module exports. 11 | * @public 12 | */ 13 | 14 | module.exports = unpipe 15 | 16 | /** 17 | * Determine if there are Node.js pipe-like data listeners. 18 | * @private 19 | */ 20 | 21 | function hasPipeDataListeners(stream) { 22 | var listeners = stream.listeners('data') 23 | 24 | for (var i = 0; i < listeners.length; i++) { 25 | if (listeners[i].name === 'ondata') { 26 | return true 27 | } 28 | } 29 | 30 | return false 31 | } 32 | 33 | /** 34 | * Unpipe a stream from all destinations. 35 | * 36 | * @param {object} stream 37 | * @public 38 | */ 39 | 40 | function unpipe(stream) { 41 | if (!stream) { 42 | throw new TypeError('argument stream is required') 43 | } 44 | 45 | if (typeof stream.unpipe === 'function') { 46 | // new-style 47 | stream.unpipe() 48 | return 49 | } 50 | 51 | // Node.js 0.8 hack 52 | if (!hasPipeDataListeners(stream)) { 53 | return 54 | } 55 | 56 | var listener 57 | var listeners = stream.listeners('close') 58 | 59 | for (var i = 0; i < listeners.length; i++) { 60 | listener = listeners[i] 61 | 62 | if (listener.name !== 'cleanup' && listener.name !== 'onclose') { 63 | continue 64 | } 65 | 66 | // invoke the listener 67 | listener.call(stream) 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/fresh/HISTORY.md: -------------------------------------------------------------------------------- 1 | 0.3.0 / 2015-05-12 2 | ================== 3 | 4 | * Add weak `ETag` matching support 5 | 6 | 0.2.4 / 2014-09-07 7 | ================== 8 | 9 | * Support Node.js 0.6 10 | 11 | 0.2.3 / 2014-09-07 12 | ================== 13 | 14 | * Move repository to jshttp 15 | 16 | 0.2.2 / 2014-02-19 17 | ================== 18 | 19 | * Revert "Fix for blank page on Safari reload" 20 | 21 | 0.2.1 / 2014-01-29 22 | ================== 23 | 24 | * Fix for blank page on Safari reload 25 | 26 | 0.2.0 / 2013-08-11 27 | ================== 28 | 29 | * Return stale for `Cache-Control: no-cache` 30 | 31 | 0.1.0 / 2012-06-15 32 | ================== 33 | * Add `If-None-Match: *` support 34 | 35 | 0.0.1 / 2012-06-10 36 | ================== 37 | 38 | * Initial release 39 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/fresh/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2012 TJ Holowaychuk 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/fresh/README.md: -------------------------------------------------------------------------------- 1 | # fresh 2 | 3 | [![NPM Version][npm-image]][npm-url] 4 | [![NPM Downloads][downloads-image]][downloads-url] 5 | [![Node.js Version][node-version-image]][node-version-url] 6 | [![Build Status][travis-image]][travis-url] 7 | [![Test Coverage][coveralls-image]][coveralls-url] 8 | 9 | HTTP response freshness testing 10 | 11 | ## Installation 12 | 13 | ``` 14 | $ npm install fresh 15 | ``` 16 | 17 | ## API 18 | 19 | ```js 20 | var fresh = require('fresh') 21 | ``` 22 | 23 | ### fresh(req, res) 24 | 25 | Check freshness of `req` and `res` headers. 26 | 27 | When the cache is "fresh" __true__ is returned, 28 | otherwise __false__ is returned to indicate that 29 | the cache is now stale. 30 | 31 | ## Example 32 | 33 | ```js 34 | var req = { 'if-none-match': 'tobi' }; 35 | var res = { 'etag': 'luna' }; 36 | fresh(req, res); 37 | // => false 38 | 39 | var req = { 'if-none-match': 'tobi' }; 40 | var res = { 'etag': 'tobi' }; 41 | fresh(req, res); 42 | // => true 43 | ``` 44 | 45 | ## License 46 | 47 | [MIT](LICENSE) 48 | 49 | [npm-image]: https://img.shields.io/npm/v/fresh.svg 50 | [npm-url]: https://npmjs.org/package/fresh 51 | [node-version-image]: https://img.shields.io/node/v/fresh.svg 52 | [node-version-url]: http://nodejs.org/download/ 53 | [travis-image]: https://img.shields.io/travis/jshttp/fresh/master.svg 54 | [travis-url]: https://travis-ci.org/jshttp/fresh 55 | [coveralls-image]: https://img.shields.io/coveralls/jshttp/fresh/master.svg 56 | [coveralls-url]: https://coveralls.io/r/jshttp/fresh?branch=master 57 | [downloads-image]: https://img.shields.io/npm/dm/fresh.svg 58 | [downloads-url]: https://npmjs.org/package/fresh 59 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/fresh/index.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * Expose `fresh()`. 4 | */ 5 | 6 | module.exports = fresh; 7 | 8 | /** 9 | * Check freshness of `req` and `res` headers. 10 | * 11 | * When the cache is "fresh" __true__ is returned, 12 | * otherwise __false__ is returned to indicate that 13 | * the cache is now stale. 14 | * 15 | * @param {Object} req 16 | * @param {Object} res 17 | * @return {Boolean} 18 | * @api public 19 | */ 20 | 21 | function fresh(req, res) { 22 | // defaults 23 | var etagMatches = true; 24 | var notModified = true; 25 | 26 | // fields 27 | var modifiedSince = req['if-modified-since']; 28 | var noneMatch = req['if-none-match']; 29 | var lastModified = res['last-modified']; 30 | var etag = res['etag']; 31 | var cc = req['cache-control']; 32 | 33 | // unconditional request 34 | if (!modifiedSince && !noneMatch) return false; 35 | 36 | // check for no-cache cache request directive 37 | if (cc && cc.indexOf('no-cache') !== -1) return false; 38 | 39 | // parse if-none-match 40 | if (noneMatch) noneMatch = noneMatch.split(/ *, */); 41 | 42 | // if-none-match 43 | if (noneMatch) { 44 | etagMatches = noneMatch.some(function (match) { 45 | return match === '*' || match === etag || match === 'W/' + etag; 46 | }); 47 | } 48 | 49 | // if-modified-since 50 | if (modifiedSince) { 51 | modifiedSince = new Date(modifiedSince); 52 | lastModified = new Date(lastModified); 53 | notModified = lastModified <= modifiedSince; 54 | } 55 | 56 | return !! (etagMatches && notModified); 57 | } 58 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/merge-descriptors/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2013 Jonathan Ong 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/merge-descriptors/README.md: -------------------------------------------------------------------------------- 1 | # Merge Descriptors 2 | 3 | Merge objects using descriptors. 4 | 5 | ```js 6 | var thing = { 7 | get name() { 8 | return 'jon' 9 | } 10 | } 11 | 12 | var animal = { 13 | 14 | } 15 | 16 | merge(animal, thing) 17 | 18 | animal.name === 'jon' 19 | ``` 20 | 21 | ## API 22 | 23 | ### merge(destination, source) 24 | 25 | Redefines `destination`'s descriptors with `source`'s. 26 | 27 | ### merge(destination, source, false) 28 | 29 | Defines `source`'s descriptors on `destination` if `destination` does not have 30 | a descriptor by the same name. 31 | 32 | ## License 33 | 34 | [MIT](LICENSE) 35 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/merge-descriptors/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * merge-descriptors 3 | * Copyright(c) 2014 Jonathan Ong 4 | * MIT Licensed 5 | */ 6 | 7 | /** 8 | * Module exports. 9 | * @public 10 | */ 11 | 12 | module.exports = merge 13 | 14 | /** 15 | * Module variables. 16 | * @private 17 | */ 18 | 19 | var hasOwnProperty = Object.prototype.hasOwnProperty 20 | 21 | /** 22 | * Merge the property descriptors of `src` into `dest` 23 | * 24 | * @param {object} dest Object to add descriptors to 25 | * @param {object} src Object to clone descriptors from 26 | * @param {boolean} [redefine=true] Redefine `dest` properties with `src` properties 27 | * @returns {object} Reference to dest 28 | * @public 29 | */ 30 | 31 | function merge(dest, src, redefine) { 32 | if (!dest) { 33 | throw new TypeError('argument dest is required') 34 | } 35 | 36 | if (!src) { 37 | throw new TypeError('argument src is required') 38 | } 39 | 40 | if (redefine === undefined) { 41 | // Default to true 42 | redefine = true 43 | } 44 | 45 | Object.getOwnPropertyNames(src).forEach(function forEachOwnPropertyName(name) { 46 | if (!redefine && hasOwnProperty.call(dest, name)) { 47 | // Skip desriptor 48 | return 49 | } 50 | 51 | // Copy descriptor 52 | var descriptor = Object.getOwnPropertyDescriptor(src, name) 53 | Object.defineProperty(dest, name, descriptor) 54 | }) 55 | 56 | return dest 57 | } 58 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/methods/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.1.1 / 2014-12-30 2 | ================== 3 | 4 | * Improve `browserify` support 5 | 6 | 1.1.0 / 2014-07-05 7 | ================== 8 | 9 | * Add `CONNECT` method 10 | 11 | 1.0.1 / 2014-06-02 12 | ================== 13 | 14 | * Fix module to work with harmony transform 15 | 16 | 1.0.0 / 2014-05-08 17 | ================== 18 | 19 | * Add `PURGE` method 20 | 21 | 0.1.0 / 2013-10-28 22 | ================== 23 | 24 | * Add `http.METHODS` support 25 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/methods/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2013-2014 TJ Holowaychuk 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | 24 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/methods/README.md: -------------------------------------------------------------------------------- 1 | # Methods 2 | 3 | [![NPM Version][npm-image]][npm-url] 4 | [![NPM Downloads][downloads-image]][downloads-url] 5 | [![Node.js Version][node-version-image]][node-version-url] 6 | [![Build Status][travis-image]][travis-url] 7 | [![Test Coverage][coveralls-image]][coveralls-url] 8 | 9 | HTTP verbs that node core's parser supports. 10 | 11 | 12 | ## Install 13 | 14 | ```bash 15 | $ npm install methods 16 | ``` 17 | 18 | ## API 19 | 20 | ```js 21 | var methods = require('methods') 22 | ``` 23 | 24 | ### methods 25 | 26 | This is an array of lower-case method names that Node.js supports. 27 | 28 | ## License 29 | 30 | [MIT](LICENSE) 31 | 32 | [npm-image]: https://img.shields.io/npm/v/methods.svg?style=flat 33 | [npm-url]: https://npmjs.org/package/methods 34 | [node-version-image]: https://img.shields.io/node/v/methods.svg?style=flat 35 | [node-version-url]: http://nodejs.org/download/ 36 | [travis-image]: https://img.shields.io/travis/jshttp/methods.svg?style=flat 37 | [travis-url]: https://travis-ci.org/jshttp/methods 38 | [coveralls-image]: https://img.shields.io/coveralls/jshttp/methods.svg?style=flat 39 | [coveralls-url]: https://coveralls.io/r/jshttp/methods?branch=master 40 | [downloads-image]: https://img.shields.io/npm/dm/methods.svg?style=flat 41 | [downloads-url]: https://npmjs.org/package/methods 42 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/methods/index.js: -------------------------------------------------------------------------------- 1 | 2 | var http = require('http'); 3 | 4 | /* istanbul ignore next: implementation differs on version */ 5 | if (http.METHODS) { 6 | 7 | module.exports = http.METHODS.map(function(method){ 8 | return method.toLowerCase(); 9 | }); 10 | 11 | } else { 12 | 13 | module.exports = [ 14 | 'get', 15 | 'post', 16 | 'put', 17 | 'head', 18 | 'delete', 19 | 'options', 20 | 'trace', 21 | 'copy', 22 | 'lock', 23 | 'mkcol', 24 | 'move', 25 | 'purge', 26 | 'propfind', 27 | 'proppatch', 28 | 'unlock', 29 | 'report', 30 | 'mkactivity', 31 | 'checkout', 32 | 'merge', 33 | 'm-search', 34 | 'notify', 35 | 'subscribe', 36 | 'unsubscribe', 37 | 'patch', 38 | 'search', 39 | 'connect' 40 | ]; 41 | 42 | } 43 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/on-finished/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2013 Jonathan Ong 4 | Copyright (c) 2014 Douglas Christopher Wilson 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining 7 | a copy of this software and associated documentation files (the 8 | 'Software'), to deal in the Software without restriction, including 9 | without limitation the rights to use, copy, modify, merge, publish, 10 | distribute, sublicense, and/or sell copies of the Software, and to 11 | permit persons to whom the Software is furnished to do so, subject to 12 | the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be 15 | included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 18 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 19 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 20 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 21 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 22 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 23 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/on-finished/node_modules/ee-first/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | The MIT License (MIT) 3 | 4 | Copyright (c) 2014 Jonathan Ong me@jongleberry.com 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/parseurl/.npmignore: -------------------------------------------------------------------------------- 1 | benchmark/ 2 | coverage/ 3 | test/ 4 | .travis.yml 5 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/parseurl/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.3.0 / 2014-08-09 2 | ================== 3 | 4 | * Add `parseurl.original` for parsing `req.originalUrl` with fallback 5 | * Return `undefined` if `req.url` is `undefined` 6 | 7 | 1.2.0 / 2014-07-21 8 | ================== 9 | 10 | * Cache URLs based on original value 11 | * Remove no-longer-needed URL mis-parse work-around 12 | * Simplify the "fast-path" `RegExp` 13 | 14 | 1.1.3 / 2014-07-08 15 | ================== 16 | 17 | * Fix typo 18 | 19 | 1.1.2 / 2014-07-08 20 | ================== 21 | 22 | * Seriously fix Node.js 0.8 compatibility 23 | 24 | 1.1.1 / 2014-07-08 25 | ================== 26 | 27 | * Fix Node.js 0.8 compatibility 28 | 29 | 1.1.0 / 2014-07-08 30 | ================== 31 | 32 | * Incorporate URL href-only parse fast-path 33 | 34 | 1.0.1 / 2014-03-08 35 | ================== 36 | 37 | * Add missing `require` 38 | 39 | 1.0.0 / 2014-03-08 40 | ================== 41 | 42 | * Genesis from `connect` 43 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/parseurl/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | (The MIT License) 3 | 4 | Copyright (c) 2014 Jonathan Ong 5 | Copyright (c) 2014 Douglas Christopher Wilson 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining 8 | a copy of this software and associated documentation files (the 9 | 'Software'), to deal in the Software without restriction, including 10 | without limitation the rights to use, copy, modify, merge, publish, 11 | distribute, sublicense, and/or sell copies of the Software, and to 12 | permit persons to whom the Software is furnished to do so, subject to 13 | the following conditions: 14 | 15 | The above copyright notice and this permission notice shall be 16 | included in all copies or substantial portions of the Software. 17 | 18 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 19 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 20 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 21 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 22 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 23 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 24 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 25 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/path-to-regexp/History.md: -------------------------------------------------------------------------------- 1 | 0.1.5 / 2015-05-08 2 | ================== 3 | 4 | * Add an index property for position in match result. 5 | 6 | 0.1.4 / 2015-03-05 7 | ================== 8 | 9 | * Add license information 10 | 11 | 0.1.3 / 2014-07-06 12 | ================== 13 | 14 | * Better array support 15 | * Improved support for trailing slash in non-ending mode 16 | 17 | 0.1.0 / 2014-03-06 18 | ================== 19 | 20 | * add options.end 21 | 22 | 0.0.2 / 2013-02-10 23 | ================== 24 | 25 | * Update to match current express 26 | * add .license property to component.json 27 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/path-to-regexp/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014 Blake Embrey (hello@blakeembrey.com) 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/path-to-regexp/Readme.md: -------------------------------------------------------------------------------- 1 | # Path-to-RegExp 2 | 3 | Turn an Express-style path string such as `/user/:name` into a regular expression. 4 | 5 | **Note:** This is a legacy branch. You should upgrade to `1.x`. If you find you are stuck on this version, your code will need to take into account the `index` property on the keys. 6 | 7 | ## Usage 8 | 9 | ```javascript 10 | var pathToRegexp = require('path-to-regexp'); 11 | ``` 12 | 13 | ### pathToRegexp(path, keys, options) 14 | 15 | - **path** A string in the express format, an array of such strings, or a regular expression 16 | - **keys** An array to be populated with the keys present in the url. Once the function completes, this will be an array of strings. 17 | - **options** 18 | - **options.sensitive** Defaults to false, set this to true to make routes case sensitive 19 | - **options.strict** Defaults to false, set this to true to make the trailing slash matter. 20 | - **options.end** Defaults to true, set this to false to only match the prefix of the URL. 21 | 22 | ```javascript 23 | var keys = []; 24 | var exp = pathToRegexp('/foo/:bar', keys); 25 | //keys = ['bar'] 26 | //exp = /^\/foo\/(?:([^\/]+?))\/?$/i 27 | ``` 28 | 29 | ## Live Demo 30 | 31 | You can see a live demo of this library in use at [express-route-tester](http://forbeslindesay.github.com/express-route-tester/). 32 | 33 | ## License 34 | 35 | MIT 36 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/proxy-addr/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.8 / 2015-05-10 2 | ================== 3 | 4 | * deps: ipaddr.js@1.0.1 5 | 6 | 1.0.7 / 2015-03-16 7 | ================== 8 | 9 | * deps: ipaddr.js@0.1.9 10 | - Fix OOM on certain inputs to `isValid` 11 | 12 | 1.0.6 / 2015-02-01 13 | ================== 14 | 15 | * deps: ipaddr.js@0.1.8 16 | 17 | 1.0.5 / 2015-01-08 18 | ================== 19 | 20 | * deps: ipaddr.js@0.1.6 21 | 22 | 1.0.4 / 2014-11-23 23 | ================== 24 | 25 | * deps: ipaddr.js@0.1.5 26 | - Fix edge cases with `isValid` 27 | 28 | 1.0.3 / 2014-09-21 29 | ================== 30 | 31 | * Use `forwarded` npm module 32 | 33 | 1.0.2 / 2014-09-18 34 | ================== 35 | 36 | * Fix a global leak when multiple subnets are trusted 37 | * Support Node.js 0.6 38 | * deps: ipaddr.js@0.1.3 39 | 40 | 1.0.1 / 2014-06-03 41 | ================== 42 | 43 | * Fix links in npm package 44 | 45 | 1.0.0 / 2014-05-08 46 | ================== 47 | 48 | * Add `trust` argument to determine proxy trust on 49 | * Accepts custom function 50 | * Accepts IPv4/IPv6 address(es) 51 | * Accepts subnets 52 | * Accepts pre-defined names 53 | * Add optional `trust` argument to `proxyaddr.all` to 54 | stop at first untrusted 55 | * Add `proxyaddr.compile` to pre-compile `trust` function 56 | to make subsequent calls faster 57 | 58 | 0.0.1 / 2014-05-04 59 | ================== 60 | 61 | * Fix bad npm publish 62 | 63 | 0.0.0 / 2014-05-04 64 | ================== 65 | 66 | * Initial release 67 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/proxy-addr/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/proxy-addr/node_modules/forwarded/HISTORY.md: -------------------------------------------------------------------------------- 1 | 0.1.0 / 2014-09-21 2 | ================== 3 | 4 | * Initial release 5 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/proxy-addr/node_modules/forwarded/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/proxy-addr/node_modules/forwarded/README.md: -------------------------------------------------------------------------------- 1 | # forwarded 2 | 3 | [![NPM Version][npm-image]][npm-url] 4 | [![NPM Downloads][downloads-image]][downloads-url] 5 | [![Node.js Version][node-version-image]][node-version-url] 6 | [![Build Status][travis-image]][travis-url] 7 | [![Test Coverage][coveralls-image]][coveralls-url] 8 | 9 | Parse HTTP X-Forwarded-For header 10 | 11 | ## Installation 12 | 13 | ```sh 14 | $ npm install forwarded 15 | ``` 16 | 17 | ## API 18 | 19 | ```js 20 | var forwarded = require('forwarded') 21 | ``` 22 | 23 | ### forwarded(req) 24 | 25 | ```js 26 | var addresses = forwarded(req) 27 | ``` 28 | 29 | Parse the `X-Forwarded-For` header from the request. Returns an array 30 | of the addresses, including the socket address for the `req`. In reverse 31 | order (i.e. index `0` is the socket address and the last index is the 32 | furthest address, typically the end-user). 33 | 34 | ## Testing 35 | 36 | ```sh 37 | $ npm test 38 | ``` 39 | 40 | ## License 41 | 42 | [MIT](LICENSE) 43 | 44 | [npm-image]: https://img.shields.io/npm/v/forwarded.svg?style=flat 45 | [npm-url]: https://npmjs.org/package/forwarded 46 | [node-version-image]: https://img.shields.io/node/v/forwarded.svg?style=flat 47 | [node-version-url]: http://nodejs.org/download/ 48 | [travis-image]: https://img.shields.io/travis/jshttp/forwarded.svg?style=flat 49 | [travis-url]: https://travis-ci.org/jshttp/forwarded 50 | [coveralls-image]: https://img.shields.io/coveralls/jshttp/forwarded.svg?style=flat 51 | [coveralls-url]: https://coveralls.io/r/jshttp/forwarded?branch=master 52 | [downloads-image]: https://img.shields.io/npm/dm/forwarded.svg?style=flat 53 | [downloads-url]: https://npmjs.org/package/forwarded 54 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/proxy-addr/node_modules/forwarded/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * forwarded 3 | * Copyright(c) 2014 Douglas Christopher Wilson 4 | * MIT Licensed 5 | */ 6 | 7 | /** 8 | * Module exports. 9 | */ 10 | 11 | module.exports = forwarded 12 | 13 | /** 14 | * Get all addresses in the request, using the `X-Forwarded-For` header. 15 | * 16 | * @param {Object} req 17 | * @api public 18 | */ 19 | 20 | function forwarded(req) { 21 | if (!req) { 22 | throw new TypeError('argument req is required') 23 | } 24 | 25 | // simple header parsing 26 | var proxyAddrs = (req.headers['x-forwarded-for'] || '') 27 | .split(/ *, */) 28 | .filter(Boolean) 29 | .reverse() 30 | var socketAddr = req.connection.remoteAddress 31 | var addrs = [socketAddr].concat(proxyAddrs) 32 | 33 | // return all addresses 34 | return addrs 35 | } 36 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/proxy-addr/node_modules/ipaddr.js/.npmignore: -------------------------------------------------------------------------------- 1 | .idea 2 | node_modules 3 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/proxy-addr/node_modules/ipaddr.js/Cakefile: -------------------------------------------------------------------------------- 1 | fs = require 'fs' 2 | CoffeeScript = require 'coffee-script' 3 | nodeunit = require 'nodeunit' 4 | UglifyJS = require 'uglify-js' 5 | 6 | task 'build', 'build the JavaScript files from CoffeeScript source', build = (cb) -> 7 | source = fs.readFileSync 'src/ipaddr.coffee' 8 | fs.writeFileSync 'lib/ipaddr.js', CoffeeScript.compile source.toString() 9 | 10 | invoke 'test' 11 | invoke 'compress' 12 | 13 | task 'test', 'run the bundled tests', (cb) -> 14 | nodeunit.reporters.default.run ['test'] 15 | 16 | task 'compress', 'uglify the resulting javascript', (cb) -> 17 | result = UglifyJS.minify('lib/ipaddr.js') 18 | fs.writeFileSync('ipaddr.min.js', result.code) 19 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/proxy-addr/node_modules/ipaddr.js/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (C) 2011 Peter Zotov 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. -------------------------------------------------------------------------------- /node_modules/express/node_modules/proxy-addr/node_modules/ipaddr.js/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ipaddr.js", 3 | "description": "A library for manipulating IPv4 and IPv6 addresses in JavaScript.", 4 | "version": "1.0.1", 5 | "author": { 6 | "name": "Peter Zotov", 7 | "email": "whitequark@whitequark.org" 8 | }, 9 | "directories": { 10 | "lib": "./lib" 11 | }, 12 | "dependencies": {}, 13 | "devDependencies": { 14 | "coffee-script": "~1.6", 15 | "nodeunit": "~0.5.3", 16 | "uglify-js": "latest" 17 | }, 18 | "scripts": { 19 | "test": "cake build test" 20 | }, 21 | "keywords": [ 22 | "ip", 23 | "ipv4", 24 | "ipv6" 25 | ], 26 | "repository": { 27 | "type": "git", 28 | "url": "git://github.com/whitequark/ipaddr.js.git" 29 | }, 30 | "main": "./lib/ipaddr", 31 | "engines": { 32 | "node": ">= 0.2.5" 33 | }, 34 | "license": "MIT", 35 | "gitHead": "0a5a26d9317a58d67047e7f32b5b1bbe7f2f7fbf", 36 | "bugs": { 37 | "url": "https://github.com/whitequark/ipaddr.js/issues" 38 | }, 39 | "_id": "ipaddr.js@1.0.1", 40 | "_shasum": "5f38801dc73e0400fc7076386f6ed5215fbd8f95", 41 | "_from": "ipaddr.js@1.0.1", 42 | "_npmVersion": "1.4.21", 43 | "_npmUser": { 44 | "name": "whitequark", 45 | "email": "whitequark@whitequark.org" 46 | }, 47 | "maintainers": [ 48 | { 49 | "name": "whitequark", 50 | "email": "whitequark@whitequark.org" 51 | } 52 | ], 53 | "dist": { 54 | "shasum": "5f38801dc73e0400fc7076386f6ed5215fbd8f95", 55 | "tarball": "http://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.0.1.tgz" 56 | }, 57 | "_resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.0.1.tgz", 58 | "readme": "ERROR: No README data found!", 59 | "homepage": "https://github.com/whitequark/ipaddr.js#readme" 60 | } 61 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/qs/.jshintignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/qs/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "node": true, 3 | 4 | "curly": true, 5 | "latedef": true, 6 | "quotmark": true, 7 | "undef": true, 8 | "unused": true, 9 | "trailing": true 10 | } 11 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/qs/.npmignore: -------------------------------------------------------------------------------- 1 | .idea 2 | *.iml 3 | npm-debug.log 4 | dump.rdb 5 | node_modules 6 | results.tap 7 | results.xml 8 | npm-shrinkwrap.json 9 | config.json 10 | .DS_Store 11 | */.DS_Store 12 | */*/.DS_Store 13 | ._* 14 | */._* 15 | */*/._* 16 | coverage.* 17 | lib-cov 18 | complexity.md 19 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/qs/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | 3 | node_js: 4 | - 0.10 5 | - 0.12 6 | - iojs 7 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/qs/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | Please view our [hapijs contributing guide](https://github.com/hapijs/hapi/blob/master/CONTRIBUTING.md). 2 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/qs/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014 Nathan LaFreniere and other contributors. 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are met: 6 | * Redistributions of source code must retain the above copyright 7 | notice, this list of conditions and the following disclaimer. 8 | * Redistributions in binary form must reproduce the above copyright 9 | notice, this list of conditions and the following disclaimer in the 10 | documentation and/or other materials provided with the distribution. 11 | * The names of any contributors may not be used to endorse or promote 12 | products derived from this software without specific prior written 13 | permission. 14 | 15 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 16 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 17 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 18 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY 19 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 20 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 21 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 22 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 24 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | 26 | * * * 27 | 28 | The complete list of contributors can be found at: https://github.com/hapijs/qs/graphs/contributors 29 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/qs/Makefile: -------------------------------------------------------------------------------- 1 | test: 2 | @node node_modules/lab/bin/lab -a code -L 3 | test-cov: 4 | @node node_modules/lab/bin/lab -a code -t 100 -L 5 | test-cov-html: 6 | @node node_modules/lab/bin/lab -a code -L -r html -o coverage.html 7 | 8 | .PHONY: test test-cov test-cov-html 9 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/qs/index.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/'); 2 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/qs/lib/index.js: -------------------------------------------------------------------------------- 1 | // Load modules 2 | 3 | var Stringify = require('./stringify'); 4 | var Parse = require('./parse'); 5 | 6 | 7 | // Declare internals 8 | 9 | var internals = {}; 10 | 11 | 12 | module.exports = { 13 | stringify: Stringify, 14 | parse: Parse 15 | }; 16 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/qs/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "qs", 3 | "version": "2.4.2", 4 | "description": "A querystring parser that supports nesting and arrays, with a depth limit", 5 | "homepage": "https://github.com/hapijs/qs", 6 | "main": "index.js", 7 | "dependencies": {}, 8 | "devDependencies": { 9 | "code": "1.x.x", 10 | "lab": "5.x.x" 11 | }, 12 | "scripts": { 13 | "test": "make test-cov" 14 | }, 15 | "repository": { 16 | "type": "git", 17 | "url": "git+https://github.com/hapijs/qs.git" 18 | }, 19 | "keywords": [ 20 | "querystring", 21 | "qs" 22 | ], 23 | "licenses": [ 24 | { 25 | "type": "BSD", 26 | "url": "http://github.com/hapijs/qs/raw/master/LICENSE" 27 | } 28 | ], 29 | "gitHead": "cdd64a9d1385dbc3dde48da6de98b5993f1607bd", 30 | "bugs": { 31 | "url": "https://github.com/hapijs/qs/issues" 32 | }, 33 | "_id": "qs@2.4.2", 34 | "_shasum": "f7ce788e5777df0b5010da7f7c4e73ba32470f5a", 35 | "_from": "qs@2.4.2", 36 | "_npmVersion": "2.9.0", 37 | "_nodeVersion": "0.10.38", 38 | "_npmUser": { 39 | "name": "nlf", 40 | "email": "quitlahok@gmail.com" 41 | }, 42 | "dist": { 43 | "shasum": "f7ce788e5777df0b5010da7f7c4e73ba32470f5a", 44 | "tarball": "http://registry.npmjs.org/qs/-/qs-2.4.2.tgz" 45 | }, 46 | "maintainers": [ 47 | { 48 | "name": "nlf", 49 | "email": "quitlahok@gmail.com" 50 | }, 51 | { 52 | "name": "hueniverse", 53 | "email": "eran@hueniverse.com" 54 | } 55 | ], 56 | "directories": {}, 57 | "_resolved": "https://registry.npmjs.org/qs/-/qs-2.4.2.tgz" 58 | } 59 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/range-parser/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.2 / 2014-09-08 2 | ================== 3 | 4 | * Support Node.js 0.6 5 | 6 | 1.0.1 / 2014-09-07 7 | ================== 8 | 9 | * Move repository to jshttp 10 | 11 | 1.0.0 / 2013-12-11 12 | ================== 13 | 14 | * Add repository to package.json 15 | * Add MIT license 16 | 17 | 0.0.4 / 2012-06-17 18 | ================== 19 | 20 | * Change ret -1 for unsatisfiable and -2 when invalid 21 | 22 | 0.0.3 / 2012-06-17 23 | ================== 24 | 25 | * Fix last-byte-pos default to len - 1 26 | 27 | 0.0.2 / 2012-06-14 28 | ================== 29 | 30 | * Add `.type` 31 | 32 | 0.0.1 / 2012-06-11 33 | ================== 34 | 35 | * Initial release 36 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/range-parser/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2012-2014 TJ Holowaychuk 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/range-parser/index.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * Parse "Range" header `str` relative to the given file `size`. 4 | * 5 | * @param {Number} size 6 | * @param {String} str 7 | * @return {Array} 8 | * @api public 9 | */ 10 | 11 | module.exports = function(size, str){ 12 | var valid = true; 13 | var i = str.indexOf('='); 14 | 15 | if (-1 == i) return -2; 16 | 17 | var arr = str.slice(i + 1).split(',').map(function(range){ 18 | var range = range.split('-') 19 | , start = parseInt(range[0], 10) 20 | , end = parseInt(range[1], 10); 21 | 22 | // -nnn 23 | if (isNaN(start)) { 24 | start = size - end; 25 | end = size - 1; 26 | // nnn- 27 | } else if (isNaN(end)) { 28 | end = size - 1; 29 | } 30 | 31 | // limit last-byte-pos to current length 32 | if (end > size - 1) end = size - 1; 33 | 34 | // invalid 35 | if (isNaN(start) 36 | || isNaN(end) 37 | || start > end 38 | || start < 0) valid = false; 39 | 40 | return { 41 | start: start, 42 | end: end 43 | }; 44 | }); 45 | 46 | arr.type = str.slice(0, i); 47 | 48 | return valid ? arr : -1; 49 | }; 50 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2012 TJ Holowaychuk 4 | Copyright (c) 2014-2015 Douglas Christopher Wilson 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining 7 | a copy of this software and associated documentation files (the 8 | 'Software'), to deal in the Software without restriction, including 9 | without limitation the rights to use, copy, modify, merge, publish, 10 | distribute, sublicense, and/or sell copies of the Software, and to 11 | permit persons to whom the Software is furnished to do so, subject to 12 | the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be 15 | included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 18 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 19 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 20 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 21 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 22 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 23 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/.bin/mime: -------------------------------------------------------------------------------- 1 | ../mime/cli.js -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/destroy/README.md: -------------------------------------------------------------------------------- 1 | # Destroy 2 | 3 | [![NPM version][npm-image]][npm-url] 4 | [![Build status][travis-image]][travis-url] 5 | [![Test coverage][coveralls-image]][coveralls-url] 6 | [![Dependency Status][david-image]][david-url] 7 | [![License][license-image]][license-url] 8 | [![Downloads][downloads-image]][downloads-url] 9 | [![Gittip][gittip-image]][gittip-url] 10 | 11 | Destroy a stream. 12 | 13 | ## API 14 | 15 | ```js 16 | var destroy = require('destroy') 17 | 18 | var fs = require('fs') 19 | var stream = fs.createReadStream('package.json') 20 | destroy(stream) 21 | ``` 22 | 23 | [npm-image]: https://img.shields.io/npm/v/destroy.svg?style=flat-square 24 | [npm-url]: https://npmjs.org/package/destroy 25 | [github-tag]: http://img.shields.io/github/tag/stream-utils/destroy.svg?style=flat-square 26 | [github-url]: https://github.com/stream-utils/destroy/tags 27 | [travis-image]: https://img.shields.io/travis/stream-utils/destroy.svg?style=flat-square 28 | [travis-url]: https://travis-ci.org/stream-utils/destroy 29 | [coveralls-image]: https://img.shields.io/coveralls/stream-utils/destroy.svg?style=flat-square 30 | [coveralls-url]: https://coveralls.io/r/stream-utils/destroy?branch=master 31 | [david-image]: http://img.shields.io/david/stream-utils/destroy.svg?style=flat-square 32 | [david-url]: https://david-dm.org/stream-utils/destroy 33 | [license-image]: http://img.shields.io/npm/l/destroy.svg?style=flat-square 34 | [license-url]: LICENSE.md 35 | [downloads-image]: http://img.shields.io/npm/dm/destroy.svg?style=flat-square 36 | [downloads-url]: https://npmjs.org/package/destroy 37 | [gittip-image]: https://img.shields.io/gittip/jonathanong.svg?style=flat-square 38 | [gittip-url]: https://www.gittip.com/jonathanong/ 39 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/destroy/index.js: -------------------------------------------------------------------------------- 1 | var ReadStream = require('fs').ReadStream 2 | var Stream = require('stream') 3 | 4 | module.exports = function destroy(stream) { 5 | if (stream instanceof ReadStream) { 6 | return destroyReadStream(stream) 7 | } 8 | 9 | if (!(stream instanceof Stream)) { 10 | return stream 11 | } 12 | 13 | if (typeof stream.destroy === 'function') { 14 | stream.destroy() 15 | } 16 | 17 | return stream 18 | } 19 | 20 | function destroyReadStream(stream) { 21 | stream.destroy() 22 | 23 | if (typeof stream.close === 'function') { 24 | // node.js core bug work-around 25 | stream.on('open', onopenClose) 26 | } 27 | 28 | return stream 29 | } 30 | 31 | function onopenClose() { 32 | if (typeof this.fd === 'number') { 33 | // actually close down the fd 34 | this.close() 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/http-errors/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | The MIT License (MIT) 3 | 4 | Copyright (c) 2014 Jonathan Ong me@jongleberry.com 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/http-errors/node_modules/inherits/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH 10 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND 11 | FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, 12 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 13 | LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR 14 | OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 15 | PERFORMANCE OF THIS SOFTWARE. 16 | 17 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/http-errors/node_modules/inherits/inherits.js: -------------------------------------------------------------------------------- 1 | module.exports = require('util').inherits 2 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/http-errors/node_modules/inherits/inherits_browser.js: -------------------------------------------------------------------------------- 1 | if (typeof Object.create === 'function') { 2 | // implementation from standard node.js 'util' module 3 | module.exports = function inherits(ctor, superCtor) { 4 | ctor.super_ = superCtor 5 | ctor.prototype = Object.create(superCtor.prototype, { 6 | constructor: { 7 | value: ctor, 8 | enumerable: false, 9 | writable: true, 10 | configurable: true 11 | } 12 | }); 13 | }; 14 | } else { 15 | // old school shim for old browsers 16 | module.exports = function inherits(ctor, superCtor) { 17 | ctor.super_ = superCtor 18 | var TempCtor = function () {} 19 | TempCtor.prototype = superCtor.prototype 20 | ctor.prototype = new TempCtor() 21 | ctor.prototype.constructor = ctor 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/http-errors/node_modules/inherits/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "inherits", 3 | "description": "Browser-friendly inheritance fully compatible with standard node.js inherits()", 4 | "version": "2.0.1", 5 | "keywords": [ 6 | "inheritance", 7 | "class", 8 | "klass", 9 | "oop", 10 | "object-oriented", 11 | "inherits", 12 | "browser", 13 | "browserify" 14 | ], 15 | "main": "./inherits.js", 16 | "browser": "./inherits_browser.js", 17 | "repository": { 18 | "type": "git", 19 | "url": "git://github.com/isaacs/inherits.git" 20 | }, 21 | "license": "ISC", 22 | "scripts": { 23 | "test": "node test" 24 | }, 25 | "bugs": { 26 | "url": "https://github.com/isaacs/inherits/issues" 27 | }, 28 | "_id": "inherits@2.0.1", 29 | "dist": { 30 | "shasum": "b17d08d326b4423e568eff719f91b0b1cbdf69f1", 31 | "tarball": "http://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" 32 | }, 33 | "_from": "inherits@>=2.0.1 <2.1.0", 34 | "_npmVersion": "1.3.8", 35 | "_npmUser": { 36 | "name": "isaacs", 37 | "email": "i@izs.me" 38 | }, 39 | "maintainers": [ 40 | { 41 | "name": "isaacs", 42 | "email": "i@izs.me" 43 | } 44 | ], 45 | "directories": {}, 46 | "_shasum": "b17d08d326b4423e568eff719f91b0b1cbdf69f1", 47 | "_resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", 48 | "readme": "ERROR: No README data found!", 49 | "homepage": "https://github.com/isaacs/inherits#readme" 50 | } 51 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/http-errors/node_modules/inherits/test.js: -------------------------------------------------------------------------------- 1 | var inherits = require('./inherits.js') 2 | var assert = require('assert') 3 | 4 | function test(c) { 5 | assert(c.constructor === Child) 6 | assert(c.constructor.super_ === Parent) 7 | assert(Object.getPrototypeOf(c) === Child.prototype) 8 | assert(Object.getPrototypeOf(Object.getPrototypeOf(c)) === Parent.prototype) 9 | assert(c instanceof Child) 10 | assert(c instanceof Parent) 11 | } 12 | 13 | function Child() { 14 | Parent.call(this) 15 | test(this) 16 | } 17 | 18 | function Parent() {} 19 | 20 | inherits(Child, Parent) 21 | 22 | var c = new Child 23 | test(c) 24 | 25 | console.log('ok') 26 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/mime/.npmignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/node_modules/express/node_modules/send/node_modules/mime/.npmignore -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/mime/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2010 Benjamin Thomas, Robert Kieffer 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/mime/build/build.js: -------------------------------------------------------------------------------- 1 | var db = require('mime-db'); 2 | 3 | var mapByType = {}; 4 | Object.keys(db).forEach(function(key) { 5 | var extensions = db[key].extensions; 6 | if (extensions) { 7 | mapByType[key] = extensions; 8 | } 9 | }); 10 | 11 | console.log(JSON.stringify(mapByType)); 12 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/mime/cli.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | var mime = require('./mime.js'); 4 | var file = process.argv[2]; 5 | var type = mime.lookup(file); 6 | 7 | process.stdout.write(type + '\n'); 8 | 9 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/ms/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | test 3 | History.md 4 | Makefile 5 | component.json 6 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/ms/History.md: -------------------------------------------------------------------------------- 1 | 2 | 0.7.1 / 2015-04-20 3 | ================== 4 | 5 | * prevent extraordinary long inputs (@evilpacket) 6 | * Fixed broken readme link 7 | 8 | 0.7.0 / 2014-11-24 9 | ================== 10 | 11 | * add time abbreviations, updated tests and readme for the new units 12 | * fix example in the readme. 13 | * add LICENSE file 14 | 15 | 0.6.2 / 2013-12-05 16 | ================== 17 | 18 | * Adding repository section to package.json to suppress warning from NPM. 19 | 20 | 0.6.1 / 2013-05-10 21 | ================== 22 | 23 | * fix singularization [visionmedia] 24 | 25 | 0.6.0 / 2013-03-15 26 | ================== 27 | 28 | * fix minutes 29 | 30 | 0.5.1 / 2013-02-24 31 | ================== 32 | 33 | * add component namespace 34 | 35 | 0.5.0 / 2012-11-09 36 | ================== 37 | 38 | * add short formatting as default and .long option 39 | * add .license property to component.json 40 | * add version to component.json 41 | 42 | 0.4.0 / 2012-10-22 43 | ================== 44 | 45 | * add rounding to fix crazy decimals 46 | 47 | 0.3.0 / 2012-09-07 48 | ================== 49 | 50 | * fix `ms()` [visionmedia] 51 | 52 | 0.2.0 / 2012-09-03 53 | ================== 54 | 55 | * add component.json [visionmedia] 56 | * add days support [visionmedia] 57 | * add hours support [visionmedia] 58 | * add minutes support [visionmedia] 59 | * add seconds support [visionmedia] 60 | * add ms string support [visionmedia] 61 | * refactor tests to facilitate ms(number) [visionmedia] 62 | 63 | 0.1.0 / 2012-03-07 64 | ================== 65 | 66 | * Initial release 67 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/ms/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Guillermo Rauch 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/ms/README.md: -------------------------------------------------------------------------------- 1 | # ms.js: miliseconds conversion utility 2 | 3 | ```js 4 | ms('2 days') // 172800000 5 | ms('1d') // 86400000 6 | ms('10h') // 36000000 7 | ms('2.5 hrs') // 9000000 8 | ms('2h') // 7200000 9 | ms('1m') // 60000 10 | ms('5s') // 5000 11 | ms('100') // 100 12 | ``` 13 | 14 | ```js 15 | ms(60000) // "1m" 16 | ms(2 * 60000) // "2m" 17 | ms(ms('10 hours')) // "10h" 18 | ``` 19 | 20 | ```js 21 | ms(60000, { long: true }) // "1 minute" 22 | ms(2 * 60000, { long: true }) // "2 minutes" 23 | ms(ms('10 hours'), { long: true }) // "10 hours" 24 | ``` 25 | 26 | - Node/Browser compatible. Published as [`ms`](https://www.npmjs.org/package/ms) in [NPM](http://nodejs.org/download). 27 | - If a number is supplied to `ms`, a string with a unit is returned. 28 | - If a string that contains the number is supplied, it returns it as 29 | a number (e.g: it returns `100` for `'100'`). 30 | - If you pass a string with a number and a valid unit, the number of 31 | equivalent ms is returned. 32 | 33 | ## License 34 | 35 | MIT 36 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/ms/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ms", 3 | "version": "0.7.1", 4 | "description": "Tiny ms conversion utility", 5 | "repository": { 6 | "type": "git", 7 | "url": "git://github.com/guille/ms.js.git" 8 | }, 9 | "main": "./index", 10 | "devDependencies": { 11 | "mocha": "*", 12 | "expect.js": "*", 13 | "serve": "*" 14 | }, 15 | "component": { 16 | "scripts": { 17 | "ms/index.js": "index.js" 18 | } 19 | }, 20 | "gitHead": "713dcf26d9e6fd9dbc95affe7eff9783b7f1b909", 21 | "bugs": { 22 | "url": "https://github.com/guille/ms.js/issues" 23 | }, 24 | "homepage": "https://github.com/guille/ms.js", 25 | "_id": "ms@0.7.1", 26 | "scripts": {}, 27 | "_shasum": "9cd13c03adbff25b65effde7ce864ee952017098", 28 | "_from": "ms@0.7.1", 29 | "_npmVersion": "2.7.5", 30 | "_nodeVersion": "0.12.2", 31 | "_npmUser": { 32 | "name": "rauchg", 33 | "email": "rauchg@gmail.com" 34 | }, 35 | "maintainers": [ 36 | { 37 | "name": "rauchg", 38 | "email": "rauchg@gmail.com" 39 | } 40 | ], 41 | "dist": { 42 | "shasum": "9cd13c03adbff25b65effde7ce864ee952017098", 43 | "tarball": "http://registry.npmjs.org/ms/-/ms-0.7.1.tgz" 44 | }, 45 | "directories": {}, 46 | "_resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz" 47 | } 48 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/statuses/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | The MIT License (MIT) 3 | 4 | Copyright (c) 2014 Jonathan Ong me@jongleberry.com 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/send/node_modules/statuses/index.js: -------------------------------------------------------------------------------- 1 | 2 | var codes = require('./codes.json'); 3 | 4 | module.exports = status; 5 | 6 | // [Integer...] 7 | status.codes = Object.keys(codes).map(function (code) { 8 | code = ~~code; 9 | var msg = codes[code]; 10 | status[code] = msg; 11 | status[msg] = status[msg.toLowerCase()] = code; 12 | return code; 13 | }); 14 | 15 | // status codes for redirects 16 | status.redirect = { 17 | 300: true, 18 | 301: true, 19 | 302: true, 20 | 303: true, 21 | 305: true, 22 | 307: true, 23 | 308: true, 24 | }; 25 | 26 | // status codes for empty bodies 27 | status.empty = { 28 | 204: true, 29 | 205: true, 30 | 304: true, 31 | }; 32 | 33 | // status codes for when you should retry the request 34 | status.retry = { 35 | 502: true, 36 | 503: true, 37 | 504: true, 38 | }; 39 | 40 | function status(code) { 41 | if (typeof code === 'number') { 42 | if (!status[code]) throw new Error('invalid status code: ' + code); 43 | return code; 44 | } 45 | 46 | if (typeof code !== 'string') { 47 | throw new TypeError('code must be a number or string'); 48 | } 49 | 50 | // '403' 51 | var n = parseInt(code, 10) 52 | if (!isNaN(n)) { 53 | if (!status[n]) throw new Error('invalid status code: ' + n); 54 | return n; 55 | } 56 | 57 | n = status[code.toLowerCase()]; 58 | if (!n) throw new Error('invalid status message: "' + code + '"'); 59 | return n; 60 | } 61 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/serve-static/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2010 Sencha Inc. 4 | Copyright (c) 2011 LearnBoost 5 | Copyright (c) 2011 TJ Holowaychuk 6 | Copyright (c) 2014-2015 Douglas Christopher Wilson 7 | 8 | Permission is hereby granted, free of charge, to any person obtaining 9 | a copy of this software and associated documentation files (the 10 | 'Software'), to deal in the Software without restriction, including 11 | without limitation the rights to use, copy, modify, merge, publish, 12 | distribute, sublicense, and/or sell copies of the Software, and to 13 | permit persons to whom the Software is furnished to do so, subject to 14 | the following conditions: 15 | 16 | The above copyright notice and this permission notice shall be 17 | included in all copies or substantial portions of the Software. 18 | 19 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 20 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 21 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 22 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 23 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 24 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 25 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 26 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/type-is/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Jonathan Ong 4 | Copyright (c) 2014-2015 Douglas Christopher Wilson 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining 7 | a copy of this software and associated documentation files (the 8 | 'Software'), to deal in the Software without restriction, including 9 | without limitation the rights to use, copy, modify, merge, publish, 10 | distribute, sublicense, and/or sell copies of the Software, and to 11 | permit persons to whom the Software is furnished to do so, subject to 12 | the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be 15 | included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 18 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 19 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 20 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 21 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 22 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 23 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/type-is/node_modules/media-typer/HISTORY.md: -------------------------------------------------------------------------------- 1 | 0.3.0 / 2014-09-07 2 | ================== 3 | 4 | * Support Node.js 0.6 5 | * Throw error when parameter format invalid on parse 6 | 7 | 0.2.0 / 2014-06-18 8 | ================== 9 | 10 | * Add `typer.format()` to format media types 11 | 12 | 0.1.0 / 2014-06-17 13 | ================== 14 | 15 | * Accept `req` as argument to `parse` 16 | * Accept `res` as argument to `parse` 17 | * Parse media type with extra LWS between type and first parameter 18 | 19 | 0.0.0 / 2014-06-13 20 | ================== 21 | 22 | * Initial implementation 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/type-is/node_modules/media-typer/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/type-is/node_modules/mime-types/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Jonathan Ong 4 | Copyright (c) 2015 Douglas Christopher Wilson 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining 7 | a copy of this software and associated documentation files (the 8 | 'Software'), to deal in the Software without restriction, including 9 | without limitation the rights to use, copy, modify, merge, publish, 10 | distribute, sublicense, and/or sell copies of the Software, and to 11 | permit persons to whom the Software is furnished to do so, subject to 12 | the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be 15 | included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 18 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 19 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 20 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 21 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 22 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 23 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/type-is/node_modules/mime-types/node_modules/mime-db/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | The MIT License (MIT) 3 | 4 | Copyright (c) 2014 Jonathan Ong me@jongleberry.com 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/type-is/node_modules/mime-types/node_modules/mime-db/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * mime-db 3 | * Copyright(c) 2014 Jonathan Ong 4 | * MIT Licensed 5 | */ 6 | 7 | /** 8 | * Module exports. 9 | */ 10 | 11 | module.exports = require('./db.json') 12 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/utils-merge/.travis.yml: -------------------------------------------------------------------------------- 1 | language: "node_js" 2 | node_js: 3 | - "0.4" 4 | - "0.6" 5 | - "0.8" 6 | - "0.10" 7 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/utils-merge/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2013 Jared Hanson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/utils-merge/README.md: -------------------------------------------------------------------------------- 1 | # utils-merge 2 | 3 | Merges the properties from a source object into a destination object. 4 | 5 | ## Install 6 | 7 | $ npm install utils-merge 8 | 9 | ## Usage 10 | 11 | ```javascript 12 | var a = { foo: 'bar' } 13 | , b = { bar: 'baz' }; 14 | 15 | merge(a, b); 16 | // => { foo: 'bar', bar: 'baz' } 17 | ``` 18 | 19 | ## Tests 20 | 21 | $ npm install 22 | $ npm test 23 | 24 | [![Build Status](https://secure.travis-ci.org/jaredhanson/utils-merge.png)](http://travis-ci.org/jaredhanson/utils-merge) 25 | 26 | ## Credits 27 | 28 | - [Jared Hanson](http://github.com/jaredhanson) 29 | 30 | ## License 31 | 32 | [The MIT License](http://opensource.org/licenses/MIT) 33 | 34 | Copyright (c) 2013 Jared Hanson <[http://jaredhanson.net/](http://jaredhanson.net/)> 35 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/utils-merge/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Merge object b with object a. 3 | * 4 | * var a = { foo: 'bar' } 5 | * , b = { bar: 'baz' }; 6 | * 7 | * merge(a, b); 8 | * // => { foo: 'bar', bar: 'baz' } 9 | * 10 | * @param {Object} a 11 | * @param {Object} b 12 | * @return {Object} 13 | * @api public 14 | */ 15 | 16 | exports = module.exports = function(a, b){ 17 | if (a && b) { 18 | for (var key in b) { 19 | a[key] = b[key]; 20 | } 21 | } 22 | return a; 23 | }; 24 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/utils-merge/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "utils-merge", 3 | "version": "1.0.0", 4 | "description": "merge() utility function", 5 | "keywords": [ 6 | "util" 7 | ], 8 | "repository": { 9 | "type": "git", 10 | "url": "git://github.com/jaredhanson/utils-merge.git" 11 | }, 12 | "bugs": { 13 | "url": "http://github.com/jaredhanson/utils-merge/issues" 14 | }, 15 | "author": { 16 | "name": "Jared Hanson", 17 | "email": "jaredhanson@gmail.com", 18 | "url": "http://www.jaredhanson.net/" 19 | }, 20 | "licenses": [ 21 | { 22 | "type": "MIT", 23 | "url": "http://www.opensource.org/licenses/MIT" 24 | } 25 | ], 26 | "main": "./index", 27 | "dependencies": {}, 28 | "devDependencies": { 29 | "mocha": "1.x.x", 30 | "chai": "1.x.x" 31 | }, 32 | "scripts": { 33 | "test": "mocha --reporter spec --require test/bootstrap/node test/*.test.js" 34 | }, 35 | "engines": { 36 | "node": ">= 0.4.0" 37 | }, 38 | "_id": "utils-merge@1.0.0", 39 | "dist": { 40 | "shasum": "0294fb922bb9375153541c4f7096231f287c8af8", 41 | "tarball": "http://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz" 42 | }, 43 | "_from": "utils-merge@1.0.0", 44 | "_npmVersion": "1.2.25", 45 | "_npmUser": { 46 | "name": "jaredhanson", 47 | "email": "jaredhanson@gmail.com" 48 | }, 49 | "maintainers": [ 50 | { 51 | "name": "jaredhanson", 52 | "email": "jaredhanson@gmail.com" 53 | } 54 | ], 55 | "directories": {}, 56 | "_shasum": "0294fb922bb9375153541c4f7096231f287c8af8", 57 | "_resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz", 58 | "readme": "ERROR: No README data found!", 59 | "homepage": "https://github.com/jaredhanson/utils-merge#readme" 60 | } 61 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/vary/.npmignore: -------------------------------------------------------------------------------- 1 | coverage/ 2 | test/ 3 | .travis.yml 4 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/vary/History.md: -------------------------------------------------------------------------------- 1 | 1.0.0 / 2014-08-10 2 | ================== 3 | 4 | * Accept valid `Vary` header string as `field` 5 | * Add `vary.append` for low-level string manipulation 6 | * Move to `jshttp` orgainzation 7 | 8 | 0.1.0 / 2014-06-05 9 | ================== 10 | 11 | * Support array of fields to set 12 | 13 | 0.0.0 / 2014-06-04 14 | ================== 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /node_modules/express/node_modules/vary/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Douglas Christopher Wilson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /olap/a1.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/olap/a1.txt -------------------------------------------------------------------------------- /olap/a3.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/olap/a3.txt -------------------------------------------------------------------------------- /olap/a6.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/olap/a6.txt -------------------------------------------------------------------------------- /olap/a7.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/olap/a7.txt -------------------------------------------------------------------------------- /olap/a8.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/olap/a8.txt -------------------------------------------------------------------------------- /olap/a9.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/olap/a9.txt -------------------------------------------------------------------------------- /olap/open.txt: -------------------------------------------------------------------------------- 1 | http://bi.syncfusion.com/olap/msmdpump.dll -------------------------------------------------------------------------------- /olap/q1.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | DISCOVER_DATASOURCES 6 | 7 | 8 | 9 | 10 | Tabular 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /olap/q2.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | DBSCHEMA_CATALOGS 6 | 7 | 8 | 9 | 10 | Provider=Mondrian;DataSource=MondrianFoodMart; 11 | Tabular 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /olap/q3.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | MDSCHEMA_CUBES 6 | 7 | 8 | FoodMart 9 | 10 | 11 | 12 | 13 | Provider=Mondrian;DataSource=MondrianFoodMart; 14 | FoodMart 15 | Tabular 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /olap/q4.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | MDSCHEMA_DIMENSIONS 6 | 7 | 8 | FoodMart 9 | deptqty 10 | 11 | 12 | 13 | 14 | Provider=Mondrian;DataSource=MondrianFoodMart; 15 | FoodMart 16 | Tabular 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /olap/q5.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | MDSCHEMA_HIERARCHIES 6 | 7 | 8 | FoodMart 9 | deptqty 10 | [deptdim] 11 | 12 | 13 | 14 | 15 | Provider=Mondrian;DataSource=MondrianFoodMart; 16 | FoodMart 17 | Tabular 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /olap/q6.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/olap/q6.txt -------------------------------------------------------------------------------- /olap/q7.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/olap/q7.txt -------------------------------------------------------------------------------- /olap/q8.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/olap/q8.txt -------------------------------------------------------------------------------- /olap/q9.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/olap/q9.txt -------------------------------------------------------------------------------- /public/css/ajax-loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/css/ajax-loader.gif -------------------------------------------------------------------------------- /public/css/bgleft1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/css/bgleft1.png -------------------------------------------------------------------------------- /public/css/bgtop3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/css/bgtop3.png -------------------------------------------------------------------------------- /public/css/default.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Copyright 2014 Roland Bouman 4 | 5 | Licensed under the Apache License, Version 2.0 (the "License"); 6 | you may not use this file except in compliance with the License. 7 | You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | 17 | */ 18 | body { 19 | background-color: white; 20 | font-family: Arial, sans; 21 | } 22 | 23 | pre, pre *, code, textarea { 24 | font-family: Courier, monospace !important; 25 | } 26 | 27 | legend { 28 | font-weight: bold; 29 | } 30 | 31 | h1 { 32 | background-image: url(logo80x58.png); 33 | background-repeat:no-repeat; 34 | padding-left: 90px; 35 | height: 70px; 36 | } 37 | -------------------------------------------------------------------------------- /public/css/logo16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/css/logo16x16.png -------------------------------------------------------------------------------- /public/css/logo80x58.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/css/logo80x58.png -------------------------------------------------------------------------------- /public/css/pivot-table.css: -------------------------------------------------------------------------------- 1 | table.pivot { 2 | font-family: Sans-serif; 3 | font-size: 8pt; 4 | border-style: none solid solid none; 5 | border-color: rgb(225,225,225); 6 | border-width: 1px; 7 | } 8 | 9 | table.pivot th { 10 | font-weight: normal; 11 | white-space:nowrap; 12 | min-width: .2em; 13 | vertical-align: top; 14 | background-color: rgb(200,200,200); 15 | text-align: left; 16 | background-image: url(../css/bgtop3.png); 17 | background-repeat: repeat-x; 18 | } 19 | 20 | table.pivot th, table.pivot td { 21 | border-style:solid none none solid ; 22 | border-color: rgb(225,225,225); 23 | border-width: 1px; 24 | padding:1px; 25 | } 26 | 27 | table.pivot th.spacer { 28 | border-top-style: none; 29 | min-width: 1em !important; 30 | width: 1em !important; 31 | background-image: url(); 32 | } 33 | table.pivot th.hierarchy { 34 | font-weight: bold; 35 | text-align: center; 36 | } 37 | table.pivot td { 38 | text-align: right; 39 | background-color: rgb(250,250,155); 40 | font-family: monospace; 41 | padding: 1px 2px 1px 1em !important; 42 | background-image: url(../css/bgleft1.png); 43 | background-repeat: repeat-y; 44 | } 45 | table.pivot span.driller { 46 | font-family: monospace; 47 | cursor: pointer; 48 | padding: 2px; 49 | 50 | } 51 | -------------------------------------------------------------------------------- /public/defaultXmlaUrl.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2014 Roland Bouman 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | var defaultXmlaUrl = "http://localhost:8080/mondrian-embedded/xmla"; 17 | -------------------------------------------------------------------------------- /public/js/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "undef": true, 3 | "unused": true, 4 | "browser": true, 5 | "predef": [ "jQuery" ] 6 | } -------------------------------------------------------------------------------- /public/js/css/arrow-left-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/arrow-left-g.png -------------------------------------------------------------------------------- /public/js/css/arrow-left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/arrow-left.png -------------------------------------------------------------------------------- /public/js/css/arrow-left32-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/arrow-left32-g.png -------------------------------------------------------------------------------- /public/js/css/arrow-left32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/arrow-left32.png -------------------------------------------------------------------------------- /public/js/css/arrow-right-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/arrow-right-g.png -------------------------------------------------------------------------------- /public/js/css/arrow-right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/arrow-right.png -------------------------------------------------------------------------------- /public/js/css/arrow-right32-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/arrow-right32-g.png -------------------------------------------------------------------------------- /public/js/css/arrow-right32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/arrow-right32.png -------------------------------------------------------------------------------- /public/js/css/bin1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/bin1.png -------------------------------------------------------------------------------- /public/js/css/bin2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/bin2.png -------------------------------------------------------------------------------- /public/js/css/cube-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/cube-g.png -------------------------------------------------------------------------------- /public/js/css/cube.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/cube.png -------------------------------------------------------------------------------- /public/js/css/dimension-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/dimension-g.png -------------------------------------------------------------------------------- /public/js/css/dimension-time-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/dimension-time-g.png -------------------------------------------------------------------------------- /public/js/css/dimension-time.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/dimension-time.png -------------------------------------------------------------------------------- /public/js/css/dimension.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/dimension.png -------------------------------------------------------------------------------- /public/js/css/filter-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/filter-g.png -------------------------------------------------------------------------------- /public/js/css/filter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/filter.png -------------------------------------------------------------------------------- /public/js/css/gcan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/gcan.png -------------------------------------------------------------------------------- /public/js/css/hierarchy-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/hierarchy-g.png -------------------------------------------------------------------------------- /public/js/css/hierarchy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/hierarchy.png -------------------------------------------------------------------------------- /public/js/css/level00-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level00-g.png -------------------------------------------------------------------------------- /public/js/css/level00.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level00.png -------------------------------------------------------------------------------- /public/js/css/level01-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level01-g.png -------------------------------------------------------------------------------- /public/js/css/level01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level01.png -------------------------------------------------------------------------------- /public/js/css/level02-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level02-g.png -------------------------------------------------------------------------------- /public/js/css/level02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level02.png -------------------------------------------------------------------------------- /public/js/css/level03-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level03-g.png -------------------------------------------------------------------------------- /public/js/css/level03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level03.png -------------------------------------------------------------------------------- /public/js/css/level04-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level04-g.png -------------------------------------------------------------------------------- /public/js/css/level04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level04.png -------------------------------------------------------------------------------- /public/js/css/level05-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level05-g.png -------------------------------------------------------------------------------- /public/js/css/level05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level05.png -------------------------------------------------------------------------------- /public/js/css/level06-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level06-g.png -------------------------------------------------------------------------------- /public/js/css/level06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level06.png -------------------------------------------------------------------------------- /public/js/css/level07-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level07-g.png -------------------------------------------------------------------------------- /public/js/css/level07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level07.png -------------------------------------------------------------------------------- /public/js/css/level08-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level08-g.png -------------------------------------------------------------------------------- /public/js/css/level08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level08.png -------------------------------------------------------------------------------- /public/js/css/level09-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level09-g.png -------------------------------------------------------------------------------- /public/js/css/level09.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level09.png -------------------------------------------------------------------------------- /public/js/css/level10-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level10-g.png -------------------------------------------------------------------------------- /public/js/css/level10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level10.png -------------------------------------------------------------------------------- /public/js/css/level12-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level12-g.png -------------------------------------------------------------------------------- /public/js/css/level12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level12.png -------------------------------------------------------------------------------- /public/js/css/level13-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level13-g.png -------------------------------------------------------------------------------- /public/js/css/level13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level13.png -------------------------------------------------------------------------------- /public/js/css/level14-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level14-g.png -------------------------------------------------------------------------------- /public/js/css/level14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level14.png -------------------------------------------------------------------------------- /public/js/css/level15-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level15-g.png -------------------------------------------------------------------------------- /public/js/css/level15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level15.png -------------------------------------------------------------------------------- /public/js/css/level16-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level16-g.png -------------------------------------------------------------------------------- /public/js/css/level16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/level16.png -------------------------------------------------------------------------------- /public/js/css/measure-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/measure-g.png -------------------------------------------------------------------------------- /public/js/css/measure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/measure.png -------------------------------------------------------------------------------- /public/js/css/measures-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/measures-g.png -------------------------------------------------------------------------------- /public/js/css/measures.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/measures.png -------------------------------------------------------------------------------- /public/js/css/no.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/no.png -------------------------------------------------------------------------------- /public/js/css/save-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/save-g.png -------------------------------------------------------------------------------- /public/js/css/save.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/save.png -------------------------------------------------------------------------------- /public/js/css/save32-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/save32-g.png -------------------------------------------------------------------------------- /public/js/css/save32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/save32.png -------------------------------------------------------------------------------- /public/js/css/snd-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/snd-g.png -------------------------------------------------------------------------------- /public/js/css/snd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/snd.png -------------------------------------------------------------------------------- /public/js/css/snd32-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/snd32-g.png -------------------------------------------------------------------------------- /public/js/css/snd32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/snd32.png -------------------------------------------------------------------------------- /public/js/css/sort1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/sort1.png -------------------------------------------------------------------------------- /public/js/css/sort2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/sort2.png -------------------------------------------------------------------------------- /public/js/css/sort3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/sort3.png -------------------------------------------------------------------------------- /public/js/css/sort32-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/sort32-g.png -------------------------------------------------------------------------------- /public/js/css/sort32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/sort32.png -------------------------------------------------------------------------------- /public/js/css/sort4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/sort4.png -------------------------------------------------------------------------------- /public/js/css/spinner.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/spinner.gif -------------------------------------------------------------------------------- /public/js/css/xls32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/xls32.png -------------------------------------------------------------------------------- /public/js/css/xlsx32-g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/xlsx32-g.png -------------------------------------------------------------------------------- /public/js/css/xlsx32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/xlsx32.png -------------------------------------------------------------------------------- /public/js/css/yes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/css/yes.png -------------------------------------------------------------------------------- /public/js/jqCube-hr-HR.js: -------------------------------------------------------------------------------- 1 |  2 | $.jqCube.i18n = $.extend({}, $.jqCube.i18n, { 3 | General: { 4 | Message: "Poruka", 5 | Status: "Status", 6 | Measures: "Mjere" 7 | }, 8 | EmptyTable: { 9 | DropColumnsCaption: "-- ovdje staviti mjere i polja koja želite prikazati u kolonama --", 10 | DropRowsCaption: "-- ovdje staviti polja koja želite prikazati u retcima --" 11 | }, 12 | Filter: { 13 | DropCaption: "-- ovdje staviti polja za filtriranja rezulatat upita --", 14 | SelectMembersTitle: "Odaberite dozvoljene članove", 15 | SelectMembersAll: "Svi", 16 | SelectMembersNone: "Niti jedan", 17 | SelectMembersOK: "Odaberi", 18 | SelectMembersCancel: "Odustani" 19 | }, 20 | Toolbar: { 21 | ReadyCaption: "OK.", 22 | PopulatingCaption: "Dohvat podataka dimenzijskog stabla...", 23 | ExecutingCaption: "Upit se obavlja...", 24 | ErrorOccurred: "Došlo je do pogreške." 25 | }, 26 | SliceAndDice: { 27 | Title: "Formatiranje upita", 28 | Apply: "Primijeni", 29 | Close: "Zatvori" 30 | }, 31 | Order: { 32 | Title: "Odaberite polje po kojem će poredati rezultati", 33 | OrderType: "Način poredavanja", 34 | None: "Ni po čemu", 35 | Apply: "Primijeni", 36 | Close: "Zatvori" 37 | }, 38 | SaveMdx: { 39 | Title: "Pohranjivanje upita", 40 | Save: "Pohrani", 41 | Cancel: "Zatvori" 42 | } 43 | }); 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /public/js/jstree/themes/jqcube/d.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/jstree/themes/jqcube/d.gif -------------------------------------------------------------------------------- /public/js/jstree/themes/jqcube/d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/jstree/themes/jqcube/d.png -------------------------------------------------------------------------------- /public/js/jstree/themes/jqcube/throbber.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agershun/olap/05451a538b2bf577326a833e71f3cc6409f5ac3d/public/js/jstree/themes/jqcube/throbber.gif --------------------------------------------------------------------------------