├── .gitignore ├── .npmignore ├── LICENSE ├── README.md ├── asyncMonitor.js ├── client ├── css │ └── style.css ├── d3 │ ├── LICENSE │ ├── README.md │ └── d3.min.js ├── img │ └── logo-white-02.svg ├── index.html └── src │ ├── bisankey-graph.js │ ├── bisankey.js │ ├── dataParser.js │ ├── main.js │ └── sunBurst.js ├── funcInfo ├── funcInfoModel.js └── funcInfoParser.js ├── index.js ├── node_modules ├── .bin │ └── mime ├── accepts │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── after │ ├── .npmignore │ ├── .travis.yml │ ├── LICENCE │ ├── README.md │ ├── index.js │ ├── package.json │ └── test │ │ └── after-test.js ├── array-flatten │ ├── LICENSE │ ├── README.md │ ├── array-flatten.js │ └── package.json ├── arraybuffer.slice │ ├── .npmignore │ ├── LICENCE │ ├── Makefile │ ├── README.md │ ├── index.js │ ├── package.json │ └── test │ │ └── slice-buffer.js ├── async-limiter │ ├── .travis.yml │ ├── LICENSE │ ├── coverage │ │ ├── coverage.json │ │ ├── lcov-report │ │ │ ├── async-throttle │ │ │ │ ├── index.html │ │ │ │ └── index.js.html │ │ │ ├── base.css │ │ │ ├── index.html │ │ │ ├── prettify.css │ │ │ ├── prettify.js │ │ │ ├── sort-arrow-sprite.png │ │ │ └── sorter.js │ │ └── lcov.info │ ├── index.js │ ├── package.json │ └── readme.md ├── backo2 │ ├── .npmignore │ ├── History.md │ ├── Makefile │ ├── Readme.md │ ├── component.json │ ├── index.js │ ├── package.json │ └── test │ │ └── index.js ├── base64-arraybuffer │ ├── .npmignore │ ├── .travis.yml │ ├── LICENSE-MIT │ ├── README.md │ ├── lib │ │ └── base64-arraybuffer.js │ └── package.json ├── base64id │ ├── .npmignore │ ├── LICENSE │ ├── README.md │ ├── lib │ │ └── base64id.js │ └── package.json ├── better-assert │ ├── .npmignore │ ├── History.md │ ├── Makefile │ ├── Readme.md │ ├── example.js │ ├── index.js │ └── package.json ├── blob │ ├── .npmignore │ ├── .zuul.yml │ ├── Makefile │ ├── README.md │ ├── index.js │ ├── package.json │ └── test │ │ └── index.js ├── body-parser │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ ├── lib │ │ ├── read.js │ │ └── types │ │ │ ├── json.js │ │ │ ├── raw.js │ │ │ ├── text.js │ │ │ └── urlencoded.js │ └── package.json ├── bytes │ ├── History.md │ ├── LICENSE │ ├── Readme.md │ ├── index.js │ └── package.json ├── callsite │ ├── .npmignore │ ├── History.md │ ├── Makefile │ ├── Readme.md │ ├── index.js │ └── package.json ├── component-bind │ ├── .npmignore │ ├── History.md │ ├── Makefile │ ├── Readme.md │ ├── component.json │ ├── index.js │ └── package.json ├── component-emitter │ ├── History.md │ ├── LICENSE │ ├── Readme.md │ ├── index.js │ └── package.json ├── component-inherit │ ├── .npmignore │ ├── History.md │ ├── Makefile │ ├── Readme.md │ ├── component.json │ ├── index.js │ ├── package.json │ └── test │ │ └── inherit.js ├── 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 │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── debug │ ├── .coveralls.yml │ ├── .eslintrc │ ├── .npmignore │ ├── .travis.yml │ ├── CHANGELOG.md │ ├── LICENSE │ ├── Makefile │ ├── README.md │ ├── component.json │ ├── karma.conf.js │ ├── node.js │ ├── package.json │ └── src │ │ ├── browser.js │ │ ├── debug.js │ │ ├── index.js │ │ ├── inspector-log.js │ │ └── node.js ├── depd │ ├── History.md │ ├── LICENSE │ ├── Readme.md │ ├── index.js │ ├── lib │ │ ├── browser │ │ │ └── index.js │ │ └── compat │ │ │ ├── callsite-tostring.js │ │ │ ├── event-listener-count.js │ │ │ └── index.js │ └── package.json ├── destroy │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── ee-first │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── encodeurl │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── engine.io-client │ ├── LICENSE │ ├── README.md │ ├── engine.io.js │ ├── lib │ │ ├── index.js │ │ ├── socket.js │ │ ├── transport.js │ │ ├── transports │ │ │ ├── index.js │ │ │ ├── polling-jsonp.js │ │ │ ├── polling-xhr.js │ │ │ ├── polling.js │ │ │ └── websocket.js │ │ └── xmlhttprequest.js │ ├── node_modules │ │ └── debug │ │ │ ├── .coveralls.yml │ │ │ ├── .eslintrc │ │ │ ├── .npmignore │ │ │ ├── .travis.yml │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── karma.conf.js │ │ │ ├── node.js │ │ │ ├── package.json │ │ │ └── src │ │ │ ├── browser.js │ │ │ ├── debug.js │ │ │ ├── index.js │ │ │ └── node.js │ └── package.json ├── engine.io-parser │ ├── LICENSE │ ├── Readme.md │ ├── lib │ │ ├── browser.js │ │ ├── index.js │ │ ├── keys.js │ │ └── utf8.js │ └── package.json ├── engine.io │ ├── LICENSE │ ├── README.md │ ├── lib │ │ ├── engine.io.js │ │ ├── server.js │ │ ├── socket.js │ │ ├── transport.js │ │ └── transports │ │ │ ├── index.js │ │ │ ├── polling-jsonp.js │ │ │ ├── polling-xhr.js │ │ │ ├── polling.js │ │ │ └── websocket.js │ ├── node_modules │ │ └── debug │ │ │ ├── .coveralls.yml │ │ │ ├── .eslintrc │ │ │ ├── .npmignore │ │ │ ├── .travis.yml │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── karma.conf.js │ │ │ ├── node.js │ │ │ ├── package.json │ │ │ └── src │ │ │ ├── browser.js │ │ │ ├── debug.js │ │ │ ├── index.js │ │ │ └── node.js │ └── package.json ├── escape-html │ ├── LICENSE │ ├── Readme.md │ ├── index.js │ └── package.json ├── etag │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── 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 │ └── package.json ├── finalhandler │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── forwarded │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── fresh │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── has-binary2 │ ├── History.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── has-cors │ ├── .npmignore │ ├── History.md │ ├── Makefile │ ├── Readme.md │ ├── component.json │ ├── index.js │ ├── package.json │ └── test.js ├── http-errors │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── 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.d.ts │ │ ├── index.js │ │ └── streams.js │ └── package.json ├── indexof │ ├── .npmignore │ ├── Makefile │ ├── Readme.md │ ├── component.json │ ├── index.js │ └── package.json ├── inherits │ ├── LICENSE │ ├── README.md │ ├── inherits.js │ ├── inherits_browser.js │ └── package.json ├── ipaddr.js │ ├── .npmignore │ ├── .travis.yml │ ├── Cakefile │ ├── LICENSE │ ├── README.md │ ├── bower.json │ ├── ipaddr.min.js │ ├── lib │ │ ├── ipaddr.js │ │ └── ipaddr.js.d.ts │ ├── package.json │ ├── src │ │ └── ipaddr.coffee │ └── test │ │ └── ipaddr.test.coffee ├── isarray │ ├── README.md │ ├── index.js │ └── package.json ├── media-typer │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── merge-descriptors │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── methods │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── mime-db │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── db.json │ ├── index.js │ └── package.json ├── mime-types │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── mime │ ├── LICENSE │ ├── README.md │ ├── build │ │ ├── build.js │ │ └── test.js │ ├── cli.js │ ├── mime.js │ ├── package.json │ └── types.json ├── ms │ ├── index.js │ ├── license.md │ ├── package.json │ └── readme.md ├── negotiator │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ ├── lib │ │ ├── charset.js │ │ ├── encoding.js │ │ ├── language.js │ │ └── mediaType.js │ └── package.json ├── object-component │ ├── .npmignore │ ├── History.md │ ├── Makefile │ ├── Readme.md │ ├── component.json │ ├── index.js │ ├── package.json │ └── test │ │ └── object.js ├── on-finished │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── parseqs │ ├── .npmignore │ ├── LICENSE │ ├── Makefile │ ├── README.md │ ├── index.js │ ├── package.json │ └── test.js ├── parseuri │ ├── .npmignore │ ├── History.md │ ├── LICENSE │ ├── Makefile │ ├── README.md │ ├── index.js │ ├── package.json │ └── test.js ├── parseurl │ ├── 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 │ └── package.json ├── qs │ ├── .editorconfig │ ├── .eslintignore │ ├── .eslintrc │ ├── CHANGELOG.md │ ├── LICENSE │ ├── README.md │ ├── dist │ │ └── qs.js │ ├── lib │ │ ├── formats.js │ │ ├── index.js │ │ ├── parse.js │ │ ├── stringify.js │ │ └── utils.js │ ├── package.json │ └── test │ │ ├── .eslintrc │ │ ├── index.js │ │ ├── parse.js │ │ ├── stringify.js │ │ └── utils.js ├── range-parser │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── raw-body │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.d.ts │ ├── index.js │ ├── node_modules │ │ ├── depd │ │ │ ├── History.md │ │ │ ├── LICENSE │ │ │ ├── Readme.md │ │ │ ├── index.js │ │ │ ├── lib │ │ │ │ ├── browser │ │ │ │ │ └── index.js │ │ │ │ └── compat │ │ │ │ │ ├── callsite-tostring.js │ │ │ │ │ ├── event-listener-count.js │ │ │ │ │ └── index.js │ │ │ └── package.json │ │ ├── http-errors │ │ │ ├── HISTORY.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── index.js │ │ │ └── package.json │ │ └── setprototypeof │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── index.js │ │ │ └── package.json │ └── package.json ├── safe-buffer │ ├── .travis.yml │ ├── LICENSE │ ├── README.md │ ├── index.js │ ├── package.json │ └── test.js ├── send │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── serve-static │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── setprototypeof │ ├── LICENSE │ ├── README.md │ ├── index.d.ts │ ├── index.js │ └── package.json ├── socket.io-adapter │ ├── .npmignore │ ├── LICENSE │ ├── Readme.md │ ├── index.js │ └── package.json ├── socket.io-client │ ├── LICENSE │ ├── README.md │ ├── dist │ │ ├── socket.io.dev.js │ │ ├── socket.io.dev.js.map │ │ ├── socket.io.js │ │ ├── socket.io.js.map │ │ ├── socket.io.slim.dev.js │ │ ├── socket.io.slim.dev.js.map │ │ ├── socket.io.slim.js │ │ └── socket.io.slim.js.map │ ├── lib │ │ ├── index.js │ │ ├── manager.js │ │ ├── on.js │ │ ├── socket.js │ │ └── url.js │ ├── node_modules │ │ └── debug │ │ │ ├── .coveralls.yml │ │ │ ├── .eslintrc │ │ │ ├── .npmignore │ │ │ ├── .travis.yml │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── karma.conf.js │ │ │ ├── node.js │ │ │ ├── package.json │ │ │ └── src │ │ │ ├── browser.js │ │ │ ├── debug.js │ │ │ ├── index.js │ │ │ └── node.js │ └── package.json ├── socket.io-parser │ ├── LICENSE │ ├── Readme.md │ ├── binary.js │ ├── index.js │ ├── is-buffer.js │ ├── node_modules │ │ └── debug │ │ │ ├── .coveralls.yml │ │ │ ├── .eslintrc │ │ │ ├── .npmignore │ │ │ ├── .travis.yml │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── karma.conf.js │ │ │ ├── node.js │ │ │ ├── package.json │ │ │ └── src │ │ │ ├── browser.js │ │ │ ├── debug.js │ │ │ ├── index.js │ │ │ └── node.js │ └── package.json ├── socket.io │ ├── LICENSE │ ├── Readme.md │ ├── lib │ │ ├── client.js │ │ ├── index.js │ │ ├── namespace.js │ │ ├── parent-namespace.js │ │ └── socket.js │ ├── node_modules │ │ └── debug │ │ │ ├── .coveralls.yml │ │ │ ├── .eslintrc │ │ │ ├── .npmignore │ │ │ ├── .travis.yml │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── karma.conf.js │ │ │ ├── node.js │ │ │ ├── package.json │ │ │ └── src │ │ │ ├── browser.js │ │ │ ├── debug.js │ │ │ ├── index.js │ │ │ └── node.js │ └── package.json ├── statuses │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── codes.json │ ├── index.js │ └── package.json ├── to-array │ ├── .npmignore │ ├── LICENCE │ ├── README.md │ ├── index.js │ └── package.json ├── type-is │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── ultron │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── unpipe │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── utils-merge │ ├── .npmignore │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── vary │ ├── HISTORY.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── ws │ ├── LICENSE │ ├── README.md │ ├── index.js │ ├── lib │ │ ├── BufferUtil.js │ │ ├── Constants.js │ │ ├── ErrorCodes.js │ │ ├── EventTarget.js │ │ ├── Extensions.js │ │ ├── PerMessageDeflate.js │ │ ├── Receiver.js │ │ ├── Sender.js │ │ ├── Validation.js │ │ ├── WebSocket.js │ │ └── WebSocketServer.js │ └── package.json ├── xmlhttprequest-ssl │ ├── LICENSE │ ├── README.md │ ├── autotest.watchr │ ├── example │ │ └── demo.js │ ├── lib │ │ └── XMLHttpRequest.js │ ├── package.json │ └── tests │ │ ├── test-constants.js │ │ ├── test-events.js │ │ ├── test-exceptions.js │ │ ├── test-headers.js │ │ ├── test-redirect-302.js │ │ ├── test-redirect-303.js │ │ ├── test-redirect-307.js │ │ ├── test-request-methods.js │ │ ├── test-request-protocols.js │ │ └── testdata.txt └── yeast │ ├── LICENSE │ ├── README.md │ ├── index.js │ └── package.json ├── package.json ├── packageMonitor.js ├── readme ├── async.gif ├── asyncMonitor.png ├── logo.png ├── new-logo.png ├── pkgMonitor.png └── pm.gif └── server ├── ioController_mnode.js └── socket.js /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | package-lock.json 3 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | package-lock.json 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 async-optics 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 | -------------------------------------------------------------------------------- /client/src/main.js: -------------------------------------------------------------------------------- 1 | const socket = io.connect('http://localhost:8100'); -------------------------------------------------------------------------------- /funcInfo/funcInfoModel.js: -------------------------------------------------------------------------------- 1 | class funcInfo { 2 | constructor(asyncId, triggerAsyncId, type) { 3 | this.asyncId = asyncId; 4 | this.triggerAsyncId = triggerAsyncId; 5 | this.type = type; 6 | this.startTime = null; 7 | this.duration = null; 8 | this.errMessage = null; 9 | this.resourceInfo = null; 10 | } 11 | } 12 | 13 | module.exports = funcInfo; 14 | 15 | 16 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | const asyncMonitor = require('./asyncMonitor.js') 2 | 3 | const pkgMonitor = require('./packageMonitor.js') 4 | 5 | module.exports = {asyncMonitor, pkgMonitor}; 6 | -------------------------------------------------------------------------------- /node_modules/.bin/mime: -------------------------------------------------------------------------------- 1 | ../mime/cli.js -------------------------------------------------------------------------------- /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/after/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .monitor 3 | -------------------------------------------------------------------------------- /node_modules/after/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - 0.6 4 | - 0.8 5 | - 0.9 6 | - 0.10 7 | - 0.12 8 | - 4.2.4 9 | - 5.4.1 10 | - iojs-1 11 | - iojs-2 12 | - iojs-3 13 | -------------------------------------------------------------------------------- /node_modules/after/LICENCE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2011 Raynos. 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/after/index.js: -------------------------------------------------------------------------------- 1 | module.exports = after 2 | 3 | function after(count, callback, err_cb) { 4 | var bail = false 5 | err_cb = err_cb || noop 6 | proxy.count = count 7 | 8 | return (count === 0) ? callback() : proxy 9 | 10 | function proxy(err, result) { 11 | if (proxy.count <= 0) { 12 | throw new Error('after called too many times') 13 | } 14 | --proxy.count 15 | 16 | // after first error, rest are passed to err_cb 17 | if (err) { 18 | bail = true 19 | callback(err) 20 | // future error callbacks will go to error handler 21 | callback = err_cb 22 | } else if (proxy.count === 0 && !bail) { 23 | callback(null, result) 24 | } 25 | } 26 | } 27 | 28 | function noop() {} 29 | -------------------------------------------------------------------------------- /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/arraybuffer.slice/.npmignore: -------------------------------------------------------------------------------- 1 | lib-cov 2 | lcov.info 3 | *.seed 4 | *.log 5 | *.csv 6 | *.dat 7 | *.out 8 | *.pid 9 | *.gz 10 | 11 | pids 12 | logs 13 | results 14 | build 15 | .grunt 16 | 17 | node_modules 18 | -------------------------------------------------------------------------------- /node_modules/arraybuffer.slice/LICENCE: -------------------------------------------------------------------------------- 1 | Copyright (C) 2013 Rase- 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of 4 | this software and associated documentation files (the "Software"), to deal in 5 | the Software without restriction, including without limitation the rights to 6 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 7 | of the Software, and to permit persons to whom the Software is furnished to do 8 | so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | 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, FITNESS 15 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | -------------------------------------------------------------------------------- /node_modules/arraybuffer.slice/Makefile: -------------------------------------------------------------------------------- 1 | 2 | REPORTER = dot 3 | 4 | test: 5 | @./node_modules/.bin/mocha \ 6 | --reporter $(REPORTER) 7 | 8 | .PHONY: test 9 | -------------------------------------------------------------------------------- /node_modules/arraybuffer.slice/README.md: -------------------------------------------------------------------------------- 1 | # How to 2 | ```javascript 3 | var sliceBuffer = require('arraybuffer.slice'); 4 | var ab = (new Int8Array(5)).buffer; 5 | var sliced = sliceBuffer(ab, 1, 3); 6 | sliced = sliceBuffer(ab, 1); 7 | ``` 8 | 9 | # Licence (MIT) 10 | Copyright (C) 2013 Rase- 11 | 12 | 13 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 14 | 15 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | -------------------------------------------------------------------------------- /node_modules/arraybuffer.slice/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * An abstraction for slicing an arraybuffer even when 3 | * ArrayBuffer.prototype.slice is not supported 4 | * 5 | * @api public 6 | */ 7 | 8 | module.exports = function(arraybuffer, start, end) { 9 | var bytes = arraybuffer.byteLength; 10 | start = start || 0; 11 | end = end || bytes; 12 | 13 | if (arraybuffer.slice) { return arraybuffer.slice(start, end); } 14 | 15 | if (start < 0) { start += bytes; } 16 | if (end < 0) { end += bytes; } 17 | if (end > bytes) { end = bytes; } 18 | 19 | if (start >= bytes || start >= end || bytes === 0) { 20 | return new ArrayBuffer(0); 21 | } 22 | 23 | var abv = new Uint8Array(arraybuffer); 24 | var result = new Uint8Array(end - start); 25 | for (var i = start, ii = 0; i < end; i++, ii++) { 26 | result[ii] = abv[i]; 27 | } 28 | return result.buffer; 29 | }; 30 | -------------------------------------------------------------------------------- /node_modules/async-limiter/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "6" 4 | - "node" 5 | script: npm run travis 6 | cache: 7 | yarn: true 8 | -------------------------------------------------------------------------------- /node_modules/async-limiter/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | Copyright (c) 2017 Samuel Reed 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 5 | 6 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 7 | 8 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 9 | -------------------------------------------------------------------------------- /node_modules/async-limiter/coverage/lcov-report/prettify.css: -------------------------------------------------------------------------------- 1 | .pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} 2 | -------------------------------------------------------------------------------- /node_modules/async-limiter/coverage/lcov-report/sort-arrow-sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AsyncOptics/async-optics/94572039d6588c4a8203ae548bed4090a14af3e9/node_modules/async-limiter/coverage/lcov-report/sort-arrow-sprite.png -------------------------------------------------------------------------------- /node_modules/async-limiter/coverage/lcov.info: -------------------------------------------------------------------------------- 1 | TN: 2 | SF:/Users/samuelreed/git/forks/async-throttle/index.js 3 | FN:3,Queue 4 | FN:22,(anonymous_2) 5 | FN:23,(anonymous_3) 6 | FN:31,(anonymous_4) 7 | FN:36,(anonymous_5) 8 | FN:55,(anonymous_6) 9 | FN:62,done 10 | FNF:7 11 | FNH:7 12 | FNDA:7,Queue 13 | FNDA:3,(anonymous_2) 14 | FNDA:13,(anonymous_3) 15 | FNDA:19,(anonymous_4) 16 | FNDA:45,(anonymous_5) 17 | FNDA:6,(anonymous_6) 18 | FNDA:13,done 19 | DA:3,1 20 | DA:4,7 21 | DA:5,1 22 | DA:8,6 23 | DA:9,6 24 | DA:10,6 25 | DA:11,6 26 | DA:12,6 27 | DA:13,6 28 | DA:16,1 29 | DA:22,1 30 | DA:23,3 31 | DA:24,13 32 | DA:25,13 33 | DA:26,13 34 | DA:30,1 35 | DA:32,19 36 | DA:36,1 37 | DA:37,45 38 | DA:38,6 39 | DA:40,39 40 | DA:41,13 41 | DA:42,13 42 | DA:43,13 43 | DA:44,13 44 | DA:47,39 45 | DA:48,18 46 | DA:49,6 47 | DA:50,6 48 | DA:55,1 49 | DA:56,6 50 | DA:57,6 51 | DA:58,6 52 | DA:62,1 53 | DA:63,13 54 | DA:64,13 55 | DA:67,1 56 | LF:37 57 | LH:37 58 | BRDA:4,1,0,1 59 | BRDA:4,1,1,6 60 | BRDA:8,2,0,6 61 | BRDA:8,2,1,5 62 | BRDA:9,3,0,6 63 | BRDA:9,3,1,5 64 | BRDA:37,4,0,6 65 | BRDA:37,4,1,39 66 | BRDA:40,5,0,13 67 | BRDA:40,5,1,26 68 | BRDA:47,6,0,18 69 | BRDA:47,6,1,21 70 | BRDA:56,7,0,6 71 | BRDA:56,7,1,0 72 | BRF:14 73 | BRH:13 74 | end_of_record 75 | -------------------------------------------------------------------------------- /node_modules/backo2/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | -------------------------------------------------------------------------------- /node_modules/backo2/History.md: -------------------------------------------------------------------------------- 1 | 2 | 1.0.1 / 2014-02-17 3 | ================== 4 | 5 | * go away decimal point 6 | * history 7 | 8 | 1.0.0 / 2014-02-17 9 | ================== 10 | 11 | * add jitter option 12 | * Initial commit 13 | -------------------------------------------------------------------------------- /node_modules/backo2/Makefile: -------------------------------------------------------------------------------- 1 | 2 | test: 3 | @./node_modules/.bin/mocha \ 4 | --require should \ 5 | --reporter dot \ 6 | --bail 7 | 8 | .PHONY: test -------------------------------------------------------------------------------- /node_modules/backo2/Readme.md: -------------------------------------------------------------------------------- 1 | # backo 2 | 3 | Simple exponential backoff because the others seem to have weird abstractions. 4 | 5 | ## Installation 6 | 7 | ``` 8 | $ npm install backo 9 | ``` 10 | 11 | ## Options 12 | 13 | - `min` initial timeout in milliseconds [100] 14 | - `max` max timeout [10000] 15 | - `jitter` [0] 16 | - `factor` [2] 17 | 18 | ## Example 19 | 20 | ```js 21 | var Backoff = require('backo'); 22 | var backoff = new Backoff({ min: 100, max: 20000 }); 23 | 24 | setTimeout(function(){ 25 | something.reconnect(); 26 | }, backoff.duration()); 27 | 28 | // later when something works 29 | backoff.reset() 30 | ``` 31 | 32 | # License 33 | 34 | MIT 35 | -------------------------------------------------------------------------------- /node_modules/backo2/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "backo", 3 | "repo": "segmentio/backo", 4 | "dependencies": {}, 5 | "version": "1.0.1", 6 | "description": "simple backoff without the weird abstractions", 7 | "keywords": ["backoff"], 8 | "license": "MIT", 9 | "scripts": ["index.js"], 10 | "main": "index.js" 11 | } 12 | -------------------------------------------------------------------------------- /node_modules/backo2/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "_from": "backo2@1.0.2", 3 | "_id": "backo2@1.0.2", 4 | "_inBundle": false, 5 | "_integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", 6 | "_location": "/backo2", 7 | "_phantomChildren": {}, 8 | "_requested": { 9 | "type": "version", 10 | "registry": true, 11 | "raw": "backo2@1.0.2", 12 | "name": "backo2", 13 | "escapedName": "backo2", 14 | "rawSpec": "1.0.2", 15 | "saveSpec": null, 16 | "fetchSpec": "1.0.2" 17 | }, 18 | "_requiredBy": [ 19 | "/socket.io-client" 20 | ], 21 | "_resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", 22 | "_shasum": "31ab1ac8b129363463e35b3ebb69f4dfcfba7947", 23 | "_spec": "backo2@1.0.2", 24 | "_where": "/Users/wupenghe/Desktop/async_optics/node_modules/socket.io-client", 25 | "bugs": { 26 | "url": "https://github.com/mokesmokes/backo/issues" 27 | }, 28 | "bundleDependencies": false, 29 | "dependencies": {}, 30 | "deprecated": false, 31 | "description": "simple backoff based on segmentio/backo", 32 | "devDependencies": { 33 | "mocha": "*", 34 | "should": "*" 35 | }, 36 | "homepage": "https://github.com/mokesmokes/backo#readme", 37 | "keywords": [ 38 | "backoff" 39 | ], 40 | "license": "MIT", 41 | "name": "backo2", 42 | "repository": { 43 | "type": "git", 44 | "url": "git+https://github.com/mokesmokes/backo.git" 45 | }, 46 | "version": "1.0.2" 47 | } 48 | -------------------------------------------------------------------------------- /node_modules/backo2/test/index.js: -------------------------------------------------------------------------------- 1 | 2 | var Backoff = require('..'); 3 | var assert = require('assert'); 4 | 5 | describe('.duration()', function(){ 6 | it('should increase the backoff', function(){ 7 | var b = new Backoff; 8 | 9 | assert(100 == b.duration()); 10 | assert(200 == b.duration()); 11 | assert(400 == b.duration()); 12 | assert(800 == b.duration()); 13 | 14 | b.reset(); 15 | assert(100 == b.duration()); 16 | assert(200 == b.duration()); 17 | }) 18 | }) -------------------------------------------------------------------------------- /node_modules/base64-arraybuffer/.npmignore: -------------------------------------------------------------------------------- 1 | /node_modules/ 2 | Gruntfile.js 3 | /test/ 4 | -------------------------------------------------------------------------------- /node_modules/base64-arraybuffer/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - '0.12' 4 | - iojs-1 5 | - iojs-2 6 | - iojs-3 7 | - '4.1' 8 | before_script: 9 | - npm install 10 | before_install: npm install -g npm@'>=2.13.5' 11 | deploy: 12 | provider: npm 13 | email: niklasvh@gmail.com 14 | api_key: 15 | secure: oHV9ArprTj5WOk7MP1UF7QMJ70huXw+y7xXb5wF4+V2H8Hyfa5TfE0DiOmqrube1WXTeH1FLgq54shp/sJWi47Hkg/GyeoB5NnsPhYEaJkaON9UG5blML+ODiNVsEnq/1kNBQ8e0+0JItMPLGySKyFmuZ3yflulXKS8O88mfINo= 16 | on: 17 | tags: true 18 | branch: master 19 | repo: niklasvh/base64-arraybuffer 20 | -------------------------------------------------------------------------------- /node_modules/base64-arraybuffer/LICENSE-MIT: -------------------------------------------------------------------------------- 1 | Copyright (c) 2012 Niklas von Hertzen 2 | 3 | Permission is hereby granted, free of charge, to any person 4 | obtaining a copy of this software and associated documentation 5 | files (the "Software"), to deal in the Software without 6 | restriction, including without limitation the rights to use, 7 | copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | copies of the Software, and to permit persons to whom the 9 | Software is furnished to do so, subject to the following 10 | conditions: 11 | 12 | The above copyright notice and this permission notice shall be 13 | included in all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 17 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 19 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 20 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 21 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 22 | OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/base64-arraybuffer/README.md: -------------------------------------------------------------------------------- 1 | # base64-arraybuffer 2 | 3 | [![Build Status](https://travis-ci.org/niklasvh/base64-arraybuffer.png)](https://travis-ci.org/niklasvh/base64-arraybuffer) 4 | [![NPM Downloads](https://img.shields.io/npm/dm/base64-arraybuffer.svg)](https://www.npmjs.org/package/base64-arraybuffer) 5 | [![NPM Version](https://img.shields.io/npm/v/base64-arraybuffer.svg)](https://www.npmjs.org/package/base64-arraybuffer) 6 | 7 | Encode/decode base64 data into ArrayBuffers 8 | 9 | ## Getting Started 10 | Install the module with: `npm install base64-arraybuffer` 11 | 12 | ## API 13 | The library encodes and decodes base64 to and from ArrayBuffers 14 | 15 | - __encode(buffer)__ - Encodes `ArrayBuffer` into base64 string 16 | - __decode(str)__ - Decodes base64 string to `ArrayBuffer` 17 | 18 | ## License 19 | Copyright (c) 2012 Niklas von Hertzen 20 | Licensed under the MIT license. 21 | -------------------------------------------------------------------------------- /node_modules/base64id/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | -------------------------------------------------------------------------------- /node_modules/base64id/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2012-2016 Kristian Faeldt 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/base64id/README.md: -------------------------------------------------------------------------------- 1 | base64id 2 | ======== 3 | 4 | Node.js module that generates a base64 id. 5 | 6 | Uses crypto.randomBytes when available, falls back to unsafe methods for node.js <= 0.4. 7 | 8 | To increase performance, random bytes are buffered to minimize the number of synchronous calls to crypto.randomBytes. 9 | 10 | ## Installation 11 | 12 | $ npm install base64id 13 | 14 | ## Usage 15 | 16 | var base64id = require('base64id'); 17 | 18 | var id = base64id.generateId(); 19 | -------------------------------------------------------------------------------- /node_modules/better-assert/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | *.sock 5 | -------------------------------------------------------------------------------- /node_modules/better-assert/History.md: -------------------------------------------------------------------------------- 1 | 2 | 1.0.0 / 2013-02-03 3 | ================== 4 | 5 | * Stop using the removed magic __stack global getter 6 | 7 | 0.1.0 / 2012-10-04 8 | ================== 9 | 10 | * add throwing of AssertionError for test frameworks etc 11 | 12 | 0.0.1 / 2010-01-03 13 | ================== 14 | 15 | * Initial release 16 | -------------------------------------------------------------------------------- /node_modules/better-assert/Makefile: -------------------------------------------------------------------------------- 1 | 2 | test: 3 | @echo "populate me" 4 | 5 | .PHONY: test -------------------------------------------------------------------------------- /node_modules/better-assert/example.js: -------------------------------------------------------------------------------- 1 | 2 | var assert = require('./'); 3 | 4 | test(); 5 | 6 | function test() { 7 | var user = { name: 'tobi' }; 8 | assert('tobi' == user.name); 9 | assert('number' == typeof user.age); 10 | } -------------------------------------------------------------------------------- /node_modules/better-assert/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Module dependencies. 3 | */ 4 | 5 | var AssertionError = require('assert').AssertionError 6 | , callsite = require('callsite') 7 | , fs = require('fs') 8 | 9 | /** 10 | * Expose `assert`. 11 | */ 12 | 13 | module.exports = process.env.NO_ASSERT 14 | ? function(){} 15 | : assert; 16 | 17 | /** 18 | * Assert the given `expr`. 19 | */ 20 | 21 | function assert(expr) { 22 | if (expr) return; 23 | 24 | var stack = callsite(); 25 | var call = stack[1]; 26 | var file = call.getFileName(); 27 | var lineno = call.getLineNumber(); 28 | var src = fs.readFileSync(file, 'utf8'); 29 | var line = src.split('\n')[lineno-1]; 30 | var src = line.match(/assert\((.*)\)/)[1]; 31 | 32 | var err = new AssertionError({ 33 | message: src, 34 | stackStartFunction: stack[0].getFunction() 35 | }); 36 | 37 | throw err; 38 | } 39 | -------------------------------------------------------------------------------- /node_modules/blob/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | blob.js 3 | -------------------------------------------------------------------------------- /node_modules/blob/.zuul.yml: -------------------------------------------------------------------------------- 1 | ui: mocha-bdd 2 | browsers: 3 | - name: chrome 4 | version: 8..latest 5 | - name: firefox 6 | version: 7..latest 7 | - name: safari 8 | version: 6..latest 9 | - name: opera 10 | version: 12.1..latest 11 | - name: ie 12 | version: 10..latest 13 | - name: android 14 | version: latest 15 | -------------------------------------------------------------------------------- /node_modules/blob/Makefile: -------------------------------------------------------------------------------- 1 | REPORTER = dot 2 | 3 | build: blob.js 4 | 5 | blob.js: 6 | @./node_modules/.bin/browserify --standalone blob index.js > blob.js 7 | 8 | test: 9 | @./node_modules/.bin/zuul -- test/index.js 10 | 11 | clean: 12 | rm blob.js 13 | 14 | .PHONY: test blob.js 15 | -------------------------------------------------------------------------------- /node_modules/blob/README.md: -------------------------------------------------------------------------------- 1 | Blob 2 | ==== 3 | 4 | A module that exports a constructor that uses window.Blob when available, and a BlobBuilder with any vendor prefix in other cases. If neither is available, it exports undefined. 5 | 6 | Usage: 7 | 8 | ```javascript 9 | var Blob = require('blob'); 10 | var b = new Blob(['hi', 'constructing', 'a', 'blob']); 11 | ``` 12 | 13 | ## Licence 14 | MIT 15 | -------------------------------------------------------------------------------- /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/bytes/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2012-2014 TJ Holowaychuk 4 | Copyright (c) 2015 Jed Watson 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/callsite/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | *.sock 5 | -------------------------------------------------------------------------------- /node_modules/callsite/History.md: -------------------------------------------------------------------------------- 1 | 2 | 1.0.0 / 2013-01-24 3 | ================== 4 | 5 | * remove lame magical getters 6 | 7 | 0.0.1 / 2010-01-03 8 | ================== 9 | 10 | * Initial release 11 | -------------------------------------------------------------------------------- /node_modules/callsite/Makefile: -------------------------------------------------------------------------------- 1 | 2 | test: 3 | @./node_modules/.bin/mocha \ 4 | --require should 5 | 6 | .PHONY: test -------------------------------------------------------------------------------- /node_modules/callsite/Readme.md: -------------------------------------------------------------------------------- 1 | # callstack 2 | 3 | Access to v8's "raw" `CallSite`s. 4 | 5 | ## Installation 6 | 7 | $ npm install callsite 8 | 9 | ## Example 10 | 11 | ```js 12 | var stack = require('callsite'); 13 | 14 | foo(); 15 | 16 | function foo() { 17 | bar(); 18 | } 19 | 20 | function bar() { 21 | baz(); 22 | } 23 | 24 | function baz() { 25 | console.log(); 26 | stack().forEach(function(site){ 27 | console.log(' \033[36m%s\033[90m in %s:%d\033[0m' 28 | , site.getFunctionName() || 'anonymous' 29 | , site.getFileName() 30 | , site.getLineNumber()); 31 | }); 32 | console.log(); 33 | } 34 | ``` 35 | 36 | ## Why? 37 | 38 | Because you can do weird, stupid, clever, wacky things such as: 39 | 40 | - [better-assert](https://github.com/visionmedia/better-assert) 41 | 42 | ## License 43 | 44 | MIT 45 | -------------------------------------------------------------------------------- /node_modules/callsite/index.js: -------------------------------------------------------------------------------- 1 | 2 | module.exports = function(){ 3 | var orig = Error.prepareStackTrace; 4 | Error.prepareStackTrace = function(_, stack){ return stack; }; 5 | var err = new Error; 6 | Error.captureStackTrace(err, arguments.callee); 7 | var stack = err.stack; 8 | Error.prepareStackTrace = orig; 9 | return stack; 10 | }; 11 | -------------------------------------------------------------------------------- /node_modules/callsite/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "_from": "callsite@1.0.0", 3 | "_id": "callsite@1.0.0", 4 | "_inBundle": false, 5 | "_integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", 6 | "_location": "/callsite", 7 | "_phantomChildren": {}, 8 | "_requested": { 9 | "type": "version", 10 | "registry": true, 11 | "raw": "callsite@1.0.0", 12 | "name": "callsite", 13 | "escapedName": "callsite", 14 | "rawSpec": "1.0.0", 15 | "saveSpec": null, 16 | "fetchSpec": "1.0.0" 17 | }, 18 | "_requiredBy": [ 19 | "/better-assert" 20 | ], 21 | "_resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", 22 | "_shasum": "280398e5d664bd74038b6f0905153e6e8af1bc20", 23 | "_spec": "callsite@1.0.0", 24 | "_where": "/Users/wupenghe/Desktop/async_optics/node_modules/better-assert", 25 | "author": { 26 | "name": "TJ Holowaychuk", 27 | "email": "tj@vision-media.ca" 28 | }, 29 | "bundleDependencies": false, 30 | "dependencies": {}, 31 | "deprecated": false, 32 | "description": "access to v8's CallSites", 33 | "devDependencies": { 34 | "mocha": "*", 35 | "should": "*" 36 | }, 37 | "engines": { 38 | "node": "*" 39 | }, 40 | "keywords": [ 41 | "stack", 42 | "trace", 43 | "line" 44 | ], 45 | "main": "index", 46 | "name": "callsite", 47 | "version": "1.0.0" 48 | } 49 | -------------------------------------------------------------------------------- /node_modules/component-bind/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | *.sock 5 | -------------------------------------------------------------------------------- /node_modules/component-bind/History.md: -------------------------------------------------------------------------------- 1 | 2 | 1.0.0 / 2014-05-27 3 | ================== 4 | 5 | * index: use slice ref (#7, @viatropos) 6 | * package: rename package to "component-bind" 7 | * package: add "repository" field (#6, @repoify) 8 | * package: add "component" section 9 | 10 | 0.0.1 / 2010-01-03 11 | ================== 12 | 13 | * Initial release 14 | -------------------------------------------------------------------------------- /node_modules/component-bind/Makefile: -------------------------------------------------------------------------------- 1 | 2 | test: 3 | @./node_modules/.bin/mocha \ 4 | --require should \ 5 | --reporter spec 6 | 7 | .PHONY: test -------------------------------------------------------------------------------- /node_modules/component-bind/Readme.md: -------------------------------------------------------------------------------- 1 | # bind 2 | 3 | Function binding utility. 4 | 5 | ## Installation 6 | 7 | ``` 8 | $ component install component/bind 9 | ``` 10 | 11 | ## API 12 | 13 | - [bind(obj, fn)](#bindobj-fn) 14 | - [bind(obj, fn, ...)](#bindobj-fn-) 15 | - [bind(obj, name)](#bindobj-name) 16 | 17 | 18 | 19 | ### bind(obj, fn) 20 | should bind the function to the given object. 21 | 22 | ```js 23 | var tobi = { name: 'tobi' }; 24 | 25 | function name() { 26 | return this.name; 27 | } 28 | 29 | var fn = bind(tobi, name); 30 | fn().should.equal('tobi'); 31 | ``` 32 | 33 | 34 | ### bind(obj, fn, ...) 35 | should curry the remaining arguments. 36 | 37 | ```js 38 | function add(a, b) { 39 | return a + b; 40 | } 41 | 42 | bind(null, add)(1, 2).should.equal(3); 43 | bind(null, add, 1)(2).should.equal(3); 44 | bind(null, add, 1, 2)().should.equal(3); 45 | ``` 46 | 47 | 48 | ### bind(obj, name) 49 | should bind the method of the given name. 50 | 51 | ```js 52 | var tobi = { name: 'tobi' }; 53 | 54 | tobi.getName = function() { 55 | return this.name; 56 | }; 57 | 58 | var fn = bind(tobi, 'getName'); 59 | fn().should.equal('tobi'); 60 | ``` 61 | 62 | ## License 63 | 64 | MIT -------------------------------------------------------------------------------- /node_modules/component-bind/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bind", 3 | "version": "1.0.0", 4 | "description": "function binding utility", 5 | "keywords": [ 6 | "bind", 7 | "utility" 8 | ], 9 | "dependencies": {}, 10 | "scripts": [ 11 | "index.js" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /node_modules/component-bind/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Slice reference. 3 | */ 4 | 5 | var slice = [].slice; 6 | 7 | /** 8 | * Bind `obj` to `fn`. 9 | * 10 | * @param {Object} obj 11 | * @param {Function|String} fn or string 12 | * @return {Function} 13 | * @api public 14 | */ 15 | 16 | module.exports = function(obj, fn){ 17 | if ('string' == typeof fn) fn = obj[fn]; 18 | if ('function' != typeof fn) throw new Error('bind() requires a function'); 19 | var args = slice.call(arguments, 2); 20 | return function(){ 21 | return fn.apply(obj, args.concat(slice.call(arguments))); 22 | } 23 | }; 24 | -------------------------------------------------------------------------------- /node_modules/component-emitter/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Component contributors 4 | 5 | Permission is hereby granted, free of charge, to any person 6 | obtaining a copy of this software and associated documentation 7 | files (the "Software"), to deal in the Software without 8 | restriction, including without limitation the rights to use, 9 | copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the 11 | Software is furnished to do so, subject to the following 12 | 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 19 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 20 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 21 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 22 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 23 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 24 | OTHER DEALINGS IN THE SOFTWARE. 25 | -------------------------------------------------------------------------------- /node_modules/component-inherit/.npmignore: -------------------------------------------------------------------------------- 1 | components 2 | build 3 | node_modules 4 | -------------------------------------------------------------------------------- /node_modules/component-inherit/History.md: -------------------------------------------------------------------------------- 1 | 2 | 0.0.2 / 2012-09-03 3 | ================== 4 | 5 | * fix typo in package.json 6 | -------------------------------------------------------------------------------- /node_modules/component-inherit/Makefile: -------------------------------------------------------------------------------- 1 | 2 | build: components index.js 3 | @component build 4 | 5 | components: 6 | @Component install 7 | 8 | clean: 9 | rm -fr build components template.js 10 | 11 | test: 12 | @node_modules/.bin/mocha \ 13 | --require should \ 14 | --reporter spec 15 | 16 | .PHONY: clean test 17 | -------------------------------------------------------------------------------- /node_modules/component-inherit/Readme.md: -------------------------------------------------------------------------------- 1 | # inherit 2 | 3 | Prototype inheritance utility. 4 | 5 | ## Installation 6 | 7 | ``` 8 | $ component install component/inherit 9 | ``` 10 | 11 | ## Example 12 | 13 | ```js 14 | var inherit = require('inherit'); 15 | 16 | function Human() {} 17 | function Woman() {} 18 | 19 | inherit(Woman, Human); 20 | ``` 21 | 22 | ## License 23 | 24 | MIT 25 | -------------------------------------------------------------------------------- /node_modules/component-inherit/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "inherit", 3 | "description": "Prototype inheritance utility", 4 | "version": "0.0.3", 5 | "keywords": ["inherit", "utility"], 6 | "dependencies": {}, 7 | "scripts": [ 8 | "index.js" 9 | ] 10 | } 11 | -------------------------------------------------------------------------------- /node_modules/component-inherit/index.js: -------------------------------------------------------------------------------- 1 | 2 | module.exports = function(a, b){ 3 | var fn = function(){}; 4 | fn.prototype = b.prototype; 5 | a.prototype = new fn; 6 | a.prototype.constructor = a; 7 | }; -------------------------------------------------------------------------------- /node_modules/component-inherit/test/inherit.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * Module dependencies. 4 | */ 5 | 6 | var inherit = require('..'); 7 | 8 | describe('inherit(a, b)', function(){ 9 | it('should inherit b\'s prototype', function(){ 10 | function Loki(){} 11 | function Animal(){} 12 | 13 | Animal.prototype.species = 'unknown'; 14 | 15 | inherit(Loki, Animal); 16 | 17 | var loki = new Loki; 18 | loki.species.should.equal('unknown'); 19 | loki.constructor.should.equal(Loki); 20 | }) 21 | }) -------------------------------------------------------------------------------- /node_modules/content-disposition/HISTORY.md: -------------------------------------------------------------------------------- 1 | 0.5.2 / 2016-12-08 2 | ================== 3 | 4 | * Fix `parse` to accept any linear whitespace character 5 | 6 | 0.5.1 / 2016-01-17 7 | ================== 8 | 9 | * perf: enable strict mode 10 | 11 | 0.5.0 / 2014-10-11 12 | ================== 13 | 14 | * Add `parse` function 15 | 16 | 0.4.0 / 2014-09-21 17 | ================== 18 | 19 | * Expand non-Unicode `filename` to the full ISO-8859-1 charset 20 | 21 | 0.3.0 / 2014-09-20 22 | ================== 23 | 24 | * Add `fallback` option 25 | * Add `type` option 26 | 27 | 0.2.0 / 2014-09-19 28 | ================== 29 | 30 | * Reduce ambiguity of file names with hex escape in buggy browsers 31 | 32 | 0.1.2 / 2014-09-19 33 | ================== 34 | 35 | * Fix periodic invalid Unicode filename header 36 | 37 | 0.1.1 / 2014-09-19 38 | ================== 39 | 40 | * Fix invalid characters appearing in `filename*` parameter 41 | 42 | 0.1.0 / 2014-09-18 43 | ================== 44 | 45 | * Make the `filename` argument optional 46 | 47 | 0.0.0 / 2014-09-18 48 | ================== 49 | 50 | * Initial release 51 | -------------------------------------------------------------------------------- /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/content-type/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.4 / 2017-09-11 2 | ================== 3 | 4 | * perf: skip parameter parsing when no parameters 5 | 6 | 1.0.3 / 2017-09-10 7 | ================== 8 | 9 | * perf: remove argument reassignment 10 | 11 | 1.0.2 / 2016-05-09 12 | ================== 13 | 14 | * perf: enable strict mode 15 | 16 | 1.0.1 / 2015-02-13 17 | ================== 18 | 19 | * Improve missing `Content-Type` header error message 20 | 21 | 1.0.0 / 2015-02-01 22 | ================== 23 | 24 | * Initial implementation, derived from `media-typer@0.3.0` 25 | -------------------------------------------------------------------------------- /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/cookie-signature/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | *.sock 5 | -------------------------------------------------------------------------------- /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/cookie/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2012-2014 Roman Shtylman 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 | 25 | -------------------------------------------------------------------------------- /node_modules/debug/.coveralls.yml: -------------------------------------------------------------------------------- 1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve 2 | -------------------------------------------------------------------------------- /node_modules/debug/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": true, 4 | "node": true 5 | }, 6 | "rules": { 7 | "no-console": 0, 8 | "no-empty": [1, { "allowEmptyCatch": true }] 9 | }, 10 | "extends": "eslint:recommended" 11 | } 12 | -------------------------------------------------------------------------------- /node_modules/debug/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | example 5 | *.sock 6 | dist 7 | yarn.lock 8 | coverage 9 | bower.json 10 | -------------------------------------------------------------------------------- /node_modules/debug/.travis.yml: -------------------------------------------------------------------------------- 1 | 2 | language: node_js 3 | node_js: 4 | - "6" 5 | - "5" 6 | - "4" 7 | 8 | install: 9 | - make node_modules 10 | 11 | script: 12 | - make lint 13 | - make test 14 | - make coveralls 15 | -------------------------------------------------------------------------------- /node_modules/debug/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 TJ Holowaychuk 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software 6 | and associated documentation files (the 'Software'), to deal in the Software without restriction, 7 | including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 8 | and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, 9 | subject to the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be included in all copies or substantial 12 | portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 15 | LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 16 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 17 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 18 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | 20 | -------------------------------------------------------------------------------- /node_modules/debug/Makefile: -------------------------------------------------------------------------------- 1 | # get Makefile directory name: http://stackoverflow.com/a/5982798/376773 2 | THIS_MAKEFILE_PATH:=$(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST)) 3 | THIS_DIR:=$(shell cd $(dir $(THIS_MAKEFILE_PATH));pwd) 4 | 5 | # BIN directory 6 | BIN := $(THIS_DIR)/node_modules/.bin 7 | 8 | # Path 9 | PATH := node_modules/.bin:$(PATH) 10 | SHELL := /bin/bash 11 | 12 | # applications 13 | NODE ?= $(shell which node) 14 | YARN ?= $(shell which yarn) 15 | PKG ?= $(if $(YARN),$(YARN),$(NODE) $(shell which npm)) 16 | BROWSERIFY ?= $(NODE) $(BIN)/browserify 17 | 18 | .FORCE: 19 | 20 | install: node_modules 21 | 22 | node_modules: package.json 23 | @NODE_ENV= $(PKG) install 24 | @touch node_modules 25 | 26 | lint: .FORCE 27 | eslint browser.js debug.js index.js node.js 28 | 29 | test-node: .FORCE 30 | istanbul cover node_modules/mocha/bin/_mocha -- test/**.js 31 | 32 | test-browser: .FORCE 33 | mkdir -p dist 34 | 35 | @$(BROWSERIFY) \ 36 | --standalone debug \ 37 | . > dist/debug.js 38 | 39 | karma start --single-run 40 | rimraf dist 41 | 42 | test: .FORCE 43 | concurrently \ 44 | "make test-node" \ 45 | "make test-browser" 46 | 47 | coveralls: 48 | cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js 49 | 50 | .PHONY: all install clean distclean 51 | -------------------------------------------------------------------------------- /node_modules/debug/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "debug", 3 | "repo": "visionmedia/debug", 4 | "description": "small debugging utility", 5 | "version": "2.6.9", 6 | "keywords": [ 7 | "debug", 8 | "log", 9 | "debugger" 10 | ], 11 | "main": "src/browser.js", 12 | "scripts": [ 13 | "src/browser.js", 14 | "src/debug.js" 15 | ], 16 | "dependencies": { 17 | "rauchg/ms.js": "0.7.1" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /node_modules/debug/node.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./src/node'); 2 | -------------------------------------------------------------------------------- /node_modules/debug/src/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Detect Electron renderer process, which is node, but we should 3 | * treat as a browser. 4 | */ 5 | 6 | if (typeof process !== 'undefined' && process.type === 'renderer') { 7 | module.exports = require('./browser.js'); 8 | } else { 9 | module.exports = require('./node.js'); 10 | } 11 | -------------------------------------------------------------------------------- /node_modules/debug/src/inspector-log.js: -------------------------------------------------------------------------------- 1 | module.exports = inspectorLog; 2 | 3 | // black hole 4 | const nullStream = new (require('stream').Writable)(); 5 | nullStream._write = () => {}; 6 | 7 | /** 8 | * Outputs a `console.log()` to the Node.js Inspector console *only*. 9 | */ 10 | function inspectorLog() { 11 | const stdout = console._stdout; 12 | console._stdout = nullStream; 13 | console.log.apply(console, arguments); 14 | console._stdout = stdout; 15 | } 16 | -------------------------------------------------------------------------------- /node_modules/depd/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014-2017 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/depd/lib/compat/event-listener-count.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * depd 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 = eventListenerCount 15 | 16 | /** 17 | * Get the count of listeners on an event emitter of a specific type. 18 | */ 19 | 20 | function eventListenerCount (emitter, type) { 21 | return emitter.listeners(type).length 22 | } 23 | -------------------------------------------------------------------------------- /node_modules/destroy/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/destroy/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * destroy 3 | * Copyright(c) 2014 Jonathan Ong 4 | * MIT Licensed 5 | */ 6 | 7 | 'use strict' 8 | 9 | /** 10 | * Module dependencies. 11 | * @private 12 | */ 13 | 14 | var ReadStream = require('fs').ReadStream 15 | var Stream = require('stream') 16 | 17 | /** 18 | * Module exports. 19 | * @public 20 | */ 21 | 22 | module.exports = destroy 23 | 24 | /** 25 | * Destroy a stream. 26 | * 27 | * @param {object} stream 28 | * @public 29 | */ 30 | 31 | function destroy(stream) { 32 | if (stream instanceof ReadStream) { 33 | return destroyReadStream(stream) 34 | } 35 | 36 | if (!(stream instanceof Stream)) { 37 | return stream 38 | } 39 | 40 | if (typeof stream.destroy === 'function') { 41 | stream.destroy() 42 | } 43 | 44 | return stream 45 | } 46 | 47 | /** 48 | * Destroy a ReadStream. 49 | * 50 | * @param {object} stream 51 | * @private 52 | */ 53 | 54 | function destroyReadStream(stream) { 55 | stream.destroy() 56 | 57 | if (typeof stream.close === 'function') { 58 | // node.js core bug work-around 59 | stream.on('open', onOpenClose) 60 | } 61 | 62 | return stream 63 | } 64 | 65 | /** 66 | * On open handler to close stream. 67 | * @private 68 | */ 69 | 70 | function onOpenClose() { 71 | if (typeof this.fd === 'number') { 72 | // actually close down the fd 73 | this.close() 74 | } 75 | } 76 | -------------------------------------------------------------------------------- /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/encodeurl/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.2 / 2018-01-21 2 | ================== 3 | 4 | * Fix encoding `%` as last character 5 | 6 | 1.0.1 / 2016-06-09 7 | ================== 8 | 9 | * Fix encoding unpaired surrogates at start/end of string 10 | 11 | 1.0.0 / 2016-06-08 12 | ================== 13 | 14 | * Initial release 15 | -------------------------------------------------------------------------------- /node_modules/encodeurl/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2016 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/engine.io-client/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014-2015 Automattic 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/engine.io-client/lib/index.js: -------------------------------------------------------------------------------- 1 | 2 | module.exports = require('./socket'); 3 | 4 | /** 5 | * Exports parser 6 | * 7 | * @api public 8 | * 9 | */ 10 | module.exports.parser = require('engine.io-parser'); 11 | -------------------------------------------------------------------------------- /node_modules/engine.io-client/lib/transports/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Module dependencies 3 | */ 4 | 5 | var XMLHttpRequest = require('xmlhttprequest-ssl'); 6 | var XHR = require('./polling-xhr'); 7 | var JSONP = require('./polling-jsonp'); 8 | var websocket = require('./websocket'); 9 | 10 | /** 11 | * Export transports. 12 | */ 13 | 14 | exports.polling = polling; 15 | exports.websocket = websocket; 16 | 17 | /** 18 | * Polling transport polymorphic constructor. 19 | * Decides on xhr vs jsonp based on feature detection. 20 | * 21 | * @api private 22 | */ 23 | 24 | function polling (opts) { 25 | var xhr; 26 | var xd = false; 27 | var xs = false; 28 | var jsonp = false !== opts.jsonp; 29 | 30 | if (global.location) { 31 | var isSSL = 'https:' === location.protocol; 32 | var port = location.port; 33 | 34 | // some user agents have empty `location.port` 35 | if (!port) { 36 | port = isSSL ? 443 : 80; 37 | } 38 | 39 | xd = opts.hostname !== location.hostname || port !== opts.port; 40 | xs = opts.secure !== isSSL; 41 | } 42 | 43 | opts.xdomain = xd; 44 | opts.xscheme = xs; 45 | xhr = new XMLHttpRequest(opts); 46 | 47 | if ('open' in xhr && !opts.forceJSONP) { 48 | return new XHR(opts); 49 | } else { 50 | if (!jsonp) throw new Error('JSONP disabled'); 51 | return new JSONP(opts); 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /node_modules/engine.io-client/lib/xmlhttprequest.js: -------------------------------------------------------------------------------- 1 | // browser shim for xmlhttprequest module 2 | 3 | var hasCORS = require('has-cors'); 4 | 5 | module.exports = function (opts) { 6 | var xdomain = opts.xdomain; 7 | 8 | // scheme must be same when usign XDomainRequest 9 | // http://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx 10 | var xscheme = opts.xscheme; 11 | 12 | // XDomainRequest has a flow of not sending cookie, therefore it should be disabled as a default. 13 | // https://github.com/Automattic/engine.io-client/pull/217 14 | var enablesXDR = opts.enablesXDR; 15 | 16 | // XMLHttpRequest can be disabled on IE 17 | try { 18 | if ('undefined' !== typeof XMLHttpRequest && (!xdomain || hasCORS)) { 19 | return new XMLHttpRequest(); 20 | } 21 | } catch (e) { } 22 | 23 | // Use XDomainRequest for IE8 if enablesXDR is true 24 | // because loading bar keeps flashing when using jsonp-polling 25 | // https://github.com/yujiosaka/socke.io-ie8-loading-example 26 | try { 27 | if ('undefined' !== typeof XDomainRequest && !xscheme && enablesXDR) { 28 | return new XDomainRequest(); 29 | } 30 | } catch (e) { } 31 | 32 | if (!xdomain) { 33 | try { 34 | return new global[['Active'].concat('Object').join('X')]('Microsoft.XMLHTTP'); 35 | } catch (e) { } 36 | } 37 | }; 38 | -------------------------------------------------------------------------------- /node_modules/engine.io-client/node_modules/debug/.coveralls.yml: -------------------------------------------------------------------------------- 1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve 2 | -------------------------------------------------------------------------------- /node_modules/engine.io-client/node_modules/debug/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": true, 4 | "node": true 5 | }, 6 | "globals": { 7 | "chrome": true 8 | }, 9 | "rules": { 10 | "no-console": 0, 11 | "no-empty": [1, { "allowEmptyCatch": true }] 12 | }, 13 | "extends": "eslint:recommended" 14 | } 15 | -------------------------------------------------------------------------------- /node_modules/engine.io-client/node_modules/debug/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | example 5 | *.sock 6 | dist 7 | yarn.lock 8 | coverage 9 | bower.json 10 | -------------------------------------------------------------------------------- /node_modules/engine.io-client/node_modules/debug/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | 3 | language: node_js 4 | 5 | node_js: 6 | - "4" 7 | - "6" 8 | - "8" 9 | 10 | install: 11 | - make install 12 | 13 | script: 14 | - make lint 15 | - make test 16 | 17 | matrix: 18 | include: 19 | - node_js: '8' 20 | env: BROWSER=1 21 | -------------------------------------------------------------------------------- /node_modules/engine.io-client/node_modules/debug/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 TJ Holowaychuk 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software 6 | and associated documentation files (the 'Software'), to deal in the Software without restriction, 7 | including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 8 | and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, 9 | subject to the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be included in all copies or substantial 12 | portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 15 | LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 16 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 17 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 18 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | 20 | -------------------------------------------------------------------------------- /node_modules/engine.io-client/node_modules/debug/node.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./src/node'); 2 | -------------------------------------------------------------------------------- /node_modules/engine.io-client/node_modules/debug/src/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Detect Electron renderer process, which is node, but we should 3 | * treat as a browser. 4 | */ 5 | 6 | if (typeof process === 'undefined' || process.type === 'renderer') { 7 | module.exports = require('./browser.js'); 8 | } else { 9 | module.exports = require('./node.js'); 10 | } 11 | -------------------------------------------------------------------------------- /node_modules/engine.io-parser/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2016 Guillermo Rauch (@rauchg) 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. -------------------------------------------------------------------------------- /node_modules/engine.io-parser/lib/keys.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * Gets the keys for an object. 4 | * 5 | * @return {Array} keys 6 | * @api private 7 | */ 8 | 9 | module.exports = Object.keys || function keys (obj){ 10 | var arr = []; 11 | var has = Object.prototype.hasOwnProperty; 12 | 13 | for (var i in obj) { 14 | if (has.call(obj, i)) { 15 | arr.push(i); 16 | } 17 | } 18 | return arr; 19 | }; 20 | -------------------------------------------------------------------------------- /node_modules/engine.io/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 this software 6 | and associated documentation files (the 'Software'), to deal in the Software without restriction, 7 | including without limitation the rights to use, copy, modify, merge, publish, distribute, 8 | sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is 9 | furnished to do so, subject to the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be included in all copies or 12 | substantial portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 15 | BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 16 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 17 | DAMAGES OR OTHER 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 THE SOFTWARE. 19 | 20 | -------------------------------------------------------------------------------- /node_modules/engine.io/lib/transports/index.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * Module dependencies. 4 | */ 5 | 6 | var XHR = require('./polling-xhr'); 7 | var JSONP = require('./polling-jsonp'); 8 | 9 | /** 10 | * Export transports. 11 | */ 12 | 13 | module.exports = exports = { 14 | polling: polling, 15 | websocket: require('./websocket') 16 | }; 17 | 18 | /** 19 | * Export upgrades map. 20 | */ 21 | 22 | exports.polling.upgradesTo = ['websocket']; 23 | 24 | /** 25 | * Polling polymorphic constructor. 26 | * 27 | * @api private 28 | */ 29 | 30 | function polling (req) { 31 | if ('string' === typeof req._query.j) { 32 | return new JSONP(req); 33 | } else { 34 | return new XHR(req); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /node_modules/engine.io/node_modules/debug/.coveralls.yml: -------------------------------------------------------------------------------- 1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve 2 | -------------------------------------------------------------------------------- /node_modules/engine.io/node_modules/debug/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": true, 4 | "node": true 5 | }, 6 | "globals": { 7 | "chrome": true 8 | }, 9 | "rules": { 10 | "no-console": 0, 11 | "no-empty": [1, { "allowEmptyCatch": true }] 12 | }, 13 | "extends": "eslint:recommended" 14 | } 15 | -------------------------------------------------------------------------------- /node_modules/engine.io/node_modules/debug/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | example 5 | *.sock 6 | dist 7 | yarn.lock 8 | coverage 9 | bower.json 10 | -------------------------------------------------------------------------------- /node_modules/engine.io/node_modules/debug/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | 3 | language: node_js 4 | 5 | node_js: 6 | - "4" 7 | - "6" 8 | - "8" 9 | 10 | install: 11 | - make install 12 | 13 | script: 14 | - make lint 15 | - make test 16 | 17 | matrix: 18 | include: 19 | - node_js: '8' 20 | env: BROWSER=1 21 | -------------------------------------------------------------------------------- /node_modules/engine.io/node_modules/debug/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 TJ Holowaychuk 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software 6 | and associated documentation files (the 'Software'), to deal in the Software without restriction, 7 | including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 8 | and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, 9 | subject to the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be included in all copies or substantial 12 | portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 15 | LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 16 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 17 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 18 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | 20 | -------------------------------------------------------------------------------- /node_modules/engine.io/node_modules/debug/node.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./src/node'); 2 | -------------------------------------------------------------------------------- /node_modules/engine.io/node_modules/debug/src/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Detect Electron renderer process, which is node, but we should 3 | * treat as a browser. 4 | */ 5 | 6 | if (typeof process === 'undefined' || process.type === 'renderer') { 7 | module.exports = require('./browser.js'); 8 | } else { 9 | module.exports = require('./node.js'); 10 | } 11 | -------------------------------------------------------------------------------- /node_modules/escape-html/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2012-2013 TJ Holowaychuk 4 | Copyright (c) 2015 Andreas Lubbe 5 | Copyright (c) 2015 Tiancheng "Timothy" Gu 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/escape-html/Readme.md: -------------------------------------------------------------------------------- 1 | 2 | # escape-html 3 | 4 | Escape string for use in HTML 5 | 6 | ## Example 7 | 8 | ```js 9 | var escape = require('escape-html'); 10 | var html = escape('foo & bar'); 11 | // -> foo & bar 12 | ``` 13 | 14 | ## Benchmark 15 | 16 | ``` 17 | $ npm run-script bench 18 | 19 | > escape-html@1.0.3 bench nodejs-escape-html 20 | > node benchmark/index.js 21 | 22 | 23 | http_parser@1.0 24 | node@0.10.33 25 | v8@3.14.5.9 26 | ares@1.9.0-DEV 27 | uv@0.10.29 28 | zlib@1.2.3 29 | modules@11 30 | openssl@1.0.1j 31 | 32 | 1 test completed. 33 | 2 tests completed. 34 | 3 tests completed. 35 | 36 | no special characters x 19,435,271 ops/sec ±0.85% (187 runs sampled) 37 | single special character x 6,132,421 ops/sec ±0.67% (194 runs sampled) 38 | many special characters x 3,175,826 ops/sec ±0.65% (193 runs sampled) 39 | ``` 40 | 41 | ## License 42 | 43 | MIT -------------------------------------------------------------------------------- /node_modules/etag/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014-2016 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/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 | * Module dependencies. 13 | * @private 14 | */ 15 | 16 | var setPrototypeOf = require('setprototypeof') 17 | 18 | /** 19 | * Initialization middleware, exposing the 20 | * request and response to each other, as well 21 | * as defaulting the X-Powered-By header field. 22 | * 23 | * @param {Function} app 24 | * @return {Function} 25 | * @api private 26 | */ 27 | 28 | exports.init = function(app){ 29 | return function expressInit(req, res, next){ 30 | if (app.enabled('x-powered-by')) res.setHeader('X-Powered-By', 'Express'); 31 | req.res = res; 32 | res.req = req; 33 | req.next = next; 34 | 35 | setPrototypeOf(req, app.request) 36 | setPrototypeOf(res, app.response) 37 | 38 | res.locals = res.locals || Object.create(null); 39 | 40 | next(); 41 | }; 42 | }; 43 | 44 | -------------------------------------------------------------------------------- /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 merge = require('utils-merge') 16 | var parseUrl = require('parseurl'); 17 | var qs = require('qs'); 18 | 19 | /** 20 | * @param {Object} options 21 | * @return {Function} 22 | * @api public 23 | */ 24 | 25 | module.exports = function query(options) { 26 | var opts = merge({}, options) 27 | var queryparse = qs.parse; 28 | 29 | if (typeof options === 'function') { 30 | queryparse = options; 31 | opts = undefined; 32 | } 33 | 34 | if (opts !== undefined && opts.allowPrototypes === undefined) { 35 | // back-compat for qs module 36 | opts.allowPrototypes = true; 37 | } 38 | 39 | return function query(req, res, next){ 40 | if (!req.query) { 41 | var val = parseUrl(req).query; 42 | req.query = queryparse(val, opts); 43 | } 44 | 45 | next(); 46 | }; 47 | }; 48 | -------------------------------------------------------------------------------- /node_modules/finalhandler/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014-2017 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/forwarded/HISTORY.md: -------------------------------------------------------------------------------- 1 | 0.1.2 / 2017-09-14 2 | ================== 3 | 4 | * perf: improve header parsing 5 | * perf: reduce overhead when no `X-Forwarded-For` header 6 | 7 | 0.1.1 / 2017-09-10 8 | ================== 9 | 10 | * Fix trimming leading / trailing OWS 11 | * perf: hoist regular expression 12 | 13 | 0.1.0 / 2014-09-21 14 | ================== 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /node_modules/forwarded/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014-2017 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/fresh/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2012 TJ Holowaychuk 4 | Copyright (c) 2016-2017 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/has-binary2/History.md: -------------------------------------------------------------------------------- 1 | 2 | 1.0.2 / 2017-04-27 3 | ================== 4 | 5 | * fix(*): Fix Blob detection for iOS 8/9 6 | 7 | 1.0.1 / 2017-04-05 8 | ================== 9 | 10 | * chore(*): restrict files included in npm package 11 | 12 | 1.0.0 / 2017-04-05 13 | ================== 14 | 15 | * chore(*): update package name 16 | * fix(*): do not call toJSON more than once (#7) 17 | * fix(*): Ensure globals are functions before running `instanceof` checks against them. (#4) 18 | * fix(*): fix the case when toJSON() returns a Buffer (#6) 19 | * chore(*): Bump dependencies, add semistandard checkstyle and travis configuration (#5) 20 | * perf(*): Performance improvements (#3) 21 | 22 | 0.1.7 / 2015-11-18 23 | ================== 24 | 25 | * fix toJSON [@jderuere] 26 | * fix `global.isBuffer` usage [@tonetheman] 27 | * fix tests on modern versions of node 28 | * bump mocha 29 | 30 | 0.1.6 / 2015-01-24 31 | ================== 32 | 33 | * fix "undefined function" bug when iterating 34 | an object created with Object.create(null) [gunta] 35 | 36 | 0.1.5 / 2014-09-04 37 | ================== 38 | 39 | * prevent browserify from bundling `Buffer` 40 | -------------------------------------------------------------------------------- /node_modules/has-binary2/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014 Kevin Roark 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/has-binary2/README.md: -------------------------------------------------------------------------------- 1 | has-binarydata.js 2 | ================= 3 | 4 | Simple module to test if an object contains binary data 5 | -------------------------------------------------------------------------------- /node_modules/has-cors/.npmignore: -------------------------------------------------------------------------------- 1 | components 2 | build 3 | node_modules 4 | -------------------------------------------------------------------------------- /node_modules/has-cors/History.md: -------------------------------------------------------------------------------- 1 | 2 | 1.1.0 / 2014-11-12 3 | ================== 4 | 5 | * remove "global" module dependency (#2, @achingbrain) 6 | 7 | 1.0.2 / 2013-08-27 8 | ================== 9 | 10 | * explicitly use `global` instead of being implicit 11 | * pin "component/global" to v2.0.1 12 | 13 | 1.0.1 / 2013-08-23 14 | ================== 15 | 16 | * package: add "component" section 17 | 18 | 1.0.0 / 2013-08-22 19 | ================== 20 | 21 | * Initial release 22 | -------------------------------------------------------------------------------- /node_modules/has-cors/Makefile: -------------------------------------------------------------------------------- 1 | 2 | build: components index.js 3 | @component build --dev 4 | 5 | components: component.json 6 | @component install --dev 7 | 8 | clean: 9 | rm -fr build components template.js 10 | 11 | .PHONY: clean 12 | -------------------------------------------------------------------------------- /node_modules/has-cors/Readme.md: -------------------------------------------------------------------------------- 1 | 2 | # has-cors 3 | 4 | Detects support for Cross-Origin Resource Sharing 5 | 6 | ## Installation 7 | 8 | Install with [component(1)](http://component.io): 9 | 10 | $ component install component/has-cors 11 | 12 | ## API 13 | 14 | Exports `true` if the user-agent supports CORS, or `false` otherwise. 15 | 16 | ``` js 17 | var hasCORS = require('has-cors'); 18 | console.log(hasCORS); 19 | // true 20 | ``` 21 | 22 | ## License 23 | 24 | MIT 25 | -------------------------------------------------------------------------------- /node_modules/has-cors/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "has-cors", 3 | "repo": "component/has-cors", 4 | "description": "Detects support for Cross-Origin Resource Sharing", 5 | "version": "1.1.0", 6 | "keywords": [], 7 | "development": {}, 8 | "license": "MIT", 9 | "main": "index.js", 10 | "scripts": [ 11 | "index.js" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /node_modules/has-cors/index.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * Module exports. 4 | * 5 | * Logic borrowed from Modernizr: 6 | * 7 | * - https://github.com/Modernizr/Modernizr/blob/master/feature-detects/cors.js 8 | */ 9 | 10 | try { 11 | module.exports = typeof XMLHttpRequest !== 'undefined' && 12 | 'withCredentials' in new XMLHttpRequest(); 13 | } catch (err) { 14 | // if XMLHttp support is disabled in IE then it will throw 15 | // when trying to create 16 | module.exports = false; 17 | } 18 | -------------------------------------------------------------------------------- /node_modules/has-cors/test.js: -------------------------------------------------------------------------------- 1 | var expect = require('chai').expect; 2 | 3 | describe('has-cors', function() { 4 | beforeEach(function() { 5 | // make sure result is not cached 6 | delete require.cache[require.resolve('./')]; 7 | }); 8 | 9 | it('should not have cors', function() { 10 | var hasCors = require('./'); 11 | 12 | expect(hasCors).to.be.false; 13 | }); 14 | 15 | it('should have cors', function() { 16 | global.XMLHttpRequest = function() { 17 | this.withCredentials = true; 18 | }; 19 | 20 | var hasCors = require('./'); 21 | 22 | expect(hasCors).to.be.true; 23 | }); 24 | }); 25 | -------------------------------------------------------------------------------- /node_modules/http-errors/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | The MIT License (MIT) 3 | 4 | Copyright (c) 2014 Jonathan Ong me@jongleberry.com 5 | Copyright (c) 2016 Douglas Christopher Wilson doug@somethingdoug.com 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy 8 | of this software and associated documentation files (the "Software"), to deal 9 | in the Software without restriction, including without limitation the rights 10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | copies of the Software, and to permit persons to whom the Software is 12 | furnished to do so, subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in 15 | all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 23 | THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /node_modules/iconv-lite/.npmignore: -------------------------------------------------------------------------------- 1 | *~ 2 | *sublime-* 3 | generation 4 | test 5 | wiki 6 | coverage 7 | -------------------------------------------------------------------------------- /node_modules/iconv-lite/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: node_js 3 | node_js: 4 | - "0.10" 5 | - "0.11" 6 | - "0.12" 7 | - "iojs" 8 | - "4" 9 | - "6" 10 | - "8" 11 | - "node" 12 | 13 | 14 | env: 15 | - CXX=g++-4.8 16 | addons: 17 | apt: 18 | sources: 19 | - ubuntu-toolchain-r-test 20 | packages: 21 | - gcc-4.8 22 | - g++-4.8 23 | 24 | -------------------------------------------------------------------------------- /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/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/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/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/iconv-lite/lib/index.d.ts: -------------------------------------------------------------------------------- 1 | /*--------------------------------------------------------------------------------------------- 2 | * Copyright (c) Microsoft Corporation. All rights reserved. 3 | * Licensed under the MIT License. 4 | * REQUIREMENT: This definition is dependent on the @types/node definition. 5 | * Install with `npm install @types/node --save-dev` 6 | *--------------------------------------------------------------------------------------------*/ 7 | 8 | declare module 'iconv-lite' { 9 | export function decode(buffer: NodeBuffer, encoding: string, options?: Options): string; 10 | 11 | export function encode(content: string, encoding: string, options?: Options): NodeBuffer; 12 | 13 | export function encodingExists(encoding: string): boolean; 14 | 15 | export function decodeStream(encoding: string, options?: Options): NodeJS.ReadWriteStream; 16 | 17 | export function encodeStream(encoding: string, options?: Options): NodeJS.ReadWriteStream; 18 | } 19 | 20 | export interface Options { 21 | stripBOM?: boolean; 22 | addBOM?: boolean; 23 | defaultEncoding?: string; 24 | } 25 | -------------------------------------------------------------------------------- /node_modules/indexof/.npmignore: -------------------------------------------------------------------------------- 1 | components 2 | build 3 | -------------------------------------------------------------------------------- /node_modules/indexof/Makefile: -------------------------------------------------------------------------------- 1 | 2 | build: components index.js 3 | @component build 4 | 5 | components: 6 | @Component install 7 | 8 | clean: 9 | rm -fr build components template.js 10 | 11 | .PHONY: clean 12 | -------------------------------------------------------------------------------- /node_modules/indexof/Readme.md: -------------------------------------------------------------------------------- 1 | 2 | # indexOf 3 | 4 | Lame indexOf thing, thanks microsoft 5 | 6 | ## Example 7 | 8 | ```js 9 | var index = require('indexof'); 10 | index(arr, obj); 11 | ``` 12 | 13 | ## License 14 | 15 | MIT -------------------------------------------------------------------------------- /node_modules/indexof/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "indexof", 3 | "description": "Microsoft sucks", 4 | "version": "0.0.1", 5 | "keywords": ["index", "array", "indexOf"], 6 | "dependencies": {}, 7 | "scripts": [ 8 | "index.js" 9 | ] 10 | } -------------------------------------------------------------------------------- /node_modules/indexof/index.js: -------------------------------------------------------------------------------- 1 | 2 | var indexOf = [].indexOf; 3 | 4 | module.exports = function(arr, obj){ 5 | if (indexOf) return arr.indexOf(obj); 6 | for (var i = 0; i < arr.length; ++i) { 7 | if (arr[i] === obj) return i; 8 | } 9 | return -1; 10 | }; -------------------------------------------------------------------------------- /node_modules/indexof/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "_from": "indexof@0.0.1", 3 | "_id": "indexof@0.0.1", 4 | "_inBundle": false, 5 | "_integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", 6 | "_location": "/indexof", 7 | "_phantomChildren": {}, 8 | "_requested": { 9 | "type": "version", 10 | "registry": true, 11 | "raw": "indexof@0.0.1", 12 | "name": "indexof", 13 | "escapedName": "indexof", 14 | "rawSpec": "0.0.1", 15 | "saveSpec": null, 16 | "fetchSpec": "0.0.1" 17 | }, 18 | "_requiredBy": [ 19 | "/engine.io-client", 20 | "/socket.io-client" 21 | ], 22 | "_resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", 23 | "_shasum": "82dc336d232b9062179d05ab3293a66059fd435d", 24 | "_spec": "indexof@0.0.1", 25 | "_where": "/Users/wupenghe/Desktop/async_optics/node_modules/socket.io-client", 26 | "bundleDependencies": false, 27 | "component": { 28 | "scripts": { 29 | "indexof/index.js": "index.js" 30 | } 31 | }, 32 | "dependencies": {}, 33 | "deprecated": false, 34 | "description": "Microsoft sucks", 35 | "keywords": [ 36 | "index", 37 | "array", 38 | "indexOf" 39 | ], 40 | "name": "indexof", 41 | "version": "0.0.1" 42 | } 43 | -------------------------------------------------------------------------------- /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/inherits/inherits.js: -------------------------------------------------------------------------------- 1 | try { 2 | var util = require('util'); 3 | if (typeof util.inherits !== 'function') throw ''; 4 | module.exports = util.inherits; 5 | } catch (e) { 6 | module.exports = require('./inherits_browser.js'); 7 | } 8 | -------------------------------------------------------------------------------- /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/ipaddr.js/.npmignore: -------------------------------------------------------------------------------- 1 | .idea 2 | node_modules 3 | -------------------------------------------------------------------------------- /node_modules/ipaddr.js/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | 3 | node_js: 4 | - "0.10" 5 | - "0.11" 6 | - "0.12" 7 | - "4.0" 8 | - "4.1" 9 | - "4.2" 10 | - "5" 11 | -------------------------------------------------------------------------------- /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 javascript files from sources', (cb) -> 7 | source = fs.readFileSync 'src/ipaddr.coffee', 'utf-8' 8 | fs.writeFileSync 'lib/ipaddr.js', CoffeeScript.compile source.toString() 9 | 10 | source = fs.readFileSync 'lib/ipaddr.js', 'utf-8' 11 | fs.writeFileSync('ipaddr.min.js', UglifyJS.minify(source).code) 12 | 13 | task 'test', 'run the bundled tests', (cb) -> 14 | nodeunit.reporters.default.run ['test'] 15 | -------------------------------------------------------------------------------- /node_modules/ipaddr.js/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (C) 2011-2017 whitequark 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/ipaddr.js/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ipaddr.js", 3 | "version": "1.6.0", 4 | "homepage": "https://github.com/whitequark/ipaddr.js", 5 | "authors": [ 6 | "whitequark " 7 | ], 8 | "description": "IP address manipulation library in JavaScript (CoffeeScript, actually)", 9 | "main": "lib/ipaddr.js", 10 | "moduleType": [ 11 | "globals", 12 | "node" 13 | ], 14 | "keywords": [ 15 | "javscript", 16 | "ip", 17 | "address", 18 | "ipv4", 19 | "ipv6" 20 | ], 21 | "license": "MIT", 22 | "ignore": [ 23 | "**/.*", 24 | "node_modules", 25 | "bower_components", 26 | "test", 27 | "tests" 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /node_modules/isarray/index.js: -------------------------------------------------------------------------------- 1 | var toString = {}.toString; 2 | 3 | module.exports = Array.isArray || function (arr) { 4 | return toString.call(arr) == '[object Array]'; 5 | }; 6 | -------------------------------------------------------------------------------- /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/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/merge-descriptors/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.1 / 2016-01-17 2 | ================== 3 | 4 | * perf: enable strict mode 5 | 6 | 1.0.0 / 2015-03-01 7 | ================== 8 | 9 | * Add option to only add new descriptors 10 | * Add simple argument validation 11 | * Add jsdoc to source file 12 | 13 | 0.0.2 / 2013-12-14 14 | ================== 15 | 16 | * Move repository to `component` organization 17 | 18 | 0.0.1 / 2013-10-29 19 | ================== 20 | 21 | * Initial release 22 | -------------------------------------------------------------------------------- /node_modules/merge-descriptors/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2013 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/methods/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.1.2 / 2016-01-17 2 | ================== 3 | 4 | * perf: enable strict mode 5 | 6 | 1.1.1 / 2014-12-30 7 | ================== 8 | 9 | * Improve `browserify` support 10 | 11 | 1.1.0 / 2014-07-05 12 | ================== 13 | 14 | * Add `CONNECT` method 15 | 16 | 1.0.1 / 2014-06-02 17 | ================== 18 | 19 | * Fix module to work with harmony transform 20 | 21 | 1.0.0 / 2014-05-08 22 | ================== 23 | 24 | * Add `PURGE` method 25 | 26 | 0.1.0 / 2013-10-28 27 | ================== 28 | 29 | * Add `http.METHODS` support 30 | -------------------------------------------------------------------------------- /node_modules/methods/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2013-2014 TJ Holowaychuk 4 | Copyright (c) 2015-2016 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 | 25 | -------------------------------------------------------------------------------- /node_modules/methods/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * methods 3 | * Copyright(c) 2013-2014 TJ Holowaychuk 4 | * Copyright(c) 2015-2016 Douglas Christopher Wilson 5 | * MIT Licensed 6 | */ 7 | 8 | 'use strict'; 9 | 10 | /** 11 | * Module dependencies. 12 | * @private 13 | */ 14 | 15 | var http = require('http'); 16 | 17 | /** 18 | * Module exports. 19 | * @public 20 | */ 21 | 22 | module.exports = getCurrentNodeMethods() || getBasicNodeMethods(); 23 | 24 | /** 25 | * Get the current Node.js methods. 26 | * @private 27 | */ 28 | 29 | function getCurrentNodeMethods() { 30 | return http.METHODS && http.METHODS.map(function lowerCaseMethod(method) { 31 | return method.toLowerCase(); 32 | }); 33 | } 34 | 35 | /** 36 | * Get the "basic" Node.js methods, a snapshot from Node.js 0.10. 37 | * @private 38 | */ 39 | 40 | function getBasicNodeMethods() { 41 | return [ 42 | 'get', 43 | 'post', 44 | 'put', 45 | 'head', 46 | 'delete', 47 | 'options', 48 | 'trace', 49 | 'copy', 50 | 'lock', 51 | 'mkcol', 52 | 'move', 53 | 'purge', 54 | 'propfind', 55 | 'proppatch', 56 | 'unlock', 57 | 'report', 58 | 'mkactivity', 59 | 'checkout', 60 | 'merge', 61 | 'm-search', 62 | 'notify', 63 | 'subscribe', 64 | 'unsubscribe', 65 | 'patch', 66 | 'search', 67 | 'connect' 68 | ]; 69 | } 70 | -------------------------------------------------------------------------------- /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/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/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/mime/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2010 Benjamin Thomas, Robert Kieffer 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/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/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/ms/license.md: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Zeit, Inc. 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 | -------------------------------------------------------------------------------- /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/object-component/.npmignore: -------------------------------------------------------------------------------- 1 | components 2 | build 3 | node_modules 4 | -------------------------------------------------------------------------------- /node_modules/object-component/History.md: -------------------------------------------------------------------------------- 1 | 2 | 0.0.3 / 2012-10-15 3 | ================== 4 | 5 | * package: added `component` namespace (fixes #1) 6 | 7 | 0.0.2 / 2012-09-20 8 | ================== 9 | 10 | * add code smell to `.merge()` 11 | -------------------------------------------------------------------------------- /node_modules/object-component/Makefile: -------------------------------------------------------------------------------- 1 | 2 | build: components index.js 3 | @component build 4 | 5 | components: 6 | @Component install 7 | 8 | clean: 9 | rm -fr build components template.js 10 | 11 | test: 12 | @./node_modules/.bin/mocha \ 13 | --require should \ 14 | --reporter spec 15 | 16 | .PHONY: clean test 17 | -------------------------------------------------------------------------------- /node_modules/object-component/Readme.md: -------------------------------------------------------------------------------- 1 | 2 | # object 3 | 4 | Object utils. 5 | 6 | ## API 7 | 8 | ### .keys(obj) 9 | 10 | Return the keys for `obj`. 11 | 12 | ### .values(obj) 13 | 14 | Return the values for `obj`. 15 | 16 | ### .length(obj) 17 | 18 | Return the number of keys for `obj`. 19 | 20 | ### .isEmpty(obj) 21 | 22 | Check if `obj` is empty. 23 | 24 | ### .merge(a, b) 25 | 26 | Merge object `b` into `a`, returns `a`. 27 | Precedence is given to `b`. 28 | 29 | ## License 30 | 31 | MIT -------------------------------------------------------------------------------- /node_modules/object-component/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "object", 3 | "description": "Object keys / values / length", 4 | "version": "0.0.3", 5 | "keywords": ["object", "keys", "utility"], 6 | "dependencies": {}, 7 | "scripts": [ 8 | "index.js" 9 | ] 10 | } -------------------------------------------------------------------------------- /node_modules/object-component/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "_from": "object-component@0.0.3", 3 | "_id": "object-component@0.0.3", 4 | "_inBundle": false, 5 | "_integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=", 6 | "_location": "/object-component", 7 | "_phantomChildren": {}, 8 | "_requested": { 9 | "type": "version", 10 | "registry": true, 11 | "raw": "object-component@0.0.3", 12 | "name": "object-component", 13 | "escapedName": "object-component", 14 | "rawSpec": "0.0.3", 15 | "saveSpec": null, 16 | "fetchSpec": "0.0.3" 17 | }, 18 | "_requiredBy": [ 19 | "/socket.io-client" 20 | ], 21 | "_resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", 22 | "_shasum": "f0c69aa50efc95b866c186f400a33769cb2f1291", 23 | "_spec": "object-component@0.0.3", 24 | "_where": "/Users/wupenghe/Desktop/async_optics/node_modules/socket.io-client", 25 | "bundleDependencies": false, 26 | "component": { 27 | "scripts": { 28 | "object/index.js": "index.js" 29 | } 30 | }, 31 | "deprecated": false, 32 | "description": "Object utils.", 33 | "devDependencies": { 34 | "mocha": "*", 35 | "should": "*" 36 | }, 37 | "name": "object-component", 38 | "version": "0.0.3" 39 | } 40 | -------------------------------------------------------------------------------- /node_modules/object-component/test/object.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * Module dependencies. 4 | */ 5 | 6 | var object = require('..'); 7 | 8 | describe('.keys(obj)', function(){ 9 | it('should return the keys of an object', function(){ 10 | var obj = { name: 'tobi', age: 1 }; 11 | object.keys(obj).should.eql(['name', 'age']); 12 | }) 13 | }) 14 | 15 | describe('.values(obj)', function(){ 16 | it('should return the values of an object', function(){ 17 | var obj = { name: 'tobi', age: 1 }; 18 | object.values(obj).should.eql(['tobi', 1]); 19 | }) 20 | }) 21 | 22 | describe('.length(obj)', function(){ 23 | it('should return key count', function(){ 24 | var obj = { name: 'tobi', age: 1 }; 25 | object.length(obj).should.equal(2); 26 | }) 27 | }) 28 | 29 | describe('.merge(a, b)', function(){ 30 | it('should merge two objects', function(){ 31 | var a = { foo: 'bar' }; 32 | var b = { bar: 'baz' }; 33 | object.merge(a, b).should.eql({ foo: 'bar', bar: 'baz' }); 34 | }) 35 | 36 | it('should give precedence to b', function(){ 37 | var a = { foo: 'bar' }; 38 | var b = { foo: 'baz' }; 39 | object.merge(a, b).should.eql({ foo: 'baz' }); 40 | }) 41 | }) 42 | 43 | describe('.isEmpty()', function(){ 44 | it('should check if the object is empty', function(){ 45 | object.isEmpty({}).should.be.true; 46 | object.isEmpty({ foo: 'bar' }).should.be.false; 47 | }) 48 | }) -------------------------------------------------------------------------------- /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/parseqs/.npmignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | npm-debug.log -------------------------------------------------------------------------------- /node_modules/parseqs/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Gal Koren 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/parseqs/Makefile: -------------------------------------------------------------------------------- 1 | 2 | test: 3 | @./node_modules/.bin/mocha test.js 4 | -------------------------------------------------------------------------------- /node_modules/parseqs/README.md: -------------------------------------------------------------------------------- 1 | Provides methods for converting an object into string representation, and vice versa. 2 | -------------------------------------------------------------------------------- /node_modules/parseqs/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Compiles a querystring 3 | * Returns string representation of the object 4 | * 5 | * @param {Object} 6 | * @api private 7 | */ 8 | 9 | exports.encode = function (obj) { 10 | var str = ''; 11 | 12 | for (var i in obj) { 13 | if (obj.hasOwnProperty(i)) { 14 | if (str.length) str += '&'; 15 | str += encodeURIComponent(i) + '=' + encodeURIComponent(obj[i]); 16 | } 17 | } 18 | 19 | return str; 20 | }; 21 | 22 | /** 23 | * Parses a simple querystring into an object 24 | * 25 | * @param {String} qs 26 | * @api private 27 | */ 28 | 29 | exports.decode = function(qs){ 30 | var qry = {}; 31 | var pairs = qs.split('&'); 32 | for (var i = 0, l = pairs.length; i < l; i++) { 33 | var pair = pairs[i].split('='); 34 | qry[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]); 35 | } 36 | return qry; 37 | }; 38 | -------------------------------------------------------------------------------- /node_modules/parseqs/test.js: -------------------------------------------------------------------------------- 1 | var assert = require('better-assert'); 2 | var expect = require('expect.js'); 3 | var util = require('./index.js'); 4 | 5 | describe('querystring test suite', function(){ 6 | it('should parse a querystring and return an object', function () { 7 | 8 | // Single assignment 9 | var queryObj = util.decode("foo=bar"); 10 | expect(queryObj.foo).to.be("bar"); 11 | 12 | // Multiple assignments 13 | queryObj = util.decode("france=paris&germany=berlin"); 14 | expect(queryObj.france).to.be("paris"); 15 | expect(queryObj.germany).to.be("berlin"); 16 | 17 | // Assignments containing non-alphanumeric characters 18 | queryObj = util.decode("india=new%20delhi"); 19 | expect(queryObj.india).to.be("new delhi"); 20 | }); 21 | 22 | it('should construct a query string from an object', function () { 23 | expect(util.encode({ a: 'b' })).to.be('a=b'); 24 | expect(util.encode({ a: 'b', c: 'd' })).to.be('a=b&c=d'); 25 | expect(util.encode({ a: 'b', c: 'tobi rocks' })).to.be('a=b&c=tobi%20rocks'); 26 | }); 27 | }); 28 | -------------------------------------------------------------------------------- /node_modules/parseuri/.npmignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .node_modules/* -------------------------------------------------------------------------------- /node_modules/parseuri/History.md: -------------------------------------------------------------------------------- 1 | 2 | n.n.n / 2014-02-09 3 | ================== 4 | 5 | * parseuri first commit 6 | -------------------------------------------------------------------------------- /node_modules/parseuri/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014 Gal Koren 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/parseuri/Makefile: -------------------------------------------------------------------------------- 1 | 2 | test: 3 | @./node_modules/.bin/mocha test.js 4 | -------------------------------------------------------------------------------- /node_modules/parseuri/README.md: -------------------------------------------------------------------------------- 1 | # parseuri 2 | Module for parsing URI's in engine.io-client 3 | -------------------------------------------------------------------------------- /node_modules/parseuri/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Parses an URI 3 | * 4 | * @author Steven Levithan (MIT license) 5 | * @api private 6 | */ 7 | 8 | var re = /^(?:(?![^:@]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/; 9 | 10 | var parts = [ 11 | 'source', 'protocol', 'authority', 'userInfo', 'user', 'password', 'host', 'port', 'relative', 'path', 'directory', 'file', 'query', 'anchor' 12 | ]; 13 | 14 | module.exports = function parseuri(str) { 15 | var src = str, 16 | b = str.indexOf('['), 17 | e = str.indexOf(']'); 18 | 19 | if (b != -1 && e != -1) { 20 | str = str.substring(0, b) + str.substring(b, e).replace(/:/g, ';') + str.substring(e, str.length); 21 | } 22 | 23 | var m = re.exec(str || ''), 24 | uri = {}, 25 | i = 14; 26 | 27 | while (i--) { 28 | uri[parts[i]] = m[i] || ''; 29 | } 30 | 31 | if (b != -1 && e != -1) { 32 | uri.source = src; 33 | uri.host = uri.host.substring(1, uri.host.length - 1).replace(/;/g, ':'); 34 | uri.authority = uri.authority.replace('[', '').replace(']', '').replace(/;/g, ':'); 35 | uri.ipv6uri = true; 36 | } 37 | 38 | return uri; 39 | }; 40 | -------------------------------------------------------------------------------- /node_modules/parseurl/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.3.2 / 2017-09-09 2 | ================== 3 | 4 | * perf: reduce overhead for full URLs 5 | * perf: unroll the "fast-path" `RegExp` 6 | 7 | 1.3.1 / 2016-01-17 8 | ================== 9 | 10 | * perf: enable strict mode 11 | 12 | 1.3.0 / 2014-08-09 13 | ================== 14 | 15 | * Add `parseurl.original` for parsing `req.originalUrl` with fallback 16 | * Return `undefined` if `req.url` is `undefined` 17 | 18 | 1.2.0 / 2014-07-21 19 | ================== 20 | 21 | * Cache URLs based on original value 22 | * Remove no-longer-needed URL mis-parse work-around 23 | * Simplify the "fast-path" `RegExp` 24 | 25 | 1.1.3 / 2014-07-08 26 | ================== 27 | 28 | * Fix typo 29 | 30 | 1.1.2 / 2014-07-08 31 | ================== 32 | 33 | * Seriously fix Node.js 0.8 compatibility 34 | 35 | 1.1.1 / 2014-07-08 36 | ================== 37 | 38 | * Fix Node.js 0.8 compatibility 39 | 40 | 1.1.0 / 2014-07-08 41 | ================== 42 | 43 | * Incorporate URL href-only parse fast-path 44 | 45 | 1.0.1 / 2014-03-08 46 | ================== 47 | 48 | * Add missing `require` 49 | 50 | 1.0.0 / 2014-03-08 51 | ================== 52 | 53 | * Genesis from `connect` 54 | -------------------------------------------------------------------------------- /node_modules/parseurl/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | (The MIT License) 3 | 4 | Copyright (c) 2014 Jonathan Ong 5 | Copyright (c) 2014-2017 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/path-to-regexp/History.md: -------------------------------------------------------------------------------- 1 | 0.1.7 / 2015-07-28 2 | ================== 3 | 4 | * Fixed regression with escaped round brackets and matching groups. 5 | 6 | 0.1.6 / 2015-06-19 7 | ================== 8 | 9 | * Replace `index` feature by outputting all parameters, unnamed and named. 10 | 11 | 0.1.5 / 2015-05-08 12 | ================== 13 | 14 | * Add an index property for position in match result. 15 | 16 | 0.1.4 / 2015-03-05 17 | ================== 18 | 19 | * Add license information 20 | 21 | 0.1.3 / 2014-07-06 22 | ================== 23 | 24 | * Better array support 25 | * Improved support for trailing slash in non-ending mode 26 | 27 | 0.1.0 / 2014-03-06 28 | ================== 29 | 30 | * add options.end 31 | 32 | 0.0.2 / 2013-02-10 33 | ================== 34 | 35 | * Update to match current express 36 | * add .license property to component.json 37 | -------------------------------------------------------------------------------- /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/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`. 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/proxy-addr/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014-2016 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/qs/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 4 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | max_line_length = 140 11 | 12 | [test/*] 13 | max_line_length = off 14 | 15 | [*.md] 16 | max_line_length = off 17 | 18 | [*.json] 19 | max_line_length = off 20 | 21 | [Makefile] 22 | max_line_length = off 23 | 24 | [CHANGELOG.md] 25 | indent_style = space 26 | indent_size = 2 27 | 28 | [LICENSE] 29 | indent_size = 2 30 | max_line_length = off 31 | -------------------------------------------------------------------------------- /node_modules/qs/.eslintignore: -------------------------------------------------------------------------------- 1 | dist 2 | -------------------------------------------------------------------------------- /node_modules/qs/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "complexity": [2, 28], 8 | "consistent-return": 1, 9 | "func-name-matching": 0, 10 | "id-length": [2, { "min": 1, "max": 25, "properties": "never" }], 11 | "indent": [2, 4], 12 | "max-params": [2, 12], 13 | "max-statements": [2, 45], 14 | "no-continue": 1, 15 | "no-magic-numbers": 0, 16 | "no-restricted-syntax": [2, "BreakStatement", "DebuggerStatement", "ForInStatement", "LabeledStatement", "WithStatement"], 17 | "operator-linebreak": [2, "before"], 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /node_modules/qs/lib/formats.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var replace = String.prototype.replace; 4 | var percentTwenties = /%20/g; 5 | 6 | module.exports = { 7 | 'default': 'RFC3986', 8 | formatters: { 9 | RFC1738: function (value) { 10 | return replace.call(value, percentTwenties, '+'); 11 | }, 12 | RFC3986: function (value) { 13 | return value; 14 | } 15 | }, 16 | RFC1738: 'RFC1738', 17 | RFC3986: 'RFC3986' 18 | }; 19 | -------------------------------------------------------------------------------- /node_modules/qs/lib/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var stringify = require('./stringify'); 4 | var parse = require('./parse'); 5 | var formats = require('./formats'); 6 | 7 | module.exports = { 8 | formats: formats, 9 | parse: parse, 10 | stringify: stringify 11 | }; 12 | -------------------------------------------------------------------------------- /node_modules/qs/test/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "array-bracket-newline": 0, 4 | "array-element-newline": 0, 5 | "consistent-return": 2, 6 | "max-lines": 0, 7 | "max-nested-callbacks": [2, 3], 8 | "max-statements": 0, 9 | "no-buffer-constructor": 0, 10 | "no-extend-native": 0, 11 | "no-magic-numbers": 0, 12 | "object-curly-newline": 0, 13 | "sort-keys": 0 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /node_modules/qs/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | require('./parse'); 4 | 5 | require('./stringify'); 6 | 7 | require('./utils'); 8 | -------------------------------------------------------------------------------- /node_modules/range-parser/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.2.0 / 2016-06-01 2 | ================== 3 | 4 | * Add `combine` option to combine overlapping ranges 5 | 6 | 1.1.0 / 2016-05-13 7 | ================== 8 | 9 | * Fix incorrectly returning -1 when there is at least one valid range 10 | * perf: remove internal function 11 | 12 | 1.0.3 / 2015-10-29 13 | ================== 14 | 15 | * perf: enable strict mode 16 | 17 | 1.0.2 / 2014-09-08 18 | ================== 19 | 20 | * Support Node.js 0.6 21 | 22 | 1.0.1 / 2014-09-07 23 | ================== 24 | 25 | * Move repository to jshttp 26 | 27 | 1.0.0 / 2013-12-11 28 | ================== 29 | 30 | * Add repository to package.json 31 | * Add MIT license 32 | 33 | 0.0.4 / 2012-06-17 34 | ================== 35 | 36 | * Change ret -1 for unsatisfiable and -2 when invalid 37 | 38 | 0.0.3 / 2012-06-17 39 | ================== 40 | 41 | * Fix last-byte-pos default to len - 1 42 | 43 | 0.0.2 / 2012-06-14 44 | ================== 45 | 46 | * Add `.type` 47 | 48 | 0.0.1 / 2012-06-11 49 | ================== 50 | 51 | * Initial release 52 | -------------------------------------------------------------------------------- /node_modules/range-parser/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2012-2014 TJ Holowaychuk 4 | Copyright (c) 2015-2016 Douglas Christopher Wilson 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/raw-body/node_modules/depd/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014-2017 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/raw-body/node_modules/depd/lib/compat/event-listener-count.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * depd 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 = eventListenerCount 15 | 16 | /** 17 | * Get the count of listeners on an event emitter of a specific type. 18 | */ 19 | 20 | function eventListenerCount (emitter, type) { 21 | return emitter.listeners(type).length 22 | } 23 | -------------------------------------------------------------------------------- /node_modules/raw-body/node_modules/http-errors/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | The MIT License (MIT) 3 | 4 | Copyright (c) 2014 Jonathan Ong me@jongleberry.com 5 | Copyright (c) 2016 Douglas Christopher Wilson doug@somethingdoug.com 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy 8 | of this software and associated documentation files (the "Software"), to deal 9 | in the Software without restriction, including without limitation the rights 10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | copies of the Software, and to permit persons to whom the Software is 12 | furnished to do so, subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in 15 | all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 23 | THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /node_modules/raw-body/node_modules/setprototypeof/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015, Wes Todd 2 | 3 | Permission to use, copy, modify, and/or distribute this software for any 4 | purpose with or without fee is hereby granted, provided that the above 5 | copyright notice and this permission notice appear in all copies. 6 | 7 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 8 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 9 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY 10 | SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 11 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 12 | OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 13 | CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 14 | -------------------------------------------------------------------------------- /node_modules/raw-body/node_modules/setprototypeof/README.md: -------------------------------------------------------------------------------- 1 | # Polyfill for `Object.setPrototypeOf` 2 | 3 | A simple cross platform implementation to set the prototype of an instianted object. Supports all modern browsers and at least back to IE8. 4 | 5 | ## Usage: 6 | 7 | ``` 8 | $ npm install --save setprototypeof 9 | ``` 10 | 11 | ```javascript 12 | var setPrototypeOf = require('setprototypeof'); 13 | 14 | var obj = {}; 15 | setPrototypeOf(obj, { 16 | foo: function() { 17 | return 'bar'; 18 | } 19 | }); 20 | obj.foo(); // bar 21 | ``` 22 | -------------------------------------------------------------------------------- /node_modules/raw-body/node_modules/setprototypeof/index.js: -------------------------------------------------------------------------------- 1 | module.exports = Object.setPrototypeOf || ({__proto__:[]} instanceof Array ? setProtoOf : mixinProperties); 2 | 3 | function setProtoOf(obj, proto) { 4 | obj.__proto__ = proto; 5 | return obj; 6 | } 7 | 8 | function mixinProperties(obj, proto) { 9 | for (var prop in proto) { 10 | if (!obj.hasOwnProperty(prop)) { 11 | obj[prop] = proto[prop]; 12 | } 13 | } 14 | return obj; 15 | } 16 | -------------------------------------------------------------------------------- /node_modules/safe-buffer/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - 'node' 4 | - '5' 5 | - '4' 6 | - '0.12' 7 | - '0.10' 8 | -------------------------------------------------------------------------------- /node_modules/safe-buffer/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) Feross Aboukhadijeh 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/send/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2012 TJ Holowaychuk 4 | Copyright (c) 2014-2016 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/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-2016 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/setprototypeof/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015, Wes Todd 2 | 3 | Permission to use, copy, modify, and/or distribute this software for any 4 | purpose with or without fee is hereby granted, provided that the above 5 | copyright notice and this permission notice appear in all copies. 6 | 7 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 8 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 9 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY 10 | SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 11 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 12 | OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 13 | CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 14 | -------------------------------------------------------------------------------- /node_modules/setprototypeof/README.md: -------------------------------------------------------------------------------- 1 | # Polyfill for `Object.setPrototypeOf` 2 | 3 | A simple cross platform implementation to set the prototype of an instianted object. Supports all modern browsers and at least back to IE8. 4 | 5 | ## Usage: 6 | 7 | ``` 8 | $ npm install --save setprototypeof 9 | ``` 10 | 11 | ```javascript 12 | var setPrototypeOf = require('setprototypeof'); 13 | 14 | var obj = {}; 15 | setPrototypeOf(obj, { 16 | foo: function() { 17 | return 'bar'; 18 | } 19 | }); 20 | obj.foo(); // bar 21 | ``` 22 | 23 | TypeScript is also supported: 24 | ```typescript 25 | import setPrototypeOf = require('setprototypeof'); 26 | ``` -------------------------------------------------------------------------------- /node_modules/setprototypeof/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function setPrototypeOf(o: any, proto: object | null): any; 2 | export = setPrototypeOf; 3 | -------------------------------------------------------------------------------- /node_modules/setprototypeof/index.js: -------------------------------------------------------------------------------- 1 | module.exports = Object.setPrototypeOf || ({__proto__:[]} instanceof Array ? setProtoOf : mixinProperties); 2 | 3 | function setProtoOf(obj, proto) { 4 | obj.__proto__ = proto; 5 | return obj; 6 | } 7 | 8 | function mixinProperties(obj, proto) { 9 | for (var prop in proto) { 10 | if (!obj.hasOwnProperty(prop)) { 11 | obj[prop] = proto[prop]; 12 | } 13 | } 14 | return obj; 15 | } 16 | -------------------------------------------------------------------------------- /node_modules/socket.io-adapter/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /node_modules/socket.io-adapter/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/socket.io-adapter/Readme.md: -------------------------------------------------------------------------------- 1 | 2 | # socket.io-adapter 3 | 4 | Default socket.io in-memory adapter class. 5 | 6 | ## How to use 7 | 8 | This module is not intended for end-user usage, but can be used as an 9 | interface to inherit from from other adapters you might want to build. 10 | 11 | As an example of an adapter that builds on top of this, please take a look 12 | at [socket.io-redis](https://github.com/learnboost/socket.io-redis). 13 | 14 | ## License 15 | 16 | MIT 17 | -------------------------------------------------------------------------------- /node_modules/socket.io-adapter/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "_from": "socket.io-adapter@~1.1.0", 3 | "_id": "socket.io-adapter@1.1.1", 4 | "_inBundle": false, 5 | "_integrity": "sha1-KoBeihTWNyEk3ZFZrUUC+MsH8Gs=", 6 | "_location": "/socket.io-adapter", 7 | "_phantomChildren": {}, 8 | "_requested": { 9 | "type": "range", 10 | "registry": true, 11 | "raw": "socket.io-adapter@~1.1.0", 12 | "name": "socket.io-adapter", 13 | "escapedName": "socket.io-adapter", 14 | "rawSpec": "~1.1.0", 15 | "saveSpec": null, 16 | "fetchSpec": "~1.1.0" 17 | }, 18 | "_requiredBy": [ 19 | "/socket.io" 20 | ], 21 | "_resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz", 22 | "_shasum": "2a805e8a14d6372124dd9159ad4502f8cb07f06b", 23 | "_spec": "socket.io-adapter@~1.1.0", 24 | "_where": "/Users/wupenghe/Desktop/async_optics/node_modules/socket.io", 25 | "bugs": { 26 | "url": "https://github.com/socketio/socket.io-adapter/issues" 27 | }, 28 | "bundleDependencies": false, 29 | "deprecated": false, 30 | "description": "default socket.io in-memory adapter", 31 | "homepage": "https://github.com/socketio/socket.io-adapter#readme", 32 | "license": "MIT", 33 | "name": "socket.io-adapter", 34 | "repository": { 35 | "type": "git", 36 | "url": "git://github.com/socketio/socket.io-adapter.git" 37 | }, 38 | "version": "1.1.1" 39 | } 40 | -------------------------------------------------------------------------------- /node_modules/socket.io-client/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014 Guillermo Rauch 4 | 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. -------------------------------------------------------------------------------- /node_modules/socket.io-client/lib/on.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * Module exports. 4 | */ 5 | 6 | module.exports = on; 7 | 8 | /** 9 | * Helper for subscriptions. 10 | * 11 | * @param {Object|EventEmitter} obj with `Emitter` mixin or `EventEmitter` 12 | * @param {String} event name 13 | * @param {Function} callback 14 | * @api public 15 | */ 16 | 17 | function on (obj, ev, fn) { 18 | obj.on(ev, fn); 19 | return { 20 | destroy: function () { 21 | obj.removeListener(ev, fn); 22 | } 23 | }; 24 | } 25 | -------------------------------------------------------------------------------- /node_modules/socket.io-client/node_modules/debug/.coveralls.yml: -------------------------------------------------------------------------------- 1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve 2 | -------------------------------------------------------------------------------- /node_modules/socket.io-client/node_modules/debug/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": true, 4 | "node": true 5 | }, 6 | "globals": { 7 | "chrome": true 8 | }, 9 | "rules": { 10 | "no-console": 0, 11 | "no-empty": [1, { "allowEmptyCatch": true }] 12 | }, 13 | "extends": "eslint:recommended" 14 | } 15 | -------------------------------------------------------------------------------- /node_modules/socket.io-client/node_modules/debug/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | example 5 | *.sock 6 | dist 7 | yarn.lock 8 | coverage 9 | bower.json 10 | -------------------------------------------------------------------------------- /node_modules/socket.io-client/node_modules/debug/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | 3 | language: node_js 4 | 5 | node_js: 6 | - "4" 7 | - "6" 8 | - "8" 9 | 10 | install: 11 | - make install 12 | 13 | script: 14 | - make lint 15 | - make test 16 | 17 | matrix: 18 | include: 19 | - node_js: '8' 20 | env: BROWSER=1 21 | -------------------------------------------------------------------------------- /node_modules/socket.io-client/node_modules/debug/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 TJ Holowaychuk 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software 6 | and associated documentation files (the 'Software'), to deal in the Software without restriction, 7 | including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 8 | and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, 9 | subject to the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be included in all copies or substantial 12 | portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 15 | LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 16 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 17 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 18 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | 20 | -------------------------------------------------------------------------------- /node_modules/socket.io-client/node_modules/debug/node.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./src/node'); 2 | -------------------------------------------------------------------------------- /node_modules/socket.io-client/node_modules/debug/src/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Detect Electron renderer process, which is node, but we should 3 | * treat as a browser. 4 | */ 5 | 6 | if (typeof process === 'undefined' || process.type === 'renderer') { 7 | module.exports = require('./browser.js'); 8 | } else { 9 | module.exports = require('./node.js'); 10 | } 11 | -------------------------------------------------------------------------------- /node_modules/socket.io-parser/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/socket.io-parser/is-buffer.js: -------------------------------------------------------------------------------- 1 | 2 | module.exports = isBuf; 3 | 4 | var withNativeBuffer = typeof global.Buffer === 'function' && typeof global.Buffer.isBuffer === 'function'; 5 | var withNativeArrayBuffer = typeof global.ArrayBuffer === 'function'; 6 | 7 | var isView = (function () { 8 | if (withNativeArrayBuffer && typeof global.ArrayBuffer.isView === 'function') { 9 | return global.ArrayBuffer.isView; 10 | } else { 11 | return function (obj) { return obj.buffer instanceof global.ArrayBuffer; }; 12 | } 13 | })(); 14 | 15 | /** 16 | * Returns true if obj is a buffer or an arraybuffer. 17 | * 18 | * @api private 19 | */ 20 | 21 | function isBuf(obj) { 22 | return (withNativeBuffer && global.Buffer.isBuffer(obj)) || 23 | (withNativeArrayBuffer && (obj instanceof global.ArrayBuffer || isView(obj))); 24 | } 25 | -------------------------------------------------------------------------------- /node_modules/socket.io-parser/node_modules/debug/.coveralls.yml: -------------------------------------------------------------------------------- 1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve 2 | -------------------------------------------------------------------------------- /node_modules/socket.io-parser/node_modules/debug/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": true, 4 | "node": true 5 | }, 6 | "globals": { 7 | "chrome": true 8 | }, 9 | "rules": { 10 | "no-console": 0, 11 | "no-empty": [1, { "allowEmptyCatch": true }] 12 | }, 13 | "extends": "eslint:recommended" 14 | } 15 | -------------------------------------------------------------------------------- /node_modules/socket.io-parser/node_modules/debug/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | example 5 | *.sock 6 | dist 7 | yarn.lock 8 | coverage 9 | bower.json 10 | -------------------------------------------------------------------------------- /node_modules/socket.io-parser/node_modules/debug/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | 3 | language: node_js 4 | 5 | node_js: 6 | - "4" 7 | - "6" 8 | - "8" 9 | 10 | install: 11 | - make install 12 | 13 | script: 14 | - make lint 15 | - make test 16 | 17 | matrix: 18 | include: 19 | - node_js: '8' 20 | env: BROWSER=1 21 | -------------------------------------------------------------------------------- /node_modules/socket.io-parser/node_modules/debug/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 TJ Holowaychuk 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software 6 | and associated documentation files (the 'Software'), to deal in the Software without restriction, 7 | including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 8 | and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, 9 | subject to the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be included in all copies or substantial 12 | portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 15 | LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 16 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 17 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 18 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | 20 | -------------------------------------------------------------------------------- /node_modules/socket.io-parser/node_modules/debug/node.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./src/node'); 2 | -------------------------------------------------------------------------------- /node_modules/socket.io-parser/node_modules/debug/src/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Detect Electron renderer process, which is node, but we should 3 | * treat as a browser. 4 | */ 5 | 6 | if (typeof process === 'undefined' || process.type === 'renderer') { 7 | module.exports = require('./browser.js'); 8 | } else { 9 | module.exports = require('./node.js'); 10 | } 11 | -------------------------------------------------------------------------------- /node_modules/socket.io/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014-2018 Automattic 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/socket.io/lib/parent-namespace.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const Namespace = require('./namespace'); 4 | 5 | let count = 0; 6 | 7 | class ParentNamespace extends Namespace { 8 | 9 | constructor(server) { 10 | super(server, '/_' + (count++)); 11 | this.children = new Set(); 12 | } 13 | 14 | initAdapter() {} 15 | 16 | emit() { 17 | const args = Array.prototype.slice.call(arguments); 18 | 19 | this.children.forEach(nsp => { 20 | nsp.rooms = this.rooms; 21 | nsp.flags = this.flags; 22 | nsp.emit.apply(nsp, args); 23 | }); 24 | this.rooms = []; 25 | this.flags = {}; 26 | } 27 | 28 | createChild(name) { 29 | const namespace = new Namespace(this.server, name); 30 | namespace.fns = this.fns.slice(0); 31 | this.listeners('connect').forEach(listener => namespace.on('connect', listener)); 32 | this.listeners('connection').forEach(listener => namespace.on('connection', listener)); 33 | this.children.add(namespace); 34 | this.server.nsps[name] = namespace; 35 | return namespace; 36 | } 37 | } 38 | 39 | module.exports = ParentNamespace; 40 | -------------------------------------------------------------------------------- /node_modules/socket.io/node_modules/debug/.coveralls.yml: -------------------------------------------------------------------------------- 1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve 2 | -------------------------------------------------------------------------------- /node_modules/socket.io/node_modules/debug/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": true, 4 | "node": true 5 | }, 6 | "globals": { 7 | "chrome": true 8 | }, 9 | "rules": { 10 | "no-console": 0, 11 | "no-empty": [1, { "allowEmptyCatch": true }] 12 | }, 13 | "extends": "eslint:recommended" 14 | } 15 | -------------------------------------------------------------------------------- /node_modules/socket.io/node_modules/debug/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | example 5 | *.sock 6 | dist 7 | yarn.lock 8 | coverage 9 | bower.json 10 | -------------------------------------------------------------------------------- /node_modules/socket.io/node_modules/debug/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | 3 | language: node_js 4 | 5 | node_js: 6 | - "4" 7 | - "6" 8 | - "8" 9 | 10 | install: 11 | - make install 12 | 13 | script: 14 | - make lint 15 | - make test 16 | 17 | matrix: 18 | include: 19 | - node_js: '8' 20 | env: BROWSER=1 21 | -------------------------------------------------------------------------------- /node_modules/socket.io/node_modules/debug/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 TJ Holowaychuk 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software 6 | and associated documentation files (the 'Software'), to deal in the Software without restriction, 7 | including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 8 | and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, 9 | subject to the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be included in all copies or substantial 12 | portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 15 | LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 16 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 17 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 18 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | 20 | -------------------------------------------------------------------------------- /node_modules/socket.io/node_modules/debug/node.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./src/node'); 2 | -------------------------------------------------------------------------------- /node_modules/socket.io/node_modules/debug/src/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Detect Electron renderer process, which is node, but we should 3 | * treat as a browser. 4 | */ 5 | 6 | if (typeof process === 'undefined' || process.type === 'renderer') { 7 | module.exports = require('./browser.js'); 8 | } else { 9 | module.exports = require('./node.js'); 10 | } 11 | -------------------------------------------------------------------------------- /node_modules/statuses/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.4.0 / 2017-10-20 2 | ================== 3 | 4 | * Add `STATUS_CODES` export 5 | 6 | 1.3.1 / 2016-11-11 7 | ================== 8 | 9 | * Fix return type in JSDoc 10 | 11 | 1.3.0 / 2016-05-17 12 | ================== 13 | 14 | * Add `421 Misdirected Request` 15 | * perf: enable strict mode 16 | 17 | 1.2.1 / 2015-02-01 18 | ================== 19 | 20 | * Fix message for status 451 21 | - `451 Unavailable For Legal Reasons` 22 | 23 | 1.2.0 / 2014-09-28 24 | ================== 25 | 26 | * Add `208 Already Repored` 27 | * Add `226 IM Used` 28 | * Add `306 (Unused)` 29 | * Add `415 Unable For Legal Reasons` 30 | * Add `508 Loop Detected` 31 | 32 | 1.1.1 / 2014-09-24 33 | ================== 34 | 35 | * Add missing 308 to `codes.json` 36 | 37 | 1.1.0 / 2014-09-21 38 | ================== 39 | 40 | * Add `codes.json` for universal support 41 | 42 | 1.0.4 / 2014-08-20 43 | ================== 44 | 45 | * Package cleanup 46 | 47 | 1.0.3 / 2014-06-08 48 | ================== 49 | 50 | * Add 308 to `.redirect` category 51 | 52 | 1.0.2 / 2014-03-13 53 | ================== 54 | 55 | * Add `.retry` category 56 | 57 | 1.0.1 / 2014-03-12 58 | ================== 59 | 60 | * Initial release 61 | -------------------------------------------------------------------------------- /node_modules/statuses/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | The MIT License (MIT) 3 | 4 | Copyright (c) 2014 Jonathan Ong 5 | Copyright (c) 2016 Douglas Christopher Wilson 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy 8 | of this software and associated documentation files (the "Software"), to deal 9 | in the Software without restriction, including without limitation the rights 10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | copies of the Software, and to permit persons to whom the Software is 12 | furnished to do so, subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in 15 | all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 23 | THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /node_modules/to-array/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | *.log 3 | *.err -------------------------------------------------------------------------------- /node_modules/to-array/LICENCE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2012 Raynos. 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/to-array/README.md: -------------------------------------------------------------------------------- 1 | # to-array 2 | 3 | Turn an array like into an array 4 | 5 | ## Example 6 | 7 | ``` js 8 | var toArray = require("to-array") 9 | , elems = document.links 10 | 11 | var array = toArray(elems) 12 | ``` 13 | 14 | ## Installation 15 | 16 | `npm install to-array` 17 | 18 | ## Contributors 19 | 20 | - Raynos 21 | 22 | ## MIT Licenced 23 | -------------------------------------------------------------------------------- /node_modules/to-array/index.js: -------------------------------------------------------------------------------- 1 | module.exports = toArray 2 | 3 | function toArray(list, index) { 4 | var array = [] 5 | 6 | index = index || 0 7 | 8 | for (var i = index || 0; i < list.length; i++) { 9 | array[i - index] = list[i] 10 | } 11 | 12 | return array 13 | } 14 | -------------------------------------------------------------------------------- /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/ultron/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Unshift.io, Arnout Kazemier, the Contributors. 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 | -------------------------------------------------------------------------------- /node_modules/unpipe/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.0 / 2015-06-14 2 | ================== 3 | 4 | * Initial release 5 | -------------------------------------------------------------------------------- /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/utils-merge/.npmignore: -------------------------------------------------------------------------------- 1 | CONTRIBUTING.md 2 | Makefile 3 | docs/ 4 | examples/ 5 | reports/ 6 | test/ 7 | 8 | .jshintrc 9 | .travis.yml 10 | -------------------------------------------------------------------------------- /node_modules/utils-merge/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2013-2017 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/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/vary/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.1.2 / 2017-09-23 2 | ================== 3 | 4 | * perf: improve header token parsing speed 5 | 6 | 1.1.1 / 2017-03-20 7 | ================== 8 | 9 | * perf: hoist regular expression 10 | 11 | 1.1.0 / 2015-09-29 12 | ================== 13 | 14 | * Only accept valid field names in the `field` argument 15 | - Ensures the resulting string is a valid HTTP header value 16 | 17 | 1.0.1 / 2015-07-08 18 | ================== 19 | 20 | * Fix setting empty header from empty `field` 21 | * perf: enable strict mode 22 | * perf: remove argument reassignments 23 | 24 | 1.0.0 / 2014-08-10 25 | ================== 26 | 27 | * Accept valid `Vary` header string as `field` 28 | * Add `vary.append` for low-level string manipulation 29 | * Move to `jshttp` orgainzation 30 | 31 | 0.1.0 / 2014-06-05 32 | ================== 33 | 34 | * Support array of fields to set 35 | 36 | 0.0.0 / 2014-06-04 37 | ================== 38 | 39 | * Initial release 40 | -------------------------------------------------------------------------------- /node_modules/vary/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014-2017 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/ws/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2011 Einar Otto Stangvik 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 | -------------------------------------------------------------------------------- /node_modules/ws/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * ws: a node.js websocket client 3 | * Copyright(c) 2011 Einar Otto Stangvik 4 | * MIT Licensed 5 | */ 6 | 7 | 'use strict'; 8 | 9 | const WebSocket = require('./lib/WebSocket'); 10 | 11 | WebSocket.Server = require('./lib/WebSocketServer'); 12 | WebSocket.Receiver = require('./lib/Receiver'); 13 | WebSocket.Sender = require('./lib/Sender'); 14 | 15 | module.exports = WebSocket; 16 | -------------------------------------------------------------------------------- /node_modules/ws/lib/Constants.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const safeBuffer = require('safe-buffer'); 4 | 5 | const Buffer = safeBuffer.Buffer; 6 | 7 | exports.BINARY_TYPES = ['nodebuffer', 'arraybuffer', 'fragments']; 8 | exports.GUID = '258EAFA5-E914-47DA-95CA-C5AB0DC85B11'; 9 | exports.EMPTY_BUFFER = Buffer.alloc(0); 10 | exports.NOOP = () => {}; 11 | -------------------------------------------------------------------------------- /node_modules/ws/lib/ErrorCodes.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * ws: a node.js websocket client 3 | * Copyright(c) 2011 Einar Otto Stangvik 4 | * MIT Licensed 5 | */ 6 | 7 | 'use strict'; 8 | 9 | module.exports = { 10 | isValidErrorCode: function (code) { 11 | return (code >= 1000 && code <= 1013 && code !== 1004 && code !== 1005 && code !== 1006) || 12 | (code >= 3000 && code <= 4999); 13 | }, 14 | 1000: 'normal', 15 | 1001: 'going away', 16 | 1002: 'protocol error', 17 | 1003: 'unsupported data', 18 | 1004: 'reserved', 19 | 1005: 'reserved for extensions', 20 | 1006: 'reserved for extensions', 21 | 1007: 'inconsistent or invalid data', 22 | 1008: 'policy violation', 23 | 1009: 'message too big', 24 | 1010: 'extension handshake missing', 25 | 1011: 'an unexpected condition prevented the request from being fulfilled', 26 | 1012: 'service restart', 27 | 1013: 'try again later' 28 | }; 29 | -------------------------------------------------------------------------------- /node_modules/ws/lib/Validation.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * ws: a node.js websocket client 3 | * Copyright(c) 2011 Einar Otto Stangvik 4 | * MIT Licensed 5 | */ 6 | 7 | 'use strict'; 8 | 9 | try { 10 | const isValidUTF8 = require('utf-8-validate'); 11 | 12 | module.exports = typeof isValidUTF8 === 'object' 13 | ? isValidUTF8.Validation.isValidUTF8 // utf-8-validate@<3.0.0 14 | : isValidUTF8; 15 | } catch (e) /* istanbul ignore next */ { 16 | module.exports = () => true; 17 | } 18 | -------------------------------------------------------------------------------- /node_modules/xmlhttprequest-ssl/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2010 passive.ly LLC 2 | 3 | Permission is hereby granted, free of charge, to any person 4 | obtaining a copy of this software and associated documentation 5 | files (the "Software"), to deal in the Software without 6 | restriction, including without limitation the rights to use, 7 | copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | copies of the Software, and to permit persons to whom the 9 | Software is furnished to do so, subject to the following 10 | conditions: 11 | 12 | The above copyright notice and this permission notice shall be 13 | included in all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 17 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 19 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 20 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 21 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 22 | OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /node_modules/xmlhttprequest-ssl/autotest.watchr: -------------------------------------------------------------------------------- 1 | def run_all_tests 2 | puts `clear` 3 | puts `node tests/test-constants.js` 4 | puts `node tests/test-headers.js` 5 | puts `node tests/test-request.js` 6 | end 7 | watch('.*.js') { run_all_tests } 8 | run_all_tests 9 | -------------------------------------------------------------------------------- /node_modules/xmlhttprequest-ssl/example/demo.js: -------------------------------------------------------------------------------- 1 | var sys = require('util'); 2 | var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest; 3 | 4 | var xhr = new XMLHttpRequest(); 5 | 6 | xhr.onreadystatechange = function() { 7 | sys.puts("State: " + this.readyState); 8 | 9 | if (this.readyState == 4) { 10 | sys.puts("Complete.\nBody length: " + this.responseText.length); 11 | sys.puts("Body:\n" + this.responseText); 12 | } 13 | }; 14 | 15 | xhr.open("GET", "http://driverdan.com"); 16 | xhr.send(); 17 | -------------------------------------------------------------------------------- /node_modules/xmlhttprequest-ssl/tests/test-constants.js: -------------------------------------------------------------------------------- 1 | var sys = require("util") 2 | , assert = require("assert") 3 | , XMLHttpRequest = require("../lib/XMLHttpRequest").XMLHttpRequest 4 | , xhr = new XMLHttpRequest(); 5 | 6 | // Test constant values 7 | assert.equal(0, xhr.UNSENT); 8 | assert.equal(1, xhr.OPENED); 9 | assert.equal(2, xhr.HEADERS_RECEIVED); 10 | assert.equal(3, xhr.LOADING); 11 | assert.equal(4, xhr.DONE); 12 | 13 | sys.puts("done"); 14 | -------------------------------------------------------------------------------- /node_modules/xmlhttprequest-ssl/tests/test-redirect-302.js: -------------------------------------------------------------------------------- 1 | var sys = require("util") 2 | , assert = require("assert") 3 | , XMLHttpRequest = require("../lib/XMLHttpRequest").XMLHttpRequest 4 | , xhr = new XMLHttpRequest() 5 | , http = require("http"); 6 | 7 | // Test server 8 | var server = http.createServer(function (req, res) { 9 | if (req.url === '/redirectingResource') { 10 | res.writeHead(302, {'Location': 'http://localhost:8000/'}); 11 | res.end(); 12 | return; 13 | } 14 | 15 | var body = "Hello World"; 16 | res.writeHead(200, { 17 | "Content-Type": "text/plain", 18 | "Content-Length": Buffer.byteLength(body), 19 | "Date": "Thu, 30 Aug 2012 18:17:53 GMT", 20 | "Connection": "close" 21 | }); 22 | res.write("Hello World"); 23 | res.end(); 24 | 25 | this.close(); 26 | }).listen(8000); 27 | 28 | xhr.onreadystatechange = function() { 29 | if (this.readyState == 4) { 30 | assert.equal(xhr.getRequestHeader('Location'), ''); 31 | assert.equal(xhr.responseText, "Hello World"); 32 | sys.puts("done"); 33 | } 34 | }; 35 | 36 | try { 37 | xhr.open("GET", "http://localhost:8000/redirectingResource"); 38 | xhr.send(); 39 | } catch(e) { 40 | console.log("ERROR: Exception raised", e); 41 | } 42 | -------------------------------------------------------------------------------- /node_modules/xmlhttprequest-ssl/tests/test-redirect-303.js: -------------------------------------------------------------------------------- 1 | var sys = require("util") 2 | , assert = require("assert") 3 | , XMLHttpRequest = require("../lib/XMLHttpRequest").XMLHttpRequest 4 | , xhr = new XMLHttpRequest() 5 | , http = require("http"); 6 | 7 | // Test server 8 | var server = http.createServer(function (req, res) { 9 | if (req.url === '/redirectingResource') { 10 | res.writeHead(303, {'Location': 'http://localhost:8000/'}); 11 | res.end(); 12 | return; 13 | } 14 | 15 | var body = "Hello World"; 16 | res.writeHead(200, { 17 | "Content-Type": "text/plain", 18 | "Content-Length": Buffer.byteLength(body), 19 | "Date": "Thu, 30 Aug 2012 18:17:53 GMT", 20 | "Connection": "close" 21 | }); 22 | res.write("Hello World"); 23 | res.end(); 24 | 25 | this.close(); 26 | }).listen(8000); 27 | 28 | xhr.onreadystatechange = function() { 29 | if (this.readyState == 4) { 30 | assert.equal(xhr.getRequestHeader('Location'), ''); 31 | assert.equal(xhr.responseText, "Hello World"); 32 | sys.puts("done"); 33 | } 34 | }; 35 | 36 | try { 37 | xhr.open("POST", "http://localhost:8000/redirectingResource"); 38 | xhr.send(); 39 | } catch(e) { 40 | console.log("ERROR: Exception raised", e); 41 | } 42 | -------------------------------------------------------------------------------- /node_modules/xmlhttprequest-ssl/tests/test-redirect-307.js: -------------------------------------------------------------------------------- 1 | var sys = require("util") 2 | , assert = require("assert") 3 | , XMLHttpRequest = require("../lib/XMLHttpRequest").XMLHttpRequest 4 | , xhr = new XMLHttpRequest() 5 | , http = require("http"); 6 | 7 | // Test server 8 | var server = http.createServer(function (req, res) { 9 | if (req.url === '/redirectingResource') { 10 | res.writeHead(307, {'Location': 'http://localhost:8000/'}); 11 | res.end(); 12 | return; 13 | } 14 | 15 | assert.equal(req.method, 'POST'); 16 | 17 | var body = "Hello World"; 18 | res.writeHead(200, { 19 | "Content-Type": "text/plain", 20 | "Content-Length": Buffer.byteLength(body), 21 | "Date": "Thu, 30 Aug 2012 18:17:53 GMT", 22 | "Connection": "close" 23 | }); 24 | res.write("Hello World"); 25 | res.end(); 26 | 27 | this.close(); 28 | }).listen(8000); 29 | 30 | xhr.onreadystatechange = function() { 31 | if (this.readyState == 4) { 32 | assert.equal(xhr.getRequestHeader('Location'), ''); 33 | assert.equal(xhr.responseText, "Hello World"); 34 | sys.puts("done"); 35 | } 36 | }; 37 | 38 | try { 39 | xhr.open("POST", "http://localhost:8000/redirectingResource"); 40 | xhr.send(); 41 | } catch(e) { 42 | console.log("ERROR: Exception raised", e); 43 | } 44 | -------------------------------------------------------------------------------- /node_modules/xmlhttprequest-ssl/tests/test-request-protocols.js: -------------------------------------------------------------------------------- 1 | var sys = require("util") 2 | , assert = require("assert") 3 | , XMLHttpRequest = require("../lib/XMLHttpRequest").XMLHttpRequest 4 | , xhr; 5 | 6 | xhr = new XMLHttpRequest(); 7 | 8 | xhr.onreadystatechange = function() { 9 | if (this.readyState == 4) { 10 | assert.equal("Hello World", this.responseText); 11 | runSync(); 12 | } 13 | }; 14 | 15 | // Async 16 | var url = "file://" + __dirname + "/testdata.txt"; 17 | xhr.open("GET", url); 18 | xhr.send(); 19 | 20 | // Sync 21 | var runSync = function() { 22 | xhr = new XMLHttpRequest(); 23 | 24 | xhr.onreadystatechange = function() { 25 | if (this.readyState == 4) { 26 | assert.equal("Hello World", this.responseText); 27 | sys.puts("done"); 28 | } 29 | }; 30 | xhr.open("GET", url, false); 31 | xhr.send(); 32 | } 33 | -------------------------------------------------------------------------------- /node_modules/xmlhttprequest-ssl/tests/testdata.txt: -------------------------------------------------------------------------------- 1 | Hello World -------------------------------------------------------------------------------- /node_modules/yeast/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Unshift.io, Arnout Kazemier, the Contributors. 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 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "async-optics", 3 | "version": "1.0.10", 4 | "description": "Node asynchronous process and package monitor", 5 | "keywords": [ 6 | "async", 7 | "asynchronous", 8 | "async hooks", 9 | "perf hooks", 10 | "performance", 11 | "monitor" 12 | ], 13 | "main": "index.js", 14 | "homepage": "https://github.com/AsyncOptics/async-optics", 15 | "bugs": { 16 | "url": "https://github.com/AsyncOptics/async-optics/issues" 17 | }, 18 | "contributors": [ 19 | { 20 | "name": "Aleksander Turberville", 21 | "email": "aturberv@gmail.com", 22 | "url": "http://github.com/Aturberv" 23 | }, 24 | { 25 | "name": "Penghe Wu", 26 | "email": "wupenghe92@gmail.com", 27 | "url": "http://github.com/wupenghe92" 28 | }, 29 | { 30 | "name": "Ralph Salazar", 31 | "email": "ralph.slzr@gmail.com", 32 | "url": "http://github.com/pjr4lph" 33 | }, 34 | { 35 | "name": "Sarah Renshaw", 36 | "email": "strenshaw@gmail.com", 37 | "url": "http://github.com/sartra" 38 | } 39 | ], 40 | "dependencies": { 41 | "express": "^4.16.3", 42 | "socket.io": "^2.1.0" 43 | }, 44 | "license": "MIT" 45 | } 46 | -------------------------------------------------------------------------------- /readme/async.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AsyncOptics/async-optics/94572039d6588c4a8203ae548bed4090a14af3e9/readme/async.gif -------------------------------------------------------------------------------- /readme/asyncMonitor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AsyncOptics/async-optics/94572039d6588c4a8203ae548bed4090a14af3e9/readme/asyncMonitor.png -------------------------------------------------------------------------------- /readme/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AsyncOptics/async-optics/94572039d6588c4a8203ae548bed4090a14af3e9/readme/logo.png -------------------------------------------------------------------------------- /readme/new-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AsyncOptics/async-optics/94572039d6588c4a8203ae548bed4090a14af3e9/readme/new-logo.png -------------------------------------------------------------------------------- /readme/pkgMonitor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AsyncOptics/async-optics/94572039d6588c4a8203ae548bed4090a14af3e9/readme/pkgMonitor.png -------------------------------------------------------------------------------- /readme/pm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AsyncOptics/async-optics/94572039d6588c4a8203ae548bed4090a14af3e9/readme/pm.gif -------------------------------------------------------------------------------- /server/ioController_mnode.js: -------------------------------------------------------------------------------- 1 | const {io, startServer} = require('./socket.js'); 2 | const ioController = {}; 3 | 4 | let asyncInfoEmit = []; 5 | let sendInfoAnyway; 6 | 7 | ioController.startServer = startServer; 8 | 9 | ioController.sendInfo = function(funcInfoNode) { 10 | io._asyncInfo.push(funcInfoNode); 11 | if(io._hasConnection) { 12 | asyncInfoEmit.push(funcInfoNode); 13 | if (asyncInfoEmit.length > 59) { 14 | clearTimeout(sendInfoAnyway); 15 | sendFuncInfo(asyncInfoEmit); 16 | } else if (asyncInfoEmit.length > 0) { 17 | clearTimeout(sendInfoAnyway); 18 | sendInfoAnyway = setTimeout(sendFuncInfo, 1500); 19 | } 20 | } 21 | } 22 | 23 | function sendFuncInfo() { 24 | io.emit('funcInfo', asyncInfoEmit); 25 | asyncInfoEmit = []; 26 | } 27 | 28 | module.exports = ioController; 29 | -------------------------------------------------------------------------------- /server/socket.js: -------------------------------------------------------------------------------- 1 | const express = require('express'); 2 | const socketio = require('socket.io'); 3 | const http = require('http'); 4 | const path = require('path'); 5 | const fs = require('fs'); 6 | 7 | const app = express(); 8 | const server = http.Server(app); 9 | const io = socketio(server); 10 | io._hasConnection = false; 11 | io._asyncInfo = []; 12 | 13 | let numOfConnections = 0; 14 | 15 | app.use(express.static(path.join(__dirname, '../client'))); 16 | 17 | io.on('connection', (socket) => { 18 | numOfConnections++; 19 | io._hasConnection = true; 20 | socket.emit('packageInfo', io._hierarchyAggregate); 21 | 22 | if(io._asyncInfo.length !== 0) { 23 | socket.emit('funcInfo', io._asyncInfo); 24 | } 25 | socket.on('disconnect', (reason) => { 26 | numOfConnections--; 27 | if (numOfConnections === 0) io._hasConnection = false; 28 | }); 29 | }); 30 | 31 | function startServer(portNumber) { 32 | if (!portNumber) portNumber = 3000; 33 | const scriptStr = `const socket = io.connect('http://localhost:${portNumber}');`; 34 | fs.writeFile(path.join(__dirname,'../client/src/main.js'), scriptStr, (err) => { 35 | if (err) throw err; 36 | server.listen(portNumber, () => { 37 | process._rawDebug(`async-optics socket setup, listening to PORT ${portNumber}`); 38 | }); 39 | }) 40 | } 41 | 42 | module.exports = {io, startServer}; 43 | --------------------------------------------------------------------------------